diff --git a/v1.5.24/.nojekyll b/v1.5.24/.nojekyll new file mode 100644 index 000000000..f17311098 --- /dev/null +++ b/v1.5.24/.nojekyll @@ -0,0 +1 @@ +This file makes sure that Github Pages doesn't process mdBook's output. diff --git a/v1.5.24/404.html b/v1.5.24/404.html new file mode 100644 index 000000000..1a0caa4f7 --- /dev/null +++ b/v1.5.24/404.html @@ -0,0 +1,227 @@ + + + + + + Page not found - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Document not found (404)

+

This URL is invalid, sorry. Please use the navigation bar or search to continue.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/CONTRIBUTING.html b/v1.5.24/CONTRIBUTING.html new file mode 100644 index 000000000..5afc752da --- /dev/null +++ b/v1.5.24/CONTRIBUTING.html @@ -0,0 +1,272 @@ + + + + + + Guidelines - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

How to contribute

+

The preferred workflow is to fork the quay/claircore repository, push a feature branch to the new fork, then open a pull request. +All pull requests should be targeted to the main branch outside of exceptional circumstances.

+

Testing

+

As many tests as possible should run with the standard go test invocations. +Adding the special tag integration (e.g. go test -tags integration ./...) will also run "integration" tests. +The project interprets "integration" tests to mean any test that would need external resources, such as:

+
    +
  • External web servers
  • +
  • External network access
  • +
  • Out-of-process databases
  • +
  • Large test fixtures
  • +
+

After at least one run with the integration tag, the tests should cache needed resources and run as many tests as possible. +See also the test/integration package.

+

Pull Requests

+

The Pull Request (PR) is the unit of code review. +Claircore's review flow treats a feature branch as a stack of patches to be applied. +That is to say, the feature branch should be rebased onto the target branch and have well-organized commits. +Merge commits are disallowed. +If the author would prefer to not rewrite commit history while working through reviews, fixup commits are the suggested way to achieve that. +As many requirements as possible are enforced by CI, like:

+
    +
  • Commits being signed off
  • +
  • Commit messages having a properly formed subject
  • +
  • Go modules being tidied
  • +
+

Please use the "draft" option if the branch is not ready. +Please enable the "allow edits by maintainers" option.

+

The maintainers may rebase, push, and merge contributors' branches. +This may necessitate doing a git reset <remote>/<branch> to update a local branch.

+

Conventions

+

Git commits should be formatted like "subject: summary" and avoid going over 80 characters per line. +The "subject" is usually the package affected by the commit (like jar or rhel -- the relative path isn't needed) but sometimes a broader category (like docs, all, or cicd) is OK.

+

All the helper scripts should handle the "normal" convention (origin is quay/claircore and fork is one's personal fork) and the "British" convention (origin is one's personal fork and upstream is quay/claircore).

+

More detailed contributor documentation can be found in the project documentation.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/FontAwesome/css/font-awesome.css b/v1.5.24/FontAwesome/css/font-awesome.css new file mode 100644 index 000000000..540440ce8 --- /dev/null +++ b/v1.5.24/FontAwesome/css/font-awesome.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/v1.5.24/FontAwesome/fonts/FontAwesome.ttf b/v1.5.24/FontAwesome/fonts/FontAwesome.ttf new file mode 100644 index 000000000..35acda2fa Binary files /dev/null and b/v1.5.24/FontAwesome/fonts/FontAwesome.ttf differ diff --git a/v1.5.24/FontAwesome/fonts/fontawesome-webfont.eot b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.eot new file mode 100644 index 000000000..e9f60ca95 Binary files /dev/null and b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.eot differ diff --git a/v1.5.24/FontAwesome/fonts/fontawesome-webfont.svg b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.svg new file mode 100644 index 000000000..855c845e5 --- /dev/null +++ b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.svg @@ -0,0 +1,2671 @@ + + + + +Created by FontForge 20120731 at Mon Oct 24 17:37:40 2016 + By ,,, +Copyright Dave Gandy 2016. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v1.5.24/FontAwesome/fonts/fontawesome-webfont.ttf b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.ttf new file mode 100644 index 000000000..35acda2fa Binary files /dev/null and b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.ttf differ diff --git a/v1.5.24/FontAwesome/fonts/fontawesome-webfont.woff b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.woff new file mode 100644 index 000000000..400014a4b Binary files /dev/null and b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.woff differ diff --git a/v1.5.24/FontAwesome/fonts/fontawesome-webfont.woff2 b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.woff2 new file mode 100644 index 000000000..4d13fc604 Binary files /dev/null and b/v1.5.24/FontAwesome/fonts/fontawesome-webfont.woff2 differ diff --git a/v1.5.24/ayu-highlight.css b/v1.5.24/ayu-highlight.css new file mode 100644 index 000000000..32c943222 --- /dev/null +++ b/v1.5.24/ayu-highlight.css @@ -0,0 +1,78 @@ +/* +Based off of the Ayu theme +Original by Dempfi (https://github.com/dempfi/ayu) +*/ + +.hljs { + display: block; + overflow-x: auto; + background: #191f26; + color: #e6e1cf; +} + +.hljs-comment, +.hljs-quote { + color: #5c6773; + font-style: italic; +} + +.hljs-variable, +.hljs-template-variable, +.hljs-attribute, +.hljs-attr, +.hljs-regexp, +.hljs-link, +.hljs-selector-id, +.hljs-selector-class { + color: #ff7733; +} + +.hljs-number, +.hljs-meta, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params { + color: #ffee99; +} + +.hljs-string, +.hljs-bullet { + color: #b8cc52; +} + +.hljs-title, +.hljs-built_in, +.hljs-section { + color: #ffb454; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-symbol { + color: #ff7733; +} + +.hljs-name { + color: #36a3d9; +} + +.hljs-tag { + color: #00568d; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-addition { + color: #91b362; +} + +.hljs-deletion { + color: #d96c75; +} diff --git a/v1.5.24/book.js b/v1.5.24/book.js new file mode 100644 index 000000000..aa12e7ecc --- /dev/null +++ b/v1.5.24/book.js @@ -0,0 +1,697 @@ +"use strict"; + +// Fix back button cache problem +window.onunload = function () { }; + +// Global variable, shared between modules +function playground_text(playground, hidden = true) { + let code_block = playground.querySelector("code"); + + if (window.ace && code_block.classList.contains("editable")) { + let editor = window.ace.edit(code_block); + return editor.getValue(); + } else if (hidden) { + return code_block.textContent; + } else { + return code_block.innerText; + } +} + +(function codeSnippets() { + function fetch_with_timeout(url, options, timeout = 6000) { + return Promise.race([ + fetch(url, options), + new Promise((_, reject) => setTimeout(() => reject(new Error('timeout')), timeout)) + ]); + } + + var playgrounds = Array.from(document.querySelectorAll(".playground")); + if (playgrounds.length > 0) { + fetch_with_timeout("https://play.rust-lang.org/meta/crates", { + headers: { + 'Content-Type': "application/json", + }, + method: 'POST', + mode: 'cors', + }) + .then(response => response.json()) + .then(response => { + // get list of crates available in the rust playground + let playground_crates = response.crates.map(item => item["id"]); + playgrounds.forEach(block => handle_crate_list_update(block, playground_crates)); + }); + } + + function handle_crate_list_update(playground_block, playground_crates) { + // update the play buttons after receiving the response + update_play_button(playground_block, playground_crates); + + // and install on change listener to dynamically update ACE editors + if (window.ace) { + let code_block = playground_block.querySelector("code"); + if (code_block.classList.contains("editable")) { + let editor = window.ace.edit(code_block); + editor.addEventListener("change", function (e) { + update_play_button(playground_block, playground_crates); + }); + // add Ctrl-Enter command to execute rust code + editor.commands.addCommand({ + name: "run", + bindKey: { + win: "Ctrl-Enter", + mac: "Ctrl-Enter" + }, + exec: _editor => run_rust_code(playground_block) + }); + } + } + } + + // updates the visibility of play button based on `no_run` class and + // used crates vs ones available on https://play.rust-lang.org + function update_play_button(pre_block, playground_crates) { + var play_button = pre_block.querySelector(".play-button"); + + // skip if code is `no_run` + if (pre_block.querySelector('code').classList.contains("no_run")) { + play_button.classList.add("hidden"); + return; + } + + // get list of `extern crate`'s from snippet + var txt = playground_text(pre_block); + var re = /extern\s+crate\s+([a-zA-Z_0-9]+)\s*;/g; + var snippet_crates = []; + var item; + while (item = re.exec(txt)) { + snippet_crates.push(item[1]); + } + + // check if all used crates are available on play.rust-lang.org + var all_available = snippet_crates.every(function (elem) { + return playground_crates.indexOf(elem) > -1; + }); + + if (all_available) { + play_button.classList.remove("hidden"); + } else { + play_button.classList.add("hidden"); + } + } + + function run_rust_code(code_block) { + var result_block = code_block.querySelector(".result"); + if (!result_block) { + result_block = document.createElement('code'); + result_block.className = 'result hljs language-bash'; + + code_block.append(result_block); + } + + let text = playground_text(code_block); + let classes = code_block.querySelector('code').classList; + let edition = "2015"; + if(classes.contains("edition2018")) { + edition = "2018"; + } else if(classes.contains("edition2021")) { + edition = "2021"; + } + var params = { + version: "stable", + optimize: "0", + code: text, + edition: edition + }; + + if (text.indexOf("#![feature") !== -1) { + params.version = "nightly"; + } + + result_block.innerText = "Running..."; + + fetch_with_timeout("https://play.rust-lang.org/evaluate.json", { + headers: { + 'Content-Type': "application/json", + }, + method: 'POST', + mode: 'cors', + body: JSON.stringify(params) + }) + .then(response => response.json()) + .then(response => { + if (response.result.trim() === '') { + result_block.innerText = "No output"; + result_block.classList.add("result-no-output"); + } else { + result_block.innerText = response.result; + result_block.classList.remove("result-no-output"); + } + }) + .catch(error => result_block.innerText = "Playground Communication: " + error.message); + } + + // Syntax highlighting Configuration + hljs.configure({ + tabReplace: ' ', // 4 spaces + languages: [], // Languages used for auto-detection + }); + + let code_nodes = Array + .from(document.querySelectorAll('code')) + // Don't highlight `inline code` blocks in headers. + .filter(function (node) {return !node.parentElement.classList.contains("header"); }); + + if (window.ace) { + // language-rust class needs to be removed for editable + // blocks or highlightjs will capture events + code_nodes + .filter(function (node) {return node.classList.contains("editable"); }) + .forEach(function (block) { block.classList.remove('language-rust'); }); + + code_nodes + .filter(function (node) {return !node.classList.contains("editable"); }) + .forEach(function (block) { hljs.highlightBlock(block); }); + } else { + code_nodes.forEach(function (block) { hljs.highlightBlock(block); }); + } + + // Adding the hljs class gives code blocks the color css + // even if highlighting doesn't apply + code_nodes.forEach(function (block) { block.classList.add('hljs'); }); + + Array.from(document.querySelectorAll("code.hljs")).forEach(function (block) { + + var lines = Array.from(block.querySelectorAll('.boring')); + // If no lines were hidden, return + if (!lines.length) { return; } + block.classList.add("hide-boring"); + + var buttons = document.createElement('div'); + buttons.className = 'buttons'; + buttons.innerHTML = ""; + + // add expand button + var pre_block = block.parentNode; + pre_block.insertBefore(buttons, pre_block.firstChild); + + pre_block.querySelector('.buttons').addEventListener('click', function (e) { + if (e.target.classList.contains('fa-eye')) { + e.target.classList.remove('fa-eye'); + e.target.classList.add('fa-eye-slash'); + e.target.title = 'Hide lines'; + e.target.setAttribute('aria-label', e.target.title); + + block.classList.remove('hide-boring'); + } else if (e.target.classList.contains('fa-eye-slash')) { + e.target.classList.remove('fa-eye-slash'); + e.target.classList.add('fa-eye'); + e.target.title = 'Show hidden lines'; + e.target.setAttribute('aria-label', e.target.title); + + block.classList.add('hide-boring'); + } + }); + }); + + if (window.playground_copyable) { + Array.from(document.querySelectorAll('pre code')).forEach(function (block) { + var pre_block = block.parentNode; + if (!pre_block.classList.contains('playground')) { + var buttons = pre_block.querySelector(".buttons"); + if (!buttons) { + buttons = document.createElement('div'); + buttons.className = 'buttons'; + pre_block.insertBefore(buttons, pre_block.firstChild); + } + + var clipButton = document.createElement('button'); + clipButton.className = 'fa fa-copy clip-button'; + clipButton.title = 'Copy to clipboard'; + clipButton.setAttribute('aria-label', clipButton.title); + clipButton.innerHTML = ''; + + buttons.insertBefore(clipButton, buttons.firstChild); + } + }); + } + + // Process playground code blocks + Array.from(document.querySelectorAll(".playground")).forEach(function (pre_block) { + // Add play button + var buttons = pre_block.querySelector(".buttons"); + if (!buttons) { + buttons = document.createElement('div'); + buttons.className = 'buttons'; + pre_block.insertBefore(buttons, pre_block.firstChild); + } + + var runCodeButton = document.createElement('button'); + runCodeButton.className = 'fa fa-play play-button'; + runCodeButton.hidden = true; + runCodeButton.title = 'Run this code'; + runCodeButton.setAttribute('aria-label', runCodeButton.title); + + buttons.insertBefore(runCodeButton, buttons.firstChild); + runCodeButton.addEventListener('click', function (e) { + run_rust_code(pre_block); + }); + + if (window.playground_copyable) { + var copyCodeClipboardButton = document.createElement('button'); + copyCodeClipboardButton.className = 'fa fa-copy clip-button'; + copyCodeClipboardButton.innerHTML = ''; + copyCodeClipboardButton.title = 'Copy to clipboard'; + copyCodeClipboardButton.setAttribute('aria-label', copyCodeClipboardButton.title); + + buttons.insertBefore(copyCodeClipboardButton, buttons.firstChild); + } + + let code_block = pre_block.querySelector("code"); + if (window.ace && code_block.classList.contains("editable")) { + var undoChangesButton = document.createElement('button'); + undoChangesButton.className = 'fa fa-history reset-button'; + undoChangesButton.title = 'Undo changes'; + undoChangesButton.setAttribute('aria-label', undoChangesButton.title); + + buttons.insertBefore(undoChangesButton, buttons.firstChild); + + undoChangesButton.addEventListener('click', function () { + let editor = window.ace.edit(code_block); + editor.setValue(editor.originalCode); + editor.clearSelection(); + }); + } + }); +})(); + +(function themes() { + var html = document.querySelector('html'); + var themeToggleButton = document.getElementById('theme-toggle'); + var themePopup = document.getElementById('theme-list'); + var themeColorMetaTag = document.querySelector('meta[name="theme-color"]'); + var stylesheets = { + ayuHighlight: document.querySelector("[href$='ayu-highlight.css']"), + tomorrowNight: document.querySelector("[href$='tomorrow-night.css']"), + highlight: document.querySelector("[href$='highlight.css']"), + }; + + function showThemes() { + themePopup.style.display = 'block'; + themeToggleButton.setAttribute('aria-expanded', true); + themePopup.querySelector("button#" + get_theme()).focus(); + } + + function updateThemeSelected() { + themePopup.querySelectorAll('.theme-selected').forEach(function (el) { + el.classList.remove('theme-selected'); + }); + themePopup.querySelector("button#" + get_theme()).classList.add('theme-selected'); + } + + function hideThemes() { + themePopup.style.display = 'none'; + themeToggleButton.setAttribute('aria-expanded', false); + themeToggleButton.focus(); + } + + function get_theme() { + var theme; + try { theme = localStorage.getItem('mdbook-theme'); } catch (e) { } + if (theme === null || theme === undefined) { + return default_theme; + } else { + return theme; + } + } + + function set_theme(theme, store = true) { + let ace_theme; + + if (theme == 'coal' || theme == 'navy') { + stylesheets.ayuHighlight.disabled = true; + stylesheets.tomorrowNight.disabled = false; + stylesheets.highlight.disabled = true; + + ace_theme = "ace/theme/tomorrow_night"; + } else if (theme == 'ayu') { + stylesheets.ayuHighlight.disabled = false; + stylesheets.tomorrowNight.disabled = true; + stylesheets.highlight.disabled = true; + ace_theme = "ace/theme/tomorrow_night"; + } else { + stylesheets.ayuHighlight.disabled = true; + stylesheets.tomorrowNight.disabled = true; + stylesheets.highlight.disabled = false; + ace_theme = "ace/theme/dawn"; + } + + setTimeout(function () { + themeColorMetaTag.content = getComputedStyle(document.documentElement).backgroundColor; + }, 1); + + if (window.ace && window.editors) { + window.editors.forEach(function (editor) { + editor.setTheme(ace_theme); + }); + } + + var previousTheme = get_theme(); + + if (store) { + try { localStorage.setItem('mdbook-theme', theme); } catch (e) { } + } + + html.classList.remove(previousTheme); + html.classList.add(theme); + updateThemeSelected(); + } + + // Set theme + var theme = get_theme(); + + set_theme(theme, false); + + themeToggleButton.addEventListener('click', function () { + if (themePopup.style.display === 'block') { + hideThemes(); + } else { + showThemes(); + } + }); + + themePopup.addEventListener('click', function (e) { + var theme; + if (e.target.className === "theme") { + theme = e.target.id; + } else if (e.target.parentElement.className === "theme") { + theme = e.target.parentElement.id; + } else { + return; + } + set_theme(theme); + }); + + themePopup.addEventListener('focusout', function(e) { + // e.relatedTarget is null in Safari and Firefox on macOS (see workaround below) + if (!!e.relatedTarget && !themeToggleButton.contains(e.relatedTarget) && !themePopup.contains(e.relatedTarget)) { + hideThemes(); + } + }); + + // Should not be needed, but it works around an issue on macOS & iOS: https://github.com/rust-lang/mdBook/issues/628 + document.addEventListener('click', function(e) { + if (themePopup.style.display === 'block' && !themeToggleButton.contains(e.target) && !themePopup.contains(e.target)) { + hideThemes(); + } + }); + + document.addEventListener('keydown', function (e) { + if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) { return; } + if (!themePopup.contains(e.target)) { return; } + + switch (e.key) { + case 'Escape': + e.preventDefault(); + hideThemes(); + break; + case 'ArrowUp': + e.preventDefault(); + var li = document.activeElement.parentElement; + if (li && li.previousElementSibling) { + li.previousElementSibling.querySelector('button').focus(); + } + break; + case 'ArrowDown': + e.preventDefault(); + var li = document.activeElement.parentElement; + if (li && li.nextElementSibling) { + li.nextElementSibling.querySelector('button').focus(); + } + break; + case 'Home': + e.preventDefault(); + themePopup.querySelector('li:first-child button').focus(); + break; + case 'End': + e.preventDefault(); + themePopup.querySelector('li:last-child button').focus(); + break; + } + }); +})(); + +(function sidebar() { + var body = document.querySelector("body"); + var sidebar = document.getElementById("sidebar"); + var sidebarLinks = document.querySelectorAll('#sidebar a'); + var sidebarToggleButton = document.getElementById("sidebar-toggle"); + var sidebarResizeHandle = document.getElementById("sidebar-resize-handle"); + var firstContact = null; + + function showSidebar() { + body.classList.remove('sidebar-hidden') + body.classList.add('sidebar-visible'); + Array.from(sidebarLinks).forEach(function (link) { + link.setAttribute('tabIndex', 0); + }); + sidebarToggleButton.setAttribute('aria-expanded', true); + sidebar.setAttribute('aria-hidden', false); + try { localStorage.setItem('mdbook-sidebar', 'visible'); } catch (e) { } + } + + + var sidebarAnchorToggles = document.querySelectorAll('#sidebar a.toggle'); + + function toggleSection(ev) { + ev.currentTarget.parentElement.classList.toggle('expanded'); + } + + Array.from(sidebarAnchorToggles).forEach(function (el) { + el.addEventListener('click', toggleSection); + }); + + function hideSidebar() { + body.classList.remove('sidebar-visible') + body.classList.add('sidebar-hidden'); + Array.from(sidebarLinks).forEach(function (link) { + link.setAttribute('tabIndex', -1); + }); + sidebarToggleButton.setAttribute('aria-expanded', false); + sidebar.setAttribute('aria-hidden', true); + try { localStorage.setItem('mdbook-sidebar', 'hidden'); } catch (e) { } + } + + // Toggle sidebar + sidebarToggleButton.addEventListener('click', function sidebarToggle() { + if (body.classList.contains("sidebar-hidden")) { + var current_width = parseInt( + document.documentElement.style.getPropertyValue('--sidebar-width'), 10); + if (current_width < 150) { + document.documentElement.style.setProperty('--sidebar-width', '150px'); + } + showSidebar(); + } else if (body.classList.contains("sidebar-visible")) { + hideSidebar(); + } else { + if (getComputedStyle(sidebar)['transform'] === 'none') { + hideSidebar(); + } else { + showSidebar(); + } + } + }); + + sidebarResizeHandle.addEventListener('mousedown', initResize, false); + + function initResize(e) { + window.addEventListener('mousemove', resize, false); + window.addEventListener('mouseup', stopResize, false); + body.classList.add('sidebar-resizing'); + } + function resize(e) { + var pos = (e.clientX - sidebar.offsetLeft); + if (pos < 20) { + hideSidebar(); + } else { + if (body.classList.contains("sidebar-hidden")) { + showSidebar(); + } + pos = Math.min(pos, window.innerWidth - 100); + document.documentElement.style.setProperty('--sidebar-width', pos + 'px'); + } + } + //on mouseup remove windows functions mousemove & mouseup + function stopResize(e) { + body.classList.remove('sidebar-resizing'); + window.removeEventListener('mousemove', resize, false); + window.removeEventListener('mouseup', stopResize, false); + } + + document.addEventListener('touchstart', function (e) { + firstContact = { + x: e.touches[0].clientX, + time: Date.now() + }; + }, { passive: true }); + + document.addEventListener('touchmove', function (e) { + if (!firstContact) + return; + + var curX = e.touches[0].clientX; + var xDiff = curX - firstContact.x, + tDiff = Date.now() - firstContact.time; + + if (tDiff < 250 && Math.abs(xDiff) >= 150) { + if (xDiff >= 0 && firstContact.x < Math.min(document.body.clientWidth * 0.25, 300)) + showSidebar(); + else if (xDiff < 0 && curX < 300) + hideSidebar(); + + firstContact = null; + } + }, { passive: true }); +})(); + +(function chapterNavigation() { + document.addEventListener('keydown', function (e) { + if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) { return; } + if (window.search && window.search.hasFocus()) { return; } + var html = document.querySelector('html'); + + function next() { + var nextButton = document.querySelector('.nav-chapters.next'); + if (nextButton) { + window.location.href = nextButton.href; + } + } + function prev() { + var previousButton = document.querySelector('.nav-chapters.previous'); + if (previousButton) { + window.location.href = previousButton.href; + } + } + switch (e.key) { + case 'ArrowRight': + e.preventDefault(); + if (html.dir == 'rtl') { + prev(); + } else { + next(); + } + break; + case 'ArrowLeft': + e.preventDefault(); + if (html.dir == 'rtl') { + next(); + } else { + prev(); + } + break; + } + }); +})(); + +(function clipboard() { + var clipButtons = document.querySelectorAll('.clip-button'); + + function hideTooltip(elem) { + elem.firstChild.innerText = ""; + elem.className = 'fa fa-copy clip-button'; + } + + function showTooltip(elem, msg) { + elem.firstChild.innerText = msg; + elem.className = 'fa fa-copy tooltipped'; + } + + var clipboardSnippets = new ClipboardJS('.clip-button', { + text: function (trigger) { + hideTooltip(trigger); + let playground = trigger.closest("pre"); + return playground_text(playground, false); + } + }); + + Array.from(clipButtons).forEach(function (clipButton) { + clipButton.addEventListener('mouseout', function (e) { + hideTooltip(e.currentTarget); + }); + }); + + clipboardSnippets.on('success', function (e) { + e.clearSelection(); + showTooltip(e.trigger, "Copied!"); + }); + + clipboardSnippets.on('error', function (e) { + showTooltip(e.trigger, "Clipboard error!"); + }); +})(); + +(function scrollToTop () { + var menuTitle = document.querySelector('.menu-title'); + + menuTitle.addEventListener('click', function () { + document.scrollingElement.scrollTo({ top: 0, behavior: 'smooth' }); + }); +})(); + +(function controllMenu() { + var menu = document.getElementById('menu-bar'); + + (function controllPosition() { + var scrollTop = document.scrollingElement.scrollTop; + var prevScrollTop = scrollTop; + var minMenuY = -menu.clientHeight - 50; + // When the script loads, the page can be at any scroll (e.g. if you reforesh it). + menu.style.top = scrollTop + 'px'; + // Same as parseInt(menu.style.top.slice(0, -2), but faster + var topCache = menu.style.top.slice(0, -2); + menu.classList.remove('sticky'); + var stickyCache = false; // Same as menu.classList.contains('sticky'), but faster + document.addEventListener('scroll', function () { + scrollTop = Math.max(document.scrollingElement.scrollTop, 0); + // `null` means that it doesn't need to be updated + var nextSticky = null; + var nextTop = null; + var scrollDown = scrollTop > prevScrollTop; + var menuPosAbsoluteY = topCache - scrollTop; + if (scrollDown) { + nextSticky = false; + if (menuPosAbsoluteY > 0) { + nextTop = prevScrollTop; + } + } else { + if (menuPosAbsoluteY > 0) { + nextSticky = true; + } else if (menuPosAbsoluteY < minMenuY) { + nextTop = prevScrollTop + minMenuY; + } + } + if (nextSticky === true && stickyCache === false) { + menu.classList.add('sticky'); + stickyCache = true; + } else if (nextSticky === false && stickyCache === true) { + menu.classList.remove('sticky'); + stickyCache = false; + } + if (nextTop !== null) { + menu.style.top = nextTop + 'px'; + topCache = nextTop; + } + prevScrollTop = scrollTop; + }, { passive: true }); + })(); + (function controllBorder() { + function updateBorder() { + if (menu.offsetTop === 0) { + menu.classList.remove('bordered'); + } else { + menu.classList.add('bordered'); + } + } + updateBorder(); + document.addEventListener('scroll', updateBorder, { passive: true }); + })(); +})(); diff --git a/v1.5.24/clipboard.min.js b/v1.5.24/clipboard.min.js new file mode 100644 index 000000000..02c549e35 --- /dev/null +++ b/v1.5.24/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.4 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return function(n){var o={};function r(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}return r.m=n,r.c=o,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0)}([function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function o(t,e){for(var n=0;n + + + + + Concepts - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Concepts

+

The following sections give a conceptual overview of how Claircore works internally.

+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/concepts/indexer_architecture.html b/v1.5.24/concepts/indexer_architecture.html new file mode 100644 index 000000000..5aeafc8cc --- /dev/null +++ b/v1.5.24/concepts/indexer_architecture.html @@ -0,0 +1,296 @@ + + + + + + Indexer Architecture - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Indexer

+

claircore/indexer

+

The Indexer package performs Libindex's heavy lifting. It is responsible for retreiving Manifest layers, parsing the contents of each layer, and computing an IndexReport.

+

To perform this action in incremental steps the Indexer is implemented as a finite state machine. At each state transition the Indexer persists an updated IndexReport to its datastore.

+

States

+

The following diagram expresses the possible states of the Indexer:

+
+stateDiagram-v2
+	state if_indexed <<choice>>
+	[*] --> CheckManifest
+	CheckManifest --> if_indexed
+	if_indexed --> [*]: Indexed
+	if_indexed --> FetchLayers: Unindexed
+	FetchLayers --> ScanLayers
+	ScanLayers --> Coalesce
+	Coalesce --> IndexManifest
+	IndexManifest --> IndexFinished
+	IndexFinished --> [*]
+%% These notes make the diagram unreadable :/
+%% note left of CheckManifest: Determine if this manifest has been indexed previously.
+%% note right of FetchLayers: Determine which layers need to be indexed and fetch them.
+%% note right of ScanLayers: Concurrently run needed Indexers on layers.
+%% note right of Coalesce: Compute the final contents of the container image.
+%% note right of IndexManifest: Associate all the discoved data.
+%% note right of IndexFinished: Persist the results.
+
+

Data Model

+

The Indexer data model focuses on content addressable hashes as primary keys, the deduplication of package/distribution/repostitory information, and the recording of scan artifacts. +Scan artifacts are unique artifacts found within a layer which point to a deduplicated general package/distribution/repository record.

+

The following diagram outlines the current Indexer data model.

+
+%%{init: {"er":{"layoutDirection":"RL"}} }%%
+erDiagram
+	ManifestLayer many to 1 Manifest: ""
+	ManifestLayer many to 1 Layer: ""
+	ScannedLayer many to 1 Layer: ""
+	ScannedLayer many to 1 Scanner: ""
+	ScannedManifest many to 1 Manifest: ""
+	ScannedManifest many to 1 Scanner: ""
+
+	TYPE_ScanArtifact 1 to 1 Layer: ""
+	TYPE_ScanArtifact 1 to 1 Scanner: ""
+	TYPE_ScanArtifact 1 to 1 TYPE: ""
+
+	ManifestIndex many to 1 Manifest: ""
+	ManifestIndex 1 to zero or one TYPE: ""
+
+	IndexReport 1 to 1 Manifest: "cached result"
+
+

Note that TYPE stands in for each of the Indexer types (i.e. Package, Repository, etc.).

+

HTTP Resources

+

Indexers as currently built may make network requests. +This is an outstanding issue. +The following are the URLs used.

+
    +
  • https://search.maven.org/solrsearch/select
  • +
  • https://catalog.redhat.com/api/containers/
  • +
  • https://access.redhat.com/security/data/metrics/repository-to-cpe.json
  • +
  • https://access.redhat.com/security/data/metrics/container-name-repos-map.json
  • +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/concepts/matcher_architecture.html b/v1.5.24/concepts/matcher_architecture.html new file mode 100644 index 000000000..d3d866be8 --- /dev/null +++ b/v1.5.24/concepts/matcher_architecture.html @@ -0,0 +1,269 @@ + + + + + + Matching Architecture - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Matcher Architecture

+

claircore/internal/matcher +claircore/libvuln/driver

+

The Matcher architecture is based on a data flow application.

+
+graph TD
+	start[Libvuln.Scan]
+	finish[Merge into VulnerabilityReport]
+	start ---> RemoteMatcher & Matcher ---> finish
+	subgraph RemoteMatcher
+		ra[Filter interested packages]
+		api[Make API calls]
+		rv[Decide vulnerability]
+		ra --> api --> rv
+	end
+	subgraph Matcher
+		dbv[Check versions in-database]
+		ma[Filter interested packages]
+		adv[Retrive vulnerabilty information]
+		mv[Deicide vulnerability]
+		ma --> adv --> mv
+		adv -.-> dbv -.-> mv
+	end
+
+

When Libvuln's Scan method is called with an IndexReport it will begin the process of matching container contents with vulnerabilities.

+

Each configured Matcher will be instantiated concurrently. Depending on the interfaces the Matcher implements, one of the possible data flows will occur in the diagram above.

+

The provided IndexReport will be unpacked into a stream of IndexRecord structs. Each Matcher will evaluate each record in the stream and determine if the IndexRecord is vulnerable to a security advisory in their responsible databases.

+

Once each Matcher returns the set of vulnerabities, Libvuln will merge the results into a VulnerabilityReport and return this to the client.

+

HTTP Resources

+

NOTE: Remote matchers are being considered for removal.

+

"Remote matchers" may make HTTP requests during the matcher flow. +These requests are time-bound and errors are not reported. +The following are the URLs used.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/concepts/severity_mapping.html b/v1.5.24/concepts/severity_mapping.html new file mode 100644 index 000000000..5d9d3a5ff --- /dev/null +++ b/v1.5.24/concepts/severity_mapping.html @@ -0,0 +1,347 @@ + + + + + + Severity Mapping - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Severity Mapping

+

Claircore will normalize a security databases's severity string to a set of defined values. +Clients may use the NormalizedSeverity field on a claircore.Vulnerability to react to vulnerability severities without needing to know each security database's severity strings. +All strings used in the mapping tables are identical to the strings found within the relevant security database.

+

Claircore Severity Strings

+

The following are severity strings Claircore will normalize others to. +Clients can guarantee one of these strings will be associated with a claircore.Vulnerability.

+
    +
  • Unknown
  • +
  • Negligible
  • +
  • Low
  • +
  • Medium
  • +
  • High
  • +
  • Critical
  • +
+ +

Alpine Mapping

+

The Alpine SecDB database does not provide severity information. +All vulnerability severities will be Unknown.

+
+ +
Alpine SeverityClaircore Severity
*Unknown
+
+

AWS Mapping

+

The AWS UpdateInfo database provides severity information.

+
+ + + + +
AWS SeverityClaircore Severity
lowLow
mediumMedium
importantHigh
criticalCritical
+
+

Debian Mapping

+

The Debian security tracker data provides severity information.

+
+ + + + + +
Debian SeverityClaircore Severity
unimportantLow
lowMedium
mediumHigh
highCritical
*Unknown
+
+

Oracle Mapping

+

The Oracle OVAL database provides severity information.

+
+ + + + + +
Oracle SeverityClaircore Severity
N/AUnknown
LOWLow
MODERATEMedium
IMPORTANTHigh
CRITICALCritical
+
+

RHEL Mapping

+

The RHEL OVAL database provides severity information.

+
+ + + + + +
RHEL SeverityClaircore Severity
NoneUnknown
LowLow
ModerateMedium
ImportantHigh
CriticalCritical
+
+

SUSE Mapping

+

The SUSE OVAL database provides severity information.

+
+ + + + + +
SUSE SeverityClaircore Severity
NoneUnknown
LowLow
ModerateMedium
ImportantHigh
CriticalCritical
+
+

Ubuntu Mapping

+

The Ubuntu OVAL database provides severity information.

+
+ + + + + + +
Ubuntu SeverityClaircore Severity
UntriagedUnknown
NegligibleNegligible
LowLow
MediumMedium
HighHigh
CriticalCritical
+
+

Photon Mapping

+

The Photon OVAL database provides severity information.

+
+ + + + +
Photon SeverityClaircore Severity
LowLow
ModerateMedium
ImportantHigh
CriticalCritical
+
+

OSV Mapping

+

OSV provides severity information via CVSS vectors, when applicable. +These are normalized according to the NVD qualitative rating scale. +If both v3 and v2 vectors are present, v3 is preferred.

+

CVSSv3

+
+ + + + + +
Base ScoreClaircore Severity
0.0Negligible
0.1-3.9Low
4.0-6.9Medium
7.0-8.9High
9.0-10.0Critical
+
+

CVSSv2

+
+ + + +
Base ScoreClaircore Severity
0.0-3.9Low
4.0-6.9Medium
7.0-10.0High
+
+
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/concepts/updater_defaults.html b/v1.5.24/concepts/updater_defaults.html new file mode 100644 index 000000000..d7837f5e6 --- /dev/null +++ b/v1.5.24/concepts/updater_defaults.html @@ -0,0 +1,261 @@ + + + + + + Updater Defaults - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Updaters and Defaults

+

The default updaters are tracked in updater/defaults/defaults.go.

+

HTTP Resources

+

The following are the HTTP hosts and paths that Clair will attempt to +talk to in a default configuration. This list is non-exhaustive, as +some servers will issue redirects and some request URLs are constructed +dynamically.

+
    +
  • https://secdb.alpinelinux.org/
  • +
  • http://repo.us-west-2.amazonaws.com/2018.03/updates/x86_64/mirror.list
  • +
  • https://cdn.amazonlinux.com/2/core/latest/x86_64/mirror.list
  • +
  • https://cdn.amazonlinux.com/al2023/core/mirrors/latest/x86_64/mirror.list
  • +
  • https://deb.debian.org/
  • +
  • https://security-tracker.debian.org/tracker/data/json
  • +
  • https://nvd.nist.gov/feeds/json/cve/1.1/
  • +
  • https://linux.oracle.com/security/oval/com.oracle.elsa-*.xml.bz2
  • +
  • https://packages.vmware.com/photon/photon_oval_definitions/
  • +
  • https://access.redhat.com/security/data/metrics/cvemap.xml
  • +
  • https://access.redhat.com/security/cve/
  • +
  • https://access.redhat.com/security/data/oval/v2/PULP_MANIFEST
  • +
  • https://support.novell.com/security/oval/
  • +
  • https://api.launchpad.net/1.0/
  • +
  • https://security-metadata.canonical.com/oval/com.ubuntu.*.cve.oval.xml
  • +
  • https://osv-vulnerabilities.storage.googleapis.com/
  • +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/concepts/vulnerability_matching.html b/v1.5.24/concepts/vulnerability_matching.html new file mode 100644 index 000000000..d543b3db4 --- /dev/null +++ b/v1.5.24/concepts/vulnerability_matching.html @@ -0,0 +1,246 @@ + + + + + + Vulnerability Matching - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Vulnerability Matching

+

The following describes a successful scan.

+
    +
  1. Updaters have ran either in the background on an interval or an offline loader has been ran.
  2. +
  3. A Manifest is provided to Libindex. Libindex fetches all the layers, runs all scanner types on each layer, persists all artifacts found in each layer, and computes an IndexReport.
  4. +
  5. A IndexReport is provided to Libvuln.
  6. +
  7. Libvuln creates a stream of IndexRecord structs from the IndexReport and concurrently streams these structs to each configured Matcher.
  8. +
  9. Libvuln computes a VulnerabilityReport aggregating all vulnerabilities discovered by all configured Matcher implementations.
  10. +
  11. Sometime later the security advisory database is updated and a new request to Libvuln will present updated vulnerability data.
  12. +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/contributor.html b/v1.5.24/contributor.html new file mode 100644 index 000000000..fccc6a371 --- /dev/null +++ b/v1.5.24/contributor.html @@ -0,0 +1,244 @@ + + + + + + Contributors - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Contributors

+

These topics cover helpful tips for contributing to Claircore.

+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/contributor/changelog.html b/v1.5.24/contributor/changelog.html new file mode 100644 index 000000000..c07f9444c --- /dev/null +++ b/v1.5.24/contributor/changelog.html @@ -0,0 +1,267 @@ + + + + + + Changelog - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

The claircore project has switched from a git log based changelog to a +git notes based changelog.

+

This has the benefit of making the changelog more human-friendly, as it can have +prose describing changes now, but makes adding entries a bit more involved. A +full understanding of git notes is helpful for working with the changelog, but +not required. If the reader has worked with the notes feature before, the +changelog entries are stored under the changelog ref. For other users, there +are some helper scripts in .github/scripts.

+

Basics of git notes

+

Git notes is a mechanism for storing additional information alongside commits +without modifying the commits. It does this by creating a ref full of files +named after the commits, with their contents being the notes. This scheme +requires some special care and tooling -- see the documentation for +more information.

+

Helper scripts

+

The primary helper script is changelog-edit. It allows a user to sync down +notes, edit an entry, or both. See the output of the h flag for more +information.

+

The other script of interest is changelog-render, which can be used to render +out the changelog on demand, assuming the changelog notes have been pulled +locally.

+

The changelog-update script uses changelog-render to add to the +CHANGELOG.md file in the repository root.

+

Formatting

+

Broadly, changelog entries should be formatted like commit messages without any +trailers. Entries are turned into list items, with the subject being the bullet +point and the body of the entry being the "body" of the item, or hidden behind +details elements when using HTML-enabled output.

+

The entries are almost always rendered as markdown, so using minimal markdown is +OK. Anything requiring excessive markdown is probably better served as +documentation proper, rather than a changelog entry.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/contributor/local-dev.html b/v1.5.24/contributor/local-dev.html new file mode 100644 index 000000000..92f5a0efa --- /dev/null +++ b/v1.5.24/contributor/local-dev.html @@ -0,0 +1,251 @@ + + + + + + Local Development - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Local Development

+

A local development environment is implemented via docker-compose.

+

Usage

+

Several make targets are defined for working with the local development environment.

+
claircore-db-up - creates just the claircore database useful for running integration tests without test servers
+claircore-db-restart - destroys and recreates a fresh database. localhost:5434
+
+

Tests

+

Several make targets are defined for working with tests.

+
integration - run the integration test suite. requires the claircore-db to be up. run `make clair-db-up` before this target
+unit - run the unit test suite.
+bench -  runs the benchmarks
+integration-v - runs the integration test suite with verbose
+unit-v - runs the unit test suite with verbose
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/contributor/logging.html b/v1.5.24/contributor/logging.html new file mode 100644 index 000000000..701e65a13 --- /dev/null +++ b/v1.5.24/contributor/logging.html @@ -0,0 +1,320 @@ + + + + + + Logging - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Logging

+

All the logging in claircore is done with zerolog via context.Context +values. The zlog package takes OpenTelemetry labels and attaches them to +zerolog events.

+

This allows for claircore's logging to be used consistently throughout all the +packages without having unintended prints to stderr.

+

How to Log

+

Adding Context

+

In a function, use zlog to add key-value pairs of any relevant context:

+
	ctx = zlog.ContextWithValues(ctx,
+		"component", "Example.Logger")
+
+

Alternatively, the go.opentelemetry.io/otel/baggage package can be used for +more explicit control around the baggage values.

+

Logging style

+

Constant Messages

+

Zerolog emits lines when the Msg or Msgf methods are called. Project style +is to not use Msgf. Any variable data should be set as key-value pairs on +the Event object.

+

For example, don't do this:

+
	zlog.Info(ctx).Msgf("done at: %v", time.Now())
+
+

Do this instead:

+
	zlog.Info(ctx).
+		Time("time", time.Now()).
+		Msgf("done")
+
+

Grammar

+

When noting the change during a chunk of work, make sure that the +log messages scan as visually similar. Usually, this means formatting messages +into "${process} ${event}". For example:

+
frob start
+frob initialized
+frob ready
+frob success
+frob done
+
+

Is much easier to scan than:

+
starting to frob
+initialized frobber
+ready for frobbing
+did frob
+done with frobing
+
+

Don't log and return

+

When handling an error, code should only log it if it does not propagate it. The +code that ultimately handles the error is responsible for deciding what to do +with it. Logging and returning ends up with the same message repeated multiple +times in the logs.

+

Levels

+

Claircore attempts to have consistent leveled logging. The rules for figuring +out what level to use is:

+
    +
  • +

    Panic

    +

    There's some occurrence that means the process won't work correctly.

    +
  • +
  • +

    Fatal

    +

    Unused, because it prevents defers from running.

    +
  • +
  • +

    Error

    +

    Something unexpected occurred and the process can continue, but a +human needs to be notified. An error will be returned for this request.

    +
  • +
  • +

    Warn

    +

    Something unexpected occurred and the process can continue. An error will be +returned for this request.

    +
  • +
  • +

    Info

    +

    Some information that may be useful to an operator. Examples include +a timer-based process starting and ending, a user request starting and +ending, or a summary of work done.

    +
  • +
  • +

    Debug

    +

    Some information that may be useful to a developer. Examples include entering +and exiting functions, stepping through a function, or specific file paths +used while work is being done.

    +
  • +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/contributor/misc.html b/v1.5.24/contributor/misc.html new file mode 100644 index 000000000..b6881b45f --- /dev/null +++ b/v1.5.24/contributor/misc.html @@ -0,0 +1,245 @@ + + + + + + Misc - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Here's various codebase conventions that don't have dedicated pages:

+
    +
  • URLs +URLs in code should be annotated with a //doc:url directive comment. See +the the internal/cmd/mdbook-injecturls command for documentation on how the +preprocessor works. The list of keywords isn't an allowlist, so an invocation +like the following should list the ones actually used in the documentation +using a command like git grep injecturls -- :/docs/*.md.
  • +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/contributor/tests.html b/v1.5.24/contributor/tests.html new file mode 100644 index 000000000..b187588aa --- /dev/null +++ b/v1.5.24/contributor/tests.html @@ -0,0 +1,239 @@ + + + + + + Tests - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Tests

+

Tests in the claircore module may use various helpers underneath the test directory. +Using these packages outside of testing code is disallowed. +Assert packages are disallowed; +the go-cmp package is the only external package helper allowed.

+

Tests that use external resources or generate test fixtures should be annotated according to the integration package.

+

Caching

+

Tests using the integration package cache generated and downloaded assets into a directory named clair-testing inside the directory reported by os.UserCacheDir. +For example, on a Linux system, the cache directory will be (in sh notation) ${XDG_CACHE_HOME-$HOME/.cache}/clair-testing.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/css/chrome.css b/v1.5.24/css/chrome.css new file mode 100644 index 000000000..8b78255de --- /dev/null +++ b/v1.5.24/css/chrome.css @@ -0,0 +1,606 @@ +/* CSS for UI elements (a.k.a. chrome) */ + +@import 'variables.css'; + +html { + scrollbar-color: var(--scrollbar) var(--bg); +} +#searchresults a, +.content a:link, +a:visited, +a > .hljs { + color: var(--links); +} + +/* + body-container is necessary because mobile browsers don't seem to like + overflow-x on the body tag when there is a tag. +*/ +#body-container { + /* + This is used when the sidebar pushes the body content off the side of + the screen on small screens. Without it, dragging on mobile Safari + will want to reposition the viewport in a weird way. + */ + overflow-x: clip; +} + +/* Menu Bar */ + +#menu-bar, +#menu-bar-hover-placeholder { + z-index: 101; + margin: auto calc(0px - var(--page-padding)); +} +#menu-bar { + position: relative; + display: flex; + flex-wrap: wrap; + background-color: var(--bg); + border-block-end-color: var(--bg); + border-block-end-width: 1px; + border-block-end-style: solid; +} +#menu-bar.sticky, +.js #menu-bar-hover-placeholder:hover + #menu-bar, +.js #menu-bar:hover, +.js.sidebar-visible #menu-bar { + position: -webkit-sticky; + position: sticky; + top: 0 !important; +} +#menu-bar-hover-placeholder { + position: sticky; + position: -webkit-sticky; + top: 0; + height: var(--menu-bar-height); +} +#menu-bar.bordered { + border-block-end-color: var(--table-border-color); +} +#menu-bar i, #menu-bar .icon-button { + position: relative; + padding: 0 8px; + z-index: 10; + line-height: var(--menu-bar-height); + cursor: pointer; + transition: color 0.5s; +} +@media only screen and (max-width: 420px) { + #menu-bar i, #menu-bar .icon-button { + padding: 0 5px; + } +} + +.icon-button { + border: none; + background: none; + padding: 0; + color: inherit; +} +.icon-button i { + margin: 0; +} + +.right-buttons { + margin: 0 15px; +} +.right-buttons a { + text-decoration: none; +} + +.left-buttons { + display: flex; + margin: 0 5px; +} +.no-js .left-buttons button { + display: none; +} + +.menu-title { + display: inline-block; + font-weight: 200; + font-size: 2.4rem; + line-height: var(--menu-bar-height); + text-align: center; + margin: 0; + flex: 1; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.js .menu-title { + cursor: pointer; +} + +.menu-bar, +.menu-bar:visited, +.nav-chapters, +.nav-chapters:visited, +.mobile-nav-chapters, +.mobile-nav-chapters:visited, +.menu-bar .icon-button, +.menu-bar a i { + color: var(--icons); +} + +.menu-bar i:hover, +.menu-bar .icon-button:hover, +.nav-chapters:hover, +.mobile-nav-chapters i:hover { + color: var(--icons-hover); +} + +/* Nav Icons */ + +.nav-chapters { + font-size: 2.5em; + text-align: center; + text-decoration: none; + + position: fixed; + top: 0; + bottom: 0; + margin: 0; + max-width: 150px; + min-width: 90px; + + display: flex; + justify-content: center; + align-content: center; + flex-direction: column; + + transition: color 0.5s, background-color 0.5s; +} + +.nav-chapters:hover { + text-decoration: none; + background-color: var(--theme-hover); + transition: background-color 0.15s, color 0.15s; +} + +.nav-wrapper { + margin-block-start: 50px; + display: none; +} + +.mobile-nav-chapters { + font-size: 2.5em; + text-align: center; + text-decoration: none; + width: 90px; + border-radius: 5px; + background-color: var(--sidebar-bg); +} + +/* Only Firefox supports flow-relative values */ +.previous { float: left; } +[dir=rtl] .previous { float: right; } + +/* Only Firefox supports flow-relative values */ +.next { + float: right; + right: var(--page-padding); +} +[dir=rtl] .next { + float: left; + right: unset; + left: var(--page-padding); +} + +/* Use the correct buttons for RTL layouts*/ +[dir=rtl] .previous i.fa-angle-left:before {content:"\f105";} +[dir=rtl] .next i.fa-angle-right:before { content:"\f104"; } + +@media only screen and (max-width: 1080px) { + .nav-wide-wrapper { display: none; } + .nav-wrapper { display: block; } +} + +/* sidebar-visible */ +@media only screen and (max-width: 1380px) { + #sidebar-toggle-anchor:checked ~ .page-wrapper .nav-wide-wrapper { display: none; } + #sidebar-toggle-anchor:checked ~ .page-wrapper .nav-wrapper { display: block; } +} + +/* Inline code */ + +:not(pre) > .hljs { + display: inline; + padding: 0.1em 0.3em; + border-radius: 3px; +} + +:not(pre):not(a) > .hljs { + color: var(--inline-code-color); + overflow-x: initial; +} + +a:hover > .hljs { + text-decoration: underline; +} + +pre { + position: relative; +} +pre > .buttons { + position: absolute; + z-index: 100; + right: 0px; + top: 2px; + margin: 0px; + padding: 2px 0px; + + color: var(--sidebar-fg); + cursor: pointer; + visibility: hidden; + opacity: 0; + transition: visibility 0.1s linear, opacity 0.1s linear; +} +pre:hover > .buttons { + visibility: visible; + opacity: 1 +} +pre > .buttons :hover { + color: var(--sidebar-active); + border-color: var(--icons-hover); + background-color: var(--theme-hover); +} +pre > .buttons i { + margin-inline-start: 8px; +} +pre > .buttons button { + cursor: inherit; + margin: 0px 5px; + padding: 3px 5px; + font-size: 14px; + + border-style: solid; + border-width: 1px; + border-radius: 4px; + border-color: var(--icons); + background-color: var(--theme-popup-bg); + transition: 100ms; + transition-property: color,border-color,background-color; + color: var(--icons); +} +@media (pointer: coarse) { + pre > .buttons button { + /* On mobile, make it easier to tap buttons. */ + padding: 0.3rem 1rem; + } + + .sidebar-resize-indicator { + /* Hide resize indicator on devices with limited accuracy */ + display: none; + } +} +pre > code { + display: block; + padding: 1rem; +} + +/* FIXME: ACE editors overlap their buttons because ACE does absolute + positioning within the code block which breaks padding. The only solution I + can think of is to move the padding to the outer pre tag (or insert a div + wrapper), but that would require fixing a whole bunch of CSS rules. +*/ +.hljs.ace_editor { + padding: 0rem 0rem; +} + +pre > .result { + margin-block-start: 10px; +} + +/* Search */ + +#searchresults a { + text-decoration: none; +} + +mark { + border-radius: 2px; + padding-block-start: 0; + padding-block-end: 1px; + padding-inline-start: 3px; + padding-inline-end: 3px; + margin-block-start: 0; + margin-block-end: -1px; + margin-inline-start: -3px; + margin-inline-end: -3px; + background-color: var(--search-mark-bg); + transition: background-color 300ms linear; + cursor: pointer; +} + +mark.fade-out { + background-color: rgba(0,0,0,0) !important; + cursor: auto; +} + +.searchbar-outer { + margin-inline-start: auto; + margin-inline-end: auto; + max-width: var(--content-max-width); +} + +#searchbar { + width: 100%; + margin-block-start: 5px; + margin-block-end: 0; + margin-inline-start: auto; + margin-inline-end: auto; + padding: 10px 16px; + transition: box-shadow 300ms ease-in-out; + border: 1px solid var(--searchbar-border-color); + border-radius: 3px; + background-color: var(--searchbar-bg); + color: var(--searchbar-fg); +} +#searchbar:focus, +#searchbar.active { + box-shadow: 0 0 3px var(--searchbar-shadow-color); +} + +.searchresults-header { + font-weight: bold; + font-size: 1em; + padding-block-start: 18px; + padding-block-end: 0; + padding-inline-start: 5px; + padding-inline-end: 0; + color: var(--searchresults-header-fg); +} + +.searchresults-outer { + margin-inline-start: auto; + margin-inline-end: auto; + max-width: var(--content-max-width); + border-block-end: 1px dashed var(--searchresults-border-color); +} + +ul#searchresults { + list-style: none; + padding-inline-start: 20px; +} +ul#searchresults li { + margin: 10px 0px; + padding: 2px; + border-radius: 2px; +} +ul#searchresults li.focus { + background-color: var(--searchresults-li-bg); +} +ul#searchresults span.teaser { + display: block; + clear: both; + margin-block-start: 5px; + margin-block-end: 0; + margin-inline-start: 20px; + margin-inline-end: 0; + font-size: 0.8em; +} +ul#searchresults span.teaser em { + font-weight: bold; + font-style: normal; +} + +/* Sidebar */ + +.sidebar { + position: fixed; + left: 0; + top: 0; + bottom: 0; + width: var(--sidebar-width); + font-size: 0.875em; + box-sizing: border-box; + -webkit-overflow-scrolling: touch; + overscroll-behavior-y: contain; + background-color: var(--sidebar-bg); + color: var(--sidebar-fg); +} +[dir=rtl] .sidebar { left: unset; right: 0; } +.sidebar-resizing { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +.no-js .sidebar, +.js:not(.sidebar-resizing) .sidebar { + transition: transform 0.3s; /* Animation: slide away */ +} +.sidebar code { + line-height: 2em; +} +.sidebar .sidebar-scrollbox { + overflow-y: auto; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + padding: 10px 10px; +} +.sidebar .sidebar-resize-handle { + position: absolute; + cursor: col-resize; + width: 0; + right: calc(var(--sidebar-resize-indicator-width) * -1); + top: 0; + bottom: 0; + display: flex; + align-items: center; +} + +.sidebar-resize-handle .sidebar-resize-indicator { + width: 100%; + height: 12px; + background-color: var(--icons); + margin-inline-start: var(--sidebar-resize-indicator-space); +} + +[dir=rtl] .sidebar .sidebar-resize-handle { + left: calc(var(--sidebar-resize-indicator-width) * -1); + right: unset; +} +.js .sidebar .sidebar-resize-handle { + cursor: col-resize; + width: calc(var(--sidebar-resize-indicator-width) - var(--sidebar-resize-indicator-space)); +} +/* sidebar-hidden */ +#sidebar-toggle-anchor:not(:checked) ~ .sidebar { + transform: translateX(calc(0px - var(--sidebar-width) - var(--sidebar-resize-indicator-width))); + z-index: -1; +} +[dir=rtl] #sidebar-toggle-anchor:not(:checked) ~ .sidebar { + transform: translateX(calc(var(--sidebar-width) + var(--sidebar-resize-indicator-width))); +} +.sidebar::-webkit-scrollbar { + background: var(--sidebar-bg); +} +.sidebar::-webkit-scrollbar-thumb { + background: var(--scrollbar); +} + +/* sidebar-visible */ +#sidebar-toggle-anchor:checked ~ .page-wrapper { + transform: translateX(calc(var(--sidebar-width) + var(--sidebar-resize-indicator-width))); +} +[dir=rtl] #sidebar-toggle-anchor:checked ~ .page-wrapper { + transform: translateX(calc(0px - var(--sidebar-width) - var(--sidebar-resize-indicator-width))); +} +@media only screen and (min-width: 620px) { + #sidebar-toggle-anchor:checked ~ .page-wrapper { + transform: none; + margin-inline-start: calc(var(--sidebar-width) + var(--sidebar-resize-indicator-width)); + } + [dir=rtl] #sidebar-toggle-anchor:checked ~ .page-wrapper { + transform: none; + } +} + +.chapter { + list-style: none outside none; + padding-inline-start: 0; + line-height: 2.2em; +} + +.chapter ol { + width: 100%; +} + +.chapter li { + display: flex; + color: var(--sidebar-non-existant); +} +.chapter li a { + display: block; + padding: 0; + text-decoration: none; + color: var(--sidebar-fg); +} + +.chapter li a:hover { + color: var(--sidebar-active); +} + +.chapter li a.active { + color: var(--sidebar-active); +} + +.chapter li > a.toggle { + cursor: pointer; + display: block; + margin-inline-start: auto; + padding: 0 10px; + user-select: none; + opacity: 0.68; +} + +.chapter li > a.toggle div { + transition: transform 0.5s; +} + +/* collapse the section */ +.chapter li:not(.expanded) + li > ol { + display: none; +} + +.chapter li.chapter-item { + line-height: 1.5em; + margin-block-start: 0.6em; +} + +.chapter li.expanded > a.toggle div { + transform: rotate(90deg); +} + +.spacer { + width: 100%; + height: 3px; + margin: 5px 0px; +} +.chapter .spacer { + background-color: var(--sidebar-spacer); +} + +@media (-moz-touch-enabled: 1), (pointer: coarse) { + .chapter li a { padding: 5px 0; } + .spacer { margin: 10px 0; } +} + +.section { + list-style: none outside none; + padding-inline-start: 20px; + line-height: 1.9em; +} + +/* Theme Menu Popup */ + +.theme-popup { + position: absolute; + left: 10px; + top: var(--menu-bar-height); + z-index: 1000; + border-radius: 4px; + font-size: 0.7em; + color: var(--fg); + background: var(--theme-popup-bg); + border: 1px solid var(--theme-popup-border); + margin: 0; + padding: 0; + list-style: none; + display: none; + /* Don't let the children's background extend past the rounded corners. */ + overflow: hidden; +} +[dir=rtl] .theme-popup { left: unset; right: 10px; } +.theme-popup .default { + color: var(--icons); +} +.theme-popup .theme { + width: 100%; + border: 0; + margin: 0; + padding: 2px 20px; + line-height: 25px; + white-space: nowrap; + text-align: start; + cursor: pointer; + color: inherit; + background: inherit; + font-size: inherit; +} +.theme-popup .theme:hover { + background-color: var(--theme-hover); +} + +.theme-selected::before { + display: inline-block; + content: "✓"; + margin-inline-start: -14px; + width: 14px; +} diff --git a/v1.5.24/css/general.css b/v1.5.24/css/general.css new file mode 100644 index 000000000..e7d20da72 --- /dev/null +++ b/v1.5.24/css/general.css @@ -0,0 +1,234 @@ +/* Base styles and content styles */ + +@import 'variables.css'; + +:root { + /* Browser default font-size is 16px, this way 1 rem = 10px */ + font-size: 62.5%; + color-scheme: var(--color-scheme); +} + +html { + font-family: "Open Sans", sans-serif; + color: var(--fg); + background-color: var(--bg); + text-size-adjust: none; + -webkit-text-size-adjust: none; +} + +body { + margin: 0; + font-size: 1.6rem; + overflow-x: hidden; +} + +code { + font-family: var(--mono-font) !important; + font-size: var(--code-font-size); + direction: ltr !important; +} + +/* make long words/inline code not x overflow */ +main { + overflow-wrap: break-word; +} + +/* make wide tables scroll if they overflow */ +.table-wrapper { + overflow-x: auto; +} + +/* Don't change font size in headers. */ +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + font-size: unset; +} + +.left { float: left; } +.right { float: right; } +.boring { opacity: 0.6; } +.hide-boring .boring { display: none; } +.hidden { display: none !important; } + +h2, h3 { margin-block-start: 2.5em; } +h4, h5 { margin-block-start: 2em; } + +.header + .header h3, +.header + .header h4, +.header + .header h5 { + margin-block-start: 1em; +} + +h1:target::before, +h2:target::before, +h3:target::before, +h4:target::before, +h5:target::before, +h6:target::before { + display: inline-block; + content: "»"; + margin-inline-start: -30px; + width: 30px; +} + +/* This is broken on Safari as of version 14, but is fixed + in Safari Technology Preview 117 which I think will be Safari 14.2. + https://bugs.webkit.org/show_bug.cgi?id=218076 +*/ +:target { + /* Safari does not support logical properties */ + scroll-margin-top: calc(var(--menu-bar-height) + 0.5em); +} + +.page { + outline: 0; + padding: 0 var(--page-padding); + margin-block-start: calc(0px - var(--menu-bar-height)); /* Compensate for the #menu-bar-hover-placeholder */ +} +.page-wrapper { + box-sizing: border-box; + background-color: var(--bg); +} +.no-js .page-wrapper, +.js:not(.sidebar-resizing) .page-wrapper { + transition: margin-left 0.3s ease, transform 0.3s ease; /* Animation: slide away */ +} +[dir=rtl] .js:not(.sidebar-resizing) .page-wrapper { + transition: margin-right 0.3s ease, transform 0.3s ease; /* Animation: slide away */ +} + +.content { + overflow-y: auto; + padding: 0 5px 50px 5px; +} +.content main { + margin-inline-start: auto; + margin-inline-end: auto; + max-width: var(--content-max-width); +} +.content p { line-height: 1.45em; } +.content ol { line-height: 1.45em; } +.content ul { line-height: 1.45em; } +.content a { text-decoration: none; } +.content a:hover { text-decoration: underline; } +.content img, .content video { max-width: 100%; } +.content .header:link, +.content .header:visited { + color: var(--fg); +} +.content .header:link, +.content .header:visited:hover { + text-decoration: none; +} + +table { + margin: 0 auto; + border-collapse: collapse; +} +table td { + padding: 3px 20px; + border: 1px var(--table-border-color) solid; +} +table thead { + background: var(--table-header-bg); +} +table thead td { + font-weight: 700; + border: none; +} +table thead th { + padding: 3px 20px; +} +table thead tr { + border: 1px var(--table-header-bg) solid; +} +/* Alternate background colors for rows */ +table tbody tr:nth-child(2n) { + background: var(--table-alternate-bg); +} + + +blockquote { + margin: 20px 0; + padding: 0 20px; + color: var(--fg); + background-color: var(--quote-bg); + border-block-start: .1em solid var(--quote-border); + border-block-end: .1em solid var(--quote-border); +} + +.warning { + margin: 20px; + padding: 0 20px; + border-inline-start: 2px solid var(--warning-border); +} + +.warning:before { + position: absolute; + width: 3rem; + height: 3rem; + margin-inline-start: calc(-1.5rem - 21px); + content: "ⓘ"; + text-align: center; + background-color: var(--bg); + color: var(--warning-border); + font-weight: bold; + font-size: 2rem; +} + +blockquote .warning:before { + background-color: var(--quote-bg); +} + +kbd { + background-color: var(--table-border-color); + border-radius: 4px; + border: solid 1px var(--theme-popup-border); + box-shadow: inset 0 -1px 0 var(--theme-hover); + display: inline-block; + font-size: var(--code-font-size); + font-family: var(--mono-font); + line-height: 10px; + padding: 4px 5px; + vertical-align: middle; +} + +:not(.footnote-definition) + .footnote-definition, +.footnote-definition + :not(.footnote-definition) { + margin-block-start: 2em; +} +.footnote-definition { + font-size: 0.9em; + margin: 0.5em 0; +} +.footnote-definition p { + display: inline; +} + +.tooltiptext { + position: absolute; + visibility: hidden; + color: #fff; + background-color: #333; + transform: translateX(-50%); /* Center by moving tooltip 50% of its width left */ + left: -8px; /* Half of the width of the icon */ + top: -35px; + font-size: 0.8em; + text-align: center; + border-radius: 6px; + padding: 5px 8px; + margin: 5px; + z-index: 1000; +} +.tooltipped .tooltiptext { + visibility: visible; +} + +.chapter li.part-title { + color: var(--sidebar-fg); + margin: 5px 0px; + font-weight: bold; +} + +.result-no-output { + font-style: italic; +} diff --git a/v1.5.24/css/print.css b/v1.5.24/css/print.css new file mode 100644 index 000000000..80ec3a544 --- /dev/null +++ b/v1.5.24/css/print.css @@ -0,0 +1,50 @@ + +#sidebar, +#menu-bar, +.nav-chapters, +.mobile-nav-chapters { + display: none; +} + +#page-wrapper.page-wrapper { + transform: none !important; + margin-inline-start: 0px; + overflow-y: initial; +} + +#content { + max-width: none; + margin: 0; + padding: 0; +} + +.page { + overflow-y: initial; +} + +code { + direction: ltr !important; +} + +pre > .buttons { + z-index: 2; +} + +a, a:visited, a:active, a:hover { + color: #4183c4; + text-decoration: none; +} + +h1, h2, h3, h4, h5, h6 { + page-break-inside: avoid; + page-break-after: avoid; +} + +pre, code { + page-break-inside: avoid; + white-space: pre-wrap; +} + +.fa { + display: none !important; +} diff --git a/v1.5.24/css/variables.css b/v1.5.24/css/variables.css new file mode 100644 index 000000000..0da55e8c9 --- /dev/null +++ b/v1.5.24/css/variables.css @@ -0,0 +1,279 @@ + +/* Globals */ + +:root { + --sidebar-width: 300px; + --sidebar-resize-indicator-width: 8px; + --sidebar-resize-indicator-space: 2px; + --page-padding: 15px; + --content-max-width: 750px; + --menu-bar-height: 50px; + --mono-font: "Source Code Pro", Consolas, "Ubuntu Mono", Menlo, "DejaVu Sans Mono", monospace, monospace; + --code-font-size: 0.875em /* please adjust the ace font size accordingly in editor.js */ +} + +/* Themes */ + +.ayu { + --bg: hsl(210, 25%, 8%); + --fg: #c5c5c5; + + --sidebar-bg: #14191f; + --sidebar-fg: #c8c9db; + --sidebar-non-existant: #5c6773; + --sidebar-active: #ffb454; + --sidebar-spacer: #2d334f; + + --scrollbar: var(--sidebar-fg); + + --icons: #737480; + --icons-hover: #b7b9cc; + + --links: #0096cf; + + --inline-code-color: #ffb454; + + --theme-popup-bg: #14191f; + --theme-popup-border: #5c6773; + --theme-hover: #191f26; + + --quote-bg: hsl(226, 15%, 17%); + --quote-border: hsl(226, 15%, 22%); + + --warning-border: #ff8e00; + + --table-border-color: hsl(210, 25%, 13%); + --table-header-bg: hsl(210, 25%, 28%); + --table-alternate-bg: hsl(210, 25%, 11%); + + --searchbar-border-color: #848484; + --searchbar-bg: #424242; + --searchbar-fg: #fff; + --searchbar-shadow-color: #d4c89f; + --searchresults-header-fg: #666; + --searchresults-border-color: #888; + --searchresults-li-bg: #252932; + --search-mark-bg: #e3b171; + + --color-scheme: dark; +} + +.coal { + --bg: hsl(200, 7%, 8%); + --fg: #98a3ad; + + --sidebar-bg: #292c2f; + --sidebar-fg: #a1adb8; + --sidebar-non-existant: #505254; + --sidebar-active: #3473ad; + --sidebar-spacer: #393939; + + --scrollbar: var(--sidebar-fg); + + --icons: #43484d; + --icons-hover: #b3c0cc; + + --links: #2b79a2; + + --inline-code-color: #c5c8c6; + + --theme-popup-bg: #141617; + --theme-popup-border: #43484d; + --theme-hover: #1f2124; + + --quote-bg: hsl(234, 21%, 18%); + --quote-border: hsl(234, 21%, 23%); + + --warning-border: #ff8e00; + + --table-border-color: hsl(200, 7%, 13%); + --table-header-bg: hsl(200, 7%, 28%); + --table-alternate-bg: hsl(200, 7%, 11%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #b7b7b7; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #98a3ad; + --searchresults-li-bg: #2b2b2f; + --search-mark-bg: #355c7d; + + --color-scheme: dark; +} + +.light { + --bg: hsl(0, 0%, 100%); + --fg: hsl(0, 0%, 0%); + + --sidebar-bg: #fafafa; + --sidebar-fg: hsl(0, 0%, 0%); + --sidebar-non-existant: #aaaaaa; + --sidebar-active: #1f1fff; + --sidebar-spacer: #f4f4f4; + + --scrollbar: #8F8F8F; + + --icons: #747474; + --icons-hover: #000000; + + --links: #20609f; + + --inline-code-color: #301900; + + --theme-popup-bg: #fafafa; + --theme-popup-border: #cccccc; + --theme-hover: #e6e6e6; + + --quote-bg: hsl(197, 37%, 96%); + --quote-border: hsl(197, 37%, 91%); + + --warning-border: #ff8e00; + + --table-border-color: hsl(0, 0%, 95%); + --table-header-bg: hsl(0, 0%, 80%); + --table-alternate-bg: hsl(0, 0%, 97%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #fafafa; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #888; + --searchresults-li-bg: #e4f2fe; + --search-mark-bg: #a2cff5; + + --color-scheme: light; +} + +.navy { + --bg: hsl(226, 23%, 11%); + --fg: #bcbdd0; + + --sidebar-bg: #282d3f; + --sidebar-fg: #c8c9db; + --sidebar-non-existant: #505274; + --sidebar-active: #2b79a2; + --sidebar-spacer: #2d334f; + + --scrollbar: var(--sidebar-fg); + + --icons: #737480; + --icons-hover: #b7b9cc; + + --links: #2b79a2; + + --inline-code-color: #c5c8c6; + + --theme-popup-bg: #161923; + --theme-popup-border: #737480; + --theme-hover: #282e40; + + --quote-bg: hsl(226, 15%, 17%); + --quote-border: hsl(226, 15%, 22%); + + --warning-border: #ff8e00; + + --table-border-color: hsl(226, 23%, 16%); + --table-header-bg: hsl(226, 23%, 31%); + --table-alternate-bg: hsl(226, 23%, 14%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #aeaec6; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #5f5f71; + --searchresults-border-color: #5c5c68; + --searchresults-li-bg: #242430; + --search-mark-bg: #a2cff5; + + --color-scheme: dark; +} + +.rust { + --bg: hsl(60, 9%, 87%); + --fg: #262625; + + --sidebar-bg: #3b2e2a; + --sidebar-fg: #c8c9db; + --sidebar-non-existant: #505254; + --sidebar-active: #e69f67; + --sidebar-spacer: #45373a; + + --scrollbar: var(--sidebar-fg); + + --icons: #737480; + --icons-hover: #262625; + + --links: #2b79a2; + + --inline-code-color: #6e6b5e; + + --theme-popup-bg: #e1e1db; + --theme-popup-border: #b38f6b; + --theme-hover: #99908a; + + --quote-bg: hsl(60, 5%, 75%); + --quote-border: hsl(60, 5%, 70%); + + --warning-border: #ff8e00; + + --table-border-color: hsl(60, 9%, 82%); + --table-header-bg: #b3a497; + --table-alternate-bg: hsl(60, 9%, 84%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #fafafa; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #888; + --searchresults-li-bg: #dec2a2; + --search-mark-bg: #e69f67; + + --color-scheme: light; +} + +@media (prefers-color-scheme: dark) { + .light.no-js { + --bg: hsl(200, 7%, 8%); + --fg: #98a3ad; + + --sidebar-bg: #292c2f; + --sidebar-fg: #a1adb8; + --sidebar-non-existant: #505254; + --sidebar-active: #3473ad; + --sidebar-spacer: #393939; + + --scrollbar: var(--sidebar-fg); + + --icons: #43484d; + --icons-hover: #b3c0cc; + + --links: #2b79a2; + + --inline-code-color: #c5c8c6; + + --theme-popup-bg: #141617; + --theme-popup-border: #43484d; + --theme-hover: #1f2124; + + --quote-bg: hsl(234, 21%, 18%); + --quote-border: hsl(234, 21%, 23%); + + --warning-border: #ff8e00; + + --table-border-color: hsl(200, 7%, 13%); + --table-header-bg: hsl(200, 7%, 28%); + --table-alternate-bg: hsl(200, 7%, 11%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #b7b7b7; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #98a3ad; + --searchresults-li-bg: #2b2b2f; + --search-mark-bg: #355c7d; + } +} diff --git a/v1.5.24/doc.go b/v1.5.24/doc.go new file mode 100644 index 000000000..52f5cd644 --- /dev/null +++ b/v1.5.24/doc.go @@ -0,0 +1,4 @@ +// Package docs holds go code for inclusion into the prose documentation. +// +// The documentation is available online at https://quay.github.io/claircore/ +package docs diff --git a/v1.5.24/docs/mermaid.min.js b/v1.5.24/docs/mermaid.min.js new file mode 100644 index 000000000..b63115384 --- /dev/null +++ b/v1.5.24/docs/mermaid.min.js @@ -0,0 +1,1642 @@ +(function(wA,d0){typeof exports=="object"&&typeof module<"u"?module.exports=d0():typeof define=="function"&&define.amd?define(d0):(wA=typeof globalThis<"u"?globalThis:wA||self,wA.mermaid=d0())})(this,function(){"use strict";function wA(i){for(var a=[],f=1;f=tt?Ct:""+Array(tt+1-pt.length).join(Pt)+Ct},Tt={s:ft,z:function(Ct){var tt=-Ct.utcOffset(),Pt=Math.abs(tt),pt=Math.floor(Pt/60),Ft=Pt%60;return(tt<=0?"+":"-")+ft(pt,2,"0")+":"+ft(Ft,2,"0")},m:function Ct(tt,Pt){if(tt.date()1)return Ct(Rt[0])}else{var Bt=tt.name;mt[Bt]=tt,Ft=Bt}return!pt&&Ft&&(kt=Ft),Ft||!pt&&kt},st=function(Ct,tt){if(ct(Ct))return Ct.clone();var Pt=typeof tt=="object"?tt:{};return Pt.date=Ct,Pt.args=arguments,new ht(Pt)},xt=Tt;xt.l=yt,xt.i=ct,xt.w=function(Ct,tt){return st(Ct,{locale:tt.$L,utc:tt.$u,x:tt.$x,$offset:tt.$offset})};var ht=function(){function Ct(Pt){this.$L=yt(Pt.locale,null,!0),this.parse(Pt)}var tt=Ct.prototype;return tt.parse=function(Pt){this.$d=function(pt){var Ft=pt.date,X=pt.utc;if(Ft===null)return new Date(NaN);if(xt.u(Ft))return new Date;if(Ft instanceof Date)return new Date(Ft);if(typeof Ft=="string"&&!/Z$/i.test(Ft)){var Rt=Ft.match(rt);if(Rt){var Bt=Rt[2]-1||0,vt=(Rt[7]||"0").substring(0,3);return X?new Date(Date.UTC(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,vt)):new Date(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,vt)}}return new Date(Ft)}(Pt),this.$x=Pt.x||{},this.init()},tt.init=function(){var Pt=this.$d;this.$y=Pt.getFullYear(),this.$M=Pt.getMonth(),this.$D=Pt.getDate(),this.$W=Pt.getDay(),this.$H=Pt.getHours(),this.$m=Pt.getMinutes(),this.$s=Pt.getSeconds(),this.$ms=Pt.getMilliseconds()},tt.$utils=function(){return xt},tt.isValid=function(){return this.$d.toString()!==Y},tt.isSame=function(Pt,pt){var Ft=st(Pt);return this.startOf(pt)<=Ft&&Ft<=this.endOf(pt)},tt.isAfter=function(Pt,pt){return st(Pt){},debug:(...i)=>{},info:(...i)=>{},warn:(...i)=>{},error:(...i)=>{},fatal:(...i)=>{}},zft=function(i="fatal"){let a=g5.fatal;typeof i=="string"?(i=i.toLowerCase(),i in g5&&(a=g5[i])):typeof i=="number"&&(a=i),Wt.trace=()=>{},Wt.debug=()=>{},Wt.info=()=>{},Wt.warn=()=>{},Wt.error=()=>{},Wt.fatal=()=>{},a<=g5.fatal&&(Wt.fatal=console.error?console.error.bind(console,Y2("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Y2("FATAL"))),a<=g5.error&&(Wt.error=console.error?console.error.bind(console,Y2("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Y2("ERROR"))),a<=g5.warn&&(Wt.warn=console.warn?console.warn.bind(console,Y2("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Y2("WARN"))),a<=g5.info&&(Wt.info=console.info?console.info.bind(console,Y2("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Y2("INFO"))),a<=g5.debug&&(Wt.debug=console.debug?console.debug.bind(console,Y2("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Y2("DEBUG"))),a<=g5.trace&&(Wt.trace=console.debug?console.debug.bind(console,Y2("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Y2("TRACE")))},Y2=i=>`%c${up().format("ss.SSS")} : ${i} : `;var qft={};Object.defineProperty(qft,"__esModule",{value:!0});var Xx=qft.sanitizeUrl=void 0,H5e=/^([^\w]*)(javascript|data|vbscript)/im,V5e=/&#(\w+)(^\w|;)?/g,G5e=/&(newline|tab);/gi,U5e=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,W5e=/^.+(:|:)/gim,K5e=[".","/"];function Y5e(i){return K5e.indexOf(i[0])>-1}function X5e(i){return i.replace(V5e,function(a,f){return String.fromCharCode(f)})}function Q5e(i){var a=X5e(i||"").replace(G5e,"").replace(U5e,"").trim();if(!a)return"about:blank";if(Y5e(a))return a;var f=a.match(W5e);if(!f)return a;var p=f[0];return H5e.test(p)?"about:blank":a}Xx=qft.sanitizeUrl=Q5e;function fU(i,a){return i==null||a==null?NaN:ia?1:i>=a?0:NaN}function Z5e(i,a){return i==null||a==null?NaN:ai?1:a>=i?0:NaN}function Hft(i){let a,f,p;i.length!==2?(a=fU,f=(E,C)=>fU(i(E),C),p=(E,C)=>i(E)-C):(a=i===fU||i===Z5e?i:J5e,f=i,p=i);function v(E,C,A=0,P=E.length){if(A>>1;f(E[F],C)<0?A=F+1:P=F}while(A>>1;f(E[F],C)<=0?A=F+1:P=F}while(AA&&p(E[F-1],C)>-p(E[F],C)?F-1:F}return{left:v,center:b,right:m}}function J5e(){return 0}function t6e(i){return i===null?NaN:+i}const e6e=Hft(fU).right;Hft(t6e).center;const n6e=e6e;class LLt extends Map{constructor(a,f=s6e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:f}}),a!=null)for(const[p,v]of a)this.set(p,v)}get(a){return super.get(MLt(this,a))}has(a){return super.has(MLt(this,a))}set(a,f){return super.set(r6e(this,a),f)}delete(a){return super.delete(i6e(this,a))}}function MLt({_intern:i,_key:a},f){const p=a(f);return i.has(p)?i.get(p):f}function r6e({_intern:i,_key:a},f){const p=a(f);return i.has(p)?i.get(p):(i.set(p,f),f)}function i6e({_intern:i,_key:a},f){const p=a(f);return i.has(p)&&(f=i.get(p),i.delete(p)),f}function s6e(i){return i!==null&&typeof i=="object"?i.valueOf():i}var Vft=Math.sqrt(50),Gft=Math.sqrt(10),Uft=Math.sqrt(2);function a6e(i,a,f){var p,v=-1,m,b,E;if(a=+a,i=+i,f=+f,i===a&&f>0)return[i];if((p=a0){let C=Math.round(i/E),A=Math.round(a/E);for(C*Ea&&--A,b=new Array(m=A-C+1);++va&&--A,b=new Array(m=A-C+1);++v=0?(m>=Vft?10:m>=Gft?5:m>=Uft?2:1)*Math.pow(10,v):-Math.pow(10,-v)/(m>=Vft?10:m>=Gft?5:m>=Uft?2:1)}function Wft(i,a,f){var p=Math.abs(a-i)/Math.max(0,f),v=Math.pow(10,Math.floor(Math.log(p)/Math.LN10)),m=p/v;return m>=Vft?v*=10:m>=Gft?v*=5:m>=Uft&&(v*=2),a=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f=v)&&(f=v)}return f}function c6e(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f>p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f>v||f===void 0&&v>=v)&&(f=v)}return f}function u6e(i){return i}var dU=1,Kft=2,Yft=3,gU=4,ILt=1e-6;function l6e(i){return"translate("+i+",0)"}function h6e(i){return"translate(0,"+i+")"}function f6e(i){return a=>+i(a)}function d6e(i,a){return a=Math.max(0,i.bandwidth()-a*2)/2,i.round()&&(a=Math.round(a)),f=>+i(f)+a}function g6e(){return!this.__axis}function OLt(i,a){var f=[],p=null,v=null,m=6,b=6,E=3,C=typeof window<"u"&&window.devicePixelRatio>1?0:.5,A=i===dU||i===gU?-1:1,P=i===gU||i===Kft?"x":"y",F=i===dU||i===Yft?l6e:h6e;function j(R){var H=p??(a.ticks?a.ticks.apply(a,f):a.domain()),Y=v??(a.tickFormat?a.tickFormat.apply(a,f):u6e),rt=Math.max(m,0)+E,J=a.range(),it=+J[0]+C,ft=+J[J.length-1]+C,Tt=(a.bandwidth?d6e:f6e)(a.copy(),C),kt=R.selection?R.selection():R,mt=kt.selectAll(".domain").data([null]),ct=kt.selectAll(".tick").data(H,a).order(),yt=ct.exit(),st=ct.enter().append("g").attr("class","tick"),xt=ct.select("line"),ht=ct.select("text");mt=mt.merge(mt.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),ct=ct.merge(st),xt=xt.merge(st.append("line").attr("stroke","currentColor").attr(P+"2",A*m)),ht=ht.merge(st.append("text").attr("fill","currentColor").attr(P,A*rt).attr("dy",i===dU?"0em":i===Yft?"0.71em":"0.32em")),R!==kt&&(mt=mt.transition(R),ct=ct.transition(R),xt=xt.transition(R),ht=ht.transition(R),yt=yt.transition(R).attr("opacity",ILt).attr("transform",function(dt){return isFinite(dt=Tt(dt))?F(dt+C):this.getAttribute("transform")}),st.attr("opacity",ILt).attr("transform",function(dt){var Ct=this.parentNode.__axis;return F((Ct&&isFinite(Ct=Ct(dt))?Ct:Tt(dt))+C)})),yt.remove(),mt.attr("d",i===gU||i===Kft?b?"M"+A*b+","+it+"H"+C+"V"+ft+"H"+A*b:"M"+C+","+it+"V"+ft:b?"M"+it+","+A*b+"V"+C+"H"+ft+"V"+A*b:"M"+it+","+C+"H"+ft),ct.attr("opacity",1).attr("transform",function(dt){return F(Tt(dt)+C)}),xt.attr(P+"2",A*m),ht.attr(P,A*rt).text(Y),kt.filter(g6e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",i===Kft?"start":i===gU?"end":"middle"),kt.each(function(){this.__axis=Tt})}return j.scale=function(R){return arguments.length?(a=R,j):a},j.ticks=function(){return f=Array.from(arguments),j},j.tickArguments=function(R){return arguments.length?(f=R==null?[]:Array.from(R),j):f.slice()},j.tickValues=function(R){return arguments.length?(p=R==null?null:Array.from(R),j):p&&p.slice()},j.tickFormat=function(R){return arguments.length?(v=R,j):v},j.tickSize=function(R){return arguments.length?(m=b=+R,j):m},j.tickSizeInner=function(R){return arguments.length?(m=+R,j):m},j.tickSizeOuter=function(R){return arguments.length?(b=+R,j):b},j.tickPadding=function(R){return arguments.length?(E=+R,j):E},j.offset=function(R){return arguments.length?(C=+R,j):C},j}function p6e(i){return OLt(dU,i)}function b6e(i){return OLt(Yft,i)}var v6e={value:()=>{}};function NLt(){for(var i=0,a=arguments.length,f={},p;i=0&&(p=f.slice(v+1),f=f.slice(0,v)),f&&!a.hasOwnProperty(f))throw new Error("unknown type: "+f);return{type:f,name:p}})}pU.prototype=NLt.prototype={constructor:pU,on:function(i,a){var f=this._,p=w6e(i+"",f),v,m=-1,b=p.length;if(arguments.length<2){for(;++m0)for(var f=new Array(v),p=0,v,m;p=0&&(a=i.slice(0,f))!=="xmlns"&&(i=i.slice(f+1)),FLt.hasOwnProperty(a)?{space:FLt[a],local:i}:i}function y6e(i){return function(){var a=this.ownerDocument,f=this.namespaceURI;return f===Xft&&a.documentElement.namespaceURI===Xft?a.createElement(i):a.createElementNS(f,i)}}function x6e(i){return function(){return this.ownerDocument.createElementNS(i.space,i.local)}}function BLt(i){var a=bU(i);return(a.local?x6e:y6e)(a)}function k6e(){}function Qft(i){return i==null?k6e:function(){return this.querySelector(i)}}function E6e(i){typeof i!="function"&&(i=Qft(i));for(var a=this._groups,f=a.length,p=new Array(f),v=0;v=ft&&(ft=it+1);!(kt=rt[ft])&&++ft=0;)(b=p[v])&&(m&&b.compareDocumentPosition(m)^4&&m.parentNode.insertBefore(b,m),m=b);return this}function W6e(i){i||(i=K6e);function a(F,j){return F&&j?i(F.__data__,j.__data__):!F-!j}for(var f=this._groups,p=f.length,v=new Array(p),m=0;ma?1:i>=a?0:NaN}function Y6e(){var i=arguments[0];return arguments[0]=this,i.apply(null,arguments),this}function X6e(){return Array.from(this)}function Q6e(){for(var i=this._groups,a=0,f=i.length;a1?this.each((a==null?cxe:typeof a=="function"?lxe:uxe)(i,a,f??"")):mA(this.node(),i)}function mA(i,a){return i.style.getPropertyValue(a)||HLt(i).getComputedStyle(i,null).getPropertyValue(a)}function fxe(i){return function(){delete this[i]}}function dxe(i,a){return function(){this[i]=a}}function gxe(i,a){return function(){var f=a.apply(this,arguments);f==null?delete this[i]:this[i]=f}}function pxe(i,a){return arguments.length>1?this.each((a==null?fxe:typeof a=="function"?gxe:dxe)(i,a)):this.node()[i]}function VLt(i){return i.trim().split(/^|\s+/)}function Zft(i){return i.classList||new GLt(i)}function GLt(i){this._node=i,this._names=VLt(i.getAttribute("class")||"")}GLt.prototype={add:function(i){var a=this._names.indexOf(i);a<0&&(this._names.push(i),this._node.setAttribute("class",this._names.join(" ")))},remove:function(i){var a=this._names.indexOf(i);a>=0&&(this._names.splice(a,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(i){return this._names.indexOf(i)>=0}};function ULt(i,a){for(var f=Zft(i),p=-1,v=a.length;++p=0&&(f=a.slice(p+1),a=a.slice(0,p)),{type:a,name:f}})}function Hxe(i){return function(){var a=this.__on;if(a){for(var f=0,p=-1,v=a.length,m;f>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):f===8?yU(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):f===4?yU(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=Zxe.exec(i))?new g0(a[1],a[2],a[3],1):(a=Jxe.exec(i))?new g0(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=tke.exec(i))?yU(a[1],a[2],a[3],a[4]):(a=eke.exec(i))?yU(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=nke.exec(i))?rMt(a[1],a[2]/100,a[3]/100,1):(a=rke.exec(i))?rMt(a[1],a[2]/100,a[3]/100,a[4]):XLt.hasOwnProperty(i)?JLt(XLt[i]):i==="transparent"?new g0(NaN,NaN,NaN,0):null}function JLt(i){return new g0(i>>16&255,i>>8&255,i&255,1)}function yU(i,a,f,p){return p<=0&&(i=a=f=NaN),new g0(i,a,f,p)}function tMt(i){return i instanceof FE||(i=BE(i)),i?(i=i.rgb(),new g0(i.r,i.g,i.b,i.opacity)):new g0}function t1t(i,a,f,p){return arguments.length===1?tMt(i):new g0(i,a,f,p??1)}function g0(i,a,f,p){this.r=+i,this.g=+a,this.b=+f,this.opacity=+p}xN(g0,t1t,wU(FE,{brighter(i){return i=i==null?mU:Math.pow(mU,i),new g0(this.r*i,this.g*i,this.b*i,this.opacity)},darker(i){return i=i==null?kN:Math.pow(kN,i),new g0(this.r*i,this.g*i,this.b*i,this.opacity)},rgb(){return this},clamp(){return new g0(RE(this.r),RE(this.g),RE(this.b),xU(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:eMt,formatHex:eMt,formatHex8:ake,formatRgb:nMt,toString:nMt}));function eMt(){return`#${jE(this.r)}${jE(this.g)}${jE(this.b)}`}function ake(){return`#${jE(this.r)}${jE(this.g)}${jE(this.b)}${jE((isNaN(this.opacity)?1:this.opacity)*255)}`}function nMt(){const i=xU(this.opacity);return`${i===1?"rgb(":"rgba("}${RE(this.r)}, ${RE(this.g)}, ${RE(this.b)}${i===1?")":`, ${i})`}`}function xU(i){return isNaN(i)?1:Math.max(0,Math.min(1,i))}function RE(i){return Math.max(0,Math.min(255,Math.round(i)||0))}function jE(i){return i=RE(i),(i<16?"0":"")+i.toString(16)}function rMt(i,a,f,p){return p<=0?i=a=f=NaN:f<=0||f>=1?i=a=NaN:a<=0&&(i=NaN),new Ww(i,a,f,p)}function iMt(i){if(i instanceof Ww)return new Ww(i.h,i.s,i.l,i.opacity);if(i instanceof FE||(i=BE(i)),!i)return new Ww;if(i instanceof Ww)return i;i=i.rgb();var a=i.r/255,f=i.g/255,p=i.b/255,v=Math.min(a,f,p),m=Math.max(a,f,p),b=NaN,E=m-v,C=(m+v)/2;return E?(a===m?b=(f-p)/E+(f0&&C<1?0:b,new Ww(b,E,C,i.opacity)}function oke(i,a,f,p){return arguments.length===1?iMt(i):new Ww(i,a,f,p??1)}function Ww(i,a,f,p){this.h=+i,this.s=+a,this.l=+f,this.opacity=+p}xN(Ww,oke,wU(FE,{brighter(i){return i=i==null?mU:Math.pow(mU,i),new Ww(this.h,this.s,this.l*i,this.opacity)},darker(i){return i=i==null?kN:Math.pow(kN,i),new Ww(this.h,this.s,this.l*i,this.opacity)},rgb(){var i=this.h%360+(this.h<0)*360,a=isNaN(i)||isNaN(this.s)?0:this.s,f=this.l,p=f+(f<.5?f:1-f)*a,v=2*f-p;return new g0(e1t(i>=240?i-240:i+120,v,p),e1t(i,v,p),e1t(i<120?i+240:i-120,v,p),this.opacity)},clamp(){return new Ww(sMt(this.h),kU(this.s),kU(this.l),xU(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const i=xU(this.opacity);return`${i===1?"hsl(":"hsla("}${sMt(this.h)}, ${kU(this.s)*100}%, ${kU(this.l)*100}%${i===1?")":`, ${i})`}`}}));function sMt(i){return i=(i||0)%360,i<0?i+360:i}function kU(i){return Math.max(0,Math.min(1,i||0))}function e1t(i,a,f){return(i<60?a+(f-a)*i/60:i<180?f:i<240?a+(f-a)*(240-i)/60:a)*255}const cke=Math.PI/180,uke=180/Math.PI,EU=18,aMt=.96422,oMt=1,cMt=.82521,uMt=4/29,xA=6/29,lMt=3*xA*xA,lke=xA*xA*xA;function hMt(i){if(i instanceof a3)return new a3(i.l,i.a,i.b,i.opacity);if(i instanceof p5)return fMt(i);i instanceof g0||(i=tMt(i));var a=s1t(i.r),f=s1t(i.g),p=s1t(i.b),v=n1t((.2225045*a+.7168786*f+.0606169*p)/oMt),m,b;return a===f&&f===p?m=b=v:(m=n1t((.4360747*a+.3850649*f+.1430804*p)/aMt),b=n1t((.0139322*a+.0971045*f+.7141733*p)/cMt)),new a3(116*v-16,500*(m-v),200*(v-b),i.opacity)}function hke(i,a,f,p){return arguments.length===1?hMt(i):new a3(i,a,f,p??1)}function a3(i,a,f,p){this.l=+i,this.a=+a,this.b=+f,this.opacity=+p}xN(a3,hke,wU(FE,{brighter(i){return new a3(this.l+EU*(i??1),this.a,this.b,this.opacity)},darker(i){return new a3(this.l-EU*(i??1),this.a,this.b,this.opacity)},rgb(){var i=(this.l+16)/116,a=isNaN(this.a)?i:i+this.a/500,f=isNaN(this.b)?i:i-this.b/200;return a=aMt*r1t(a),i=oMt*r1t(i),f=cMt*r1t(f),new g0(i1t(3.1338561*a-1.6168667*i-.4906146*f),i1t(-.9787684*a+1.9161415*i+.033454*f),i1t(.0719453*a-.2289914*i+1.4052427*f),this.opacity)}}));function n1t(i){return i>lke?Math.pow(i,1/3):i/lMt+uMt}function r1t(i){return i>xA?i*i*i:lMt*(i-uMt)}function i1t(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function s1t(i){return(i/=255)<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function fke(i){if(i instanceof p5)return new p5(i.h,i.c,i.l,i.opacity);if(i instanceof a3||(i=hMt(i)),i.a===0&&i.b===0)return new p5(NaN,0()=>i;function dMt(i,a){return function(f){return i+f*a}}function dke(i,a,f){return i=Math.pow(i,f),a=Math.pow(a,f)-i,f=1/f,function(p){return Math.pow(i+p*a,f)}}function gke(i,a){var f=a-i;return f?dMt(i,f>180||f<-180?f-360*Math.round(f/360):f):TU(isNaN(i)?a:i)}function pke(i){return(i=+i)==1?TN:function(a,f){return f-a?dke(a,f,i):TU(isNaN(a)?f:a)}}function TN(i,a){var f=a-i;return f?dMt(i,f):TU(isNaN(i)?a:i)}const _U=function i(a){var f=pke(a);function p(v,m){var b=f((v=t1t(v)).r,(m=t1t(m)).r),E=f(v.g,m.g),C=f(v.b,m.b),A=TN(v.opacity,m.opacity);return function(P){return v.r=b(P),v.g=E(P),v.b=C(P),v.opacity=A(P),v+""}}return p.gamma=i,p}(1);function bke(i,a){a||(a=[]);var f=i?Math.min(a.length,i.length):0,p=a.slice(),v;return function(m){for(v=0;vf&&(m=a.slice(f,m),E[b]?E[b]+=m:E[++b]=m),(p=p[0])===(v=v[0])?E[b]?E[b]+=v:E[++b]=v:(E[++b]=null,C.push({i:b,x:Kw(p,v)})),f=c1t.lastIndex;return f180?P+=360:P-A>180&&(A+=360),j.push({i:F.push(v(F)+"rotate(",null,p)-2,x:Kw(A,P)})):P&&F.push(v(F)+"rotate("+P+p)}function E(A,P,F,j){A!==P?j.push({i:F.push(v(F)+"skewX(",null,p)-2,x:Kw(A,P)}):P&&F.push(v(F)+"skewX("+P+p)}function C(A,P,F,j,R,H){if(A!==F||P!==j){var Y=R.push(v(R)+"scale(",null,",",null,")");H.push({i:Y-4,x:Kw(A,F)},{i:Y-2,x:Kw(P,j)})}else(F!==1||j!==1)&&R.push(v(R)+"scale("+F+","+j+")")}return function(A,P){var F=[],j=[];return A=i(A),P=i(P),m(A.translateX,A.translateY,P.translateX,P.translateY,F,j),b(A.rotate,P.rotate,F,j),E(A.skewX,P.skewX,F,j),C(A.scaleX,A.scaleY,P.scaleX,P.scaleY,F,j),A=P=null,function(R){for(var H=-1,Y=j.length,rt;++H=0&&i._call.call(void 0,a),i=i._next;--kA}function xMt(){$E=(AU=AN.now())+LU,kA=_N=0;try{Dke()}finally{kA=0,Oke(),$E=0}}function Ike(){var i=AN.now(),a=i-AU;a>wMt&&(LU-=a,AU=i)}function Oke(){for(var i,a=SU,f,p=1/0;a;)a._call?(p>a._time&&(p=a._time),i=a,a=a._next):(f=a._next,a._next=null,a=i?i._next=f:SU=f);SN=i,f1t(p)}function f1t(i){if(!kA){_N&&(_N=clearTimeout(_N));var a=i-$E;a>24?(i<1/0&&(_N=setTimeout(xMt,i-AN.now()-LU)),CN&&(CN=clearInterval(CN))):(CN||(AU=AN.now(),CN=setInterval(Ike,wMt)),kA=1,mMt(xMt))}}function kMt(i,a,f){var p=new MU;return a=a==null?0:+a,p.restart(v=>{p.stop(),i(v+a)},a,f),p}var Nke=NLt("start","end","cancel","interrupt"),Pke=[],EMt=0,TMt=1,d1t=2,DU=3,_Mt=4,g1t=5,IU=6;function OU(i,a,f,p,v,m){var b=i.__transition;if(!b)i.__transition={};else if(f in b)return;Fke(i,f,{name:a,index:p,group:v,on:Nke,tween:Pke,time:m.time,delay:m.delay,duration:m.duration,ease:m.ease,timer:null,state:EMt})}function p1t(i,a){var f=Yw(i,a);if(f.state>EMt)throw new Error("too late; already scheduled");return f}function o3(i,a){var f=Yw(i,a);if(f.state>DU)throw new Error("too late; already running");return f}function Yw(i,a){var f=i.__transition;if(!f||!(f=f[a]))throw new Error("transition not found");return f}function Fke(i,a,f){var p=i.__transition,v;p[a]=f,f.timer=yMt(m,0,f.time);function m(A){f.state=TMt,f.timer.restart(b,f.delay,f.time),f.delay<=A&&b(A-f.delay)}function b(A){var P,F,j,R;if(f.state!==TMt)return C();for(P in p)if(R=p[P],R.name===f.name){if(R.state===DU)return kMt(b);R.state===_Mt?(R.state=IU,R.timer.stop(),R.on.call("interrupt",i,i.__data__,R.index,R.group),delete p[P]):+Pd1t&&p.state=0&&(a=a.slice(0,f)),!a||a==="start"})}function d8e(i,a,f){var p,v,m=f8e(a)?p1t:o3;return function(){var b=m(this,i),E=b.on;E!==p&&(v=(p=E).copy()).on(a,f),b.on=v}}function g8e(i,a){var f=this._id;return arguments.length<2?Yw(this.node(),f).on.on(i):this.each(d8e(f,i,a))}function p8e(i){return function(){var a=this.parentNode;for(var f in this.__transition)if(+f!==i)return;a&&a.removeChild(this)}}function b8e(){return this.on("end.remove",p8e(this._id))}function v8e(i){var a=this._name,f=this._id;typeof i!="function"&&(i=Qft(i));for(var p=this._groups,v=p.length,m=new Array(v),b=0;bzE)if(!(Math.abs(P*E-C*A)>zE)||!v)this._+="L"+(this._x1=i)+","+(this._y1=a);else{var j=f-m,R=p-b,H=E*E+C*C,Y=j*j+R*R,rt=Math.sqrt(H),J=Math.sqrt(F),it=v*Math.tan((v1t-Math.acos((H+F-Y)/(2*rt*J)))/2),ft=it/J,Tt=it/rt;Math.abs(ft-1)>zE&&(this._+="L"+(i+ft*A)+","+(a+ft*P)),this._+="A"+v+","+v+",0,0,"+ +(P*j>A*R)+","+(this._x1=i+Tt*E)+","+(this._y1=a+Tt*C)}},arc:function(i,a,f,p,v,m){i=+i,a=+a,f=+f,m=!!m;var b=f*Math.cos(p),E=f*Math.sin(p),C=i+b,A=a+E,P=1^m,F=m?p-v:v-p;if(f<0)throw new Error("negative radius: "+f);this._x1===null?this._+="M"+C+","+A:(Math.abs(this._x1-C)>zE||Math.abs(this._y1-A)>zE)&&(this._+="L"+C+","+A),f&&(F<0&&(F=F%w1t+w1t),F>q8e?this._+="A"+f+","+f+",0,1,"+P+","+(i-b)+","+(a-E)+"A"+f+","+f+",0,1,"+P+","+(this._x1=C)+","+(this._y1=A):F>zE&&(this._+="A"+f+","+f+",0,"+ +(F>=v1t)+","+P+","+(this._x1=i+f*Math.cos(v))+","+(this._y1=a+f*Math.sin(v))))},rect:function(i,a,f,p){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)+"h"+ +f+"v"+ +p+"h"+-f+"Z"},toString:function(){return this._}};function H8e(i){if(!i.ok)throw new Error(i.status+" "+i.statusText);return i.text()}function V8e(i,a){return fetch(i,a).then(H8e)}function G8e(i){return(a,f)=>V8e(a,f).then(p=>new DOMParser().parseFromString(p,i))}var U8e=G8e("image/svg+xml");function W8e(i){return Math.abs(i=Math.round(i))>=1e21?i.toLocaleString("en").replace(/,/g,""):i.toString(10)}function NU(i,a){if((f=(i=a?i.toExponential(a-1):i.toExponential()).indexOf("e"))<0)return null;var f,p=i.slice(0,f);return[p.length>1?p[0]+p.slice(2):p,+i.slice(f+1)]}function EA(i){return i=NU(Math.abs(i)),i?i[1]:NaN}function K8e(i,a){return function(f,p){for(var v=f.length,m=[],b=0,E=i[0],C=0;v>0&&E>0&&(C+E+1>p&&(E=Math.max(1,p-C)),m.push(f.substring(v-=E,v+E)),!((C+=E+1)>p));)E=i[b=(b+1)%i.length];return m.reverse().join(a)}}function Y8e(i){return function(a){return a.replace(/[0-9]/g,function(f){return i[+f]})}}var X8e=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function PU(i){if(!(a=X8e.exec(i)))throw new Error("invalid format: "+i);var a;return new x1t({fill:a[1],align:a[2],sign:a[3],symbol:a[4],zero:a[5],width:a[6],comma:a[7],precision:a[8]&&a[8].slice(1),trim:a[9],type:a[10]})}PU.prototype=x1t.prototype;function x1t(i){this.fill=i.fill===void 0?" ":i.fill+"",this.align=i.align===void 0?">":i.align+"",this.sign=i.sign===void 0?"-":i.sign+"",this.symbol=i.symbol===void 0?"":i.symbol+"",this.zero=!!i.zero,this.width=i.width===void 0?void 0:+i.width,this.comma=!!i.comma,this.precision=i.precision===void 0?void 0:+i.precision,this.trim=!!i.trim,this.type=i.type===void 0?"":i.type+""}x1t.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Q8e(i){t:for(var a=i.length,f=1,p=-1,v;f0&&(p=0);break}return p>0?i.slice(0,p)+i.slice(v+1):i}var LMt;function Z8e(i,a){var f=NU(i,a);if(!f)return i+"";var p=f[0],v=f[1],m=v-(LMt=Math.max(-8,Math.min(8,Math.floor(v/3)))*3)+1,b=p.length;return m===b?p:m>b?p+new Array(m-b+1).join("0"):m>0?p.slice(0,m)+"."+p.slice(m):"0."+new Array(1-m).join("0")+NU(i,Math.max(0,a+m-1))[0]}function MMt(i,a){var f=NU(i,a);if(!f)return i+"";var p=f[0],v=f[1];return v<0?"0."+new Array(-v).join("0")+p:p.length>v+1?p.slice(0,v+1)+"."+p.slice(v+1):p+new Array(v-p.length+2).join("0")}const DMt={"%":(i,a)=>(i*100).toFixed(a),b:i=>Math.round(i).toString(2),c:i=>i+"",d:W8e,e:(i,a)=>i.toExponential(a),f:(i,a)=>i.toFixed(a),g:(i,a)=>i.toPrecision(a),o:i=>Math.round(i).toString(8),p:(i,a)=>MMt(i*100,a),r:MMt,s:Z8e,X:i=>Math.round(i).toString(16).toUpperCase(),x:i=>Math.round(i).toString(16)};function IMt(i){return i}var OMt=Array.prototype.map,NMt=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function J8e(i){var a=i.grouping===void 0||i.thousands===void 0?IMt:K8e(OMt.call(i.grouping,Number),i.thousands+""),f=i.currency===void 0?"":i.currency[0]+"",p=i.currency===void 0?"":i.currency[1]+"",v=i.decimal===void 0?".":i.decimal+"",m=i.numerals===void 0?IMt:Y8e(OMt.call(i.numerals,String)),b=i.percent===void 0?"%":i.percent+"",E=i.minus===void 0?"−":i.minus+"",C=i.nan===void 0?"NaN":i.nan+"";function A(F){F=PU(F);var j=F.fill,R=F.align,H=F.sign,Y=F.symbol,rt=F.zero,J=F.width,it=F.comma,ft=F.precision,Tt=F.trim,kt=F.type;kt==="n"?(it=!0,kt="g"):DMt[kt]||(ft===void 0&&(ft=12),Tt=!0,kt="g"),(rt||j==="0"&&R==="=")&&(rt=!0,j="0",R="=");var mt=Y==="$"?f:Y==="#"&&/[boxX]/.test(kt)?"0"+kt.toLowerCase():"",ct=Y==="$"?p:/[%p]/.test(kt)?b:"",yt=DMt[kt],st=/[defgprs%]/.test(kt);ft=ft===void 0?6:/[gprs]/.test(kt)?Math.max(1,Math.min(21,ft)):Math.max(0,Math.min(20,ft));function xt(ht){var dt=mt,Ct=ct,tt,Pt,pt;if(kt==="c")Ct=yt(ht)+Ct,ht="";else{ht=+ht;var Ft=ht<0||1/ht<0;if(ht=isNaN(ht)?C:yt(Math.abs(ht),ft),Tt&&(ht=Q8e(ht)),Ft&&+ht==0&&H!=="+"&&(Ft=!1),dt=(Ft?H==="("?H:E:H==="-"||H==="("?"":H)+dt,Ct=(kt==="s"?NMt[8+LMt/3]:"")+Ct+(Ft&&H==="("?")":""),st){for(tt=-1,Pt=ht.length;++ttpt||pt>57){Ct=(pt===46?v+ht.slice(tt+1):ht.slice(tt))+Ct,ht=ht.slice(0,tt);break}}}it&&!rt&&(ht=a(ht,1/0));var X=dt.length+ht.length+Ct.length,Rt=X>1)+dt+ht+Ct+Rt.slice(X);break;default:ht=Rt+dt+ht+Ct;break}return m(ht)}return xt.toString=function(){return F+""},xt}function P(F,j){var R=A((F=PU(F),F.type="f",F)),H=Math.max(-8,Math.min(8,Math.floor(EA(j)/3)))*3,Y=Math.pow(10,-H),rt=NMt[8+H/3];return function(J){return R(Y*J)+rt}}return{format:A,formatPrefix:P}}var FU,PMt,FMt;t7e({thousands:",",grouping:[3],currency:["$",""]});function t7e(i){return FU=J8e(i),PMt=FU.format,FMt=FU.formatPrefix,FU}function e7e(i){return Math.max(0,-EA(Math.abs(i)))}function n7e(i,a){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(EA(a)/3)))*3-EA(Math.abs(i)))}function r7e(i,a){return i=Math.abs(i),a=Math.abs(a)-i,Math.max(0,EA(a)-EA(i))+1}function k1t(i,a){switch(arguments.length){case 0:break;case 1:this.range(i);break;default:this.range(a).domain(i);break}return this}const BMt=Symbol("implicit");function E1t(){var i=new LLt,a=[],f=[],p=BMt;function v(m){let b=i.get(m);if(b===void 0){if(p!==BMt)return p;i.set(m,b=a.push(m)-1)}return f[b%f.length]}return v.domain=function(m){if(!arguments.length)return a.slice();a=[],i=new LLt;for(const b of m)i.has(b)||i.set(b,a.push(b)-1);return v},v.range=function(m){return arguments.length?(f=Array.from(m),v):f.slice()},v.unknown=function(m){return arguments.length?(p=m,v):p},v.copy=function(){return E1t(a,f).unknown(p)},k1t.apply(v,arguments),v}function i7e(i){return function(){return i}}function s7e(i){return+i}var RMt=[0,1];function TA(i){return i}function T1t(i,a){return(a-=i=+i)?function(f){return(f-i)/a}:i7e(isNaN(a)?NaN:.5)}function a7e(i,a){var f;return i>a&&(f=i,i=a,a=f),function(p){return Math.max(i,Math.min(a,p))}}function o7e(i,a,f){var p=i[0],v=i[1],m=a[0],b=a[1];return v2?c7e:o7e,C=A=null,F}function F(j){return j==null||isNaN(j=+j)?m:(C||(C=E(i.map(p),a,f)))(p(b(j)))}return F.invert=function(j){return b(v((A||(A=E(a,i.map(p),Kw)))(j)))},F.domain=function(j){return arguments.length?(i=Array.from(j,s7e),P()):i.slice()},F.range=function(j){return arguments.length?(a=Array.from(j),P()):a.slice()},F.rangeRound=function(j){return a=Array.from(j),f=Eke,P()},F.clamp=function(j){return arguments.length?(b=j?!0:TA,P()):b!==TA},F.interpolate=function(j){return arguments.length?(f=j,P()):f},F.unknown=function(j){return arguments.length?(m=j,F):m},function(j,R){return p=j,v=R,P()}}function $Mt(){return u7e()(TA,TA)}function l7e(i,a,f,p){var v=Wft(i,a,f),m;switch(p=PU(p??",f"),p.type){case"s":{var b=Math.max(Math.abs(i),Math.abs(a));return p.precision==null&&!isNaN(m=n7e(v,b))&&(p.precision=m),FMt(p,b)}case"":case"e":case"g":case"p":case"r":{p.precision==null&&!isNaN(m=r7e(v,Math.max(Math.abs(i),Math.abs(a))))&&(p.precision=m-(p.type==="e"));break}case"f":case"%":{p.precision==null&&!isNaN(m=e7e(v))&&(p.precision=m-(p.type==="%")*2);break}}return PMt(p)}function h7e(i){var a=i.domain;return i.ticks=function(f){var p=a();return a6e(p[0],p[p.length-1],f??10)},i.tickFormat=function(f,p){var v=a();return l7e(v[0],v[v.length-1],f??10,p)},i.nice=function(f){f==null&&(f=10);var p=a(),v=0,m=p.length-1,b=p[v],E=p[m],C,A,P=10;for(E0;){if(A=DLt(b,E,f),A===C)return p[v]=b,p[m]=E,a(p);if(A>0)b=Math.floor(b/A)*A,E=Math.ceil(E/A)*A;else if(A<0)b=Math.ceil(b*A)/A,E=Math.floor(E*A)/A;else break;C=A}return i},i}function BU(){var i=$Mt();return i.copy=function(){return jMt(i,BU())},k1t.apply(i,arguments),h7e(i)}function f7e(i,a){i=i.slice();var f=0,p=i.length-1,v=i[f],m=i[p],b;return m0))return C;do C.push(A=new Date(+m)),a(m,E),i(m);while(A=b)for(;i(b),!m(b);)b.setTime(b-1)},function(b,E){if(b>=b)if(E<0)for(;++E<=0;)for(;a(b,-1),!m(b););else for(;--E>=0;)for(;a(b,1),!m(b););})},f&&(v.count=function(m,b){return _1t.setTime(+m),C1t.setTime(+b),i(_1t),i(C1t),Math.floor(f(_1t,C1t))},v.every=function(m){return m=Math.floor(m),!isFinite(m)||!(m>0)?null:m>1?v.filter(p?function(b){return p(b)%m===0}:function(b){return v.count(0,b)%m===0}):v}),v}var RU=rg(function(){},function(i,a){i.setTime(+i+a)},function(i,a){return a-i});RU.every=function(i){return i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?rg(function(a){a.setTime(Math.floor(a/i)*i)},function(a,f){a.setTime(+a+f*i)},function(a,f){return(f-a)/i}):RU};const d7e=RU;RU.range;const w5=1e3,c3=w5*60,qE=c3*60,HE=qE*24,S1t=HE*7,zMt=HE*30,A1t=HE*365;var qMt=rg(function(i){i.setTime(i-i.getMilliseconds())},function(i,a){i.setTime(+i+a*w5)},function(i,a){return(a-i)/w5},function(i){return i.getUTCSeconds()});const LN=qMt;qMt.range;var HMt=rg(function(i){i.setTime(i-i.getMilliseconds()-i.getSeconds()*w5)},function(i,a){i.setTime(+i+a*c3)},function(i,a){return(a-i)/c3},function(i){return i.getMinutes()});const jU=HMt;HMt.range;var VMt=rg(function(i){i.setTime(i-i.getMilliseconds()-i.getSeconds()*w5-i.getMinutes()*c3)},function(i,a){i.setTime(+i+a*qE)},function(i,a){return(a-i)/qE},function(i){return i.getHours()});const $U=VMt;VMt.range;var GMt=rg(i=>i.setHours(0,0,0,0),(i,a)=>i.setDate(i.getDate()+a),(i,a)=>(a-i-(a.getTimezoneOffset()-i.getTimezoneOffset())*c3)/HE,i=>i.getDate()-1);const _A=GMt;GMt.range;function VE(i){return rg(function(a){a.setDate(a.getDate()-(a.getDay()+7-i)%7),a.setHours(0,0,0,0)},function(a,f){a.setDate(a.getDate()+f*7)},function(a,f){return(f-a-(f.getTimezoneOffset()-a.getTimezoneOffset())*c3)/S1t})}var MN=VE(0),DN=VE(1),UMt=VE(2),WMt=VE(3),GE=VE(4),KMt=VE(5),YMt=VE(6);MN.range,DN.range,UMt.range,WMt.range,GE.range,KMt.range,YMt.range;var XMt=rg(function(i){i.setDate(1),i.setHours(0,0,0,0)},function(i,a){i.setMonth(i.getMonth()+a)},function(i,a){return a.getMonth()-i.getMonth()+(a.getFullYear()-i.getFullYear())*12},function(i){return i.getMonth()});const zU=XMt;XMt.range;var L1t=rg(function(i){i.setMonth(0,1),i.setHours(0,0,0,0)},function(i,a){i.setFullYear(i.getFullYear()+a)},function(i,a){return a.getFullYear()-i.getFullYear()},function(i){return i.getFullYear()});L1t.every=function(i){return!isFinite(i=Math.floor(i))||!(i>0)?null:rg(function(a){a.setFullYear(Math.floor(a.getFullYear()/i)*i),a.setMonth(0,1),a.setHours(0,0,0,0)},function(a,f){a.setFullYear(a.getFullYear()+f*i)})};const UE=L1t;L1t.range;var QMt=rg(function(i){i.setUTCHours(0,0,0,0)},function(i,a){i.setUTCDate(i.getUTCDate()+a)},function(i,a){return(a-i)/HE},function(i){return i.getUTCDate()-1});const ZMt=QMt;QMt.range;function WE(i){return rg(function(a){a.setUTCDate(a.getUTCDate()-(a.getUTCDay()+7-i)%7),a.setUTCHours(0,0,0,0)},function(a,f){a.setUTCDate(a.getUTCDate()+f*7)},function(a,f){return(f-a)/S1t})}var JMt=WE(0),qU=WE(1),g7e=WE(2),p7e=WE(3),CA=WE(4),b7e=WE(5),v7e=WE(6);JMt.range,qU.range,g7e.range,p7e.range,CA.range,b7e.range,v7e.range;var M1t=rg(function(i){i.setUTCMonth(0,1),i.setUTCHours(0,0,0,0)},function(i,a){i.setUTCFullYear(i.getUTCFullYear()+a)},function(i,a){return a.getUTCFullYear()-i.getUTCFullYear()},function(i){return i.getUTCFullYear()});M1t.every=function(i){return!isFinite(i=Math.floor(i))||!(i>0)?null:rg(function(a){a.setUTCFullYear(Math.floor(a.getUTCFullYear()/i)*i),a.setUTCMonth(0,1),a.setUTCHours(0,0,0,0)},function(a,f){a.setUTCFullYear(a.getUTCFullYear()+f*i)})};const IN=M1t;M1t.range;function w7e(i,a,f,p,v,m){const b=[[LN,1,w5],[LN,5,5*w5],[LN,15,15*w5],[LN,30,30*w5],[m,1,c3],[m,5,5*c3],[m,15,15*c3],[m,30,30*c3],[v,1,qE],[v,3,3*qE],[v,6,6*qE],[v,12,12*qE],[p,1,HE],[p,2,2*HE],[f,1,S1t],[a,1,zMt],[a,3,3*zMt],[i,1,A1t]];function E(A,P,F){const j=Prt).right(b,j);if(R===b.length)return i.every(Wft(A/A1t,P/A1t,F));if(R===0)return d7e.every(Math.max(Wft(A,P,F),1));const[H,Y]=b[j/b[R-1][2]53)return null;"w"in Ee||(Ee.w=1),"Z"in Ee?(Ce=I1t(ON(Ee.y,0,1)),$e=Ce.getUTCDay(),Ce=$e>4||$e===0?qU.ceil(Ce):qU(Ce),Ce=ZMt.offset(Ce,(Ee.V-1)*7),Ee.y=Ce.getUTCFullYear(),Ee.m=Ce.getUTCMonth(),Ee.d=Ce.getUTCDate()+(Ee.w+6)%7):(Ce=D1t(ON(Ee.y,0,1)),$e=Ce.getDay(),Ce=$e>4||$e===0?DN.ceil(Ce):DN(Ce),Ce=_A.offset(Ce,(Ee.V-1)*7),Ee.y=Ce.getFullYear(),Ee.m=Ce.getMonth(),Ee.d=Ce.getDate()+(Ee.w+6)%7)}else("W"in Ee||"U"in Ee)&&("w"in Ee||(Ee.w="u"in Ee?Ee.u%7:"W"in Ee?1:0),$e="Z"in Ee?I1t(ON(Ee.y,0,1)).getUTCDay():D1t(ON(Ee.y,0,1)).getDay(),Ee.m=0,Ee.d="W"in Ee?(Ee.w+6)%7+Ee.W*7-($e+5)%7:Ee.w+Ee.U*7-($e+6)%7);return"Z"in Ee?(Ee.H+=Ee.Z/100|0,Ee.M+=Ee.Z%100,I1t(Ee)):D1t(Ee)}}function yt(ne,ke,Ve,Ee){for(var He=0,Ce=ke.length,$e=Ve.length,ye,fn;He=$e)return-1;if(ye=ke.charCodeAt(He++),ye===37){if(ye=ke.charAt(He++),fn=kt[ye in tDt?ke.charAt(He++):ye],!fn||(Ee=fn(ne,Ve,Ee))<0)return-1}else if(ye!=Ve.charCodeAt(Ee++))return-1}return Ee}function st(ne,ke,Ve){var Ee=A.exec(ke.slice(Ve));return Ee?(ne.p=P.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function xt(ne,ke,Ve){var Ee=R.exec(ke.slice(Ve));return Ee?(ne.w=H.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function ht(ne,ke,Ve){var Ee=F.exec(ke.slice(Ve));return Ee?(ne.w=j.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function dt(ne,ke,Ve){var Ee=J.exec(ke.slice(Ve));return Ee?(ne.m=it.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function Ct(ne,ke,Ve){var Ee=Y.exec(ke.slice(Ve));return Ee?(ne.m=rt.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function tt(ne,ke,Ve){return yt(ne,a,ke,Ve)}function Pt(ne,ke,Ve){return yt(ne,f,ke,Ve)}function pt(ne,ke,Ve){return yt(ne,p,ke,Ve)}function Ft(ne){return b[ne.getDay()]}function X(ne){return m[ne.getDay()]}function Rt(ne){return C[ne.getMonth()]}function Bt(ne){return E[ne.getMonth()]}function vt(ne){return v[+(ne.getHours()>=12)]}function Ot(ne){return 1+~~(ne.getMonth()/3)}function Vt(ne){return b[ne.getUTCDay()]}function qe(ne){return m[ne.getUTCDay()]}function _n(ne){return C[ne.getUTCMonth()]}function Te(ne){return E[ne.getUTCMonth()]}function Wn(ne){return v[+(ne.getUTCHours()>=12)]}function Ae(ne){return 1+~~(ne.getUTCMonth()/3)}return{format:function(ne){var ke=mt(ne+="",ft);return ke.toString=function(){return ne},ke},parse:function(ne){var ke=ct(ne+="",!1);return ke.toString=function(){return ne},ke},utcFormat:function(ne){var ke=mt(ne+="",Tt);return ke.toString=function(){return ne},ke},utcParse:function(ne){var ke=ct(ne+="",!0);return ke.toString=function(){return ne},ke}}}var tDt={"-":"",_:" ",0:"0"},Q1=/^\s*\d+/,k7e=/^%/,E7e=/[\\^$*+?|[\]().{}]/g;function Fc(i,a,f){var p=i<0?"-":"",v=(p?-i:i)+"",m=v.length;return p+(m[a.toLowerCase(),f]))}function _7e(i,a,f){var p=Q1.exec(a.slice(f,f+1));return p?(i.w=+p[0],f+p[0].length):-1}function C7e(i,a,f){var p=Q1.exec(a.slice(f,f+1));return p?(i.u=+p[0],f+p[0].length):-1}function S7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.U=+p[0],f+p[0].length):-1}function A7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.V=+p[0],f+p[0].length):-1}function L7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.W=+p[0],f+p[0].length):-1}function eDt(i,a,f){var p=Q1.exec(a.slice(f,f+4));return p?(i.y=+p[0],f+p[0].length):-1}function nDt(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.y=+p[0]+(+p[0]>68?1900:2e3),f+p[0].length):-1}function M7e(i,a,f){var p=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(a.slice(f,f+6));return p?(i.Z=p[1]?0:-(p[2]+(p[3]||"00")),f+p[0].length):-1}function D7e(i,a,f){var p=Q1.exec(a.slice(f,f+1));return p?(i.q=p[0]*3-3,f+p[0].length):-1}function I7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.m=p[0]-1,f+p[0].length):-1}function rDt(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.d=+p[0],f+p[0].length):-1}function O7e(i,a,f){var p=Q1.exec(a.slice(f,f+3));return p?(i.m=0,i.d=+p[0],f+p[0].length):-1}function iDt(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.H=+p[0],f+p[0].length):-1}function N7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.M=+p[0],f+p[0].length):-1}function P7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.S=+p[0],f+p[0].length):-1}function F7e(i,a,f){var p=Q1.exec(a.slice(f,f+3));return p?(i.L=+p[0],f+p[0].length):-1}function B7e(i,a,f){var p=Q1.exec(a.slice(f,f+6));return p?(i.L=Math.floor(p[0]/1e3),f+p[0].length):-1}function R7e(i,a,f){var p=k7e.exec(a.slice(f,f+1));return p?f+p[0].length:-1}function j7e(i,a,f){var p=Q1.exec(a.slice(f));return p?(i.Q=+p[0],f+p[0].length):-1}function $7e(i,a,f){var p=Q1.exec(a.slice(f));return p?(i.s=+p[0],f+p[0].length):-1}function sDt(i,a){return Fc(i.getDate(),a,2)}function z7e(i,a){return Fc(i.getHours(),a,2)}function q7e(i,a){return Fc(i.getHours()%12||12,a,2)}function H7e(i,a){return Fc(1+_A.count(UE(i),i),a,3)}function aDt(i,a){return Fc(i.getMilliseconds(),a,3)}function V7e(i,a){return aDt(i,a)+"000"}function G7e(i,a){return Fc(i.getMonth()+1,a,2)}function U7e(i,a){return Fc(i.getMinutes(),a,2)}function W7e(i,a){return Fc(i.getSeconds(),a,2)}function K7e(i){var a=i.getDay();return a===0?7:a}function Y7e(i,a){return Fc(MN.count(UE(i)-1,i),a,2)}function oDt(i){var a=i.getDay();return a>=4||a===0?GE(i):GE.ceil(i)}function X7e(i,a){return i=oDt(i),Fc(GE.count(UE(i),i)+(UE(i).getDay()===4),a,2)}function Q7e(i){return i.getDay()}function Z7e(i,a){return Fc(DN.count(UE(i)-1,i),a,2)}function J7e(i,a){return Fc(i.getFullYear()%100,a,2)}function tEe(i,a){return i=oDt(i),Fc(i.getFullYear()%100,a,2)}function eEe(i,a){return Fc(i.getFullYear()%1e4,a,4)}function nEe(i,a){var f=i.getDay();return i=f>=4||f===0?GE(i):GE.ceil(i),Fc(i.getFullYear()%1e4,a,4)}function rEe(i){var a=i.getTimezoneOffset();return(a>0?"-":(a*=-1,"+"))+Fc(a/60|0,"0",2)+Fc(a%60,"0",2)}function cDt(i,a){return Fc(i.getUTCDate(),a,2)}function iEe(i,a){return Fc(i.getUTCHours(),a,2)}function sEe(i,a){return Fc(i.getUTCHours()%12||12,a,2)}function aEe(i,a){return Fc(1+ZMt.count(IN(i),i),a,3)}function uDt(i,a){return Fc(i.getUTCMilliseconds(),a,3)}function oEe(i,a){return uDt(i,a)+"000"}function cEe(i,a){return Fc(i.getUTCMonth()+1,a,2)}function uEe(i,a){return Fc(i.getUTCMinutes(),a,2)}function lEe(i,a){return Fc(i.getUTCSeconds(),a,2)}function hEe(i){var a=i.getUTCDay();return a===0?7:a}function fEe(i,a){return Fc(JMt.count(IN(i)-1,i),a,2)}function lDt(i){var a=i.getUTCDay();return a>=4||a===0?CA(i):CA.ceil(i)}function dEe(i,a){return i=lDt(i),Fc(CA.count(IN(i),i)+(IN(i).getUTCDay()===4),a,2)}function gEe(i){return i.getUTCDay()}function pEe(i,a){return Fc(qU.count(IN(i)-1,i),a,2)}function bEe(i,a){return Fc(i.getUTCFullYear()%100,a,2)}function vEe(i,a){return i=lDt(i),Fc(i.getUTCFullYear()%100,a,2)}function wEe(i,a){return Fc(i.getUTCFullYear()%1e4,a,4)}function mEe(i,a){var f=i.getUTCDay();return i=f>=4||f===0?CA(i):CA.ceil(i),Fc(i.getUTCFullYear()%1e4,a,4)}function yEe(){return"+0000"}function hDt(){return"%"}function fDt(i){return+i}function dDt(i){return Math.floor(+i/1e3)}var SA,HU;xEe({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function xEe(i){return SA=x7e(i),HU=SA.format,SA.parse,SA.utcFormat,SA.utcParse,SA}function kEe(i){return new Date(i)}function EEe(i){return i instanceof Date?+i:+new Date(+i)}function gDt(i,a,f,p,v,m,b,E,C,A){var P=$Mt(),F=P.invert,j=P.domain,R=A(".%L"),H=A(":%S"),Y=A("%I:%M"),rt=A("%I %p"),J=A("%a %d"),it=A("%b %d"),ft=A("%B"),Tt=A("%Y");function kt(mt){return(C(mt)1?0:i<-1?FN:Math.acos(i)}function bDt(i){return i>=1?VU:i<=-1?-VU:Math.asin(i)}function LEe(i){return i.innerRadius}function MEe(i){return i.outerRadius}function DEe(i){return i.startAngle}function IEe(i){return i.endAngle}function OEe(i){return i&&i.padAngle}function NEe(i,a,f,p,v,m,b,E){var C=f-i,A=p-a,P=b-v,F=E-m,j=F*C-P*A;if(!(j*jtt*tt+Pt*Pt&&(yt=xt,st=ht),{cx:yt,cy:st,x01:-P,y01:-F,x11:yt*(v/kt-1),y11:st*(v/kt-1)}}function LA(){var i=LEe,a=MEe,f=Jh(0),p=null,v=DEe,m=IEe,b=OEe,E=null;function C(){var A,P,F=+i.apply(this,arguments),j=+a.apply(this,arguments),R=v.apply(this,arguments)-VU,H=m.apply(this,arguments)-VU,Y=pDt(H-R),rt=H>R;if(E||(E=A=y1t()),jb0))E.moveTo(0,0);else if(Y>GU-b0)E.moveTo(j*KE(R),j*u3(R)),E.arc(0,0,j,R,H,!rt),F>b0&&(E.moveTo(F*KE(H),F*u3(H)),E.arc(0,0,F,H,R,rt));else{var J=R,it=H,ft=R,Tt=H,kt=Y,mt=Y,ct=b.apply(this,arguments)/2,yt=ct>b0&&(p?+p.apply(this,arguments):AA(F*F+j*j)),st=O1t(pDt(j-F)/2,+f.apply(this,arguments)),xt=st,ht=st,dt,Ct;if(yt>b0){var tt=bDt(yt/F*u3(ct)),Pt=bDt(yt/j*u3(ct));(kt-=tt*2)>b0?(tt*=rt?1:-1,ft+=tt,Tt-=tt):(kt=0,ft=Tt=(R+H)/2),(mt-=Pt*2)>b0?(Pt*=rt?1:-1,J+=Pt,it-=Pt):(mt=0,J=it=(R+H)/2)}var pt=j*KE(J),Ft=j*u3(J),X=F*KE(Tt),Rt=F*u3(Tt);if(st>b0){var Bt=j*KE(it),vt=j*u3(it),Ot=F*KE(ft),Vt=F*u3(ft),qe;if(Yb0?ht>b0?(dt=UU(Ot,Vt,pt,Ft,j,ht,rt),Ct=UU(Bt,vt,X,Rt,j,ht,rt),E.moveTo(dt.cx+dt.x01,dt.cy+dt.y01),htb0)||!(kt>b0)?E.lineTo(X,Rt):xt>b0?(dt=UU(X,Rt,Bt,vt,F,-xt,rt),Ct=UU(pt,Ft,Ot,Vt,F,-xt,rt),E.lineTo(dt.cx+dt.x01,dt.cy+dt.y01),xti?1:a>=i?0:NaN}function REe(i){return i}function jEe(){var i=REe,a=BEe,f=null,p=Jh(0),v=Jh(GU),m=Jh(0);function b(E){var C,A=(E=vDt(E)).length,P,F,j=0,R=new Array(A),H=new Array(A),Y=+p.apply(this,arguments),rt=Math.min(GU,Math.max(-GU,v.apply(this,arguments)-Y)),J,it=Math.min(Math.abs(rt)/A,m.apply(this,arguments)),ft=it*(rt<0?-1:1),Tt;for(C=0;C0&&(j+=Tt);for(a!=null?R.sort(function(kt,mt){return a(H[kt],H[mt])}):f!=null&&R.sort(function(kt,mt){return f(E[kt],E[mt])}),C=0,F=j?(rt-A*ft)/j:0;C0?Tt*F:0)+ft,H[P]={data:E[P],index:C,value:Tt,startAngle:Y,endAngle:J,padAngle:it};return H}return b.value=function(E){return arguments.length?(i=typeof E=="function"?E:Jh(+E),b):i},b.sortValues=function(E){return arguments.length?(a=E,f=null,b):a},b.sort=function(E){return arguments.length?(f=E,a=null,b):f},b.startAngle=function(E){return arguments.length?(p=typeof E=="function"?E:Jh(+E),b):p},b.endAngle=function(E){return arguments.length?(v=typeof E=="function"?E:Jh(+E),b):v},b.padAngle=function(E){return arguments.length?(m=typeof E=="function"?E:Jh(+E),b):m},b}class mDt{constructor(a,f){this._context=a,this._x=f}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(a,f){switch(a=+a,f=+f,this._point){case 0:{this._point=1,this._line?this._context.lineTo(a,f):this._context.moveTo(a,f);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+a)/2,this._y0,this._x0,f,a,f):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+f)/2,a,this._y0,a,f);break}}this._x0=a,this._y0=f}}function $Ee(i){return new mDt(i,!0)}function zEe(i){return new mDt(i,!1)}function Qx(){}function WU(i,a,f){i._context.bezierCurveTo((2*i._x0+i._x1)/3,(2*i._y0+i._y1)/3,(i._x0+2*i._x1)/3,(i._y0+2*i._y1)/3,(i._x0+4*i._x1+a)/6,(i._y0+4*i._y1+f)/6)}function KU(i){this._context=i}KU.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:WU(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:WU(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function MA(i){return new KU(i)}function yDt(i){this._context=i}yDt.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x2=i,this._y2=a;break;case 1:this._point=2,this._x3=i,this._y3=a;break;case 2:this._point=3,this._x4=i,this._y4=a,this._context.moveTo((this._x0+4*this._x1+i)/6,(this._y0+4*this._y1+a)/6);break;default:WU(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function qEe(i){return new yDt(i)}function xDt(i){this._context=i}xDt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var f=(this._x0+4*this._x1+i)/6,p=(this._y0+4*this._y1+a)/6;this._line?this._context.lineTo(f,p):this._context.moveTo(f,p);break;case 3:this._point=4;default:WU(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function HEe(i){return new xDt(i)}function kDt(i,a){this._basis=new KU(i),this._beta=a}kDt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var i=this._x,a=this._y,f=i.length-1;if(f>0)for(var p=i[0],v=a[0],m=i[f]-p,b=a[f]-v,E=-1,C;++E<=f;)C=E/f,this._basis.point(this._beta*i[E]+(1-this._beta)*(p+C*m),this._beta*a[E]+(1-this._beta)*(v+C*b));this._x=this._y=null,this._basis.lineEnd()},point:function(i,a){this._x.push(+i),this._y.push(+a)}};const VEe=function i(a){function f(p){return a===1?new KU(p):new kDt(p,a)}return f.beta=function(p){return i(+p)},f}(.85);function YU(i,a,f){i._context.bezierCurveTo(i._x1+i._k*(i._x2-i._x0),i._y1+i._k*(i._y2-i._y0),i._x2+i._k*(i._x1-a),i._y2+i._k*(i._y1-f),i._x2,i._y2)}function N1t(i,a){this._context=i,this._k=(1-a)/6}N1t.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:YU(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2,this._x1=i,this._y1=a;break;case 2:this._point=3;default:YU(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const GEe=function i(a){function f(p){return new N1t(p,a)}return f.tension=function(p){return i(+p)},f}(0);function P1t(i,a){this._context=i,this._k=(1-a)/6}P1t.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:YU(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const UEe=function i(a){function f(p){return new P1t(p,a)}return f.tension=function(p){return i(+p)},f}(0);function F1t(i,a){this._context=i,this._k=(1-a)/6}F1t.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:YU(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const WEe=function i(a){function f(p){return new F1t(p,a)}return f.tension=function(p){return i(+p)},f}(0);function B1t(i,a,f){var p=i._x1,v=i._y1,m=i._x2,b=i._y2;if(i._l01_a>b0){var E=2*i._l01_2a+3*i._l01_a*i._l12_a+i._l12_2a,C=3*i._l01_a*(i._l01_a+i._l12_a);p=(p*E-i._x0*i._l12_2a+i._x2*i._l01_2a)/C,v=(v*E-i._y0*i._l12_2a+i._y2*i._l01_2a)/C}if(i._l23_a>b0){var A=2*i._l23_2a+3*i._l23_a*i._l12_a+i._l12_2a,P=3*i._l23_a*(i._l23_a+i._l12_a);m=(m*A+i._x1*i._l23_2a-a*i._l12_2a)/P,b=(b*A+i._y1*i._l23_2a-f*i._l12_2a)/P}i._context.bezierCurveTo(p,v,m,b,i._x2,i._y2)}function EDt(i,a){this._context=i,this._alpha=a}EDt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,p=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+p*p,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3;default:B1t(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const KEe=function i(a){function f(p){return a?new EDt(p,a):new N1t(p,0)}return f.alpha=function(p){return i(+p)},f}(.5);function TDt(i,a){this._context=i,this._alpha=a}TDt.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,p=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+p*p,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:B1t(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const YEe=function i(a){function f(p){return a?new TDt(p,a):new P1t(p,0)}return f.alpha=function(p){return i(+p)},f}(.5);function _Dt(i,a){this._context=i,this._alpha=a}_Dt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,p=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+p*p,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:B1t(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const XEe=function i(a){function f(p){return a?new _Dt(p,a):new F1t(p,0)}return f.alpha=function(p){return i(+p)},f}(.5);function CDt(i){this._context=i}CDt.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(i,a){i=+i,a=+a,this._point?this._context.lineTo(i,a):(this._point=1,this._context.moveTo(i,a))}};function QEe(i){return new CDt(i)}function SDt(i){return i<0?-1:1}function ADt(i,a,f){var p=i._x1-i._x0,v=a-i._x1,m=(i._y1-i._y0)/(p||v<0&&-0),b=(f-i._y1)/(v||p<0&&-0),E=(m*v+b*p)/(p+v);return(SDt(m)+SDt(b))*Math.min(Math.abs(m),Math.abs(b),.5*Math.abs(E))||0}function LDt(i,a){var f=i._x1-i._x0;return f?(3*(i._y1-i._y0)/f-a)/2:a}function R1t(i,a,f){var p=i._x0,v=i._y0,m=i._x1,b=i._y1,E=(m-p)/3;i._context.bezierCurveTo(p+E,v+E*a,m-E,b-E*f,m,b)}function XU(i){this._context=i}XU.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:R1t(this,this._t0,LDt(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){var f=NaN;if(i=+i,a=+a,!(i===this._x1&&a===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,R1t(this,LDt(this,f=ADt(this,i,a)),f);break;default:R1t(this,this._t0,f=ADt(this,i,a));break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a,this._t0=f}}};function MDt(i){this._context=new DDt(i)}(MDt.prototype=Object.create(XU.prototype)).point=function(i,a){XU.prototype.point.call(this,a,i)};function DDt(i){this._context=i}DDt.prototype={moveTo:function(i,a){this._context.moveTo(a,i)},closePath:function(){this._context.closePath()},lineTo:function(i,a){this._context.lineTo(a,i)},bezierCurveTo:function(i,a,f,p,v,m){this._context.bezierCurveTo(a,i,p,f,m,v)}};function ZEe(i){return new XU(i)}function JEe(i){return new MDt(i)}function IDt(i){this._context=i}IDt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var i=this._x,a=this._y,f=i.length;if(f)if(this._line?this._context.lineTo(i[0],a[0]):this._context.moveTo(i[0],a[0]),f===2)this._context.lineTo(i[1],a[1]);else for(var p=ODt(i),v=ODt(a),m=0,b=1;b=0;--a)v[a]=(b[a]-v[a+1])/m[a];for(m[f-1]=(i[f]+v[f-1])/2,a=0;a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,a),this._context.lineTo(i,a);else{var f=this._x*(1-this._t)+i*this._t;this._context.lineTo(f,this._y),this._context.lineTo(f,a)}break}}this._x=i,this._y=a}};function e9e(i){return new QU(i,.5)}function n9e(i){return new QU(i,0)}function r9e(i){return new QU(i,1)}function BN(i,a,f){this.k=i,this.x=a,this.y=f}BN.prototype={constructor:BN,scale:function(i){return i===1?this:new BN(this.k*i,this.x,this.y)},translate:function(i,a){return i===0&a===0?this:new BN(this.k,this.x+this.k*i,this.y+this.k*a)},apply:function(i){return[i[0]*this.k+this.x,i[1]*this.k+this.y]},applyX:function(i){return i*this.k+this.x},applyY:function(i){return i*this.k+this.y},invert:function(i){return[(i[0]-this.x)/this.k,(i[1]-this.y)/this.k]},invertX:function(i){return(i-this.x)/this.k},invertY:function(i){return(i-this.y)/this.k},rescaleX:function(i){return i.copy().domain(i.range().map(this.invertX,this).map(i.invert,i))},rescaleY:function(i){return i.copy().domain(i.range().map(this.invertY,this).map(i.invert,i))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},BN.prototype;/*! @license DOMPurify 3.0.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.5/LICENSE */const{entries:NDt,setPrototypeOf:PDt,isFrozen:i9e,getPrototypeOf:s9e,getOwnPropertyDescriptor:a9e}=Object;let{freeze:sg,seal:Xw,create:o9e}=Object,{apply:j1t,construct:$1t}=typeof Reflect<"u"&&Reflect;j1t||(j1t=function(a,f,p){return a.apply(f,p)}),sg||(sg=function(a){return a}),Xw||(Xw=function(a){return a}),$1t||($1t=function(a,f){return new a(...f)});const c9e=X2(Array.prototype.forEach),FDt=X2(Array.prototype.pop),RN=X2(Array.prototype.push),ZU=X2(String.prototype.toLowerCase),z1t=X2(String.prototype.toString),u9e=X2(String.prototype.match),Qw=X2(String.prototype.replace),l9e=X2(String.prototype.indexOf),h9e=X2(String.prototype.trim),Ib=X2(RegExp.prototype.test),jN=f9e(TypeError);function X2(i){return function(a){for(var f=arguments.length,p=new Array(f>1?f-1:0),v=1;v/gm),v9e=Xw(/\${[\w\W]*}/gm),w9e=Xw(/^data-[\-\w.\u00B7-\uFFFF]/),m9e=Xw(/^aria-[\-\w]+$/),zDt=Xw(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),y9e=Xw(/^(?:\w+script|data):/i),x9e=Xw(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),qDt=Xw(/^html$/i);var HDt=Object.freeze({__proto__:null,MUSTACHE_EXPR:p9e,ERB_EXPR:b9e,TMPLIT_EXPR:v9e,DATA_ATTR:w9e,ARIA_ATTR:m9e,IS_ALLOWED_URI:zDt,IS_SCRIPT_OR_DATA:y9e,ATTR_WHITESPACE:x9e,DOCTYPE_NAME:qDt});const k9e=()=>typeof window>"u"?null:window,E9e=function(a,f){if(typeof a!="object"||typeof a.createPolicy!="function")return null;let p=null;const v="data-tt-policy-suffix";f&&f.hasAttribute(v)&&(p=f.getAttribute(v));const m="dompurify"+(p?"#"+p:"");try{return a.createPolicy(m,{createHTML(b){return b},createScriptURL(b){return b}})}catch{return console.warn("TrustedTypes policy "+m+" could not be created."),null}};function VDt(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k9e();const a=Vi=>VDt(Vi);if(a.version="3.0.5",a.removed=[],!i||!i.document||i.document.nodeType!==9)return a.isSupported=!1,a;const f=i.document,p=f.currentScript;let{document:v}=i;const{DocumentFragment:m,HTMLTemplateElement:b,Node:E,Element:C,NodeFilter:A,NamedNodeMap:P=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:F,DOMParser:j,trustedTypes:R}=i,H=C.prototype,Y=JU(H,"cloneNode"),rt=JU(H,"nextSibling"),J=JU(H,"childNodes"),it=JU(H,"parentNode");if(typeof b=="function"){const Vi=v.createElement("template");Vi.content&&Vi.content.ownerDocument&&(v=Vi.content.ownerDocument)}let ft,Tt="";const{implementation:kt,createNodeIterator:mt,createDocumentFragment:ct,getElementsByTagName:yt}=v,{importNode:st}=f;let xt={};a.isSupported=typeof NDt=="function"&&typeof it=="function"&&kt&&kt.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:ht,ERB_EXPR:dt,TMPLIT_EXPR:Ct,DATA_ATTR:tt,ARIA_ATTR:Pt,IS_SCRIPT_OR_DATA:pt,ATTR_WHITESPACE:Ft}=HDt;let{IS_ALLOWED_URI:X}=HDt,Rt=null;const Bt=_o({},[...BDt,...q1t,...H1t,...V1t,...RDt]);let vt=null;const Ot=_o({},[...jDt,...G1t,...$Dt,...tW]);let Vt=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),qe=null,_n=null,Te=!0,Wn=!0,Ae=!1,ne=!0,ke=!1,Ve=!1,Ee=!1,He=!1,Ce=!1,$e=!1,ye=!1,fn=!0,Yt=!1;const Mi="user-content-";let qt=!0,zi=!1,Se={},ki=null;const Ri=_o({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let pi=null;const bi=_o({},["audio","video","img","source","image","track"]);let dn=null;const Nn=_o({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Wr="http://www.w3.org/1998/Math/MathML",Li="http://www.w3.org/2000/svg",is="http://www.w3.org/1999/xhtml";let Ts=is,Aa=!1,Xi=null;const Ga=_o({},[Wr,Li,is],z1t);let _r;const qr=["application/xhtml+xml","text/html"],Oi="text/html";let gr,Js=null;const Vn=v.createElement("form"),Xc=function(Ke){return Ke instanceof RegExp||Ke instanceof Function},Er=function(Ke){if(!(Js&&Js===Ke)){if((!Ke||typeof Ke!="object")&&(Ke={}),Ke=DA(Ke),_r=qr.indexOf(Ke.PARSER_MEDIA_TYPE)===-1?_r=Oi:_r=Ke.PARSER_MEDIA_TYPE,gr=_r==="application/xhtml+xml"?z1t:ZU,Rt="ALLOWED_TAGS"in Ke?_o({},Ke.ALLOWED_TAGS,gr):Bt,vt="ALLOWED_ATTR"in Ke?_o({},Ke.ALLOWED_ATTR,gr):Ot,Xi="ALLOWED_NAMESPACES"in Ke?_o({},Ke.ALLOWED_NAMESPACES,z1t):Ga,dn="ADD_URI_SAFE_ATTR"in Ke?_o(DA(Nn),Ke.ADD_URI_SAFE_ATTR,gr):Nn,pi="ADD_DATA_URI_TAGS"in Ke?_o(DA(bi),Ke.ADD_DATA_URI_TAGS,gr):bi,ki="FORBID_CONTENTS"in Ke?_o({},Ke.FORBID_CONTENTS,gr):Ri,qe="FORBID_TAGS"in Ke?_o({},Ke.FORBID_TAGS,gr):{},_n="FORBID_ATTR"in Ke?_o({},Ke.FORBID_ATTR,gr):{},Se="USE_PROFILES"in Ke?Ke.USE_PROFILES:!1,Te=Ke.ALLOW_ARIA_ATTR!==!1,Wn=Ke.ALLOW_DATA_ATTR!==!1,Ae=Ke.ALLOW_UNKNOWN_PROTOCOLS||!1,ne=Ke.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ke=Ke.SAFE_FOR_TEMPLATES||!1,Ve=Ke.WHOLE_DOCUMENT||!1,Ce=Ke.RETURN_DOM||!1,$e=Ke.RETURN_DOM_FRAGMENT||!1,ye=Ke.RETURN_TRUSTED_TYPE||!1,He=Ke.FORCE_BODY||!1,fn=Ke.SANITIZE_DOM!==!1,Yt=Ke.SANITIZE_NAMED_PROPS||!1,qt=Ke.KEEP_CONTENT!==!1,zi=Ke.IN_PLACE||!1,X=Ke.ALLOWED_URI_REGEXP||zDt,Ts=Ke.NAMESPACE||is,Vt=Ke.CUSTOM_ELEMENT_HANDLING||{},Ke.CUSTOM_ELEMENT_HANDLING&&Xc(Ke.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Vt.tagNameCheck=Ke.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Ke.CUSTOM_ELEMENT_HANDLING&&Xc(Ke.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Vt.attributeNameCheck=Ke.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Ke.CUSTOM_ELEMENT_HANDLING&&typeof Ke.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Vt.allowCustomizedBuiltInElements=Ke.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ke&&(Wn=!1),$e&&(Ce=!0),Se&&(Rt=_o({},[...RDt]),vt=[],Se.html===!0&&(_o(Rt,BDt),_o(vt,jDt)),Se.svg===!0&&(_o(Rt,q1t),_o(vt,G1t),_o(vt,tW)),Se.svgFilters===!0&&(_o(Rt,H1t),_o(vt,G1t),_o(vt,tW)),Se.mathMl===!0&&(_o(Rt,V1t),_o(vt,$Dt),_o(vt,tW))),Ke.ADD_TAGS&&(Rt===Bt&&(Rt=DA(Rt)),_o(Rt,Ke.ADD_TAGS,gr)),Ke.ADD_ATTR&&(vt===Ot&&(vt=DA(vt)),_o(vt,Ke.ADD_ATTR,gr)),Ke.ADD_URI_SAFE_ATTR&&_o(dn,Ke.ADD_URI_SAFE_ATTR,gr),Ke.FORBID_CONTENTS&&(ki===Ri&&(ki=DA(ki)),_o(ki,Ke.FORBID_CONTENTS,gr)),qt&&(Rt["#text"]=!0),Ve&&_o(Rt,["html","head","body"]),Rt.table&&(_o(Rt,["tbody"]),delete qe.tbody),Ke.TRUSTED_TYPES_POLICY){if(typeof Ke.TRUSTED_TYPES_POLICY.createHTML!="function")throw jN('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Ke.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw jN('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ft=Ke.TRUSTED_TYPES_POLICY,Tt=ft.createHTML("")}else ft===void 0&&(ft=E9e(R,p)),ft!==null&&typeof Tt=="string"&&(Tt=ft.createHTML(""));sg&&sg(Ke),Js=Ke}},Mc=_o({},["mi","mo","mn","ms","mtext"]),bp=_o({},["foreignobject","desc","title","annotation-xml"]),fm=_o({},["title","style","font","a","script"]),T0=_o({},q1t);_o(T0,H1t),_o(T0,d9e);const Fd=_o({},V1t);_o(Fd,g9e);const No=function(Ke){let kr=it(Ke);(!kr||!kr.tagName)&&(kr={namespaceURI:Ts,tagName:"template"});const ni=ZU(Ke.tagName),eo=ZU(kr.tagName);return Xi[Ke.namespaceURI]?Ke.namespaceURI===Li?kr.namespaceURI===is?ni==="svg":kr.namespaceURI===Wr?ni==="svg"&&(eo==="annotation-xml"||Mc[eo]):!!T0[ni]:Ke.namespaceURI===Wr?kr.namespaceURI===is?ni==="math":kr.namespaceURI===Li?ni==="math"&&bp[eo]:!!Fd[ni]:Ke.namespaceURI===is?kr.namespaceURI===Li&&!bp[eo]||kr.namespaceURI===Wr&&!Mc[eo]?!1:!Fd[ni]&&(fm[ni]||!T0[ni]):!!(_r==="application/xhtml+xml"&&Xi[Ke.namespaceURI]):!1},ta=function(Ke){RN(a.removed,{element:Ke});try{Ke.parentNode.removeChild(Ke)}catch{Ke.remove()}},bu=function(Ke,kr){try{RN(a.removed,{attribute:kr.getAttributeNode(Ke),from:kr})}catch{RN(a.removed,{attribute:null,from:kr})}if(kr.removeAttribute(Ke),Ke==="is"&&!vt[Ke])if(Ce||$e)try{ta(kr)}catch{}else try{kr.setAttribute(Ke,"")}catch{}},Pu=function(Ke){let kr,ni;if(He)Ke=""+Ke;else{const Ju=u9e(Ke,/^[\r\n\t ]+/);ni=Ju&&Ju[0]}_r==="application/xhtml+xml"&&Ts===is&&(Ke=''+Ke+"");const eo=ft?ft.createHTML(Ke):Ke;if(Ts===is)try{kr=new j().parseFromString(eo,_r)}catch{}if(!kr||!kr.documentElement){kr=kt.createDocument(Ts,"template",null);try{kr.documentElement.innerHTML=Aa?Tt:eo}catch{}}const Dc=kr.body||kr.documentElement;return Ke&&ni&&Dc.insertBefore(v.createTextNode(ni),Dc.childNodes[0]||null),Ts===is?yt.call(kr,Ve?"html":"body")[0]:Ve?kr.documentElement:Dc},lo=function(Ke){return mt.call(Ke.ownerDocument||Ke,Ke,A.SHOW_ELEMENT|A.SHOW_COMMENT|A.SHOW_TEXT,null,!1)},mo=function(Ke){return Ke instanceof F&&(typeof Ke.nodeName!="string"||typeof Ke.textContent!="string"||typeof Ke.removeChild!="function"||!(Ke.attributes instanceof P)||typeof Ke.removeAttribute!="function"||typeof Ke.setAttribute!="function"||typeof Ke.namespaceURI!="string"||typeof Ke.insertBefore!="function"||typeof Ke.hasChildNodes!="function")},Os=function(Ke){return typeof E=="object"?Ke instanceof E:Ke&&typeof Ke=="object"&&typeof Ke.nodeType=="number"&&typeof Ke.nodeName=="string"},Tl=function(Ke,kr,ni){xt[Ke]&&c9e(xt[Ke],eo=>{eo.call(a,kr,ni,Js)})},Fu=function(Ke){let kr;if(Tl("beforeSanitizeElements",Ke,null),mo(Ke))return ta(Ke),!0;const ni=gr(Ke.nodeName);if(Tl("uponSanitizeElement",Ke,{tagName:ni,allowedTags:Rt}),Ke.hasChildNodes()&&!Os(Ke.firstElementChild)&&(!Os(Ke.content)||!Os(Ke.content.firstElementChild))&&Ib(/<[/\w]/g,Ke.innerHTML)&&Ib(/<[/\w]/g,Ke.textContent))return ta(Ke),!0;if(!Rt[ni]||qe[ni]){if(!qe[ni]&&nd(ni)&&(Vt.tagNameCheck instanceof RegExp&&Ib(Vt.tagNameCheck,ni)||Vt.tagNameCheck instanceof Function&&Vt.tagNameCheck(ni)))return!1;if(qt&&!ki[ni]){const eo=it(Ke)||Ke.parentNode,Dc=J(Ke)||Ke.childNodes;if(Dc&&eo){const Ju=Dc.length;for(let Qo=Ju-1;Qo>=0;--Qo)eo.insertBefore(Y(Dc[Qo],!0),rt(Ke))}}return ta(Ke),!0}return Ke instanceof C&&!No(Ke)||(ni==="noscript"||ni==="noembed"||ni==="noframes")&&Ib(/<\/no(script|embed|frames)/i,Ke.innerHTML)?(ta(Ke),!0):(ke&&Ke.nodeType===3&&(kr=Ke.textContent,kr=Qw(kr,ht," "),kr=Qw(kr,dt," "),kr=Qw(kr,Ct," "),Ke.textContent!==kr&&(RN(a.removed,{element:Ke.cloneNode()}),Ke.textContent=kr)),Tl("afterSanitizeElements",Ke,null),!1)},zo=function(Ke,kr,ni){if(fn&&(kr==="id"||kr==="name")&&(ni in v||ni in Vn))return!1;if(!(Wn&&!_n[kr]&&Ib(tt,kr))){if(!(Te&&Ib(Pt,kr))){if(!vt[kr]||_n[kr]){if(!(nd(Ke)&&(Vt.tagNameCheck instanceof RegExp&&Ib(Vt.tagNameCheck,Ke)||Vt.tagNameCheck instanceof Function&&Vt.tagNameCheck(Ke))&&(Vt.attributeNameCheck instanceof RegExp&&Ib(Vt.attributeNameCheck,kr)||Vt.attributeNameCheck instanceof Function&&Vt.attributeNameCheck(kr))||kr==="is"&&Vt.allowCustomizedBuiltInElements&&(Vt.tagNameCheck instanceof RegExp&&Ib(Vt.tagNameCheck,ni)||Vt.tagNameCheck instanceof Function&&Vt.tagNameCheck(ni))))return!1}else if(!dn[kr]){if(!Ib(X,Qw(ni,Ft,""))){if(!((kr==="src"||kr==="xlink:href"||kr==="href")&&Ke!=="script"&&l9e(ni,"data:")===0&&pi[Ke])){if(!(Ae&&!Ib(pt,Qw(ni,Ft,"")))){if(ni)return!1}}}}}}return!0},nd=function(Ke){return Ke.indexOf("-")>0},sf=function(Ke){let kr,ni,eo,Dc;Tl("beforeSanitizeAttributes",Ke,null);const{attributes:Ju}=Ke;if(!Ju)return;const Qo={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:vt};for(Dc=Ju.length;Dc--;){kr=Ju[Dc];const{name:jf,namespaceURI:rh}=kr;if(ni=jf==="value"?kr.value:h9e(kr.value),eo=gr(jf),Qo.attrName=eo,Qo.attrValue=ni,Qo.keepAttr=!0,Qo.forceKeepAttr=void 0,Tl("uponSanitizeAttribute",Ke,Qo),ni=Qo.attrValue,Qo.forceKeepAttr||(bu(jf,Ke),!Qo.keepAttr))continue;if(!ne&&Ib(/\/>/i,ni)){bu(jf,Ke);continue}ke&&(ni=Qw(ni,ht," "),ni=Qw(ni,dt," "),ni=Qw(ni,Ct," "));const dm=gr(Ke.nodeName);if(zo(dm,eo,ni)){if(Yt&&(eo==="id"||eo==="name")&&(bu(jf,Ke),ni=Mi+ni),ft&&typeof R=="object"&&typeof R.getAttributeType=="function"&&!rh)switch(R.getAttributeType(dm,eo)){case"TrustedHTML":{ni=ft.createHTML(ni);break}case"TrustedScriptURL":{ni=ft.createScriptURL(ni);break}}try{rh?Ke.setAttributeNS(rh,jf,ni):Ke.setAttribute(jf,ni),FDt(a.removed)}catch{}}}Tl("afterSanitizeAttributes",Ke,null)},ll=function Vi(Ke){let kr;const ni=lo(Ke);for(Tl("beforeSanitizeShadowDOM",Ke,null);kr=ni.nextNode();)Tl("uponSanitizeShadowNode",kr,null),!Fu(kr)&&(kr.content instanceof m&&Vi(kr.content),sf(kr));Tl("afterSanitizeShadowDOM",Ke,null)};return a.sanitize=function(Vi){let Ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},kr,ni,eo,Dc;if(Aa=!Vi,Aa&&(Vi=""),typeof Vi!="string"&&!Os(Vi))if(typeof Vi.toString=="function"){if(Vi=Vi.toString(),typeof Vi!="string")throw jN("dirty is not a string, aborting")}else throw jN("toString is not a function");if(!a.isSupported)return Vi;if(Ee||Er(Ke),a.removed=[],typeof Vi=="string"&&(zi=!1),zi){if(Vi.nodeName){const jf=gr(Vi.nodeName);if(!Rt[jf]||qe[jf])throw jN("root node is forbidden and cannot be sanitized in-place")}}else if(Vi instanceof E)kr=Pu(""),ni=kr.ownerDocument.importNode(Vi,!0),ni.nodeType===1&&ni.nodeName==="BODY"||ni.nodeName==="HTML"?kr=ni:kr.appendChild(ni);else{if(!Ce&&!ke&&!Ve&&Vi.indexOf("<")===-1)return ft&&ye?ft.createHTML(Vi):Vi;if(kr=Pu(Vi),!kr)return Ce?null:ye?Tt:""}kr&&He&&ta(kr.firstChild);const Ju=lo(zi?Vi:kr);for(;eo=Ju.nextNode();)Fu(eo)||(eo.content instanceof m&&ll(eo.content),sf(eo));if(zi)return Vi;if(Ce){if($e)for(Dc=ct.call(kr.ownerDocument);kr.firstChild;)Dc.appendChild(kr.firstChild);else Dc=kr;return(vt.shadowroot||vt.shadowrootmode)&&(Dc=st.call(f,Dc,!0)),Dc}let Qo=Ve?kr.outerHTML:kr.innerHTML;return Ve&&Rt["!doctype"]&&kr.ownerDocument&&kr.ownerDocument.doctype&&kr.ownerDocument.doctype.name&&Ib(qDt,kr.ownerDocument.doctype.name)&&(Qo=" +`+Qo),ke&&(Qo=Qw(Qo,ht," "),Qo=Qw(Qo,dt," "),Qo=Qw(Qo,Ct," ")),ft&&ye?ft.createHTML(Qo):Qo},a.setConfig=function(Vi){Er(Vi),Ee=!0},a.clearConfig=function(){Js=null,Ee=!1},a.isValidAttribute=function(Vi,Ke,kr){Js||Er({});const ni=gr(Vi),eo=gr(Ke);return zo(ni,eo,kr)},a.addHook=function(Vi,Ke){typeof Ke=="function"&&(xt[Vi]=xt[Vi]||[],RN(xt[Vi],Ke))},a.removeHook=function(Vi){if(xt[Vi])return FDt(xt[Vi])},a.removeHooks=function(Vi){xt[Vi]&&(xt[Vi]=[])},a.removeAllHooks=function(){xt={}},a}var eW=VDt();const $N=//gi,T9e=i=>i?WDt(i).replace(/\\n/g,"#br#").split("#br#"):[""],GDt=i=>eW.sanitize(i),UDt=(i,a)=>{var f;if(((f=a.flowchart)==null?void 0:f.htmlLabels)!==!1){const p=a.securityLevel;p==="antiscript"||p==="strict"?i=GDt(i):p!=="loose"&&(i=WDt(i),i=i.replace(//g,">"),i=i.replace(/=/g,"="),i=A9e(i))}return i},v0=(i,a)=>i&&(a.dompurifyConfig?i=eW.sanitize(UDt(i,a),a.dompurifyConfig).toString():i=eW.sanitize(UDt(i,a),{FORBID_TAGS:["style"]}).toString(),i),_9e=(i,a)=>typeof i=="string"?v0(i,a):i.flat().map(f=>v0(f,a)),C9e=i=>$N.test(i),S9e=i=>i.split($N),A9e=i=>i.replace(/#br#/g,"
"),WDt=i=>i.replace($N,"#br#"),L9e=i=>{let a="";return i&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replaceAll(/\(/g,"\\("),a=a.replaceAll(/\)/g,"\\)")),a},u1=i=>!(i===!1||["false","null","0"].includes(String(i).trim().toLowerCase())),M9e=function(...i){const a=i.filter(f=>!isNaN(f));return Math.max(...a)},D9e=function(...i){const a=i.filter(f=>!isNaN(f));return Math.min(...a)},zN=function(i){let a=i;if(i.split("~").length-1>=2){let f=a;do a=f,f=a.replace(/~([^\s,:;]+)~/,"<$1>");while(f!=a);return zN(f)}else return a},ui={getRows:T9e,sanitizeText:v0,sanitizeTextOrArray:_9e,hasBreaks:C9e,splitBreaks:S9e,lineBreakRegex:$N,removeScript:GDt,getUrl:L9e,evaluate:u1,getMax:M9e,getMin:D9e},nW={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:i=>i>=255?255:i<0?0:i,g:i=>i>=255?255:i<0?0:i,b:i=>i>=255?255:i<0?0:i,h:i=>i%360,s:i=>i>=100?100:i<0?0:i,l:i=>i>=100?100:i<0?0:i,a:i=>i>=1?1:i<0?0:i},toLinear:i=>{const a=i/255;return i>.03928?Math.pow((a+.055)/1.055,2.4):a/12.92},hue2rgb:(i,a,f)=>(f<0&&(f+=1),f>1&&(f-=1),f<1/6?i+(a-i)*6*f:f<1/2?a:f<2/3?i+(a-i)*(2/3-f)*6:i),hsl2rgb:({h:i,s:a,l:f},p)=>{if(!a)return f*2.55;i/=360,a/=100,f/=100;const v=f<.5?f*(1+a):f+a-f*a,m=2*f-v;switch(p){case"r":return nW.hue2rgb(m,v,i+1/3)*255;case"g":return nW.hue2rgb(m,v,i)*255;case"b":return nW.hue2rgb(m,v,i-1/3)*255}},rgb2hsl:({r:i,g:a,b:f},p)=>{i/=255,a/=255,f/=255;const v=Math.max(i,a,f),m=Math.min(i,a,f),b=(v+m)/2;if(p==="l")return b*100;if(v===m)return 0;const E=v-m,C=b>.5?E/(2-v-m):E/(v+m);if(p==="s")return C*100;switch(v){case i:return((a-f)/E+(aa>f?Math.min(a,Math.max(f,i)):Math.min(f,Math.max(a,i)),round:i=>Math.round(i*1e10)/1e10},unit:{dec2hex:i=>{const a=Math.round(i).toString(16);return a.length>1?a:`0${a}`}}},Zx={};for(let i=0;i<=255;i++)Zx[i]=ka.unit.dec2hex(i);const w0={ALL:0,RGB:1,HSL:2};class I9e{constructor(){this.type=w0.ALL}get(){return this.type}set(a){if(this.type&&this.type!==a)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=a}reset(){this.type=w0.ALL}is(a){return this.type===a}}const O9e=I9e;class N9e{constructor(a,f){this.color=f,this.changed=!1,this.data=a,this.type=new O9e}set(a,f){return this.color=f,this.changed=!1,this.data=a,this.type.type=w0.ALL,this}_ensureHSL(){const a=this.data,{h:f,s:p,l:v}=a;f===void 0&&(a.h=ka.channel.rgb2hsl(a,"h")),p===void 0&&(a.s=ka.channel.rgb2hsl(a,"s")),v===void 0&&(a.l=ka.channel.rgb2hsl(a,"l"))}_ensureRGB(){const a=this.data,{r:f,g:p,b:v}=a;f===void 0&&(a.r=ka.channel.hsl2rgb(a,"r")),p===void 0&&(a.g=ka.channel.hsl2rgb(a,"g")),v===void 0&&(a.b=ka.channel.hsl2rgb(a,"b"))}get r(){const a=this.data,f=a.r;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"r"))}get g(){const a=this.data,f=a.g;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"g"))}get b(){const a=this.data,f=a.b;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"b"))}get h(){const a=this.data,f=a.h;return!this.type.is(w0.RGB)&&f!==void 0?f:(this._ensureRGB(),ka.channel.rgb2hsl(a,"h"))}get s(){const a=this.data,f=a.s;return!this.type.is(w0.RGB)&&f!==void 0?f:(this._ensureRGB(),ka.channel.rgb2hsl(a,"s"))}get l(){const a=this.data,f=a.l;return!this.type.is(w0.RGB)&&f!==void 0?f:(this._ensureRGB(),ka.channel.rgb2hsl(a,"l"))}get a(){return this.data.a}set r(a){this.type.set(w0.RGB),this.changed=!0,this.data.r=a}set g(a){this.type.set(w0.RGB),this.changed=!0,this.data.g=a}set b(a){this.type.set(w0.RGB),this.changed=!0,this.data.b=a}set h(a){this.type.set(w0.HSL),this.changed=!0,this.data.h=a}set s(a){this.type.set(w0.HSL),this.changed=!0,this.data.s=a}set l(a){this.type.set(w0.HSL),this.changed=!0,this.data.l=a}set a(a){this.changed=!0,this.data.a=a}}const P9e=N9e,rW=new P9e({r:0,g:0,b:0,a:0},"transparent"),KDt={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:i=>{if(i.charCodeAt(0)!==35)return;const a=i.match(KDt.re);if(!a)return;const f=a[1],p=parseInt(f,16),v=f.length,m=v%4===0,b=v>4,E=b?1:17,C=b?8:4,A=m?0:-1,P=b?255:15;return rW.set({r:(p>>C*(A+3)&P)*E,g:(p>>C*(A+2)&P)*E,b:(p>>C*(A+1)&P)*E,a:m?(p&P)*E/255:1},i)},stringify:i=>{const{r:a,g:f,b:p,a:v}=i;return v<1?`#${Zx[Math.round(a)]}${Zx[Math.round(f)]}${Zx[Math.round(p)]}${Zx[Math.round(v*255)]}`:`#${Zx[Math.round(a)]}${Zx[Math.round(f)]}${Zx[Math.round(p)]}`}},qN=KDt,iW={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:i=>{const a=i.match(iW.hueRe);if(a){const[,f,p]=a;switch(p){case"grad":return ka.channel.clamp.h(parseFloat(f)*.9);case"rad":return ka.channel.clamp.h(parseFloat(f)*180/Math.PI);case"turn":return ka.channel.clamp.h(parseFloat(f)*360)}}return ka.channel.clamp.h(parseFloat(i))},parse:i=>{const a=i.charCodeAt(0);if(a!==104&&a!==72)return;const f=i.match(iW.re);if(!f)return;const[,p,v,m,b,E]=f;return rW.set({h:iW._hue2deg(p),s:ka.channel.clamp.s(parseFloat(v)),l:ka.channel.clamp.l(parseFloat(m)),a:b?ka.channel.clamp.a(E?parseFloat(b)/100:parseFloat(b)):1},i)},stringify:i=>{const{h:a,s:f,l:p,a:v}=i;return v<1?`hsla(${ka.lang.round(a)}, ${ka.lang.round(f)}%, ${ka.lang.round(p)}%, ${v})`:`hsl(${ka.lang.round(a)}, ${ka.lang.round(f)}%, ${ka.lang.round(p)}%)`}},sW=iW,aW={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#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",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",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",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",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",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",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",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:i=>{i=i.toLowerCase();const a=aW.colors[i];if(a)return qN.parse(a)},stringify:i=>{const a=qN.stringify(i);for(const f in aW.colors)if(aW.colors[f]===a)return f}},YDt=aW,XDt={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:i=>{const a=i.charCodeAt(0);if(a!==114&&a!==82)return;const f=i.match(XDt.re);if(!f)return;const[,p,v,m,b,E,C,A,P]=f;return rW.set({r:ka.channel.clamp.r(v?parseFloat(p)*2.55:parseFloat(p)),g:ka.channel.clamp.g(b?parseFloat(m)*2.55:parseFloat(m)),b:ka.channel.clamp.b(C?parseFloat(E)*2.55:parseFloat(E)),a:A?ka.channel.clamp.a(P?parseFloat(A)/100:parseFloat(A)):1},i)},stringify:i=>{const{r:a,g:f,b:p,a:v}=i;return v<1?`rgba(${ka.lang.round(a)}, ${ka.lang.round(f)}, ${ka.lang.round(p)}, ${ka.lang.round(v)})`:`rgb(${ka.lang.round(a)}, ${ka.lang.round(f)}, ${ka.lang.round(p)})`}},oW=XDt,Zw={format:{keyword:YDt,hex:qN,rgb:oW,rgba:oW,hsl:sW,hsla:sW},parse:i=>{if(typeof i!="string")return i;const a=qN.parse(i)||oW.parse(i)||sW.parse(i)||YDt.parse(i);if(a)return a;throw new Error(`Unsupported color format: "${i}"`)},stringify:i=>!i.changed&&i.color?i.color:i.type.is(w0.HSL)||i.data.r===void 0?sW.stringify(i):i.a<1||!Number.isInteger(i.r)||!Number.isInteger(i.g)||!Number.isInteger(i.b)?oW.stringify(i):qN.stringify(i)},QDt=(i,a)=>{const f=Zw.parse(i);for(const p in a)f[p]=ka.channel.clamp[p](a[p]);return Zw.stringify(f)},IA=(i,a,f=0,p=1)=>{if(typeof i!="number")return QDt(i,{a});const v=rW.set({r:ka.channel.clamp.r(i),g:ka.channel.clamp.g(a),b:ka.channel.clamp.b(f),a:ka.channel.clamp.a(p)});return Zw.stringify(v)},F9e=(i,a)=>ka.lang.round(Zw.parse(i)[a]),B9e=i=>{const{r:a,g:f,b:p}=Zw.parse(i),v=.2126*ka.channel.toLinear(a)+.7152*ka.channel.toLinear(f)+.0722*ka.channel.toLinear(p);return ka.lang.round(v)},R9e=i=>B9e(i)>=.5,XE=i=>!R9e(i),ZDt=(i,a,f)=>{const p=Zw.parse(i),v=p[a],m=ka.channel.clamp[a](v+f);return v!==m&&(p[a]=m),Zw.stringify(p)},Ss=(i,a)=>ZDt(i,"l",a),Ys=(i,a)=>ZDt(i,"l",-a),mn=(i,a)=>{const f=Zw.parse(i),p={};for(const v in a)a[v]&&(p[v]=f[v]+a[v]);return QDt(i,p)},j9e=(i,a,f=50)=>{const{r:p,g:v,b:m,a:b}=Zw.parse(i),{r:E,g:C,b:A,a:P}=Zw.parse(a),F=f/100,j=F*2-1,R=b-P,Y=((j*R===-1?j:(j+R)/(1+j*R))+1)/2,rt=1-Y,J=p*Y+E*rt,it=v*Y+C*rt,ft=m*Y+A*rt,Tt=b*F+P*(1-F);return IA(J,it,ft,Tt)},ji=(i,a=100)=>{const f=Zw.parse(i);return f.r=255-f.r,f.g=255-f.g,f.b=255-f.b,j9e(f,i,a)},ag=(i,a)=>a?mn(i,{s:-40,l:10}):mn(i,{s:-40,l:-10}),cW="#ffffff",uW="#f2f2f2";let $9e=class{constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||mn(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||mn(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||ag(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||ag(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ji(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ji(this.tertiaryColor),this.lineColor=this.lineColor||ji(this.background),this.arrowheadColor=this.arrowheadColor||ji(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?Ys(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||"grey",this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||Ys(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ji(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ss(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330}),this.darkMode)for(let f=0;f{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const z9e=i=>{const a=new $9e;return a.calculate(i),a};let q9e=class{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ss(this.primaryColor,16),this.tertiaryColor=mn(this.primaryColor,{h:-160}),this.primaryBorderColor=ji(this.background),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.tertiaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ss(ji("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=IA(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=Ys("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Ys(this.sectionBkgColor,10),this.taskBorderColor=IA(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=IA(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=Ss(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=Ss(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.mainContrastColor,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=Ss(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=mn(this.primaryColor,{h:64}),this.fillType3=mn(this.secondaryColor,{h:64}),this.fillType4=mn(this.primaryColor,{h:-64}),this.fillType5=mn(this.secondaryColor,{h:-64}),this.fillType6=mn(this.primaryColor,{h:128}),this.fillType7=mn(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330});for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const H9e=i=>{const a=new q9e;return a.calculate(i),a};let V9e=class{constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=mn(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=mn(this.primaryColor,{h:-160}),this.primaryBorderColor=ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.tertiaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#e8e8e8",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=IA(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||Ys(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||Ys(this.tertiaryColor,40);for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const JDt=i=>{const a=new V9e;return a.calculate(i),a};let G9e=class{constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=Ss("#cde498",10),this.primaryBorderColor=ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.primaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=Ys(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||Ys(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||Ys(this.tertiaryColor,40);for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const U9e=i=>{const a=new G9e;return a.calculate(i),a};class W9e{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Ss(this.contrast,55),this.background="#ffffff",this.tertiaryColor=mn(this.primaryColor,{h:-160}),this.primaryBorderColor=ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.tertiaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=Ss(this.contrast,55),this.border2=this.contrast,this.actorBorder=Ss(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.lineColor,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}}const m5={base:{getThemeVariables:z9e},dark:{getThemeVariables:H9e},default:{getThemeVariables:JDt},forest:{getThemeVariables:U9e},neutral:{getThemeVariables:i=>{const a=new W9e;return a.calculate(i),a}}},Jx={flowchart:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},theme:"default",maxTextSize:5e4,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize"],deterministicIds:!1,fontSize:16},tIt={...Jx,deterministicIDSeed:void 0,themeCSS:void 0,themeVariables:m5.default.getThemeVariables(),sequence:{...Jx.sequence,messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},noteFont:function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},actorFont:function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}},gantt:{...Jx.gantt,tickInterval:void 0,useWidth:void 0},c4:{...Jx.c4,useWidth:void 0,personFont:function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},external_personFont:function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},systemFont:function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},external_systemFont:function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},system_dbFont:function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},external_system_dbFont:function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},system_queueFont:function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},external_system_queueFont:function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},containerFont:function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},external_containerFont:function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},container_dbFont:function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},external_container_dbFont:function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},container_queueFont:function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},external_container_queueFont:function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},componentFont:function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},external_componentFont:function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},component_dbFont:function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},external_component_dbFont:function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},component_queueFont:function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},external_component_queueFont:function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},boundaryFont:function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}},pie:{...Jx.pie,useWidth:984},requirement:{...Jx.requirement,useWidth:void 0},gitGraph:{...Jx.gitGraph,useMaxWidth:!1},sankey:{...Jx.sankey,useMaxWidth:!1}},eIt=(i,a="")=>Object.keys(i).reduce((f,p)=>Array.isArray(i[p])?f:typeof i[p]=="object"&&i[p]!==null?[...f,a+p,...eIt(i[p],"")]:[...f,a+p],[]),K9e=new Set(eIt(tIt,"")),If=tIt,nIt=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,lW=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Y9e=/\s*%%.*\n/gm;class rIt extends Error{constructor(a){super(a),this.name="UnknownDiagramError"}}const OA={},hW=function(i,a){i=i.replace(nIt,"").replace(lW,"").replace(Y9e,` +`);for(const[f,{detector:p}]of Object.entries(OA))if(p(i,a))return f;throw new rIt(`No diagram type detected matching given configuration for text: ${i}`)},iIt=(...i)=>{for(const{id:a,detector:f,loader:p}of i)sIt(a,f,p)},sIt=(i,a,f)=>{OA[i]?Wt.error(`Detector with key ${i} already exists`):OA[i]={detector:a,loader:f},Wt.debug(`Detector with key ${i} added${f?" with loader":""}`)},X9e=i=>OA[i].loader,U1t=(i,a,{depth:f=2,clobber:p=!1}={})=>{const v={depth:f,clobber:p};return Array.isArray(a)&&!Array.isArray(i)?(a.forEach(m=>U1t(i,m,v)),i):Array.isArray(a)&&Array.isArray(i)?(a.forEach(m=>{i.includes(m)||i.push(m)}),i):i===void 0||f<=0?i!=null&&typeof i=="object"&&typeof a=="object"?Object.assign(i,a):a:(a!==void 0&&typeof i=="object"&&typeof a=="object"&&Object.keys(a).forEach(m=>{typeof a[m]=="object"&&(i[m]===void 0||typeof i[m]=="object")?(i[m]===void 0&&(i[m]=Array.isArray(a[m])?[]:{}),i[m]=U1t(i[m],a[m],{depth:f-1,clobber:p})):(p||typeof i[m]!="object"&&typeof a[m]!="object")&&(i[m]=a[m])}),i)},Z1=U1t;var Q9e=typeof global=="object"&&global&&global.Object===Object&&global;const aIt=Q9e;var Z9e=typeof self=="object"&&self&&self.Object===Object&&self,J9e=aIt||Z9e||Function("return this")();const Jw=J9e;var tTe=Jw.Symbol;const Q2=tTe;var oIt=Object.prototype,eTe=oIt.hasOwnProperty,nTe=oIt.toString,HN=Q2?Q2.toStringTag:void 0;function rTe(i){var a=eTe.call(i,HN),f=i[HN];try{i[HN]=void 0;var p=!0}catch{}var v=nTe.call(i);return p&&(a?i[HN]=f:delete i[HN]),v}var iTe=Object.prototype,sTe=iTe.toString;function aTe(i){return sTe.call(i)}var oTe="[object Null]",cTe="[object Undefined]",cIt=Q2?Q2.toStringTag:void 0;function QE(i){return i==null?i===void 0?cTe:oTe:cIt&&cIt in Object(i)?rTe(i):aTe(i)}function Ob(i){var a=typeof i;return i!=null&&(a=="object"||a=="function")}var uTe="[object AsyncFunction]",lTe="[object Function]",hTe="[object GeneratorFunction]",fTe="[object Proxy]";function NA(i){if(!Ob(i))return!1;var a=QE(i);return a==lTe||a==hTe||a==uTe||a==fTe}var dTe=Jw["__core-js_shared__"];const W1t=dTe;var uIt=function(){var i=/[^.]+$/.exec(W1t&&W1t.keys&&W1t.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function gTe(i){return!!uIt&&uIt in i}var pTe=Function.prototype,bTe=pTe.toString;function ZE(i){if(i!=null){try{return bTe.call(i)}catch{}try{return i+""}catch{}}return""}var vTe=/[\\^$.*+?()[\]{}|]/g,wTe=/^\[object .+?Constructor\]$/,mTe=Function.prototype,yTe=Object.prototype,xTe=mTe.toString,kTe=yTe.hasOwnProperty,ETe=RegExp("^"+xTe.call(kTe).replace(vTe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function TTe(i){if(!Ob(i)||gTe(i))return!1;var a=NA(i)?ETe:wTe;return a.test(ZE(i))}function _Te(i,a){return i==null?void 0:i[a]}function JE(i,a){var f=_Te(i,a);return TTe(f)?f:void 0}var CTe=JE(Object,"create");const VN=CTe;function STe(){this.__data__=VN?VN(null):{},this.size=0}function ATe(i){var a=this.has(i)&&delete this.__data__[i];return this.size-=a?1:0,a}var LTe="__lodash_hash_undefined__",MTe=Object.prototype,DTe=MTe.hasOwnProperty;function ITe(i){var a=this.__data__;if(VN){var f=a[i];return f===LTe?void 0:f}return DTe.call(a,i)?a[i]:void 0}var OTe=Object.prototype,NTe=OTe.hasOwnProperty;function PTe(i){var a=this.__data__;return VN?a[i]!==void 0:NTe.call(a,i)}var FTe="__lodash_hash_undefined__";function BTe(i,a){var f=this.__data__;return this.size+=this.has(i)?0:1,f[i]=VN&&a===void 0?FTe:a,this}function t9(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a-1}function VTe(i,a){var f=this.__data__,p=fW(f,i);return p<0?(++this.size,f.push([i,a])):f[p][1]=a,this}function y5(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a-1&&i%1==0&&i<=m_e}function tk(i){return i!=null&&Z1t(i.length)&&!NA(i)}function kIt(i){return l3(i)&&tk(i)}function y_e(){return!1}var EIt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,TIt=EIt&&typeof module=="object"&&module&&!module.nodeType&&module,x_e=TIt&&TIt.exports===EIt,_It=x_e?Jw.Buffer:void 0,k_e=_It?_It.isBuffer:void 0,E_e=k_e||y_e;const RA=E_e;var T_e="[object Object]",__e=Function.prototype,C_e=Object.prototype,CIt=__e.toString,S_e=C_e.hasOwnProperty,A_e=CIt.call(Object);function SIt(i){if(!l3(i)||QE(i)!=T_e)return!1;var a=Q1t(i);if(a===null)return!0;var f=S_e.call(a,"constructor")&&a.constructor;return typeof f=="function"&&f instanceof f&&CIt.call(f)==A_e}var L_e="[object Arguments]",M_e="[object Array]",D_e="[object Boolean]",I_e="[object Date]",O_e="[object Error]",N_e="[object Function]",P_e="[object Map]",F_e="[object Number]",B_e="[object Object]",R_e="[object RegExp]",j_e="[object Set]",$_e="[object String]",z_e="[object WeakMap]",q_e="[object ArrayBuffer]",H_e="[object DataView]",V_e="[object Float32Array]",G_e="[object Float64Array]",U_e="[object Int8Array]",W_e="[object Int16Array]",K_e="[object Int32Array]",Y_e="[object Uint8Array]",X_e="[object Uint8ClampedArray]",Q_e="[object Uint16Array]",Z_e="[object Uint32Array]",kl={};kl[V_e]=kl[G_e]=kl[U_e]=kl[W_e]=kl[K_e]=kl[Y_e]=kl[X_e]=kl[Q_e]=kl[Z_e]=!0,kl[L_e]=kl[M_e]=kl[q_e]=kl[D_e]=kl[H_e]=kl[I_e]=kl[O_e]=kl[N_e]=kl[P_e]=kl[F_e]=kl[B_e]=kl[R_e]=kl[j_e]=kl[$_e]=kl[z_e]=!1;function J_e(i){return l3(i)&&Z1t(i.length)&&!!kl[QE(i)]}function wW(i){return function(a){return i(a)}}var AIt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,UN=AIt&&typeof module=="object"&&module&&!module.nodeType&&module,tCe=UN&&UN.exports===AIt,J1t=tCe&&aIt.process,eCe=function(){try{var i=UN&&UN.require&&UN.require("util").types;return i||J1t&&J1t.binding&&J1t.binding("util")}catch{}}();const jA=eCe;var LIt=jA&&jA.isTypedArray,nCe=LIt?wW(LIt):J_e;const mW=nCe;function tdt(i,a){if(!(a==="constructor"&&typeof i[a]=="function")&&a!="__proto__")return i[a]}var rCe=Object.prototype,iCe=rCe.hasOwnProperty;function yW(i,a,f){var p=i[a];(!(iCe.call(i,a)&&PA(p,f))||f===void 0&&!(a in i))&&pW(i,a,f)}function WN(i,a,f,p){var v=!f;f||(f={});for(var m=-1,b=a.length;++m-1&&i%1==0&&i0){if(++a>=mCe)return arguments[0]}else a=0;return i.apply(void 0,arguments)}}var ECe=kCe(wCe);const NIt=ECe;function kW(i,a){return NIt(OIt(i,a,n9),i+"")}function KN(i,a,f){if(!Ob(f))return!1;var p=typeof a;return(p=="number"?tk(f)&&xW(a,f.length):p=="string"&&a in f)?PA(f[a],i):!1}function TCe(i){return kW(function(a,f){var p=-1,v=f.length,m=v>1?f[v-1]:void 0,b=v>2?f[2]:void 0;for(m=i.length>3&&typeof m=="function"?(v--,m):void 0,b&&KN(f[0],f[1],b)&&(m=v<3?void 0:m,v=1),a=Object(a);++pb.args);YN(m),p=Z1(p,[...m])}else p=f.args;if(!p)return;let v=hW(i,a);return["config"].forEach(m=>{p[m]!==void 0&&(v==="flowchart-v2"&&(v="flowchart"),p[v]=p[m],delete p[m])}),p},FIt=function(i,a=null){try{const f=new RegExp(`[%]{2}(?![{]${SCe.source})(?=[}][%]{2}).* +`,"ig");i=i.trim().replace(f,"").replace(/'/gm,'"'),Wt.debug(`Detecting diagram directive${a!==null?" type:"+a:""} based on the text:${i}`);let p;const v=[];for(;(p=lW.exec(i))!==null;)if(p.index===lW.lastIndex&&lW.lastIndex++,p&&!a||a&&p[1]&&p[1].match(a)||a&&p[2]&&p[2].match(a)){const m=p[1]?p[1]:p[2],b=p[3]?p[3].trim():p[4]?JSON.parse(p[4].trim()):null;v.push({type:m,args:b})}return v.length===0&&v.push({type:i,args:null}),v.length===1?v[0]:v}catch(f){return Wt.error(`ERROR: ${f.message} - Unable to parse directive + ${a!==null?" type:"+a:""} based on the text:${i}`),{type:null,args:null}}},LCe=function(i,a){for(const[f,p]of a.entries())if(p.match(i))return f;return-1};function Z2(i,a){if(!i)return a;const f=`curve${i.charAt(0).toUpperCase()+i.slice(1)}`;return CCe[f]||a}function MCe(i,a){const f=i.trim();if(f)return a.securityLevel!=="loose"?Xx(f):f}const DCe=(i,...a)=>{const f=i.split("."),p=f.length-1,v=f[p];let m=window;for(let b=0;b{f+=TW(m,a),a=m});let p=f/2,v;return a=void 0,i.forEach(m=>{if(a&&!v){const b=TW(m,a);if(b=1&&(v={x:m.x,y:m.y}),E>0&&E<1&&(v={x:(1-E)*a.x+E*m.x,y:(1-E)*a.y+E*m.y})}}a=m}),v}function OCe(i){return i.length===1?i[0]:ICe(i)}const NCe=(i,a,f)=>{let p;Wt.info(`our points ${JSON.stringify(a)}`),a[0]!==f&&(a=a.reverse());let m=25,b;p=void 0,a.forEach(P=>{if(p&&!b){const F=TW(P,p);if(F=1&&(b={x:P.x,y:P.y}),j>0&&j<1&&(b={x:(1-j)*p.x+j*P.x,y:(1-j)*p.y+j*P.y})}}p=P});const E=i?10:5,C=Math.atan2(a[0].y-b.y,a[0].x-b.x),A={x:0,y:0};return A.x=Math.sin(C)*E+(a[0].x+b.x)/2,A.y=-Math.cos(C)*E+(a[0].y+b.y)/2,A};function PCe(i,a,f){let p=JSON.parse(JSON.stringify(f)),v;Wt.info("our points",p),a!=="start_left"&&a!=="start_right"&&(p=p.reverse()),p.forEach(F=>{v=F});let b=25+i,E;v=void 0,p.forEach(F=>{if(v&&!E){const j=TW(F,v);if(j=1&&(E={x:F.x,y:F.y}),R>0&&R<1&&(E={x:(1-R)*v.x+R*F.x,y:(1-R)*v.y+R*F.y})}}v=F});const C=10+i*.5,A=Math.atan2(p[0].y-E.y,p[0].x-E.x),P={x:0,y:0};return P.x=Math.sin(A)*C+(p[0].x+E.x)/2,P.y=-Math.cos(A)*C+(p[0].y+E.y)/2,a==="start_left"&&(P.x=Math.sin(A+Math.PI)*C+(p[0].x+E.x)/2,P.y=-Math.cos(A+Math.PI)*C+(p[0].y+E.y)/2),a==="end_right"&&(P.x=Math.sin(A-Math.PI)*C+(p[0].x+E.x)/2-5,P.y=-Math.cos(A-Math.PI)*C+(p[0].y+E.y)/2-5),a==="end_left"&&(P.x=Math.sin(A)*C+(p[0].x+E.x)/2-5,P.y=-Math.cos(A)*C+(p[0].y+E.y)/2-5),P}function em(i){let a="",f="";for(const p of i)p!==void 0&&(p.startsWith("color:")||p.startsWith("text-align:")?f=f+p+";":a=a+p+";");return{style:a,labelStyle:f}}let BIt=0;const RIt=()=>(BIt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+BIt);function FCe(i){let a="";const f="0123456789abcdef",p=f.length;for(let v=0;vFCe(i.length),BCe=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0}},RCe=function(i,a){const f=a.text.replace(ui.lineBreakRegex," "),[,p]=zA(a.fontSize),v=i.append("text");v.attr("x",a.x),v.attr("y",a.y),v.style("text-anchor",a.anchor),v.style("font-family",a.fontFamily),v.style("font-size",p),v.style("font-weight",a.fontWeight),v.attr("fill",a.fill),a.class!==void 0&&v.attr("class",a.class);const m=v.append("tspan");return m.attr("x",a.x+a.textMargin*2),m.attr("fill",a.fill),m.text(f),v},$It=FA((i,a,f)=>{if(!i||(f=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},f),ui.lineBreakRegex.test(i)))return i;const p=i.split(" "),v=[];let m="";return p.forEach((b,E)=>{const C=h3(`${b} `,f),A=h3(m,f);if(C>a){const{hyphenatedStrings:j,remainingWord:R}=jCe(b,a,"-",f);v.push(m,...j),m=R}else A+C>=a?(v.push(m),m=b):m=[m,b].filter(Boolean).join(" ");E+1===p.length&&v.push(m)}),v.filter(b=>b!=="").join(f.joinWith)},(i,a,f)=>`${i}${a}${f.fontSize}${f.fontWeight}${f.fontFamily}${f.joinWith}`),jCe=FA((i,a,f="-",p)=>{p=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},p);const v=[...i],m=[];let b="";return v.forEach((E,C)=>{const A=`${b}${E}`;if(h3(A,p)>=a){const F=C+1,j=v.length===F,R=`${A}${f}`;m.push(j?A:R),b=""}else b=A}),{hyphenatedStrings:m,remainingWord:b}},(i,a,f="-",p)=>`${i}${a}${f}${p.fontSize}${p.fontWeight}${p.fontFamily}`);function edt(i,a){return a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},a),ndt(i,a).height}function h3(i,a){return a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},a),ndt(i,a).width}const ndt=FA((i,a)=>{a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},a);const{fontSize:f,fontFamily:p,fontWeight:v}=a;if(!i)return{width:0,height:0};const[,m]=zA(f),b=["sans-serif",p],E=i.split(ui.lineBreakRegex),C=[],A=xr("body");if(!A.remove)return{width:0,height:0,lineHeight:0};const P=A.append("svg");for(const j of b){let R=0;const H={width:0,height:0,lineHeight:0};for(const Y of E){const rt=BCe();rt.text=Y||PIt;const J=RCe(P,rt).style("font-size",m).style("font-weight",v).style("font-family",j),it=(J._groups||J)[0][0].getBBox();if(it.width===0&&it.height===0)throw new Error("svg element not in render tree");H.width=Math.round(Math.max(H.width,it.width)),R=Math.round(it.height),H.height+=R,H.lineHeight=Math.round(Math.max(H.lineHeight,R))}C.push(H)}P.remove();const F=isNaN(C[1].height)||isNaN(C[1].width)||isNaN(C[1].lineHeight)||C[0].height>C[1].height&&C[0].width>C[1].width&&C[0].lineHeight>C[1].lineHeight?0:1;return C[F]},(i,a)=>`${i}${a.fontSize}${a.fontWeight}${a.fontFamily}`),$Ce=class{constructor(a,f){this.deterministic=a,this.seed=f,this.count=f?f.length:0}next(){return this.deterministic?this.count++:Date.now()}};let _W;const zCe=function(i){return _W=_W||document.createElement("div"),i=escape(i).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),_W.innerHTML=i,unescape(_W.textContent)},YN=i=>{if(Wt.debug("sanitizeDirective called with",i),!(typeof i!="object"||i==null)){if(Array.isArray(i)){i.forEach(a=>YN(a));return}for(const a of Object.keys(i)){if(Wt.debug("Checking key",a),a.startsWith("__")||a.includes("proto")||a.includes("constr")||!K9e.has(a)||i[a]==null){Wt.debug("sanitize deleting key: ",a),delete i[a];continue}if(typeof i[a]=="object"){Wt.debug("sanitizing object",a),YN(i[a]);continue}const f=["themeCSS","fontFamily","altFontFamily"];for(const p of f)a.includes(p)&&(Wt.debug("sanitizing css option",a),i[a]=zIt(i[a]))}if(i.themeVariables)for(const a of Object.keys(i.themeVariables)){const f=i.themeVariables[a];f!=null&&f.match&&!f.match(/^[\d "#%(),.;A-Za-z]+$/)&&(i.themeVariables[a]="")}Wt.debug("After sanitization",i)}},zIt=i=>{let a=0,f=0;for(const p of i){if(a{if(!p)return;const v=i.node().getBBox();i.append("text").text(p).attr("x",v.x+v.width/2).attr("y",-f).attr("class",a)},zA=i=>{if(typeof i=="number")return[i,i+"px"];const a=parseInt(i,10);return Number.isNaN(a)?[void 0,void 0]:i===String(a)?[a,i+"px"]:[a,i]};function HIt(i,a){return EW({},i,a)}const to={assignWithDepth:Z1,wrapLabel:$It,calculateTextHeight:edt,calculateTextWidth:h3,calculateTextDimensions:ndt,cleanAndMerge:HIt,detectInit:ACe,detectDirective:FIt,isSubstringInArray:LCe,interpolateToCurve:Z2,calcLabelPosition:OCe,calcCardinalityPosition:NCe,calcTerminalLabelPosition:PCe,formatUrl:MCe,getStylesFromArray:em,generateId:RIt,random:jIt,runFunc:DCe,entityDecode:zCe,initIdGenerator:$Ce,sanitizeDirective:YN,sanitizeCss:zIt,insertTitle:qCe,parseFontSize:zA};var VIt="comm",GIt="rule",UIt="decl",HCe="@import",VCe="@keyframes",GCe=Math.abs,rdt=String.fromCharCode;function WIt(i){return i.trim()}function idt(i,a,f){return i.replace(a,f)}function UCe(i,a){return i.indexOf(a)}function XN(i,a){return i.charCodeAt(a)|0}function QN(i,a,f){return i.slice(a,f)}function ek(i){return i.length}function KIt(i){return i.length}function CW(i,a){return a.push(i),i}var SW=1,qA=1,YIt=0,J2=0,Nf=0,HA="";function sdt(i,a,f,p,v,m,b){return{value:i,root:a,parent:f,type:p,props:v,children:m,line:SW,column:qA,length:b,return:""}}function WCe(){return Nf}function KCe(){return Nf=J2>0?XN(HA,--J2):0,qA--,Nf===10&&(qA=1,SW--),Nf}function nm(){return Nf=J22||adt(Nf)>3?"":" "}function ZCe(i,a){for(;--a&&nm()&&!(Nf<48||Nf>102||Nf>57&&Nf<65||Nf>70&&Nf<97););return LW(i,AW()+(a<6&&r9()==32&&nm()==32))}function cdt(i){for(;nm();)switch(Nf){case i:return J2;case 34:case 39:i!==34&&i!==39&&cdt(Nf);break;case 40:i===41&&cdt(i);break;case 92:nm();break}return J2}function JCe(i,a){for(;nm()&&i+Nf!==47+10;)if(i+Nf===42+42&&r9()===47)break;return"/*"+LW(a,J2-1)+"*"+rdt(i===47?i:nm())}function tSe(i){for(;!adt(r9());)nm();return LW(i,J2)}function eSe(i){return XCe(MW("",null,null,null,[""],i=YCe(i),0,[0],i))}function MW(i,a,f,p,v,m,b,E,C){for(var A=0,P=0,F=b,j=0,R=0,H=0,Y=1,rt=1,J=1,it=0,ft="",Tt=v,kt=m,mt=p,ct=ft;rt;)switch(H=it,it=nm()){case 40:if(H!=108&&XN(ct,F-1)==58){UCe(ct+=idt(odt(it),"&","&\f"),"&\f")!=-1&&(J=-1);break}case 34:case 39:case 91:ct+=odt(it);break;case 9:case 10:case 13:case 32:ct+=QCe(H);break;case 92:ct+=ZCe(AW()-1,7);continue;case 47:switch(r9()){case 42:case 47:CW(nSe(JCe(nm(),AW()),a,f),C);break;default:ct+="/"}break;case 123*Y:E[A++]=ek(ct)*J;case 125*Y:case 59:case 0:switch(it){case 0:case 125:rt=0;case 59+P:R>0&&ek(ct)-F&&CW(R>32?QIt(ct+";",p,f,F-1):QIt(idt(ct," ","")+";",p,f,F-2),C);break;case 59:ct+=";";default:if(CW(mt=XIt(ct,a,f,A,P,v,E,ft,Tt=[],kt=[],F),m),it===123)if(P===0)MW(ct,a,mt,mt,Tt,m,F,E,kt);else switch(j===99&&XN(ct,3)===110?100:j){case 100:case 109:case 115:MW(i,mt,mt,p&&CW(XIt(i,mt,mt,0,0,v,E,ft,v,Tt=[],F),kt),v,kt,F,E,p?Tt:kt);break;default:MW(ct,mt,mt,mt,[""],kt,0,E,kt)}}A=P=R=0,Y=J=1,ft=ct="",F=b;break;case 58:F=1+ek(ct),R=H;default:if(Y<1){if(it==123)--Y;else if(it==125&&Y++==0&&KCe()==125)continue}switch(ct+=rdt(it),it*Y){case 38:J=P>0?1:(ct+="\f",-1);break;case 44:E[A++]=(ek(ct)-1)*J,J=1;break;case 64:r9()===45&&(ct+=odt(nm())),j=r9(),P=F=ek(ft=ct+=tSe(AW())),it++;break;case 45:H===45&&ek(ct)==2&&(Y=0)}}return m}function XIt(i,a,f,p,v,m,b,E,C,A,P){for(var F=v-1,j=v===0?m:[""],R=KIt(j),H=0,Y=0,rt=0;H0?j[J]+" "+it:idt(it,/&\f/g,j[J])))&&(C[rt++]=ft);return sdt(i,a,f,v===0?GIt:E,C,A,P)}function nSe(i,a,f){return sdt(i,a,f,VIt,rdt(WCe()),QN(i,2,-2),0)}function QIt(i,a,f,p){return sdt(i,a,f,UIt,QN(i,0,p),QN(i,p+1,-1),p)}function udt(i,a){for(var f="",p=KIt(i),v=0;v{let f=Z1({},i),p={};for(const v of a)nOt(v),p=Z1(p,v);if(f=Z1(f,p),p.theme&&p.theme in m5){const v=Z1({},JIt),m=Z1(v.themeVariables||{},p.themeVariables);f.theme&&f.theme in m5&&(f.themeVariables=m5[f.theme].getThemeVariables(m))}return ZN=f,iOt(ZN),ZN},iSe=i=>(lp=Z1({},i9),lp=Z1(lp,i),i.theme&&m5[i.theme]&&(lp.themeVariables=m5[i.theme].getThemeVariables(i.themeVariables)),DW(lp,VA),lp),sSe=i=>{JIt=Z1({},i)},aSe=i=>(lp=Z1(lp,i),DW(lp,VA),lp),tOt=()=>Z1({},lp),eOt=i=>(iOt(i),Z1(ZN,i),De()),De=()=>Z1({},ZN),nOt=i=>{i&&(["secure",...lp.secure??[]].forEach(a=>{Object.hasOwn(i,a)&&(Wt.debug(`Denied attempt to modify a secure key ${a}`,i[a]),delete i[a])}),Object.keys(i).forEach(a=>{a.startsWith("__")&&delete i[a]}),Object.keys(i).forEach(a=>{typeof i[a]=="string"&&(i[a].includes("<")||i[a].includes(">")||i[a].includes("url(data:"))&&delete i[a],typeof i[a]=="object"&&nOt(i[a])}))},IW=i=>{YN(i),i.fontFamily&&(!i.themeVariables||!i.themeVariables.fontFamily)&&(i.themeVariables={fontFamily:i.fontFamily}),VA.push(i),DW(lp,VA)},OW=(i=lp)=>{VA=[],DW(i,VA)},oSe={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},rOt={},cSe=i=>{rOt[i]||(Wt.warn(oSe[i]),rOt[i]=!0)},iOt=i=>{i&&(i.lazyLoadedDiagrams||i.loadExternalDiagramsAtStartup)&&cSe("LAZY_LOAD_DEPRECATED")},sOt="c4",uSe={id:sOt,detector:i=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>EDe);return{id:sOt,diagram:i}}},aOt="flowchart",lSe={id:aOt,detector:(i,a)=>{var f,p;return((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="dagre-wrapper"||((p=a==null?void 0:a.flowchart)==null?void 0:p.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>A$e);return{id:aOt,diagram:i}}},oOt="flowchart-v2",hSe={id:oOt,detector:(i,a)=>{var f,p,v;return((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="dagre-d3"||((p=a==null?void 0:a.flowchart)==null?void 0:p.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)&&((v=a==null?void 0:a.flowchart)==null?void 0:v.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>L$e);return{id:oOt,diagram:i}}},cOt="er",fSe={id:cOt,detector:i=>/^\s*erDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>nze);return{id:cOt,diagram:i}}},uOt="gitGraph",dSe={id:uOt,detector:i=>/^\s*gitGraph/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Aze);return{id:uOt,diagram:i}}},lOt="gantt",gSe={id:lOt,detector:i=>/^\s*gantt/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>wqe);return{id:lOt,diagram:i}}},hOt="info",pSe={id:hOt,detector:i=>/^\s*info/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>yqe);return{id:hOt,diagram:i}}},fOt="pie",bSe={id:fOt,detector:i=>/^\s*pie/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Cqe);return{id:fOt,diagram:i}}},dOt="quadrantChart",vSe={id:dOt,detector:i=>/^\s*quadrantChart/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>qqe);return{id:dOt,diagram:i}}},gOt="requirement",wSe={id:gOt,detector:i=>/^\s*requirement(Diagram)?/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Zqe);return{id:gOt,diagram:i}}},pOt="sequence",mSe={id:pOt,detector:i=>/^\s*sequenceDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>sVe);return{id:pOt,diagram:i}}},bOt="class",ySe={id:bOt,detector:(i,a)=>{var f;return((f=a==null?void 0:a.class)==null?void 0:f.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>SVe);return{id:bOt,diagram:i}}},vOt="classDiagram",xSe={id:vOt,detector:(i,a)=>{var f;return/^\s*classDiagram/.test(i)&&((f=a==null?void 0:a.class)==null?void 0:f.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>OVe);return{id:vOt,diagram:i}}},wOt="state",kSe={id:wOt,detector:(i,a)=>{var f;return((f=a==null?void 0:a.state)==null?void 0:f.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>xGe);return{id:wOt,diagram:i}}},mOt="stateDiagram",ESe={id:mOt,detector:(i,a)=>{var f;return!!(/^\s*stateDiagram-v2/.test(i)||/^\s*stateDiagram/.test(i)&&((f=a==null?void 0:a.state)==null?void 0:f.defaultRenderer)==="dagre-wrapper")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>$Ge);return{id:mOt,diagram:i}}},yOt="journey",TSe={id:yOt,detector:i=>/^\s*journey/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>aUe);return{id:yOt,diagram:i}}},ldt=i=>{var v;const{securityLevel:a}=De();let f=xr("body");if(a==="sandbox"){const b=((v=xr(`#i${i}`).node())==null?void 0:v.contentDocument)??document;f=xr(b.body)}return f.select(`#${i}`)},_Se=function(i,a){for(let f of a)i.attr(f[0],f[1])},CSe=function(i,a,f){let p=new Map;return f?(p.set("width","100%"),p.set("style",`max-width: ${a}px;`)):(p.set("height",i),p.set("width",a)),p},og=function(i,a,f,p){const v=CSe(a,f,p);_Se(i,v)},s9=function(i,a,f,p){const v=a.node().getBBox(),m=v.width,b=v.height;Wt.info(`SVG bounds: ${m}x${b}`,v);let E=0,C=0;Wt.info(`Graph bounds: ${E}x${C}`,i),E=m+f*2,C=b+f*2,Wt.info(`Calculated bounds: ${E}x${C}`),og(a,C,E,p);const A=`${v.x-f} ${v.y-f} ${v.width+2*f} ${v.height+2*f}`;a.attr("viewBox",A)},xOt={draw:(i,a,f)=>{Wt.debug(`renering svg for syntax error +`);const p=ldt(a);p.attr("viewBox","0 0 2412 512"),og(p,100,512,!0);const v=p.append("g");v.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),v.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),v.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),v.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),v.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),v.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),v.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),v.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${f}`)}},SSe=xOt,ASe={db:{},renderer:xOt,parser:{parser:{yy:{}},parse:()=>{}}},kOt="flowchart-elk",LSe={id:kOt,detector:(i,a)=>{var f;return!!(/^\s*flowchart-elk/.test(i)||/^\s*flowchart|graph/.test(i)&&((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="elk")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>kUe);return{id:kOt,diagram:i}}},EOt="timeline",MSe={id:EOt,detector:i=>/^\s*timeline/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>zUe);return{id:EOt,diagram:i}}},TOt="mindmap",DSe={id:TOt,detector:i=>/^\s*mindmap/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>vWe);return{id:TOt,diagram:i}}},_Ot="sankey",ISe={id:_Ot,detector:i=>/^\s*sankey-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>WWe);return{id:_Ot,diagram:i}}},NW={},OSe=(i,a,f)=>{let p="";return i in NW&&NW[i]?p=NW[i](f):Wt.warn(`No theme found for ${i}`),` & { + font-family: ${f.fontFamily}; + font-size: ${f.fontSize}; + fill: ${f.textColor} + } + + /* Classes common for multiple diagrams */ + + & .error-icon { + fill: ${f.errorBkgColor}; + } + & .error-text { + fill: ${f.errorTextColor}; + stroke: ${f.errorTextColor}; + } + + & .edge-thickness-normal { + stroke-width: 2px; + } + & .edge-thickness-thick { + stroke-width: 3.5px + } + & .edge-pattern-solid { + stroke-dasharray: 0; + } + + & .edge-pattern-dashed{ + stroke-dasharray: 3; + } + .edge-pattern-dotted { + stroke-dasharray: 2; + } + + & .marker { + fill: ${f.lineColor}; + stroke: ${f.lineColor}; + } + & .marker.cross { + stroke: ${f.lineColor}; + } + + & svg { + font-family: ${f.fontFamily}; + font-size: ${f.fontSize}; + } + + ${p} + + ${a} +`},NSe=(i,a)=>{a!==void 0&&(NW[i]=a)},PSe=OSe;let hdt="",PW="",fdt="";const ddt=i=>v0(i,De()),cg=function(){hdt="",fdt="",PW=""},m0=function(i){hdt=ddt(i).replace(/^\s+/g,"")},ug=function(){return hdt||PW},lg=function(i){fdt=ddt(i).replace(/\n\s+/g,` +`)},hg=function(){return fdt},Nb=function(i){PW=ddt(i)},hp=function(){return PW},COt=Object.freeze(Object.defineProperty({__proto__:null,clear:cg,default:{getAccTitle:ug,setAccTitle:m0,getDiagramTitle:hp,setDiagramTitle:Nb,getAccDescription:hg,setAccDescription:lg,clear:cg},getAccDescription:hg,getAccTitle:ug,getDiagramTitle:hp,setAccDescription:lg,setAccTitle:m0,setDiagramTitle:Nb},Symbol.toStringTag,{value:"Module"}));let a9={};const FW=function(i,a,f,p){Wt.debug("parseDirective is being called",a,f,p);try{if(a!==void 0)switch(a=a.trim(),f){case"open_directive":a9={};break;case"type_directive":if(!a9)throw new Error("currentDirective is undefined");a9.type=a.toLowerCase();break;case"arg_directive":if(!a9)throw new Error("currentDirective is undefined");a9.args=JSON.parse(a);break;case"close_directive":FSe(i,a9,p),a9=void 0;break}}catch(v){Wt.error(`Error while rendering sequenceDiagram directive: ${a} jison context: ${f}`),Wt.error(v.message)}},FSe=function(i,a,f){switch(Wt.info(`Directive type=${a.type} with args:`,a.args),a.type){case"init":case"initialize":{["config"].forEach(p=>{a.args[p]!==void 0&&(f==="flowchart-v2"&&(f="flowchart"),a.args[f]=a.args[p],delete a.args[p])}),IW(a.args);break}case"wrap":case"nowrap":i&&i.setWrap&&i.setWrap(a.type==="wrap");break;case"themeCss":Wt.warn("themeCss encountered");break;default:Wt.warn(`Unhandled directive: source: '%%{${a.type}: ${JSON.stringify(a.args?a.args:{})}}%%`,a);break}},BSe=Wt,RSe=zft,JN=De,jSe=i=>v0(i,JN()),SOt=s9,$Se=()=>COt,zSe=(i,a,f,p)=>FW(i,a,f,p),BW={},RW=(i,a,f)=>{if(BW[i])throw new Error(`Diagram ${i} already registered.`);BW[i]=a,f&&sIt(i,f),NSe(i,a.styles),a.injectUtils&&a.injectUtils(BSe,RSe,JN,jSe,SOt,$Se(),zSe)},gdt=i=>{if(i in BW)return BW[i];throw new qSe(i)};class qSe extends Error{constructor(a){super(`Diagram ${a} not found.`)}}let AOt=!1;const pdt=()=>{AOt||(AOt=!0,RW("error",ASe,i=>i.toLowerCase().trim()==="error"),RW("---",{db:{clear:()=>{}},styles:{},renderer:{},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},i=>i.toLowerCase().trimStart().startsWith("---")),iIt(uSe,xSe,ySe,fSe,gSe,pSe,bSe,wSe,mSe,LSe,hSe,lSe,DSe,MSe,dSe,ESe,kSe,TSe,vSe,ISe))};/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function LOt(i){return typeof i>"u"||i===null}function HSe(i){return typeof i=="object"&&i!==null}function VSe(i){return Array.isArray(i)?i:LOt(i)?[]:[i]}function GSe(i,a){var f,p,v,m;if(a)for(m=Object.keys(a),f=0,p=m.length;fE&&(m=" ... ",a=p-E+m.length),f-p>E&&(b=" ...",f=p+E-b.length),{str:m+i.slice(a,f).replace(/\t/g,"→")+b,pos:p-a+m.length}}function vdt(i,a){return fg.repeat(" ",a-i.length)+i}function tAe(i,a){if(a=Object.create(a||null),!i.buffer)return null;a.maxLength||(a.maxLength=79),typeof a.indent!="number"&&(a.indent=1),typeof a.linesBefore!="number"&&(a.linesBefore=3),typeof a.linesAfter!="number"&&(a.linesAfter=2);for(var f=/\r?\n|\r|\0/g,p=[0],v=[],m,b=-1;m=f.exec(i.buffer);)v.push(m.index),p.push(m.index+m[0].length),i.position<=m.index&&b<0&&(b=p.length-2);b<0&&(b=p.length-1);var E="",C,A,P=Math.min(i.line+a.linesAfter,v.length).toString().length,F=a.maxLength-(a.indent+P+3);for(C=1;C<=a.linesBefore&&!(b-C<0);C++)A=bdt(i.buffer,p[b-C],v[b-C],i.position-(p[b]-p[b-C]),F),E=fg.repeat(" ",a.indent)+vdt((i.line-C+1).toString(),P)+" | "+A.str+` +`+E;for(A=bdt(i.buffer,p[b],v[b],i.position,F),E+=fg.repeat(" ",a.indent)+vdt((i.line+1).toString(),P)+" | "+A.str+` +`,E+=fg.repeat("-",a.indent+P+3+A.pos)+`^ +`,C=1;C<=a.linesAfter&&!(b+C>=v.length);C++)A=bdt(i.buffer,p[b+C],v[b+C],i.position-(p[b]-p[b+C]),F),E+=fg.repeat(" ",a.indent)+vdt((i.line+C+1).toString(),P)+" | "+A.str+` +`;return E.replace(/\n$/,"")}var eAe=tAe,nAe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],rAe=["scalar","sequence","mapping"];function iAe(i){var a={};return i!==null&&Object.keys(i).forEach(function(f){i[f].forEach(function(p){a[String(p)]=f})}),a}function sAe(i,a){if(a=a||{},Object.keys(a).forEach(function(f){if(nAe.indexOf(f)===-1)throw new k5('Unknown option "'+f+'" is met in definition of "'+i+'" YAML type.')}),this.options=a,this.tag=i,this.kind=a.kind||null,this.resolve=a.resolve||function(){return!0},this.construct=a.construct||function(f){return f},this.instanceOf=a.instanceOf||null,this.predicate=a.predicate||null,this.represent=a.represent||null,this.representName=a.representName||null,this.defaultStyle=a.defaultStyle||null,this.multi=a.multi||!1,this.styleAliases=iAe(a.styleAliases||null),rAe.indexOf(this.kind)===-1)throw new k5('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}var y0=sAe;function DOt(i,a){var f=[];return i[a].forEach(function(p){var v=f.length;f.forEach(function(m,b){m.tag===p.tag&&m.kind===p.kind&&m.multi===p.multi&&(v=b)}),f[v]=p}),f}function aAe(){var i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},a,f;function p(v){v.multi?(i.multi[v.kind].push(v),i.multi.fallback.push(v)):i[v.kind][v.tag]=i.fallback[v.tag]=v}for(a=0,f=arguments.length;a=0?"0b"+i.toString(2):"-0b"+i.toString(2).slice(1)},octal:function(i){return i>=0?"0o"+i.toString(8):"-0o"+i.toString(8).slice(1)},decimal:function(i){return i.toString(10)},hexadecimal:function(i){return i>=0?"0x"+i.toString(16).toUpperCase():"-0x"+i.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),SAe=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function AAe(i){return!(i===null||!SAe.test(i)||i[i.length-1]==="_")}function LAe(i){var a,f;return a=i.replace(/_/g,"").toLowerCase(),f=a[0]==="-"?-1:1,"+-".indexOf(a[0])>=0&&(a=a.slice(1)),a===".inf"?f===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:a===".nan"?NaN:f*parseFloat(a,10)}var MAe=/^[-+]?[0-9]+e/;function DAe(i,a){var f;if(isNaN(i))switch(a){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===i)switch(a){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===i)switch(a){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(fg.isNegativeZero(i))return"-0.0";return f=i.toString(10),MAe.test(f)?f.replace("e",".e"):f}function IAe(i){return Object.prototype.toString.call(i)==="[object Number]"&&(i%1!==0||fg.isNegativeZero(i))}var OAe=new y0("tag:yaml.org,2002:float",{kind:"scalar",resolve:AAe,construct:LAe,predicate:IAe,represent:DAe,defaultStyle:"lowercase"}),IOt=hAe.extend({implicit:[pAe,mAe,CAe,OAe]}),NAe=IOt,OOt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),NOt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function PAe(i){return i===null?!1:OOt.exec(i)!==null||NOt.exec(i)!==null}function FAe(i){var a,f,p,v,m,b,E,C=0,A=null,P,F,j;if(a=OOt.exec(i),a===null&&(a=NOt.exec(i)),a===null)throw new Error("Date resolve error");if(f=+a[1],p=+a[2]-1,v=+a[3],!a[4])return new Date(Date.UTC(f,p,v));if(m=+a[4],b=+a[5],E=+a[6],a[7]){for(C=a[7].slice(0,3);C.length<3;)C+="0";C=+C}return a[9]&&(P=+a[10],F=+(a[11]||0),A=(P*60+F)*6e4,a[9]==="-"&&(A=-A)),j=new Date(Date.UTC(f,p,v,m,b,E,C)),A&&j.setTime(j.getTime()-A),j}function BAe(i){return i.toISOString()}var RAe=new y0("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:PAe,construct:FAe,instanceOf:Date,represent:BAe});function jAe(i){return i==="<<"||i===null}var $Ae=new y0("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jAe}),mdt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function zAe(i){if(i===null)return!1;var a,f,p=0,v=i.length,m=mdt;for(f=0;f64)){if(a<0)return!1;p+=6}return p%8===0}function qAe(i){var a,f,p=i.replace(/[\r\n=]/g,""),v=p.length,m=mdt,b=0,E=[];for(a=0;a>16&255),E.push(b>>8&255),E.push(b&255)),b=b<<6|m.indexOf(p.charAt(a));return f=v%4*6,f===0?(E.push(b>>16&255),E.push(b>>8&255),E.push(b&255)):f===18?(E.push(b>>10&255),E.push(b>>2&255)):f===12&&E.push(b>>4&255),new Uint8Array(E)}function HAe(i){var a="",f=0,p,v,m=i.length,b=mdt;for(p=0;p>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]),f=(f<<8)+i[p];return v=m%3,v===0?(a+=b[f>>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]):v===2?(a+=b[f>>10&63],a+=b[f>>4&63],a+=b[f<<2&63],a+=b[64]):v===1&&(a+=b[f>>2&63],a+=b[f<<4&63],a+=b[64],a+=b[64]),a}function VAe(i){return Object.prototype.toString.call(i)==="[object Uint8Array]"}var GAe=new y0("tag:yaml.org,2002:binary",{kind:"scalar",resolve:zAe,construct:qAe,predicate:VAe,represent:HAe}),UAe=Object.prototype.hasOwnProperty,WAe=Object.prototype.toString;function KAe(i){if(i===null)return!0;var a=[],f,p,v,m,b,E=i;for(f=0,p=E.length;f>10)+55296,(i-65536&1023)+56320)}for(var qOt=new Array(256),HOt=new Array(256),UA=0;UA<256;UA++)qOt[UA]=zOt(UA)?1:0,HOt[UA]=zOt(UA);function gLe(i,a){this.input=i,this.filename=a.filename||null,this.schema=a.schema||sLe,this.onWarning=a.onWarning||null,this.legacy=a.legacy||!1,this.json=a.json||!1,this.listener=a.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=i.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function VOt(i,a){var f={name:i.filename,buffer:i.input.slice(0,-1),position:i.position,line:i.line,column:i.position-i.lineStart};return f.snippet=eAe(f),new k5(a,f)}function Fs(i,a){throw VOt(i,a)}function zW(i,a){i.onWarning&&i.onWarning.call(null,VOt(i,a))}var GOt={YAML:function(a,f,p){var v,m,b;a.version!==null&&Fs(a,"duplication of %YAML directive"),p.length!==1&&Fs(a,"YAML directive accepts exactly one argument"),v=/^([0-9]+)\.([0-9]+)$/.exec(p[0]),v===null&&Fs(a,"ill-formed argument of the YAML directive"),m=parseInt(v[1],10),b=parseInt(v[2],10),m!==1&&Fs(a,"unacceptable YAML version of the document"),a.version=p[0],a.checkLineBreaks=b<2,b!==1&&b!==2&&zW(a,"unsupported YAML version of the document")},TAG:function(a,f,p){var v,m;p.length!==2&&Fs(a,"TAG directive accepts exactly two arguments"),v=p[0],m=p[1],ROt.test(v)||Fs(a,"ill-formed tag handle (first argument) of the TAG directive"),nk.call(a.tagMap,v)&&Fs(a,'there is a previously declared suffix for "'+v+'" tag handle'),jOt.test(m)||Fs(a,"ill-formed tag prefix (second argument) of the TAG directive");try{m=decodeURIComponent(m)}catch{Fs(a,"tag prefix is malformed: "+m)}a.tagMap[v]=m}};function rk(i,a,f,p){var v,m,b,E;if(a1&&(i.result+=fg.repeat(` +`,a-1))}function pLe(i,a,f){var p,v,m,b,E,C,A,P,F=i.kind,j=i.result,R;if(R=i.input.charCodeAt(i.position),fp(R)||GA(R)||R===35||R===38||R===42||R===33||R===124||R===62||R===39||R===34||R===37||R===64||R===96||(R===63||R===45)&&(v=i.input.charCodeAt(i.position+1),fp(v)||f&&GA(v)))return!1;for(i.kind="scalar",i.result="",m=b=i.position,E=!1;R!==0;){if(R===58){if(v=i.input.charCodeAt(i.position+1),fp(v)||f&&GA(v))break}else if(R===35){if(p=i.input.charCodeAt(i.position-1),fp(p))break}else{if(i.position===i.lineStart&&qW(i)||f&&GA(R))break;if(f3(R))if(C=i.line,A=i.lineStart,P=i.lineIndent,Pf(i,!1,-1),i.lineIndent>=a){E=!0,R=i.input.charCodeAt(i.position);continue}else{i.position=b,i.line=C,i.lineStart=A,i.lineIndent=P;break}}E&&(rk(i,m,b,!1),kdt(i,i.line-C),m=b=i.position,E=!1),o9(R)||(b=i.position+1),R=i.input.charCodeAt(++i.position)}return rk(i,m,b,!1),i.result?!0:(i.kind=F,i.result=j,!1)}function bLe(i,a){var f,p,v;if(f=i.input.charCodeAt(i.position),f!==39)return!1;for(i.kind="scalar",i.result="",i.position++,p=v=i.position;(f=i.input.charCodeAt(i.position))!==0;)if(f===39)if(rk(i,p,i.position,!0),f=i.input.charCodeAt(++i.position),f===39)p=i.position,i.position++,v=i.position;else return!0;else f3(f)?(rk(i,p,v,!0),kdt(i,Pf(i,!1,a)),p=v=i.position):i.position===i.lineStart&&qW(i)?Fs(i,"unexpected end of the document within a single quoted scalar"):(i.position++,v=i.position);Fs(i,"unexpected end of the stream within a single quoted scalar")}function vLe(i,a){var f,p,v,m,b,E;if(E=i.input.charCodeAt(i.position),E!==34)return!1;for(i.kind="scalar",i.result="",i.position++,f=p=i.position;(E=i.input.charCodeAt(i.position))!==0;){if(E===34)return rk(i,f,i.position,!0),i.position++,!0;if(E===92){if(rk(i,f,i.position,!0),E=i.input.charCodeAt(++i.position),f3(E))Pf(i,!1,a);else if(E<256&&qOt[E])i.result+=HOt[E],i.position++;else if((b=hLe(E))>0){for(v=b,m=0;v>0;v--)E=i.input.charCodeAt(++i.position),(b=lLe(E))>=0?m=(m<<4)+b:Fs(i,"expected hexadecimal character");i.result+=dLe(m),i.position++}else Fs(i,"unknown escape sequence");f=p=i.position}else f3(E)?(rk(i,f,p,!0),kdt(i,Pf(i,!1,a)),f=p=i.position):i.position===i.lineStart&&qW(i)?Fs(i,"unexpected end of the document within a double quoted scalar"):(i.position++,p=i.position)}Fs(i,"unexpected end of the stream within a double quoted scalar")}function wLe(i,a){var f=!0,p,v,m,b=i.tag,E,C=i.anchor,A,P,F,j,R,H=Object.create(null),Y,rt,J,it;if(it=i.input.charCodeAt(i.position),it===91)P=93,R=!1,E=[];else if(it===123)P=125,R=!0,E={};else return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=E),it=i.input.charCodeAt(++i.position);it!==0;){if(Pf(i,!0,a),it=i.input.charCodeAt(i.position),it===P)return i.position++,i.tag=b,i.anchor=C,i.kind=R?"mapping":"sequence",i.result=E,!0;f?it===44&&Fs(i,"expected the node content, but found ','"):Fs(i,"missed comma between flow collection entries"),rt=Y=J=null,F=j=!1,it===63&&(A=i.input.charCodeAt(i.position+1),fp(A)&&(F=j=!0,i.position++,Pf(i,!0,a))),p=i.line,v=i.lineStart,m=i.position,KA(i,a,jW,!1,!0),rt=i.tag,Y=i.result,Pf(i,!0,a),it=i.input.charCodeAt(i.position),(j||i.line===p)&&it===58&&(F=!0,it=i.input.charCodeAt(++i.position),Pf(i,!0,a),KA(i,a,jW,!1,!0),J=i.result),R?WA(i,E,H,rt,Y,J,p,v,m):F?E.push(WA(i,null,H,rt,Y,J,p,v,m)):E.push(Y),Pf(i,!0,a),it=i.input.charCodeAt(i.position),it===44?(f=!0,it=i.input.charCodeAt(++i.position)):f=!1}Fs(i,"unexpected end of the stream within a flow collection")}function mLe(i,a){var f,p,v=ydt,m=!1,b=!1,E=a,C=0,A=!1,P,F;if(F=i.input.charCodeAt(i.position),F===124)p=!1;else if(F===62)p=!0;else return!1;for(i.kind="scalar",i.result="";F!==0;)if(F=i.input.charCodeAt(++i.position),F===43||F===45)ydt===v?v=F===43?BOt:aLe:Fs(i,"repeat of a chomping mode identifier");else if((P=fLe(F))>=0)P===0?Fs(i,"bad explicit indentation width of a block scalar; it cannot be less than one"):b?Fs(i,"repeat of an indentation width identifier"):(E=a+P-1,b=!0);else break;if(o9(F)){do F=i.input.charCodeAt(++i.position);while(o9(F));if(F===35)do F=i.input.charCodeAt(++i.position);while(!f3(F)&&F!==0)}for(;F!==0;){for(xdt(i),i.lineIndent=0,F=i.input.charCodeAt(i.position);(!b||i.lineIndentE&&(E=i.lineIndent),f3(F)){C++;continue}if(i.lineIndenta)&&C!==0)Fs(i,"bad indentation of a sequence entry");else if(i.lineIndenta)&&(rt&&(b=i.line,E=i.lineStart,C=i.position),KA(i,a,$W,!0,v)&&(rt?H=i.result:Y=i.result),rt||(WA(i,F,j,R,H,Y,b,E,C),R=H=Y=null),Pf(i,!0,-1),it=i.input.charCodeAt(i.position)),(i.line===m||i.lineIndent>a)&&it!==0)Fs(i,"bad indentation of a mapping entry");else if(i.lineIndenta?C=1:i.lineIndent===a?C=0:i.lineIndenta?C=1:i.lineIndent===a?C=0:i.lineIndent tag; it should be "scalar", not "'+i.kind+'"'),F=0,j=i.implicitTypes.length;F"),i.result!==null&&H.kind!==i.kind&&Fs(i,"unacceptable node kind for !<"+i.tag+'> tag; it should be "'+H.kind+'", not "'+i.kind+'"'),H.resolve(i.result,i.tag)?(i.result=H.construct(i.result,i.tag),i.anchor!==null&&(i.anchorMap[i.anchor]=i.result)):Fs(i,"cannot resolve a node with !<"+i.tag+"> explicit tag")}return i.listener!==null&&i.listener("close",i),i.tag!==null||i.anchor!==null||P}function TLe(i){var a=i.position,f,p,v,m=!1,b;for(i.version=null,i.checkLineBreaks=i.legacy,i.tagMap=Object.create(null),i.anchorMap=Object.create(null);(b=i.input.charCodeAt(i.position))!==0&&(Pf(i,!0,-1),b=i.input.charCodeAt(i.position),!(i.lineIndent>0||b!==37));){for(m=!0,b=i.input.charCodeAt(++i.position),f=i.position;b!==0&&!fp(b);)b=i.input.charCodeAt(++i.position);for(p=i.input.slice(f,i.position),v=[],p.length<1&&Fs(i,"directive name must not be less than one character in length");b!==0;){for(;o9(b);)b=i.input.charCodeAt(++i.position);if(b===35){do b=i.input.charCodeAt(++i.position);while(b!==0&&!f3(b));break}if(f3(b))break;for(f=i.position;b!==0&&!fp(b);)b=i.input.charCodeAt(++i.position);v.push(i.input.slice(f,i.position))}b!==0&&xdt(i),nk.call(GOt,p)?GOt[p](i,p,v):zW(i,'unknown document directive "'+p+'"')}if(Pf(i,!0,-1),i.lineIndent===0&&i.input.charCodeAt(i.position)===45&&i.input.charCodeAt(i.position+1)===45&&i.input.charCodeAt(i.position+2)===45?(i.position+=3,Pf(i,!0,-1)):m&&Fs(i,"directives end mark is expected"),KA(i,i.lineIndent-1,$W,!1,!0),Pf(i,!0,-1),i.checkLineBreaks&&cLe.test(i.input.slice(a,i.position))&&zW(i,"non-ASCII line breaks are interpreted as content"),i.documents.push(i.result),i.position===i.lineStart&&qW(i)){i.input.charCodeAt(i.position)===46&&(i.position+=3,Pf(i,!0,-1));return}if(i.position"u"&&(f=a,a=null);var p=KOt(i,f);if(typeof a!="function")return p;for(var v=0,m=p.length;vi.trimStart().replace(/^\s*%%(?!{)[^\n]+\n?/gm,"");class XOt{constructor(a){this.text=a,this.type="graph",this.text+=` +`;const f=De();try{this.type=hW(a,f)}catch(m){this.type="error",this.detectError=m}const p=gdt(this.type);Wt.debug("Type "+this.type),this.db=p.db,this.renderer=p.renderer,this.parser=p.parser;const v=this.parser.parse.bind(this.parser);this.parser.parse=m=>v(ILe(YOt(m,this.db,IW))),this.parser.parser.yy=this.db,this.init=p.init,this.parse()}parse(){var a,f,p;if(this.detectError)throw this.detectError;(f=(a=this.db).clear)==null||f.call(a),(p=this.init)==null||p.call(this,De()),this.parser.parse(this.text)}async render(a,f){await this.renderer.draw(this.text,a,f,this)}getParser(){return this.parser}getType(){return this.type}}const Edt=async i=>{const a=hW(i,De());try{gdt(a)}catch{const p=X9e(a);if(!p)throw new rIt(`Diagram ${a} not found.`);const{id:v,diagram:m}=await p();RW(v,m)}return new XOt(i)};let Tdt=[];const OLe=i=>{Tdt.push(i)},NLe=()=>{Tdt.forEach(i=>{i()}),Tdt=[]};var PLe=wIt(Object.keys,Object);const FLe=PLe;var BLe=Object.prototype,RLe=BLe.hasOwnProperty;function QOt(i){if(!vW(i))return FLe(i);var a=[];for(var f in Object(i))RLe.call(i,f)&&f!="constructor"&&a.push(f);return a}var jLe=JE(Jw,"DataView");const _dt=jLe;var $Le=JE(Jw,"Promise");const Cdt=$Le;var zLe=JE(Jw,"Set");const YA=zLe;var qLe=JE(Jw,"WeakMap");const Sdt=qLe;var ZOt="[object Map]",HLe="[object Object]",JOt="[object Promise]",tNt="[object Set]",eNt="[object WeakMap]",nNt="[object DataView]",VLe=ZE(_dt),GLe=ZE(GN),ULe=ZE(Cdt),WLe=ZE(YA),KLe=ZE(Sdt),c9=QE;(_dt&&c9(new _dt(new ArrayBuffer(1)))!=nNt||GN&&c9(new GN)!=ZOt||Cdt&&c9(Cdt.resolve())!=JOt||YA&&c9(new YA)!=tNt||Sdt&&c9(new Sdt)!=eNt)&&(c9=function(i){var a=QE(i),f=a==HLe?i.constructor:void 0,p=f?ZE(f):"";if(p)switch(p){case VLe:return nNt;case GLe:return ZOt;case ULe:return JOt;case WLe:return tNt;case KLe:return eNt}return a});const XA=c9;var YLe="[object Map]",XLe="[object Set]",QLe=Object.prototype,ZLe=QLe.hasOwnProperty;function eP(i){if(i==null)return!0;if(tk(i)&&(Of(i)||typeof i=="string"||typeof i.splice=="function"||RA(i)||mW(i)||BA(i)))return!i.length;var a=XA(i);if(a==YLe||a==XLe)return!i.size;if(vW(i))return!QOt(i).length;for(var f in i)if(ZLe.call(i,f))return!1;return!0}const JLe="graphics-document document";function tMe(i,a){i.attr("role",JLe),a!==""&&i.attr("aria-roledescription",a)}function eMe(i,a,f,p){if(i.insert!==void 0){if(f){const v=`chart-desc-${p}`;i.attr("aria-describedby",v),i.insert("desc",":first-child").attr("id",v).text(f)}if(a){const v=`chart-title-${p}`;i.attr("aria-labelledby",v),i.insert("title",":first-child").attr("id",v).text(a)}}}const rNt=["graph","flowchart","flowchart-v2","flowchart-elk","stateDiagram","stateDiagram-v2"],nMe=5e4,rMe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",iMe="sandbox",sMe="loose",aMe="http://www.w3.org/2000/svg",oMe="http://www.w3.org/1999/xlink",cMe="http://www.w3.org/1999/xhtml",uMe="100%",lMe="100%",hMe="border:0;margin:0;",fMe="margin:0",dMe="allow-top-navigation-by-user-activation allow-popups",gMe='The "iframe" tag is not supported by your browser.',pMe=["foreignobject"],bMe=["dominant-baseline"];async function vMe(i,a){pdt();try{await Edt(i)}catch(f){if(a!=null&&a.suppressErrors)return!1;throw f}return!0}const wMe=function(i){let a=i;return a=a.replace(/style.*:\S*#.*;/g,function(f){return f.substring(0,f.length-1)}),a=a.replace(/classDef.*:\S*#.*;/g,function(f){return f.substring(0,f.length-1)}),a=a.replace(/#\w+;/g,function(f){const p=f.substring(1,f.length-1);return/^\+?\d+$/.test(p)?"fl°°"+p+"¶ß":"fl°"+p+"¶ß"}),a},nP=function(i){return i.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},iNt=(i,a,f=[])=>` +.${i} ${a} { ${f.join(" !important; ")} !important; }`,mMe=(i,a,f={})=>{var v;let p="";if(i.themeCSS!==void 0&&(p+=` +${i.themeCSS}`),i.fontFamily!==void 0&&(p+=` +:root { --mermaid-font-family: ${i.fontFamily}}`),i.altFontFamily!==void 0&&(p+=` +:root { --mermaid-alt-font-family: ${i.altFontFamily}}`),!eP(f)&&rNt.includes(a)){const C=i.htmlLabels||((v=i.flowchart)==null?void 0:v.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const A in f){const P=f[A];eP(P.styles)||C.forEach(F=>{p+=iNt(P.id,F,P.styles)}),eP(P.textStyles)||(p+=iNt(P.id,"tspan",P.textStyles))}}return p},yMe=(i,a,f,p)=>{const v=mMe(i,a,f),m=PSe(a,v,i.themeVariables);return udt(eSe(`${p}{${m}}`),rSe)},xMe=(i="",a,f)=>{let p=i;return!f&&!a&&(p=p.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),p=nP(p),p=p.replace(/
/g,"
"),p},kMe=(i="",a)=>{var v,m;const f=(m=(v=a==null?void 0:a.viewBox)==null?void 0:v.baseVal)!=null&&m.height?a.viewBox.baseVal.height+"px":lMe,p=btoa(''+i+"");return``},sNt=(i,a,f,p,v)=>{const m=i.append("div");m.attr("id",f),p&&m.attr("style",p);const b=m.append("svg").attr("id",a).attr("width","100%").attr("xmlns",aMe);return v&&b.attr("xmlns:xlink",v),b.append("g"),i};function aNt(i,a){return i.append("iframe").attr("id",a).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const EMe=(i,a,f,p)=>{var v,m,b;(v=i.getElementById(a))==null||v.remove(),(m=i.getElementById(f))==null||m.remove(),(b=i.getElementById(p))==null||b.remove()},TMe=async function(i,a,f){var Ct,tt,Pt,pt;pdt(),OW(),YOt(a,{},IW);const p=to.detectInit(a);p&&IW(p);const v=De();Wt.debug(v),a.length>((v==null?void 0:v.maxTextSize)??nMe)&&(a=rMe),a=a.replace(/\r\n?/g,` +`),a=a.replace(/<(\w+)([^>]*)>/g,(Ft,X,Rt)=>"<"+X+Rt.replace(/="([^"]*)"/g,"='$1'")+">");const m="#"+i,b="i"+i,E="#"+b,C="d"+i,A="#"+C;let P=xr("body");const F=v.securityLevel===iMe,j=v.securityLevel===sMe,R=v.fontFamily;if(f!==void 0){if(f&&(f.innerHTML=""),F){const Ft=aNt(xr(f),b);P=xr(Ft.nodes()[0].contentDocument.body),P.node().style.margin=0}else P=xr(f);sNt(P,i,C,`font-family: ${R}`,oMe)}else{if(EMe(document,i,C,b),F){const Ft=aNt(xr("body"),b);P=xr(Ft.nodes()[0].contentDocument.body),P.node().style.margin=0}else P=xr("body");sNt(P,i,C)}a=wMe(a);let H,Y;try{H=await Edt(a)}catch(Ft){H=new XOt("error"),Y=Ft}const rt=P.select(A).node(),J=H.type,it=rt.firstChild,ft=it.firstChild,Tt=rNt.includes(J)?H.renderer.getClasses(a,H):{},kt=yMe(v,J,Tt,m),mt=document.createElement("style");mt.innerHTML=kt,it.insertBefore(mt,ft);try{await H.renderer.draw(a,i,ZIt,H)}catch(Ft){throw SSe.draw(a,i,ZIt),Ft}const ct=P.select(`${A} svg`),yt=(tt=(Ct=H.db).getAccTitle)==null?void 0:tt.call(Ct),st=(pt=(Pt=H.db).getAccDescription)==null?void 0:pt.call(Pt);CMe(J,ct,yt,st),P.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",cMe);let xt=P.select(A).node().innerHTML;if(Wt.debug("config.arrowMarkerAbsolute",v.arrowMarkerAbsolute),xt=xMe(xt,F,u1(v.arrowMarkerAbsolute)),F){const Ft=P.select(A+" svg").node();xt=kMe(xt,Ft)}else j||(xt=eW.sanitize(xt,{ADD_TAGS:pMe,ADD_ATTR:bMe}));if(NLe(),Y)throw Y;const dt=xr(F?E:A).node();return dt&&"remove"in dt&&dt.remove(),{svg:xt,bindFunctions:H.db.bindFunctions}};function _Me(i={}){var f;i!=null&&i.fontFamily&&!((f=i.themeVariables)!=null&&f.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),sSe(i),i!=null&&i.theme&&i.theme in m5?i.themeVariables=m5[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=m5.default.getThemeVariables(i.themeVariables));const a=typeof i=="object"?iSe(i):tOt();zft(a.logLevel),pdt()}function CMe(i,a,f,p){tMe(a,i),eMe(a,f,p,a.attr("id"))}const J1=Object.freeze({render:TMe,parse:vMe,parseDirective:FW,getDiagramFromText:Edt,initialize:_Me,getConfig:De,setConfig:eOt,getSiteConfig:tOt,updateSiteConfig:aSe,reset:()=>{OW()},globalReset:()=>{OW(i9)},defaultConfig:i9});zft(De().logLevel),OW(De());const SMe=async()=>{Wt.debug("Loading registered diagrams");const a=(await Promise.allSettled(Object.entries(OA).map(async([f,{detector:p,loader:v}])=>{if(v)try{gdt(f)}catch{try{const{diagram:b,id:E}=await v();RW(E,b,p)}catch(b){throw Wt.error(`Failed to load external diagram with key ${f}. Removing from detectors.`),delete OA[f],b}}}))).filter(f=>f.status==="rejected");if(a.length>0){Wt.error(`Failed to load ${a.length} external diagrams`);for(const f of a)Wt.error(f);throw new Error(`Failed to load ${a.length} external diagrams`)}},AMe=(i,a,f)=>{Wt.warn(i),qIt(i)?(f&&f(i.str,i.hash),a.push({...i,message:i.str,error:i})):(f&&f(i),i instanceof Error&&a.push({str:i.message,message:i.message,hash:i.name,error:i}))},oNt=async function(i={querySelector:".mermaid"}){try{await LMe(i)}catch(a){if(qIt(a)&&Wt.error(a.str),Pb.parseError&&Pb.parseError(a),!i.suppressErrors)throw Wt.error("Use the suppressErrors option to suppress these errors"),a}},LMe=async function({postRenderCallback:i,querySelector:a,nodes:f}={querySelector:".mermaid"}){const p=J1.getConfig();Wt.debug(`${i?"":"No "}Callback function found`);let v;if(f)v=f;else if(a)v=document.querySelectorAll(a);else throw new Error("Nodes and querySelector are both undefined");Wt.debug(`Found ${v.length} diagrams`),(p==null?void 0:p.startOnLoad)!==void 0&&(Wt.debug("Start On Load: "+(p==null?void 0:p.startOnLoad)),J1.updateSiteConfig({startOnLoad:p==null?void 0:p.startOnLoad}));const m=new to.initIdGenerator(p.deterministicIds,p.deterministicIDSeed);let b;const E=[];for(const C of Array.from(v)){Wt.info("Rendering diagram: "+C.id);/*! Check if previously processed */if(C.getAttribute("data-processed"))continue;C.setAttribute("data-processed","true");const A=`mermaid-${m.next()}`;b=C.innerHTML,b=wA(to.entityDecode(b)).trim().replace(//gi,"
");const P=to.detectInit(b);P&&Wt.debug("Detected early reinit: ",P);try{const{svg:F,bindFunctions:j}=await hNt(A,b,C);C.innerHTML=F,i&&await i(A),j&&j(C)}catch(F){AMe(F,E,Pb.parseError)}}if(E.length>0)throw E[0]},cNt=function(i){J1.initialize(i)},MMe=async function(i,a,f){Wt.warn("mermaid.init is deprecated. Please use run instead."),i&&cNt(i);const p={postRenderCallback:f,querySelector:".mermaid"};typeof a=="string"?p.querySelector=a:a&&(a instanceof HTMLElement?p.nodes=[a]:p.nodes=a),await oNt(p)},DMe=async(i,{lazyLoad:a=!0}={})=>{iIt(...i),a===!1&&await SMe()},uNt=function(){if(Pb.startOnLoad){const{startOnLoad:i}=J1.getConfig();i&&Pb.run().catch(a=>Wt.error("Mermaid failed to initialize",a))}};if(typeof document<"u"){/*! + * Wait for document loaded before starting the execution + */window.addEventListener("load",uNt,!1)}const IMe=function(i){Pb.parseError=i},HW=[];let Adt=!1;const lNt=async()=>{if(!Adt){for(Adt=!0;HW.length>0;){const i=HW.shift();if(i)try{await i()}catch(a){Wt.error("Error executing queue",a)}}Adt=!1}},OMe=async(i,a)=>new Promise((f,p)=>{const v=()=>new Promise((m,b)=>{J1.parse(i,a).then(E=>{m(E),f(E)},E=>{var C;Wt.error("Error parsing",E),(C=Pb.parseError)==null||C.call(Pb,E),b(E),p(E)})});HW.push(v),lNt().catch(p)}),hNt=(i,a,f)=>new Promise((p,v)=>{const m=()=>new Promise((b,E)=>{J1.render(i,a,f).then(C=>{b(C),p(C)},C=>{var A;Wt.error("Error parsing",C),(A=Pb.parseError)==null||A.call(Pb,C),E(C),v(C)})});HW.push(m),lNt().catch(v)}),Pb={startOnLoad:!0,mermaidAPI:J1,parse:OMe,render:hNt,init:MMe,run:oNt,registerExternalDiagrams:DMe,initialize:cNt,parseError:void 0,contentLoaded:uNt,setParseErrorHandler:IMe,detectType:hW};var VW=function(){var i=function(Ga,_r,qr,Oi){for(qr=qr||{},Oi=Ga.length;Oi--;qr[Ga[Oi]]=_r);return qr},a=[1,6],f=[1,7],p=[1,8],v=[1,9],m=[1,16],b=[1,11],E=[1,12],C=[1,13],A=[1,14],P=[1,15],F=[1,27],j=[1,33],R=[1,34],H=[1,35],Y=[1,36],rt=[1,37],J=[1,72],it=[1,73],ft=[1,74],Tt=[1,75],kt=[1,76],mt=[1,77],ct=[1,78],yt=[1,38],st=[1,39],xt=[1,40],ht=[1,41],dt=[1,42],Ct=[1,43],tt=[1,44],Pt=[1,45],pt=[1,46],Ft=[1,47],X=[1,48],Rt=[1,49],Bt=[1,50],vt=[1,51],Ot=[1,52],Vt=[1,53],qe=[1,54],_n=[1,55],Te=[1,56],Wn=[1,57],Ae=[1,59],ne=[1,60],ke=[1,61],Ve=[1,62],Ee=[1,63],He=[1,64],Ce=[1,65],$e=[1,66],ye=[1,67],fn=[1,68],Yt=[1,69],Mi=[24,52],qt=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],zi=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Se=[1,94],ki=[1,95],Ri=[1,96],pi=[1,97],bi=[15,24,52],dn=[7,8,9,10,18,22,25,26,27,28],Nn=[15,24,43,52],Wr=[15,24,43,52,86,87,89,90],Li=[15,43],is=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Ts={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(_r,qr,Oi,gr,Js,Vn,Xc){var Er=Vn.length-1;switch(Js){case 4:gr.setDirection("TB");break;case 5:gr.setDirection("BT");break;case 6:gr.setDirection("RL");break;case 7:gr.setDirection("LR");break;case 11:gr.parseDirective("%%{","open_directive");break;case 12:break;case 13:Vn[Er]=Vn[Er].trim().replace(/'/g,'"'),gr.parseDirective(Vn[Er],"arg_directive");break;case 14:gr.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:gr.setC4Type(Vn[Er-3]);break;case 26:gr.setTitle(Vn[Er].substring(6)),this.$=Vn[Er].substring(6);break;case 27:gr.setAccDescription(Vn[Er].substring(15)),this.$=Vn[Er].substring(15);break;case 28:this.$=Vn[Er].trim(),gr.setTitle(this.$);break;case 29:case 30:this.$=Vn[Er].trim(),gr.setAccDescription(this.$);break;case 35:case 36:Vn[Er].splice(2,0,"ENTERPRISE"),gr.addPersonOrSystemBoundary(...Vn[Er]),this.$=Vn[Er];break;case 37:gr.addPersonOrSystemBoundary(...Vn[Er]),this.$=Vn[Er];break;case 38:Vn[Er].splice(2,0,"CONTAINER"),gr.addContainerBoundary(...Vn[Er]),this.$=Vn[Er];break;case 39:gr.addDeploymentNode("node",...Vn[Er]),this.$=Vn[Er];break;case 40:gr.addDeploymentNode("nodeL",...Vn[Er]),this.$=Vn[Er];break;case 41:gr.addDeploymentNode("nodeR",...Vn[Er]),this.$=Vn[Er];break;case 42:gr.popBoundaryParseStack();break;case 46:gr.addPersonOrSystem("person",...Vn[Er]),this.$=Vn[Er];break;case 47:gr.addPersonOrSystem("external_person",...Vn[Er]),this.$=Vn[Er];break;case 48:gr.addPersonOrSystem("system",...Vn[Er]),this.$=Vn[Er];break;case 49:gr.addPersonOrSystem("system_db",...Vn[Er]),this.$=Vn[Er];break;case 50:gr.addPersonOrSystem("system_queue",...Vn[Er]),this.$=Vn[Er];break;case 51:gr.addPersonOrSystem("external_system",...Vn[Er]),this.$=Vn[Er];break;case 52:gr.addPersonOrSystem("external_system_db",...Vn[Er]),this.$=Vn[Er];break;case 53:gr.addPersonOrSystem("external_system_queue",...Vn[Er]),this.$=Vn[Er];break;case 54:gr.addContainer("container",...Vn[Er]),this.$=Vn[Er];break;case 55:gr.addContainer("container_db",...Vn[Er]),this.$=Vn[Er];break;case 56:gr.addContainer("container_queue",...Vn[Er]),this.$=Vn[Er];break;case 57:gr.addContainer("external_container",...Vn[Er]),this.$=Vn[Er];break;case 58:gr.addContainer("external_container_db",...Vn[Er]),this.$=Vn[Er];break;case 59:gr.addContainer("external_container_queue",...Vn[Er]),this.$=Vn[Er];break;case 60:gr.addComponent("component",...Vn[Er]),this.$=Vn[Er];break;case 61:gr.addComponent("component_db",...Vn[Er]),this.$=Vn[Er];break;case 62:gr.addComponent("component_queue",...Vn[Er]),this.$=Vn[Er];break;case 63:gr.addComponent("external_component",...Vn[Er]),this.$=Vn[Er];break;case 64:gr.addComponent("external_component_db",...Vn[Er]),this.$=Vn[Er];break;case 65:gr.addComponent("external_component_queue",...Vn[Er]),this.$=Vn[Er];break;case 67:gr.addRel("rel",...Vn[Er]),this.$=Vn[Er];break;case 68:gr.addRel("birel",...Vn[Er]),this.$=Vn[Er];break;case 69:gr.addRel("rel_u",...Vn[Er]),this.$=Vn[Er];break;case 70:gr.addRel("rel_d",...Vn[Er]),this.$=Vn[Er];break;case 71:gr.addRel("rel_l",...Vn[Er]),this.$=Vn[Er];break;case 72:gr.addRel("rel_r",...Vn[Er]),this.$=Vn[Er];break;case 73:gr.addRel("rel_b",...Vn[Er]),this.$=Vn[Er];break;case 74:Vn[Er].splice(0,1),gr.addRel("rel",...Vn[Er]),this.$=Vn[Er];break;case 75:gr.updateElStyle("update_el_style",...Vn[Er]),this.$=Vn[Er];break;case 76:gr.updateRelStyle("update_rel_style",...Vn[Er]),this.$=Vn[Er];break;case 77:gr.updateLayoutConfig("update_layout_config",...Vn[Er]),this.$=Vn[Er];break;case 78:this.$=[Vn[Er]];break;case 79:Vn[Er].unshift(Vn[Er-1]),this.$=Vn[Er];break;case 80:case 82:this.$=Vn[Er].trim();break;case 81:let Mc={};Mc[Vn[Er-1].trim()]=Vn[Er].trim(),this.$=Mc;break;case 83:this.$="";break}},table:[{3:1,4:2,5:3,6:4,7:a,8:f,9:p,10:v,11:5,12:10,18:m,22:b,25:E,26:C,27:A,28:P},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:a,8:f,9:p,10:v,11:5,12:10,18:m,22:b,25:E,26:C,27:A,28:P},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:F},i([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:79,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:80,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:81,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:82,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},i(Mi,[2,20],{53:32,39:58,40:70,42:71,30:87,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt}),i(Mi,[2,21]),i(qt,[2,23],{15:[1,88]}),i(Mi,[2,43],{15:[1,89]}),i(zi,[2,26]),i(zi,[2,27]),{35:[1,90]},{37:[1,91]},i(zi,[2,30]),{45:92,85:93,86:Se,87:ki,89:Ri,90:pi},{45:98,85:93,86:Se,87:ki,89:Ri,90:pi},{45:99,85:93,86:Se,87:ki,89:Ri,90:pi},{45:100,85:93,86:Se,87:ki,89:Ri,90:pi},{45:101,85:93,86:Se,87:ki,89:Ri,90:pi},{45:102,85:93,86:Se,87:ki,89:Ri,90:pi},{45:103,85:93,86:Se,87:ki,89:Ri,90:pi},{45:104,85:93,86:Se,87:ki,89:Ri,90:pi},{45:105,85:93,86:Se,87:ki,89:Ri,90:pi},{45:106,85:93,86:Se,87:ki,89:Ri,90:pi},{45:107,85:93,86:Se,87:ki,89:Ri,90:pi},{45:108,85:93,86:Se,87:ki,89:Ri,90:pi},{45:109,85:93,86:Se,87:ki,89:Ri,90:pi},{45:110,85:93,86:Se,87:ki,89:Ri,90:pi},{45:111,85:93,86:Se,87:ki,89:Ri,90:pi},{45:112,85:93,86:Se,87:ki,89:Ri,90:pi},{45:113,85:93,86:Se,87:ki,89:Ri,90:pi},{45:114,85:93,86:Se,87:ki,89:Ri,90:pi},{45:115,85:93,86:Se,87:ki,89:Ri,90:pi},{45:116,85:93,86:Se,87:ki,89:Ri,90:pi},i(bi,[2,66]),{45:117,85:93,86:Se,87:ki,89:Ri,90:pi},{45:118,85:93,86:Se,87:ki,89:Ri,90:pi},{45:119,85:93,86:Se,87:ki,89:Ri,90:pi},{45:120,85:93,86:Se,87:ki,89:Ri,90:pi},{45:121,85:93,86:Se,87:ki,89:Ri,90:pi},{45:122,85:93,86:Se,87:ki,89:Ri,90:pi},{45:123,85:93,86:Se,87:ki,89:Ri,90:pi},{45:124,85:93,86:Se,87:ki,89:Ri,90:pi},{45:125,85:93,86:Se,87:ki,89:Ri,90:pi},{45:126,85:93,86:Se,87:ki,89:Ri,90:pi},{45:127,85:93,86:Se,87:ki,89:Ri,90:pi},{30:128,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{15:[1,130],43:[1,129]},{45:131,85:93,86:Se,87:ki,89:Ri,90:pi},{45:132,85:93,86:Se,87:ki,89:Ri,90:pi},{45:133,85:93,86:Se,87:ki,89:Ri,90:pi},{45:134,85:93,86:Se,87:ki,89:Ri,90:pi},{45:135,85:93,86:Se,87:ki,89:Ri,90:pi},{45:136,85:93,86:Se,87:ki,89:Ri,90:pi},{45:137,85:93,86:Se,87:ki,89:Ri,90:pi},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},i(dn,[2,9]),{14:142,21:F},{21:[2,13]},{1:[2,15]},i(Mi,[2,22]),i(qt,[2,24],{31:31,29:143,32:j,33:R,34:H,36:Y,38:rt}),i(Mi,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:j,33:R,34:H,36:Y,38:rt,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt}),i(zi,[2,28]),i(zi,[2,29]),i(bi,[2,46]),i(Nn,[2,78],{85:93,45:145,86:Se,87:ki,89:Ri,90:pi}),i(Wr,[2,80]),{88:[1,146]},i(Wr,[2,82]),i(Wr,[2,83]),i(bi,[2,47]),i(bi,[2,48]),i(bi,[2,49]),i(bi,[2,50]),i(bi,[2,51]),i(bi,[2,52]),i(bi,[2,53]),i(bi,[2,54]),i(bi,[2,55]),i(bi,[2,56]),i(bi,[2,57]),i(bi,[2,58]),i(bi,[2,59]),i(bi,[2,60]),i(bi,[2,61]),i(bi,[2,62]),i(bi,[2,63]),i(bi,[2,64]),i(bi,[2,65]),i(bi,[2,67]),i(bi,[2,68]),i(bi,[2,69]),i(bi,[2,70]),i(bi,[2,71]),i(bi,[2,72]),i(bi,[2,73]),i(bi,[2,74]),i(bi,[2,75]),i(bi,[2,76]),i(bi,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},i(Li,[2,35]),i(Li,[2,36]),i(Li,[2,37]),i(Li,[2,38]),i(Li,[2,39]),i(Li,[2,40]),i(Li,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},i(qt,[2,25]),i(Mi,[2,45]),i(Nn,[2,79]),i(Wr,[2,81]),i(bi,[2,31]),i(bi,[2,42]),i(is,[2,32]),i(is,[2,33],{15:[1,152]}),i(dn,[2,10]),i(is,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(_r,qr){if(qr.recoverable)this.trace(_r);else{var Oi=new Error(_r);throw Oi.hash=qr,Oi}},parse:function(_r){var qr=this,Oi=[0],gr=[],Js=[null],Vn=[],Xc=this.table,Er="",Mc=0,bp=0,fm=2,T0=1,Fd=Vn.slice.call(arguments,1),No=Object.create(this.lexer),ta={yy:{}};for(var bu in this.yy)Object.prototype.hasOwnProperty.call(this.yy,bu)&&(ta.yy[bu]=this.yy[bu]);No.setInput(_r,ta.yy),ta.yy.lexer=No,ta.yy.parser=this,typeof No.yylloc>"u"&&(No.yylloc={});var Pu=No.yylloc;Vn.push(Pu);var lo=No.options&&No.options.ranges;typeof ta.yy.parseError=="function"?this.parseError=ta.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function mo(){var ni;return ni=gr.pop()||No.lex()||T0,typeof ni!="number"&&(ni instanceof Array&&(gr=ni,ni=gr.pop()),ni=qr.symbols_[ni]||ni),ni}for(var Os,Tl,Fu,zo,nd={},sf,ll,Vi,Ke;;){if(Tl=Oi[Oi.length-1],this.defaultActions[Tl]?Fu=this.defaultActions[Tl]:((Os===null||typeof Os>"u")&&(Os=mo()),Fu=Xc[Tl]&&Xc[Tl][Os]),typeof Fu>"u"||!Fu.length||!Fu[0]){var kr="";Ke=[];for(sf in Xc[Tl])this.terminals_[sf]&&sf>fm&&Ke.push("'"+this.terminals_[sf]+"'");No.showPosition?kr="Parse error on line "+(Mc+1)+`: +`+No.showPosition()+` +Expecting `+Ke.join(", ")+", got '"+(this.terminals_[Os]||Os)+"'":kr="Parse error on line "+(Mc+1)+": Unexpected "+(Os==T0?"end of input":"'"+(this.terminals_[Os]||Os)+"'"),this.parseError(kr,{text:No.match,token:this.terminals_[Os]||Os,line:No.yylineno,loc:Pu,expected:Ke})}if(Fu[0]instanceof Array&&Fu.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Tl+", token: "+Os);switch(Fu[0]){case 1:Oi.push(Os),Js.push(No.yytext),Vn.push(No.yylloc),Oi.push(Fu[1]),Os=null,bp=No.yyleng,Er=No.yytext,Mc=No.yylineno,Pu=No.yylloc;break;case 2:if(ll=this.productions_[Fu[1]][1],nd.$=Js[Js.length-ll],nd._$={first_line:Vn[Vn.length-(ll||1)].first_line,last_line:Vn[Vn.length-1].last_line,first_column:Vn[Vn.length-(ll||1)].first_column,last_column:Vn[Vn.length-1].last_column},lo&&(nd._$.range=[Vn[Vn.length-(ll||1)].range[0],Vn[Vn.length-1].range[1]]),zo=this.performAction.apply(nd,[Er,bp,Mc,ta.yy,Fu[1],Js,Vn].concat(Fd)),typeof zo<"u")return zo;ll&&(Oi=Oi.slice(0,-1*ll*2),Js=Js.slice(0,-1*ll),Vn=Vn.slice(0,-1*ll)),Oi.push(this.productions_[Fu[1]][0]),Js.push(nd.$),Vn.push(nd._$),Vi=Xc[Oi[Oi.length-2]][Oi[Oi.length-1]],Oi.push(Vi);break;case 3:return!0}}return!0}},Aa=function(){var Ga={EOF:1,parseError:function(qr,Oi){if(this.yy.parser)this.yy.parser.parseError(qr,Oi);else throw new Error(qr)},setInput:function(_r,qr){return this.yy=qr||this.yy||{},this._input=_r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var _r=this._input[0];this.yytext+=_r,this.yyleng++,this.offset++,this.match+=_r,this.matched+=_r;var qr=_r.match(/(?:\r\n?|\n).*/g);return qr?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_r},unput:function(_r){var qr=_r.length,Oi=_r.split(/(?:\r\n?|\n)/g);this._input=_r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-qr),this.offset-=qr;var gr=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Oi.length-1&&(this.yylineno-=Oi.length-1);var Js=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Oi?(Oi.length===gr.length?this.yylloc.first_column:0)+gr[gr.length-Oi.length].length-Oi[0].length:this.yylloc.first_column-qr},this.options.ranges&&(this.yylloc.range=[Js[0],Js[0]+this.yyleng-qr]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(_r){this.unput(this.match.slice(_r))},pastInput:function(){var _r=this.matched.substr(0,this.matched.length-this.match.length);return(_r.length>20?"...":"")+_r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var _r=this.match;return _r.length<20&&(_r+=this._input.substr(0,20-_r.length)),(_r.substr(0,20)+(_r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var _r=this.pastInput(),qr=new Array(_r.length+1).join("-");return _r+this.upcomingInput()+` +`+qr+"^"},test_match:function(_r,qr){var Oi,gr,Js;if(this.options.backtrack_lexer&&(Js={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Js.yylloc.range=this.yylloc.range.slice(0))),gr=_r[0].match(/(?:\r\n?|\n).*/g),gr&&(this.yylineno+=gr.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:gr?gr[gr.length-1].length-gr[gr.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_r[0].length},this.yytext+=_r[0],this.match+=_r[0],this.matches=_r,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(_r[0].length),this.matched+=_r[0],Oi=this.performAction.call(this,this.yy,this,qr,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Oi)return Oi;if(this._backtrack){for(var Vn in Js)this[Vn]=Js[Vn];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _r,qr,Oi,gr;this._more||(this.yytext="",this.match="");for(var Js=this._currentRules(),Vn=0;Vnqr[0].length)){if(qr=Oi,gr=Vn,this.options.backtrack_lexer){if(_r=this.test_match(Oi,Js[Vn]),_r!==!1)return _r;if(this._backtrack){qr=!1;continue}else return!1}else if(!this.options.flex)break}return qr?(_r=this.test_match(qr,Js[gr]),_r!==!1?_r:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var qr=this.next();return qr||this.lex()},begin:function(qr){this.conditionStack.push(qr)},popState:function(){var qr=this.conditionStack.length-1;return qr>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(qr){return qr=this.conditionStack.length-1-Math.abs(qr||0),qr>=0?this.conditionStack[qr]:"INITIAL"},pushState:function(qr){this.begin(qr)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(qr,Oi,gr,Js){switch(gr){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:break;case 19:c;break;case 20:return 15;case 21:break;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),55;case 28:return this.begin("person"),54;case 29:return this.begin("system_ext_queue"),61;case 30:return this.begin("system_ext_db"),60;case 31:return this.begin("system_ext"),59;case 32:return this.begin("system_queue"),58;case 33:return this.begin("system_db"),57;case 34:return this.begin("system"),56;case 35:return this.begin("boundary"),47;case 36:return this.begin("enterprise_boundary"),44;case 37:return this.begin("system_boundary"),46;case 38:return this.begin("container_ext_queue"),67;case 39:return this.begin("container_ext_db"),66;case 40:return this.begin("container_ext"),65;case 41:return this.begin("container_queue"),64;case 42:return this.begin("container_db"),63;case 43:return this.begin("container"),62;case 44:return this.begin("container_boundary"),48;case 45:return this.begin("component_ext_queue"),73;case 46:return this.begin("component_ext_db"),72;case 47:return this.begin("component_ext"),71;case 48:return this.begin("component_queue"),70;case 49:return this.begin("component_db"),69;case 50:return this.begin("component"),68;case 51:return this.begin("node"),49;case 52:return this.begin("node"),49;case 53:return this.begin("node_l"),50;case 54:return this.begin("node_r"),51;case 55:return this.begin("rel"),74;case 56:return this.begin("birel"),75;case 57:return this.begin("rel_u"),76;case 58:return this.begin("rel_u"),76;case 59:return this.begin("rel_d"),77;case 60:return this.begin("rel_d"),77;case 61:return this.begin("rel_l"),78;case 62:return this.begin("rel_l"),78;case 63:return this.begin("rel_r"),79;case 64:return this.begin("rel_r"),79;case 65:return this.begin("rel_b"),80;case 66:return this.begin("rel_index"),81;case 67:return this.begin("update_el_style"),82;case 68:return this.begin("update_rel_style"),83;case 69:return this.begin("update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:this.begin("attribute");break;case 73:this.popState(),this.popState();break;case 74:return 90;case 75:break;case 76:return 90;case 77:this.begin("string");break;case 78:this.popState();break;case 79:return"STR";case 80:this.begin("string_kv");break;case 81:return this.begin("string_kv_key"),"STR_KEY";case 82:this.popState(),this.begin("string_kv_value");break;case 83:return"STR_VALUE";case 84:this.popState(),this.popState();break;case 85:return"STR";case 86:return"LBRACE";case 87:return"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},string_kv_value:{rules:[83,84],inclusive:!1},string_kv_key:{rules:[82],inclusive:!1},string_kv:{rules:[81],inclusive:!1},string:{rules:[78,79],inclusive:!1},attribute:{rules:[73,74,75,76,77,80,85],inclusive:!1},update_layout_config:{rules:[70,71,72,73],inclusive:!1},update_rel_style:{rules:[70,71,72,73],inclusive:!1},update_el_style:{rules:[70,71,72,73],inclusive:!1},rel_b:{rules:[70,71,72,73],inclusive:!1},rel_r:{rules:[70,71,72,73],inclusive:!1},rel_l:{rules:[70,71,72,73],inclusive:!1},rel_d:{rules:[70,71,72,73],inclusive:!1},rel_u:{rules:[70,71,72,73],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[70,71,72,73],inclusive:!1},node_r:{rules:[70,71,72,73],inclusive:!1},node_l:{rules:[70,71,72,73],inclusive:!1},node:{rules:[70,71,72,73],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[70,71,72,73],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[70,71,72,73],inclusive:!1},component_ext:{rules:[70,71,72,73],inclusive:!1},component_queue:{rules:[70,71,72,73],inclusive:!1},component_db:{rules:[70,71,72,73],inclusive:!1},component:{rules:[70,71,72,73],inclusive:!1},container_boundary:{rules:[70,71,72,73],inclusive:!1},container_ext_queue:{rules:[70,71,72,73],inclusive:!1},container_ext_db:{rules:[70,71,72,73],inclusive:!1},container_ext:{rules:[70,71,72,73],inclusive:!1},container_queue:{rules:[70,71,72,73],inclusive:!1},container_db:{rules:[70,71,72,73],inclusive:!1},container:{rules:[70,71,72,73],inclusive:!1},birel:{rules:[70,71,72,73],inclusive:!1},system_boundary:{rules:[70,71,72,73],inclusive:!1},enterprise_boundary:{rules:[70,71,72,73],inclusive:!1},boundary:{rules:[70,71,72,73],inclusive:!1},system_ext_queue:{rules:[70,71,72,73],inclusive:!1},system_ext_db:{rules:[70,71,72,73],inclusive:!1},system_ext:{rules:[70,71,72,73],inclusive:!1},system_queue:{rules:[70,71,72,73],inclusive:!1},system_db:{rules:[70,71,72,73],inclusive:!1},system:{rules:[70,71,72,73],inclusive:!1},person_ext:{rules:[70,71,72,73],inclusive:!1},person:{rules:[70,71,72,73],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,86,87,88,89,90],inclusive:!0}}};return Ga}();Ts.lexer=Aa;function Xi(){this.yy={}}return Xi.prototype=Ts,Ts.Parser=Xi,new Xi}();VW.parser=VW;const NMe=VW;let rm=[],ik=[""],dg="global",im="",d3=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],rP=[],Ldt="",Mdt=!1,GW=4,UW=2;var fNt;const PMe=function(){return fNt},FMe=function(i){fNt=v0(i,De())},BMe=function(i,a,f){J1.parseDirective(this,i,a,f)},RMe=function(i,a,f,p,v,m,b,E,C){if(i==null||a===void 0||a===null||f===void 0||f===null||p===void 0||p===null)return;let A={};const P=rP.find(F=>F.from===a&&F.to===f);if(P?A=P:rP.push(A),A.type=i,A.from=a,A.to=f,A.label={text:p},v==null)A.techn={text:""};else if(typeof v=="object"){let[F,j]=Object.entries(v)[0];A[F]={text:j}}else A.techn={text:v};if(m==null)A.descr={text:""};else if(typeof m=="object"){let[F,j]=Object.entries(m)[0];A[F]={text:j}}else A.descr={text:m};if(typeof b=="object"){let[F,j]=Object.entries(b)[0];A[F]=j}else A.sprite=b;if(typeof E=="object"){let[F,j]=Object.entries(E)[0];A[F]=j}else A.tags=E;if(typeof C=="object"){let[F,j]=Object.entries(C)[0];A[F]=j}else A.link=C;A.wrap=sk()},jMe=function(i,a,f,p,v,m,b){if(a===null||f===null)return;let E={};const C=rm.find(A=>A.alias===a);if(C&&a===C.alias?E=C:(E.alias=a,rm.push(E)),f==null?E.label={text:""}:E.label={text:f},p==null)E.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];E[A]={text:P}}else E.descr={text:p};if(typeof v=="object"){let[A,P]=Object.entries(v)[0];E[A]=P}else E.sprite=v;if(typeof m=="object"){let[A,P]=Object.entries(m)[0];E[A]=P}else E.tags=m;if(typeof b=="object"){let[A,P]=Object.entries(b)[0];E[A]=P}else E.link=b;E.typeC4Shape={text:i},E.parentBoundary=dg,E.wrap=sk()},$Me=function(i,a,f,p,v,m,b,E){if(a===null||f===null)return;let C={};const A=rm.find(P=>P.alias===a);if(A&&a===A.alias?C=A:(C.alias=a,rm.push(C)),f==null?C.label={text:""}:C.label={text:f},p==null)C.techn={text:""};else if(typeof p=="object"){let[P,F]=Object.entries(p)[0];C[P]={text:F}}else C.techn={text:p};if(v==null)C.descr={text:""};else if(typeof v=="object"){let[P,F]=Object.entries(v)[0];C[P]={text:F}}else C.descr={text:v};if(typeof m=="object"){let[P,F]=Object.entries(m)[0];C[P]=F}else C.sprite=m;if(typeof b=="object"){let[P,F]=Object.entries(b)[0];C[P]=F}else C.tags=b;if(typeof E=="object"){let[P,F]=Object.entries(E)[0];C[P]=F}else C.link=E;C.wrap=sk(),C.typeC4Shape={text:i},C.parentBoundary=dg},zMe=function(i,a,f,p,v,m,b,E){if(a===null||f===null)return;let C={};const A=rm.find(P=>P.alias===a);if(A&&a===A.alias?C=A:(C.alias=a,rm.push(C)),f==null?C.label={text:""}:C.label={text:f},p==null)C.techn={text:""};else if(typeof p=="object"){let[P,F]=Object.entries(p)[0];C[P]={text:F}}else C.techn={text:p};if(v==null)C.descr={text:""};else if(typeof v=="object"){let[P,F]=Object.entries(v)[0];C[P]={text:F}}else C.descr={text:v};if(typeof m=="object"){let[P,F]=Object.entries(m)[0];C[P]=F}else C.sprite=m;if(typeof b=="object"){let[P,F]=Object.entries(b)[0];C[P]=F}else C.tags=b;if(typeof E=="object"){let[P,F]=Object.entries(E)[0];C[P]=F}else C.link=E;C.wrap=sk(),C.typeC4Shape={text:i},C.parentBoundary=dg},qMe=function(i,a,f,p,v){if(i===null||a===null)return;let m={};const b=d3.find(E=>E.alias===i);if(b&&i===b.alias?m=b:(m.alias=i,d3.push(m)),a==null?m.label={text:""}:m.label={text:a},f==null)m.type={text:"system"};else if(typeof f=="object"){let[E,C]=Object.entries(f)[0];m[E]={text:C}}else m.type={text:f};if(typeof p=="object"){let[E,C]=Object.entries(p)[0];m[E]=C}else m.tags=p;if(typeof v=="object"){let[E,C]=Object.entries(v)[0];m[E]=C}else m.link=v;m.parentBoundary=dg,m.wrap=sk(),im=dg,dg=i,ik.push(im)},HMe=function(i,a,f,p,v){if(i===null||a===null)return;let m={};const b=d3.find(E=>E.alias===i);if(b&&i===b.alias?m=b:(m.alias=i,d3.push(m)),a==null?m.label={text:""}:m.label={text:a},f==null)m.type={text:"container"};else if(typeof f=="object"){let[E,C]=Object.entries(f)[0];m[E]={text:C}}else m.type={text:f};if(typeof p=="object"){let[E,C]=Object.entries(p)[0];m[E]=C}else m.tags=p;if(typeof v=="object"){let[E,C]=Object.entries(v)[0];m[E]=C}else m.link=v;m.parentBoundary=dg,m.wrap=sk(),im=dg,dg=i,ik.push(im)},VMe=function(i,a,f,p,v,m,b,E){if(a===null||f===null)return;let C={};const A=d3.find(P=>P.alias===a);if(A&&a===A.alias?C=A:(C.alias=a,d3.push(C)),f==null?C.label={text:""}:C.label={text:f},p==null)C.type={text:"node"};else if(typeof p=="object"){let[P,F]=Object.entries(p)[0];C[P]={text:F}}else C.type={text:p};if(v==null)C.descr={text:""};else if(typeof v=="object"){let[P,F]=Object.entries(v)[0];C[P]={text:F}}else C.descr={text:v};if(typeof b=="object"){let[P,F]=Object.entries(b)[0];C[P]=F}else C.tags=b;if(typeof E=="object"){let[P,F]=Object.entries(E)[0];C[P]=F}else C.link=E;C.nodeType=i,C.parentBoundary=dg,C.wrap=sk(),im=dg,dg=a,ik.push(im)},GMe=function(){dg=im,ik.pop(),im=ik.pop(),ik.push(im)},UMe=function(i,a,f,p,v,m,b,E,C,A,P){let F=rm.find(j=>j.alias===a);if(!(F===void 0&&(F=d3.find(j=>j.alias===a),F===void 0))){if(f!=null)if(typeof f=="object"){let[j,R]=Object.entries(f)[0];F[j]=R}else F.bgColor=f;if(p!=null)if(typeof p=="object"){let[j,R]=Object.entries(p)[0];F[j]=R}else F.fontColor=p;if(v!=null)if(typeof v=="object"){let[j,R]=Object.entries(v)[0];F[j]=R}else F.borderColor=v;if(m!=null)if(typeof m=="object"){let[j,R]=Object.entries(m)[0];F[j]=R}else F.shadowing=m;if(b!=null)if(typeof b=="object"){let[j,R]=Object.entries(b)[0];F[j]=R}else F.shape=b;if(E!=null)if(typeof E=="object"){let[j,R]=Object.entries(E)[0];F[j]=R}else F.sprite=E;if(C!=null)if(typeof C=="object"){let[j,R]=Object.entries(C)[0];F[j]=R}else F.techn=C;if(A!=null)if(typeof A=="object"){let[j,R]=Object.entries(A)[0];F[j]=R}else F.legendText=A;if(P!=null)if(typeof P=="object"){let[j,R]=Object.entries(P)[0];F[j]=R}else F.legendSprite=P}},WMe=function(i,a,f,p,v,m,b){const E=rP.find(C=>C.from===a&&C.to===f);if(E!==void 0){if(p!=null)if(typeof p=="object"){let[C,A]=Object.entries(p)[0];E[C]=A}else E.textColor=p;if(v!=null)if(typeof v=="object"){let[C,A]=Object.entries(v)[0];E[C]=A}else E.lineColor=v;if(m!=null)if(typeof m=="object"){let[C,A]=Object.entries(m)[0];E[C]=parseInt(A)}else E.offsetX=parseInt(m);if(b!=null)if(typeof b=="object"){let[C,A]=Object.entries(b)[0];E[C]=parseInt(A)}else E.offsetY=parseInt(b)}},KMe=function(i,a,f){let p=GW,v=UW;if(typeof a=="object"){const m=Object.values(a)[0];p=parseInt(m)}else p=parseInt(a);if(typeof f=="object"){const m=Object.values(f)[0];v=parseInt(m)}else v=parseInt(f);p>=1&&(GW=p),v>=1&&(UW=v)},YMe=function(){return GW},XMe=function(){return UW},QMe=function(){return dg},ZMe=function(){return im},dNt=function(i){return i==null?rm:rm.filter(a=>a.parentBoundary===i)},JMe=function(i){return rm.find(a=>a.alias===i)},tDe=function(i){return Object.keys(dNt(i))},eDe=function(i){return i==null?d3:d3.filter(a=>a.parentBoundary===i)},nDe=function(){return rP},rDe=function(){return Ldt},iDe=function(i){Mdt=i},sk=function(){return Mdt},gNt={addPersonOrSystem:jMe,addPersonOrSystemBoundary:qMe,addContainer:$Me,addContainerBoundary:HMe,addComponent:zMe,addDeploymentNode:VMe,popBoundaryParseStack:GMe,addRel:RMe,updateElStyle:UMe,updateRelStyle:WMe,updateLayoutConfig:KMe,autoWrap:sk,setWrap:iDe,getC4ShapeArray:dNt,getC4Shape:JMe,getC4ShapeKeys:tDe,getBoundarys:eDe,getCurrentBoundaryParse:QMe,getParentBoundaryParse:ZMe,getRels:nDe,getTitle:rDe,getC4Type:PMe,getC4ShapeInRow:YMe,getC4BoundaryInRow:XMe,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,parseDirective:BMe,getConfig:()=>De().c4,clear:function(){rm=[],d3=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],im="",dg="global",ik=[""],rP=[],ik=[""],Ldt="",Mdt=!1,GW=4,UW=2},LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(i){Ldt=v0(i,De())},setC4Type:FMe},WW=(i,a)=>{const f=i.append("rect");if(f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),a.rx!==void 0&&f.attr("rx",a.rx),a.ry!==void 0&&f.attr("ry",a.ry),a.attrs!==void 0)for(const p in a.attrs)f.attr(p,a.attrs[p]);return a.class!==void 0&&f.attr("class",a.class),f},pNt=(i,a)=>{const f={x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,stroke:a.stroke,class:"rect"};WW(i,f).lower()},sDe=(i,a)=>{const f=a.text.replace($N," "),p=i.append("text");p.attr("x",a.x),p.attr("y",a.y),p.attr("class","legend"),p.style("text-anchor",a.anchor),a.class!==void 0&&p.attr("class",a.class);const v=p.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.text(f),p},aDe=(i,a,f,p)=>{const v=i.append("image");v.attr("x",a),v.attr("y",f);const m=Xx(p);v.attr("xlink:href",m)},oDe=(i,a,f,p)=>{const v=i.append("use");v.attr("x",a),v.attr("y",f);const m=Xx(p);v.attr("xlink:href",`#${m}`)},u9=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),Ddt=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),Idt=function(i,a){return WW(i,a)},bNt=function(i,a,f,p,v,m){const b=i.append("image");b.attr("width",a),b.attr("height",f),b.attr("x",p),b.attr("y",v);let E=m.startsWith("data:image/png;base64")?m:Xx(m);b.attr("xlink:href",E)},cDe=(i,a,f)=>{const p=i.append("g");let v=0;for(let m of a){let b=m.textColor?m.textColor:"#444444",E=m.lineColor?m.lineColor:"#444444",C=m.offsetX?parseInt(m.offsetX):0,A=m.offsetY?parseInt(m.offsetY):0,P="";if(v===0){let j=p.append("line");j.attr("x1",m.startPoint.x),j.attr("y1",m.startPoint.y),j.attr("x2",m.endPoint.x),j.attr("y2",m.endPoint.y),j.attr("stroke-width","1"),j.attr("stroke",E),j.style("fill","none"),m.type!=="rel_b"&&j.attr("marker-end","url("+P+"#arrowhead)"),(m.type==="birel"||m.type==="rel_b")&&j.attr("marker-start","url("+P+"#arrowend)"),v=-1}else{let j=p.append("path");j.attr("fill","none").attr("stroke-width","1").attr("stroke",E).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",m.startPoint.x).replaceAll("starty",m.startPoint.y).replaceAll("controlx",m.startPoint.x+(m.endPoint.x-m.startPoint.x)/2-(m.endPoint.x-m.startPoint.x)/4).replaceAll("controly",m.startPoint.y+(m.endPoint.y-m.startPoint.y)/2).replaceAll("stopx",m.endPoint.x).replaceAll("stopy",m.endPoint.y)),m.type!=="rel_b"&&j.attr("marker-end","url("+P+"#arrowhead)"),(m.type==="birel"||m.type==="rel_b")&&j.attr("marker-start","url("+P+"#arrowend)")}let F=f.messageFont();E5(f)(m.label.text,p,Math.min(m.startPoint.x,m.endPoint.x)+Math.abs(m.endPoint.x-m.startPoint.x)/2+C,Math.min(m.startPoint.y,m.endPoint.y)+Math.abs(m.endPoint.y-m.startPoint.y)/2+A,m.label.width,m.label.height,{fill:b},F),m.techn&&m.techn.text!==""&&(F=f.messageFont(),E5(f)("["+m.techn.text+"]",p,Math.min(m.startPoint.x,m.endPoint.x)+Math.abs(m.endPoint.x-m.startPoint.x)/2+C,Math.min(m.startPoint.y,m.endPoint.y)+Math.abs(m.endPoint.y-m.startPoint.y)/2+f.messageFontSize+5+A,Math.max(m.label.width,m.techn.width),m.techn.height,{fill:b,"font-style":"italic"},F))}},uDe=function(i,a,f){const p=i.append("g");let v=a.bgColor?a.bgColor:"none",m=a.borderColor?a.borderColor:"#444444",b=a.fontColor?a.fontColor:"black",E={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};a.nodeType&&(E={"stroke-width":1});let C={x:a.x,y:a.y,fill:v,stroke:m,width:a.width,height:a.height,rx:2.5,ry:2.5,attrs:E};Idt(p,C);let A=f.boundaryFont();A.fontWeight="bold",A.fontSize=A.fontSize+2,A.fontColor=b,E5(f)(a.label.text,p,a.x,a.y+a.label.Y,a.width,a.height,{fill:"#444444"},A),a.type&&a.type.text!==""&&(A=f.boundaryFont(),A.fontColor=b,E5(f)(a.type.text,p,a.x,a.y+a.type.Y,a.width,a.height,{fill:"#444444"},A)),a.descr&&a.descr.text!==""&&(A=f.boundaryFont(),A.fontSize=A.fontSize-2,A.fontColor=b,E5(f)(a.descr.text,p,a.x,a.y+a.descr.Y,a.width,a.height,{fill:"#444444"},A))},lDe=function(i,a,f){var F;let p=a.bgColor?a.bgColor:f[a.typeC4Shape.text+"_bg_color"],v=a.borderColor?a.borderColor:f[a.typeC4Shape.text+"_border_color"],m=a.fontColor?a.fontColor:"#FFFFFF",b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(a.typeC4Shape.text){case"person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}const E=i.append("g");E.attr("class","person-man");const C=u9();switch(a.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":C.x=a.x,C.y=a.y,C.fill=p,C.width=a.width,C.height=a.height,C.stroke=v,C.rx=2.5,C.ry=2.5,C.attrs={"stroke-width":.5},Idt(E,C);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":E.append("path").attr("fill",p).attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2).replaceAll("height",a.height)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":E.append("path").attr("fill",p).attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("width",a.width).replaceAll("half",a.height/2)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",a.x+a.width).replaceAll("starty",a.y).replaceAll("half",a.height/2));break}let A=mDe(f,a.typeC4Shape.text);switch(E.append("text").attr("fill",m).attr("font-family",A.fontFamily).attr("font-size",A.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",a.typeC4Shape.width).attr("x",a.x+a.width/2-a.typeC4Shape.width/2).attr("y",a.y+a.typeC4Shape.Y).text("<<"+a.typeC4Shape.text+">>"),a.typeC4Shape.text){case"person":case"external_person":bNt(E,48,48,a.x+a.width/2-24,a.y+a.image.Y,b);break}let P=f[a.typeC4Shape.text+"Font"]();return P.fontWeight="bold",P.fontSize=P.fontSize+2,P.fontColor=m,E5(f)(a.label.text,E,a.x,a.y+a.label.Y,a.width,a.height,{fill:m},P),P=f[a.typeC4Shape.text+"Font"](),P.fontColor=m,a.techn&&((F=a.techn)==null?void 0:F.text)!==""?E5(f)(a.techn.text,E,a.x,a.y+a.techn.Y,a.width,a.height,{fill:m,"font-style":"italic"},P):a.type&&a.type.text!==""&&E5(f)(a.type.text,E,a.x,a.y+a.type.Y,a.width,a.height,{fill:m,"font-style":"italic"},P),a.descr&&a.descr.text!==""&&(P=f.personFont(),P.fontColor=m,E5(f)(a.descr.text,E,a.x,a.y+a.descr.Y,a.width,a.height,{fill:m},P)),a.height},hDe=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},fDe=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},dDe=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},gDe=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},pDe=function(i){i.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},bDe=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},vDe=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},wDe=function(i){const f=i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);f.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),f.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},mDe=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),E5=function(){function i(v,m,b,E,C,A,P){const F=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("text-anchor","middle").text(v);p(F,P)}function a(v,m,b,E,C,A,P,F){const{fontSize:j,fontFamily:R,fontWeight:H}=F,Y=v.split(ui.lineBreakRegex);for(let rt=0;rt=this.data.widthLimit||p>=this.data.widthLimit||this.nextData.cnt>vNt)&&(f=this.nextData.startx+a.margin+Es.nextLinePaddingX,v=this.nextData.stopy+a.margin*2,this.nextData.stopx=p=f+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=m=v+a.height,this.nextData.cnt=1),a.x=f,a.y=v,this.updateVal(this.data,"startx",f,Math.min),this.updateVal(this.data,"starty",v,Math.min),this.updateVal(this.data,"stopx",p,Math.max),this.updateVal(this.data,"stopy",m,Math.max),this.updateVal(this.nextData,"startx",f,Math.min),this.updateVal(this.nextData,"starty",v,Math.min),this.updateVal(this.nextData,"stopx",p,Math.max),this.updateVal(this.nextData,"stopy",m,Math.max)}init(a){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},Ndt(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}}const Ndt=function(i){Z1(Es,i),i.fontFamily&&(Es.personFontFamily=Es.systemFontFamily=Es.messageFontFamily=i.fontFamily),i.fontSize&&(Es.personFontSize=Es.systemFontSize=Es.messageFontSize=i.fontSize),i.fontWeight&&(Es.personFontWeight=Es.systemFontWeight=Es.messageFontWeight=i.fontWeight)},iP=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),XW=i=>({fontFamily:i.boundaryFontFamily,fontSize:i.boundaryFontSize,fontWeight:i.boundaryFontWeight}),yDe=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight});function sm(i,a,f,p,v){if(!a[i].width)if(f)a[i].text=$It(a[i].text,v,p),a[i].textLines=a[i].text.split(ui.lineBreakRegex).length,a[i].width=v,a[i].height=edt(a[i].text,p);else{let m=a[i].text.split(ui.lineBreakRegex);a[i].textLines=m.length;let b=0;a[i].height=0,a[i].width=0;for(const E of m)a[i].width=Math.max(h3(E,p),a[i].width),b=edt(E,p),a[i].height=a[i].height+b}}const mNt=function(i,a,f){a.x=f.data.startx,a.y=f.data.starty,a.width=f.data.stopx-f.data.startx,a.height=f.data.stopy-f.data.starty,a.label.y=Es.c4ShapeMargin-35;let p=a.wrap&&Es.wrap,v=XW(Es);v.fontSize=v.fontSize+2,v.fontWeight="bold";let m=h3(a.label.text,v);sm("label",a,p,v,m),g3.drawBoundary(i,a,Es)},yNt=function(i,a,f,p){let v=0;for(const m of p){v=0;const b=f[m];let E=iP(Es,b.typeC4Shape.text);switch(E.fontSize=E.fontSize-2,b.typeC4Shape.width=h3("«"+b.typeC4Shape.text+"»",E),b.typeC4Shape.height=E.fontSize+2,b.typeC4Shape.Y=Es.c4ShapePadding,v=b.typeC4Shape.Y+b.typeC4Shape.height-4,b.image={width:0,height:0,Y:0},b.typeC4Shape.text){case"person":case"external_person":b.image.width=48,b.image.height=48,b.image.Y=v,v=b.image.Y+b.image.height;break}b.sprite&&(b.image.width=48,b.image.height=48,b.image.Y=v,v=b.image.Y+b.image.height);let C=b.wrap&&Es.wrap,A=Es.width-Es.c4ShapePadding*2,P=iP(Es,b.typeC4Shape.text);if(P.fontSize=P.fontSize+2,P.fontWeight="bold",sm("label",b,C,P,A),b.label.Y=v+8,v=b.label.Y+b.label.height,b.type&&b.type.text!==""){b.type.text="["+b.type.text+"]";let R=iP(Es,b.typeC4Shape.text);sm("type",b,C,R,A),b.type.Y=v+5,v=b.type.Y+b.type.height}else if(b.techn&&b.techn.text!==""){b.techn.text="["+b.techn.text+"]";let R=iP(Es,b.techn.text);sm("techn",b,C,R,A),b.techn.Y=v+5,v=b.techn.Y+b.techn.height}let F=v,j=b.label.width;if(b.descr&&b.descr.text!==""){let R=iP(Es,b.typeC4Shape.text);sm("descr",b,C,R,A),b.descr.Y=v+20,v=b.descr.Y+b.descr.height,j=Math.max(b.label.width,b.descr.width),F=v-b.descr.textLines*5}j=j+Es.c4ShapePadding,b.width=Math.max(b.width||Es.width,j,Es.width),b.height=Math.max(b.height||Es.height,F,Es.height),b.margin=b.margin||Es.c4ShapeMargin,i.insert(b),g3.drawC4Shape(a,b,Es)}i.bumpLastMargin(Es.c4ShapeMargin)};let tv=class{constructor(a,f){this.x=a,this.y=f}},xNt=function(i,a){let f=i.x,p=i.y,v=a.x,m=a.y,b=f+i.width/2,E=p+i.height/2,C=Math.abs(f-v),A=Math.abs(p-m),P=A/C,F=i.height/i.width,j=null;return p==m&&fv?j=new tv(f,E):f==v&&pm&&(j=new tv(b,p)),f>v&&p=P?j=new tv(f,E+P*i.width/2):j=new tv(b-C/A*i.height/2,p+i.height):f=P?j=new tv(f+i.width,E+P*i.width/2):j=new tv(b+C/A*i.height/2,p+i.height):fm?F>=P?j=new tv(f+i.width,E-P*i.width/2):j=new tv(b+i.height/2*C/A,p):f>v&&p>m&&(F>=P?j=new tv(f,E-i.width/2*P):j=new tv(b-i.height/2*C/A,p)),j},xDe=function(i,a){let f={x:0,y:0};f.x=a.x+a.width/2,f.y=a.y+a.height/2;let p=xNt(i,f);f.x=i.x+i.width/2,f.y=i.y+i.height/2;let v=xNt(a,f);return{startPoint:p,endPoint:v}};const kDe=function(i,a,f,p){let v=0;for(let m of a){v=v+1;let b=m.wrap&&Es.wrap,E=yDe(Es);p.db.getC4Type()==="C4Dynamic"&&(m.label.text=v+": "+m.label.text);let A=h3(m.label.text,E);sm("label",m,b,E,A),m.techn&&m.techn.text!==""&&(A=h3(m.techn.text,E),sm("techn",m,b,E,A)),m.descr&&m.descr.text!==""&&(A=h3(m.descr.text,E),sm("descr",m,b,E,A));let P=f(m.from),F=f(m.to),j=xDe(P,F);m.startPoint=j.startPoint,m.endPoint=j.endPoint}g3.drawRels(i,a,Es)};function kNt(i,a,f,p,v){let m=new wNt(v);m.data.widthLimit=f.data.widthLimit/Math.min(Odt,p.length);for(let[b,E]of p.entries()){let C=0;E.image={width:0,height:0,Y:0},E.sprite&&(E.image.width=48,E.image.height=48,E.image.Y=C,C=E.image.Y+E.image.height);let A=E.wrap&&Es.wrap,P=XW(Es);if(P.fontSize=P.fontSize+2,P.fontWeight="bold",sm("label",E,A,P,m.data.widthLimit),E.label.Y=C+8,C=E.label.Y+E.label.height,E.type&&E.type.text!==""){E.type.text="["+E.type.text+"]";let H=XW(Es);sm("type",E,A,H,m.data.widthLimit),E.type.Y=C+5,C=E.type.Y+E.type.height}if(E.descr&&E.descr.text!==""){let H=XW(Es);H.fontSize=H.fontSize-2,sm("descr",E,A,H,m.data.widthLimit),E.descr.Y=C+20,C=E.descr.Y+E.descr.height}if(b==0||b%Odt===0){let H=f.data.startx+Es.diagramMarginX,Y=f.data.stopy+Es.diagramMarginY+C;m.setData(H,H,Y,Y)}else{let H=m.data.stopx!==m.data.startx?m.data.stopx+Es.diagramMarginX:m.data.startx,Y=m.data.starty;m.setData(H,H,Y,Y)}m.name=E.alias;let F=v.db.getC4ShapeArray(E.alias),j=v.db.getC4ShapeKeys(E.alias);j.length>0&&yNt(m,i,F,j),a=E.alias;let R=v.db.getBoundarys(a);R.length>0&&kNt(i,a,m,R,v),E.alias!=="global"&&mNt(i,E,m),f.data.stopy=Math.max(m.data.stopy+Es.c4ShapeMargin,f.data.stopy),f.data.stopx=Math.max(m.data.stopx+Es.c4ShapeMargin,f.data.stopx),KW=Math.max(KW,f.data.stopx),YW=Math.max(YW,f.data.stopy)}}const ENt={drawPersonOrSystemArray:yNt,drawBoundary:mNt,setConf:Ndt,draw:function(i,a,f,p){Es=De().c4;const v=De().securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const b=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body");let E=p.db;p.db.setWrap(Es.wrap),vNt=E.getC4ShapeInRow(),Odt=E.getC4BoundaryInRow(),Wt.debug(`C:${JSON.stringify(Es,null,2)}`);const C=v==="sandbox"?b.select(`[id="${a}"]`):xr(`[id="${a}"]`);g3.insertComputerIcon(C),g3.insertDatabaseIcon(C),g3.insertClockIcon(C);let A=new wNt(p);A.setData(Es.diagramMarginX,Es.diagramMarginX,Es.diagramMarginY,Es.diagramMarginY),A.data.widthLimit=screen.availWidth,KW=Es.diagramMarginX,YW=Es.diagramMarginY;const P=p.db.getTitle();let F=p.db.getBoundarys("");kNt(C,"",A,F,p),g3.insertArrowHead(C),g3.insertArrowEnd(C),g3.insertArrowCrossHead(C),g3.insertArrowFilledHead(C),kDe(C,p.db.getRels(),p.db.getC4Shape,p),A.data.stopx=KW,A.data.stopy=YW;const j=A.data;let H=j.stopy-j.starty+2*Es.diagramMarginY;const rt=j.stopx-j.startx+2*Es.diagramMarginX;P&&C.append("text").text(P).attr("x",(j.stopx-j.startx)/2-4*Es.diagramMarginX).attr("y",j.starty+Es.diagramMarginY),og(C,H,rt,Es.useMaxWidth);const J=P?60:0;C.attr("viewBox",j.startx-Es.diagramMarginX+" -"+(Es.diagramMarginY+J)+" "+rt+" "+(H+J)),Wt.debug("models:",j)}},EDe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:NMe,db:gNt,renderer:ENt,styles:i=>`.person { + stroke: ${i.personBorder}; + fill: ${i.personBkg}; + } +`,init:i=>{ENt.setConf(i.c4)}}},Symbol.toStringTag,{value:"Module"}));var Pdt=function(){var i=function(zb,os,As,ma){for(As=As||{},ma=zb.length;ma--;As[zb[ma]]=os);return As},a=[1,9],f=[1,7],p=[1,6],v=[1,8],m=[1,20,21,22,23,38,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],b=[2,10],E=[1,20],C=[1,21],A=[1,22],P=[1,23],F=[1,30],j=[1,32],R=[1,33],H=[1,34],Y=[1,56],rt=[1,55],J=[1,36],it=[1,37],ft=[1,38],Tt=[1,39],kt=[1,40],mt=[1,51],ct=[1,53],yt=[1,49],st=[1,54],xt=[1,50],ht=[1,57],dt=[1,52],Ct=[1,58],tt=[1,59],Pt=[1,41],pt=[1,42],Ft=[1,43],X=[1,44],Rt=[1,62],Bt=[1,67],vt=[1,20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Ot=[1,71],Vt=[1,70],qe=[1,72],_n=[20,21,23,84,86],Te=[1,98],Wn=[1,103],Ae=[1,102],ne=[1,99],ke=[1,95],Ve=[1,101],Ee=[1,97],He=[1,104],Ce=[1,100],$e=[1,105],ye=[1,96],fn=[20,21,22,23,84,86],Yt=[20,21,22,23,55,84,86],Mi=[20,21,22,23,40,53,55,57,59,61,63,65,67,69,72,74,76,77,79,84,86,97,110,113,114,117,119,122,123,124],qt=[20,21,23],zi=[20,21,23,53,69,84,86,97,110,113,114,117,119,122,123,124],Se=[1,12,20,21,22,23,24,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],ki=[53,69,97,110,113,114,117,119,122,123,124],Ri=[1,134],pi=[1,133],bi=[1,141],dn=[1,155],Nn=[1,156],Wr=[1,157],Li=[1,158],is=[1,143],Ts=[1,145],Aa=[1,149],Xi=[1,150],Ga=[1,151],_r=[1,152],qr=[1,153],Oi=[1,154],gr=[1,159],Js=[1,160],Vn=[1,139],Xc=[1,140],Er=[1,147],Mc=[1,142],bp=[1,146],fm=[1,144],T0=[20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Fd=[1,162],No=[20,21,22,23,26,53,69,97,113,114,117,119,122,123,124],ta=[1,182],bu=[1,178],Pu=[1,179],lo=[1,183],mo=[1,180],Os=[1,181],Tl=[12,21,22,24],Fu=[86,124,127],zo=[20,21,22,23,24,26,38,40,43,53,69,84,92,93,94,95,96,97,98,113,117,119,122,123,124],nd=[22,114],sf=[42,58,60,62,64,66,71,73,75,76,78,80,124,125,126],ll=[1,250],Vi=[1,248],Ke=[1,252],kr=[1,246],ni=[1,247],eo=[1,249],Dc=[1,251],Ju=[1,253],Qo=[1,270],jf=[20,21,23,114],rh=[20,21,22,23,69,92,113,114,117,118,119,120],dm={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,textNoTags:39,SQS:40,text:41,SQE:42,end:43,direction:44,acc_title:45,acc_title_value:46,acc_descr:47,acc_descr_value:48,acc_descr_multiline_value:49,link:50,node:51,styledVertex:52,AMP:53,vertex:54,STYLE_SEPARATOR:55,idString:56,DOUBLECIRCLESTART:57,DOUBLECIRCLEEND:58,PS:59,PE:60,"(-":61,"-)":62,STADIUMSTART:63,STADIUMEND:64,SUBROUTINESTART:65,SUBROUTINEEND:66,VERTEX_WITH_PROPS_START:67,"NODE_STRING[field]":68,COLON:69,"NODE_STRING[value]":70,PIPE:71,CYLINDERSTART:72,CYLINDEREND:73,DIAMOND_START:74,DIAMOND_STOP:75,TAGEND:76,TRAPSTART:77,TRAPEND:78,INVTRAPSTART:79,INVTRAPEND:80,linkStatement:81,arrowText:82,TESTSTR:83,START_LINK:84,edgeText:85,LINK:86,edgeTextToken:87,STR:88,MD_STR:89,textToken:90,keywords:91,STYLE:92,LINKSTYLE:93,CLASSDEF:94,CLASS:95,CLICK:96,DOWN:97,UP:98,textNoTagsToken:99,stylesOpt:100,"idString[vertex]":101,"idString[class]":102,CALLBACKNAME:103,CALLBACKARGS:104,HREF:105,LINK_TARGET:106,"STR[link]":107,"STR[tooltip]":108,alphaNum:109,DEFAULT:110,numList:111,INTERPOLATE:112,NUM:113,COMMA:114,style:115,styleComponent:116,NODE_STRING:117,UNIT:118,BRKT:119,PCT:120,idStringToken:121,MINUS:122,MULT:123,UNICODE_TEXT:124,TEXT:125,TAGSTART:126,EDGE_TEXT:127,alphaNumToken:128,direction_tb:129,direction_bt:130,direction_rl:131,direction_lr:132,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",42:"SQE",43:"end",45:"acc_title",46:"acc_title_value",47:"acc_descr",48:"acc_descr_value",49:"acc_descr_multiline_value",53:"AMP",55:"STYLE_SEPARATOR",57:"DOUBLECIRCLESTART",58:"DOUBLECIRCLEEND",59:"PS",60:"PE",61:"(-",62:"-)",63:"STADIUMSTART",64:"STADIUMEND",65:"SUBROUTINESTART",66:"SUBROUTINEEND",67:"VERTEX_WITH_PROPS_START",68:"NODE_STRING[field]",69:"COLON",70:"NODE_STRING[value]",71:"PIPE",72:"CYLINDERSTART",73:"CYLINDEREND",74:"DIAMOND_START",75:"DIAMOND_STOP",76:"TAGEND",77:"TRAPSTART",78:"TRAPEND",79:"INVTRAPSTART",80:"INVTRAPEND",83:"TESTSTR",84:"START_LINK",86:"LINK",88:"STR",89:"MD_STR",92:"STYLE",93:"LINKSTYLE",94:"CLASSDEF",95:"CLASS",96:"CLICK",97:"DOWN",98:"UP",101:"idString[vertex]",102:"idString[class]",103:"CALLBACKNAME",104:"CALLBACKARGS",105:"HREF",106:"LINK_TARGET",107:"STR[link]",108:"STR[tooltip]",110:"DEFAULT",112:"INTERPOLATE",113:"NUM",114:"COMMA",117:"NODE_STRING",118:"UNIT",119:"BRKT",120:"PCT",122:"MINUS",123:"MULT",124:"UNICODE_TEXT",125:"TEXT",126:"TAGSTART",127:"EDGE_TEXT",129:"direction_tb",130:"direction_bt",131:"direction_rl",132:"direction_lr"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[51,1],[51,5],[52,1],[52,3],[54,4],[54,4],[54,6],[54,4],[54,4],[54,4],[54,8],[54,4],[54,4],[54,4],[54,6],[54,4],[54,4],[54,4],[54,4],[54,4],[54,1],[50,2],[50,3],[50,3],[50,1],[50,3],[85,1],[85,2],[85,1],[85,1],[81,1],[82,3],[41,1],[41,2],[41,1],[41,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[39,1],[39,2],[39,1],[39,1],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,3],[37,5],[37,5],[37,7],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[111,1],[111,3],[100,1],[100,3],[115,1],[115,2],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[90,1],[90,1],[90,1],[90,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[87,1],[87,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[56,1],[56,2],[109,1],[109,2],[44,1],[44,1],[44,1],[44,1]],performAction:function(os,As,ma,vi,Qc,me,bg){var Oe=me.length-1;switch(Qc){case 5:vi.parseDirective("%%{","open_directive");break;case 6:vi.parseDirective(me[Oe],"type_directive");break;case 7:me[Oe]=me[Oe].trim().replace(/'/g,'"'),vi.parseDirective(me[Oe],"arg_directive");break;case 8:vi.parseDirective("}%%","close_directive","flowchart");break;case 10:this.$=[];break;case 11:(!Array.isArray(me[Oe])||me[Oe].length>0)&&me[Oe-1].push(me[Oe]),this.$=me[Oe-1];break;case 12:case 184:this.$=me[Oe];break;case 19:vi.setDirection("TB"),this.$="TB";break;case 20:vi.setDirection(me[Oe-1]),this.$=me[Oe-1];break;case 35:this.$=me[Oe-1].nodes;break;case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 41:this.$=vi.addSubGraph(me[Oe-6],me[Oe-1],me[Oe-4]);break;case 42:this.$=vi.addSubGraph(me[Oe-3],me[Oe-1],me[Oe-3]);break;case 43:this.$=vi.addSubGraph(void 0,me[Oe-1],void 0);break;case 45:this.$=me[Oe].trim(),vi.setAccTitle(this.$);break;case 46:case 47:this.$=me[Oe].trim(),vi.setAccDescription(this.$);break;case 51:vi.addLink(me[Oe-2].stmt,me[Oe],me[Oe-1]),this.$={stmt:me[Oe],nodes:me[Oe].concat(me[Oe-2].nodes)};break;case 52:vi.addLink(me[Oe-3].stmt,me[Oe-1],me[Oe-2]),this.$={stmt:me[Oe-1],nodes:me[Oe-1].concat(me[Oe-3].nodes)};break;case 53:this.$={stmt:me[Oe-1],nodes:me[Oe-1]};break;case 54:this.$={stmt:me[Oe],nodes:me[Oe]};break;case 55:this.$=[me[Oe]];break;case 56:this.$=me[Oe-4].concat(me[Oe]);break;case 57:this.$=me[Oe];break;case 58:this.$=me[Oe-2],vi.setClass(me[Oe-2],me[Oe]);break;case 59:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"square");break;case 60:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"doublecircle");break;case 61:this.$=me[Oe-5],vi.addVertex(me[Oe-5],me[Oe-2],"circle");break;case 62:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"ellipse");break;case 63:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"stadium");break;case 64:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"subroutine");break;case 65:this.$=me[Oe-7],vi.addVertex(me[Oe-7],me[Oe-1],"rect",void 0,void 0,void 0,Object.fromEntries([[me[Oe-5],me[Oe-3]]]));break;case 66:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"cylinder");break;case 67:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"round");break;case 68:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"diamond");break;case 69:this.$=me[Oe-5],vi.addVertex(me[Oe-5],me[Oe-2],"hexagon");break;case 70:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"odd");break;case 71:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"trapezoid");break;case 72:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"inv_trapezoid");break;case 73:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"lean_right");break;case 74:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"lean_left");break;case 75:this.$=me[Oe],vi.addVertex(me[Oe]);break;case 76:me[Oe-1].text=me[Oe],this.$=me[Oe-1];break;case 77:case 78:me[Oe-2].text=me[Oe-1],this.$=me[Oe-2];break;case 79:this.$=me[Oe];break;case 80:var af=vi.destructLink(me[Oe],me[Oe-2]);this.$={type:af.type,stroke:af.stroke,length:af.length,text:me[Oe-1]};break;case 81:this.$={text:me[Oe],type:"text"};break;case 82:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 83:this.$={text:me[Oe],type:"string"};break;case 84:this.$={text:me[Oe],type:"markdown"};break;case 85:var af=vi.destructLink(me[Oe]);this.$={type:af.type,stroke:af.stroke,length:af.length};break;case 86:this.$=me[Oe-1];break;case 87:this.$={text:me[Oe],type:"text"};break;case 88:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 89:this.$={text:me[Oe],type:"string"};break;case 90:case 105:this.$={text:me[Oe],type:"markdown"};break;case 102:this.$={text:me[Oe],type:"text"};break;case 103:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 104:this.$={text:me[Oe],type:"text"};break;case 106:this.$=me[Oe-4],vi.addClass(me[Oe-2],me[Oe]);break;case 107:this.$=me[Oe-4],vi.setClass(me[Oe-2],me[Oe]);break;case 108:case 116:this.$=me[Oe-1],vi.setClickEvent(me[Oe-1],me[Oe]);break;case 109:case 117:this.$=me[Oe-3],vi.setClickEvent(me[Oe-3],me[Oe-2]),vi.setTooltip(me[Oe-3],me[Oe]);break;case 110:this.$=me[Oe-2],vi.setClickEvent(me[Oe-2],me[Oe-1],me[Oe]);break;case 111:this.$=me[Oe-4],vi.setClickEvent(me[Oe-4],me[Oe-3],me[Oe-2]),vi.setTooltip(me[Oe-4],me[Oe]);break;case 112:this.$=me[Oe-2],vi.setLink(me[Oe-2],me[Oe]);break;case 113:this.$=me[Oe-4],vi.setLink(me[Oe-4],me[Oe-2]),vi.setTooltip(me[Oe-4],me[Oe]);break;case 114:this.$=me[Oe-4],vi.setLink(me[Oe-4],me[Oe-2],me[Oe]);break;case 115:this.$=me[Oe-6],vi.setLink(me[Oe-6],me[Oe-4],me[Oe]),vi.setTooltip(me[Oe-6],me[Oe-2]);break;case 118:this.$=me[Oe-1],vi.setLink(me[Oe-1],me[Oe]);break;case 119:this.$=me[Oe-3],vi.setLink(me[Oe-3],me[Oe-2]),vi.setTooltip(me[Oe-3],me[Oe]);break;case 120:this.$=me[Oe-3],vi.setLink(me[Oe-3],me[Oe-2],me[Oe]);break;case 121:this.$=me[Oe-5],vi.setLink(me[Oe-5],me[Oe-4],me[Oe]),vi.setTooltip(me[Oe-5],me[Oe-2]);break;case 122:this.$=me[Oe-4],vi.addVertex(me[Oe-2],void 0,void 0,me[Oe]);break;case 123:this.$=me[Oe-4],vi.updateLink([me[Oe-2]],me[Oe]);break;case 124:this.$=me[Oe-4],vi.updateLink(me[Oe-2],me[Oe]);break;case 125:this.$=me[Oe-8],vi.updateLinkInterpolate([me[Oe-6]],me[Oe-2]),vi.updateLink([me[Oe-6]],me[Oe]);break;case 126:this.$=me[Oe-8],vi.updateLinkInterpolate(me[Oe-6],me[Oe-2]),vi.updateLink(me[Oe-6],me[Oe]);break;case 127:this.$=me[Oe-6],vi.updateLinkInterpolate([me[Oe-4]],me[Oe]);break;case 128:this.$=me[Oe-6],vi.updateLinkInterpolate(me[Oe-4],me[Oe]);break;case 129:case 131:this.$=[me[Oe]];break;case 130:case 132:me[Oe-2].push(me[Oe]),this.$=me[Oe-2];break;case 134:this.$=me[Oe-1]+me[Oe];break;case 182:this.$=me[Oe];break;case 183:this.$=me[Oe-1]+""+me[Oe];break;case 185:this.$=me[Oe-1]+""+me[Oe];break;case 186:this.$={stmt:"dir",value:"TB"};break;case 187:this.$={stmt:"dir",value:"BT"};break;case 188:this.$={stmt:"dir",value:"RL"};break;case 189:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,5:3,6:5,12:a,16:4,21:f,22:p,24:v},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:a,16:4,21:f,22:p,24:v},i(m,b,{17:11}),{7:12,13:[1,13]},{16:14,21:f,22:p,24:v},{16:15,21:f,22:p,24:v},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},{8:60,10:[1,61],15:Rt},i([10,15],[2,6]),i(m,[2,17]),i(m,[2,18]),i(m,[2,19]),{20:[1,64],21:[1,65],22:Bt,27:63,30:66},i(vt,[2,11]),i(vt,[2,12]),i(vt,[2,13]),i(vt,[2,14]),i(vt,[2,15]),i(vt,[2,16]),{9:68,20:Ot,21:Vt,23:qe,50:69,81:73,84:[1,74],86:[1,75]},{9:76,20:Ot,21:Vt,23:qe},{9:77,20:Ot,21:Vt,23:qe},{9:78,20:Ot,21:Vt,23:qe},{9:79,20:Ot,21:Vt,23:qe},{9:80,20:Ot,21:Vt,23:qe},{9:82,20:Ot,21:Vt,22:[1,81],23:qe},i(vt,[2,44]),{46:[1,83]},{48:[1,84]},i(vt,[2,47]),i(_n,[2,54],{30:85,22:Bt}),{22:[1,86]},{22:[1,87]},{22:[1,88]},{22:[1,89]},{26:Te,53:Wn,69:Ae,88:[1,93],97:ne,103:[1,90],105:[1,91],109:92,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye,128:94},i(vt,[2,186]),i(vt,[2,187]),i(vt,[2,188]),i(vt,[2,189]),i(fn,[2,55]),i(fn,[2,57],{55:[1,106]}),i(Yt,[2,75],{121:119,40:[1,107],53:Y,57:[1,108],59:[1,109],61:[1,110],63:[1,111],65:[1,112],67:[1,113],69:rt,72:[1,114],74:[1,115],76:[1,116],77:[1,117],79:[1,118],97:mt,110:ct,113:yt,114:st,117:xt,119:ht,122:dt,123:Ct,124:tt}),i(Mi,[2,182]),i(Mi,[2,143]),i(Mi,[2,144]),i(Mi,[2,145]),i(Mi,[2,146]),i(Mi,[2,147]),i(Mi,[2,148]),i(Mi,[2,149]),i(Mi,[2,150]),i(Mi,[2,151]),i(Mi,[2,152]),i(Mi,[2,153]),{9:120,20:Ot,21:Vt,23:qe},{11:121,14:[1,122]},i(qt,[2,8]),i(m,[2,20]),i(m,[2,26]),i(m,[2,27]),{21:[1,123]},i(zi,[2,34],{30:124,22:Bt}),i(vt,[2,35]),{51:125,52:45,53:Y,54:46,56:47,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},i(Se,[2,48]),i(Se,[2,49]),i(Se,[2,50]),i(ki,[2,79],{82:126,71:[1,128],83:[1,127]}),{85:129,87:130,88:[1,131],89:[1,132],124:Ri,127:pi},i([53,69,71,83,97,110,113,114,117,119,122,123,124],[2,85]),i(vt,[2,36]),i(vt,[2,37]),i(vt,[2,38]),i(vt,[2,39]),i(vt,[2,40]),{22:bi,24:dn,26:Nn,38:Wr,39:135,43:Li,53:is,69:Ts,84:Aa,88:[1,137],89:[1,138],91:148,92:Xi,93:Ga,94:_r,95:qr,96:Oi,97:gr,98:Js,99:136,113:Vn,117:Xc,119:Er,122:Mc,123:bp,124:fm},i(T0,b,{17:161}),i(vt,[2,45]),i(vt,[2,46]),i(_n,[2,53],{53:Fd}),{53:Y,56:163,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{110:[1,164],111:165,113:[1,166]},{53:Y,56:167,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{53:Y,56:168,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},i(qt,[2,108],{22:[1,169],104:[1,170]}),{88:[1,171]},i(qt,[2,116],{128:173,22:[1,172],26:Te,53:Wn,69:Ae,97:ne,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye}),i(qt,[2,118],{22:[1,174]}),i(No,[2,184]),i(No,[2,171]),i(No,[2,172]),i(No,[2,173]),i(No,[2,174]),i(No,[2,175]),i(No,[2,176]),i(No,[2,177]),i(No,[2,178]),i(No,[2,179]),i(No,[2,180]),i(No,[2,181]),{53:Y,56:175,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{41:176,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:184,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:186,59:[1,185],76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:187,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:188,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:189,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{117:[1,190]},{41:191,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:192,74:[1,193],76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:194,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:195,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:196,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},i(Mi,[2,183]),i(Tl,[2,3]),{8:197,15:Rt},{15:[2,7]},i(m,[2,28]),i(zi,[2,33]),i(_n,[2,51],{30:198,22:Bt}),i(ki,[2,76],{22:[1,199]}),{22:[1,200]},{41:201,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{86:[1,202],87:203,124:Ri,127:pi},i(Fu,[2,81]),i(Fu,[2,83]),i(Fu,[2,84]),i(Fu,[2,169]),i(Fu,[2,170]),{9:205,20:Ot,21:Vt,22:bi,23:qe,24:dn,26:Nn,38:Wr,40:[1,204],43:Li,53:is,69:Ts,84:Aa,91:148,92:Xi,93:Ga,94:_r,95:qr,96:Oi,97:gr,98:Js,99:206,113:Vn,117:Xc,119:Er,122:Mc,123:bp,124:fm},i(zo,[2,102]),i(zo,[2,104]),i(zo,[2,105]),i(zo,[2,158]),i(zo,[2,159]),i(zo,[2,160]),i(zo,[2,161]),i(zo,[2,162]),i(zo,[2,163]),i(zo,[2,164]),i(zo,[2,165]),i(zo,[2,166]),i(zo,[2,167]),i(zo,[2,168]),i(zo,[2,91]),i(zo,[2,92]),i(zo,[2,93]),i(zo,[2,94]),i(zo,[2,95]),i(zo,[2,96]),i(zo,[2,97]),i(zo,[2,98]),i(zo,[2,99]),i(zo,[2,100]),i(zo,[2,101]),{18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,43:[1,207],44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},{22:Bt,30:208},{22:[1,209],53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:119,122:dt,123:Ct,124:tt},{22:[1,210]},{22:[1,211],114:[1,212]},i(nd,[2,129]),{22:[1,213],53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:119,122:dt,123:Ct,124:tt},{22:[1,214],53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:119,122:dt,123:Ct,124:tt},{88:[1,215]},i(qt,[2,110],{22:[1,216]}),i(qt,[2,112],{22:[1,217]}),{88:[1,218]},i(No,[2,185]),{88:[1,219],106:[1,220]},i(fn,[2,58],{121:119,53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,122:dt,123:Ct,124:tt}),{42:[1,221],76:ta,90:222,124:lo,125:mo,126:Os},i(sf,[2,87]),i(sf,[2,89]),i(sf,[2,90]),i(sf,[2,154]),i(sf,[2,155]),i(sf,[2,156]),i(sf,[2,157]),{58:[1,223],76:ta,90:222,124:lo,125:mo,126:Os},{41:224,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{60:[1,225],76:ta,90:222,124:lo,125:mo,126:Os},{62:[1,226],76:ta,90:222,124:lo,125:mo,126:Os},{64:[1,227],76:ta,90:222,124:lo,125:mo,126:Os},{66:[1,228],76:ta,90:222,124:lo,125:mo,126:Os},{69:[1,229]},{73:[1,230],76:ta,90:222,124:lo,125:mo,126:Os},{75:[1,231],76:ta,90:222,124:lo,125:mo,126:Os},{41:232,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{42:[1,233],76:ta,90:222,124:lo,125:mo,126:Os},{76:ta,78:[1,234],80:[1,235],90:222,124:lo,125:mo,126:Os},{76:ta,78:[1,237],80:[1,236],90:222,124:lo,125:mo,126:Os},{9:238,20:Ot,21:Vt,23:qe},i(_n,[2,52],{53:Fd}),i(ki,[2,78]),i(ki,[2,77]),{71:[1,239],76:ta,90:222,124:lo,125:mo,126:Os},i(ki,[2,80]),i(Fu,[2,82]),{41:240,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},i(T0,b,{17:241}),i(zo,[2,103]),i(vt,[2,43]),{52:242,53:Y,54:46,56:47,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{22:ll,69:Vi,92:Ke,100:243,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{22:ll,69:Vi,92:Ke,100:254,112:[1,255],113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{22:ll,69:Vi,92:Ke,100:256,112:[1,257],113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{113:[1,258]},{22:ll,69:Vi,92:Ke,100:259,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{53:Y,56:260,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},i(qt,[2,109]),{88:[1,261]},{88:[1,262],106:[1,263]},i(qt,[2,117]),i(qt,[2,119],{22:[1,264]}),i(qt,[2,120]),i(Yt,[2,59]),i(sf,[2,88]),i(Yt,[2,60]),{60:[1,265],76:ta,90:222,124:lo,125:mo,126:Os},i(Yt,[2,67]),i(Yt,[2,62]),i(Yt,[2,63]),i(Yt,[2,64]),{117:[1,266]},i(Yt,[2,66]),i(Yt,[2,68]),{75:[1,267],76:ta,90:222,124:lo,125:mo,126:Os},i(Yt,[2,70]),i(Yt,[2,71]),i(Yt,[2,73]),i(Yt,[2,72]),i(Yt,[2,74]),i(Tl,[2,4]),i([22,53,69,97,110,113,114,117,119,122,123,124],[2,86]),{42:[1,268],76:ta,90:222,124:lo,125:mo,126:Os},{18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,43:[1,269],44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},i(fn,[2,56]),i(qt,[2,122],{114:Qo}),i(jf,[2,131],{116:271,22:ll,69:Vi,92:Ke,113:kr,117:ni,118:eo,119:Dc,120:Ju}),i(rh,[2,133]),i(rh,[2,135]),i(rh,[2,136]),i(rh,[2,137]),i(rh,[2,138]),i(rh,[2,139]),i(rh,[2,140]),i(rh,[2,141]),i(rh,[2,142]),i(qt,[2,123],{114:Qo}),{22:[1,272]},i(qt,[2,124],{114:Qo}),{22:[1,273]},i(nd,[2,130]),i(qt,[2,106],{114:Qo}),i(qt,[2,107],{121:119,53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,122:dt,123:Ct,124:tt}),i(qt,[2,111]),i(qt,[2,113],{22:[1,274]}),i(qt,[2,114]),{106:[1,275]},{60:[1,276]},{71:[1,277]},{75:[1,278]},{9:279,20:Ot,21:Vt,23:qe},i(vt,[2,42]),{22:ll,69:Vi,92:Ke,113:kr,115:280,116:245,117:ni,118:eo,119:Dc,120:Ju},i(rh,[2,134]),{26:Te,53:Wn,69:Ae,97:ne,109:281,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye,128:94},{26:Te,53:Wn,69:Ae,97:ne,109:282,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye,128:94},{106:[1,283]},i(qt,[2,121]),i(Yt,[2,61]),{41:284,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},i(Yt,[2,69]),i(T0,b,{17:285}),i(jf,[2,132],{116:271,22:ll,69:Vi,92:Ke,113:kr,117:ni,118:eo,119:Dc,120:Ju}),i(qt,[2,127],{128:173,22:[1,286],26:Te,53:Wn,69:Ae,97:ne,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye}),i(qt,[2,128],{128:173,22:[1,287],26:Te,53:Wn,69:Ae,97:ne,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye}),i(qt,[2,115]),{42:[1,288],76:ta,90:222,124:lo,125:mo,126:Os},{18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,43:[1,289],44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},{22:ll,69:Vi,92:Ke,100:290,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{22:ll,69:Vi,92:Ke,100:291,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},i(Yt,[2,65]),i(vt,[2,41]),i(qt,[2,125],{114:Qo}),i(qt,[2,126],{114:Qo})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],122:[2,7]},parseError:function(os,As){if(As.recoverable)this.trace(os);else{var ma=new Error(os);throw ma.hash=As,ma}},parse:function(os){var As=this,ma=[0],vi=[],Qc=[null],me=[],bg=this.table,Oe="",af=0,fk=0,k3=2,gm=1,A9=me.slice.call(arguments,1),au=Object.create(this.lexer),vg={yy:{}};for(var dk in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dk)&&(vg.yy[dk]=this.yy[dk]);au.setInput(os,vg.yy),vg.yy.lexer=au,vg.yy.parser=this,typeof au.yylloc>"u"&&(au.yylloc={});var vp=au.yylloc;me.push(vp);var L9=au.options&&au.options.ranges;typeof vg.yy.parseError=="function"?this.parseError=vg.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function M9(){var no;return no=vi.pop()||au.lex()||gm,typeof no!="number"&&(no instanceof Array&&(vi=no,no=vi.pop()),no=As.symbols_[no]||no),no}for(var $f,ov,Bd,E3,cv={},uv,wg,R5,ou;;){if(ov=ma[ma.length-1],this.defaultActions[ov]?Bd=this.defaultActions[ov]:(($f===null||typeof $f>"u")&&($f=M9()),Bd=bg[ov]&&bg[ov][$f]),typeof Bd>"u"||!Bd.length||!Bd[0]){var j5="";ou=[];for(uv in bg[ov])this.terminals_[uv]&&uv>k3&&ou.push("'"+this.terminals_[uv]+"'");au.showPosition?j5="Parse error on line "+(af+1)+`: +`+au.showPosition()+` +Expecting `+ou.join(", ")+", got '"+(this.terminals_[$f]||$f)+"'":j5="Parse error on line "+(af+1)+": Unexpected "+($f==gm?"end of input":"'"+(this.terminals_[$f]||$f)+"'"),this.parseError(j5,{text:au.match,token:this.terminals_[$f]||$f,line:au.yylineno,loc:vp,expected:ou})}if(Bd[0]instanceof Array&&Bd.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ov+", token: "+$f);switch(Bd[0]){case 1:ma.push($f),Qc.push(au.yytext),me.push(au.yylloc),ma.push(Bd[1]),$f=null,fk=au.yyleng,Oe=au.yytext,af=au.yylineno,vp=au.yylloc;break;case 2:if(wg=this.productions_[Bd[1]][1],cv.$=Qc[Qc.length-wg],cv._$={first_line:me[me.length-(wg||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(wg||1)].first_column,last_column:me[me.length-1].last_column},L9&&(cv._$.range=[me[me.length-(wg||1)].range[0],me[me.length-1].range[1]]),E3=this.performAction.apply(cv,[Oe,fk,af,vg.yy,Bd[1],Qc,me].concat(A9)),typeof E3<"u")return E3;wg&&(ma=ma.slice(0,-1*wg*2),Qc=Qc.slice(0,-1*wg),me=me.slice(0,-1*wg)),ma.push(this.productions_[Bd[1]][0]),Qc.push(cv.$),me.push(cv._$),R5=bg[ma[ma.length-2]][ma[ma.length-1]],ma.push(R5);break;case 3:return!0}}return!0}},S9=function(){var zb={EOF:1,parseError:function(As,ma){if(this.yy.parser)this.yy.parser.parseError(As,ma);else throw new Error(As)},setInput:function(os,As){return this.yy=As||this.yy||{},this._input=os,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var os=this._input[0];this.yytext+=os,this.yyleng++,this.offset++,this.match+=os,this.matched+=os;var As=os.match(/(?:\r\n?|\n).*/g);return As?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),os},unput:function(os){var As=os.length,ma=os.split(/(?:\r\n?|\n)/g);this._input=os+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-As),this.offset-=As;var vi=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ma.length-1&&(this.yylineno-=ma.length-1);var Qc=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ma?(ma.length===vi.length?this.yylloc.first_column:0)+vi[vi.length-ma.length].length-ma[0].length:this.yylloc.first_column-As},this.options.ranges&&(this.yylloc.range=[Qc[0],Qc[0]+this.yyleng-As]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(os){this.unput(this.match.slice(os))},pastInput:function(){var os=this.matched.substr(0,this.matched.length-this.match.length);return(os.length>20?"...":"")+os.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var os=this.match;return os.length<20&&(os+=this._input.substr(0,20-os.length)),(os.substr(0,20)+(os.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var os=this.pastInput(),As=new Array(os.length+1).join("-");return os+this.upcomingInput()+` +`+As+"^"},test_match:function(os,As){var ma,vi,Qc;if(this.options.backtrack_lexer&&(Qc={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Qc.yylloc.range=this.yylloc.range.slice(0))),vi=os[0].match(/(?:\r\n?|\n).*/g),vi&&(this.yylineno+=vi.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:vi?vi[vi.length-1].length-vi[vi.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+os[0].length},this.yytext+=os[0],this.match+=os[0],this.matches=os,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(os[0].length),this.matched+=os[0],ma=this.performAction.call(this,this.yy,this,As,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ma)return ma;if(this._backtrack){for(var me in Qc)this[me]=Qc[me];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var os,As,ma,vi;this._more||(this.yytext="",this.match="");for(var Qc=this._currentRules(),me=0;meAs[0].length)){if(As=ma,vi=me,this.options.backtrack_lexer){if(os=this.test_match(ma,Qc[me]),os!==!1)return os;if(this._backtrack){As=!1;continue}else return!1}else if(!this.options.flex)break}return As?(os=this.test_match(As,Qc[vi]),os!==!1?os:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var As=this.next();return As||this.lex()},begin:function(As){this.conditionStack.push(As)},popState:function(){var As=this.conditionStack.length-1;return As>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(As){return As=this.conditionStack.length-1-Math.abs(As||0),As>=0?this.conditionStack[As]:"INITIAL"},pushState:function(As){this.begin(As)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(As,ma,vi,Qc){switch(vi){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:return this.begin("acc_title"),45;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),47;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:this.begin("callbackname");break;case 13:this.popState();break;case 14:this.popState(),this.begin("callbackargs");break;case 15:return 103;case 16:this.popState();break;case 17:return 104;case 18:return"MD_STR";case 19:this.popState();break;case 20:this.begin("md_string");break;case 21:return"STR";case 22:this.popState();break;case 23:this.pushState("string");break;case 24:return 92;case 25:return 110;case 26:return 93;case 27:return 112;case 28:return 94;case 29:return 95;case 30:return 105;case 31:this.begin("click");break;case 32:this.popState();break;case 33:return 96;case 34:return As.lex.firstGraph()&&this.begin("dir"),24;case 35:return As.lex.firstGraph()&&this.begin("dir"),24;case 36:return As.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 43;case 39:return 106;case 40:return 106;case 41:return 106;case 42:return 106;case 43:return this.popState(),25;case 44:return this.popState(),26;case 45:return this.popState(),26;case 46:return this.popState(),26;case 47:return this.popState(),26;case 48:return this.popState(),26;case 49:return this.popState(),26;case 50:return this.popState(),26;case 51:return this.popState(),26;case 52:return this.popState(),26;case 53:return this.popState(),26;case 54:return 129;case 55:return 130;case 56:return 131;case 57:return 132;case 58:return 113;case 59:return 119;case 60:return 55;case 61:return 69;case 62:return 53;case 63:return 20;case 64:return 114;case 65:return 123;case 66:return this.popState(),86;case 67:return this.pushState("edgeText"),84;case 68:return 127;case 69:return this.popState(),86;case 70:return this.pushState("thickEdgeText"),84;case 71:return 127;case 72:return this.popState(),86;case 73:return this.pushState("dottedEdgeText"),84;case 74:return 127;case 75:return 86;case 76:return this.popState(),62;case 77:return"TEXT";case 78:return this.pushState("ellipseText"),61;case 79:return this.popState(),64;case 80:return this.pushState("text"),63;case 81:return this.popState(),66;case 82:return this.pushState("text"),65;case 83:return 67;case 84:return this.pushState("text"),76;case 85:return this.popState(),73;case 86:return this.pushState("text"),72;case 87:return this.popState(),58;case 88:return this.pushState("text"),57;case 89:return this.popState(),78;case 90:return this.popState(),80;case 91:return 125;case 92:return this.pushState("trapText"),77;case 93:return this.pushState("trapText"),79;case 94:return 126;case 95:return 76;case 96:return 98;case 97:return"SEP";case 98:return 97;case 99:return 123;case 100:return 119;case 101:return 53;case 102:return 117;case 103:return 122;case 104:return 124;case 105:return this.popState(),71;case 106:return this.pushState("text"),71;case 107:return this.popState(),60;case 108:return this.pushState("text"),59;case 109:return this.popState(),42;case 110:return this.pushState("text"),40;case 111:return this.popState(),75;case 112:return this.pushState("text"),74;case 113:return"TEXT";case 114:return"QUOTE";case 115:return 21;case 116:return 22;case 117:return 23}},rules:[/^(?:%%\{)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|(?!\)+))/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{close_directive:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},arg_directive:{rules:[3,4,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},type_directive:{rules:[2,3,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},open_directive:{rules:[1,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},callbackargs:{rules:[16,17,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},callbackname:{rules:[13,14,15,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},href:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},click:{rules:[20,23,32,33,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},dottedEdgeText:{rules:[20,23,72,74,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},thickEdgeText:{rules:[20,23,69,71,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},edgeText:{rules:[20,23,66,68,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},trapText:{rules:[20,23,75,78,80,82,86,88,89,90,91,92,93,106,108,110,112],inclusive:!1},ellipseText:{rules:[20,23,75,76,77,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},text:{rules:[20,23,75,78,79,80,81,82,85,86,87,88,92,93,105,106,107,108,109,110,111,112,113],inclusive:!1},vertex:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},dir:{rules:[20,23,43,44,45,46,47,48,49,50,51,52,53,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_descr_multiline:{rules:[10,11,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_descr:{rules:[8,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_title:{rules:[6,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},md_string:{rules:[18,19,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},string:{rules:[20,21,22,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,20,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39,40,41,42,54,55,56,57,58,59,60,61,62,63,64,65,66,67,69,70,72,73,75,78,80,82,83,84,86,88,92,93,94,95,96,97,98,99,100,101,102,103,104,106,108,110,112,114,115,116,117],inclusive:!0}}};return zb}();dm.lexer=S9;function x3(){this.yy={}}return x3.prototype=dm,dm.Parser=x3,new x3}();Pdt.parser=Pdt;const Fdt=Pdt,TDe="flowchart-";let TNt=0,Bdt=De(),El={},l9=[],QA={},T5=[],QW={},ZW={},JW=0,Rdt=!0,ev,tK,eK=[];const nK=i=>ui.sanitizeText(i,Bdt),_Nt=function(i,a,f){J1.parseDirective(this,i,a,f)},sP=function(i){const a=Object.keys(El);for(const f of a)if(El[f].id===i)return El[f].domId;return i},CNt=function(i,a,f,p,v,m,b={}){let E,C=i;C!==void 0&&C.trim().length!==0&&(El[C]===void 0&&(El[C]={id:C,labelType:"text",domId:TDe+C+"-"+TNt,styles:[],classes:[]}),TNt++,a!==void 0?(Bdt=De(),E=nK(a.text.trim()),El[C].labelType=a.type,E[0]==='"'&&E[E.length-1]==='"'&&(E=E.substring(1,E.length-1)),El[C].text=E):El[C].text===void 0&&(El[C].text=i),f!==void 0&&(El[C].type=f),p!=null&&p.forEach(function(A){El[C].styles.push(A)}),v!=null&&v.forEach(function(A){El[C].classes.push(A)}),m!==void 0&&(El[C].dir=m),El[C].props===void 0?El[C].props=b:b!==void 0&&Object.assign(El[C].props,b))},SNt=function(i,a,f){const m={start:i,end:a,type:void 0,text:"",labelType:"text"};Wt.info("abc78 Got edge...",m);const b=f.text;b!==void 0&&(m.text=nK(b.text.trim()),m.text[0]==='"'&&m.text[m.text.length-1]==='"'&&(m.text=m.text.substring(1,m.text.length-1)),m.labelType=b.type),f!==void 0&&(m.type=f.type,m.stroke=f.stroke,m.length=f.length),l9.push(m)},ANt=function(i,a,f){Wt.info("addLink (abc78)",i,a,f);let p,v;for(p=0;p/)&&(ev="LR"),ev.match(/.*v/)&&(ev="TB"),ev==="TD"&&(ev="TB")},rK=function(i,a){i.split(",").forEach(function(f){let p=f;El[p]!==void 0&&El[p].classes.push(a),QW[p]!==void 0&&QW[p].classes.push(a)})},_De=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(ZW[tK==="gen-1"?sP(f):f]=nK(a))})},CDe=function(i,a,f){let p=sP(i);if(De().securityLevel!=="loose"||a===void 0)return;let v=[];if(typeof f=="string"){v=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let m=0;m")),v.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),xr(this).classed("hover",!1)})};eK.push(zNt);const qNt=function(i="gen-1"){El={},QA={},l9=[],eK=[zNt],T5=[],QW={},JW=0,ZW={},Rdt=!0,tK=i,cg()},HNt=i=>{tK=i||"gen-2"},VNt=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},GNt=function(i,a,f){let p=i.text.trim(),v=f.text;i===f&&f.text.match(/\s/)&&(p=void 0);function m(P){const F={boolean:{},number:{},string:{}},j=[];let R;return{nodeList:P.filter(function(Y){const rt=typeof Y;return Y.stmt&&Y.stmt==="dir"?(R=Y.value,!1):Y.trim()===""?!1:rt in F?F[rt].hasOwnProperty(Y)?!1:F[rt][Y]=!0:j.includes(Y)?!1:j.push(Y)}),dir:R}}let b=[];const{nodeList:E,dir:C}=m(b.concat.apply(b,a));if(b=E,tK==="gen-1")for(let P=0;P2e3)return;if(UNt[aP]=a,T5[a].id===i)return{result:!0,count:0};let p=0,v=1;for(;p=0){const b=WNt(i,m);if(b.result)return{result:!0,count:v+b.count};v=v+b.count}p=p+1}return{result:!1,count:v}},KNt=function(i){return UNt[i]},YNt=function(){aP=-1,T5.length>0&&WNt("none",T5.length-1)},XNt=function(){return T5},QNt=()=>Rdt?(Rdt=!1,!0):!1,ADe=i=>{let a=i.trim(),f="arrow_open";switch(a[0]){case"<":f="arrow_point",a=a.slice(1);break;case"x":f="arrow_cross",a=a.slice(1);break;case"o":f="arrow_circle",a=a.slice(1);break}let p="normal";return a.includes("=")&&(p="thick"),a.includes(".")&&(p="dotted"),{type:f,stroke:p}},LDe=(i,a)=>{const f=a.length;let p=0;for(let v=0;v{const a=i.trim();let f=a.slice(0,-1),p="arrow_open";switch(a.slice(-1)){case"x":p="arrow_cross",a[0]==="x"&&(p="double_"+p,f=f.slice(1));break;case">":p="arrow_point",a[0]==="<"&&(p="double_"+p,f=f.slice(1));break;case"o":p="arrow_circle",a[0]==="o"&&(p="double_"+p,f=f.slice(1));break}let v="normal",m=f.length-1;f[0]==="="&&(v="thick"),f[0]==="~"&&(v="invisible");let b=LDe(".",f);return b&&(v="dotted",m=b),{type:p,stroke:v,length:m}},ZNt=(i,a)=>{const f=MDe(i);let p;if(a){if(p=ADe(a),p.stroke!==f.stroke)return{type:"INVALID",stroke:"INVALID"};if(p.type==="arrow_open")p.type=f.type;else{if(p.type!==f.type)return{type:"INVALID",stroke:"INVALID"};p.type="double_"+p.type}return p.type==="double_arrow"&&(p.type="double_arrow_point"),p.length=f.length,p}return f},JNt=(i,a)=>{let f=!1;return i.forEach(p=>{p.nodes.indexOf(a)>=0&&(f=!0)}),f},tPt=(i,a)=>{const f=[];return i.nodes.forEach((p,v)=>{JNt(a,p)||f.push(i.nodes[v])}),{nodes:f}},ePt={firstGraph:QNt},h9={parseDirective:_Nt,defaultConfig:()=>i9.flowchart,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,addVertex:CNt,lookUpDomId:sP,addLink:ANt,updateLinkInterpolate:LNt,updateLink:MNt,addClass:DNt,setDirection:INt,setClass:rK,setTooltip:_De,getTooltip:NNt,setClickEvent:PNt,setLink:ONt,bindFunctions:FNt,getDirection:BNt,getVertices:RNt,getEdges:jNt,getClasses:$Nt,clear:qNt,setGen:HNt,defaultStyle:VNt,addSubGraph:GNt,getDepthFirstPos:KNt,indexNodes:YNt,getSubGraphs:XNt,destructLink:ZNt,lex:ePt,exists:JNt,makeUniq:tPt,setDiagramTitle:Nb,getDiagramTitle:hp},DDe=Object.freeze(Object.defineProperty({__proto__:null,addClass:DNt,addLink:ANt,addSingleLink:SNt,addSubGraph:GNt,addVertex:CNt,bindFunctions:FNt,clear:qNt,default:h9,defaultStyle:VNt,destructLink:ZNt,firstGraph:QNt,getClasses:$Nt,getDepthFirstPos:KNt,getDirection:BNt,getEdges:jNt,getSubGraphs:XNt,getTooltip:NNt,getVertices:RNt,indexNodes:YNt,lex:ePt,lookUpDomId:sP,parseDirective:_Nt,setClass:rK,setClickEvent:PNt,setDirection:INt,setGen:HNt,setLink:ONt,updateLink:MNt,updateLinkInterpolate:LNt},Symbol.toStringTag,{value:"Module"}));var IDe="[object Symbol]";function f9(i){return typeof i=="symbol"||l3(i)&&QE(i)==IDe}function ZA(i,a){for(var f=-1,p=i==null?0:i.length,v=Array(p);++f-1}function Fb(i){return tk(i)?MIt(i):QOt(i)}var XDe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,QDe=/^\w*$/;function jdt(i,a){if(Of(i))return!1;var f=typeof i;return f=="number"||f=="symbol"||f=="boolean"||i==null||f9(i)?!0:QDe.test(i)||!XDe.test(i)||a!=null&&i in Object(a)}var ZDe=500;function JDe(i){var a=FA(i,function(p){return f.size===ZDe&&f.clear(),p}),f=a.cache;return a}var tIe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,eIe=/\\(\\)?/g,nIe=JDe(function(i){var a=[];return i.charCodeAt(0)===46&&a.push(""),i.replace(tIe,function(f,p,v,m){a.push(v?m.replace(eIe,"$1"):p||f)}),a});const rIe=nIe;function uPt(i){return i==null?"":iPt(i)}function sK(i,a){return Of(i)?i:jdt(i,a)?[i]:rIe(uPt(i))}var iIe=1/0;function oP(i){if(typeof i=="string"||f9(i))return i;var a=i+"";return a=="0"&&1/i==-iIe?"-0":a}function aK(i,a){a=sK(a,i);for(var f=0,p=a.length;i!=null&&f0&&f(E)?a>1?oK(E,a-1,f,p,v):$dt(v,E):p||(v[v.length]=E)}return v}function JA(i){var a=i==null?0:i.length;return a?oK(i,1):[]}function oIe(i){return NIt(OIt(i,void 0,JA),i+"")}function cIe(i,a,f,p){var v=-1,m=i==null?0:i.length;for(p&&m&&(f=i[++v]);++vE))return!1;var A=m.get(i),P=m.get(a);if(A&&P)return A==a&&P==i;var F=-1,j=!0,R=f&FOe?new uP:void 0;for(m.set(i,a),m.set(a,i);++F2?a[2]:void 0;for(v&&KN(a[0],a[1],v)&&(p=1);++f-1?v[m?a[b]:b]:void 0}}var _Ne=Math.max;function CNe(i,a,f){var p=i==null?0:i.length;if(!p)return-1;var v=f==null?0:VDe(f);return v<0&&(v=_Ne(p+v,0)),cPt(i,ak(a),v)}var SNe=TNe(CNe);const Kdt=SNe;function PPt(i,a){var f=-1,p=tk(i)?Array(i.length):[];return uK(i,function(v,m,b){p[++f]=a(v,m,b)}),p}function Ff(i,a){var f=Of(i)?ZA:PPt;return f(i,ak(a))}function ANe(i,a){return i==null?i:Y1t(i,Wdt(a),e9)}function LNe(i,a){return i&&Udt(i,Wdt(a))}function MNe(i,a){return i>a}var DNe=Object.prototype,INe=DNe.hasOwnProperty;function ONe(i,a){return i!=null&&INe.call(i,a)}function Va(i,a){return i!=null&&DPt(i,a,ONe)}function NNe(i,a){return ZA(a,function(f){return i[f]})}function C5(i){return i==null?[]:NNe(i,Fb(i))}function tf(i){return i===void 0}function FPt(i,a){return ia||m&&b&&C&&!E&&!A||p&&b&&C||!f&&C||!v)return 1;if(!p&&!m&&!A&&i=E)return C;var A=f[p];return C*(A=="desc"?-1:1)}}return i.index-a.index}function $Ne(i,a,f){a.length?a=ZA(a,function(m){return Of(m)?function(b){return aK(b,m.length===1?m[0]:m)}:m}):a=[n9];var p=-1;a=ZA(a,wW(ak));var v=PPt(i,function(m,b,E){var C=ZA(a,function(A){return A(m)});return{criteria:C,index:++p,value:m}});return BNe(v,function(m,b){return jNe(m,b,f)})}function zNe(i,a){return FNe(i,a,function(f,p){return IPt(i,p)})}var qNe=oIe(function(i,a){return i==null?{}:zNe(i,a)});const hP=qNe;var HNe=Math.ceil,VNe=Math.max;function GNe(i,a,f,p){for(var v=-1,m=VNe(HNe((a-i)/(f||1)),0),b=Array(m);m--;)b[p?m:++v]=i,i+=f;return b}function UNe(i){return function(a,f,p){return p&&typeof p!="number"&&KN(a,f,p)&&(f=p=void 0),a=iK(a),f===void 0?(f=a,a=0):f=iK(f),p=p===void 0?a1&&KN(i,a[0],a[1])?a=[]:f>2&&KN(a[0],a[1],a[2])&&(a=[a[0]]),$Ne(i,oK(a,1),[])});const dP=YNe;var XNe=1/0,QNe=YA&&1/Hdt(new YA([,-0]))[1]==XNe?function(i){return new YA(i)}:GDe;const ZNe=QNe;var JNe=200;function tPe(i,a,f){var p=-1,v=YDe,m=i.length,b=!0,E=[],C=E;if(f)b=!1,v=kNe;else if(m>=JNe){var A=a?null:ZNe(i);if(A)return Hdt(A);b=!1,v=EPt,C=new uP}else C=a?[]:E;t:for(;++p1?v.setNode(m,f):v.setNode(m)}),this}setNode(a,f){return Va(this._nodes,a)?(arguments.length>1&&(this._nodes[a]=f),this):(this._nodes[a]=arguments.length>1?f:this._defaultNodeLabelFn(a),this._isCompound&&(this._parent[a]=p9,this._children[a]={},this._children[p9][a]=!0),this._in[a]={},this._preds[a]={},this._out[a]={},this._sucs[a]={},++this._nodeCount,this)}node(a){return this._nodes[a]}hasNode(a){return Va(this._nodes,a)}removeNode(a){var f=this;if(Va(this._nodes,a)){var p=function(v){f.removeEdge(f._edgeObjs[v])};delete this._nodes[a],this._isCompound&&(this._removeFromParentsChildList(a),delete this._parent[a],cr(this.children(a),function(v){f.setParent(v)}),delete this._children[a]),cr(Fb(this._in[a]),p),delete this._in[a],delete this._preds[a],cr(Fb(this._out[a]),p),delete this._out[a],delete this._sucs[a],--this._nodeCount}return this}setParent(a,f){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(tf(f))f=p9;else{f+="";for(var p=f;!tf(p);p=this.parent(p))if(p===a)throw new Error("Setting "+f+" as parent of "+a+" would create a cycle");this.setNode(f)}return this.setNode(a),this._removeFromParentsChildList(a),this._parent[a]=f,this._children[f][a]=!0,this}_removeFromParentsChildList(a){delete this._children[this._parent[a]][a]}parent(a){if(this._isCompound){var f=this._parent[a];if(f!==p9)return f}}children(a){if(tf(a)&&(a=p9),this._isCompound){var f=this._children[a];if(f)return Fb(f)}else{if(a===p9)return this.nodes();if(this.hasNode(a))return[]}}predecessors(a){var f=this._preds[a];if(f)return Fb(f)}successors(a){var f=this._sucs[a];if(f)return Fb(f)}neighbors(a){var f=this.predecessors(a);if(f)return nPe(f,this.successors(a))}isLeaf(a){var f;return this.isDirected()?f=this.successors(a):f=this.neighbors(a),f.length===0}filterNodes(a){var f=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});f.setGraph(this.graph());var p=this;cr(this._nodes,function(b,E){a(E)&&f.setNode(E,b)}),cr(this._edgeObjs,function(b){f.hasNode(b.v)&&f.hasNode(b.w)&&f.setEdge(b,p.edge(b))});var v={};function m(b){var E=p.parent(b);return E===void 0||f.hasNode(E)?(v[b]=E,E):E in v?v[E]:m(E)}return this._isCompound&&cr(f.nodes(),function(b){f.setParent(b,m(b))}),f}setDefaultEdgeLabel(a){return NA(a)||(a=$A(a)),this._defaultEdgeLabelFn=a,this}edgeCount(){return this._edgeCount}edges(){return C5(this._edgeObjs)}setPath(a,f){var p=this,v=arguments;return fP(a,function(m,b){return v.length>1?p.setEdge(m,b,f):p.setEdge(m,b),b}),this}setEdge(){var a,f,p,v,m=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(a=b.v,f=b.w,p=b.name,arguments.length===2&&(v=arguments[1],m=!0)):(a=b,f=arguments[1],p=arguments[3],arguments.length>2&&(v=arguments[2],m=!0)),a=""+a,f=""+f,tf(p)||(p=""+p);var E=gP(this._isDirected,a,f,p);if(Va(this._edgeLabels,E))return m&&(this._edgeLabels[E]=v),this;if(!tf(p)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(a),this.setNode(f),this._edgeLabels[E]=m?v:this._defaultEdgeLabelFn(a,f,p);var C=oPe(this._isDirected,a,f,p);return a=C.v,f=C.w,Object.freeze(C),this._edgeObjs[E]=C,RPt(this._preds[f],a),RPt(this._sucs[a],f),this._in[f][E]=C,this._out[a][E]=C,this._edgeCount++,this}edge(a,f,p){var v=arguments.length===1?Qdt(this._isDirected,arguments[0]):gP(this._isDirected,a,f,p);return this._edgeLabels[v]}hasEdge(a,f,p){var v=arguments.length===1?Qdt(this._isDirected,arguments[0]):gP(this._isDirected,a,f,p);return Va(this._edgeLabels,v)}removeEdge(a,f,p){var v=arguments.length===1?Qdt(this._isDirected,arguments[0]):gP(this._isDirected,a,f,p),m=this._edgeObjs[v];return m&&(a=m.v,f=m.w,delete this._edgeLabels[v],delete this._edgeObjs[v],jPt(this._preds[f],a),jPt(this._sucs[a],f),delete this._in[f][v],delete this._out[a][v],this._edgeCount--),this}inEdges(a,f){var p=this._in[a];if(p){var v=C5(p);return f?_5(v,function(m){return m.v===f}):v}}outEdges(a,f){var p=this._out[a];if(p){var v=C5(p);return f?_5(v,function(m){return m.w===f}):v}}nodeEdges(a,f){var p=this.inEdges(a,f);if(p)return p.concat(this.outEdges(a,f))}}l1.prototype._nodeCount=0,l1.prototype._edgeCount=0;function RPt(i,a){i[a]?i[a]++:i[a]=1}function jPt(i,a){--i[a]||delete i[a]}function gP(i,a,f,p){var v=""+a,m=""+f;if(!i&&v>m){var b=v;v=m,m=b}return v+BPt+m+BPt+(tf(p)?aPe:p)}function oPe(i,a,f,p){var v=""+a,m=""+f;if(!i&&v>m){var b=v;v=m,m=b}var E={v,w:m};return p&&(E.name=p),E}function Qdt(i,a){return gP(i,a.v,a.w,a.name)}class cPe{constructor(){var a={};a._next=a._prev=a,this._sentinel=a}dequeue(){var a=this._sentinel,f=a._prev;if(f!==a)return $Pt(f),f}enqueue(a){var f=this._sentinel;a._prev&&a._next&&$Pt(a),a._next=f._next,f._next._prev=a,f._next=a,a._prev=f}toString(){for(var a=[],f=this._sentinel,p=f._prev;p!==f;)a.push(JSON.stringify(p,uPe)),p=p._prev;return"["+a.join(", ")+"]"}}function $Pt(i){i._prev._next=i._next,i._next._prev=i._prev,delete i._next,delete i._prev}function uPe(i,a){if(i!=="_next"&&i!=="_prev")return a}var lPe=$A(1);function hPe(i,a){if(i.nodeCount()<=1)return[];var f=dPe(i,a||lPe),p=fPe(f.graph,f.buckets,f.zeroIdx);return JA(Ff(p,function(v){return i.outEdges(v.v,v.w)}))}function fPe(i,a,f){for(var p=[],v=a[a.length-1],m=a[0],b;i.nodeCount();){for(;b=m.dequeue();)Zdt(i,a,f,b);for(;b=v.dequeue();)Zdt(i,a,f,b);if(i.nodeCount()){for(var E=a.length-2;E>0;--E)if(b=a[E].dequeue(),b){p=p.concat(Zdt(i,a,f,b,!0));break}}}return p}function Zdt(i,a,f,p,v){var m=v?[]:void 0;return cr(i.inEdges(p.v),function(b){var E=i.edge(b),C=i.node(b.v);v&&m.push({v:b.v,w:b.w}),C.out-=E,Jdt(a,f,C)}),cr(i.outEdges(p.v),function(b){var E=i.edge(b),C=b.w,A=i.node(C);A.in-=E,Jdt(a,f,A)}),i.removeNode(p.v),m}function dPe(i,a){var f=new l1,p=0,v=0;cr(i.nodes(),function(E){f.setNode(E,{v:E,in:0,out:0})}),cr(i.edges(),function(E){var C=f.edge(E.v,E.w)||0,A=a(E),P=C+A;f.setEdge(E.v,E.w,P),v=Math.max(v,f.node(E.v).out+=A),p=Math.max(p,f.node(E.w).in+=A)});var m=g9(v+p+3).map(function(){return new cPe}),b=p+1;return cr(f.nodes(),function(E){Jdt(m,b,f.node(E))}),{graph:f,buckets:m,zeroIdx:b}}function Jdt(i,a,f){f.out?f.in?i[f.out-f.in+a].enqueue(f):i[i.length-1].enqueue(f):i[0].enqueue(f)}function gPe(i){var a=i.graph().acyclicer==="greedy"?hPe(i,f(i)):pPe(i);cr(a,function(p){var v=i.edge(p);i.removeEdge(p),v.forwardName=p.name,v.reversed=!0,i.setEdge(p.w,p.v,v,fK("rev"))});function f(p){return function(v){return p.edge(v).weight}}}function pPe(i){var a=[],f={},p={};function v(m){Va(p,m)||(p[m]=!0,f[m]=!0,cr(i.outEdges(m),function(b){Va(f,b.w)?a.push(b):v(b.w)}),delete f[m])}return cr(i.nodes(),v),a}function bPe(i){cr(i.edges(),function(a){var f=i.edge(a);if(f.reversed){i.removeEdge(a);var p=f.forwardName;delete f.reversed,delete f.forwardName,i.setEdge(a.w,a.v,f,p)}})}function eL(i,a,f,p){var v;do v=fK(p);while(i.hasNode(v));return f.dummy=a,i.setNode(v,f),v}function vPe(i){var a=new l1().setGraph(i.graph());return cr(i.nodes(),function(f){a.setNode(f,i.node(f))}),cr(i.edges(),function(f){var p=a.edge(f.v,f.w)||{weight:0,minlen:1},v=i.edge(f);a.setEdge(f.v,f.w,{weight:p.weight+v.weight,minlen:Math.max(p.minlen,v.minlen)})}),a}function zPt(i){var a=new l1({multigraph:i.isMultigraph()}).setGraph(i.graph());return cr(i.nodes(),function(f){i.children(f).length||a.setNode(f,i.node(f))}),cr(i.edges(),function(f){a.setEdge(f,i.edge(f))}),a}function qPt(i,a){var f=i.x,p=i.y,v=a.x-f,m=a.y-p,b=i.width/2,E=i.height/2;if(!v&&!m)throw new Error("Not possible to find intersection inside of the rectangle");var C,A;return Math.abs(m)*b>Math.abs(v)*E?(m<0&&(E=-E),C=E*v/m,A=E):(v<0&&(b=-b),C=b,A=b*m/v),{x:f+C,y:p+A}}function dK(i){var a=Ff(g9(VPt(i)+1),function(){return[]});return cr(i.nodes(),function(f){var p=i.node(f),v=p.rank;tf(v)||(a[v][p.order]=f)}),a}function wPe(i){var a=lP(Ff(i.nodes(),function(f){return i.node(f).rank}));cr(i.nodes(),function(f){var p=i.node(f);Va(p,"rank")&&(p.rank-=a)})}function mPe(i){var a=lP(Ff(i.nodes(),function(m){return i.node(m).rank})),f=[];cr(i.nodes(),function(m){var b=i.node(m).rank-a;f[b]||(f[b]=[]),f[b].push(m)});var p=0,v=i.graph().nodeRankFactor;cr(f,function(m,b){tf(m)&&b%v!==0?--p:p&&cr(m,function(E){i.node(E).rank+=p})})}function HPt(i,a,f,p){var v={width:0,height:0};return arguments.length>=4&&(v.rank=f,v.order=p),eL(i,"border",v,a)}function VPt(i){return d9(Ff(i.nodes(),function(a){var f=i.node(a).rank;if(!tf(f))return f}))}function yPe(i,a){var f={lhs:[],rhs:[]};return cr(i,function(p){a(p)?f.lhs.push(p):f.rhs.push(p)}),f}function xPe(i,a){var f=OPt();try{return a()}finally{console.log(i+" time: "+(OPt()-f)+"ms")}}function kPe(i,a){return a()}function EPe(i){function a(f){var p=i.children(f),v=i.node(f);if(p.length&&cr(p,a),Va(v,"minRank")){v.borderLeft=[],v.borderRight=[];for(var m=v.minRank,b=v.maxRank+1;mb.lim&&(E=b,C=!0);var A=_5(a.edges(),function(P){return C===nFt(i,i.node(P.v),E)&&C!==nFt(i,i.node(P.w),E)});return Xdt(A,function(P){return pP(a,P)})}function eFt(i,a,f,p){var v=f.v,m=f.w;i.removeEdge(v,m),i.setEdge(p.v,p.w,{}),i0t(i),r0t(i,a),RPe(i,a)}function RPe(i,a){var f=Kdt(i.nodes(),function(v){return!a.node(v).parent}),p=FPe(i,f);p=p.slice(1),cr(p,function(v){var m=i.node(v).parent,b=a.edge(v,m),E=!1;b||(b=a.edge(m,v),E=!0),a.node(v).rank=a.node(m).rank+(E?b.minlen:-b.minlen)})}function jPe(i,a,f){return i.hasEdge(a,f)}function nFt(i,a,f){return f.low<=a.lim&&a.lim<=f.lim}function $Pe(i){switch(i.graph().ranker){case"network-simplex":rFt(i);break;case"tight-tree":qPe(i);break;case"longest-path":zPe(i);break;default:rFt(i)}}var zPe=n0t;function qPe(i){n0t(i),KPt(i)}function rFt(i){b9(i)}function HPe(i){var a=eL(i,"root",{},"_root"),f=VPe(i),p=d9(C5(f))-1,v=2*p+1;i.graph().nestingRoot=a,cr(i.edges(),function(b){i.edge(b).minlen*=v});var m=GPe(i)+1;cr(i.children(),function(b){iFt(i,a,v,m,p,f,b)}),i.graph().nodeRankFactor=v}function iFt(i,a,f,p,v,m,b){var E=i.children(b);if(!E.length){b!==a&&i.setEdge(a,b,{weight:0,minlen:f});return}var C=HPt(i,"_bt"),A=HPt(i,"_bb"),P=i.node(b);i.setParent(C,b),P.borderTop=C,i.setParent(A,b),P.borderBottom=A,cr(E,function(F){iFt(i,a,f,p,v,m,F);var j=i.node(F),R=j.borderTop?j.borderTop:F,H=j.borderBottom?j.borderBottom:F,Y=j.borderTop?p:2*p,rt=R!==H?1:v-m[b]+1;i.setEdge(C,R,{weight:Y,minlen:rt,nestingEdge:!0}),i.setEdge(H,A,{weight:Y,minlen:rt,nestingEdge:!0})}),i.parent(b)||i.setEdge(a,C,{weight:0,minlen:v+m[b]})}function VPe(i){var a={};function f(p,v){var m=i.children(p);m&&m.length&&cr(m,function(b){f(b,v+1)}),a[p]=v}return cr(i.children(),function(p){f(p,1)}),a}function GPe(i){return fP(i.edges(),function(a,f){return a+i.edge(f).weight},0)}function UPe(i){var a=i.graph();i.removeNode(a.nestingRoot),delete a.nestingRoot,cr(i.edges(),function(f){var p=i.edge(f);p.nestingEdge&&i.removeEdge(f)})}function WPe(i,a,f){var p={},v;cr(f,function(m){for(var b=i.parent(m),E,C;b;){if(E=i.parent(b),E?(C=p[E],p[E]=b):(C=v,v=b),C&&C!==b){a.setEdge(C,b);return}b=E}})}function KPe(i,a,f){var p=YPe(i),v=new l1({compound:!0}).setGraph({root:p}).setDefaultNodeLabel(function(m){return i.node(m)});return cr(i.nodes(),function(m){var b=i.node(m),E=i.parent(m);(b.rank===a||b.minRank<=a&&a<=b.maxRank)&&(v.setNode(m),v.setParent(m,E||p),cr(i[f](m),function(C){var A=C.v===m?C.w:C.v,P=v.edge(A,m),F=tf(P)?0:P.weight;v.setEdge(A,m,{weight:i.edge(C).weight+F})}),Va(b,"minRank")&&v.setNode(m,{borderLeft:b.borderLeft[a],borderRight:b.borderRight[a]}))}),v}function YPe(i){for(var a;i.hasNode(a=fK("_root")););return a}function XPe(i,a){for(var f=0,p=1;p0;)P%2&&(F+=E[P+1]),P=P-1>>1,E[P]+=A.weight;C+=A.weight*F})),C}function ZPe(i){var a={},f=_5(i.nodes(),function(E){return!i.children(E).length}),p=d9(Ff(f,function(E){return i.node(E).rank})),v=Ff(g9(p+1),function(){return[]});function m(E){if(!Va(a,E)){a[E]=!0;var C=i.node(E);v[C.rank].push(E),cr(i.successors(E),m)}}var b=dP(f,function(E){return i.node(E).rank});return cr(b,m),v}function JPe(i,a){return Ff(a,function(f){var p=i.inEdges(f);if(p.length){var v=fP(p,function(m,b){var E=i.edge(b),C=i.node(b.v);return{sum:m.sum+E.weight*C.order,weight:m.weight+E.weight}},{sum:0,weight:0});return{v:f,barycenter:v.sum/v.weight,weight:v.weight}}else return{v:f}})}function tFe(i,a){var f={};cr(i,function(v,m){var b=f[v.v]={indegree:0,in:[],out:[],vs:[v.v],i:m};tf(v.barycenter)||(b.barycenter=v.barycenter,b.weight=v.weight)}),cr(a.edges(),function(v){var m=f[v.v],b=f[v.w];!tf(m)&&!tf(b)&&(b.indegree++,m.out.push(f[v.w]))});var p=_5(f,function(v){return!v.indegree});return eFe(p)}function eFe(i){var a=[];function f(m){return function(b){b.merged||(tf(b.barycenter)||tf(m.barycenter)||b.barycenter>=m.barycenter)&&nFe(m,b)}}function p(m){return function(b){b.in.push(m),--b.indegree===0&&i.push(b)}}for(;i.length;){var v=i.pop();a.push(v),cr(v.in.reverse(),f(v)),cr(v.out,p(v))}return Ff(_5(a,function(m){return!m.merged}),function(m){return hP(m,["vs","i","barycenter","weight"])})}function nFe(i,a){var f=0,p=0;i.weight&&(f+=i.barycenter*i.weight,p+=i.weight),a.weight&&(f+=a.barycenter*a.weight,p+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=f/p,i.weight=p,i.i=Math.min(a.i,i.i),a.merged=!0}function rFe(i,a){var f=yPe(i,function(P){return Va(P,"barycenter")}),p=f.lhs,v=dP(f.rhs,function(P){return-P.i}),m=[],b=0,E=0,C=0;p.sort(iFe(!!a)),C=sFt(m,v,C),cr(p,function(P){C+=P.vs.length,m.push(P.vs),b+=P.barycenter*P.weight,E+=P.weight,C=sFt(m,v,C)});var A={vs:JA(m)};return E&&(A.barycenter=b/E,A.weight=E),A}function sFt(i,a,f){for(var p;a.length&&(p=lK(a)).i<=f;)a.pop(),i.push(p.vs),f++;return f}function iFe(i){return function(a,f){return a.barycenterf.barycenter?1:i?f.i-a.i:a.i-f.i}}function aFt(i,a,f,p){var v=i.children(a),m=i.node(a),b=m?m.borderLeft:void 0,E=m?m.borderRight:void 0,C={};b&&(v=_5(v,function(H){return H!==b&&H!==E}));var A=JPe(i,v);cr(A,function(H){if(i.children(H.v).length){var Y=aFt(i,H.v,f,p);C[H.v]=Y,Va(Y,"barycenter")&&aFe(H,Y)}});var P=tFe(A,f);sFe(P,C);var F=rFe(P,p);if(b&&(F.vs=JA([b,F.vs,E]),i.predecessors(b).length)){var j=i.node(i.predecessors(b)[0]),R=i.node(i.predecessors(E)[0]);Va(F,"barycenter")||(F.barycenter=0,F.weight=0),F.barycenter=(F.barycenter*F.weight+j.order+R.order)/(F.weight+2),F.weight+=2}return F}function sFe(i,a){cr(i,function(f){f.vs=JA(f.vs.map(function(p){return a[p]?a[p].vs:p}))})}function aFe(i,a){tf(i.barycenter)?(i.barycenter=a.barycenter,i.weight=a.weight):(i.barycenter=(i.barycenter*i.weight+a.barycenter*a.weight)/(i.weight+a.weight),i.weight+=a.weight)}function oFe(i){var a=VPt(i),f=oFt(i,g9(1,a+1),"inEdges"),p=oFt(i,g9(a-1,-1,-1),"outEdges"),v=ZPe(i);cFt(i,v);for(var m=Number.POSITIVE_INFINITY,b,E=0,C=0;C<4;++E,++C){cFe(E%2?f:p,E%4>=2),v=dK(i);var A=XPe(i,v);Ab||E>a[C].lim));for(A=C,C=p;(C=i.parent(C))!==A;)m.push(C);return{path:v.concat(m.reverse()),lca:A}}function hFe(i){var a={},f=0;function p(v){var m=f;cr(i.children(v),p),a[v]={low:m,lim:f++}}return cr(i.children(),p),a}function fFe(i,a){var f={};function p(v,m){var b=0,E=0,C=v.length,A=lK(m);return cr(m,function(P,F){var j=gFe(i,P),R=j?i.node(j).order:C;(j||P===A)&&(cr(m.slice(E,F+1),function(H){cr(i.predecessors(H),function(Y){var rt=i.node(Y),J=rt.order;(JA)&&uFt(f,j,P)})})}function v(m,b){var E=-1,C,A=0;return cr(b,function(P,F){if(i.node(P).dummy==="border"){var j=i.predecessors(P);j.length&&(C=i.node(j[0]).order,p(b,A,F,E,C),A=F,E=C)}p(b,A,b.length,C,m.length)}),b}return fP(a,v),f}function gFe(i,a){if(i.node(a).dummy)return Kdt(i.predecessors(a),function(f){return i.node(f).dummy})}function uFt(i,a,f){if(a>f){var p=a;a=f,f=p}var v=i[a];v||(i[a]=v={}),v[f]=!0}function pFe(i,a,f){if(a>f){var p=a;a=f,f=p}return Va(i[a],f)}function bFe(i,a,f,p){var v={},m={},b={};return cr(a,function(E){cr(E,function(C,A){v[C]=C,m[C]=C,b[C]=A})}),cr(a,function(E){var C=-1;cr(E,function(A){var P=p(A);if(P.length){P=dP(P,function(Y){return b[Y]});for(var F=(P.length-1)/2,j=Math.floor(F),R=Math.ceil(F);j<=R;++j){var H=P[j];m[A]===A&&C0}function b3(i,a,f){var p=i.x,v=i.y,m=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;a.forEach(function(H){b=Math.min(b,H.x),E=Math.min(E,H.y)});for(var C=p-i.width/2-b,A=v-i.height/2-E,P=0;P1&&m.sort(function(H,Y){var rt=H.x-f.x,J=H.y-f.y,it=Math.sqrt(rt*rt+J*J),ft=Y.x-f.x,Tt=Y.y-f.y,kt=Math.sqrt(ft*ft+Tt*Tt);return itMath.abs(v)*E?(m<0&&(E=-E),C=m===0?0:E*v/m,A=E):(v<0&&(b=-b),C=b,A=v===0?0:b*m/v),{x:f+C,y:p+A}}var b0t={rect:mBe,ellipse:yBe,circle:xBe,diamond:kBe};function wBe(i){b0t=i}function mBe(i,a,f){var p=i.insert("rect",":first-child").attr("rx",f.rx).attr("ry",f.ry).attr("x",-a.width/2).attr("y",-a.height/2).attr("width",a.width).attr("height",a.height);return f.intersect=function(v){return p0t(f,v)},p}function yBe(i,a,f){var p=a.width/2,v=a.height/2,m=i.insert("ellipse",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("rx",p).attr("ry",v);return f.intersect=function(b){return pFt(f,p,v,b)},m}function xBe(i,a,f){var p=Math.max(a.width,a.height)/2,v=i.insert("circle",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("r",p);return f.intersect=function(m){return bBe(f,p,m)},v}function kBe(i,a,f){var p=a.width*Math.SQRT2/2,v=a.height*Math.SQRT2/2,m=[{x:0,y:-v},{x:-p,y:0},{x:0,y:v},{x:p,y:0}],b=i.insert("polygon",":first-child").attr("points",m.map(function(E){return E.x+","+E.y}).join(" "));return f.intersect=function(E){return b3(f,m,E)},b}function EBe(){var i=function(a,f){CBe(f);var p=bP(a,"output"),v=bP(p,"clusters"),m=bP(p,"edgePaths"),b=f0t(bP(p,"edgeLabels"),f),E=g0t(bP(p,"nodes"),f,b0t);nL(f),pBe(E,f),gBe(b,f),d0t(m,f,c0t);var C=h0t(v,f);dBe(C,f),SBe(f)};return i.createNodes=function(a){return arguments.length?(fBe(a),i):g0t},i.createClusters=function(a){return arguments.length?(iBe(a),i):h0t},i.createEdgeLabels=function(a){return arguments.length?(sBe(a),i):f0t},i.createEdgePaths=function(a){return arguments.length?(aBe(a),i):d0t},i.shapes=function(a){return arguments.length?(wBe(a),i):b0t},i.arrows=function(a){return arguments.length?(QFe(a),i):c0t},i}var TBe={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},_Be={arrowhead:"normal",curve:ig};function CBe(i){i.nodes().forEach(function(a){var f=i.node(a);!Va(f,"label")&&!i.children(a).length&&(f.label=a),Va(f,"paddingX")&&tL(f,{paddingLeft:f.paddingX,paddingRight:f.paddingX}),Va(f,"paddingY")&&tL(f,{paddingTop:f.paddingY,paddingBottom:f.paddingY}),Va(f,"padding")&&tL(f,{paddingLeft:f.padding,paddingRight:f.padding,paddingTop:f.padding,paddingBottom:f.padding}),tL(f,TBe),cr(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(p){f[p]=Number(f[p])}),Va(f,"width")&&(f._prevWidth=f.width),Va(f,"height")&&(f._prevHeight=f.height)}),i.edges().forEach(function(a){var f=i.edge(a);Va(f,"label")||(f.label=""),tL(f,_Be)})}function SBe(i){cr(i.nodes(),function(a){var f=i.node(a);Va(f,"_prevWidth")?f.width=f._prevWidth:delete f.width,Va(f,"_prevHeight")?f.height=f._prevHeight:delete f.height,delete f._prevWidth,delete f._prevHeight})}function bP(i,a){var f=i.select("g."+a);return f.empty()&&(f=i.append("g").attr("class",a)),f}function vFt(i,a,f){const p=a.width,v=a.height,m=(p+v)*.9,b=[{x:m/2,y:0},{x:m,y:-m/2},{x:m/2,y:-m},{x:0,y:-m/2}],E=S5(i,m,m,b);return f.intersect=function(C){return b3(f,b,C)},E}function wFt(i,a,f){const v=a.height,m=v/4,b=a.width+2*m,E=[{x:m,y:0},{x:b-m,y:0},{x:b,y:-v/2},{x:b-m,y:-v},{x:m,y:-v},{x:0,y:-v/2}],C=S5(i,b,v,E);return f.intersect=function(A){return b3(f,E,A)},C}function mFt(i,a,f){const p=a.width,v=a.height,m=[{x:-v/2,y:0},{x:p,y:0},{x:p,y:-v},{x:-v/2,y:-v},{x:0,y:-v/2}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function yFt(i,a,f){const p=a.width,v=a.height,m=[{x:-2*v/6,y:0},{x:p-v/6,y:0},{x:p+2*v/6,y:-v},{x:v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function xFt(i,a,f){const p=a.width,v=a.height,m=[{x:2*v/6,y:0},{x:p+v/6,y:0},{x:p-2*v/6,y:-v},{x:-v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function kFt(i,a,f){const p=a.width,v=a.height,m=[{x:-2*v/6,y:0},{x:p+2*v/6,y:0},{x:p-v/6,y:-v},{x:v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function EFt(i,a,f){const p=a.width,v=a.height,m=[{x:v/6,y:0},{x:p-v/6,y:0},{x:p+2*v/6,y:-v},{x:-2*v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function TFt(i,a,f){const p=a.width,v=a.height,m=[{x:0,y:0},{x:p+v/2,y:0},{x:p,y:-v/2},{x:p+v/2,y:-v},{x:0,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function _Ft(i,a,f){const p=a.height,v=a.width+p/4,m=i.insert("rect",":first-child").attr("rx",p/2).attr("ry",p/2).attr("x",-v/2).attr("y",-p/2).attr("width",v).attr("height",p);return f.intersect=function(b){return p0t(f,b)},m}function CFt(i,a,f){const p=a.width,v=a.height,m=[{x:0,y:0},{x:p,y:0},{x:p,y:-v},{x:0,y:-v},{x:0,y:0},{x:-8,y:0},{x:p+8,y:0},{x:p+8,y:-v},{x:-8,y:-v},{x:-8,y:0}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function SFt(i,a,f){const p=a.width,v=p/2,m=v/(2.5+p/50),b=a.height+m,E="M 0,"+m+" a "+v+","+m+" 0,0,0 "+p+" 0 a "+v+","+m+" 0,0,0 "+-p+" 0 l 0,"+b+" a "+v+","+m+" 0,0,0 "+p+" 0 l 0,"+-b,C=i.attr("label-offset-y",m).insert("path",":first-child").attr("d",E).attr("transform","translate("+-p/2+","+-(b/2+m)+")");return f.intersect=function(A){const P=p0t(f,A),F=P.x-f.x;if(v!=0&&(Math.abs(F)f.height/2-m)){let j=m*m*(1-F*F/(v*v));j!=0&&(j=Math.sqrt(j)),j=m-j,A.y-f.y>0&&(j=-j),P.y+=j}return P},C}function ABe(i){i.shapes().question=vFt,i.shapes().hexagon=wFt,i.shapes().stadium=_Ft,i.shapes().subroutine=CFt,i.shapes().cylinder=SFt,i.shapes().rect_left_inv_arrow=mFt,i.shapes().lean_right=yFt,i.shapes().lean_left=xFt,i.shapes().trapezoid=kFt,i.shapes().inv_trapezoid=EFt,i.shapes().rect_right_inv_arrow=TFt}function LBe(i){i({question:vFt}),i({hexagon:wFt}),i({stadium:_Ft}),i({subroutine:CFt}),i({cylinder:SFt}),i({rect_left_inv_arrow:mFt}),i({lean_right:yFt}),i({lean_left:xFt}),i({trapezoid:kFt}),i({inv_trapezoid:EFt}),i({rect_right_inv_arrow:TFt})}function S5(i,a,f,p){return i.insert("polygon",":first-child").attr("points",p.map(function(v){return v.x+","+v.y}).join(" ")).attr("transform","translate("+-a/2+","+f/2+")")}const MBe={addToRender:ABe,addToRenderV2:LBe},AFt={},DBe=function(i){const a=Object.keys(i);for(const f of a)AFt[f]=i[f]},LFt=function(i,a,f,p,v,m){const b=p?p.select(`[id="${f}"]`):xr(`[id="${f}"]`),E=v||document;Object.keys(i).forEach(function(A){const P=i[A];let F="default";P.classes.length>0&&(F=P.classes.join(" "));const j=em(P.styles);let R=P.text!==void 0?P.text:P.id,H;if(u1(De().flowchart.htmlLabels)){const J={label:R.replace(/fa[blrs]?:fa-[\w-]+/g,it=>``)};H=u0t(b,J).node(),H.parentNode.removeChild(H)}else{const J=E.createElementNS("http://www.w3.org/2000/svg","text");J.setAttribute("style",j.labelStyle.replace("color:","fill:"));const it=R.split(ui.lineBreakRegex);for(const ft of it){const Tt=E.createElementNS("http://www.w3.org/2000/svg","tspan");Tt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),Tt.setAttribute("dy","1em"),Tt.setAttribute("x","1"),Tt.textContent=ft,J.appendChild(Tt)}H=J}let Y=0,rt="";switch(P.type){case"round":Y=5,rt="rect";break;case"square":rt="rect";break;case"diamond":rt="question";break;case"hexagon":rt="hexagon";break;case"odd":rt="rect_left_inv_arrow";break;case"lean_right":rt="lean_right";break;case"lean_left":rt="lean_left";break;case"trapezoid":rt="trapezoid";break;case"inv_trapezoid":rt="inv_trapezoid";break;case"odd_right":rt="rect_left_inv_arrow";break;case"circle":rt="circle";break;case"ellipse":rt="ellipse";break;case"stadium":rt="stadium";break;case"subroutine":rt="subroutine";break;case"cylinder":rt="cylinder";break;case"group":rt="rect";break;default:rt="rect"}Wt.warn("Adding node",P.id,P.domId),a.setNode(m.db.lookUpDomId(P.id),{labelType:"svg",labelStyle:j.labelStyle,shape:rt,label:H,rx:Y,ry:Y,class:F,style:j.style,id:m.db.lookUpDomId(P.id)})})},MFt=function(i,a,f){let p=0,v,m;if(i.defaultStyle!==void 0){const b=em(i.defaultStyle);v=b.style,m=b.labelStyle}i.forEach(function(b){p++;const E="L-"+b.start+"-"+b.end,C="LS-"+b.start,A="LE-"+b.end,P={};b.type==="arrow_open"?P.arrowhead="none":P.arrowhead="normal";let F="",j="";if(b.style!==void 0){const R=em(b.style);F=R.style,j=R.labelStyle}else switch(b.stroke){case"normal":F="fill:none",v!==void 0&&(F=v),m!==void 0&&(j=m);break;case"dotted":F="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":F=" stroke-width: 3.5px;fill:none";break}P.style=F,P.labelStyle=j,b.interpolate!==void 0?P.curve=Z2(b.interpolate,ig):i.defaultInterpolate!==void 0?P.curve=Z2(i.defaultInterpolate,ig):P.curve=Z2(AFt.curve,ig),b.text===void 0?b.style!==void 0&&(P.arrowheadStyle="fill: #333"):(P.arrowheadStyle="fill: #333",P.labelpos="c",u1(De().flowchart.htmlLabels)?(P.labelType="html",P.label=`${b.text.replace(/fa[blrs]?:fa-[\w-]+/g,R=>``)}`):(P.labelType="text",P.label=b.text.replace(ui.lineBreakRegex,` +`),b.style===void 0&&(P.style=P.style||"stroke: #333; stroke-width: 1.5px;fill:none"),P.labelStyle=P.labelStyle.replace("color:","fill:"))),P.id=E,P.class=C+" "+A,P.minlen=b.length||1,a.setEdge(f.db.lookUpDomId(b.start),f.db.lookUpDomId(b.end),P,p)})},IBe={setConf:DBe,addVertices:LFt,addEdges:MFt,getClasses:function(i,a){return Wt.info("Extracting classes"),a.db.getClasses()},draw:function(i,a,f,p){Wt.info("Drawing flowchart");const{securityLevel:v,flowchart:m}=De();let b;v==="sandbox"&&(b=xr("#i"+a));const E=xr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=v==="sandbox"?b.nodes()[0].contentDocument:document;let A=p.db.getDirection();A===void 0&&(A="TD");const P=m.nodeSpacing||50,F=m.rankSpacing||50,j=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:A,nodesep:P,ranksep:F,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let R;const H=p.db.getSubGraphs();for(let mt=H.length-1;mt>=0;mt--)R=H[mt],p.db.addVertex(R.id,R.title,"group",void 0,R.classes);const Y=p.db.getVertices();Wt.warn("Get vertices",Y);const rt=p.db.getEdges();let J=0;for(J=H.length-1;J>=0;J--){R=H[J],YLt("cluster").append("text");for(let mt=0;mt{a.forEach(v=>{FBe[v](i,f,p)})},FBe={extension:(i,a,f)=>{Wt.trace("Making markers for ",f),i.append("defs").append("marker").attr("id",a+"-extensionStart").attr("class","marker extension "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id",a+"-extensionEnd").attr("class","marker extension "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-compositionStart").attr("class","marker composition "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",a+"-compositionEnd").attr("class","marker composition "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-aggregationStart").attr("class","marker aggregation "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",a+"-aggregationEnd").attr("class","marker aggregation "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-dependencyStart").attr("class","marker dependency "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",a+"-dependencyEnd").attr("class","marker dependency "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-lollipopStart").attr("class","marker lollipop "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},point:(i,a)=>{i.append("marker").attr("id",a+"-pointEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",10).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",a+"-pointStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(i,a)=>{i.append("marker").attr("id",a+"-circleEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",a+"-circleStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(i,a)=>{i.append("marker").attr("id",a+"-crossEnd").attr("class","marker cross "+a).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),i.append("marker").attr("id",a+"-crossStart").attr("class","marker cross "+a).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},DFt=PBe;function BBe(i,a){a&&i.attr("style",a)}function RBe(i){const a=xr(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),f=a.append("xhtml:div"),p=i.label,v=i.isNode?"nodeLabel":"edgeLabel";return f.html('"+p+""),BBe(f,i.labelStyle),f.style("display","inline-block"),f.style("white-space","nowrap"),f.attr("xmlns","http://www.w3.org/1999/xhtml"),a.node()}const dp=(i,a,f,p)=>{let v=i||"";if(typeof v=="object"&&(v=v[0]),u1(De().flowchart.htmlLabels)){v=v.replace(/\\n|\n/g,"
"),Wt.info("vertexText"+v);const m={isNode:p,label:nP(v).replace(/fa[blrs]?:fa-[\w-]+/g,E=>``),labelStyle:a.replace("fill:","color:")};return RBe(m)}else{const m=document.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("style",a.replace("color:","fill:"));let b=[];typeof v=="string"?b=v.split(/\\n|\n|/gi):Array.isArray(v)?b=v:b=[];for(const E of b){const C=document.createElementNS("http://www.w3.org/2000/svg","tspan");C.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),C.setAttribute("dy","1em"),C.setAttribute("x","0"),f?C.setAttribute("class","title-row"):C.setAttribute("class","row"),C.textContent=E.trim(),m.appendChild(C)}return m}};function jBe(i,a){var{includeImageAlt:f=!0}=a||{};return IFt(i,f)}function IFt(i,a){return i&&typeof i=="object"&&(i.value||(a?i.alt:"")||"children"in i&&OFt(i.children,a)||Array.isArray(i)&&OFt(i,a))||""}function OFt(i,a){for(var f=[],p=-1;++pv?0:v+a:a=a>v?v:a,f=f>0?f:0,p.length<1e4)b=Array.from(p),b.unshift(a,f),[].splice.apply(i,b);else for(f&&[].splice.apply(i,[a,f]);m0?(v3(i,i.length,0,a),i):a}const NFt={}.hasOwnProperty;function $Be(i){const a={};let f=-1;for(;++fb))return;const ct=a.events.length;let yt=ct,st,xt;for(;yt--;)if(a.events[yt][0]==="exit"&&a.events[yt][1].type==="chunkFlow"){if(st){xt=a.events[yt][1].end;break}st=!0}for(J(p),mt=ct;mtft;){const kt=f[Tt];a.containerState=kt[1],kt[0].exit.call(a,i)}f.length=ft}function it(){v.write([null]),m=void 0,v=void 0,a.containerState._closeFlow=void 0}}function ZBe(i,a,f){return Qu(i,i.attempt(this.parser.constructs.document,a,f),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function BFt(i){if(i===null||rv(i)||UBe(i))return 1;if(WBe(i))return 2}function m0t(i,a,f){const p=[];let v=-1;for(;++v1&&i[f][1].end.offset-i[f][1].start.offset>1?2:1;const F=Object.assign({},i[p][1].end),j=Object.assign({},i[f][1].start);RFt(F,-C),RFt(j,C),b={type:C>1?"strongSequence":"emphasisSequence",start:F,end:Object.assign({},i[p][1].end)},E={type:C>1?"strongSequence":"emphasisSequence",start:Object.assign({},i[f][1].start),end:j},m={type:C>1?"strongText":"emphasisText",start:Object.assign({},i[p][1].end),end:Object.assign({},i[f][1].start)},v={type:C>1?"strong":"emphasis",start:Object.assign({},b.start),end:Object.assign({},E.end)},i[p][1].end=Object.assign({},b.start),i[f][1].start=Object.assign({},E.end),A=[],i[p][1].end.offset-i[p][1].start.offset&&(A=nv(A,[["enter",i[p][1],a],["exit",i[p][1],a]])),A=nv(A,[["enter",v,a],["enter",b,a],["exit",b,a],["enter",m,a]]),A=nv(A,m0t(a.parser.constructs.insideSpan.null,i.slice(p+1,f),a)),A=nv(A,[["exit",m,a],["enter",E,a],["exit",E,a],["exit",v,a]]),i[f][1].end.offset-i[f][1].start.offset?(P=2,A=nv(A,[["enter",i[f][1],a],["exit",i[f][1],a]])):P=0,v3(i,p-1,f-p+3,A),f=p+A.length-P-2;break}}for(f=-1;++f=4?b(A):f(A)}function b(A){return A===null?C(A):ja(A)?i.attempt(lRe,b,C)(A):(i.enter("codeFlowValue"),E(A))}function E(A){return A===null||ja(A)?(i.exit("codeFlowValue"),b(A)):(i.consume(A),E)}function C(A){return i.exit("codeIndented"),a(A)}}function fRe(i,a,f){const p=this;return v;function v(b){return p.parser.lazy[p.now().line]?f(b):ja(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v):Qu(i,m,"linePrefix",4+1)(b)}function m(b){const E=p.events[p.events.length-1];return E&&E[1].type==="linePrefix"&&E[2].sliceSerialize(E[1],!0).length>=4?a(b):ja(b)?v(b):f(b)}}const dRe={name:"codeText",tokenize:bRe,resolve:gRe,previous:pRe};function gRe(i){let a=i.length-4,f=3,p,v;if((i[f][1].type==="lineEnding"||i[f][1].type==="space")&&(i[a][1].type==="lineEnding"||i[a][1].type==="space")){for(p=f;++p=4?a(b):i.interrupt(p.parser.constructs.flow,f,a)(b)}}function GFt(i,a,f,p,v,m,b,E,C){const A=C||Number.POSITIVE_INFINITY;let P=0;return F;function F(J){return J===60?(i.enter(p),i.enter(v),i.enter(m),i.consume(J),i.exit(m),j):J===null||J===41||w0t(J)?f(J):(i.enter(p),i.enter(b),i.enter(E),i.enter("chunkString",{contentType:"string"}),Y(J))}function j(J){return J===62?(i.enter(m),i.consume(J),i.exit(m),i.exit(v),i.exit(p),a):(i.enter(E),i.enter("chunkString",{contentType:"string"}),R(J))}function R(J){return J===62?(i.exit("chunkString"),i.exit(E),j(J)):J===null||J===60||ja(J)?f(J):(i.consume(J),J===92?H:R)}function H(J){return J===60||J===62||J===92?(i.consume(J),R):R(J)}function Y(J){return J===40?++P>A?f(J):(i.consume(J),Y):J===41?P--?(i.consume(J),Y):(i.exit("chunkString"),i.exit(E),i.exit(b),i.exit(p),a(J)):J===null||rv(J)?P?f(J):(i.exit("chunkString"),i.exit(E),i.exit(b),i.exit(p),a(J)):w0t(J)?f(J):(i.consume(J),J===92?rt:Y)}function rt(J){return J===40||J===41||J===92?(i.consume(J),Y):Y(J)}}function UFt(i,a,f,p,v,m){const b=this;let E=0,C;return A;function A(R){return i.enter(p),i.enter(v),i.consume(R),i.exit(v),i.enter(m),P}function P(R){return R===null||R===91||R===93&&!C||R===94&&!E&&"_hiddenFootnoteSupport"in b.parser.constructs||E>999?f(R):R===93?(i.exit(m),i.enter(v),i.consume(R),i.exit(v),i.exit(p),a):ja(R)?(i.enter("lineEnding"),i.consume(R),i.exit("lineEnding"),P):(i.enter("chunkString",{contentType:"string"}),F(R))}function F(R){return R===null||R===91||R===93||ja(R)||E++>999?(i.exit("chunkString"),P(R)):(i.consume(R),C=C||!Bf(R),R===92?j:F)}function j(R){return R===91||R===92||R===93?(i.consume(R),E++,F):F(R)}}function WFt(i,a,f,p,v,m){let b;return E;function E(j){return i.enter(p),i.enter(v),i.consume(j),i.exit(v),b=j===40?41:j,C}function C(j){return j===b?(i.enter(v),i.consume(j),i.exit(v),i.exit(p),a):(i.enter(m),A(j))}function A(j){return j===b?(i.exit(m),C(b)):j===null?f(j):ja(j)?(i.enter("lineEnding"),i.consume(j),i.exit("lineEnding"),Qu(i,A,"linePrefix")):(i.enter("chunkString",{contentType:"string"}),P(j))}function P(j){return j===b||j===null||ja(j)?(i.exit("chunkString"),A(j)):(i.consume(j),j===92?F:P)}function F(j){return j===b||j===92?(i.consume(j),P):P(j)}}function vP(i,a){let f;return p;function p(v){return ja(v)?(i.enter("lineEnding"),i.consume(v),i.exit("lineEnding"),f=!0,p):Bf(v)?Qu(i,p,f?"linePrefix":"lineSuffix")(v):a(v)}}function rL(i){return i.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const ERe={name:"definition",tokenize:_Re},TRe={tokenize:CRe,partial:!0};function _Re(i,a,f){const p=this;let v;return m;function m(C){return i.enter("definition"),UFt.call(p,i,b,f,"definitionLabel","definitionLabelMarker","definitionLabelString")(C)}function b(C){return v=rL(p.sliceSerialize(p.events[p.events.length-1][1]).slice(1,-1)),C===58?(i.enter("definitionMarker"),i.consume(C),i.exit("definitionMarker"),vP(i,GFt(i,i.attempt(TRe,Qu(i,E,"whitespace"),Qu(i,E,"whitespace")),f,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString"))):f(C)}function E(C){return C===null||ja(C)?(i.exit("definition"),p.parser.defined.includes(v)||p.parser.defined.push(v),a(C)):f(C)}}function CRe(i,a,f){return p;function p(b){return rv(b)?vP(i,v)(b):f(b)}function v(b){return b===34||b===39||b===40?WFt(i,Qu(i,m,"whitespace"),f,"definitionTitle","definitionTitleMarker","definitionTitleString")(b):f(b)}function m(b){return b===null||ja(b)?a(b):f(b)}}const SRe={name:"hardBreakEscape",tokenize:ARe};function ARe(i,a,f){return p;function p(m){return i.enter("hardBreakEscape"),i.enter("escapeMarker"),i.consume(m),v}function v(m){return ja(m)?(i.exit("escapeMarker"),i.exit("hardBreakEscape"),a(m)):f(m)}}const LRe={name:"headingAtx",tokenize:DRe,resolve:MRe};function MRe(i,a){let f=i.length-2,p=3,v,m;return i[p][1].type==="whitespace"&&(p+=2),f-2>p&&i[f][1].type==="whitespace"&&(f-=2),i[f][1].type==="atxHeadingSequence"&&(p===f-1||f-4>p&&i[f-2][1].type==="whitespace")&&(f-=p+1===f?2:4),f>p&&(v={type:"atxHeadingText",start:i[p][1].start,end:i[f][1].end},m={type:"chunkText",start:i[p][1].start,end:i[f][1].end,contentType:"text"},v3(i,p,f-p+1,[["enter",v,a],["enter",m,a],["exit",m,a],["exit",v,a]])),i}function DRe(i,a,f){const p=this;let v=0;return m;function m(P){return i.enter("atxHeading"),i.enter("atxHeadingSequence"),b(P)}function b(P){return P===35&&v++<6?(i.consume(P),b):P===null||rv(P)?(i.exit("atxHeadingSequence"),p.interrupt?a(P):E(P)):f(P)}function E(P){return P===35?(i.enter("atxHeadingSequence"),C(P)):P===null||ja(P)?(i.exit("atxHeading"),a(P)):Bf(P)?Qu(i,E,"whitespace")(P):(i.enter("atxHeadingText"),A(P))}function C(P){return P===35?(i.consume(P),C):(i.exit("atxHeadingSequence"),E(P))}function A(P){return P===null||P===35||rv(P)?(i.exit("atxHeadingText"),E(P)):(i.consume(P),A)}}const IRe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],KFt=["pre","script","style","textarea"],ORe={name:"htmlFlow",tokenize:FRe,resolveTo:PRe,concrete:!0},NRe={tokenize:BRe,partial:!0};function PRe(i){let a=i.length;for(;a--&&!(i[a][0]==="enter"&&i[a][1].type==="htmlFlow"););return a>1&&i[a-2][1].type==="linePrefix"&&(i[a][1].start=i[a-2][1].start,i[a+1][1].start=i[a-2][1].start,i.splice(a-2,2)),i}function FRe(i,a,f){const p=this;let v,m,b,E,C;return A;function A(Ot){return i.enter("htmlFlow"),i.enter("htmlFlowData"),i.consume(Ot),P}function P(Ot){return Ot===33?(i.consume(Ot),F):Ot===47?(i.consume(Ot),H):Ot===63?(i.consume(Ot),v=3,p.interrupt?a:Rt):w3(Ot)?(i.consume(Ot),b=String.fromCharCode(Ot),m=!0,Y):f(Ot)}function F(Ot){return Ot===45?(i.consume(Ot),v=2,j):Ot===91?(i.consume(Ot),v=5,b="CDATA[",E=0,R):w3(Ot)?(i.consume(Ot),v=4,p.interrupt?a:Rt):f(Ot)}function j(Ot){return Ot===45?(i.consume(Ot),p.interrupt?a:Rt):f(Ot)}function R(Ot){return Ot===b.charCodeAt(E++)?(i.consume(Ot),E===b.length?p.interrupt?a:ht:R):f(Ot)}function H(Ot){return w3(Ot)?(i.consume(Ot),b=String.fromCharCode(Ot),Y):f(Ot)}function Y(Ot){return Ot===null||Ot===47||Ot===62||rv(Ot)?Ot!==47&&m&&KFt.includes(b.toLowerCase())?(v=1,p.interrupt?a(Ot):ht(Ot)):IRe.includes(b.toLowerCase())?(v=6,Ot===47?(i.consume(Ot),rt):p.interrupt?a(Ot):ht(Ot)):(v=7,p.interrupt&&!p.parser.lazy[p.now().line]?f(Ot):m?it(Ot):J(Ot)):Ot===45||om(Ot)?(i.consume(Ot),b+=String.fromCharCode(Ot),Y):f(Ot)}function rt(Ot){return Ot===62?(i.consume(Ot),p.interrupt?a:ht):f(Ot)}function J(Ot){return Bf(Ot)?(i.consume(Ot),J):st(Ot)}function it(Ot){return Ot===47?(i.consume(Ot),st):Ot===58||Ot===95||w3(Ot)?(i.consume(Ot),ft):Bf(Ot)?(i.consume(Ot),it):st(Ot)}function ft(Ot){return Ot===45||Ot===46||Ot===58||Ot===95||om(Ot)?(i.consume(Ot),ft):Tt(Ot)}function Tt(Ot){return Ot===61?(i.consume(Ot),kt):Bf(Ot)?(i.consume(Ot),Tt):it(Ot)}function kt(Ot){return Ot===null||Ot===60||Ot===61||Ot===62||Ot===96?f(Ot):Ot===34||Ot===39?(i.consume(Ot),C=Ot,mt):Bf(Ot)?(i.consume(Ot),kt):(C=null,ct(Ot))}function mt(Ot){return Ot===null||ja(Ot)?f(Ot):Ot===C?(i.consume(Ot),yt):(i.consume(Ot),mt)}function ct(Ot){return Ot===null||Ot===34||Ot===39||Ot===60||Ot===61||Ot===62||Ot===96||rv(Ot)?Tt(Ot):(i.consume(Ot),ct)}function yt(Ot){return Ot===47||Ot===62||Bf(Ot)?it(Ot):f(Ot)}function st(Ot){return Ot===62?(i.consume(Ot),xt):f(Ot)}function xt(Ot){return Bf(Ot)?(i.consume(Ot),xt):Ot===null||ja(Ot)?ht(Ot):f(Ot)}function ht(Ot){return Ot===45&&v===2?(i.consume(Ot),Pt):Ot===60&&v===1?(i.consume(Ot),pt):Ot===62&&v===4?(i.consume(Ot),Bt):Ot===63&&v===3?(i.consume(Ot),Rt):Ot===93&&v===5?(i.consume(Ot),X):ja(Ot)&&(v===6||v===7)?i.check(NRe,Bt,dt)(Ot):Ot===null||ja(Ot)?dt(Ot):(i.consume(Ot),ht)}function dt(Ot){return i.exit("htmlFlowData"),Ct(Ot)}function Ct(Ot){return Ot===null?vt(Ot):ja(Ot)?i.attempt({tokenize:tt,partial:!0},Ct,vt)(Ot):(i.enter("htmlFlowData"),ht(Ot))}function tt(Ot,Vt,qe){return _n;function _n(Wn){return Ot.enter("lineEnding"),Ot.consume(Wn),Ot.exit("lineEnding"),Te}function Te(Wn){return p.parser.lazy[p.now().line]?qe(Wn):Vt(Wn)}}function Pt(Ot){return Ot===45?(i.consume(Ot),Rt):ht(Ot)}function pt(Ot){return Ot===47?(i.consume(Ot),b="",Ft):ht(Ot)}function Ft(Ot){return Ot===62&&KFt.includes(b.toLowerCase())?(i.consume(Ot),Bt):w3(Ot)&&b.length<8?(i.consume(Ot),b+=String.fromCharCode(Ot),Ft):ht(Ot)}function X(Ot){return Ot===93?(i.consume(Ot),Rt):ht(Ot)}function Rt(Ot){return Ot===62?(i.consume(Ot),Bt):Ot===45&&v===2?(i.consume(Ot),Rt):ht(Ot)}function Bt(Ot){return Ot===null||ja(Ot)?(i.exit("htmlFlowData"),vt(Ot)):(i.consume(Ot),Bt)}function vt(Ot){return i.exit("htmlFlow"),a(Ot)}}function BRe(i,a,f){return p;function p(v){return i.exit("htmlFlowData"),i.enter("lineEndingBlank"),i.consume(v),i.exit("lineEndingBlank"),i.attempt(gK,a,f)}}const RRe={name:"htmlText",tokenize:jRe};function jRe(i,a,f){const p=this;let v,m,b,E;return C;function C(vt){return i.enter("htmlText"),i.enter("htmlTextData"),i.consume(vt),A}function A(vt){return vt===33?(i.consume(vt),P):vt===47?(i.consume(vt),ct):vt===63?(i.consume(vt),kt):w3(vt)?(i.consume(vt),xt):f(vt)}function P(vt){return vt===45?(i.consume(vt),F):vt===91?(i.consume(vt),m="CDATA[",b=0,rt):w3(vt)?(i.consume(vt),Tt):f(vt)}function F(vt){return vt===45?(i.consume(vt),j):f(vt)}function j(vt){return vt===null||vt===62?f(vt):vt===45?(i.consume(vt),R):H(vt)}function R(vt){return vt===null||vt===62?f(vt):H(vt)}function H(vt){return vt===null?f(vt):vt===45?(i.consume(vt),Y):ja(vt)?(E=H,X(vt)):(i.consume(vt),H)}function Y(vt){return vt===45?(i.consume(vt),Bt):H(vt)}function rt(vt){return vt===m.charCodeAt(b++)?(i.consume(vt),b===m.length?J:rt):f(vt)}function J(vt){return vt===null?f(vt):vt===93?(i.consume(vt),it):ja(vt)?(E=J,X(vt)):(i.consume(vt),J)}function it(vt){return vt===93?(i.consume(vt),ft):J(vt)}function ft(vt){return vt===62?Bt(vt):vt===93?(i.consume(vt),ft):J(vt)}function Tt(vt){return vt===null||vt===62?Bt(vt):ja(vt)?(E=Tt,X(vt)):(i.consume(vt),Tt)}function kt(vt){return vt===null?f(vt):vt===63?(i.consume(vt),mt):ja(vt)?(E=kt,X(vt)):(i.consume(vt),kt)}function mt(vt){return vt===62?Bt(vt):kt(vt)}function ct(vt){return w3(vt)?(i.consume(vt),yt):f(vt)}function yt(vt){return vt===45||om(vt)?(i.consume(vt),yt):st(vt)}function st(vt){return ja(vt)?(E=st,X(vt)):Bf(vt)?(i.consume(vt),st):Bt(vt)}function xt(vt){return vt===45||om(vt)?(i.consume(vt),xt):vt===47||vt===62||rv(vt)?ht(vt):f(vt)}function ht(vt){return vt===47?(i.consume(vt),Bt):vt===58||vt===95||w3(vt)?(i.consume(vt),dt):ja(vt)?(E=ht,X(vt)):Bf(vt)?(i.consume(vt),ht):Bt(vt)}function dt(vt){return vt===45||vt===46||vt===58||vt===95||om(vt)?(i.consume(vt),dt):Ct(vt)}function Ct(vt){return vt===61?(i.consume(vt),tt):ja(vt)?(E=Ct,X(vt)):Bf(vt)?(i.consume(vt),Ct):ht(vt)}function tt(vt){return vt===null||vt===60||vt===61||vt===62||vt===96?f(vt):vt===34||vt===39?(i.consume(vt),v=vt,Pt):ja(vt)?(E=tt,X(vt)):Bf(vt)?(i.consume(vt),tt):(i.consume(vt),v=void 0,Ft)}function Pt(vt){return vt===v?(i.consume(vt),pt):vt===null?f(vt):ja(vt)?(E=Pt,X(vt)):(i.consume(vt),Pt)}function pt(vt){return vt===62||vt===47||rv(vt)?ht(vt):f(vt)}function Ft(vt){return vt===null||vt===34||vt===39||vt===60||vt===61||vt===96?f(vt):vt===62||rv(vt)?ht(vt):(i.consume(vt),Ft)}function X(vt){return i.exit("htmlTextData"),i.enter("lineEnding"),i.consume(vt),i.exit("lineEnding"),Qu(i,Rt,"linePrefix",p.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Rt(vt){return i.enter("htmlTextData"),E(vt)}function Bt(vt){return vt===62?(i.consume(vt),i.exit("htmlTextData"),i.exit("htmlText"),a):f(vt)}}const E0t={name:"labelEnd",tokenize:GRe,resolveTo:VRe,resolveAll:HRe},$Re={tokenize:URe},zRe={tokenize:WRe},qRe={tokenize:KRe};function HRe(i){let a=-1,f;for(;++a-1&&(b[0]=b[0].slice(p)),m>0&&b.push(i[v].slice(0,m))),b}function wje(i,a){let f=-1;const p=[];let v;for(;++f13&&f<32||f>126&&f<160||f>55295&&f<57344||f>64975&&f<65008||(f&65535)===65535||(f&65535)===65534||f>1114111?"�":String.fromCharCode(f)}const Cje=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Sje(i){return i.replace(Cje,Aje)}function Aje(i,a,f){if(a)return a;if(f.charCodeAt(0)===35){const v=f.charCodeAt(1),m=v===120||v===88;return JFt(f.slice(m?2:1),m?16:10)}return x0t(f)||i}function bK(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?tBt(i.position):"start"in i||"end"in i?tBt(i):"line"in i||"column"in i?_0t(i):""}function _0t(i){return eBt(i&&i.line)+":"+eBt(i&&i.column)}function tBt(i){return _0t(i&&i.start)+"-"+_0t(i&&i.end)}function eBt(i){return i&&typeof i=="number"?i:1}const nBt={}.hasOwnProperty,rBt=function(i,a,f){return typeof a!="string"&&(f=a,a=void 0),Lje(f)(_je(Eje(f).document().write(Tje()(i,a,!0))))};function Lje(i){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:E(qt),autolinkProtocol:ht,autolinkEmail:ht,atxHeading:E(ye),blockQuote:E(Ve),characterEscape:ht,characterReference:ht,codeFenced:E(Ee),codeFencedFenceInfo:C,codeFencedFenceMeta:C,codeIndented:E(Ee,C),codeText:E(He,C),codeTextData:ht,data:ht,codeFlowValue:ht,definition:E(Ce),definitionDestinationString:C,definitionLabelString:C,definitionTitleString:C,emphasis:E($e),hardBreakEscape:E(fn),hardBreakTrailing:E(fn),htmlFlow:E(Yt,C),htmlFlowData:ht,htmlText:E(Yt,C),htmlTextData:ht,image:E(Mi),label:C,link:E(qt),listItem:E(Se),listItemValue:H,listOrdered:E(zi,R),listUnordered:E(zi),paragraph:E(ki),reference:_n,referenceString:C,resourceDestinationString:C,resourceTitleString:C,setextHeading:E(ye),strong:E(Ri),thematicBreak:E(bi)},exit:{atxHeading:P(),atxHeadingSequence:ct,autolink:P(),autolinkEmail:ke,autolinkProtocol:ne,blockQuote:P(),characterEscapeValue:dt,characterReferenceMarkerHexadecimal:Wn,characterReferenceMarkerNumeric:Wn,characterReferenceValue:Ae,codeFenced:P(it),codeFencedFence:J,codeFencedFenceInfo:Y,codeFencedFenceMeta:rt,codeFlowValue:dt,codeIndented:P(ft),codeText:P(Ft),codeTextData:dt,data:dt,definition:P(),definitionDestinationString:mt,definitionLabelString:Tt,definitionTitleString:kt,emphasis:P(),hardBreakEscape:P(tt),hardBreakTrailing:P(tt),htmlFlow:P(Pt),htmlFlowData:dt,htmlText:P(pt),htmlTextData:dt,image:P(Rt),label:vt,labelText:Bt,lineEnding:Ct,link:P(X),listItem:P(),listOrdered:P(),listUnordered:P(),paragraph:P(),referenceString:Te,resourceDestinationString:Ot,resourceTitleString:Vt,resource:qe,setextHeading:P(xt),setextHeadingLineSequence:st,setextHeadingText:yt,strong:P(),thematicBreak:P()}};iBt(a,(i||{}).mdastExtensions||[]);const f={};return p;function p(dn){let Nn={type:"root",children:[]};const Wr={stack:[Nn],tokenStack:[],config:a,enter:A,exit:F,buffer:C,resume:j,setData:m,getData:b},Li=[];let is=-1;for(;++is0){const Ts=Wr.tokenStack[Wr.tokenStack.length-1];(Ts[1]||sBt).call(Wr,void 0,Ts[0])}for(Nn.position={start:ck(dn.length>0?dn[0][1].start:{line:1,column:1,offset:0}),end:ck(dn.length>0?dn[dn.length-2][1].end:{line:1,column:1,offset:0})},is=-1;++is{P!==0&&(v++,p.push([])),A.split(" ").forEach(F=>{F&&p[v].push({content:F,type:E})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(C=>{m(C,b.type)})}return f.forEach(b=>{b.type==="paragraph"&&b.children.forEach(E=>{m(E)})}),p}function Oje(i){const{children:a}=rBt(i);function f(p){return p.type==="text"?p.value.replace(/\n/g,"
"):p.type==="strong"?`${p.children.map(f).join("")}`:p.type==="emphasis"?`${p.children.map(f).join("")}`:p.type==="paragraph"?`

${p.children.map(f).join("")}

`:`Unsupported markdown: ${p.type}`}return a.map(f).join("")}function Nje(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function Pje(i,a){const f=Nje(a.content);return aBt(i,[],f,a.type)}function aBt(i,a,f,p){if(f.length===0)return[{content:a.join(""),type:p},{content:"",type:p}];const[v,...m]=f,b=[...a,v];return i([{content:b.join(""),type:p}])?aBt(i,b,m,p):(a.length===0&&v&&(a.push(v),f.shift()),[{content:a.join(""),type:p},{content:f.join(""),type:p}])}function Fje(i,a){if(i.some(({content:f})=>f.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return C0t(i,a)}function C0t(i,a,f=[],p=[]){if(i.length===0)return p.length>0&&f.push(p),f.length>0?f:[];let v="";i[0].content===" "&&(v=" ",i.shift());const m=i.shift()??{content:" ",type:"normal"},b=[...p];if(v!==""&&b.push({content:v,type:"normal"}),b.push(m),a(b))return C0t(i,a,f,b);if(p.length>0)f.push(p),i.unshift(m);else if(m.content){const[E,C]=Pje(a,m);f.push([E]),C.content&&i.unshift(C)}return C0t(i,a,f)}function Bje(i,a){a&&i.attr("style",a)}function Rje(i,a,f,p,v=!1){const m=i.append("foreignObject"),b=m.append("xhtml:div"),E=a.label,C=a.isNode?"nodeLabel":"edgeLabel";b.html(` + "+E+""),Bje(b,a.labelStyle),b.style("display","table-cell"),b.style("white-space","nowrap"),b.style("max-width",f+"px"),b.attr("xmlns","http://www.w3.org/1999/xhtml"),v&&b.attr("class","labelBkg");let A=b.node().getBoundingClientRect();return A.width===f&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",f+"px"),A=b.node().getBoundingClientRect()),m.style("width",A.width),m.style("height",A.height),m.node()}function oBt(i,a,f){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*f-.1+"em").attr("dy",f+"em")}function jje(i,a,f){const p=i.append("text"),v=oBt(p,1,a);cBt(v,f);const m=v.node().getComputedTextLength();return p.remove(),m}function $je(i,a,f,p=!1){const m=a.append("g"),b=m.insert("rect").attr("class","background"),E=m.append("text").attr("y","-10.1");let C=0;for(const A of f){const P=j=>jje(m,1.1,j)<=i,F=P(A)?[A]:Fje(A,P);for(const j of F){const R=oBt(E,C,1.1);cBt(R,j),C++}}if(p){const A=E.node().getBBox(),P=2;return b.attr("x",-P).attr("y",-P).attr("width",A.width+2*P).attr("height",A.height+2*P),m.node()}else return E.node()}function cBt(i,a){i.text(""),a.forEach((f,p)=>{const v=i.append("tspan").attr("font-style",f.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",f.type==="strong"?"bold":"normal");p===0?v.text(f.content):v.text(" "+f.content)})}const vK=(i,a="",{style:f="",isTitle:p=!1,classes:v="",useHtmlLabels:m=!0,isNode:b=!0,width:E=200,addSvgBackground:C=!1}={})=>{if(Wt.info("createText",a,f,p,v,m,b,C),m){const A=Oje(a),P={isNode:b,label:nP(A).replace(/fa[blrs]?:fa-[\w-]+/g,j=>``),labelStyle:f.replace("fill:","color:")};return Rje(i,P,E,v,C)}else{const A=Ije(a);return $je(E,i,A,C)}},Od=async(i,a,f,p)=>{let v;const m=a.useHtmlLabels||u1(De().flowchart.htmlLabels);f?v=f:v="node default";const b=i.insert("g").attr("class",v).attr("id",a.domId||a.id),E=b.insert("g").attr("class","label").attr("style",a.labelStyle);let C;a.labelText===void 0?C="":C=typeof a.labelText=="string"?a.labelText:a.labelText[0];const A=E.node();let P;a.labelType==="markdown"?P=vK(E,v0(nP(C),De()),{useHtmlLabels:m,width:a.width||De().flowchart.wrappingWidth,classes:"markdown-node-label"}):P=A.appendChild(dp(v0(nP(C),De()),a.labelStyle,!1,p));let F=P.getBBox();const j=a.padding/2;if(u1(De().flowchart.htmlLabels)){const R=P.children[0],H=xr(P),Y=R.getElementsByTagName("img");if(Y){const rt=C.replace(/]*>/g,"").trim()==="";await Promise.all([...Y].map(J=>new Promise(it=>{function ft(){if(J.style.display="flex",J.style.flexDirection="column",rt){const Tt=De().fontSize?De().fontSize:window.getComputedStyle(document.body).fontSize,kt=5;J.style.width=parseInt(Tt,10)*kt+"px"}else J.style.width="100%";it(J)}setTimeout(()=>{J.complete&&ft()}),J.addEventListener("error",ft),J.addEventListener("load",ft)})))}F=R.getBoundingClientRect(),H.attr("width",F.width),H.attr("height",F.height)}return m?E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"):E.attr("transform","translate(0, "+-F.height/2+")"),a.centerLabel&&E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),E.insert("rect",":first-child"),{shapeSvg:b,bbox:F,halfPadding:j,label:E}},ef=(i,a)=>{const f=a.node().getBBox();i.width=f.width,i.height=f.height};function L5(i,a,f,p){return i.insert("polygon",":first-child").attr("points",p.map(function(v){return v.x+","+v.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-a/2+","+f/2+")")}let Xo={},cm={},uBt={};const zje=()=>{cm={},uBt={},Xo={}},wK=(i,a)=>(Wt.trace("In isDecendant",a," ",i," = ",cm[a].includes(i)),!!cm[a].includes(i)),qje=(i,a)=>(Wt.info("Decendants of ",a," is ",cm[a]),Wt.info("Edge is ",i),i.v===a||i.w===a?!1:cm[a]?cm[a].includes(i.v)||wK(i.v,a)||wK(i.w,a)||cm[a].includes(i.w):(Wt.debug("Tilt, ",a,",not in decendants"),!1)),lBt=(i,a,f,p)=>{Wt.warn("Copying children of ",i,"root",p,"data",a.node(i),p);const v=a.children(i)||[];i!==p&&v.push(i),Wt.warn("Copying (nodes) clusterId",i,"nodes",v),v.forEach(m=>{if(a.children(m).length>0)lBt(m,a,f,p);else{const b=a.node(m);Wt.info("cp ",m," to ",p," with parent ",i),f.setNode(m,b),p!==a.parent(m)&&(Wt.warn("Setting parent",m,a.parent(m)),f.setParent(m,a.parent(m))),i!==p&&m!==i?(Wt.debug("Setting parent",m,i),f.setParent(m,i)):(Wt.info("In copy ",i,"root",p,"data",a.node(i),p),Wt.debug("Not Setting parent for node=",m,"cluster!==rootId",i!==p,"node!==clusterId",m!==i));const E=a.edges(m);Wt.debug("Copying Edges",E),E.forEach(C=>{Wt.info("Edge",C);const A=a.edge(C.v,C.w,C.name);Wt.info("Edge data",A,p);try{qje(C,p)?(Wt.info("Copying as ",C.v,C.w,A,C.name),f.setEdge(C.v,C.w,A,C.name),Wt.info("newGraph edges ",f.edges(),f.edge(f.edges()[0]))):Wt.info("Skipping copy of edge ",C.v,"-->",C.w," rootId: ",p," clusterId:",i)}catch(P){Wt.error(P)}})}Wt.debug("Removing node",m),a.removeNode(m)})},hBt=(i,a)=>{const f=a.children(i);let p=[...f];for(const v of f)uBt[v]=i,p=[...p,...hBt(v,a)];return p},wP=(i,a)=>{Wt.trace("Searching",i);const f=a.children(i);if(Wt.trace("Searching children of id ",i,f),f.length<1)return Wt.trace("This is a valid node",i),i;for(const p of f){const v=wP(p,a);if(v)return Wt.trace("Found replacement for",i," => ",v),v}},mK=i=>!Xo[i]||!Xo[i].externalConnections?i:Xo[i]?Xo[i].id:i,Hje=(i,a)=>{if(!i||a>10){Wt.debug("Opting out, no graph ");return}else Wt.debug("Opting in, graph ");i.nodes().forEach(function(f){i.children(f).length>0&&(Wt.warn("Cluster identified",f," Replacement id in edges: ",wP(f,i)),cm[f]=hBt(f,i),Xo[f]={id:wP(f,i),clusterData:i.node(f)})}),i.nodes().forEach(function(f){const p=i.children(f),v=i.edges();p.length>0?(Wt.debug("Cluster identified",f,cm),v.forEach(m=>{if(m.v!==f&&m.w!==f){const b=wK(m.v,f),E=wK(m.w,f);b^E&&(Wt.warn("Edge: ",m," leaves cluster ",f),Wt.warn("Decendants of XXX ",f,": ",cm[f]),Xo[f].externalConnections=!0)}})):Wt.debug("Not a cluster ",f,cm)}),i.edges().forEach(function(f){const p=i.edge(f);Wt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(f)),Wt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(i.edge(f)));let v=f.v,m=f.w;if(Wt.warn("Fix XXX",Xo,"ids:",f.v,f.w,"Translating: ",Xo[f.v]," --- ",Xo[f.w]),Xo[f.v]&&Xo[f.w]&&Xo[f.v]===Xo[f.w]){Wt.warn("Fixing and trixing link to self - removing XXX",f.v,f.w,f.name),Wt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),v=mK(f.v),m=mK(f.w),i.removeEdge(f.v,f.w,f.name);const b=f.w+"---"+f.v;i.setNode(b,{domId:b,id:b,labelStyle:"",labelText:p.label,padding:0,shape:"labelRect",style:""});const E=JSON.parse(JSON.stringify(p)),C=JSON.parse(JSON.stringify(p));E.label="",E.arrowTypeEnd="none",C.label="",E.fromCluster=f.v,C.toCluster=f.v,i.setEdge(v,b,E,f.name+"-cyclic-special"),i.setEdge(b,m,C,f.name+"-cyclic-special")}else(Xo[f.v]||Xo[f.w])&&(Wt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),v=mK(f.v),m=mK(f.w),i.removeEdge(f.v,f.w,f.name),v!==f.v&&(p.fromCluster=f.v),m!==f.w&&(p.toCluster=f.w),Wt.warn("Fix Replacing with XXX",v,m,f.name),i.setEdge(v,m,p,f.name))}),Wt.warn("Adjusted Graph",A5(i)),fBt(i,0),Wt.trace(Xo)},fBt=(i,a)=>{if(Wt.warn("extractor - ",a,A5(i),i.children("D")),a>10){Wt.error("Bailing out");return}let f=i.nodes(),p=!1;for(const v of f){const m=i.children(v);p=p||m.length>0}if(!p){Wt.debug("Done, no node has children",i.nodes());return}Wt.debug("Nodes = ",f,a);for(const v of f)if(Wt.debug("Extracting node",v,Xo,Xo[v]&&!Xo[v].externalConnections,!i.parent(v),i.node(v),i.children("D")," Depth ",a),!Xo[v])Wt.debug("Not a cluster",v,a);else if(!Xo[v].externalConnections&&i.children(v)&&i.children(v).length>0){Wt.warn("Cluster without external connections, without a parent and with children",v,a);let b=i.graph().rankdir==="TB"?"LR":"TB";Xo[v]&&Xo[v].clusterData&&Xo[v].clusterData.dir&&(b=Xo[v].clusterData.dir,Wt.warn("Fixing dir",Xo[v].clusterData.dir,b));const E=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:b,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Wt.warn("Old graph before copy",A5(i)),lBt(v,i,E,v),i.setNode(v,{clusterNode:!0,id:v,clusterData:Xo[v].clusterData,labelText:Xo[v].labelText,graph:E}),Wt.warn("New graph after copy node: (",v,")",A5(E)),Wt.debug("Old graph after copy",A5(i))}else Wt.warn("Cluster ** ",v," **not meeting the criteria !externalConnections:",!Xo[v].externalConnections," no parent: ",!i.parent(v)," children ",i.children(v)&&i.children(v).length>0,i.children("D"),a),Wt.debug(Xo);f=i.nodes(),Wt.warn("New list of nodes",f);for(const v of f){const m=i.node(v);Wt.warn(" Now next level",v,m),m.clusterNode&&fBt(m.graph,a+1)}},dBt=(i,a)=>{if(a.length===0)return[];let f=Object.assign(a);return a.forEach(p=>{const v=i.children(p),m=dBt(i,v);f=[...f,...m]}),f},Vje=i=>dBt(i,i.children());function Gje(i,a){return i.intersect(a)}function gBt(i,a,f,p){var v=i.x,m=i.y,b=v-p.x,E=m-p.y,C=Math.sqrt(a*a*E*E+f*f*b*b),A=Math.abs(a*f*b/C);p.x0}function Kje(i,a,f){var p=i.x,v=i.y,m=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;typeof a.forEach=="function"?a.forEach(function(H){b=Math.min(b,H.x),E=Math.min(E,H.y)}):(b=Math.min(b,a.x),E=Math.min(E,a.y));for(var C=p-i.width/2-b,A=v-i.height/2-E,P=0;P1&&m.sort(function(H,Y){var rt=H.x-f.x,J=H.y-f.y,it=Math.sqrt(rt*rt+J*J),ft=Y.x-f.x,Tt=Y.y-f.y,kt=Math.sqrt(ft*ft+Tt*Tt);return it{var f=i.x,p=i.y,v=a.x-f,m=a.y-p,b=i.width/2,E=i.height/2,C,A;return Math.abs(m)*b>Math.abs(v)*E?(m<0&&(E=-E),C=m===0?0:E*v/m,A=E):(v<0&&(b=-b),C=b,A=v===0?0:b*m/v),{x:f+C,y:p+A}},Th={node:Gje,circle:Uje,ellipse:gBt,polygon:Kje,rect:mP},Yje=async(i,a)=>{a.useHtmlLabels||De().flowchart.htmlLabels||(a.centerLabel=!0);const{shapeSvg:p,bbox:v,halfPadding:m}=await Od(i,a,"node "+a.classes,!0);Wt.info("Classes = ",a.classes);const b=p.insert("rect",":first-child");return b.attr("rx",a.rx).attr("ry",a.ry).attr("x",-v.width/2-m).attr("y",-v.height/2-m).attr("width",v.width+a.padding).attr("height",v.height+a.padding),ef(a,b),a.intersect=function(E){return Th.rect(a,E)},p};let bBt=0;const Xje=function(i,a,f,p,v){const m=function(it){switch(it){case v.db.relationType.AGGREGATION:return"aggregation";case v.db.relationType.EXTENSION:return"extension";case v.db.relationType.COMPOSITION:return"composition";case v.db.relationType.DEPENDENCY:return"dependency";case v.db.relationType.LOLLIPOP:return"lollipop"}};a.points=a.points.filter(it=>!Number.isNaN(it.y));const b=a.points,E=YE().x(function(it){return it.x}).y(function(it){return it.y}).curve(MA),C=i.append("path").attr("d",E(b)).attr("id","edge"+bBt).attr("class","relation");let A="";p.arrowMarkerAbsolute&&(A=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,A=A.replace(/\(/g,"\\("),A=A.replace(/\)/g,"\\)")),f.relation.lineType==1&&C.attr("class","relation dashed-line"),f.relation.lineType==10&&C.attr("class","relation dotted-line"),f.relation.type1!=="none"&&C.attr("marker-start","url("+A+"#"+m(f.relation.type1)+"Start)"),f.relation.type2!=="none"&&C.attr("marker-end","url("+A+"#"+m(f.relation.type2)+"End)");let P,F;const j=a.points.length;let R=to.calcLabelPosition(a.points);P=R.x,F=R.y;let H,Y,rt,J;if(j%2!==0&&j>1){let it=to.calcCardinalityPosition(f.relation.type1!=="none",a.points,a.points[0]),ft=to.calcCardinalityPosition(f.relation.type2!=="none",a.points,a.points[j-1]);Wt.debug("cardinality_1_point "+JSON.stringify(it)),Wt.debug("cardinality_2_point "+JSON.stringify(ft)),H=it.x,Y=it.y,rt=ft.x,J=ft.y}if(f.title!==void 0){const it=i.append("g").attr("class","classLabel"),ft=it.append("text").attr("class","label").attr("x",P).attr("y",F).attr("fill","red").attr("text-anchor","middle").text(f.title);window.label=ft;const Tt=ft.node().getBBox();it.insert("rect",":first-child").attr("class","box").attr("x",Tt.x-p.padding/2).attr("y",Tt.y-p.padding/2).attr("width",Tt.width+p.padding).attr("height",Tt.height+p.padding)}Wt.info("Rendering relation "+JSON.stringify(f)),f.relationTitle1!==void 0&&f.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",H).attr("y",Y).attr("fill","black").attr("font-size","6").text(f.relationTitle1),f.relationTitle2!==void 0&&f.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",rt).attr("y",J).attr("fill","black").attr("font-size","6").text(f.relationTitle2),bBt++},Qje=function(i,a,f,p){Wt.debug("Rendering class ",a,f);const v=a.id,m={id:v,label:a.id,width:0,height:0},b=i.append("g").attr("id",p.db.lookUpDomId(v)).attr("class","classGroup");let E;a.link?E=b.append("svg:a").attr("xlink:href",a.link).attr("target",a.linkTarget).append("text").attr("y",f.textHeight+f.padding).attr("x",0):E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);let C=!0;a.annotations.forEach(function(kt){const mt=E.append("tspan").text("«"+kt+"»");C||mt.attr("dy",f.textHeight),C=!1});let A=vBt(a);const P=E.append("tspan").text(A).attr("class","title");C||P.attr("dy",f.textHeight);const F=E.node().getBBox().height,j=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin/2).attr("y2",f.padding+F+f.dividerMargin/2),R=b.append("text").attr("x",f.padding).attr("y",F+f.dividerMargin+f.textHeight).attr("fill","white").attr("class","classText");C=!0,a.members.forEach(function(kt){wBt(R,kt,C,f),C=!1});const H=R.node().getBBox(),Y=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin+H.height).attr("y2",f.padding+F+f.dividerMargin+H.height),rt=b.append("text").attr("x",f.padding).attr("y",F+2*f.dividerMargin+H.height+f.textHeight).attr("fill","white").attr("class","classText");C=!0,a.methods.forEach(function(kt){wBt(rt,kt,C,f),C=!1});const J=b.node().getBBox();var it=" ";a.cssClasses.length>0&&(it=it+a.cssClasses.join(" "));const Tt=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",J.width+2*f.padding).attr("height",J.height+f.padding+.5*f.dividerMargin).attr("class",it).node().getBBox().width;return E.node().childNodes.forEach(function(kt){kt.setAttribute("x",(Tt-kt.getBBox().width)/2)}),a.tooltip&&E.insert("title").text(a.tooltip),j.attr("x2",Tt),Y.attr("x2",Tt),m.width=Tt,m.height=J.height+f.padding+.5*f.dividerMargin,m},vBt=function(i){let a=i.id;return i.type&&(a+="<"+i.type+">"),a},Zje=function(i,a,f,p){Wt.debug("Rendering note ",a,f);const v=a.id,m={id:v,text:a.text,width:0,height:0},b=i.append("g").attr("id",v).attr("class","classGroup");let E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);const C=JSON.parse(`"${a.text}"`).split(` +`);C.forEach(function(j){Wt.debug(`Adding line: ${j}`),E.append("tspan").text(j).attr("class","title").attr("dy",f.textHeight)});const A=b.node().getBBox(),F=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",A.width+2*f.padding).attr("height",A.height+C.length*f.textHeight+f.padding+.5*f.dividerMargin).node().getBBox().width;return E.node().childNodes.forEach(function(j){j.setAttribute("x",(F-j.getBBox().width)/2)}),m.width=F,m.height=A.height+C.length*f.textHeight+f.padding+.5*f.dividerMargin,m},yK=function(i){let a="",f="",p="",v="",m=i.substring(0,1),b=i.substring(i.length-1,i.length);m.match(/[#+~-]/)&&(v=m);let E=/[\s\w)~]/;b.match(E)||(f=mBt(b));const C=v===""?0:1;let A=f===""?i.length:i.length-1;i=i.substring(C,A);const P=i.indexOf("("),F=i.indexOf(")");if(P>1&&F>P&&F<=i.length){let R=i.substring(0,P).trim();const H=i.substring(P+1,F);if(a=v+R+"("+zN(H.trim())+")",Fi?" "+i:"",Bb=(i,a)=>`${a||"node default"}${yBt(i.classes)} ${yBt(i.class)}`,xBt=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=v+m,E=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}];Wt.info("Question main (Circle)");const C=L5(f,b,b,E);return C.attr("style",a.style),ef(a,C),a.intersect=function(A){return Wt.warn("Intersect called"),Th.polygon(a,E,A)},f},Jje=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=28,v=[{x:0,y:p/2},{x:p/2,y:0},{x:0,y:-p/2},{x:-p/2,y:0}];return f.insert("polygon",":first-child").attr("points",v.map(function(b){return b.x+","+b.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),a.width=28,a.height=28,a.intersect=function(b){return Th.circle(a,14,b)},f},t$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=4,m=p.height+a.padding,b=m/v,E=p.width+2*b+a.padding,C=[{x:b,y:0},{x:E-b,y:0},{x:E,y:-m/2},{x:E-b,y:-m},{x:b,y:-m},{x:0,y:-m/2}],A=L5(f,E,m,C);return A.attr("style",a.style),ef(a,A),a.intersect=function(P){return Th.polygon(a,C,P)},f},e$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-m/2,y:0},{x:v,y:0},{x:v,y:-m},{x:-m/2,y:-m},{x:0,y:-m/2}];return L5(f,v,m,b).attr("style",a.style),a.width=v+m,a.height=m,a.intersect=function(C){return Th.polygon(a,b,C)},f},n$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-2*m/6,y:0},{x:v-m/6,y:0},{x:v+2*m/6,y:-m},{x:m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},r$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:2*m/6,y:0},{x:v+m/6,y:0},{x:v-2*m/6,y:-m},{x:-m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},i$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-2*m/6,y:0},{x:v+2*m/6,y:0},{x:v-m/6,y:-m},{x:m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},s$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:m/6,y:0},{x:v-m/6,y:0},{x:v+2*m/6,y:-m},{x:-2*m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},a$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:0,y:0},{x:v+m/2,y:0},{x:v,y:-m/2},{x:v+m/2,y:-m},{x:0,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},o$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=v/2,b=m/(2.5+v/50),E=p.height+b+a.padding,C="M 0,"+b+" a "+m+","+b+" 0,0,0 "+v+" 0 a "+m+","+b+" 0,0,0 "+-v+" 0 l 0,"+E+" a "+m+","+b+" 0,0,0 "+v+" 0 l 0,"+-E,A=f.attr("label-offset-y",b).insert("path",":first-child").attr("style",a.style).attr("d",C).attr("transform","translate("+-v/2+","+-(E/2+b)+")");return ef(a,A),a.intersect=function(P){const F=Th.rect(a,P),j=F.x-a.x;if(m!=0&&(Math.abs(j)a.height/2-b)){let R=b*b*(1-j*j/(m*m));R!=0&&(R=Math.sqrt(R)),R=b-R,P.y-a.y>0&&(R=-R),F.y+=R}return F},f},c$e=async(i,a)=>{const{shapeSvg:f,bbox:p,halfPadding:v}=await Od(i,a,"node "+a.classes+" "+a.class,!0),m=f.insert("rect",":first-child"),b=p.width+a.padding,E=p.height+a.padding;if(m.attr("class","basic label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",-p.width/2-v).attr("y",-p.height/2-v).attr("width",b).attr("height",E),a.props){const C=new Set(Object.keys(a.props));a.props.borders&&(kBt(m,a.props.borders,b,E),C.delete("borders")),C.forEach(A=>{Wt.warn(`Unknown node property ${A}`)})}return ef(a,m),a.intersect=function(C){return Th.rect(a,C)},f},u$e=async(i,a)=>{const{shapeSvg:f}=await Od(i,a,"label",!0);Wt.trace("Classes = ",a.class);const p=f.insert("rect",":first-child"),v=0,m=0;if(p.attr("width",v).attr("height",m),f.attr("class","label edgeLabel"),a.props){const b=new Set(Object.keys(a.props));a.props.borders&&(kBt(p,a.props.borders,v,m),b.delete("borders")),b.forEach(E=>{Wt.warn(`Unknown node property ${E}`)})}return ef(a,p),a.intersect=function(b){return Th.rect(a,b)},f};function kBt(i,a,f,p){const v=[],m=E=>{v.push(E,0)},b=E=>{v.push(0,E)};a.includes("t")?(Wt.debug("add top border"),m(f)):b(f),a.includes("r")?(Wt.debug("add right border"),m(p)):b(p),a.includes("b")?(Wt.debug("add bottom border"),m(f)):b(f),a.includes("l")?(Wt.debug("add left border"),m(p)):b(p),i.attr("stroke-dasharray",v.join(" "))}const l$e=(i,a)=>{let f;a.classes?f="node "+a.classes:f="node default";const p=i.insert("g").attr("class",f).attr("id",a.domId||a.id),v=p.insert("rect",":first-child"),m=p.insert("line"),b=p.insert("g").attr("class","label"),E=a.labelText.flat?a.labelText.flat():a.labelText;let C="";typeof E=="object"?C=E[0]:C=E,Wt.info("Label text abc79",C,E,typeof E=="object");const A=b.node().appendChild(dp(C,a.labelStyle,!0,!0));let P={width:0,height:0};if(u1(De().flowchart.htmlLabels)){const Y=A.children[0],rt=xr(A);P=Y.getBoundingClientRect(),rt.attr("width",P.width),rt.attr("height",P.height)}Wt.info("Text 2",E);const F=E.slice(1,E.length);let j=A.getBBox();const R=b.node().appendChild(dp(F.join?F.join("
"):F,a.labelStyle,!0,!0));if(u1(De().flowchart.htmlLabels)){const Y=R.children[0],rt=xr(R);P=Y.getBoundingClientRect(),rt.attr("width",P.width),rt.attr("height",P.height)}const H=a.padding/2;return xr(R).attr("transform","translate( "+(P.width>j.width?0:(j.width-P.width)/2)+", "+(j.height+H+5)+")"),xr(A).attr("transform","translate( "+(P.width{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.height+a.padding,m=p.width+v/4+a.padding,b=f.insert("rect",":first-child").attr("style",a.style).attr("rx",v/2).attr("ry",v/2).attr("x",-m/2).attr("y",-v/2).attr("width",m).attr("height",v);return ef(a,b),a.intersect=function(E){return Th.rect(a,E)},f},f$e=async(i,a)=>{const{shapeSvg:f,bbox:p,halfPadding:v}=await Od(i,a,Bb(a,void 0),!0),m=f.insert("circle",":first-child");return m.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",p.width/2+v).attr("width",p.width+a.padding).attr("height",p.height+a.padding),Wt.info("Circle main"),ef(a,m),a.intersect=function(b){return Wt.info("Circle intersect",a,p.width/2+v,b),Th.circle(a,p.width/2+v,b)},f},d$e=async(i,a)=>{const{shapeSvg:f,bbox:p,halfPadding:v}=await Od(i,a,Bb(a,void 0),!0),m=5,b=f.insert("g",":first-child"),E=b.insert("circle"),C=b.insert("circle");return b.attr("class",a.class),E.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",p.width/2+v+m).attr("width",p.width+a.padding+m*2).attr("height",p.height+a.padding+m*2),C.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",p.width/2+v).attr("width",p.width+a.padding).attr("height",p.height+a.padding),Wt.info("DoubleCircle main"),ef(a,E),a.intersect=function(A){return Wt.info("DoubleCircle intersect",a,p.width/2+v+m,A),Th.circle(a,p.width/2+v+m,A)},f},g$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:0,y:0},{x:v,y:0},{x:v,y:-m},{x:0,y:-m},{x:0,y:0},{x:-8,y:0},{x:v+8,y:0},{x:v+8,y:-m},{x:-8,y:-m},{x:-8,y:0}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},p$e=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=f.insert("circle",":first-child");return p.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),ef(a,p),a.intersect=function(v){return Th.circle(a,7,v)},f},EBt=(i,a,f)=>{const p=i.insert("g").attr("class","node default").attr("id",a.domId||a.id);let v=70,m=10;f==="LR"&&(v=10,m=70);const b=p.append("rect").attr("x",-1*v/2).attr("y",-1*m/2).attr("width",v).attr("height",m).attr("class","fork-join");return ef(a,b),a.height=a.height+a.padding/2,a.width=a.width+a.padding/2,a.intersect=function(E){return Th.rect(a,E)},p},TBt={rhombus:xBt,question:xBt,rect:c$e,labelRect:u$e,rectWithTitle:l$e,choice:Jje,circle:f$e,doublecircle:d$e,stadium:h$e,hexagon:t$e,rect_left_inv_arrow:e$e,lean_right:n$e,lean_left:r$e,trapezoid:i$e,inv_trapezoid:s$e,rect_right_inv_arrow:a$e,cylinder:o$e,start:p$e,end:(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=f.insert("circle",":first-child"),v=f.insert("circle",":first-child");return v.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),p.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),ef(a,v),a.intersect=function(m){return Th.circle(a,7,m)},f},note:Yje,subroutine:g$e,fork:EBt,join:EBt,class_box:(i,a)=>{const f=a.padding/2,p=4,v=8;let m;a.classes?m="node "+a.classes:m="node default";const b=i.insert("g").attr("class",m).attr("id",a.domId||a.id),E=b.insert("rect",":first-child"),C=b.insert("line"),A=b.insert("line");let P=0,F=p;const j=b.insert("g").attr("class","label");let R=0;const H=a.classData.annotations&&a.classData.annotations[0],Y=a.classData.annotations[0]?"«"+a.classData.annotations[0]+"»":"",rt=j.node().appendChild(dp(Y,a.labelStyle,!0,!0));let J=rt.getBBox();if(u1(De().flowchart.htmlLabels)){const yt=rt.children[0],st=xr(rt);J=yt.getBoundingClientRect(),st.attr("width",J.width),st.attr("height",J.height)}a.classData.annotations[0]&&(F+=J.height+p,P+=J.width);let it=a.classData.label;a.classData.type!==void 0&&a.classData.type!==""&&(De().flowchart.htmlLabels?it+="<"+a.classData.type+">":it+="<"+a.classData.type+">");const ft=j.node().appendChild(dp(it,a.labelStyle,!0,!0));xr(ft).attr("class","classTitle");let Tt=ft.getBBox();if(u1(De().flowchart.htmlLabels)){const yt=ft.children[0],st=xr(ft);Tt=yt.getBoundingClientRect(),st.attr("width",Tt.width),st.attr("height",Tt.height)}F+=Tt.height+p,Tt.width>P&&(P=Tt.width);const kt=[];a.classData.members.forEach(yt=>{const st=yK(yt);let xt=st.displayText;De().flowchart.htmlLabels&&(xt=xt.replace(//g,">"));const ht=j.node().appendChild(dp(xt,st.cssStyle?st.cssStyle:a.labelStyle,!0,!0));let dt=ht.getBBox();if(u1(De().flowchart.htmlLabels)){const Ct=ht.children[0],tt=xr(ht);dt=Ct.getBoundingClientRect(),tt.attr("width",dt.width),tt.attr("height",dt.height)}dt.width>P&&(P=dt.width),F+=dt.height+p,kt.push(ht)}),F+=v;const mt=[];if(a.classData.methods.forEach(yt=>{const st=yK(yt);let xt=st.displayText;De().flowchart.htmlLabels&&(xt=xt.replace(//g,">"));const ht=j.node().appendChild(dp(xt,st.cssStyle?st.cssStyle:a.labelStyle,!0,!0));let dt=ht.getBBox();if(u1(De().flowchart.htmlLabels)){const Ct=ht.children[0],tt=xr(ht);dt=Ct.getBoundingClientRect(),tt.attr("width",dt.width),tt.attr("height",dt.height)}dt.width>P&&(P=dt.width),F+=dt.height+p,mt.push(ht)}),F+=v,H){let yt=(P-J.width)/2;xr(rt).attr("transform","translate( "+(-1*P/2+yt)+", "+-1*F/2+")"),R=J.height+p}let ct=(P-Tt.width)/2;return xr(ft).attr("transform","translate( "+(-1*P/2+ct)+", "+(-1*F/2+R)+")"),R+=Tt.height+p,C.attr("class","divider").attr("x1",-P/2-f).attr("x2",P/2+f).attr("y1",-F/2-f+v+R).attr("y2",-F/2-f+v+R),R+=v,kt.forEach(yt=>{xr(yt).attr("transform","translate( "+-P/2+", "+(-1*F/2+R+v/2)+")");const st=yt==null?void 0:yt.getBBox();R+=((st==null?void 0:st.height)??0)+p}),R+=v,A.attr("class","divider").attr("x1",-P/2-f).attr("x2",P/2+f).attr("y1",-F/2-f+v+R).attr("y2",-F/2-f+v+R),R+=v,mt.forEach(yt=>{xr(yt).attr("transform","translate( "+-P/2+", "+(-1*F/2+R)+")");const st=yt==null?void 0:yt.getBBox();R+=((st==null?void 0:st.height)??0)+p}),E.attr("class","outer title-state").attr("x",-P/2-f).attr("y",-(F/2)-f).attr("width",P+a.padding).attr("height",F+a.padding),ef(a,E),a.intersect=function(yt){return Th.rect(a,yt)},b}};let iL={};const _Bt=async(i,a,f)=>{let p,v;if(a.link){let m;De().securityLevel==="sandbox"?m="_top":a.linkTarget&&(m=a.linkTarget||"_blank"),p=i.insert("svg:a").attr("xlink:href",a.link).attr("target",m),v=await TBt[a.shape](p,a,f)}else v=await TBt[a.shape](i,a,f),p=v;return a.tooltip&&v.attr("title",a.tooltip),a.class&&v.attr("class","node default "+a.class),iL[a.id]=p,a.haveCallback&&iL[a.id].attr("class",iL[a.id].attr("class")+" clickable"),p},b$e=(i,a)=>{iL[a.id]=i},v$e=()=>{iL={}},CBt=i=>{const a=iL[i.id];Wt.trace("Transforming node",i.diff,i,"translate("+(i.x-i.width/2-5)+", "+i.width/2+")");const f=8,p=i.diff||0;return i.clusterNode?a.attr("transform","translate("+(i.x+p-i.width/2)+", "+(i.y-i.height/2-f)+")"):a.attr("transform","translate("+i.x+", "+i.y+")"),p},w$e={rect:(i,a)=>{Wt.info("Creating subgraph rect for ",a.id,a);const f=i.insert("g").attr("class","cluster"+(a.class?" "+a.class:"")).attr("id",a.id),p=f.insert("rect",":first-child"),v=u1(De().flowchart.htmlLabels),m=f.insert("g").attr("class","cluster-label"),b=a.labelType==="markdown"?vK(m,a.labelText,{style:a.labelStyle,useHtmlLabels:v}):m.node().appendChild(dp(a.labelText,a.labelStyle,void 0,!0));let E=b.getBBox();if(u1(De().flowchart.htmlLabels)){const j=b.children[0],R=xr(b);E=j.getBoundingClientRect(),R.attr("width",E.width),R.attr("height",E.height)}const C=0*a.padding,A=C/2,P=a.width<=E.width+C?E.width+C:a.width;a.width<=E.width+C?a.diff=(E.width-a.width)/2-a.padding/2:a.diff=-a.padding/2,Wt.trace("Data ",a,JSON.stringify(a)),p.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-P/2).attr("y",a.y-a.height/2-A).attr("width",P).attr("height",a.height+C),v?m.attr("transform","translate("+(a.x-E.width/2)+", "+(a.y-a.height/2)+")"):m.attr("transform","translate("+a.x+", "+(a.y-a.height/2)+")");const F=p.node().getBBox();return a.width=F.width,a.height=F.height,a.intersect=function(j){return mP(a,j)},f},roundedWithTitle:(i,a)=>{const f=i.insert("g").attr("class",a.classes).attr("id",a.id),p=f.insert("rect",":first-child"),v=f.insert("g").attr("class","cluster-label"),m=f.append("rect"),b=v.node().appendChild(dp(a.labelText,a.labelStyle,void 0,!0));let E=b.getBBox();if(u1(De().flowchart.htmlLabels)){const j=b.children[0],R=xr(b);E=j.getBoundingClientRect(),R.attr("width",E.width),R.attr("height",E.height)}E=b.getBBox();const C=0*a.padding,A=C/2,P=a.width<=E.width+a.padding?E.width+a.padding:a.width;a.width<=E.width+a.padding?a.diff=(E.width+a.padding*0-a.width)/2:a.diff=-a.padding/2,p.attr("class","outer").attr("x",a.x-P/2-A).attr("y",a.y-a.height/2-A).attr("width",P+C).attr("height",a.height+C),m.attr("class","inner").attr("x",a.x-P/2-A).attr("y",a.y-a.height/2-A+E.height-1).attr("width",P+C).attr("height",a.height+C-E.height-3),v.attr("transform","translate("+(a.x-E.width/2)+", "+(a.y-a.height/2-a.padding/3+(u1(De().flowchart.htmlLabels)?5:3))+")");const F=p.node().getBBox();return a.height=F.height,a.intersect=function(j){return mP(a,j)},f},noteGroup:(i,a)=>{const f=i.insert("g").attr("class","note-cluster").attr("id",a.id),p=f.insert("rect",":first-child"),v=0*a.padding,m=v/2;p.attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-a.width/2-m).attr("y",a.y-a.height/2-m).attr("width",a.width+v).attr("height",a.height+v).attr("fill","none");const b=p.node().getBBox();return a.width=b.width,a.height=b.height,a.intersect=function(E){return mP(a,E)},f},divider:(i,a)=>{const f=i.insert("g").attr("class",a.classes).attr("id",a.id),p=f.insert("rect",":first-child"),v=0*a.padding,m=v/2;p.attr("class","divider").attr("x",a.x-a.width/2-m).attr("y",a.y-a.height/2).attr("width",a.width+v).attr("height",a.height+v);const b=p.node().getBBox();return a.width=b.width,a.height=b.height,a.diff=-a.padding/2,a.intersect=function(E){return mP(a,E)},f}};let SBt={};const m$e=(i,a)=>{Wt.trace("Inserting cluster");const f=a.shape||"rect";SBt[a.id]=w$e[f](i,a)},y$e=()=>{SBt={}};let xK={},Nd={};const x$e=()=>{xK={},Nd={}},ABt=(i,a)=>{const f=u1(De().flowchart.htmlLabels),p=a.labelType==="markdown"?vK(i,a.label,{style:a.labelStyle,useHtmlLabels:f,addSvgBackground:!0}):dp(a.label,a.labelStyle);Wt.info("abc82",a,a.labelType);const v=i.insert("g").attr("class","edgeLabel"),m=v.insert("g").attr("class","label");m.node().appendChild(p);let b=p.getBBox();if(f){const C=p.children[0],A=xr(p);b=C.getBoundingClientRect(),A.attr("width",b.width),A.attr("height",b.height)}m.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),xK[a.id]=v,a.width=b.width,a.height=b.height;let E;if(a.startLabelLeft){const C=dp(a.startLabelLeft,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].startLeft=A,kK(E,a.startLabelLeft)}if(a.startLabelRight){const C=dp(a.startLabelRight,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=A.node().appendChild(C),P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].startRight=A,kK(E,a.startLabelRight)}if(a.endLabelLeft){const C=dp(a.endLabelLeft,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),A.node().appendChild(C),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].endLeft=A,kK(E,a.endLabelLeft)}if(a.endLabelRight){const C=dp(a.endLabelRight,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),A.node().appendChild(C),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].endRight=A,kK(E,a.endLabelRight)}return p};function kK(i,a){De().flowchart.htmlLabels&&i&&(i.style.width=a.length*9+"px",i.style.height="12px")}const k$e=(i,a)=>{Wt.info("Moving label abc78 ",i.id,i.label,xK[i.id]);let f=a.updatedPath?a.updatedPath:a.originalPath;if(i.label){const p=xK[i.id];let v=i.x,m=i.y;if(f){const b=to.calcLabelPosition(f);Wt.info("Moving label "+i.label+" from (",v,",",m,") to (",b.x,",",b.y,") abc78"),a.updatedPath&&(v=b.x,m=b.y)}p.attr("transform","translate("+v+", "+m+")")}if(i.startLabelLeft){const p=Nd[i.id].startLeft;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_left",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}if(i.startLabelRight){const p=Nd[i.id].startRight;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_right",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}if(i.endLabelLeft){const p=Nd[i.id].endLeft;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_left",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}if(i.endLabelRight){const p=Nd[i.id].endRight;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_right",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}},E$e=(i,a)=>{const f=i.x,p=i.y,v=Math.abs(a.x-f),m=Math.abs(a.y-p),b=i.width/2,E=i.height/2;return v>=b||m>=E},T$e=(i,a,f)=>{Wt.warn(`intersection calc abc89: + outsidePoint: ${JSON.stringify(a)} + insidePoint : ${JSON.stringify(f)} + node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const p=i.x,v=i.y,m=Math.abs(p-f.x),b=i.width/2;let E=f.xMath.abs(p-a.x)*C){let F=f.y{Wt.warn("abc88 cutPathAtIntersect",i,a);let f=[],p=i[0],v=!1;return i.forEach(m=>{if(Wt.info("abc88 checking point",m,a),!E$e(a,m)&&!v){const b=T$e(a,p,m);Wt.warn("abc88 inside",m,p,b),Wt.warn("abc88 intersection",b);let E=!1;f.forEach(C=>{E=E||C.x===b.x&&C.y===b.y}),f.some(C=>C.x===b.x&&C.y===b.y)?Wt.warn("abc88 no intersect",b,f):f.push(b),v=!0}else Wt.warn("abc88 outside",m,p),p=m,v||f.push(m)}),Wt.warn("abc88 returning points",f),f},_$e=function(i,a,f,p,v,m){let b=f.points,E=!1;const C=m.node(a.v);var A=m.node(a.w);Wt.info("abc88 InsertEdge: ",f),A.intersect&&C.intersect&&(b=b.slice(1,f.points.length-1),b.unshift(C.intersect(b[0])),Wt.info("Last point",b[b.length-1],A,A.intersect(b[b.length-1])),b.push(A.intersect(b[b.length-1]))),f.toCluster&&(Wt.info("to cluster abc88",p[f.toCluster]),b=LBt(f.points,p[f.toCluster].node),E=!0),f.fromCluster&&(Wt.info("from cluster abc88",p[f.fromCluster]),b=LBt(b.reverse(),p[f.fromCluster].node).reverse(),E=!0);const P=b.filter(J=>!Number.isNaN(J.y));let F;v==="graph"||v==="flowchart"?F=f.curve||MA:F=MA;const j=YE().x(function(J){return J.x}).y(function(J){return J.y}).curve(F);let R;switch(f.thickness){case"normal":R="edge-thickness-normal";break;case"thick":R="edge-thickness-thick";break;case"invisible":R="edge-thickness-thick";break;default:R=""}switch(f.pattern){case"solid":R+=" edge-pattern-solid";break;case"dotted":R+=" edge-pattern-dotted";break;case"dashed":R+=" edge-pattern-dashed";break}const H=i.append("path").attr("d",j(P)).attr("id",f.id).attr("class"," "+R+(f.classes?" "+f.classes:"")).attr("style",f.style);let Y="";switch((De().flowchart.arrowMarkerAbsolute||De().state.arrowMarkerAbsolute)&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),Wt.info("arrowTypeStart",f.arrowTypeStart),Wt.info("arrowTypeEnd",f.arrowTypeEnd),f.arrowTypeStart){case"arrow_cross":H.attr("marker-start","url("+Y+"#"+v+"-crossStart)");break;case"arrow_point":H.attr("marker-start","url("+Y+"#"+v+"-pointStart)");break;case"arrow_barb":H.attr("marker-start","url("+Y+"#"+v+"-barbStart)");break;case"arrow_circle":H.attr("marker-start","url("+Y+"#"+v+"-circleStart)");break;case"aggregation":H.attr("marker-start","url("+Y+"#"+v+"-aggregationStart)");break;case"extension":H.attr("marker-start","url("+Y+"#"+v+"-extensionStart)");break;case"composition":H.attr("marker-start","url("+Y+"#"+v+"-compositionStart)");break;case"dependency":H.attr("marker-start","url("+Y+"#"+v+"-dependencyStart)");break;case"lollipop":H.attr("marker-start","url("+Y+"#"+v+"-lollipopStart)");break}switch(f.arrowTypeEnd){case"arrow_cross":H.attr("marker-end","url("+Y+"#"+v+"-crossEnd)");break;case"arrow_point":H.attr("marker-end","url("+Y+"#"+v+"-pointEnd)");break;case"arrow_barb":H.attr("marker-end","url("+Y+"#"+v+"-barbEnd)");break;case"arrow_circle":H.attr("marker-end","url("+Y+"#"+v+"-circleEnd)");break;case"aggregation":H.attr("marker-end","url("+Y+"#"+v+"-aggregationEnd)");break;case"extension":H.attr("marker-end","url("+Y+"#"+v+"-extensionEnd)");break;case"composition":H.attr("marker-end","url("+Y+"#"+v+"-compositionEnd)");break;case"dependency":H.attr("marker-end","url("+Y+"#"+v+"-dependencyEnd)");break;case"lollipop":H.attr("marker-end","url("+Y+"#"+v+"-lollipopEnd)");break}let rt={};return E&&(rt.updatedPath=b),rt.originalPath=f.points,rt},MBt=async(i,a,f,p)=>{Wt.info("Graph in recursive render: XXX",A5(a),p);const v=a.graph().rankdir;Wt.trace("Dir in recursive render - dir:",v);const m=i.insert("g").attr("class","root");a.nodes()?Wt.info("Recursive render XXX",a.nodes()):Wt.info("No nodes found for",a),a.edges().length>0&&Wt.trace("Recursive edges",a.edge(a.edges()[0]));const b=m.insert("g").attr("class","clusters"),E=m.insert("g").attr("class","edgePaths"),C=m.insert("g").attr("class","edgeLabels"),A=m.insert("g").attr("class","nodes");await Promise.all(a.nodes().map(async function(F){const j=a.node(F);if(p!==void 0){const R=JSON.parse(JSON.stringify(p.clusterData));Wt.info("Setting data for cluster XXX (",F,") ",R,p),a.setNode(p.id,R),a.parent(F)||(Wt.trace("Setting parent",F,p.id),a.setParent(F,p.id,R))}if(Wt.info("(Insert) Node XXX"+F+": "+JSON.stringify(a.node(F))),j&&j.clusterNode){Wt.info("Cluster identified",F,j.width,a.node(F));const R=await MBt(A,j.graph,f,a.node(F)),H=R.elem;ef(j,H),j.diff=R.diff||0,Wt.info("Node bounds (abc123)",F,j,j.width,j.x,j.y),b$e(H,j),Wt.warn("Recursive render complete ",H,j)}else a.children(F).length>0?(Wt.info("Cluster - the non recursive path XXX",F,j.id,j,a),Wt.info(wP(j.id,a)),Xo[j.id]={id:wP(j.id,a),node:j}):(Wt.info("Node - the non recursive path",F,j.id,j),await _Bt(A,a.node(F),v))})),a.edges().forEach(function(F){const j=a.edge(F.v,F.w,F.name);Wt.info("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(F)),Wt.info("Edge "+F.v+" -> "+F.w+": ",F," ",JSON.stringify(a.edge(F))),Wt.info("Fix",Xo,"ids:",F.v,F.w,"Translateing: ",Xo[F.v],Xo[F.w]),ABt(C,j)}),a.edges().forEach(function(F){Wt.info("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(F))}),Wt.info("#############################################"),Wt.info("### Layout ###"),Wt.info("#############################################"),Wt.info(a),nL(a),Wt.info("Graph after layout:",A5(a));let P=0;return Vje(a).forEach(function(F){const j=a.node(F);Wt.info("Position "+F+": "+JSON.stringify(a.node(F))),Wt.info("Position "+F+": ("+j.x,","+j.y,") width: ",j.width," height: ",j.height),j&&j.clusterNode?CBt(j):a.children(F).length>0?(m$e(b,j),Xo[j.id].node=j):CBt(j)}),a.edges().forEach(function(F){const j=a.edge(F);Wt.info("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(j),j);const R=_$e(E,F,j,Xo,f,a);k$e(j,R)}),a.nodes().forEach(function(F){const j=a.node(F);Wt.info(F,j.type,j.diff),j.type==="group"&&(P=j.diff)}),{elem:m,diff:P}},A0t=async(i,a,f,p,v)=>{DFt(i,f,p,v),v$e(),x$e(),y$e(),zje(),Wt.warn("Graph at first:",A5(a)),Hje(a),Wt.warn("Graph after:",A5(a)),await MBt(i,a,p)},DBt={},C$e=function(i){const a=Object.keys(i);for(const f of a)DBt[f]=i[f]},IBt=function(i,a,f,p,v,m){const b=p.select(`[id="${f}"]`);Object.keys(i).forEach(function(C){const A=i[C];let P="default";A.classes.length>0&&(P=A.classes.join(" ")),P=P+" flowchart-label";const F=em(A.styles);let j=A.text!==void 0?A.text:A.id,R;if(Wt.info("vertex",A,A.labelType),A.labelType==="markdown")Wt.info("vertex",A,A.labelType);else if(u1(De().flowchart.htmlLabels)){const rt={label:j.replace(/fa[blrs]?:fa-[\w-]+/g,J=>``)};R=u0t(b,rt).node(),R.parentNode.removeChild(R)}else{const rt=v.createElementNS("http://www.w3.org/2000/svg","text");rt.setAttribute("style",F.labelStyle.replace("color:","fill:"));const J=j.split(ui.lineBreakRegex);for(const it of J){const ft=v.createElementNS("http://www.w3.org/2000/svg","tspan");ft.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),ft.setAttribute("dy","1em"),ft.setAttribute("x","1"),ft.textContent=it,rt.appendChild(ft)}R=rt}let H=0,Y="";switch(A.type){case"round":H=5,Y="rect";break;case"square":Y="rect";break;case"diamond":Y="question";break;case"hexagon":Y="hexagon";break;case"odd":Y="rect_left_inv_arrow";break;case"lean_right":Y="lean_right";break;case"lean_left":Y="lean_left";break;case"trapezoid":Y="trapezoid";break;case"inv_trapezoid":Y="inv_trapezoid";break;case"odd_right":Y="rect_left_inv_arrow";break;case"circle":Y="circle";break;case"ellipse":Y="ellipse";break;case"stadium":Y="stadium";break;case"subroutine":Y="subroutine";break;case"cylinder":Y="cylinder";break;case"group":Y="rect";break;case"doublecircle":Y="doublecircle";break;default:Y="rect"}a.setNode(A.id,{labelStyle:F.labelStyle,shape:Y,labelText:j,labelType:A.labelType,rx:H,ry:H,class:P,style:F.style,id:A.id,link:A.link,linkTarget:A.linkTarget,tooltip:m.db.getTooltip(A.id)||"",domId:m.db.lookUpDomId(A.id),haveCallback:A.haveCallback,width:A.type==="group"?500:void 0,dir:A.dir,type:A.type,props:A.props,padding:De().flowchart.padding}),Wt.info("setNode",{labelStyle:F.labelStyle,labelType:A.labelType,shape:Y,labelText:j,rx:H,ry:H,class:P,style:F.style,id:A.id,domId:m.db.lookUpDomId(A.id),width:A.type==="group"?500:void 0,type:A.type,dir:A.dir,props:A.props,padding:De().flowchart.padding})})},OBt=function(i,a,f){Wt.info("abc78 edges = ",i);let p=0,v={},m,b;if(i.defaultStyle!==void 0){const E=em(i.defaultStyle);m=E.style,b=E.labelStyle}i.forEach(function(E){p++;const C="L-"+E.start+"-"+E.end;v[C]===void 0?(v[C]=0,Wt.info("abc78 new entry",C,v[C])):(v[C]++,Wt.info("abc78 new entry",C,v[C]));let A=C+"-"+v[C];Wt.info("abc78 new link id to be used is",C,A,v[C]);const P="LS-"+E.start,F="LE-"+E.end,j={style:"",labelStyle:""};switch(j.minlen=E.length||1,E.type==="arrow_open"?j.arrowhead="none":j.arrowhead="normal",j.arrowTypeStart="arrow_open",j.arrowTypeEnd="arrow_open",E.type){case"double_arrow_cross":j.arrowTypeStart="arrow_cross";case"arrow_cross":j.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":j.arrowTypeStart="arrow_point";case"arrow_point":j.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":j.arrowTypeStart="arrow_circle";case"arrow_circle":j.arrowTypeEnd="arrow_circle";break}let R="",H="";switch(E.stroke){case"normal":R="fill:none;",m!==void 0&&(R=m),b!==void 0&&(H=b),j.thickness="normal",j.pattern="solid";break;case"dotted":j.thickness="normal",j.pattern="dotted",j.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":j.thickness="thick",j.pattern="solid",j.style="stroke-width: 3.5px;fill:none;";break;case"invisible":j.thickness="invisible",j.pattern="solid",j.style="stroke-width: 0;fill:none;";break}if(E.style!==void 0){const Y=em(E.style);R=Y.style,H=Y.labelStyle}j.style=j.style+=R,j.labelStyle=j.labelStyle+=H,E.interpolate!==void 0?j.curve=Z2(E.interpolate,ig):i.defaultInterpolate!==void 0?j.curve=Z2(i.defaultInterpolate,ig):j.curve=Z2(DBt.curve,ig),E.text===void 0?E.style!==void 0&&(j.arrowheadStyle="fill: #333"):(j.arrowheadStyle="fill: #333",j.labelpos="c"),j.labelType=E.labelType,j.label=E.text.replace(ui.lineBreakRegex,` +`),E.style===void 0&&(j.style=j.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),j.labelStyle=j.labelStyle.replace("color:","fill:"),j.id=A,j.classes="flowchart-link "+P+" "+F,a.setEdge(E.start,E.end,j,p)})},L0t={setConf:C$e,addVertices:IBt,addEdges:OBt,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,f,p){Wt.info("Drawing flowchart");let v=p.db.getDirection();v===void 0&&(v="TD");const{securityLevel:m,flowchart:b}=De(),E=b.nodeSpacing||50,C=b.rankSpacing||50;let A;m==="sandbox"&&(A=xr("#i"+a));const P=xr(m==="sandbox"?A.nodes()[0].contentDocument.body:"body"),F=m==="sandbox"?A.nodes()[0].contentDocument:document,j=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:v,nodesep:E,ranksep:C,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let R;const H=p.db.getSubGraphs();Wt.info("Subgraphs - ",H);for(let kt=H.length-1;kt>=0;kt--)R=H[kt],Wt.info("Subgraph - ",R),p.db.addVertex(R.id,{text:R.title,type:R.labelType},"group",void 0,R.classes,R.dir);const Y=p.db.getVertices(),rt=p.db.getEdges();Wt.info("Edges",rt);let J=0;for(J=H.length-1;J>=0;J--){R=H[J],YLt("cluster").append("text");for(let kt=0;kt{const f=F9e,p=f(i,"r"),v=f(i,"g"),m=f(i,"b");return IA(p,v,m,a)},NBt=i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span,p { + color: ${i.titleColor}; + } + + .label text,span,p { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + .flowchart-label text { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${S$e(i.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${i.clusterBkg}; + stroke: ${i.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span,p { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`,A$e=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fdt,db:h9,renderer:L0t,styles:NBt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,IBe.setConf(i.flowchart),h9.clear(),h9.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),L$e=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fdt,db:h9,renderer:L0t,styles:NBt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,eOt({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),L0t.setConf(i.flowchart),h9.clear(),h9.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var M0t=function(){var i=function(dt,Ct,tt,Pt){for(tt=tt||{},Pt=dt.length;Pt--;tt[dt[Pt]]=Ct);return tt},a=[1,2],f=[1,5],p=[6,9,11,23,25,27,29,30,31,52],v=[1,17],m=[1,18],b=[1,19],E=[1,20],C=[1,21],A=[1,22],P=[1,25],F=[1,30],j=[1,31],R=[1,32],H=[1,33],Y=[1,34],rt=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,48,52],J=[1,46],it=[30,31,49,50],ft=[4,6,9,11,23,25,27,29,30,31,52],Tt=[44,45,46,47,48],kt=[22,37],mt=[1,66],ct=[1,65],yt=[22,37,39,41],st={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,MD_PARENT:48,NON_IDENTIFYING:49,IDENTIFYING:50,WORD:51,open_directive:52,type_directive:53,arg_directive:54,close_directive:55,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"MD_PARENT",49:"NON_IDENTIFYING",50:"IDENTIFYING",51:"WORD",52:"open_directive",53:"type_directive",54:"arg_directive",55:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(Ct,tt,Pt,pt,Ft,X,Rt){var Bt=X.length-1;switch(Ft){case 1:break;case 3:this.$=[];break;case 4:X[Bt-1].push(X[Bt]),this.$=X[Bt-1];break;case 5:case 6:this.$=X[Bt];break;case 7:case 8:this.$=[];break;case 12:pt.addEntity(X[Bt-4]),pt.addEntity(X[Bt-2]),pt.addRelationship(X[Bt-4],X[Bt],X[Bt-2],X[Bt-3]);break;case 13:pt.addEntity(X[Bt-3]),pt.addAttributes(X[Bt-3],X[Bt-1]);break;case 14:pt.addEntity(X[Bt-2]);break;case 15:pt.addEntity(X[Bt]);break;case 16:case 17:this.$=X[Bt].trim(),pt.setAccTitle(this.$);break;case 18:case 19:this.$=X[Bt].trim(),pt.setAccDescription(this.$);break;case 20:case 44:this.$=X[Bt];break;case 21:case 42:case 43:this.$=X[Bt].replace(/"/g,"");break;case 22:case 30:this.$=[X[Bt]];break;case 23:X[Bt].push(X[Bt-1]),this.$=X[Bt];break;case 24:this.$={attributeType:X[Bt-1],attributeName:X[Bt]};break;case 25:this.$={attributeType:X[Bt-2],attributeName:X[Bt-1],attributeKeyTypeList:X[Bt]};break;case 26:this.$={attributeType:X[Bt-2],attributeName:X[Bt-1],attributeComment:X[Bt]};break;case 27:this.$={attributeType:X[Bt-3],attributeName:X[Bt-2],attributeKeyTypeList:X[Bt-1],attributeComment:X[Bt]};break;case 28:case 29:case 32:this.$=X[Bt];break;case 31:X[Bt-2].push(X[Bt]),this.$=X[Bt-2];break;case 33:this.$=X[Bt].replace(/"/g,"");break;case 34:this.$={cardA:X[Bt],relType:X[Bt-1],cardB:X[Bt-2]};break;case 35:this.$=pt.Cardinality.ZERO_OR_ONE;break;case 36:this.$=pt.Cardinality.ZERO_OR_MORE;break;case 37:this.$=pt.Cardinality.ONE_OR_MORE;break;case 38:this.$=pt.Cardinality.ONLY_ONE;break;case 39:this.$=pt.Cardinality.MD_PARENT;break;case 40:this.$=pt.Identification.NON_IDENTIFYING;break;case 41:this.$=pt.Identification.IDENTIFYING;break;case 45:pt.parseDirective("%%{","open_directive");break;case 46:pt.parseDirective(X[Bt],"type_directive");break;case 47:X[Bt]=X[Bt].trim().replace(/'/g,'"'),pt.parseDirective(X[Bt],"arg_directive");break;case 48:pt.parseDirective("}%%","close_directive","er");break}},table:[{3:1,4:a,7:3,12:4,52:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,52:f},{13:8,53:[1,9]},{53:[2,45]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:v,25:m,27:b,29:E,30:C,31:A,52:f},{1:[2,2]},{14:23,15:[1,24],55:P},i([15,55],[2,46]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:15,10:26,12:4,17:16,23:v,25:m,27:b,29:E,30:C,31:A,52:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),i(p,[2,15],{18:27,42:29,20:[1,28],44:F,45:j,46:R,47:H,48:Y}),{24:[1,35]},{26:[1,36]},{28:[1,37]},i(p,[2,19]),i(rt,[2,20]),i(rt,[2,21]),{11:[1,38]},{16:39,54:[1,40]},{11:[2,48]},i(p,[2,5]),{17:41,30:C,31:A},{21:42,22:[1,43],32:44,33:45,37:J},{43:47,49:[1,48],50:[1,49]},i(it,[2,35]),i(it,[2,36]),i(it,[2,37]),i(it,[2,38]),i(it,[2,39]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(ft,[2,9]),{14:50,55:P},{55:[2,47]},{15:[1,51]},{22:[1,52]},i(p,[2,14]),{21:53,22:[2,22],32:44,33:45,37:J},{34:54,37:[1,55]},{37:[2,28]},{42:56,44:F,45:j,46:R,47:H,48:Y},i(Tt,[2,40]),i(Tt,[2,41]),{11:[1,57]},{19:58,30:[1,61],31:[1,60],51:[1,59]},i(p,[2,13]),{22:[2,23]},i(kt,[2,24],{35:62,36:63,38:64,40:mt,41:ct}),i([22,37,40,41],[2,29]),i([30,31],[2,34]),i(ft,[2,10]),i(p,[2,12]),i(p,[2,42]),i(p,[2,43]),i(p,[2,44]),i(kt,[2,25],{36:67,39:[1,68],41:ct}),i(kt,[2,26]),i(yt,[2,30]),i(kt,[2,33]),i(yt,[2,32]),i(kt,[2,27]),{38:69,40:mt},i(yt,[2,31])],defaultActions:{5:[2,45],7:[2,2],25:[2,48],40:[2,47],46:[2,28],53:[2,23]},parseError:function(Ct,tt){if(tt.recoverable)this.trace(Ct);else{var Pt=new Error(Ct);throw Pt.hash=tt,Pt}},parse:function(Ct){var tt=this,Pt=[0],pt=[],Ft=[null],X=[],Rt=this.table,Bt="",vt=0,Ot=0,Vt=2,qe=1,_n=X.slice.call(arguments,1),Te=Object.create(this.lexer),Wn={yy:{}};for(var Ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ae)&&(Wn.yy[Ae]=this.yy[Ae]);Te.setInput(Ct,Wn.yy),Wn.yy.lexer=Te,Wn.yy.parser=this,typeof Te.yylloc>"u"&&(Te.yylloc={});var ne=Te.yylloc;X.push(ne);var ke=Te.options&&Te.options.ranges;typeof Wn.yy.parseError=="function"?this.parseError=Wn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ve(){var Se;return Se=pt.pop()||Te.lex()||qe,typeof Se!="number"&&(Se instanceof Array&&(pt=Se,Se=pt.pop()),Se=tt.symbols_[Se]||Se),Se}for(var Ee,He,Ce,$e,ye={},fn,Yt,Mi,qt;;){if(He=Pt[Pt.length-1],this.defaultActions[He]?Ce=this.defaultActions[He]:((Ee===null||typeof Ee>"u")&&(Ee=Ve()),Ce=Rt[He]&&Rt[He][Ee]),typeof Ce>"u"||!Ce.length||!Ce[0]){var zi="";qt=[];for(fn in Rt[He])this.terminals_[fn]&&fn>Vt&&qt.push("'"+this.terminals_[fn]+"'");Te.showPosition?zi="Parse error on line "+(vt+1)+`: +`+Te.showPosition()+` +Expecting `+qt.join(", ")+", got '"+(this.terminals_[Ee]||Ee)+"'":zi="Parse error on line "+(vt+1)+": Unexpected "+(Ee==qe?"end of input":"'"+(this.terminals_[Ee]||Ee)+"'"),this.parseError(zi,{text:Te.match,token:this.terminals_[Ee]||Ee,line:Te.yylineno,loc:ne,expected:qt})}if(Ce[0]instanceof Array&&Ce.length>1)throw new Error("Parse Error: multiple actions possible at state: "+He+", token: "+Ee);switch(Ce[0]){case 1:Pt.push(Ee),Ft.push(Te.yytext),X.push(Te.yylloc),Pt.push(Ce[1]),Ee=null,Ot=Te.yyleng,Bt=Te.yytext,vt=Te.yylineno,ne=Te.yylloc;break;case 2:if(Yt=this.productions_[Ce[1]][1],ye.$=Ft[Ft.length-Yt],ye._$={first_line:X[X.length-(Yt||1)].first_line,last_line:X[X.length-1].last_line,first_column:X[X.length-(Yt||1)].first_column,last_column:X[X.length-1].last_column},ke&&(ye._$.range=[X[X.length-(Yt||1)].range[0],X[X.length-1].range[1]]),$e=this.performAction.apply(ye,[Bt,Ot,vt,Wn.yy,Ce[1],Ft,X].concat(_n)),typeof $e<"u")return $e;Yt&&(Pt=Pt.slice(0,-1*Yt*2),Ft=Ft.slice(0,-1*Yt),X=X.slice(0,-1*Yt)),Pt.push(this.productions_[Ce[1]][0]),Ft.push(ye.$),X.push(ye._$),Mi=Rt[Pt[Pt.length-2]][Pt[Pt.length-1]],Pt.push(Mi);break;case 3:return!0}}return!0}},xt=function(){var dt={EOF:1,parseError:function(tt,Pt){if(this.yy.parser)this.yy.parser.parseError(tt,Pt);else throw new Error(tt)},setInput:function(Ct,tt){return this.yy=tt||this.yy||{},this._input=Ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ct=this._input[0];this.yytext+=Ct,this.yyleng++,this.offset++,this.match+=Ct,this.matched+=Ct;var tt=Ct.match(/(?:\r\n?|\n).*/g);return tt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ct},unput:function(Ct){var tt=Ct.length,Pt=Ct.split(/(?:\r\n?|\n)/g);this._input=Ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tt),this.offset-=tt;var pt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Pt.length-1&&(this.yylineno-=Pt.length-1);var Ft=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Pt?(Pt.length===pt.length?this.yylloc.first_column:0)+pt[pt.length-Pt.length].length-Pt[0].length:this.yylloc.first_column-tt},this.options.ranges&&(this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-tt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ct){this.unput(this.match.slice(Ct))},pastInput:function(){var Ct=this.matched.substr(0,this.matched.length-this.match.length);return(Ct.length>20?"...":"")+Ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ct=this.match;return Ct.length<20&&(Ct+=this._input.substr(0,20-Ct.length)),(Ct.substr(0,20)+(Ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ct=this.pastInput(),tt=new Array(Ct.length+1).join("-");return Ct+this.upcomingInput()+` +`+tt+"^"},test_match:function(Ct,tt){var Pt,pt,Ft;if(this.options.backtrack_lexer&&(Ft={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ft.yylloc.range=this.yylloc.range.slice(0))),pt=Ct[0].match(/(?:\r\n?|\n).*/g),pt&&(this.yylineno+=pt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:pt?pt[pt.length-1].length-pt[pt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ct[0].length},this.yytext+=Ct[0],this.match+=Ct[0],this.matches=Ct,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ct[0].length),this.matched+=Ct[0],Pt=this.performAction.call(this,this.yy,this,tt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Pt)return Pt;if(this._backtrack){for(var X in Ft)this[X]=Ft[X];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ct,tt,Pt,pt;this._more||(this.yytext="",this.match="");for(var Ft=this._currentRules(),X=0;Xtt[0].length)){if(tt=Pt,pt=X,this.options.backtrack_lexer){if(Ct=this.test_match(Pt,Ft[X]),Ct!==!1)return Ct;if(this._backtrack){tt=!1;continue}else return!1}else if(!this.options.flex)break}return tt?(Ct=this.test_match(tt,Ft[pt]),Ct!==!1?Ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var tt=this.next();return tt||this.lex()},begin:function(tt){this.conditionStack.push(tt)},popState:function(){var tt=this.conditionStack.length-1;return tt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(tt){return tt=this.conditionStack.length-1-Math.abs(tt||0),tt>=0?this.conditionStack[tt]:"INITIAL"},pushState:function(tt){this.begin(tt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tt,Pt,pt,Ft){switch(pt){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),52;case 8:return this.begin("type_directive"),53;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),55;case 11:return 54;case 12:return 11;case 13:break;case 14:return 9;case 15:return 31;case 16:return 51;case 17:return 4;case 18:return this.begin("block"),20;case 19:return 39;case 20:break;case 21:return 40;case 22:return 37;case 23:return 37;case 24:return 41;case 25:break;case 26:return this.popState(),22;case 27:return Pt.yytext[0];case 28:return 44;case 29:return 46;case 30:return 46;case 31:return 46;case 32:return 44;case 33:return 44;case 34:return 45;case 35:return 45;case 36:return 45;case 37:return 45;case 38:return 45;case 39:return 46;case 40:return 45;case 41:return 46;case 42:return 47;case 43:return 47;case 44:return 47;case 45:return 47;case 46:return 44;case 47:return 45;case 48:return 46;case 49:return 48;case 50:return 49;case 51:return 50;case 52:return 50;case 53:return 49;case 54:return 49;case 55:return 49;case 56:return 30;case 57:return Pt.yytext[0];case 58:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[19,20,21,22,23,24,25,26,27],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58],inclusive:!0}}};return dt}();st.lexer=xt;function ht(){this.yy={}}return ht.prototype=st,st.Parser=ht,new ht}();M0t.parser=M0t;const M$e=M0t;let yP={},D0t=[];const D$e={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},I$e={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},O$e=function(i,a,f){J1.parseDirective(this,i,a,f)},PBt=function(i){return yP[i]===void 0&&(yP[i]={attributes:[]},Wt.info("Added new entity :",i)),yP[i]},N$e={Cardinality:D$e,Identification:I$e,parseDirective:O$e,getConfig:()=>De().er,addEntity:PBt,addAttributes:function(i,a){let f=PBt(i),p;for(p=a.length-1;p>=0;p--)f.attributes.push(a[p]),Wt.debug("Added attribute ",a[p].attributeName)},getEntities:()=>yP,addRelationship:function(i,a,f,p){let v={entityA:i,roleA:a,entityB:f,relSpec:p};D0t.push(v),Wt.debug("Added new relationship :",v)},getRelationships:()=>D0t,clear:function(){yP={},D0t=[],cg()},setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,setDiagramTitle:Nb,getDiagramTitle:hp},um={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},lm={ERMarkers:um,insertMarkers:function(i,a){let f;i.append("defs").append("marker").attr("id",um.MD_PARENT_START).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",um.MD_PARENT_END).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",um.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),i.append("defs").append("marker").attr("id",um.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,0 L21,18"),i.append("defs").append("marker").attr("id",um.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),i.append("defs").append("marker").attr("id",um.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}},P$e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function F$e(i){return typeof i=="string"&&P$e.test(i)}const Pd=[];for(let i=0;i<256;++i)Pd.push((i+256).toString(16).slice(1));function B$e(i,a=0){return(Pd[i[a+0]]+Pd[i[a+1]]+Pd[i[a+2]]+Pd[i[a+3]]+"-"+Pd[i[a+4]]+Pd[i[a+5]]+"-"+Pd[i[a+6]]+Pd[i[a+7]]+"-"+Pd[i[a+8]]+Pd[i[a+9]]+"-"+Pd[i[a+10]]+Pd[i[a+11]]+Pd[i[a+12]]+Pd[i[a+13]]+Pd[i[a+14]]+Pd[i[a+15]]).toLowerCase()}function R$e(i){if(!F$e(i))throw TypeError("Invalid UUID");let a;const f=new Uint8Array(16);return f[0]=(a=parseInt(i.slice(0,8),16))>>>24,f[1]=a>>>16&255,f[2]=a>>>8&255,f[3]=a&255,f[4]=(a=parseInt(i.slice(9,13),16))>>>8,f[5]=a&255,f[6]=(a=parseInt(i.slice(14,18),16))>>>8,f[7]=a&255,f[8]=(a=parseInt(i.slice(19,23),16))>>>8,f[9]=a&255,f[10]=(a=parseInt(i.slice(24,36),16))/1099511627776&255,f[11]=a/4294967296&255,f[12]=a>>>24&255,f[13]=a>>>16&255,f[14]=a>>>8&255,f[15]=a&255,f}function j$e(i){i=unescape(encodeURIComponent(i));const a=[];for(let f=0;f>>32-a}function V$e(i){const a=[1518500249,1859775393,2400959708,3395469782],f=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof i=="string"){const b=unescape(encodeURIComponent(i));i=[];for(let E=0;E>>0;j=F,F=P,P=I0t(A,30)>>>0,A=C,C=Y}f[0]=f[0]+C>>>0,f[1]=f[1]+A>>>0,f[2]=f[2]+P>>>0,f[3]=f[3]+F>>>0,f[4]=f[4]+j>>>0}return[f[0]>>24&255,f[0]>>16&255,f[0]>>8&255,f[0]&255,f[1]>>24&255,f[1]>>16&255,f[1]>>8&255,f[1]&255,f[2]>>24&255,f[2]>>16&255,f[2]>>8&255,f[2]&255,f[3]>>24&255,f[3]>>16&255,f[3]>>8&255,f[3]&255,f[4]>>24&255,f[4]>>16&255,f[4]>>8&255,f[4]&255]}const G$e=q$e("v5",80,V$e),U$e=/[^\dA-Za-z](\W)*/g;let h1={},xP=new Map;const W$e=function(i){const a=Object.keys(i);for(const f of a)h1[f]=i[f]},K$e=(i,a,f)=>{const p=h1.entityPadding/3,v=h1.entityPadding/3,m=h1.fontSize*.85,b=a.node().getBBox(),E=[];let C=!1,A=!1,P=0,F=0,j=0,R=0,H=b.height+p*2,Y=1;f.forEach(ft=>{ft.attributeKeyTypeList!==void 0&&ft.attributeKeyTypeList.length>0&&(C=!0),ft.attributeComment!==void 0&&(A=!0)}),f.forEach(ft=>{const Tt=`${a.node().id}-attr-${Y}`;let kt=0;const mt=zN(ft.attributeType),ct=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(mt),yt=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(ft.attributeName),st={};st.tn=ct,st.nn=yt;const xt=ct.node().getBBox(),ht=yt.node().getBBox();if(P=Math.max(P,xt.width),F=Math.max(F,ht.width),kt=Math.max(xt.height,ht.height),C){const dt=ft.attributeKeyTypeList!==void 0?ft.attributeKeyTypeList.join(","):"",Ct=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(dt);st.kn=Ct;const tt=Ct.node().getBBox();j=Math.max(j,tt.width),kt=Math.max(kt,tt.height)}if(A){const dt=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(ft.attributeComment||"");st.cn=dt;const Ct=dt.node().getBBox();R=Math.max(R,Ct.width),kt=Math.max(kt,Ct.height)}st.height=kt,E.push(st),H+=kt+p*2,Y+=1});let rt=4;C&&(rt+=2),A&&(rt+=2);const J=P+F+j+R,it={width:Math.max(h1.minEntityWidth,Math.max(b.width+h1.entityPadding*2,J+v*rt)),height:f.length>0?H:Math.max(h1.minEntityHeight,b.height+h1.entityPadding*2)};if(f.length>0){const ft=Math.max(0,(it.width-J-v*rt)/(rt/2));a.attr("transform","translate("+it.width/2+","+(p+b.height/2)+")");let Tt=b.height+p*2,kt="attributeBoxOdd";E.forEach(mt=>{const ct=Tt+p+mt.height/2;mt.tn.attr("transform","translate("+v+","+ct+")");const yt=i.insert("rect","#"+mt.tn.node().id).classed(`er ${kt}`,!0).attr("x",0).attr("y",Tt).attr("width",P+v*2+ft).attr("height",mt.height+p*2),st=parseFloat(yt.attr("x"))+parseFloat(yt.attr("width"));mt.nn.attr("transform","translate("+(st+v)+","+ct+")");const xt=i.insert("rect","#"+mt.nn.node().id).classed(`er ${kt}`,!0).attr("x",st).attr("y",Tt).attr("width",F+v*2+ft).attr("height",mt.height+p*2);let ht=parseFloat(xt.attr("x"))+parseFloat(xt.attr("width"));if(C){mt.kn.attr("transform","translate("+(ht+v)+","+ct+")");const dt=i.insert("rect","#"+mt.kn.node().id).classed(`er ${kt}`,!0).attr("x",ht).attr("y",Tt).attr("width",j+v*2+ft).attr("height",mt.height+p*2);ht=parseFloat(dt.attr("x"))+parseFloat(dt.attr("width"))}A&&(mt.cn.attr("transform","translate("+(ht+v)+","+ct+")"),i.insert("rect","#"+mt.cn.node().id).classed(`er ${kt}`,"true").attr("x",ht).attr("y",Tt).attr("width",R+v*2+ft).attr("height",mt.height+p*2)),Tt+=mt.height+p*2,kt=kt==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else it.height=Math.max(h1.minEntityHeight,H),a.attr("transform","translate("+it.width/2+","+it.height/2+")");return it},Y$e=function(i,a,f){const p=Object.keys(a);let v;return p.forEach(function(m){const b=eze(m,"entity");xP.set(m,b);const E=i.append("g").attr("id",b);v=v===void 0?b:v;const C="text-"+b,A=E.append("text").classed("er entityLabel",!0).attr("id",C).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",De().fontFamily).style("font-size",h1.fontSize+"px").text(m),{width:P,height:F}=K$e(E,A,a[m].attributes),R=E.insert("rect","#"+C).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",P).attr("height",F).node().getBBox();f.setNode(b,{width:R.width,height:R.height,shape:"rect",id:b})}),v},X$e=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )")})},FBt=function(i){return(i.entityA+i.roleA+i.entityB).replace(/\s/g,"")},Q$e=function(i,a){return i.forEach(function(f){a.setEdge(xP.get(f.entityA),xP.get(f.entityB),{relationship:f},FBt(f))}),i};let BBt=0;const Z$e=function(i,a,f,p,v){BBt++;const m=f.edge(xP.get(a.entityA),xP.get(a.entityB),FBt(a)),b=YE().x(function(H){return H.x}).y(function(H){return H.y}).curve(MA),E=i.insert("path","#"+p).classed("er relationshipLine",!0).attr("d",b(m.points)).style("stroke",h1.stroke).style("fill","none");a.relSpec.relType===v.db.Identification.NON_IDENTIFYING&&E.attr("stroke-dasharray","8,8");let C="";switch(h1.arrowMarkerAbsolute&&(C=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,C=C.replace(/\(/g,"\\("),C=C.replace(/\)/g,"\\)")),a.relSpec.cardA){case v.db.Cardinality.ZERO_OR_ONE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ZERO_OR_ONE_END+")");break;case v.db.Cardinality.ZERO_OR_MORE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ZERO_OR_MORE_END+")");break;case v.db.Cardinality.ONE_OR_MORE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ONE_OR_MORE_END+")");break;case v.db.Cardinality.ONLY_ONE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ONLY_ONE_END+")");break;case v.db.Cardinality.MD_PARENT:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.MD_PARENT_END+")");break}switch(a.relSpec.cardB){case v.db.Cardinality.ZERO_OR_ONE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ZERO_OR_ONE_START+")");break;case v.db.Cardinality.ZERO_OR_MORE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ZERO_OR_MORE_START+")");break;case v.db.Cardinality.ONE_OR_MORE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ONE_OR_MORE_START+")");break;case v.db.Cardinality.ONLY_ONE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ONLY_ONE_START+")");break;case v.db.Cardinality.MD_PARENT:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.MD_PARENT_START+")");break}const A=E.node().getTotalLength(),P=E.node().getPointAtLength(A*.5),F="rel"+BBt,R=i.append("text").classed("er relationshipLabel",!0).attr("id",F).attr("x",P.x).attr("y",P.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",De().fontFamily).style("font-size",h1.fontSize+"px").text(a.roleA).node().getBBox();i.insert("rect","#"+F).classed("er relationshipLabelBox",!0).attr("x",P.x-R.width/2).attr("y",P.y-R.height/2).attr("width",R.width).attr("height",R.height)},J$e=function(i,a,f,p){h1=De().er,Wt.info("Drawing ER diagram");const v=De().securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const E=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);lm.insertMarkers(E,h1);let C;C=new l1({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:h1.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const A=Y$e(E,p.db.getEntities(),C),P=Q$e(p.db.getRelationships(),C);nL(C),X$e(E,C),P.forEach(function(Y){Z$e(E,Y,C,A,p)});const F=h1.diagramPadding;to.insertTitle(E,"entityTitleText",h1.titleTopMargin,p.db.getDiagramTitle());const j=E.node().getBBox(),R=j.width+F*2,H=j.height+F*2;og(E,H,R,h1.useMaxWidth),E.attr("viewBox",`${j.x-F} ${j.y-F} ${R} ${H}`)},tze="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function eze(i="",a=""){const f=i.replace(U$e,"");return`${RBt(a)}${RBt(f)}${G$e(i,tze)}`}function RBt(i=""){return i.length>0?`${i}-`:""}const nze=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:M$e,db:N$e,renderer:{setConf:W$e,draw:J$e},styles:i=>` + .entityBox { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + } + + .attributeBoxOdd { + fill: ${i.attributeBackgroundColorOdd}; + stroke: ${i.nodeBorder}; + } + + .attributeBoxEven { + fill: ${i.attributeBackgroundColorEven}; + stroke: ${i.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${i.tertiaryColor}; + opacity: 0.7; + background-color: ${i.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .relationshipLine { + stroke: ${i.lineColor}; + } + + .entityTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } + #MD_PARENT_START { + fill: #f5f5f5 !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; + } + #MD_PARENT_END { + fill: #f5f5f5 !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; + } + +`}},Symbol.toStringTag,{value:"Module"}));var O0t=function(){var i=function(yt,st,xt,ht){for(xt=xt||{},ht=yt.length;ht--;xt[yt[ht]]=st);return xt},a=[1,4],f=[1,7],p=[1,5],v=[1,9],m=[1,6],b=[2,6],E=[1,16],C=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],A=[8,14,20,22,24,25,27,29,32,37,40],P=[8,13,14,20,22,24,25,27,29,32,37,40],F=[1,26],j=[6,8,14,50,55],R=[8,14,55],H=[1,53],Y=[1,52],rt=[8,14,30,33,35,38,55],J=[1,67],it=[1,68],ft=[1,69],Tt=[8,14,33,35,42,55],kt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(st,xt,ht,dt,Ct,tt,Pt){var pt=tt.length-1;switch(Ct){case 3:return tt[pt];case 4:return tt[pt-1];case 5:return dt.setDirection(tt[pt-3]),tt[pt-1];case 7:dt.setOptions(tt[pt-1]),this.$=tt[pt];break;case 8:tt[pt-1]+=tt[pt],this.$=tt[pt-1];break;case 10:this.$=[];break;case 11:tt[pt-1].push(tt[pt]),this.$=tt[pt-1];break;case 12:this.$=tt[pt-1];break;case 17:this.$=tt[pt].trim(),dt.setAccTitle(this.$);break;case 18:case 19:this.$=tt[pt].trim(),dt.setAccDescription(this.$);break;case 20:dt.addSection(tt[pt].substr(8)),this.$=tt[pt].substr(8);break;case 22:dt.checkout(tt[pt]);break;case 23:dt.branch(tt[pt]);break;case 24:dt.branch(tt[pt-2],tt[pt]);break;case 25:dt.cherryPick(tt[pt],"",void 0);break;case 26:dt.cherryPick(tt[pt-2],"",tt[pt]);break;case 27:case 29:dt.cherryPick(tt[pt-2],"","");break;case 28:dt.cherryPick(tt[pt],"",tt[pt-2]);break;case 30:dt.merge(tt[pt],"","","");break;case 31:dt.merge(tt[pt-2],tt[pt],"","");break;case 32:dt.merge(tt[pt-2],"",tt[pt],"");break;case 33:dt.merge(tt[pt-2],"","",tt[pt]);break;case 34:dt.merge(tt[pt-4],tt[pt],"",tt[pt-2]);break;case 35:dt.merge(tt[pt-4],"",tt[pt],tt[pt-2]);break;case 36:dt.merge(tt[pt-4],"",tt[pt-2],tt[pt]);break;case 37:dt.merge(tt[pt-4],tt[pt-2],tt[pt],"");break;case 38:dt.merge(tt[pt-4],tt[pt-2],"",tt[pt]);break;case 39:dt.merge(tt[pt-4],tt[pt],tt[pt-2],"");break;case 40:dt.merge(tt[pt-6],tt[pt-4],tt[pt-2],tt[pt]);break;case 41:dt.merge(tt[pt-6],tt[pt],tt[pt-4],tt[pt-2]);break;case 42:dt.merge(tt[pt-6],tt[pt-4],tt[pt],tt[pt-2]);break;case 43:dt.merge(tt[pt-6],tt[pt-2],tt[pt-4],tt[pt]);break;case 44:dt.merge(tt[pt-6],tt[pt],tt[pt-2],tt[pt-4]);break;case 45:dt.merge(tt[pt-6],tt[pt-2],tt[pt],tt[pt-4]);break;case 46:dt.commit(tt[pt]);break;case 47:dt.commit("","",dt.commitType.NORMAL,tt[pt]);break;case 48:dt.commit("","",tt[pt],"");break;case 49:dt.commit("","",tt[pt],tt[pt-2]);break;case 50:dt.commit("","",tt[pt-2],tt[pt]);break;case 51:dt.commit("",tt[pt],dt.commitType.NORMAL,"");break;case 52:dt.commit("",tt[pt-2],dt.commitType.NORMAL,tt[pt]);break;case 53:dt.commit("",tt[pt],dt.commitType.NORMAL,tt[pt-2]);break;case 54:dt.commit("",tt[pt-2],tt[pt],"");break;case 55:dt.commit("",tt[pt],tt[pt-2],"");break;case 56:dt.commit("",tt[pt-4],tt[pt-2],tt[pt]);break;case 57:dt.commit("",tt[pt-4],tt[pt],tt[pt-2]);break;case 58:dt.commit("",tt[pt-2],tt[pt-4],tt[pt]);break;case 59:dt.commit("",tt[pt],tt[pt-4],tt[pt-2]);break;case 60:dt.commit("",tt[pt],tt[pt-2],tt[pt-4]);break;case 61:dt.commit("",tt[pt-2],tt[pt],tt[pt-4]);break;case 62:dt.commit(tt[pt],"",dt.commitType.NORMAL,"");break;case 63:dt.commit(tt[pt],"",dt.commitType.NORMAL,tt[pt-2]);break;case 64:dt.commit(tt[pt-2],"",dt.commitType.NORMAL,tt[pt]);break;case 65:dt.commit(tt[pt-2],"",tt[pt],"");break;case 66:dt.commit(tt[pt],"",tt[pt-2],"");break;case 67:dt.commit(tt[pt],tt[pt-2],dt.commitType.NORMAL,"");break;case 68:dt.commit(tt[pt-2],tt[pt],dt.commitType.NORMAL,"");break;case 69:dt.commit(tt[pt-4],"",tt[pt-2],tt[pt]);break;case 70:dt.commit(tt[pt-4],"",tt[pt],tt[pt-2]);break;case 71:dt.commit(tt[pt-2],"",tt[pt-4],tt[pt]);break;case 72:dt.commit(tt[pt],"",tt[pt-4],tt[pt-2]);break;case 73:dt.commit(tt[pt],"",tt[pt-2],tt[pt-4]);break;case 74:dt.commit(tt[pt-2],"",tt[pt],tt[pt-4]);break;case 75:dt.commit(tt[pt-4],tt[pt],tt[pt-2],"");break;case 76:dt.commit(tt[pt-4],tt[pt-2],tt[pt],"");break;case 77:dt.commit(tt[pt-2],tt[pt],tt[pt-4],"");break;case 78:dt.commit(tt[pt],tt[pt-2],tt[pt-4],"");break;case 79:dt.commit(tt[pt],tt[pt-4],tt[pt-2],"");break;case 80:dt.commit(tt[pt-2],tt[pt-4],tt[pt],"");break;case 81:dt.commit(tt[pt-4],tt[pt],dt.commitType.NORMAL,tt[pt-2]);break;case 82:dt.commit(tt[pt-4],tt[pt-2],dt.commitType.NORMAL,tt[pt]);break;case 83:dt.commit(tt[pt-2],tt[pt],dt.commitType.NORMAL,tt[pt-4]);break;case 84:dt.commit(tt[pt],tt[pt-2],dt.commitType.NORMAL,tt[pt-4]);break;case 85:dt.commit(tt[pt],tt[pt-4],dt.commitType.NORMAL,tt[pt-2]);break;case 86:dt.commit(tt[pt-2],tt[pt-4],dt.commitType.NORMAL,tt[pt]);break;case 87:dt.commit(tt[pt-6],tt[pt-4],tt[pt-2],tt[pt]);break;case 88:dt.commit(tt[pt-6],tt[pt-4],tt[pt],tt[pt-2]);break;case 89:dt.commit(tt[pt-6],tt[pt-2],tt[pt-4],tt[pt]);break;case 90:dt.commit(tt[pt-6],tt[pt],tt[pt-4],tt[pt-2]);break;case 91:dt.commit(tt[pt-6],tt[pt-2],tt[pt],tt[pt-4]);break;case 92:dt.commit(tt[pt-6],tt[pt],tt[pt-2],tt[pt-4]);break;case 93:dt.commit(tt[pt-4],tt[pt-6],tt[pt-2],tt[pt]);break;case 94:dt.commit(tt[pt-4],tt[pt-6],tt[pt],tt[pt-2]);break;case 95:dt.commit(tt[pt-2],tt[pt-6],tt[pt-4],tt[pt]);break;case 96:dt.commit(tt[pt],tt[pt-6],tt[pt-4],tt[pt-2]);break;case 97:dt.commit(tt[pt-2],tt[pt-6],tt[pt],tt[pt-4]);break;case 98:dt.commit(tt[pt],tt[pt-6],tt[pt-2],tt[pt-4]);break;case 99:dt.commit(tt[pt],tt[pt-4],tt[pt-2],tt[pt-6]);break;case 100:dt.commit(tt[pt-2],tt[pt-4],tt[pt],tt[pt-6]);break;case 101:dt.commit(tt[pt],tt[pt-2],tt[pt-4],tt[pt-6]);break;case 102:dt.commit(tt[pt-2],tt[pt],tt[pt-4],tt[pt-6]);break;case 103:dt.commit(tt[pt-4],tt[pt-2],tt[pt],tt[pt-6]);break;case 104:dt.commit(tt[pt-4],tt[pt],tt[pt-2],tt[pt-6]);break;case 105:dt.commit(tt[pt-2],tt[pt-4],tt[pt-6],tt[pt]);break;case 106:dt.commit(tt[pt],tt[pt-4],tt[pt-6],tt[pt-2]);break;case 107:dt.commit(tt[pt-2],tt[pt],tt[pt-6],tt[pt-4]);break;case 108:dt.commit(tt[pt],tt[pt-2],tt[pt-6],tt[pt-4]);break;case 109:dt.commit(tt[pt-4],tt[pt-2],tt[pt-6],tt[pt]);break;case 110:dt.commit(tt[pt-4],tt[pt],tt[pt-6],tt[pt-2]);break;case 111:this.$="";break;case 112:this.$=tt[pt];break;case 113:this.$=dt.commitType.NORMAL;break;case 114:this.$=dt.commitType.REVERSE;break;case 115:this.$=dt.commitType.HIGHLIGHT;break;case 118:dt.parseDirective("%%{","open_directive");break;case 119:dt.parseDirective(tt[pt],"type_directive");break;case 120:tt[pt]=tt[pt].trim().replace(/'/g,'"'),dt.parseDirective(tt[pt],"arg_directive");break;case 121:dt.parseDirective("}%%","close_directive","gitGraph");break}},table:[{3:1,4:2,5:3,6:a,8:f,14:p,46:8,50:v,55:m},{1:[3]},{3:10,4:2,5:3,6:a,8:f,14:p,46:8,50:v,55:m},{3:11,4:2,5:3,6:a,8:f,14:p,46:8,50:v,55:m},{7:12,8:b,9:[1,13],10:[1,14],11:15,14:E},i(C,[2,124]),i(C,[2,125]),i(C,[2,126]),{47:17,51:[1,18]},{51:[2,118]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:b,11:15,14:E},{9:[1,21]},i(A,[2,10],{12:22,13:[1,23]}),i(P,[2,9]),{9:[1,25],48:24,53:F},i([9,53],[2,119]),{1:[2,3]},{8:[1,27]},{7:28,8:b,11:15,14:E},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],37:[1,42],40:[1,41]},i(P,[2,8]),i(j,[2,116]),{49:45,52:[1,46]},i(j,[2,121]),{1:[2,4]},{8:[1,47]},i(A,[2,11]),{4:48,8:f,14:p,55:m},i(A,[2,13]),i(R,[2,14]),i(R,[2,15]),i(R,[2,16]),{21:[1,49]},{23:[1,50]},i(R,[2,19]),i(R,[2,20]),i(R,[2,21]),{28:51,34:H,54:Y},i(R,[2,111],{41:54,33:[1,57],34:[1,59],35:[1,55],38:[1,56],42:[1,58]}),{28:60,34:H,54:Y},{33:[1,61],35:[1,62]},{28:63,34:H,54:Y},{48:64,53:F},{53:[2,120]},{1:[2,5]},i(A,[2,12]),i(R,[2,17]),i(R,[2,18]),i(R,[2,22]),i(rt,[2,122]),i(rt,[2,123]),i(R,[2,46]),{34:[1,65]},{39:66,43:J,44:it,45:ft},{34:[1,70]},{34:[1,71]},i(R,[2,112]),i(R,[2,30],{33:[1,72],35:[1,74],38:[1,73]}),{34:[1,75]},{34:[1,76],36:[1,77]},i(R,[2,23],{30:[1,78]}),i(j,[2,117]),i(R,[2,47],{33:[1,80],38:[1,79],42:[1,81]}),i(R,[2,48],{33:[1,83],35:[1,82],42:[1,84]}),i(Tt,[2,113]),i(Tt,[2,114]),i(Tt,[2,115]),i(R,[2,51],{35:[1,85],38:[1,86],42:[1,87]}),i(R,[2,62],{33:[1,90],35:[1,88],38:[1,89]}),{34:[1,91]},{39:92,43:J,44:it,45:ft},{34:[1,93]},i(R,[2,25],{35:[1,94]}),{33:[1,95]},{33:[1,96]},{31:[1,97]},{39:98,43:J,44:it,45:ft},{34:[1,99]},{34:[1,100]},{34:[1,101]},{34:[1,102]},{34:[1,103]},{34:[1,104]},{39:105,43:J,44:it,45:ft},{34:[1,106]},{34:[1,107]},{39:108,43:J,44:it,45:ft},{34:[1,109]},i(R,[2,31],{35:[1,111],38:[1,110]}),i(R,[2,32],{33:[1,113],35:[1,112]}),i(R,[2,33],{33:[1,114],38:[1,115]}),{34:[1,116],36:[1,117]},{34:[1,118]},{34:[1,119]},i(R,[2,24]),i(R,[2,49],{33:[1,120],42:[1,121]}),i(R,[2,53],{38:[1,122],42:[1,123]}),i(R,[2,63],{33:[1,125],38:[1,124]}),i(R,[2,50],{33:[1,126],42:[1,127]}),i(R,[2,55],{35:[1,128],42:[1,129]}),i(R,[2,66],{33:[1,131],35:[1,130]}),i(R,[2,52],{38:[1,132],42:[1,133]}),i(R,[2,54],{35:[1,134],42:[1,135]}),i(R,[2,67],{35:[1,137],38:[1,136]}),i(R,[2,64],{33:[1,139],38:[1,138]}),i(R,[2,65],{33:[1,141],35:[1,140]}),i(R,[2,68],{35:[1,143],38:[1,142]}),{39:144,43:J,44:it,45:ft},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{39:149,43:J,44:it,45:ft},i(R,[2,26]),i(R,[2,27]),i(R,[2,28]),i(R,[2,29]),{34:[1,150]},{34:[1,151]},{39:152,43:J,44:it,45:ft},{34:[1,153]},{39:154,43:J,44:it,45:ft},{34:[1,155]},{34:[1,156]},{34:[1,157]},{34:[1,158]},{34:[1,159]},{34:[1,160]},{34:[1,161]},{39:162,43:J,44:it,45:ft},{34:[1,163]},{34:[1,164]},{34:[1,165]},{39:166,43:J,44:it,45:ft},{34:[1,167]},{39:168,43:J,44:it,45:ft},{34:[1,169]},{34:[1,170]},{34:[1,171]},{39:172,43:J,44:it,45:ft},{34:[1,173]},i(R,[2,37],{35:[1,174]}),i(R,[2,38],{38:[1,175]}),i(R,[2,36],{33:[1,176]}),i(R,[2,39],{35:[1,177]}),i(R,[2,34],{38:[1,178]}),i(R,[2,35],{33:[1,179]}),i(R,[2,60],{42:[1,180]}),i(R,[2,73],{33:[1,181]}),i(R,[2,61],{42:[1,182]}),i(R,[2,84],{38:[1,183]}),i(R,[2,74],{33:[1,184]}),i(R,[2,83],{38:[1,185]}),i(R,[2,59],{42:[1,186]}),i(R,[2,72],{33:[1,187]}),i(R,[2,58],{42:[1,188]}),i(R,[2,78],{35:[1,189]}),i(R,[2,71],{33:[1,190]}),i(R,[2,77],{35:[1,191]}),i(R,[2,57],{42:[1,192]}),i(R,[2,85],{38:[1,193]}),i(R,[2,56],{42:[1,194]}),i(R,[2,79],{35:[1,195]}),i(R,[2,80],{35:[1,196]}),i(R,[2,86],{38:[1,197]}),i(R,[2,70],{33:[1,198]}),i(R,[2,81],{38:[1,199]}),i(R,[2,69],{33:[1,200]}),i(R,[2,75],{35:[1,201]}),i(R,[2,76],{35:[1,202]}),i(R,[2,82],{38:[1,203]}),{34:[1,204]},{39:205,43:J,44:it,45:ft},{34:[1,206]},{34:[1,207]},{39:208,43:J,44:it,45:ft},{34:[1,209]},{34:[1,210]},{34:[1,211]},{34:[1,212]},{39:213,43:J,44:it,45:ft},{34:[1,214]},{39:215,43:J,44:it,45:ft},{34:[1,216]},{34:[1,217]},{34:[1,218]},{34:[1,219]},{34:[1,220]},{34:[1,221]},{34:[1,222]},{39:223,43:J,44:it,45:ft},{34:[1,224]},{34:[1,225]},{34:[1,226]},{39:227,43:J,44:it,45:ft},{34:[1,228]},{39:229,43:J,44:it,45:ft},{34:[1,230]},{34:[1,231]},{34:[1,232]},{39:233,43:J,44:it,45:ft},i(R,[2,40]),i(R,[2,42]),i(R,[2,41]),i(R,[2,43]),i(R,[2,45]),i(R,[2,44]),i(R,[2,101]),i(R,[2,102]),i(R,[2,99]),i(R,[2,100]),i(R,[2,104]),i(R,[2,103]),i(R,[2,108]),i(R,[2,107]),i(R,[2,106]),i(R,[2,105]),i(R,[2,110]),i(R,[2,109]),i(R,[2,98]),i(R,[2,97]),i(R,[2,96]),i(R,[2,95]),i(R,[2,93]),i(R,[2,94]),i(R,[2,92]),i(R,[2,91]),i(R,[2,90]),i(R,[2,89]),i(R,[2,87]),i(R,[2,88])],defaultActions:{9:[2,118],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,120],47:[2,5]},parseError:function(st,xt){if(xt.recoverable)this.trace(st);else{var ht=new Error(st);throw ht.hash=xt,ht}},parse:function(st){var xt=this,ht=[0],dt=[],Ct=[null],tt=[],Pt=this.table,pt="",Ft=0,X=0,Rt=2,Bt=1,vt=tt.slice.call(arguments,1),Ot=Object.create(this.lexer),Vt={yy:{}};for(var qe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,qe)&&(Vt.yy[qe]=this.yy[qe]);Ot.setInput(st,Vt.yy),Vt.yy.lexer=Ot,Vt.yy.parser=this,typeof Ot.yylloc>"u"&&(Ot.yylloc={});var _n=Ot.yylloc;tt.push(_n);var Te=Ot.options&&Ot.options.ranges;typeof Vt.yy.parseError=="function"?this.parseError=Vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Wn(){var Yt;return Yt=dt.pop()||Ot.lex()||Bt,typeof Yt!="number"&&(Yt instanceof Array&&(dt=Yt,Yt=dt.pop()),Yt=xt.symbols_[Yt]||Yt),Yt}for(var Ae,ne,ke,Ve,Ee={},He,Ce,$e,ye;;){if(ne=ht[ht.length-1],this.defaultActions[ne]?ke=this.defaultActions[ne]:((Ae===null||typeof Ae>"u")&&(Ae=Wn()),ke=Pt[ne]&&Pt[ne][Ae]),typeof ke>"u"||!ke.length||!ke[0]){var fn="";ye=[];for(He in Pt[ne])this.terminals_[He]&&He>Rt&&ye.push("'"+this.terminals_[He]+"'");Ot.showPosition?fn="Parse error on line "+(Ft+1)+`: +`+Ot.showPosition()+` +Expecting `+ye.join(", ")+", got '"+(this.terminals_[Ae]||Ae)+"'":fn="Parse error on line "+(Ft+1)+": Unexpected "+(Ae==Bt?"end of input":"'"+(this.terminals_[Ae]||Ae)+"'"),this.parseError(fn,{text:Ot.match,token:this.terminals_[Ae]||Ae,line:Ot.yylineno,loc:_n,expected:ye})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ne+", token: "+Ae);switch(ke[0]){case 1:ht.push(Ae),Ct.push(Ot.yytext),tt.push(Ot.yylloc),ht.push(ke[1]),Ae=null,X=Ot.yyleng,pt=Ot.yytext,Ft=Ot.yylineno,_n=Ot.yylloc;break;case 2:if(Ce=this.productions_[ke[1]][1],Ee.$=Ct[Ct.length-Ce],Ee._$={first_line:tt[tt.length-(Ce||1)].first_line,last_line:tt[tt.length-1].last_line,first_column:tt[tt.length-(Ce||1)].first_column,last_column:tt[tt.length-1].last_column},Te&&(Ee._$.range=[tt[tt.length-(Ce||1)].range[0],tt[tt.length-1].range[1]]),Ve=this.performAction.apply(Ee,[pt,X,Ft,Vt.yy,ke[1],Ct,tt].concat(vt)),typeof Ve<"u")return Ve;Ce&&(ht=ht.slice(0,-1*Ce*2),Ct=Ct.slice(0,-1*Ce),tt=tt.slice(0,-1*Ce)),ht.push(this.productions_[ke[1]][0]),Ct.push(Ee.$),tt.push(Ee._$),$e=Pt[ht[ht.length-2]][ht[ht.length-1]],ht.push($e);break;case 3:return!0}}return!0}},mt=function(){var yt={EOF:1,parseError:function(xt,ht){if(this.yy.parser)this.yy.parser.parseError(xt,ht);else throw new Error(xt)},setInput:function(st,xt){return this.yy=xt||this.yy||{},this._input=st,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var st=this._input[0];this.yytext+=st,this.yyleng++,this.offset++,this.match+=st,this.matched+=st;var xt=st.match(/(?:\r\n?|\n).*/g);return xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),st},unput:function(st){var xt=st.length,ht=st.split(/(?:\r\n?|\n)/g);this._input=st+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-xt),this.offset-=xt;var dt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ht.length-1&&(this.yylineno-=ht.length-1);var Ct=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ht?(ht.length===dt.length?this.yylloc.first_column:0)+dt[dt.length-ht.length].length-ht[0].length:this.yylloc.first_column-xt},this.options.ranges&&(this.yylloc.range=[Ct[0],Ct[0]+this.yyleng-xt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(st){this.unput(this.match.slice(st))},pastInput:function(){var st=this.matched.substr(0,this.matched.length-this.match.length);return(st.length>20?"...":"")+st.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var st=this.match;return st.length<20&&(st+=this._input.substr(0,20-st.length)),(st.substr(0,20)+(st.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var st=this.pastInput(),xt=new Array(st.length+1).join("-");return st+this.upcomingInput()+` +`+xt+"^"},test_match:function(st,xt){var ht,dt,Ct;if(this.options.backtrack_lexer&&(Ct={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ct.yylloc.range=this.yylloc.range.slice(0))),dt=st[0].match(/(?:\r\n?|\n).*/g),dt&&(this.yylineno+=dt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:dt?dt[dt.length-1].length-dt[dt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+st[0].length},this.yytext+=st[0],this.match+=st[0],this.matches=st,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(st[0].length),this.matched+=st[0],ht=this.performAction.call(this,this.yy,this,xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ht)return ht;if(this._backtrack){for(var tt in Ct)this[tt]=Ct[tt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var st,xt,ht,dt;this._more||(this.yytext="",this.match="");for(var Ct=this._currentRules(),tt=0;ttxt[0].length)){if(xt=ht,dt=tt,this.options.backtrack_lexer){if(st=this.test_match(ht,Ct[tt]),st!==!1)return st;if(this._backtrack){xt=!1;continue}else return!1}else if(!this.options.flex)break}return xt?(st=this.test_match(xt,Ct[dt]),st!==!1?st:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var xt=this.next();return xt||this.lex()},begin:function(xt){this.conditionStack.push(xt)},popState:function(){var xt=this.conditionStack.length-1;return xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(xt){return xt=this.conditionStack.length-1-Math.abs(xt||0),xt>=0?this.conditionStack[xt]:"INITIAL"},pushState:function(xt){this.begin(xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xt,ht,dt,Ct){switch(dt){case 0:return this.begin("open_directive"),50;case 1:return this.begin("type_directive"),51;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),53;case 4:return 52;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:break;case 14:break;case 15:return 6;case 16:return 40;case 17:return 33;case 18:return 38;case 19:return 42;case 20:return 43;case 21:return 44;case 22:return 45;case 23:return 35;case 24:return 29;case 25:return 30;case 26:return 37;case 27:return 32;case 28:return 27;case 29:return 10;case 30:return 10;case 31:return 9;case 32:return"CARET";case 33:this.begin("options");break;case 34:this.popState();break;case 35:return 13;case 36:return 36;case 37:this.begin("string");break;case 38:this.popState();break;case 39:return 34;case 40:return 31;case 41:return 54;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[34,35],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,36,37,40,41,42,43],inclusive:!0}}};return yt}();kt.lexer=mt;function ct(){this.yy={}}return ct.prototype=kt,kt.Parser=ct,new ct}();O0t.parser=O0t;const rze=O0t;let EK=De().gitGraph.mainBranchName,ize=De().gitGraph.mainBranchOrder,f1={},gg=null,kP={};kP[EK]={name:EK,order:ize};let Rf={};Rf[EK]=gg;let td=EK,jBt="LR",v9=0;function N0t(){return jIt({length:7})}const sze=function(i,a,f){J1.parseDirective(this,i,a,f)};function aze(i,a){const f=Object.create(null);return i.reduce((p,v)=>{const m=a(v);return f[m]||(f[m]=!0,p.push(v)),p},[])}const oze=function(i){jBt=i};let $Bt={};const cze=function(i){Wt.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{$Bt=JSON.parse(i)}catch(a){Wt.error("error while parsing gitGraph options",a.message)}},uze=function(){return $Bt},lze=function(i,a,f,p){Wt.debug("Entering commit:",i,a,f,p),a=ui.sanitizeText(a,De()),i=ui.sanitizeText(i,De()),p=ui.sanitizeText(p,De());const v={id:a||v9+"-"+N0t(),message:i,seq:v9++,type:f||EP.NORMAL,tag:p||"",parents:gg==null?[]:[gg.id],branch:td};gg=v,f1[v.id]=v,Rf[td]=v.id,Wt.debug("in pushCommit "+v.id)},hze=function(i,a){if(i=ui.sanitizeText(i,De()),Rf[i]===void 0)Rf[i]=gg!=null?gg.id:null,kP[i]={name:i,order:a?parseInt(a,10):null},zBt(i),Wt.debug("in createBranch");else{let f=new Error('Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout '+i+'")');throw f.hash={text:"branch "+i,token:"branch "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+i+'"']},f}},fze=function(i,a,f,p){i=ui.sanitizeText(i,De()),a=ui.sanitizeText(a,De());const v=f1[Rf[td]],m=f1[Rf[i]];if(td===i){let E=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},E}else if(v===void 0||!v){let E=new Error('Incorrect usage of "merge". Current branch ('+td+")has no commits");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},E}else if(Rf[i]===void 0){let E=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") does not exist");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+i]},E}else if(m===void 0||!m){let E=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") has no commits");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},E}else if(v===m){let E=new Error('Incorrect usage of "merge". Both branches have same head');throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},E}else if(a&&f1[a]!==void 0){let E=new Error('Incorrect usage of "merge". Commit with id:'+a+" already exists, use different custom Id");throw E.hash={text:"merge "+i+a+f+p,token:"merge "+i+a+f+p,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+i+" "+a+"_UNIQUE "+f+" "+p]},E}const b={id:a||v9+"-"+N0t(),message:"merged branch "+i+" into "+td,seq:v9++,parents:[gg==null?null:gg.id,Rf[i]],branch:td,type:EP.MERGE,customType:f,customId:!!a,tag:p||""};gg=b,f1[b.id]=b,Rf[td]=b.id,Wt.debug(Rf),Wt.debug("in mergeBranch")},dze=function(i,a,f){if(Wt.debug("Entering cherryPick:",i,a,f),i=ui.sanitizeText(i,De()),a=ui.sanitizeText(a,De()),f=ui.sanitizeText(f,De()),!i||f1[i]===void 0){let m=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw m.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},m}let p=f1[i],v=p.branch;if(p.type===EP.MERGE){let m=new Error('Incorrect usage of "cherryPick". Source commit should not be a merge commit');throw m.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},m}if(!a||f1[a]===void 0){if(v===td){let E=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw E.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},E}const m=f1[Rf[td]];if(m===void 0||!m){let E=new Error('Incorrect usage of "cherry-pick". Current branch ('+td+")has no commits");throw E.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},E}const b={id:v9+"-"+N0t(),message:"cherry-picked "+p+" into "+td,seq:v9++,parents:[gg==null?null:gg.id,p.id],branch:td,type:EP.CHERRY_PICK,tag:f??"cherry-pick:"+p.id};gg=b,f1[b.id]=b,Rf[td]=b.id,Wt.debug(Rf),Wt.debug("in cherryPick")}},zBt=function(i){if(i=ui.sanitizeText(i,De()),Rf[i]===void 0){let a=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+i+'")');throw a.hash={text:"checkout "+i,token:"checkout "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+i+'"']},a}else{td=i;const a=Rf[td];gg=f1[a]}};function qBt(i,a,f){const p=i.indexOf(a);p===-1?i.push(f):i.splice(p,1,f)}function HBt(i){const a=i.reduce((v,m)=>v.seq>m.seq?v:m,i[0]);let f="";i.forEach(function(v){v===a?f+=" *":f+=" |"});const p=[f,a.id,a.seq];for(let v in Rf)Rf[v]===a.id&&p.push(v);if(Wt.debug(p.join(" ")),a.parents&&a.parents.length==2){const v=f1[a.parents[0]];qBt(i,a,v),i.push(f1[a.parents[1]])}else{if(a.parents.length==0)return;{const v=f1[a.parents];qBt(i,a,v)}}i=aze(i,v=>v.id),HBt(i)}const gze=function(){Wt.debug(f1);const i=VBt()[0];HBt([i])},pze=function(){f1={},gg=null;let i=De().gitGraph.mainBranchName,a=De().gitGraph.mainBranchOrder;Rf={},Rf[i]=null,kP={},kP[i]={name:i,order:a},td=i,v9=0,cg()},bze=function(){return Object.values(kP).map((a,f)=>a.order!==null?a:{...a,order:parseFloat(`0.${f}`,10)}).sort((a,f)=>a.order-f.order).map(({name:a})=>({name:a}))},vze=function(){return Rf},wze=function(){return f1},VBt=function(){const i=Object.keys(f1).map(function(a){return f1[a]});return i.forEach(function(a){Wt.debug(a.id)}),i.sort((a,f)=>a.seq-f.seq),i},mze=function(){return td},yze=function(){return jBt},xze=function(){return gg},EP={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},kze={parseDirective:sze,getConfig:()=>De().gitGraph,setDirection:oze,setOptions:cze,getOptions:uze,commit:lze,branch:hze,merge:fze,cherryPick:dze,checkout:zBt,prettyPrint:gze,clear:pze,getBranchesAsObjArray:bze,getBranches:vze,getCommits:wze,getCommitsArray:VBt,getCurrentBranch:mze,getDirection:yze,getHead:xze,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,setDiagramTitle:Nb,getDiagramTitle:hp,commitType:EP};let TP={};const Rb={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},w9=8;let ed={},_P={},TK=[],CP=0,x0="LR";const Eze=()=>{ed={},_P={},TP={},CP=0,TK=[],x0="LR"},GBt=i=>{const a=document.createElementNS("http://www.w3.org/2000/svg","text");let f=[];typeof i=="string"?f=i.split(/\\n|\n|/gi):Array.isArray(i)?f=i:f=[];for(const p of f){const v=document.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","0"),v.setAttribute("class","row"),v.textContent=p.trim(),a.appendChild(v)}return a},UBt=(i,a,f)=>{const p=JN().gitGraph,v=i.append("g").attr("class","commit-bullets"),m=i.append("g").attr("class","commit-labels");let b=0;x0==="TB"&&(b=30),Object.keys(a).sort((A,P)=>a[A].seq-a[P].seq).forEach(A=>{const P=a[A],F=x0==="TB"?b+10:ed[P.branch].pos,j=x0==="TB"?ed[P.branch].pos:b+10;if(f){let R,H=P.customType!==void 0&&P.customType!==""?P.customType:P.type;switch(H){case Rb.NORMAL:R="commit-normal";break;case Rb.REVERSE:R="commit-reverse";break;case Rb.HIGHLIGHT:R="commit-highlight";break;case Rb.MERGE:R="commit-merge";break;case Rb.CHERRY_PICK:R="commit-cherry-pick";break;default:R="commit-normal"}if(H===Rb.HIGHLIGHT){const Y=v.append("rect");Y.attr("x",j-10),Y.attr("y",F-10),Y.attr("height",20),Y.attr("width",20),Y.attr("class",`commit ${P.id} commit-highlight${ed[P.branch].index%w9} ${R}-outer`),v.append("rect").attr("x",j-6).attr("y",F-6).attr("height",12).attr("width",12).attr("class",`commit ${P.id} commit${ed[P.branch].index%w9} ${R}-inner`)}else if(H===Rb.CHERRY_PICK)v.append("circle").attr("cx",j).attr("cy",F).attr("r",10).attr("class",`commit ${P.id} ${R}`),v.append("circle").attr("cx",j-3).attr("cy",F+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${P.id} ${R}`),v.append("circle").attr("cx",j+3).attr("cy",F+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${P.id} ${R}`),v.append("line").attr("x1",j+3).attr("y1",F+1).attr("x2",j).attr("y2",F-5).attr("stroke","#fff").attr("class",`commit ${P.id} ${R}`),v.append("line").attr("x1",j-3).attr("y1",F+1).attr("x2",j).attr("y2",F-5).attr("stroke","#fff").attr("class",`commit ${P.id} ${R}`);else{const Y=v.append("circle");if(Y.attr("cx",j),Y.attr("cy",F),Y.attr("r",P.type===Rb.MERGE?9:10),Y.attr("class",`commit ${P.id} commit${ed[P.branch].index%w9}`),H===Rb.MERGE){const rt=v.append("circle");rt.attr("cx",j),rt.attr("cy",F),rt.attr("r",6),rt.attr("class",`commit ${R} ${P.id} commit${ed[P.branch].index%w9}`)}H===Rb.REVERSE&&v.append("path").attr("d",`M ${j-5},${F-5}L${j+5},${F+5}M${j-5},${F+5}L${j+5},${F-5}`).attr("class",`commit ${R} ${P.id} commit${ed[P.branch].index%w9}`)}}if(x0==="TB"?_P[P.id]={x:j,y:b+10}:_P[P.id]={x:b+10,y:F},f){if(P.type!==Rb.CHERRY_PICK&&(P.customId&&P.type===Rb.MERGE||P.type!==Rb.MERGE)&&p.showCommitLabel){const Y=m.append("g"),rt=Y.insert("rect").attr("class","commit-label-bkg"),J=Y.append("text").attr("x",b).attr("y",F+25).attr("class","commit-label").text(P.id);let it=J.node().getBBox();if(rt.attr("x",b+10-it.width/2-2).attr("y",F+13.5).attr("width",it.width+2*2).attr("height",it.height+2*2),x0==="TB"&&(rt.attr("x",j-(it.width+4*4+5)).attr("y",F-12),J.attr("x",j-(it.width+4*4)).attr("y",F+it.height-12)),x0!=="TB"&&J.attr("x",b+10-it.width/2),p.rotateCommitLabel)if(x0==="TB")J.attr("transform","rotate(-45, "+j+", "+F+")"),rt.attr("transform","rotate(-45, "+j+", "+F+")");else{let ft=-7.5-(it.width+10)/25*9.5,Tt=10+it.width/25*8.5;Y.attr("transform","translate("+ft+", "+Tt+") rotate(-45, "+b+", "+F+")")}}if(P.tag){const Y=m.insert("polygon"),rt=m.append("circle"),J=m.append("text").attr("y",F-16).attr("class","tag-label").text(P.tag);let it=J.node().getBBox();J.attr("x",b+10-it.width/2);const ft=it.height/2,Tt=F-19.2;Y.attr("class","tag-label-bkg").attr("points",` + ${b-it.width/2-4/2},${Tt+2} + ${b-it.width/2-4/2},${Tt-2} + ${b+10-it.width/2-4},${Tt-ft-2} + ${b+10+it.width/2+4},${Tt-ft-2} + ${b+10+it.width/2+4},${Tt+ft+2} + ${b+10-it.width/2-4},${Tt+ft+2}`),rt.attr("cx",b-it.width/2+4/2).attr("cy",Tt).attr("r",1.5).attr("class","tag-hole"),x0==="TB"&&(Y.attr("class","tag-label-bkg").attr("points",` + ${j},${b+2} + ${j},${b-2} + ${j+10},${b-ft-2} + ${j+10+it.width+4},${b-ft-2} + ${j+10+it.width+4},${b+ft+2} + ${j+10},${b+ft+2}`).attr("transform","translate(12,12) rotate(45, "+j+","+b+")"),rt.attr("cx",j+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+j+","+b+")"),J.attr("x",j+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+j+","+b+")"))}}b+=50,b>CP&&(CP=b)})},Tze=(i,a,f)=>Object.keys(f).filter(m=>f[m].branch===a.branch&&f[m].seq>i.seq&&f[m].seq0,SP=(i,a,f=0)=>{const p=i+Math.abs(i-a)/2;if(f>5)return p;if(TK.every(b=>Math.abs(b-p)>=10))return TK.push(p),p;const m=Math.abs(i-a);return SP(i,a-m/5,f+1)},_ze=(i,a,f,p)=>{const v=_P[a.id],m=_P[f.id],b=Tze(a,f,p);let E="",C="",A=0,P=0,F=ed[f.branch].index,j;if(b){E="A 10 10, 0, 0, 0,",C="A 10 10, 0, 0, 1,",A=10,P=10,F=ed[f.branch].index;const R=v.ym.x&&(E="A 20 20, 0, 0, 0,",C="A 20 20, 0, 0, 1,",A=20,P=20,F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${C} ${v.x-P} ${m.y} L ${m.x} ${m.y}`),v.x===m.x&&(F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x+A} ${v.y} ${E} ${v.x+P} ${m.y+A} L ${m.x} ${m.y}`)):(v.ym.y&&(E="A 20 20, 0, 0, 0,",A=20,P=20,F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${m.x-A} ${v.y} ${E} ${m.x} ${v.y-P} L ${m.x} ${m.y}`),v.y===m.y&&(F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${E} ${v.x+P} ${m.y} L ${m.x} ${m.y}`));i.append("path").attr("d",j).attr("class","arrow arrow"+F%w9)},Cze=(i,a)=>{const f=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(p=>{const v=a[p];v.parents&&v.parents.length>0&&v.parents.forEach(m=>{_ze(f,a[m],v,a)})})},Sze=(i,a)=>{const f=JN().gitGraph,p=i.append("g");a.forEach((v,m)=>{const b=m%w9,E=ed[v.name].pos,C=p.append("line");C.attr("x1",0),C.attr("y1",E),C.attr("x2",CP),C.attr("y2",E),C.attr("class","branch branch"+b),x0==="TB"&&(C.attr("y1",30),C.attr("x1",E),C.attr("y2",CP),C.attr("x2",E)),TK.push(E);let A=v.name;const P=GBt(A),F=p.insert("rect"),R=p.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);R.node().appendChild(P);let H=P.getBBox();F.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-H.width-4-(f.rotateCommitLabel===!0?30:0)).attr("y",-H.height/2+8).attr("width",H.width+18).attr("height",H.height+4),R.attr("transform","translate("+(-H.width-14-(f.rotateCommitLabel===!0?30:0))+", "+(E-H.height/2-1)+")"),x0==="TB"&&(F.attr("x",E-H.width/2-10).attr("y",0),R.attr("transform","translate("+(E-H.width/2-5)+", 0)")),x0!=="TB"&&F.attr("transform","translate(-19, "+(E-H.height/2)+")")})},Aze=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:rze,db:kze,renderer:{draw:function(i,a,f,p){Eze();const v=JN(),m=v.gitGraph;Wt.debug("in gitgraph renderer",i+` +`,"id:",a,f),TP=p.db.getCommits();const b=p.db.getBranchesAsObjArray();x0=p.db.getDirection();const E=xr(`[id="${a}"]`);let C=0;b.forEach((A,P)=>{const F=GBt(A.name),j=E.append("g"),R=j.insert("g").attr("class","branchLabel"),H=R.insert("g").attr("class","label branch-label");H.node().appendChild(F);let Y=F.getBBox();ed[A.name]={pos:C,index:P},C+=50+(m.rotateCommitLabel?40:0)+(x0==="TB"?Y.width/2:0),H.remove(),R.remove(),j.remove()}),UBt(E,TP,!1),m.showBranches&&Sze(E,b),Cze(E,TP),UBt(E,TP,!0),to.insertTitle(E,"gitTitleText",m.titleTopMargin,p.db.getDiagramTitle()),SOt(void 0,E,m.diagramPadding,m.useMaxWidth??v.useMaxWidth)}},styles:i=>` + .commit-id, + .commit-msg, + .branch-label { + fill: lightgrey; + color: lightgrey; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + ${[0,1,2,3,4,5,6,7].map(a=>` + .branch-label${a} { fill: ${i["gitBranchLabel"+a]}; } + .commit${a} { stroke: ${i["git"+a]}; fill: ${i["git"+a]}; } + .commit-highlight${a} { stroke: ${i["gitInv"+a]}; fill: ${i["gitInv"+a]}; } + .label${a} { fill: ${i["git"+a]}; } + .arrow${a} { stroke: ${i["git"+a]}; } + `).join(` +`)} + + .branch { + stroke-width: 1; + stroke: ${i.lineColor}; + stroke-dasharray: 2; + } + .commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};} + .commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; } + .tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};} + .tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; } + .tag-hole { fill: ${i.textColor}; } + + .commit-merge { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + } + .commit-reverse { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + stroke-width: 3; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + } + + .arrow { stroke-width: 8; stroke-linecap: round; fill: none} + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`}},Symbol.toStringTag,{value:"Module"}));var P0t=function(){var i=function(Pt,pt,Ft,X){for(Ft=Ft||{},X=Pt.length;X--;Ft[Pt[X]]=pt);return Ft},a=[1,3],f=[1,5],p=[7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],v=[1,32],m=[1,33],b=[1,34],E=[1,35],C=[1,36],A=[1,37],P=[1,38],F=[1,15],j=[1,16],R=[1,17],H=[1,18],Y=[1,19],rt=[1,20],J=[1,21],it=[1,22],ft=[1,24],Tt=[1,25],kt=[1,26],mt=[1,27],ct=[1,28],yt=[1,30],st=[1,39],xt=[1,42],ht=[5,7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,weekday:12,weekday_monday:13,weekday_tuesday:14,weekday_wednesday:15,weekday_thursday:16,weekday_friday:17,weekday_saturday:18,weekday_sunday:19,dateFormat:20,inclusiveEndDates:21,topAxis:22,axisFormat:23,tickInterval:24,excludes:25,includes:26,todayMarker:27,title:28,acc_title:29,acc_title_value:30,acc_descr:31,acc_descr_value:32,acc_descr_multiline_value:33,section:34,clickStatement:35,taskTxt:36,taskData:37,openDirective:38,typeDirective:39,closeDirective:40,":":41,argDirective:42,click:43,callbackname:44,callbackargs:45,href:46,clickStatementDebug:47,open_directive:48,type_directive:49,arg_directive:50,close_directive:51,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",13:"weekday_monday",14:"weekday_tuesday",15:"weekday_wednesday",16:"weekday_thursday",17:"weekday_friday",18:"weekday_saturday",19:"weekday_sunday",20:"dateFormat",21:"inclusiveEndDates",22:"topAxis",23:"axisFormat",24:"tickInterval",25:"excludes",26:"includes",27:"todayMarker",28:"title",29:"acc_title",30:"acc_title_value",31:"acc_descr",32:"acc_descr_value",33:"acc_descr_multiline_value",34:"section",36:"taskTxt",37:"taskData",41:":",43:"click",44:"callbackname",45:"callbackargs",46:"href",48:"open_directive",49:"type_directive",50:"arg_directive",51:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[35,2],[35,3],[35,3],[35,4],[35,3],[35,4],[35,2],[47,2],[47,3],[47,3],[47,4],[47,3],[47,4],[47,2],[38,1],[39,1],[42,1],[40,1]],performAction:function(pt,Ft,X,Rt,Bt,vt,Ot){var Vt=vt.length-1;switch(Bt){case 2:return vt[Vt-1];case 3:this.$=[];break;case 4:vt[Vt-1].push(vt[Vt]),this.$=vt[Vt-1];break;case 5:case 6:this.$=vt[Vt];break;case 7:case 8:this.$=[];break;case 9:Rt.setWeekday("monday");break;case 10:Rt.setWeekday("tuesday");break;case 11:Rt.setWeekday("wednesday");break;case 12:Rt.setWeekday("thursday");break;case 13:Rt.setWeekday("friday");break;case 14:Rt.setWeekday("saturday");break;case 15:Rt.setWeekday("sunday");break;case 16:Rt.setDateFormat(vt[Vt].substr(11)),this.$=vt[Vt].substr(11);break;case 17:Rt.enableInclusiveEndDates(),this.$=vt[Vt].substr(18);break;case 18:Rt.TopAxis(),this.$=vt[Vt].substr(8);break;case 19:Rt.setAxisFormat(vt[Vt].substr(11)),this.$=vt[Vt].substr(11);break;case 20:Rt.setTickInterval(vt[Vt].substr(13)),this.$=vt[Vt].substr(13);break;case 21:Rt.setExcludes(vt[Vt].substr(9)),this.$=vt[Vt].substr(9);break;case 22:Rt.setIncludes(vt[Vt].substr(9)),this.$=vt[Vt].substr(9);break;case 23:Rt.setTodayMarker(vt[Vt].substr(12)),this.$=vt[Vt].substr(12);break;case 25:Rt.setDiagramTitle(vt[Vt].substr(6)),this.$=vt[Vt].substr(6);break;case 26:this.$=vt[Vt].trim(),Rt.setAccTitle(this.$);break;case 27:case 28:this.$=vt[Vt].trim(),Rt.setAccDescription(this.$);break;case 29:Rt.addSection(vt[Vt].substr(8)),this.$=vt[Vt].substr(8);break;case 31:Rt.addTask(vt[Vt-1],vt[Vt]),this.$="task";break;case 35:this.$=vt[Vt-1],Rt.setClickEvent(vt[Vt-1],vt[Vt],null);break;case 36:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt-1],vt[Vt]);break;case 37:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt-1],null),Rt.setLink(vt[Vt-2],vt[Vt]);break;case 38:this.$=vt[Vt-3],Rt.setClickEvent(vt[Vt-3],vt[Vt-2],vt[Vt-1]),Rt.setLink(vt[Vt-3],vt[Vt]);break;case 39:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt],null),Rt.setLink(vt[Vt-2],vt[Vt-1]);break;case 40:this.$=vt[Vt-3],Rt.setClickEvent(vt[Vt-3],vt[Vt-1],vt[Vt]),Rt.setLink(vt[Vt-3],vt[Vt-2]);break;case 41:this.$=vt[Vt-1],Rt.setLink(vt[Vt-1],vt[Vt]);break;case 42:case 48:this.$=vt[Vt-1]+" "+vt[Vt];break;case 43:case 44:case 46:this.$=vt[Vt-2]+" "+vt[Vt-1]+" "+vt[Vt];break;case 45:case 47:this.$=vt[Vt-3]+" "+vt[Vt-2]+" "+vt[Vt-1]+" "+vt[Vt];break;case 49:Rt.parseDirective("%%{","open_directive");break;case 50:Rt.parseDirective(vt[Vt],"type_directive");break;case 51:vt[Vt]=vt[Vt].trim().replace(/'/g,'"'),Rt.parseDirective(vt[Vt],"arg_directive");break;case 52:Rt.parseDirective("}%%","close_directive","gantt");break}},table:[{3:1,4:2,5:a,38:4,48:f},{1:[3]},{3:6,4:2,5:a,38:4,48:f},i(p,[2,3],{6:7}),{39:8,49:[1,9]},{49:[2,49]},{1:[2,1]},{4:31,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:23,13:v,14:m,15:b,16:E,17:C,18:A,19:P,20:F,21:j,22:R,23:H,24:Y,25:rt,26:J,27:it,28:ft,29:Tt,31:kt,33:mt,34:ct,35:29,36:yt,38:4,43:st,48:f},{40:40,41:[1,41],51:xt},i([41,51],[2,50]),i(p,[2,8],{1:[2,2]}),i(p,[2,4]),{4:31,10:43,12:23,13:v,14:m,15:b,16:E,17:C,18:A,19:P,20:F,21:j,22:R,23:H,24:Y,25:rt,26:J,27:it,28:ft,29:Tt,31:kt,33:mt,34:ct,35:29,36:yt,38:4,43:st,48:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(p,[2,19]),i(p,[2,20]),i(p,[2,21]),i(p,[2,22]),i(p,[2,23]),i(p,[2,24]),i(p,[2,25]),{30:[1,44]},{32:[1,45]},i(p,[2,28]),i(p,[2,29]),i(p,[2,30]),{37:[1,46]},i(p,[2,32]),i(p,[2,9]),i(p,[2,10]),i(p,[2,11]),i(p,[2,12]),i(p,[2,13]),i(p,[2,14]),i(p,[2,15]),{44:[1,47],46:[1,48]},{11:[1,49]},{42:50,50:[1,51]},{11:[2,52]},i(p,[2,5]),i(p,[2,26]),i(p,[2,27]),i(p,[2,31]),i(p,[2,35],{45:[1,52],46:[1,53]}),i(p,[2,41],{44:[1,54]}),i(ht,[2,33]),{40:55,51:xt},{51:[2,51]},i(p,[2,36],{46:[1,56]}),i(p,[2,37]),i(p,[2,39],{45:[1,57]}),{11:[1,58]},i(p,[2,38]),i(p,[2,40]),i(ht,[2,34])],defaultActions:{5:[2,49],6:[2,1],42:[2,52],51:[2,51]},parseError:function(pt,Ft){if(Ft.recoverable)this.trace(pt);else{var X=new Error(pt);throw X.hash=Ft,X}},parse:function(pt){var Ft=this,X=[0],Rt=[],Bt=[null],vt=[],Ot=this.table,Vt="",qe=0,_n=0,Te=2,Wn=1,Ae=vt.slice.call(arguments,1),ne=Object.create(this.lexer),ke={yy:{}};for(var Ve in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ve)&&(ke.yy[Ve]=this.yy[Ve]);ne.setInput(pt,ke.yy),ke.yy.lexer=ne,ke.yy.parser=this,typeof ne.yylloc>"u"&&(ne.yylloc={});var Ee=ne.yylloc;vt.push(Ee);var He=ne.options&&ne.options.ranges;typeof ke.yy.parseError=="function"?this.parseError=ke.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ce(){var pi;return pi=Rt.pop()||ne.lex()||Wn,typeof pi!="number"&&(pi instanceof Array&&(Rt=pi,pi=Rt.pop()),pi=Ft.symbols_[pi]||pi),pi}for(var $e,ye,fn,Yt,Mi={},qt,zi,Se,ki;;){if(ye=X[X.length-1],this.defaultActions[ye]?fn=this.defaultActions[ye]:(($e===null||typeof $e>"u")&&($e=Ce()),fn=Ot[ye]&&Ot[ye][$e]),typeof fn>"u"||!fn.length||!fn[0]){var Ri="";ki=[];for(qt in Ot[ye])this.terminals_[qt]&&qt>Te&&ki.push("'"+this.terminals_[qt]+"'");ne.showPosition?Ri="Parse error on line "+(qe+1)+`: +`+ne.showPosition()+` +Expecting `+ki.join(", ")+", got '"+(this.terminals_[$e]||$e)+"'":Ri="Parse error on line "+(qe+1)+": Unexpected "+($e==Wn?"end of input":"'"+(this.terminals_[$e]||$e)+"'"),this.parseError(Ri,{text:ne.match,token:this.terminals_[$e]||$e,line:ne.yylineno,loc:Ee,expected:ki})}if(fn[0]instanceof Array&&fn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ye+", token: "+$e);switch(fn[0]){case 1:X.push($e),Bt.push(ne.yytext),vt.push(ne.yylloc),X.push(fn[1]),$e=null,_n=ne.yyleng,Vt=ne.yytext,qe=ne.yylineno,Ee=ne.yylloc;break;case 2:if(zi=this.productions_[fn[1]][1],Mi.$=Bt[Bt.length-zi],Mi._$={first_line:vt[vt.length-(zi||1)].first_line,last_line:vt[vt.length-1].last_line,first_column:vt[vt.length-(zi||1)].first_column,last_column:vt[vt.length-1].last_column},He&&(Mi._$.range=[vt[vt.length-(zi||1)].range[0],vt[vt.length-1].range[1]]),Yt=this.performAction.apply(Mi,[Vt,_n,qe,ke.yy,fn[1],Bt,vt].concat(Ae)),typeof Yt<"u")return Yt;zi&&(X=X.slice(0,-1*zi*2),Bt=Bt.slice(0,-1*zi),vt=vt.slice(0,-1*zi)),X.push(this.productions_[fn[1]][0]),Bt.push(Mi.$),vt.push(Mi._$),Se=Ot[X[X.length-2]][X[X.length-1]],X.push(Se);break;case 3:return!0}}return!0}},Ct=function(){var Pt={EOF:1,parseError:function(Ft,X){if(this.yy.parser)this.yy.parser.parseError(Ft,X);else throw new Error(Ft)},setInput:function(pt,Ft){return this.yy=Ft||this.yy||{},this._input=pt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var pt=this._input[0];this.yytext+=pt,this.yyleng++,this.offset++,this.match+=pt,this.matched+=pt;var Ft=pt.match(/(?:\r\n?|\n).*/g);return Ft?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),pt},unput:function(pt){var Ft=pt.length,X=pt.split(/(?:\r\n?|\n)/g);this._input=pt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ft),this.offset-=Ft;var Rt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),X.length-1&&(this.yylineno-=X.length-1);var Bt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:X?(X.length===Rt.length?this.yylloc.first_column:0)+Rt[Rt.length-X.length].length-X[0].length:this.yylloc.first_column-Ft},this.options.ranges&&(this.yylloc.range=[Bt[0],Bt[0]+this.yyleng-Ft]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(pt){this.unput(this.match.slice(pt))},pastInput:function(){var pt=this.matched.substr(0,this.matched.length-this.match.length);return(pt.length>20?"...":"")+pt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var pt=this.match;return pt.length<20&&(pt+=this._input.substr(0,20-pt.length)),(pt.substr(0,20)+(pt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pt=this.pastInput(),Ft=new Array(pt.length+1).join("-");return pt+this.upcomingInput()+` +`+Ft+"^"},test_match:function(pt,Ft){var X,Rt,Bt;if(this.options.backtrack_lexer&&(Bt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Bt.yylloc.range=this.yylloc.range.slice(0))),Rt=pt[0].match(/(?:\r\n?|\n).*/g),Rt&&(this.yylineno+=Rt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Rt?Rt[Rt.length-1].length-Rt[Rt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+pt[0].length},this.yytext+=pt[0],this.match+=pt[0],this.matches=pt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(pt[0].length),this.matched+=pt[0],X=this.performAction.call(this,this.yy,this,Ft,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),X)return X;if(this._backtrack){for(var vt in Bt)this[vt]=Bt[vt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var pt,Ft,X,Rt;this._more||(this.yytext="",this.match="");for(var Bt=this._currentRules(),vt=0;vtFt[0].length)){if(Ft=X,Rt=vt,this.options.backtrack_lexer){if(pt=this.test_match(X,Bt[vt]),pt!==!1)return pt;if(this._backtrack){Ft=!1;continue}else return!1}else if(!this.options.flex)break}return Ft?(pt=this.test_match(Ft,Bt[Rt]),pt!==!1?pt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ft=this.next();return Ft||this.lex()},begin:function(Ft){this.conditionStack.push(Ft)},popState:function(){var Ft=this.conditionStack.length-1;return Ft>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ft){return Ft=this.conditionStack.length-1-Math.abs(Ft||0),Ft>=0?this.conditionStack[Ft]:"INITIAL"},pushState:function(Ft){this.begin(Ft)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ft,X,Rt,Bt){switch(Rt){case 0:return this.begin("open_directive"),48;case 1:return this.begin("type_directive"),49;case 2:return this.popState(),this.begin("arg_directive"),41;case 3:return this.popState(),this.popState(),51;case 4:return 50;case 5:return this.begin("acc_title"),29;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),31;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:break;case 13:break;case 14:break;case 15:return 11;case 16:break;case 17:break;case 18:break;case 19:this.begin("href");break;case 20:this.popState();break;case 21:return 46;case 22:this.begin("callbackname");break;case 23:this.popState();break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 44;case 26:this.popState();break;case 27:return 45;case 28:this.begin("click");break;case 29:this.popState();break;case 30:return 43;case 31:return 5;case 32:return 20;case 33:return 21;case 34:return 22;case 35:return 23;case 36:return 24;case 37:return 26;case 38:return 25;case 39:return 27;case 40:return 13;case 41:return 14;case 42:return 15;case 43:return 16;case 44:return 17;case 45:return 18;case 46:return 19;case 47:return"date";case 48:return 28;case 49:return"accDescription";case 50:return 34;case 51:return 36;case 52:return 37;case 53:return 41;case 54:return 7;case 55:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return Pt}();dt.lexer=Ct;function tt(){this.yy={}}return tt.prototype=dt,dt.Parser=tt,new tt}();P0t.parser=P0t;const Lze=P0t;var WBt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){var f="day";return function(p,v,m){var b=function(A){return A.add(4-A.isoWeekday(),f)},E=v.prototype;E.isoWeekYear=function(){return b(this).year()},E.isoWeek=function(A){if(!this.$utils().u(A))return this.add(7*(A-this.isoWeek()),f);var P,F,j,R,H=b(this),Y=(P=this.isoWeekYear(),F=this.$u,j=(F?m.utc:m)().year(P).startOf("year"),R=4-j.isoWeekday(),j.isoWeekday()>4&&(R+=7),j.add(R,f));return H.diff(Y,"week")+1},E.isoWeekday=function(A){return this.$utils().u(A)?this.day()||7:this.day(this.day()%7?A:A-7)};var C=E.startOf;E.startOf=function(A,P){var F=this.$utils(),j=!!F.u(P)||P;return F.p(A)==="isoweek"?j?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):C.bind(this)(A,P)}}})})(WBt);var Mze=WBt.exports;const Dze=PE(Mze);var KBt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){var f={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},p=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,v=/\d\d/,m=/\d\d?/,b=/\d*[^-_:/,()\s\d]+/,E={},C=function(Y){return(Y=+Y)+(Y>68?1900:2e3)},A=function(Y){return function(rt){this[Y]=+rt}},P=[/[+-]\d\d:?(\d\d)?|Z/,function(Y){(this.zone||(this.zone={})).offset=function(rt){if(!rt||rt==="Z")return 0;var J=rt.match(/([+-]|\d\d)/g),it=60*J[1]+(+J[2]||0);return it===0?0:J[0]==="+"?-it:it}(Y)}],F=function(Y){var rt=E[Y];return rt&&(rt.indexOf?rt:rt.s.concat(rt.f))},j=function(Y,rt){var J,it=E.meridiem;if(it){for(var ft=1;ft<=24;ft+=1)if(Y.indexOf(it(ft,0,rt))>-1){J=ft>12;break}}else J=Y===(rt?"pm":"PM");return J},R={A:[b,function(Y){this.afternoon=j(Y,!1)}],a:[b,function(Y){this.afternoon=j(Y,!0)}],S:[/\d/,function(Y){this.milliseconds=100*+Y}],SS:[v,function(Y){this.milliseconds=10*+Y}],SSS:[/\d{3}/,function(Y){this.milliseconds=+Y}],s:[m,A("seconds")],ss:[m,A("seconds")],m:[m,A("minutes")],mm:[m,A("minutes")],H:[m,A("hours")],h:[m,A("hours")],HH:[m,A("hours")],hh:[m,A("hours")],D:[m,A("day")],DD:[v,A("day")],Do:[b,function(Y){var rt=E.ordinal,J=Y.match(/\d+/);if(this.day=J[0],rt)for(var it=1;it<=31;it+=1)rt(it).replace(/\[|\]/g,"")===Y&&(this.day=it)}],M:[m,A("month")],MM:[v,A("month")],MMM:[b,function(Y){var rt=F("months"),J=(F("monthsShort")||rt.map(function(it){return it.slice(0,3)})).indexOf(Y)+1;if(J<1)throw new Error;this.month=J%12||J}],MMMM:[b,function(Y){var rt=F("months").indexOf(Y)+1;if(rt<1)throw new Error;this.month=rt%12||rt}],Y:[/[+-]?\d+/,A("year")],YY:[v,function(Y){this.year=C(Y)}],YYYY:[/\d{4}/,A("year")],Z:P,ZZ:P};function H(Y){var rt,J;rt=Y,J=E&&E.formats;for(var it=(Y=rt.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(st,xt,ht){var dt=ht&&ht.toUpperCase();return xt||J[ht]||f[ht]||J[dt].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(Ct,tt,Pt){return tt||Pt.slice(1)})})).match(p),ft=it.length,Tt=0;Tt-1)return new Date((Ft==="X"?1e3:1)*pt);var Rt=H(Ft)(pt),Bt=Rt.year,vt=Rt.month,Ot=Rt.day,Vt=Rt.hours,qe=Rt.minutes,_n=Rt.seconds,Te=Rt.milliseconds,Wn=Rt.zone,Ae=new Date,ne=Ot||(Bt||vt?1:Ae.getDate()),ke=Bt||Ae.getFullYear(),Ve=0;Bt&&!vt||(Ve=vt>0?vt-1:Ae.getMonth());var Ee=Vt||0,He=qe||0,Ce=_n||0,$e=Te||0;return Wn?new Date(Date.UTC(ke,Ve,ne,Ee,He,Ce,$e+60*Wn.offset*1e3)):X?new Date(Date.UTC(ke,Ve,ne,Ee,He,Ce,$e)):new Date(ke,Ve,ne,Ee,He,Ce,$e)}catch{return new Date("")}}(kt,yt,mt),this.init(),dt&&dt!==!0&&(this.$L=this.locale(dt).$L),ht&&kt!=this.format(yt)&&(this.$d=new Date("")),E={}}else if(yt instanceof Array)for(var Ct=yt.length,tt=1;tt<=Ct;tt+=1){ct[1]=yt[tt-1];var Pt=J.apply(this,ct);if(Pt.isValid()){this.$d=Pt.$d,this.$L=Pt.$L,this.init();break}tt===Ct&&(this.$d=new Date(""))}else ft.call(this,Tt)}}})})(KBt);var Ize=KBt.exports;const Oze=PE(Ize);var YBt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){return function(f,p){var v=p.prototype,m=v.format;v.format=function(b){var E=this,C=this.$locale();if(!this.isValid())return m.bind(this)(b);var A=this.$utils(),P=(b||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(F){switch(F){case"Q":return Math.ceil((E.$M+1)/3);case"Do":return C.ordinal(E.$D);case"gggg":return E.weekYear();case"GGGG":return E.isoWeekYear();case"wo":return C.ordinal(E.week(),"W");case"w":case"ww":return A.s(E.week(),F==="w"?1:2,"0");case"W":case"WW":return A.s(E.isoWeek(),F==="W"?1:2,"0");case"k":case"kk":return A.s(String(E.$H===0?24:E.$H),F==="k"?1:2,"0");case"X":return Math.floor(E.$d.getTime()/1e3);case"x":return E.$d.getTime();case"z":return"["+E.offsetName()+"]";case"zzz":return"["+E.offsetName("long")+"]";default:return F}});return m.bind(this)(P)}}})})(YBt);var Nze=YBt.exports;const Pze=PE(Nze);up.extend(Dze),up.extend(Oze),up.extend(Pze);let m3="",F0t="",B0t,R0t="",AP=[],LP=[],j0t={},$0t=[],_K=[],sL="",z0t="";const XBt=["active","done","crit","milestone"];let q0t=[],MP=!1,H0t=!1,V0t="sunday",G0t=0;const Fze=function(i,a,f){J1.parseDirective(this,i,a,f)},Bze=function(){$0t=[],_K=[],sL="",q0t=[],CK=0,W0t=void 0,SK=void 0,d1=[],m3="",F0t="",z0t="",B0t=void 0,R0t="",AP=[],LP=[],MP=!1,H0t=!1,G0t=0,j0t={},cg(),V0t="sunday"},Rze=function(i){F0t=i},jze=function(){return F0t},$ze=function(i){B0t=i},zze=function(){return B0t},qze=function(i){R0t=i},Hze=function(){return R0t},Vze=function(i){m3=i},Gze=function(){MP=!0},Uze=function(){return MP},Wze=function(){H0t=!0},Kze=function(){return H0t},Yze=function(i){z0t=i},Xze=function(){return z0t},Qze=function(){return m3},Zze=function(i){AP=i.toLowerCase().split(/[\s,]+/)},Jze=function(){return AP},tqe=function(i){LP=i.toLowerCase().split(/[\s,]+/)},eqe=function(){return LP},nqe=function(){return j0t},rqe=function(i){sL=i,$0t.push(i)},iqe=function(){return $0t},sqe=function(){let i=nRt();const a=10;let f=0;for(;!i&&f=6&&f.includes("weekends")||f.includes(i.format("dddd").toLowerCase())?!0:f.includes(i.format(a.trim()))},aqe=function(i){V0t=i},oqe=function(){return V0t},ZBt=function(i,a,f,p){if(!f.length||i.manualEndTime)return;let v;i.startTime instanceof Date?v=up(i.startTime):v=up(i.startTime,a,!0),v=v.add(1,"d");let m;i.endTime instanceof Date?m=up(i.endTime):m=up(i.endTime,a,!0);const[b,E]=cqe(v,m,a,f,p);i.endTime=b.toDate(),i.renderEndTime=E},cqe=function(i,a,f,p,v){let m=!1,b=null;for(;i<=a;)m||(b=a.toDate()),m=QBt(i,f,p,v),m&&(a=a.add(1,"d")),i=i.add(1,"d");return[a,b]},U0t=function(i,a,f){f=f.trim();const v=/^after\s+([\d\w- ]+)/.exec(f.trim());if(v!==null){let b=null;if(v[1].split(" ").forEach(function(E){let C=oL(E);C!==void 0&&(b?C.endTime>b.endTime&&(b=C):b=C)}),b)return b.endTime;{const E=new Date;return E.setHours(0,0,0,0),E}}let m=up(f,a.trim(),!0);if(m.isValid())return m.toDate();{Wt.debug("Invalid date:"+f),Wt.debug("With date format:"+a.trim());const b=new Date(f);if(b===void 0||isNaN(b.getTime())||b.getFullYear()<-1e4||b.getFullYear()>1e4)throw new Error("Invalid date:"+f);return b}},JBt=function(i){const a=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(i.trim());return a!==null?[Number.parseFloat(a[1]),a[2]]:[NaN,"ms"]},tRt=function(i,a,f,p=!1){f=f.trim();let v=up(f,a.trim(),!0);if(v.isValid())return p&&(v=v.add(1,"d")),v.toDate();let m=up(i);const[b,E]=JBt(f);if(!Number.isNaN(b)){const C=m.add(b,E);C.isValid()&&(m=C)}return m.toDate()};let CK=0;const aL=function(i){return i===void 0?(CK=CK+1,"task"+CK):i},uqe=function(i,a){let f;a.substr(0,1)===":"?f=a.substr(1,a.length):f=a;const p=f.split(","),v={};sRt(p,v,XBt);for(let b=0;b{window.open(f,"_self")}),j0t[p]=f)}),rRt(i,"clickable")},rRt=function(i,a){i.split(",").forEach(function(f){let p=oL(f);p!==void 0&&p.classes.push(a)})},gqe=function(i,a,f){if(De().securityLevel!=="loose"||a===void 0)return;let p=[];if(typeof f=="string"){p=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let m=0;m{to.runFunc(a,...p)})},iRt=function(i,a){q0t.push(function(){const f=document.querySelector(`[id="${i}"]`);f!==null&&f.addEventListener("click",function(){a()})},function(){const f=document.querySelector(`[id="${i}-text"]`);f!==null&&f.addEventListener("click",function(){a()})})},pqe={parseDirective:Fze,getConfig:()=>De().gantt,clear:Bze,setDateFormat:Vze,getDateFormat:Qze,enableInclusiveEndDates:Gze,endDatesAreInclusive:Uze,enableTopAxis:Wze,topAxisEnabled:Kze,setAxisFormat:Rze,getAxisFormat:jze,setTickInterval:$ze,getTickInterval:zze,setTodayMarker:qze,getTodayMarker:Hze,setAccTitle:m0,getAccTitle:ug,setDiagramTitle:Nb,getDiagramTitle:hp,setDisplayMode:Yze,getDisplayMode:Xze,setAccDescription:lg,getAccDescription:hg,addSection:rqe,getSections:iqe,getTasks:sqe,addTask:hqe,findTaskById:oL,addTaskOrg:fqe,setIncludes:Zze,getIncludes:Jze,setExcludes:tqe,getExcludes:eqe,setClickEvent:function(i,a,f){i.split(",").forEach(function(p){gqe(p,a,f)}),rRt(i,"clickable")},setLink:dqe,getLinks:nqe,bindFunctions:function(i){q0t.forEach(function(a){a(i)})},parseDuration:JBt,isInvalidDate:QBt,setWeekday:aqe,getWeekday:oqe};function sRt(i,a,f){let p=!0;for(;p;)p=!1,f.forEach(function(v){const m="^\\s*"+v+"\\s*$",b=new RegExp(m);i[0].match(b)&&(a[v]=!0,i.shift(1),p=!0)})}const bqe=function(){Wt.debug("Something is calling, setConf, remove the call")},aRt={monday:DN,tuesday:UMt,wednesday:WMt,thursday:GE,friday:KMt,saturday:YMt,sunday:MN},vqe=(i,a)=>{let f=[...i].map(()=>-1/0),p=[...i].sort((m,b)=>m.startTime-b.startTime||m.order-b.order),v=0;for(const m of p)for(let b=0;b=f[b]){f[b]=m.endTime,m.order=b+a,b>v&&(v=b);break}return v};let M5;const wqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Lze,db:pqe,renderer:{setConf:bqe,draw:function(i,a,f,p){const v=De().gantt,m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=m==="sandbox"?b.nodes()[0].contentDocument:document,A=C.getElementById(a);M5=A.parentElement.offsetWidth,M5===void 0&&(M5=1200),v.useWidth!==void 0&&(M5=v.useWidth);const P=p.db.getTasks();let F=[];for(const yt of P)F.push(yt.type);F=ct(F);const j={};let R=2*v.topPadding;if(p.db.getDisplayMode()==="compact"||v.displayMode==="compact"){const yt={};for(const xt of P)yt[xt.section]===void 0?yt[xt.section]=[xt]:yt[xt.section].push(xt);let st=0;for(const xt of Object.keys(yt)){const ht=vqe(yt[xt],st)+1;st+=ht,R+=ht*(v.barHeight+v.barGap),j[xt]=ht}}else{R+=P.length*(v.barHeight+v.barGap);for(const yt of F)j[yt]=P.filter(st=>st.type===yt).length}A.setAttribute("viewBox","0 0 "+M5+" "+R);const H=E.select(`[id="${a}"]`),Y=TEe().domain([c6e(P,function(yt){return yt.startTime}),o6e(P,function(yt){return yt.endTime})]).rangeRound([0,M5-v.leftPadding-v.rightPadding]);function rt(yt,st){const xt=yt.startTime,ht=st.startTime;let dt=0;return xt>ht?dt=1:xtBt.order))].map(Bt=>yt.find(vt=>vt.order===Bt));H.append("g").selectAll("rect").data(pt).enter().append("rect").attr("x",0).attr("y",function(Bt,vt){return vt=Bt.order,vt*st+xt-2}).attr("width",function(){return tt-v.rightPadding/2}).attr("height",st).attr("class",function(Bt){for(const[vt,Ot]of F.entries())if(Bt.type===Ot)return"section section"+vt%v.numberSectionStyles;return"section section0"});const Ft=H.append("g").selectAll("rect").data(yt).enter(),X=p.db.getLinks();if(Ft.append("rect").attr("id",function(Bt){return Bt.id}).attr("rx",3).attr("ry",3).attr("x",function(Bt){return Bt.milestone?Y(Bt.startTime)+ht+.5*(Y(Bt.endTime)-Y(Bt.startTime))-.5*dt:Y(Bt.startTime)+ht}).attr("y",function(Bt,vt){return vt=Bt.order,vt*st+xt}).attr("width",function(Bt){return Bt.milestone?dt:Y(Bt.renderEndTime||Bt.endTime)-Y(Bt.startTime)}).attr("height",dt).attr("transform-origin",function(Bt,vt){return vt=Bt.order,(Y(Bt.startTime)+ht+.5*(Y(Bt.endTime)-Y(Bt.startTime))).toString()+"px "+(vt*st+xt+.5*dt).toString()+"px"}).attr("class",function(Bt){const vt="task";let Ot="";Bt.classes.length>0&&(Ot=Bt.classes.join(" "));let Vt=0;for(const[_n,Te]of F.entries())Bt.type===Te&&(Vt=_n%v.numberSectionStyles);let qe="";return Bt.active?Bt.crit?qe+=" activeCrit":qe=" active":Bt.done?Bt.crit?qe=" doneCrit":qe=" done":Bt.crit&&(qe+=" crit"),qe.length===0&&(qe=" task"),Bt.milestone&&(qe=" milestone "+qe),qe+=Vt,qe+=" "+Ot,vt+qe}),Ft.append("text").attr("id",function(Bt){return Bt.id+"-text"}).text(function(Bt){return Bt.task}).attr("font-size",v.fontSize).attr("x",function(Bt){let vt=Y(Bt.startTime),Ot=Y(Bt.renderEndTime||Bt.endTime);Bt.milestone&&(vt+=.5*(Y(Bt.endTime)-Y(Bt.startTime))-.5*dt),Bt.milestone&&(Ot=vt+dt);const Vt=this.getBBox().width;return Vt>Ot-vt?Ot+Vt+1.5*v.leftPadding>tt?vt+ht-5:Ot+ht+5:(Ot-vt)/2+vt+ht}).attr("y",function(Bt,vt){return vt=Bt.order,vt*st+v.barHeight/2+(v.fontSize/2-2)+xt}).attr("text-height",dt).attr("class",function(Bt){const vt=Y(Bt.startTime);let Ot=Y(Bt.endTime);Bt.milestone&&(Ot=vt+dt);const Vt=this.getBBox().width;let qe="";Bt.classes.length>0&&(qe=Bt.classes.join(" "));let _n=0;for(const[Wn,Ae]of F.entries())Bt.type===Ae&&(_n=Wn%v.numberSectionStyles);let Te="";return Bt.active&&(Bt.crit?Te="activeCritText"+_n:Te="activeText"+_n),Bt.done?Bt.crit?Te=Te+" doneCritText"+_n:Te=Te+" doneText"+_n:Bt.crit&&(Te=Te+" critText"+_n),Bt.milestone&&(Te+=" milestoneText"),Vt>Ot-vt?Ot+Vt+1.5*v.leftPadding>tt?qe+" taskTextOutsideLeft taskTextOutside"+_n+" "+Te:qe+" taskTextOutsideRight taskTextOutside"+_n+" "+Te+" width-"+Vt:qe+" taskText taskText"+_n+" "+Te+" width-"+Vt}),De().securityLevel==="sandbox"){let Bt;Bt=xr("#i"+a);const vt=Bt.nodes()[0].contentDocument;Ft.filter(function(Ot){return X[Ot.id]!==void 0}).each(function(Ot){var Vt=vt.querySelector("#"+Ot.id),qe=vt.querySelector("#"+Ot.id+"-text");const _n=Vt.parentNode;var Te=vt.createElement("a");Te.setAttribute("xlink:href",X[Ot.id]),Te.setAttribute("target","_top"),_n.appendChild(Te),Te.appendChild(Vt),Te.appendChild(qe)})}}function ft(yt,st,xt,ht,dt,Ct,tt,Pt){const pt=Ct.reduce((Vt,{startTime:qe})=>Vt?Math.min(Vt,qe):qe,0),Ft=Ct.reduce((Vt,{endTime:qe})=>Vt?Math.max(Vt,qe):qe,0),X=p.db.getDateFormat();if(!pt||!Ft)return;const Rt=[];let Bt=null,vt=up(pt);for(;vt.valueOf()<=Ft;)p.db.isInvalidDate(vt,X,tt,Pt)?Bt?Bt.end=vt:Bt={start:vt,end:vt}:Bt&&(Rt.push(Bt),Bt=null),vt=vt.add(1,"d");H.append("g").selectAll("rect").data(Rt).enter().append("rect").attr("id",function(Vt){return"exclude-"+Vt.start.format("YYYY-MM-DD")}).attr("x",function(Vt){return Y(Vt.start)+xt}).attr("y",v.gridLineStartPadding).attr("width",function(Vt){const qe=Vt.end.add(1,"day");return Y(qe)-Y(Vt.start)}).attr("height",dt-st-v.gridLineStartPadding).attr("transform-origin",function(Vt,qe){return(Y(Vt.start)+xt+.5*(Y(Vt.end)-Y(Vt.start))).toString()+"px "+(qe*yt+.5*dt).toString()+"px"}).attr("class","exclude-range")}function Tt(yt,st,xt,ht){let dt=b6e(Y).tickSize(-ht+st+v.gridLineStartPadding).tickFormat(HU(p.db.getAxisFormat()||v.axisFormat||"%Y-%m-%d"));const tt=/^([1-9]\d*)(minute|hour|day|week|month)$/.exec(p.db.getTickInterval()||v.tickInterval);if(tt!==null){const Pt=tt[1],pt=tt[2],Ft=p.db.getWeekday()||v.weekday;switch(pt){case"minute":dt.ticks(jU.every(Pt));break;case"hour":dt.ticks($U.every(Pt));break;case"day":dt.ticks(_A.every(Pt));break;case"week":dt.ticks(aRt[Ft].every(Pt));break;case"month":dt.ticks(zU.every(Pt));break}}if(H.append("g").attr("class","grid").attr("transform","translate("+yt+", "+(ht-50)+")").call(dt).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),p.db.topAxisEnabled()||v.topAxis){let Pt=p6e(Y).tickSize(-ht+st+v.gridLineStartPadding).tickFormat(HU(p.db.getAxisFormat()||v.axisFormat||"%Y-%m-%d"));if(tt!==null){const pt=tt[1],Ft=tt[2],X=p.db.getWeekday()||v.weekday;switch(Ft){case"minute":Pt.ticks(jU.every(pt));break;case"hour":Pt.ticks($U.every(pt));break;case"day":Pt.ticks(_A.every(pt));break;case"week":Pt.ticks(aRt[X].every(pt));break;case"month":Pt.ticks(zU.every(pt));break}}H.append("g").attr("class","grid").attr("transform","translate("+yt+", "+st+")").call(Pt).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function kt(yt,st){let xt=0;const ht=Object.keys(j).map(dt=>[dt,j[dt]]);H.append("g").selectAll("text").data(ht).enter().append(function(dt){const Ct=dt[0].split(ui.lineBreakRegex),tt=-(Ct.length-1)/2,Pt=C.createElementNS("http://www.w3.org/2000/svg","text");Pt.setAttribute("dy",tt+"em");for(const[pt,Ft]of Ct.entries()){const X=C.createElementNS("http://www.w3.org/2000/svg","tspan");X.setAttribute("alignment-baseline","central"),X.setAttribute("x","10"),pt>0&&X.setAttribute("dy","1em"),X.textContent=Ft,Pt.appendChild(X)}return Pt}).attr("x",10).attr("y",function(dt,Ct){if(Ct>0)for(let tt=0;tt` + .mermaid-main-font { + font-family: "trebuchet ms", verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + .exclude-range { + fill: ${i.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${i.sectionBkgColor}; + } + + .section2 { + fill: ${i.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${i.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${i.titleColor}; + } + + .sectionTitle1 { + fill: ${i.titleColor}; + } + + .sectionTitle2 { + fill: ${i.titleColor}; + } + + .sectionTitle3 { + fill: ${i.titleColor}; + } + + .sectionTitle { + text-anchor: start; + // font-size: ${i.ganttFontSize}; + // text-height: 14px; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${i.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + text { + font-family: ${i.fontFamily}; + fill: ${i.textColor}; + } + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${i.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + + // .taskText:not([font-size]) { + // font-size: ${i.ganttFontSize}; + // } + + .taskTextOutsideRight { + fill: ${i.taskTextDarkColor}; + text-anchor: start; + // font-size: ${i.ganttFontSize}; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + + } + + .taskTextOutsideLeft { + fill: ${i.taskTextDarkColor}; + text-anchor: end; + // font-size: ${i.ganttFontSize}; + } + + /* Special case clickable */ + .task.clickable { + cursor: pointer; + } + .taskText.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${i.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${i.taskBkgColor}; + stroke: ${i.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${i.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${i.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${i.activeTaskBkgColor}; + stroke: ${i.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${i.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${i.doneTaskBorderColor}; + fill: ${i.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${i.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${i.critBorderColor}; + fill: ${i.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${i.critBorderColor}; + fill: ${i.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${i.critBorderColor}; + fill: ${i.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${i.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${i.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor} ; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } +`}},Symbol.toStringTag,{value:"Module"}));var K0t=function(){var i=function(m,b,E,C){for(E=E||{},C=m.length;C--;E[m[C]]=b);return E},a=[6,9,10],f={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(b,E,C,A,P,F,j){switch(F.length-1,P){case 1:return A;case 4:break;case 6:A.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(a,[2,3]),i(a,[2,4]),i(a,[2,5]),i(a,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,E){if(E.recoverable)this.trace(b);else{var C=new Error(b);throw C.hash=E,C}},parse:function(b){var E=this,C=[0],A=[],P=[null],F=[],j=this.table,R="",H=0,Y=0,rt=2,J=1,it=F.slice.call(arguments,1),ft=Object.create(this.lexer),Tt={yy:{}};for(var kt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kt)&&(Tt.yy[kt]=this.yy[kt]);ft.setInput(b,Tt.yy),Tt.yy.lexer=ft,Tt.yy.parser=this,typeof ft.yylloc>"u"&&(ft.yylloc={});var mt=ft.yylloc;F.push(mt);var ct=ft.options&&ft.options.ranges;typeof Tt.yy.parseError=="function"?this.parseError=Tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function yt(){var Rt;return Rt=A.pop()||ft.lex()||J,typeof Rt!="number"&&(Rt instanceof Array&&(A=Rt,Rt=A.pop()),Rt=E.symbols_[Rt]||Rt),Rt}for(var st,xt,ht,dt,Ct={},tt,Pt,pt,Ft;;){if(xt=C[C.length-1],this.defaultActions[xt]?ht=this.defaultActions[xt]:((st===null||typeof st>"u")&&(st=yt()),ht=j[xt]&&j[xt][st]),typeof ht>"u"||!ht.length||!ht[0]){var X="";Ft=[];for(tt in j[xt])this.terminals_[tt]&&tt>rt&&Ft.push("'"+this.terminals_[tt]+"'");ft.showPosition?X="Parse error on line "+(H+1)+`: +`+ft.showPosition()+` +Expecting `+Ft.join(", ")+", got '"+(this.terminals_[st]||st)+"'":X="Parse error on line "+(H+1)+": Unexpected "+(st==J?"end of input":"'"+(this.terminals_[st]||st)+"'"),this.parseError(X,{text:ft.match,token:this.terminals_[st]||st,line:ft.yylineno,loc:mt,expected:Ft})}if(ht[0]instanceof Array&&ht.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xt+", token: "+st);switch(ht[0]){case 1:C.push(st),P.push(ft.yytext),F.push(ft.yylloc),C.push(ht[1]),st=null,Y=ft.yyleng,R=ft.yytext,H=ft.yylineno,mt=ft.yylloc;break;case 2:if(Pt=this.productions_[ht[1]][1],Ct.$=P[P.length-Pt],Ct._$={first_line:F[F.length-(Pt||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(Pt||1)].first_column,last_column:F[F.length-1].last_column},ct&&(Ct._$.range=[F[F.length-(Pt||1)].range[0],F[F.length-1].range[1]]),dt=this.performAction.apply(Ct,[R,Y,H,Tt.yy,ht[1],P,F].concat(it)),typeof dt<"u")return dt;Pt&&(C=C.slice(0,-1*Pt*2),P=P.slice(0,-1*Pt),F=F.slice(0,-1*Pt)),C.push(this.productions_[ht[1]][0]),P.push(Ct.$),F.push(Ct._$),pt=j[C[C.length-2]][C[C.length-1]],C.push(pt);break;case 3:return!0}}return!0}},p=function(){var m={EOF:1,parseError:function(E,C){if(this.yy.parser)this.yy.parser.parseError(E,C);else throw new Error(E)},setInput:function(b,E){return this.yy=E||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var E=b.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},unput:function(b){var E=b.length,C=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var A=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),C.length-1&&(this.yylineno-=C.length-1);var P=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:C?(C.length===A.length?this.yylloc.first_column:0)+A[A.length-C.length].length-C[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[P[0],P[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var b=this.pastInput(),E=new Array(b.length+1).join("-");return b+this.upcomingInput()+` +`+E+"^"},test_match:function(b,E){var C,A,P;if(this.options.backtrack_lexer&&(P={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(P.yylloc.range=this.yylloc.range.slice(0))),A=b[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],C=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),C)return C;if(this._backtrack){for(var F in P)this[F]=P[F];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,E,C,A;this._more||(this.yytext="",this.match="");for(var P=this._currentRules(),F=0;FE[0].length)){if(E=C,A=F,this.options.backtrack_lexer){if(b=this.test_match(C,P[F]),b!==!1)return b;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(b=this.test_match(E,P[A]),b!==!1?b:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var E=this.next();return E||this.lex()},begin:function(E){this.conditionStack.push(E)},popState:function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},pushState:function(E){this.begin(E)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(E,C,A,P){switch(A){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};return m}();f.lexer=p;function v(){this.yy={}}return v.prototype=f,f.Parser=v,new v}();K0t.parser=K0t;const mqe=K0t,oRt={info:!1};let Y0t=oRt.info;const yqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:mqe,db:{clear:()=>{Y0t=oRt.info},setInfo:i=>{Y0t=i},getInfo:()=>Y0t},renderer:{draw:(i,a,f)=>{Wt.debug(`rendering info diagram +`+i);const p=ldt(a);og(p,100,400,!0),p.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${f}`)}}}},Symbol.toStringTag,{value:"Module"}));var X0t=function(){var i=function(mt,ct,yt,st){for(yt=yt||{},st=mt.length;st--;yt[mt[st]]=ct);return yt},a=[1,4],f=[1,5],p=[1,6],v=[1,7],m=[1,9],b=[1,11,13,15,17,19,20,26,27,28,29],E=[2,5],C=[1,6,11,13,15,17,19,20,26,27,28,29],A=[26,27,28],P=[2,8],F=[1,18],j=[1,19],R=[1,20],H=[1,21],Y=[1,22],rt=[1,23],J=[1,28],it=[6,26,27,28,29],ft={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(ct,yt,st,xt,ht,dt,Ct){var tt=dt.length-1;switch(ht){case 4:xt.setShowData(!0);break;case 7:this.$=dt[tt-1];break;case 9:xt.addSection(dt[tt-1],xt.cleanupValue(dt[tt]));break;case 10:this.$=dt[tt].trim(),xt.setDiagramTitle(this.$);break;case 11:this.$=dt[tt].trim(),xt.setAccTitle(this.$);break;case 12:case 13:this.$=dt[tt].trim(),xt.setAccDescription(this.$);break;case 14:xt.addSection(dt[tt].substr(8)),this.$=dt[tt].substr(8);break;case 21:xt.parseDirective("%%{","open_directive");break;case 22:xt.parseDirective(dt[tt],"type_directive");break;case 23:dt[tt]=dt[tt].trim().replace(/'/g,'"'),xt.parseDirective(dt[tt],"arg_directive");break;case 24:xt.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},{1:[3]},{3:10,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},{3:11,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},i(b,E,{7:12,8:[1,13]}),i(C,[2,18]),i(C,[2,19]),i(C,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},i(A,P,{21:8,9:16,10:17,5:24,1:[2,3],11:F,13:j,15:R,17:H,19:Y,20:rt,29:m}),i(b,E,{7:25}),{23:26,24:[1,27],32:J},i([24,32],[2,22]),i(b,[2,6]),{4:29,26:f,27:p,28:v},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},i(A,[2,13]),i(A,[2,14]),i(A,[2,15]),i(A,P,{21:8,9:16,10:17,5:24,1:[2,4],11:F,13:j,15:R,17:H,19:Y,20:rt,29:m}),i(it,[2,16]),{25:34,31:[1,35]},i(it,[2,24]),i(b,[2,7]),i(A,[2,9]),i(A,[2,10]),i(A,[2,11]),i(A,[2,12]),{23:36,32:J},{32:[2,23]},i(it,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(ct,yt){if(yt.recoverable)this.trace(ct);else{var st=new Error(ct);throw st.hash=yt,st}},parse:function(ct){var yt=this,st=[0],xt=[],ht=[null],dt=[],Ct=this.table,tt="",Pt=0,pt=0,Ft=2,X=1,Rt=dt.slice.call(arguments,1),Bt=Object.create(this.lexer),vt={yy:{}};for(var Ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ot)&&(vt.yy[Ot]=this.yy[Ot]);Bt.setInput(ct,vt.yy),vt.yy.lexer=Bt,vt.yy.parser=this,typeof Bt.yylloc>"u"&&(Bt.yylloc={});var Vt=Bt.yylloc;dt.push(Vt);var qe=Bt.options&&Bt.options.ranges;typeof vt.yy.parseError=="function"?this.parseError=vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _n(){var ye;return ye=xt.pop()||Bt.lex()||X,typeof ye!="number"&&(ye instanceof Array&&(xt=ye,ye=xt.pop()),ye=yt.symbols_[ye]||ye),ye}for(var Te,Wn,Ae,ne,ke={},Ve,Ee,He,Ce;;){if(Wn=st[st.length-1],this.defaultActions[Wn]?Ae=this.defaultActions[Wn]:((Te===null||typeof Te>"u")&&(Te=_n()),Ae=Ct[Wn]&&Ct[Wn][Te]),typeof Ae>"u"||!Ae.length||!Ae[0]){var $e="";Ce=[];for(Ve in Ct[Wn])this.terminals_[Ve]&&Ve>Ft&&Ce.push("'"+this.terminals_[Ve]+"'");Bt.showPosition?$e="Parse error on line "+(Pt+1)+`: +`+Bt.showPosition()+` +Expecting `+Ce.join(", ")+", got '"+(this.terminals_[Te]||Te)+"'":$e="Parse error on line "+(Pt+1)+": Unexpected "+(Te==X?"end of input":"'"+(this.terminals_[Te]||Te)+"'"),this.parseError($e,{text:Bt.match,token:this.terminals_[Te]||Te,line:Bt.yylineno,loc:Vt,expected:Ce})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Wn+", token: "+Te);switch(Ae[0]){case 1:st.push(Te),ht.push(Bt.yytext),dt.push(Bt.yylloc),st.push(Ae[1]),Te=null,pt=Bt.yyleng,tt=Bt.yytext,Pt=Bt.yylineno,Vt=Bt.yylloc;break;case 2:if(Ee=this.productions_[Ae[1]][1],ke.$=ht[ht.length-Ee],ke._$={first_line:dt[dt.length-(Ee||1)].first_line,last_line:dt[dt.length-1].last_line,first_column:dt[dt.length-(Ee||1)].first_column,last_column:dt[dt.length-1].last_column},qe&&(ke._$.range=[dt[dt.length-(Ee||1)].range[0],dt[dt.length-1].range[1]]),ne=this.performAction.apply(ke,[tt,pt,Pt,vt.yy,Ae[1],ht,dt].concat(Rt)),typeof ne<"u")return ne;Ee&&(st=st.slice(0,-1*Ee*2),ht=ht.slice(0,-1*Ee),dt=dt.slice(0,-1*Ee)),st.push(this.productions_[Ae[1]][0]),ht.push(ke.$),dt.push(ke._$),He=Ct[st[st.length-2]][st[st.length-1]],st.push(He);break;case 3:return!0}}return!0}},Tt=function(){var mt={EOF:1,parseError:function(yt,st){if(this.yy.parser)this.yy.parser.parseError(yt,st);else throw new Error(yt)},setInput:function(ct,yt){return this.yy=yt||this.yy||{},this._input=ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ct=this._input[0];this.yytext+=ct,this.yyleng++,this.offset++,this.match+=ct,this.matched+=ct;var yt=ct.match(/(?:\r\n?|\n).*/g);return yt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ct},unput:function(ct){var yt=ct.length,st=ct.split(/(?:\r\n?|\n)/g);this._input=ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yt),this.offset-=yt;var xt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),st.length-1&&(this.yylineno-=st.length-1);var ht=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:st?(st.length===xt.length?this.yylloc.first_column:0)+xt[xt.length-st.length].length-st[0].length:this.yylloc.first_column-yt},this.options.ranges&&(this.yylloc.range=[ht[0],ht[0]+this.yyleng-yt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ct){this.unput(this.match.slice(ct))},pastInput:function(){var ct=this.matched.substr(0,this.matched.length-this.match.length);return(ct.length>20?"...":"")+ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ct=this.match;return ct.length<20&&(ct+=this._input.substr(0,20-ct.length)),(ct.substr(0,20)+(ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ct=this.pastInput(),yt=new Array(ct.length+1).join("-");return ct+this.upcomingInput()+` +`+yt+"^"},test_match:function(ct,yt){var st,xt,ht;if(this.options.backtrack_lexer&&(ht={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ht.yylloc.range=this.yylloc.range.slice(0))),xt=ct[0].match(/(?:\r\n?|\n).*/g),xt&&(this.yylineno+=xt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xt?xt[xt.length-1].length-xt[xt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ct[0].length},this.yytext+=ct[0],this.match+=ct[0],this.matches=ct,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ct[0].length),this.matched+=ct[0],st=this.performAction.call(this,this.yy,this,yt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),st)return st;if(this._backtrack){for(var dt in ht)this[dt]=ht[dt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ct,yt,st,xt;this._more||(this.yytext="",this.match="");for(var ht=this._currentRules(),dt=0;dtyt[0].length)){if(yt=st,xt=dt,this.options.backtrack_lexer){if(ct=this.test_match(st,ht[dt]),ct!==!1)return ct;if(this._backtrack){yt=!1;continue}else return!1}else if(!this.options.flex)break}return yt?(ct=this.test_match(yt,ht[xt]),ct!==!1?ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var yt=this.next();return yt||this.lex()},begin:function(yt){this.conditionStack.push(yt)},popState:function(){var yt=this.conditionStack.length-1;return yt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(yt){return yt=this.conditionStack.length-1-Math.abs(yt||0),yt>=0?this.conditionStack[yt]:"INITIAL"},pushState:function(yt){this.begin(yt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yt,st,xt,ht){switch(xt){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:break;case 6:break;case 7:return 26;case 8:break;case 9:break;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 20:this.popState();break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};return mt}();ft.lexer=Tt;function kt(){this.yy={}}return kt.prototype=ft,ft.Parser=kt,new kt}();X0t.parser=X0t;const xqe=X0t,cRt=If.pie,AK={sections:{},showData:!1,config:cRt};let LK=AK.sections,Q0t=AK.showData;const kqe=structuredClone(cRt),Eqe={getConfig:()=>structuredClone(kqe),parseDirective:(i,a,f)=>{FW(void 0,i,a,f)},clear:()=>{LK=structuredClone(AK.sections),Q0t=AK.showData,cg()},setDiagramTitle:Nb,getDiagramTitle:hp,setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addSection:(i,a)=>{i=v0(i,De()),LK[i]===void 0&&(LK[i]=a,Wt.debug(`added new section: ${i}, with value: ${a}`))},getSections:()=>LK,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{Q0t=i},getShowData:()=>Q0t},Tqe=i=>` + .pieCircle{ + stroke: ${i.pieStrokeColor}; + stroke-width : ${i.pieStrokeWidth}; + opacity : ${i.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${i.pieOuterStrokeColor}; + stroke-width: ${i.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${i.pieTitleTextSize}; + fill: ${i.pieTitleTextColor}; + font-family: ${i.fontFamily}; + } + .slice { + font-family: ${i.fontFamily}; + fill: ${i.pieSectionTextColor}; + font-size:${i.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${i.pieLegendTextColor}; + font-family: ${i.fontFamily}; + font-size: ${i.pieLegendTextSize}; + } +`,_qe=i=>{const a=Object.entries(i).map(p=>({label:p[0],value:p[1]}));return jEe().value(p=>p.value)(a)},Cqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:xqe,db:Eqe,renderer:{draw:(i,a,f,p)=>{var xt,ht;Wt.debug(`rendering pie chart +`+i);const v=p.db,m=De(),b=HIt(v.getConfig(),m.pie),E=450,C=((ht=(xt=document.getElementById(a))==null?void 0:xt.parentElement)==null?void 0:ht.offsetWidth)??b.useWidth,A=ldt(a);A.attr("viewBox",`0 0 ${C} ${E}`),og(A,E,C,b.useMaxWidth);const P=40,F=18,j=4,R=A.append("g");R.attr("transform","translate("+C/2+","+E/2+")");const{themeVariables:H}=m;let[Y]=zA(H.pieOuterStrokeWidth);Y??(Y=2);const rt=b.textPosition,J=Math.min(C,E)/2-P,it=LA().innerRadius(0).outerRadius(J),ft=LA().innerRadius(J*rt).outerRadius(J*rt);R.append("circle").attr("cx",0).attr("cy",0).attr("r",J+Y/2).attr("class","pieOuterCircle");const Tt=v.getSections(),kt=_qe(Tt),mt=[H.pie1,H.pie2,H.pie3,H.pie4,H.pie5,H.pie6,H.pie7,H.pie8,H.pie9,H.pie10,H.pie11,H.pie12],ct=E1t(mt);R.selectAll("mySlices").data(kt).enter().append("path").attr("d",it).attr("fill",dt=>ct(dt.data.label)).attr("class","pieCircle");let yt=0;Object.keys(Tt).forEach(dt=>{yt+=Tt[dt]}),R.selectAll("mySlices").data(kt).enter().append("text").text(dt=>(dt.data.value/yt*100).toFixed(0)+"%").attr("transform",dt=>"translate("+ft.centroid(dt)+")").style("text-anchor","middle").attr("class","slice"),R.append("text").text(v.getDiagramTitle()).attr("x",0).attr("y",-(E-50)/2).attr("class","pieTitleText");const st=R.selectAll(".legend").data(ct.domain()).enter().append("g").attr("class","legend").attr("transform",(dt,Ct)=>{const tt=F+j,Pt=tt*ct.domain().length/2,pt=12*F,Ft=Ct*tt-Pt;return"translate("+pt+","+Ft+")"});st.append("rect").attr("width",F).attr("height",F).style("fill",ct).style("stroke",ct),st.data(kt).append("text").attr("x",F+j).attr("y",F-j).text(dt=>{const{label:Ct,value:tt}=dt.data;return v.getShowData()?`${Ct} [${tt}]`:Ct})}},styles:Tqe}},Symbol.toStringTag,{value:"Module"}));var Z0t=function(){var i=function(Ae,ne,ke,Ve){for(ke=ke||{},Ve=Ae.length;Ve--;ke[Ae[Ve]]=ne);return ke},a=[1,3],f=[1,5],p=[1,6],v=[1,7],m=[1,8],b=[1,10],E=[1,5,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],C=[1,5,7,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],A=[38,39,40],P=[2,8],F=[1,19],j=[1,23],R=[1,24],H=[1,25],Y=[1,26],rt=[1,27],J=[1,29],it=[1,30],ft=[1,31],Tt=[1,32],kt=[1,33],mt=[1,34],ct=[1,37],yt=[1,38],st=[1,39],xt=[1,40],ht=[1,41],dt=[1,42],Ct=[1,43],tt=[1,44],Pt=[1,45],pt=[1,46],Ft=[1,47],X=[1,48],Rt=[1,49],Bt=[1,52],vt=[1,67],Ot=[1,68],Vt=[5,23,27,38,39,40,50,51,52,53,54,55,56,57,58,59,60,61],qe=[5,7,38,39,40,41],_n={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,directive:6,QUADRANT:7,document:8,line:9,statement:10,axisDetails:11,quadrantDetails:12,points:13,title:14,title_value:15,acc_title:16,acc_title_value:17,acc_descr:18,acc_descr_value:19,acc_descr_multiline_value:20,section:21,text:22,point_start:23,point_x:24,point_y:25,"X-AXIS":26,"AXIS-TEXT-DELIMITER":27,"Y-AXIS":28,QUADRANT_1:29,QUADRANT_2:30,QUADRANT_3:31,QUADRANT_4:32,openDirective:33,typeDirective:34,closeDirective:35,":":36,argDirective:37,NEWLINE:38,SEMI:39,EOF:40,open_directive:41,type_directive:42,arg_directive:43,close_directive:44,alphaNumToken:45,textNoTagsToken:46,STR:47,MD_STR:48,alphaNum:49,PUNCTUATION:50,AMP:51,NUM:52,ALPHA:53,COMMA:54,PLUS:55,EQUALS:56,MULT:57,DOT:58,BRKT:59,UNDERSCORE:60,MINUS:61,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",7:"QUADRANT",14:"title",15:"title_value",16:"acc_title",17:"acc_title_value",18:"acc_descr",19:"acc_descr_value",20:"acc_descr_multiline_value",21:"section",23:"point_start",24:"point_x",25:"point_y",26:"X-AXIS",27:"AXIS-TEXT-DELIMITER",28:"Y-AXIS",29:"QUADRANT_1",30:"QUADRANT_2",31:"QUADRANT_3",32:"QUADRANT_4",36:":",38:"NEWLINE",39:"SEMI",40:"EOF",41:"open_directive",42:"type_directive",43:"arg_directive",44:"close_directive",47:"STR",48:"MD_STR",50:"PUNCTUATION",51:"AMP",52:"NUM",53:"ALPHA",54:"COMMA",55:"PLUS",56:"EQUALS",57:"MULT",58:"DOT",59:"BRKT",60:"UNDERSCORE",61:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[10,0],[10,2],[10,1],[10,1],[10,1],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[13,4],[11,4],[11,3],[11,2],[11,4],[11,3],[11,2],[12,2],[12,2],[12,2],[12,2],[6,3],[6,5],[4,1],[4,1],[4,1],[33,1],[34,1],[37,1],[35,1],[22,1],[22,2],[22,1],[22,1],[49,1],[49,2],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[46,1],[46,1],[46,1]],performAction:function(ne,ke,Ve,Ee,He,Ce,$e){var ye=Ce.length-1;switch(He){case 13:this.$=Ce[ye].trim(),Ee.setDiagramTitle(this.$);break;case 14:this.$=Ce[ye].trim(),Ee.setAccTitle(this.$);break;case 15:case 16:this.$=Ce[ye].trim(),Ee.setAccDescription(this.$);break;case 17:Ee.addSection(Ce[ye].substr(8)),this.$=Ce[ye].substr(8);break;case 19:Ee.addPoint(Ce[ye-3],Ce[ye-1],Ce[ye]);break;case 20:Ee.setXAxisLeftText(Ce[ye-2]),Ee.setXAxisRightText(Ce[ye]);break;case 21:Ce[ye-1].text+=" ⟶ ",Ee.setXAxisLeftText(Ce[ye-1]);break;case 22:Ee.setXAxisLeftText(Ce[ye]);break;case 23:Ee.setYAxisBottomText(Ce[ye-2]),Ee.setYAxisTopText(Ce[ye]);break;case 24:Ce[ye-1].text+=" ⟶ ",Ee.setYAxisBottomText(Ce[ye-1]);break;case 25:Ee.setYAxisBottomText(Ce[ye]);break;case 26:Ee.setQuadrant1Text(Ce[ye]);break;case 27:Ee.setQuadrant2Text(Ce[ye]);break;case 28:Ee.setQuadrant3Text(Ce[ye]);break;case 29:Ee.setQuadrant4Text(Ce[ye]);break;case 35:Ee.parseDirective("%%{","open_directive");break;case 36:Ee.parseDirective(Ce[ye],"type_directive");break;case 37:Ce[ye]=Ce[ye].trim().replace(/'/g,'"'),Ee.parseDirective(Ce[ye],"arg_directive");break;case 38:Ee.parseDirective("}%%","close_directive","quadrantChart");break;case 39:this.$={text:Ce[ye],type:"text"};break;case 40:this.$={text:Ce[ye-1].text+""+Ce[ye],type:Ce[ye-1].type};break;case 41:this.$={text:Ce[ye],type:"text"};break;case 42:this.$={text:Ce[ye],type:"markdown"};break;case 43:this.$=Ce[ye];break;case 44:this.$=Ce[ye-1]+""+Ce[ye];break}},table:[{3:1,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},{1:[3]},{3:11,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},{3:12,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},{3:13,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},i(E,[2,5],{8:14}),i(C,[2,32]),i(C,[2,33]),i(C,[2,34]),{34:15,42:[1,16]},{42:[2,35]},{1:[2,1]},{1:[2,2]},{1:[2,3]},i(A,P,{33:9,9:17,10:18,11:20,12:21,13:22,6:28,22:35,45:36,1:[2,4],5:F,14:j,16:R,18:H,20:Y,21:rt,26:J,28:it,29:ft,30:Tt,31:kt,32:mt,41:b,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),{35:50,36:[1,51],44:Bt},i([36,44],[2,36]),i(E,[2,6]),{4:53,38:p,39:v,40:m},i(A,P,{33:9,11:20,12:21,13:22,6:28,22:35,45:36,10:54,5:F,14:j,16:R,18:H,20:Y,21:rt,26:J,28:it,29:ft,30:Tt,31:kt,32:mt,41:b,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),i(A,[2,10]),i(A,[2,11]),i(A,[2,12]),{15:[1,55]},{17:[1,56]},{19:[1,57]},i(A,[2,16]),i(A,[2,17]),i(A,[2,18]),{22:58,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:59,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:60,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:61,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:62,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:63,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{5:vt,23:[1,64],45:66,46:65,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot},i(Vt,[2,39]),i(Vt,[2,41]),i(Vt,[2,42]),i(Vt,[2,45]),i(Vt,[2,46]),i(Vt,[2,47]),i(Vt,[2,48]),i(Vt,[2,49]),i(Vt,[2,50]),i(Vt,[2,51]),i(Vt,[2,52]),i(Vt,[2,53]),i(Vt,[2,54]),i(Vt,[2,55]),i(qe,[2,30]),{37:69,43:[1,70]},i(qe,[2,38]),i(E,[2,7]),i(A,[2,9]),i(A,[2,13]),i(A,[2,14]),i(A,[2,15]),i(A,[2,22],{46:65,45:66,5:vt,27:[1,71],50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,25],{46:65,45:66,5:vt,27:[1,72],50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,26],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,27],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,28],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,29],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),{24:[1,73]},i(Vt,[2,40]),i(Vt,[2,56]),i(Vt,[2,57]),i(Vt,[2,58]),{35:74,44:Bt},{44:[2,37]},i(A,[2,21],{45:36,22:75,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),i(A,[2,24],{45:36,22:76,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),{25:[1,77]},i(qe,[2,31]),i(A,[2,20],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,23],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,19])],defaultActions:{10:[2,35],11:[2,1],12:[2,2],13:[2,3],70:[2,37]},parseError:function(ne,ke){if(ke.recoverable)this.trace(ne);else{var Ve=new Error(ne);throw Ve.hash=ke,Ve}},parse:function(ne){var ke=this,Ve=[0],Ee=[],He=[null],Ce=[],$e=this.table,ye="",fn=0,Yt=0,Mi=2,qt=1,zi=Ce.slice.call(arguments,1),Se=Object.create(this.lexer),ki={yy:{}};for(var Ri in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ri)&&(ki.yy[Ri]=this.yy[Ri]);Se.setInput(ne,ki.yy),ki.yy.lexer=Se,ki.yy.parser=this,typeof Se.yylloc>"u"&&(Se.yylloc={});var pi=Se.yylloc;Ce.push(pi);var bi=Se.options&&Se.options.ranges;typeof ki.yy.parseError=="function"?this.parseError=ki.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dn(){var Oi;return Oi=Ee.pop()||Se.lex()||qt,typeof Oi!="number"&&(Oi instanceof Array&&(Ee=Oi,Oi=Ee.pop()),Oi=ke.symbols_[Oi]||Oi),Oi}for(var Nn,Wr,Li,is,Ts={},Aa,Xi,Ga,_r;;){if(Wr=Ve[Ve.length-1],this.defaultActions[Wr]?Li=this.defaultActions[Wr]:((Nn===null||typeof Nn>"u")&&(Nn=dn()),Li=$e[Wr]&&$e[Wr][Nn]),typeof Li>"u"||!Li.length||!Li[0]){var qr="";_r=[];for(Aa in $e[Wr])this.terminals_[Aa]&&Aa>Mi&&_r.push("'"+this.terminals_[Aa]+"'");Se.showPosition?qr="Parse error on line "+(fn+1)+`: +`+Se.showPosition()+` +Expecting `+_r.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":qr="Parse error on line "+(fn+1)+": Unexpected "+(Nn==qt?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(qr,{text:Se.match,token:this.terminals_[Nn]||Nn,line:Se.yylineno,loc:pi,expected:_r})}if(Li[0]instanceof Array&&Li.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Wr+", token: "+Nn);switch(Li[0]){case 1:Ve.push(Nn),He.push(Se.yytext),Ce.push(Se.yylloc),Ve.push(Li[1]),Nn=null,Yt=Se.yyleng,ye=Se.yytext,fn=Se.yylineno,pi=Se.yylloc;break;case 2:if(Xi=this.productions_[Li[1]][1],Ts.$=He[He.length-Xi],Ts._$={first_line:Ce[Ce.length-(Xi||1)].first_line,last_line:Ce[Ce.length-1].last_line,first_column:Ce[Ce.length-(Xi||1)].first_column,last_column:Ce[Ce.length-1].last_column},bi&&(Ts._$.range=[Ce[Ce.length-(Xi||1)].range[0],Ce[Ce.length-1].range[1]]),is=this.performAction.apply(Ts,[ye,Yt,fn,ki.yy,Li[1],He,Ce].concat(zi)),typeof is<"u")return is;Xi&&(Ve=Ve.slice(0,-1*Xi*2),He=He.slice(0,-1*Xi),Ce=Ce.slice(0,-1*Xi)),Ve.push(this.productions_[Li[1]][0]),He.push(Ts.$),Ce.push(Ts._$),Ga=$e[Ve[Ve.length-2]][Ve[Ve.length-1]],Ve.push(Ga);break;case 3:return!0}}return!0}},Te=function(){var Ae={EOF:1,parseError:function(ke,Ve){if(this.yy.parser)this.yy.parser.parseError(ke,Ve);else throw new Error(ke)},setInput:function(ne,ke){return this.yy=ke||this.yy||{},this._input=ne,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ne=this._input[0];this.yytext+=ne,this.yyleng++,this.offset++,this.match+=ne,this.matched+=ne;var ke=ne.match(/(?:\r\n?|\n).*/g);return ke?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ne},unput:function(ne){var ke=ne.length,Ve=ne.split(/(?:\r\n?|\n)/g);this._input=ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ke),this.offset-=ke;var Ee=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ve.length-1&&(this.yylineno-=Ve.length-1);var He=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ve?(Ve.length===Ee.length?this.yylloc.first_column:0)+Ee[Ee.length-Ve.length].length-Ve[0].length:this.yylloc.first_column-ke},this.options.ranges&&(this.yylloc.range=[He[0],He[0]+this.yyleng-ke]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ne){this.unput(this.match.slice(ne))},pastInput:function(){var ne=this.matched.substr(0,this.matched.length-this.match.length);return(ne.length>20?"...":"")+ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ne=this.match;return ne.length<20&&(ne+=this._input.substr(0,20-ne.length)),(ne.substr(0,20)+(ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ne=this.pastInput(),ke=new Array(ne.length+1).join("-");return ne+this.upcomingInput()+` +`+ke+"^"},test_match:function(ne,ke){var Ve,Ee,He;if(this.options.backtrack_lexer&&(He={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(He.yylloc.range=this.yylloc.range.slice(0))),Ee=ne[0].match(/(?:\r\n?|\n).*/g),Ee&&(this.yylineno+=Ee.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ee?Ee[Ee.length-1].length-Ee[Ee.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ne[0].length},this.yytext+=ne[0],this.match+=ne[0],this.matches=ne,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ne[0].length),this.matched+=ne[0],Ve=this.performAction.call(this,this.yy,this,ke,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ve)return Ve;if(this._backtrack){for(var Ce in He)this[Ce]=He[Ce];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ne,ke,Ve,Ee;this._more||(this.yytext="",this.match="");for(var He=this._currentRules(),Ce=0;Ceke[0].length)){if(ke=Ve,Ee=Ce,this.options.backtrack_lexer){if(ne=this.test_match(Ve,He[Ce]),ne!==!1)return ne;if(this._backtrack){ke=!1;continue}else return!1}else if(!this.options.flex)break}return ke?(ne=this.test_match(ke,He[Ee]),ne!==!1?ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ke=this.next();return ke||this.lex()},begin:function(ke){this.conditionStack.push(ke)},popState:function(){var ke=this.conditionStack.length-1;return ke>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ke){return ke=this.conditionStack.length-1-Math.abs(ke||0),ke>=0?this.conditionStack[ke]:"INITIAL"},pushState:function(ke){this.begin(ke)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ke,Ve,Ee,He){switch(Ee){case 0:return this.begin("open_directive"),41;case 1:return this.begin("type_directive"),42;case 2:return this.popState(),this.begin("arg_directive"),36;case 3:return this.popState(),this.popState(),44;case 4:return 43;case 5:break;case 6:break;case 7:return 38;case 8:break;case 9:return this.begin("title"),14;case 10:return this.popState(),"title_value";case 11:return this.begin("acc_title"),16;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),18;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 26;case 19:return 28;case 20:return 27;case 21:return 29;case 22:return 30;case 23:return 31;case 24:return 32;case 25:this.begin("md_string");break;case 26:return"MD_STR";case 27:this.popState();break;case 28:this.begin("string");break;case 29:this.popState();break;case 30:return"STR";case 31:return this.begin("point_start"),23;case 32:return this.begin("point_x"),24;case 33:this.popState();break;case 34:this.popState(),this.begin("point_y");break;case 35:return this.popState(),25;case 36:return 7;case 37:return 53;case 38:return"COLON";case 39:return 55;case 40:return 54;case 41:return 56;case 42:return 56;case 43:return 57;case 44:return 59;case 45:return 60;case 46:return 58;case 47:return 51;case 48:return 61;case 49:return 52;case 50:return 5;case 51:return 39;case 52:return 50;case 53:return 40}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{point_y:{rules:[35],inclusive:!1},point_x:{rules:[34],inclusive:!1},point_start:{rules:[32,33],inclusive:!1},acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[10],inclusive:!1},md_string:{rules:[26,27],inclusive:!1},string:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,11,13,15,18,19,20,21,22,23,24,25,28,31,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],inclusive:!0}}};return Ae}();_n.lexer=Te;function Wn(){this.yy={}}return Wn.prototype=_n,_n.Parser=Wn,new Wn}();Z0t.parser=Z0t;const Sqe=Z0t,pg=JDt();class Aqe{constructor(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){var a,f,p,v,m,b,E,C,A,P,F,j,R,H,Y,rt,J,it;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((a=If.quadrantChart)==null?void 0:a.chartWidth)||500,chartWidth:((f=If.quadrantChart)==null?void 0:f.chartHeight)||500,titlePadding:((p=If.quadrantChart)==null?void 0:p.titlePadding)||10,titleFontSize:((v=If.quadrantChart)==null?void 0:v.titleFontSize)||20,quadrantPadding:((m=If.quadrantChart)==null?void 0:m.quadrantPadding)||5,xAxisLabelPadding:((b=If.quadrantChart)==null?void 0:b.xAxisLabelPadding)||5,yAxisLabelPadding:((E=If.quadrantChart)==null?void 0:E.yAxisLabelPadding)||5,xAxisLabelFontSize:((C=If.quadrantChart)==null?void 0:C.xAxisLabelFontSize)||16,yAxisLabelFontSize:((A=If.quadrantChart)==null?void 0:A.yAxisLabelFontSize)||16,quadrantLabelFontSize:((P=If.quadrantChart)==null?void 0:P.quadrantLabelFontSize)||16,quadrantTextTopPadding:((F=If.quadrantChart)==null?void 0:F.quadrantTextTopPadding)||5,pointTextPadding:((j=If.quadrantChart)==null?void 0:j.pointTextPadding)||5,pointLabelFontSize:((R=If.quadrantChart)==null?void 0:R.pointLabelFontSize)||12,pointRadius:((H=If.quadrantChart)==null?void 0:H.pointRadius)||5,xAxisPosition:((Y=If.quadrantChart)==null?void 0:Y.xAxisPosition)||"top",yAxisPosition:((rt=If.quadrantChart)==null?void 0:rt.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:((J=If.quadrantChart)==null?void 0:J.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:((it=If.quadrantChart)==null?void 0:it.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:pg.quadrant1Fill,quadrant2Fill:pg.quadrant2Fill,quadrant3Fill:pg.quadrant3Fill,quadrant4Fill:pg.quadrant4Fill,quadrant1TextFill:pg.quadrant1TextFill,quadrant2TextFill:pg.quadrant2TextFill,quadrant3TextFill:pg.quadrant3TextFill,quadrant4TextFill:pg.quadrant4TextFill,quadrantPointFill:pg.quadrantPointFill,quadrantPointTextFill:pg.quadrantPointTextFill,quadrantXAxisTextFill:pg.quadrantXAxisTextFill,quadrantYAxisTextFill:pg.quadrantYAxisTextFill,quadrantTitleFill:pg.quadrantTitleFill,quadrantInternalBorderStrokeFill:pg.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:pg.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),Wt.info("clear called")}setData(a){this.data={...this.data,...a}}addPoints(a){this.data.points=[...a,...this.data.points]}setConfig(a){Wt.trace("setConfig called with: ",a),this.config={...this.config,...a}}setThemeConfig(a){Wt.trace("setThemeConfig called with: ",a),this.themeConfig={...this.themeConfig,...a}}calculateSpace(a,f,p,v){const m=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,b={top:a==="top"&&f?m:0,bottom:a==="bottom"&&f?m:0},E=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,C={left:this.config.yAxisPosition==="left"&&p?E:0,right:this.config.yAxisPosition==="right"&&p?E:0},A=this.config.titleFontSize+this.config.titlePadding*2,P={top:v?A:0},F=this.config.quadrantPadding+C.left,j=this.config.quadrantPadding+b.top+P.top,R=this.config.chartWidth-this.config.quadrantPadding*2-C.left-C.right,H=this.config.chartHeight-this.config.quadrantPadding*2-b.top-b.bottom-P.top,Y=R/2,rt=H/2;return{xAxisSpace:b,yAxisSpace:C,titleSpace:P,quadrantSpace:{quadrantLeft:F,quadrantTop:j,quadrantWidth:R,quadrantHalfWidth:Y,quadrantHeight:H,quadrantHalfHeight:rt}}}getAxisLabels(a,f,p,v){const{quadrantSpace:m,titleSpace:b}=v,{quadrantHalfHeight:E,quadrantHeight:C,quadrantLeft:A,quadrantHalfWidth:P,quadrantTop:F,quadrantWidth:j}=m,R=this.data.points.length===0,H=[];return this.data.xAxisLeftText&&f&&H.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:A+(R?P/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+F+C+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&f&&H.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:A+P+(R?P/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+F+C+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&p&&H.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+A+j+this.config.quadrantPadding,y:F+C-(R?E/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&p&&H.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+A+j+this.config.quadrantPadding,y:F+E-(R?E/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:-90}),H}getQuadrants(a){const{quadrantSpace:f}=a,{quadrantHalfHeight:p,quadrantLeft:v,quadrantHalfWidth:m,quadrantTop:b}=f,E=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v+m,y:b,width:m,height:p,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v,y:b,width:m,height:p,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v,y:b+p,width:m,height:p,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v+m,y:b+p,width:m,height:p,fill:this.themeConfig.quadrant4Fill}];for(const C of E)C.text.x=C.x+C.width/2,this.data.points.length===0?(C.text.y=C.y+C.height/2,C.text.horizontalPos="middle"):(C.text.y=C.y+this.config.quadrantTextTopPadding,C.text.horizontalPos="top");return E}getQuadrantPoints(a){const{quadrantSpace:f}=a,{quadrantHeight:p,quadrantLeft:v,quadrantTop:m,quadrantWidth:b}=f,E=BU().domain([0,1]).range([v,b+v]),C=BU().domain([0,1]).range([p+m,m]);return this.data.points.map(P=>({x:E(P.x),y:C(P.y),fill:this.themeConfig.quadrantPointFill,radius:this.config.pointRadius,text:{text:P.text,fill:this.themeConfig.quadrantPointTextFill,x:E(P.x),y:C(P.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0}}))}getBorders(a){const f=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:p}=a,{quadrantHalfHeight:v,quadrantHeight:m,quadrantLeft:b,quadrantHalfWidth:E,quadrantTop:C,quadrantWidth:A}=p;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-f,y1:C,x2:b+A+f,y2:C},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b+A,y1:C+f,x2:b+A,y2:C+m-f},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-f,y1:C+m,x2:b+A+f,y2:C+m},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b,y1:C+f,x2:b,y2:C+m-f},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+E,y1:C+f,x2:b+E,y2:C+m-f},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+f,y1:C+v,x2:b+A-f,y2:C+v}]}getTitle(a){if(a)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const a=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),f=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),p=this.config.showTitle&&!!this.data.titleText,v=this.data.points.length>0?"bottom":this.config.xAxisPosition,m=this.calculateSpace(v,a,f,p);return{points:this.getQuadrantPoints(m),quadrants:this.getQuadrants(m),axisLabels:this.getAxisLabels(v,a,f,m),borderLines:this.getBorders(m),title:this.getTitle(p)}}}const Lqe=De();function D5(i){return v0(i.trim(),Lqe)}const k0=new Aqe;function Mqe(i){k0.setData({quadrant1Text:D5(i.text)})}function Dqe(i){k0.setData({quadrant2Text:D5(i.text)})}function Iqe(i){k0.setData({quadrant3Text:D5(i.text)})}function Oqe(i){k0.setData({quadrant4Text:D5(i.text)})}function Nqe(i){k0.setData({xAxisLeftText:D5(i.text)})}function Pqe(i){k0.setData({xAxisRightText:D5(i.text)})}function Fqe(i){k0.setData({yAxisTopText:D5(i.text)})}function Bqe(i){k0.setData({yAxisBottomText:D5(i.text)})}function Rqe(i,a,f){k0.addPoints([{x:a,y:f,text:D5(i.text)}])}function jqe(i){k0.setConfig({chartWidth:i})}function $qe(i){k0.setConfig({chartHeight:i})}function zqe(){const i=De(),{themeVariables:a,quadrantChart:f}=i;return f&&k0.setConfig(f),k0.setThemeConfig({quadrant1Fill:a.quadrant1Fill,quadrant2Fill:a.quadrant2Fill,quadrant3Fill:a.quadrant3Fill,quadrant4Fill:a.quadrant4Fill,quadrant1TextFill:a.quadrant1TextFill,quadrant2TextFill:a.quadrant2TextFill,quadrant3TextFill:a.quadrant3TextFill,quadrant4TextFill:a.quadrant4TextFill,quadrantPointFill:a.quadrantPointFill,quadrantPointTextFill:a.quadrantPointTextFill,quadrantXAxisTextFill:a.quadrantXAxisTextFill,quadrantYAxisTextFill:a.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:a.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:a.quadrantInternalBorderStrokeFill,quadrantTitleFill:a.quadrantTitleFill}),k0.setData({titleText:hp()}),k0.build()}const qqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Sqe,db:{setWidth:jqe,setHeight:$qe,setQuadrant1Text:Mqe,setQuadrant2Text:Dqe,setQuadrant3Text:Iqe,setQuadrant4Text:Oqe,setXAxisLeftText:Nqe,setXAxisRightText:Pqe,setYAxisTopText:Fqe,setYAxisBottomText:Bqe,addPoint:Rqe,getQuadrantData:zqe,parseDirective:function(i,a,f){J1.parseDirective(this,i,a,f)},clear:function(){k0.clear(),cg()},setAccTitle:m0,getAccTitle:ug,setDiagramTitle:Nb,getDiagramTitle:hp,getAccDescription:hg,setAccDescription:lg},renderer:{draw:(i,a,f,p)=>{var yt,st,xt;function v(ht){return ht==="top"?"hanging":"middle"}function m(ht){return ht==="left"?"start":"middle"}function b(ht){return`translate(${ht.x}, ${ht.y}) rotate(${ht.rotation||0})`}const E=De();Wt.debug(`Rendering quadrant chart +`+i);const C=E.securityLevel;let A;C==="sandbox"&&(A=xr("#i"+a));const F=xr(C==="sandbox"?A.nodes()[0].contentDocument.body:"body").select(`[id="${a}"]`),j=F.append("g").attr("class","main"),R=((yt=E.quadrantChart)==null?void 0:yt.chartWidth)||500,H=((st=E.quadrantChart)==null?void 0:st.chartHeight)||500;og(F,H,R,((xt=E.quadrantChart)==null?void 0:xt.useMaxWidth)||!0),F.attr("viewBox","0 0 "+R+" "+H),p.db.setHeight(H),p.db.setWidth(R);const Y=p.db.getQuadrantData(),rt=j.append("g").attr("class","quadrants"),J=j.append("g").attr("class","border"),it=j.append("g").attr("class","data-points"),ft=j.append("g").attr("class","labels"),Tt=j.append("g").attr("class","title");Y.title&&Tt.append("text").attr("x",0).attr("y",0).attr("fill",Y.title.fill).attr("font-size",Y.title.fontSize).attr("dominant-baseline",v(Y.title.horizontalPos)).attr("text-anchor",m(Y.title.verticalPos)).attr("transform",b(Y.title)).text(Y.title.text),Y.borderLines&&J.selectAll("line").data(Y.borderLines).enter().append("line").attr("x1",ht=>ht.x1).attr("y1",ht=>ht.y1).attr("x2",ht=>ht.x2).attr("y2",ht=>ht.y2).style("stroke",ht=>ht.strokeFill).style("stroke-width",ht=>ht.strokeWidth);const kt=rt.selectAll("g.quadrant").data(Y.quadrants).enter().append("g").attr("class","quadrant");kt.append("rect").attr("x",ht=>ht.x).attr("y",ht=>ht.y).attr("width",ht=>ht.width).attr("height",ht=>ht.height).attr("fill",ht=>ht.fill),kt.append("text").attr("x",0).attr("y",0).attr("fill",ht=>ht.text.fill).attr("font-size",ht=>ht.text.fontSize).attr("dominant-baseline",ht=>v(ht.text.horizontalPos)).attr("text-anchor",ht=>m(ht.text.verticalPos)).attr("transform",ht=>b(ht.text)).text(ht=>ht.text.text),ft.selectAll("g.label").data(Y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(ht=>ht.text).attr("fill",ht=>ht.fill).attr("font-size",ht=>ht.fontSize).attr("dominant-baseline",ht=>v(ht.horizontalPos)).attr("text-anchor",ht=>m(ht.verticalPos)).attr("transform",ht=>b(ht));const ct=it.selectAll("g.data-point").data(Y.points).enter().append("g").attr("class","data-point");ct.append("circle").attr("cx",ht=>ht.x).attr("cy",ht=>ht.y).attr("r",ht=>ht.radius).attr("fill",ht=>ht.fill),ct.append("text").attr("x",0).attr("y",0).text(ht=>ht.text.text).attr("fill",ht=>ht.text.fill).attr("font-size",ht=>ht.text.fontSize).attr("dominant-baseline",ht=>v(ht.text.horizontalPos)).attr("text-anchor",ht=>m(ht.text.verticalPos)).attr("transform",ht=>b(ht.text))}},styles:()=>""}},Symbol.toStringTag,{value:"Module"}));var J0t=function(){var i=function(Wn,Ae,ne,ke){for(ne=ne||{},ke=Wn.length;ke--;ne[Wn[ke]]=Ae);return ne},a=[1,3],f=[1,5],p=[1,6],v=[1,7],m=[1,8],b=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],E=[1,22],C=[2,13],A=[1,26],P=[1,27],F=[1,28],j=[1,29],R=[1,30],H=[1,31],Y=[1,24],rt=[1,32],J=[1,33],it=[1,36],ft=[71,72],Tt=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],kt=[1,56],mt=[1,57],ct=[1,58],yt=[1,59],st=[1,60],xt=[1,61],ht=[1,62],dt=[62,63],Ct=[1,74],tt=[1,70],Pt=[1,71],pt=[1,72],Ft=[1,73],X=[1,75],Rt=[1,79],Bt=[1,80],vt=[1,77],Ot=[1,78],Vt=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],qe={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(Ae,ne,ke,Ve,Ee,He,Ce){var $e=He.length-1;switch(Ee){case 6:this.$=He[$e].trim(),Ve.setAccTitle(this.$);break;case 7:case 8:this.$=He[$e].trim(),Ve.setAccDescription(this.$);break;case 9:Ve.parseDirective("%%{","open_directive");break;case 10:Ve.parseDirective(He[$e],"type_directive");break;case 11:He[$e]=He[$e].trim().replace(/'/g,'"'),Ve.parseDirective(He[$e],"arg_directive");break;case 12:Ve.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:Ve.addRequirement(He[$e-3],He[$e-4]);break;case 20:Ve.setNewReqId(He[$e-2]);break;case 21:Ve.setNewReqText(He[$e-2]);break;case 22:Ve.setNewReqRisk(He[$e-2]);break;case 23:Ve.setNewReqVerifyMethod(He[$e-2]);break;case 26:this.$=Ve.RequirementType.REQUIREMENT;break;case 27:this.$=Ve.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=Ve.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=Ve.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=Ve.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=Ve.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=Ve.RiskLevel.LOW_RISK;break;case 33:this.$=Ve.RiskLevel.MED_RISK;break;case 34:this.$=Ve.RiskLevel.HIGH_RISK;break;case 35:this.$=Ve.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=Ve.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=Ve.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=Ve.VerifyType.VERIFY_TEST;break;case 39:Ve.addElement(He[$e-3]);break;case 40:Ve.setNewElementType(He[$e-2]);break;case 41:Ve.setNewElementDocRef(He[$e-2]);break;case 44:Ve.addRelationship(He[$e-2],He[$e],He[$e-4]);break;case 45:Ve.addRelationship(He[$e-2],He[$e-4],He[$e]);break;case 46:this.$=Ve.Relationships.CONTAINS;break;case 47:this.$=Ve.Relationships.COPIES;break;case 48:this.$=Ve.Relationships.DERIVES;break;case 49:this.$=Ve.Relationships.SATISFIES;break;case 50:this.$=Ve.Relationships.VERIFIES;break;case 51:this.$=Ve.Relationships.REFINES;break;case 52:this.$=Ve.Relationships.TRACES;break}},table:[{3:1,4:2,6:a,9:4,14:f,16:p,18:v,19:m},{1:[3]},{3:10,4:2,5:[1,9],6:a,9:4,14:f,16:p,18:v,19:m},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},i(b,[2,8]),{20:[2,9]},{3:16,4:2,6:a,9:4,14:f,16:p,18:v,19:m},{1:[2,2]},{4:21,5:E,7:17,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{11:34,12:[1,35],22:it},i([12,22],[2,10]),i(b,[2,6]),i(b,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:E,7:38,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:39,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:40,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:41,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:42,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},i(ft,[2,26]),i(ft,[2,27]),i(ft,[2,28]),i(ft,[2,29]),i(ft,[2,30]),i(ft,[2,31]),i(Tt,[2,55]),i(Tt,[2,56]),i(b,[2,4]),{13:51,21:[1,52]},i(b,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:kt,65:mt,66:ct,67:yt,68:st,69:xt,70:ht},{61:63,64:kt,65:mt,66:ct,67:yt,68:st,69:xt,70:ht},{11:64,22:it},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},i(dt,[2,46]),i(dt,[2,47]),i(dt,[2,48]),i(dt,[2,49]),i(dt,[2,50]),i(dt,[2,51]),i(dt,[2,52]),{63:[1,68]},i(b,[2,5]),{5:Ct,29:69,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Rt,39:Bt,55:76,56:vt,58:Ot},{32:81,71:rt,72:J},{32:82,71:rt,72:J},i(Vt,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:Ct,29:87,30:tt,33:Pt,35:pt,37:Ft,39:X},i(Vt,[2,25]),i(Vt,[2,39]),{31:[1,88]},{31:[1,89]},{5:Rt,39:Bt,55:90,56:vt,58:Ot},i(Vt,[2,43]),i(Vt,[2,44]),i(Vt,[2,45]),{32:91,71:rt,72:J},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},i(Vt,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},i(Vt,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:Ct,29:116,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Ct,29:117,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Ct,29:118,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Ct,29:119,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Rt,39:Bt,55:120,56:vt,58:Ot},{5:Rt,39:Bt,55:121,56:vt,58:Ot},i(Vt,[2,20]),i(Vt,[2,21]),i(Vt,[2,22]),i(Vt,[2,23]),i(Vt,[2,40]),i(Vt,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(Ae,ne){if(ne.recoverable)this.trace(Ae);else{var ke=new Error(Ae);throw ke.hash=ne,ke}},parse:function(Ae){var ne=this,ke=[0],Ve=[],Ee=[null],He=[],Ce=this.table,$e="",ye=0,fn=0,Yt=2,Mi=1,qt=He.slice.call(arguments,1),zi=Object.create(this.lexer),Se={yy:{}};for(var ki in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ki)&&(Se.yy[ki]=this.yy[ki]);zi.setInput(Ae,Se.yy),Se.yy.lexer=zi,Se.yy.parser=this,typeof zi.yylloc>"u"&&(zi.yylloc={});var Ri=zi.yylloc;He.push(Ri);var pi=zi.options&&zi.options.ranges;typeof Se.yy.parseError=="function"?this.parseError=Se.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function bi(){var qr;return qr=Ve.pop()||zi.lex()||Mi,typeof qr!="number"&&(qr instanceof Array&&(Ve=qr,qr=Ve.pop()),qr=ne.symbols_[qr]||qr),qr}for(var dn,Nn,Wr,Li,is={},Ts,Aa,Xi,Ga;;){if(Nn=ke[ke.length-1],this.defaultActions[Nn]?Wr=this.defaultActions[Nn]:((dn===null||typeof dn>"u")&&(dn=bi()),Wr=Ce[Nn]&&Ce[Nn][dn]),typeof Wr>"u"||!Wr.length||!Wr[0]){var _r="";Ga=[];for(Ts in Ce[Nn])this.terminals_[Ts]&&Ts>Yt&&Ga.push("'"+this.terminals_[Ts]+"'");zi.showPosition?_r="Parse error on line "+(ye+1)+`: +`+zi.showPosition()+` +Expecting `+Ga.join(", ")+", got '"+(this.terminals_[dn]||dn)+"'":_r="Parse error on line "+(ye+1)+": Unexpected "+(dn==Mi?"end of input":"'"+(this.terminals_[dn]||dn)+"'"),this.parseError(_r,{text:zi.match,token:this.terminals_[dn]||dn,line:zi.yylineno,loc:Ri,expected:Ga})}if(Wr[0]instanceof Array&&Wr.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Nn+", token: "+dn);switch(Wr[0]){case 1:ke.push(dn),Ee.push(zi.yytext),He.push(zi.yylloc),ke.push(Wr[1]),dn=null,fn=zi.yyleng,$e=zi.yytext,ye=zi.yylineno,Ri=zi.yylloc;break;case 2:if(Aa=this.productions_[Wr[1]][1],is.$=Ee[Ee.length-Aa],is._$={first_line:He[He.length-(Aa||1)].first_line,last_line:He[He.length-1].last_line,first_column:He[He.length-(Aa||1)].first_column,last_column:He[He.length-1].last_column},pi&&(is._$.range=[He[He.length-(Aa||1)].range[0],He[He.length-1].range[1]]),Li=this.performAction.apply(is,[$e,fn,ye,Se.yy,Wr[1],Ee,He].concat(qt)),typeof Li<"u")return Li;Aa&&(ke=ke.slice(0,-1*Aa*2),Ee=Ee.slice(0,-1*Aa),He=He.slice(0,-1*Aa)),ke.push(this.productions_[Wr[1]][0]),Ee.push(is.$),He.push(is._$),Xi=Ce[ke[ke.length-2]][ke[ke.length-1]],ke.push(Xi);break;case 3:return!0}}return!0}},_n=function(){var Wn={EOF:1,parseError:function(ne,ke){if(this.yy.parser)this.yy.parser.parseError(ne,ke);else throw new Error(ne)},setInput:function(Ae,ne){return this.yy=ne||this.yy||{},this._input=Ae,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ae=this._input[0];this.yytext+=Ae,this.yyleng++,this.offset++,this.match+=Ae,this.matched+=Ae;var ne=Ae.match(/(?:\r\n?|\n).*/g);return ne?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ae},unput:function(Ae){var ne=Ae.length,ke=Ae.split(/(?:\r\n?|\n)/g);this._input=Ae+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ne),this.offset-=ne;var Ve=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ke.length-1&&(this.yylineno-=ke.length-1);var Ee=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ke?(ke.length===Ve.length?this.yylloc.first_column:0)+Ve[Ve.length-ke.length].length-ke[0].length:this.yylloc.first_column-ne},this.options.ranges&&(this.yylloc.range=[Ee[0],Ee[0]+this.yyleng-ne]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ae){this.unput(this.match.slice(Ae))},pastInput:function(){var Ae=this.matched.substr(0,this.matched.length-this.match.length);return(Ae.length>20?"...":"")+Ae.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ae=this.match;return Ae.length<20&&(Ae+=this._input.substr(0,20-Ae.length)),(Ae.substr(0,20)+(Ae.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ae=this.pastInput(),ne=new Array(Ae.length+1).join("-");return Ae+this.upcomingInput()+` +`+ne+"^"},test_match:function(Ae,ne){var ke,Ve,Ee;if(this.options.backtrack_lexer&&(Ee={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ee.yylloc.range=this.yylloc.range.slice(0))),Ve=Ae[0].match(/(?:\r\n?|\n).*/g),Ve&&(this.yylineno+=Ve.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ve?Ve[Ve.length-1].length-Ve[Ve.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ae[0].length},this.yytext+=Ae[0],this.match+=Ae[0],this.matches=Ae,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ae[0].length),this.matched+=Ae[0],ke=this.performAction.call(this,this.yy,this,ne,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ke)return ke;if(this._backtrack){for(var He in Ee)this[He]=Ee[He];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ae,ne,ke,Ve;this._more||(this.yytext="",this.match="");for(var Ee=this._currentRules(),He=0;Hene[0].length)){if(ne=ke,Ve=He,this.options.backtrack_lexer){if(Ae=this.test_match(ke,Ee[He]),Ae!==!1)return Ae;if(this._backtrack){ne=!1;continue}else return!1}else if(!this.options.flex)break}return ne?(Ae=this.test_match(ne,Ee[Ve]),Ae!==!1?Ae:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ne=this.next();return ne||this.lex()},begin:function(ne){this.conditionStack.push(ne)},popState:function(){var ne=this.conditionStack.length-1;return ne>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ne){return ne=this.conditionStack.length-1-Math.abs(ne||0),ne>=0?this.conditionStack[ne]:"INITIAL"},pushState:function(ne){this.begin(ne)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ne,ke,Ve,Ee){switch(Ve){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:break;case 15:break;case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 53:this.popState();break;case 54:return"qString";case 55:return ke.yytext=ke.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,55],inclusive:!0}}};return Wn}();qe.lexer=_n;function Te(){this.yy={}}return Te.prototype=qe,qe.Parser=Te,new Te}();J0t.parser=J0t;const Hqe=J0t;let tgt=[],pp={},DP={},uk={},IP={};const Vqe={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},parseDirective:function(i,a,f){J1.parseDirective(this,i,a,f)},getConfig:()=>De().req,addRequirement:(i,a)=>(DP[i]===void 0&&(DP[i]={name:i,type:a,id:pp.id,text:pp.text,risk:pp.risk,verifyMethod:pp.verifyMethod}),pp={},DP[i]),getRequirements:()=>DP,setNewReqId:i=>{pp!==void 0&&(pp.id=i)},setNewReqText:i=>{pp!==void 0&&(pp.text=i)},setNewReqRisk:i=>{pp!==void 0&&(pp.risk=i)},setNewReqVerifyMethod:i=>{pp!==void 0&&(pp.verifyMethod=i)},setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addElement:i=>(IP[i]===void 0&&(IP[i]={name:i,type:uk.type,docRef:uk.docRef},Wt.info("Added new requirement: ",i)),uk={},IP[i]),getElements:()=>IP,setNewElementType:i=>{uk!==void 0&&(uk.type=i)},setNewElementDocRef:i=>{uk!==void 0&&(uk.docRef=i)},addRelationship:(i,a,f)=>{tgt.push({type:i,src:a,dst:f})},getRelationships:()=>tgt,clear:()=>{tgt=[],pp={},DP={},uk={},IP={},cg()}},Gqe=i=>` + + marker { + fill: ${i.relationColor}; + stroke: ${i.relationColor}; + } + + marker.cross { + stroke: ${i.lineColor}; + } + + svg { + font-family: ${i.fontFamily}; + font-size: ${i.fontSize}; + } + + .reqBox { + fill: ${i.requirementBackground}; + fill-opacity: 1.0; + stroke: ${i.requirementBorderColor}; + stroke-width: ${i.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${i.requirementTextColor}; + } + .reqLabelBox { + fill: ${i.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${i.requirementBorderColor}; + stroke-width: ${i.requirementBorderSize}; + } + .relationshipLine { + stroke: ${i.relationColor}; + stroke-width: 1; + } + .relationshipLabel { + fill: ${i.relationLabelColor}; + } + +`,egt={CONTAINS:"contains",ARROW:"arrow"},uRt={ReqMarkers:egt,insertLineEndings:(i,a)=>{let f=i.append("defs").append("marker").attr("id",egt.CONTAINS+"_line_ending").attr("refX",0).attr("refY",a.line_height/2).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("g");f.append("circle").attr("cx",a.line_height/2).attr("cy",a.line_height/2).attr("r",a.line_height/2).attr("fill","none"),f.append("line").attr("x1",0).attr("x2",a.line_height).attr("y1",a.line_height/2).attr("y2",a.line_height/2).attr("stroke-width",1),f.append("line").attr("y1",0).attr("y2",a.line_height).attr("x1",a.line_height/2).attr("x2",a.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",egt.ARROW+"_line_ending").attr("refX",a.line_height).attr("refY",.5*a.line_height).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("path").attr("d",`M0,0 + L${a.line_height},${a.line_height/2} + M${a.line_height},${a.line_height/2} + L0,${a.line_height}`).attr("stroke-width",1)}};let _h={},lRt=0;const hRt=(i,a)=>i.insert("rect","#"+a).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",_h.rect_min_width+"px").attr("height",_h.rect_min_height+"px"),fRt=(i,a,f)=>{let p=_h.rect_min_width/2,v=i.append("text").attr("class","req reqLabel reqTitle").attr("id",a).attr("x",p).attr("y",_h.rect_padding).attr("dominant-baseline","hanging"),m=0;f.forEach(A=>{m==0?v.append("tspan").attr("text-anchor","middle").attr("x",_h.rect_min_width/2).attr("dy",0).text(A):v.append("tspan").attr("text-anchor","middle").attr("x",_h.rect_min_width/2).attr("dy",_h.line_height*.75).text(A),m++});let b=1.5*_h.rect_padding,E=m*_h.line_height*.75,C=b+E;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",_h.rect_min_width).attr("y1",C).attr("y2",C),{titleNode:v,y:C}},dRt=(i,a,f,p)=>{let v=i.append("text").attr("class","req reqLabel").attr("id",a).attr("x",_h.rect_padding).attr("y",p).attr("dominant-baseline","hanging"),m=0;const b=30;let E=[];return f.forEach(C=>{let A=C.length;for(;A>b&&m<3;){let P=C.substring(0,b);C=C.substring(b,C.length),A=C.length,E[E.length]=P,m++}if(m==3){let P=E[E.length-1];E[E.length-1]=P.substring(0,P.length-4)+"..."}else E[E.length]=C;m=0}),E.forEach(C=>{v.append("tspan").attr("x",_h.rect_padding).attr("dy",_h.line_height).text(C)}),v},Uqe=(i,a,f,p)=>{const v=a.node().getTotalLength(),m=a.node().getPointAtLength(v*.5),b="rel"+lRt;lRt++;const C=i.append("text").attr("class","req relationshipLabel").attr("id",b).attr("x",m.x).attr("y",m.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(p).node().getBBox();i.insert("rect","#"+b).attr("class","req reqLabelBox").attr("x",m.x-C.width/2).attr("y",m.y-C.height/2).attr("width",C.width).attr("height",C.height).attr("fill","white").attr("fill-opacity","85%")},Wqe=function(i,a,f,p,v){const m=f.edge(cL(a.src),cL(a.dst)),b=YE().x(function(C){return C.x}).y(function(C){return C.y}),E=i.insert("path","#"+p).attr("class","er relationshipLine").attr("d",b(m.points)).attr("fill","none");a.type==v.db.Relationships.CONTAINS?E.attr("marker-start","url("+ui.getUrl(_h.arrowMarkerAbsolute)+"#"+a.type+"_line_ending)"):(E.attr("stroke-dasharray","10,7"),E.attr("marker-end","url("+ui.getUrl(_h.arrowMarkerAbsolute)+"#"+uRt.ReqMarkers.ARROW+"_line_ending)")),Uqe(i,E,_h,`<<${a.type}>>`)},Kqe=(i,a,f)=>{Object.keys(i).forEach(p=>{let v=i[p];p=cL(p),Wt.info("Added new requirement: ",p);const m=f.append("g").attr("id",p),b="req-"+p,E=hRt(m,b);let C=fRt(m,p+"_title",[`<<${v.type}>>`,`${v.name}`]);dRt(m,p+"_body",[`Id: ${v.id}`,`Text: ${v.text}`,`Risk: ${v.risk}`,`Verification: ${v.verifyMethod}`],C.y);const A=E.node().getBBox();a.setNode(p,{width:A.width,height:A.height,shape:"rect",id:p})})},Yqe=(i,a,f)=>{Object.keys(i).forEach(p=>{let v=i[p];const m=cL(p),b=f.append("g").attr("id",m),E="element-"+m,C=hRt(b,E);let A=fRt(b,E+"_title",["<>",`${p}`]);dRt(b,E+"_body",[`Type: ${v.type||"Not Specified"}`,`Doc Ref: ${v.docRef||"None"}`],A.y);const P=C.node().getBBox();a.setNode(m,{width:P.width,height:P.height,shape:"rect",id:m})})},Xqe=(i,a)=>(i.forEach(function(f){let p=cL(f.src),v=cL(f.dst);a.setEdge(p,v,{relationship:f})}),i),Qqe=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&(i.select("#"+f),i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )"))})},cL=i=>i.replace(/\s/g,"").replace(/\./g,"_"),Zqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Hqe,db:Vqe,renderer:{draw:(i,a,f,p)=>{_h=De().requirement;const v=_h.securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const E=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);uRt.insertLineEndings(E,_h);const C=new l1({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:_h.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let A=p.db.getRequirements(),P=p.db.getElements(),F=p.db.getRelationships();Kqe(A,C,E),Yqe(P,C,E),Xqe(F,C),nL(C),Qqe(E,C),F.forEach(function(rt){Wqe(E,rt,C,a,p)});const j=_h.rect_padding,R=E.node().getBBox(),H=R.width+j*2,Y=R.height+j*2;og(E,Y,H,_h.useMaxWidth),E.attr("viewBox",`${R.x-j} ${R.y-j} ${H} ${Y}`)}},styles:Gqe}},Symbol.toStringTag,{value:"Module"}));var ngt=function(){var i=function(Ee,He,Ce,$e){for(Ce=Ce||{},$e=Ee.length;$e--;Ce[Ee[$e]]=He);return Ce},a=[1,2],f=[1,3],p=[1,5],v=[1,7],m=[2,5],b=[1,15],E=[1,17],C=[1,19],A=[1,20],P=[1,22],F=[1,23],j=[1,24],R=[1,30],H=[1,31],Y=[1,32],rt=[1,33],J=[1,34],it=[1,35],ft=[1,36],Tt=[1,37],kt=[1,38],mt=[1,39],ct=[1,40],yt=[1,41],st=[1,42],xt=[1,44],ht=[1,45],dt=[1,46],Ct=[1,48],tt=[1,49],Pt=[1,50],pt=[1,51],Ft=[1,52],X=[1,53],Rt=[1,56],Bt=[1,4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],vt=[4,5,22,56,58,59],Ot=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],Vt=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,55,56,58,59,60,65,66,67,68,76,86],qe=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,54,56,58,59,60,65,66,67,68,76,86],_n=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,56,58,59,60,65,66,67,68,76,86],Te=[74,75,76],Wn=[1,133],Ae=[1,4,5,7,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],ne={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,box_section:11,box_line:12,participant_statement:13,openDirective:14,typeDirective:15,closeDirective:16,":":17,argDirective:18,create:19,box:20,restOfLine:21,end:22,signal:23,autonumber:24,NUM:25,off:26,activate:27,actor:28,deactivate:29,note_statement:30,links_statement:31,link_statement:32,properties_statement:33,details_statement:34,title:35,legacy_title:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,loop:42,rect:43,opt:44,alt:45,else_sections:46,par:47,par_sections:48,par_over:49,critical:50,option_sections:51,break:52,option:53,and:54,else:55,participant:56,AS:57,participant_actor:58,destroy:59,note:60,placement:61,text2:62,over:63,actor_pair:64,links:65,link:66,properties:67,details:68,spaceList:69,",":70,left_of:71,right_of:72,signaltype:73,"+":74,"-":75,ACTOR:76,SOLID_OPEN_ARROW:77,DOTTED_OPEN_ARROW:78,SOLID_ARROW:79,DOTTED_ARROW:80,SOLID_CROSS:81,DOTTED_CROSS:82,SOLID_POINT:83,DOTTED_POINT:84,TXT:85,open_directive:86,type_directive:87,arg_directive:88,close_directive:89,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",17:":",19:"create",20:"box",21:"restOfLine",22:"end",24:"autonumber",25:"NUM",26:"off",27:"activate",29:"deactivate",35:"title",36:"legacy_title",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"loop",43:"rect",44:"opt",45:"alt",47:"par",49:"par_over",50:"critical",52:"break",53:"option",54:"and",55:"else",56:"participant",57:"AS",58:"participant_actor",59:"destroy",60:"note",63:"over",65:"links",66:"link",67:"properties",68:"details",70:",",71:"left_of",72:"right_of",74:"+",75:"-",76:"ACTOR",77:"SOLID_OPEN_ARROW",78:"DOTTED_OPEN_ARROW",79:"SOLID_ARROW",80:"DOTTED_ARROW",81:"SOLID_CROSS",82:"DOTTED_CROSS",83:"SOLID_POINT",84:"DOTTED_POINT",85:"TXT",86:"open_directive",87:"type_directive",88:"arg_directive",89:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[11,0],[11,2],[12,2],[12,1],[12,1],[6,4],[6,6],[10,1],[10,2],[10,4],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[51,1],[51,4],[48,1],[48,4],[46,1],[46,4],[13,5],[13,3],[13,5],[13,3],[13,3],[30,4],[30,4],[31,3],[32,3],[33,3],[34,3],[69,2],[69,1],[64,3],[64,1],[61,1],[61,1],[23,5],[23,5],[23,4],[28,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[62,1],[14,1],[15,1],[18,1],[16,1]],performAction:function(He,Ce,$e,ye,fn,Yt,Mi){var qt=Yt.length-1;switch(fn){case 4:return ye.apply(Yt[qt]),Yt[qt];case 5:case 10:this.$=[];break;case 6:case 11:Yt[qt-1].push(Yt[qt]),this.$=Yt[qt-1];break;case 7:case 8:case 12:case 13:this.$=Yt[qt];break;case 9:case 14:this.$=[];break;case 18:Yt[qt].type="createParticipant",this.$=Yt[qt];break;case 19:Yt[qt-1].unshift({type:"boxStart",boxData:ye.parseBoxData(Yt[qt-2])}),Yt[qt-1].push({type:"boxEnd",boxText:Yt[qt-2]}),this.$=Yt[qt-1];break;case 21:this.$={type:"sequenceIndex",sequenceIndex:Number(Yt[qt-2]),sequenceIndexStep:Number(Yt[qt-1]),sequenceVisible:!0,signalType:ye.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceIndex:Number(Yt[qt-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:ye.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:ye.LINETYPE.AUTONUMBER};break;case 24:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:ye.LINETYPE.AUTONUMBER};break;case 25:this.$={type:"activeStart",signalType:ye.LINETYPE.ACTIVE_START,actor:Yt[qt-1]};break;case 26:this.$={type:"activeEnd",signalType:ye.LINETYPE.ACTIVE_END,actor:Yt[qt-1]};break;case 32:ye.setDiagramTitle(Yt[qt].substring(6)),this.$=Yt[qt].substring(6);break;case 33:ye.setDiagramTitle(Yt[qt].substring(7)),this.$=Yt[qt].substring(7);break;case 34:this.$=Yt[qt].trim(),ye.setAccTitle(this.$);break;case 35:case 36:this.$=Yt[qt].trim(),ye.setAccDescription(this.$);break;case 37:Yt[qt-1].unshift({type:"loopStart",loopText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.LOOP_START}),Yt[qt-1].push({type:"loopEnd",loopText:Yt[qt-2],signalType:ye.LINETYPE.LOOP_END}),this.$=Yt[qt-1];break;case 38:Yt[qt-1].unshift({type:"rectStart",color:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.RECT_START}),Yt[qt-1].push({type:"rectEnd",color:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.RECT_END}),this.$=Yt[qt-1];break;case 39:Yt[qt-1].unshift({type:"optStart",optText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.OPT_START}),Yt[qt-1].push({type:"optEnd",optText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.OPT_END}),this.$=Yt[qt-1];break;case 40:Yt[qt-1].unshift({type:"altStart",altText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.ALT_START}),Yt[qt-1].push({type:"altEnd",signalType:ye.LINETYPE.ALT_END}),this.$=Yt[qt-1];break;case 41:Yt[qt-1].unshift({type:"parStart",parText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.PAR_START}),Yt[qt-1].push({type:"parEnd",signalType:ye.LINETYPE.PAR_END}),this.$=Yt[qt-1];break;case 42:Yt[qt-1].unshift({type:"parStart",parText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.PAR_OVER_START}),Yt[qt-1].push({type:"parEnd",signalType:ye.LINETYPE.PAR_END}),this.$=Yt[qt-1];break;case 43:Yt[qt-1].unshift({type:"criticalStart",criticalText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.CRITICAL_START}),Yt[qt-1].push({type:"criticalEnd",signalType:ye.LINETYPE.CRITICAL_END}),this.$=Yt[qt-1];break;case 44:Yt[qt-1].unshift({type:"breakStart",breakText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.BREAK_START}),Yt[qt-1].push({type:"breakEnd",optText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.BREAK_END}),this.$=Yt[qt-1];break;case 47:this.$=Yt[qt-3].concat([{type:"option",optionText:ye.parseMessage(Yt[qt-1]),signalType:ye.LINETYPE.CRITICAL_OPTION},Yt[qt]]);break;case 49:this.$=Yt[qt-3].concat([{type:"and",parText:ye.parseMessage(Yt[qt-1]),signalType:ye.LINETYPE.PAR_AND},Yt[qt]]);break;case 51:this.$=Yt[qt-3].concat([{type:"else",altText:ye.parseMessage(Yt[qt-1]),signalType:ye.LINETYPE.ALT_ELSE},Yt[qt]]);break;case 52:Yt[qt-3].draw="participant",Yt[qt-3].type="addParticipant",Yt[qt-3].description=ye.parseMessage(Yt[qt-1]),this.$=Yt[qt-3];break;case 53:Yt[qt-1].draw="participant",Yt[qt-1].type="addParticipant",this.$=Yt[qt-1];break;case 54:Yt[qt-3].draw="actor",Yt[qt-3].type="addParticipant",Yt[qt-3].description=ye.parseMessage(Yt[qt-1]),this.$=Yt[qt-3];break;case 55:Yt[qt-1].draw="actor",Yt[qt-1].type="addParticipant",this.$=Yt[qt-1];break;case 56:Yt[qt-1].type="destroyParticipant",this.$=Yt[qt-1];break;case 57:this.$=[Yt[qt-1],{type:"addNote",placement:Yt[qt-2],actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 58:Yt[qt-2]=[].concat(Yt[qt-1],Yt[qt-1]).slice(0,2),Yt[qt-2][0]=Yt[qt-2][0].actor,Yt[qt-2][1]=Yt[qt-2][1].actor,this.$=[Yt[qt-1],{type:"addNote",placement:ye.PLACEMENT.OVER,actor:Yt[qt-2].slice(0,2),text:Yt[qt]}];break;case 59:this.$=[Yt[qt-1],{type:"addLinks",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 60:this.$=[Yt[qt-1],{type:"addALink",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 61:this.$=[Yt[qt-1],{type:"addProperties",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 62:this.$=[Yt[qt-1],{type:"addDetails",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 65:this.$=[Yt[qt-2],Yt[qt]];break;case 66:this.$=Yt[qt];break;case 67:this.$=ye.PLACEMENT.LEFTOF;break;case 68:this.$=ye.PLACEMENT.RIGHTOF;break;case 69:this.$=[Yt[qt-4],Yt[qt-1],{type:"addMessage",from:Yt[qt-4].actor,to:Yt[qt-1].actor,signalType:Yt[qt-3],msg:Yt[qt]},{type:"activeStart",signalType:ye.LINETYPE.ACTIVE_START,actor:Yt[qt-1]}];break;case 70:this.$=[Yt[qt-4],Yt[qt-1],{type:"addMessage",from:Yt[qt-4].actor,to:Yt[qt-1].actor,signalType:Yt[qt-3],msg:Yt[qt]},{type:"activeEnd",signalType:ye.LINETYPE.ACTIVE_END,actor:Yt[qt-4]}];break;case 71:this.$=[Yt[qt-3],Yt[qt-1],{type:"addMessage",from:Yt[qt-3].actor,to:Yt[qt-1].actor,signalType:Yt[qt-2],msg:Yt[qt]}];break;case 72:this.$={type:"addParticipant",actor:Yt[qt]};break;case 73:this.$=ye.LINETYPE.SOLID_OPEN;break;case 74:this.$=ye.LINETYPE.DOTTED_OPEN;break;case 75:this.$=ye.LINETYPE.SOLID;break;case 76:this.$=ye.LINETYPE.DOTTED;break;case 77:this.$=ye.LINETYPE.SOLID_CROSS;break;case 78:this.$=ye.LINETYPE.DOTTED_CROSS;break;case 79:this.$=ye.LINETYPE.SOLID_POINT;break;case 80:this.$=ye.LINETYPE.DOTTED_POINT;break;case 81:this.$=ye.parseMessage(Yt[qt].trim().substring(1));break;case 82:ye.parseDirective("%%{","open_directive");break;case 83:ye.parseDirective(Yt[qt],"type_directive");break;case 84:Yt[qt]=Yt[qt].trim().replace(/'/g,'"'),ye.parseDirective(Yt[qt],"arg_directive");break;case 85:ye.parseDirective("}%%","close_directive","sequence");break}},table:[{3:1,4:a,5:f,6:4,7:p,14:6,86:v},{1:[3]},{3:8,4:a,5:f,6:4,7:p,14:6,86:v},{3:9,4:a,5:f,6:4,7:p,14:6,86:v},{3:10,4:a,5:f,6:4,7:p,14:6,86:v},i([1,4,5,19,20,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],m,{8:11}),{15:12,87:[1,13]},{87:[2,82]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{16:54,17:[1,55],89:Rt},i([17,89],[2,83]),i(Bt,[2,6]),{6:43,10:57,13:18,14:6,19:C,20:A,23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},i(Bt,[2,8]),i(Bt,[2,9]),i(Bt,[2,17]),{13:58,56:xt,58:ht,59:dt},{21:[1,59]},{5:[1,60]},{5:[1,63],25:[1,61],26:[1,62]},{28:64,76:X},{28:65,76:X},{5:[1,66]},{5:[1,67]},{5:[1,68]},{5:[1,69]},{5:[1,70]},i(Bt,[2,32]),i(Bt,[2,33]),{38:[1,71]},{40:[1,72]},i(Bt,[2,36]),{21:[1,73]},{21:[1,74]},{21:[1,75]},{21:[1,76]},{21:[1,77]},{21:[1,78]},{21:[1,79]},{21:[1,80]},i(Bt,[2,45]),{28:81,76:X},{28:82,76:X},{28:83,76:X},{73:84,77:[1,85],78:[1,86],79:[1,87],80:[1,88],81:[1,89],82:[1,90],83:[1,91],84:[1,92]},{61:93,63:[1,94],71:[1,95],72:[1,96]},{28:97,76:X},{28:98,76:X},{28:99,76:X},{28:100,76:X},i([5,57,70,77,78,79,80,81,82,83,84,85],[2,72]),{5:[1,101]},{18:102,88:[1,103]},{5:[2,85]},i(Bt,[2,7]),i(Bt,[2,18]),i(vt,[2,10],{11:104}),i(Bt,[2,20]),{5:[1,106],25:[1,105]},{5:[1,107]},i(Bt,[2,24]),{5:[1,108]},{5:[1,109]},i(Bt,[2,27]),i(Bt,[2,28]),i(Bt,[2,29]),i(Bt,[2,30]),i(Bt,[2,31]),i(Bt,[2,34]),i(Bt,[2,35]),i(Ot,m,{8:110}),i(Ot,m,{8:111}),i(Ot,m,{8:112}),i(Vt,m,{46:113,8:114}),i(qe,m,{48:115,8:116}),i(qe,m,{8:116,48:117}),i(_n,m,{51:118,8:119}),i(Ot,m,{8:120}),{5:[1,122],57:[1,121]},{5:[1,124],57:[1,123]},{5:[1,125]},{28:128,74:[1,126],75:[1,127],76:X},i(Te,[2,73]),i(Te,[2,74]),i(Te,[2,75]),i(Te,[2,76]),i(Te,[2,77]),i(Te,[2,78]),i(Te,[2,79]),i(Te,[2,80]),{28:129,76:X},{28:131,64:130,76:X},{76:[2,67]},{76:[2,68]},{62:132,85:Wn},{62:134,85:Wn},{62:135,85:Wn},{62:136,85:Wn},i(Ae,[2,15]),{16:137,89:Rt},{89:[2,84]},{4:[1,140],5:[1,142],12:139,13:141,22:[1,138],56:xt,58:ht,59:dt},{5:[1,143]},i(Bt,[2,22]),i(Bt,[2,23]),i(Bt,[2,25]),i(Bt,[2,26]),{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,144],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,145],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,146],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{22:[1,147]},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[2,50],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,55:[1,148],56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{22:[1,149]},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[2,48],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,54:[1,150],56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{22:[1,151]},{22:[1,152]},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[2,46],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,53:[1,153],56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,154],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{21:[1,155]},i(Bt,[2,53]),{21:[1,156]},i(Bt,[2,55]),i(Bt,[2,56]),{28:157,76:X},{28:158,76:X},{62:159,85:Wn},{62:160,85:Wn},{62:161,85:Wn},{70:[1,162],85:[2,66]},{5:[2,59]},{5:[2,81]},{5:[2,60]},{5:[2,61]},{5:[2,62]},{5:[1,163]},i(Bt,[2,19]),i(vt,[2,11]),{13:164,56:xt,58:ht,59:dt},i(vt,[2,13]),i(vt,[2,14]),i(Bt,[2,21]),i(Bt,[2,37]),i(Bt,[2,38]),i(Bt,[2,39]),i(Bt,[2,40]),{21:[1,165]},i(Bt,[2,41]),{21:[1,166]},i(Bt,[2,42]),i(Bt,[2,43]),{21:[1,167]},i(Bt,[2,44]),{5:[1,168]},{5:[1,169]},{62:170,85:Wn},{62:171,85:Wn},{5:[2,71]},{5:[2,57]},{5:[2,58]},{28:172,76:X},i(Ae,[2,16]),i(vt,[2,12]),i(Vt,m,{8:114,46:173}),i(qe,m,{8:116,48:174}),i(_n,m,{8:119,51:175}),i(Bt,[2,52]),i(Bt,[2,54]),{5:[2,69]},{5:[2,70]},{85:[2,65]},{22:[2,51]},{22:[2,49]},{22:[2,47]}],defaultActions:{7:[2,82],8:[2,1],9:[2,2],10:[2,3],56:[2,85],95:[2,67],96:[2,68],103:[2,84],132:[2,59],133:[2,81],134:[2,60],135:[2,61],136:[2,62],159:[2,71],160:[2,57],161:[2,58],170:[2,69],171:[2,70],172:[2,65],173:[2,51],174:[2,49],175:[2,47]},parseError:function(He,Ce){if(Ce.recoverable)this.trace(He);else{var $e=new Error(He);throw $e.hash=Ce,$e}},parse:function(He){var Ce=this,$e=[0],ye=[],fn=[null],Yt=[],Mi=this.table,qt="",zi=0,Se=0,ki=2,Ri=1,pi=Yt.slice.call(arguments,1),bi=Object.create(this.lexer),dn={yy:{}};for(var Nn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Nn)&&(dn.yy[Nn]=this.yy[Nn]);bi.setInput(He,dn.yy),dn.yy.lexer=bi,dn.yy.parser=this,typeof bi.yylloc>"u"&&(bi.yylloc={});var Wr=bi.yylloc;Yt.push(Wr);var Li=bi.options&&bi.options.ranges;typeof dn.yy.parseError=="function"?this.parseError=dn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function is(){var Xc;return Xc=ye.pop()||bi.lex()||Ri,typeof Xc!="number"&&(Xc instanceof Array&&(ye=Xc,Xc=ye.pop()),Xc=Ce.symbols_[Xc]||Xc),Xc}for(var Ts,Aa,Xi,Ga,_r={},qr,Oi,gr,Js;;){if(Aa=$e[$e.length-1],this.defaultActions[Aa]?Xi=this.defaultActions[Aa]:((Ts===null||typeof Ts>"u")&&(Ts=is()),Xi=Mi[Aa]&&Mi[Aa][Ts]),typeof Xi>"u"||!Xi.length||!Xi[0]){var Vn="";Js=[];for(qr in Mi[Aa])this.terminals_[qr]&&qr>ki&&Js.push("'"+this.terminals_[qr]+"'");bi.showPosition?Vn="Parse error on line "+(zi+1)+`: +`+bi.showPosition()+` +Expecting `+Js.join(", ")+", got '"+(this.terminals_[Ts]||Ts)+"'":Vn="Parse error on line "+(zi+1)+": Unexpected "+(Ts==Ri?"end of input":"'"+(this.terminals_[Ts]||Ts)+"'"),this.parseError(Vn,{text:bi.match,token:this.terminals_[Ts]||Ts,line:bi.yylineno,loc:Wr,expected:Js})}if(Xi[0]instanceof Array&&Xi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Aa+", token: "+Ts);switch(Xi[0]){case 1:$e.push(Ts),fn.push(bi.yytext),Yt.push(bi.yylloc),$e.push(Xi[1]),Ts=null,Se=bi.yyleng,qt=bi.yytext,zi=bi.yylineno,Wr=bi.yylloc;break;case 2:if(Oi=this.productions_[Xi[1]][1],_r.$=fn[fn.length-Oi],_r._$={first_line:Yt[Yt.length-(Oi||1)].first_line,last_line:Yt[Yt.length-1].last_line,first_column:Yt[Yt.length-(Oi||1)].first_column,last_column:Yt[Yt.length-1].last_column},Li&&(_r._$.range=[Yt[Yt.length-(Oi||1)].range[0],Yt[Yt.length-1].range[1]]),Ga=this.performAction.apply(_r,[qt,Se,zi,dn.yy,Xi[1],fn,Yt].concat(pi)),typeof Ga<"u")return Ga;Oi&&($e=$e.slice(0,-1*Oi*2),fn=fn.slice(0,-1*Oi),Yt=Yt.slice(0,-1*Oi)),$e.push(this.productions_[Xi[1]][0]),fn.push(_r.$),Yt.push(_r._$),gr=Mi[$e[$e.length-2]][$e[$e.length-1]],$e.push(gr);break;case 3:return!0}}return!0}},ke=function(){var Ee={EOF:1,parseError:function(Ce,$e){if(this.yy.parser)this.yy.parser.parseError(Ce,$e);else throw new Error(Ce)},setInput:function(He,Ce){return this.yy=Ce||this.yy||{},this._input=He,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var He=this._input[0];this.yytext+=He,this.yyleng++,this.offset++,this.match+=He,this.matched+=He;var Ce=He.match(/(?:\r\n?|\n).*/g);return Ce?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),He},unput:function(He){var Ce=He.length,$e=He.split(/(?:\r\n?|\n)/g);this._input=He+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ce),this.offset-=Ce;var ye=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),$e.length-1&&(this.yylineno-=$e.length-1);var fn=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:$e?($e.length===ye.length?this.yylloc.first_column:0)+ye[ye.length-$e.length].length-$e[0].length:this.yylloc.first_column-Ce},this.options.ranges&&(this.yylloc.range=[fn[0],fn[0]+this.yyleng-Ce]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(He){this.unput(this.match.slice(He))},pastInput:function(){var He=this.matched.substr(0,this.matched.length-this.match.length);return(He.length>20?"...":"")+He.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var He=this.match;return He.length<20&&(He+=this._input.substr(0,20-He.length)),(He.substr(0,20)+(He.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var He=this.pastInput(),Ce=new Array(He.length+1).join("-");return He+this.upcomingInput()+` +`+Ce+"^"},test_match:function(He,Ce){var $e,ye,fn;if(this.options.backtrack_lexer&&(fn={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(fn.yylloc.range=this.yylloc.range.slice(0))),ye=He[0].match(/(?:\r\n?|\n).*/g),ye&&(this.yylineno+=ye.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ye?ye[ye.length-1].length-ye[ye.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+He[0].length},this.yytext+=He[0],this.match+=He[0],this.matches=He,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(He[0].length),this.matched+=He[0],$e=this.performAction.call(this,this.yy,this,Ce,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),$e)return $e;if(this._backtrack){for(var Yt in fn)this[Yt]=fn[Yt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var He,Ce,$e,ye;this._more||(this.yytext="",this.match="");for(var fn=this._currentRules(),Yt=0;YtCe[0].length)){if(Ce=$e,ye=Yt,this.options.backtrack_lexer){if(He=this.test_match($e,fn[Yt]),He!==!1)return He;if(this._backtrack){Ce=!1;continue}else return!1}else if(!this.options.flex)break}return Ce?(He=this.test_match(Ce,fn[ye]),He!==!1?He:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ce=this.next();return Ce||this.lex()},begin:function(Ce){this.conditionStack.push(Ce)},popState:function(){var Ce=this.conditionStack.length-1;return Ce>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ce){return Ce=this.conditionStack.length-1-Math.abs(Ce||0),Ce>=0?this.conditionStack[Ce]:"INITIAL"},pushState:function(Ce){this.begin(Ce)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ce,$e,ye,fn){switch(ye){case 0:return this.begin("open_directive"),86;case 1:return this.begin("type_directive"),87;case 2:return this.popState(),this.begin("arg_directive"),17;case 3:return this.popState(),this.popState(),89;case 4:return 88;case 5:return 5;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:return 25;case 12:return this.begin("LINE"),20;case 13:return this.begin("ID"),56;case 14:return this.begin("ID"),58;case 15:return 19;case 16:return this.begin("ID"),59;case 17:return $e.yytext=$e.yytext.trim(),this.begin("ALIAS"),76;case 18:return this.popState(),this.popState(),this.begin("LINE"),57;case 19:return this.popState(),this.popState(),5;case 20:return this.begin("LINE"),42;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),44;case 23:return this.begin("LINE"),45;case 24:return this.begin("LINE"),55;case 25:return this.begin("LINE"),47;case 26:return this.begin("LINE"),49;case 27:return this.begin("LINE"),54;case 28:return this.begin("LINE"),50;case 29:return this.begin("LINE"),53;case 30:return this.begin("LINE"),52;case 31:return this.popState(),21;case 32:return 22;case 33:return 71;case 34:return 72;case 35:return 65;case 36:return 66;case 37:return 67;case 38:return 68;case 39:return 63;case 40:return 60;case 41:return this.begin("ID"),27;case 42:return this.begin("ID"),29;case 43:return 35;case 44:return 36;case 45:return this.begin("acc_title"),37;case 46:return this.popState(),"acc_title_value";case 47:return this.begin("acc_descr"),39;case 48:return this.popState(),"acc_descr_value";case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 7;case 53:return 24;case 54:return 26;case 55:return 70;case 56:return 5;case 57:return $e.yytext=$e.yytext.trim(),76;case 58:return 79;case 59:return 80;case 60:return 77;case 61:return 78;case 62:return 81;case 63:return 82;case 64:return 83;case 65:return 84;case 66:return 85;case 67:return 74;case 68:return 75;case 69:return 5;case 70:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[50,51],inclusive:!1},acc_descr:{rules:[48],inclusive:!1},acc_title:{rules:[46],inclusive:!1},open_directive:{rules:[1,8],inclusive:!1},type_directive:{rules:[2,3,8],inclusive:!1},arg_directive:{rules:[3,4,8],inclusive:!1},ID:{rules:[7,8,17],inclusive:!1},ALIAS:{rules:[7,8,18,19],inclusive:!1},LINE:{rules:[7,8,31],inclusive:!1},INITIAL:{rules:[0,5,6,8,9,10,11,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,43,44,45,47,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70],inclusive:!0}}};return Ee}();ne.lexer=ke;function Ve(){this.yy={}}return Ve.prototype=ne,ne.Parser=Ve,new Ve}();ngt.parser=ngt;const Jqe=ngt;let OP,I5={},rgt={},igt={},uL=[],jb=[],MK=!1,sgt,O5,NP,lL;const tHe=function(i,a,f){J1.parseDirective(this,i,a,f)},eHe=function(i){uL.push({name:i.text,wrap:i.wrap===void 0&&m9()||!!i.wrap,fill:i.color,actorKeys:[]}),O5=uL.slice(-1)[0]},agt=function(i,a,f,p){let v=O5;const m=I5[i];if(m){if(O5&&m.box&&O5!==m.box)throw new Error("A same participant should only be defined in one Box: "+m.name+" can't be in '"+m.box.name+"' and in '"+O5.name+"' at the same time.");if(v=m.box?m.box:O5,m.box=v,m&&a===m.name&&f==null)return}(f==null||f.text==null)&&(f={text:a,wrap:null,type:p}),(p==null||f.text==null)&&(f={text:a,wrap:null,type:p}),I5[i]={box:v,name:a,description:f.text,wrap:f.wrap===void 0&&m9()||!!f.wrap,prevActor:OP,links:{},properties:{},actorCnt:null,rectData:null,type:p||"participant"},OP&&I5[OP]&&(I5[OP].nextActor=i),O5&&O5.actorKeys.push(i),OP=i},nHe=i=>{let a,f=0;for(a=0;a>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},m}return jb.push({from:i,to:a,message:f.text,wrap:f.wrap===void 0&&m9()||!!f.wrap,type:p}),!0},iHe=function(){return uL.length>0},sHe=function(){return uL.some(i=>i.name)},aHe=function(){return jb},oHe=function(){return uL},cHe=function(){return I5},uHe=function(){return rgt},lHe=function(){return igt},PP=function(i){return I5[i]},hHe=function(){return Object.keys(I5)},fHe=function(){MK=!0},dHe=function(){MK=!1},gHe=()=>MK,pHe=function(i){sgt=i},m9=()=>sgt!==void 0?sgt:De().sequence.wrap,bHe=function(){I5={},rgt={},igt={},uL=[],jb=[],MK=!1,cg()},vHe=function(i){const a=i.trim(),f={text:a.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:a.match(/^:?wrap:/)!==null?!0:a.match(/^:?nowrap:/)!==null?!1:void 0};return Wt.debug("parseMessage:",f),f},wHe=function(i){const a=i.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let f=a!=null&&a[1]?a[1].trim():"transparent",p=a!=null&&a[2]?a[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",f)||(f="transparent",p=i.trim());else{const m=new Option().style;m.color=f,m.color!==f&&(f="transparent",p=i.trim())}return{color:f,text:p!==void 0?v0(p.replace(/^:?(?:no)?wrap:/,""),De()):void 0,wrap:p!==void 0?p.match(/^:?wrap:/)!==null?!0:p.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},FP={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32},mHe={FILLED:0,OPEN:1},yHe={LEFTOF:0,RIGHTOF:1,OVER:2},gRt=function(i,a,f){f.text,f.wrap===void 0&&m9()||f.wrap;const p=[].concat(i,i);jb.push({from:p[0],to:p[1],message:f.text,wrap:f.wrap===void 0&&m9()||!!f.wrap,type:FP.NOTE,placement:a})},pRt=function(i,a){const f=PP(i);try{let p=v0(a.text,De());p=p.replace(/&/g,"&"),p=p.replace(/=/g,"=");const v=JSON.parse(p);ogt(f,v)}catch(p){Wt.error("error while parsing actor link text",p)}},xHe=function(i,a){const f=PP(i);try{const b={};let E=v0(a.text,De());var p=E.indexOf("@");E=E.replace(/&/g,"&"),E=E.replace(/=/g,"=");var v=E.slice(0,p-1).trim(),m=E.slice(p+1).trim();b[v]=m,ogt(f,b)}catch(b){Wt.error("error while parsing actor link text",b)}};function ogt(i,a){if(i.links==null)i.links=a;else for(let f in a)i.links[f]=a[f]}const bRt=function(i,a){const f=PP(i);try{let p=v0(a.text,De());const v=JSON.parse(p);vRt(f,v)}catch(p){Wt.error("error while parsing actor properties text",p)}};function vRt(i,a){if(i.properties==null)i.properties=a;else for(let f in a)i.properties[f]=a[f]}function kHe(){O5=void 0}const wRt=function(i,a){const f=PP(i),p=document.getElementById(a.text);try{const v=p.innerHTML,m=JSON.parse(v);m.properties&&vRt(f,m.properties),m.links&&ogt(f,m.links)}catch(v){Wt.error("error while parsing actor details text",v)}},EHe=function(i,a){if(i!==void 0&&i.properties!==void 0)return i.properties[a]},mRt=function(i){if(Array.isArray(i))i.forEach(function(a){mRt(a)});else switch(i.type){case"sequenceIndex":jb.push({from:void 0,to:void 0,message:{start:i.sequenceIndex,step:i.sequenceIndexStep,visible:i.sequenceVisible},wrap:!1,type:i.signalType});break;case"addParticipant":agt(i.actor,i.actor,i.description,i.draw);break;case"createParticipant":if(I5[i.actor])throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");NP=i.actor,agt(i.actor,i.actor,i.description,i.draw),rgt[i.actor]=jb.length;break;case"destroyParticipant":lL=i.actor,igt[i.actor]=jb.length;break;case"activeStart":nf(i.actor,void 0,void 0,i.signalType);break;case"activeEnd":nf(i.actor,void 0,void 0,i.signalType);break;case"addNote":gRt(i.actor,i.placement,i.text);break;case"addLinks":pRt(i.actor,i.text);break;case"addALink":xHe(i.actor,i.text);break;case"addProperties":bRt(i.actor,i.text);break;case"addDetails":wRt(i.actor,i.text);break;case"addMessage":if(NP){if(i.to!==NP)throw new Error("The created participant "+NP+" does not have an associated creating message after its declaration. Please check the sequence diagram.");NP=void 0}else if(lL){if(i.to!==lL&&i.from!==lL)throw new Error("The destroyed participant "+lL+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");lL=void 0}nf(i.from,i.to,i.msg,i.signalType);break;case"boxStart":eHe(i.boxData);break;case"boxEnd":kHe();break;case"loopStart":nf(void 0,void 0,i.loopText,i.signalType);break;case"loopEnd":nf(void 0,void 0,void 0,i.signalType);break;case"rectStart":nf(void 0,void 0,i.color,i.signalType);break;case"rectEnd":nf(void 0,void 0,void 0,i.signalType);break;case"optStart":nf(void 0,void 0,i.optText,i.signalType);break;case"optEnd":nf(void 0,void 0,void 0,i.signalType);break;case"altStart":nf(void 0,void 0,i.altText,i.signalType);break;case"else":nf(void 0,void 0,i.altText,i.signalType);break;case"altEnd":nf(void 0,void 0,void 0,i.signalType);break;case"setAccTitle":m0(i.text);break;case"parStart":nf(void 0,void 0,i.parText,i.signalType);break;case"and":nf(void 0,void 0,i.parText,i.signalType);break;case"parEnd":nf(void 0,void 0,void 0,i.signalType);break;case"criticalStart":nf(void 0,void 0,i.criticalText,i.signalType);break;case"option":nf(void 0,void 0,i.optionText,i.signalType);break;case"criticalEnd":nf(void 0,void 0,void 0,i.signalType);break;case"breakStart":nf(void 0,void 0,i.breakText,i.signalType);break;case"breakEnd":nf(void 0,void 0,void 0,i.signalType);break}},THe={addActor:agt,addMessage:rHe,addSignal:nf,addLinks:pRt,addDetails:wRt,addProperties:bRt,autoWrap:m9,setWrap:pHe,enableSequenceNumbers:fHe,disableSequenceNumbers:dHe,showSequenceNumbers:gHe,getMessages:aHe,getActors:cHe,getCreatedActors:uHe,getDestroyedActors:lHe,getActor:PP,getActorKeys:hHe,getActorProperty:EHe,getAccTitle:ug,getBoxes:oHe,getDiagramTitle:hp,setDiagramTitle:Nb,parseDirective:tHe,getConfig:()=>De().sequence,clear:bHe,parseMessage:vHe,parseBoxData:wHe,LINETYPE:FP,ARROWTYPE:mHe,PLACEMENT:yHe,addNote:gRt,setAccTitle:m0,apply:mRt,setAccDescription:lg,getAccDescription:hg,hasAtLeastOneBox:iHe,hasAtLeastOneBoxWithTitle:sHe},_He=i=>`.actor { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + } + + text.actor > tspan { + fill: ${i.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${i.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${i.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${i.signalColor}; + } + + #arrowhead path { + fill: ${i.signalColor}; + stroke: ${i.signalColor}; + } + + .sequenceNumber { + fill: ${i.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${i.signalColor}; + } + + #crosshead path { + fill: ${i.signalColor}; + stroke: ${i.signalColor}; + } + + .messageText { + fill: ${i.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${i.labelBoxBorderColor}; + fill: ${i.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${i.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${i.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${i.labelBoxBorderColor}; + fill: ${i.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${i.noteBorderColor}; + fill: ${i.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${i.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .activation1 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .activation2 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${i.actorBkg}; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); +} + .actor-man line { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + } + .actor-man circle, line { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + stroke-width: 2px; + } +`,y9=18*2,cgt=function(i,a){return WW(i,a)},yRt=(i,a)=>{OLe(()=>{const f=document.querySelectorAll(i);f.length!==0&&(f[0].addEventListener("mouseover",function(){LHe("actor"+a+"_popup")}),f[0].addEventListener("mouseout",function(){MHe("actor"+a+"_popup")}))})},CHe=function(i,a,f,p,v){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const m=a.links,b=a.actorCnt,E=a.rectData;var C="none";v&&(C="block !important");const A=i.append("g");A.attr("id","actor"+b+"_popup"),A.attr("class","actorPopupMenu"),A.attr("display",C),yRt("#actor"+b+"_popup",b);var P="";E.class!==void 0&&(P=" "+E.class);let F=E.width>f?E.width:f;const j=A.append("rect");if(j.attr("class","actorPopupMenuPanel"+P),j.attr("x",E.x),j.attr("y",E.height),j.attr("fill",E.fill),j.attr("stroke",E.stroke),j.attr("width",F),j.attr("height",E.height),j.attr("rx",E.rx),j.attr("ry",E.ry),m!=null){var R=20;for(let rt in m){var H=A.append("a"),Y=Xx(m[rt]);H.attr("xlink:href",Y),H.attr("target","_blank"),UHe(p)(rt,H,E.x+10,E.height+R,F,20,{class:"actor"},p),R+=30}}return j.attr("height",R),{height:E.height+R,width:F}},SHe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = 'block'; }"},AHe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = 'none'; }"},LHe=function(i){var a=document.getElementById(i);a!=null&&(a.style.display="block")},MHe=function(i){var a=document.getElementById(i);a!=null&&(a.style.display="none")},hL=function(i,a){let f=0,p=0;const v=a.text.split(ui.lineBreakRegex),[m,b]=zA(a.fontSize);let E=[],C=0,A=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":A=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":A=()=>Math.round(a.y+(f+p+a.textMargin)/2);break;case"bottom":case"end":A=()=>Math.round(a.y+(f+p+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[P,F]of v.entries()){a.textMargin!==void 0&&a.textMargin===0&&m!==void 0&&(C=P*m);const j=i.append("text");j.attr("x",a.x),j.attr("y",A()),a.anchor!==void 0&&j.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&j.style("font-family",a.fontFamily),b!==void 0&&j.style("font-size",b),a.fontWeight!==void 0&&j.style("font-weight",a.fontWeight),a.fill!==void 0&&j.attr("fill",a.fill),a.class!==void 0&&j.attr("class",a.class),a.dy!==void 0?j.attr("dy",a.dy):C!==0&&j.attr("dy",C);const R=F||PIt;if(a.tspan){const H=j.append("tspan");H.attr("x",a.x),a.fill!==void 0&&H.attr("fill",a.fill),H.text(R)}else j.text(R);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(p+=(j._groups||j)[0][0].getBBox().height,f=p),E.push(j)}return E},xRt=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");return p.attr("points",f(a.x,a.y,a.width,a.height,7)),p.attr("class","labelBox"),a.y=a.y+a.height/2,hL(i,a),p};let hm=-1;const kRt=(i,a,f,p)=>{i.select&&f.forEach(v=>{const m=a[v],b=i.select("#actor"+m.actorCnt);!p.mirrorActors&&m.stopy?b.attr("y2",m.stopy+m.height/2):p.mirrorActors&&b.attr("y2",m.stopy)})},DHe=function(i,a,f,p){const v=p?a.stopy:a.starty,m=a.x+a.width/2,b=v+5,E=i.append("g").lower();var C=E;p||(hm++,C.append("line").attr("id","actor"+hm).attr("x1",m).attr("y1",b).attr("x2",m).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),C=E.append("g"),a.actorCnt=hm,a.links!=null&&(C.attr("id","root-"+hm),yRt("#root-"+hm,hm)));const A=u9();var P="actor";a.properties!=null&&a.properties.class?P=a.properties.class:A.fill="#eaeaea",A.x=a.x,A.y=v,A.width=a.width,A.height=a.height,A.class=P,A.rx=3,A.ry=3;const F=cgt(C,A);if(a.rectData=A,a.properties!=null&&a.properties.icon){const R=a.properties.icon.trim();R.charAt(0)==="@"?oDe(C,A.x+A.width-20,A.y+10,R.substr(1)):aDe(C,A.x+A.width-20,A.y+10,R)}ugt(f)(a.description,C,A.x,A.y,A.width,A.height,{class:"actor"},f);let j=a.height;if(F.node){const R=F.node().getBBox();a.height=R.height,j=R.height}return j},IHe=function(i,a,f,p){const v=p?a.stopy:a.starty,m=a.x+a.width/2,b=v+80;i.lower(),p||(hm++,i.append("line").attr("id","actor"+hm).attr("x1",m).attr("y1",b).attr("x2",m).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),a.actorCnt=hm);const E=i.append("g");E.attr("class","actor-man");const C=u9();C.x=a.x,C.y=v,C.fill="#eaeaea",C.width=a.width,C.height=a.height,C.class="actor",C.rx=3,C.ry=3,E.append("line").attr("id","actor-man-torso"+hm).attr("x1",m).attr("y1",v+25).attr("x2",m).attr("y2",v+45),E.append("line").attr("id","actor-man-arms"+hm).attr("x1",m-y9/2).attr("y1",v+33).attr("x2",m+y9/2).attr("y2",v+33),E.append("line").attr("x1",m-y9/2).attr("y1",v+60).attr("x2",m).attr("y2",v+45),E.append("line").attr("x1",m).attr("y1",v+45).attr("x2",m+y9/2-2).attr("y2",v+60);const A=E.append("circle");A.attr("cx",a.x+a.width/2),A.attr("cy",v+10),A.attr("r",15),A.attr("width",a.width),A.attr("height",a.height);const P=E.node().getBBox();return a.height=P.height,ugt(f)(a.description,E,C.x,C.y+35,C.width,C.height,{class:"actor"},f),a.height},OHe=function(i,a,f,p){switch(a.type){case"actor":return IHe(i,a,f,p);case"participant":return DHe(i,a,f,p)}},NHe=function(i,a,f){const v=i.append("g");ERt(v,a),a.name&&ugt(f)(a.name,v,a.x,a.y+(a.textMaxHeight||0)/2,a.width,0,{class:"text"},f),v.lower()},PHe=function(i){return i.append("g")},FHe=function(i,a,f,p,v){const m=u9(),b=a.anchored;m.x=a.startx,m.y=a.starty,m.class="activation"+v%3,m.width=a.stopx-a.startx,m.height=f-a.starty,cgt(b,m)},BHe=function(i,a,f,p){const{boxMargin:v,boxTextMargin:m,labelBoxHeight:b,labelBoxWidth:E,messageFontFamily:C,messageFontSize:A,messageFontWeight:P}=p,F=i.append("g"),j=function(Y,rt,J,it){return F.append("line").attr("x1",Y).attr("y1",rt).attr("x2",J).attr("y2",it).attr("class","loopLine")};j(a.startx,a.starty,a.stopx,a.starty),j(a.stopx,a.starty,a.stopx,a.stopy),j(a.startx,a.stopy,a.stopx,a.stopy),j(a.startx,a.starty,a.startx,a.stopy),a.sections!==void 0&&a.sections.forEach(function(Y){j(a.startx,Y.y,a.stopx,Y.y).style("stroke-dasharray","3, 3")});let R=Ddt();R.text=f,R.x=a.startx,R.y=a.starty,R.fontFamily=C,R.fontSize=A,R.fontWeight=P,R.anchor="middle",R.valign="middle",R.tspan=!1,R.width=E||50,R.height=b||20,R.textMargin=m,R.class="labelText",xRt(F,R),R=TRt(),R.text=a.title,R.x=a.startx+E/2+(a.stopx-a.startx)/2,R.y=a.starty+v+m,R.anchor="middle",R.valign="middle",R.textMargin=m,R.class="loopText",R.fontFamily=C,R.fontSize=A,R.fontWeight=P,R.wrap=!0;let H=hL(F,R);return a.sectionTitles!==void 0&&a.sectionTitles.forEach(function(Y,rt){if(Y.message){R.text=Y.message,R.x=a.startx+(a.stopx-a.startx)/2,R.y=a.sections[rt].y+v+m,R.class="loopText",R.anchor="middle",R.valign="middle",R.tspan=!1,R.fontFamily=C,R.fontSize=A,R.fontWeight=P,R.wrap=a.wrap,H=hL(F,R);let J=Math.round(H.map(it=>(it._groups||it)[0][0].getBBox().height).reduce((it,ft)=>it+ft));a.sections[rt].height+=J-(v+m)}}),a.height=Math.round(a.stopy-a.starty),F},ERt=function(i,a){pNt(i,a)},RHe=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},jHe=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},$He=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},zHe=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},qHe=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},HHe=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},VHe=function(i){i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},TRt=function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},GHe=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},ugt=function(){function i(v,m,b,E,C,A,P){const F=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("text-anchor","middle").text(v);p(F,P)}function a(v,m,b,E,C,A,P,F){const{actorFontSize:j,actorFontFamily:R,actorFontWeight:H}=F,[Y,rt]=zA(j),J=v.split(ui.lineBreakRegex);for(let it=0;iti.height||0))+(this.loops.length===0?0:this.loops.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.messages.length===0?0:this.messages.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.notes.length===0?0:this.notes.map(i=>i.height||0).reduce((i,a)=>i+a))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(i){this.boxes.push(i)},addActor:function(i){this.actors.push(i)},addLoop:function(i){this.loops.push(i)},addMessage:function(i){this.messages.push(i)},addNote:function(i){this.notes.push(i)},lastActor:function(){return this.actors[this.actors.length-1]},lastLoop:function(){return this.loops[this.loops.length-1]},lastMessage:function(){return this.messages[this.messages.length-1]},lastNote:function(){return this.notes[this.notes.length-1]},actors:[],boxes:[],loops:[],messages:[],notes:[]},init:function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,CRt(De())},updateVal:function(i,a,f,p){i[a]===void 0?i[a]=f:i[a]=p(f,i[a])},updateBounds:function(i,a,f,p){const v=this;let m=0;function b(E){return function(A){m++;const P=v.sequenceItems.length-m+1;v.updateVal(A,"starty",a-P*hn.boxMargin,Math.min),v.updateVal(A,"stopy",p+P*hn.boxMargin,Math.max),v.updateVal(Br.data,"startx",i-P*hn.boxMargin,Math.min),v.updateVal(Br.data,"stopx",f+P*hn.boxMargin,Math.max),E!=="activation"&&(v.updateVal(A,"startx",i-P*hn.boxMargin,Math.min),v.updateVal(A,"stopx",f+P*hn.boxMargin,Math.max),v.updateVal(Br.data,"starty",a-P*hn.boxMargin,Math.min),v.updateVal(Br.data,"stopy",p+P*hn.boxMargin,Math.max))}}this.sequenceItems.forEach(b()),this.activations.forEach(b("activation"))},insert:function(i,a,f,p){const v=ui.getMin(i,f),m=ui.getMax(i,f),b=ui.getMin(a,p),E=ui.getMax(a,p);this.updateVal(Br.data,"startx",v,Math.min),this.updateVal(Br.data,"starty",b,Math.min),this.updateVal(Br.data,"stopx",m,Math.max),this.updateVal(Br.data,"stopy",E,Math.max),this.updateBounds(v,b,m,E)},newActivation:function(i,a,f){const p=f[i.from.actor],v=DK(i.from.actor).length||0,m=p.x+p.width/2+(v-1)*hn.activationWidth/2;this.activations.push({startx:m,starty:this.verticalPos+2,stopx:m+hn.activationWidth,stopy:void 0,actor:i.from.actor,anchored:rf.anchorElement(a)})},endActivation:function(i){const a=this.activations.map(function(f){return f.actor}).lastIndexOf(i.from.actor);return this.activations.splice(a,1)[0]},createLoop:function(i={message:void 0,wrap:!1,width:void 0},a){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:i.message,wrap:i.wrap,width:i.width,height:0,fill:a}},newLoop:function(i={message:void 0,wrap:!1,width:void 0},a){this.sequenceItems.push(this.createLoop(i,a))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(i){const a=this.sequenceItems.pop();a.sections=a.sections||[],a.sectionTitles=a.sectionTitles||[],a.sections.push({y:Br.getVerticalPos(),height:0}),a.sectionTitles.push(i),this.sequenceItems.push(a)},saveVerticalPos:function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},resetVerticalPos:function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=ui.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},WHe=function(i,a){Br.bumpVerticalPos(hn.boxMargin),a.height=hn.boxMargin,a.starty=Br.getVerticalPos();const f=u9();f.x=a.startx,f.y=a.starty,f.width=a.width||hn.width,f.class="note";const p=i.append("g"),v=rf.drawRect(p,f),m=Ddt();m.x=a.startx,m.y=a.starty,m.width=f.width,m.dy="1em",m.text=a.message,m.class="noteText",m.fontFamily=hn.noteFontFamily,m.fontSize=hn.noteFontSize,m.fontWeight=hn.noteFontWeight,m.anchor=hn.noteAlign,m.textMargin=hn.noteMargin,m.valign="center";const b=hL(p,m),E=Math.round(b.map(C=>(C._groups||C)[0][0].getBBox().height).reduce((C,A)=>C+A));v.attr("height",E+2*hn.noteMargin),a.height+=E+2*hn.noteMargin,Br.bumpVerticalPos(E+2*hn.noteMargin),a.stopy=a.starty+E+2*hn.noteMargin,a.stopx=a.startx+f.width,Br.insert(a.startx,a.starty,a.stopx,a.stopy),Br.models.addNote(a)},x9=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight}),fL=i=>({fontFamily:i.noteFontFamily,fontSize:i.noteFontSize,fontWeight:i.noteFontWeight}),lgt=i=>({fontFamily:i.actorFontFamily,fontSize:i.actorFontSize,fontWeight:i.actorFontWeight});function KHe(i,a){Br.bumpVerticalPos(10);const{startx:f,stopx:p,message:v}=a,m=ui.splitBreaks(v).length,b=to.calculateTextDimensions(v,x9(hn)),E=b.height/m;a.height+=E,Br.bumpVerticalPos(E);let C,A=b.height-10;const P=b.width;if(f===p){C=Br.getVerticalPos()+A,hn.rightAngles||(A+=hn.boxMargin,C=Br.getVerticalPos()+A),A+=30;const F=ui.getMax(P/2,hn.width/2);Br.insert(f-F,Br.getVerticalPos()-10+A,p+F,Br.getVerticalPos()+30+A)}else A+=hn.boxMargin,C=Br.getVerticalPos()+A,Br.insert(f,C-10,p,C);return Br.bumpVerticalPos(A),a.height+=A,a.stopy=a.starty+a.height,Br.insert(a.fromBounds,a.starty,a.toBounds,a.stopy),C}const YHe=function(i,a,f,p){const{startx:v,stopx:m,starty:b,message:E,type:C,sequenceIndex:A,sequenceVisible:P}=a,F=to.calculateTextDimensions(E,x9(hn)),j=Ddt();j.x=v,j.y=b+10,j.width=m-v,j.class="messageText",j.dy="1em",j.text=E,j.fontFamily=hn.messageFontFamily,j.fontSize=hn.messageFontSize,j.fontWeight=hn.messageFontWeight,j.anchor=hn.messageAlign,j.valign="center",j.textMargin=hn.wrapPadding,j.tspan=!1,hL(i,j);const R=F.width;let H;v===m?hn.rightAngles?H=i.append("path").attr("d",`M ${v},${f} H ${v+ui.getMax(hn.width/2,R/2)} V ${f+25} H ${v}`):H=i.append("path").attr("d","M "+v+","+f+" C "+(v+60)+","+(f-10)+" "+(v+60)+","+(f+30)+" "+v+","+(f+20)):(H=i.append("line"),H.attr("x1",v),H.attr("y1",f),H.attr("x2",m),H.attr("y2",f)),C===p.db.LINETYPE.DOTTED||C===p.db.LINETYPE.DOTTED_CROSS||C===p.db.LINETYPE.DOTTED_POINT||C===p.db.LINETYPE.DOTTED_OPEN?(H.style("stroke-dasharray","3, 3"),H.attr("class","messageLine1")):H.attr("class","messageLine0");let Y="";hn.arrowMarkerAbsolute&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),H.attr("stroke-width",2),H.attr("stroke","none"),H.style("fill","none"),(C===p.db.LINETYPE.SOLID||C===p.db.LINETYPE.DOTTED)&&H.attr("marker-end","url("+Y+"#arrowhead)"),(C===p.db.LINETYPE.SOLID_POINT||C===p.db.LINETYPE.DOTTED_POINT)&&H.attr("marker-end","url("+Y+"#filled-head)"),(C===p.db.LINETYPE.SOLID_CROSS||C===p.db.LINETYPE.DOTTED_CROSS)&&H.attr("marker-end","url("+Y+"#crosshead)"),(P||hn.showSequenceNumbers)&&(H.attr("marker-start","url("+Y+"#sequencenumber)"),i.append("text").attr("x",v).attr("y",f+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(A))},XHe=function(i,a,f,p,v,m,b){let E=0,C=0,A,P=0;for(const F of p){const j=a[F],R=j.box;A&&A!=R&&(b||Br.models.addBox(A),C+=hn.boxMargin+A.margin),R&&R!=A&&(b||(R.x=E+C,R.y=v),C+=R.margin),j.width=j.width||hn.width,j.height=ui.getMax(j.height||hn.height,hn.height),j.margin=j.margin||hn.actorMargin,P=ui.getMax(P,j.height),f[j.name]&&(C+=j.width/2),j.x=E+C,j.starty=Br.getVerticalPos(),Br.insert(j.x,v,j.x+j.width,j.height),E+=j.width+C,j.box&&(j.box.width=E+R.margin-j.box.x),C=j.margin,A=j.box,Br.models.addActor(j)}A&&!b&&Br.models.addBox(A),Br.bumpVerticalPos(P)},hgt=function(i,a,f,p){if(p){let v=0;Br.bumpVerticalPos(hn.boxMargin*2);for(const m of f){const b=a[m];b.stopy||(b.stopy=Br.getVerticalPos());const E=rf.drawActor(i,b,hn,!0);v=ui.getMax(v,E)}Br.bumpVerticalPos(v+hn.boxMargin)}else for(const v of f){const m=a[v];rf.drawActor(i,m,hn,!1)}},_Rt=function(i,a,f,p){let v=0,m=0;for(const b of f){const E=a[b],C=tVe(E),A=rf.drawPopup(i,E,C,hn,hn.forceMenus,p);A.height>v&&(v=A.height),A.width+E.x>m&&(m=A.width+E.x)}return{maxHeight:v,maxWidth:m}},CRt=function(i){Z1(hn,i),i.fontFamily&&(hn.actorFontFamily=hn.noteFontFamily=hn.messageFontFamily=i.fontFamily),i.fontSize&&(hn.actorFontSize=hn.noteFontSize=hn.messageFontSize=i.fontSize),i.fontWeight&&(hn.actorFontWeight=hn.noteFontWeight=hn.messageFontWeight=i.fontWeight)},DK=function(i){return Br.activations.filter(function(a){return a.actor===i})},SRt=function(i,a){const f=a[i],p=DK(i),v=p.reduce(function(b,E){return ui.getMin(b,E.startx)},f.x+f.width/2),m=p.reduce(function(b,E){return ui.getMax(b,E.stopx)},f.x+f.width/2);return[v,m]};function y3(i,a,f,p,v){Br.bumpVerticalPos(f);let m=p;if(a.id&&a.message&&i[a.id]){const b=i[a.id].width,E=x9(hn);a.message=to.wrapLabel(`[${a.message}]`,b-2*hn.wrapPadding,E),a.width=b,a.wrap=!0;const C=to.calculateTextDimensions(a.message,E),A=ui.getMax(C.height,hn.labelBoxHeight);m=p+A,Wt.debug(`${A} - ${a.message}`)}v(a),Br.bumpVerticalPos(m)}function QHe(i,a,f,p,v,m,b){function E(A,P){A.x{Ft.add(X.from),Ft.add(X.to)}),H=H.filter(X=>Ft.has(X))}XHe(A,P,F,H,0,Y,!1);const Tt=iVe(Y,P,ft,p);rf.insertArrowHead(A),rf.insertArrowCrossHead(A),rf.insertArrowFilledHead(A),rf.insertSequenceNumber(A);function kt(Ft,X){const Rt=Br.endActivation(Ft);Rt.starty+18>X&&(Rt.starty=X-6,X+=12),rf.drawActivation(A,Rt,X,hn,DK(Ft.from.actor).length),Br.insert(Rt.startx,X-10,Rt.stopx,X)}let mt=1,ct=1;const yt=[],st=[];Y.forEach(function(Ft,X){let Rt,Bt,vt;switch(Ft.type){case p.db.LINETYPE.NOTE:Br.resetVerticalPos(),Bt=Ft.noteModel,WHe(A,Bt);break;case p.db.LINETYPE.ACTIVE_START:Br.newActivation(Ft,A,P);break;case p.db.LINETYPE.ACTIVE_END:kt(Ft,Br.getVerticalPos());break;case p.db.LINETYPE.LOOP_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.LOOP_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"loop",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.RECT_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin,Ot=>Br.newLoop(void 0,Ot.message));break;case p.db.LINETYPE.RECT_END:Rt=Br.endLoop(),st.push(Rt),Br.models.addLoop(Rt),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos());break;case p.db.LINETYPE.OPT_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.OPT_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"opt",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.ALT_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.ALT_ELSE:y3(Tt,Ft,hn.boxMargin+hn.boxTextMargin,hn.boxMargin,Ot=>Br.addSectionToLoop(Ot));break;case p.db.LINETYPE.ALT_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"alt",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.PAR_START:case p.db.LINETYPE.PAR_OVER_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot)),Br.saveVerticalPos();break;case p.db.LINETYPE.PAR_AND:y3(Tt,Ft,hn.boxMargin+hn.boxTextMargin,hn.boxMargin,Ot=>Br.addSectionToLoop(Ot));break;case p.db.LINETYPE.PAR_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"par",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.AUTONUMBER:mt=Ft.message.start||mt,ct=Ft.message.step||ct,Ft.message.visible?p.db.enableSequenceNumbers():p.db.disableSequenceNumbers();break;case p.db.LINETYPE.CRITICAL_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.CRITICAL_OPTION:y3(Tt,Ft,hn.boxMargin+hn.boxTextMargin,hn.boxMargin,Ot=>Br.addSectionToLoop(Ot));break;case p.db.LINETYPE.CRITICAL_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"critical",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.BREAK_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.BREAK_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"break",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;default:try{vt=Ft.msgModel,vt.starty=Br.getVerticalPos(),vt.sequenceIndex=mt,vt.sequenceVisible=p.db.showSequenceNumbers();const Ot=KHe(A,vt);QHe(Ft,vt,Ot,X,P,F,j),yt.push({messageModel:vt,lineStartY:Ot}),Br.models.addMessage(vt)}catch(Ot){Wt.error("error while drawing message",Ot)}}[p.db.LINETYPE.SOLID_OPEN,p.db.LINETYPE.DOTTED_OPEN,p.db.LINETYPE.SOLID,p.db.LINETYPE.DOTTED,p.db.LINETYPE.SOLID_CROSS,p.db.LINETYPE.DOTTED_CROSS,p.db.LINETYPE.SOLID_POINT,p.db.LINETYPE.DOTTED_POINT].includes(Ft.type)&&(mt=mt+ct)}),Wt.debug("createdActors",F),Wt.debug("destroyedActors",j),hgt(A,P,H,!1),yt.forEach(Ft=>YHe(A,Ft.messageModel,Ft.lineStartY,p)),hn.mirrorActors&&hgt(A,P,H,!0),st.forEach(Ft=>rf.drawBackgroundRect(A,Ft)),kRt(A,P,H,hn),Br.models.boxes.forEach(function(Ft){Ft.height=Br.getVerticalPos()-Ft.y,Br.insert(Ft.x,Ft.y,Ft.x+Ft.width,Ft.height),Ft.startx=Ft.x,Ft.starty=Ft.y,Ft.stopx=Ft.startx+Ft.width,Ft.stopy=Ft.starty+Ft.height,Ft.stroke="rgb(0,0,0, 0.5)",rf.drawBox(A,Ft,hn)}),J&&Br.bumpVerticalPos(hn.boxMargin);const xt=_Rt(A,P,H,C),{bounds:ht}=Br.getBounds();let dt=ht.stopy-ht.starty;dt{const b=i[m];b.wrap&&(b.description=to.wrapLabel(b.description,hn.width-2*hn.wrapPadding,lgt(hn)));const E=to.calculateTextDimensions(b.description,lgt(hn));b.width=b.wrap?hn.width:ui.getMax(hn.width,E.width+2*hn.wrapPadding),b.height=b.wrap?ui.getMax(E.height,hn.height):hn.height,p=ui.getMax(p,b.height)});for(const m in a){const b=i[m];if(!b)continue;const E=i[b.nextActor];if(!E){const F=a[m]+hn.actorMargin-b.width/2;b.margin=ui.getMax(F,hn.actorMargin);continue}const A=a[m]+hn.actorMargin-b.width/2-E.width/2;b.margin=ui.getMax(A,hn.actorMargin)}let v=0;return f.forEach(m=>{const b=x9(hn);let E=m.actorKeys.reduce((P,F)=>P+=i[F].width+(i[F].margin||0),0);E-=2*hn.boxTextMargin,m.wrap&&(m.name=to.wrapLabel(m.name,E-2*hn.wrapPadding,b));const C=to.calculateTextDimensions(m.name,b);v=ui.getMax(C.height,v);const A=ui.getMax(E,C.width+2*hn.wrapPadding);if(m.margin=hn.boxTextMargin,Em.textMaxHeight=v),ui.getMax(p,hn.height)}const nVe=function(i,a,f){const p=a[i.from].x,v=a[i.to].x,m=i.wrap&&i.message;let b=to.calculateTextDimensions(m?to.wrapLabel(i.message,hn.width,fL(hn)):i.message,fL(hn));const E={width:m?hn.width:ui.getMax(hn.width,b.width+2*hn.noteMargin),height:0,startx:a[i.from].x,stopx:0,starty:0,stopy:0,message:i.message};return i.placement===f.db.PLACEMENT.RIGHTOF?(E.width=m?ui.getMax(hn.width,b.width):ui.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*hn.noteMargin),E.startx=p+(a[i.from].width+hn.actorMargin)/2):i.placement===f.db.PLACEMENT.LEFTOF?(E.width=m?ui.getMax(hn.width,b.width+2*hn.noteMargin):ui.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*hn.noteMargin),E.startx=p-E.width+(a[i.from].width-hn.actorMargin)/2):i.to===i.from?(b=to.calculateTextDimensions(m?to.wrapLabel(i.message,ui.getMax(hn.width,a[i.from].width),fL(hn)):i.message,fL(hn)),E.width=m?ui.getMax(hn.width,a[i.from].width):ui.getMax(a[i.from].width,hn.width,b.width+2*hn.noteMargin),E.startx=p+(a[i.from].width-E.width)/2):(E.width=Math.abs(p+a[i.from].width/2-(v+a[i.to].width/2))+hn.actorMargin,E.startx=pj.actor).lastIndexOf(A.from.actor);delete Br.activations.splice(F,1)[0]}break}A.placement!==void 0?(E=nVe(A,a,p),A.noteModel=E,m.forEach(F=>{b=F,b.from=ui.getMin(b.from,E.startx),b.to=ui.getMax(b.to,E.startx+E.width),b.width=ui.getMax(b.width,Math.abs(b.from-b.to))-hn.labelBoxWidth})):(C=rVe(A,a,p),A.msgModel=C,C.startx&&C.stopx&&m.length>0&&m.forEach(F=>{if(b=F,C.startx===C.stopx){const j=a[A.from],R=a[A.to];b.from=ui.getMin(j.x-C.width/2,j.x-j.width/2,b.from),b.to=ui.getMax(R.x+C.width/2,R.x+j.width/2,b.to),b.width=ui.getMax(b.width,Math.abs(b.to-b.from))-hn.labelBoxWidth}else b.from=ui.getMin(C.startx,b.from),b.to=ui.getMax(C.stopx,b.to),b.width=ui.getMax(b.width,C.width)-hn.labelBoxWidth}))}),Br.activations=[],Wt.debug("Loop type widths:",v),v},sVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Jqe,db:THe,renderer:{bounds:Br,drawActors:hgt,drawActorsPopup:_Rt,setConf:CRt,draw:ZHe},styles:_He}},Symbol.toStringTag,{value:"Module"}));var fgt=function(){var i=function(Ce,$e,ye,fn){for(ye=ye||{},fn=Ce.length;fn--;ye[Ce[fn]]=$e);return ye},a=[1,34],f=[1,35],p=[1,36],v=[1,37],m=[1,9],b=[1,8],E=[1,19],C=[1,20],A=[1,21],P=[1,40],F=[1,41],j=[1,27],R=[1,25],H=[1,26],Y=[1,32],rt=[1,33],J=[1,28],it=[1,29],ft=[1,30],Tt=[1,31],kt=[1,45],mt=[1,42],ct=[1,43],yt=[1,44],st=[1,46],xt=[1,24],ht=[1,16,24],dt=[1,60],Ct=[1,61],tt=[1,62],Pt=[1,63],pt=[1,64],Ft=[1,65],X=[1,66],Rt=[1,16,24,52],Bt=[1,77],vt=[1,16,24,27,28,36,50,52,55,68,69,70,71,72,73,74,79,81],Ot=[1,16,24,27,28,34,36,50,52,55,59,68,69,70,71,72,73,74,79,81,94,96,97,98,99],Vt=[1,86],qe=[28,94,96,97,98,99],_n=[28,73,74,94,96,97,98,99],Te=[28,68,69,70,71,72,94,96,97,98,99],Wn=[1,99],Ae=[1,16,24,50,52,55],ne=[1,16,24,36],ke=[8,9,10,11,19,23,44,46,48,53,57,58,60,61,63,65,75,76,78,82,94,96,97,98,99],Ve={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,statements:6,direction:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,EOF:24,statement:25,classLabel:26,SQS:27,STR:28,SQE:29,namespaceName:30,alphaNumToken:31,className:32,classLiteralName:33,GENERICTYPE:34,relationStatement:35,LABEL:36,namespaceStatement:37,classStatement:38,methodStatement:39,annotationStatement:40,clickStatement:41,cssClassStatement:42,noteStatement:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,namespaceIdentifier:49,STRUCT_START:50,classStatements:51,STRUCT_STOP:52,NAMESPACE:53,classIdentifier:54,STYLE_SEPARATOR:55,members:56,CLASS:57,ANNOTATION_START:58,ANNOTATION_END:59,MEMBER:60,SEPARATOR:61,relation:62,NOTE_FOR:63,noteText:64,NOTE:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,CSSCLASS:82,commentToken:83,textToken:84,graphCodeTokens:85,textNoTagsToken:86,TAGSTART:87,TAGEND:88,"==":89,"--":90,PCT:91,DEFAULT:92,SPACE:93,MINUS:94,keywords:95,UNICODE_TEXT:96,NUM:97,ALPHA:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",24:"EOF",27:"SQS",28:"STR",29:"SQE",34:"GENERICTYPE",36:"LABEL",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",50:"STRUCT_START",52:"STRUCT_STOP",53:"NAMESPACE",55:"STYLE_SEPARATOR",57:"CLASS",58:"ANNOTATION_START",59:"ANNOTATION_END",60:"MEMBER",61:"SEPARATOR",63:"NOTE_FOR",65:"NOTE",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"CSSCLASS",85:"graphCodeTokens",87:"TAGSTART",88:"TAGEND",89:"==",90:"--",91:"PCT",92:"DEFAULT",93:"SPACE",94:"MINUS",95:"keywords",96:"UNICODE_TEXT",97:"NUM",98:"ALPHA",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,2],[3,1],[7,1],[7,1],[7,1],[7,1],[4,1],[5,4],[5,6],[13,1],[14,1],[18,1],[15,1],[12,4],[6,1],[6,2],[6,3],[26,3],[30,1],[30,2],[32,1],[32,1],[32,2],[32,2],[32,2],[25,1],[25,2],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,2],[25,2],[25,1],[37,4],[37,5],[49,2],[51,1],[51,2],[51,3],[38,1],[38,3],[38,4],[38,6],[54,2],[54,3],[40,4],[56,1],[56,2],[39,1],[39,2],[39,1],[39,1],[35,3],[35,4],[35,4],[35,5],[43,3],[43,2],[62,3],[62,2],[62,2],[62,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[41,3],[41,4],[41,3],[41,4],[41,4],[41,5],[41,3],[41,4],[41,4],[41,5],[41,4],[41,5],[41,5],[41,6],[42,3],[83,1],[83,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[86,1],[86,1],[86,1],[86,1],[31,1],[31,1],[31,1],[31,1],[33,1],[64,1]],performAction:function($e,ye,fn,Yt,Mi,qt,zi){var Se=qt.length-1;switch(Mi){case 4:Yt.setDirection("TB");break;case 5:Yt.setDirection("BT");break;case 6:Yt.setDirection("RL");break;case 7:Yt.setDirection("LR");break;case 11:Yt.parseDirective("%%{","open_directive");break;case 12:Yt.parseDirective(qt[Se],"type_directive");break;case 13:qt[Se]=qt[Se].trim().replace(/'/g,'"'),Yt.parseDirective(qt[Se],"arg_directive");break;case 14:Yt.parseDirective("}%%","close_directive","class");break;case 19:this.$=qt[Se-1];break;case 20:case 22:case 23:this.$=qt[Se];break;case 21:case 24:this.$=qt[Se-1]+qt[Se];break;case 25:case 26:this.$=qt[Se-1]+"~"+qt[Se]+"~";break;case 27:Yt.addRelation(qt[Se]);break;case 28:qt[Se-1].title=Yt.cleanupLabel(qt[Se]),Yt.addRelation(qt[Se-1]);break;case 37:this.$=qt[Se].trim(),Yt.setAccTitle(this.$);break;case 38:case 39:this.$=qt[Se].trim(),Yt.setAccDescription(this.$);break;case 40:Yt.addClassesToNamespace(qt[Se-3],qt[Se-1]);break;case 41:Yt.addClassesToNamespace(qt[Se-4],qt[Se-1]);break;case 42:this.$=qt[Se],Yt.addNamespace(qt[Se]);break;case 43:this.$=[qt[Se]];break;case 44:this.$=[qt[Se-1]];break;case 45:qt[Se].unshift(qt[Se-2]),this.$=qt[Se];break;case 47:Yt.setCssClass(qt[Se-2],qt[Se]);break;case 48:Yt.addMembers(qt[Se-3],qt[Se-1]);break;case 49:Yt.setCssClass(qt[Se-5],qt[Se-3]),Yt.addMembers(qt[Se-5],qt[Se-1]);break;case 50:this.$=qt[Se],Yt.addClass(qt[Se]);break;case 51:this.$=qt[Se-1],Yt.addClass(qt[Se-1]),Yt.setClassLabel(qt[Se-1],qt[Se]);break;case 52:Yt.addAnnotation(qt[Se],qt[Se-2]);break;case 53:this.$=[qt[Se]];break;case 54:qt[Se].push(qt[Se-1]),this.$=qt[Se];break;case 55:break;case 56:Yt.addMember(qt[Se-1],Yt.cleanupLabel(qt[Se]));break;case 57:break;case 58:break;case 59:this.$={id1:qt[Se-2],id2:qt[Se],relation:qt[Se-1],relationTitle1:"none",relationTitle2:"none"};break;case 60:this.$={id1:qt[Se-3],id2:qt[Se],relation:qt[Se-1],relationTitle1:qt[Se-2],relationTitle2:"none"};break;case 61:this.$={id1:qt[Se-3],id2:qt[Se],relation:qt[Se-2],relationTitle1:"none",relationTitle2:qt[Se-1]};break;case 62:this.$={id1:qt[Se-4],id2:qt[Se],relation:qt[Se-2],relationTitle1:qt[Se-3],relationTitle2:qt[Se-1]};break;case 63:Yt.addNote(qt[Se],qt[Se-1]);break;case 64:Yt.addNote(qt[Se]);break;case 65:this.$={type1:qt[Se-2],type2:qt[Se],lineType:qt[Se-1]};break;case 66:this.$={type1:"none",type2:qt[Se],lineType:qt[Se-1]};break;case 67:this.$={type1:qt[Se-1],type2:"none",lineType:qt[Se]};break;case 68:this.$={type1:"none",type2:"none",lineType:qt[Se]};break;case 69:this.$=Yt.relationType.AGGREGATION;break;case 70:this.$=Yt.relationType.EXTENSION;break;case 71:this.$=Yt.relationType.COMPOSITION;break;case 72:this.$=Yt.relationType.DEPENDENCY;break;case 73:this.$=Yt.relationType.LOLLIPOP;break;case 74:this.$=Yt.lineType.LINE;break;case 75:this.$=Yt.lineType.DOTTED_LINE;break;case 76:case 82:this.$=qt[Se-2],Yt.setClickEvent(qt[Se-1],qt[Se]);break;case 77:case 83:this.$=qt[Se-3],Yt.setClickEvent(qt[Se-2],qt[Se-1]),Yt.setTooltip(qt[Se-2],qt[Se]);break;case 78:this.$=qt[Se-2],Yt.setLink(qt[Se-1],qt[Se]);break;case 79:this.$=qt[Se-3],Yt.setLink(qt[Se-2],qt[Se-1],qt[Se]);break;case 80:this.$=qt[Se-3],Yt.setLink(qt[Se-2],qt[Se-1]),Yt.setTooltip(qt[Se-2],qt[Se]);break;case 81:this.$=qt[Se-4],Yt.setLink(qt[Se-3],qt[Se-2],qt[Se]),Yt.setTooltip(qt[Se-3],qt[Se-1]);break;case 84:this.$=qt[Se-3],Yt.setClickEvent(qt[Se-2],qt[Se-1],qt[Se]);break;case 85:this.$=qt[Se-4],Yt.setClickEvent(qt[Se-3],qt[Se-2],qt[Se-1]),Yt.setTooltip(qt[Se-3],qt[Se]);break;case 86:this.$=qt[Se-3],Yt.setLink(qt[Se-2],qt[Se]);break;case 87:this.$=qt[Se-4],Yt.setLink(qt[Se-3],qt[Se-1],qt[Se]);break;case 88:this.$=qt[Se-4],Yt.setLink(qt[Se-3],qt[Se-1]),Yt.setTooltip(qt[Se-3],qt[Se]);break;case 89:this.$=qt[Se-5],Yt.setLink(qt[Se-4],qt[Se-2],qt[Se]),Yt.setTooltip(qt[Se-4],qt[Se-1]);break;case 90:Yt.setCssClass(qt[Se-1],qt[Se]);break}},table:[{3:1,4:2,5:3,6:4,7:18,8:a,9:f,10:p,11:v,12:5,13:6,19:m,23:b,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:E,46:C,48:A,49:23,53:P,54:24,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st},{1:[3]},{1:[2,1]},{3:47,4:2,5:3,6:4,7:18,8:a,9:f,10:p,11:v,12:5,13:6,19:m,23:b,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:E,46:C,48:A,49:23,53:P,54:24,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st},{1:[2,3]},{1:[2,8]},{14:48,20:[1,49]},i(xt,[2,16],{16:[1,50]}),{16:[1,51]},{20:[2,11]},i(ht,[2,27],{36:[1,52]}),i(ht,[2,29]),i(ht,[2,30]),i(ht,[2,31]),i(ht,[2,32]),i(ht,[2,33]),i(ht,[2,34]),i(ht,[2,35]),i(ht,[2,36]),{45:[1,53]},{47:[1,54]},i(ht,[2,39]),i(ht,[2,55],{62:55,66:58,67:59,28:[1,56],36:[1,57],68:dt,69:Ct,70:tt,71:Pt,72:pt,73:Ft,74:X}),{50:[1,67]},i(Rt,[2,46],{50:[1,69],55:[1,68]}),i(ht,[2,57]),i(ht,[2,58]),{31:70,94:kt,96:mt,97:ct,98:yt},{31:38,32:71,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{31:38,32:72,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{31:38,32:73,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{28:[1,74]},{31:38,32:75,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{28:Bt,64:76},i(ht,[2,4]),i(ht,[2,5]),i(ht,[2,6]),i(ht,[2,7]),i(vt,[2,22],{31:38,33:39,32:78,34:[1,79],94:kt,96:mt,97:ct,98:yt,99:st}),i(vt,[2,23],{34:[1,80]}),{30:81,31:82,94:kt,96:mt,97:ct,98:yt},{31:38,32:83,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(Ot,[2,104]),i(Ot,[2,105]),i(Ot,[2,106]),i(Ot,[2,107]),i([1,16,24,27,28,34,36,50,52,55,68,69,70,71,72,73,74,79,81],[2,108]),{1:[2,2]},{15:84,17:[1,85],22:Vt},i([17,22],[2,12]),i(xt,[2,17],{25:7,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,7:18,32:22,49:23,54:24,31:38,33:39,6:87,8:a,9:f,10:p,11:v,44:E,46:C,48:A,53:P,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st}),{6:88,7:18,8:a,9:f,10:p,11:v,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:E,46:C,48:A,49:23,53:P,54:24,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st},i(ht,[2,28]),i(ht,[2,37]),i(ht,[2,38]),{28:[1,90],31:38,32:89,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{62:91,66:58,67:59,68:dt,69:Ct,70:tt,71:Pt,72:pt,73:Ft,74:X},i(ht,[2,56]),{67:92,73:Ft,74:X},i(qe,[2,68],{66:93,68:dt,69:Ct,70:tt,71:Pt,72:pt}),i(_n,[2,69]),i(_n,[2,70]),i(_n,[2,71]),i(_n,[2,72]),i(_n,[2,73]),i(Te,[2,74]),i(Te,[2,75]),{16:[1,95],38:96,51:94,54:24,57:F},{31:97,94:kt,96:mt,97:ct,98:yt},{56:98,60:Wn},{59:[1,100]},{28:[1,101]},{28:[1,102]},{79:[1,103],81:[1,104]},{31:105,94:kt,96:mt,97:ct,98:yt},{28:Bt,64:106},i(ht,[2,64]),i(ht,[2,109]),i(vt,[2,24]),i(vt,[2,25]),i(vt,[2,26]),{50:[2,42]},{30:107,31:82,50:[2,20],94:kt,96:mt,97:ct,98:yt},i(Ae,[2,50],{26:108,27:[1,109]}),{16:[1,110]},{18:111,21:[1,112]},{16:[2,14]},i(xt,[2,18]),{24:[1,113]},i(ne,[2,59]),{31:38,32:114,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{28:[1,116],31:38,32:115,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(qe,[2,67],{66:117,68:dt,69:Ct,70:tt,71:Pt,72:pt}),i(qe,[2,66]),{52:[1,118]},{38:96,51:119,54:24,57:F},{16:[1,120],52:[2,43]},i(Rt,[2,47],{50:[1,121]}),{52:[1,122]},{52:[2,53],56:123,60:Wn},{31:38,32:124,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(ht,[2,76],{28:[1,125]}),i(ht,[2,78],{28:[1,127],77:[1,126]}),i(ht,[2,82],{28:[1,128],80:[1,129]}),{28:[1,130]},i(ht,[2,90]),i(ht,[2,63]),{50:[2,21]},i(Ae,[2,51]),{28:[1,131]},i(ke,[2,9]),{15:132,22:Vt},{22:[2,13]},{1:[2,15]},i(ne,[2,61]),i(ne,[2,60]),{31:38,32:133,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(qe,[2,65]),i(ht,[2,40]),{52:[1,134]},{38:96,51:135,52:[2,44],54:24,57:F},{56:136,60:Wn},i(Rt,[2,48]),{52:[2,54]},i(ht,[2,52]),i(ht,[2,77]),i(ht,[2,79]),i(ht,[2,80],{77:[1,137]}),i(ht,[2,83]),i(ht,[2,84],{28:[1,138]}),i(ht,[2,86],{28:[1,140],77:[1,139]}),{29:[1,141]},{16:[1,142]},i(ne,[2,62]),i(ht,[2,41]),{52:[2,45]},{52:[1,143]},i(ht,[2,81]),i(ht,[2,85]),i(ht,[2,87]),i(ht,[2,88],{77:[1,144]}),i(Ae,[2,19]),i(ke,[2,10]),i(Rt,[2,49]),i(ht,[2,89])],defaultActions:{2:[2,1],4:[2,3],5:[2,8],9:[2,11],47:[2,2],81:[2,42],86:[2,14],107:[2,21],112:[2,13],113:[2,15],123:[2,54],135:[2,45]},parseError:function($e,ye){if(ye.recoverable)this.trace($e);else{var fn=new Error($e);throw fn.hash=ye,fn}},parse:function($e){var ye=this,fn=[0],Yt=[],Mi=[null],qt=[],zi=this.table,Se="",ki=0,Ri=0,pi=2,bi=1,dn=qt.slice.call(arguments,1),Nn=Object.create(this.lexer),Wr={yy:{}};for(var Li in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Li)&&(Wr.yy[Li]=this.yy[Li]);Nn.setInput($e,Wr.yy),Wr.yy.lexer=Nn,Wr.yy.parser=this,typeof Nn.yylloc>"u"&&(Nn.yylloc={});var is=Nn.yylloc;qt.push(is);var Ts=Nn.options&&Nn.options.ranges;typeof Wr.yy.parseError=="function"?this.parseError=Wr.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Aa(){var Mc;return Mc=Yt.pop()||Nn.lex()||bi,typeof Mc!="number"&&(Mc instanceof Array&&(Yt=Mc,Mc=Yt.pop()),Mc=ye.symbols_[Mc]||Mc),Mc}for(var Xi,Ga,_r,qr,Oi={},gr,Js,Vn,Xc;;){if(Ga=fn[fn.length-1],this.defaultActions[Ga]?_r=this.defaultActions[Ga]:((Xi===null||typeof Xi>"u")&&(Xi=Aa()),_r=zi[Ga]&&zi[Ga][Xi]),typeof _r>"u"||!_r.length||!_r[0]){var Er="";Xc=[];for(gr in zi[Ga])this.terminals_[gr]&&gr>pi&&Xc.push("'"+this.terminals_[gr]+"'");Nn.showPosition?Er="Parse error on line "+(ki+1)+`: +`+Nn.showPosition()+` +Expecting `+Xc.join(", ")+", got '"+(this.terminals_[Xi]||Xi)+"'":Er="Parse error on line "+(ki+1)+": Unexpected "+(Xi==bi?"end of input":"'"+(this.terminals_[Xi]||Xi)+"'"),this.parseError(Er,{text:Nn.match,token:this.terminals_[Xi]||Xi,line:Nn.yylineno,loc:is,expected:Xc})}if(_r[0]instanceof Array&&_r.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ga+", token: "+Xi);switch(_r[0]){case 1:fn.push(Xi),Mi.push(Nn.yytext),qt.push(Nn.yylloc),fn.push(_r[1]),Xi=null,Ri=Nn.yyleng,Se=Nn.yytext,ki=Nn.yylineno,is=Nn.yylloc;break;case 2:if(Js=this.productions_[_r[1]][1],Oi.$=Mi[Mi.length-Js],Oi._$={first_line:qt[qt.length-(Js||1)].first_line,last_line:qt[qt.length-1].last_line,first_column:qt[qt.length-(Js||1)].first_column,last_column:qt[qt.length-1].last_column},Ts&&(Oi._$.range=[qt[qt.length-(Js||1)].range[0],qt[qt.length-1].range[1]]),qr=this.performAction.apply(Oi,[Se,Ri,ki,Wr.yy,_r[1],Mi,qt].concat(dn)),typeof qr<"u")return qr;Js&&(fn=fn.slice(0,-1*Js*2),Mi=Mi.slice(0,-1*Js),qt=qt.slice(0,-1*Js)),fn.push(this.productions_[_r[1]][0]),Mi.push(Oi.$),qt.push(Oi._$),Vn=zi[fn[fn.length-2]][fn[fn.length-1]],fn.push(Vn);break;case 3:return!0}}return!0}},Ee=function(){var Ce={EOF:1,parseError:function(ye,fn){if(this.yy.parser)this.yy.parser.parseError(ye,fn);else throw new Error(ye)},setInput:function($e,ye){return this.yy=ye||this.yy||{},this._input=$e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var $e=this._input[0];this.yytext+=$e,this.yyleng++,this.offset++,this.match+=$e,this.matched+=$e;var ye=$e.match(/(?:\r\n?|\n).*/g);return ye?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),$e},unput:function($e){var ye=$e.length,fn=$e.split(/(?:\r\n?|\n)/g);this._input=$e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ye),this.offset-=ye;var Yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),fn.length-1&&(this.yylineno-=fn.length-1);var Mi=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:fn?(fn.length===Yt.length?this.yylloc.first_column:0)+Yt[Yt.length-fn.length].length-fn[0].length:this.yylloc.first_column-ye},this.options.ranges&&(this.yylloc.range=[Mi[0],Mi[0]+this.yyleng-ye]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function($e){this.unput(this.match.slice($e))},pastInput:function(){var $e=this.matched.substr(0,this.matched.length-this.match.length);return($e.length>20?"...":"")+$e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var $e=this.match;return $e.length<20&&($e+=this._input.substr(0,20-$e.length)),($e.substr(0,20)+($e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var $e=this.pastInput(),ye=new Array($e.length+1).join("-");return $e+this.upcomingInput()+` +`+ye+"^"},test_match:function($e,ye){var fn,Yt,Mi;if(this.options.backtrack_lexer&&(Mi={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Mi.yylloc.range=this.yylloc.range.slice(0))),Yt=$e[0].match(/(?:\r\n?|\n).*/g),Yt&&(this.yylineno+=Yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Yt?Yt[Yt.length-1].length-Yt[Yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+$e[0].length},this.yytext+=$e[0],this.match+=$e[0],this.matches=$e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice($e[0].length),this.matched+=$e[0],fn=this.performAction.call(this,this.yy,this,ye,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),fn)return fn;if(this._backtrack){for(var qt in Mi)this[qt]=Mi[qt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var $e,ye,fn,Yt;this._more||(this.yytext="",this.match="");for(var Mi=this._currentRules(),qt=0;qtye[0].length)){if(ye=fn,Yt=qt,this.options.backtrack_lexer){if($e=this.test_match(fn,Mi[qt]),$e!==!1)return $e;if(this._backtrack){ye=!1;continue}else return!1}else if(!this.options.flex)break}return ye?($e=this.test_match(ye,Mi[Yt]),$e!==!1?$e:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ye=this.next();return ye||this.lex()},begin:function(ye){this.conditionStack.push(ye)},popState:function(){var ye=this.conditionStack.length-1;return ye>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ye){return ye=this.conditionStack.length-1-Math.abs(ye||0),ye>=0?this.conditionStack[ye]:"INITIAL"},pushState:function(ye){this.begin(ye)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ye,fn,Yt,Mi){switch(Yt){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:break;case 10:break;case 11:return this.begin("acc_title"),44;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),46;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 19:break;case 20:return 23;case 21:return 23;case 22:return"EDGE_STATE";case 23:this.begin("callback_name");break;case 24:this.popState();break;case 25:this.popState(),this.begin("callback_args");break;case 26:return 79;case 27:this.popState();break;case 28:return 80;case 29:this.popState();break;case 30:return"STR";case 31:this.begin("string");break;case 32:return this.begin("namespace"),53;case 33:return this.popState(),16;case 34:break;case 35:return this.begin("namespace-body"),50;case 36:return this.popState(),52;case 37:return"EOF_IN_STRUCT";case 38:return 16;case 39:break;case 40:return"EDGE_STATE";case 41:return this.begin("class"),57;case 42:return this.popState(),16;case 43:break;case 44:return this.popState(),this.popState(),52;case 45:return this.begin("class-body"),50;case 46:return this.popState(),52;case 47:return"EOF_IN_STRUCT";case 48:return"EDGE_STATE";case 49:return"OPEN_IN_STRUCT";case 50:break;case 51:return"MEMBER";case 52:return 82;case 53:return 75;case 54:return 76;case 55:return 78;case 56:return 63;case 57:return 65;case 58:return 58;case 59:return 59;case 60:return 81;case 61:this.popState();break;case 62:return"GENERICTYPE";case 63:this.begin("generic");break;case 64:this.popState();break;case 65:return"BQUOTE_STR";case 66:this.begin("bqstring");break;case 67:return 77;case 68:return 77;case 69:return 77;case 70:return 77;case 71:return 69;case 72:return 69;case 73:return 71;case 74:return 71;case 75:return 70;case 76:return 68;case 77:return 72;case 78:return 73;case 79:return 74;case 80:return 36;case 81:return 55;case 82:return 94;case 83:return"DOT";case 84:return"PLUS";case 85:return 91;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 98;case 89:return 27;case 90:return 29;case 91:return"PUNCTUATION";case 92:return 97;case 93:return 96;case 94:return 93;case 95:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[31,36,37,38,39,40,41,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},namespace:{rules:[31,32,33,34,35,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},"class-body":{rules:[31,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},class:{rules:[31,42,43,44,45,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},acc_descr_multiline:{rules:[16,17,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},acc_descr:{rules:[14,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},acc_title:{rules:[12,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},arg_directive:{rules:[7,8,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},type_directive:{rules:[6,7,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},open_directive:{rules:[5,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},callback_args:{rules:[27,28,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},callback_name:{rules:[24,25,26,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},href:{rules:[31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},struct:{rules:[31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},generic:{rules:[31,52,53,54,55,56,57,58,59,60,61,62,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},bqstring:{rules:[31,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},string:{rules:[29,30,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,31,32,41,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!0}}};return Ce}();Ve.lexer=Ee;function He(){this.yy={}}return He.prototype=Ve,Ve.Parser=He,new He}();fgt.parser=fgt;const ARt=fgt,IK="classId-";let dgt=[],nh={},OK=[],LRt=0,lk={},ggt=0,BP=[];const N5=i=>ui.sanitizeText(i,De()),aVe=function(i,a,f){J1.parseDirective(this,i,a,f)},dL=function(i){let a="",f=i;if(i.indexOf("~")>0){const p=i.split("~");f=N5(p[0]),a=N5(p[1])}return{className:f,type:a}},oVe=function(i,a){a&&(a=N5(a));const{className:f}=dL(i);nh[f].label=a},pgt=function(i){const a=dL(i);nh[a.className]===void 0&&(nh[a.className]={id:a.className,type:a.type,label:a.className,cssClasses:[],methods:[],members:[],annotations:[],domId:IK+a.className+"-"+LRt},LRt++)},MRt=function(i){if(i in nh)return nh[i].domId;throw new Error("Class not found: "+i)},cVe=function(){dgt=[],nh={},OK=[],BP=[],BP.push(IRt),lk={},ggt=0,cg()},uVe=function(i){return nh[i]},lVe=function(){return nh},hVe=function(){return dgt},fVe=function(){return OK},dVe=function(i){Wt.debug("Adding relation: "+JSON.stringify(i)),pgt(i.id1),pgt(i.id2),i.id1=dL(i.id1).className,i.id2=dL(i.id2).className,i.relationTitle1=ui.sanitizeText(i.relationTitle1.trim(),De()),i.relationTitle2=ui.sanitizeText(i.relationTitle2.trim(),De()),dgt.push(i)},gVe=function(i,a){const f=dL(i).className;nh[f].annotations.push(a)},DRt=function(i,a){const f=dL(i).className,p=nh[f];if(typeof a=="string"){const v=a.trim();v.startsWith("<<")&&v.endsWith(">>")?p.annotations.push(N5(v.substring(2,v.length-2))):v.indexOf(")")>0?p.methods.push(N5(v)):v&&p.members.push(N5(v))}},pVe=function(i,a){Array.isArray(a)&&(a.reverse(),a.forEach(f=>DRt(i,f)))},bVe=function(i,a){const f={id:`note${OK.length}`,class:a,text:i};OK.push(f)},vVe=function(i){return i.startsWith(":")&&(i=i.substring(1)),N5(i.trim())},bgt=function(i,a){i.split(",").forEach(function(f){let p=f;f[0].match(/\d/)&&(p=IK+p),nh[p]!==void 0&&nh[p].cssClasses.push(a)})},wVe=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(nh[f].tooltip=N5(a))})},mVe=function(i,a){return a?lk[a].classes[i].tooltip:nh[i].tooltip},yVe=function(i,a,f){const p=De();i.split(",").forEach(function(v){let m=v;v[0].match(/\d/)&&(m=IK+m),nh[m]!==void 0&&(nh[m].link=to.formatUrl(a,p),p.securityLevel==="sandbox"?nh[m].linkTarget="_top":typeof f=="string"?nh[m].linkTarget=N5(f):nh[m].linkTarget="_blank")}),bgt(i,"clickable")},xVe=function(i,a,f){i.split(",").forEach(function(p){kVe(p,a,f),nh[p].haveCallback=!0}),bgt(i,"clickable")},kVe=function(i,a,f){if(De().securityLevel!=="loose"||a===void 0)return;const v=i;if(nh[v]!==void 0){const m=MRt(v);let b=[];if(typeof f=="string"){b=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let E=0;E")),v.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),xr(this).classed("hover",!1)})};BP.push(IRt);let ORt="TB";const NK={parseDirective:aVe,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,getConfig:()=>De().class,addClass:pgt,bindFunctions:EVe,clear:cVe,getClass:uVe,getClasses:lVe,getNotes:fVe,addAnnotation:gVe,addNote:bVe,getRelations:hVe,addRelation:dVe,getDirection:()=>ORt,setDirection:i=>{ORt=i},addMember:DRt,addMembers:pVe,cleanupLabel:vVe,lineType:TVe,relationType:_Ve,setClickEvent:xVe,setCssClass:bgt,setLink:yVe,getTooltip:mVe,setTooltip:wVe,lookUpDomId:MRt,setDiagramTitle:Nb,getDiagramTitle:hp,setClassLabel:oVe,addNamespace:function(i){lk[i]===void 0&&(lk[i]={id:i,classes:{},children:{},domId:IK+i+"-"+ggt},ggt++)},addClassesToNamespace:function(i,a){lk[i]!==void 0&&a.map(f=>{nh[f].parent=i,lk[i].classes[f]=nh[f]})},getNamespace:function(i){return lk[i]},getNamespaces:function(){return lk}},NRt=i=>`g.classGroup text { + fill: ${i.nodeBorder}; + fill: ${i.classText}; + stroke: none; + font-family: ${i.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${i.classText}; +} +.edgeLabel .label rect { + fill: ${i.mainBkg}; +} +.label text { + fill: ${i.classText}; +} +.edgeLabel .label span { + background: ${i.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${i.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; +} + +g.classGroup line { + stroke: ${i.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${i.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${i.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${i.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; +} +`;let PK={};const FK=20,RP=function(i){const a=Object.entries(PK).find(f=>f[1].label===i);if(a)return a[0]},CVe=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},SVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ARt,db:NK,renderer:{draw:function(i,a,f,p){const v=De().class;PK={},Wt.info("Rendering diagram "+i);const m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=E.select(`[id='${a}']`);CVe(C);const A=new l1({multigraph:!0});A.setGraph({isMultiGraph:!0}),A.setDefaultEdgeLabel(function(){return{}});const P=p.db.getClasses(),F=Object.keys(P);for(const it of F){const ft=P[it],Tt=S0t.drawClass(C,ft,v,p);PK[Tt.id]=Tt,A.setNode(Tt.id,Tt),Wt.info("Org height: "+Tt.height)}p.db.getRelations().forEach(function(it){Wt.info("tjoho"+RP(it.id1)+RP(it.id2)+JSON.stringify(it)),A.setEdge(RP(it.id1),RP(it.id2),{relation:it},it.title||"DEFAULT")}),p.db.getNotes().forEach(function(it){Wt.debug(`Adding note: ${JSON.stringify(it)}`);const ft=S0t.drawNote(C,it,v,p);PK[ft.id]=ft,A.setNode(ft.id,ft),it.class&&it.class in P&&A.setEdge(it.id,RP(it.class),{relation:{id1:it.id,id2:it.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),nL(A),A.nodes().forEach(function(it){it!==void 0&&A.node(it)!==void 0&&(Wt.debug("Node "+it+": "+JSON.stringify(A.node(it))),E.select("#"+(p.db.lookUpDomId(it)||it)).attr("transform","translate("+(A.node(it).x-A.node(it).width/2)+","+(A.node(it).y-A.node(it).height/2)+" )"))}),A.edges().forEach(function(it){it!==void 0&&A.edge(it)!==void 0&&(Wt.debug("Edge "+it.v+" -> "+it.w+": "+JSON.stringify(A.edge(it))),S0t.drawEdge(C,A.edge(it),A.edge(it).relation,v,p))});const H=C.node().getBBox(),Y=H.width+FK*2,rt=H.height+FK*2;og(C,rt,Y,v.useMaxWidth);const J=`${H.x-FK} ${H.y-FK} ${Y} ${rt}`;Wt.debug(`viewBox ${J}`),C.attr("viewBox",J)}},styles:NRt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,NK.clear()}}},Symbol.toStringTag,{value:"Module"})),vgt=i=>ui.sanitizeText(i,De());let wgt={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const AVe=function(i,a,f,p){const v=Object.keys(i);Wt.info("keys:",v),Wt.info(i),v.forEach(function(m){var A,P;const b=i[m],C={shape:"rect",id:b.id,domId:b.domId,labelText:vgt(b.id),labelStyle:"",style:"fill: none; stroke: black",padding:((A=De().flowchart)==null?void 0:A.padding)??((P=De().class)==null?void 0:P.padding)};a.setNode(b.id,C),PRt(b.classes,a,f,p,b.id),Wt.info("setNode",C)})},PRt=function(i,a,f,p,v){const m=Object.keys(i);Wt.info("keys:",m),Wt.info(i),m.filter(b=>i[b].parent==v).forEach(function(b){var H,Y;const E=i[b],C=E.cssClasses.join(" "),A={labelStyle:"",style:""},P=E.label??E.id,F=0,j="class_box",R={labelStyle:A.labelStyle,shape:j,labelText:vgt(P),classData:E,rx:F,ry:F,class:C,style:A.style,id:E.id,domId:E.domId,tooltip:p.db.getTooltip(E.id,v)||"",haveCallback:E.haveCallback,link:E.link,width:E.type==="group"?500:void 0,type:E.type,padding:((H=De().flowchart)==null?void 0:H.padding)??((Y=De().class)==null?void 0:Y.padding)};a.setNode(E.id,R),v&&a.setParent(E.id,v),Wt.info("setNode",R)})},LVe=function(i,a,f,p){Wt.info(i),i.forEach(function(v,m){var Y,rt;const b=v,E="",C={labelStyle:"",style:""},A=b.text,P=0,F="note",j={labelStyle:C.labelStyle,shape:F,labelText:vgt(A),noteData:b,rx:P,ry:P,class:E,style:C.style,id:b.id,domId:b.id,tooltip:"",type:"note",padding:((Y=De().flowchart)==null?void 0:Y.padding)??((rt=De().class)==null?void 0:rt.padding)};if(a.setNode(b.id,j),Wt.info("setNode",j),!b.class||!(b.class in p))return;const R=f+m,H={id:`edgeNote${R}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:Z2(wgt.curve,ig)};a.setEdge(b.id,b.class,H,R)})},MVe=function(i,a){const f=De().flowchart;let p=0;i.forEach(function(v){var b;p++;const m={classes:"relation",pattern:v.relation.lineType==1?"dashed":"solid",id:"id"+p,arrowhead:v.type==="arrow_open"?"none":"normal",startLabelRight:v.relationTitle1==="none"?"":v.relationTitle1,endLabelLeft:v.relationTitle2==="none"?"":v.relationTitle2,arrowTypeStart:FRt(v.relation.type1),arrowTypeEnd:FRt(v.relation.type2),style:"fill:none",labelStyle:"",curve:Z2(f==null?void 0:f.curve,ig)};if(Wt.info(m,v),v.style!==void 0){const E=em(v.style);m.style=E.style,m.labelStyle=E.labelStyle}v.text=v.title,v.text===void 0?v.style!==void 0&&(m.arrowheadStyle="fill: #333"):(m.arrowheadStyle="fill: #333",m.labelpos="c",((b=De().flowchart)==null?void 0:b.htmlLabels)??De().htmlLabels?(m.labelType="html",m.label=''+v.text+""):(m.labelType="text",m.label=v.text.replace(ui.lineBreakRegex,` +`),v.style===void 0&&(m.style=m.style||"stroke: #333; stroke-width: 1.5px;fill:none"),m.labelStyle=m.labelStyle.replace("color:","fill:"))),a.setEdge(v.id1,v.id2,m,p)})},DVe=function(i){wgt={...wgt,...i}},IVe=async function(i,a,f,p){Wt.info("Drawing class - ",a);const v=De().flowchart??De().class,m=De().securityLevel;Wt.info("config:",v);const b=(v==null?void 0:v.nodeSpacing)??50,E=(v==null?void 0:v.rankSpacing)??50,C=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:p.db.getDirection(),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),A=p.db.getNamespaces(),P=p.db.getClasses(),F=p.db.getRelations(),j=p.db.getNotes();Wt.info(F),AVe(A,C,a,p),PRt(P,C,a,p),MVe(F,C),LVe(j,C,F.length+1,P);let R;m==="sandbox"&&(R=xr("#i"+a));const H=xr(m==="sandbox"?R.nodes()[0].contentDocument.body:"body"),Y=H.select(`[id="${a}"]`),rt=H.select("#"+a+" g");if(await A0t(rt,C,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",a),to.insertTitle(Y,"classTitleText",(v==null?void 0:v.titleTopMargin)??5,p.db.getDiagramTitle()),s9(C,Y,v==null?void 0:v.diagramPadding,v==null?void 0:v.useMaxWidth),!(v!=null&&v.htmlLabels)){const J=m==="sandbox"?R.nodes()[0].contentDocument:document,it=J.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const ft of it){const Tt=ft.getBBox(),kt=J.createElementNS("http://www.w3.org/2000/svg","rect");kt.setAttribute("rx",0),kt.setAttribute("ry",0),kt.setAttribute("width",Tt.width),kt.setAttribute("height",Tt.height),ft.insertBefore(kt,ft.firstChild)}}};function FRt(i){let a;switch(i){case 0:a="aggregation";break;case 1:a="extension";break;case 2:a="composition";break;case 3:a="dependency";break;case 4:a="lollipop";break;default:a="none"}return a}const OVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ARt,db:NK,renderer:{setConf:DVe,draw:IVe},styles:NRt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,NK.clear()}}},Symbol.toStringTag,{value:"Module"}));var mgt=function(){var i=function(Bt,vt,Ot,Vt){for(Ot=Ot||{},Vt=Bt.length;Vt--;Ot[Bt[Vt]]=vt);return Ot},a=[1,2],f=[1,3],p=[1,5],v=[1,7],m=[2,5],b=[1,15],E=[1,17],C=[1,21],A=[1,22],P=[1,23],F=[1,24],j=[1,37],R=[1,25],H=[1,26],Y=[1,27],rt=[1,28],J=[1,29],it=[1,32],ft=[1,33],Tt=[1,34],kt=[1,35],mt=[1,36],ct=[1,39],yt=[1,40],st=[1,41],xt=[1,42],ht=[1,38],dt=[1,45],Ct=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],tt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Pt=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],pt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Ft={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt",52:"direction_rl",53:"direction_lr",55:";",56:"EDGE_STATE",57:"STYLE_SEPARATOR",58:"left_of",59:"right_of",60:"open_directive",61:"type_directive",62:"arg_directive",63:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[11,3],[11,3],[12,3],[6,3],[6,5],[32,1],[32,1],[32,1],[32,1],[54,1],[54,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1],[45,1],[46,1],[49,1],[47,1]],performAction:function(vt,Ot,Vt,qe,_n,Te,Wn){var Ae=Te.length-1;switch(_n){case 4:return qe.setRootDoc(Te[Ae]),Te[Ae];case 5:this.$=[];break;case 6:Te[Ae]!="nl"&&(Te[Ae-1].push(Te[Ae]),this.$=Te[Ae-1]);break;case 7:case 8:this.$=Te[Ae];break;case 9:this.$="nl";break;case 12:this.$=Te[Ae];break;case 13:const Ee=Te[Ae-1];Ee.description=qe.trimColon(Te[Ae]),this.$=Ee;break;case 14:this.$={stmt:"relation",state1:Te[Ae-2],state2:Te[Ae]};break;case 15:const He=qe.trimColon(Te[Ae]);this.$={stmt:"relation",state1:Te[Ae-3],state2:Te[Ae-1],description:He};break;case 19:this.$={stmt:"state",id:Te[Ae-3],type:"default",description:"",doc:Te[Ae-1]};break;case 20:var ne=Te[Ae],ke=Te[Ae-2].trim();if(Te[Ae].match(":")){var Ve=Te[Ae].split(":");ne=Ve[0],ke=[ke,Ve[1]]}this.$={stmt:"state",id:ne,type:"default",description:ke};break;case 21:this.$={stmt:"state",id:Te[Ae-3],type:"default",description:Te[Ae-5],doc:Te[Ae-1]};break;case 22:this.$={stmt:"state",id:Te[Ae],type:"fork"};break;case 23:this.$={stmt:"state",id:Te[Ae],type:"join"};break;case 24:this.$={stmt:"state",id:Te[Ae],type:"choice"};break;case 25:this.$={stmt:"state",id:qe.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:Te[Ae-1].trim(),note:{position:Te[Ae-2].trim(),text:Te[Ae].trim()}};break;case 30:this.$=Te[Ae].trim(),qe.setAccTitle(this.$);break;case 31:case 32:this.$=Te[Ae].trim(),qe.setAccDescription(this.$);break;case 33:case 34:this.$={stmt:"classDef",id:Te[Ae-1].trim(),classes:Te[Ae].trim()};break;case 35:this.$={stmt:"applyClass",id:Te[Ae-1].trim(),styleClass:Te[Ae].trim()};break;case 38:qe.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:qe.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:qe.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:qe.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:Te[Ae].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:Te[Ae-2].trim(),classes:[Te[Ae].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:Te[Ae-2].trim(),classes:[Te[Ae].trim()],type:"default",description:""};break;case 50:qe.parseDirective("%%{","open_directive");break;case 51:qe.parseDirective(Te[Ae],"type_directive");break;case 52:Te[Ae]=Te[Ae].trim().replace(/'/g,'"'),qe.parseDirective(Te[Ae],"arg_directive");break;case 53:qe.parseDirective("}%%","close_directive","state");break}},table:[{3:1,4:a,5:f,6:4,7:p,45:6,60:v},{1:[3]},{3:8,4:a,5:f,6:4,7:p,45:6,60:v},{3:9,4:a,5:f,6:4,7:p,45:6,60:v},{3:10,4:a,5:f,6:4,7:p,45:6,60:v},i([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],m,{8:11}),{46:12,61:[1,13]},{61:[2,50]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:b,5:E,6:30,9:14,10:16,11:18,12:19,13:20,16:C,17:A,19:P,22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},{47:43,48:[1,44],63:dt},i([48,63],[2,51]),i(Ct,[2,6]),{6:30,10:46,11:18,12:19,13:20,16:C,17:A,19:P,22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},i(Ct,[2,8]),i(Ct,[2,9]),i(Ct,[2,10]),i(Ct,[2,11]),i(Ct,[2,12],{14:[1,47],15:[1,48]}),i(Ct,[2,16]),{18:[1,49]},i(Ct,[2,18],{20:[1,50]}),{23:[1,51]},i(Ct,[2,22]),i(Ct,[2,23]),i(Ct,[2,24]),i(Ct,[2,25]),{30:52,31:[1,53],58:[1,54],59:[1,55]},i(Ct,[2,28]),i(Ct,[2,29]),{34:[1,56]},{36:[1,57]},i(Ct,[2,32]),{39:[1,58],41:[1,59]},{43:[1,60]},i(tt,[2,44],{57:[1,61]}),i(tt,[2,45],{57:[1,62]}),i(Ct,[2,38]),i(Ct,[2,39]),i(Ct,[2,40]),i(Ct,[2,41]),i(Pt,[2,36]),{49:63,62:[1,64]},i(Pt,[2,53]),i(Ct,[2,7]),i(Ct,[2,13]),{13:65,24:j,56:ht},i(Ct,[2,17]),i(pt,m,{8:66}),{24:[1,67]},{24:[1,68]},{23:[1,69]},{24:[2,48]},{24:[2,49]},i(Ct,[2,30]),i(Ct,[2,31]),{40:[1,70]},{40:[1,71]},{44:[1,72]},{24:[1,73]},{24:[1,74]},{47:75,63:dt},{63:[2,52]},i(Ct,[2,14],{14:[1,76]}),{4:b,5:E,6:30,9:14,10:16,11:18,12:19,13:20,16:C,17:A,19:P,21:[1,77],22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},i(Ct,[2,20],{20:[1,78]}),{31:[1,79]},{24:[1,80]},i(Ct,[2,33]),i(Ct,[2,34]),i(Ct,[2,35]),i(tt,[2,46]),i(tt,[2,47]),i(Pt,[2,37]),i(Ct,[2,15]),i(Ct,[2,19]),i(pt,m,{8:81}),i(Ct,[2,26]),i(Ct,[2,27]),{4:b,5:E,6:30,9:14,10:16,11:18,12:19,13:20,16:C,17:A,19:P,21:[1,82],22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},i(Ct,[2,21])],defaultActions:{7:[2,50],8:[2,1],9:[2,2],10:[2,3],54:[2,48],55:[2,49],64:[2,52]},parseError:function(vt,Ot){if(Ot.recoverable)this.trace(vt);else{var Vt=new Error(vt);throw Vt.hash=Ot,Vt}},parse:function(vt){var Ot=this,Vt=[0],qe=[],_n=[null],Te=[],Wn=this.table,Ae="",ne=0,ke=0,Ve=2,Ee=1,He=Te.slice.call(arguments,1),Ce=Object.create(this.lexer),$e={yy:{}};for(var ye in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ye)&&($e.yy[ye]=this.yy[ye]);Ce.setInput(vt,$e.yy),$e.yy.lexer=Ce,$e.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var fn=Ce.yylloc;Te.push(fn);var Yt=Ce.options&&Ce.options.ranges;typeof $e.yy.parseError=="function"?this.parseError=$e.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mi(){var Li;return Li=qe.pop()||Ce.lex()||Ee,typeof Li!="number"&&(Li instanceof Array&&(qe=Li,Li=qe.pop()),Li=Ot.symbols_[Li]||Li),Li}for(var qt,zi,Se,ki,Ri={},pi,bi,dn,Nn;;){if(zi=Vt[Vt.length-1],this.defaultActions[zi]?Se=this.defaultActions[zi]:((qt===null||typeof qt>"u")&&(qt=Mi()),Se=Wn[zi]&&Wn[zi][qt]),typeof Se>"u"||!Se.length||!Se[0]){var Wr="";Nn=[];for(pi in Wn[zi])this.terminals_[pi]&&pi>Ve&&Nn.push("'"+this.terminals_[pi]+"'");Ce.showPosition?Wr="Parse error on line "+(ne+1)+`: +`+Ce.showPosition()+` +Expecting `+Nn.join(", ")+", got '"+(this.terminals_[qt]||qt)+"'":Wr="Parse error on line "+(ne+1)+": Unexpected "+(qt==Ee?"end of input":"'"+(this.terminals_[qt]||qt)+"'"),this.parseError(Wr,{text:Ce.match,token:this.terminals_[qt]||qt,line:Ce.yylineno,loc:fn,expected:Nn})}if(Se[0]instanceof Array&&Se.length>1)throw new Error("Parse Error: multiple actions possible at state: "+zi+", token: "+qt);switch(Se[0]){case 1:Vt.push(qt),_n.push(Ce.yytext),Te.push(Ce.yylloc),Vt.push(Se[1]),qt=null,ke=Ce.yyleng,Ae=Ce.yytext,ne=Ce.yylineno,fn=Ce.yylloc;break;case 2:if(bi=this.productions_[Se[1]][1],Ri.$=_n[_n.length-bi],Ri._$={first_line:Te[Te.length-(bi||1)].first_line,last_line:Te[Te.length-1].last_line,first_column:Te[Te.length-(bi||1)].first_column,last_column:Te[Te.length-1].last_column},Yt&&(Ri._$.range=[Te[Te.length-(bi||1)].range[0],Te[Te.length-1].range[1]]),ki=this.performAction.apply(Ri,[Ae,ke,ne,$e.yy,Se[1],_n,Te].concat(He)),typeof ki<"u")return ki;bi&&(Vt=Vt.slice(0,-1*bi*2),_n=_n.slice(0,-1*bi),Te=Te.slice(0,-1*bi)),Vt.push(this.productions_[Se[1]][0]),_n.push(Ri.$),Te.push(Ri._$),dn=Wn[Vt[Vt.length-2]][Vt[Vt.length-1]],Vt.push(dn);break;case 3:return!0}}return!0}},X=function(){var Bt={EOF:1,parseError:function(Ot,Vt){if(this.yy.parser)this.yy.parser.parseError(Ot,Vt);else throw new Error(Ot)},setInput:function(vt,Ot){return this.yy=Ot||this.yy||{},this._input=vt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var vt=this._input[0];this.yytext+=vt,this.yyleng++,this.offset++,this.match+=vt,this.matched+=vt;var Ot=vt.match(/(?:\r\n?|\n).*/g);return Ot?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),vt},unput:function(vt){var Ot=vt.length,Vt=vt.split(/(?:\r\n?|\n)/g);this._input=vt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ot),this.offset-=Ot;var qe=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Vt.length-1&&(this.yylineno-=Vt.length-1);var _n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Vt?(Vt.length===qe.length?this.yylloc.first_column:0)+qe[qe.length-Vt.length].length-Vt[0].length:this.yylloc.first_column-Ot},this.options.ranges&&(this.yylloc.range=[_n[0],_n[0]+this.yyleng-Ot]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(vt){this.unput(this.match.slice(vt))},pastInput:function(){var vt=this.matched.substr(0,this.matched.length-this.match.length);return(vt.length>20?"...":"")+vt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var vt=this.match;return vt.length<20&&(vt+=this._input.substr(0,20-vt.length)),(vt.substr(0,20)+(vt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var vt=this.pastInput(),Ot=new Array(vt.length+1).join("-");return vt+this.upcomingInput()+` +`+Ot+"^"},test_match:function(vt,Ot){var Vt,qe,_n;if(this.options.backtrack_lexer&&(_n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(_n.yylloc.range=this.yylloc.range.slice(0))),qe=vt[0].match(/(?:\r\n?|\n).*/g),qe&&(this.yylineno+=qe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:qe?qe[qe.length-1].length-qe[qe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+vt[0].length},this.yytext+=vt[0],this.match+=vt[0],this.matches=vt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(vt[0].length),this.matched+=vt[0],Vt=this.performAction.call(this,this.yy,this,Ot,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Vt)return Vt;if(this._backtrack){for(var Te in _n)this[Te]=_n[Te];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var vt,Ot,Vt,qe;this._more||(this.yytext="",this.match="");for(var _n=this._currentRules(),Te=0;Te<_n.length;Te++)if(Vt=this._input.match(this.rules[_n[Te]]),Vt&&(!Ot||Vt[0].length>Ot[0].length)){if(Ot=Vt,qe=Te,this.options.backtrack_lexer){if(vt=this.test_match(Vt,_n[Te]),vt!==!1)return vt;if(this._backtrack){Ot=!1;continue}else return!1}else if(!this.options.flex)break}return Ot?(vt=this.test_match(Ot,_n[qe]),vt!==!1?vt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ot=this.next();return Ot||this.lex()},begin:function(Ot){this.conditionStack.push(Ot)},popState:function(){var Ot=this.conditionStack.length-1;return Ot>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ot){return Ot=this.conditionStack.length-1-Math.abs(Ot||0),Ot>=0?this.conditionStack[Ot]:"INITIAL"},pushState:function(Ot){this.begin(Ot)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ot,Vt,qe,_n){switch(qe){case 0:return 41;case 1:return 50;case 2:return 51;case 3:return 52;case 4:return 53;case 5:return this.begin("open_directive"),60;case 6:return this.begin("type_directive"),61;case 7:return this.popState(),this.begin("arg_directive"),48;case 8:return this.popState(),this.popState(),63;case 9:return 62;case 10:break;case 11:break;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:break;case 17:return this.pushState("SCALE"),17;case 18:return 18;case 19:this.popState();break;case 20:return this.begin("acc_title"),33;case 21:return this.popState(),"acc_title_value";case 22:return this.begin("acc_descr"),35;case 23:return this.popState(),"acc_descr_value";case 24:this.begin("acc_descr_multiline");break;case 25:this.popState();break;case 26:return"acc_descr_multiline_value";case 27:return this.pushState("CLASSDEF"),38;case 28:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 29:return this.popState(),this.pushState("CLASSDEFID"),39;case 30:return this.popState(),40;case 31:return this.pushState("CLASS"),42;case 32:return this.popState(),this.pushState("CLASS_STYLE"),43;case 33:return this.popState(),44;case 34:return this.pushState("SCALE"),17;case 35:return 18;case 36:this.popState();break;case 37:this.pushState("STATE");break;case 38:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),25;case 39:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),26;case 40:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-10).trim(),27;case 41:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),25;case 42:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),26;case 43:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-10).trim(),27;case 44:return 50;case 45:return 51;case 46:return 52;case 47:return 53;case 48:this.pushState("STATE_STRING");break;case 49:return this.pushState("STATE_ID"),"AS";case 50:return this.popState(),"ID";case 51:this.popState();break;case 52:return"STATE_DESCR";case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;case 56:break;case 57:return this.popState(),21;case 58:break;case 59:return this.begin("NOTE"),29;case 60:return this.popState(),this.pushState("NOTE_ID"),58;case 61:return this.popState(),this.pushState("NOTE_ID"),59;case 62:this.popState(),this.pushState("FLOATING_NOTE");break;case 63:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:break;case 65:return"NOTE_TEXT";case 66:return this.popState(),"ID";case 67:return this.popState(),this.pushState("NOTE_TEXT"),24;case 68:return this.popState(),Vt.yytext=Vt.yytext.substr(2).trim(),31;case 69:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),31;case 70:return 7;case 71:return 7;case 72:return 16;case 73:return 56;case 74:return 24;case 75:return Vt.yytext=Vt.yytext.trim(),14;case 76:return 15;case 77:return 28;case 78:return 57;case 79:return 5;case 80:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[14,15],inclusive:!1},close_directive:{rules:[14,15],inclusive:!1},arg_directive:{rules:[8,9,14,15],inclusive:!1},type_directive:{rules:[7,8,14,15],inclusive:!1},open_directive:{rules:[6,14,15],inclusive:!1},struct:{rules:[14,15,27,31,37,44,45,46,47,56,57,58,59,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[66],inclusive:!1},FLOATING_NOTE:{rules:[63,64,65],inclusive:!1},NOTE_TEXT:{rules:[68,69],inclusive:!1},NOTE_ID:{rules:[67],inclusive:!1},NOTE:{rules:[60,61,62],inclusive:!1},CLASS_STYLE:{rules:[33],inclusive:!1},CLASS:{rules:[32],inclusive:!1},CLASSDEFID:{rules:[30],inclusive:!1},CLASSDEF:{rules:[28,29],inclusive:!1},acc_descr_multiline:{rules:[25,26],inclusive:!1},acc_descr:{rules:[23],inclusive:!1},acc_title:{rules:[21],inclusive:!1},SCALE:{rules:[18,19,35,36],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[50],inclusive:!1},STATE_STRING:{rules:[51,52],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[14,15,38,39,40,41,42,43,48,49,53,54,55],inclusive:!1},ID:{rules:[14,15],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,10,11,12,13,15,16,17,20,22,24,27,31,34,37,55,59,70,71,72,73,74,75,76,78,79,80],inclusive:!0}}};return Bt}();Ft.lexer=X;function Rt(){this.yy={}}return Rt.prototype=Ft,Ft.Parser=Rt,new Rt}();mgt.parser=mgt;const BRt=mgt,NVe="LR",PVe="TB",BK="state",ygt="relation",FVe="classDef",BVe="applyClass",jP="default",RRt="divider",xgt="[*]",jRt="start",$Rt=xgt,zRt="end",qRt="color",HRt="fill",RVe="bgFill",jVe=",";function VRt(){return{}}let GRt=NVe,RK=[],$P=VRt();const URt=()=>({relations:[],states:{},documents:{}});let jK={root:URt()},E0=jK.root,zP=0,WRt=0;const $Ve={LINE:0,DOTTED_LINE:1},zVe={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},$K=i=>JSON.parse(JSON.stringify(i)),qVe=function(i,a,f){J1.parseDirective(this,i,a,f)},HVe=i=>{Wt.info("Setting root doc",i),RK=i},VVe=()=>RK,zK=(i,a,f)=>{if(a.stmt===ygt)zK(i,a.state1,!0),zK(i,a.state2,!1);else if(a.stmt===BK&&(a.id==="[*]"?(a.id=f?i.id+"_start":i.id+"_end",a.start=f):a.id=a.id.trim()),a.doc){const p=[];let v=[],m;for(m=0;m0&&v.length>0){const b={stmt:BK,id:RIt(),type:"divider",doc:$K(v)};p.push($K(b)),a.doc=p}a.doc.forEach(b=>zK(a,b,!0))}},GVe=()=>(zK({id:"root"},{id:"root",doc:RK},!0),{id:"root",doc:RK}),UVe=i=>{let a;i.doc?a=i.doc:a=i,Wt.info(a),KRt(!0),Wt.info("Extract",a),a.forEach(f=>{switch(f.stmt){case BK:k9(f.id.trim(),f.type,f.doc,f.description,f.note,f.classes,f.styles,f.textStyles);break;case ygt:YRt(f.state1,f.state2,f.description);break;case FVe:XRt(f.id.trim(),f.classes);break;case BVe:_gt(f.id.trim(),f.styleClass);break}})},k9=function(i,a=jP,f=null,p=null,v=null,m=null,b=null,E=null){const C=i==null?void 0:i.trim();E0.states[C]===void 0?(Wt.info("Adding state ",C,p),E0.states[C]={id:C,descriptions:[],type:a,doc:f,note:v,classes:[],styles:[],textStyles:[]}):(E0.states[C].doc||(E0.states[C].doc=f),E0.states[C].type||(E0.states[C].type=a)),p&&(Wt.info("Setting state description",C,p),typeof p=="string"&&Tgt(C,p.trim()),typeof p=="object"&&p.forEach(A=>Tgt(C,A.trim()))),v&&(E0.states[C].note=v,E0.states[C].note.text=ui.sanitizeText(E0.states[C].note.text,De())),m&&(Wt.info("Setting state classes",C,m),(typeof m=="string"?[m]:m).forEach(P=>_gt(C,P.trim()))),b&&(Wt.info("Setting state styles",C,b),(typeof b=="string"?[b]:b).forEach(P=>nGe(C,P.trim()))),E&&(Wt.info("Setting state styles",C,b),(typeof E=="string"?[E]:E).forEach(P=>rGe(C,P.trim())))},KRt=function(i){jK={root:URt()},E0=jK.root,zP=0,$P=VRt(),i||cg()},qP=function(i){return E0.states[i]},WVe=function(){return E0.states},KVe=function(){Wt.info("Documents = ",jK)},YVe=function(){return E0.relations};function kgt(i=""){let a=i;return i===xgt&&(zP++,a=`${jRt}${zP}`),a}function Egt(i="",a=jP){return i===xgt?jRt:a}function XVe(i=""){let a=i;return i===$Rt&&(zP++,a=`${zRt}${zP}`),a}function QVe(i="",a=jP){return i===$Rt?zRt:a}function ZVe(i,a,f){let p=kgt(i.id.trim()),v=Egt(i.id.trim(),i.type),m=kgt(a.id.trim()),b=Egt(a.id.trim(),a.type);k9(p,v,i.doc,i.description,i.note,i.classes,i.styles,i.textStyles),k9(m,b,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles),E0.relations.push({id1:p,id2:m,relationTitle:ui.sanitizeText(f,De())})}const YRt=function(i,a,f){if(typeof i=="object")ZVe(i,a,f);else{const p=kgt(i.trim()),v=Egt(i),m=XVe(a.trim()),b=QVe(a);k9(p,v),k9(m,b),E0.relations.push({id1:p,id2:m,title:ui.sanitizeText(f,De())})}},Tgt=function(i,a){const f=E0.states[i],p=a.startsWith(":")?a.replace(":","").trim():a;f.descriptions.push(ui.sanitizeText(p,De()))},JVe=function(i){return i.substring(0,1)===":"?i.substr(2).trim():i.trim()},tGe=()=>(WRt++,"divider-id-"+WRt),XRt=function(i,a=""){$P[i]===void 0&&($P[i]={id:i,styles:[],textStyles:[]});const f=$P[i];a!=null&&a.split(jVe).forEach(p=>{const v=p.replace(/([^;]*);/,"$1").trim();if(p.match(qRt)){const b=v.replace(HRt,RVe).replace(qRt,HRt);f.textStyles.push(b)}f.styles.push(v)})},eGe=function(){return $P},_gt=function(i,a){i.split(",").forEach(function(f){let p=qP(f);if(p===void 0){const v=f.trim();k9(v),p=qP(v)}p.classes.push(a)})},nGe=function(i,a){const f=qP(i);f!==void 0&&f.textStyles.push(a)},rGe=function(i,a){const f=qP(i);f!==void 0&&f.textStyles.push(a)},P5={parseDirective:qVe,getConfig:()=>De().state,addState:k9,clear:KRt,getState:qP,getStates:WVe,getRelations:YVe,getClasses:eGe,getDirection:()=>GRt,addRelation:YRt,getDividerId:tGe,setDirection:i=>{GRt=i},cleanupLabel:JVe,lineType:$Ve,relationType:zVe,logDocuments:KVe,getRootDoc:VVe,setRootDoc:HVe,getRootDocV2:GVe,extract:UVe,trimColon:i=>i&&i[0]===":"?i.substr(1).trim():i.trim(),getAccTitle:ug,setAccTitle:m0,getAccDescription:hg,setAccDescription:lg,addStyleClass:XRt,setCssClass:_gt,addDescription:Tgt,setDiagramTitle:Nb,getDiagramTitle:hp},QRt=i=>` +defs #statediagram-barbEnd { + fill: ${i.transitionColor}; + stroke: ${i.transitionColor}; + } +g.stateGroup text { + fill: ${i.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${i.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${i.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; +} + +g.stateGroup line { + stroke: ${i.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${i.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${i.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${i.noteBorderColor}; + fill: ${i.noteBkgColor}; + + text { + fill: ${i.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${i.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${i.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel .label text { + fill: ${i.transitionLabelColor||i.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${i.transitionLabelColor||i.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${i.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${i.specialStateColor}; + stroke: ${i.specialStateColor}; +} + +.node .fork-join { + fill: ${i.specialStateColor}; + stroke: ${i.specialStateColor}; +} + +.node circle.state-end { + fill: ${i.innerEndBackground}; + stroke: ${i.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${i.compositeBackground||i.background}; + // stroke: ${i.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${i.stateBkg||i.mainBkg}; + stroke: ${i.stateBorder||i.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${i.mainBkg}; + stroke: ${i.stateBorder||i.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${i.lineColor}; +} + +.statediagram-cluster rect { + fill: ${i.compositeTitleBackground}; + stroke: ${i.stateBorder||i.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${i.stateLabelColor}; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${i.stateBorder||i.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${i.compositeBackground||i.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${i.altBackground?i.altBackground:"#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${i.altBackground?i.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${i.noteBkgColor}; + stroke: ${i.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${i.noteBkgColor}; + stroke: ${i.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${i.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${i.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${i.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${i.lineColor}; + stroke: ${i.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; +} +`,Cgt={},iGe=(i,a)=>{Cgt[i]=a},sGe=i=>Cgt[i],ZRt=()=>Object.keys(Cgt),aGe={get:sGe,set:iGe,keys:ZRt,size:()=>ZRt().length},oGe=i=>i.append("circle").attr("class","start-state").attr("r",De().state.sizeUnit).attr("cx",De().state.padding+De().state.sizeUnit).attr("cy",De().state.padding+De().state.sizeUnit),cGe=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",De().state.textHeight).attr("class","divider").attr("x2",De().state.textHeight*2).attr("y1",0).attr("y2",0),uGe=(i,a)=>{const f=i.append("text").attr("x",2*De().state.padding).attr("y",De().state.textHeight+2*De().state.padding).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.id),p=f.node().getBBox();return i.insert("rect",":first-child").attr("x",De().state.padding).attr("y",De().state.padding).attr("width",p.width+2*De().state.padding).attr("height",p.height+2*De().state.padding).attr("rx",De().state.radius),f},lGe=(i,a)=>{const f=function(j,R,H){const Y=j.append("tspan").attr("x",2*De().state.padding).text(R);H||Y.attr("dy",De().state.textHeight)},v=i.append("text").attr("x",2*De().state.padding).attr("y",De().state.textHeight+1.3*De().state.padding).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.descriptions[0]).node().getBBox(),m=v.height,b=i.append("text").attr("x",De().state.padding).attr("y",m+De().state.padding*.4+De().state.dividerMargin+De().state.textHeight).attr("class","state-description");let E=!0,C=!0;a.descriptions.forEach(function(j){E||(f(b,j,C),C=!1),E=!1});const A=i.append("line").attr("x1",De().state.padding).attr("y1",De().state.padding+m+De().state.dividerMargin/2).attr("y2",De().state.padding+m+De().state.dividerMargin/2).attr("class","descr-divider"),P=b.node().getBBox(),F=Math.max(P.width,v.width);return A.attr("x2",F+3*De().state.padding),i.insert("rect",":first-child").attr("x",De().state.padding).attr("y",De().state.padding).attr("width",F+2*De().state.padding).attr("height",P.height+m+2*De().state.padding).attr("rx",De().state.radius),i},hGe=(i,a,f)=>{const p=De().state.padding,v=2*De().state.padding,m=i.node().getBBox(),b=m.width,E=m.x,C=i.append("text").attr("x",0).attr("y",De().state.titleShift).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.id),P=C.node().getBBox().width+v;let F=Math.max(P,b);F===b&&(F=F+v);let j;const R=i.node().getBBox();a.doc,j=E-p,P>b&&(j=(b-F)/2+p),Math.abs(E-R.x)b&&(j=E-(P-b)/2);const H=1-De().state.textHeight;return i.insert("rect",":first-child").attr("x",j).attr("y",H).attr("class",f?"alt-composit":"composit").attr("width",F).attr("height",R.height+De().state.textHeight+De().state.titleShift+1).attr("rx","0"),C.attr("x",j+p),P<=b&&C.attr("x",E+(F-v)/2-P/2+p),i.insert("rect",":first-child").attr("x",j).attr("y",De().state.titleShift-De().state.textHeight-De().state.padding).attr("width",F).attr("height",De().state.textHeight*3).attr("rx",De().state.radius),i.insert("rect",":first-child").attr("x",j).attr("y",De().state.titleShift-De().state.textHeight-De().state.padding).attr("width",F).attr("height",R.height+3+2*De().state.textHeight).attr("rx",De().state.radius),i},fGe=i=>(i.append("circle").attr("class","end-state-outer").attr("r",De().state.sizeUnit+De().state.miniPadding).attr("cx",De().state.padding+De().state.sizeUnit+De().state.miniPadding).attr("cy",De().state.padding+De().state.sizeUnit+De().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",De().state.sizeUnit).attr("cx",De().state.padding+De().state.sizeUnit+2).attr("cy",De().state.padding+De().state.sizeUnit+2)),dGe=(i,a)=>{let f=De().state.forkWidth,p=De().state.forkHeight;if(a.parentId){let v=f;f=p,p=v}return i.append("rect").style("stroke","black").style("fill","black").attr("width",f).attr("height",p).attr("x",De().state.padding).attr("y",De().state.padding)},gGe=(i,a,f,p)=>{let v=0;const m=p.append("text");m.style("text-anchor","start"),m.attr("class","noteText");let b=i.replace(/\r\n/g,"
");b=b.replace(/\n/g,"
");const E=b.split(ui.lineBreakRegex);let C=1.25*De().state.noteMargin;for(const A of E){const P=A.trim();if(P.length>0){const F=m.append("tspan");if(F.text(P),C===0){const j=F.node().getBBox();C+=j.height}v+=C,F.attr("x",a+De().state.noteMargin),F.attr("y",f+v+1.25*De().state.noteMargin)}}return{textWidth:m.node().getBBox().width,textHeight:v}},pGe=(i,a)=>{a.attr("class","state-note");const f=a.append("rect").attr("x",0).attr("y",De().state.padding),p=a.append("g"),{textWidth:v,textHeight:m}=gGe(i,0,0,p);return f.attr("height",m+2*De().state.noteMargin),f.attr("width",v+De().state.noteMargin*2),f},JRt=function(i,a){const f=a.id,p={id:f,label:a.id,width:0,height:0},v=i.append("g").attr("id",f).attr("class","stateGroup");a.type==="start"&&oGe(v),a.type==="end"&&fGe(v),(a.type==="fork"||a.type==="join")&&dGe(v,a),a.type==="note"&&pGe(a.note.text,v),a.type==="divider"&&cGe(v),a.type==="default"&&a.descriptions.length===0&&uGe(v,a),a.type==="default"&&a.descriptions.length>0&&lGe(v,a);const m=v.node().getBBox();return p.width=m.width+2*De().state.padding,p.height=m.height+2*De().state.padding,aGe.set(f,p),p};let tjt=0;const bGe=function(i,a,f){const p=function(C){switch(C){case P5.relationType.AGGREGATION:return"aggregation";case P5.relationType.EXTENSION:return"extension";case P5.relationType.COMPOSITION:return"composition";case P5.relationType.DEPENDENCY:return"dependency"}};a.points=a.points.filter(C=>!Number.isNaN(C.y));const v=a.points,m=YE().x(function(C){return C.x}).y(function(C){return C.y}).curve(MA),b=i.append("path").attr("d",m(v)).attr("id","edge"+tjt).attr("class","transition");let E="";if(De().state.arrowMarkerAbsolute&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\("),E=E.replace(/\)/g,"\\)")),b.attr("marker-end","url("+E+"#"+p(P5.relationType.DEPENDENCY)+"End)"),f.title!==void 0){const C=i.append("g").attr("class","stateLabel"),{x:A,y:P}=to.calcLabelPosition(a.points),F=ui.getRows(f.title);let j=0;const R=[];let H=0,Y=0;for(let it=0;it<=F.length;it++){const ft=C.append("text").attr("text-anchor","middle").text(F[it]).attr("x",A).attr("y",P+j),Tt=ft.node().getBBox();H=Math.max(H,Tt.width),Y=Math.min(Y,Tt.x),Wt.info(Tt.x,A,P+j),j===0&&(j=ft.node().getBBox().height,Wt.info("Title height",j,P)),R.push(ft)}let rt=j*F.length;if(F.length>1){const it=(F.length-1)*j*.5;R.forEach((ft,Tt)=>ft.attr("y",P+Tt*j-it)),rt=j*F.length}const J=C.node().getBBox();C.insert("rect",":first-child").attr("class","box").attr("x",A-H/2-De().state.padding/2).attr("y",P-rt/2-De().state.padding/2-3.5).attr("width",H+De().state.padding).attr("height",rt+De().state.padding),Wt.info(J)}tjt++};let $b;const Sgt={},vGe=function(){},wGe=function(i){i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},mGe=function(i,a,f,p){$b=De().state;const v=De().securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const b=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body"),E=v==="sandbox"?m.nodes()[0].contentDocument:document;Wt.debug("Rendering diagram "+i);const C=b.select(`[id='${a}']`);wGe(C);const A=p.db.getRootDoc();ejt(A,C,void 0,!1,b,E,p);const P=$b.padding,F=C.node().getBBox(),j=F.width+P*2,R=F.height+P*2,H=j*1.75;og(C,R,H,$b.useMaxWidth),C.attr("viewBox",`${F.x-$b.padding} ${F.y-$b.padding} `+j+" "+R)},yGe=i=>i?i.length*$b.fontSizeFactor:1,ejt=(i,a,f,p,v,m,b)=>{const E=new l1({compound:!0,multigraph:!0});let C,A=!0;for(C=0;C{const Tt=ft.parentElement;let kt=0,mt=0;Tt&&(Tt.parentElement&&(kt=Tt.parentElement.getBBox().width),mt=parseInt(Tt.getAttribute("data-x-shift"),10),Number.isNaN(mt)&&(mt=0)),ft.setAttribute("x1",0-mt+8),ft.setAttribute("x2",kt-mt-8)})):Wt.debug("No Node "+J+": "+JSON.stringify(E.node(J)))});let Y=H.getBBox();E.edges().forEach(function(J){J!==void 0&&E.edge(J)!==void 0&&(Wt.debug("Edge "+J.v+" -> "+J.w+": "+JSON.stringify(E.edge(J))),bGe(a,E.edge(J),E.edge(J).relation))}),Y=H.getBBox();const rt={id:f||"root",label:f||"root",width:0,height:0};return rt.width=Y.width+2*$b.padding,rt.height=Y.height+2*$b.padding,Wt.debug("Doc rendered",rt,E),rt},xGe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:BRt,db:P5,renderer:{setConf:vGe,draw:mGe},styles:QRt,init:i=>{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,P5.clear()}}},Symbol.toStringTag,{value:"Module"})),qK="rect",Agt="rectWithTitle",kGe="start",EGe="end",TGe="divider",_Ge="roundedWithTitle",CGe="note",SGe="noteGroup",gL="statediagram",AGe=`${gL}-state`,njt="transition",LGe="note",MGe=`${njt} note-edge`,DGe=`${gL}-${LGe}`,IGe=`${gL}-cluster`,OGe=`${gL}-cluster-alt`,rjt="parent",ijt="note",NGe="state",Lgt="----",PGe=`${Lgt}${ijt}`,sjt=`${Lgt}${rjt}`,ajt="fill:none",ojt="fill: #333",cjt="c",ujt="text",ljt="normal";let HK={},hk=0;const FGe=function(i){const a=Object.keys(i);for(const f of a)i[f]},BGe=function(i,a){return a.db.extract(a.db.getRootDocV2()),a.db.getClasses()};function RGe(i){return i==null?"":i.classes?i.classes.join(" "):""}function Mgt(i="",a=0,f="",p=Lgt){const v=f!==null&&f.length>0?`${p}${f}`:"";return`${NGe}-${i}${v}-${a}`}const HP=(i,a,f,p,v,m)=>{const b=f.id,E=RGe(p[b]);if(b!=="root"){let C=qK;f.start===!0&&(C=kGe),f.start===!1&&(C=EGe),f.type!==jP&&(C=f.type),HK[b]||(HK[b]={id:b,shape:C,description:ui.sanitizeText(b,De()),classes:`${E} ${AGe}`});const A=HK[b];f.description&&(Array.isArray(A.description)?(A.shape=Agt,A.description.push(f.description)):A.description.length>0?(A.shape=Agt,A.description===b?A.description=[f.description]:A.description=[A.description,f.description]):(A.shape=qK,A.description=f.description),A.description=ui.sanitizeTextOrArray(A.description,De())),A.description.length===1&&A.shape===Agt&&(A.shape=qK),!A.type&&f.doc&&(Wt.info("Setting cluster for ",b,Dgt(f)),A.type="group",A.dir=Dgt(f),A.shape=f.type===RRt?TGe:_Ge,A.classes=A.classes+" "+IGe+" "+(m?OGe:""));const P={labelStyle:"",shape:A.shape,labelText:A.description,classes:A.classes,style:"",id:b,dir:A.dir,domId:Mgt(b,hk),type:A.type,padding:15};if(P.centerLabel=!0,f.note){const F={labelStyle:"",shape:CGe,labelText:f.note.text,classes:DGe,style:"",id:b+PGe+"-"+hk,domId:Mgt(b,hk,ijt),type:A.type,padding:15},j={labelStyle:"",shape:SGe,labelText:f.note.text,classes:A.classes,style:"",id:b+sjt,domId:Mgt(b,hk,rjt),type:"group",padding:0};hk++;const R=b+sjt;i.setNode(R,j),i.setNode(F.id,F),i.setNode(b,P),i.setParent(b,R),i.setParent(F.id,R);let H=b,Y=F.id;f.note.position==="left of"&&(H=F.id,Y=b),i.setEdge(H,Y,{arrowhead:"none",arrowType:"",style:ajt,labelStyle:"",classes:MGe,arrowheadStyle:ojt,labelpos:cjt,labelType:ujt,thickness:ljt})}else i.setNode(b,P)}a&&a.id!=="root"&&(Wt.trace("Setting node ",b," to be child of its parent ",a.id),i.setParent(b,a.id)),f.doc&&(Wt.trace("Adding nodes children "),jGe(i,f,f.doc,p,v,!m))},jGe=(i,a,f,p,v,m)=>{Wt.trace("items",f),f.forEach(b=>{switch(b.stmt){case BK:HP(i,a,b,p,v,m);break;case jP:HP(i,a,b,p,v,m);break;case ygt:{HP(i,a,b.state1,p,v,m),HP(i,a,b.state2,p,v,m);const E={id:"edge"+hk,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:ajt,labelStyle:"",label:ui.sanitizeText(b.description,De()),arrowheadStyle:ojt,labelpos:cjt,labelType:ujt,thickness:ljt,classes:njt};i.setEdge(b.state1.id,b.state2.id,E,hk),hk++}break}})},Dgt=(i,a=PVe)=>{let f=a;if(i.doc)for(let p=0;p{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,P5.clear()}}},Symbol.toStringTag,{value:"Module"}));var Igt=function(){var i=function(Y,rt,J,it){for(J=J||{},it=Y.length;it--;J[Y[it]]=rt);return J},a=[1,2],f=[1,5],p=[6,9,11,17,18,20,22,23,24,26],v=[1,15],m=[1,16],b=[1,17],E=[1,18],C=[1,19],A=[1,20],P=[1,24],F=[4,6,9,11,17,18,20,22,23,24,26],j={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(rt,J,it,ft,Tt,kt,mt){var ct=kt.length-1;switch(Tt){case 1:return kt[ct-1];case 3:this.$=[];break;case 4:kt[ct-1].push(kt[ct]),this.$=kt[ct-1];break;case 5:case 6:this.$=kt[ct];break;case 7:case 8:this.$=[];break;case 11:ft.setDiagramTitle(kt[ct].substr(6)),this.$=kt[ct].substr(6);break;case 12:this.$=kt[ct].trim(),ft.setAccTitle(this.$);break;case 13:case 14:this.$=kt[ct].trim(),ft.setAccDescription(this.$);break;case 15:ft.addSection(kt[ct].substr(8)),this.$=kt[ct].substr(8);break;case 16:ft.addTask(kt[ct-1],kt[ct]),this.$="task";break;case 18:ft.parseDirective("%%{","open_directive");break;case 19:ft.parseDirective(kt[ct],"type_directive");break;case 20:kt[ct]=kt[ct].trim().replace(/'/g,'"'),ft.parseDirective(kt[ct],"arg_directive");break;case 21:ft.parseDirective("}%%","close_directive","journey");break}},table:[{3:1,4:a,7:3,12:4,26:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,26:f},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:v,18:m,20:b,22:E,23:C,24:A,26:f},{1:[2,2]},{14:22,15:[1,23],29:P},i([15,29],[2,19]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:21,10:25,12:4,17:v,18:m,20:b,22:E,23:C,24:A,26:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),{19:[1,26]},{21:[1,27]},i(p,[2,14]),i(p,[2,15]),{25:[1,28]},i(p,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},i(p,[2,5]),i(p,[2,12]),i(p,[2,13]),i(p,[2,16]),i(F,[2,9]),{14:32,29:P},{29:[2,20]},{11:[1,33]},i(F,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(rt,J){if(J.recoverable)this.trace(rt);else{var it=new Error(rt);throw it.hash=J,it}},parse:function(rt){var J=this,it=[0],ft=[],Tt=[null],kt=[],mt=this.table,ct="",yt=0,st=0,xt=2,ht=1,dt=kt.slice.call(arguments,1),Ct=Object.create(this.lexer),tt={yy:{}};for(var Pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pt)&&(tt.yy[Pt]=this.yy[Pt]);Ct.setInput(rt,tt.yy),tt.yy.lexer=Ct,tt.yy.parser=this,typeof Ct.yylloc>"u"&&(Ct.yylloc={});var pt=Ct.yylloc;kt.push(pt);var Ft=Ct.options&&Ct.options.ranges;typeof tt.yy.parseError=="function"?this.parseError=tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function X(){var ne;return ne=ft.pop()||Ct.lex()||ht,typeof ne!="number"&&(ne instanceof Array&&(ft=ne,ne=ft.pop()),ne=J.symbols_[ne]||ne),ne}for(var Rt,Bt,vt,Ot,Vt={},qe,_n,Te,Wn;;){if(Bt=it[it.length-1],this.defaultActions[Bt]?vt=this.defaultActions[Bt]:((Rt===null||typeof Rt>"u")&&(Rt=X()),vt=mt[Bt]&&mt[Bt][Rt]),typeof vt>"u"||!vt.length||!vt[0]){var Ae="";Wn=[];for(qe in mt[Bt])this.terminals_[qe]&&qe>xt&&Wn.push("'"+this.terminals_[qe]+"'");Ct.showPosition?Ae="Parse error on line "+(yt+1)+`: +`+Ct.showPosition()+` +Expecting `+Wn.join(", ")+", got '"+(this.terminals_[Rt]||Rt)+"'":Ae="Parse error on line "+(yt+1)+": Unexpected "+(Rt==ht?"end of input":"'"+(this.terminals_[Rt]||Rt)+"'"),this.parseError(Ae,{text:Ct.match,token:this.terminals_[Rt]||Rt,line:Ct.yylineno,loc:pt,expected:Wn})}if(vt[0]instanceof Array&&vt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bt+", token: "+Rt);switch(vt[0]){case 1:it.push(Rt),Tt.push(Ct.yytext),kt.push(Ct.yylloc),it.push(vt[1]),Rt=null,st=Ct.yyleng,ct=Ct.yytext,yt=Ct.yylineno,pt=Ct.yylloc;break;case 2:if(_n=this.productions_[vt[1]][1],Vt.$=Tt[Tt.length-_n],Vt._$={first_line:kt[kt.length-(_n||1)].first_line,last_line:kt[kt.length-1].last_line,first_column:kt[kt.length-(_n||1)].first_column,last_column:kt[kt.length-1].last_column},Ft&&(Vt._$.range=[kt[kt.length-(_n||1)].range[0],kt[kt.length-1].range[1]]),Ot=this.performAction.apply(Vt,[ct,st,yt,tt.yy,vt[1],Tt,kt].concat(dt)),typeof Ot<"u")return Ot;_n&&(it=it.slice(0,-1*_n*2),Tt=Tt.slice(0,-1*_n),kt=kt.slice(0,-1*_n)),it.push(this.productions_[vt[1]][0]),Tt.push(Vt.$),kt.push(Vt._$),Te=mt[it[it.length-2]][it[it.length-1]],it.push(Te);break;case 3:return!0}}return!0}},R=function(){var Y={EOF:1,parseError:function(J,it){if(this.yy.parser)this.yy.parser.parseError(J,it);else throw new Error(J)},setInput:function(rt,J){return this.yy=J||this.yy||{},this._input=rt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var rt=this._input[0];this.yytext+=rt,this.yyleng++,this.offset++,this.match+=rt,this.matched+=rt;var J=rt.match(/(?:\r\n?|\n).*/g);return J?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),rt},unput:function(rt){var J=rt.length,it=rt.split(/(?:\r\n?|\n)/g);this._input=rt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var ft=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),it.length-1&&(this.yylineno-=it.length-1);var Tt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:it?(it.length===ft.length?this.yylloc.first_column:0)+ft[ft.length-it.length].length-it[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[Tt[0],Tt[0]+this.yyleng-J]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(rt){this.unput(this.match.slice(rt))},pastInput:function(){var rt=this.matched.substr(0,this.matched.length-this.match.length);return(rt.length>20?"...":"")+rt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rt=this.match;return rt.length<20&&(rt+=this._input.substr(0,20-rt.length)),(rt.substr(0,20)+(rt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rt=this.pastInput(),J=new Array(rt.length+1).join("-");return rt+this.upcomingInput()+` +`+J+"^"},test_match:function(rt,J){var it,ft,Tt;if(this.options.backtrack_lexer&&(Tt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Tt.yylloc.range=this.yylloc.range.slice(0))),ft=rt[0].match(/(?:\r\n?|\n).*/g),ft&&(this.yylineno+=ft.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ft?ft[ft.length-1].length-ft[ft.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rt[0].length},this.yytext+=rt[0],this.match+=rt[0],this.matches=rt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(rt[0].length),this.matched+=rt[0],it=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),it)return it;if(this._backtrack){for(var kt in Tt)this[kt]=Tt[kt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var rt,J,it,ft;this._more||(this.yytext="",this.match="");for(var Tt=this._currentRules(),kt=0;ktJ[0].length)){if(J=it,ft=kt,this.options.backtrack_lexer){if(rt=this.test_match(it,Tt[kt]),rt!==!1)return rt;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(rt=this.test_match(J,Tt[ft]),rt!==!1?rt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var J=this.next();return J||this.lex()},begin:function(J){this.conditionStack.push(J)},popState:function(){var J=this.conditionStack.length-1;return J>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},pushState:function(J){this.begin(J)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(J,it,ft,Tt){switch(ft){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};return Y}();j.lexer=R;function H(){this.yy={}}return H.prototype=j,j.Parser=H,new H}();Igt.parser=Igt;const zGe=Igt;let pL="";const Ogt=[],VP=[],GP=[],qGe=function(i,a,f){J1.parseDirective(this,i,a,f)},HGe=function(){Ogt.length=0,VP.length=0,pL="",GP.length=0,cg()},VGe=function(i){pL=i,Ogt.push(i)},GGe=function(){return Ogt},UGe=function(){let i=hjt();const a=100;let f=0;for(;!i&&f{f.people&&i.push(...f.people)}),[...new Set(i)].sort()},KGe=function(i,a){const f=a.substr(1).split(":");let p=0,v=[];f.length===1?(p=Number(f[0]),v=[]):(p=Number(f[0]),v=f[1].split(","));const m=v.map(E=>E.trim()),b={section:pL,type:pL,people:m,task:i,score:p};GP.push(b)},YGe=function(i){const a={section:pL,type:pL,description:i,task:i,classes:[]};VP.push(a)},hjt=function(){const i=function(f){return GP[f].processed};let a=!0;for(const[f,p]of GP.entries())i(f),a=a&&p.processed;return a},fjt={parseDirective:qGe,getConfig:()=>De().journey,clear:HGe,setDiagramTitle:Nb,getDiagramTitle:hp,setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addSection:VGe,getSections:GGe,getTasks:UGe,addTask:KGe,addTaskOrg:YGe,getActors:function(){return WGe()}},XGe=i=>`.label { + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + color: ${i.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${i.textColor} + } + + .legend { + fill: ${i.textColor}; + } + + .label text { + fill: #333; + } + .label { + color: ${i.textColor} + } + + .face { + ${i.faceColor?`fill: ${i.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${i.titleColor}; + } + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${i.fillType0?`fill: ${i.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${i.fillType0?`fill: ${i.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${i.fillType0?`fill: ${i.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${i.fillType0?`fill: ${i.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${i.fillType0?`fill: ${i.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${i.fillType0?`fill: ${i.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${i.fillType0?`fill: ${i.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${i.fillType0?`fill: ${i.fillType7}`:""}; + } + + .actor-0 { + ${i.actor0?`fill: ${i.actor0}`:""}; + } + .actor-1 { + ${i.actor1?`fill: ${i.actor1}`:""}; + } + .actor-2 { + ${i.actor2?`fill: ${i.actor2}`:""}; + } + .actor-3 { + ${i.actor3?`fill: ${i.actor3}`:""}; + } + .actor-4 { + ${i.actor4?`fill: ${i.actor4}`:""}; + } + .actor-5 { + ${i.actor5?`fill: ${i.actor5}`:""}; + } +`,Ngt=function(i,a){return WW(i,a)},QGe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function m(C){const A=LA().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(C){const A=LA().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(C){C.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?m(v):a.score<3?b(v):E(v),p},djt=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},gjt=function(i,a){return sDe(i,a)},ZGe=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");p.attr("points",f(a.x,a.y,50,20,7)),p.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,gjt(i,a)},JGe=function(i,a,f){const p=i.append("g"),v=u9();v.x=a.x,v.y=a.y,v.fill=a.fill,v.width=f.width*a.taskCount+f.diagramMarginX*(a.taskCount-1),v.height=f.height,v.class="journey-section section-type-"+a.num,v.rx=3,v.ry=3,Ngt(p,v),bjt(f)(a.text,p,v.x,v.y,v.width,v.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let pjt=-1;const tUe=function(i,a,f){const p=a.x+f.width/2,v=i.append("g");pjt++;const m=300+5*30;v.append("line").attr("id","task"+pjt).attr("x1",p).attr("y1",a.y).attr("x2",p).attr("y2",m).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),QGe(v,{cx:p,cy:300+(5-a.score)*30,score:a.score});const b=u9();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,Ngt(v,b);let E=a.x+14;a.people.forEach(C=>{const A=a.actors[C].color,P={cx:E,cy:a.y,r:7,fill:A,stroke:"#000",title:C,pos:a.actors[C].position};djt(v,P),E+=10}),bjt(f)(a.task,v,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},eUe=function(i,a){pNt(i,a)},bjt=function(){function i(v,m,b,E,C,A,P,F){const j=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("font-color",F).style("text-anchor","middle").text(v);p(j,P)}function a(v,m,b,E,C,A,P,F,j){const{taskFontSize:R,taskFontFamily:H}=F,Y=v.split(//gi);for(let rt=0;rt{const v=F5[p].color,m={cx:20,cy:f,r:7,fill:v,stroke:"#000",pos:F5[p].position};UP.drawCircle(i,m);const b={x:40,y:f+7,fill:"#666",text:p,textMargin:a.boxTextMargin|5};UP.drawText(i,b),f+=20})}const VK=De().journey,E9=VK.leftMargin,iUe=function(i,a,f,p){const v=De().journey,m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body");iv.init();const C=E.select("#"+a);UP.initGraphics(C);const A=p.db.getTasks(),P=p.db.getDiagramTitle(),F=p.db.getActors();for(const J in F5)delete F5[J];let j=0;F.forEach(J=>{F5[J]={color:v.actorColours[j%v.actorColours.length],position:j},j++}),rUe(C),iv.insert(0,0,E9,Object.keys(F5).length*50),sUe(C,A,0);const R=iv.getBounds();P&&C.append("text").text(P).attr("x",E9).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const H=R.stopy-R.starty+2*v.diagramMarginY,Y=E9+R.stopx+2*v.diagramMarginX;og(C,H,Y,v.useMaxWidth),C.append("line").attr("x1",E9).attr("y1",v.height*4).attr("x2",Y-E9-4).attr("y2",v.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const rt=P?70:0;C.attr("viewBox",`${R.startx} -25 ${Y} ${H+rt}`),C.attr("preserveAspectRatio","xMinYMin meet"),C.attr("height",H+rt+25)},iv={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},updateVal:function(i,a,f,p){i[a]===void 0?i[a]=f:i[a]=p(f,i[a])},updateBounds:function(i,a,f,p){const v=De().journey,m=this;let b=0;function E(C){return function(P){b++;const F=m.sequenceItems.length-b+1;m.updateVal(P,"starty",a-F*v.boxMargin,Math.min),m.updateVal(P,"stopy",p+F*v.boxMargin,Math.max),m.updateVal(iv.data,"startx",i-F*v.boxMargin,Math.min),m.updateVal(iv.data,"stopx",f+F*v.boxMargin,Math.max),C!=="activation"&&(m.updateVal(P,"startx",i-F*v.boxMargin,Math.min),m.updateVal(P,"stopx",f+F*v.boxMargin,Math.max),m.updateVal(iv.data,"starty",a-F*v.boxMargin,Math.min),m.updateVal(iv.data,"stopy",p+F*v.boxMargin,Math.max))}}this.sequenceItems.forEach(E())},insert:function(i,a,f,p){const v=Math.min(i,f),m=Math.max(i,f),b=Math.min(a,p),E=Math.max(a,p);this.updateVal(iv.data,"startx",v,Math.min),this.updateVal(iv.data,"starty",b,Math.min),this.updateVal(iv.data,"stopx",m,Math.max),this.updateVal(iv.data,"stopy",E,Math.max),this.updateBounds(v,b,m,E)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},Pgt=VK.sectionFills,vjt=VK.sectionColours,sUe=function(i,a,f){const p=De().journey;let v="";const m=p.height*2+p.diagramMarginY,b=f+m;let E=0,C="#CCC",A="black",P=0;for(const[F,j]of a.entries()){if(v!==j.section){C=Pgt[E%Pgt.length],P=E%Pgt.length,A=vjt[E%vjt.length];let H=0;const Y=j.section;for(let J=F;J(F5[Y]&&(H[Y]=F5[Y]),H),{});j.x=F*p.taskMargin+F*p.width+E9,j.y=b,j.width=p.diagramMarginX,j.height=p.diagramMarginY,j.colour=A,j.fill=C,j.num=P,j.actors=R,UP.drawTask(i,j,p),iv.insert(j.x,j.y,j.x+j.width+p.taskMargin,300+5*30)}},wjt={setConf:nUe,draw:iUe},aUe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:zGe,db:fjt,renderer:wjt,styles:XGe,init:i=>{wjt.setConf(i.journey),fjt.clear()}}},Symbol.toStringTag,{value:"Module"})),oUe=(i,a,f)=>{const{parentById:p}=f,v=new Set;let m=i;for(;m;){if(v.add(m),m===a)return m;m=p[m]}for(m=a;m;){if(v.has(m))return m;m=p[m]}return"root"};function GK(i){throw new Error('Could not dynamically require "'+i+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var mjt={exports:{}};(function(i,a){(function(f){i.exports=f()})(function(){return function(){function f(p,v,m){function b(A,P){if(!v[A]){if(!p[A]){var F=typeof GK=="function"&&GK;if(!P&&F)return F(A,!0);if(E)return E(A,!0);var j=new Error("Cannot find module '"+A+"'");throw j.code="MODULE_NOT_FOUND",j}var R=v[A]={exports:{}};p[A][0].call(R.exports,function(H){var Y=p[A][1][H];return b(Y||H)},R,R.exports,f,p,v,m)}return v[A].exports}for(var E=typeof GK=="function"&&GK,C=0;C0&&arguments[0]!==void 0?arguments[0]:{},j=F.defaultLayoutOptions,R=j===void 0?{}:j,H=F.algorithms,Y=H===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:H,rt=F.workerFactory,J=F.workerUrl;if(b(this,A),this.defaultLayoutOptions=R,this.initialized=!1,typeof J>"u"&&typeof rt>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var it=rt;typeof J<"u"&&typeof rt>"u"&&(it=function(kt){return new Worker(kt)});var ft=it(J);if(typeof ft.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new C(ft),this.worker.postMessage({cmd:"register",algorithms:Y}).then(function(Tt){return P.initialized=!0}).catch(console.err)}return m(A,[{key:"layout",value:function(F){var j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R=j.layoutOptions,H=R===void 0?this.defaultLayoutOptions:R,Y=j.logging,rt=Y===void 0?!1:Y,J=j.measureExecutionTime,it=J===void 0?!1:J;return F?this.worker.postMessage({cmd:"layout",graph:F,layoutOptions:H,options:{logging:rt,measureExecutionTime:it}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),A}();v.default=E;var C=function(){function A(P){var F=this;if(b(this,A),P===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=P,this.worker.onmessage=function(j){setTimeout(function(){F.receive(F,j)},0)}}return m(A,[{key:"postMessage",value:function(F){var j=this.id||0;this.id=j+1,F.id=j;var R=this;return new Promise(function(H,Y){R.resolvers[j]=function(rt,J){rt?(R.convertGwtStyleError(rt),Y(rt)):H(J)},R.worker.postMessage(F)})}},{key:"receive",value:function(F,j){var R=j.data,H=F.resolvers[R.id];H&&(delete F.resolvers[R.id],R.error?H(R.error):H(null,R.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(F){if(F){var j=F.__java$exception;j&&(j.cause&&j.cause.backingJsObject&&(F.cause=j.cause.backingJsObject,this.convertGwtStyleError(F.cause)),delete F.__java$exception)}}}]),A}()},{}],2:[function(f,p,v){(function(m){(function(){var b;typeof window<"u"?b=window:typeof m<"u"?b=m:typeof self<"u"&&(b=self);var E;function C(){}function A(){}function P(){}function F(){}function j(){}function R(){}function H(){}function Y(){}function rt(){}function J(){}function it(){}function ft(){}function Tt(){}function kt(){}function mt(){}function ct(){}function yt(){}function st(){}function xt(){}function ht(){}function dt(){}function Ct(){}function tt(){}function Pt(){}function pt(){}function Ft(){}function X(){}function Rt(){}function Bt(){}function vt(){}function Ot(){}function Vt(){}function qe(){}function _n(){}function Te(){}function Wn(){}function Ae(){}function ne(){}function ke(){}function Ve(){}function Ee(){}function He(){}function Ce(){}function $e(){}function ye(){}function fn(){}function Yt(){}function Mi(){}function qt(){}function zi(){}function Se(){}function ki(){}function Ri(){}function pi(){}function bi(){}function dn(){}function Nn(){}function Wr(){}function Li(){}function is(){}function Ts(){}function Aa(){}function Xi(){}function Ga(){}function _r(){}function qr(){}function Oi(){}function gr(){}function Js(){}function Vn(){}function Xc(){}function Er(){}function Mc(){}function bp(){}function fm(){}function T0(){}function Fd(){}function No(){}function ta(){}function bu(){}function Pu(){}function lo(){}function mo(){}function Os(){}function Tl(){}function Fu(){}function zo(){}function nd(){}function sf(){}function ll(){}function Vi(){}function Ke(){}function kr(){}function ni(){}function eo(){}function Dc(){}function Ju(){}function Qo(){}function jf(){}function rh(){}function dm(){}function S9(){}function x3(){}function zb(){}function os(){}function As(){}function ma(){}function vi(){}function Qc(){}function me(){}function bg(){}function Oe(){}function af(){}function fk(){}function k3(){}function gm(){}function A9(){}function au(){}function vg(){}function dk(){}function vp(){}function L9(){}function M9(){}function $f(){}function ov(){}function Bd(){}function E3(){}function cv(){}function uv(){}function wg(){}function R5(){}function ou(){}function j5(){}function no(){}function JK(){}function qb(){}function tY(){}function D9(){}function eY(){}function KP(){}function zf(){}function pm(){}function mL(){}function YP(){}function wp(){}function bm(){}function nY(){}function Hb(){}function rY(){}function iY(){}function $5(){}function I9(){}function XP(){}function gk(){}function sY(){}function pk(){}function aY(){}function oY(){}function cY(){}function uY(){}function lY(){}function hY(){}function fY(){}function dY(){}function gY(){}function pY(){}function bY(){}function yL(){}function vY(){}function wY(){}function O9(){}function QP(){}function z5(){}function mY(){}function yY(){}function xY(){}function kY(){}function EY(){}function N9(){}function xL(){}function ZP(){}function T3(){}function _3(){}function TY(){}function of(){}function q5(){}function _Y(){}function bk(){}function Rd(){}function CY(){}function SY(){}function AY(){}function LY(){}function P9(){}function kL(){}function JP(){}function EL(){}function H5(){}function MY(){}function tF(){}function eF(){}function DY(){}function IY(){}function OY(){}function NY(){}function PY(){}function FY(){}function jd(){}function lv(){}function BY(){}function nF(){}function rF(){}function RY(){}function C3(){}function vk(){}function TL(){}function vm(){}function wk(){}function jY(){}function F9(){}function rd(){}function iF(){}function _L(){}function mk(){}function CL(){}function sF(){}function $Y(){}function SL(){}function zY(){}function qY(){}function aF(){}function V5(){}function oF(){}function G5(){}function HY(){}function AL(){}function VY(){}function GY(){}function UY(){}function WY(){}function cF(){}function KY(){}function YY(){}function XY(){}function uF(){}function QY(){}function ZY(){}function JY(){}function lF(){}function tX(){}function eX(){}function hF(){}function fF(){}function dF(){}function nX(){}function rX(){}function yk(){}function U5(){}function B9(){}function iX(){}function LL(){}function R9(){}function ML(){}function gF(){}function pF(){}function sX(){}function aX(){}function oX(){}function bF(){}function vF(){}function cX(){}function uX(){}function lX(){}function hX(){}function fX(){}function wF(){}function dX(){}function gX(){}function pX(){}function bX(){}function mF(){}function j9(){}function vX(){}function wX(){}function yF(){}function mX(){}function yX(){}function xX(){}function kX(){}function EX(){}function TX(){}function xF(){}function _X(){}function kF(){}function CX(){}function SX(){}function AX(){}function $9(){}function LX(){}function z9(){}function MX(){}function EF(){}function TF(){}function _F(){}function CF(){}function hv(){}function SF(){}function AF(){}function LF(){}function MF(){}function DX(){}function W5(){}function q9(){}function S3(){}function IX(){}function OX(){}function H9(){}function NX(){}function PX(){}function FX(){}function BX(){}function RX(){}function jX(){}function $X(){}function zX(){}function qX(){}function HX(){}function VX(){}function DL(){}function DF(){}function GX(){}function UX(){}function WX(){}function IF(){}function KX(){}function YX(){}function XX(){}function QX(){}function ZX(){}function JX(){}function OF(){}function NF(){}function tQ(){}function PF(){}function FF(){}function eQ(){}function nQ(){}function rQ(){}function IL(){}function iQ(){}function xk(){}function sQ(){}function aQ(){}function oQ(){}function BF(){}function cQ(){}function uQ(){}function lQ(){}function hQ(){}function fQ(){}function dQ(){}function gQ(){}function pQ(){}function bQ(){}function vQ(){}function wQ(){}function mQ(){}function K5(){}function RF(){}function yQ(){}function xQ(){}function kQ(){}function jF(){}function EQ(){}function V9(){}function TQ(){}function _Q(){}function CQ(){}function SQ(){}function AQ(){}function LQ(){}function MQ(){}function DQ(){}function IQ(){}function OQ(){}function Y5(){}function NQ(){}function PQ(){}function FQ(){}function BQ(){}function RQ(){}function jQ(){}function $Q(){}function zQ(){}function G9(){}function qQ(){}function HQ(){}function VQ(){}function GQ(){}function UQ(){}function WQ(){}function KQ(){}function YQ(){}function X5(){}function $F(){}function XQ(){}function OL(){}function QQ(){}function ZQ(){}function JQ(){}function tZ(){}function eZ(){}function nZ(){}function rZ(){}function zF(){}function iZ(){}function qF(){}function sZ(){}function HF(){}function VF(){}function GF(){}function aZ(){}function oZ(){}function U9(){}function NL(){}function W9(){}function cZ(){}function uZ(){}function PL(){}function lZ(){}function hZ(){}function UF(){}function fZ(){}function dZ(){}function gZ(){}function pZ(){}function bZ(){}function vZ(){}function wZ(){}function mZ(){}function yZ(){}function xZ(){}function mg(){}function kZ(){}function wm(){}function WF(){}function EZ(){}function TZ(){}function _Z(){}function CZ(){}function SZ(){}function AZ(){}function LZ(){}function MZ(){}function DZ(){}function Ic(){}function IZ(){}function K9(){}function oc(){}function Zc(){}function Qi(){}function FL(){}function OZ(){}function NZ(){}function PZ(){}function Q5(){}function mm(){}function Ue(){}function FZ(){}function BZ(){}function RZ(){}function jZ(){}function $Z(){}function KF(){}function zZ(){}function qZ(){}function BL(){}function HZ(){}function tl(){}function Bu(){}function VZ(){}function GZ(){}function UZ(){}function ym(){}function fv(){}function mp(){}function id(){}function Z5(){}function Y9(){}function kk(){}function YF(){}function WZ(){}function Ek(){}function XF(){}function KZ(){}function X9(){}function J5(){}function t6(){}function yp(){}function QF(){}function Tk(){}function ZF(){}function JF(){}function e6(){}function Vb(){}function _0(){}function xp(){}function A3(){}function _k(){}function Q9(){}function tB(){}function YZ(){}function eB(){}function nB(){}function rB(){}function Ck(){}function iB(){}function sB(){}function XZ(){}function Sk(){}function Ak(){}function xm(){}function RL(){}function QZ(){}function ZZ(){}function JZ(){}function tJ(){}function eJ(){}function nJ(){}function rJ(){}function iJ(){}function aB(){}function sJ(){}function aJ(){}function oJ(){}function oB(){}function Lk(){}function Z9(){}function cB(){}function cJ(){}function uB(){}function lB(){}function uJ(){}function J9(){}function km(){}function hB(){}function fB(){}function lJ(){}function hJ(){}function tT(){}function dB(){}function gB(){}function bc(){}function fJ(){}function pB(){}function eT(){}function dJ(){}function gJ(){}function nT(){}function bB(){}function rT(){}function iT(){}function qf(){}function jL(){}function $L(){}function n6(){}function pJ(){}function bJ(){}function vJ(){}function wJ(){}function Em(){}function vB(){}function r6(){}function g1(){}function wB(){}function mB(){}function yB(){}function xB(){}function kB(){}function EB(){}function Hf(){}function vu(){}function mJ(){}function yJ(){}function xJ(){}function wu(){}function sT(){}function TB(){}function _B(){}function i6(){}function kJ(){}function Mk(){}function EJ(){}function CB(){}function TJ(){}function _J(){}function aT(){}function SB(){}function zL(){}function oT(){}function CJ(){}function SJ(){}function qL(){}function cT(){}function p1(){}function Dk(){}function AJ(){}function Ik(){}function HL(){}function Gb(){}function uT(){}function VL(){}function Vf(){}function lT(){}function b1(){}function v1(){}function LJ(){}function MJ(){}function L3(){}function Ok(){}function Nk(){}function hT(){}function DJ(){}function s6(){}function GL(){}function AB(){}function IJ(){}function fT(){DT()}function OJ(){Lit()}function LB(){iC()}function UL(){Kz()}function NJ(){I4t()}function dT(){n1()}function PJ(){H3t()}function FJ(){JD()}function BJ(){wM()}function RJ(){vM()}function jJ(){VM()}function MB(){wVt()}function $J(){Y6()}function zJ(){LR()}function qJ(){LJt()}function DB(){qee()}function HJ(){ote()}function VJ(){TQt()}function gT(){Q8()}function GJ(){tb()}function UJ(){Hee()}function WJ(){vZt()}function KJ(){_6t()}function YJ(){Mse()}function XJ(){_Qt()}function IB(){xe()}function QJ(){EQt()}function OB(){Vee()}function ZJ(){Wne()}function WL(){SQt()}function JJ(){fte()}function NB(){mVt()}function ttt(){d5t()}function PB(){ay()}function ett(){vne()}function FB(){rI()}function BB(){iat()}function RB(){hst()}function KL(){hw()}function M3(){uyt()}function pT(){CQt()}function sd(){Rue()}function jB(){l5t()}function Pk(){Xst()}function YL(){O$()}function ntt(){eq()}function kp(){di()}function $B(){bz()}function zB(){v3t()}function qB(){yq()}function ih(){dKt()}function XL(){dit()}function HB(){Q5t()}function Fk(t){In(t)}function bT(t){this.a=t}function Bk(t){this.a=t}function VB(t){this.a=t}function a6(t){this.a=t}function dv(t){this.a=t}function Rk(t){this.a=t}function GB(t){this.a=t}function rtt(t){this.a=t}function QL(t){this.a=t}function D3(t){this.a=t}function ZL(t){this.a=t}function vT(t){this.a=t}function itt(t){this.a=t}function wT(t){this.a=t}function mT(t){this.a=t}function o6(t){this.a=t}function JL(t){this.a=t}function tM(t){this.a=t}function stt(t){this.a=t}function att(t){this.a=t}function ott(t){this.a=t}function UB(t){this.b=t}function ctt(t){this.c=t}function utt(t){this.a=t}function ltt(t){this.a=t}function htt(t){this.a=t}function ftt(t){this.a=t}function dtt(t){this.a=t}function gtt(t){this.a=t}function ptt(t){this.a=t}function btt(t){this.a=t}function c6(t){this.a=t}function vtt(t){this.a=t}function jk(t){this.a=t}function Ch(t){this.a=t}function wtt(t){this.a=t}function u6(t){this.a=t}function $k(t){this.a=t}function yT(t){this.a=t}function zk(t){this.a=t}function yg(){this.a=[]}function mtt(t,e){t.a=e}function Zgt(t,e){t.a=e}function Jgt(t,e){t.b=e}function tpt(t,e){t.b=e}function ept(t,e){t.b=e}function eM(t,e){t.j=e}function npt(t,e){t.g=e}function rpt(t,e){t.i=e}function ytt(t,e){t.c=e}function w1(t,e){t.d=e}function xtt(t,e){t.d=e}function ipt(t,e){t.c=e}function C0(t,e){t.k=e}function ktt(t,e){t.c=e}function WB(t,e){t.c=e}function KB(t,e){t.a=e}function Ett(t,e){t.a=e}function spt(t,e){t.f=e}function apt(t,e){t.a=e}function gv(t,e){t.b=e}function nM(t,e){t.d=e}function xT(t,e){t.i=e}function YB(t,e){t.o=e}function opt(t,e){t.r=e}function cpt(t,e){t.a=e}function XB(t,e){t.b=e}function pv(t,e){t.e=e}function Ttt(t,e){t.f=e}function kT(t,e){t.g=e}function l6(t,e){t.e=e}function upt(t,e){t.f=e}function qk(t,e){t.f=e}function _tt(t,e){t.n=e}function xg(t,e){t.a=e}function lpt(t,e){t.a=e}function I3(t,e){t.c=e}function Ctt(t,e){t.c=e}function Stt(t,e){t.d=e}function QB(t,e){t.e=e}function ZB(t,e){t.g=e}function Att(t,e){t.a=e}function Hk(t,e){t.c=e}function ET(t,e){t.d=e}function hpt(t,e){t.e=e}function Ltt(t,e){t.f=e}function Mtt(t,e){t.j=e}function Dtt(t,e){t.a=e}function fpt(t,e){t.b=e}function Ec(t,e){t.a=e}function JB(t){t.b=t.a}function Itt(t){t.c=t.d.d}function h6(t){this.d=t}function kg(t){this.a=t}function Tm(t){this.a=t}function rM(t){this.a=t}function m1(t){this.a=t}function f6(t){this.a=t}function Ott(t){this.a=t}function tR(t){this.a=t}function O3(t){this.a=t}function iM(t){this.a=t}function _m(t){this.a=t}function eR(t){this.a=t}function y1(t){this.a=t}function y(t){this.a=t}function g(t){this.a=t}function x(t){this.b=t}function T(t){this.b=t}function L(t){this.b=t}function I(t){this.a=t}function O(t){this.a=t}function $(t){this.a=t}function z(t){this.c=t}function S(t){this.c=t}function V(t){this.c=t}function U(t){this.a=t}function et(t){this.a=t}function at(t){this.a=t}function lt(t){this.a=t}function gt(t){this.a=t}function Lt(t){this.a=t}function Et(t){this.a=t}function Dt(t){this.a=t}function It(t){this.a=t}function zt(t){this.a=t}function te(t){this.a=t}function Xt(t){this.a=t}function Ht(t){this.a=t}function ie(t){this.a=t}function Ut(t){this.a=t}function fe(t){this.a=t}function ge(t){this.a=t}function se(t){this.a=t}function Ne(t){this.a=t}function pe(t){this.a=t}function gn(t){this.a=t}function je(t){this.a=t}function Ge(t){this.a=t}function xn(t){this.a=t}function Dn(t){this.a=t}function Xn(t){this.a=t}function Cn(t){this.a=t}function Yn(t){this.a=t}function rr(t){this.a=t}function wr(t){this.a=t}function ur(t){this.a=t}function er(t){this.a=t}function bn(t){this.a=t}function pr(t){this.a=t}function fr(t){this.a=t}function ri(t){this.a=t}function _i(t){this.a=t}function ia(t){this.a=t}function La(t){this.a=t}function Di(t){this.a=t}function wi(t){this.a=t}function _s(t){this.a=t}function Zi(t){this.a=t}function Ni(t){this.a=t}function ns(t){this.a=t}function Ua(t){this.e=t}function sa(t){this.a=t}function Xs(t){this.a=t}function Cr(t){this.a=t}function Jt(t){this.a=t}function jn(t){this.a=t}function Lr(t){this.a=t}function ir(t){this.a=t}function sr(t){this.a=t}function Fa(t){this.a=t}function Hr(t){this.a=t}function ss(t){this.a=t}function qo(t){this.a=t}function Bc(t){this.a=t}function ro(t){this.a=t}function Tc(t){this.a=t}function Ma(t){this.a=t}function io(t){this.a=t}function _l(t){this.a=t}function Gf(t){this.a=t}function Ep(t){this.a=t}function Tp(t){this.a=t}function Uf(t){this.a=t}function Eg(t){this.a=t}function ad(t){this.a=t}function bv(t){this.a=t}function Cm(t){this.a=t}function d6(t){this.a=t}function N3(t){this.a=t}function g6(t){this.a=t}function TT(t){this.a=t}function P3(t){this.a=t}function $d(t){this.a=t}function x1(t){this.a=t}function zd(t){this.a=t}function _T(t){this.a=t}function Ub(t){this.a=t}function nR(t){this.a=t}function Ntt(t){this.a=t}function Ptt(t){this.a=t}function Ftt(t){this.a=t}function Btt(t){this.a=t}function Rtt(t){this.a=t}function jtt(t){this.a=t}function $tt(t){this.a=t}function Vk(t){this.a=t}function sM(t){this.a=t}function CT(t){this.a=t}function rR(t){this.a=t}function iR(t){this.a=t}function ztt(t){this.a=t}function _p(t){this.a=t}function aM(t){this.a=t}function sR(t){this.a=t}function Gk(t){this.c=t}function Cp(t){this.b=t}function qtt(t){this.a=t}function c$t(t){this.a=t}function u$t(t){this.a=t}function l$t(t){this.a=t}function h$t(t){this.a=t}function f$t(t){this.a=t}function d$t(t){this.a=t}function g$t(t){this.a=t}function p$t(t){this.a=t}function b$t(t){this.a=t}function v$t(t){this.a=t}function w$t(t){this.a=t}function m$t(t){this.a=t}function y$t(t){this.a=t}function x$t(t){this.a=t}function k$t(t){this.a=t}function E$t(t){this.a=t}function T$t(t){this.a=t}function _$t(t){this.a=t}function C$t(t){this.a=t}function S$t(t){this.a=t}function A$t(t){this.a=t}function L$t(t){this.a=t}function M$t(t){this.a=t}function Sp(t){this.a=t}function p6(t){this.a=t}function D$t(t){this.a=t}function I$t(t){this.a=t}function O$t(t){this.a=t}function N$t(t){this.a=t}function P$t(t){this.a=t}function F$t(t){this.a=t}function B$t(t){this.a=t}function R$t(t){this.a=t}function j$t(t){this.a=t}function $$t(t){this.a=t}function z$t(t){this.a=t}function q$t(t){this.a=t}function H$t(t){this.a=t}function V$t(t){this.a=t}function G$t(t){this.a=t}function U$t(t){this.a=t}function aR(t){this.a=t}function W$t(t){this.a=t}function K$t(t){this.a=t}function Y$t(t){this.a=t}function X$t(t){this.a=t}function Q$t(t){this.a=t}function Z$t(t){this.a=t}function J$t(t){this.a=t}function tzt(t){this.a=t}function ezt(t){this.a=t}function nzt(t){this.a=t}function rzt(t){this.a=t}function izt(t){this.a=t}function szt(t){this.a=t}function azt(t){this.a=t}function ozt(t){this.a=t}function czt(t){this.a=t}function uzt(t){this.a=t}function lzt(t){this.a=t}function hzt(t){this.a=t}function fzt(t){this.a=t}function dzt(t){this.a=t}function gzt(t){this.a=t}function pzt(t){this.a=t}function bzt(t){this.a=t}function vzt(t){this.a=t}function wzt(t){this.a=t}function mzt(t){this.a=t}function yzt(t){this.a=t}function dpt(t){this.a=t}function ts(t){this.b=t}function xzt(t){this.f=t}function gpt(t){this.a=t}function kzt(t){this.a=t}function Ezt(t){this.a=t}function Tzt(t){this.a=t}function _zt(t){this.a=t}function Czt(t){this.a=t}function Szt(t){this.a=t}function Azt(t){this.a=t}function Lzt(t){this.a=t}function oM(t){this.a=t}function Mzt(t){this.a=t}function Dzt(t){this.b=t}function ppt(t){this.c=t}function oR(t){this.e=t}function Izt(t){this.a=t}function cR(t){this.a=t}function uR(t){this.a=t}function Htt(t){this.a=t}function Ozt(t){this.a=t}function Nzt(t){this.d=t}function bpt(t){this.a=t}function vpt(t){this.a=t}function vv(t){this.e=t}function KWe(){this.a=0}function F3(){dUt(this)}function le(){Qet(this)}function Ar(){nl(this)}function Vtt(){vXt(this)}function Pzt(){}function wv(){this.c=QAt}function YWe(t,e){e.Wb(t)}function Fzt(t,e){t.b+=e}function Bzt(t){t.b=new oet}function nt(t){return t.e}function XWe(t){return t.a}function QWe(t){return t.a}function ZWe(t){return t.a}function JWe(t){return t.a}function tKe(t){return t.a}function eKe(){return null}function nKe(){return null}function rKe(){rbt(),g5n()}function iKe(t){t.b.tf(t.e)}function ST(t,e){t.b=e-t.b}function AT(t,e){t.a=e-t.a}function Rzt(t,e){e.ad(t.a)}function sKe(t,e){Us(e,t)}function aKe(t,e,n){t.Od(n,e)}function cM(t,e){t.e=e,e.b=t}function wpt(t){fd(),this.a=t}function jzt(t){fd(),this.a=t}function $zt(t){fd(),this.a=t}function mpt(t){Vm(),this.a=t}function zzt(t){k8(),Tut.be(t)}function Wb(){XUt.call(this)}function ypt(){XUt.call(this)}function xpt(){Wb.call(this)}function Gtt(){Wb.call(this)}function qzt(){Wb.call(this)}function uM(){Wb.call(this)}function Ru(){Wb.call(this)}function LT(){Wb.call(this)}function Pr(){Wb.call(this)}function sh(){Wb.call(this)}function Hzt(){Wb.call(this)}function vc(){Wb.call(this)}function Vzt(){Wb.call(this)}function Gzt(){this.a=this}function lR(){this.Bb|=256}function Uzt(){this.b=new KGt}function kpt(){kpt=X,new Ar}function Ept(){xpt.call(this)}function Wzt(t,e){t.length=e}function hR(t,e){ue(t.a,e)}function oKe(t,e){N4t(t.c,e)}function cKe(t,e){Vs(t.b,e)}function uKe(t,e){qz(t.a,e)}function lKe(t,e){Rit(t.a,e)}function Uk(t,e){Ci(t.e,e)}function b6(t){iq(t.c,t.b)}function hKe(t,e){t.kc().Nb(e)}function Tpt(t){this.a=uln(t)}function Qs(){this.a=new Ar}function Kzt(){this.a=new Ar}function fR(){this.a=new le}function Utt(){this.a=new le}function _pt(){this.a=new le}function Sh(){this.a=new Xc}function Kb(){this.a=new _Jt}function Cpt(){this.a=new A9}function Spt(){this.a=new lVt}function Yzt(){this.a=new ZQt}function Apt(){this.a=new gQt}function Lpt(){this.a=new RWt}function Xzt(){this.a=new le}function Mpt(){this.a=new le}function Qzt(){this.a=new le}function Zzt(){this.a=new le}function Jzt(){this.d=new le}function tqt(){this.a=new Qs}function eqt(){this.a=new Ar}function nqt(){this.b=new Ar}function rqt(){this.b=new le}function Dpt(){this.e=new le}function iqt(){this.d=new le}function sqt(){this.a=new GJ}function aqt(){le.call(this)}function Ipt(){fR.call(this)}function oqt(){xj.call(this)}function cqt(){Mpt.call(this)}function Wtt(){MT.call(this)}function MT(){Pzt.call(this)}function v6(){Pzt.call(this)}function Opt(){v6.call(this)}function uqt(){GXt.call(this)}function lqt(){GXt.call(this)}function hqt(){$pt.call(this)}function fqt(){$pt.call(this)}function dqt(){$pt.call(this)}function gqt(){zpt.call(this)}function ju(){cs.call(this)}function Npt(){ym.call(this)}function Ppt(){ym.call(this)}function pqt(){Dqt.call(this)}function bqt(){Dqt.call(this)}function vqt(){Ar.call(this)}function wqt(){Ar.call(this)}function mqt(){Ar.call(this)}function yqt(){Qs.call(this)}function Ktt(){jee.call(this)}function xqt(){lR.call(this)}function Ytt(){h2t.call(this)}function Xtt(){h2t.call(this)}function Fpt(){Ar.call(this)}function Qtt(){Ar.call(this)}function kqt(){Ar.call(this)}function Bpt(){Tk.call(this)}function Eqt(){Tk.call(this)}function Tqt(){Bpt.call(this)}function _qt(){GL.call(this)}function Cqt(t){lee.call(this,t)}function Sqt(t){lee.call(this,t)}function Rpt(t){QL.call(this,t)}function jpt(t){tVt.call(this,t)}function fKe(t){jpt.call(this,t)}function dKe(t){tVt.call(this,t)}function Wk(){this.a=new cs}function $pt(){this.a=new Qs}function zpt(){this.a=new Ar}function Aqt(){this.a=new le}function Lqt(){this.j=new le}function qpt(){this.a=new GF}function Mqt(){this.a=new _Ht}function Dqt(){this.a=new QF}function Ztt(){Ztt=X,wut=new Yqt}function Jtt(){Jtt=X,vut=new Kqt}function DT(){DT=X,but=new A}function dR(){dR=X,xut=new KUt}function gKe(t){jpt.call(this,t)}function pKe(t){jpt.call(this,t)}function Iqt(t){Drt.call(this,t)}function Oqt(t){Drt.call(this,t)}function Nqt(t){aKt.call(this,t)}function tet(t){P0n.call(this,t)}function mv(t){Mm.call(this,t)}function IT(t){_R.call(this,t)}function Hpt(t){_R.call(this,t)}function Pqt(t){_R.call(this,t)}function Zo(t){yYt.call(this,t)}function Fqt(t){Zo.call(this,t)}function w6(){zk.call(this,{})}function gR(t){o8(),this.a=t}function OT(t){t.b=null,t.c=0}function bKe(t,e){t.e=e,Bce(t,e)}function vKe(t,e){t.a=e,xgn(t)}function eet(t,e,n){t.a[e.g]=n}function wKe(t,e,n){B1n(n,t,e)}function mKe(t,e){VQe(e.i,t.n)}function Bqt(t,e){Gcn(t).td(e)}function yKe(t,e){return t*t/e}function Rqt(t,e){return t.g-e.g}function xKe(t){return new yT(t)}function kKe(t){return new Hm(t)}function pR(t){Zo.call(this,t)}function Co(t){Zo.call(this,t)}function jqt(t){Zo.call(this,t)}function net(t){yYt.call(this,t)}function ret(t){oyt(),this.a=t}function $qt(t){fKt(),this.a=t}function Sm(t){Pnt(),this.f=t}function iet(t){Pnt(),this.f=t}function Kk(t){Zo.call(this,t)}function Pn(t){Zo.call(this,t)}function Ho(t){Zo.call(this,t)}function zqt(t){Zo.call(this,t)}function m6(t){Zo.call(this,t)}function Be(t){return In(t),t}function Zt(t){return In(t),t}function lM(t){return In(t),t}function Vpt(t){return In(t),t}function EKe(t){return In(t),t}function NT(t){return t.b==t.c}function Am(t){return!!t&&t.b}function TKe(t){return!!t&&t.k}function _Ke(t){return!!t&&t.j}function Cl(t){In(t),this.a=t}function Gpt(t){return f2(t),t}function PT(t){rwt(t,t.length)}function Tg(t){Zo.call(this,t)}function od(t){Zo.call(this,t)}function set(t){Zo.call(this,t)}function B3(t){Zo.call(this,t)}function FT(t){Zo.call(this,t)}function Rr(t){Zo.call(this,t)}function aet(t){L2t.call(this,t,0)}function oet(){Bwt.call(this,12,3)}function Upt(){Upt=X,W8t=new xt}function qqt(){qqt=X,U8t=new C}function bR(){bR=X,sS=new Tt}function Hqt(){Hqt=X,wge=new mt}function Vqt(){throw nt(new Pr)}function Wpt(){throw nt(new Pr)}function Gqt(){throw nt(new Pr)}function CKe(){throw nt(new Pr)}function SKe(){throw nt(new Pr)}function AKe(){throw nt(new Pr)}function cet(){this.a=jr(Dr(Xa))}function y6(t){fd(),this.a=Dr(t)}function Uqt(t,e){t.Td(e),e.Sd(t)}function LKe(t,e){t.a.ec().Mc(e)}function MKe(t,e,n){t.c.lf(e,n)}function Kpt(t){Co.call(this,t)}function cd(t){Pn.call(this,t)}function _g(){f6.call(this,"")}function BT(){f6.call(this,"")}function Ap(){f6.call(this,"")}function Lm(){f6.call(this,"")}function Ypt(t){Co.call(this,t)}function Yk(t){T.call(this,t)}function uet(t){fj.call(this,t)}function Wqt(t){Yk.call(this,t)}function Kqt(){wT.call(this,null)}function Yqt(){wT.call(this,null)}function vR(){vR=X,k8()}function Xqt(){Xqt=X,Age=ldn()}function Qqt(t){return t.a?t.b:0}function DKe(t){return t.a?t.b:0}function IKe(t,e){return t.a-e.a}function OKe(t,e){return t.a-e.a}function NKe(t,e){return t.a-e.a}function wR(t,e){return Smt(t,e)}function ot(t,e){return vQt(t,e)}function PKe(t,e){return e in t.a}function Zqt(t,e){return t.f=e,t}function FKe(t,e){return t.b=e,t}function Jqt(t,e){return t.c=e,t}function BKe(t,e){return t.g=e,t}function Xpt(t,e){return t.a=e,t}function Qpt(t,e){return t.f=e,t}function RKe(t,e){return t.k=e,t}function Zpt(t,e){return t.a=e,t}function jKe(t,e){return t.e=e,t}function Jpt(t,e){return t.e=e,t}function $Ke(t,e){return t.f=e,t}function zKe(t,e){t.b=!0,t.d=e}function qKe(t,e){t.b=new So(e)}function HKe(t,e,n){e.td(t.a[n])}function VKe(t,e,n){e.we(t.a[n])}function GKe(t,e){return t.b-e.b}function UKe(t,e){return t.g-e.g}function WKe(t,e){return t.s-e.s}function KKe(t,e){return t?0:e-1}function tHt(t,e){return t?0:e-1}function YKe(t,e){return t?e-1:0}function XKe(t,e){return e.Yf(t)}function yv(t,e){return t.b=e,t}function mR(t,e){return t.a=e,t}function xv(t,e){return t.c=e,t}function kv(t,e){return t.d=e,t}function Ev(t,e){return t.e=e,t}function tbt(t,e){return t.f=e,t}function RT(t,e){return t.a=e,t}function Xk(t,e){return t.b=e,t}function Qk(t,e){return t.c=e,t}function Ze(t,e){return t.c=e,t}function yn(t,e){return t.b=e,t}function Je(t,e){return t.d=e,t}function tn(t,e){return t.e=e,t}function QKe(t,e){return t.f=e,t}function en(t,e){return t.g=e,t}function nn(t,e){return t.a=e,t}function rn(t,e){return t.i=e,t}function sn(t,e){return t.j=e,t}function eHt(t,e){return t.k=e,t}function ZKe(t,e){return t.j=e,t}function JKe(t,e){tb(),tc(e,t)}function tYe(t,e,n){Ktn(t.a,e,n)}function nHt(t){mXt.call(this,t)}function ebt(t){mXt.call(this,t)}function yR(t){wnt.call(this,t)}function rHt(t){vln.call(this,t)}function Lp(t){Kv.call(this,t)}function iHt(t){art.call(this,t)}function sHt(t){art.call(this,t)}function aHt(){a2t.call(this,"")}function Da(){this.a=0,this.b=0}function oHt(){this.b=0,this.a=0}function cHt(t,e){t.b=0,ty(t,e)}function eYe(t,e){t.c=e,t.b=!0}function uHt(t,e){return t.c._b(e)}function Wf(t){return t.e&&t.e()}function het(t){return t?t.d:null}function lHt(t,e){return Fre(t.b,e)}function nYe(t){return t?t.g:null}function rYe(t){return t?t.i:null}function Mp(t){return L0(t),t.o}function Tv(){Tv=X,C4e=x1n()}function hHt(){hHt=X,la=Odn()}function Zk(){Zk=X,XAt=E1n()}function fHt(){fHt=X,l5e=k1n()}function nbt(){nbt=X,kc=wgn()}function rbt(){rbt=X,Cb=j8()}function dHt(){throw nt(new Pr)}function gHt(){throw nt(new Pr)}function pHt(){throw nt(new Pr)}function bHt(){throw nt(new Pr)}function vHt(){throw nt(new Pr)}function wHt(){throw nt(new Pr)}function xR(t){this.a=new x6(t)}function ibt(t){dhe(),S5n(this,t)}function Dp(t){this.a=new jnt(t)}function R3(t,e){for(;t.ye(e););}function sbt(t,e){for(;t.sd(e););}function j3(t,e){return t.a+=e,t}function fet(t,e){return t.a+=e,t}function Cg(t,e){return t.a+=e,t}function _v(t,e){return t.a+=e,t}function jT(t){return qp(t),t.a}function kR(t){return t.b!=t.d.c}function mHt(t){return t.l|t.m<<22}function abt(t,e){return t.d[e.p]}function yHt(t,e){return ovn(t,e)}function obt(t,e,n){t.splice(e,n)}function xHt(t){t.c?iue(t):sue(t)}function ER(t){this.a=0,this.b=t}function kHt(){this.a=new dI(uCt)}function EHt(){this.b=new dI(Y_t)}function THt(){this.b=new dI(Hht)}function _Ht(){this.b=new dI(Hht)}function CHt(){throw nt(new Pr)}function SHt(){throw nt(new Pr)}function AHt(){throw nt(new Pr)}function LHt(){throw nt(new Pr)}function MHt(){throw nt(new Pr)}function DHt(){throw nt(new Pr)}function IHt(){throw nt(new Pr)}function OHt(){throw nt(new Pr)}function NHt(){throw nt(new Pr)}function PHt(){throw nt(new Pr)}function iYe(){throw nt(new vc)}function sYe(){throw nt(new vc)}function hM(t){this.a=new FHt(t)}function FHt(t){bon(this,t,bdn())}function fM(t){return!t||rXt(t)}function dM(t){return Y1[t]!=-1}function aYe(){zH!=0&&(zH=0),qH=-1}function BHt(){put==null&&(put=[])}function oYe(t,e){Gst(Kt(t.a),e)}function cYe(t,e){Gst(Kt(t.a),e)}function gM(t,e){K3.call(this,t,e)}function Jk(t,e){gM.call(this,t,e)}function cbt(t,e){this.b=t,this.c=e}function RHt(t,e){this.b=t,this.a=e}function jHt(t,e){this.a=t,this.b=e}function $Ht(t,e){this.a=t,this.b=e}function zHt(t,e){this.a=t,this.b=e}function qHt(t,e){this.a=t,this.b=e}function HHt(t,e){this.a=t,this.b=e}function VHt(t,e){this.a=t,this.b=e}function GHt(t,e){this.a=t,this.b=e}function UHt(t,e){this.a=t,this.b=e}function WHt(t,e){this.b=t,this.a=e}function KHt(t,e){this.b=t,this.a=e}function YHt(t,e){this.b=t,this.a=e}function XHt(t,e){this.b=t,this.a=e}function Kr(t,e){this.f=t,this.g=e}function t8(t,e){this.e=t,this.d=e}function Cv(t,e){this.g=t,this.i=e}function det(t,e){this.a=t,this.b=e}function QHt(t,e){this.a=t,this.f=e}function ZHt(t,e){this.b=t,this.c=e}function uYe(t,e){this.a=t,this.b=e}function JHt(t,e){this.a=t,this.b=e}function get(t,e){this.a=t,this.b=e}function tVt(t){w2t(t.dc()),this.c=t}function TR(t){this.b=u(Dr(t),83)}function eVt(t){this.a=u(Dr(t),83)}function Mm(t){this.a=u(Dr(t),15)}function nVt(t){this.a=u(Dr(t),15)}function _R(t){this.b=u(Dr(t),47)}function CR(){this.q=new b.Date}function qd(){qd=X,c7t=new Rt}function e8(){e8=X,X7=new Pt}function $T(t){return t.f.c+t.g.c}function pM(t,e){return t.b.Hc(e)}function rVt(t,e){return t.b.Ic(e)}function iVt(t,e){return t.b.Qc(e)}function sVt(t,e){return t.b.Hc(e)}function aVt(t,e){return t.c.uc(e)}function S0(t,e){return t.a._b(e)}function oVt(t,e){return Si(t.c,e)}function cVt(t,e){return Ml(t.b,e)}function uVt(t,e){return t>e&&e0}function bet(t,e){return _c(t,e)<0}function UT(t,e){return t.a.get(e)}function kYe(t,e){return e.split(t)}function AVt(t,e){return Ml(t.e,e)}function bbt(t){return In(t),!1}function FR(t){Tn.call(this,t,21)}function EYe(t,e){sQt.call(this,t,e)}function BR(t,e){Kr.call(this,t,e)}function vet(t,e){Kr.call(this,t,e)}function vbt(t){Znt(),aKt.call(this,t)}function wbt(t,e){uYt(t,t.length,e)}function yM(t,e){RYt(t,t.length,e)}function TYe(t,e,n){e.ud(t.a.Ge(n))}function _Ye(t,e,n){e.we(t.a.Fe(n))}function CYe(t,e,n){e.td(t.a.Kb(n))}function SYe(t,e,n){t.Mb(n)&&e.td(n)}function WT(t,e,n){t.splice(e,0,n)}function AYe(t,e){return zu(t.e,e)}function RR(t,e){this.d=t,this.e=e}function LVt(t,e){this.b=t,this.a=e}function MVt(t,e){this.b=t,this.a=e}function mbt(t,e){this.b=t,this.a=e}function DVt(t,e){this.a=t,this.b=e}function IVt(t,e){this.a=t,this.b=e}function OVt(t,e){this.a=t,this.b=e}function NVt(t,e){this.a=t,this.b=e}function E6(t,e){this.a=t,this.b=e}function ybt(t,e){this.b=t,this.a=e}function xbt(t,e){this.b=t,this.a=e}function jR(t,e){Kr.call(this,t,e)}function $R(t,e){Kr.call(this,t,e)}function kbt(t,e){Kr.call(this,t,e)}function Ebt(t,e){Kr.call(this,t,e)}function $3(t,e){Kr.call(this,t,e)}function wet(t,e){Kr.call(this,t,e)}function met(t,e){Kr.call(this,t,e)}function yet(t,e){Kr.call(this,t,e)}function zR(t,e){Kr.call(this,t,e)}function Tbt(t,e){Kr.call(this,t,e)}function xet(t,e){Kr.call(this,t,e)}function xM(t,e){Kr.call(this,t,e)}function qR(t,e){Kr.call(this,t,e)}function ket(t,e){Kr.call(this,t,e)}function KT(t,e){Kr.call(this,t,e)}function _bt(t,e){Kr.call(this,t,e)}function Ls(t,e){Kr.call(this,t,e)}function HR(t,e){Kr.call(this,t,e)}function PVt(t,e){this.a=t,this.b=e}function FVt(t,e){this.a=t,this.b=e}function BVt(t,e){this.a=t,this.b=e}function RVt(t,e){this.a=t,this.b=e}function jVt(t,e){this.a=t,this.b=e}function $Vt(t,e){this.a=t,this.b=e}function zVt(t,e){this.a=t,this.b=e}function qVt(t,e){this.a=t,this.b=e}function HVt(t,e){this.a=t,this.b=e}function Cbt(t,e){this.b=t,this.a=e}function VVt(t,e){this.b=t,this.a=e}function GVt(t,e){this.b=t,this.a=e}function UVt(t,e){this.b=t,this.a=e}function i8(t,e){this.c=t,this.d=e}function WVt(t,e){this.e=t,this.d=e}function KVt(t,e){this.a=t,this.b=e}function YVt(t,e){this.b=e,this.c=t}function VR(t,e){Kr.call(this,t,e)}function kM(t,e){Kr.call(this,t,e)}function Eet(t,e){Kr.call(this,t,e)}function YT(t,e){Kr.call(this,t,e)}function Sbt(t,e){Kr.call(this,t,e)}function Tet(t,e){Kr.call(this,t,e)}function _et(t,e){Kr.call(this,t,e)}function EM(t,e){Kr.call(this,t,e)}function Abt(t,e){Kr.call(this,t,e)}function Cet(t,e){Kr.call(this,t,e)}function XT(t,e){Kr.call(this,t,e)}function Lbt(t,e){Kr.call(this,t,e)}function QT(t,e){Kr.call(this,t,e)}function ZT(t,e){Kr.call(this,t,e)}function Im(t,e){Kr.call(this,t,e)}function Aet(t,e){Kr.call(this,t,e)}function Let(t,e){Kr.call(this,t,e)}function Mbt(t,e){Kr.call(this,t,e)}function JT(t,e){Kr.call(this,t,e)}function Met(t,e){Kr.call(this,t,e)}function GR(t,e){Kr.call(this,t,e)}function TM(t,e){Kr.call(this,t,e)}function _M(t,e){Kr.call(this,t,e)}function T6(t,e){Kr.call(this,t,e)}function Det(t,e){Kr.call(this,t,e)}function Dbt(t,e){Kr.call(this,t,e)}function Iet(t,e){Kr.call(this,t,e)}function Oet(t,e){Kr.call(this,t,e)}function Ibt(t,e){Kr.call(this,t,e)}function Net(t,e){Kr.call(this,t,e)}function Pet(t,e){Kr.call(this,t,e)}function Fet(t,e){Kr.call(this,t,e)}function Bet(t,e){Kr.call(this,t,e)}function Obt(t,e){Kr.call(this,t,e)}function XVt(t,e){this.b=t,this.a=e}function QVt(t,e){this.a=t,this.b=e}function ZVt(t,e){this.a=t,this.b=e}function JVt(t,e){this.a=t,this.b=e}function tGt(t,e){this.a=t,this.b=e}function Nbt(t,e){Kr.call(this,t,e)}function Pbt(t,e){Kr.call(this,t,e)}function eGt(t,e){this.b=t,this.d=e}function Fbt(t,e){Kr.call(this,t,e)}function Bbt(t,e){Kr.call(this,t,e)}function nGt(t,e){this.a=t,this.b=e}function rGt(t,e){this.a=t,this.b=e}function UR(t,e){Kr.call(this,t,e)}function t_(t,e){Kr.call(this,t,e)}function Rbt(t,e){Kr.call(this,t,e)}function jbt(t,e){Kr.call(this,t,e)}function $bt(t,e){Kr.call(this,t,e)}function Ret(t,e){Kr.call(this,t,e)}function zbt(t,e){Kr.call(this,t,e)}function jet(t,e){Kr.call(this,t,e)}function WR(t,e){Kr.call(this,t,e)}function $et(t,e){Kr.call(this,t,e)}function zet(t,e){Kr.call(this,t,e)}function CM(t,e){Kr.call(this,t,e)}function qet(t,e){Kr.call(this,t,e)}function qbt(t,e){Kr.call(this,t,e)}function SM(t,e){Kr.call(this,t,e)}function Hbt(t,e){Kr.call(this,t,e)}function LYe(t,e){return zu(t.c,e)}function MYe(t,e){return zu(e.b,t)}function DYe(t,e){return-t.b.Je(e)}function Vbt(t,e){return zu(t.g,e)}function AM(t,e){Kr.call(this,t,e)}function _6(t,e){Kr.call(this,t,e)}function iGt(t,e){this.a=t,this.b=e}function sGt(t,e){this.a=t,this.b=e}function Re(t,e){this.a=t,this.b=e}function e_(t,e){Kr.call(this,t,e)}function n_(t,e){Kr.call(this,t,e)}function LM(t,e){Kr.call(this,t,e)}function Het(t,e){Kr.call(this,t,e)}function KR(t,e){Kr.call(this,t,e)}function r_(t,e){Kr.call(this,t,e)}function Vet(t,e){Kr.call(this,t,e)}function YR(t,e){Kr.call(this,t,e)}function z3(t,e){Kr.call(this,t,e)}function MM(t,e){Kr.call(this,t,e)}function i_(t,e){Kr.call(this,t,e)}function s_(t,e){Kr.call(this,t,e)}function DM(t,e){Kr.call(this,t,e)}function XR(t,e){Kr.call(this,t,e)}function q3(t,e){Kr.call(this,t,e)}function QR(t,e){Kr.call(this,t,e)}function aGt(t,e){this.a=t,this.b=e}function oGt(t,e){this.a=t,this.b=e}function cGt(t,e){this.a=t,this.b=e}function uGt(t,e){this.a=t,this.b=e}function lGt(t,e){this.a=t,this.b=e}function hGt(t,e){this.a=t,this.b=e}function ya(t,e){this.a=t,this.b=e}function ZR(t,e){Kr.call(this,t,e)}function fGt(t,e){this.a=t,this.b=e}function dGt(t,e){this.a=t,this.b=e}function gGt(t,e){this.a=t,this.b=e}function pGt(t,e){this.a=t,this.b=e}function bGt(t,e){this.a=t,this.b=e}function vGt(t,e){this.a=t,this.b=e}function wGt(t,e){this.b=t,this.a=e}function mGt(t,e){this.b=t,this.a=e}function yGt(t,e){this.b=t,this.a=e}function xGt(t,e){this.b=t,this.a=e}function kGt(t,e){this.a=t,this.b=e}function EGt(t,e){this.a=t,this.b=e}function IYe(t,e){c2n(t.a,u(e,56))}function TGt(t,e){yan(t.a,u(e,11))}function OYe(t,e){return f8(),e!=t}function _Gt(){return Xqt(),new Age}function CGt(){vrt(),this.b=new Qs}function SGt(){hq(),this.a=new Qs}function AGt(){Fwt(),Gvt.call(this)}function C6(t,e){Kr.call(this,t,e)}function LGt(t,e){this.a=t,this.b=e}function MGt(t,e){this.a=t,this.b=e}function JR(t,e){this.a=t,this.b=e}function DGt(t,e){this.a=t,this.b=e}function IGt(t,e){this.a=t,this.b=e}function OGt(t,e){this.a=t,this.b=e}function NGt(t,e){this.d=t,this.b=e}function Gbt(t,e){this.d=t,this.e=e}function PGt(t,e){this.f=t,this.c=e}function IM(t,e){this.b=t,this.c=e}function Ubt(t,e){this.i=t,this.g=e}function FGt(t,e){this.e=t,this.a=e}function BGt(t,e){this.a=t,this.b=e}function Wbt(t,e){t.i=null,ez(t,e)}function NYe(t,e){t&&Ai(cN,t,e)}function RGt(t,e){return Yit(t.a,e)}function tj(t){return GD(t.c,t.b)}function cc(t){return t?t.dd():null}function Gt(t){return t??null}function Om(t){return typeof t===cx}function Nm(t){return typeof t===C6t}function ha(t){return typeof t===Pat}function Np(t,e){return t.Hd().Xb(e)}function ej(t,e){return Xon(t.Kc(),e)}function Av(t,e){return _c(t,e)==0}function PYe(t,e){return _c(t,e)>=0}function a_(t,e){return _c(t,e)!=0}function FYe(t){return""+(In(t),t)}function OM(t,e){return t.substr(e)}function jGt(t){return gl(t),t.d.gc()}function Get(t){return Ipn(t,t.c),t}function nj(t){return m_(t==null),t}function o_(t,e){return t.a+=""+e,t}function yo(t,e){return t.a+=""+e,t}function c_(t,e){return t.a+=""+e,t}function wc(t,e){return t.a+=""+e,t}function Yr(t,e){return t.a+=""+e,t}function Kbt(t,e){return t.a+=""+e,t}function $Gt(t,e){ks(t,e,t.a,t.a.a)}function Xb(t,e){ks(t,e,t.c.b,t.c)}function BYe(t,e,n){Yse(e,Rst(t,n))}function RYe(t,e,n){Yse(e,Rst(t,n))}function jYe(t,e){Dan(new nr(t),e)}function zGt(t,e){t.q.setTime(Gv(e))}function qGt(t,e){twt.call(this,t,e)}function HGt(t,e){twt.call(this,t,e)}function Uet(t,e){twt.call(this,t,e)}function VGt(t){nl(this),G_(this,t)}function Ybt(t){return Sn(t,0),null}function Kf(t){return t.a=0,t.b=0,t}function GGt(t,e){return t.a=e.g+1,t}function $Ye(t,e){return t.j[e.p]==2}function Xbt(t){return ken(u(t,79))}function UGt(){UGt=X,kpe=Qr(est())}function WGt(){WGt=X,jbe=Qr(Lce())}function KGt(){this.b=new x6(Qm(12))}function YGt(){this.b=0,this.a=!1}function XGt(){this.b=0,this.a=!1}function u_(t){this.a=t,fT.call(this)}function QGt(t){this.a=t,fT.call(this)}function vn(t,e){Hs.call(this,t,e)}function Wet(t,e){jm.call(this,t,e)}function H3(t,e){Ubt.call(this,t,e)}function Ket(t,e){V8.call(this,t,e)}function ZGt(t,e){NM.call(this,t,e)}function oi(t,e){NR(),Ai(nU,t,e)}function Yet(t,e){return Bl(t.a,0,e)}function JGt(t,e){return t.a.a.a.cc(e)}function tUt(t,e){return Gt(t)===Gt(e)}function zYe(t,e){return js(t.a,e.a)}function qYe(t,e){return mu(t.a,e.a)}function HYe(t,e){return PYt(t.a,e.a)}function ud(t,e){return t.indexOf(e)}function Lv(t,e){return t==e?0:t?1:-1}function rj(t){return t<10?"0"+t:""+t}function VYe(t){return Dr(t),new u_(t)}function eUt(t){return cu(t.l,t.m,t.h)}function s8(t){return Cs((In(t),t))}function GYe(t){return Cs((In(t),t))}function nUt(t,e){return mu(t.g,e.g)}function Vo(t){return typeof t===C6t}function UYe(t){return t==Cw||t==Iy}function WYe(t){return t==Cw||t==Dy}function Qbt(t){return Go(t.b.b,t,0)}function rUt(t){this.a=_Gt(),this.b=t}function iUt(t){this.a=_Gt(),this.b=t}function KYe(t,e){return ue(t.a,e),e}function YYe(t,e){return ue(t.c,e),t}function sUt(t,e){return Hl(t.a,e),t}function XYe(t,e){return df(),e.a+=t}function QYe(t,e){return df(),e.a+=t}function ZYe(t,e){return df(),e.c+=t}function Zbt(t,e){M8(t,0,t.length,e)}function A0(){Et.call(this,new i2)}function aUt(){Fj.call(this,0,0,0,0)}function S6(){ch.call(this,0,0,0,0)}function So(t){this.a=t.a,this.b=t.b}function Pp(t){return t==Hh||t==_f}function a8(t){return t==Z0||t==Q0}function oUt(t){return t==e5||t==t5}function V3(t){return t!=U1&&t!=kb}function Sl(t){return t.Lg()&&t.Mg()}function cUt(t){return Zj(u(t,118))}function ij(t){return Hl(new Zs,t)}function uUt(t,e){return new V8(e,t)}function JYe(t,e){return new V8(e,t)}function Jbt(t,e,n){W$(t,e),K$(t,n)}function sj(t,e,n){Qv(t,e),Xv(t,n)}function k1(t,e,n){Cu(t,e),Su(t,n)}function aj(t,e,n){N8(t,e),F8(t,n)}function oj(t,e,n){P8(t,e),B8(t,n)}function Xet(t,e){X8(t,e),R8(t,t.D)}function t2t(t){PGt.call(this,t,!0)}function lUt(t,e,n){H2t.call(this,t,e,n)}function Fp(t){eb(),tcn.call(this,t)}function hUt(){BR.call(this,"Head",1)}function fUt(){BR.call(this,"Tail",3)}function Qet(t){t.c=Nt(Qn,Me,1,0,5,1)}function dUt(t){t.a=Nt(Qn,Me,1,8,5,1)}function gUt(t){_u(t.xf(),new ur(t))}function G3(t){return t!=null?Ji(t):0}function tXe(t,e){return Zm(e,_1(t))}function eXe(t,e){return Zm(e,_1(t))}function nXe(t,e){return t[t.length]=e}function rXe(t,e){return t[t.length]=e}function e2t(t){return ntn(t.b.Kc(),t.a)}function iXe(t,e){return tz(Xnt(t.d),e)}function sXe(t,e){return tz(Xnt(t.g),e)}function aXe(t,e){return tz(Xnt(t.j),e)}function ao(t,e){Hs.call(this,t.b,e)}function Mv(t){Fj.call(this,t,t,t,t)}function n2t(t){return t.b&&wat(t),t.a}function r2t(t){return t.b&&wat(t),t.c}function oXe(t,e){z1||(t.b=e)}function Zet(t,e,n){return ls(t,e,n),n}function pUt(t,e,n){ls(t.c[e.g],e.g,n)}function cXe(t,e,n){u(t.c,69).Xh(e,n)}function uXe(t,e,n){k1(n,n.i+t,n.j+e)}function lXe(t,e){Or(Oc(t.a),LQt(e))}function hXe(t,e){Or(fl(t.a),MQt(e))}function l_(t){yi(),vv.call(this,t)}function fXe(t){return t==null?0:Ji(t)}function bUt(){bUt=X,kht=new eC(vft)}function Fr(){Fr=X,new vUt,new le}function vUt(){new Ar,new Ar,new Ar}function i2t(){i2t=X,kpt(),K8t=new Ar}function E1(){E1=X,b.Math.log(2)}function ah(){ah=X,f0=(EVt(),I4e)}function dXe(){throw nt(new Tg(rge))}function gXe(){throw nt(new Tg(rge))}function pXe(){throw nt(new Tg(ige))}function bXe(){throw nt(new Tg(ige))}function wUt(t){this.a=t,kvt.call(this,t)}function Jet(t){this.a=t,TR.call(this,t)}function tnt(t){this.a=t,TR.call(this,t)}function aa(t,e){Dnt(t.c,t.c.length,e)}function Jo(t){return t.ae?1:0}function yUt(t,e){return _c(t,e)>0?t:e}function cu(t,e,n){return{l:t,m:e,h:n}}function vXe(t,e){t.a!=null&&TGt(e,t.a)}function xUt(t){t.a=new Bt,t.c=new Bt}function cj(t){this.b=t,this.a=new le}function kUt(t){this.b=new As,this.a=t}function a2t(t){Z2t.call(this),this.a=t}function EUt(){BR.call(this,"Range",2)}function TUt(){t4t(),this.a=new dI(kEt)}function wXe(t,e){Dr(e),X3(t).Jc(new J)}function mXe(t,e){return Rl(),e.n.b+=t}function yXe(t,e,n){return Ai(t.g,n,e)}function xXe(t,e,n){return Ai(t.k,n,e)}function kXe(t,e){return Ai(t.a,e.a,e)}function U3(t,e,n){return y3t(e,n,t.c)}function o2t(t){return new Re(t.c,t.d)}function EXe(t){return new Re(t.c,t.d)}function uc(t){return new Re(t.a,t.b)}function _Ut(t,e){return U3n(t.a,e,null)}function TXe(t){Ba(t,null),pa(t,null)}function CUt(t){mrt(t,null),yrt(t,null)}function SUt(){NM.call(this,null,null)}function AUt(){bj.call(this,null,null)}function c2t(t){this.a=t,Ar.call(this)}function _Xe(t){this.b=(pn(),new z(t))}function uj(t){t.j=Nt(o7t,re,310,0,0,1)}function CXe(t,e,n){t.c.Vc(e,u(n,133))}function SXe(t,e,n){t.c.ji(e,u(n,133))}function LUt(t,e){Tr(t),t.Gc(u(e,15))}function h_(t,e){return c3n(t.c,t.b,e)}function AXe(t,e){return new QUt(t.Kc(),e)}function ent(t,e){return Scn(t.Kc(),e)!=-1}function u2t(t,e){return t.a.Bc(e)!=null}function lj(t){return t.Ob()?t.Pb():null}function MUt(t){return Ih(t,0,t.length)}function _t(t,e){return t!=null&&sst(t,e)}function LXe(t,e){t.q.setHours(e),yC(t,e)}function DUt(t,e){t.c&&(Ovt(e),rQt(e))}function MXe(t,e,n){u(t.Kb(n),164).Nb(e)}function DXe(t,e,n){return j3n(t,e,n),n}function IUt(t,e,n){t.a=e^1502,t.b=n^got}function nnt(t,e,n){return t.a[e.g][n.g]}function T1(t,e){return t.a[e.c.p][e.p]}function IXe(t,e){return t.e[e.c.p][e.p]}function OXe(t,e){return t.c[e.c.p][e.p]}function NXe(t,e){return t.j[e.p]=Hbn(e)}function PXe(t,e){return fmt(t.f,e.tg())}function FXe(t,e){return fmt(t.b,e.tg())}function BXe(t,e){return t.a0?e*e/t:e*e*100}function cQe(t,e){return t>0?e/(t*t):e*100}function uQe(t,e,n){return ue(e,eie(t,n))}function lQe(t,e,n){O$(),t.Xe(e)&&n.td(t)}function u8(t,e,n){var r;r=t.Zc(e),r.Rb(n)}function Fm(t,e,n){return t.a+=e,t.b+=n,t}function hQe(t,e,n){return t.a*=e,t.b*=n,t}function BM(t,e,n){return t.a-=e,t.b-=n,t}function O2t(t,e){return t.a=e.a,t.b=e.b,t}function mj(t){return t.a=-t.a,t.b=-t.b,t}function uWt(t){this.c=t,this.a=1,this.b=1}function lWt(t){this.c=t,Cu(t,0),Su(t,0)}function hWt(t){cs.call(this),z_(this,t)}function fWt(t){Oat(),Bzt(this),this.mf(t)}function dWt(t,e){GT(),NM.call(this,t,e)}function N2t(t,e){Sg(),bj.call(this,t,e)}function gWt(t,e){Sg(),bj.call(this,t,e)}function pWt(t,e){Sg(),N2t.call(this,t,e)}function Al(t,e,n){Il.call(this,t,e,n,2)}function unt(t,e){ah(),Pj.call(this,t,e)}function bWt(t,e){ah(),unt.call(this,t,e)}function P2t(t,e){ah(),unt.call(this,t,e)}function vWt(t,e){ah(),P2t.call(this,t,e)}function F2t(t,e){ah(),Pj.call(this,t,e)}function wWt(t,e){ah(),F2t.call(this,t,e)}function mWt(t,e){ah(),Pj.call(this,t,e)}function fQe(t,e){return t.c.Fc(u(e,133))}function B2t(t,e,n){return Eq(mD(t,e),n)}function dQe(t,e,n){return e.Qk(t.e,t.c,n)}function gQe(t,e,n){return e.Rk(t.e,t.c,n)}function lnt(t,e){return Xp(t.e,u(e,49))}function pQe(t,e,n){J_(fl(t.a),e,MQt(n))}function bQe(t,e,n){J_(Oc(t.a),e,LQt(n))}function R2t(t,e){e.$modCount=t.$modCount}function b_(){b_=X,$S=new ts("root")}function l8(){l8=X,lN=new pqt,new bqt}function yWt(){this.a=new Hv,this.b=new Hv}function j2t(){jee.call(this),this.Bb|=Qa}function xWt(){Kr.call(this,"GROW_TREE",0)}function vQe(t){return t==null?null:P4n(t)}function wQe(t){return t==null?null:H0n(t)}function mQe(t){return t==null?null:Wo(t)}function yQe(t){return t==null?null:Wo(t)}function L0(t){t.o==null&&vbn(t)}function Fe(t){return m_(t==null||Om(t)),t}function ve(t){return m_(t==null||Nm(t)),t}function jr(t){return m_(t==null||ha(t)),t}function $2t(t){this.q=new b.Date(Gv(t))}function RM(t,e){this.c=t,t8.call(this,t,e)}function yj(t,e){this.a=t,RM.call(this,t,e)}function xQe(t,e){this.d=t,Itt(this),this.b=e}function z2t(t,e){zrt.call(this,t),this.a=e}function q2t(t,e){zrt.call(this,t),this.a=e}function kQe(t){p3t.call(this,0,0),this.f=t}function H2t(t,e,n){D$.call(this,t,e,n,null)}function kWt(t,e,n){D$.call(this,t,e,n,null)}function EQe(t,e,n){return t.ue(e,n)<=0?n:e}function TQe(t,e,n){return t.ue(e,n)<=0?e:n}function _Qe(t,e){return u(Wv(t.b,e),149)}function CQe(t,e){return u(Wv(t.c,e),229)}function hnt(t){return u(Pe(t.a,t.b),287)}function EWt(t){return new Re(t.c,t.d+t.a)}function TWt(t){return Rl(),oUt(u(t,197))}function Bm(){Bm=X,Q7t=on((Nl(),W2))}function SQe(t,e){e.a?fvn(t,e):rnt(t.a,e.b)}function _Wt(t,e){z1||ue(t.a,e)}function AQe(t,e){return vM(),H8(e.d.i,t)}function LQe(t,e){return Y6(),new Sue(e,t)}function hd(t,e){return tD(e,U6t),t.f=e,t}function V2t(t,e,n){return n=Ul(t,e,3,n),n}function G2t(t,e,n){return n=Ul(t,e,6,n),n}function U2t(t,e,n){return n=Ul(t,e,9,n),n}function jM(t,e,n){++t.j,t.Ki(),jrt(t,e,n)}function CWt(t,e,n){++t.j,t.Hi(e,t.oi(e,n))}function SWt(t,e,n){var r;r=t.Zc(e),r.Rb(n)}function AWt(t,e,n){return a6t(t.c,t.b,e,n)}function W2t(t,e){return(e&Ti)%t.d.length}function Hs(t,e){ts.call(this,t),this.a=e}function K2t(t,e){ppt.call(this,t),this.a=e}function fnt(t,e){ppt.call(this,t),this.a=e}function LWt(t,e){this.c=t,Kv.call(this,e)}function MWt(t,e){this.a=t,Dzt.call(this,e)}function $M(t,e){this.a=t,Dzt.call(this,e)}function DWt(t){this.a=(ql(t,my),new Jc(t))}function IWt(t){this.a=(ql(t,my),new Jc(t))}function zM(t){return!t.a&&(t.a=new it),t.a}function OWt(t){return t>8?0:t+1}function MQe(t,e){return Fn(),t==e?0:t?1:-1}function Y2t(t,e,n){return O6(t,u(e,22),n)}function DQe(t,e,n){return t.apply(e,n)}function NWt(t,e,n){return t.a+=Ih(e,0,n),t}function X2t(t,e){var n;return n=t.e,t.e=e,n}function IQe(t,e){var n;n=t[dot],n.call(t,e)}function OQe(t,e){var n;n=t[dot],n.call(t,e)}function Rm(t,e){t.a.Vc(t.b,e),++t.b,t.c=-1}function PWt(t){nl(t.e),t.d.b=t.d,t.d.a=t.d}function qM(t){t.b?qM(t.b):t.f.c.zc(t.e,t.d)}function NQe(t,e,n){Yb(),mtt(t,e.Ce(t.a,n))}function PQe(t,e){return het(vie(t.a,e,!0))}function FQe(t,e){return het(wie(t.a,e,!0))}function ff(t,e){return wR(new Array(e),t)}function dnt(t){return String.fromCharCode(t)}function BQe(t){return t==null?null:t.message}function FWt(){this.a=new le,this.b=new le}function BWt(){this.a=new A9,this.b=new Uzt}function RWt(){this.b=new Da,this.c=new le}function Q2t(){this.d=new Da,this.e=new Da}function Z2t(){this.n=new Da,this.o=new Da}function xj(){this.n=new v6,this.i=new S6}function jWt(){this.a=new zJ,this.b=new HX}function $Wt(){this.a=new le,this.d=new le}function zWt(){this.b=new Qs,this.a=new Qs}function qWt(){this.b=new Ar,this.a=new Ar}function HWt(){this.b=new EHt,this.a=new FQ}function VWt(){xj.call(this),this.a=new Da}function v_(t){ccn.call(this,t,(P$(),Mut))}function J2t(t,e,n,r){Fj.call(this,t,e,n,r)}function RQe(t,e,n){n!=null&&Z$(e,bst(t,n))}function jQe(t,e,n){n!=null&&J$(e,bst(t,n))}function tvt(t,e,n){return n=Ul(t,e,11,n),n}function Fi(t,e){return t.a+=e.a,t.b+=e.b,t}function fa(t,e){return t.a-=e.a,t.b-=e.b,t}function $Qe(t,e){return t.n.a=(In(e),e+10)}function zQe(t,e){return t.n.a=(In(e),e+10)}function qQe(t,e){return e==t||l7(cq(e),t)}function GWt(t,e){return Ai(t.a,e,"")==null}function HQe(t,e){return vM(),!H8(e.d.i,t)}function VQe(t,e){Pp(t.f)?obn(t,e):Gdn(t,e)}function GQe(t,e){var n;return n=e.Hh(t.a),n}function jm(t,e){Co.call(this,XC+t+L2+e)}function M6(t,e,n,r){he.call(this,t,e,n,r)}function evt(t,e,n,r){he.call(this,t,e,n,r)}function UWt(t,e,n,r){evt.call(this,t,e,n,r)}function WWt(t,e,n,r){Uj.call(this,t,e,n,r)}function gnt(t,e,n,r){Uj.call(this,t,e,n,r)}function nvt(t,e,n,r){Uj.call(this,t,e,n,r)}function KWt(t,e,n,r){gnt.call(this,t,e,n,r)}function rvt(t,e,n,r){gnt.call(this,t,e,n,r)}function En(t,e,n,r){nvt.call(this,t,e,n,r)}function YWt(t,e,n,r){rvt.call(this,t,e,n,r)}function XWt(t,e,n,r){ewt.call(this,t,e,n,r)}function QWt(t,e,n){this.a=t,L2t.call(this,e,n)}function ZWt(t,e,n){this.c=e,this.b=n,this.a=t}function UQe(t,e,n){return t.d=u(e.Kb(n),164)}function ivt(t,e){return t.Aj().Nh().Kh(t,e)}function svt(t,e){return t.Aj().Nh().Ih(t,e)}function JWt(t,e){return In(t),Gt(t)===Gt(e)}function un(t,e){return In(t),Gt(t)===Gt(e)}function pnt(t,e){return het(vie(t.a,e,!1))}function bnt(t,e){return het(wie(t.a,e,!1))}function WQe(t,e){return t.b.sd(new IVt(t,e))}function KQe(t,e){return t.b.sd(new OVt(t,e))}function tKt(t,e){return t.b.sd(new NVt(t,e))}function avt(t,e,n){return t.lastIndexOf(e,n)}function YQe(t,e,n){return js(t[e.b],t[n.b])}function XQe(t,e){return ee(e,(xe(),CO),t)}function QQe(t,e){return mu(e.a.d.p,t.a.d.p)}function ZQe(t,e){return mu(t.a.d.p,e.a.d.p)}function JQe(t,e){return js(t.c-t.s,e.c-e.s)}function eKt(t){return t.c?Go(t.c.a,t,0):-1}function tZe(t){return t<100?null:new Lp(t)}function D6(t){return t==U2||t==h0||t==Kc}function nKt(t,e){return _t(e,15)&&cue(t.c,e)}function eZe(t,e){z1||e&&(t.d=e)}function vnt(t,e){var n;return n=e,!!Lyt(t,n)}function ovt(t,e){this.c=t,Vnt.call(this,t,e)}function rKt(t){this.c=t,Uet.call(this,Dq,0)}function iKt(t,e){atn.call(this,t,t.length,e)}function nZe(t,e,n){return u(t.c,69).lk(e,n)}function kj(t,e,n){return u(t.c,69).mk(e,n)}function rZe(t,e,n){return dQe(t,u(e,332),n)}function cvt(t,e,n){return gQe(t,u(e,332),n)}function iZe(t,e,n){return nae(t,u(e,332),n)}function sKt(t,e,n){return n0n(t,u(e,332),n)}function w_(t,e){return e==null?null:ny(t.b,e)}function uvt(t){return Nm(t)?(In(t),t):t.ke()}function Ej(t){return!isNaN(t)&&!isFinite(t)}function aKt(t){fd(),this.a=(pn(),new Yk(t))}function HM(t){f8(),this.d=t,this.a=new F3}function oh(t,e,n){this.a=t,this.b=e,this.c=n}function oKt(t,e,n){this.a=t,this.b=e,this.c=n}function cKt(t,e,n){this.d=t,this.b=n,this.a=e}function wnt(t){xUt(this),Mh(this),Ka(this,t)}function qu(t){Qet(this),Tvt(this.c,0,t.Pc())}function uKt(t){Dl(t.a),ate(t.c,t.b),t.b=null}function lKt(t){this.a=t,qd(),Au(Date.now())}function hKt(){hKt=X,A7t=new C,YH=new C}function mnt(){mnt=X,m7t=new vt,Lge=new Ot}function fKt(){fKt=X,B4e=Nt(Qn,Me,1,0,5,1)}function dKt(){dKt=X,e5e=Nt(Qn,Me,1,0,5,1)}function lvt(){lvt=X,n5e=Nt(Qn,Me,1,0,5,1)}function fd(){fd=X,new wpt((pn(),pn(),uo))}function sZe(t){return P$(),Xr((vte(),Ige),t)}function aZe(t){return N1(),Xr((FJt(),Rge),t)}function oZe(t){return Nz(),Xr((HZt(),Vge),t)}function cZe(t){return $$(),Xr((VZt(),Gge),t)}function uZe(t){return gq(),Xr((Mne(),Uge),t)}function lZe(t){return Zf(),Xr((OJt(),Yge),t)}function hZe(t){return rl(),Xr((NJt(),Qge),t)}function fZe(t){return Tu(),Xr((PJt(),Jge),t)}function dZe(t){return Lq(),Xr((UGt(),kpe),t)}function gZe(t){return tw(),Xr((mte(),Tpe),t)}function pZe(t){return ex(),Xr((yte(),Cpe),t)}function bZe(t){return sC(),Xr((xte(),Lpe),t)}function vZe(t){return AR(),Xr((xZt(),Mpe),t)}function wZe(t){return z$(),Xr((GZt(),Wpe),t)}function mZe(t){return j_(),Xr((BJt(),gbe),t)}function yZe(t){return Ya(),Xr((Qte(),wbe),t)}function xZe(t){return U8(),Xr((wte(),Ebe),t)}function kZe(t){return ew(),Xr((RJt(),Lbe),t)}function hvt(t,e){if(!t)throw nt(new Pn(e))}function EZe(t){return Gn(),Xr((wee(),Obe),t)}function fvt(t){Fj.call(this,t.d,t.c,t.a,t.b)}function ynt(t){Fj.call(this,t.d,t.c,t.a,t.b)}function dvt(t,e,n){this.b=t,this.c=e,this.a=n}function Tj(t,e,n){this.b=t,this.a=e,this.c=n}function gKt(t,e,n){this.a=t,this.b=e,this.c=n}function gvt(t,e,n){this.a=t,this.b=e,this.c=n}function pKt(t,e,n){this.a=t,this.b=e,this.c=n}function pvt(t,e,n){this.a=t,this.b=e,this.c=n}function bKt(t,e,n){this.b=t,this.a=e,this.c=n}function _j(t,e,n){this.e=e,this.b=t,this.d=n}function TZe(t,e,n){return Yb(),t.a.Od(e,n),e}function xnt(t){var e;return e=new Er,e.e=t,e}function bvt(t){var e;return e=new Jzt,e.b=t,e}function VM(){VM=X,cV=new AY,uV=new LY}function df(){df=X,Wbe=new wX,Kbe=new yF}function _Ze(t){return dz(),Xr((Ete(),qbe),t)}function CZe(t){return O1(),Xr((_te(),Qbe),t)}function SZe(t){return fq(),Xr((mne(),s2e),t)}function AZe(t){return rx(),Xr((xee(),a2e),t)}function LZe(t){return I$(),Xr((QZt(),o2e),t)}function MZe(t){return K6(),Xr((jJt(),c2e),t)}function DZe(t){return p4(),Xr((Ute(),Jbe),t)}function IZe(t){return Jv(),Xr((qJt(),i2e),t)}function OZe(t){return X$(),Xr(($Jt(),u2e),t)}function NZe(t){return m2(),Xr((Vte(),l2e),t)}function PZe(t){return TD(),Xr((WZt(),h2e),t)}function FZe(t){return h2(),Xr((zJt(),d2e),t)}function BZe(t){return nq(),Xr((_ee(),g2e),t)}function RZe(t){return bD(),Xr((KZt(),p2e),t)}function jZe(t){return nI(),Xr((Eee(),b2e),t)}function $Ze(t){return f7(),Xr((kee(),v2e),t)}function zZe(t){return go(),Xr((Gne(),w2e),t)}function qZe(t){return G8(),Xr((VJt(),m2e),t)}function HZe(t){return B0(),Xr((HJt(),x2e),t)}function VZe(t){return x$(),Xr((ZZt(),k2e),t)}function GZe(t){return ph(),Xr((Wte(),E2e),t)}function UZe(t){return Zz(),Xr((Tee(),Rwe),t)}function WZe(t){return Y_(),Xr((GJt(),jwe),t)}function KZe(t){return sy(),Xr((Cte(),$we),t)}function YZe(t){return ho(),Xr((KJt(),Uwe),t)}function XZe(t){return m4(),Xr((wne(),qwe),t)}function QZe(t){return j0(),Xr((WJt(),Hwe),t)}function ZZe(t){return yD(),Xr((XZt(),Vwe),t)}function JZe(t){return uz(),Xr((UJt(),Wwe),t)}function tJe(t){return aC(),Xr((Gte(),zwe),t)}function eJe(t){return lD(),Xr((YZt(),Kwe),t)}function nJe(t){return Z8(),Xr((XJt(),Ywe),t)}function rJe(t){return oz(),Xr((QJt(),Xwe),t)}function iJe(t){return gz(),Xr((YJt(),Qwe),t)}function sJe(t){return Zv(),Xr((ZJt(),lme),t)}function aJe(t){return B_(),Xr((tJt(),pme),t)}function oJe(t){return gd(),Xr((eJt(),kme),t)}function cJe(t){return C1(),Xr((nJt(),Tme),t)}function uJe(t){return Yf(),Xr((JZt(),jme),t)}function lJe(t){return qv(),Xr((rJt(),Ume),t)}function hJe(t){return o7(),Xr((kte(),Wme),t)}function fJe(t){return fC(),Xr((Cee(),Yme),t)}function dJe(t){return d$(),Xr((aJt(),uye),t)}function gJe(t){return iz(),Xr((sJt(),pye),t)}function pJe(t){return v$(),Xr((iJt(),lye),t)}function bJe(t){return _z(),Xr((JJt(),vye),t)}function vJe(t){return N$(),Xr((oJt(),wye),t)}function wJe(t){return RD(),Xr((tte(),mye),t)}function mJe(t){return Vz(),Xr((Tte(),Nye),t)}function yJe(t){return cz(),Xr((nte(),Pye),t)}function xJe(t){return Tz(),Xr((ete(),Fye),t)}function kJe(t){return w7(),Xr((Xte(),n3e),t)}function EJe(t){return VD(),Xr((rte(),r3e),t)}function TJe(t){return MR(),Xr((mZt(),i3e),t)}function _Je(t){return DR(),Xr((wZt(),a3e),t)}function CJe(t){return hD(),Xr((uJt(),o3e),t)}function SJe(t){return iI(),Xr((Kte(),c3e),t)}function AJe(t){return HT(),Xr((yZt(),T3e),t)}function LJe(t){return ND(),Xr((cJt(),_3e),t)}function MJe(t){return t1(),Xr((Yte(),D3e),t)}function DJe(t){return Hg(),Xr((yne(),O3e),t)}function IJe(t){return Qd(),Xr((yee(),N3e),t)}function OJe(t){return cy(),Xr((mee(),$3e),t)}function NJe(t){return co(),Xr((WGt(),jbe),t)}function PJe(t){return $8(),Xr((UZt(),Rbe),t)}function FJe(t){return fo(),Xr((Zte(),e4e),t)}function BJe(t){return D1(),Xr((ste(),n4e),t)}function RJe(t){return q0(),Xr((Lte(),r4e),t)}function jJe(t){return tq(),Xr((Aee(),i4e),t)}function $Je(t){return $0(),Xr((ite(),a4e),t)}function zJe(t){return Vl(),Xr((Ate(),c4e),t)}function qJe(t){return fy(),Xr((Lne(),u4e),t)}function HJe(t){return u4(),Xr((Jte(),l4e),t)}function VJe(t){return va(),Xr((gee(),h4e),t)}function GJe(t){return il(),Xr((See(),f4e),t)}function UJe(t){return Nl(),Xr((Dte(),w4e),t)}function WJe(t){return bl(),Xr((Une(),m4e),t)}function KJe(t){return be(),Xr((tee(),d4e),t)}function YJe(t){return Az(),Xr((Mte(),y4e),t)}function XJe(t){return Ol(),Xr((Ste(),E4e),t)}function QJe(t){return p7(),Xr((xne(),F4e),t)}function ZJe(t,e){return In(t),t+(In(e),e)}function JJe(t,e){return qd(),Or(Kt(t.a),e)}function ttn(t,e){return qd(),Or(Kt(t.a),e)}function knt(t,e){this.c=t,this.a=e,this.b=e-t}function vKt(t,e,n){this.a=t,this.b=e,this.c=n}function vvt(t,e,n){this.a=t,this.b=e,this.c=n}function wvt(t,e,n){this.a=t,this.b=e,this.c=n}function wKt(t,e,n){this.a=t,this.b=e,this.c=n}function mKt(t,e,n){this.a=t,this.b=e,this.c=n}function Lg(t,e,n){this.e=t,this.a=e,this.c=n}function yKt(t,e,n){ah(),Mwt.call(this,t,e,n)}function Ent(t,e,n){ah(),gwt.call(this,t,e,n)}function mvt(t,e,n){ah(),gwt.call(this,t,e,n)}function yvt(t,e,n){ah(),gwt.call(this,t,e,n)}function xKt(t,e,n){ah(),Ent.call(this,t,e,n)}function xvt(t,e,n){ah(),Ent.call(this,t,e,n)}function kKt(t,e,n){ah(),xvt.call(this,t,e,n)}function EKt(t,e,n){ah(),mvt.call(this,t,e,n)}function TKt(t,e,n){ah(),yvt.call(this,t,e,n)}function GM(t,e){return Dr(t),Dr(e),new GHt(t,e)}function I6(t,e){return Dr(t),Dr(e),new BKt(t,e)}function etn(t,e){return Dr(t),Dr(e),new RKt(t,e)}function ntn(t,e){return Dr(t),Dr(e),new WHt(t,e)}function u(t,e){return m_(t==null||sst(t,e)),t}function h8(t){var e;return e=new le,Zrt(e,t),e}function rtn(t){var e;return e=new Qs,Zrt(e,t),e}function _Kt(t){var e;return e=new Spt,fit(e,t),e}function UM(t){var e;return e=new cs,fit(e,t),e}function itn(t){return!t.e&&(t.e=new le),t.e}function stn(t){return!t.c&&(t.c=new xm),t.c}function ue(t,e){return t.c[t.c.length]=e,!0}function CKt(t,e){this.c=t,this.b=e,this.a=!1}function kvt(t){this.d=t,Itt(this),this.b=Qtn(t.d)}function SKt(){this.a=";,;",this.b="",this.c=""}function atn(t,e,n){AYt.call(this,e,n),this.a=t}function AKt(t,e,n){this.b=t,qGt.call(this,e,n)}function Evt(t,e,n){this.c=t,RR.call(this,e,n)}function Tvt(t,e,n){U4t(n,0,t,e,n.length,!1)}function Vd(t,e,n,r,s){t.b=e,t.c=n,t.d=r,t.a=s}function otn(t,e){e&&(t.b=e,t.a=(qp(e),e.a))}function _vt(t,e,n,r,s){t.d=e,t.c=n,t.a=r,t.b=s}function Cvt(t){var e,n;e=t.b,n=t.c,t.b=n,t.c=e}function Svt(t){var e,n;n=t.d,e=t.a,t.d=e,t.a=n}function Avt(t){return Wp(den(Vo(t)?Dh(t):t))}function ctn(t,e){return mu(VKt(t.d),VKt(e.d))}function utn(t,e){return e==(be(),Bn)?t.c:t.d}function f8(){f8=X,W_t=(be(),Bn),gG=Hn}function LKt(){this.b=Zt(ve(Ie((n1(),Wut))))}function MKt(t){return Yb(),Nt(Qn,Me,1,t,5,1)}function ltn(t){return new Re(t.c+t.b,t.d+t.a)}function htn(t,e){return LR(),mu(t.d.p,e.d.p)}function Tnt(t){return Zn(t.b!=0),fh(t,t.a.a)}function ftn(t){return Zn(t.b!=0),fh(t,t.c.b)}function Lvt(t,e){if(!t)throw nt(new jqt(e))}function Cj(t,e){if(!t)throw nt(new Pn(e))}function Mvt(t,e,n){i8.call(this,t,e),this.b=n}function WM(t,e,n){Gbt.call(this,t,e),this.c=n}function DKt(t,e,n){cee.call(this,e,n),this.d=t}function Dvt(t){lvt(),Tk.call(this),this.th(t)}function IKt(t,e,n){this.a=t,H3.call(this,e,n)}function OKt(t,e,n){this.a=t,H3.call(this,e,n)}function Sj(t,e,n){Gbt.call(this,t,e),this.c=n}function NKt(){S8(),Den.call(this,(Ip(),Xh))}function PKt(t){return t!=null&&!Git(t,iA,sA)}function dtn(t,e){return(Vre(t)<<4|Vre(e))&Ms}function gtn(t,e){return Qj(),dst(t,e),new cXt(t,e)}function Qb(t,e){var n;t.n&&(n=e,ue(t.f,n))}function d8(t,e,n){var r;r=new Hm(n),Qf(t,e,r)}function ptn(t,e){var n;return n=t.c,Ymt(t,e),n}function Ivt(t,e){return e<0?t.g=-1:t.g=e,t}function Aj(t,e){return Jan(t),t.a*=e,t.b*=e,t}function FKt(t,e,n,r,s){t.c=e,t.d=n,t.b=r,t.a=s}function ai(t,e){return ks(t,e,t.c.b,t.c),!0}function Ovt(t){t.a.b=t.b,t.b.a=t.a,t.a=t.b=null}function _nt(t){this.b=t,this.a=Pv(this.b.a).Ed()}function BKt(t,e){this.b=t,this.a=e,fT.call(this)}function RKt(t,e){this.a=t,this.b=e,fT.call(this)}function jKt(t,e){AYt.call(this,e,1040),this.a=t}function KM(t){return t==0||isNaN(t)?t:t<0?-1:1}function btn(t){return R6(),Zd(t)==hs(Zp(t))}function vtn(t){return R6(),Zp(t)==hs(Zd(t))}function Nv(t,e){return lC(t,new i8(e.a,e.b))}function wtn(t){return!Wa(t)&&t.c.i.c==t.d.i.c}function Lj(t){var e;return e=t.n,t.a.b+e.d+e.a}function $Kt(t){var e;return e=t.n,t.e.b+e.d+e.a}function Nvt(t){var e;return e=t.n,t.e.a+e.b+e.c}function zKt(t){return yi(),new Gd(0,t)}function mtn(t){return t.a?t.a:srt(t)}function m_(t){if(!t)throw nt(new Kk(null))}function qKt(){qKt=X,Dft=(pn(),new I(aut))}function Mj(){Mj=X,new D3t((Ztt(),wut),(Jtt(),vut))}function HKt(){HKt=X,n7t=Nt(Ha,re,19,256,0,1)}function Cnt(t,e,n,r){a3t.call(this,t,e,n,r,0,0)}function ytn(t,e,n){return Ai(t.b,u(n.b,17),e)}function xtn(t,e,n){return Ai(t.b,u(n.b,17),e)}function ktn(t,e){return ue(t,new Re(e.a,e.b))}function Etn(t,e){return t.c=e)throw nt(new Ept)}function sen(t,e,n){return ls(e,0,Rvt(e[0],n[0])),e}function aen(t,e,n){e.Ye(n,Zt(ve(tr(t.b,n)))*t.a)}function SYt(t,e,n){return x4(),z8(t,e)&&z8(t,n)}function T_(t){return il(),!t.Hc(tg)&&!t.Hc(Eb)}function Vj(t){return new Re(t.c+t.b/2,t.d+t.a/2)}function Rnt(t,e){return e.kh()?Xp(t.b,u(e,49)):e}function twt(t,e){this.e=t,this.d=e&64?e|vd:e}function AYt(t,e){this.c=0,this.d=t,this.b=e|64|vd}function Gj(t){this.b=new Jc(11),this.a=(Q3(),t)}function jnt(t){this.b=null,this.a=(Q3(),t||b7t)}function LYt(t){this.a=Zie(t.a),this.b=new qu(t.b)}function MYt(t){this.b=t,A6.call(this,t),OUt(this)}function DYt(t){this.b=t,PM.call(this,t),NUt(this)}function qm(t,e,n){this.a=t,M6.call(this,e,n,5,6)}function ewt(t,e,n,r){this.b=t,Bs.call(this,e,n,r)}function oa(t,e,n,r,s){Vrt.call(this,t,e,n,r,s,-1)}function __(t,e,n,r,s){gD.call(this,t,e,n,r,s,-1)}function he(t,e,n,r){Bs.call(this,t,e,n),this.b=r}function Uj(t,e,n,r){WM.call(this,t,e,n),this.b=r}function IYt(t){PGt.call(this,t,!1),this.a=!1}function OYt(t,e){this.b=t,ctt.call(this,t.b),this.a=e}function NYt(t,e){Vm(),uYe.call(this,t,yz(new Cl(e)))}function Wj(t,e){return yi(),new pwt(t,e,0)}function $nt(t,e){return yi(),new pwt(6,t,e)}function oen(t,e){return un(t.substr(0,e.length),e)}function Ml(t,e){return ha(e)?crt(t,e):!!Fo(t.f,e)}function Ea(t,e){for(In(e);t.Ob();)e.td(t.Pb())}function Y3(t,e,n){eb(),this.e=t,this.d=e,this.a=n}function Mg(t,e,n,r){var s;s=t.i,s.i=e,s.a=n,s.b=r}function nwt(t){var e;for(e=t;e.f;)e=e.f;return e}function P6(t){var e;return e=K_(t),Zn(e!=null),e}function cen(t){var e;return e=Wun(t),Zn(e!=null),e}function p8(t,e){var n;return n=t.a.gc(),dmt(e,n),n-e}function rwt(t,e){var n;for(n=0;n0?b.Math.log(t/e):-100}function PYt(t,e){return _c(t,e)<0?-1:_c(t,e)>0?1:0}function cwt(t,e,n){return Cle(t,u(e,46),u(n,167))}function FYt(t,e){return u(Zvt(Pv(t.a)).Xb(e),42).cd()}function ven(t,e){return $an(e,t.length),new jKt(t,e)}function Vnt(t,e){this.d=t,nr.call(this,t),this.e=e}function Fv(t){this.d=(In(t),t),this.a=0,this.c=Dq}function uwt(t,e){vv.call(this,1),this.a=t,this.b=e}function BYt(t,e){return t.c?BYt(t.c,e):ue(t.b,e),t}function wen(t,e,n){var r;return r=Xm(t,e),Art(t,e,n),r}function lwt(t,e){var n;return n=t.slice(0,e),Smt(n,t)}function RYt(t,e,n){var r;for(r=0;r=t.g}function Jnt(t,e,n){var r;return r=lit(t,e,n),R5t(t,r)}function F6(t,e){var n;n=t.a.length,Xm(t,n),Art(t,n,e)}function JYt(t,e){var n;n=console[t],n.call(console,e)}function tXt(t,e){var n;++t.j,n=t.Vi(),t.Ii(t.oi(n,e))}function Men(t,e,n){u(e.b,65),_u(e.a,new vvt(t,n,e))}function gwt(t,e,n){oR.call(this,e),this.a=t,this.b=n}function pwt(t,e,n){vv.call(this,t),this.a=e,this.b=n}function bwt(t,e,n){this.a=t,ppt.call(this,e),this.b=n}function eXt(t,e,n){this.a=t,Uwt.call(this,8,e,null,n)}function Den(t){this.a=(In(Zr),Zr),this.b=t,new Fpt}function nXt(t){this.c=t,this.b=this.c.a,this.a=this.c.e}function vwt(t){this.c=t,this.b=t.a.d.a,R2t(t.a.e,this)}function Dl(t){Pm(t.c!=-1),t.d.$c(t.c),t.b=t.c,t.c=-1}function A_(t){return b.Math.sqrt(t.a*t.a+t.b*t.b)}function Rv(t,e){return g8(e,t.a.c.length),Pe(t.a,e)}function dd(t,e){return Gt(t)===Gt(e)||t!=null&&Si(t,e)}function Ien(t){return 0>=t?new ubt:won(t-1)}function Oen(t){return n3?crt(n3,t):!1}function rXt(t){return t?t.dc():!t.Kc().Ob()}function $a(t){return!t.a&&t.c?t.c.b:t.a}function Nen(t){return!t.a&&(t.a=new Bs(Tb,t,4)),t.a}function jv(t){return!t.d&&(t.d=new Bs(wo,t,1)),t.d}function In(t){if(t==null)throw nt(new LT);return t}function L_(t){t.c?t.c.He():(t.d=!0,j2n(t))}function qp(t){t.c?qp(t.c):(p2(t),t.d=!0)}function iXt(t){xwt(t.a),t.b=Nt(Qn,Me,1,t.b.length,5,1)}function Pen(t,e){return mu(e.j.c.length,t.j.c.length)}function Fen(t,e){t.c<0||t.b.b=0?t.Bh(n):K4t(t,e)}function sXt(t){var e,n;return e=t.c.i.c,n=t.d.i.c,e==n}function Ren(t){if(t.p!=4)throw nt(new Ru);return t.e}function jen(t){if(t.p!=3)throw nt(new Ru);return t.e}function $en(t){if(t.p!=6)throw nt(new Ru);return t.f}function zen(t){if(t.p!=6)throw nt(new Ru);return t.k}function qen(t){if(t.p!=3)throw nt(new Ru);return t.j}function Hen(t){if(t.p!=4)throw nt(new Ru);return t.j}function wwt(t){return!t.b&&(t.b=new cR(new Qtt)),t.b}function $v(t){return t.c==-2&&Hk(t,o0n(t.g,t.b)),t.c}function w8(t,e){var n;return n=Knt("",t),n.n=e,n.i=1,n}function Ven(t,e){Ont(u(e.b,65),t),_u(e.a,new ri(t))}function Gen(t,e){Or((!t.a&&(t.a=new $M(t,t)),t.a),e)}function aXt(t,e){this.b=t,Vnt.call(this,t,e),OUt(this)}function oXt(t,e){this.b=t,ovt.call(this,t,e),NUt(this)}function mwt(t,e,n,r){Cv.call(this,t,e),this.d=n,this.a=r}function Xj(t,e,n,r){Cv.call(this,t,n),this.a=e,this.f=r}function cXt(t,e){_Xe.call(this,mon(Dr(t),Dr(e))),this.a=e}function uXt(){C4t.call(this,D2,(fHt(),l5e)),d3n(this)}function lXt(){C4t.call(this,jh,(Zk(),XAt)),kyn(this)}function hXt(){Kr.call(this,"DELAUNAY_TRIANGULATION",0)}function Uen(t){return String.fromCharCode.apply(null,t)}function Ai(t,e,n){return ha(e)?Ao(t,e,n):lu(t.f,e,n)}function ywt(t){return pn(),t?t.ve():(Q3(),Q3(),w7t)}function Wen(t,e,n){return X6(),n.pg(t,u(e.cd(),146))}function fXt(t,e){return Mj(),new D3t(new WUt(t),new UUt(e))}function Ken(t){return ql(t,jat),q$(Ra(Ra(5,t),t/10|0))}function Qj(){Qj=X,uge=new tet(ut(ot(I2,1),Iq,42,0,[]))}function dXt(t){return!t.d&&(t.d=new T(t.c.Cc())),t.d}function m8(t){return!t.a&&(t.a=new Wqt(t.c.vc())),t.a}function gXt(t){return!t.b&&(t.b=new Yk(t.c.ec())),t.b}function Wd(t,e){for(;e-- >0;)t=t<<1|(t<0?1:0);return t}function Rc(t,e){return Gt(t)===Gt(e)||t!=null&&Si(t,e)}function Yen(t,e){return Fn(),u(e.b,19).ar&&++r,r}function D0(t){var e,n;return n=(e=new wv,e),O8(n,t),n}function irt(t){var e,n;return n=(e=new wv,e),L4t(n,t),n}function lnn(t,e){var n;return n=tr(t.f,e),ayt(e,n),null}function srt(t){var e;return e=xon(t),e||null}function TXt(t){return!t.b&&(t.b=new he(ra,t,12,3)),t.b}function hnn(t){return t!=null&&pM(rU,t.toLowerCase())}function fnn(t,e){return js(Hu(t)*Ll(t),Hu(e)*Ll(e))}function dnn(t,e){return js(Hu(t)*Ll(t),Hu(e)*Ll(e))}function gnn(t,e){return js(t.d.c+t.d.b/2,e.d.c+e.d.b/2)}function pnn(t,e){return js(t.g.c+t.g.b/2,e.g.c+e.g.b/2)}function _Xt(t,e,n){n.a?Su(t,e.b-t.f/2):Cu(t,e.a-t.g/2)}function CXt(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function SXt(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function t2(t,e,n,r){this.e=t,this.a=e,this.c=n,this.d=r}function AXt(t,e,n,r){this.a=t,this.c=e,this.d=n,this.b=r}function LXt(t,e,n,r){ah(),xJt.call(this,e,n,r),this.a=t}function MXt(t,e,n,r){ah(),xJt.call(this,e,n,r),this.a=t}function DXt(t,e){this.a=t,xQe.call(this,t,u(t.d,15).Zc(e))}function art(t){this.f=t,this.c=this.f.e,t.f>0&&Hse(this)}function IXt(t,e,n,r){this.b=t,this.c=r,Uet.call(this,e,n)}function OXt(t){return Zn(t.b=0&&un(t.substr(n,e.length),e)}function Hp(t,e,n,r,s,o,h){return new Mrt(t.e,e,n,r,s,o,h)}function XXt(t,e,n,r,s,o){this.a=t,rit.call(this,e,n,r,s,o)}function QXt(t,e,n,r,s,o){this.a=t,rit.call(this,e,n,r,s,o)}function ZXt(t,e){this.g=t,this.d=ut(ot(o0,1),Gg,10,0,[e])}function Dg(t,e){this.e=t,this.a=Qn,this.b=xue(e),this.c=e}function JXt(t,e){xj.call(this),Pmt(this),this.a=t,this.c=e}function eD(t,e,n,r){ls(t.c[e.g],n.g,r),ls(t.c[n.g],e.g,r)}function hrt(t,e,n,r){ls(t.c[e.g],e.g,n),ls(t.b[e.g],e.g,r)}function Bnn(){return lD(),ut(ot(R_t,1),oe,376,0,[wht,IO])}function Rnn(){return bD(),ut(ot(M9t,1),oe,479,0,[L9t,FV])}function jnn(){return TD(),ut(ot(S9t,1),oe,419,0,[NV,C9t])}function $nn(){return I$(),ut(ot(m9t,1),oe,422,0,[w9t,mlt])}function znn(){return x$(),ut(ot(H9t,1),oe,420,0,[Nlt,q9t])}function qnn(){return yD(),ut(ot(N_t,1),oe,421,0,[pht,bht])}function Hnn(){return B_(),ut(ot(gme,1),oe,523,0,[NS,OS])}function Vnn(){return Yf(),ut(ot(Rme,1),oe,520,0,[Uy,vb])}function Gnn(){return gd(),ut(ot(xme,1),oe,516,0,[Rw,Zg])}function Unn(){return C1(),ut(ot(Eme,1),oe,515,0,[z2,V1])}function Wnn(){return qv(),ut(ot(Gme,1),oe,455,0,[wb,n5])}function Knn(){return v$(),ut(ot(cCt,1),oe,425,0,[Oht,oCt])}function Ynn(){return d$(),ut(ot(aCt,1),oe,480,0,[Iht,sCt])}function Xnn(){return iz(),ut(ot(uCt,1),oe,495,0,[TG,xE])}function Qnn(){return N$(),ut(ot(hCt,1),oe,426,0,[lCt,Bht])}function Znn(){return ND(),ut(ot(gSt,1),oe,429,0,[OG,dSt])}function Jnn(){return hD(),ut(ot(UCt,1),oe,430,0,[Uht,DG])}function trn(){return Nz(),ut(ot(D7t,1),oe,428,0,[Out,M7t])}function ern(){return $$(),ut(ot(O7t,1),oe,427,0,[I7t,Nut])}function nrn(){return z$(),ut(ot(oEt,1),oe,424,0,[Gut,rV])}function rrn(){return $8(),ut(ot(Bbe,1),oe,511,0,[pO,ilt])}function c$(t,e,n,r){return n>=0?t.jh(e,n,r):t.Sg(null,n,r)}function frt(t){return t.b.b==0?t.a.$e():Tnt(t.b)}function irn(t){if(t.p!=5)throw nt(new Ru);return Mr(t.f)}function srn(t){if(t.p!=5)throw nt(new Ru);return Mr(t.k)}function Lwt(t){return Gt(t.a)===Gt((dit(),Aft))&&a3n(t),t.a}function tQt(t){this.a=u(Dr(t),271),this.b=(pn(),new k2t(t))}function eQt(t,e){cpt(this,new Re(t.a,t.b)),XB(this,UM(e))}function qv(){qv=X,wb=new Bbt(fx,0),n5=new Bbt(dx,1)}function gd(){gd=X,Rw=new Pbt(dx,0),Zg=new Pbt(fx,1)}function Hv(){pKe.call(this,new x6(Qm(12))),w2t(!0),this.a=2}function drt(t,e,n){yi(),vv.call(this,t),this.b=e,this.a=n}function Mwt(t,e,n){ah(),oR.call(this,e),this.a=t,this.b=n}function nQt(t){xj.call(this),Pmt(this),this.a=t,this.c=!0}function rQt(t){var e;e=t.c.d.b,t.b=e,t.a=t.c.d,e.a=t.c.d.b=t}function u$(t){var e;fon(t.a),gUt(t.a),e=new er(t.a),s3t(e)}function arn(t,e){fue(t,!0),_u(t.e.wf(),new dvt(t,!0,e))}function l$(t,e){return FZt(e),uon(t,Nt(Sr,Jr,25,e,15,1),e)}function orn(t,e){return R6(),t==hs(Zd(e))||t==hs(Zp(e))}function jc(t,e){return e==null?cc(Fo(t.f,null)):UT(t.g,e)}function crn(t){return t.b==0?null:(Zn(t.b!=0),fh(t,t.a.a))}function Cs(t){return Math.max(Math.min(t,Ti),-2147483648)|0}function urn(t,e){var n=Eut[t.charCodeAt(0)];return n??t}function h$(t,e){return r$(t,"set1"),r$(e,"set2"),new JHt(t,e)}function lrn(t,e){var n;return n=ion(t.f,e),Fi(mj(n),t.f.d)}function D_(t,e){var n,r;return n=e,r=new Ve,the(t,n,r),r.d}function grt(t,e,n,r){var s;s=new VWt,e.a[n.g]=s,O6(t.b,r,s)}function Dwt(t,e,n){var r;r=t.Yg(e),r>=0?t.sh(r,n):y5t(t,e,n)}function Z3(t,e,n){g$(),t&&Ai(_ft,t,e),t&&Ai(cN,t,n)}function iQt(t,e,n){this.i=new le,this.b=t,this.g=e,this.a=n}function f$(t,e,n){this.c=new le,this.e=t,this.f=e,this.b=n}function Iwt(t,e,n){this.a=new le,this.e=t,this.f=e,this.c=n}function sQt(t,e){uj(this),this.f=e,this.g=t,n$(this),this._d()}function nD(t,e){var n;n=t.q.getHours(),t.q.setDate(e),yC(t,n)}function aQt(t,e){var n;for(Dr(e),n=t.a;n;n=n.c)e.Od(n.g,n.i)}function oQt(t){var e;return e=new xR(Qm(t.length)),Eyt(e,t),e}function hrn(t){function e(){}return e.prototype=t||{},new e}function frn(t,e){return Fne(t,e)?(Nee(t),!0):!1}function I0(t,e){if(e==null)throw nt(new LT);return uhn(t,e)}function drn(t){if(t.qe())return null;var e=t.n;return $H[e]}function rD(t){return t.Db>>16!=3?null:u(t.Cb,33)}function _1(t){return t.Db>>16!=9?null:u(t.Cb,33)}function cQt(t){return t.Db>>16!=6?null:u(t.Cb,79)}function uQt(t){return t.Db>>16!=7?null:u(t.Cb,235)}function lQt(t){return t.Db>>16!=7?null:u(t.Cb,160)}function hs(t){return t.Db>>16!=11?null:u(t.Cb,33)}function hQt(t,e){var n;return n=t.Yg(e),n>=0?t.lh(n):Hst(t,e)}function fQt(t,e){var n;return n=new Bvt(e),dae(n,t),new qu(n)}function Owt(t){var e;return e=t.d,e=t.si(t.f),Or(t,e),e.Ob()}function dQt(t,e){return t.b+=e.b,t.c+=e.c,t.d+=e.d,t.a+=e.a,t}function prt(t,e){return b.Math.abs(t)0}function gQt(){this.a=new A0,this.e=new Qs,this.g=0,this.i=0}function pQt(t){this.a=t,this.b=Nt(hme,re,1944,t.e.length,0,2)}function brt(t,e,n){var r;r=nre(t,e,n),t.b=new rz(r.c.length)}function C1(){C1=X,z2=new Nbt(kot,0),V1=new Nbt("UP",1)}function d$(){d$=X,Iht=new Rbt(L1e,0),sCt=new Rbt("FAN",1)}function g$(){g$=X,_ft=new Ar,cN=new Ar,NYe(Sge,new X9)}function prn(t){if(t.p!=0)throw nt(new Ru);return a_(t.f,0)}function brn(t){if(t.p!=0)throw nt(new Ru);return a_(t.k,0)}function bQt(t){return t.Db>>16!=3?null:u(t.Cb,147)}function E8(t){return t.Db>>16!=6?null:u(t.Cb,235)}function Gm(t){return t.Db>>16!=17?null:u(t.Cb,26)}function vQt(t,e){var n=t.a=t.a||[];return n[e]||(n[e]=t.le(e))}function vrn(t,e){var n;return n=t.a.get(e),n??new Array}function wrn(t,e){var n;n=t.q.getHours(),t.q.setMonth(e),yC(t,n)}function Ao(t,e,n){return e==null?lu(t.f,null,n):nw(t.g,e,n)}function I_(t,e,n,r,s,o){return new F0(t.e,e,t.aj(),n,r,s,o)}function iD(t,e,n){return t.a=Bl(t.a,0,e)+(""+n)+OM(t.a,e),t}function mrn(t,e,n){return ue(t.a,(Qj(),dst(e,n),new Cv(e,n))),t}function Nwt(t){return y2t(t.c),t.e=t.a=t.c,t.c=t.c.c,++t.d,t.a.f}function wQt(t){return y2t(t.e),t.c=t.a=t.e,t.e=t.e.e,--t.d,t.a.f}function pa(t,e){t.d&&Eu(t.d.e,t),t.d=e,t.d&&ue(t.d.e,t)}function Ba(t,e){t.c&&Eu(t.c.g,t),t.c=e,t.c&&ue(t.c.g,t)}function Lo(t,e){t.c&&Eu(t.c.a,t),t.c=e,t.c&&ue(t.c.a,t)}function tc(t,e){t.i&&Eu(t.i.j,t),t.i=e,t.i&&ue(t.i.j,t)}function mQt(t,e,n){this.a=e,this.c=t,this.b=(Dr(n),new qu(n))}function yQt(t,e,n){this.a=e,this.c=t,this.b=(Dr(n),new qu(n))}function xQt(t,e){this.a=t,this.c=uc(this.a),this.b=new o$(e)}function yrn(t){var e;return p2(t),e=new Qs,Wi(t,new Ge(e))}function Um(t,e){if(t<0||t>e)throw nt(new Co(j6t+t+$6t+e))}function Pwt(t,e){return hYt(t.a,e)?swt(t,u(e,22).g,null):null}function xrn(t){return Oit(),Fn(),u(t.a,81).d.e!=0}function kQt(){kQt=X,fge=Qr((dR(),ut(ot(hge,1),oe,538,0,[xut])))}function EQt(){EQt=X,Zwe=el(new Zs,(Ya(),jo),(co(),bO))}function Fwt(){Fwt=X,Jwe=el(new Zs,(Ya(),jo),(co(),bO))}function TQt(){TQt=X,eme=el(new Zs,(Ya(),jo),(co(),bO))}function _Qt(){_Qt=X,bme=Ei(new Zs,(Ya(),jo),(co(),fS))}function Rl(){Rl=X,mme=Ei(new Zs,(Ya(),jo),(co(),fS))}function CQt(){CQt=X,yme=Ei(new Zs,(Ya(),jo),(co(),fS))}function vrt(){vrt=X,_me=Ei(new Zs,(Ya(),jo),(co(),fS))}function SQt(){SQt=X,hye=el(new Zs,(o7(),FS),(fC(),Eht))}function n2(t,e,n,r){this.c=t,this.d=r,mrt(this,e),yrt(this,n)}function $6(t){this.c=new cs,this.b=t.b,this.d=t.c,this.a=t.a}function wrt(t){this.a=b.Math.cos(t),this.b=b.Math.sin(t)}function mrt(t,e){t.a&&Eu(t.a.k,t),t.a=e,t.a&&ue(t.a.k,t)}function yrt(t,e){t.b&&Eu(t.b.f,t),t.b=e,t.b&&ue(t.b.f,t)}function AQt(t,e){Men(t,t.b,t.c),u(t.b.b,65),e&&u(e.b,65).b}function krn(t,e){Zyt(t,e),_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),2)}function xrt(t,e){_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),4),tu(t,e)}function p$(t,e){_t(t.Cb,179)&&(u(t.Cb,179).tb=null),tu(t,e)}function $c(t,e){return so(),Qrt(e)?new Dj(e,t):new IM(e,t)}function Ern(t,e){var n,r;n=e.c,r=n!=null,r&&F6(t,new Hm(e.c))}function LQt(t){var e,n;return n=(Zk(),e=new wv,e),O8(n,t),n}function MQt(t){var e,n;return n=(Zk(),e=new wv,e),O8(n,t),n}function DQt(t,e){var n;return n=new Lh(t),e.c[e.c.length]=n,n}function IQt(t,e){var n;return n=u(ny(j6(t.a),e),14),n?n.gc():0}function OQt(t){var e;return p2(t),e=(Q3(),Q3(),v7t),V$(t,e)}function NQt(t){for(var e;;)if(e=t.Pb(),!t.Ob())return e}function Bwt(t,e){dKe.call(this,new x6(Qm(t))),ql(e,Whe),this.a=e}function Kd(t,e,n){zre(e,n,t.gc()),this.c=t,this.a=e,this.b=n-e}function PQt(t,e,n){var r;zre(e,n,t.c.length),r=n-e,obt(t.c,e,r)}function Trn(t,e){IUt(t,Mr(Gs(Rp(e,24),Pq)),Mr(Gs(e,Pq)))}function Sn(t,e){if(t<0||t>=e)throw nt(new Co(j6t+t+$6t+e))}function $r(t,e){if(t<0||t>=e)throw nt(new Ypt(j6t+t+$6t+e))}function Tn(t,e){this.b=(In(t),t),this.a=e&yy?e:e|64|vd}function FQt(t){dUt(this),Wzt(this.a,xyt(b.Math.max(8,t))<<1)}function S1(t){return nc(ut(ot(na,1),re,8,0,[t.i.n,t.n,t.a]))}function _rn(){return N1(),ut(ot(wl,1),oe,132,0,[S7t,Yl,Ly])}function Crn(){return Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])}function Srn(){return rl(),ut(ot(Xge,1),oe,461,0,[Ad,lb,kf])}function Arn(){return Tu(),ut(ot(Zge,1),oe,462,0,[s1,hb,Ef])}function Lrn(){return ew(),ut(ot(_Et,1),oe,423,0,[z4,TEt,elt])}function Mrn(){return j_(),ut(ot(xEt,1),oe,379,0,[Yut,Kut,Xut])}function Drn(){return Y_(),ut(ot(T_t,1),oe,378,0,[uht,E_t,uG])}function Irn(){return K6(),ut(ot(x9t,1),oe,314,0,[Cx,wO,y9t])}function Orn(){return X$(),ut(ot(E9t,1),oe,337,0,[k9t,OV,ylt])}function Nrn(){return h2(),ut(ot(f2e,1),oe,450,0,[Elt,oE,G4])}function Prn(){return Jv(),ut(ot(llt,1),oe,361,0,[Aw,db,Sw])}function Frn(){return B0(),ut(ot(y2e,1),oe,303,0,[yO,W4,Sx])}function Brn(){return G8(),ut(ot(Olt,1),oe,292,0,[Dlt,Ilt,mO])}function Rrn(){return ho(),ut(ot(Gwe,1),oe,452,0,[MS,al,su])}function jrn(){return j0(),ut(ot(O_t,1),oe,339,0,[bb,I_t,ght])}function $rn(){return uz(),ut(ot(B_t,1),oe,375,0,[P_t,vht,F_t])}function zrn(){return gz(),ut(ot(V_t,1),oe,377,0,[xht,mE,Gy])}function qrn(){return Z8(),ut(ot($_t,1),oe,336,0,[mht,j_t,DS])}function Hrn(){return oz(),ut(ot(H_t,1),oe,338,0,[q_t,yht,z_t])}function Vrn(){return Zv(),ut(ot(ume,1),oe,454,0,[OO,IS,dG])}function Grn(){return _z(),ut(ot(bye,1),oe,442,0,[Fht,Nht,Pht])}function Urn(){return RD(),ut(ot(gCt,1),oe,380,0,[_G,fCt,dCt])}function Wrn(){return Tz(),ut(ot(ICt,1),oe,381,0,[DCt,qht,MCt])}function Krn(){return cz(),ut(ot(ACt,1),oe,293,0,[zht,SCt,CCt])}function Yrn(){return VD(),ut(ot(Hht,1),oe,437,0,[AG,LG,MG])}function Xrn(){return $0(),ut(ot(xAt,1),oe,334,0,[HG,np,YS])}function Qrn(){return D1(),ut(ot(uAt,1),oe,272,0,[TE,Yy,_E])}function Zrn(t,e){return mbn(t,e,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function Jrn(t,e,n){var r;return r=EC(t,e,!1),r.b<=e&&r.a<=n}function BQt(t,e,n){var r;r=new SQ,r.b=e,r.a=n,++e.b,ue(t.d,r)}function tin(t,e){var n;return n=(In(t),t).g,I2t(!!n),In(e),n(e)}function Rwt(t,e){var n,r;return r=p8(t,e),n=t.a.Zc(r),new ZHt(t,n)}function ein(t){return t.Db>>16!=6?null:u(Ust(t),235)}function nin(t){if(t.p!=2)throw nt(new Ru);return Mr(t.f)&Ms}function rin(t){if(t.p!=2)throw nt(new Ru);return Mr(t.k)&Ms}function iin(t){return t.a==(S8(),oU)&&Att(t,Pbn(t.g,t.b)),t.a}function z6(t){return t.d==(S8(),oU)&&ET(t,Awn(t.g,t.b)),t.d}function Q(t){return Zn(t.ar?1:0}function RQt(t,e){var n,r;return n=Urt(e),r=n,u(tr(t.c,r),19).a}function jQt(t,e){var n;for(n=t+"";n.length0&&t.a[--t.d]==0;);t.a[t.d++]==0&&(t.e=0)}function iZt(t){return t.a?t.e.length==0?t.a.a:t.a.a+(""+t.e):t.c}function pin(t){return!!t.a&&fl(t.a.a).i!=0&&!(t.b&&lst(t.b))}function bin(t){return!!t.u&&Oc(t.u.a).i!=0&&!(t.n&&ust(t.n))}function sZt(t){return Ant(t.e.Hd().gc()*t.c.Hd().gc(),16,new a6(t))}function vin(t,e){return PYt(Au(t.q.getTime()),Au(e.q.getTime()))}function pd(t){return u(P1(t,Nt(nlt,Rot,17,t.c.length,0,1)),474)}function sD(t){return u(P1(t,Nt(o0,Gg,10,t.c.length,0,1)),193)}function win(t){return Rl(),!Wa(t)&&!(!Wa(t)&&t.c.i.c==t.d.i.c)}function aZt(t,e,n){var r;r=(Dr(t),new qu(t)),Kfn(new mQt(r,e,n))}function aD(t,e,n){var r;r=(Dr(t),new qu(t)),Yfn(new yQt(r,e,n))}function oZt(t,e){var n;return n=1-e,t.a[n]=nz(t.a[n],n),nz(t,e)}function cZt(t,e){var n;t.e=new qpt,n=gy(e),aa(n,t.c),eue(t,n,0)}function ba(t,e,n,r){var s;s=new WF,s.a=e,s.b=n,s.c=r,ai(t.a,s)}function we(t,e,n,r){var s;s=new WF,s.a=e,s.b=n,s.c=r,ai(t.b,s)}function pf(t){var e,n,r;return e=new qYt,n=hat(e,t),r4n(e),r=n,r}function Vwt(){var t,e,n;return e=(n=(t=new wv,t),n),ue(aLt,e),e}function w$(t){return t.j.c=Nt(Qn,Me,1,0,5,1),xwt(t.c),Zen(t.a),t}function J3(t){return qT(),_t(t.g,10)?u(t.g,10):null}function min(t){return X3(t).dc()?!1:(wXe(t,new ct),!0)}function yin(t){if(!("stack"in t))try{throw t}catch{}return t}function oD(t,e){if(t<0||t>=e)throw nt(new Co(Ogn(t,e)));return t}function uZt(t,e,n){if(t<0||en)throw nt(new Co(ign(t,e,n)))}function _rt(t,e){if(Vs(t.a,e),e.d)throw nt(new Zo(pfe));e.d=t}function Crt(t,e){if(e.$modCount!=t.$modCount)throw nt(new sh)}function lZt(t,e){return _t(e,42)?pst(t.a,u(e,42)):!1}function hZt(t,e){return _t(e,42)?pst(t.a,u(e,42)):!1}function fZt(t,e){return _t(e,42)?pst(t.a,u(e,42)):!1}function xin(t,e){return t.a<=t.b?(e.ud(t.a++),!0):!1}function Gv(t){var e;return Vo(t)?(e=t,e==-0?0:e):Man(t)}function m$(t){var e;return qp(t),e=new Ae,R3(t.a,new gn(e)),e}function dZt(t){var e;return qp(t),e=new Wn,R3(t.a,new pe(e)),e}function xa(t,e){this.a=t,h6.call(this,t),Um(e,t.gc()),this.b=e}function Gwt(t){this.e=t,this.b=this.e.a.entries(),this.a=new Array}function kin(t){return Ant(t.e.Hd().gc()*t.c.Hd().gc(),273,new VB(t))}function y$(t){return new Jc((ql(t,jat),q$(Ra(Ra(5,t),t/10|0))))}function gZt(t){return u(P1(t,Nt(Nbe,Ufe,11,t.c.length,0,1)),1943)}function Ein(t,e,n){return n.f.c.length>0?cwt(t.a,e,n):cwt(t.b,e,n)}function Tin(t,e,n){t.d&&Eu(t.d.e,t),t.d=e,t.d&&$m(t.d.e,n,t)}function Srt(t,e){v5n(e,t),Svt(t.d),Svt(u(K(t,(xe(),nG)),207))}function N_(t,e){b5n(e,t),Cvt(t.d),Cvt(u(K(t,(xe(),nG)),207))}function Uv(t,e){var n,r;return n=I0(t,e),r=null,n&&(r=n.fe()),r}function T8(t,e){var n,r;return n=Xm(t,e),r=null,n&&(r=n.ie()),r}function P_(t,e){var n,r;return n=I0(t,e),r=null,n&&(r=n.ie()),r}function O0(t,e){var n,r;return n=I0(t,e),r=null,n&&(r=F4t(n)),r}function _in(t,e,n){var r;return r=s7(n),vq(t.g,r,e),vq(t.i,e,n),e}function Cin(t,e,n){var r;r=thn();try{return DQe(t,e,n)}finally{Bin(r)}}function pZt(t){var e;e=t.Wg(),this.a=_t(e,69)?u(e,69).Zh():e.Kc()}function Zs(){Lqt.call(this),this.j.c=Nt(Qn,Me,1,0,5,1),this.a=-1}function Uwt(t,e,n,r){this.d=t,this.n=e,this.g=n,this.o=r,this.p=-1}function bZt(t,e,n,r){this.e=r,this.d=null,this.c=t,this.a=e,this.b=n}function Wwt(t,e,n){this.d=new sR(this),this.e=t,this.i=e,this.f=n}function x$(){x$=X,Nlt=new Mbt(I7,0),q9t=new Mbt("TOP_LEFT",1)}function vZt(){vZt=X,U_t=fXt(de(1),de(4)),G_t=fXt(de(1),de(2))}function wZt(){wZt=X,a3e=Qr((DR(),ut(ot(s3e,1),oe,551,0,[Ght])))}function mZt(){mZt=X,i3e=Qr((MR(),ut(ot(GCt,1),oe,482,0,[Vht])))}function yZt(){yZt=X,T3e=Qr((HT(),ut(ot(fSt,1),oe,530,0,[jO])))}function xZt(){xZt=X,Mpe=Qr((AR(),ut(ot(tEt,1),oe,481,0,[$ut])))}function Sin(){return tw(),ut(ot(Epe,1),oe,406,0,[aO,sO,Rut,jut])}function Ain(){return P$(),ut(ot(KH,1),oe,297,0,[Mut,E7t,T7t,_7t])}function Lin(){return sC(),ut(ot(Ape,1),oe,394,0,[hO,JH,tV,fO])}function Min(){return ex(),ut(ot(_pe,1),oe,323,0,[cO,oO,uO,lO])}function Din(){return U8(),ut(ot(kbe,1),oe,405,0,[Cw,Iy,Dy,$4])}function Iin(){return dz(),ut(ot(zbe,1),oe,360,0,[clt,CV,SV,vO])}function kZt(t,e,n,r){return _t(n,54)?new cWt(t,e,n,r):new Qvt(t,e,n,r)}function Oin(){return O1(),ut(ot(Xbe,1),oe,411,0,[_x,nE,rE,ult])}function Nin(t){var e;return t.j==(be(),yr)&&(e=Voe(t),zu(e,Hn))}function Pin(t,e){var n;n=e.a,Ba(n,e.c.d),pa(n,e.d.d),Jm(n.a,t.n)}function EZt(t,e){return u(Ov(qj(u(Pi(t.k,e),15).Oc(),q4)),113)}function TZt(t,e){return u(Ov(Hj(u(Pi(t.k,e),15).Oc(),q4)),113)}function Fin(t){return new Tn(Oon(u(t.a.dd(),14).gc(),t.a.cd()),16)}function _8(t){return _t(t,14)?u(t,14).dc():!t.Kc().Ob()}function q6(t){return qT(),_t(t.g,145)?u(t.g,145):null}function _Zt(t){if(t.e.g!=t.b)throw nt(new sh);return!!t.c&&t.d>0}function ii(t){return Zn(t.b!=t.d.c),t.c=t.b,t.b=t.b.a,++t.a,t.c.c}function Kwt(t,e){In(e),ls(t.a,t.c,e),t.c=t.c+1&t.a.length-1,Cse(t)}function Vp(t,e){In(e),t.b=t.b-1&t.a.length-1,ls(t.a,t.b,e),Cse(t)}function CZt(t,e){var n;for(n=t.j.c.length;n0&&Pc(t.g,0,e,0,t.i),e}function MZt(t,e){NR();var n;return n=u(tr(nU,t),55),!n||n.wj(e)}function Yin(t){if(t.p!=1)throw nt(new Ru);return Mr(t.f)<<24>>24}function Xin(t){if(t.p!=1)throw nt(new Ru);return Mr(t.k)<<24>>24}function Qin(t){if(t.p!=7)throw nt(new Ru);return Mr(t.k)<<16>>16}function Zin(t){if(t.p!=7)throw nt(new Ru);return Mr(t.f)<<16>>16}function N0(t){var e;for(e=0;t.Ob();)t.Pb(),e=Ra(e,1);return q$(e)}function DZt(t,e){var n;return n=new Lm,t.xd(n),n.a+="..",e.yd(n),n.a}function Jin(t,e,n){var r;r=u(tr(t.g,n),57),ue(t.a.c,new ya(e,r))}function tsn(t,e,n){return Bnt(ve(cc(Fo(t.f,e))),ve(cc(Fo(t.f,n))))}function k$(t,e,n){return mq(t,e,n,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function esn(t,e,n){return x7(t,e,n,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function nsn(t,e,n){return _bn(t,e,n,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function Qwt(t,e){return t==(Gn(),qs)&&e==qs?4:t==qs||e==qs?8:32}function IZt(t,e){return Gt(e)===Gt(t)?"(this Map)":e==null?Mu:Wo(e)}function rsn(t,e){return u(e==null?cc(Fo(t.f,null)):UT(t.g,e),281)}function OZt(t,e,n){var r;return r=s7(n),Ai(t.b,r,e),Ai(t.c,e,n),e}function NZt(t,e){var n;for(n=e;n;)Fm(t,n.i,n.j),n=hs(n);return t}function Zwt(t,e){var n;return n=JM(h8(new Wrt(t,e))),Oj(new Wrt(t,e)),n}function Yd(t,e){so();var n;return n=u(t,66).Mj(),B0n(n,e),n.Ok(e)}function isn(t,e,n,r,s){var o;o=Mbn(s,n,r),ue(e,Agn(s,o)),m0n(t,s,e)}function PZt(t,e,n){t.i=0,t.e=0,e!=n&&(are(t,e,n),sre(t,e,n))}function Jwt(t,e){var n;n=t.q.getHours(),t.q.setFullYear(e+ib),yC(t,n)}function ssn(t,e,n){if(n){var r=n.ee();t.a[e]=r(n)}else delete t.a[e]}function Art(t,e,n){if(n){var r=n.ee();n=r(n)}else n=void 0;t.a[e]=n}function FZt(t){if(t<0)throw nt(new zqt("Negative array size: "+t))}function Oc(t){return t.n||(hl(t),t.n=new pYt(t,wo,t),Po(t)),t.n}function F_(t){return Zn(t.a=0&&t.a[n]===e[n];n--);return n<0}function zZt(t,e){Q8();var n;return n=t.j.g-e.j.g,n!=0?n:0}function qZt(t,e){return In(e),t.a!=null?Vtn(e.Kb(t.a)):WH}function E$(t){var e;return t?new Bvt(t):(e=new A0,fit(e,t),e)}function $l(t,e){var n;return e.b.Kb(Nte(t,e.c.Ee(),(n=new Dn(e),n)))}function T$(t){y4t(),IUt(this,Mr(Gs(Rp(t,24),Pq)),Mr(Gs(t,Pq)))}function HZt(){HZt=X,Vge=Qr((Nz(),ut(ot(D7t,1),oe,428,0,[Out,M7t])))}function VZt(){VZt=X,Gge=Qr(($$(),ut(ot(O7t,1),oe,427,0,[I7t,Nut])))}function GZt(){GZt=X,Wpe=Qr((z$(),ut(ot(oEt,1),oe,424,0,[Gut,rV])))}function UZt(){UZt=X,Rbe=Qr(($8(),ut(ot(Bbe,1),oe,511,0,[pO,ilt])))}function WZt(){WZt=X,h2e=Qr((TD(),ut(ot(S9t,1),oe,419,0,[NV,C9t])))}function KZt(){KZt=X,p2e=Qr((bD(),ut(ot(M9t,1),oe,479,0,[L9t,FV])))}function YZt(){YZt=X,Kwe=Qr((lD(),ut(ot(R_t,1),oe,376,0,[wht,IO])))}function XZt(){XZt=X,Vwe=Qr((yD(),ut(ot(N_t,1),oe,421,0,[pht,bht])))}function QZt(){QZt=X,o2e=Qr((I$(),ut(ot(m9t,1),oe,422,0,[w9t,mlt])))}function ZZt(){ZZt=X,k2e=Qr((x$(),ut(ot(H9t,1),oe,420,0,[Nlt,q9t])))}function JZt(){JZt=X,jme=Qr((Yf(),ut(ot(Rme,1),oe,520,0,[Uy,vb])))}function tJt(){tJt=X,pme=Qr((B_(),ut(ot(gme,1),oe,523,0,[NS,OS])))}function eJt(){eJt=X,kme=Qr((gd(),ut(ot(xme,1),oe,516,0,[Rw,Zg])))}function nJt(){nJt=X,Tme=Qr((C1(),ut(ot(Eme,1),oe,515,0,[z2,V1])))}function rJt(){rJt=X,Ume=Qr((qv(),ut(ot(Gme,1),oe,455,0,[wb,n5])))}function iJt(){iJt=X,lye=Qr((v$(),ut(ot(cCt,1),oe,425,0,[Oht,oCt])))}function sJt(){sJt=X,pye=Qr((iz(),ut(ot(uCt,1),oe,495,0,[TG,xE])))}function aJt(){aJt=X,uye=Qr((d$(),ut(ot(aCt,1),oe,480,0,[Iht,sCt])))}function oJt(){oJt=X,wye=Qr((N$(),ut(ot(hCt,1),oe,426,0,[lCt,Bht])))}function cJt(){cJt=X,_3e=Qr((ND(),ut(ot(gSt,1),oe,429,0,[OG,dSt])))}function uJt(){uJt=X,o3e=Qr((hD(),ut(ot(UCt,1),oe,430,0,[Uht,DG])))}function B_(){B_=X,NS=new Obt("UPPER",0),OS=new Obt("LOWER",1)}function usn(t,e){var n;n=new w6,e2(n,"x",e.a),e2(n,"y",e.b),F6(t,n)}function lsn(t,e){var n;n=new w6,e2(n,"x",e.a),e2(n,"y",e.b),F6(t,n)}function hsn(t,e){var n,r;r=!1;do n=Qne(t,e),r=r|n;while(n);return r}function nmt(t,e){var n,r;for(n=e,r=0;n>0;)r+=t.a[n],n-=n&-n;return r}function lJt(t,e){var n;for(n=e;n;)Fm(t,-n.i,-n.j),n=hs(n);return t}function _a(t,e){var n,r;for(In(e),r=t.Kc();r.Ob();)n=r.Pb(),e.td(n)}function hJt(t,e){var n;return n=e.cd(),new Cv(n,t.e.pc(n,u(e.dd(),14)))}function ks(t,e,n,r){var s;s=new Bt,s.c=e,s.b=n,s.a=r,r.b=n.a=s,++t.b}function lh(t,e,n){var r;return r=(Sn(e,t.c.length),t.c[e]),t.c[e]=n,r}function fsn(t,e,n){return u(e==null?lu(t.f,null,n):nw(t.g,e,n),281)}function Irt(t){return t.c&&t.d?jwt(t.c)+"->"+jwt(t.d):"e_"+Dv(t)}function C8(t,e){return(p2(t),jT(new kn(t,new Cmt(e,t.a)))).sd(Q7)}function dsn(){return Ya(),ut(ot(kEt,1),oe,356,0,[Ld,fb,fu,Gc,jo])}function gsn(){return be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])}function psn(t){return vR(),function(){return Cin(t,this,arguments)}}function bsn(){return Date.now?Date.now():new Date().getTime()}function Wa(t){return!t.c||!t.d?!1:!!t.c.i&&t.c.i==t.d.i}function fJt(t){if(!t.c.Sb())throw nt(new vc);return t.a=!0,t.c.Ub()}function cD(t){t.i=0,yM(t.b,null),yM(t.c,null),t.a=null,t.e=null,++t.g}function rmt(t){EYe.call(this,t==null?Mu:Wo(t),_t(t,78)?u(t,78):null)}function dJt(t){Rhe(),Bzt(this),this.a=new cs,Myt(this,t),ai(this.a,t)}function gJt(){Qet(this),this.b=new Re(bs,bs),this.a=new Re(Ns,Ns)}function pJt(t,e){this.c=0,this.b=e,HGt.call(this,t,17493),this.a=this.c}function Ort(t){_$(),!z1&&(this.c=t,this.e=!0,this.a=new le)}function _$(){_$=X,z1=!0,Nge=!1,Pge=!1,Bge=!1,Fge=!1}function imt(t,e){return _t(e,149)?un(t.c,u(e,149).c):!1}function smt(t,e){var n;return n=0,t&&(n+=t.f.a/2),e&&(n+=e.f.a/2),n}function Nrt(t,e){var n;return n=u(Wv(t.d,e),23),n||u(Wv(t.e,e),23)}function bJt(t){this.b=t,nr.call(this,t),this.a=u(Mn(this.b.a,4),126)}function vJt(t){this.b=t,L6.call(this,t),this.a=u(Mn(this.b.a,4),126)}function hl(t){return t.t||(t.t=new Szt(t),J_(new $qt(t),0,t.t)),t.t}function vsn(){return fo(),ut(ot(WS,1),oe,103,0,[c0,_f,Hh,Q0,Z0])}function wsn(){return u4(),ut(ot(QS,1),oe,249,0,[xb,JO,kAt,XS,EAt])}function msn(){return t1(),ut(ot(ep,1),oe,175,0,[qn,ua,Id,q2,tp])}function ysn(){return iI(),ut(ot(XCt,1),oe,316,0,[WCt,Wht,YCt,Kht,KCt])}function xsn(){return aC(),ut(ot(C_t,1),oe,315,0,[__t,fht,dht,AS,LS])}function ksn(){return m2(),ut(ot(_9t,1),oe,335,0,[xlt,T9t,klt,pS,gS])}function Esn(){return w7(),ut(ot(e3e,1),oe,355,0,[r5,Bx,qS,zS,HS])}function Tsn(){return p4(),ut(ot(Zbe,1),oe,363,0,[LV,DV,IV,MV,AV])}function _sn(){return ph(),ut(ot(nTt,1),oe,163,0,[_O,yS,gb,xS,Fy])}function S8(){S8=X;var t,e;aU=(Zk(),e=new lR,e),oU=(t=new Ktt,t)}function wJt(t){var e;return t.c||(e=t.r,_t(e,88)&&(t.c=u(e,26))),t.c}function Csn(t){return t.e=3,t.d=t.Yb(),t.e!=2?(t.e=0,!0):!1}function Prt(t){var e,n,r;return e=t&vl,n=t>>22&vl,r=t<0?W0:0,cu(e,n,r)}function Ssn(t){var e,n,r,s;for(n=t,r=0,s=n.length;r0?bie(t,e):Rce(t,-e)}function amt(t,e){return e==0||t.e==0?t:e>0?Rce(t,e):bie(t,-e)}function Ir(t){if(Vr(t))return t.c=t.a,t.a.Pb();throw nt(new vc)}function yJt(t){var e,n;return e=t.c.i,n=t.d.i,e.k==(Gn(),Is)&&n.k==Is}function Frt(t){var e;return e=new zv,Bo(e,t),ee(e,(xe(),Oo),null),e}function Brt(t,e,n){var r;return r=t.Yg(e),r>=0?t._g(r,n,!0):lw(t,e,n)}function omt(t,e,n,r){var s;for(s=0;se)throw nt(new Co(H4t(t,e,"index")));return t}function Rrt(t,e,n,r){var s;return s=Nt(Sr,Jr,25,e,15,1),$dn(s,t,e,n,r),s}function Lsn(t,e){var n;n=t.q.getHours()+(e/60|0),t.q.setMinutes(e),yC(t,n)}function Msn(t,e){return b.Math.min(Gp(e.a,t.d.d.c),Gp(e.b,t.d.d.c))}function G6(t,e){return ha(e)?e==null?a5t(t.f,null):One(t.g,e):a5t(t.f,e)}function M1(t){this.c=t,this.a=new S(this.c.a),this.b=new S(this.c.b)}function C$(){this.e=new le,this.c=new le,this.d=new le,this.b=new le}function _Jt(){this.g=new _pt,this.b=new _pt,this.a=new le,this.k=new le}function CJt(t,e,n){this.a=t,this.c=e,this.d=n,ue(e.e,this),ue(n.b,this)}function SJt(t,e){qGt.call(this,e.rd(),e.qd()&-6),In(t),this.a=t,this.b=e}function AJt(t,e){HGt.call(this,e.rd(),e.qd()&-6),In(t),this.a=t,this.b=e}function gmt(t,e){Uet.call(this,e.rd(),e.qd()&-6),In(t),this.a=t,this.b=e}function S$(t,e,n){this.a=t,this.b=e,this.c=n,ue(t.t,this),ue(e.i,this)}function A$(){this.b=new cs,this.a=new cs,this.b=new cs,this.a=new cs}function L$(){L$=X,VS=new ts("org.eclipse.elk.labels.labelManager")}function LJt(){LJt=X,d9t=new Hs("separateLayerConnections",(dz(),clt))}function Yf(){Yf=X,Uy=new Fbt("REGULAR",0),vb=new Fbt("CRITICAL",1)}function lD(){lD=X,wht=new Ibt("STACKED",0),IO=new Ibt("SEQUENCED",1)}function hD(){hD=X,Uht=new qbt("FIXED",0),DG=new qbt("CENTER_NODE",1)}function Dsn(t,e){var n;return n=P3n(t,e),t.b=new rz(n.c.length),Wyn(t,n)}function Isn(t,e,n){var r;return++t.e,--t.f,r=u(t.d[e].$c(n),133),r.dd()}function MJt(t){var e;return t.a||(e=t.r,_t(e,148)&&(t.a=u(e,148))),t.a}function pmt(t){if(t.a){if(t.e)return pmt(t.e)}else return t;return null}function Osn(t,e){return t.pe.p?-1:0}function M$(t,e){return In(e),t.c=0,"Initial capacity must not be negative")}function OJt(){OJt=X,Yge=Qr((Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])))}function NJt(){NJt=X,Qge=Qr((rl(),ut(ot(Xge,1),oe,461,0,[Ad,lb,kf])))}function PJt(){PJt=X,Jge=Qr((Tu(),ut(ot(Zge,1),oe,462,0,[s1,hb,Ef])))}function FJt(){FJt=X,Rge=Qr((N1(),ut(ot(wl,1),oe,132,0,[S7t,Yl,Ly])))}function BJt(){BJt=X,gbe=Qr((j_(),ut(ot(xEt,1),oe,379,0,[Yut,Kut,Xut])))}function RJt(){RJt=X,Lbe=Qr((ew(),ut(ot(_Et,1),oe,423,0,[z4,TEt,elt])))}function jJt(){jJt=X,c2e=Qr((K6(),ut(ot(x9t,1),oe,314,0,[Cx,wO,y9t])))}function $Jt(){$Jt=X,u2e=Qr((X$(),ut(ot(E9t,1),oe,337,0,[k9t,OV,ylt])))}function zJt(){zJt=X,d2e=Qr((h2(),ut(ot(f2e,1),oe,450,0,[Elt,oE,G4])))}function qJt(){qJt=X,i2e=Qr((Jv(),ut(ot(llt,1),oe,361,0,[Aw,db,Sw])))}function HJt(){HJt=X,x2e=Qr((B0(),ut(ot(y2e,1),oe,303,0,[yO,W4,Sx])))}function VJt(){VJt=X,m2e=Qr((G8(),ut(ot(Olt,1),oe,292,0,[Dlt,Ilt,mO])))}function GJt(){GJt=X,jwe=Qr((Y_(),ut(ot(T_t,1),oe,378,0,[uht,E_t,uG])))}function UJt(){UJt=X,Wwe=Qr((uz(),ut(ot(B_t,1),oe,375,0,[P_t,vht,F_t])))}function WJt(){WJt=X,Hwe=Qr((j0(),ut(ot(O_t,1),oe,339,0,[bb,I_t,ght])))}function KJt(){KJt=X,Uwe=Qr((ho(),ut(ot(Gwe,1),oe,452,0,[MS,al,su])))}function YJt(){YJt=X,Qwe=Qr((gz(),ut(ot(V_t,1),oe,377,0,[xht,mE,Gy])))}function XJt(){XJt=X,Ywe=Qr((Z8(),ut(ot($_t,1),oe,336,0,[mht,j_t,DS])))}function QJt(){QJt=X,Xwe=Qr((oz(),ut(ot(H_t,1),oe,338,0,[q_t,yht,z_t])))}function ZJt(){ZJt=X,lme=Qr((Zv(),ut(ot(ume,1),oe,454,0,[OO,IS,dG])))}function JJt(){JJt=X,vye=Qr((_z(),ut(ot(bye,1),oe,442,0,[Fht,Nht,Pht])))}function tte(){tte=X,mye=Qr((RD(),ut(ot(gCt,1),oe,380,0,[_G,fCt,dCt])))}function ete(){ete=X,Fye=Qr((Tz(),ut(ot(ICt,1),oe,381,0,[DCt,qht,MCt])))}function nte(){nte=X,Pye=Qr((cz(),ut(ot(ACt,1),oe,293,0,[zht,SCt,CCt])))}function rte(){rte=X,r3e=Qr((VD(),ut(ot(Hht,1),oe,437,0,[AG,LG,MG])))}function ite(){ite=X,a4e=Qr(($0(),ut(ot(xAt,1),oe,334,0,[HG,np,YS])))}function ste(){ste=X,n4e=Qr((D1(),ut(ot(uAt,1),oe,272,0,[TE,Yy,_E])))}function $sn(){return va(),ut(ot(TAt,1),oe,98,0,[kb,U1,SE,U2,h0,Kc])}function s2(t,e){return!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),Yit(t.o,e)}function zsn(t){return!t.g&&(t.g=new kk),!t.g.d&&(t.g.d=new Tzt(t)),t.g.d}function qsn(t){return!t.g&&(t.g=new kk),!t.g.a&&(t.g.a=new _zt(t)),t.g.a}function Hsn(t){return!t.g&&(t.g=new kk),!t.g.b&&(t.g.b=new Ezt(t)),t.g.b}function fD(t){return!t.g&&(t.g=new kk),!t.g.c&&(t.g.c=new Czt(t)),t.g.c}function Vsn(t,e,n){var r,s;for(s=new V8(e,t),r=0;rn||e=0?t._g(n,!0,!0):lw(t,e,!0)}function oan(t,e){return js(Zt(ve(K(t,(ae(),Iw)))),Zt(ve(K(e,Iw))))}function fte(){fte=X,fye=aw(aw(OR(new Zs,(o7(),PS)),(fC(),wG)),Tht)}function can(t,e,n){var r;return r=nre(t,e,n),t.b=new rz(r.c.length),D5t(t,r)}function uan(t){if(t.b<=0)throw nt(new vc);return--t.b,t.a-=t.c.c,de(t.a)}function lan(t){var e;if(!t.a)throw nt(new bXt);return e=t.a,t.a=hs(t.a),e}function han(t){for(;!t.a;)if(!tKt(t.c,new je(t)))return!1;return!0}function W6(t){var e;return Dr(t),_t(t,198)?(e=u(t,198),e):new ott(t)}function fan(t){O$(),u(t.We((di(),Ky)),174).Fc((il(),tN)),t.Ye(dft,null)}function O$(){O$=X,A3e=new yZ,M3e=new xZ,L3e=Xcn((di(),dft),A3e,mb,M3e)}function N$(){N$=X,lCt=new zbt("LEAF_NUMBER",0),Bht=new zbt("NODE_SIZE",1)}function dan(t,e,n){t.a=e,t.c=n,t.b.a.$b(),Mh(t.d),t.e.a.c=Nt(Qn,Me,1,0,5,1)}function Grt(t){t.a=Nt(Sr,Jr,25,t.b+1,15,1),t.c=Nt(Sr,Jr,25,t.b,15,1),t.d=0}function gan(t,e){t.a.ue(e.d,t.b)>0&&(ue(t.c,new Mvt(e.c,e.d,t.d)),t.b=e.d)}function _mt(t,e){if(t.g==null||e>=t.i)throw nt(new Wet(e,t.i));return t.g[e]}function dte(t,e,n){if(Y8(t,n),n!=null&&!t.wj(n))throw nt(new Gtt);return n}function gte(t){var e;if(t.Ek())for(e=t.i-1;e>=0;--e)At(t,e);return Xwt(t)}function pan(t){var e,n;if(!t.b)return null;for(n=t.b;e=n.a[0];)n=e;return n}function ban(t,e){var n,r;return FZt(e),n=(r=t.slice(0,e),Smt(r,t)),n.length=e,n}function M8(t,e,n,r){var s;r=(Q3(),r||b7t),s=t.slice(e,n),V4t(s,t,e,n,-e,r)}function hh(t,e,n,r,s){return e<0?lw(t,n,r):u(n,66).Nj().Pj(t,t.yh(),e,r,s)}function van(t){return _t(t,172)?""+u(t,172).a:t==null?null:Wo(t)}function wan(t){return _t(t,172)?""+u(t,172).a:t==null?null:Wo(t)}function pte(t,e){if(e.a)throw nt(new Zo(pfe));Vs(t.a,e),e.a=t,!t.j&&(t.j=e)}function Cmt(t,e){Uet.call(this,e.rd(),e.qd()&-16449),In(t),this.a=t,this.c=e}function bte(t,e){var n,r;return r=e/t.c.Hd().gc()|0,n=e%t.c.Hd().gc(),U6(t,r,n)}function rl(){rl=X,Ad=new met(fx,0),lb=new met(I7,1),kf=new met(dx,2)}function P$(){P$=X,Mut=new BR("All",0),E7t=new hUt,T7t=new EUt,_7t=new fUt}function vte(){vte=X,Ige=Qr((P$(),ut(ot(KH,1),oe,297,0,[Mut,E7t,T7t,_7t])))}function wte(){wte=X,Ebe=Qr((U8(),ut(ot(kbe,1),oe,405,0,[Cw,Iy,Dy,$4])))}function mte(){mte=X,Tpe=Qr((tw(),ut(ot(Epe,1),oe,406,0,[aO,sO,Rut,jut])))}function yte(){yte=X,Cpe=Qr((ex(),ut(ot(_pe,1),oe,323,0,[cO,oO,uO,lO])))}function xte(){xte=X,Lpe=Qr((sC(),ut(ot(Ape,1),oe,394,0,[hO,JH,tV,fO])))}function kte(){kte=X,Wme=Qr((o7(),ut(ot(Y_t,1),oe,393,0,[vG,PS,PO,FS])))}function Ete(){Ete=X,qbe=Qr((dz(),ut(ot(zbe,1),oe,360,0,[clt,CV,SV,vO])))}function Tte(){Tte=X,Nye=Qr((Vz(),ut(ot(_Ct,1),oe,340,0,[$ht,ECt,TCt,kCt])))}function _te(){_te=X,Qbe=Qr((O1(),ut(ot(Xbe,1),oe,411,0,[_x,nE,rE,ult])))}function Cte(){Cte=X,$we=Qr((sy(),ut(ot(hht,1),oe,197,0,[lG,lht,e5,t5])))}function Ste(){Ste=X,E4e=Qr((Ol(),ut(ot(k4e,1),oe,396,0,[th,IAt,DAt,OAt])))}function Ate(){Ate=X,c4e=Qr((Vl(),ut(ot(o4e,1),oe,285,0,[ZO,u0,yb,QO])))}function Lte(){Lte=X,r4e=Qr((q0(),ut(ot(vft,1),oe,218,0,[bft,XO,CE,qx])))}function Mte(){Mte=X,y4e=Qr((Az(),ut(ot(MAt,1),oe,311,0,[yft,SAt,LAt,AAt])))}function Dte(){Dte=X,w4e=Qr((Nl(),ut(ot(tA,1),oe,374,0,[nN,W2,eN,Xy])))}function Ite(){Ite=X,yq(),gLt=bs,_5e=Ns,pLt=new O3(bs),C5e=new O3(Ns)}function bD(){bD=X,L9t=new Lbt(K0,0),FV=new Lbt("IMPROVE_STRAIGHTNESS",1)}function man(t,e){return f8(),ue(t,new ya(e,de(e.e.c.length+e.g.c.length)))}function yan(t,e){return f8(),ue(t,new ya(e,de(e.e.c.length+e.g.c.length)))}function Smt(t,e){return xD(e)!=10&&ut(dl(e),e.hm,e.__elementTypeId$,xD(e),t),t}function Eu(t,e){var n;return n=Go(t,e,0),n==-1?!1:(Ig(t,n),!0)}function Ote(t,e){var n;return n=u(G6(t.e,e),387),n?(Ovt(n),n.e):null}function D8(t){var e;return Vo(t)&&(e=0-t,!isNaN(e))?e:Wp(W8(t))}function Go(t,e,n){for(;n=0?jz(t,n,!0,!0):lw(t,e,!0)}function Imt(t,e){qT();var n,r;return n=q6(t),r=q6(e),!!n&&!!r&&!Yie(n.k,r.k)}function Ean(t,e){Cu(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function Tan(t,e){Su(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function _an(t,e){Qv(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function Can(t,e){Xv(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function Rte(t){(this.q?this.q:(pn(),pn(),a0)).Ac(t.q?t.q:(pn(),pn(),a0))}function San(t,e){return _t(e,99)&&u(e,18).Bb&Qa?new Ket(e,t):new V8(e,t)}function Aan(t,e){return _t(e,99)&&u(e,18).Bb&Qa?new Ket(e,t):new V8(e,t)}function jte(t,e){Z7t=new ma,Spe=e,cS=t,u(cS.b,65),wmt(cS,Z7t,null),Ile(cS)}function Xrt(t,e,n){var r;return r=t.g[e],f_(t,e,t.oi(e,n)),t.gi(e,n,r),t.ci(),r}function j$(t,e){var n;return n=t.Xc(e),n>=0?(t.$c(n),!0):!1}function Qrt(t){var e;return t.d!=t.r&&(e=Oh(t),t.e=!!e&&e.Cj()==y0e,t.d=e),t.e}function Zrt(t,e){var n;for(Dr(t),Dr(e),n=!1;e.Ob();)n=n|t.Fc(e.Pb());return n}function Wv(t,e){var n;return n=u(tr(t.e,e),387),n?(DUt(t,n),n.e):null}function $te(t){var e,n;return e=t/60|0,n=t%60,n==0?""+e:""+e+":"+(""+n)}function ec(t,e){var n,r;return p2(t),r=new gmt(e,t.a),n=new rKt(r),new kn(t,n)}function Xm(t,e){var n=t.a[e],r=(vit(),_ut)[typeof n];return r?r(n):Fyt(typeof n)}function Lan(t){switch(t.g){case 0:return Ti;case 1:return-1;default:return 0}}function Man(t){return J3t(t,(I8(),Q8t))<0?-UXe(W8(t)):t.l+t.m*hx+t.h*E2}function xD(t){return t.__elementTypeCategory$==null?10:t.__elementTypeCategory$}function Jrt(t){var e;return e=t.b.c.length==0?null:Pe(t.b,0),e!=null&&uit(t,0),e}function zte(t,e){for(;e[0]=0;)++e[0]}function kD(t,e){this.e=e,this.a=Nne(t),this.a<54?this.f=Gv(t):this.c=KD(t)}function qte(t,e,n,r){yi(),vv.call(this,26),this.c=t,this.a=e,this.d=n,this.b=r}function Xd(t,e,n){var r,s;for(r=10,s=0;st.a[r]&&(r=n);return r}function Fan(t,e){var n;return n=rw(t.e.c,e.e.c),n==0?js(t.e.d,e.e.d):n}function t4(t,e){return e.e==0||t.e==0?Y7:(g7(),tat(t,e))}function Ban(t,e){if(!t)throw nt(new Pn($2n("Enum constant undefined: %s",e)))}function $_(){$_=X,Cbe=new wg,Sbe=new cv,Tbe=new JK,_be=new qb,Abe=new tY}function $$(){$$=X,I7t=new Ebt("BY_SIZE",0),Nut=new Ebt("BY_SIZE_AND_SHAPE",1)}function z$(){z$=X,Gut=new Tbt("EADES",0),rV=new Tbt("FRUCHTERMAN_REINGOLD",1)}function TD(){TD=X,NV=new Abt("READING_DIRECTION",0),C9t=new Abt("ROTATION",1)}function Vte(){Vte=X,l2e=Qr((m2(),ut(ot(_9t,1),oe,335,0,[xlt,T9t,klt,pS,gS])))}function Gte(){Gte=X,zwe=Qr((aC(),ut(ot(C_t,1),oe,315,0,[__t,fht,dht,AS,LS])))}function Ute(){Ute=X,Jbe=Qr((p4(),ut(ot(Zbe,1),oe,363,0,[LV,DV,IV,MV,AV])))}function Wte(){Wte=X,E2e=Qr((ph(),ut(ot(nTt,1),oe,163,0,[_O,yS,gb,xS,Fy])))}function Kte(){Kte=X,c3e=Qr((iI(),ut(ot(XCt,1),oe,316,0,[WCt,Wht,YCt,Kht,KCt])))}function Yte(){Yte=X,D3e=Qr((t1(),ut(ot(ep,1),oe,175,0,[qn,ua,Id,q2,tp])))}function Xte(){Xte=X,n3e=Qr((w7(),ut(ot(e3e,1),oe,355,0,[r5,Bx,qS,zS,HS])))}function Qte(){Qte=X,wbe=Qr((Ya(),ut(ot(kEt,1),oe,356,0,[Ld,fb,fu,Gc,jo])))}function Zte(){Zte=X,e4e=Qr((fo(),ut(ot(WS,1),oe,103,0,[c0,_f,Hh,Q0,Z0])))}function Jte(){Jte=X,l4e=Qr((u4(),ut(ot(QS,1),oe,249,0,[xb,JO,kAt,XS,EAt])))}function tee(){tee=X,d4e=Qr((be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])))}function tit(t,e){var n;return n=u(tr(t.a,e),134),n||(n=new x3,Ai(t.a,e,n)),n}function eee(t){var e;return e=u(K(t,(ae(),Lw)),305),e?e.a==t:!1}function nee(t){var e;return e=u(K(t,(ae(),Lw)),305),e?e.i==t:!1}function ree(t,e){return In(e),Jvt(t),t.d.Ob()?(e.td(t.d.Pb()),!0):!1}function q$(t){return _c(t,Ti)>0?Ti:_c(t,Oa)<0?Oa:Mr(t)}function Qm(t){return t<3?(ql(t,Qhe),t+1):t=0&&e=-.01&&t.a<=R1&&(t.a=0),t.b>=-.01&&t.b<=R1&&(t.b=0),t}function see(t,e){return e==(mnt(),mnt(),Lge)?t.toLocaleLowerCase():t.toLowerCase()}function Nmt(t){return(t.i&2?"interface ":t.i&1?"":"class ")+(L0(t),t.o)}function Do(t){var e,n;n=(e=new Ytt,e),Or((!t.q&&(t.q=new he(Yh,t,11,10)),t.q),n)}function Ran(t,e){var n;return n=e>0?e-1:e,eHt(ZKe(Mee(Ivt(new Wk,n),t.n),t.j),t.k)}function jan(t,e,n,r){var s;t.j=-1,r5t(t,B4t(t,e,n),(so(),s=u(e,66).Mj(),s.Ok(r)))}function aee(t){this.g=t,this.f=new le,this.a=b.Math.min(this.g.c.c,this.g.d.c)}function oee(t){this.b=new le,this.a=new le,this.c=new le,this.d=new le,this.e=t}function cee(t,e){this.a=new Ar,this.e=new Ar,this.b=(Y_(),uG),this.c=t,this.b=e}function uee(t,e,n){xj.call(this),Pmt(this),this.a=t,this.c=n,this.b=e.d,this.f=e.e}function lee(t){this.d=t,this.c=t.c.vc().Kc(),this.b=null,this.a=null,this.e=(dR(),xut)}function Kv(t){if(t<0)throw nt(new Pn("Illegal Capacity: "+t));this.g=this.ri(t)}function $an(t,e){if(0>t||t>e)throw nt(new Kpt("fromIndex: 0, toIndex: "+t+F6t+e))}function zan(t){var e;if(t.a==t.b.a)throw nt(new vc);return e=t.a,t.c=e,t.a=t.a.e,e}function H$(t){var e;Pm(!!t.c),e=t.c.a,fh(t.d,t.c),t.b==t.c?t.b=e:--t.a,t.c=null}function V$(t,e){var n;return p2(t),n=new IXt(t,t.a.rd(),t.a.qd()|4,e),new kn(t,n)}function qan(t,e){var n,r;return n=u(ny(t.d,e),14),n?(r=e,t.e.pc(r,n)):null}function G$(t,e){var n,r;for(r=t.Kc();r.Ob();)n=u(r.Pb(),70),ee(n,(ae(),Dx),e)}function Han(t){var e;return e=Zt(ve(K(t,(xe(),Xg)))),e<0&&(e=0,ee(t,Xg,e)),e}function Van(t,e,n){var r;r=b.Math.max(0,t.b/2-.5),cC(n,r,1),ue(e,new FVt(n,r))}function Gan(t,e,n){var r;return r=t.a.e[u(e.a,10).p]-t.a.e[u(n.a,10).p],Cs(KM(r))}function hee(t,e,n,r,s,o){var h;h=Frt(r),Ba(h,s),pa(h,o),cn(t.a,r,new Tj(h,e,n.f))}function fee(t,e){var n;if(n=gI(t.Tg(),e),!n)throw nt(new Pn(cb+e+Rct));return n}function Zm(t,e){var n;for(n=t;hs(n);)if(n=hs(n),n==e)return!0;return!1}function Uan(t,e){var n,r,s;for(r=e.a.cd(),n=u(e.a.dd(),14).gc(),s=0;s0&&(t.a/=e,t.b/=e),t}function zl(t){var e;return t.w?t.w:(e=ein(t),e&&!e.kh()&&(t.w=e),e)}function ton(t){var e;return t==null?null:(e=u(t,190),e0n(e,e.length))}function At(t,e){if(t.g==null||e>=t.i)throw nt(new Wet(e,t.i));return t.li(e,t.g[e])}function eon(t){var e,n;for(e=t.a.d.j,n=t.c.d.j;e!=n;)wf(t.b,e),e=kz(e);wf(t.b,e)}function non(t){var e;for(e=0;e=14&&e<=16))),t}function bee(t,e,n){var r=function(){return t.apply(r,arguments)};return e.apply(r,n),r}function vee(t,e,n){var r,s;r=e;do s=Zt(t.p[r.p])+n,t.p[r.p]=s,r=t.a[r.p];while(r!=e)}function O8(t,e){var n,r;r=t.a,n=Fun(t,e,null),r!=e&&!t.e&&(n=T7(t,e,n)),n&&n.Fi()}function Fmt(t,e){return E1(),vf(rb),b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)}function Bmt(t,e){return E1(),vf(rb),b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)}function son(t,e){return tb(),mu(t.b.c.length-t.e.c.length,e.b.c.length-e.e.c.length)}function e4(t,e){return rYe(H_(t,e,Mr(Ia(e0,Wd(Mr(Ia(e==null?0:Ji(e),n0)),15)))))}function wee(){wee=X,Obe=Qr((Gn(),ut(ot(rlt,1),oe,267,0,[qs,ca,Is,Uc,Pl,q1])))}function mee(){mee=X,$3e=Qr((cy(),ut(ot(ift,1),oe,291,0,[rft,GO,VO,nft,qO,HO])))}function yee(){yee=X,N3e=Qr((Qd(),ut(ot(mSt,1),oe,248,0,[tft,$O,zO,FG,NG,PG])))}function xee(){xee=X,a2e=Qr((rx(),ut(ot(aE,1),oe,227,0,[sE,dS,iE,Oy,V4,H4])))}function kee(){kee=X,v2e=Qr((f7(),ut(ot(z9t,1),oe,275,0,[bS,B9t,$9t,j9t,R9t,F9t])))}function Eee(){Eee=X,b2e=Qr((nI(),ut(ot(P9t,1),oe,274,0,[BV,I9t,N9t,D9t,O9t,Llt])))}function Tee(){Tee=X,Rwe=Qr((Zz(),ut(ot(k_t,1),oe,313,0,[cht,y_t,oht,m_t,x_t,cG])))}function _ee(){_ee=X,g2e=Qr((nq(),ut(ot(A9t,1),oe,276,0,[_lt,Tlt,Slt,Clt,Alt,PV])))}function Cee(){Cee=X,Yme=Qr((fC(),ut(ot(Kme,1),oe,327,0,[wG,Tht,Cht,_ht,Sht,Eht])))}function See(){See=X,f4e=Qr((il(),ut(ot(VG,1),oe,273,0,[Eb,tg,tN,JS,ZS,Hx])))}function Aee(){Aee=X,i4e=Qr((tq(),ut(ot(pAt,1),oe,312,0,[wft,fAt,gAt,lAt,dAt,hAt])))}function aon(){return fy(),ut(ot(vo,1),oe,93,0,[Cf,J0,Sf,Lf,l0,Gh,Ql,Af,Vh])}function W$(t,e){var n;n=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,0,n,t.a))}function K$(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,1,n,t.b))}function N8(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,3,n,t.b))}function Xv(t,e){var n;n=t.f,t.f=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,3,n,t.f))}function Qv(t,e){var n;n=t.g,t.g=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,4,n,t.g))}function Cu(t,e){var n;n=t.i,t.i=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,5,n,t.i))}function Su(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,6,n,t.j))}function P8(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,1,n,t.j))}function F8(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,4,n,t.c))}function B8(t,e){var n;n=t.k,t.k=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,2,n,t.k))}function nit(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Lrt(t,2,n,t.d))}function Pg(t,e){var n;n=t.s,t.s=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Lrt(t,4,n,t.s))}function ty(t,e){var n;n=t.t,t.t=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Lrt(t,5,n,t.t))}function R8(t,e){var n;n=t.F,t.F=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,5,n,e))}function _D(t,e){var n;return n=u(tr((NR(),nU),t),55),n?n.xj(e):Nt(Qn,Me,1,e,5,1)}function R0(t,e){var n,r;return n=e in t.a,n&&(r=I0(t,e).he(),r)?r.a:null}function oon(t,e){var n,r,s;return n=(r=(Tv(),s=new Y9,s),e&&_5t(r,e),r),Umt(n,t),n}function Lee(t,e,n){if(Y8(t,n),!t.Bk()&&n!=null&&!t.wj(n))throw nt(new Gtt);return n}function Mee(t,e){return t.n=e,t.n?(t.f=new le,t.e=new le):(t.f=null,t.e=null),t}function zr(t,e,n,r,s,o){var h;return h=Knt(t,e),Iee(n,h),h.i=s?8:0,h.f=r,h.e=s,h.g=o,h}function Rmt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=1,this.c=t,this.a=n}function jmt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=2,this.c=t,this.a=n}function $mt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=6,this.c=t,this.a=n}function zmt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=7,this.c=t,this.a=n}function qmt(t,e,n,r,s){this.d=e,this.j=r,this.e=s,this.o=-1,this.p=4,this.c=t,this.a=n}function Dee(t,e){var n,r,s,o;for(r=e,s=0,o=r.length;s=0),ohn(t.d,t.c)<0&&(t.a=t.a-1&t.d.a.length-1,t.b=t.d.c),t.c=-1}function Hmt(t){return t.a<54?t.f<0?-1:t.f>0?1:0:(!t.c&&(t.c=jD(t.f)),t.c).e}function vf(t){if(!(t>=0))throw nt(new Pn("tolerance ("+t+") must be >= 0"));return t}function j8(){return Zht||(Zht=new yue,a4(Zht,ut(ot(j4,1),Me,130,0,[new kp]))),Zht}function ho(){ho=X,MS=new Iet(OC,0),al=new Iet("INPUT",1),su=new Iet("OUTPUT",2)}function X$(){X$=X,k9t=new _et("ARD",0),OV=new _et("MSD",1),ylt=new _et("MANUAL",2)}function Zv(){Zv=X,OO=new Bet("BARYCENTER",0),IS=new Bet(i1e,1),dG=new Bet(s1e,2)}function CD(t,e){var n;if(n=t.gc(),e<0||e>n)throw nt(new jm(e,n));return new ovt(t,e)}function Pee(t,e){var n;return _t(e,42)?t.c.Mc(e):(n=Yit(t,e),Dz(t,e),n)}function ko(t,e,n){return g2(t,e),tu(t,n),Pg(t,0),ty(t,1),jg(t,!0),Rg(t,!0),t}function ql(t,e){if(t<0)throw nt(new Pn(e+" cannot be negative but was: "+t));return t}function Fee(t,e){var n,r;for(n=0,r=t.gc();n0?u(Pe(n.a,r-1),10):null}function q_(t,e){var n;n=t.k,t.k=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,2,n,t.k))}function Z$(t,e){var n;n=t.f,t.f=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,8,n,t.f))}function J$(t,e){var n;n=t.i,t.i=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,7,n,t.i))}function Umt(t,e){var n;n=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,8,n,t.a))}function Wmt(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,0,n,t.b))}function Kmt(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,0,n,t.b))}function Ymt(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,1,n,t.c))}function Xmt(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,1,n,t.c))}function iit(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,4,n,t.c))}function Qmt(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,1,n,t.d))}function sit(t,e){var n;n=t.D,t.D=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,2,n,t.D))}function ait(t,e){t.r>0&&t.c0&&t.g!=0&&ait(t.i,e/t.r*t.i.d))}function bon(t,e,n){var r;t.b=e,t.a=n,r=(t.a&512)==512?new _qt:new GL,t.c=Ivn(r,t.b,t.a)}function Gee(t,e){return G0(t.e,e)?(so(),Qrt(e)?new Dj(e,t):new IM(e,t)):new BGt(e,t)}function tz(t,e){return nYe(V_(t.a,e,Mr(Ia(e0,Wd(Mr(Ia(e==null?0:Ji(e),n0)),15)))))}function von(t,e,n){return Ym(t,new fe(e),new Nn,new ge(n),ut(ot(wl,1),oe,132,0,[]))}function won(t){var e,n;return 0>t?new ubt:(e=t+1,n=new pJt(e,t),new q2t(null,n))}function mon(t,e){pn();var n;return n=new x6(1),ha(t)?Ao(n,t,e):lu(n.f,t,e),new z(n)}function yon(t,e){var n,r;return n=t.o+t.p,r=e.o+e.p,ne?(e<<=1,e>0?e:AC):e}function oit(t){switch(m2t(t.e!=3),t.e){case 2:return!1;case 0:return!0}return Csn(t)}function Wee(t,e){var n;return _t(e,8)?(n=u(e,8),t.a==n.a&&t.b==n.b):!1}function cit(t,e,n){var r,s,o;return o=e>>5,s=e&31,r=Gs(zm(t.n[n][o],Mr(M0(s,1))),3),r}function kon(t,e){var n,r;for(r=e.vc().Kc();r.Ob();)n=u(r.Pb(),42),Yz(t,n.cd(),n.dd())}function Eon(t,e){var n;n=new ma,u(e.b,65),u(e.b,65),u(e.b,65),_u(e.a,new wvt(t,n,e))}function Zmt(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,21,n,t.b))}function Jmt(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,11,n,t.d))}function ez(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,13,n,t.j))}function Kee(t,e,n){var r,s,o;for(o=t.a.length-1,s=t.b,r=0;r>>31;r!=0&&(t[n]=r)}function Oon(t,e){pn();var n,r;for(r=new le,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),t.Qc(this.g))}function ps(t,e){Sj.call(this,i5e,t,e),this.b=this,this.a=hu(t.Tg(),wn(this.e.Tg(),this.c))}function G_(t,e){var n,r;for(In(e),r=e.vc().Kc();r.Ob();)n=u(r.Pb(),42),t.zc(n.cd(),n.dd())}function Hon(t,e,n){var r;for(r=n.Kc();r.Ob();)if(!k$(t,e,r.Pb()))return!1;return!0}function Von(t,e,n,r,s){var o;return n&&(o=es(e.Tg(),t.c),s=n.gh(e,-1-(o==-1?r:o),null,s)),s}function Gon(t,e,n,r,s){var o;return n&&(o=es(e.Tg(),t.c),s=n.ih(e,-1-(o==-1?r:o),null,s)),s}function dne(t){var e;if(t.b==-2){if(t.e==0)e=-1;else for(e=0;t.a[e]==0;e++);t.b=e}return t.b}function gne(t){switch(t.g){case 2:return be(),Bn;case 4:return be(),Hn;default:return t}}function pne(t){switch(t.g){case 1:return be(),yr;case 3:return be(),On;default:return t}}function Uon(t){var e,n,r;return t.j==(be(),On)&&(e=Voe(t),n=zu(e,Hn),r=zu(e,Bn),r||r&&n)}function Won(t){var e,n;return e=u(t.e&&t.e(),9),n=u(lwt(e,e.length),9),new oh(e,n,e.length)}function Kon(t,e){mr(e,r1e,1),s3t(gYe(new er((zT(),new nrt(t,!1,!1,new YP))))),or(e)}function SD(t,e){return Fn(),ha(t)?fmt(t,jr(e)):Nm(t)?Bnt(t,ve(e)):Om(t)?Ztn(t,Fe(e)):t.wd(e)}function syt(t,e){e.q=t,t.d=b.Math.max(t.d,e.r),t.b+=e.d+(t.a.c.length==0?0:t.c),ue(t.a,e)}function z8(t,e){var n,r,s,o;return s=t.c,n=t.c+t.b,o=t.d,r=t.d+t.a,e.a>s&&e.ao&&e.b1||t.Ob())return++t.a,t.g=0,e=t.i,t.Ob(),e;throw nt(new vc)}function acn(t){bUt();var e;return CVt(kht,t)||(e=new LQ,e.a=t,Y2t(kht,t,e)),u(xo(kht,t),635)}function Dh(t){var e,n,r,s;return s=t,r=0,s<0&&(s+=E2,r=W0),n=Cs(s/hx),e=Cs(s-n*hx),cu(e,n,r)}function AD(t){var e,n,r;for(r=0,n=new k6(t.a);n.a>22),s=t.h+e.h+(r>>22),cu(n&vl,r&vl,s&W0)}function Pne(t,e){var n,r,s;return n=t.l-e.l,r=t.m-e.m+(n>>22),s=t.h-e.h+(r>>22),cu(n&vl,r&vl,s&W0)}function ID(t){var e;return t<128?(e=(XKt(),e7t)[t],!e&&(e=e7t[t]=new tR(t)),e):new tR(t)}function rs(t){var e;return _t(t,78)?t:(e=t&&t.__java$exception,e||(e=new Tre(t),zzt(e)),e)}function OD(t){if(_t(t,186))return u(t,118);if(t)return null;throw nt(new m6(Mde))}function Fne(t,e){if(e==null)return!1;for(;t.a!=t.b;)if(Si(e,mz(t)))return!0;return!1}function hyt(t){return t.a.Ob()?!0:t.a!=t.d?!1:(t.a=new Gwt(t.e.f),t.a.Ob())}function Rs(t,e){var n,r;return n=e.Pc(),r=n.length,r==0?!1:(Tvt(t.c,t.c.length,n),!0)}function xcn(t,e,n){var r,s;for(s=e.vc().Kc();s.Ob();)r=u(s.Pb(),42),t.yc(r.cd(),r.dd(),n);return t}function Bne(t,e){var n,r;for(r=new S(t.b);r.a=0,"Negative initial capacity"),Cj(e>=0,"Non-positive load factor"),nl(this)}function wit(t,e,n){return t>=128?!1:t<64?a_(Gs(M0(1,t),n),0):a_(Gs(M0(1,t-64),e),0)}function Mcn(t,e){return!t||!e||t==e?!1:rw(t.b.c,e.b.c+e.b.b)<0&&rw(e.b.c,t.b.c+t.b.b)<0}function Yne(t){var e,n,r;return n=t.n,r=t.o,e=t.d,new ch(n.a-e.b,n.b-e.d,r.a+(e.b+e.c),r.b+(e.d+e.a))}function Dcn(t){var e,n,r,s;for(n=t.a,r=0,s=n.length;rr)throw nt(new jm(e,r));return t.hi()&&(n=fQt(t,n)),t.Vh(e,n)}function FD(t,e,n){return n==null?(!t.q&&(t.q=new Ar),G6(t.q,e)):(!t.q&&(t.q=new Ar),Ai(t.q,e,n)),t}function ee(t,e,n){return n==null?(!t.q&&(t.q=new Ar),G6(t.q,e)):(!t.q&&(t.q=new Ar),Ai(t.q,e,n)),t}function Xne(t){var e,n;return n=new C$,Bo(n,t),ee(n,(Up(),Tx),t),e=new Ar,Pmn(t,n,e),o4n(t,n,e),n}function Ncn(t){x4();var e,n,r;for(n=Nt(na,re,8,2,0,1),r=0,e=0;e<2;e++)r+=.5,n[e]=pfn(r,t);return n}function Qne(t,e){var n,r,s,o;for(n=!1,r=t.a[e].length,o=0;o>=1);return e}function Jne(t){var e,n;return n=lI(t.h),n==32?(e=lI(t.m),e==32?lI(t.l)+32:e+20-10):n-12}function K_(t){var e;return e=t.a[t.b],e==null?null:(ls(t.a,t.b,null),t.b=t.b+1&t.a.length-1,e)}function tre(t){var e,n;return e=t.t-t.k[t.o.p]*t.d+t.j[t.o.p]>t.f,n=t.u+t.e[t.o.p]*t.d>t.f*t.s*t.d,e||n}function pz(t,e,n){var r,s;return r=new qrt(e,n),s=new Ve,t.b=Gce(t,t.b,r,s),s.b||++t.c,t.b.b=!1,s.d}function ere(t,e,n){var r,s,o,h;for(h=Q_(e,n),o=0,s=h.Kc();s.Ob();)r=u(s.Pb(),11),Ai(t.c,r,de(o++))}function Kp(t){var e,n;for(n=new S(t.a.b);n.an&&(n=t[e]);return n}function nre(t,e,n){var r;return r=new le,A5t(t,e,r,(be(),Hn),!0,!1),A5t(t,n,r,Bn,!1,!1),r}function yit(t,e,n){var r,s,o,h;return o=null,h=e,s=Uv(h,"labels"),r=new kGt(t,n),o=(Jpn(r.a,r.b,s),s),o}function Fcn(t,e,n,r){var s;return s=p5t(t,e,n,r),!s&&(s=Bun(t,n,r),s&&!T4(t,e,s))?null:s}function Bcn(t,e,n,r){var s;return s=b5t(t,e,n,r),!s&&(s=Bit(t,n,r),s&&!T4(t,e,s))?null:s}function rre(t,e){var n;for(n=0;n1||e>=0&&t.b<3)}function BD(t){var e,n,r;for(e=new ju,r=si(t,0);r.b!=r.d.c;)n=u(ii(r),8),u8(e,0,new So(n));return e}function f2(t){var e,n;for(n=new S(t.a.b);n.ar?1:0}function Myt(t,e){return Sce(t,e)?(cn(t.b,u(K(e,(ae(),Ny)),21),e),ai(t.a,e),!0):!1}function Ycn(t){var e,n;e=u(K(t,(ae(),sl)),10),e&&(n=e.c,Eu(n.a,e),n.a.c.length==0&&Eu($a(e).b,n))}function ure(t){return z1?Nt(Oge,hfe,572,0,0,1):u(P1(t.a,Nt(Oge,hfe,572,t.a.c.length,0,1)),842)}function Xcn(t,e,n,r){return Qj(),new tet(ut(ot(I2,1),Iq,42,0,[(dst(t,e),new Cv(t,e)),(dst(n,r),new Cv(n,r))]))}function s4(t,e,n){var r,s;return s=(r=new Ytt,r),ko(s,e,n),Or((!t.q&&(t.q=new he(Yh,t,11,10)),t.q),s),s}function Tit(t){var e,n,r,s;for(s=kYe(O4e,t),n=s.length,r=Nt(Le,re,2,n,6,1),e=0;e=t.b.c.length||(Dyt(t,2*e+1),n=2*e+2,n=0&&t[r]===e[r];r--);return r<0?0:bet(Gs(t[r],po),Gs(e[r],po))?-1:1}function Qcn(t,e){var n,r;for(r=si(t,0);r.b!=r.d.c;)n=u(ii(r),214),n.e.length>0&&(e.td(n),n.i&&Gun(n))}function Cit(t,e){var n,r;return r=u(Mn(t.a,4),126),n=Nt(Cft,eut,415,e,0,1),r!=null&&Pc(r,0,n,0,r.length),n}function hre(t,e){var n;return n=new rat((t.f&256)!=0,t.i,t.a,t.d,(t.f&16)!=0,t.j,t.g,e),t.e!=null||(n.c=t),n}function Zcn(t,e){var n,r;for(r=t.Zb().Cc().Kc();r.Ob();)if(n=u(r.Pb(),14),n.Hc(e))return!0;return!1}function Sit(t,e,n,r,s){var o,h;for(h=n;h<=s;h++)for(o=e;o<=r;o++)if(h4(t,o,h))return!0;return!1}function fre(t,e,n){var r,s,o,h;for(In(n),h=!1,o=t.Zc(e),s=n.Kc();s.Ob();)r=s.Pb(),o.Rb(r),h=!0;return h}function Jcn(t,e){var n;return t===e?!0:_t(e,83)?(n=u(e,83),O4t(Pv(t),n.vc())):!1}function dre(t,e,n){var r,s;for(s=n.Kc();s.Ob();)if(r=u(s.Pb(),42),t.re(e,r.dd()))return!0;return!1}function gre(t,e,n){return t.d[e.p][n.p]||(Yhn(t,e,n),t.d[e.p][n.p]=!0,t.d[n.p][e.p]=!0),t.a[e.p][n.p]}function Y8(t,e){if(!t.ai()&&e==null)throw nt(new Pn("The 'no null' constraint is violated"));return e}function X8(t,e){t.D==null&&t.B!=null&&(t.D=t.B,t.B=null),sit(t,e==null?null:(In(e),e)),t.C&&t.yk(null)}function tun(t,e){var n;return!t||t==e||!ea(e,(ae(),Dw))?!1:(n=u(K(e,(ae(),Dw)),10),n!=t)}function Ait(t){switch(t.i){case 2:return!0;case 1:return!1;case-1:++t.c;default:return t.pl()}}function pre(t){switch(t.i){case-2:return!0;case-1:return!1;case 1:--t.c;default:return t.ql()}}function bre(t){sQt.call(this,"The given string does not match the expected format for individual spacings.",t)}function Ol(){Ol=X,th=new ZR("ELK",0),IAt=new ZR("JSON",1),DAt=new ZR("DOT",2),OAt=new ZR("SVG",3)}function RD(){RD=X,_G=new jet(K0,0),fCt=new jet("RADIAL_COMPACTION",1),dCt=new jet("WEDGE_COMPACTION",2)}function N1(){N1=X,S7t=new vet("CONCURRENT",0),Yl=new vet("IDENTITY_FINISH",1),Ly=new vet("UNORDERED",2)}function Lit(){Lit=X,nEt=(AR(),$ut),eEt=new vn(Q6t,nEt),Dpe=new ts(Z6t),Ipe=new ts(J6t),Ope=new ts(txt)}function Q8(){Q8=X,p9t=new G5,b9t=new HY,Gbe=new AL,Vbe=new VY,Hbe=new GY,g9t=(In(Hbe),new qe)}function Z8(){Z8=X,mht=new Net("CONSERVATIVE",0),j_t=new Net("CONSERVATIVE_SOFT",1),DS=new Net("SLOPPY",2)}function bz(){bz=X,yAt=new Mv(15),s4e=new ao((di(),V2),yAt),KS=$x,bAt=q3e,vAt=H2,mAt=o5,wAt=jG}function Mit(t,e,n){var r,s,o;for(r=new cs,o=si(n,0);o.b!=o.d.c;)s=u(ii(o),8),ai(r,new So(s));fre(t,e,r)}function eun(t){var e,n,r;for(e=0,r=Nt(na,re,8,t.b,0,1),n=si(t,0);n.b!=n.d.c;)r[e++]=u(ii(n),8);return r}function Oyt(t){var e;return e=(!t.a&&(t.a=new he(eg,t,9,5)),t.a),e.i!=0?mYe(u(At(e,0),678)):null}function nun(t,e){var n;return n=Ra(t,e),bet(krt(t,e),0)|PYe(krt(t,n),0)?n:Ra(Dq,krt(zm(n,63),1))}function run(t,e){var n;n=Ie((Wit(),oG))!=null&&e.wg()!=null?Zt(ve(e.wg()))/Zt(ve(Ie(oG))):1,Ai(t.b,e,n)}function iun(t,e){var n,r;return n=u(t.d.Bc(e),14),n?(r=t.e.hc(),r.Gc(n),t.e.d-=n.gc(),n.$b(),r):null}function Nyt(t,e){var n,r;if(r=t.c[e],r!=0)for(t.c[e]=0,t.d-=r,n=e+1;n0)return g8(e-1,t.a.c.length),Ig(t.a,e-1);throw nt(new Hzt)}function sun(t,e,n){if(e<0)throw nt(new Co($1e+e));ee)throw nt(new Pn(Fq+t+ffe+e));if(t<0||e>n)throw nt(new Kpt(Fq+t+R6t+e+F6t+n))}function mre(t){if(!t.a||!(t.a.i&8))throw nt(new Ho("Enumeration class expected for layout option "+t.f))}function ey(t){var e;++t.j,t.i==0?t.g=null:t.ihH?t-n>hH:n-t>hH}function Iit(t,e){return!t||e&&!t.j||_t(t,124)&&u(t,124).a.b==0?0:t.Re()}function wz(t,e){return!t||e&&!t.k||_t(t,124)&&u(t,124).a.a==0?0:t.Se()}function jD(t){return eb(),t<0?t!=-1?new L3t(-1,-t):Aut:t<=10?p7t[Cs(t)]:new L3t(1,t)}function Fyt(t){throw vit(),nt(new Fqt("Unexpected typeof result '"+t+"'; please report this bug to the GWT team"))}function Tre(t){qqt(),uj(this),n$(this),this.e=t,Bce(this,t),this.g=t==null?Mu:Wo(t),this.a="",this.b=t,this.a=""}function Byt(){this.a=new uZ,this.f=new D$t(this),this.b=new I$t(this),this.i=new O$t(this),this.e=new N$t(this)}function _re(){gKe.call(this,new ymt(Qm(16))),ql(2,Whe),this.b=2,this.a=new mwt(null,null,0,null),cM(this.a,this.a)}function Y_(){Y_=X,uht=new Met("DUMMY_NODE_OVER",0),E_t=new Met("DUMMY_NODE_UNDER",1),uG=new Met("EQUAL",2)}function Oit(){Oit=X,Zut=oQt(ut(ot(WS,1),oe,103,0,[(fo(),Hh),_f])),Jut=oQt(ut(ot(WS,1),oe,103,0,[Z0,Q0]))}function Nit(t){return(be(),Iu).Hc(t.j)?Zt(ve(K(t,(ae(),fE)))):nc(ut(ot(na,1),re,8,0,[t.i.n,t.n,t.a])).b}function lun(t){var e,n,r,s;for(r=t.b.a,n=r.a.ec().Kc();n.Ob();)e=u(n.Pb(),561),s=new vce(e,t.e,t.f),ue(t.g,s)}function g2(t,e){var n,r,s;r=t.nk(e,null),s=null,e&&(s=(Zk(),n=new wv,n),O8(s,t.r)),r=F1(t,s,r),r&&r.Fi()}function hun(t,e){var n,r;for(r=pl(t.d,1)!=0,n=!0;n;)n=!1,n=e.c.Tf(e.e,r),n=n|pI(t,e,r,!1),r=!r;eyt(t)}function Ryt(t,e){var n,r,s;return r=!1,n=e.q.d,e.ds&&(Qse(e.q,s),r=n!=e.q.d)),r}function Cre(t,e){var n,r,s,o,h,d,w,k;return w=e.i,k=e.j,r=t.f,s=r.i,o=r.j,h=w-s,d=k-o,n=b.Math.sqrt(h*h+d*d),n}function jyt(t,e){var n,r;return r=Iz(t),r||(n=(Cat(),Zae(e)),r=new Nzt(n),Or(r.Vk(),t)),r}function $D(t,e){var n,r;return n=u(t.c.Bc(e),14),n?(r=t.hc(),r.Gc(n),t.d-=n.gc(),n.$b(),t.mc(r)):t.jc()}function Sre(t,e){var n;for(n=0;n=t.c.b:t.a<=t.c.b))throw nt(new vc);return e=t.a,t.a+=t.c.c,++t.b,de(e)}function gun(t){var e;return e=new aee(t),aD(t.a,Abe,new Cl(ut(ot(gO,1),Me,369,0,[e]))),e.d&&ue(e.f,e.d),e.f}function Pit(t){var e;return e=new a2t(t.a),Bo(e,t),ee(e,(ae(),Ii),t),e.o.a=t.g,e.o.b=t.f,e.n.a=t.i,e.n.b=t.j,e}function pun(t,e,n,r){var s,o;for(o=t.Kc();o.Ob();)s=u(o.Pb(),70),s.n.a=e.a+(r.a-s.o.a)/2,s.n.b=e.b,e.b+=s.o.b+n}function bun(t,e,n){var r,s;for(s=e.a.a.ec().Kc();s.Ob();)if(r=u(s.Pb(),57),$Xt(t,r,n))return!0;return!1}function vun(t){var e,n;for(n=new S(t.r);n.a=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(s*=n,r-=1);return e<0?1/s:s}function xun(t,e){var n,r,s;for(s=1,n=t,r=e>=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(s*=n,r-=1);return e<0?1/s:s}function Nre(t){var e,n;if(t!=null)for(n=0;n0&&(n=u(Pe(t.a,t.a.c.length-1),570),Myt(n,e))||ue(t.a,new dJt(e))}function Cun(t){df();var e,n;e=t.d.c-t.e.c,n=u(t.g,145),_u(n.b,new _T(e)),_u(n.c,new Ub(e)),_a(n.i,new nR(e))}function Rre(t){var e;return e=new Ap,e.a+="VerticalSegment ",wc(e,t.e),e.a+=" ",Yr(e,b2t(new cet,new S(t.k))),e.a}function Sun(t){var e;return e=u(Wv(t.c.c,""),229),e||(e=new $6(Qk(Xk(new wm,""),"Other")),v2(t.c.c,"",e)),e}function X_(t){var e;return t.Db&64?mf(t):(e=new Ah(mf(t)),e.a+=" (name: ",yo(e,t.zb),e.a+=")",e.a)}function Vyt(t,e,n){var r,s;return s=t.sb,t.sb=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,4,s,e),n?n.Ei(r):n=r),n}function Fit(t,e){var n,r,s;for(n=0,s=rc(t,e).Kc();s.Ob();)r=u(s.Pb(),11),n+=K(r,(ae(),sl))!=null?1:0;return n}function o4(t,e,n){var r,s,o;for(r=0,o=si(t,0);o.b!=o.d.c&&(s=Zt(ve(ii(o))),!(s>n));)s>=e&&++r;return r}function Aun(t,e,n){var r,s;return r=new F0(t.e,3,13,null,(s=e.c,s||(ln(),K1)),$g(t,e),!1),n?n.Ei(r):n=r,n}function Lun(t,e,n){var r,s;return r=new F0(t.e,4,13,(s=e.c,s||(ln(),K1)),null,$g(t,e),!1),n?n.Ei(r):n=r,n}function Gyt(t,e,n){var r,s;return s=t.r,t.r=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,8,s,t.r),n?n.Ei(r):n=r),n}function Bg(t,e){var n,r;return n=u(e,676),r=n.vk(),!r&&n.wk(r=_t(e,88)?new NGt(t,u(e,26)):new eZt(t,u(e,148))),r}function zD(t,e,n){var r;t.qi(t.i+1),r=t.oi(e,n),e!=t.i&&Pc(t.g,e,t.g,e+1,t.i-e),ls(t.g,e,r),++t.i,t.bi(e,n),t.ci()}function Mun(t,e){var n;return e.a&&(n=e.a.a.length,t.a?Yr(t.a,t.b):t.a=new Fl(t.d),rZt(t.a,e.a,e.d.length,n)),t}function Dun(t,e){var n,r,s,o;if(e.vi(t.a),o=u(Mn(t.a,8),1936),o!=null)for(n=o,r=0,s=n.length;rn)throw nt(new Co(Fq+t+R6t+e+", size: "+n));if(t>e)throw nt(new Pn(Fq+t+ffe+e))}function gh(t,e,n){if(e<0)K4t(t,n);else{if(!n.Ij())throw nt(new Pn(cb+n.ne()+WC));u(n,66).Nj().Vj(t,t.yh(),e)}}function Nun(t,e,n,r,s,o,h,d){var w;for(w=n;o=r||e=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t>=48&&t<=57?t-48:0}function Gre(t){var e;return t.Db&64?mf(t):(e=new Ah(mf(t)),e.a+=" (source: ",yo(e,t.d),e.a+=")",e.a)}function Fun(t,e,n){var r,s;return s=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,5,s,t.a),n?g4t(n,r):n=r),n}function Rg(t,e){var n;n=(t.Bb&256)!=0,e?t.Bb|=256:t.Bb&=-257,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,2,n,e))}function Wyt(t,e){var n;n=(t.Bb&256)!=0,e?t.Bb|=256:t.Bb&=-257,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,8,n,e))}function xz(t,e){var n;n=(t.Bb&256)!=0,e?t.Bb|=256:t.Bb&=-257,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,8,n,e))}function jg(t,e){var n;n=(t.Bb&512)!=0,e?t.Bb|=512:t.Bb&=-513,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,3,n,e))}function Kyt(t,e){var n;n=(t.Bb&512)!=0,e?t.Bb|=512:t.Bb&=-513,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,9,n,e))}function Z_(t,e){var n;return t.b==-1&&t.a&&(n=t.a.Gj(),t.b=n?t.c.Xg(t.a.aj(),n):es(t.c.Tg(),t.a)),t.c.Og(t.b,e)}function de(t){var e,n;return t>-129&&t<128?(e=t+128,n=(HKt(),n7t)[e],!n&&(n=n7t[e]=new iM(t)),n):new iM(t)}function J8(t){var e,n;return t>-129&&t<128?(e=t+128,n=(YKt(),a7t)[e],!n&&(n=a7t[e]=new eR(t)),n):new eR(t)}function Yyt(t){var e,n;return e=t.k,e==(Gn(),Is)?(n=u(K(t,(ae(),gc)),61),n==(be(),On)||n==yr):!1}function Bun(t,e,n){var r,s,o;return o=(s=b7(t.b,e),s),o&&(r=u(Eq(mD(t,o),""),26),r)?p5t(t,r,e,n):null}function Bit(t,e,n){var r,s,o;return o=(s=b7(t.b,e),s),o&&(r=u(Eq(mD(t,o),""),26),r)?b5t(t,r,e,n):null}function Ure(t,e){var n,r;for(r=new nr(t);r.e!=r.i.gc();)if(n=u(dr(r),138),Gt(e)===Gt(n))return!0;return!1}function J_(t,e,n){var r;if(r=t.gc(),e>r)throw nt(new jm(e,r));if(t.hi()&&t.Hc(n))throw nt(new Pn(XI));t.Xh(e,n)}function Run(t,e){var n;if(n=e4(t.i,e),n==null)throw nt(new od("Node did not exist in input."));return ayt(e,n),null}function jun(t,e){var n;if(n=gI(t,e),_t(n,322))return u(n,34);throw nt(new Pn(cb+e+"' is not a valid attribute"))}function $un(t,e,n){var r,s;for(s=_t(e,99)&&u(e,18).Bb&Qa?new Ket(e,t):new V8(e,t),r=0;re?1:t==e?t==0?js(1/t,1/e):0:isNaN(t)?isNaN(e)?0:1:-1}function Yun(t,e){mr(e,"Sort end labels",1),ys(Wi(ec(new kn(null,new Tn(t.b,16)),new QP),new z5),new mY),or(e)}function tC(t,e,n){var r,s;return t.ej()?(s=t.fj(),r=Vst(t,e,n),t.$i(t.Zi(7,de(n),r,e,s)),r):Vst(t,e,n)}function Rit(t,e){var n,r,s;t.d==null?(++t.e,--t.f):(s=e.cd(),n=e.Sh(),r=(n&Ti)%t.d.length,Isn(t,r,lce(t,r,n,s)))}function t7(t,e){var n;n=(t.Bb&xf)!=0,e?t.Bb|=xf:t.Bb&=-1025,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,10,n,e))}function e7(t,e){var n;n=(t.Bb&yy)!=0,e?t.Bb|=yy:t.Bb&=-4097,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,12,n,e))}function n7(t,e){var n;n=(t.Bb&Ku)!=0,e?t.Bb|=Ku:t.Bb&=-8193,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,15,n,e))}function r7(t,e){var n;n=(t.Bb&Ay)!=0,e?t.Bb|=Ay:t.Bb&=-2049,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,11,n,e))}function Xun(t,e){var n;return n=js(t.b.c,e.b.c),n!=0||(n=js(t.a.a,e.a.a),n!=0)?n:js(t.a.b,e.a.b)}function Qun(t,e){var n;if(n=tr(t.k,e),n==null)throw nt(new od("Port did not exist in input."));return ayt(e,n),null}function Zun(t){var e,n;for(n=pce(zl(t)).Kc();n.Ob();)if(e=jr(n.Pb()),mC(t,e))return asn((TVt(),G4e),e);return null}function Jun(t,e){var n,r,s,o,h;for(h=hu(t.e.Tg(),e),o=0,n=u(t.g,119),s=0;s>10)+OI&Ms,e[1]=(t&1023)+56320&Ms,Ih(e,0,e.length)}function Ez(t){var e,n;return n=u(K(t,(xe(),Xl)),103),n==(fo(),c0)?(e=Zt(ve(K(t,UV))),e>=1?_f:Q0):n}function nln(t){switch(u(K(t,(xe(),X0)),218).g){case 1:return new jX;case 3:return new VX;default:return new RX}}function p2(t){if(t.c)p2(t.c);else if(t.d)throw nt(new Ho("Stream already terminated, can't be modified or used"))}function zit(t){var e;return t.Db&64?mf(t):(e=new Ah(mf(t)),e.a+=" (identifier: ",yo(e,t.k),e.a+=")",e.a)}function Xre(t,e,n){var r,s;return r=(Tv(),s=new mp,s),W$(r,e),K$(r,n),t&&Or((!t.a&&(t.a=new Bs(Wh,t,5)),t.a),r),r}function qit(t,e,n,r){var s,o;return In(r),In(n),s=t.xc(e),o=s==null?n:hVt(u(s,15),u(n,14)),o==null?t.Bc(e):t.zc(e,o),o}function on(t){var e,n,r,s;return n=(e=u(Wf((r=t.gm,s=r.f,s==Ur?r:s)),9),new oh(e,u(ff(e,e.length),9),0)),wf(n,t),n}function rln(t,e,n){var r,s;for(s=t.a.ec().Kc();s.Ob();)if(r=u(s.Pb(),10),DD(n,u(Pe(e,r.p),14)))return r;return null}function iln(t,e,n){var r;try{Rcn(t,e,n)}catch(s){throw s=rs(s),_t(s,597)?(r=s,nt(new rmt(r))):nt(s)}return e}function Qp(t,e){var n;return Vo(t)&&Vo(e)&&(n=t-e,II>1,t.k=n-1>>1}function Hit(){y4t();var t,e,n;n=t6n+++Date.now(),t=Cs(b.Math.floor(n*PI))&Pq,e=Cs(n-t*P6t),this.a=t^1502,this.b=e^got}function z0(t){var e,n,r;for(e=new le,r=new S(t.j);r.a34028234663852886e22?bs:e<-34028234663852886e22?Ns:e}function Qre(t){return t-=t>>1&1431655765,t=(t>>2&858993459)+(t&858993459),t=(t>>4)+t&252645135,t+=t>>8,t+=t>>16,t&63}function Zre(t){var e,n,r,s;for(e=new IWt(t.Hd().gc()),s=0,r=W6(t.Hd().Kc());r.Ob();)n=r.Pb(),mrn(e,n,de(s++));return V0n(e.a)}function lln(t,e){var n,r,s;for(s=new Ar,r=e.vc().Kc();r.Ob();)n=u(r.Pb(),42),Ai(s,n.cd(),ecn(t,u(n.dd(),15)));return s}function e3t(t,e){t.n.c.length==0&&ue(t.n,new f$(t.s,t.t,t.i)),ue(t.b,e),B3t(u(Pe(t.n,t.n.c.length-1),211),e),cle(t,e)}function c4(t){return(t.c!=t.b.b||t.i!=t.g.b)&&(t.a.c=Nt(Qn,Me,1,0,5,1),Rs(t.a,t.b),Rs(t.a,t.g),t.c=t.b.b,t.i=t.g.b),t.a}function Vit(t,e){var n,r,s;for(s=0,r=u(e.Kb(t),20).Kc();r.Ob();)n=u(r.Pb(),17),Be(Fe(K(n,(ae(),H1))))||++s;return s}function hln(t,e){var n,r,s;r=J3(e),s=Zt(ve(iy(r,(xe(),Tf)))),n=b.Math.max(0,s/2-.5),cC(e,n,1),ue(t,new VVt(e,n))}function ph(){ph=X,_O=new _M(K0,0),yS=new _M("FIRST",1),gb=new _M(a1e,2),xS=new _M("LAST",3),Fy=new _M(o1e,4)}function q0(){q0=X,bft=new KR(OC,0),XO=new KR("POLYLINE",1),CE=new KR("ORTHOGONAL",2),qx=new KR("SPLINES",3)}function Tz(){Tz=X,DCt=new zet("ASPECT_RATIO_DRIVEN",0),qht=new zet("MAX_SCALE_DRIVEN",1),MCt=new zet("AREA_DRIVEN",2)}function VD(){VD=X,AG=new qet("P1_STRUCTURE",0),LG=new qet("P2_PROCESSING_ORDER",1),MG=new qet("P3_EXECUTION",2)}function _z(){_z=X,Fht=new Ret("OVERLAP_REMOVAL",0),Nht=new Ret("COMPACTION",1),Pht=new Ret("GRAPH_SIZE_CALCULATION",2)}function rw(t,e){return E1(),vf(rb),b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e))}function Jre(t,e){var n,r;for(n=si(t,0);n.b!=n.d.c;){if(r=lM(ve(ii(n))),r==e)return;if(r>e){Trt(n);break}}XM(n,e)}function an(t,e){var n,r,s,o,h;if(n=e.f,v2(t.c.d,n,e),e.g!=null)for(s=e.g,o=0,h=s.length;oe&&r.ue(t[o-1],t[o])>0;--o)h=t[o],ls(t,o,t[o-1]),ls(t,o-1,h)}function bh(t,e,n,r){if(e<0)y5t(t,n,r);else{if(!n.Ij())throw nt(new Pn(cb+n.ne()+WC));u(n,66).Nj().Tj(t,t.yh(),e,r)}}function Cz(t,e){if(e==t.d)return t.e;if(e==t.e)return t.d;throw nt(new Pn("Node "+e+" not part of edge "+t))}function dln(t,e){switch(e.g){case 2:return t.b;case 1:return t.c;case 4:return t.d;case 3:return t.a;default:return!1}}function tie(t,e){switch(e.g){case 2:return t.b;case 1:return t.c;case 4:return t.d;case 3:return t.a;default:return!1}}function n3t(t,e,n,r){switch(e){case 3:return t.f;case 4:return t.g;case 5:return t.i;case 6:return t.j}return Uyt(t,e,n,r)}function gln(t){return t.k!=(Gn(),qs)?!1:C8(new kn(null,new Fv(new ar(lr($s(t).a.Kc(),new H)))),new LF)}function pln(t){return t.e==null?t:(!t.c&&(t.c=new rat((t.f&256)!=0,t.i,t.a,t.d,(t.f&16)!=0,t.j,t.g,null)),t.c)}function bln(t,e){return t.h==DI&&t.m==0&&t.l==0?(e&&(ub=cu(0,0,0)),eUt((I8(),X8t))):(e&&(ub=cu(t.l,t.m,t.h)),cu(0,0,0))}function Wo(t){var e;return Array.isArray(t)&&t.im===Ft?Mp(dl(t))+"@"+(e=Ji(t)>>>0,e.toString(16)):t.toString()}function eC(t){var e;this.a=(e=u(t.e&&t.e(),9),new oh(e,u(ff(e,e.length),9),0)),this.b=Nt(Qn,Me,1,this.a.a.length,5,1)}function vln(t){var e,n,r;for(this.a=new A0,r=new S(t);r.a0&&($r(e-1,t.length),t.charCodeAt(e-1)==58)&&!Git(t,iA,sA))}function Git(t,e,n){var r,s;for(r=0,s=t.length;r=s)return e.c+n;return e.c+e.b.gc()}function kln(t,e){l8();var n,r,s,o;for(r=gte(t),s=e,M8(r,0,r.length,s),n=0;n0&&(r+=s,++n);return n>1&&(r+=t.d*(n-1)),r}function i3t(t){var e,n,r;for(r=new _g,r.a+="[",e=0,n=t.gc();e0&&this.b>0&&jvt(this.c,this.b,this.a)}function o3t(t){Wit(),this.c=L1(ut(ot(w6n,1),Me,831,0,[Fwe])),this.b=new Ar,this.a=t,Ai(this.b,oG,1),_u(Bwe,new H$t(this))}function eie(t,e){var n;return t.d?Ml(t.b,e)?u(tr(t.b,e),51):(n=e.Kf(),Ai(t.b,e,n),n):e.Kf()}function c3t(t,e){var n;return Gt(t)===Gt(e)?!0:_t(e,91)?(n=u(e,91),t.e==n.e&&t.d==n.d&&csn(t,n.a)):!1}function Z6(t){switch(be(),t.g){case 4:return On;case 1:return Hn;case 3:return yr;case 2:return Bn;default:return ac}}function u3t(t,e){switch(e){case 3:return t.f!=0;case 4:return t.g!=0;case 5:return t.i!=0;case 6:return t.j!=0}return cyt(t,e)}function Aln(t){switch(t.g){case 0:return new sZ;case 1:return new HF;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function nie(t){switch(t.g){case 0:return new qF;case 1:return new VF;default:throw nt(new Pn(jot+(t.f!=null?t.f:""+t.g)))}}function rie(t){switch(t.g){case 0:return new zpt;case 1:return new gqt;default:throw nt(new Pn(pH+(t.f!=null?t.f:""+t.g)))}}function Lln(t){switch(t.g){case 1:return new tZ;case 2:return new yWt;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function Mln(t){var e,n;if(t.b)return t.b;for(n=z1?null:t.d;n;){if(e=z1?null:n.b,e)return e;n=z1?null:n.d}return r8(),C7t}function Dln(t){var e,n,r;return t.e==0?0:(e=t.d<<5,n=t.a[t.d-1],t.e<0&&(r=dne(t),r==t.d-1&&(--n,n=n|0)),e-=lI(n),e)}function Iln(t){var e,n,r;return t>5,e=t&31,r=Nt(Sr,Jr,25,n+1,15,1),r[n]=1<3;)s*=10,--o;t=(t+(s>>1))/s|0}return r.i=t,!0}function Nln(t){return Oit(),Fn(),!!(tie(u(t.a,81).j,u(t.b,103))||u(t.a,81).d.e!=0&&tie(u(t.a,81).j,u(t.b,103)))}function Pln(t){O$(),u(t.We((di(),mb)),174).Hc((bl(),WG))&&(u(t.We(Ky),174).Fc((il(),Hx)),u(t.We(mb),174).Mc(WG))}function sie(t,e){var n,r;if(e){for(n=0;n=0;--r)for(e=n[r],s=0;s>1,this.k=e-1>>1}function zln(t,e){mr(e,"End label post-processing",1),ys(Wi(ec(new kn(null,new Tn(t.b,16)),new dY),new gY),new pY),or(e)}function qln(t,e,n){var r,s;return r=Zt(t.p[e.i.p])+Zt(t.d[e.i.p])+e.n.b+e.a.b,s=Zt(t.p[n.i.p])+Zt(t.d[n.i.p])+n.n.b+n.a.b,s-r}function Hln(t,e,n){var r,s;for(r=Gs(n,po),s=0;_c(r,0)!=0&&s0&&($r(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function Gln(t){var e;return t==null?null:new Fp((e=Hc(t,!0),e.length>0&&($r(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function b3t(t,e){var n;return t.i>0&&(e.lengtht.i&&ls(e,t.i,null),e}function eu(t,e,n){var r,s,o;return t.ej()?(r=t.i,o=t.fj(),zD(t,r,e),s=t.Zi(3,null,e,r,o),n?n.Ei(s):n=s):zD(t,t.i,e),n}function Uln(t,e,n){var r,s;return r=new F0(t.e,4,10,(s=e.c,_t(s,88)?u(s,26):(ln(),Qh)),null,$g(t,e),!1),n?n.Ei(r):n=r,n}function Wln(t,e,n){var r,s;return r=new F0(t.e,3,10,null,(s=e.c,_t(s,88)?u(s,26):(ln(),Qh)),$g(t,e),!1),n?n.Ei(r):n=r,n}function cie(t){Bm();var e;return e=new So(u(t.e.We((di(),o5)),8)),t.B.Hc((bl(),AE))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function uie(t){sy();var e;return(t.q?t.q:(pn(),pn(),a0))._b((xe(),Nw))?e=u(K(t,Nw),197):e=u(K($a(t),_S),197),e}function iy(t,e){var n,r;return r=null,ea(t,(xe(),sG))&&(n=u(K(t,sG),94),n.Xe(e)&&(r=n.We(e))),r==null&&(r=K($a(t),e)),r}function lie(t,e){var n,r,s;return _t(e,42)?(n=u(e,42),r=n.cd(),s=ny(t.Rc(),r),dd(s,n.dd())&&(s!=null||t.Rc()._b(r))):!1}function Yit(t,e){var n,r,s;return t.f>0?(t.qj(),r=e==null?0:Ji(e),s=(r&Ti)%t.d.length,n=lce(t,s,r,e),n!=-1):!1}function Jf(t,e){var n,r,s;return t.f>0&&(t.qj(),r=e==null?0:Ji(e),s=(r&Ti)%t.d.length,n=t5t(t,s,r,e),n)?n.dd():null}function GD(t,e){var n,r,s,o;for(o=hu(t.e.Tg(),e),n=u(t.g,119),s=0;s1?A1(M0(e.a[1],32),Gs(e.a[0],po)):Gs(e.a[0],po),Gv(Ia(e.e,n))))}function UD(t,e){var n;return Vo(t)&&Vo(e)&&(n=t%e,II>5,e&=31,s=t.d+n+(e==0?0:1),r=Nt(Sr,Jr,25,s,15,1),Kdn(r,t.a,n,e),o=new Y3(t.e,s,r),O_(o),o}function w3t(t,e,n){var r,s;r=u(jc(DE,e),117),s=u(jc(hA,e),117),n?(Ao(DE,t,r),Ao(hA,t,s)):(Ao(hA,t,r),Ao(DE,t,s))}function vie(t,e,n){var r,s,o;for(s=null,o=t.b;o;){if(r=t.a.ue(e,o.d),n&&r==0)return o;r>=0?o=o.a[1]:(s=o,o=o.a[0])}return s}function wie(t,e,n){var r,s,o;for(s=null,o=t.b;o;){if(r=t.a.ue(e,o.d),n&&r==0)return o;r<=0?o=o.a[0]:(s=o,o=o.a[1])}return s}function Zln(t,e,n,r){var s,o,h;return s=!1,O3n(t.f,n,r)&&(Ehn(t.f,t.a[e][n],t.a[e][r]),o=t.a[e],h=o[r],o[r]=o[n],o[n]=h,s=!0),s}function m3t(t,e,n,r,s){var o,h,d;for(h=s;e.b!=e.c;)o=u(P6(e),10),d=u(rc(o,r).Xb(0),11),t.d[d.p]=h++,n.c[n.c.length]=d;return h}function y3t(t,e,n){var r,s,o,h,d;return h=t.k,d=e.k,r=n[h.g][d.g],s=ve(iy(t,r)),o=ve(iy(e,r)),b.Math.max((In(s),s),(In(o),o))}function Jln(t,e,n){var r,s,o,h;for(r=n/t.c.length,s=0,h=new S(t);h.a2e3&&(pge=t,qH=b.setTimeout(aYe,10))),zH++==0?(Nan((Upt(),W8t)),!0):!1}function ehn(t,e){var n,r,s;for(r=new ar(lr($s(t).a.Kc(),new H));Vr(r);)if(n=u(Ir(r),17),s=n.d.i,s.c==e)return!1;return!0}function x3t(t,e){var n,r;if(_t(e,245)){r=u(e,245);try{return n=t.vd(r),n==0}catch(s){if(s=rs(s),!_t(s,205))throw nt(s)}}return!1}function nhn(){return Error.stackTraceLimit>0?(b.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function rhn(t,e){return E1(),E1(),vf(rb),(b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e)))>0}function k3t(t,e){return E1(),E1(),vf(rb),(b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e)))<0}function xie(t,e){return E1(),E1(),vf(rb),(b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e)))<=0}function Qit(t,e){for(var n=0;!e[n]||e[n]=="";)n++;for(var r=e[n++];nuot)return n.fh();if(r=n.Zg(),r||n==t)break}return r}function E3t(t){return g$(),_t(t,156)?u(tr(cN,Sge),288).vg(t):Ml(cN,dl(t))?u(tr(cN,dl(t)),288).vg(t):null}function shn(t){if(Oz($7,t))return Fn(),W7;if(Oz(Pct,t))return Fn(),O2;throw nt(new Pn("Expecting true or false"))}function ahn(t,e){if(e.c==t)return e.d;if(e.d==t)return e.c;throw nt(new Pn("Input edge is not connected to the input port."))}function Sie(t,e){return t.e>e.e?1:t.ee.d?t.e:t.d=48&&t<48+b.Math.min(10,10)?t-48:t>=97&&t<97?t-97+10:t>=65&&t<65?t-65+10:-1}function Lie(t,e){var n;return Gt(e)===Gt(t)?!0:!_t(e,21)||(n=u(e,21),n.gc()!=t.gc())?!1:t.Ic(n)}function ohn(t,e){var n,r,s,o;return r=t.a.length-1,n=e-t.b&r,o=t.c-e&r,s=t.c-t.b&r,sWt(n=o?(aun(t,e),-1):(oun(t,e),1)}function chn(t,e){var n,r;for(n=($r(e,t.length),t.charCodeAt(e)),r=e+1;re.e?1:t.fe.f?1:Ji(t)-Ji(e)}function Oz(t,e){return In(t),e==null?!1:un(t,e)?!0:t.length==e.length&&un(t.toLowerCase(),e.toLowerCase())}function vhn(t,e){var n,r,s,o;for(r=0,s=e.gc();r0&&_c(t,128)<0?(e=Mr(t)+128,n=(KKt(),r7t)[e],!n&&(n=r7t[e]=new _m(t)),n):new _m(t)}function Die(t,e){var n,r;return n=e.Hh(t.a),n&&(r=jr(Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),fi)),r!=null)?r:e.ne()}function whn(t,e){var n,r;return n=e.Hh(t.a),n&&(r=jr(Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),fi)),r!=null)?r:e.ne()}function mhn(t,e){vrt();var n,r;for(r=new ar(lr(z0(t).a.Kc(),new H));Vr(r);)if(n=u(Ir(r),17),n.d.i==e||n.c.i==e)return n;return null}function C3t(t,e,n){this.c=t,this.f=new le,this.e=new Da,this.j=new Pvt,this.n=new Pvt,this.b=e,this.g=new ch(e.c,e.d,e.b,e.a),this.a=n}function Zit(t){var e,n,r,s;for(this.a=new A0,this.d=new Qs,this.e=0,n=t,r=0,s=n.length;r0):!1}function Nie(t){var e;Gt(ze(t,(di(),i5)))===Gt(($0(),HG))&&(hs(t)?(e=u(ze(hs(t),i5),334),Eo(t,i5,e)):Eo(t,i5,YS))}function Ehn(t,e,n){var r,s;Ost(t.e,e,n,(be(),Bn)),Ost(t.i,e,n,Hn),t.a&&(s=u(K(e,(ae(),Ii)),11),r=u(K(n,Ii),11),Ert(t.g,s,r))}function Pie(t,e,n){var r,s,o;r=e.c.p,o=e.p,t.b[r][o]=new ZXt(t,e),n&&(t.a[r][o]=new Gk(e),s=u(K(e,(ae(),Dw)),10),s&&cn(t.d,s,e))}function Fie(t,e){var n,r,s;if(ue(nV,t),e.Fc(t),n=u(tr(Vut,t),21),n)for(s=n.Kc();s.Ob();)r=u(s.Pb(),33),Go(nV,r,0)!=-1||Fie(r,e)}function Thn(t,e,n){var r;(Nge?(Mln(t),!0):Pge||Bge?(r8(),!0):Fge&&(r8(),!1))&&(r=new lKt(e),r.b=n,S0n(t,r))}function Jit(t,e){var n;n=!t.A.Hc((Nl(),W2))||t.q==(va(),Kc),t.u.Hc((il(),tg))?n?U4n(t,e):fhe(t,e):t.u.Hc(Eb)&&(n?h4n(t,e):Che(t,e))}function a7(t,e){var n,r;if(++t.j,e!=null&&(n=(r=t.a.Cb,_t(r,97)?u(r,97).Jg():null),mpn(e,n))){J6(t.a,4,n);return}J6(t.a,4,u(e,126))}function Bie(t,e,n){return new ch(b.Math.min(t.a,e.a)-n/2,b.Math.min(t.b,e.b)-n/2,b.Math.abs(t.a-e.a)+n,b.Math.abs(t.b-e.b)+n)}function _hn(t,e){var n,r;return n=mu(t.a.c.p,e.a.c.p),n!=0?n:(r=mu(t.a.d.i.p,e.a.d.i.p),r!=0?r:mu(e.a.d.p,t.a.d.p))}function Chn(t,e,n){var r,s,o,h;return o=e.j,h=n.j,o!=h?o.g-h.g:(r=t.f[e.p],s=t.f[n.p],r==0&&s==0?0:r==0?-1:s==0?1:js(r,s))}function Rie(t,e,n){var r,s,o;if(!n[e.d])for(n[e.d]=!0,s=new S(c4(e));s.a=s)return s;for(e=e>0?e:0;er&&ls(e,r,null),e}function $ie(t,e){var n,r;for(r=t.a.length,e.lengthr&&ls(e,r,null),e}function v2(t,e,n){var r,s,o;return s=u(tr(t.e,e),387),s?(o=X2t(s,n),DUt(t,s),o):(r=new Evt(t,e,n),Ai(t.e,e,r),rQt(r),null)}function Lhn(t){var e;if(t==null)return null;if(e=Ebn(Hc(t,!0)),e==null)throw nt(new set("Invalid hexBinary value: '"+t+"'"));return e}function KD(t){return eb(),_c(t,0)<0?_c(t,-1)!=0?new h4t(-1,D8(t)):Aut:_c(t,10)<=0?p7t[Mr(t)]:new h4t(1,t)}function est(){return Lq(),ut(ot(xpe,1),oe,159,0,[mpe,wpe,ype,lpe,upe,hpe,gpe,dpe,fpe,vpe,bpe,ppe,ope,ape,cpe,ipe,rpe,spe,epe,tpe,npe,But])}function zie(t){var e;this.d=new le,this.j=new Da,this.g=new Da,e=t.g.b,this.f=u(K($a(e),(xe(),Xl)),103),this.e=Zt(ve(Fz(e,Vy)))}function qie(t){this.b=new le,this.e=new le,this.d=t,this.a=!jT(Wi(new kn(null,new Fv(new M1(t.b))),new te(new MF))).sd((Yb(),Q7))}function t1(){t1=X,qn=new AM("PARENTS",0),ua=new AM("NODES",1),Id=new AM("EDGES",2),q2=new AM("PORTS",3),tp=new AM("LABELS",4)}function u4(){u4=X,xb=new MM("DISTRIBUTED",0),JO=new MM("JUSTIFIED",1),kAt=new MM("BEGIN",2),XS=new MM(I7,3),EAt=new MM("END",4)}function Mhn(t){var e;switch(e=t.yi(null),e){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function nst(t){switch(t.g){case 1:return fo(),Z0;case 4:return fo(),Hh;case 2:return fo(),_f;case 3:return fo(),Q0}return fo(),c0}function Dhn(t,e,n){var r;switch(r=n.q.getFullYear()-ib+ib,r<0&&(r=-r),e){case 1:t.a+=r;break;case 2:Xd(t,r%100,2);break;default:Xd(t,r,e)}}function si(t,e){var n,r;if(Um(e,t.b),e>=t.b>>1)for(r=t.c,n=t.b;n>e;--n)r=r.b;else for(r=t.a.a,n=0;n=64&&e<128&&(s=A1(s,M0(1,e-64)));return s}function Fz(t,e){var n,r;return r=null,ea(t,(di(),zx))&&(n=u(K(t,zx),94),n.Xe(e)&&(r=n.We(e))),r==null&&$a(t)&&(r=K($a(t),e)),r}function Gie(t,e){var n,r,s;s=e.d.i,r=s.k,!(r==(Gn(),qs)||r==q1)&&(n=new ar(lr($s(s).a.Kc(),new H)),Vr(n)&&Ai(t.k,e,u(Ir(n),17)))}function rst(t,e){var n,r,s;return r=wn(t.Tg(),e),n=e-t.Ah(),n<0?(s=t.Yg(r),s>=0?t.lh(s):Hst(t,r)):n<0?Hst(t,r):u(r,66).Nj().Sj(t,t.yh(),n)}function Ie(t){var e;if(_t(t.a,4)){if(e=E3t(t.a),e==null)throw nt(new Ho(q1e+t.b+"'. "+z1e+(L0(uN),uN.k)+r8t));return e}else return t.a}function Nhn(t){var e;if(t==null)return null;if(e=t5n(Hc(t,!0)),e==null)throw nt(new set("Invalid base64Binary value: '"+t+"'"));return e}function dr(t){var e;try{return e=t.i.Xb(t.e),t.mj(),t.g=t.e++,e}catch(n){throw n=rs(n),_t(n,73)?(t.mj(),nt(new vc)):nt(n)}}function ist(t){var e;try{return e=t.c.ki(t.e),t.mj(),t.g=t.e++,e}catch(n){throw n=rs(n),_t(n,73)?(t.mj(),nt(new vc)):nt(n)}}function iC(){iC=X,sEt=(di(),eAt),qut=OSt,Npe=jx,iEt=V2,Rpe=(Kz(),B7t),Bpe=P7t,jpe=j7t,Fpe=N7t,Ppe=(Lit(),eEt),zut=Dpe,rEt=Ipe,eV=Ope}function Bz(t){switch(fbt(),this.c=new le,this.d=t,t.g){case 0:case 2:this.a=ywt(EEt),this.b=bs;break;case 3:case 1:this.a=EEt,this.b=Ns}}function Uie(t,e,n){var r,s;if(t.c)Cu(t.c,t.c.i+e),Su(t.c,t.c.j+n);else for(s=new S(t.b);s.a0&&(ue(t.b,new CKt(e.a,n)),r=e.a.length,0r&&(e.a+=MUt(Nt(Eh,wd,25,-r,15,1))))}function Wie(t,e){var n,r,s;for(n=t.o,s=u(u(Pi(t.r,e),21),84).Kc();s.Ob();)r=u(s.Pb(),111),r.e.a=Bfn(r,n.a),r.e.b=n.b*Zt(ve(r.b.We(ZH)))}function Fhn(t,e){var n,r,s,o;return s=t.k,n=Zt(ve(K(t,(ae(),Iw)))),o=e.k,r=Zt(ve(K(e,Iw))),o!=(Gn(),Is)?-1:s!=Is?1:n==r?0:n=0?t.hh(e,n,r):(t.eh()&&(r=(s=t.Vg(),s>=0?t.Qg(r):t.eh().ih(t,-1-s,null,r))),t.Sg(e,n,r))}function A3t(t,e){switch(e){case 7:!t.e&&(t.e=new En(ra,t,7,4)),Tr(t.e);return;case 8:!t.d&&(t.d=new En(ra,t,8,5)),Tr(t.d);return}g3t(t,e)}function e1(t,e){var n;n=t.Zc(e);try{return n.Pb()}catch(r){throw r=rs(r),_t(r,109)?nt(new Co("Can't get element "+e)):nt(r)}}function L3t(t,e){this.e=t,e=0&&(n.d=t.t);break;case 3:t.t>=0&&(n.a=t.t)}t.C&&(n.b=t.C.b,n.c=t.C.c)}function ex(){ex=X,cO=new $R(Rq,0),oO=new $R(Eot,1),uO=new $R(Tot,2),lO=new $R(_ot,3),cO.a=!1,oO.a=!0,uO.a=!1,lO.a=!0}function sC(){sC=X,hO=new jR(Rq,0),JH=new jR(Eot,1),tV=new jR(Tot,2),fO=new jR(_ot,3),hO.a=!1,JH.a=!0,tV.a=!1,fO.a=!0}function zhn(t){var e;e=t.a;do e=u(Ir(new ar(lr(Uo(e).a.Kc(),new H))),17).c.i,e.k==(Gn(),ca)&&t.b.Fc(e);while(e.k==(Gn(),ca));t.b=c2(t.b)}function qhn(t){var e,n,r;for(r=t.c.a,t.p=(Dr(r),new qu(r)),n=new S(r);n.an.b)return!0}return!1}function sst(t,e){return ha(t)?!!cge[e]:t.hm?!!t.hm[e]:Nm(t)?!!oge[e]:Om(t)?!!age[e]:!1}function Eo(t,e,n){return n==null?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),Dz(t.o,e)):(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),Yz(t.o,e,n)),t}function Uhn(t,e,n,r){var s,o;o=e.Xe((di(),a5))?u(e.We(a5),21):t.j,s=Pun(o),s!=(Lq(),But)&&(n&&!T3t(s)||N4t(Tbn(t,s,r),e))}function jz(t,e,n,r){var s,o,h;return o=wn(t.Tg(),e),s=e-t.Ah(),s<0?(h=t.Yg(o),h>=0?t._g(h,n,!0):lw(t,o,n)):u(o,66).Nj().Pj(t,t.yh(),s,n,r)}function Whn(t,e,n,r){var s,o,h;n.mh(e)&&(so(),Qrt(e)?(s=u(n.ah(e),153),vhn(t,s)):(o=(h=e,h?u(r,49).xh(h):null),o&&YWe(n.ah(e),o)))}function Khn(t){switch(t.g){case 1:return tw(),aO;case 3:return tw(),sO;case 2:return tw(),jut;case 4:return tw(),Rut;default:return null}}function M3t(t){switch(typeof t){case Pat:return zg(t);case C6t:return Cs(t);case cx:return Fn(),t?1231:1237;default:return t==null?0:Dv(t)}}function Yhn(t,e,n){if(t.e)switch(t.b){case 1:Tnn(t.c,e,n);break;case 0:_nn(t.c,e,n)}else PZt(t.c,e,n);t.a[e.p][n.p]=t.c.i,t.a[n.p][e.p]=t.c.e}function Zie(t){var e,n;if(t==null)return null;for(n=Nt(o0,re,193,t.length,0,2),e=0;e=0)return s;if(t.Fk()){for(r=0;r=s)throw nt(new jm(e,s));if(t.hi()&&(r=t.Xc(n),r>=0&&r!=e))throw nt(new Pn(XI));return t.mi(e,n)}function D3t(t,e){if(this.a=u(Dr(t),245),this.b=u(Dr(e),245),t.vd(e)>0||t==(Jtt(),vut)||e==(Ztt(),wut))throw nt(new Pn("Invalid range: "+DZt(t,e)))}function Jie(t){var e,n;for(this.b=new le,this.c=t,this.a=!1,n=new S(t.a);n.a0),(e&-e)==e)return Cs(e*pl(t,31)*4656612873077393e-25);do n=pl(t,31),r=n%e;while(n-r+(e-1)<0);return Cs(r)}function zg(t){hKt();var e,n,r;return n=":"+t,r=YH[n],r!=null?Cs((In(r),r)):(r=A7t[n],e=r==null?z2n(t):Cs((In(r),r)),bnn(),YH[n]=e,e)}function ese(t,e,n){mr(n,"Compound graph preprocessor",1),t.a=new Hv,ohe(t,e,null),Ayn(t,e),l2n(t),ee(e,(ae(),W9t),t.a),t.a=null,nl(t.b),or(n)}function Zhn(t,e,n){switch(n.g){case 1:t.a=e.a/2,t.b=0;break;case 2:t.a=e.a,t.b=e.b/2;break;case 3:t.a=e.a/2,t.b=e.b;break;case 4:t.a=0,t.b=e.b/2}}function Jhn(t){var e,n,r;for(r=u(Pi(t.a,(p4(),DV)),15).Kc();r.Ob();)n=u(r.Pb(),101),e=V3t(n),b8(t,n,e[0],(Jv(),Sw),0),b8(t,n,e[1],Aw,1)}function tfn(t){var e,n,r;for(r=u(Pi(t.a,(p4(),IV)),15).Kc();r.Ob();)n=u(r.Pb(),101),e=V3t(n),b8(t,n,e[0],(Jv(),Sw),0),b8(t,n,e[1],Aw,1)}function ast(t){switch(t.g){case 0:return null;case 1:return new ene;case 2:return new qpt;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function YD(t,e,n){var r,s;for(kcn(t,e-t.s,n-t.t),s=new S(t.n);s.a1&&(o=Qhn(t,e)),o}function ost(t){var e;return t.f&&t.f.kh()&&(e=u(t.f,49),t.f=u(Xp(t,e),82),t.f!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,8,e,t.f))),t.f}function cst(t){var e;return t.i&&t.i.kh()&&(e=u(t.i,49),t.i=u(Xp(t,e),82),t.i!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,7,e,t.i))),t.i}function oo(t){var e;return t.b&&t.b.Db&64&&(e=t.b,t.b=u(Xp(t,e),18),t.b!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,21,e,t.b))),t.b}function qz(t,e){var n,r,s;t.d==null?(++t.e,++t.f):(r=e.Sh(),v2n(t,t.f+1),s=(r&Ti)%t.d.length,n=t.d[s],!n&&(n=t.d[s]=t.uj()),n.Fc(e),++t.f)}function N3t(t,e,n){var r;return e.Kj()?!1:e.Zj()!=-2?(r=e.zj(),r==null?n==null:Si(r,n)):e.Hj()==t.e.Tg()&&n==null}function Hz(){var t;ql(16,Qhe),t=Uee(16),this.b=Nt(yut,LI,317,t,0,1),this.c=Nt(yut,LI,317,t,0,1),this.a=null,this.e=null,this.i=0,this.f=t-1,this.g=0}function H0(t){Z2t.call(this),this.k=(Gn(),qs),this.j=(ql(6,my),new Jc(6)),this.b=(ql(2,my),new Jc(2)),this.d=new Wtt,this.f=new Opt,this.a=t}function nfn(t){var e,n;t.c.length<=1||(e=Jce(t,(be(),yr)),zae(t,u(e.a,19).a,u(e.b,19).a),n=Jce(t,Bn),zae(t,u(n.a,19).a,u(n.b,19).a))}function aC(){aC=X,__t=new TM("SIMPLE",0),fht=new TM(zot,1),dht=new TM("LINEAR_SEGMENTS",2),AS=new TM("BRANDES_KOEPF",3),LS=new TM(E1e,4)}function P3t(t,e,n){D6(u(K(e,(xe(),ws)),98))||(Lmt(t,e,qg(e,n)),Lmt(t,e,qg(e,(be(),yr))),Lmt(t,e,qg(e,On)),pn(),aa(e.j,new aM(t)))}function nse(t,e,n,r){var s,o,h;for(s=u(Pi(r?t.a:t.b,e),21),h=s.Kc();h.Ob();)if(o=u(h.Pb(),33),dq(t,n,o))return!0;return!1}function ust(t){var e,n;for(n=new nr(t);n.e!=n.i.gc();)if(e=u(dr(n),87),e.e||(!e.d&&(e.d=new Bs(wo,e,1)),e.d).i!=0)return!0;return!1}function lst(t){var e,n;for(n=new nr(t);n.e!=n.i.gc();)if(e=u(dr(n),87),e.e||(!e.d&&(e.d=new Bs(wo,e,1)),e.d).i!=0)return!0;return!1}function rfn(t){var e,n,r;for(e=0,r=new S(t.c.a);r.a102?-1:t<=57?t-48:t<65?-1:t<=70?t-65+10:t<97?-1:t-97+10}function dst(t,e){if(t==null)throw nt(new m6("null key in entry: null="+e));if(e==null)throw nt(new m6("null value in entry: "+t+"=null"))}function ifn(t,e){for(var n,r;t.Ob();)if(!e.Ob()||(n=t.Pb(),r=e.Pb(),!(Gt(n)===Gt(r)||n!=null&&Si(n,r))))return!1;return!e.Ob()}function ise(t,e){var n;return n=ut(ot(ga,1),To,25,15,[Iit(t.a[0],e),Iit(t.a[1],e),Iit(t.a[2],e)]),t.d&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function sse(t,e){var n;return n=ut(ot(ga,1),To,25,15,[wz(t.a[0],e),wz(t.a[1],e),wz(t.a[2],e)]),t.d&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function m2(){m2=X,xlt=new EM("GREEDY",0),T9t=new EM(u1e,1),klt=new EM(zot,2),pS=new EM("MODEL_ORDER",3),gS=new EM("GREEDY_MODEL_ORDER",4)}function ase(t,e){var n,r,s;for(t.b[e.g]=1,r=si(e.d,0);r.b!=r.d.c;)n=u(ii(r),188),s=n.c,t.b[s.g]==1?ai(t.a,n):t.b[s.g]==2?t.b[s.g]=1:ase(t,s)}function sfn(t,e){var n,r,s;for(s=new Jc(e.gc()),r=e.Kc();r.Ob();)n=u(r.Pb(),286),n.c==n.f?d7(t,n,n.c):rgn(t,n)||(s.c[s.c.length]=n);return s}function afn(t,e,n){var r,s,o,h,d;for(d=t.r+e,t.r+=e,t.d+=n,r=n/t.n.c.length,s=0,h=new S(t.n);h.ao&&ls(e,o,null),e}function yfn(t,e){var n,r;if(r=t.gc(),e==null){for(n=0;n0&&(w+=s),k[_]=h,h+=d*(w+r)}function gse(t){var e,n,r;for(r=t.f,t.n=Nt(ga,To,25,r,15,1),t.d=Nt(ga,To,25,r,15,1),e=0;e0?t.c:0),++s;t.b=r,t.d=o}function Sfn(t,e){var n,r,s,o,h;for(r=0,s=0,n=0,h=new S(e);h.a0?t.g:0),++n;t.c=s,t.d=r}function mse(t,e){var n;return n=ut(ot(ga,1),To,25,15,[O3t(t,(Zf(),fc),e),O3t(t,iu,e),O3t(t,dc,e)]),t.f&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function Afn(t,e,n){var r;try{bq(t,e+t.j,n+t.k,!1,!0)}catch(s){throw s=rs(s),_t(s,73)?(r=s,nt(new Co(r.g+$q+e+Xa+n+")."))):nt(s)}}function Lfn(t,e,n){var r;try{bq(t,e+t.j,n+t.k,!0,!1)}catch(s){throw s=rs(s),_t(s,73)?(r=s,nt(new Co(r.g+$q+e+Xa+n+")."))):nt(s)}}function yse(t){var e;ea(t,(xe(),Ow))&&(e=u(K(t,Ow),21),e.Hc((fy(),Cf))?(e.Mc(Cf),e.Fc(Sf)):e.Hc(Sf)&&(e.Mc(Sf),e.Fc(Cf)))}function xse(t){var e;ea(t,(xe(),Ow))&&(e=u(K(t,Ow),21),e.Hc((fy(),Lf))?(e.Mc(Lf),e.Fc(Gh)):e.Hc(Gh)&&(e.Mc(Gh),e.Fc(Lf)))}function Mfn(t,e,n){mr(n,"Self-Loop ordering",1),ys(xu(Wi(Wi(ec(new kn(null,new Tn(e.b,16)),new cF),new KY),new YY),new XY),new Cm(t)),or(n)}function QD(t,e,n,r){var s,o;for(s=e;s0&&(s.b+=e),s}function Uz(t,e){var n,r,s;for(s=new Da,r=t.Kc();r.Ob();)n=u(r.Pb(),37),wC(n,0,s.b),s.b+=n.f.b+e,s.a=b.Math.max(s.a,n.f.a);return s.a>0&&(s.a+=e),s}function Ese(t){var e,n,r;for(r=Ti,n=new S(t.a);n.a>16==6?t.Cb.ih(t,5,o1,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||t.zh()),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Pfn(t){k8();var e=t.e;if(e&&e.stack){var n=e.stack,r=e+` +`;return n.substring(0,r.length)==r&&(n=n.substring(r.length)),n.split(` +`)}return[]}function Ffn(t){var e;return e=($ee(),yge),e[t>>>28]|e[t>>24&15]<<4|e[t>>20&15]<<8|e[t>>16&15]<<12|e[t>>12&15]<<16|e[t>>8&15]<<20|e[t>>4&15]<<24|e[t&15]<<28}function Cse(t){var e,n,r;t.b==t.c&&(r=t.a.length,n=xyt(b.Math.max(8,r))<<1,t.b!=0?(e=ff(t.a,n),Kee(t,e,r),t.a=e,t.b=0):Wzt(t.a,n),t.c=r)}function Bfn(t,e){var n;return n=t.b,n.Xe((di(),ml))?n.Hf()==(be(),Bn)?-n.rf().a-Zt(ve(n.We(ml))):e+Zt(ve(n.We(ml))):n.Hf()==(be(),Bn)?-n.rf().a:e}function ZD(t){var e;return t.b.c.length!=0&&u(Pe(t.b,0),70).a?u(Pe(t.b,0),70).a:(e=srt(t),e??""+(t.c?Go(t.c.a,t,0):-1))}function Wz(t){var e;return t.f.c.length!=0&&u(Pe(t.f,0),70).a?u(Pe(t.f,0),70).a:(e=srt(t),e??""+(t.i?Go(t.i.j,t,0):-1))}function Rfn(t,e){var n,r;if(e<0||e>=t.gc())return null;for(n=e;n0?t.c:0),s=b.Math.max(s,e.d),++r;t.e=o,t.b=s}function $fn(t){var e,n;if(!t.b)for(t.b=y$(u(t.f,118).Ag().i),n=new nr(u(t.f,118).Ag());n.e!=n.i.gc();)e=u(dr(n),137),ue(t.b,new iet(e));return t.b}function zfn(t,e){var n,r,s;if(e.dc())return l8(),l8(),lN;for(n=new LWt(t,e.gc()),s=new nr(t);s.e!=s.i.gc();)r=dr(s),e.Hc(r)&&Or(n,r);return n}function q3t(t,e,n,r){return e==0?r?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),t.o):(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),fD(t.o)):jz(t,e,n,r)}function xst(t){var e,n;if(t.rb)for(e=0,n=t.rb.i;e>22),s+=r>>22,s<0)?!1:(t.l=n&vl,t.m=r&vl,t.h=s&W0,!0)}function Gfn(t,e,n,r,s,o,h){var d,w;return!(e.Ae()&&(w=t.a.ue(n,r),w<0||!s&&w==0)||e.Be()&&(d=t.a.ue(n,o),d>0||!h&&d==0))}function Ufn(t,e){Q8();var n;if(n=t.j.g-e.j.g,n!=0)return 0;switch(t.j.g){case 2:return Vit(e,b9t)-Vit(t,b9t);case 4:return Vit(t,p9t)-Vit(e,p9t)}return 0}function Wfn(t){switch(t.g){case 0:return Tlt;case 1:return _lt;case 2:return Clt;case 3:return Slt;case 4:return PV;case 5:return Alt;default:return null}}function Io(t,e,n){var r,s;return r=(s=new Xtt,g2(s,e),tu(s,n),Or((!t.c&&(t.c=new he(zw,t,12,10)),t.c),s),s),Pg(r,0),ty(r,1),jg(r,!0),Rg(r,!0),r}function nx(t,e){var n,r;if(e>=t.i)throw nt(new Wet(e,t.i));return++t.j,n=t.g[e],r=t.i-e-1,r>0&&Pc(t.g,e+1,t.g,e,r),ls(t.g,--t.i,null),t.fi(e,n),t.ci(),n}function Sse(t,e){var n,r;return t.Db>>16==17?t.Cb.ih(t,21,Kh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||t.zh()),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Kfn(t){var e,n,r,s;for(pn(),aa(t.c,t.a),s=new S(t.c);s.an.a.c.length))throw nt(new Pn("index must be >= 0 and <= layer node count"));t.c&&Eu(t.c.a,t),t.c=n,n&&$m(n.a,e,t)}function Ise(t,e){var n,r,s;for(r=new ar(lr(z0(t).a.Kc(),new H));Vr(r);)return n=u(Ir(r),17),s=u(e.Kb(n),10),new Bk(Dr(s.n.b+s.o.b/2));return DT(),DT(),but}function Ose(t,e){this.c=new Ar,this.a=t,this.b=e,this.d=u(K(t,(ae(),X4)),304),Gt(K(t,(xe(),e_t)))===Gt((bD(),FV))?this.e=new lqt:this.e=new uqt}function t1n(t,e){var n,r,s,o;for(o=0,r=new S(t);r.a>16==6?t.Cb.ih(t,6,ra,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),YG)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function K3t(t,e){var n,r;return t.Db>>16==7?t.Cb.ih(t,1,sN,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),PAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Y3t(t,e){var n,r;return t.Db>>16==9?t.Cb.ih(t,9,ds,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),BAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Pse(t,e){var n,r;return t.Db>>16==5?t.Cb.ih(t,9,iU,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),ip)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function X3t(t,e){var n,r;return t.Db>>16==3?t.Cb.ih(t,0,oN,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),rp)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Fse(t,e){var n,r;return t.Db>>16==7?t.Cb.ih(t,6,o1,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),ap)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Bse(){this.a=new XF,this.g=new Hz,this.j=new Hz,this.b=new Ar,this.d=new Hz,this.i=new Hz,this.k=new Ar,this.c=new Ar,this.e=new Ar,this.f=new Ar}function i1n(t,e,n){var r,s,o;for(n<0&&(n=0),o=t.i,s=n;suot)return c7(t,r);if(r==t)return!0}}return!1}function a1n(t){switch(gj(),t.q.g){case 5:xoe(t,(be(),On)),xoe(t,yr);break;case 4:bce(t,(be(),On)),bce(t,yr);break;default:bhe(t,(be(),On)),bhe(t,yr)}}function o1n(t){switch(gj(),t.q.g){case 5:Foe(t,(be(),Hn)),Foe(t,Bn);break;case 4:Wie(t,(be(),Hn)),Wie(t,Bn);break;default:vhe(t,(be(),Hn)),vhe(t,Bn)}}function c1n(t){var e,n;e=u(K(t,(n1(),ebe)),19),e?(n=e.a,n==0?ee(t,(Up(),aV),new Hit):ee(t,(Up(),aV),new T$(n))):ee(t,(Up(),aV),new T$(1))}function u1n(t,e){var n;switch(n=t.i,e.g){case 1:return-(t.n.b+t.o.b);case 2:return t.n.a-n.o.a;case 3:return t.n.b-n.o.b;case 4:return-(t.n.a+t.o.a)}return 0}function l1n(t,e){switch(t.g){case 0:return e==(ph(),gb)?CV:SV;case 1:return e==(ph(),gb)?CV:vO;case 2:return e==(ph(),gb)?vO:SV;default:return vO}}function tI(t,e){var n,r,s;for(Eu(t.a,e),t.e-=e.r+(t.a.c.length==0?0:t.c),s=Fkt,r=new S(t.a);r.a>16==3?t.Cb.ih(t,12,ds,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),NAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Z3t(t,e){var n,r;return t.Db>>16==11?t.Cb.ih(t,10,ds,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),FAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Rse(t,e){var n,r;return t.Db>>16==10?t.Cb.ih(t,11,Kh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),sp)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function jse(t,e){var n,r;return t.Db>>16==10?t.Cb.ih(t,12,Yh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),e3)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Oh(t){var e;return!(t.Bb&1)&&t.r&&t.r.kh()&&(e=u(t.r,49),t.r=u(Xp(t,e),138),t.r!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,8,e,t.r))),t.r}function Est(t,e,n){var r;return r=ut(ot(ga,1),To,25,15,[E4t(t,(Zf(),fc),e,n),E4t(t,iu,e,n),E4t(t,dc,e,n)]),t.f&&(r[0]=b.Math.max(r[0],r[2]),r[2]=r[0]),r}function h1n(t,e){var n,r,s;if(s=sfn(t,e),s.c.length!=0)for(aa(s,new RY),n=s.c.length,r=0;r>19,k=e.h>>19,w!=k?k-w:(s=t.h,d=e.h,s!=d?s-d:(r=t.m,h=e.m,r!=h?r-h:(n=t.l,o=e.l,n-o)))}function Kz(){Kz=X,$7t=(gq(),Put),j7t=new vn(z6t,$7t),R7t=($$(),Nut),B7t=new vn(q6t,R7t),F7t=(Nz(),Out),P7t=new vn(H6t,F7t),N7t=new vn(V6t,(Fn(),!0))}function cC(t,e,n){var r,s;r=e*n,_t(t.g,145)?(s=q6(t),s.f.d?s.f.a||(t.d.a+=r+R1):(t.d.d-=r+R1,t.d.a+=r+R1)):_t(t.g,10)&&(t.d.d-=r,t.d.a+=2*r)}function $se(t,e,n){var r,s,o,h,d;for(s=t[n.g],d=new S(e.d);d.a0?t.g:0),++n;e.b=r,e.e=s}function zse(t){var e,n,r;if(r=t.b,uVt(t.i,r.length)){for(n=r.length*2,t.b=Nt(yut,LI,317,n,0,1),t.c=Nt(yut,LI,317,n,0,1),t.f=n-1,t.i=0,e=t.a;e;e=e.c)oI(t,e,e);++t.g}}function m1n(t,e,n,r){var s,o,h,d;for(s=0;sh&&(d=h/r),s>o&&(w=o/s),ld(t,b.Math.min(d,w)),t}function x1n(){yq();var t,e;try{if(e=u(u4t((Ip(),Xh),q7),2014),e)return e}catch(n){if(n=rs(n),_t(n,102))t=n,Xvt((Fr(),t));else throw nt(n)}return new Z5}function k1n(){Ite();var t,e;try{if(e=u(u4t((Ip(),Xh),D2),2024),e)return e}catch(n){if(n=rs(n),_t(n,102))t=n,Xvt((Fr(),t));else throw nt(n)}return new Em}function E1n(){yq();var t,e;try{if(e=u(u4t((Ip(),Xh),jh),1941),e)return e}catch(n){if(n=rs(n),_t(n,102))t=n,Xvt((Fr(),t));else throw nt(n)}return new QZ}function T1n(t,e,n){var r,s;return s=t.e,t.e=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,4,s,e),n?n.Ei(r):n=r),s!=e&&(e?n=T7(t,oq(t,e),n):n=T7(t,t.a,n)),n}function qse(){CR.call(this),this.e=-1,this.a=!1,this.p=Oa,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=Oa}function _1n(t,e){var n,r,s;if(r=t.b.d.d,t.a||(r+=t.b.d.a),s=e.b.d.d,e.a||(s+=e.b.d.a),n=js(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function C1n(t,e){var n,r,s;if(r=t.b.b.d,t.a||(r+=t.b.b.a),s=e.b.b.d,e.a||(s+=e.b.b.a),n=js(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function S1n(t,e){var n,r,s;if(r=t.b.g.d,t.a||(r+=t.b.g.a),s=e.b.g.d,e.a||(s+=e.b.g.a),n=js(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function t4t(){t4t=X,pbe=el(Ei(Ei(Ei(new Zs,(Ya(),Gc),(co(),e9t)),Gc,n9t),jo,r9t),jo,VEt),vbe=Ei(Ei(new Zs,Gc,BEt),Gc,GEt),bbe=el(new Zs,jo,WEt)}function A1n(t){var e,n,r,s,o;for(e=u(K(t,(ae(),mS)),83),o=t.n,r=e.Cc().Kc();r.Ob();)n=u(r.Pb(),306),s=n.i,s.c+=o.a,s.d+=o.b,n.c?iue(n):sue(n);ee(t,mS,null)}function L1n(t,e,n){var r,s;switch(s=t.b,r=s.d,e.g){case 1:return-r.d-n;case 2:return s.o.a+r.c+n;case 3:return s.o.b+r.a+n;case 4:return-r.b-n;default:return-1}}function M1n(t){var e,n,r,s,o;if(r=0,s=N7,t.b)for(e=0;e<360;e++)n=e*.017453292519943295,V5t(t,t.d,0,0,I4,n),o=t.b.ig(t.d),o0&&(h=(o&Ti)%t.d.length,s=t5t(t,h,o,e),s)?(d=s.ed(n),d):(r=t.tj(o,e,n),t.c.Fc(r),null)}function r4t(t,e){var n,r,s,o;switch(Bg(t,e)._k()){case 3:case 2:{for(n=E4(e),s=0,o=n.i;s=0;r--)if(un(t[r].d,e)||un(t[r].d,n)){t.length>=r+1&&t.splice(0,r+1);break}return t}function eI(t,e){var n;return Vo(t)&&Vo(e)&&(n=t/e,II0&&(t.b+=2,t.a+=r):(t.b+=1,t.a+=b.Math.min(r,s))}function Yse(t,e){var n,r;if(r=!1,ha(e)&&(r=!0,F6(t,new Hm(jr(e)))),r||_t(e,236)&&(r=!0,F6(t,(n=uvt(u(e,236)),new yT(n)))),!r)throw nt(new net(w8t))}function K1n(t,e,n,r){var s,o,h;return s=new F0(t.e,1,10,(h=e.c,_t(h,88)?u(h,26):(ln(),Qh)),(o=n.c,_t(o,88)?u(o,26):(ln(),Qh)),$g(t,e),!1),r?r.Ei(s):r=s,r}function a4t(t){var e,n;switch(u(K($a(t),(xe(),WTt)),420).g){case 0:return e=t.n,n=t.o,new Re(e.a+n.a/2,e.b+n.b/2);case 1:return new So(t.n);default:return null}}function nI(){nI=X,BV=new QT(K0,0),I9t=new QT("LEFTUP",1),N9t=new QT("RIGHTUP",2),D9t=new QT("LEFTDOWN",3),O9t=new QT("RIGHTDOWN",4),Llt=new QT("BALANCED",5)}function Y1n(t,e,n){var r,s,o;if(r=js(t.a[e.p],t.a[n.p]),r==0){if(s=u(K(e,(ae(),Mx)),15),o=u(K(n,Mx),15),s.Hc(n))return-1;if(o.Hc(e))return 1}return r}function X1n(t){switch(t.g){case 1:return new nZ;case 2:return new rZ;case 3:return new eZ;case 0:return null;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function o4t(t,e,n){switch(e){case 1:!t.n&&(t.n=new he(Yo,t,1,7)),Tr(t.n),!t.n&&(t.n=new he(Yo,t,1,7)),gs(t.n,u(n,14));return;case 2:q_(t,jr(n));return}Syt(t,e,n)}function c4t(t,e,n){switch(e){case 3:Xv(t,Zt(ve(n)));return;case 4:Qv(t,Zt(ve(n)));return;case 5:Cu(t,Zt(ve(n)));return;case 6:Su(t,Zt(ve(n)));return}o4t(t,e,n)}function Xz(t,e,n){var r,s,o;o=(r=new Xtt,r),s=F1(o,e,null),s&&s.Fi(),tu(o,n),Or((!t.c&&(t.c=new he(zw,t,12,10)),t.c),o),Pg(o,0),ty(o,1),jg(o,!0),Rg(o,!0)}function u4t(t,e){var n,r,s;return n=UT(t.g,e),_t(n,235)?(s=u(n,235),s.Qh()==null,s.Nh()):_t(n,498)?(r=u(n,1938),s=r.b,s):null}function Q1n(t,e,n,r){var s,o;return Dr(e),Dr(n),o=u(w_(t.d,e),19),Bte(!!o,"Row %s not in %s",e,t.e),s=u(w_(t.b,n),19),Bte(!!s,"Column %s not in %s",n,t.c),qne(t,o.a,s.a,r)}function Xse(t,e,n,r,s,o,h){var d,w,k,_,M;if(_=s[o],k=o==h-1,d=k?r:0,M=vse(d,_),r!=10&&ut(ot(t,h-o),e[o],n[o],d,M),!k)for(++o,w=0;w<_;++w)M[w]=Xse(t,e,n,r,s,o,h);return M}function uC(t){if(t.g==-1)throw nt(new Ru);t.mj();try{t.i.$c(t.g),t.f=t.i.j,t.g1||d==-1?(o=u(w,15),s.Wb(ihn(t,o))):s.Wb(hat(t,u(w,56)))))}function idn(t,e,n,r){BHt();var s=put;function o(){for(var h=0;hyct)return n;s>-1e-6&&++n}return n}function f4t(t,e){var n;e!=t.b?(n=null,t.b&&(n=c$(t.b,t,-4,n)),e&&(n=tx(e,t,-4,n)),n=Ire(t,e,n),n&&n.Fi()):t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,e,e))}function Jse(t,e){var n;e!=t.f?(n=null,t.f&&(n=c$(t.f,t,-1,n)),e&&(n=tx(e,t,-1,n)),n=Ore(t,e,n),n&&n.Fi()):t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,0,e,e))}function tae(t){var e,n,r;if(t==null)return null;if(n=u(t,15),n.dc())return"";for(r=new _g,e=n.Kc();e.Ob();)yo(r,($i(),jr(e.Pb()))),r.a+=" ";return Yet(r,r.a.length-1)}function eae(t){var e,n,r;if(t==null)return null;if(n=u(t,15),n.dc())return"";for(r=new _g,e=n.Kc();e.Ob();)yo(r,($i(),jr(e.Pb()))),r.a+=" ";return Yet(r,r.a.length-1)}function fdn(t,e,n){var r,s;return r=t.c[e.c.p][e.p],s=t.c[n.c.p][n.p],r.a!=null&&s.a!=null?Bnt(r.a,s.a):r.a!=null?-1:s.a!=null?1:0}function ddn(t,e){var n,r,s,o,h,d;if(e)for(o=e.a.length,n=new Jb(o),d=(n.b-n.a)*n.c<0?(Op(),Mb):new Bp(n);d.Ob();)h=u(d.Pb(),19),s=T8(e,h.a),r=new nzt(t),nnn(r.a,s)}function gdn(t,e){var n,r,s,o,h,d;if(e)for(o=e.a.length,n=new Jb(o),d=(n.b-n.a)*n.c<0?(Op(),Mb):new Bp(n);d.Ob();)h=u(d.Pb(),19),s=T8(e,h.a),r=new W$t(t),enn(r.a,s)}function pdn(t){var e;if(t!=null&&t.length>0&&Ta(t,t.length-1)==33)try{return e=Zae(Bl(t,0,t.length-1)),e.e==null}catch(n){if(n=rs(n),!_t(n,32))throw nt(n)}return!1}function nae(t,e,n){var r,s,o;return r=e.ak(),o=e.dd(),s=r.$j()?Hp(t,3,r,null,o,x7(t,r,o,_t(r,99)&&(u(r,18).Bb&Qa)!=0),!0):Hp(t,1,r,r.zj(),o,-1,!0),n?n.Ei(s):n=s,n}function bdn(){var t,e,n;for(e=0,t=0;t<1;t++){if(n=i5t(($r(t,1),"X".charCodeAt(t))),n==0)throw nt(new Rr("Unknown Option: "+"X".substr(t)));e|=n}return e}function vdn(t,e,n){var r,s,o;switch(r=$a(e),s=Ez(r),o=new Nc,tc(o,e),n.g){case 1:Us(o,HD(Z6(s)));break;case 2:Us(o,Z6(s))}return ee(o,(xe(),zy),ve(K(t,zy))),o}function d4t(t){var e,n;return e=u(Ir(new ar(lr(Uo(t.a).a.Kc(),new H))),17),n=u(Ir(new ar(lr($s(t.a).a.Kc(),new H))),17),Be(Fe(K(e,(ae(),H1))))||Be(Fe(K(n,H1)))}function p4(){p4=X,LV=new kM("ONE_SIDE",0),DV=new kM("TWO_SIDES_CORNER",1),IV=new kM("TWO_SIDES_OPPOSING",2),MV=new kM("THREE_SIDES",3),AV=new kM("FOUR_SIDES",4)}function Sst(t,e,n,r,s){var o,h;o=u($l(Wi(e.Oc(),new PX),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),h=u(u2(t.b,n,r),15),s==0?h.Wc(0,o):h.Gc(o)}function wdn(t,e){var n,r,s,o,h;for(o=new S(e.a);o.a0&&Ase(this,this.c-1,(be(),Hn)),this.c0&&t[0].length>0&&(this.c=Be(Fe(K($a(t[0][0]),(ae(),Y9t))))),this.a=Nt(sme,re,2018,t.length,0,2),this.b=Nt(ame,re,2019,t.length,0,2),this.d=new _re}function Edn(t){return t.c.length==0?!1:(Sn(0,t.c.length),u(t.c[0],17)).c.i.k==(Gn(),ca)?!0:C8(xu(new kn(null,new Tn(t,16)),new lQ),new hQ)}function Tdn(t,e,n){return mr(n,"Tree layout",1),w$(t.b),Ud(t.b,(o7(),vG),vG),Ud(t.b,PS,PS),Ud(t.b,PO,PO),Ud(t.b,FS,FS),t.a=Tq(t.b,e),J2n(t,e,zc(n,1)),or(n),e}function iae(t,e){var n,r,s,o,h,d,w;for(d=gy(e),o=e.f,w=e.g,h=b.Math.sqrt(o*o+w*w),s=0,r=new S(d);r.a=0?(n=eI(t,Nq),r=UD(t,Nq)):(e=zm(t,1),n=eI(e,5e8),r=UD(e,5e8),r=Ra(M0(r,1),Gs(t,1))),A1(M0(r,32),Gs(n,po))}function oae(t,e,n){var r,s;switch(r=(Zn(e.b!=0),u(fh(e,e.a.a),8)),n.g){case 0:r.b=0;break;case 2:r.b=t.f;break;case 3:r.a=0;break;default:r.a=t.g}return s=si(e,0),XM(s,r),e}function cae(t,e,n,r){var s,o,h,d,w;switch(w=t.b,o=e.d,h=o.j,d=S3t(h,w.d[h.g],n),s=Fi(uc(o.n),o.a),o.j.g){case 1:case 3:d.a+=s.a;break;case 2:case 4:d.b+=s.b}ks(r,d,r.c.b,r.c)}function Fdn(t,e,n){var r,s,o,h;for(h=Go(t.e,e,0),o=new Dpt,o.b=n,r=new xa(t.e,h);r.b1;e>>=1)e&1&&(r=t4(r,n)),n.d==1?n=t4(n,n):n=new Iie(zue(n.a,n.d,Nt(Sr,Jr,25,n.d<<1,15,1)));return r=t4(r,n),r}function y4t(){y4t=X;var t,e,n,r;for(x7t=Nt(ga,To,25,25,15,1),k7t=Nt(ga,To,25,33,15,1),r=152587890625e-16,e=32;e>=0;e--)k7t[e]=r,r*=.5;for(n=1,t=24;t>=0;t--)x7t[t]=n,n*=.5}function qdn(t){var e,n;if(Be(Fe(ze(t,(xe(),$y))))){for(n=new ar(lr(V0(t).a.Kc(),new H));Vr(n);)if(e=u(Ir(n),79),uw(e)&&Be(Fe(ze(e,B2))))return!0}return!1}function uae(t,e){var n,r,s;Vs(t.f,e)&&(e.b=t,r=e.c,Go(t.j,r,0)!=-1||ue(t.j,r),s=e.d,Go(t.j,s,0)!=-1||ue(t.j,s),n=e.a.b,n.c.length!=0&&(!t.i&&(t.i=new zie(t)),icn(t.i,n)))}function Hdn(t){var e,n,r,s,o;return n=t.c.d,r=n.j,s=t.d.d,o=s.j,r==o?n.p=0&&un(t.substr(e,3),"GMT")||e>=0&&un(t.substr(e,3),"UTC"))&&(n[0]=e+3),W5t(t,n,r)}function Gdn(t,e){var n,r,s,o,h;for(o=t.g.a,h=t.g.b,r=new S(t.d);r.an;o--)t[o]|=e[o-n-1]>>>h,t[o-1]=e[o-n-1]<=t.f)break;o.c[o.c.length]=n}return o}function k4t(t){var e,n,r,s;for(e=null,s=new S(t.wf());s.a0&&Pc(t.g,e,t.g,e+r,d),h=n.Kc(),t.i+=r,s=0;so&&oen(k,see(n[d],m7t))&&(s=d,o=w);return s>=0&&(r[0]=e+o),s}function Zdn(t,e){var n;if(n=nUt(t.b.Hf(),e.b.Hf()),n!=0)return n;switch(t.b.Hf().g){case 1:case 2:return mu(t.b.sf(),e.b.sf());case 3:case 4:return mu(e.b.sf(),t.b.sf())}return 0}function Jdn(t){var e,n,r;for(r=t.e.c.length,t.a=Zb(Sr,[re,Jr],[48,25],15,[r,r],2),n=new S(t.c);n.a>4&15,o=t[r]&15,h[s++]=RAt[n],h[s++]=RAt[o];return Ih(h,0,h.length)}function n0n(t,e,n){var r,s,o;return r=e.ak(),o=e.dd(),s=r.$j()?Hp(t,4,r,o,null,x7(t,r,o,_t(r,99)&&(u(r,18).Bb&Qa)!=0),!0):Hp(t,r.Kj()?2:1,r,o,r.zj(),-1,!0),n?n.Ei(s):n=s,n}function Lu(t){var e,n;return t>=Qa?(e=OI+(t-Qa>>10&1023)&Ms,n=56320+(t-Qa&1023)&Ms,String.fromCharCode(e)+(""+String.fromCharCode(n))):String.fromCharCode(t&Ms)}function r0n(t,e){Bm();var n,r,s,o;return s=u(u(Pi(t.r,e),21),84),s.gc()>=2?(r=u(s.Kc().Pb(),111),n=t.u.Hc((il(),JS)),o=t.u.Hc(Hx),!r.a&&!n&&(s.gc()==2||o)):!1}function fae(t,e,n,r,s){var o,h,d;for(o=Yce(t,e,n,r,s),d=!1;!o;)sq(t,s,!0),d=!0,o=Yce(t,e,n,r,s);d&&sq(t,s,!1),h=bit(s),h.c.length!=0&&(t.d&&t.d.lg(h),fae(t,s,n,r,h))}function tq(){tq=X,wft=new r_(K0,0),fAt=new r_("DIRECTED",1),gAt=new r_("UNDIRECTED",2),lAt=new r_("ASSOCIATION",3),dAt=new r_("GENERALIZATION",4),hAt=new r_("DEPENDENCY",5)}function i0n(t,e){var n;if(!_1(t))throw nt(new Ho(ode));switch(n=_1(t),e.g){case 1:return-(t.j+t.f);case 2:return t.i-n.g;case 3:return t.j-n.f;case 4:return-(t.i+t.g)}return 0}function h7(t,e){var n,r;for(In(e),r=t.b.c.length,ue(t.b,e);r>0;){if(n=r,r=(r-1)/2|0,t.a.ue(Pe(t.b,r),e)<=0)return lh(t.b,n,e),!0;lh(t.b,n,Pe(t.b,r))}return lh(t.b,r,e),!0}function E4t(t,e,n,r){var s,o;if(s=0,n)s=wz(t.a[n.g][e.g],r);else for(o=0;o=d)}function T4t(t,e,n,r){var s;if(s=!1,ha(r)&&(s=!0,d8(e,n,jr(r))),s||Om(r)&&(s=!0,T4t(t,e,n,r)),s||_t(r,236)&&(s=!0,e2(e,n,u(r,236))),!s)throw nt(new net(w8t))}function a0n(t,e){var n,r,s;if(n=e.Hh(t.a),n&&(s=Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),Rh),s!=null)){for(r=1;r<(Gu(),cLt).length;++r)if(un(cLt[r],s))return r}return 0}function o0n(t,e){var n,r,s;if(n=e.Hh(t.a),n&&(s=Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),Rh),s!=null)){for(r=1;r<(Gu(),uLt).length;++r)if(un(uLt[r],s))return r}return 0}function dae(t,e){var n,r,s,o;if(In(e),o=t.a.gc(),o0?1:0;o.a[s]!=n;)o=o.a[s],s=t.a.ue(n.d,o.d)>0?1:0;o.a[s]=r,r.b=n.b,r.a[0]=n.a[0],r.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function l0n(t){il();var e,n;return e=Ki(tg,ut(ot(VG,1),oe,273,0,[Eb])),!(AD(h$(e,t))>1||(n=Ki(JS,ut(ot(VG,1),oe,273,0,[ZS,Hx])),AD(h$(n,t))>1))}function C4t(t,e){var n;n=jc((Ip(),Xh),t),_t(n,498)?Ao(Xh,t,new IGt(this,e)):Ao(Xh,t,this),Nst(this,e),e==(Zk(),XAt)?(this.wb=u(this,1939),u(e,1941)):this.wb=(zp(),An)}function h0n(t){var e,n,r;if(t==null)return null;for(e=null,n=0;n=Vg?"error":r>=900?"warn":r>=800?"info":"log"),JYt(n,t.a),t.b&&C5t(e,n,t.b,"Exception: ",!0))}function K(t,e){var n,r;return r=(!t.q&&(t.q=new Ar),tr(t.q,e)),r??(n=e.wg(),_t(n,4)&&(n==null?(!t.q&&(t.q=new Ar),G6(t.q,e)):(!t.q&&(t.q=new Ar),Ai(t.q,e,n))),n)}function Ya(){Ya=X,Ld=new xM("P1_CYCLE_BREAKING",0),fb=new xM("P2_LAYERING",1),fu=new xM("P3_NODE_ORDERING",2),Gc=new xM("P4_NODE_PLACEMENT",3),jo=new xM("P5_EDGE_ROUTING",4)}function vae(t,e){var n,r,s,o,h;for(s=e==1?Jut:Zut,r=s.a.ec().Kc();r.Ob();)for(n=u(r.Pb(),103),h=u(Pi(t.f.c,n),21).Kc();h.Ob();)o=u(h.Pb(),46),Eu(t.b.b,o.b),Eu(t.b.a,u(o.b,81).d)}function f0n(t,e){$_();var n;if(t.c==e.c){if(t.b==e.b||Bon(t.b,e.b)){if(n=UYe(t.b)?1:-1,t.a&&!e.a)return n;if(!t.a&&e.a)return-n}return mu(t.b.g,e.b.g)}else return js(t.c,e.c)}function d0n(t,e){var n;mr(e,"Hierarchical port position processing",1),n=t.b,n.c.length>0&&Fue((Sn(0,n.c.length),u(n.c[0],29)),t),n.c.length>1&&Fue(u(Pe(n,n.c.length-1),29),t),or(e)}function wae(t,e){var n,r,s;if(A4t(t,e))return!0;for(r=new S(e);r.a=s||e<0)throw nt(new Co(Yct+e+L2+s));if(n>=s||n<0)throw nt(new Co(Xct+n+L2+s));return e!=n?r=(o=t.Ti(n),t.Hi(e,o),o):r=t.Oi(n),r}function xae(t){var e,n,r;if(r=t,t)for(e=0,n=t.Ug();n;n=n.Ug()){if(++e>uot)return xae(n);if(r=n,n==t)throw nt(new Ho("There is a cycle in the containment hierarchy of "+t))}return r}function Jp(t){var e,n,r;for(r=new l2(Xa,"[","]"),n=t.Kc();n.Ob();)e=n.Pb(),P0(r,Gt(e)===Gt(t)?"(this Collection)":e==null?Mu:Wo(e));return r.a?r.e.length==0?r.a.a:r.a.a+(""+r.e):r.c}function A4t(t,e){var n,r;if(r=!1,e.gc()<2)return!1;for(n=0;nr&&($r(e-1,t.length),t.charCodeAt(e-1)<=32);)--e;return r>0||e1&&(t.j.b+=t.e)):(t.j.a+=n.a,t.j.b=b.Math.max(t.j.b,n.b),t.d.c.length>1&&(t.j.a+=t.e))}function tb(){tb=X,e2e=ut(ot(Za,1),Cc,61,0,[(be(),On),Hn,yr]),t2e=ut(ot(Za,1),Cc,61,0,[Hn,yr,Bn]),n2e=ut(ot(Za,1),Cc,61,0,[yr,Bn,On]),r2e=ut(ot(Za,1),Cc,61,0,[Bn,On,Hn])}function p0n(t,e,n,r){var s,o,h,d,w,k,_;if(h=t.c.d,d=t.d.d,h.j!=d.j)for(_=t.b,s=h.j,w=null;s!=d.j;)w=e==0?kz(s):Qyt(s),o=S3t(s,_.d[s.g],n),k=S3t(w,_.d[w.g],n),ai(r,Fi(o,k)),s=w}function b0n(t,e,n,r){var s,o,h,d,w;return h=Lse(t.a,e,n),d=u(h.a,19).a,o=u(h.b,19).a,r&&(w=u(K(e,(ae(),sl)),10),s=u(K(n,sl),10),w&&s&&(PZt(t.b,w,s),d+=t.b.i,o+=t.b.e)),d>o}function Eae(t){var e,n,r,s,o,h,d,w,k;for(this.a=Zie(t),this.b=new le,n=t,r=0,s=n.length;rhnt(t.d).c?(t.i+=t.g.c,Xit(t.d)):hnt(t.d).c>hnt(t.g).c?(t.e+=t.d.c,Xit(t.g)):(t.i+=tYt(t.g),t.e+=tYt(t.d),Xit(t.g),Xit(t.d))}function m0n(t,e,n){var r,s,o,h;for(o=e.q,h=e.r,new n2((Yf(),vb),e,o,1),new n2(vb,o,h,1),s=new S(n);s.ad&&(w=d/r),s>o&&(k=o/s),h=b.Math.min(w,k),t.a+=h*(e.a-t.a),t.b+=h*(e.b-t.b)}function E0n(t,e,n,r,s){var o,h;for(h=!1,o=u(Pe(n.b,0),33);Rmn(t,e,o,r,s)&&(h=!0,ndn(n,o),n.b.c.length!=0);)o=u(Pe(n.b,0),33);return n.b.c.length==0&&tI(n.j,n),h&&Gz(e.q),h}function T0n(t,e){x4();var n,r,s,o;if(e.b<2)return!1;for(o=si(e,0),n=u(ii(o),8),r=n;o.b!=o.d.c;){if(s=u(ii(o),8),Jst(t,r,s))return!0;r=s}return!!Jst(t,r,n)}function M4t(t,e,n,r){var s,o;return n==0?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),kj(t.o,e,r)):(o=u(wn((s=u(Mn(t,16),26),s||t.zh()),n),66),o.Nj().Rj(t,uu(t),n-Jn(t.zh()),e,r))}function Nst(t,e){var n;e!=t.sb?(n=null,t.sb&&(n=u(t.sb,49).ih(t,1,nA,n)),e&&(n=u(e,49).gh(t,1,nA,n)),n=Vyt(t,e,n),n&&n.Fi()):t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,4,e,e))}function _0n(t,e){var n,r,s,o;if(e)s=R0(e,"x"),n=new J$t(t),N8(n.a,(In(s),s)),o=R0(e,"y"),r=new tzt(t),F8(r.a,(In(o),o));else throw nt(new od("All edge sections need an end point."))}function C0n(t,e){var n,r,s,o;if(e)s=R0(e,"x"),n=new X$t(t),P8(n.a,(In(s),s)),o=R0(e,"y"),r=new Q$t(t),B8(r.a,(In(o),o));else throw nt(new od("All edge sections need a start point."))}function S0n(t,e){var n,r,s,o,h,d,w;for(r=ure(t),o=0,d=r.length;o>22-e,s=t.h<>22-e):e<44?(n=0,r=t.l<>44-e):(n=0,r=0,s=t.l<t)throw nt(new Pn("k must be smaller than n"));return e==0||e==t?1:t==0?0:i4t(t)/(i4t(e)*i4t(t-e))}function D4t(t,e){var n,r,s,o;for(n=new t2t(t);n.g==null&&!n.c?Owt(n):n.g==null||n.i!=0&&u(n.g[n.i-1],47).Ob();)if(o=u(aq(n),56),_t(o,160))for(r=u(o,160),s=0;s>4],e[n*2+1]=uU[o&15];return Ih(e,0,e.length)}function V0n(t){Qj();var e,n,r;switch(r=t.c.length,r){case 0:return uge;case 1:return e=u(doe(new S(t)),42),gtn(e.cd(),e.dd());default:return n=u(P1(t,Nt(I2,Iq,42,t.c.length,0,1)),165),new tet(n)}}function G0n(t){var e,n,r,s,o,h;for(e=new F3,n=new F3,Vp(e,t),Vp(n,t);n.b!=n.c;)for(s=u(P6(n),37),h=new S(s.a);h.a0&&vI(t,n,e),s):Spn(t,e,n)}function Dae(t,e,n){var r,s,o,h;if(e.b!=0){for(r=new cs,h=si(e,0);h.b!=h.d.c;)o=u(ii(h),86),Ka(r,dyt(o)),s=o.e,s.a=u(K(o,(mc(),Dht)),19).a,s.b=u(K(o,Q_t),19).a;Dae(t,r,zc(n,r.b/t.a|0))}}function Iae(t,e){var n,r,s,o,h;if(t.e<=e||Jrn(t,t.g,e))return t.g;for(o=t.r,r=t.g,h=t.r,s=(o-r)/2+r;r+11&&(t.e.b+=t.a)):(t.e.a+=n.a,t.e.b=b.Math.max(t.e.b,n.b),t.d.c.length>1&&(t.e.a+=t.a))}function X0n(t){var e,n,r,s;switch(s=t.i,e=s.b,r=s.j,n=s.g,s.a.g){case 0:n.a=(t.g.b.o.a-r.a)/2;break;case 1:n.a=e.d.n.a+e.d.a.a;break;case 2:n.a=e.d.n.a+e.d.a.a-r.a;break;case 3:n.b=e.d.n.b+e.d.a.b}}function Oae(t,e,n,r,s){if(rr&&(t.a=r),t.bs&&(t.b=s),t}function Q0n(t){if(_t(t,149))return C2n(u(t,149));if(_t(t,229))return Eln(u(t,229));if(_t(t,23))return M0n(u(t,23));throw nt(new Pn(m8t+Jp(new Cl(ut(ot(Qn,1),Me,1,5,[t])))))}function Z0n(t,e,n,r,s){var o,h,d;for(o=!0,h=0;h>>s|n[h+r+1]<>>s,++h}return o}function P4t(t,e,n,r){var s,o,h;if(e.k==(Gn(),ca)){for(o=new ar(lr(Uo(e).a.Kc(),new H));Vr(o);)if(s=u(Ir(o),17),h=s.c.i.k,h==ca&&t.c.a[s.c.i.c.p]==r&&t.c.a[e.c.p]==n)return!0}return!1}function J0n(t,e){var n,r,s,o;return e&=63,n=t.h&W0,e<22?(o=n>>>e,s=t.m>>e|n<<22-e,r=t.l>>e|t.m<<22-e):e<44?(o=0,s=n>>>e-22,r=t.m>>e-22|t.h<<44-e):(o=0,s=0,r=n>>>e-44),cu(r&vl,s&vl,o&W0)}function Nae(t,e,n,r){var s;this.b=r,this.e=t==(Zv(),IS),s=e[n],this.d=Zb(xl,[re,i0],[177,25],16,[s.length,s.length],2),this.a=Zb(Sr,[re,Jr],[48,25],15,[s.length,s.length],2),this.c=new v4t(e,n)}function tgn(t){var e,n,r;for(t.k=new Bwt((be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])).length,t.j.c.length),r=new S(t.j);r.a=n)return d7(t,e,r.p),!0;return!1}function Fae(t){var e;return t.Db&64?Pst(t):(e=new Fl(c8t),!t.a||Yr(Yr((e.a+=' "',e),t.a),'"'),Yr(_v(Yr(_v(Yr(_v(Yr(_v((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function Bae(t,e,n){var r,s,o,h,d;for(d=hu(t.e.Tg(),e),s=u(t.g,119),r=0,h=0;hn?H4t(t,n,"start index"):e<0||e>n?H4t(e,n,"end index"):vC("end index (%s) must not be less than start index (%s)",ut(ot(Qn,1),Me,1,5,[de(e),de(t)]))}function jae(t,e){var n,r,s,o;for(r=0,s=t.length;r0&&$ae(t,o,n));e.p=0}function Xe(t){var e;this.c=new cs,this.f=t.e,this.e=t.d,this.i=t.g,this.d=t.c,this.b=t.b,this.k=t.j,this.a=t.a,t.i?this.j=t.i:this.j=(e=u(Wf(ep),9),new oh(e,u(ff(e,e.length),9),0)),this.g=t.f}function agn(t){var e,n,r,s;for(e=$p(Yr(new Fl("Predicates."),"and"),40),n=!0,s=new h6(t);s.b0?d[h-1]:Nt(o0,Gg,10,0,0,1),s=d[h],k=h=0?t.Bh(s):K4t(t,r);else throw nt(new Pn(cb+r.ne()+WC));else throw nt(new Pn(wde+e+mde));else gh(t,n,r)}function F4t(t){var e,n;if(n=null,e=!1,_t(t,204)&&(e=!0,n=u(t,204).a),e||_t(t,258)&&(e=!0,n=""+u(t,258).a),e||_t(t,483)&&(e=!0,n=""+u(t,483).a),!e)throw nt(new net(w8t));return n}function Vae(t,e){var n,r;if(t.f){for(;e.Ob();)if(n=u(e.Pb(),72),r=n.ak(),_t(r,99)&&u(r,18).Bb&yc&&(!t.e||r.Gj()!=LE||r.aj()!=0)&&n.dd()!=null)return e.Ub(),!0;return!1}else return e.Ob()}function Gae(t,e){var n,r;if(t.f){for(;e.Sb();)if(n=u(e.Ub(),72),r=n.ak(),_t(r,99)&&u(r,18).Bb&yc&&(!t.e||r.Gj()!=LE||r.aj()!=0)&&n.dd()!=null)return e.Pb(),!0;return!1}else return e.Sb()}function B4t(t,e,n){var r,s,o,h,d,w;for(w=hu(t.e.Tg(),e),r=0,d=t.i,s=u(t.g,119),h=0;h1&&(e.c[e.c.length]=o))}function lgn(t){var e,n,r,s;for(n=new cs,Ka(n,t.o),r=new Ipt;n.b!=0;)e=u(n.b==0?null:(Zn(n.b!=0),fh(n,n.a.a)),508),s=The(t,e,!0),s&&ue(r.a,e);for(;r.a.c.length!=0;)e=u(vre(r),508),The(t,e,!1)}function Hg(){Hg=X,bSt=new _6(OC,0),Pa=new _6("BOOLEAN",1),xc=new _6("INT",2),kE=new _6("STRING",3),$o=new _6("DOUBLE",4),ms=new _6("ENUM",5),Rx=new _6("ENUMSET",6),G1=new _6("OBJECT",7)}function hC(t,e){var n,r,s,o,h;r=b.Math.min(t.c,e.c),o=b.Math.min(t.d,e.d),s=b.Math.max(t.c+t.b,e.c+e.b),h=b.Math.max(t.d+t.a,e.d+e.a),s=(s/2|0))for(this.e=r?r.c:null,this.d=s;n++0;)Nwt(this);this.b=e,this.a=null}function dgn(t,e){var n,r;e.a?F2n(t,e):(n=u(bnt(t.b,e.b),57),n&&n==t.a[e.b.f]&&n.a&&n.a!=e.b.a&&n.c.Fc(e.b),r=u(pnt(t.b,e.b),57),r&&t.a[r.f]==e.b&&r.a&&r.a!=e.b.a&&e.b.c.Fc(r),rnt(t.b,e.b))}function Wae(t,e){var n,r;if(n=u(xo(t.b,e),124),u(u(Pi(t.r,e),21),84).dc()){n.n.b=0,n.n.c=0;return}n.n.b=t.C.b,n.n.c=t.C.c,t.A.Hc((Nl(),W2))&&vue(t,e),r=Hhn(t,e),eat(t,e)==(u4(),xb)&&(r+=2*t.w),n.a.a=r}function Kae(t,e){var n,r;if(n=u(xo(t.b,e),124),u(u(Pi(t.r,e),21),84).dc()){n.n.d=0,n.n.a=0;return}n.n.d=t.C.d,n.n.a=t.C.a,t.A.Hc((Nl(),W2))&&wue(t,e),r=Vhn(t,e),eat(t,e)==(u4(),xb)&&(r+=2*t.w),n.a.b=r}function ggn(t,e){var n,r,s,o;for(o=new le,r=new S(e);r.an.a&&(r.Hc((cy(),qO))?s=(e.a-n.a)/2:r.Hc(HO)&&(s=e.a-n.a)),e.b>n.b&&(r.Hc((cy(),GO))?o=(e.b-n.b)/2:r.Hc(VO)&&(o=e.b-n.b)),_4t(t,s,o)}function noe(t,e,n,r,s,o,h,d,w,k,_,M,B){_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),4),tu(t,n),t.f=h,e7(t,d),r7(t,w),t7(t,k),n7(t,_),jg(t,M),i7(t,B),Rg(t,!0),Pg(t,s),t.ok(o),g2(t,e),r!=null&&(t.i=null,ez(t,r))}function roe(t){var e,n;if(t.f){for(;t.n>0;){if(e=u(t.k.Xb(t.n-1),72),n=e.ak(),_t(n,99)&&u(n,18).Bb&yc&&(!t.e||n.Gj()!=LE||n.aj()!=0)&&e.dd()!=null)return!0;--t.n}return!1}else return t.n>0}function H4t(t,e,n){if(t<0)return vC(zhe,ut(ot(Qn,1),Me,1,5,[n,de(t)]));if(e<0)throw nt(new Pn(qhe+e));return vC("%s (%s) must not be greater than size (%s)",ut(ot(Qn,1),Me,1,5,[n,de(t),de(e)]))}function V4t(t,e,n,r,s,o){var h,d,w,k;if(h=r-n,h<7){fln(e,n,r,o);return}if(w=n+s,d=r+s,k=w+(d-w>>1),V4t(e,t,w,k,-s,o),V4t(e,t,k,d,-s,o),o.ue(t[k-1],t[k])<=0){for(;n=0?t.sh(o,n):y5t(t,s,n);else throw nt(new Pn(cb+s.ne()+WC));else throw nt(new Pn(wde+e+mde));else bh(t,r,s,n)}function ioe(t){var e,n,r,s;if(n=u(t,49).qh(),n)try{if(r=null,e=b7((Ip(),Xh),$ue(pln(n))),e&&(s=e.rh(),s&&(r=s.Wk(EKe(n.e)))),r&&r!=t)return ioe(r)}catch(o){if(o=rs(o),!_t(o,60))throw nt(o)}return t}function lu(t,e,n){var r,s,o,h;if(h=e==null?0:t.b.se(e),s=(r=t.a.get(h),r??new Array),s.length==0)t.a.set(h,s);else if(o=yre(t,e,s),o)return o.ed(n);return ls(s,s.length,new RR(e,n)),++t.c,a$(t.b),null}function soe(t,e){var n,r;return w$(t.a),Ud(t.a,(iz(),TG),TG),Ud(t.a,xE,xE),r=new Zs,Ei(r,xE,(_z(),Fht)),Gt(ze(e,(ay(),jht)))!==Gt((RD(),_G))&&Ei(r,xE,Nht),Ei(r,xE,Pht),sUt(t.a,r),n=Tq(t.a,e),n}function aoe(t){if(!t)return Hqt(),wge;var e=t.valueOf?t.valueOf():t;if(e!==t){var n=_ut[typeof e];return n?n(e):Fyt(typeof e)}else return t instanceof Array||t instanceof b.Array?new u6(t):new zk(t)}function ooe(t,e,n){var r,s,o;switch(o=t.o,r=u(xo(t.p,n),244),s=r.i,s.b=uI(r),s.a=cI(r),s.b=b.Math.max(s.b,o.a),s.b>o.a&&!e&&(s.b=o.a),s.c=-(s.b-o.a)/2,n.g){case 1:s.d=-s.a;break;case 3:s.d=o.b}gat(r),pat(r)}function coe(t,e,n){var r,s,o;switch(o=t.o,r=u(xo(t.p,n),244),s=r.i,s.b=uI(r),s.a=cI(r),s.a=b.Math.max(s.a,o.b),s.a>o.b&&!e&&(s.a=o.b),s.d=-(s.a-o.b)/2,n.g){case 4:s.c=-s.b;break;case 2:s.c=o.a}gat(r),pat(r)}function Lgn(t,e){var n,r,s,o,h;if(!e.dc()){if(s=u(e.Xb(0),128),e.gc()==1){Pce(t,s,s,1,0,e);return}for(n=1;n0)try{s=Gl(e,Oa,Ti)}catch(o){throw o=rs(o),_t(o,127)?(r=o,nt(new F$(r))):nt(o)}return n=(!t.a&&(t.a=new Htt(t)),t.a),s=0?u(At(n,s),56):null}function Ogn(t,e){if(t<0)return vC(zhe,ut(ot(Qn,1),Me,1,5,["index",de(t)]));if(e<0)throw nt(new Pn(qhe+e));return vC("%s (%s) must be less than size (%s)",ut(ot(Qn,1),Me,1,5,["index",de(t),de(e)]))}function Ngn(t){var e,n,r,s,o;if(t==null)return Mu;for(o=new l2(Xa,"[","]"),n=t,r=0,s=n.length;r0)for(h=t.c.d,d=t.d.d,s=ld(fa(new Re(d.a,d.b),h),1/(r+1)),o=new Re(h.a,h.b),n=new S(t.a);n.a=0?t._g(n,!0,!0):lw(t,s,!0),153)),u(r,215).ol(e);else throw nt(new Pn(cb+e.ne()+WC))}function Y4t(t){var e,n;return t>-0x800000000000&&t<0x800000000000?t==0?0:(e=t<0,e&&(t=-t),n=Cs(b.Math.floor(b.Math.log(t)/.6931471805599453)),(!e||t!=b.Math.pow(2,n))&&++n,n):Nne(Au(t))}function Wgn(t){var e,n,r,s,o,h,d;for(o=new A0,n=new S(t);n.a2&&d.e.b+d.j.b<=2&&(s=d,r=h),o.a.zc(s,o),s.q=r);return o}function boe(t,e){var n,r,s;return r=new H0(t),Bo(r,e),ee(r,(ae(),VV),e),ee(r,(xe(),ws),(va(),Kc)),ee(r,Md,(Qd(),PG)),C0(r,(Gn(),Is)),n=new Nc,tc(n,r),Us(n,(be(),Bn)),s=new Nc,tc(s,r),Us(s,Hn),r}function voe(t){switch(t.g){case 0:return new ret((Zv(),OO));case 1:return new OB;case 2:return new ett;default:throw nt(new Pn("No implementation is available for the crossing minimizer "+(t.f!=null?t.f:""+t.g)))}}function woe(t,e){var n,r,s,o,h;for(t.c[e.p]=!0,ue(t.a,e),h=new S(e.j);h.a=o)h.$b();else for(s=h.Kc(),r=0;r0?Wpt():h<0&&koe(t,e,-h),!0):!1}function cI(t){var e,n,r,s,o,h,d;if(d=0,t.b==0){for(h=ise(t,!0),e=0,r=h,s=0,o=r.length;s0&&(d+=n,++e);e>1&&(d+=t.c*(e-1))}else d=Qqt(cne(Jj(Wi(qnt(t.a),new fm),new T0)));return d>0?d+t.n.d+t.n.a:0}function uI(t){var e,n,r,s,o,h,d;if(d=0,t.b==0)d=Qqt(cne(Jj(Wi(qnt(t.a),new Mc),new bp)));else{for(h=sse(t,!0),e=0,r=h,s=0,o=r.length;s0&&(d+=n,++e);e>1&&(d+=t.c*(e-1))}return d>0?d+t.n.b+t.n.c:0}function epn(t,e){var n,r,s,o;for(o=u(xo(t.b,e),124),n=o.a,s=u(u(Pi(t.r,e),21),84).Kc();s.Ob();)r=u(s.Pb(),111),r.c&&(n.a=b.Math.max(n.a,Nvt(r.c)));if(n.a>0)switch(e.g){case 2:o.n.c=t.s;break;case 4:o.n.b=t.s}}function npn(t,e){var n,r,s;return n=u(K(e,(n1(),Z7)),19).a-u(K(t,Z7),19).a,n==0?(r=fa(uc(u(K(t,(Up(),dO)),8)),u(K(t,lS),8)),s=fa(uc(u(K(e,dO),8)),u(K(e,lS),8)),js(r.a*r.b,s.a*s.b)):n}function rpn(t,e){var n,r,s;return n=u(K(e,(hw(),EG)),19).a-u(K(t,EG),19).a,n==0?(r=fa(uc(u(K(t,(mc(),FO)),8)),u(K(t,BS),8)),s=fa(uc(u(K(e,FO),8)),u(K(e,BS),8)),js(r.a*r.b,s.a*s.b)):n}function Eoe(t){var e,n;return n=new Ap,n.a+="e_",e=fcn(t),e!=null&&(n.a+=""+e),t.c&&t.d&&(Yr((n.a+=" ",n),Wz(t.c)),Yr(wc((n.a+="[",n),t.c.i),"]"),Yr((n.a+=Bot,n),Wz(t.d)),Yr(wc((n.a+="[",n),t.d.i),"]")),n.a}function Toe(t){switch(t.g){case 0:return new WL;case 1:return new JJ;case 2:return new ZJ;case 3:return new NB;default:throw nt(new Pn("No implementation is available for the layout phase "+(t.f!=null?t.f:""+t.g)))}}function Q4t(t,e,n,r,s){var o;switch(o=0,s.g){case 1:o=b.Math.max(0,e.b+t.b-(n.b+r));break;case 3:o=b.Math.max(0,-t.b-r);break;case 2:o=b.Math.max(0,-t.a-r);break;case 4:o=b.Math.max(0,e.a+t.a-(n.a+r))}return o}function ipn(t,e,n){var r,s,o,h,d;if(n)for(s=n.a.length,r=new Jb(s),d=(r.b-r.a)*r.c<0?(Op(),Mb):new Bp(r);d.Ob();)h=u(d.Pb(),19),o=T8(n,h.a),f8t in o.a||Wct in o.a?pwn(t,o,e):x5n(t,o,e),qXe(u(tr(t.b,s7(o)),79))}function Z4t(t){var e,n;switch(t.b){case-1:return!0;case 0:return n=t.t,n>1||n==-1?(t.b=-1,!0):(e=Oh(t),e&&(so(),e.Cj()==y0e)?(t.b=-1,!0):(t.b=1,!1));default:case 1:return!1}}function spn(t,e){var n,r,s,o,h;for(r=(!e.s&&(e.s=new he(Nu,e,21,17)),e.s),o=null,s=0,h=r.i;s=0&&r=0?t._g(n,!0,!0):lw(t,s,!0),153)),u(r,215).ll(e);throw nt(new Pn(cb+e.ne()+Rct))}function lpn(){gbt();var t;return s5e?u(b7((Ip(),Xh),jh),1939):(oi(I2,new qf),G3n(),t=u(_t(jc((Ip(),Xh),jh),547)?jc(Xh,jh):new lXt,547),s5e=!0,z5n(t),U5n(t),Ai((dbt(),YAt),t,new ZZ),Ao(Xh,jh,t),t)}function hpn(t,e){var n,r,s,o;t.j=-1,Sl(t.e)?(n=t.i,o=t.i!=0,uD(t,e),r=new F0(t.e,3,t.c,null,e,n,o),s=e.Qk(t.e,t.c,null),s=nae(t,e,s),s?(s.Ei(r),s.Fi()):Ci(t.e,r)):(uD(t,e),s=e.Qk(t.e,t.c,null),s&&s.Fi())}function rq(t,e){var n,r,s;if(s=0,r=e[0],r>=t.length)return-1;for(n=($r(r,t.length),t.charCodeAt(r));n>=48&&n<=57&&(s=s*10+(n-48),++r,!(r>=t.length));)n=($r(r,t.length),t.charCodeAt(r));return r>e[0]?e[0]=r:s=-1,s}function fpn(t){var e,n,r,s,o;return s=u(t.a,19).a,o=u(t.b,19).a,n=s,r=o,e=b.Math.max(b.Math.abs(s),b.Math.abs(o)),s<=0&&s==o?(n=0,r=o-1):s==-e&&o!=e?(n=o,r=s,o>=0&&++n):(n=-o,r=s),new ya(de(n),de(r))}function dpn(t,e,n,r){var s,o,h,d,w,k;for(s=0;s=0&&k>=0&&w=t.i)throw nt(new Co(Yct+e+L2+t.i));if(n>=t.i)throw nt(new Co(Xct+n+L2+t.i));return r=t.g[n],e!=n&&(e>16),e=r>>16&16,n=16-e,t=t>>e,r=t-256,e=r>>16&8,n+=e,t<<=e,r=t-yy,e=r>>16&4,n+=e,t<<=e,r=t-vd,e=r>>16&2,n+=e,t<<=e,r=t>>14,e=r&~(r>>1),n+2-e)}function ppn(t){R6();var e,n,r,s;for(nV=new le,Vut=new Ar,Hut=new le,e=(!t.a&&(t.a=new he(ds,t,10,11)),t.a),W4n(e),s=new nr(e);s.e!=s.i.gc();)r=u(dr(s),33),Go(nV,r,0)==-1&&(n=new le,ue(Hut,n),Fie(r,n));return Hut}function bpn(t,e,n){var r,s,o,h;t.a=n.b.d,_t(e,352)?(s=y4(u(e,79),!1,!1),o=sI(s),r=new La(t),_a(o,r),yI(o,s),e.We((di(),s5))!=null&&_a(u(e.We(s5),74),r)):(h=u(e,470),h.Hg(h.Dg()+t.a.a),h.Ig(h.Eg()+t.a.b))}function Coe(t,e){var n,r,s,o,h,d,w,k;for(k=Zt(ve(K(e,(xe(),CS)))),w=t[0].n.a+t[0].o.a+t[0].d.c+k,d=1;d=0?n:(d=A_(fa(new Re(h.c+h.b/2,h.d+h.a/2),new Re(o.c+o.b/2,o.d+o.a/2))),-(Kue(o,h)-1)*d)}function wpn(t,e,n){var r;ys(new kn(null,(!n.a&&(n.a=new he(us,n,6,6)),new Tn(n.a,16))),new lGt(t,e)),ys(new kn(null,(!n.n&&(n.n=new he(Yo,n,1,7)),new Tn(n.n,16))),new hGt(t,e)),r=u(ze(n,(di(),s5)),74),r&&ryt(r,t,e)}function lw(t,e,n){var r,s,o;if(o=T4((Gu(),Sa),t.Tg(),e),o)return so(),u(o,66).Oj()||(o=z6(Mo(Sa,o))),s=(r=t.Yg(o),u(r>=0?t._g(r,!0,!0):lw(t,o,!0),153)),u(s,215).hl(e,n);throw nt(new Pn(cb+e.ne()+Rct))}function t5t(t,e,n,r){var s,o,h,d,w;if(s=t.d[e],s){if(o=s.g,w=s.i,r!=null){for(d=0;d=n&&(r=e,k=(w.c+w.a)/2,h=k-n,w.c<=k-n&&(s=new knt(w.c,h),$m(t,r++,s)),d=k+n,d<=w.a&&(o=new knt(d,w.a),Um(r,t.c.length),WT(t.c,r,o)))}function e5t(t){var e;if(!t.c&&t.g==null)t.d=t.si(t.f),Or(t,t.d),e=t.d;else{if(t.g==null)return!0;if(t.i==0)return!1;e=u(t.g[t.i-1],47)}return e==t.b&&null.km>=null.jm()?(aq(t),e5t(t)):e.Ob()}function kpn(t,e,n){var r,s,o,h,d;if(d=n,!d&&(d=Ivt(new Wk,0)),mr(d,Hfe,1),Kle(t.c,e),h=F3n(t.a,e),h.gc()==1)Mle(u(h.Xb(0),37),d);else for(o=1/h.gc(),s=h.Kc();s.Ob();)r=u(s.Pb(),37),Mle(r,zc(d,o));MKe(t.a,h,e),Fvn(e),or(d)}function Loe(t){if(this.a=t,t.c.i.k==(Gn(),Is))this.c=t.c,this.d=u(K(t.c.i,(ae(),gc)),61);else if(t.d.i.k==Is)this.c=t.d,this.d=u(K(t.d.i,(ae(),gc)),61);else throw nt(new Pn("Edge "+t+" is not an external edge."))}function Moe(t,e){var n,r,s;s=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,s,t.b)),e?e!=t&&(tu(t,e.zb),nit(t,e.d),n=(r=e.c,r??e.zb),iit(t,n==null||un(n,e.zb)?null:n)):(tu(t,null),nit(t,0),iit(t,null))}function Doe(t){var e,n;if(t.f){for(;t.n=h)throw nt(new jm(e,h));return s=n[e],h==1?r=null:(r=Nt(Cft,eut,415,h-1,0,1),Pc(n,0,r,0,e),o=h-e-1,o>0&&Pc(n,e+1,r,e,o)),a7(t,r),toe(t,e,s),s}function sx(){sx=X,Ux=u(At(Kt((nbt(),kc).qb),6),34),Gx=u(At(Kt(kc.qb),3),34),Ift=u(At(Kt(kc.qb),4),34),Oft=u(At(Kt(kc.qb),5),18),Qz(Ux),Qz(Gx),Qz(Ift),Qz(Oft),u5e=new Cl(ut(ot(Nu,1),F4,170,0,[Ux,Gx]))}function Poe(t,e){var n;this.d=new MT,this.b=e,this.e=new So(e.qf()),n=t.u.Hc((il(),tN)),t.u.Hc(tg)?t.D?this.a=n&&!e.If():this.a=!0:t.u.Hc(Eb)?n?this.a=!(e.zf().Kc().Ob()||e.Bf().Kc().Ob()):this.a=!1:this.a=!1}function Foe(t,e){var n,r,s,o;for(n=t.o.a,o=u(u(Pi(t.r,e),21),84).Kc();o.Ob();)s=u(o.Pb(),111),s.e.a=(r=s.b,r.Xe((di(),ml))?r.Hf()==(be(),Bn)?-r.rf().a-Zt(ve(r.We(ml))):n+Zt(ve(r.We(ml))):r.Hf()==(be(),Bn)?-r.rf().a:n)}function Boe(t,e){var n,r,s,o;n=u(K(t,(xe(),Xl)),103),o=u(ze(e,pE),61),s=u(K(t,ws),98),s!=(va(),U1)&&s!=kb?o==(be(),ac)&&(o=J5t(e,n),o==ac&&(o=Z6(n))):(r=Lle(e),r>0?o=Z6(n):o=HD(Z6(n))),Eo(e,pE,o)}function Cpn(t,e){var n,r,s,o,h;for(h=t.j,e.a!=e.b&&aa(h,new W5),s=h.c.length/2|0,r=0;r0&&vI(t,n,e),o):r.a!=null?(vI(t,e,n),-1):s.a!=null?(vI(t,n,e),1):0}function Roe(t,e){var n,r,s,o;t.ej()?(n=t.Vi(),o=t.fj(),++t.j,t.Hi(n,t.oi(n,e)),r=t.Zi(3,null,e,n,o),t.bj()?(s=t.cj(e,null),s?(s.Ei(r),s.Fi()):t.$i(r)):t.$i(r)):(tXt(t,e),t.bj()&&(s=t.cj(e,null),s&&s.Fi()))}function iq(t,e){var n,r,s,o,h;for(h=hu(t.e.Tg(),e),s=new J5,n=u(t.g,119),o=t.i;--o>=0;)r=n[o],h.rl(r.ak())&&Or(s,r);!She(t,s)&&Sl(t.e)&&Uk(t,e.$j()?Hp(t,6,e,(pn(),uo),null,-1,!1):Hp(t,e.Kj()?2:1,e,null,null,-1,!1))}function g7(){g7=X;var t,e;for(Ex=Nt(R4,re,91,32,0,1),oS=Nt(R4,re,91,32,0,1),t=1,e=0;e<=18;e++)Ex[e]=KD(t),oS[e]=KD(M0(t,e)),t=Ia(t,5);for(;eh)||e.q&&(r=e.C,h=r.c.c.a-r.o.a/2,s=r.n.a-n,s>h)))}function Lpn(t,e){var n;mr(e,"Partition preprocessing",1),n=u($l(Wi(ec(Wi(new kn(null,new Tn(t.a,16)),new qY),new aF),new V5),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),ys(n.Oc(),new oF),or(e)}function joe(t){vrt();var e,n,r,s,o,h,d;for(n=new i2,s=new S(t.e.b);s.a1?t.e*=Zt(t.a):t.f/=Zt(t.a),lun(t),phn(t),Qvn(t),ee(t.b,(iC(),eV),t.g)}function Hoe(t,e,n){var r,s,o,h,d,w;for(r=0,w=n,e||(r=n*(t.c.length-1),w*=-1),o=new S(t);o.a=0?(e||(e=new BT,r>0&&yo(e,t.substr(0,r))),e.a+="\\",v8(e,n&Ms)):e&&v8(e,n&Ms);return e?e.a:t}function Rpn(t){var e;if(!t.a)throw nt(new Ho("IDataType class expected for layout option "+t.f));if(e=Uin(t.a),e==null)throw nt(new Ho("Couldn't create new instance of property '"+t.f+"'. "+z1e+(L0(uN),uN.k)+r8t));return u(e,414)}function Ust(t){var e,n,r,s,o;return o=t.eh(),o&&o.kh()&&(s=Xp(t,o),s!=o)?(n=t.Vg(),r=(e=t.Vg(),e>=0?t.Qg(null):t.eh().ih(t,-1-e,null,null)),t.Rg(u(s,49),n),r&&r.Fi(),t.Lg()&&t.Mg()&&n>-1&&Ci(t,new oa(t,9,n,o,s)),s):o}function Koe(t){var e,n,r,s,o,h,d,w;for(h=0,o=t.f.e,r=0;r>5,s>=t.d)return t.e<0;if(n=t.a[s],e=1<<(e&31),t.e<0){if(r=dne(t),s>16)),15).Xc(o),d0&&(!(Pp(t.a.c)&&e.n.d)&&!(a8(t.a.c)&&e.n.b)&&(e.g.d+=b.Math.max(0,r/2-.5)),!(Pp(t.a.c)&&e.n.a)&&!(a8(t.a.c)&&e.n.c)&&(e.g.a-=r-1))}function Qoe(t){var e,n,r,s,o;if(s=new le,o=Vue(t,s),e=u(K(t,(ae(),sl)),10),e)for(r=new S(e.j);r.a>e,o=t.m>>e|n<<22-e,s=t.l>>e|t.m<<22-e):e<44?(h=r?W0:0,o=n>>e-22,s=t.m>>e-22|n<<44-e):(h=r?W0:0,o=r?vl:0,s=n>>e-44),cu(s&vl,o&vl,h&W0)}function Wst(t){var e,n,r,s,o,h;for(this.c=new le,this.d=t,r=bs,s=bs,e=Ns,n=Ns,h=si(t,0);h.b!=h.d.c;)o=u(ii(h),8),r=b.Math.min(r,o.a),s=b.Math.min(s,o.b),e=b.Math.max(e,o.a),n=b.Math.max(n,o.b);this.a=new ch(r,s,e-r,n-s)}function tce(t,e){var n,r,s,o,h,d;for(o=new S(t.b);o.a0&&_t(e,42)&&(t.a.qj(),k=u(e,42),w=k.cd(),o=w==null?0:Ji(w),h=W2t(t.a,o),n=t.a.d[h],n)){for(r=u(n.g,367),_=n.i,d=0;d<_;++d)if(s=r[d],s.Sh()==o&&s.Fb(k))return ece(t,k),!0}return!1}function Gpn(t){var e,n,r,s;for(s=u(Pi(t.a,(p4(),MV)),15).Kc();s.Ob();)r=u(s.Pb(),101),n=(e=N6(r.k),e.Hc((be(),On))?e.Hc(Hn)?e.Hc(yr)?e.Hc(Bn)?null:e2e:r2e:n2e:t2e),b8(t,r,n[0],(Jv(),Sw),0),b8(t,r,n[1],db,1),b8(t,r,n[2],Aw,1)}function Upn(t,e){var n,r;n=ywn(e),wvn(t,e,n),aae(t.a,u(K($a(e.b),(ae(),Ix)),230)),Gwn(t),mdn(t,e),r=Nt(Sr,Jr,25,e.b.j.c.length,15,1),Lat(t,e,(be(),On),r,n),Lat(t,e,Hn,r,n),Lat(t,e,yr,r,n),Lat(t,e,Bn,r,n),t.a=null,t.c=null,t.b=null}function l5t(){l5t=X,OCt=(Tz(),qht),qye=new vn(Vkt,OCt),$ye=new vn(Gkt,(Fn(),!0)),de(-1),Bye=new vn(Ukt,de(-1)),de(-1),Rye=new vn(Wkt,de(-1)),zye=new vn(Kkt,!1),Hye=new vn(Ykt,!0),jye=new vn(Sct,!1),Vye=new vn(Xkt,-1)}function h5t(t,e,n){switch(e){case 7:!t.e&&(t.e=new En(ra,t,7,4)),Tr(t.e),!t.e&&(t.e=new En(ra,t,7,4)),gs(t.e,u(n,14));return;case 8:!t.d&&(t.d=new En(ra,t,8,5)),Tr(t.d),!t.d&&(t.d=new En(ra,t,8,5)),gs(t.d,u(n,14));return}c4t(t,e,n)}function f5t(t,e){var n,r,s,o,h;if(Gt(e)===Gt(t))return!0;if(!_t(e,15)||(h=u(e,15),t.gc()!=h.gc()))return!1;for(o=h.Kc(),r=t.Kc();r.Ob();)if(n=r.Pb(),s=o.Pb(),!(Gt(n)===Gt(s)||n!=null&&Si(n,s)))return!1;return!0}function Wpn(t,e){var n,r,s,o;for(o=u($l(ec(ec(new kn(null,new Tn(e.b,16)),new kL),new JP),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),o.Jc(new EL),n=0,s=o.Kc();s.Ob();)r=u(s.Pb(),11),r.p==-1&&g5t(t,r,n++)}function nce(t){switch(t.g){case 0:return new pT;case 1:return new XJ;case 2:return new YJ;case 3:return new CGt;case 4:return new dYt;default:throw nt(new Pn("No implementation is available for the node placer "+(t.f!=null?t.f:""+t.g)))}}function rce(t){switch(t.g){case 0:return new Gvt;case 1:return new QJ;case 2:return new HJ;case 3:return new VJ;case 4:return new AGt;default:throw nt(new Pn("No implementation is available for the cycle breaker "+(t.f!=null?t.f:""+t.g)))}}function d5t(){d5t=X,Eye=new vn(Rkt,de(0)),Tye=new vn(jkt,0),pCt=(RD(),_G),xye=new vn(Tct,pCt),de(0),yye=new vn(_ct,de(1)),vCt=(cz(),zht),_ye=new vn($kt,vCt),wCt=(N$(),Bht),Cye=new vn(zkt,wCt),bCt=(Vz(),$ht),kye=new vn(qkt,bCt)}function Kpn(t,e,n){var r;r=null,e&&(r=e.d),lC(t,new i8(e.n.a-r.b+n.a,e.n.b-r.d+n.b)),lC(t,new i8(e.n.a-r.b+n.a,e.n.b+e.o.b+r.a+n.b)),lC(t,new i8(e.n.a+e.o.a+r.c+n.a,e.n.b-r.d+n.b)),lC(t,new i8(e.n.a+e.o.a+r.c+n.a,e.n.b+e.o.b+r.a+n.b))}function g5t(t,e,n){var r,s,o;for(e.p=n,o=jp(I1(ut(ot($1,1),Me,20,0,[new sa(e),new Cr(e)])));Vr(o);)r=u(Ir(o),11),r.p==-1&&g5t(t,r,n);if(e.i.k==(Gn(),ca))for(s=new S(e.i.j);s.a=2)for(n=s.Kc(),e=ve(n.Pb());n.Ob();)o=e,e=ve(n.Pb()),r=b.Math.min(r,(In(e),e-(In(o),o)));return r}function Ypn(t,e){var n,r,s,o,h;r=new cs,ks(r,e,r.c.b,r.c);do for(n=(Zn(r.b!=0),u(fh(r,r.a.a),86)),t.b[n.g]=1,o=si(n.d,0);o.b!=o.d.c;)s=u(ii(o),188),h=s.c,t.b[h.g]==1?ai(t.a,s):t.b[h.g]==2?t.b[h.g]=1:ks(r,h,r.c.b,r.c);while(r.b!=0)}function Xpn(t,e){var n,r,s;if(Gt(e)===Gt(Dr(t)))return!0;if(!_t(e,15)||(r=u(e,15),s=t.gc(),s!=r.gc()))return!1;if(_t(r,54)){for(n=0;n0&&(s=n),h=new S(t.f.e);h.a0?(e-=1,n-=1):r>=0&&s<0?(e+=1,n+=1):r>0&&s>=0?(e-=1,n+=1):(e+=1,n-=1),new ya(de(e),de(n))}function gbn(t,e){return t.ce.c?1:t.be.b?1:t.a!=e.a?Ji(t.a)-Ji(e.a):t.d==(B_(),NS)&&e.d==OS?-1:t.d==OS&&e.d==NS?1:0}function oce(t,e){var n,r,s,o,h;return o=e.a,o.c.i==e.b?h=o.d:h=o.c,o.c.i==e.b?r=o.c:r=o.d,s=qln(t.a,h,r),s>0&&s0):s<0&&-s0):!1}function pbn(t,e,n,r){var s,o,h,d,w,k,_,M;for(s=(e-t.d)/t.c.c.length,o=0,t.a+=n,t.d=e,M=new S(t.c);M.a>24;return h}function vbn(t){if(t.pe()){var e=t.c;e.qe()?t.o="["+e.n:e.pe()?t.o="["+e.ne():t.o="[L"+e.ne()+";",t.b=e.me()+"[]",t.k=e.oe()+"[]";return}var n=t.j,r=t.d;r=r.split("/"),t.o=Qit(".",[n,Qit("$",r)]),t.b=Qit(".",[n,Qit(".",r)]),t.k=r[r.length-1]}function wbn(t,e){var n,r,s,o,h;for(h=null,o=new S(t.e.a);o.a=0;e-=2)for(n=0;n<=e;n+=2)(t.b[n]>t.b[n+2]||t.b[n]===t.b[n+2]&&t.b[n+1]>t.b[n+3])&&(r=t.b[n+2],t.b[n+2]=t.b[n],t.b[n]=r,r=t.b[n+3],t.b[n+3]=t.b[n+1],t.b[n+1]=r);t.c=!0}}function cce(t,e){var n,r,s,o,h,d,w,k;for(h=e==1?Jut:Zut,o=h.a.ec().Kc();o.Ob();)for(s=u(o.Pb(),103),w=u(Pi(t.f.c,s),21).Kc();w.Ob();)switch(d=u(w.Pb(),46),r=u(d.b,81),k=u(d.a,189),n=k.c,s.g){case 2:case 1:r.g.d+=n;break;case 4:case 3:r.g.c+=n}}function xbn(t,e){var n,r,s,o,h,d,w,k,_;for(k=-1,_=0,h=t,d=0,w=h.length;d0&&++_;++k}return _}function mf(t){var e,n;return n=new Fl(Mp(t.gm)),n.a+="@",Yr(n,(e=Ji(t)>>>0,e.toString(16))),t.kh()?(n.a+=" (eProxyURI: ",wc(n,t.qh()),t.$g()&&(n.a+=" eClass: ",wc(n,t.$g())),n.a+=")"):t.$g()&&(n.a+=" (eClass: ",wc(n,t.$g()),n.a+=")"),n.a}function pC(t){var e,n,r,s;if(t.e)throw nt(new Ho((L0(Iut),wot+Iut.k+mot)));for(t.d==(fo(),c0)&&Cq(t,Hh),n=new S(t.a.a);n.a>24}return n}function Tbn(t,e,n){var r,s,o;if(s=u(xo(t.i,e),306),!s)if(s=new uee(t.d,e,n),O6(t.i,e,s),T3t(e))$Xe(t.a,e.c,e.b,s);else switch(o=hgn(e),r=u(xo(t.p,o),244),o.g){case 1:case 3:s.j=!0,eet(r,e.b,s);break;case 4:case 2:s.k=!0,eet(r,e.c,s)}return s}function _bn(t,e,n,r){var s,o,h,d,w,k;if(d=new J5,w=hu(t.e.Tg(),e),s=u(t.g,119),so(),u(e,66).Oj())for(h=0;h=0)return s;for(o=1,d=new S(e.j);d.a0&&e.ue((Sn(s-1,t.c.length),u(t.c[s-1],10)),o)>0;)lh(t,s,(Sn(s-1,t.c.length),u(t.c[s-1],10))),--s;Sn(s,t.c.length),t.c[s]=o}n.a=new Ar,n.b=new Ar}function Cbn(t,e,n){var r,s,o,h,d,w,k,_;for(_=(r=u(e.e&&e.e(),9),new oh(r,u(ff(r,r.length),9),0)),w=py(n,"[\\[\\]\\s,]+"),o=w,h=0,d=o.length;h0&&(!(Pp(t.a.c)&&e.n.d)&&!(a8(t.a.c)&&e.n.b)&&(e.g.d-=b.Math.max(0,r/2-.5)),!(Pp(t.a.c)&&e.n.a)&&!(a8(t.a.c)&&e.n.c)&&(e.g.a+=b.Math.max(0,r-1)))}function dce(t,e,n){var r,s;if((t.c-t.b&t.a.length-1)==2)e==(be(),On)||e==Hn?(G$(u(K_(t),15),(Vl(),u0)),G$(u(K_(t),15),yb)):(G$(u(K_(t),15),(Vl(),yb)),G$(u(K_(t),15),u0));else for(s=new M_(t);s.a!=s.b;)r=u(mz(s),15),G$(r,n)}function Abn(t,e){var n,r,s,o,h,d,w;for(s=h8(new gpt(t)),d=new xa(s,s.c.length),o=h8(new gpt(e)),w=new xa(o,o.c.length),h=null;d.b>0&&w.b>0&&(n=(Zn(d.b>0),u(d.a.Xb(d.c=--d.b),33)),r=(Zn(w.b>0),u(w.a.Xb(w.c=--w.b),33)),n==r);)h=n;return h}function pl(t,e){var n,r,s,o,h,d;return o=t.a*got+t.b*1502,d=t.b*got+11,n=b.Math.floor(d*PI),o+=n,d-=n*P6t,o%=P6t,t.a=o,t.b=d,e<=24?b.Math.floor(t.a*x7t[e]):(s=t.a*(1<=2147483648&&(r-=lot),r)}function gce(t,e,n){var r,s,o,h;RQt(t,e)>RQt(t,n)?(r=rc(n,(be(),Hn)),t.d=r.dc()?0:Snt(u(r.Xb(0),11)),h=rc(e,Bn),t.b=h.dc()?0:Snt(u(h.Xb(0),11))):(s=rc(n,(be(),Bn)),t.d=s.dc()?0:Snt(u(s.Xb(0),11)),o=rc(e,Hn),t.b=o.dc()?0:Snt(u(o.Xb(0),11)))}function pce(t){var e,n,r,s,o,h,d;if(t&&(e=t.Hh(jh),e&&(h=jr(Jf((!e.b&&(e.b=new Al((ln(),Ja),pc,e)),e.b),"conversionDelegates")),h!=null))){for(d=new le,r=py(h,"\\w+"),s=0,o=r.length;st.c));h++)s.a>=t.s&&(o<0&&(o=h),d=h);return w=(t.s+t.c)/2,o>=0&&(r=hwn(t,e,o,d),w=yYe((Sn(r,e.c.length),u(e.c[r],329))),xpn(e,r,n)),w}function Xst(){Xst=X,Gye=new ao((di(),jx),1.3),PCt=PSt,qCt=new Mv(15),Zye=new ao(V2,qCt),t3e=new ao(G2,15),Uye=BG,Yye=H2,Xye=o5,Qye=mb,Kye=a5,jCt=YO,Jye=Ky,zCt=(l5t(),qye),RCt=$ye,$Ct=zye,HCt=Hye,FCt=jye,BCt=RG,Wye=BSt,RO=Rye,NCt=Bye,VCt=Vye}function Nr(t,e,n){var r,s,o,h,d,w,k;for(h=(o=new JF,o),Qmt(h,(In(e),e)),k=(!h.b&&(h.b=new Al((ln(),Ja),pc,h)),h.b),w=1;w0&&i3n(this,s)}function v5t(t,e,n,r,s,o){var h,d,w;if(!s[e.b]){for(s[e.b]=!0,h=r,!h&&(h=new C$),ue(h.e,e),w=o[e.b].Kc();w.Ob();)d=u(w.Pb(),282),!(d.d==n||d.c==n)&&(d.c!=e&&v5t(t,d.c,e,h,s,o),d.d!=e&&v5t(t,d.d,e,h,s,o),ue(h.c,d),Rs(h.d,d.b));return h}return null}function Dbn(t){var e,n,r,s,o,h,d;for(e=0,s=new S(t.e);s.a=2}function Ibn(t,e){var n,r,s,o;for(mr(e,"Self-Loop pre-processing",1),r=new S(t.a);r.a1||(e=Ki(Cf,ut(ot(vo,1),oe,93,0,[J0,Sf])),AD(h$(e,t))>1)||(r=Ki(Lf,ut(ot(vo,1),oe,93,0,[l0,Gh])),AD(h$(r,t))>1))}function Pbn(t,e){var n,r,s;return n=e.Hh(t.a),n&&(s=jr(Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),"affiliation")),s!=null)?(r=dj(s,Lu(35)),r==-1?Bit(t,k_(t,zl(e.Hj())),s):r==0?Bit(t,null,s.substr(1)):Bit(t,s.substr(0,r),s.substr(r+1))):null}function Fbn(t){var e,n,r;try{return t==null?Mu:Wo(t)}catch(s){if(s=rs(s),_t(s,102))return e=s,r=Mp(dl(t))+"@"+(n=(qd(),M3t(t)>>>0),n.toString(16)),Thn(Ecn(),(r8(),"Exception during lenientFormat for "+r),e),"<"+r+" threw "+Mp(e.gm)+">";throw nt(s)}}function wce(t){switch(t.g){case 0:return new UJ;case 1:return new DB;case 2:return new yVt;case 3:return new IL;case 4:return new zWt;case 5:return new WJ;default:throw nt(new Pn("No implementation is available for the layerer "+(t.f!=null?t.f:""+t.g)))}}function w5t(t,e,n){var r,s,o;for(o=new S(t.t);o.a0&&(r.b.n-=r.c,r.b.n<=0&&r.b.u>0&&ai(e,r.b));for(s=new S(t.i);s.a0&&(r.a.u-=r.c,r.a.u<=0&&r.a.n>0&&ai(n,r.a))}function aq(t){var e,n,r,s,o;if(t.g==null&&(t.d=t.si(t.f),Or(t,t.d),t.c))return o=t.f,o;if(e=u(t.g[t.i-1],47),s=e.Pb(),t.e=e,n=t.si(s),n.Ob())t.d=n,Or(t,n);else for(t.d=null;!e.Ob()&&(ls(t.g,--t.i,null),t.i!=0);)r=u(t.g[t.i-1],47),e=r;return s}function Bbn(t,e){var n,r,s,o,h,d;if(r=e,s=r.ak(),G0(t.e,s)){if(s.hi()&&k$(t,s,r.dd()))return!1}else for(d=hu(t.e.Tg(),s),n=u(t.g,119),o=0;o1||n>1)return 2;return e+n==1?2:0}function yce(t,e,n){var r,s,o,h,d;for(mr(n,"ELK Force",1),Be(Fe(ze(e,(n1(),lEt))))||u$((r=new rr((Dm(),new Sm(e))),r)),d=Xne(e),c1n(d),zcn(t,u(K(d,uEt),424)),h=ule(t.a,d),o=h.Kc();o.Ob();)s=u(o.Pb(),231),Ewn(t.b,s,zc(n,1/h.gc()));d=khe(h),mhe(d),or(n)}function Vbn(t,e){var n,r,s,o,h;if(mr(e,"Breaking Point Processor",1),l4n(t),Be(Fe(K(t,(xe(),v_t))))){for(s=new S(t.b);s.a=0?t._g(r,!0,!0):lw(t,o,!0),153)),u(s,215).ml(e,n)}else throw nt(new Pn(cb+e.ne()+WC))}function Kbn(t,e){var n,r,s,o,h;for(n=new le,s=ec(new kn(null,new Tn(t,16)),new HQ),o=ec(new kn(null,new Tn(t,16)),new VQ),h=xan(Fsn(Jj(S2n(ut(ot(r6n,1),Me,833,0,[s,o])),new GQ))),r=1;r=2*e&&ue(n,new knt(h[r-1]+e,h[r]-e));return n}function Ybn(t,e,n){mr(n,"Eades radial",1),n.n&&e&&gf(n,pf(e),(Ol(),th)),t.d=u(ze(e,(b_(),$S)),33),t.c=Zt(ve(ze(e,(ay(),SG)))),t.e=ast(u(ze(e,BO),293)),t.a=Aln(u(ze(e,xCt),426)),t.b=X1n(u(ze(e,yCt),340)),M1n(t),n.n&&e&&gf(n,pf(e),(Ol(),th))}function Xbn(t,e,n){var r,s,o,h,d,w,k,_;if(n)for(o=n.a.length,r=new Jb(o),d=(r.b-r.a)*r.c<0?(Op(),Mb):new Bp(r);d.Ob();)h=u(d.Pb(),19),s=T8(n,h.a),s&&(w=Kin(t,(k=(Tv(),_=new Ppt,_),e&&x5t(k,e),k),s),q_(w,O0(s,Cd)),Jz(s,w),G4t(s,w),yit(t,s,w))}function cq(t){var e,n,r,s,o,h;if(!t.j){if(h=new Q9,e=aA,o=e.a.zc(t,e),o==null){for(r=new nr(Po(t));r.e!=r.i.gc();)n=u(dr(r),26),s=cq(n),gs(h,s),Or(h,n);e.a.Bc(t)!=null}ey(h),t.j=new H3((u(At(Kt((zp(),An).o),11),18),h.i),h.g),hl(t).b&=-33}return t.j}function Qbn(t){var e,n,r,s;if(t==null)return null;if(r=Hc(t,!0),s=nO.length,un(r.substr(r.length-s,s),nO)){if(n=r.length,n==4){if(e=($r(0,r.length),r.charCodeAt(0)),e==43)return pLt;if(e==45)return C5e}else if(n==3)return pLt}return new Tpt(r)}function Zbn(t){var e,n,r;return n=t.l,n&n-1||(r=t.m,r&r-1)||(e=t.h,e&e-1)||e==0&&r==0&&n==0?-1:e==0&&r==0&&n!=0?Vmt(n):e==0&&r!=0&&n==0?Vmt(r)+22:e!=0&&r==0&&n==0?Vmt(e)+44:-1}function Jbn(t,e){var n,r,s,o,h;for(mr(e,"Edge joining",1),n=Be(Fe(K(t,(xe(),iht)))),s=new S(t.b);s.a1)for(s=new S(t.a);s.a0),o.a.Xb(o.c=--o.b),Rm(o,s),Zn(o.b3&&Xd(t,0,e-3))}function r2n(t){var e,n,r,s;return Gt(K(t,(xe(),jy)))===Gt(($0(),np))?!t.e&&Gt(K(t,CO))!==Gt((G8(),mO)):(r=u(K(t,Ult),292),s=Be(Fe(K(t,Wlt)))||Gt(K(t,ES))===Gt((K6(),wO)),e=u(K(t,NTt),19).a,n=t.a.c.length,!s&&r!=(G8(),mO)&&(e==0||e>n))}function i2n(t){var e,n;for(n=0;n0);n++);if(n>0&&n0);e++);return e>0&&n>16!=6&&e){if(c7(t,e))throw nt(new Pn(KC+$oe(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?W3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,6,r)),r=G2t(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,6,e,e))}function x5t(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=9&&e){if(c7(t,e))throw nt(new Pn(KC+kue(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Y3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,9,r)),r=U2t(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,9,e,e))}function Zst(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(c7(t,e))throw nt(new Pn(KC+xle(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Q3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,12,r)),r=V2t(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,e,e))}function v7(t){var e,n,r,s,o;if(r=Oh(t),o=t.j,o==null&&r)return t.$j()?null:r.zj();if(_t(r,148)){if(n=r.Aj(),n&&(s=n.Nh(),s!=t.i)){if(e=u(r,148),e.Ej())try{t.g=s.Kh(e,o)}catch(h){if(h=rs(h),_t(h,78))t.g=null;else throw nt(h)}t.i=s}return t.g}return null}function Ece(t){var e;return e=new le,ue(e,new E6(new Re(t.c,t.d),new Re(t.c+t.b,t.d))),ue(e,new E6(new Re(t.c,t.d),new Re(t.c,t.d+t.a))),ue(e,new E6(new Re(t.c+t.b,t.d+t.a),new Re(t.c+t.b,t.d))),ue(e,new E6(new Re(t.c+t.b,t.d+t.a),new Re(t.c,t.d+t.a))),e}function Tce(t,e,n,r){var s,o,h;if(h=s4t(e,n),r.c[r.c.length]=e,t.j[h.p]==-1||t.j[h.p]==2||t.a[e.p])return r;for(t.j[h.p]=-1,o=new ar(lr(z0(h).a.Kc(),new H));Vr(o);)if(s=u(Ir(o),17),!(!(!Wa(s)&&!(!Wa(s)&&s.c.i.c==s.d.i.c))||s==e))return Tce(t,s,h,r);return r}function s2n(t,e,n){var r,s,o;for(o=e.a.ec().Kc();o.Ob();)s=u(o.Pb(),79),r=u(tr(t.b,s),266),!r&&(hs(Zd(s))==hs(Zp(s))?yvn(t,s,n):Zd(s)==hs(Zp(s))?tr(t.c,s)==null&&tr(t.b,Zp(s))!=null&&rhe(t,s,n,!1):tr(t.d,s)==null&&tr(t.b,Zd(s))!=null&&rhe(t,s,n,!0))}function a2n(t,e){var n,r,s,o,h,d,w;for(s=t.Kc();s.Ob();)for(r=u(s.Pb(),10),d=new Nc,tc(d,r),Us(d,(be(),Hn)),ee(d,(ae(),GV),(Fn(),!0)),h=e.Kc();h.Ob();)o=u(h.Pb(),10),w=new Nc,tc(w,o),Us(w,Bn),ee(w,GV,!0),n=new zv,ee(n,GV,!0),Ba(n,d),pa(n,w)}function o2n(t,e,n,r){var s,o,h,d;s=mie(t,e,n),o=mie(t,n,e),h=u(tr(t.c,e),112),d=u(tr(t.c,n),112),sr.b.g&&(o.c[o.c.length]=r);return o}function w7(){w7=X,r5=new CM("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),Bx=new CM("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),qS=new CM("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),zS=new CM("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),HS=new CM("WHOLE_DRAWING",4)}function c2n(t,e){if(_t(e,239))return Run(t,u(e,33));if(_t(e,186))return Qun(t,u(e,118));if(_t(e,354))return lnn(t,u(e,137));if(_t(e,352))return Nmn(t,u(e,79));if(e)return null;throw nt(new Pn(m8t+Jp(new Cl(ut(ot(Qn,1),Me,1,5,[e])))))}function u2n(t){var e,n,r,s,o,h,d;for(o=new cs,s=new S(t.d.a);s.a1)for(e=Iv((n=new Kb,++t.b,n),t.d),d=si(o,0);d.b!=d.d.c;)h=u(ii(d),121),yf(lf(uf(hf(cf(new Sh,1),0),e),h))}function k5t(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=11&&e){if(c7(t,e))throw nt(new Pn(KC+$5t(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Z3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,10,r)),r=tvt(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,11,e,e))}function l2n(t){var e,n,r,s;for(r=new d2(new kg(t.b).a);r.b;)n=Yv(r),s=u(n.cd(),11),e=u(n.dd(),10),ee(e,(ae(),Ii),s),ee(s,sl,e),ee(s,kO,(Fn(),!0)),Us(s,u(K(e,gc),61)),K(e,gc),ee(s.i,(xe(),ws),(va(),SE)),u(K($a(s.i),Wc),21).Fc((go(),lE))}function h2n(t,e,n){var r,s,o,h,d,w;if(o=0,h=0,t.c)for(w=new S(t.d.i.j);w.ao.a?-1:s.aw){for(_=t.d,t.d=Nt($At,A8t,63,2*w+4,0,1),o=0;o=9223372036854776e3?(I8(),Y8t):(s=!1,t<0&&(s=!0,t=-t),r=0,t>=E2&&(r=Cs(t/E2),t-=r*E2),n=0,t>=hx&&(n=Cs(t/hx),t-=n*hx),e=Cs(t),o=cu(e,n,r),s&&mit(o),o)}function x2n(t,e){var n,r,s,o;for(n=!e||!t.u.Hc((il(),tg)),o=0,s=new S(t.e.Cf());s.a=-e&&r==e?new ya(de(n-1),de(r)):new ya(de(n),de(r-1))}function Lce(){return co(),ut(ot(h6n,1),oe,77,0,[HEt,$Et,hS,slt,c9t,gV,TV,eE,a9t,QEt,i9t,tE,o9t,KEt,u9t,NEt,wV,alt,fV,xV,h9t,yV,PEt,s9t,f9t,kV,l9t,dV,GEt,n9t,e9t,_V,REt,hV,bV,BEt,J7,JEt,YEt,r9t,fS,zEt,jEt,t9t,XEt,vV,EV,FEt,mV,ZEt,pV,UEt,VEt,bO,lV,WEt,qEt])}function _2n(t,e,n){t.d=0,t.b=0,e.k==(Gn(),Uc)&&n.k==Uc&&u(K(e,(ae(),Ii)),10)==u(K(n,Ii),10)&&(Urt(e).j==(be(),On)?gce(t,e,n):gce(t,n,e)),e.k==Uc&&n.k==ca?Urt(e).j==(be(),On)?t.d=1:t.b=1:n.k==Uc&&e.k==ca&&(Urt(n).j==(be(),On)?t.b=1:t.d=1),ffn(t,e,n)}function C2n(t){var e,n,r,s,o,h,d,w,k,_,M;return M=x4t(t),e=t.a,w=e!=null,w&&d8(M,"category",t.a),s=fM(new Tm(t.d)),h=!s,h&&(k=new yg,Qf(M,"knownOptions",k),n=new vzt(k),_a(new Tm(t.d),n)),o=fM(t.g),d=!o,d&&(_=new yg,Qf(M,"supportedFeatures",_),r=new wzt(_),_a(t.g,r)),M}function S2n(t){var e,n,r,s,o,h,d,w,k;for(r=!1,e=336,n=0,o=new DWt(t.length),d=t,w=0,k=d.length;w>16!=7&&e){if(c7(t,e))throw nt(new Pn(KC+Fae(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?K3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=u(e,49).gh(t,1,sN,r)),r=Uvt(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,7,e,e))}function Mce(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(c7(t,e))throw nt(new Pn(KC+Gre(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?X3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=u(e,49).gh(t,0,oN,r)),r=Wvt(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,e,e))}function tat(t,e){g7();var n,r,s,o,h,d,w,k,_;return e.d>t.d&&(d=t,t=e,e=d),e.d<63?vvn(t,e):(h=(t.d&-2)<<4,k=amt(t,h),_=amt(e,h),r=bat(t,H6(k,h)),s=bat(e,H6(_,h)),w=tat(k,_),n=tat(r,s),o=tat(bat(k,r),bat(s,_)),o=Tat(Tat(o,w),n),o=H6(o,h),w=H6(w,h<<1),Tat(Tat(w,o),n))}function L2n(t,e,n){var r,s,o,h,d;for(h=Q_(t,n),d=Nt(o0,Gg,10,e.length,0,1),r=0,o=h.Kc();o.Ob();)s=u(o.Pb(),11),Be(Fe(K(s,(ae(),kO))))&&(d[r++]=u(K(s,sl),10));if(r=0;o+=n?1:-1)h=h|e.c.Sf(w,o,n,r&&!Be(Fe(K(e.j,(ae(),Mw))))&&!Be(Fe(K(e.j,(ae(),Y4))))),h=h|e.q._f(w,o,n),h=h|pue(t,w[o],n,r);return Vs(t.c,e),h}function lq(t,e,n){var r,s,o,h,d,w,k,_,M,B;for(_=gZt(t.j),M=0,B=_.length;M1&&(t.a=!0),Gtn(u(n.b,65),Fi(uc(u(e.b,65).c),ld(fa(uc(u(n.b,65).a),u(e.b,65).a),s))),AQt(t,e),Dce(t,n)}function Ice(t){var e,n,r,s,o,h,d;for(o=new S(t.a.a);o.a0&&o>0?h.p=e++:r>0?h.p=n++:o>0?h.p=s++:h.p=n++}pn(),aa(t.j,new CL)}function N2n(t){var e,n;n=null,e=u(Pe(t.g,0),17);do{if(n=e.d.i,ea(n,(ae(),qh)))return u(K(n,qh),11).i;if(n.k!=(Gn(),qs)&&Vr(new ar(lr($s(n).a.Kc(),new H))))e=u(Ir(new ar(lr($s(n).a.Kc(),new H))),17);else if(n.k!=qs)return null}while(n&&n.k!=(Gn(),qs));return n}function P2n(t,e){var n,r,s,o,h,d,w,k,_;for(d=e.j,h=e.g,w=u(Pe(d,d.c.length-1),113),_=(Sn(0,d.c.length),u(d.c[0],113)),k=mst(t,h,w,_),o=1;ok&&(w=n,_=s,k=r);e.a=_,e.c=w}function F2n(t,e){var n,r;if(r=YM(t.b,e.b),!r)throw nt(new Ho("Invalid hitboxes for scanline constraint calculation."));(jne(e.b,u(FQe(t.b,e.b),57))||jne(e.b,u(PQe(t.b,e.b),57)))&&(qd(),e.b+""),t.a[e.b.f]=u(bnt(t.b,e.b),57),n=u(pnt(t.b,e.b),57),n&&(t.a[n.f]=e.b)}function yf(t){if(!t.a.d||!t.a.e)throw nt(new Ho((L0(Wge),Wge.k+" must have a source and target "+(L0(X7t),X7t.k)+" specified.")));if(t.a.d==t.a.e)throw nt(new Ho("Network simplex does not support self-loops: "+t.a+" "+t.a.d+" "+t.a.e));return pj(t.a.d.g,t.a),pj(t.a.e.b,t.a),t.a}function B2n(t,e,n){var r,s,o,h,d,w,k;for(k=new Dp(new b$t(t)),h=ut(ot(Nbe,1),Ufe,11,0,[e,n]),d=0,w=h.length;dw-t.b&&dw-t.a&&d0&&++q;++B}return q}function W2n(t,e){var n,r,s,o,h;for(h=u(K(e,(hw(),rCt)),425),o=si(e.b,0);o.b!=o.d.c;)if(s=u(ii(o),86),t.b[s.g]==0){switch(h.g){case 0:ase(t,s);break;case 1:Ypn(t,s)}t.b[s.g]=2}for(r=si(t.a,0);r.b!=r.d.c;)n=u(ii(r),188),ry(n.b.d,n,!0),ry(n.c.b,n,!0);ee(e,(mc(),X_t),t.a)}function hu(t,e){so();var n,r,s,o;return e?e==($i(),T5e)||(e==f5e||e==K2||e==h5e)&&t!=dLt?new w6t(t,e):(r=u(e,677),n=r.pk(),n||(y8(Mo((Gu(),Sa),e)),n=r.pk()),o=(!n.i&&(n.i=new Ar),n.i),s=u(cc(Fo(o.f,t)),1942),!s&&Ai(o,t,s=new w6t(t,e)),s):c5e}function K2n(t,e){var n,r,s,o,h,d,w,k,_;for(w=u(K(t,(ae(),Ii)),11),k=nc(ut(ot(na,1),re,8,0,[w.i.n,w.n,w.a])).a,_=t.i.n.b,n=pd(t.e),s=n,o=0,h=s.length;o0?o.a?(d=o.b.rf().a,n>d&&(s=(n-d)/2,o.d.b=s,o.d.c=s)):o.d.c=t.s+n:T_(t.u)&&(r=k4t(o.b),r.c<0&&(o.d.b=-r.c),r.c+r.b>o.b.rf().a&&(o.d.c=r.c+r.b-o.b.rf().a))}function Z2n(t,e){var n,r,s,o;for(mr(e,"Semi-Interactive Crossing Minimization Processor",1),n=!1,s=new S(t.b);s.a=0){if(e==n)return new ya(de(-e-1),de(-e-1));if(e==-n)return new ya(de(-e),de(n+1))}return b.Math.abs(e)>b.Math.abs(n)?e<0?new ya(de(-e),de(n)):new ya(de(-e),de(n+1)):new ya(de(e+1),de(n))}function evn(t){var e,n;n=u(K(t,(xe(),du)),163),e=u(K(t,(ae(),P2)),303),n==(ph(),gb)?(ee(t,du,_O),ee(t,P2,(B0(),W4))):n==Fy?(ee(t,du,_O),ee(t,P2,(B0(),Sx))):e==(B0(),W4)?(ee(t,du,gb),ee(t,P2,yO)):e==Sx&&(ee(t,du,Fy),ee(t,P2,yO))}function hq(){hq=X,NO=new MQ,Ome=Ei(new Zs,(Ya(),fu),(co(),fV)),Fme=el(Ei(new Zs,fu,yV),jo,mV),Bme=aw(aw(OR(el(Ei(new Zs,Ld,TV),jo,EV),Gc),kV),_V),Nme=el(Ei(Ei(Ei(new Zs,fb,gV),Gc,bV),Gc,J7),jo,pV),Pme=el(Ei(Ei(new Zs,Gc,J7),Gc,hV),jo,lV)}function bC(){bC=X,$me=Ei(el(new Zs,(Ya(),jo),(co(),UEt)),fu,fV),Vme=aw(aw(OR(el(Ei(new Zs,Ld,TV),jo,EV),Gc),kV),_V),zme=el(Ei(Ei(Ei(new Zs,fb,gV),Gc,bV),Gc,J7),jo,pV),Hme=Ei(Ei(new Zs,fu,yV),jo,mV),qme=el(Ei(Ei(new Zs,Gc,J7),Gc,hV),jo,lV)}function nvn(t,e,n,r,s){var o,h;(!Wa(e)&&e.c.i.c==e.d.i.c||!Wee(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])),n))&&!Wa(e)&&(e.c==s?u8(e.a,0,new So(n)):ai(e.a,new So(n)),r&&!S0(t.a,n)&&(h=u(K(e,(xe(),Oo)),74),h||(h=new ju,ee(e,Oo,h)),o=new So(n),ks(h,o,h.c.b,h.c),Vs(t.a,o)))}function rvn(t){var e,n;for(n=new ar(lr(Uo(t).a.Kc(),new H));Vr(n);)if(e=u(Ir(n),17),e.c.i.k!=(Gn(),Pl))throw nt(new B3($ot+ZD(t)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function ivn(t,e,n){var r,s,o,h,d,w,k;if(s=Qre(t.Db&254),s==0)t.Eb=n;else{if(s==1)d=Nt(Qn,Me,1,2,5,1),o=wst(t,e),o==0?(d[0]=n,d[1]=t.Eb):(d[0]=t.Eb,d[1]=n);else for(d=Nt(Qn,Me,1,s+1,5,1),h=o2(t.Eb),r=2,w=0,k=0;r<=128;r<<=1)r==e?d[k++]=n:t.Db&r&&(d[k++]=h[w++]);t.Eb=d}t.Db|=e}function Nce(t,e,n){var r,s,o,h;for(this.b=new le,s=0,r=0,h=new S(t);h.a0&&(o=u(Pe(this.b,0),167),s+=o.o,r+=o.p),s*=2,r*=2,e>1?s=Cs(b.Math.ceil(s*e)):r=Cs(b.Math.ceil(r/e)),this.a=new p3t(s,r)}function Pce(t,e,n,r,s,o){var h,d,w,k,_,M,B,q,G,W,Z,bt;for(_=r,e.j&&e.o?(q=u(tr(t.f,e.A),57),W=q.d.c+q.d.b,--_):W=e.a.c+e.a.b,M=s,n.q&&n.o?(q=u(tr(t.f,n.C),57),k=q.d.c,++M):k=n.a.c,Z=k-W,w=b.Math.max(2,M-_),d=Z/w,G=W+d,B=_;B=0;h+=s?1:-1){for(d=e[h],w=r==(be(),Hn)?s?rc(d,r):c2(rc(d,r)):s?c2(rc(d,r)):rc(d,r),o&&(t.c[d.p]=w.gc()),M=w.Kc();M.Ob();)_=u(M.Pb(),11),t.d[_.p]=k++;Rs(n,w)}}function Fce(t,e,n){var r,s,o,h,d,w,k,_;for(o=Zt(ve(t.b.Kc().Pb())),k=Zt(ve(dcn(e.b))),r=ld(uc(t.a),k-n),s=ld(uc(e.a),n-o),_=Fi(r,s),ld(_,1/(k-o)),this.a=_,this.b=new le,d=!0,h=t.b.Kc(),h.Pb();h.Ob();)w=Zt(ve(h.Pb())),d&&w-n>yct&&(this.b.Fc(n),d=!1),this.b.Fc(w);d&&this.b.Fc(n)}function svn(t){var e,n,r,s;if(bwn(t,t.n),t.d.c.length>0){for(PT(t.c);o5t(t,u(Q(new S(t.e.a)),121))>5,e&=31,r>=t.d)return t.e<0?(eb(),Aut):(eb(),Y7);if(o=t.d-r,s=Nt(Sr,Jr,25,o+1,15,1),Z0n(s,o,t.a,r,e),t.e<0){for(n=0;n0&&t.a[n]<<32-e){for(n=0;n=0?!1:(n=T4((Gu(),Sa),s,e),n?(r=n.Zj(),(r>1||r==-1)&&$v(Mo(Sa,n))!=3):!0)):!1}function uvn(t,e,n,r){var s,o,h,d,w;return d=Ro(u(At((!e.b&&(e.b=new En(vr,e,4,7)),e.b),0),82)),w=Ro(u(At((!e.c&&(e.c=new En(vr,e,5,8)),e.c),0),82)),hs(d)==hs(w)||Zm(w,d)?null:(h=rD(e),h==n?r:(o=u(tr(t.a,h),10),o&&(s=o.e,s)?s:null))}function lvn(t,e){var n;switch(n=u(K(t,(xe(),ZV)),276),mr(e,"Label side selection ("+n+")",1),n.g){case 0:tce(t,(Vl(),u0));break;case 1:tce(t,(Vl(),yb));break;case 2:ple(t,(Vl(),u0));break;case 3:ple(t,(Vl(),yb));break;case 4:Xce(t,(Vl(),u0));break;case 5:Xce(t,(Vl(),yb))}or(e)}function L5t(t,e,n){var r,s,o,h,d,w;if(r=YKe(n,t.length),h=t[r],h[0].k==(Gn(),Is))for(o=tHt(n,h.length),w=e.j,s=0;s0&&(n[0]+=t.d,h-=n[0]),n[2]>0&&(n[2]+=t.d,h-=n[2]),o=b.Math.max(0,h),n[1]=b.Math.max(n[1],h),cmt(t,iu,s.c+r.b+n[0]-(n[1]-h)/2,n),e==iu&&(t.c.b=o,t.c.c=s.c+r.b+(o-h)/2)}function Wce(){this.c=Nt(ga,To,25,(be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])).length,15,1),this.b=Nt(ga,To,25,ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn]).length,15,1),this.a=Nt(ga,To,25,ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn]).length,15,1),wbt(this.c,bs),wbt(this.b,Ns),wbt(this.a,Ns)}function qc(t,e,n){var r,s,o,h;if(e<=n?(s=e,o=n):(s=n,o=e),r=0,t.b==null)t.b=Nt(Sr,Jr,25,2,15,1),t.b[0]=s,t.b[1]=o,t.c=!0;else{if(r=t.b.length,t.b[r-1]+1==s){t.b[r-1]=o;return}h=Nt(Sr,Jr,25,r+2,15,1),Pc(t.b,0,h,0,r),t.b=h,t.b[r-1]>=s&&(t.c=!1,t.a=!1),t.b[r++]=s,t.b[r]=o,t.c||v4(t)}}function wvn(t,e,n){var r,s,o,h,d,w,k;for(k=e.d,t.a=new Jc(k.c.length),t.c=new Ar,d=new S(k);d.a=0?t._g(k,!1,!0):lw(t,n,!1),58));t:for(o=M.Kc();o.Ob();){for(s=u(o.Pb(),56),_=0;_1;)dy(s,s.i-1);return r}function Evn(t,e){var n,r,s,o,h,d,w;for(mr(e,"Comment post-processing",1),o=new S(t.b);o.at.d[h.p]&&(n+=nmt(t.b,o),Vp(t.a,de(o)));for(;!NT(t.a);)Omt(t.b,u(P6(t.a),19).a)}return n}function Qce(t,e,n){var r,s,o,h;for(o=(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i,s=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));s.e!=s.i.gc();)r=u(dr(s),33),(!r.a&&(r.a=new he(ds,r,10,11)),r.a).i==0||(o+=Qce(t,r,!1));if(n)for(h=hs(e);h;)o+=(!h.a&&(h.a=new he(ds,h,10,11)),h.a).i,h=hs(h);return o}function dy(t,e){var n,r,s,o;return t.ej()?(r=null,s=t.fj(),t.ij()&&(r=t.kj(t.pi(e),null)),n=t.Zi(4,o=nx(t,e),null,e,s),t.bj()&&o!=null&&(r=t.dj(o,r)),r?(r.Ei(n),r.Fi()):t.$i(n),o):(o=nx(t,e),t.bj()&&o!=null&&(r=t.dj(o,null),r&&r.Fi()),o)}function _vn(t){var e,n,r,s,o,h,d,w,k,_;for(k=t.a,e=new Qs,w=0,r=new S(t.d);r.ad.d&&(_=d.d+d.a+k));n.c.d=_,e.a.zc(n,e),w=b.Math.max(w,n.c.d+n.c.a)}return w}function go(){go=X,RV=new Im("COMMENTS",0),yh=new Im("EXTERNAL_PORTS",1),vS=new Im("HYPEREDGES",2),jV=new Im("HYPERNODES",3),lE=new Im("NON_FREE_PORTS",4),U4=new Im("NORTH_SOUTH_PORTS",5),wS=new Im(h1e,6),cE=new Im("CENTER_LABELS",7),uE=new Im("END_LABELS",8),$V=new Im("PARTITIONS",9)}function gy(t){var e,n,r,s,o;for(s=new le,e=new y_((!t.a&&(t.a=new he(ds,t,10,11)),t.a)),r=new ar(lr(V0(t).a.Kc(),new H));Vr(r);)n=u(Ir(r),79),_t(At((!n.b&&(n.b=new En(vr,n,4,7)),n.b),0),186)||(o=Ro(u(At((!n.c&&(n.c=new En(vr,n,5,8)),n.c),0),82)),e.a._b(o)||(s.c[s.c.length]=o));return s}function Cvn(t){var e,n,r,s,o,h;for(o=new Qs,e=new y_((!t.a&&(t.a=new he(ds,t,10,11)),t.a)),s=new ar(lr(V0(t).a.Kc(),new H));Vr(s);)r=u(Ir(s),79),_t(At((!r.b&&(r.b=new En(vr,r,4,7)),r.b),0),186)||(h=Ro(u(At((!r.c&&(r.c=new En(vr,r,5,8)),r.c),0),82)),e.a._b(h)||(n=o.a.zc(h,o),n==null));return o}function Svn(t,e,n,r,s){return r<0?(r=b4(t,s,ut(ot(Le,1),re,2,6,[qat,Hat,Vat,Gat,ux,Uat,Wat,Kat,Yat,Xat,Qat,Zat]),e),r<0&&(r=b4(t,s,ut(ot(Le,1),re,2,6,["Jan","Feb","Mar","Apr",ux,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),r<0?!1:(n.k=r,!0)):r>0?(n.k=r-1,!0):!1}function Avn(t,e,n,r,s){return r<0?(r=b4(t,s,ut(ot(Le,1),re,2,6,[qat,Hat,Vat,Gat,ux,Uat,Wat,Kat,Yat,Xat,Qat,Zat]),e),r<0&&(r=b4(t,s,ut(ot(Le,1),re,2,6,["Jan","Feb","Mar","Apr",ux,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),r<0?!1:(n.k=r,!0)):r>0?(n.k=r-1,!0):!1}function Lvn(t,e,n,r,s,o){var h,d,w,k;if(d=32,r<0){if(e[0]>=t.length||(d=Ta(t,e[0]),d!=43&&d!=45)||(++e[0],r=rq(t,e),r<0))return!1;d==45&&(r=-r)}return d==32&&e[0]-n==2&&s.b==2&&(w=new CR,k=w.q.getFullYear()-ib+ib-80,h=k%100,o.a=r==h,r+=(k/100|0)*100+(r=k&&(w=r);w&&(_=b.Math.max(_,w.a.o.a)),_>B&&(M=k,B=_)}return M}function Ivn(t,e,n){var r,s,o;if(t.e=n,t.d=0,t.b=0,t.f=1,t.i=e,(t.e&16)==16&&(t.i=wwn(t.i)),t.j=t.i.length,mi(t),o=sw(t),t.d!=t.j)throw nt(new Rr(Gr((Fr(),Ode))));if(t.g){for(r=0;rN1e?aa(w,t.b):r<=N1e&&r>P1e?aa(w,t.d):r<=P1e&&r>F1e?aa(w,t.c):r<=F1e&&aa(w,t.a),o=eue(t,w,o);return s}function eb(){eb=X;var t;for(VH=new Og(1,1),Lut=new Og(1,10),Y7=new Og(0,0),Aut=new Og(-1,1),p7t=ut(ot(R4,1),re,91,0,[Y7,VH,new Og(1,2),new Og(1,3),new Og(1,4),new Og(1,5),new Og(1,6),new Og(1,7),new Og(1,8),new Og(1,9),Lut]),GH=Nt(R4,re,91,32,0,1),t=0;t1,d&&(r=new Re(s,n.b),ai(e.a,r)),z_(e.a,ut(ot(na,1),re,8,0,[B,M]))}function aue(t){Sv(t,new y2(Ev(yv(kv(xv(new mg,vH),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new HZ))),we(t,vH,ww,_At),we(t,vH,ky,15),we(t,vH,Hq,de(0)),we(t,vH,px,P7)}function I5t(){I5t=X;var t,e,n,r,s,o;for(lA=Nt(Xu,P4,25,255,15,1),uU=Nt(Eh,wd,25,16,15,1),e=0;e<255;e++)lA[e]=-1;for(n=57;n>=48;n--)lA[n]=n-48<<24>>24;for(r=70;r>=65;r--)lA[r]=r-65+10<<24>>24;for(s=102;s>=97;s--)lA[s]=s-97+10<<24>>24;for(o=0;o<10;o++)uU[o]=48+o&Ms;for(t=10;t<=15;t++)uU[t]=65+t-10&Ms}function dq(t,e,n){var r,s,o,h,d,w,k,_;return d=e.i-t.g/2,w=n.i-t.g/2,k=e.j-t.g/2,_=n.j-t.g/2,o=e.g+t.g/2,h=n.g+t.g/2,r=e.f+t.g/2,s=n.f+t.g/2,d>19)return"-"+oue(W8(t));for(n=t,r="";!(n.l==0&&n.m==0&&n.h==0);){if(s=Prt(Nq),n=l6t(n,s,!0),e=""+mHt(ub),!(n.l==0&&n.m==0&&n.h==0))for(o=9-e.length;o>0;o--)e="0"+e;r=e+r}return r}function Rvn(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var t="__proto__",e=Object.create(null);if(e[t]!==void 0)return!1;var n=Object.getOwnPropertyNames(e);return!(n.length!=0||(e[t]=42,e[t]!==42)||Object.getOwnPropertyNames(e).length==0)}function jvn(t){var e,n,r,s,o,h,d;for(e=!1,n=0,s=new S(t.d.b);s.a=t.a||!m4t(e,n))return-1;if(_8(u(r.Kb(e),20)))return 1;for(s=0,h=u(r.Kb(e),20).Kc();h.Ob();)if(o=u(h.Pb(),17),w=o.c.i==e?o.d.i:o.c.i,d=N5t(t,w,n,r),d==-1||(s=b.Math.max(s,d),s>t.c-1))return-1;return s+1}function cue(t,e){var n,r,s,o,h,d;if(Gt(e)===Gt(t))return!0;if(!_t(e,15)||(r=u(e,15),d=t.gc(),r.gc()!=d))return!1;if(h=r.Kc(),t.ni()){for(n=0;n0){if(t.qj(),e!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return t-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return t-65+10<<24>>24;default:throw nt(new cd("Invalid hexadecimal"))}}function Hvn(t,e,n){var r,s,o,h;for(mr(n,"Processor order nodes",2),t.a=Zt(ve(K(e,(hw(),iCt)))),s=new cs,h=si(e.b,0);h.b!=h.d.c;)o=u(ii(h),86),Be(Fe(K(o,(mc(),Wy))))&&ks(s,o,s.c.b,s.c);r=(Zn(s.b!=0),u(s.a.a.c,86)),Ale(t,r),!n.b&&ait(n,1),j5t(t,r,0-Zt(ve(K(r,(mc(),xG))))/2,0),!n.b&&ait(n,1),or(n)}function gq(){gq=X,K7t=new $3("SPIRAL",0),V7t=new $3("LINE_BY_LINE",1),G7t=new $3("MANHATTAN",2),H7t=new $3("JITTER",3),Put=new $3("QUADRANTS_LINE_BY_LINE",4),W7t=new $3("QUADRANTS_MANHATTAN",5),U7t=new $3("QUADRANTS_JITTER",6),q7t=new $3("COMBINE_LINE_BY_LINE_MANHATTAN",7),z7t=new $3("COMBINE_JITTER_MANHATTAN",8)}function lue(t,e,n,r){var s,o,h,d,w,k;for(w=Tst(t,n),k=Tst(e,n),s=!1;w&&k&&(r||jfn(w,k,n));)h=Tst(w,n),d=Tst(k,n),vD(e),vD(t),o=w.c,Aat(w,!1),Aat(k,!1),n?(oy(e,k.p,o),e.p=k.p,oy(t,w.p+1,o),t.p=w.p):(oy(t,w.p,o),t.p=w.p,oy(e,k.p+1,o),e.p=k.p),Lo(w,null),Lo(k,null),w=h,k=d,s=!0;return s}function Vvn(t,e,n,r){var s,o,h,d,w;for(s=!1,o=!1,d=new S(r.j);d.a=e.length)throw nt(new Co("Greedy SwitchDecider: Free layer not in graph."));this.c=e[t],this.e=new HM(r),lit(this.e,this.c,(be(),Bn)),this.i=new HM(r),lit(this.i,this.c,Hn),this.f=new cYt(this.c),this.a=!o&&s.i&&!s.s&&this.c[0].k==(Gn(),Is),this.a&&ogn(this,t,e.length)}function fue(t,e){var n,r,s,o,h,d;o=!t.B.Hc((bl(),rN)),h=t.B.Hc(mft),t.a=new oie(h,o,t.c),t.n&&Twt(t.a.n,t.n),eet(t.g,(Zf(),iu),t.a),e||(r=new rC(1,o,t.c),r.n.a=t.k,O6(t.p,(be(),On),r),s=new rC(1,o,t.c),s.n.d=t.k,O6(t.p,yr,s),d=new rC(0,o,t.c),d.n.c=t.k,O6(t.p,Bn,d),n=new rC(0,o,t.c),n.n.b=t.k,O6(t.p,Hn,n))}function Uvn(t){var e,n,r;switch(e=u(K(t.d,(xe(),X0)),218),e.g){case 2:n=k5n(t);break;case 3:n=(r=new le,ys(Wi(xu(ec(ec(new kn(null,new Tn(t.d.b,16)),new SX),new AX),new $9),new vX),new Btt(r)),r);break;default:throw nt(new Ho("Compaction not supported for "+e+" edges."))}Vyn(t,n),_a(new Tm(t.g),new Ptt(t))}function Wvn(t,e){var n;return n=new x3,e&&Bo(n,u(tr(t.a,sN),94)),_t(e,470)&&Bo(n,u(tr(t.a,aN),94)),_t(e,354)?(Bo(n,u(tr(t.a,Yo),94)),n):(_t(e,82)&&Bo(n,u(tr(t.a,vr),94)),_t(e,239)?(Bo(n,u(tr(t.a,ds),94)),n):_t(e,186)?(Bo(n,u(tr(t.a,yl),94)),n):(_t(e,352)&&Bo(n,u(tr(t.a,ra),94)),n))}function n1(){n1=X,Z7=new ao((di(),zG),de(1)),sV=new ao(G2,80),rbe=new ao(nAt,5),Kpe=new ao(jx,P7),ebe=new ao(gft,de(1)),nbe=new ao(pft,(Fn(),!0)),hEt=new Mv(50),Jpe=new ao(V2,hEt),cEt=RG,fEt=US,Ype=new ao(sft,!1),lEt=YO,Zpe=mb,Qpe=H2,Xpe=a5,tbe=Ky,uEt=(I4t(),zpe),Wut=Gpe,iV=$pe,Uut=qpe,dEt=Vpe}function Kvn(t){var e,n,r,s,o,h,d,w;for(w=new gJt,d=new S(t.a);d.a0&&e=0)return!1;if(e.p=n.b,ue(n.e,e),s==(Gn(),ca)||s==Uc){for(h=new S(e.j);h.a1||h==-1)&&(o|=16),s.Bb&yc&&(o|=64)),n.Bb&Qa&&(o|=Ay),o|=xf):_t(e,457)?o|=512:(r=e.Bj(),r&&r.i&1&&(o|=256)),t.Bb&512&&(o|=128),o}function vC(t,e){var n,r,s,o,h;for(t=t==null?Mu:(In(t),t),s=0;st.d[d.p]&&(n+=nmt(t.b,o),Vp(t.a,de(o)))):++h;for(n+=t.b.d*h;!NT(t.a);)Omt(t.b,u(P6(t.a),19).a)}return n}function rwn(t,e){var n;return t.f==Dft?(n=$v(Mo((Gu(),Sa),e)),t.e?n==4&&e!=(sx(),Ux)&&e!=(sx(),Gx)&&e!=(sx(),Ift)&&e!=(sx(),Oft):n==2):t.d&&(t.d.Hc(e)||t.d.Hc(z6(Mo((Gu(),Sa),e)))||t.d.Hc(T4((Gu(),Sa),t.b,e)))?!0:t.f&&E5t((Gu(),t.f),ZM(Mo(Sa,e)))?(n=$v(Mo(Sa,e)),t.e?n==4:n==2):!1}function iwn(t,e,n,r){var s,o,h,d,w,k,_,M;return h=u(ze(n,(di(),$x)),8),w=h.a,_=h.b+t,s=b.Math.atan2(_,w),s<0&&(s+=I4),s+=e,s>I4&&(s-=I4),d=u(ze(r,$x),8),k=d.a,M=d.b+t,o=b.Math.atan2(M,k),o<0&&(o+=I4),o+=e,o>I4&&(o-=I4),E1(),vf(1e-10),b.Math.abs(s-o)<=1e-10||s==o||isNaN(s)&&isNaN(o)?0:so?1:Lv(isNaN(s),isNaN(o))}function sat(t){var e,n,r,s,o,h,d;for(d=new Ar,r=new S(t.a.b);r.a=t.o)throw nt(new Ept);d=e>>5,h=e&31,o=M0(1,Mr(M0(h,1))),s?t.n[n][d]=A1(t.n[n][d],o):t.n[n][d]=Gs(t.n[n][d],Avt(o)),o=M0(o,1),r?t.n[n][d]=A1(t.n[n][d],o):t.n[n][d]=Gs(t.n[n][d],Avt(o))}catch(w){throw w=rs(w),_t(w,320)?nt(new Co(Cot+t.o+"*"+t.p+Sot+e+Xa+n+Aot)):nt(w)}}function j5t(t,e,n,r){var s,o,h;e&&(o=Zt(ve(K(e,(mc(),Jg))))+r,h=n+Zt(ve(K(e,xG)))/2,ee(e,Dht,de(Mr(Au(b.Math.round(o))))),ee(e,Q_t,de(Mr(Au(b.Math.round(h))))),e.d.b==0||j5t(t,u(lj((s=si(new Sp(e).a.d,0),new p6(s))),86),n+Zt(ve(K(e,xG)))+t.a,r+Zt(ve(K(e,yE)))),K(e,Mht)!=null&&j5t(t,u(K(e,Mht),86),n,r))}function awn(t,e){var n,r,s,o,h,d,w,k,_,M,B;for(w=$a(e.a),s=Zt(ve(K(w,(xe(),$2))))*2,_=Zt(ve(K(w,J4))),k=b.Math.max(s,_),o=Nt(ga,To,25,e.f-e.c+1,15,1),r=-k,n=0,d=e.b.Kc();d.Ob();)h=u(d.Pb(),10),r+=t.a[h.c.p]+k,o[n++]=r;for(r+=t.a[e.a.c.p]+k,o[n++]=r,B=new S(e.e);B.a0&&(r=(!t.n&&(t.n=new he(Yo,t,1,7)),u(At(t.n,0),137)).a,!r||Yr(Yr((e.a+=' "',e),r),'"'))),Yr(_v(Yr(_v(Yr(_v(Yr(_v((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function kue(t){var e,n,r;return t.Db&64?Pst(t):(e=new Fl(l8t),n=t.k,n?Yr(Yr((e.a+=' "',e),n),'"'):(!t.n&&(t.n=new he(Yo,t,1,7)),t.n.i>0&&(r=(!t.n&&(t.n=new he(Yo,t,1,7)),u(At(t.n,0),137)).a,!r||Yr(Yr((e.a+=' "',e),r),'"'))),Yr(_v(Yr(_v(Yr(_v(Yr(_v((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function oat(t,e){var n,r,s,o,h,d,w;if(e==null||e.length==0)return null;if(s=u(jc(t.a,e),149),!s){for(r=(d=new m1(t.b).a.vc().Kc(),new y1(d));r.a.Ob();)if(n=(o=u(r.a.Pb(),42),u(o.dd(),149)),h=n.c,w=e.length,un(h.substr(h.length-w,w),e)&&(e.length==h.length||Ta(h,h.length-e.length-1)==46)){if(s)return null;s=n}s&&Ao(t.a,e,s)}return s}function uwn(t,e){var n,r,s,o;return n=new Tl,r=u($l(xu(new kn(null,new Tn(t.f,16)),n),Ym(new Yt,new Mi,new bi,new dn,ut(ot(wl,1),oe,132,0,[(N1(),Ly),Yl]))),21),s=r.gc(),r=u($l(xu(new kn(null,new Tn(e.f,16)),n),Ym(new Yt,new Mi,new bi,new dn,ut(ot(wl,1),oe,132,0,[Ly,Yl]))),21),o=r.gc(),ss.p?(Us(o,yr),o.d&&(d=o.o.b,e=o.a.b,o.a.b=d-e)):o.j==yr&&s.p>t.p&&(Us(o,On),o.d&&(d=o.o.b,e=o.a.b,o.a.b=-(d-e)));break}return s}function hwn(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G;if(o=n,n1,d&&(r=new Re(s,n.b),ai(e.a,r)),z_(e.a,ut(ot(na,1),re,8,0,[B,M]))}function cat(t,e,n){var r,s,o,h,d,w;if(e)if(n<=-1){if(r=wn(e.Tg(),-1-n),_t(r,99))return u(r,18);for(h=u(e.ah(r),153),d=0,w=h.gc();d0){for(s=w.length;s>0&&w[s-1]=="";)--s;s=40,h&&kmn(t),Cyn(t),svn(t),n=Wre(t),r=0;n&&r0&&ai(t.f,o)):(t.c[h]-=k+1,t.c[h]<=0&&t.a[h]>0&&ai(t.e,o))))}function Bwn(t){var e,n,r,s,o,h,d,w,k;for(d=new Dp(u(Dr(new zo),62)),k=Ns,n=new S(t.d);n.a=0&&wn?e:n;k<=M;++k)k==n?d=r++:(o=s[k],_=G.rl(o.ak()),k==e&&(w=k==M&&!_?r-1:r),_&&++r);return B=u(tC(t,e,n),72),d!=w&&Uk(t,new gD(t.e,7,h,de(d),q.dd(),w)),B}}else return u(Vst(t,e,n),72);return u(tC(t,e,n),72)}function zwn(t,e){var n,r,s,o,h,d,w;for(mr(e,"Port order processing",1),w=u(K(t,(xe(),c_t)),421),r=new S(t.b);r.a=0&&(d=Vfn(t,h),!(d&&(k<22?w.l|=1<>>1,h.m=_>>>1|(M&1)<<21,h.l=B>>>1|(_&1)<<21,--k;return n&&mit(w),o&&(r?(ub=W8(t),s&&(ub=Pne(ub,(I8(),X8t)))):ub=cu(t.l,t.m,t.h)),w}function Vwn(t,e){var n,r,s,o,h,d,w,k,_,M;for(k=t.e[e.c.p][e.p]+1,w=e.c.a.c.length+1,d=new S(t.a);d.a0&&($r(0,t.length),t.charCodeAt(0)==45||($r(0,t.length),t.charCodeAt(0)==43))?1:0,r=h;rn)throw nt(new cd(vw+t+'"'));return d}function Gwn(t){var e,n,r,s,o,h,d;for(h=new cs,o=new S(t.a);o.a1)&&e==1&&u(t.a[t.b],10).k==(Gn(),Pl)?ox(u(t.a[t.b],10),(Vl(),u0)):r&&(!n||(t.c-t.b&t.a.length-1)>1)&&e==1&&u(t.a[t.c-1&t.a.length-1],10).k==(Gn(),Pl)?ox(u(t.a[t.c-1&t.a.length-1],10),(Vl(),yb)):(t.c-t.b&t.a.length-1)==2?(ox(u(K_(t),10),(Vl(),u0)),ox(u(K_(t),10),yb)):jbn(t,s),tmt(t)}function Kwn(t,e,n){var r,s,o,h,d;for(o=0,s=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));s.e!=s.i.gc();)r=u(dr(s),33),h="",(!r.n&&(r.n=new he(Yo,r,1,7)),r.n).i==0||(h=u(At((!r.n&&(r.n=new he(Yo,r,1,7)),r.n),0),137).a),d=new kit(o++,e,h),Bo(d,r),ee(d,(mc(),jS),r),d.e.b=r.j+r.f/2,d.f.a=b.Math.max(r.g,1),d.e.a=r.i+r.g/2,d.f.b=b.Math.max(r.f,1),ai(e.b,d),lu(n.f,r,d)}function Ywn(t){var e,n,r,s,o;r=u(K(t,(ae(),Ii)),33),o=u(ze(r,(xe(),R2)),174).Hc((Nl(),W2)),t.e||(s=u(K(t,Wc),21),e=new Re(t.f.a+t.d.b+t.d.c,t.f.b+t.d.d+t.d.a),s.Hc((go(),yh))?(Eo(r,ws,(va(),Kc)),gw(r,e.a,e.b,!1,!0)):Be(Fe(ze(r,tht)))||gw(r,e.a,e.b,!0,!0)),o?Eo(r,R2,on(W2)):Eo(r,R2,(n=u(Wf(tA),9),new oh(n,u(ff(n,n.length),9),0)))}function W5t(t,e,n){var r,s,o,h;if(e[0]>=t.length)return n.o=0,!0;switch(Ta(t,e[0])){case 43:s=1;break;case 45:s=-1;break;default:return n.o=0,!0}if(++e[0],o=e[0],h=rq(t,e),h==0&&e[0]==o)return!1;if(e[0]=0&&d!=n&&(o=new oa(t,1,d,h,null),r?r.Ei(o):r=o),n>=0&&(o=new oa(t,1,n,d==n?h:null,e),r?r.Ei(o):r=o)),r}function $ue(t){var e,n,r;if(t.b==null){if(r=new _g,t.i!=null&&(yo(r,t.i),r.a+=":"),t.f&256){for(t.f&256&&t.a!=null&&(hnn(t.i)||(r.a+="//"),yo(r,t.a)),t.d!=null&&(r.a+="/",yo(r,t.d)),t.f&16&&(r.a+="/"),e=0,n=t.j.length;eB?!1:(M=(w=EC(r,B,!1),w.a),_+d+M<=e.b&&(dD(n,o-n.s),n.c=!0,dD(r,o-n.s),YD(r,n.s,n.t+n.d+d),r.k=!0,syt(n.q,r),q=!0,s&&(Y$(e,r),r.j=e,t.c.length>h&&(tI((Sn(h,t.c.length),u(t.c[h],200)),r),(Sn(h,t.c.length),u(t.c[h],200)).a.c.length==0&&Ig(t,h)))),q)}function rmn(t,e){var n,r,s,o,h,d;if(mr(e,"Partition midprocessing",1),s=new Hv,ys(Wi(new kn(null,new Tn(t.a,16)),new $Y),new bv(s)),s.d!=0){for(d=u($l(OQt((o=s.i,new kn(null,(o||(s.i=new K3(s,s.c))).Nc()))),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),r=d.Kc(),n=u(r.Pb(),19);r.Ob();)h=u(r.Pb(),19),a2n(u(Pi(s,n),21),u(Pi(s,h),21)),n=h;or(e)}}function Hue(t,e,n){var r,s,o,h,d,w,k,_;if(e.p==0){for(e.p=1,h=n,h||(s=new le,o=(r=u(Wf(Za),9),new oh(r,u(ff(r,r.length),9),0)),h=new ya(s,o)),u(h.a,15).Fc(e),e.k==(Gn(),Is)&&u(h.b,21).Fc(u(K(e,(ae(),gc)),61)),w=new S(e.j);w.a0){if(s=u(t.Ab.g,1934),e==null){for(o=0;o1)for(r=new S(s);r.an.s&&dd&&(d=s,_.c=Nt(Qn,Me,1,0,5,1)),s==d&&ue(_,new ya(n.c.i,n)));pn(),aa(_,t.c),$m(t.b,w.p,_)}}function umn(t,e){var n,r,s,o,h,d,w,k,_;for(h=new S(e.b);h.ad&&(d=s,_.c=Nt(Qn,Me,1,0,5,1)),s==d&&ue(_,new ya(n.d.i,n)));pn(),aa(_,t.c),$m(t.f,w.p,_)}}function Gue(t){Sv(t,new y2(Ev(yv(kv(xv(new mg,xw),"ELK Box"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges."),new OZ))),we(t,xw,ww,TSt),we(t,xw,ky,15),we(t,xw,jI,de(0)),we(t,xw,gH,Ie(xSt)),we(t,xw,M4,Ie(F3e)),we(t,xw,bx,Ie(B3e)),we(t,xw,px,H1e),we(t,xw,$I,Ie(kSt)),we(t,xw,vx,Ie(ESt)),we(t,xw,i8t,Ie(eft)),we(t,xw,cH,Ie(P3e))}function Uue(t,e){var n,r,s,o,h,d,w,k,_;if(s=t.i,h=s.o.a,o=s.o.b,h<=0&&o<=0)return be(),ac;switch(k=t.n.a,_=t.n.b,d=t.o.a,n=t.o.b,e.g){case 2:case 1:if(k<0)return be(),Bn;if(k+d>h)return be(),Hn;break;case 4:case 3:if(_<0)return be(),On;if(_+n>o)return be(),yr}return w=(k+d/2)/h,r=(_+n/2)/o,w+r<=1&&w-r<=0?(be(),Bn):w+r>=1&&w-r>=0?(be(),Hn):r<.5?(be(),On):(be(),yr)}function lmn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(n=!1,_=Zt(ve(K(e,(xe(),Bw)))),G=rb*_,s=new S(e.b);s.aw+G&&(W=M.g+B.g,B.a=(B.g*B.a+M.g*M.a)/W,B.g=W,M.f=B,n=!0)),o=d,M=B;return n}function Wue(t,e,n,r,s,o,h){var d,w,k,_,M,B;for(B=new S6,k=e.Kc();k.Ob();)for(d=u(k.Pb(),839),M=new S(d.wf());M.a0?d.a?(k=d.b.rf().b,s>k&&(t.v||d.c.d.c.length==1?(h=(s-k)/2,d.d.d=h,d.d.a=h):(n=u(Pe(d.c.d,0),181).rf().b,r=(n-k)/2,d.d.d=b.Math.max(0,r),d.d.a=s-r-k))):d.d.a=t.t+s:T_(t.u)&&(o=k4t(d.b),o.d<0&&(d.d.d=-o.d),o.d+o.a>d.b.rf().b&&(d.d.a=o.d+o.a-d.b.rf().b))}function dmn(t,e){var n;switch(xD(t)){case 6:return ha(e);case 7:return Nm(e);case 8:return Om(e);case 3:return Array.isArray(e)&&(n=xD(e),!(n>=14&&n<=16));case 11:return e!=null&&typeof e===Fat;case 12:return e!=null&&(typeof e===_I||typeof e==Fat);case 0:return sst(e,t.__elementTypeId$);case 2:return Hnt(e)&&e.im!==Ft;case 1:return Hnt(e)&&e.im!==Ft||sst(e,t.__elementTypeId$);default:return!0}}function Kue(t,e){var n,r,s,o;return r=b.Math.min(b.Math.abs(t.c-(e.c+e.b)),b.Math.abs(t.c+t.b-e.c)),o=b.Math.min(b.Math.abs(t.d-(e.d+e.a)),b.Math.abs(t.d+t.a-e.d)),n=b.Math.abs(t.c+t.b/2-(e.c+e.b/2)),n>t.b/2+e.b/2||(s=b.Math.abs(t.d+t.a/2-(e.d+e.a/2)),s>t.a/2+e.a/2)?1:n==0&&s==0?0:n==0?o/s+1:s==0?r/n+1:b.Math.min(r/n,o/s)+1}function Yue(t,e){var n,r,s,o,h,d;return s=Hmt(t),d=Hmt(e),s==d?t.e==e.e&&t.a<54&&e.a<54?t.fe.f?1:0:(r=t.e-e.e,n=(t.d>0?t.d:b.Math.floor((t.a-1)*afe)+1)-(e.d>0?e.d:b.Math.floor((e.a-1)*afe)+1),n>r+1?s:n0&&(h=t4(h,vle(r))),Sie(o,h))):s0&&t.d!=(j_(),Xut)&&(d+=h*(r.d.a+t.a[e.b][r.b]*(e.d.a-r.d.a)/n)),n>0&&t.d!=(j_(),Kut)&&(w+=h*(r.d.b+t.a[e.b][r.b]*(e.d.b-r.d.b)/n)));switch(t.d.g){case 1:return new Re(d/o,e.d.b);case 2:return new Re(e.d.a,w/o);default:return new Re(d/o,w/o)}}function Xue(t,e){Q8();var n,r,s,o,h;if(h=u(K(t.i,(xe(),ws)),98),o=t.j.g-e.j.g,o!=0||!(h==(va(),U2)||h==h0||h==Kc))return 0;if(h==(va(),U2)&&(n=u(K(t,Qg),19),r=u(K(e,Qg),19),n&&r&&(s=n.a-r.a,s!=0)))return s;switch(t.j.g){case 1:return js(t.n.a,e.n.a);case 2:return js(t.n.b,e.n.b);case 3:return js(e.n.a,t.n.a);case 4:return js(e.n.b,t.n.b);default:throw nt(new Ho(dxt))}}function Que(t){var e,n,r,s,o,h;for(n=(!t.a&&(t.a=new Bs(Wh,t,5)),t.a).i+2,h=new Jc(n),ue(h,new Re(t.j,t.k)),ys(new kn(null,(!t.a&&(t.a=new Bs(Wh,t,5)),new Tn(t.a,16))),new G$t(h)),ue(h,new Re(t.b,t.c)),e=1;e0&&(PD(w,!1,(fo(),Hh)),PD(w,!0,_f)),_u(e.g,new qVt(t,n)),Ai(t.g,e,n)}function Jue(){Jue=X;var t;for(i7t=ut(ot(Sr,1),Jr,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),Cut=Nt(Sr,Jr,25,37,15,1),xge=ut(ot(Sr,1),Jr,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),s7t=Nt(Db,cot,25,37,14,1),t=2;t<=36;t++)Cut[t]=Cs(b.Math.pow(t,i7t[t])),s7t[t]=eI(Dq,Cut[t])}function pmn(t){var e;if((!t.a&&(t.a=new he(us,t,6,6)),t.a).i!=1)throw nt(new Pn(cde+(!t.a&&(t.a=new he(us,t,6,6)),t.a).i));return e=new ju,OD(u(At((!t.b&&(t.b=new En(vr,t,4,7)),t.b),0),82))&&Ka(e,Phe(t,OD(u(At((!t.b&&(t.b=new En(vr,t,4,7)),t.b),0),82)),!1)),OD(u(At((!t.c&&(t.c=new En(vr,t,5,8)),t.c),0),82))&&Ka(e,Phe(t,OD(u(At((!t.c&&(t.c=new En(vr,t,5,8)),t.c),0),82)),!0)),e}function tle(t,e){var n,r,s,o,h;for(e.d?s=t.a.c==(gd(),Rw)?Uo(e.b):$s(e.b):s=t.a.c==(gd(),Zg)?Uo(e.b):$s(e.b),o=!1,r=new ar(lr(s.a.Kc(),new H));Vr(r);)if(n=u(Ir(r),17),h=Be(t.a.f[t.a.g[e.b.p].p]),!(!h&&!Wa(n)&&n.c.i.c==n.d.i.c)&&!(Be(t.a.n[t.a.g[e.b.p].p])||Be(t.a.n[t.a.g[e.b.p].p]))&&(o=!0,S0(t.b,t.a.g[_fn(n,e.b).p])))return e.c=!0,e.a=n,e;return e.c=o,e.a=null,e}function bmn(t,e,n,r,s){var o,h,d,w,k,_,M;for(pn(),aa(t,new zZ),d=new xa(t,0),M=new le,o=0;d.bo*2?(_=new U$(M),k=Hu(h)/Ll(h),w=Iat(_,e,new v6,n,r,s,k),Fi(Kf(_.e),w),M.c=Nt(Qn,Me,1,0,5,1),o=0,M.c[M.c.length]=_,M.c[M.c.length]=h,o=Hu(_)*Ll(_)+Hu(h)*Ll(h)):(M.c[M.c.length]=h,o+=Hu(h)*Ll(h));return M}function Y5t(t,e,n){var r,s,o,h,d,w,k;if(r=n.gc(),r==0)return!1;if(t.ej())if(w=t.fj(),l3t(t,e,n),h=r==1?t.Zi(3,null,n.Kc().Pb(),e,w):t.Zi(5,null,n,e,w),t.bj()){for(d=r<100?null:new Lp(r),o=e+r,s=e;s0){for(h=0;h>16==-15&&t.Cb.nh()&&Krt(new Vrt(t.Cb,9,13,n,t.c,$g(fl(u(t.Cb,59)),t))):_t(t.Cb,88)&&t.Db>>16==-23&&t.Cb.nh()&&(e=t.c,_t(e,88)||(e=(ln(),Qh)),_t(n,88)||(n=(ln(),Qh)),Krt(new Vrt(t.Cb,9,10,n,e,$g(Oc(u(t.Cb,26)),t)))))),t.c}function vmn(t,e){var n,r,s,o,h,d,w,k,_,M;for(mr(e,"Hypernodes processing",1),s=new S(t.b);s.an);return s}function nle(t,e){var n,r,s;r=pl(t.d,1)!=0,!Be(Fe(K(e.j,(ae(),Mw))))&&!Be(Fe(K(e.j,Y4)))||Gt(K(e.j,(xe(),pb)))===Gt((j0(),bb))?e.c.Tf(e.e,r):r=Be(Fe(K(e.j,Mw))),pI(t,e,r,!0),Be(Fe(K(e.j,Y4)))&&ee(e.j,Y4,(Fn(),!1)),Be(Fe(K(e.j,Mw)))&&(ee(e.j,Mw,(Fn(),!1)),ee(e.j,Y4,!0)),n=$st(t,e);do{if(eyt(t),n==0)return 0;r=!r,s=n,pI(t,e,r,!1),n=$st(t,e)}while(s>n);return s}function rle(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G;if(e==n)return!0;if(e=s5t(t,e),n=s5t(t,n),r=fst(e),r){if(_=fst(n),_!=r)return _?(w=r.Dj(),G=_.Dj(),w==G&&w!=null):!1;if(h=(!e.d&&(e.d=new Bs(wo,e,1)),e.d),o=h.i,B=(!n.d&&(n.d=new Bs(wo,n,1)),n.d),o==B.i){for(k=0;k0,d=Cz(e,o),C2t(n?d.b:d.g,e),c4(d).c.length==1&&ks(r,d,r.c.b,r.c),s=new ya(o,e),Vp(t.o,s),Eu(t.e.a,o))}function ole(t,e){var n,r,s,o,h,d,w;return r=b.Math.abs(Vj(t.b).a-Vj(e.b).a),d=b.Math.abs(Vj(t.b).b-Vj(e.b).b),s=0,w=0,n=1,h=1,r>t.b.b/2+e.b.b/2&&(s=b.Math.min(b.Math.abs(t.b.c-(e.b.c+e.b.b)),b.Math.abs(t.b.c+t.b.b-e.b.c)),n=1-s/r),d>t.b.a/2+e.b.a/2&&(w=b.Math.min(b.Math.abs(t.b.d-(e.b.d+e.b.a)),b.Math.abs(t.b.d+t.b.a-e.b.d)),h=1-w/d),o=b.Math.min(n,h),(1-o)*b.Math.sqrt(r*r+d*d)}function Emn(t){var e,n,r,s;for(Dat(t,t.e,t.f,(qv(),wb),!0,t.c,t.i),Dat(t,t.e,t.f,wb,!1,t.c,t.i),Dat(t,t.e,t.f,n5,!0,t.c,t.i),Dat(t,t.e,t.f,n5,!1,t.c,t.i),_mn(t,t.c,t.e,t.f,t.i),r=new xa(t.i,0);r.b=65;n--)Y1[n]=n-65<<24>>24;for(r=122;r>=97;r--)Y1[r]=r-97+26<<24>>24;for(s=57;s>=48;s--)Y1[s]=s-48+52<<24>>24;for(Y1[43]=62,Y1[47]=63,o=0;o<=25;o++)op[o]=65+o&Ms;for(h=26,w=0;h<=51;++h,w++)op[h]=97+w&Ms;for(t=52,d=0;t<=61;++t,d++)op[t]=48+d&Ms;op[62]=43,op[63]=47}function Tmn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q;if(t.dc())return new Da;for(k=0,M=0,s=t.Kc();s.Ob();)r=u(s.Pb(),37),o=r.f,k=b.Math.max(k,o.a),M+=o.a*o.b;for(k=b.Math.max(k,b.Math.sqrt(M)*Zt(ve(K(u(t.Kc().Pb(),37),(xe(),UV))))),B=0,q=0,w=0,n=e,d=t.Kc();d.Ob();)h=u(d.Pb(),37),_=h.f,B+_.a>k&&(B=0,q+=w+e,w=0),wC(h,B,q),n=b.Math.max(n,B+_.a),w=b.Math.max(w,_.b),B+=_.a+e;return new Re(n+e,q+w+e)}function _mn(t,e,n,r,s){var o,h,d,w,k,_,M;for(h=new S(e);h.ao)return be(),Hn;break;case 4:case 3:if(w<0)return be(),On;if(w+t.f>s)return be(),yr}return h=(d+t.g/2)/o,n=(w+t.f/2)/s,h+n<=1&&h-n<=0?(be(),Bn):h+n>=1&&h-n>=0?(be(),Hn):n<.5?(be(),On):(be(),yr)}function Cmn(t,e,n,r,s){var o,h;if(o=Ra(Gs(e[0],po),Gs(r[0],po)),t[0]=Mr(o),o=Rp(o,32),n>=s){for(h=1;h0&&(s.b[h++]=0,s.b[h++]=o.b[0]-1),e=1;e0&&(nM(w,w.d-s.d),s.c==(Yf(),vb)&&apt(w,w.a-s.d),w.d<=0&&w.i>0&&ks(e,w,e.c.b,e.c)));for(o=new S(t.f);o.a0&&(xT(d,d.i-s.d),s.c==(Yf(),vb)&&gv(d,d.b-s.d),d.i<=0&&d.d>0&&ks(n,d,n.c.b,n.c)))}function Smn(t,e,n){var r,s,o,h,d,w,k,_;for(mr(n,"Processor compute fanout",1),nl(t.b),nl(t.a),d=null,o=si(e.b,0);!d&&o.b!=o.d.c;)k=u(ii(o),86),Be(Fe(K(k,(mc(),Wy))))&&(d=k);for(w=new cs,ks(w,d,w.c.b,w.c),whe(t,w),_=si(e.b,0);_.b!=_.d.c;)k=u(ii(_),86),h=jr(K(k,(mc(),RS))),s=jc(t.b,h)!=null?u(jc(t.b,h),19).a:0,ee(k,mG,de(s)),r=1+(jc(t.a,h)!=null?u(jc(t.a,h),19).a:0),ee(k,Xme,de(r));or(n)}function Amn(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G;for(B=hdn(t,n),w=0;w0),r.a.Xb(r.c=--r.b),M>B+w&&Dl(r);for(h=new S(q);h.a0),r.a.Xb(r.c=--r.b)}}function Lmn(){yi();var t,e,n,r,s,o;if(Pft)return Pft;for(t=new jl(4),vy(t,nb(dut,!0)),CC(t,nb("M",!0)),CC(t,nb("C",!0)),o=new jl(4),r=0;r<11;r++)qc(o,r,r);return e=new jl(4),vy(e,nb("M",!0)),qc(e,4448,4607),qc(e,65438,65439),s=new l_(2),x2(s,t),x2(s,fA),n=new l_(2),n.$l(Bj(o,nb("L",!0))),n.$l(e),n=new Wm(3,n),n=new uwt(s,n),Pft=n,Pft}function Mmn(t){var e,n;if(e=jr(ze(t,(di(),GS))),!Ene(e,t)&&!s2(t,EE)&&((!t.a&&(t.a=new he(ds,t,10,11)),t.a).i!=0||Be(Fe(ze(t,WO)))))if(e==null||uy(e).length==0){if(!Ene(Un,t))throw n=Yr(Yr(new Fl("Unable to load default layout algorithm "),Un)," for unconfigured node "),_q(t,n),nt(new B3(n.a))}else throw n=Yr(Yr(new Fl("Layout algorithm '"),e),"' not found for "),_q(t,n),nt(new B3(n.a))}function gat(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;if(n=t.i,e=t.n,t.b==0)for(q=n.c+e.b,B=n.b-e.b-e.c,h=t.a,w=0,_=h.length;w<_;++w)s=h[w],jj(s,q,B);else r=sse(t,!1),jj(t.a[0],n.c+e.b,r[0]),jj(t.a[2],n.c+n.b-e.c-r[2],r[2]),M=n.b-e.b-e.c,r[0]>0&&(M-=r[0]+t.c,r[0]+=t.c),r[2]>0&&(M-=r[2]+t.c),r[1]=b.Math.max(r[1],M),jj(t.a[1],n.c+e.b+r[0]-(r[1]-M)/2,r[1]);for(o=t.a,d=0,k=o.length;d0?(t.n.c.length-1)*t.i:0,r=new S(t.n);r.a1)for(r=si(s,0);r.b!=r.d.c;)for(n=u(ii(r),231),o=0,w=new S(n.e);w.a0&&(e[0]+=t.c,M-=e[0]),e[2]>0&&(M-=e[2]+t.c),e[1]=b.Math.max(e[1],M),$j(t.a[1],r.d+n.d+e[0]-(e[1]-M)/2,e[1]);else for(G=r.d+n.d,q=r.a-n.d-n.a,h=t.a,w=0,_=h.length;w<_;++w)s=h[w],$j(s,G,q);for(o=t.a,d=0,k=o.length;d=0&&o!=n))throw nt(new Pn(XI));for(s=0,w=0;w0||rw(s.b.d,t.b.d+t.b.a)==0&&r.b<0||rw(s.b.d+s.b.a,t.b.d)==0&&r.b>0){d=0;break}}else d=b.Math.min(d,hoe(t,s,r));d=b.Math.min(d,hle(t,o,d,r))}return d}function yI(t,e){var n,r,s,o,h,d,w;if(t.b<2)throw nt(new Pn("The vector chain must contain at least a source and a target point."));for(s=(Zn(t.b!=0),u(t.a.a.c,8)),oj(e,s.a,s.b),w=new A6((!e.a&&(e.a=new Bs(Wh,e,5)),e.a)),h=si(t,1);h.aZt(T1(h.g,h.d[0]).a)?(Zn(w.b>0),w.a.Xb(w.c=--w.b),Rm(w,h),s=!0):d.e&&d.e.gc()>0&&(o=(!d.e&&(d.e=new le),d.e).Mc(e),k=(!d.e&&(d.e=new le),d.e).Mc(n),(o||k)&&((!d.e&&(d.e=new le),d.e).Fc(h),++h.c));s||(r.c[r.c.length]=h)}function gle(t){var e,n,r;if(V3(u(K(t,(xe(),ws)),98)))for(n=new S(t.j);n.a>>0,"0"+e.toString(16)),r="\\x"+Bl(n,n.length-2,n.length)):t>=Qa?(n=(e=t>>>0,"0"+e.toString(16)),r="\\v"+Bl(n,n.length-6,n.length)):r=""+String.fromCharCode(t&Ms)}return r}function bat(t,e){var n,r,s,o,h,d,w,k,_,M;if(h=t.e,w=e.e,w==0)return t;if(h==0)return e.e==0?e:new Y3(-e.e,e.d,e.a);if(o=t.d,d=e.d,o+d==2)return n=Gs(t.a[0],po),r=Gs(e.a[0],po),h<0&&(n=D8(n)),w<0&&(r=D8(r)),KD(Qp(n,r));if(s=o!=d?o>d?1:-1:Iyt(t.a,e.a,o),s==-1)M=-w,_=h==w?Rrt(e.a,d,t.a,o):$rt(e.a,d,t.a,o);else if(M=h,h==w){if(s==0)return eb(),Y7;_=Rrt(t.a,o,e.a,d)}else _=$rt(t.a,o,e.a,d);return k=new Y3(M,_.length,_),O_(k),k}function n6t(t){var e,n,r,s,o,h;for(this.e=new le,this.a=new le,n=t.b-1;n<3;n++)u8(t,0,u(e1(t,0),8));if(t.b<4)throw nt(new Pn("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,kbn(this,t.b+this.b-1),h=new le,o=new S(this.e),e=0;e=e.o&&n.f<=e.f||e.a*.5<=n.f&&e.a*1.5>=n.f){if(h=u(Pe(e.n,e.n.c.length-1),211),h.e+h.d+n.g+s<=r&&(o=u(Pe(e.n,e.n.c.length-1),211),o.f-t.f+n.f<=t.b||t.a.c.length==1))return e3t(e,n),!0;if(e.s+n.g<=r&&(e.t+e.d+n.f+s<=t.b||t.a.c.length==1))return ue(e.b,n),d=u(Pe(e.n,e.n.c.length-1),211),ue(e.n,new f$(e.s,d.f+d.a+e.i,e.i)),B3t(u(Pe(e.n,e.n.c.length-1),211),n),cle(e,n),!0}return!1}function ble(t,e,n){var r,s,o,h;return t.ej()?(s=null,o=t.fj(),r=t.Zi(1,h=Xrt(t,e,n),n,e,o),t.bj()&&!(t.ni()&&h!=null?Si(h,n):Gt(h)===Gt(n))?(h!=null&&(s=t.dj(h,s)),s=t.cj(n,s),t.ij()&&(s=t.lj(h,n,s)),s?(s.Ei(r),s.Fi()):t.$i(r)):(t.ij()&&(s=t.lj(h,n,s)),s?(s.Ei(r),s.Fi()):t.$i(r)),h):(h=Xrt(t,e,n),t.bj()&&!(t.ni()&&h!=null?Si(h,n):Gt(h)===Gt(n))&&(s=null,h!=null&&(s=t.dj(h,null)),s=t.cj(n,s),s&&s.Fi()),h)}function yC(t,e){var n,r,s,o,h,d,w,k;e%=24,t.q.getHours()!=e&&(r=new b.Date(t.q.getTime()),r.setDate(r.getDate()+1),d=t.q.getTimezoneOffset()-r.getTimezoneOffset(),d>0&&(w=d/60|0,k=d%60,s=t.q.getDate(),n=t.q.getHours(),n+w>=24&&++s,o=new b.Date(t.q.getFullYear(),t.q.getMonth(),s,e+w,t.q.getMinutes()+k,t.q.getSeconds(),t.q.getMilliseconds()),t.q.setTime(o.getTime()))),h=t.q.getTime(),t.q.setTime(h+36e5),t.q.getHours()!=e&&t.q.setTime(h)}function jmn(t,e){var n,r,s,o,h;if(mr(e,"Path-Like Graph Wrapping",1),t.b.c.length==0){or(e);return}if(s=new u5t(t),h=(s.i==null&&(s.i=nyt(s,new OF)),Zt(s.i)*s.f),n=h/(s.i==null&&(s.i=nyt(s,new OF)),Zt(s.i)),s.b>n){or(e);return}switch(u(K(t,(xe(),sht)),337).g){case 2:o=new PF;break;case 0:o=new IF;break;default:o=new FF}if(r=o.Vf(t,s),!o.Wf())switch(u(K(t,aG),338).g){case 2:r=foe(s,r);break;case 1:r=hae(s,r)}Fyn(t,s,r),or(e)}function $mn(t,e){var n,r,s,o;if(Trn(t.d,t.e),t.c.a.$b(),Zt(ve(K(e.j,(xe(),YV))))!=0||Zt(ve(K(e.j,YV)))!=0)for(n=N7,Gt(K(e.j,pb))!==Gt((j0(),bb))&&ee(e.j,(ae(),Mw),(Fn(),!0)),o=u(K(e.j,SS),19).a,s=0;ss&&++k,ue(h,(Sn(d+k,e.c.length),u(e.c[d+k],19))),w+=(Sn(d+k,e.c.length),u(e.c[d+k],19)).a-r,++n;n1&&(w>Hu(d)*Ll(d)/2||h.b==0)&&(M=new U$(B),_=Hu(d)/Ll(d),k=Iat(M,e,new v6,n,r,s,_),Fi(Kf(M.e),k),d=M,q.c[q.c.length]=M,w=0,B.c=Nt(Qn,Me,1,0,5,1)));return Rs(q,B),q}function Hmn(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W;if(n.mh(e)&&(_=(q=e,q?u(r,49).xh(q):null),_))if(W=n.bh(e,t.a),G=e.t,G>1||G==-1)if(M=u(W,69),B=u(_,69),M.dc())B.$b();else for(h=!!oo(e),o=0,d=t.a?M.Kc():M.Zh();d.Ob();)k=u(d.Pb(),56),s=u(Wv(t,k),56),s?(h?(w=B.Xc(s),w==-1?B.Xh(o,s):o!=w&&B.ji(o,s)):B.Xh(o,s),++o):t.b&&!h&&(B.Xh(o,k),++o);else W==null?_.Wb(null):(s=Wv(t,W),s==null?t.b&&!oo(e)&&_.Wb(W):_.Wb(s))}function Vmn(t,e){var n,r,s,o,h,d,w,k;for(n=new SY,s=new ar(lr(Uo(e).a.Kc(),new H));Vr(s);)if(r=u(Ir(s),17),!Wa(r)&&(d=r.c.i,m4t(d,uV))){if(k=N5t(t,d,uV,cV),k==-1)continue;n.b=b.Math.max(n.b,k),!n.a&&(n.a=new le),ue(n.a,d)}for(h=new ar(lr($s(e).a.Kc(),new H));Vr(h);)if(o=u(Ir(h),17),!Wa(o)&&(w=o.d.i,m4t(w,cV))){if(k=N5t(t,w,cV,uV),k==-1)continue;n.d=b.Math.max(n.d,k),!n.c&&(n.c=new le),ue(n.c,w)}return n}function vle(t){g7();var e,n,r,s;if(e=Cs(t),t1e6)throw nt(new pR("power of ten too big"));if(t<=Ti)return H6(hI(Ex[1],e),e);for(r=hI(Ex[1],Ti),s=r,n=Au(t-Ti),e=Cs(t%Ti);_c(n,Ti)>0;)s=t4(s,r),n=Qp(n,Ti);for(s=t4(s,hI(Ex[1],e)),s=H6(s,Ti),n=Au(t-Ti);_c(n,Ti)>0;)s=H6(s,Ti),n=Qp(n,Ti);return s=H6(s,e),s}function Gmn(t,e){var n,r,s,o,h,d,w,k,_;for(mr(e,"Hierarchical port dummy size processing",1),w=new le,_=new le,r=Zt(ve(K(t,(xe(),Z4)))),n=r*2,o=new S(t.b);o.ak&&r>k)_=d,k=Zt(e.p[d.p])+Zt(e.d[d.p])+d.o.b+d.d.a;else{s=!1,n.n&&Qb(n,"bk node placement breaks on "+d+" which should have been after "+_);break}if(!s)break}return n.n&&Qb(n,e+" is feasible: "+s),s}function Xmn(t,e,n,r){var s,o,h,d,w,k,_;for(d=-1,_=new S(t);_.a<_.c.c.length;)k=u(Q(_),112),k.g=d--,s=Mr(m$(t$(Wi(new kn(null,new Tn(k.f,16)),new DQ),new IQ)).d),o=Mr(m$(t$(Wi(new kn(null,new Tn(k.k,16)),new OQ),new Y5)).d),h=s,w=o,r||(h=Mr(m$(t$(new kn(null,new Tn(k.f,16)),new NQ)).d),w=Mr(m$(t$(new kn(null,new Tn(k.k,16)),new PQ)).d)),k.d=h,k.a=s,k.i=w,k.b=o,w==0?ks(n,k,n.c.b,n.c):h==0&&ks(e,k,e.c.b,e.c)}function Qmn(t,e,n,r){var s,o,h,d,w,k,_;if(n.d.i!=e.i){for(s=new H0(t),C0(s,(Gn(),ca)),ee(s,(ae(),Ii),n),ee(s,(xe(),ws),(va(),Kc)),r.c[r.c.length]=s,h=new Nc,tc(h,s),Us(h,(be(),Bn)),d=new Nc,tc(d,s),Us(d,Hn),_=n.d,pa(n,h),o=new zv,Bo(o,n),ee(o,Oo,null),Ba(o,d),pa(o,_),k=new xa(n.b,0);k.b=Z&&t.e[w.p]>G*t.b||St>=n*Z)&&(B.c[B.c.length]=d,d=new le,Ka(h,o),o.a.$b(),k-=_,q=b.Math.max(q,k*t.b+W),k+=St,Mt=St,St=0,_=0,W=0);return new ya(q,B)}function tyn(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;for(n=(k=new m1(t.c.b).a.vc().Kc(),new y1(k));n.a.Ob();)e=(d=u(n.a.Pb(),42),u(d.dd(),149)),s=e.a,s==null&&(s=""),r=CQe(t.c,s),!r&&s.length==0&&(r=Sun(t)),r&&!ry(r.c,e,!1)&&ai(r.c,e);for(h=si(t.a,0);h.b!=h.d.c;)o=u(ii(h),478),_=Nrt(t.c,o.a),q=Nrt(t.c,o.b),_&&q&&ai(_.c,new ya(q,o.c));for(Mh(t.a),B=si(t.b,0);B.b!=B.d.c;)M=u(ii(B),478),e=_Qe(t.c,M.a),w=Nrt(t.c,M.b),e&&w&&pYe(e,w,M.c);Mh(t.b)}function eyn(t,e,n){var r,s,o,h,d,w,k,_,M,B,q;o=new zk(t),h=new Bse,s=(cD(h.g),cD(h.j),nl(h.b),cD(h.d),cD(h.i),nl(h.k),nl(h.c),nl(h.e),q=yoe(h,o,null),uce(h,o),q),e&&(k=new zk(e),d=hyn(k),D4t(s,ut(ot(pSt,1),Me,527,0,[d]))),B=!1,M=!1,n&&(k=new zk(n),xH in k.a&&(B=I0(k,xH).ge().a),Ide in k.a&&(M=I0(k,Ide).ge().a)),_=eHt(Mee(new Wk,B),M),K0n(new bZ,s,_),xH in o.a&&Qf(o,xH,null),(B||M)&&(w=new w6,dle(_,w,B,M),Qf(o,xH,w)),r=new czt(h),qcn(new t2t(s),r)}function nyn(t,e,n){var r,s,o,h,d,w,k,_,M;for(h=new qse,k=ut(ot(Sr,1),Jr,25,15,[0]),s=-1,o=0,r=0,w=0;w0){if(s<0&&_.a&&(s=w,o=k[0],r=0),s>=0){if(d=_.b,w==s&&(d-=r++,d==0))return 0;if(!yhe(e,k,_,d,h)){w=s-1,k[0]=o;continue}}else if(s=-1,!yhe(e,k,_,0,h))return 0}else{if(s=-1,Ta(_.c,0)==32){if(M=k[0],zte(e,k),k[0]>M)continue}else if(Fnn(e,_.c,k[0])){k[0]+=_.c.length;continue}return 0}return F4n(h,n)?k[0]:0}function kC(t){var e,n,r,s,o,h,d,w;if(!t.f){if(w=new _0,d=new _0,e=aA,h=e.a.zc(t,e),h==null){for(o=new nr(Po(t));o.e!=o.i.gc();)s=u(dr(o),26),gs(w,kC(s));e.a.Bc(t)!=null,e.a.gc()==0}for(r=(!t.s&&(t.s=new he(Nu,t,21,17)),new nr(t.s));r.e!=r.i.gc();)n=u(dr(r),170),_t(n,99)&&Or(d,u(n,18));ey(d),t.r=new OKt(t,(u(At(Kt((zp(),An).o),6),18),d.i),d.g),gs(w,t.r),ey(w),t.f=new H3((u(At(Kt(An.o),5),18),w.i),w.g),hl(t).b&=-3}return t.f}function ryn(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G;for(h=t.o,r=Nt(Sr,Jr,25,h,15,1),s=Nt(Sr,Jr,25,h,15,1),n=t.p,e=Nt(Sr,Jr,25,n,15,1),o=Nt(Sr,Jr,25,n,15,1),k=0;k=0&&!h4(t,_,M);)--M;s[_]=M}for(q=0;q=0&&!h4(t,d,G);)--d;o[G]=d}for(w=0;we[B]&&Br[w]&&bq(t,w,B,!1,!0)}function r6t(t){var e,n,r,s,o,h,d,w;n=Be(Fe(K(t,(n1(),Ype)))),o=t.a.c.d,d=t.a.d.d,n?(h=ld(fa(new Re(d.a,d.b),o),.5),w=ld(uc(t.e),.5),e=fa(Fi(new Re(o.a,o.b),h),w),O2t(t.d,e)):(s=Zt(ve(K(t.a,rbe))),r=t.d,o.a>=d.a?o.b>=d.b?(r.a=d.a+(o.a-d.a)/2+s,r.b=d.b+(o.b-d.b)/2-s-t.e.b):(r.a=d.a+(o.a-d.a)/2+s,r.b=o.b+(d.b-o.b)/2+s):o.b>=d.b?(r.a=o.a+(d.a-o.a)/2+s,r.b=d.b+(o.b-d.b)/2+s):(r.a=o.a+(d.a-o.a)/2+s,r.b=o.b+(d.b-o.b)/2-s-t.e.b))}function Hc(t,e){var n,r,s,o,h,d,w;if(t==null)return null;if(o=t.length,o==0)return"";for(w=Nt(Eh,wd,25,o,15,1),mmt(0,o,t.length),mmt(0,o,w.length),jYt(t,0,o,w,0),n=null,d=e,s=0,h=0;s0?Bl(n.a,0,o-1):""):t.substr(0,o-1):n?n.a:t}function yle(t){Sv(t,new y2(Ev(yv(kv(xv(new mg,C2),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new me))),we(t,C2,Mot,Ie(sEt)),we(t,C2,Dot,Ie(qut)),we(t,C2,px,Ie(Npe)),we(t,C2,ww,Ie(iEt)),we(t,C2,q6t,Ie(Rpe)),we(t,C2,H6t,Ie(Bpe)),we(t,C2,z6t,Ie(jpe)),we(t,C2,V6t,Ie(Fpe)),we(t,C2,Q6t,Ie(Ppe)),we(t,C2,Z6t,Ie(zut)),we(t,C2,J6t,Ie(rEt)),we(t,C2,txt,Ie(eV))}function i6t(t,e,n,r){var s,o,h,d,w,k,_,M,B;if(o=new H0(t),C0(o,(Gn(),Uc)),ee(o,(xe(),ws),(va(),Kc)),s=0,e){for(h=new Nc,ee(h,(ae(),Ii),e),ee(o,Ii,e.i),Us(h,(be(),Bn)),tc(h,o),B=pd(e.e),k=B,_=0,M=k.length;_0)if(n-=r.length-e,n>=0){for(s.a+="0.";n>N2.length;n-=N2.length)ZKt(s,N2);NWt(s,N2,Cs(n)),Yr(s,r.substr(e))}else n=e-n,Yr(s,Bl(r,e,Cs(n))),s.a+=".",Yr(s,OM(r,Cs(n)));else{for(Yr(s,r.substr(e));n<-N2.length;n+=N2.length)ZKt(s,N2);NWt(s,N2,Cs(-n))}return s.a}function s6t(t,e,n,r){var s,o,h,d,w,k,_,M,B;return w=fa(new Re(n.a,n.b),t),k=w.a*e.b-w.b*e.a,_=e.a*r.b-e.b*r.a,M=(w.a*r.b-w.b*r.a)/_,B=k/_,_==0?k==0?(s=Fi(new Re(n.a,n.b),ld(new Re(r.a,r.b),.5)),o=Gp(t,s),h=Gp(Fi(new Re(t.a,t.b),e),s),d=b.Math.sqrt(r.a*r.a+r.b*r.b)*.5,o=0&&M<=1&&B>=0&&B<=1?Fi(new Re(t.a,t.b),ld(new Re(e.a,e.b),M)):null}function syn(t,e,n){var r,s,o,h,d;if(r=u(K(t,(xe(),Glt)),21),n.a>e.a&&(r.Hc((cy(),qO))?t.c.a+=(n.a-e.a)/2:r.Hc(HO)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((cy(),GO))?t.c.b+=(n.b-e.b)/2:r.Hc(VO)&&(t.c.b+=n.b-e.b)),u(K(t,(ae(),Wc)),21).Hc((go(),yh))&&(n.a>e.a||n.b>e.b))for(d=new S(t.a);d.ae.a&&(r.Hc((cy(),qO))?t.c.a+=(n.a-e.a)/2:r.Hc(HO)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((cy(),GO))?t.c.b+=(n.b-e.b)/2:r.Hc(VO)&&(t.c.b+=n.b-e.b)),u(K(t,(ae(),Wc)),21).Hc((go(),yh))&&(n.a>e.a||n.b>e.b))for(h=new S(t.a);h.ae&&(s=0,o+=_.b+n,M.c[M.c.length]=_,_=new qwt(o,n),r=new Eit(0,_.f,_,n),Y$(_,r),s=0),r.b.c.length==0||w.f>=r.o&&w.f<=r.f||r.a*.5<=w.f&&r.a*1.5>=w.f?e3t(r,w):(h=new Eit(r.s+r.r+n,_.f,_,n),Y$(_,h),e3t(h,w)),s=w.i+w.g;return M.c[M.c.length]=_,M}function E4(t){var e,n,r,s,o,h,d,w;if(!t.a){if(t.o=null,w=new Azt(t),e=new xp,n=aA,d=n.a.zc(t,n),d==null){for(h=new nr(Po(t));h.e!=h.i.gc();)o=u(dr(h),26),gs(w,E4(o));n.a.Bc(t)!=null,n.a.gc()==0}for(s=(!t.s&&(t.s=new he(Nu,t,21,17)),new nr(t.s));s.e!=s.i.gc();)r=u(dr(s),170),_t(r,322)&&Or(e,u(r,34));ey(e),t.k=new IKt(t,(u(At(Kt((zp(),An).o),7),18),e.i),e.g),gs(w,t.k),ey(w),t.a=new H3((u(At(Kt(An.o),4),18),w.i),w.g),hl(t).b&=-2}return t.a}function uyn(t,e,n,r,s,o,h){var d,w,k,_,M,B;return M=!1,w=Ace(n.q,e.f+e.b-n.q.f),B=s-(n.q.e+w-h),B=(Sn(o,t.c.length),u(t.c[o],200)).e,_=(d=EC(r,B,!1),d.a),_>e.b&&!k)?!1:((k||_<=e.b)&&(k&&_>e.b?(n.d=_,dD(n,Iae(n,_))):(Qse(n.q,w),n.c=!0),dD(r,s-(n.s+n.r)),YD(r,n.q.e+n.q.d,e.f),Y$(e,r),t.c.length>o&&(tI((Sn(o,t.c.length),u(t.c[o],200)),r),(Sn(o,t.c.length),u(t.c[o],200)).a.c.length==0&&Ig(t,o)),M=!0),M)}function a6t(t,e,n,r){var s,o,h,d,w,k,_;if(_=hu(t.e.Tg(),e),s=0,o=u(t.g,119),w=null,so(),u(e,66).Oj()){for(d=0;dt.o.a&&(_=(w-t.o.a)/2,d.b=b.Math.max(d.b,_),d.c=b.Math.max(d.c,_))}}function hyn(t){var e,n,r,s,o,h,d,w;for(o=new JQt,YYe(o,(X6(),C3e)),r=(s=hit(t,Nt(Le,re,2,0,6,1)),new h6(new Cl(new get(t,s).b)));r.b0?t.i:0)>e&&w>0&&(o=0,h+=w+t.i,s=b.Math.max(s,B),r+=w+t.i,w=0,B=0,n&&(++M,ue(t.n,new f$(t.s,h,t.i))),d=0),B+=k.g+(d>0?t.i:0),w=b.Math.max(w,k.f),n&&B3t(u(Pe(t.n,M),211),k),o+=k.g+(d>0?t.i:0),++d;return s=b.Math.max(s,B),r+=w,n&&(t.r=s,t.d=r,z3t(t.j)),new ch(t.s,t.t,s,r)}function Pc(t,e,n,r,s){qd();var o,h,d,w,k,_,M,B,q;if(awt(t,"src"),awt(n,"dest"),B=dl(t),w=dl(n),Lvt((B.i&4)!=0,"srcType is not an array"),Lvt((w.i&4)!=0,"destType is not an array"),M=B.c,h=w.c,Lvt(M.i&1?M==h:(h.i&1)==0,"Array types don't match"),q=t.length,k=n.length,e<0||r<0||s<0||e+s>q||r+s>k)throw nt(new xpt);if(!(M.i&1)&&B!=w)if(_=o2(t),o=o2(n),Gt(t)===Gt(n)&&er;)ls(o,d,_[--e]);else for(d=r+s;r0&&U4t(t,e,n,r,s,!0)}function yat(){yat=X,Ege=ut(ot(Sr,1),Jr,25,15,[Oa,1162261467,AC,1220703125,362797056,1977326743,AC,387420489,Nq,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,AC,1291467969,1544804416,1838265625,60466176]),Tge=ut(ot(Sr,1),Jr,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function fyn(t){var e,n,r,s,o,h,d,w;for(s=new S(t.b);s.a=t.b.length?(o[s++]=h.b[r++],o[s++]=h.b[r++]):r>=h.b.length?(o[s++]=t.b[n++],o[s++]=t.b[n++]):h.b[r]0?t.i:0)),++e;for(Tln(t.n,w),t.d=n,t.r=r,t.g=0,t.f=0,t.e=0,t.o=bs,t.p=bs,o=new S(t.b);o.a0&&(s=(!t.n&&(t.n=new he(Yo,t,1,7)),u(At(t.n,0),137)).a,!s||Yr(Yr((e.a+=' "',e),s),'"'))),n=(!t.b&&(t.b=new En(vr,t,4,7)),!(t.b.i<=1&&(!t.c&&(t.c=new En(vr,t,5,8)),t.c.i<=1))),n?e.a+=" [":e.a+=" ",Yr(e,b2t(new cet,new nr(t.b))),n&&(e.a+="]"),e.a+=Bot,n&&(e.a+="["),Yr(e,b2t(new cet,new nr(t.c))),n&&(e.a+="]"),e.a)}function xat(t,e){var n,r,s,o,h,d,w;if(t.a){if(d=t.a.ne(),w=null,d!=null?e.a+=""+d:(h=t.a.Dj(),h!=null&&(o=ud(h,Lu(91)),o!=-1?(w=h.substr(o),e.a+=""+Bl(h==null?Mu:(In(h),h),0,o)):e.a+=""+h)),t.d&&t.d.i!=0){for(s=!0,e.a+="<",r=new nr(t.d);r.e!=r.i.gc();)n=u(dr(r),87),s?s=!1:e.a+=Xa,xat(n,e);e.a+=">"}w!=null&&(e.a+=""+w)}else t.e?(d=t.e.zb,d!=null&&(e.a+=""+d)):(e.a+="?",t.b?(e.a+=" super ",xat(t.b,e)):t.f&&(e.a+=" extends ",xat(t.f,e)))}function pyn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn;for(Qt=t.c,ce=e.c,n=Go(Qt.a,t,0),r=Go(ce.a,e,0),St=u(iw(t,(ho(),al)).Kc().Pb(),11),Qe=u(iw(t,su).Kc().Pb(),11),jt=u(iw(e,al).Kc().Pb(),11),Rn=u(iw(e,su).Kc().Pb(),11),bt=pd(St.e),_e=pd(Qe.g),Mt=pd(jt.e),We=pd(Rn.g),oy(t,r,ce),h=Mt,_=0,G=h.length;__?new n2((Yf(),Uy),n,e,k-_):k>0&&_>0&&(new n2((Yf(),Uy),e,n,0),new n2(Uy,n,e,0))),h)}function Ele(t,e){var n,r,s,o,h,d;for(h=new d2(new kg(t.f.b).a);h.b;){if(o=Yv(h),s=u(o.cd(),594),e==1){if(s.gf()!=(fo(),Z0)&&s.gf()!=Q0)continue}else if(s.gf()!=(fo(),Hh)&&s.gf()!=_f)continue;switch(r=u(u(o.dd(),46).b,81),d=u(u(o.dd(),46).a,189),n=d.c,s.gf().g){case 2:r.g.c=t.e.a,r.g.b=b.Math.max(1,r.g.b+n);break;case 1:r.g.c=r.g.c+n,r.g.b=b.Math.max(1,r.g.b-n);break;case 4:r.g.d=t.e.b,r.g.a=b.Math.max(1,r.g.a+n);break;case 3:r.g.d=r.g.d+n,r.g.a=b.Math.max(1,r.g.a-n)}}}function byn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(d=Nt(Sr,Jr,25,e.b.c.length,15,1),k=Nt(rlt,oe,267,e.b.c.length,0,1),w=Nt(o0,Gg,10,e.b.c.length,0,1),M=t.a,B=0,q=M.length;B0&&w[r]&&(G=U3(t.b,w[r],s)),W=b.Math.max(W,s.c.c.b+G);for(o=new S(_.e);o.a1)throw nt(new Pn(eO));w||(o=Yd(e,r.Kc().Pb()),h.Fc(o))}return vyt(t,B4t(t,e,n),h)}function myn(t,e){var n,r,s,o;for(non(e.b.j),ys(xu(new kn(null,new Tn(e.d,16)),new zX),new qX),o=new S(e.d);o.at.o.b||(n=rc(t,Hn),d=e.d+e.a+(n.gc()-1)*h,d>t.o.b)))}function Tat(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;if(h=t.e,w=e.e,h==0)return e;if(w==0)return t;if(o=t.d,d=e.d,o+d==2)return n=Gs(t.a[0],po),r=Gs(e.a[0],po),h==w?(_=Ra(n,r),G=Mr(_),q=Mr(zm(_,32)),q==0?new Og(h,G):new Y3(h,2,ut(ot(Sr,1),Jr,25,15,[G,q]))):KD(h<0?Qp(r,n):Qp(n,r));if(h==w)B=h,M=o>=d?$rt(t.a,o,e.a,d):$rt(e.a,d,t.a,o);else{if(s=o!=d?o>d?1:-1:Iyt(t.a,e.a,o),s==0)return eb(),Y7;s==1?(B=h,M=Rrt(t.a,o,e.a,d)):(B=w,M=Rrt(e.a,d,t.a,o))}return k=new Y3(B,M.length,M),O_(k),k}function _at(t,e,n,r,s,o,h){var d,w,k,_,M,B,q;return M=Be(Fe(K(e,(xe(),t_t)))),B=null,o==(ho(),al)&&r.c.i==n?B=r.c:o==su&&r.d.i==n&&(B=r.d),k=h,!k||!M||B?(_=(be(),ac),B?_=B.j:V3(u(K(n,ws),98))&&(_=o==al?Bn:Hn),w=Eyn(t,e,n,o,_,r),d=Frt(($a(n),r)),o==al?(Ba(d,u(Pe(w.j,0),11)),pa(d,s)):(Ba(d,s),pa(d,u(Pe(w.j,0),11))),k=new qre(r,d,w,u(K(w,(ae(),Ii)),11),o,!B)):(ue(k.e,r),q=b.Math.max(Zt(ve(K(k.d,Xg))),Zt(ve(K(r,Xg)))),ee(k.d,Xg,q)),cn(t.a,r,new Tj(k.d,e,o)),k}function Eq(t,e){var n,r,s,o,h,d,w,k,_,M;if(_=null,t.d&&(_=u(jc(t.d,e),138)),!_){if(o=t.a.Mh(),M=o.i,!t.d||$T(t.d)!=M){for(w=new Ar,t.d&&G_(w,t.d),k=w.f.c+w.g.c,d=k;d0?(q=(G-1)*n,d&&(q+=r),_&&(q+=r),q=t.b[s+1])s+=2;else if(n0)for(r=new qu(u(Pi(t.a,o),21)),pn(),aa(r,new Ni(e)),s=new xa(o.b,0);s.bQt)?(w=2,h=Ti):w==0?(w=1,h=_e):(w=0,h=_e)):(q=_e>=h||h-_e0?1:Lv(isNaN(r),isNaN(0)))>=0^(vf(Td),(b.Math.abs(d)<=Td||d==0||isNaN(d)&&isNaN(0)?0:d<0?-1:d>0?1:Lv(isNaN(d),isNaN(0)))>=0)?b.Math.max(d,r):(vf(Td),(b.Math.abs(r)<=Td||r==0||isNaN(r)&&isNaN(0)?0:r<0?-1:r>0?1:Lv(isNaN(r),isNaN(0)))>0?b.Math.sqrt(d*d+r*r):-b.Math.sqrt(d*d+r*r))}function x2(t,e){var n,r,s,o,h,d;if(e){if(!t.a&&(t.a=new fR),t.e==2){hR(t.a,e);return}if(e.e==1){for(s=0;s=Qa?yo(n,t3t(r)):v8(n,r&Ms),h=new drt(10,null,0),len(t.a,h,d-1)):(n=(h.bm().length+o,new BT),yo(n,h.bm())),e.e==0?(r=e._l(),r>=Qa?yo(n,t3t(r)):v8(n,r&Ms)):yo(n,e.bm()),u(h,521).b=n.a}}function Dle(t){var e,n,r,s,o;return t.g!=null?t.g:t.a<32?(t.g=K4n(Au(t.f),Cs(t.e)),t.g):(s=Nat((!t.c&&(t.c=jD(t.f)),t.c),0),t.e==0?s:(e=(!t.c&&(t.c=jD(t.f)),t.c).e<0?2:1,n=s.length,r=-t.e+n-e,o=new Ap,o.a+=""+s,t.e>0&&r>=-6?r>=0?iD(o,n-Cs(t.e),String.fromCharCode(46)):(o.a=Bl(o.a,0,e-1)+"0."+OM(o.a,e-1),iD(o,e+1,Ih(N2,0,-Cs(r)-1))):(n-e>=1&&(iD(o,e,String.fromCharCode(46)),++n),iD(o,n,String.fromCharCode(69)),r>0&&iD(o,++n,String.fromCharCode(43)),iD(o,++n,""+E_(Au(r)))),t.g=o.a,t.g))}function Fyn(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!n.dc()){for(d=0,B=0,r=n.Kc(),G=u(r.Pb(),19).a;d1&&(w=k.mg(w,t.a,d));return w.c.length==1?u(Pe(w,w.c.length-1),220):w.c.length==2?_yn((Sn(0,w.c.length),u(w.c[0],220)),(Sn(1,w.c.length),u(w.c[1],220)),h,o):null}function Ile(t){var e,n,r,s,o,h;for(_u(t.a,new zb),n=new S(t.a);n.a=b.Math.abs(r.b)?(r.b=0,o.d+o.a>h.d&&o.dh.c&&o.c0){if(e=new Ubt(t.i,t.g),n=t.i,o=n<100?null:new Lp(n),t.ij())for(r=0;r0){for(d=t.g,k=t.i,R_(t),o=k<100?null:new Lp(k),r=0;r>13|(t.m&15)<<9,s=t.m>>4&8191,o=t.m>>17|(t.h&255)<<5,h=(t.h&1048320)>>8,d=e.l&8191,w=e.l>>13|(e.m&15)<<9,k=e.m>>4&8191,_=e.m>>17|(e.h&255)<<5,M=(e.h&1048320)>>8,We=n*d,Qe=r*d,Rn=s*d,zn=o*d,hr=h*d,w!=0&&(Qe+=n*w,Rn+=r*w,zn+=s*w,hr+=o*w),k!=0&&(Rn+=n*k,zn+=r*k,hr+=s*k),_!=0&&(zn+=n*_,hr+=r*_),M!=0&&(hr+=n*M),q=We&vl,G=(Qe&511)<<13,B=q+G,Z=We>>22,bt=Qe>>9,Mt=(Rn&262143)<<4,St=(zn&31)<<17,W=Z+bt+Mt+St,Qt=Rn>>18,ce=zn>>5,_e=(hr&4095)<<8,jt=Qt+ce+_e,W+=B>>22,B&=vl,jt+=W>>22,W&=vl,jt&=W0,cu(B,W,jt)}function Ole(t){var e,n,r,s,o,h,d;if(d=u(Pe(t.j,0),11),d.g.c.length!=0&&d.e.c.length!=0)throw nt(new Ho("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(d.g.c.length!=0){for(o=bs,n=new S(d.g);n.a4)if(t.wj(e)){if(t.rk()){if(s=u(e,49),r=s.Ug(),w=r==t.e&&(t.Dk()?s.Og(s.Vg(),t.zk())==t.Ak():-1-s.Vg()==t.aj()),t.Ek()&&!w&&!r&&s.Zg()){for(o=0;o0&&(k=t.n.a/o);break;case 2:case 4:s=t.i.o.b,s>0&&(k=t.n.b/s)}ee(t,(ae(),Iw),k)}if(w=t.o,h=t.a,r)h.a=r.a,h.b=r.b,t.d=!0;else if(e!=U1&&e!=kb&&d!=ac)switch(d.g){case 1:h.a=w.a/2;break;case 2:h.a=w.a,h.b=w.b/2;break;case 3:h.a=w.a/2,h.b=w.b;break;case 4:h.b=w.b/2}else h.a=w.a/2,h.b=w.b/2}function _C(t){var e,n,r,s,o,h,d,w,k,_;if(t.ej())if(_=t.Vi(),w=t.fj(),_>0)if(e=new iyt(t.Gi()),n=_,o=n<100?null:new Lp(n),jM(t,n,e.g),s=n==1?t.Zi(4,At(e,0),null,0,w):t.Zi(6,e,null,-1,w),t.bj()){for(r=new nr(e);r.e!=r.i.gc();)o=t.dj(dr(r),o);o?(o.Ei(s),o.Fi()):t.$i(s)}else o?(o.Ei(s),o.Fi()):t.$i(s);else jM(t,t.Vi(),t.Wi()),t.$i(t.Zi(6,(pn(),uo),null,-1,w));else if(t.bj())if(_=t.Vi(),_>0){for(d=t.Wi(),k=_,jM(t,_,d),o=k<100?null:new Lp(k),r=0;rt.d[h.p]&&(n+=nmt(t.b,o)*u(w.b,19).a,Vp(t.a,de(o)));for(;!NT(t.a);)Omt(t.b,u(P6(t.a),19).a)}return n}function Kyn(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;for(M=new So(u(ze(t,(eq(),ESt)),8)),M.a=b.Math.max(M.a-n.b-n.c,0),M.b=b.Math.max(M.b-n.d-n.a,0),s=ve(ze(t,ySt)),(s==null||(In(s),s<=0))&&(s=1.3),d=new le,G=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));G.e!=G.i.gc();)q=u(dr(G),33),h=new lWt(q),d.c[d.c.length]=h;switch(B=u(ze(t,eft),311),B.g){case 3:Z=bmn(d,e,M.a,M.b,(k=r,In(s),k));break;case 1:Z=qmn(d,e,M.a,M.b,(_=r,In(s),_));break;default:Z=Qyn(d,e,M.a,M.b,(w=r,In(s),w))}o=new U$(Z),W=Iat(o,e,n,M.a,M.b,r,(In(s),s)),gw(t,W.a,W.b,!1,!0)}function Yyn(t,e){var n,r,s,o;n=e.b,o=new qu(n.j),s=0,r=n.j,r.c=Nt(Qn,Me,1,0,5,1),Bv(u(u2(t.b,(be(),On),(Jv(),Aw)),15),n),s=QD(o,s,new MX,r),Bv(u(u2(t.b,On,db),15),n),s=QD(o,s,new z9,r),Bv(u(u2(t.b,On,Sw),15),n),Bv(u(u2(t.b,Hn,Aw),15),n),Bv(u(u2(t.b,Hn,db),15),n),s=QD(o,s,new EF,r),Bv(u(u2(t.b,Hn,Sw),15),n),Bv(u(u2(t.b,yr,Aw),15),n),s=QD(o,s,new TF,r),Bv(u(u2(t.b,yr,db),15),n),s=QD(o,s,new _F,r),Bv(u(u2(t.b,yr,Sw),15),n),Bv(u(u2(t.b,Bn,Aw),15),n),s=QD(o,s,new OX,r),Bv(u(u2(t.b,Bn,db),15),n),Bv(u(u2(t.b,Bn,Sw),15),n)}function Xyn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(mr(e,"Layer size calculation",1),_=bs,k=Ns,s=!1,d=new S(t.b);d.a.5?bt-=h*2*(G-.5):G<.5&&(bt+=o*2*(.5-G)),s=d.d.b,btZ.a-W-_&&(bt=Z.a-W-_),d.n.a=e+bt}}function Qyn(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z;for(d=Nt(ga,To,25,t.c.length,15,1),B=new Gj(new KF),G3t(B,t),k=0,W=new le;B.b.c.length!=0;)if(h=u(B.b.c.length==0?null:Pe(B.b,0),157),k>1&&Hu(h)*Ll(h)/2>d[0]){for(o=0;od[o];)++o;G=new Kd(W,0,o+1),M=new U$(G),_=Hu(h)/Ll(h),w=Iat(M,e,new v6,n,r,s,_),Fi(Kf(M.e),w),A8(h7(B,M)),q=new Kd(W,o+1,W.c.length),G3t(B,q),W.c=Nt(Qn,Me,1,0,5,1),k=0,uYt(d,d.length,0)}else Z=B.b.c.length==0?null:Pe(B.b,0),Z!=null&&uit(B,0),k>0&&(d[k]=d[k-1]),d[k]+=Hu(h)*Ll(h),++k,W.c[W.c.length]=h;return W}function Zyn(t){var e,n,r,s,o;if(r=u(K(t,(xe(),du)),163),r==(ph(),gb)){for(n=new ar(lr(Uo(t).a.Kc(),new H));Vr(n);)if(e=u(Ir(n),17),!yJt(e))throw nt(new B3($ot+ZD(t)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(r==Fy){for(o=new ar(lr($s(t).a.Kc(),new H));Vr(o);)if(s=u(Ir(o),17),!yJt(s))throw nt(new B3($ot+ZD(t)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function Jyn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;for(mr(e,"Label dummy removal",1),r=Zt(ve(K(t,(xe(),Fx)))),s=Zt(ve(K(t,Vy))),k=u(K(t,Xl),103),w=new S(t.b);w.a0&&$ae(t,d,M);for(s=new S(M);s.a>19&&(e=W8(e),w=!w),h=Zbn(e),o=!1,s=!1,r=!1,t.h==DI&&t.m==0&&t.l==0)if(s=!0,o=!0,h==-1)t=eUt((I8(),Y8t)),r=!0,w=!w;else return d=c5t(t,h),w&&mit(d),n&&(ub=cu(0,0,0)),d;else t.h>>19&&(o=!0,t=W8(t),r=!0,w=!w);return h!=-1?jcn(t,h,w,o,n):J3t(t,e)<0?(n&&(o?ub=W8(t):ub=cu(t.l,t.m,t.h)),cu(0,0,0)):Hwn(r?t:cu(t.l,t.m,t.h),e,w,o,s,n)}function Tq(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;if(t.e&&t.c.ce.f||e.g>t.f)){for(n=0,r=0,h=t.w.a.ec().Kc();h.Ob();)s=u(h.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,e.g,e.f)&&++n;for(d=t.r.a.ec().Kc();d.Ob();)s=u(d.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,e.g,e.f)&&--n;for(w=e.w.a.ec().Kc();w.Ob();)s=u(w.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,t.g,t.f)&&++r;for(o=e.r.a.ec().Kc();o.Ob();)s=u(o.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,t.g,t.f)&&--r;n=0)return s=cln(t,e.substr(1,h-1)),_=e.substr(h+1,w-(h+1)),r5n(t,_,s)}else{if(n=-1,t7t==null&&(t7t=new RegExp("\\d")),t7t.test(String.fromCharCode(d))&&(n=avt(e,Lu(46),w-1),n>=0)){r=u(Brt(t,fee(t,e.substr(1,n-1)),!1),58),k=0;try{k=Gl(e.substr(n+1),Oa,Ti)}catch(B){throw B=rs(B),_t(B,127)?(o=B,nt(new F$(o))):nt(B)}if(k=0)return n;switch($v(Mo(t,n))){case 2:{if(un("",Bg(t,n.Hj()).ne())){if(w=ZM(Mo(t,n)),d=y8(Mo(t,n)),_=p5t(t,e,w,d),_)return _;for(s=q5t(t,e),h=0,M=s.gc();h1)throw nt(new Pn(eO));for(_=hu(t.e.Tg(),e),r=u(t.g,119),h=0;h1,k=new M1(B.b);Jo(k.a)||Jo(k.b);)w=u(Jo(k.a)?Q(k.a):Q(k.b),17),M=w.c==B?w.d:w.c,b.Math.abs(nc(ut(ot(na,1),re,8,0,[M.i.n,M.n,M.a])).b-h.b)>1&&nvn(t,w,h,o,B)}}function h3n(t){var e,n,r,s,o,h;if(s=new xa(t.e,0),r=new xa(t.a,0),t.d)for(n=0;nyct;){for(o=e,h=0;b.Math.abs(e-o)0),s.a.Xb(s.c=--s.b),Amn(t,t.b-h,o,r,s),Zn(s.b0),r.a.Xb(r.c=--r.b)}if(!t.d)for(n=0;n0?(t.f[_.p]=q/(_.e.c.length+_.g.c.length),t.c=b.Math.min(t.c,t.f[_.p]),t.b=b.Math.max(t.b,t.f[_.p])):d&&(t.f[_.p]=q)}}function d3n(t){t.b=null,t.bb=null,t.fb=null,t.qb=null,t.a=null,t.c=null,t.d=null,t.e=null,t.f=null,t.n=null,t.M=null,t.L=null,t.Q=null,t.R=null,t.K=null,t.db=null,t.eb=null,t.g=null,t.i=null,t.j=null,t.k=null,t.gb=null,t.o=null,t.p=null,t.q=null,t.r=null,t.$=null,t.ib=null,t.S=null,t.T=null,t.t=null,t.s=null,t.u=null,t.v=null,t.w=null,t.B=null,t.A=null,t.C=null,t.D=null,t.F=null,t.G=null,t.H=null,t.I=null,t.J=null,t.P=null,t.Z=null,t.U=null,t.V=null,t.W=null,t.X=null,t.Y=null,t._=null,t.ab=null,t.cb=null,t.hb=null,t.nb=null,t.lb=null,t.mb=null,t.ob=null,t.pb=null,t.jb=null,t.kb=null,t.N=!1,t.O=!1}function g3n(t,e,n){var r,s,o,h;for(mr(n,"Graph transformation ("+t.a+")",1),h=Vv(e.a),o=new S(e.b);o.a0&&(t.a=w+(q-1)*o,e.c.b+=t.a,e.f.b+=t.a)),G.a.gc()!=0&&(B=new Unt(1,o),q=g6t(B,e,G,W,e.f.b+w-e.c.b),q>0&&(e.f.b+=w+(q-1)*o))}function E7(t,e){var n,r,s,o;o=t.F,e==null?(t.F=null,X8(t,null)):(t.F=(In(e),e),r=ud(e,Lu(60)),r!=-1?(s=e.substr(0,r),ud(e,Lu(46))==-1&&!un(s,cx)&&!un(s,QC)&&!un(s,TH)&&!un(s,ZC)&&!un(s,JC)&&!un(s,tS)&&!un(s,eS)&&!un(s,nS)&&(s=x0e),n=dj(e,Lu(62)),n!=-1&&(s+=""+e.substr(n+1)),X8(t,s)):(s=e,ud(e,Lu(46))==-1&&(r=ud(e,Lu(91)),r!=-1&&(s=e.substr(0,r)),!un(s,cx)&&!un(s,QC)&&!un(s,TH)&&!un(s,ZC)&&!un(s,JC)&&!un(s,tS)&&!un(s,eS)&&!un(s,nS)?(s=x0e,r!=-1&&(s+=""+e.substr(r))):s=e),X8(t,s),s==e&&(t.F=t.D))),t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,5,o,e))}function b3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;if(W=e.b.c.length,!(W<3)){for(q=Nt(Sr,Jr,25,W,15,1),M=0,_=new S(e.b);_.a<_.c.c.length;)k=u(Q(_),29),q[M++]=k.a.c.length;for(B=new xa(e.b,2),r=1;rh)&&Vs(t.b,u(Z.b,17));++d}o=h}}}function h6t(t,e){var n;if(e==null||un(e,Mu)||e.length==0&&t.k!=(Hg(),Rx))return null;switch(t.k.g){case 1:return Oz(e,$7)?(Fn(),W7):Oz(e,Pct)?(Fn(),O2):null;case 2:try{return de(Gl(e,Oa,Ti))}catch(r){if(r=rs(r),_t(r,127))return null;throw nt(r)}case 4:try{return ly(e)}catch(r){if(r=rs(r),_t(r,127))return null;throw nt(r)}case 3:return e;case 5:return mre(t),_oe(t,e);case 6:return mre(t),Cbn(t,t.a,e);case 7:try{return n=Rpn(t),n.Jf(e),n}catch(r){if(r=rs(r),_t(r,32))return null;throw nt(r)}default:throw nt(new Ho("Invalid type set for this layout option."))}}function v3n(t){$_();var e,n,r,s,o,h,d;for(d=new Xzt,n=new S(t);n.a=d.b.c)&&(d.b=e),(!d.c||e.c<=d.c.c)&&(d.d=d.c,d.c=e),(!d.e||e.d>=d.e.d)&&(d.e=e),(!d.f||e.d<=d.f.d)&&(d.f=e);return r=new Bz((U8(),Cw)),aD(t,Sbe,new Cl(ut(ot(gO,1),Me,369,0,[r]))),h=new Bz(Iy),aD(t,Cbe,new Cl(ut(ot(gO,1),Me,369,0,[h]))),s=new Bz(Dy),aD(t,_be,new Cl(ut(ot(gO,1),Me,369,0,[s]))),o=new Bz($4),aD(t,Tbe,new Cl(ut(ot(gO,1),Me,369,0,[o]))),Qst(r.c,Cw),Qst(s.c,Dy),Qst(o.c,$4),Qst(h.c,Iy),d.a.c=Nt(Qn,Me,1,0,5,1),Rs(d.a,r.c),Rs(d.a,c2(s.c)),Rs(d.a,o.c),Rs(d.a,c2(h.c)),d}function f6t(t){var e;switch(t.d){case 1:{if(t.hj())return t.o!=-2;break}case 2:{if(t.hj())return t.o==-2;break}case 3:case 5:case 4:case 6:case 7:return t.o>-2;default:return!1}switch(e=t.gj(),t.p){case 0:return e!=null&&Be(Fe(e))!=a_(t.k,0);case 1:return e!=null&&u(e,217).a!=Mr(t.k)<<24>>24;case 2:return e!=null&&u(e,172).a!=(Mr(t.k)&Ms);case 6:return e!=null&&a_(u(e,162).a,t.k);case 5:return e!=null&&u(e,19).a!=Mr(t.k);case 7:return e!=null&&u(e,184).a!=Mr(t.k)<<16>>16;case 3:return e!=null&&Zt(ve(e))!=t.j;case 4:return e!=null&&u(e,155).a!=t.j;default:return e==null?t.n!=null:!Si(e,t.n)}}function EI(t,e,n){var r,s,o,h;return t.Fk()&&t.Ek()&&(h=Rnt(t,u(n,56)),Gt(h)!==Gt(n))?(t.Oi(e),t.Ui(e,dte(t,e,h)),t.rk()&&(o=(s=u(n,49),t.Dk()?t.Bk()?s.ih(t.b,oo(u(wn(ku(t.b),t.aj()),18)).n,u(wn(ku(t.b),t.aj()).Yj(),26).Bj(),null):s.ih(t.b,es(s.Tg(),oo(u(wn(ku(t.b),t.aj()),18))),null,null):s.ih(t.b,-1-t.aj(),null,null)),!u(h,49).eh()&&(o=(r=u(h,49),t.Dk()?t.Bk()?r.gh(t.b,oo(u(wn(ku(t.b),t.aj()),18)).n,u(wn(ku(t.b),t.aj()).Yj(),26).Bj(),o):r.gh(t.b,es(r.Tg(),oo(u(wn(ku(t.b),t.aj()),18))),null,o):r.gh(t.b,-1-t.aj(),null,o))),o&&o.Fi()),Sl(t.b)&&t.$i(t.Zi(9,n,h,e,!1)),h):n}function Ble(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;for(_=Zt(ve(K(t,(xe(),Fw)))),r=Zt(ve(K(t,h_t))),B=new tl,ee(B,Fw,_+r),k=e,bt=k.d,W=k.c.i,Mt=k.d.i,Z=Qbt(W.c),St=Qbt(Mt.c),s=new le,M=Z;M<=St;M++)d=new H0(t),C0(d,(Gn(),ca)),ee(d,(ae(),Ii),k),ee(d,ws,(va(),Kc)),ee(d,sG,B),q=u(Pe(t.b,M),29),M==Z?oy(d,q.a.c.length-n,q):Lo(d,q),jt=Zt(ve(K(k,Xg))),jt<0&&(jt=0,ee(k,Xg,jt)),d.o.b=jt,G=b.Math.floor(jt/2),h=new Nc,Us(h,(be(),Bn)),tc(h,d),h.n.b=G,w=new Nc,Us(w,Hn),tc(w,d),w.n.b=G,pa(k,h),o=new zv,Bo(o,k),ee(o,Oo,null),Ba(o,w),pa(o,bt),y1n(d,k,o),s.c[s.c.length]=o,k=o;return s}function Aat(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;for(w=u(qg(t,(be(),Bn)).Kc().Pb(),11).e,q=u(qg(t,Hn).Kc().Pb(),11).g,d=w.c.length,St=S1(u(Pe(t.j,0),11));d-- >0;){for(W=(Sn(0,w.c.length),u(w.c[0],17)),s=(Sn(0,q.c.length),u(q.c[0],17)),Mt=s.d.e,o=Go(Mt,s,0),Tin(W,s.d,o),Ba(s,null),pa(s,null),G=W.a,e&&ai(G,new So(St)),r=si(s.a,0);r.b!=r.d.c;)n=u(ii(r),8),ai(G,new So(n));for(bt=W.b,B=new S(s.b);B.a0&&(h=b.Math.max(h,hne(t.C.b+r.d.b,s))),_=r,M=s,B=o;t.C&&t.C.c>0&&(q=B+t.C.c,k&&(q+=_.d.c),h=b.Math.max(h,(E1(),vf(R1),b.Math.abs(M-1)<=R1||M==1||isNaN(M)&&isNaN(1)?0:q/(1-M)))),n.n.b=0,n.a.a=h}function jle(t,e){var n,r,s,o,h,d,w,k,_,M,B,q;if(n=u(xo(t.b,e),124),w=u(u(Pi(t.r,e),21),84),w.dc()){n.n.d=0,n.n.a=0;return}for(k=t.u.Hc((il(),tg)),h=0,t.A.Hc((Nl(),W2))&&wue(t,e),d=w.Kc(),_=null,B=0,M=0;d.Ob();)r=u(d.Pb(),111),o=Zt(ve(r.b.We((gj(),ZH)))),s=r.b.rf().b,_?(q=M+_.d.a+t.w+r.d.d,h=b.Math.max(h,(E1(),vf(R1),b.Math.abs(B-o)<=R1||B==o||isNaN(B)&&isNaN(o)?0:q/(o-B)))):t.C&&t.C.d>0&&(h=b.Math.max(h,hne(t.C.d+r.d.d,o))),_=r,B=o,M=s;t.C&&t.C.a>0&&(q=M+t.C.a,k&&(q+=_.d.a),h=b.Math.max(h,(E1(),vf(R1),b.Math.abs(B-1)<=R1||B==1||isNaN(B)&&isNaN(1)?0:q/(1-B)))),n.n.d=0,n.a.b=h}function $le(t,e,n){var r,s,o,h,d,w;for(this.g=t,d=e.d.length,w=n.d.length,this.d=Nt(o0,Gg,10,d+w,0,1),h=0;h0?eit(this,this.f/this.a):T1(e.g,e.d[0]).a!=null&&T1(n.g,n.d[0]).a!=null?eit(this,(Zt(T1(e.g,e.d[0]).a)+Zt(T1(n.g,n.d[0]).a))/2):T1(e.g,e.d[0]).a!=null?eit(this,T1(e.g,e.d[0]).a):T1(n.g,n.d[0]).a!=null&&eit(this,T1(n.g,n.d[0]).a)}function w3n(t,e){var n,r,s,o,h,d,w,k,_,M;for(t.a=new KYt(Won(WS)),r=new S(e.a);r.a=1&&(Z-h>0&&M>=0?(w.n.a+=W,w.n.b+=o*h):Z-h<0&&_>=0&&(w.n.a+=W*Z,w.n.b+=o));t.o.a=e.a,t.o.b=e.b,ee(t,(xe(),R2),(Nl(),r=u(Wf(tA),9),new oh(r,u(ff(r,r.length),9),0)))}function k3n(t,e,n,r,s,o){var h;if(!(e==null||!Git(e,UAt,WAt)))throw nt(new Pn("invalid scheme: "+e));if(!t&&!(n!=null&&ud(n,Lu(35))==-1&&n.length>0&&($r(0,n.length),n.charCodeAt(0)!=47)))throw nt(new Pn("invalid opaquePart: "+n));if(t&&!(e!=null&&pM(rU,e.toLowerCase()))&&!(n==null||!Git(n,iA,sA)))throw nt(new Pn(c0e+n));if(t&&e!=null&&pM(rU,e.toLowerCase())&&!pdn(n))throw nt(new Pn(c0e+n));if(!mln(r))throw nt(new Pn("invalid device: "+r));if(!fun(s))throw h=s==null?"invalid segments: null":"invalid segment: "+cun(s),nt(new Pn(h));if(!(o==null||ud(o,Lu(35))==-1))throw nt(new Pn("invalid query: "+o))}function E3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(mr(e,"Calculate Graph Size",1),e.n&&t&&gf(e,pf(t),(Ol(),th)),d=N7,w=N7,o=Fkt,h=Fkt,M=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));M.e!=M.i.gc();)k=u(dr(M),33),G=k.i,W=k.j,bt=k.g,r=k.f,s=u(ze(k,(di(),KO)),142),d=b.Math.min(d,G-s.b),w=b.Math.min(w,W-s.d),o=b.Math.max(o,G+bt+s.c),h=b.Math.max(h,W+r+s.a);for(q=u(ze(t,(di(),V2)),116),B=new Re(d-q.b,w-q.d),_=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));_.e!=_.i.gc();)k=u(dr(_),33),Cu(k,k.i-B.a),Su(k,k.j-B.b);Z=o-d+(q.b+q.c),n=h-w+(q.d+q.a),Qv(t,Z),Xv(t,n),e.n&&t&&gf(e,pf(t),(Ol(),th))}function Hle(t){var e,n,r,s,o,h,d,w,k,_;for(r=new le,h=new S(t.e.a);h.a0){Rz(t,n,0),n.a+=String.fromCharCode(r),s=chn(e,o),Rz(t,n,s),o+=s-1;continue}r==39?o+11)for(W=Nt(Sr,Jr,25,t.b.b.c.length,15,1),M=0,k=new S(t.b.b);k.a=d&&s<=w)d<=s&&o<=w?(n[_++]=s,n[_++]=o,r+=2):d<=s?(n[_++]=s,n[_++]=w,t.b[r]=w+1,h+=2):o<=w?(n[_++]=d,n[_++]=o,r+=2):(n[_++]=d,n[_++]=w,t.b[r]=w+1);else if(wrb)&&d<10);Jpt(t.c,new E3),Vle(t),fen(t.c),y3n(t.f)}function S3n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(Be(Fe(K(n,(xe(),$y)))))for(d=new S(n.j);d.a=2){for(w=si(n,0),h=u(ii(w),8),d=u(ii(w),8);d.a0&&PD(k,!0,(fo(),_f)),d.k==(Gn(),Is)&&vXt(k),Ai(t.f,d,e)}}function D3n(t,e,n){var r,s,o,h,d,w,k,_,M,B;switch(mr(n,"Node promotion heuristic",1),t.g=e,B4n(t),t.q=u(K(e,(xe(),Zlt)),260),_=u(K(t.g,QTt),19).a,o=new iF,t.q.g){case 2:case 1:k7(t,o);break;case 3:for(t.q=(m4(),fG),k7(t,o),w=0,d=new S(t.a);d.at.j&&(t.q=MO,k7(t,o));break;case 4:for(t.q=(m4(),fG),k7(t,o),k=0,s=new S(t.b);s.at.k&&(t.q=DO,k7(t,o));break;case 6:B=Cs(b.Math.ceil(t.f.length*_/100)),k7(t,new Tp(B));break;case 5:M=Cs(b.Math.ceil(t.d*_/100)),k7(t,new Uf(M));break;default:k7(t,o)}Tvn(t,e),or(n)}function Ule(t,e,n){var r,s,o,h;this.j=t,this.e=b4t(t),this.o=this.j.e,this.i=!!this.o,this.p=this.i?u(Pe(n,$a(this.o).p),214):null,s=u(K(t,(ae(),Wc)),21),this.g=s.Hc((go(),yh)),this.b=new le,this.d=new gie(this.e),h=u(K(this.j,Ix),230),this.q=ucn(e,h,this.e),this.k=new pQt(this),o=L1(ut(ot(Ybe,1),Me,225,0,[this,this.d,this.k,this.q])),e==(Zv(),OO)&&!Be(Fe(K(t,(xe(),By))))?(r=new w4t(this.e),o.c[o.c.length]=r,this.c=new Wwt(r,h,u(this.q,402))):e==OO&&Be(Fe(K(t,(xe(),By))))?(r=new w4t(this.e),o.c[o.c.length]=r,this.c=new Qee(r,h,u(this.q,402))):this.c=new YVt(e,this),ue(o,this.c),Sle(o,this.e),this.s=d5n(this.k)}function I3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;for(M=u(lj((h=si(new Sp(e).a.d,0),new p6(h))),86),G=M?u(K(M,(mc(),Lht)),86):null,s=1;M&&G;){for(w=0,jt=0,n=M,r=G,d=0;d=t.i?(++t.i,ue(t.a,de(1)),ue(t.b,_)):(r=t.c[e.p][1],lh(t.a,k,de(u(Pe(t.a,k),19).a+1-r)),lh(t.b,k,Zt(ve(Pe(t.b,k)))+_-r*t.e)),(t.q==(m4(),MO)&&(u(Pe(t.a,k),19).a>t.j||u(Pe(t.a,k-1),19).a>t.j)||t.q==DO&&(Zt(ve(Pe(t.b,k)))>t.k||Zt(ve(Pe(t.b,k-1)))>t.k))&&(w=!1),h=new ar(lr(Uo(e).a.Kc(),new H));Vr(h);)o=u(Ir(h),17),d=o.c.i,t.f[d.p]==k&&(M=Wle(t,d),s=s+u(M.a,19).a,w=w&&Be(Fe(M.b)));return t.f[e.p]=k,s=s+t.c[e.p][0],new ya(de(s),(Fn(),!!w))}function g6t(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(M=new Ar,h=new le,poe(t,n,t.d.fg(),h,M),poe(t,r,t.d.gg(),h,M),t.b=.2*(W=ice(ec(new kn(null,new Tn(h,16)),new UQ)),Z=ice(ec(new kn(null,new Tn(h,16)),new WQ)),b.Math.min(W,Z)),o=0,d=0;d=2&&(bt=Cce(h,!0,B),!t.e&&(t.e=new M$t(t)),lhn(t.e,bt,h,t.b)),aae(h,B),K3n(h),q=-1,_=new S(h);_.a<_.c.c.length;)k=u(Q(_),112),!(b.Math.abs(k.s-k.c)d)}function N3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(n=u(K(t,(xe(),ws)),98),h=t.f,o=t.d,d=h.a+o.b+o.c,w=0-o.d-t.c.b,_=h.b+o.d+o.a-t.c.b,k=new le,M=new le,s=new S(e);s.a0),u(_.a.Xb(_.c=--_.b),17));o!=r&&_.b>0;)t.a[o.p]=!0,t.a[r.p]=!0,o=(Zn(_.b>0),u(_.a.Xb(_.c=--_.b),17));_.b>0&&Dl(_)}}function Qle(t,e,n){var r,s,o,h,d,w,k,_,M;if(t.a!=e.Aj())throw nt(new Pn(z7+e.ne()+kw));if(r=Bg((Gu(),Sa),e).$k(),r)return r.Aj().Nh().Ih(r,n);if(h=Bg(Sa,e).al(),h){if(n==null)return null;if(d=u(n,15),d.dc())return"";for(M=new _g,o=d.Kc();o.Ob();)s=o.Pb(),yo(M,h.Aj().Nh().Ih(h,s)),M.a+=" ";return Yet(M,M.a.length-1)}if(_=Bg(Sa,e).bl(),!_.dc()){for(k=_.Kc();k.Ob();)if(w=u(k.Pb(),148),w.wj(n))try{if(M=w.Aj().Nh().Ih(w,n),M!=null)return M}catch(B){if(B=rs(B),!_t(B,102))throw nt(B)}throw nt(new Pn("Invalid value: '"+n+"' for datatype :"+e.ne()))}return u(e,834).Fj(),n==null?null:_t(n,172)?""+u(n,172).a:dl(n)==HH?_Ut(rA[0],u(n,199)):Wo(n)}function $3n(t){var e,n,r,s,o,h,d,w,k,_;for(k=new cs,d=new cs,o=new S(t);o.a-1){for(s=si(d,0);s.b!=s.d.c;)r=u(ii(s),128),r.v=h;for(;d.b!=0;)for(r=u(kst(d,0),128),n=new S(r.i);n.a0&&(n+=w.n.a+w.o.a/2,++M),G=new S(w.j);G.a0&&(n/=M),bt=Nt(ga,To,25,r.a.c.length,15,1),d=0,k=new S(r.a);k.a=d&&s<=w)d<=s&&o<=w?r+=2:d<=s?(t.b[r]=w+1,h+=2):o<=w?(n[_++]=s,n[_++]=d-1,r+=2):(n[_++]=s,n[_++]=d-1,t.b[r]=w+1,h+=2);else if(w0?s-=864e5:s+=864e5,w=new $2t(Ra(Au(e.q.getTime()),s))),_=new Lm,k=t.a.length,o=0;o=97&&r<=122||r>=65&&r<=90){for(h=o+1;h=k)throw nt(new Pn("Missing trailing '"));h+10&&n.c==0&&(!e&&(e=new le),e.c[e.c.length]=n);if(e)for(;e.c.length!=0;){if(n=u(Ig(e,0),233),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new le),new S(n.b));o.aGo(t,n,0))return new ya(s,n)}else if(Zt(T1(s.g,s.d[0]).a)>Zt(T1(n.g,n.d[0]).a))return new ya(s,n)}for(d=(!n.e&&(n.e=new le),n.e).Kc();d.Ob();)h=u(d.Pb(),233),w=(!h.b&&(h.b=new le),h.b),Um(0,w.c.length),WT(w.c,0,n),h.c==w.c.length&&(e.c[e.c.length]=h)}return null}function nhe(t,e){var n,r,s,o,h,d,w,k,_;if(t==null)return Mu;if(w=e.a.zc(t,e),w!=null)return"[...]";for(n=new l2(Xa,"[","]"),s=t,o=0,h=s.length;o=14&&_<=16))?e.a._b(r)?(n.a?Yr(n.a,n.b):n.a=new Fl(n.d),c_(n.a,"[...]")):(d=o2(r),k=new y_(e),P0(n,nhe(d,k))):_t(r,177)?P0(n,Bgn(u(r,177))):_t(r,190)?P0(n,Cdn(u(r,190))):_t(r,195)?P0(n,F0n(u(r,195))):_t(r,2012)?P0(n,Sdn(u(r,2012))):_t(r,48)?P0(n,Fgn(u(r,48))):_t(r,364)?P0(n,Xgn(u(r,364))):_t(r,832)?P0(n,Pgn(u(r,832))):_t(r,104)&&P0(n,Ngn(u(r,104))):P0(n,r==null?Mu:Wo(r));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function rhe(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;for(d=y4(e,!1,!1),bt=sI(d),r&&(bt=BD(bt)),St=Zt(ve(ze(e,(iC(),qut)))),Z=(Zn(bt.b!=0),u(bt.a.a.c,8)),M=u(e1(bt,1),8),bt.b>2?(_=new le,Rs(_,new Kd(bt,1,bt.b)),o=Fhe(_,St+t.a),Mt=new Wst(o),Bo(Mt,e),n.c[n.c.length]=Mt):r?Mt=u(tr(t.b,Zd(e)),266):Mt=u(tr(t.b,Zp(e)),266),w=Zd(e),r&&(w=Zp(e)),h=ngn(Z,w),k=St+t.a,h.a?(k+=b.Math.abs(Z.b-M.b),W=new Re(M.a,(M.b+Z.b)/2)):(k+=b.Math.abs(Z.a-M.a),W=new Re((M.a+Z.a)/2,M.b)),r?Ai(t.d,e,new j3t(Mt,h,W,k)):Ai(t.c,e,new j3t(Mt,h,W,k)),Ai(t.b,e,Mt),G=(!e.n&&(e.n=new he(Yo,e,1,7)),e.n),q=new nr(G);q.e!=q.i.gc();)B=u(dr(q),137),s=bI(t,B,!0,0,0),n.c[n.c.length]=s}function K3n(t){var e,n,r,s,o,h,d,w,k,_;for(k=new le,d=new le,h=new S(t);h.a-1){for(o=new S(d);o.a0)&&(YB(w,b.Math.min(w.o,s.o-1)),xT(w,w.i-1),w.i==0&&(d.c[d.c.length]=w))}}function T7(t,e,n){var r,s,o,h,d,w,k;if(k=t.c,!e&&(e=QAt),t.c=e,t.Db&4&&!(t.Db&1)&&(w=new oa(t,1,2,k,t.c),n?n.Ei(w):n=w),k!=e){if(_t(t.Cb,284))t.Db>>16==-10?n=u(t.Cb,284).nk(e,n):t.Db>>16==-15&&(!e&&(e=(ln(),K1)),!k&&(k=(ln(),K1)),t.Cb.nh()&&(w=new F0(t.Cb,1,13,k,e,$g(fl(u(t.Cb,59)),t),!1),n?n.Ei(w):n=w));else if(_t(t.Cb,88))t.Db>>16==-23&&(_t(e,88)||(e=(ln(),Qh)),_t(k,88)||(k=(ln(),Qh)),t.Cb.nh()&&(w=new F0(t.Cb,1,10,k,e,$g(Oc(u(t.Cb,26)),t),!1),n?n.Ei(w):n=w));else if(_t(t.Cb,444))for(d=u(t.Cb,836),h=(!d.b&&(d.b=new cR(new Qtt)),d.b),o=(r=new d2(new kg(h.a).a),new uR(r));o.a.b;)s=u(Yv(o.a).cd(),87),n=T7(s,oq(s,d),n)}return n}function Y3n(t,e){var n,r,s,o,h,d,w,k,_,M,B;for(h=Be(Fe(ze(t,(xe(),$y)))),B=u(ze(t,qy),21),w=!1,k=!1,M=new nr((!t.c&&(t.c=new he(yl,t,9,9)),t.c));M.e!=M.i.gc()&&(!w||!k);){for(o=u(dr(M),118),d=0,s=jp(I1(ut(ot($1,1),Me,20,0,[(!o.d&&(o.d=new En(ra,o,8,5)),o.d),(!o.e&&(o.e=new En(ra,o,7,4)),o.e)])));Vr(s)&&(r=u(Ir(s),79),_=h&&uw(r)&&Be(Fe(ze(r,B2))),n=Nle((!r.b&&(r.b=new En(vr,r,4,7)),r.b),o)?t==hs(Ro(u(At((!r.c&&(r.c=new En(vr,r,5,8)),r.c),0),82))):t==hs(Ro(u(At((!r.b&&(r.b=new En(vr,r,4,7)),r.b),0),82))),!((_||n)&&(++d,d>1))););(d>0||B.Hc((il(),tg))&&(!o.n&&(o.n=new he(Yo,o,1,7)),o.n).i>0)&&(w=!0),d>1&&(k=!0)}w&&e.Fc((go(),yh)),k&&e.Fc((go(),vS))}function ihe(t){var e,n,r,s,o,h,d,w,k,_,M,B;if(B=u(ze(t,(di(),H2)),21),B.dc())return null;if(d=0,h=0,B.Hc((Nl(),nN))){for(_=u(ze(t,US),98),r=2,n=2,s=2,o=2,e=hs(t)?u(ze(hs(t),jw),103):u(ze(t,jw),103),k=new nr((!t.c&&(t.c=new he(yl,t,9,9)),t.c));k.e!=k.i.gc();)if(w=u(dr(k),118),M=u(ze(w,c5),61),M==(be(),ac)&&(M=J5t(w,e),Eo(w,c5,M)),_==(va(),Kc))switch(M.g){case 1:r=b.Math.max(r,w.i+w.g);break;case 2:n=b.Math.max(n,w.j+w.f);break;case 3:s=b.Math.max(s,w.i+w.g);break;case 4:o=b.Math.max(o,w.j+w.f)}else switch(M.g){case 1:r+=w.g+2;break;case 2:n+=w.f+2;break;case 3:s+=w.g+2;break;case 4:o+=w.f+2}d=b.Math.max(r,s),h=b.Math.max(n,o)}return gw(t,d,h,!0,!0)}function Lat(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;for(Mt=u($l(V$(Wi(new kn(null,new Tn(e.d,16)),new Vk(n)),new sM(n)),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),M=Ti,_=Oa,w=new S(e.b.j);w.a0,k?k&&(B=bt.p,h?++B:--B,M=u(Pe(bt.c.a,B),10),r=Yne(M),q=!(Jst(r,ce,n[0])||SYt(r,ce,n[0]))):q=!0),G=!1,Qt=e.D.i,Qt&&Qt.c&&d.e&&(_=h&&Qt.p>0||!h&&Qt.p0&&(e.a+=Xa),_q(u(dr(d),160),e);for(e.a+=Bot,w=new A6((!r.c&&(r.c=new En(vr,r,5,8)),r.c));w.e!=w.i.gc();)w.e>0&&(e.a+=Xa),_q(u(dr(w),160),e);e.a+=")"}}function e4n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q;if(o=u(K(t,(ae(),Ii)),79),!!o){for(r=t.a,s=new So(n),Fi(s,G1n(t)),H8(t.d.i,t.c.i)?(B=t.c,M=nc(ut(ot(na,1),re,8,0,[B.n,B.a])),fa(M,n)):M=S1(t.c),ks(r,M,r.a,r.a.a),q=S1(t.d),K(t,qlt)!=null&&Fi(q,u(K(t,qlt),8)),ks(r,q,r.c.b,r.c),Jm(r,s),h=y4(o,!0,!0),Z$(h,u(At((!o.b&&(o.b=new En(vr,o,4,7)),o.b),0),82)),J$(h,u(At((!o.c&&(o.c=new En(vr,o,5,8)),o.c),0),82)),yI(r,h),_=new S(t.b);_.a<_.c.c.length;)k=u(Q(_),70),d=u(K(k,Ii),137),Qv(d,k.o.a),Xv(d,k.o.b),k1(d,k.n.a+s.a,k.n.b+s.b),Eo(d,(Y6(),olt),Fe(K(k,olt)));w=u(K(t,(xe(),Oo)),74),w?(Jm(w,s),Eo(o,Oo,w)):Eo(o,Oo,null),e==(q0(),qx)?Eo(o,X0,qx):Eo(o,X0,null)}}function n4n(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt;for(q=e.c.length,B=0,M=new S(t.b);M.a=0){for(w=null,d=new xa(_.a,k+1);d.bh?1:Lv(isNaN(0),isNaN(h)))<0&&(vf(Td),(b.Math.abs(h-1)<=Td||h==1||isNaN(h)&&isNaN(1)?0:h<1?-1:h>1?1:Lv(isNaN(h),isNaN(1)))<0)&&(vf(Td),(b.Math.abs(0-d)<=Td||d==0||isNaN(0)&&isNaN(d)?0:0d?1:Lv(isNaN(0),isNaN(d)))<0)&&(vf(Td),(b.Math.abs(d-1)<=Td||d==1||isNaN(d)&&isNaN(1)?0:d<1?-1:d>1?1:Lv(isNaN(d),isNaN(1)))<0)),o)}function r4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce;for(M=new vwt(new Dt(t));M.b!=M.c.a.d;)for(_=ute(M),d=u(_.d,56),e=u(_.e,56),h=d.Tg(),W=0,jt=(h.i==null&&bd(h),h.i).length;W=0&&W=k.c.c.length?_=Qwt((Gn(),qs),ca):_=Qwt((Gn(),ca),ca),_*=2,o=n.a.g,n.a.g=b.Math.max(o,o+(_-o)),h=n.b.g,n.b.g=b.Math.max(h,h+(_-h)),s=e}}function a4n(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(Qt=_Kt(t),_=new le,d=t.c.length,M=d-1,B=d+1;Qt.a.c!=0;){for(;n.b!=0;)St=(Zn(n.b!=0),u(fh(n,n.a.a),112)),D_(Qt.a,St)!=null,St.g=M--,t6t(St,e,n,r);for(;e.b!=0;)jt=(Zn(e.b!=0),u(fh(e,e.a.a),112)),D_(Qt.a,jt)!=null,jt.g=B++,t6t(jt,e,n,r);for(k=Oa,bt=(h=new v_(new g_(new y(Qt.a).a).b),new g(h));mM(bt.a.a);){if(Z=(o=wj(bt.a),u(o.cd(),112)),!r&&Z.b>0&&Z.a<=0){_.c=Nt(Qn,Me,1,0,5,1),_.c[_.c.length]=Z;break}W=Z.i-Z.d,W>=k&&(W>k&&(_.c=Nt(Qn,Me,1,0,5,1),k=W),_.c[_.c.length]=Z)}_.c.length!=0&&(w=u(Pe(_,zz(s,_.c.length)),112),D_(Qt.a,w)!=null,w.g=B++,t6t(w,e,n,r),_.c=Nt(Qn,Me,1,0,5,1))}for(Mt=t.c.length+1,G=new S(t);G.a0&&(B.d+=_.n.d,B.d+=_.d),B.a>0&&(B.a+=_.n.a,B.a+=_.d),B.b>0&&(B.b+=_.n.b,B.b+=_.d),B.c>0&&(B.c+=_.n.c,B.c+=_.d),B}function ahe(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G;for(B=n.d,M=n.c,o=new Re(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),h=o.b,k=new S(t.a);k.a0&&(t.c[e.c.p][e.p].d+=pl(t.i,24)*PI*.07000000029802322-.03500000014901161,t.c[e.c.p][e.p].a=t.c[e.c.p][e.p].d/t.c[e.c.p][e.p].b)}}function g4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;for(G=new S(t);G.ar.d,r.d=b.Math.max(r.d,e),d&&n&&(r.d=b.Math.max(r.d,r.a),r.a=r.d+s);break;case 3:n=e>r.a,r.a=b.Math.max(r.a,e),d&&n&&(r.a=b.Math.max(r.a,r.d),r.d=r.a+s);break;case 2:n=e>r.c,r.c=b.Math.max(r.c,e),d&&n&&(r.c=b.Math.max(r.b,r.c),r.b=r.c+s);break;case 4:n=e>r.b,r.b=b.Math.max(r.b,e),d&&n&&(r.b=b.Math.max(r.b,r.c),r.c=r.b+s)}}}function w4n(t){var e,n,r,s,o,h,d,w,k,_,M;for(k=new S(t);k.a0||_.j==Bn&&_.e.c.length-_.g.c.length<0)){e=!1;break}for(s=new S(_.g);s.a=k&&Qt>=Z&&(B+=G.n.b+W.n.b+W.a.b-jt,++d));if(n)for(h=new S(Mt.e);h.a=k&&Qt>=Z&&(B+=G.n.b+W.n.b+W.a.b-jt,++d))}d>0&&(ce+=B/d,++q)}q>0?(e.a=s*ce/q,e.g=q):(e.a=0,e.g=0)}function y4n(t,e){var n,r,s,o,h,d,w,k,_,M,B;for(s=new S(t.a.b);s.aNs||e.o==z2&&_0&&Cu(bt,jt*ce),Qt>0&&Su(bt,Qt*_e);for(U_(t.b,new gm),e=new le,d=new d2(new kg(t.c).a);d.b;)h=Yv(d),r=u(h.cd(),79),n=u(h.dd(),395).a,s=y4(r,!1,!1),M=oae(Zd(r),sI(s),n),yI(M,s),St=mae(r),St&&Go(e,St,0)==-1&&(e.c[e.c.length]=St,_Xt(St,(Zn(M.b!=0),u(M.a.a.c,8)),n));for(Z=new d2(new kg(t.d).a);Z.b;)W=Yv(Z),r=u(W.cd(),79),n=u(W.dd(),395).a,s=y4(r,!1,!1),M=oae(Zp(r),BD(sI(s)),n),M=BD(M),yI(M,s),St=yae(r),St&&Go(e,St,0)==-1&&(e.c[e.c.length]=St,_Xt(St,(Zn(M.b!=0),u(M.c.b.c,8)),n))}function uhe(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e;if(n.c.length!=0){for(q=new le,B=new S(n);B.a1)for(q=new c6t(G,St,r),_a(St,new nGt(t,q)),h.c[h.c.length]=q,M=St.a.ec().Kc();M.Ob();)_=u(M.Pb(),46),Eu(o,_.b);if(d.a.gc()>1)for(q=new c6t(G,d,r),_a(d,new rGt(t,q)),h.c[h.c.length]=q,M=d.a.ec().Kc();M.Ob();)_=u(M.Pb(),46),Eu(o,_.b)}}function hhe(t){Sv(t,new y2(mR(Ev(yv(kv(xv(new mg,_d),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new iZ),_d))),we(t,_d,uH,Ie(Iye)),we(t,_d,ky,Ie(Oye)),we(t,_d,M4,Ie(Aye)),we(t,_d,vx,Ie(Lye)),we(t,_d,bx,Ie(Mye)),we(t,_d,F7,Ie(Sye)),we(t,_d,FC,Ie(mCt)),we(t,_d,B7,Ie(Dye)),we(t,_d,_ct,Ie(Rht)),we(t,_d,Tct,Ie(jht)),we(t,_d,qkt,Ie(yCt)),we(t,_d,Rkt,Ie(CG)),we(t,_d,jkt,Ie(SG)),we(t,_d,$kt,Ie(BO)),we(t,_d,zkt,Ie(xCt))}function v6t(t){var e;if(this.r=rnn(new Fd,new No),this.b=new eC(u(Dr(Za),290)),this.p=new eC(u(Dr(Za),290)),this.i=new eC(u(Dr(xpe),290)),this.e=t,this.o=new So(t.rf()),this.D=t.Df()||Be(Fe(t.We((di(),WO)))),this.A=u(t.We((di(),H2)),21),this.B=u(t.We(mb),21),this.q=u(t.We(US),98),this.u=u(t.We(Ky),21),!l0n(this.u))throw nt(new B3("Invalid port label placement: "+this.u));if(this.v=Be(Fe(t.We(JSt))),this.j=u(t.We(a5),21),!Nbn(this.j))throw nt(new B3("Invalid node label placement: "+this.j));this.n=u(oC(t,$St),116),this.k=Zt(ve(oC(t,qG))),this.d=Zt(ve(oC(t,rAt))),this.w=Zt(ve(oC(t,cAt))),this.s=Zt(ve(oC(t,iAt))),this.t=Zt(ve(oC(t,sAt))),this.C=u(oC(t,aAt),142),this.c=2*this.d,e=!this.B.Hc((bl(),rN)),this.f=new rC(0,e,0),this.g=new rC(1,e,0),eet(this.f,(Zf(),iu),this.g)}function L4n(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn;for(St=0,G=0,q=0,B=1,Mt=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));Mt.e!=Mt.i.gc();)Z=u(dr(Mt),33),B+=N0(new ar(lr(V0(Z).a.Kc(),new H))),We=Z.g,G=b.Math.max(G,We),M=Z.f,q=b.Math.max(q,M),St+=We*M;for(W=(!t.a&&(t.a=new he(ds,t,10,11)),t.a).i,h=St+2*r*r*B*W,o=b.Math.sqrt(h),w=b.Math.max(o*n,G),d=b.Math.max(o/n,q),bt=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));bt.e!=bt.i.gc();)Z=u(dr(bt),33),Qe=s.b+(pl(e,26)*LC+pl(e,27)*MC)*(w-Z.g),Rn=s.b+(pl(e,26)*LC+pl(e,27)*MC)*(d-Z.f),Cu(Z,Qe),Su(Z,Rn);for(_e=w+(s.b+s.c),ce=d+(s.d+s.a),Qt=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));Qt.e!=Qt.i.gc();)for(jt=u(dr(Qt),33),_=new ar(lr(V0(jt).a.Kc(),new H));Vr(_);)k=u(Ir(_),79),gC(k)||M5n(k,e,_e,ce);_e+=s.b+s.c,ce+=s.d+s.a,gw(t,_e,ce,!1,!0)}function Sq(t){var e,n,r,s,o,h,d,w,k,_,M;if(t==null)throw nt(new cd(Mu));if(k=t,o=t.length,w=!1,o>0&&(e=($r(0,t.length),t.charCodeAt(0)),(e==45||e==43)&&(t=t.substr(1),--o,w=e==45)),o==0)throw nt(new cd(vw+k+'"'));for(;t.length>0&&($r(0,t.length),t.charCodeAt(0)==48);)t=t.substr(1),--o;if(o>(Jue(),xge)[10])throw nt(new cd(vw+k+'"'));for(s=0;s0&&(M=-parseInt(t.substr(0,r),10),t=t.substr(r),o-=r,n=!1);o>=h;){if(r=parseInt(t.substr(0,h),10),t=t.substr(h),o-=h,n)n=!1;else{if(_c(M,d)<0)throw nt(new cd(vw+k+'"'));M=Ia(M,_)}M=Qp(M,r)}if(_c(M,0)>0)throw nt(new cd(vw+k+'"'));if(!w&&(M=D8(M),_c(M,0)<0))throw nt(new cd(vw+k+'"'));return M}function w6t(t,e){qKt();var n,r,s,o,h,d,w;if(this.a=new c2t(this),this.b=t,this.c=e,this.f=znt(Mo((Gu(),Sa),e)),this.f.dc())if((d=r4t(Sa,t))==e)for(this.e=!0,this.d=new le,this.f=new Ek,this.f.Fc(D2),u(Eq(mD(Sa,zl(t)),""),26)==t&&this.f.Fc(k_(Sa,zl(t))),s=uat(Sa,t).Kc();s.Ob();)switch(r=u(s.Pb(),170),$v(Mo(Sa,r))){case 4:{this.d.Fc(r);break}case 5:{this.f.Gc(znt(Mo(Sa,r)));break}}else if(so(),u(e,66).Oj())for(this.e=!0,this.f=null,this.d=new le,h=0,w=(t.i==null&&bd(t),t.i).length;h=0&&h0&&(u(xo(t.b,e),124).a.b=n)}function M4n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(mr(e,"Comment pre-processing",1),n=0,w=new S(t.a);w.a0&&(w=($r(0,e.length),e.charCodeAt(0)),w!=64)){if(w==37&&(M=e.lastIndexOf("%"),k=!1,M!=0&&(M==B-1||(k=($r(M+1,e.length),e.charCodeAt(M+1)==46))))){if(h=e.substr(1,M-1),St=un("%",h)?null:y6t(h),r=0,k)try{r=Gl(e.substr(M+2),Oa,Ti)}catch(jt){throw jt=rs(jt),_t(jt,127)?(d=jt,nt(new F$(d))):nt(jt)}for(Z=tyt(t.Wg());Z.Ob();)if(G=hz(Z),_t(G,510)&&(s=u(G,590),Mt=s.d,(St==null?Mt==null:un(St,Mt))&&r--==0))return s;return null}if(_=e.lastIndexOf("."),q=_==-1?e:e.substr(0,_),n=0,_!=-1)try{n=Gl(e.substr(_+1),Oa,Ti)}catch(jt){if(jt=rs(jt),_t(jt,127))q=e;else throw nt(jt)}for(q=un("%",q)?null:y6t(q),W=tyt(t.Wg());W.Ob();)if(G=hz(W),_t(G,191)&&(o=u(G,191),bt=o.ne(),(q==null?bt==null:un(q,bt))&&n--==0))return o;return null}return Fle(t,e)}function O4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn;for(ce=new le,G=new S(t.b);G.a=e.length)return{done:!0};var s=e[r++];return{value:[s,n.get(s)],done:!1}}}},Rvn()||(t.prototype.createObject=function(){return{}},t.prototype.get=function(e){return this.obj[":"+e]},t.prototype.set=function(e,n){this.obj[":"+e]=n},t.prototype[dot]=function(e){delete this.obj[":"+e]},t.prototype.keys=function(){var e=[];for(var n in this.obj)n.charCodeAt(0)==58&&e.push(n.substring(1));return e}),t}function P4n(t){Z5t();var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(t==null)return null;if(M=t.length*8,M==0)return"";for(d=M%24,q=M/24|0,B=d!=0?q+1:q,o=null,o=Nt(Eh,wd,25,B*4,15,1),k=0,_=0,e=0,n=0,r=0,h=0,s=0,w=0;w>24,k=(e&3)<<24>>24,G=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,W=n&-128?(n>>4^240)<<24>>24:n>>4<<24>>24,Z=r&-128?(r>>6^252)<<24>>24:r>>6<<24>>24,o[h++]=op[G],o[h++]=op[W|k<<4],o[h++]=op[_<<2|Z],o[h++]=op[r&63];return d==8?(e=t[s],k=(e&3)<<24>>24,G=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,o[h++]=op[G],o[h++]=op[k<<4],o[h++]=61,o[h++]=61):d==16&&(e=t[s],n=t[s+1],_=(n&15)<<24>>24,k=(e&3)<<24>>24,G=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,W=n&-128?(n>>4^240)<<24>>24:n>>4<<24>>24,o[h++]=op[G],o[h++]=op[W|k<<4],o[h++]=op[_<<2],o[h++]=61),Ih(o,0,o.length)}function F4n(t,e){var n,r,s,o,h,d,w;if(t.e==0&&t.p>0&&(t.p=-(t.p-1)),t.p>Oa&&Jwt(e,t.p-ib),h=e.q.getDate(),nD(e,1),t.k>=0&&wrn(e,t.k),t.c>=0?nD(e,t.c):t.k>=0?(w=new yyt(e.q.getFullYear()-ib,e.q.getMonth(),35),r=35-w.q.getDate(),nD(e,b.Math.min(r,h))):nD(e,h),t.f<0&&(t.f=e.q.getHours()),t.b>0&&t.f<12&&(t.f+=12),LXe(e,t.f==24&&t.g?0:t.f),t.j>=0&&Lsn(e,t.j),t.n>=0&&Wsn(e,t.n),t.i>=0&&zGt(e,Ra(Ia(eI(Au(e.q.getTime()),Vg),Vg),t.i)),t.a&&(s=new CR,Jwt(s,s.q.getFullYear()-ib-80),bet(Au(e.q.getTime()),Au(s.q.getTime()))&&Jwt(e,s.q.getFullYear()-ib+100)),t.d>=0){if(t.c==-1)n=(7+t.d-e.q.getDay())%7,n>3&&(n-=7),d=e.q.getMonth(),nD(e,e.q.getDate()+n),e.q.getMonth()!=d&&nD(e,e.q.getDate()+(n>0?-7:7));else if(e.q.getDay()!=t.d)return!1}return t.o>Oa&&(o=e.q.getTimezoneOffset(),zGt(e,Ra(Au(e.q.getTime()),(t.o-o)*60*Vg))),!0}function ghe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;if(s=K(e,(ae(),Ii)),!!_t(s,239)){for(G=u(s,33),W=e.e,B=new So(e.c),o=e.d,B.a+=o.b,B.b+=o.d,jt=u(ze(G,(xe(),iG)),174),zu(jt,(bl(),GG))&&(q=u(ze(G,r_t),116),Zgt(q,o.a),xtt(q,o.d),Jgt(q,o.b),ipt(q,o.c)),n=new le,_=new S(e.a);_.a<_.c.c.length;)for(w=u(Q(_),10),_t(K(w,Ii),239)?q4n(w,B):_t(K(w,Ii),186)&&!W&&(r=u(K(w,Ii),118),Mt=sle(e,w,r.g,r.f),k1(r,Mt.a,Mt.b)),bt=new S(w.j);bt.a0&&ue(t.p,_),ue(t.o,_);e-=r,q=w+e,k+=e*t.e,lh(t.a,d,de(q)),lh(t.b,d,k),t.j=b.Math.max(t.j,q),t.k=b.Math.max(t.k,k),t.d+=e,e+=W}}function be(){be=X;var t;ac=new DM(OC,0),On=new DM(Rq,1),Hn=new DM(Eot,2),yr=new DM(Tot,3),Bn=new DM(_ot,4),W1=(pn(),new Yk((t=u(Wf(Za),9),new oh(t,u(ff(t,t.length),9),0)))),Mf=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[]))),xh=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[]))),Zl=Fg(Ki(yr,ut(ot(Za,1),Cc,61,0,[]))),Uh=Fg(Ki(Bn,ut(ot(Za,1),Cc,61,0,[]))),Iu=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[yr]))),gu=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[Bn]))),Df=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Bn]))),ol=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn]))),Jl=Fg(Ki(yr,ut(ot(Za,1),Cc,61,0,[Bn]))),kh=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[yr]))),cl=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn,Bn]))),Du=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[yr,Bn]))),Ou=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[yr,Bn]))),Yu=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn,yr]))),Yc=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn,yr,Bn])))}function whe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;if(e.b!=0){for(q=new cs,d=null,G=null,r=Cs(b.Math.floor(b.Math.log(e.b)*b.Math.LOG10E)+1),w=0,St=si(e,0);St.b!=St.d.c;)for(bt=u(ii(St),86),Gt(G)!==Gt(K(bt,(mc(),RS)))&&(G=jr(K(bt,RS)),w=0),G!=null?d=G+jQt(w++,r):d=jQt(w++,r),ee(bt,RS,d),Z=(s=si(new Sp(bt).a.d,0),new p6(s));kR(Z.a);)W=u(ii(Z.a),188).c,ks(q,W,q.c.b,q.c),ee(W,RS,d);for(B=new Ar,h=0;h=w){Zn(bt.b>0),bt.a.Xb(bt.c=--bt.b);break}else W.a>k&&(s?(Rs(s.b,W.b),s.a=b.Math.max(s.a,W.a),Dl(bt)):(ue(W.b,M),W.c=b.Math.min(W.c,k),W.a=b.Math.max(W.a,w),s=W));s||(s=new rqt,s.c=k,s.a=w,Rm(bt,s),ue(s.b,M))}for(d=e.b,_=0,Z=new S(r);Z.ad?1:0:(t.b&&(t.b._b(o)&&(s=u(t.b.xc(o),19).a),t.b._b(w)&&(d=u(t.b.xc(w),19).a)),sd?1:0)):e.e.c.length!=0&&n.g.c.length!=0?1:-1}function $4n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e;for(mr(e,c1e,1),W=new le,ce=new le,k=new S(t.b);k.a0&&(St-=q),u6t(h,St),_=0,B=new S(h.a);B.a0),d.a.Xb(d.c=--d.b)),w=.4*r*_,!o&&d.be.d.c){if(q=t.c[e.a.d],Z=t.c[M.a.d],q==Z)continue;yf(lf(uf(hf(cf(new Sh,1),100),q),Z))}}}}}function y6t(t){Cat();var e,n,r,s,o,h,d,w;if(t==null)return null;if(s=ud(t,Lu(37)),s<0)return t;for(w=new Fl(t.substr(0,s)),e=Nt(Xu,P4,25,4,15,1),d=0,r=0,h=t.length;ss+2&&wit(($r(s+1,t.length),t.charCodeAt(s+1)),VAt,GAt)&&wit(($r(s+2,t.length),t.charCodeAt(s+2)),VAt,GAt))if(n=dtn(($r(s+1,t.length),t.charCodeAt(s+1)),($r(s+2,t.length),t.charCodeAt(s+2))),s+=2,r>0?(n&192)==128?e[d++]=n<<24>>24:r=0:n>=128&&((n&224)==192?(e[d++]=n<<24>>24,r=2):(n&240)==224?(e[d++]=n<<24>>24,r=3):(n&248)==240&&(e[d++]=n<<24>>24,r=4)),r>0){if(d==r){switch(d){case 2:{$p(w,((e[0]&31)<<6|e[1]&63)&Ms);break}case 3:{$p(w,((e[0]&15)<<12|(e[1]&63)<<6|e[2]&63)&Ms);break}}d=0,r=0}}else{for(o=0;o0){if(h+r>t.length)return!1;d=rq(t.substr(0,h+r),e)}else d=rq(t,e);switch(o){case 71:return d=b4(t,h,ut(ot(Le,1),re,2,6,[tfe,efe]),e),s.e=d,!0;case 77:return Svn(t,e,s,d,h);case 76:return Avn(t,e,s,d,h);case 69:return mgn(t,e,h,s);case 99:return ygn(t,e,h,s);case 97:return d=b4(t,h,ut(ot(Le,1),re,2,6,["AM","PM"]),e),s.b=d,!0;case 121:return Lvn(t,e,h,d,n,s);case 100:return d<=0?!1:(s.c=d,!0);case 83:return d<0?!1:Oln(d,h,e[0],s);case 104:d==12&&(d=0);case 75:case 72:return d<0?!1:(s.f=d,s.g=!1,!0);case 107:return d<0?!1:(s.f=d,s.g=!0,!0);case 109:return d<0?!1:(s.j=d,!0);case 115:return d<0?!1:(s.n=d,!0);case 90:if(hce&&(G.c=ce-G.b),ue(h.d,new Nnt(G,Xyt(h,G))),Mt=e==On?b.Math.max(Mt,W.b+k.b.rf().b):b.Math.min(Mt,W.b));for(Mt+=e==On?t.t:-t.t,St=f3t((h.e=Mt,h)),St>0&&(u(xo(t.b,e),124).a.b=St),_=B.Kc();_.Ob();)k=u(_.Pb(),111),!(!k.c||k.c.d.c.length<=0)&&(G=k.c.i,G.c-=k.e.a,G.d-=k.e.b)}function W4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;for(e=new Ar,w=new nr(t);w.e!=w.i.gc();){for(d=u(dr(w),33),n=new Qs,Ai(Vut,d,n),q=new bg,s=u($l(new kn(null,new Fv(new ar(lr(fI(d).a.Kc(),new H)))),lYt(q,a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)])))),83),Oee(n,u(s.xc((Fn(),!0)),14),new Oe),r=u($l(Wi(u(s.xc(!1),15).Lc(),new af),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[Yl]))),15),h=r.Kc();h.Ob();)o=u(h.Pb(),79),B=mae(o),B&&(k=u(cc(Fo(e.f,B)),21),k||(k=jce(B),lu(e.f,B,k)),Ka(n,k));for(s=u($l(new kn(null,new Fv(new ar(lr(V0(d).a.Kc(),new H)))),lYt(q,a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[Yl])))),83),Oee(n,u(s.xc(!0),14),new fk),r=u($l(Wi(u(s.xc(!1),15).Lc(),new k3),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[Yl]))),15),M=r.Kc();M.Ob();)_=u(M.Pb(),79),B=yae(_),B&&(k=u(cc(Fo(e.f,B)),21),k||(k=jce(B),lu(e.f,B,k)),Ka(n,k))}}function K4n(t,e){yat();var n,r,s,o,h,d,w,k,_,M,B,q,G,W;if(w=_c(t,0)<0,w&&(t=D8(t)),_c(t,0)==0)switch(e){case 0:return"0";case 1:return M7;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return q=new Ap,e<0?q.a+="0E+":q.a+="0E",q.a+=e==Oa?"2147483648":""+-e,q.a}_=18,M=Nt(Eh,wd,25,_+1,15,1),n=_,W=t;do k=W,W=eI(W,10),M[--n]=Mr(Ra(48,Qp(k,Ia(W,10))))&Ms;while(_c(W,0)!=0);if(s=Qp(Qp(Qp(_,n),e),1),e==0)return w&&(M[--n]=45),Ih(M,n,_-n);if(e>0&&_c(s,-6)>=0){if(_c(s,0)>=0){for(o=n+Mr(s),d=_-1;d>=o;d--)M[d+1]=M[d];return M[++o]=46,w&&(M[--n]=45),Ih(M,n,_-n+1)}for(h=2;bet(h,Ra(D8(s),1));h++)M[--n]=48;return M[--n]=46,M[--n]=48,w&&(M[--n]=45),Ih(M,n,_-n)}return G=n+1,r=_,B=new Lm,w&&(B.a+="-"),r-G>=1?($p(B,M[n]),B.a+=".",B.a+=Ih(M,n+1,_-n-1)):B.a+=Ih(M,n,_-n),B.a+="E",_c(s,0)>0&&(B.a+="+"),B.a+=""+E_(s),B.a}function Y4n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q;if(t.e.a.$b(),t.f.a.$b(),t.c.c=Nt(Qn,Me,1,0,5,1),t.i.c=Nt(Qn,Me,1,0,5,1),t.g.a.$b(),e)for(h=new S(e.a);h.a=1&&(Qt-k>0&&G>=0?(Cu(M,M.i+jt),Su(M,M.j+w*k)):Qt-k<0&&q>=0&&(Cu(M,M.i+jt*Qt),Su(M,M.j+w)));return Eo(t,(di(),H2),(Nl(),o=u(Wf(tA),9),new oh(o,u(ff(o,o.length),9),0))),new Re(ce,_)}function xhe(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G;if(q=hs(Ro(u(At((!t.b&&(t.b=new En(vr,t,4,7)),t.b),0),82))),G=hs(Ro(u(At((!t.c&&(t.c=new En(vr,t,5,8)),t.c),0),82))),M=q==G,d=new Da,e=u(ze(t,(bz(),bAt)),74),e&&e.b>=2){if((!t.a&&(t.a=new he(us,t,6,6)),t.a).i==0)n=(Tv(),s=new id,s),Or((!t.a&&(t.a=new he(us,t,6,6)),t.a),n);else if((!t.a&&(t.a=new he(us,t,6,6)),t.a).i>1)for(B=new A6((!t.a&&(t.a=new he(us,t,6,6)),t.a));B.e!=B.i.gc();)uC(B);yI(e,u(At((!t.a&&(t.a=new he(us,t,6,6)),t.a),0),202))}if(M)for(r=new nr((!t.a&&(t.a=new he(us,t,6,6)),t.a));r.e!=r.i.gc();)for(n=u(dr(r),202),k=new nr((!n.a&&(n.a=new Bs(Wh,n,5)),n.a));k.e!=k.i.gc();)w=u(dr(k),469),d.a=b.Math.max(d.a,w.a),d.b=b.Math.max(d.b,w.b);for(h=new nr((!t.n&&(t.n=new he(Yo,t,1,7)),t.n));h.e!=h.i.gc();)o=u(dr(h),137),_=u(ze(o,KS),8),_&&k1(o,_.a,_.b),M&&(d.a=b.Math.max(d.a,o.i+o.g),d.b=b.Math.max(d.b,o.j+o.f));return d}function X4n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We;for(St=e.c.length,s=new k4(t.a,n,null,null),We=Nt(ga,To,25,St,15,1),W=Nt(ga,To,25,St,15,1),G=Nt(ga,To,25,St,15,1),Z=0,d=0;dWe[w]&&(Z=w),M=new S(t.a.b);M.aq&&(o&&(Xb(ce,B),Xb(We,de(k.b-1))),xi=n.b,Ks+=B+e,B=0,_=b.Math.max(_,n.b+n.c+hr)),Cu(d,xi),Su(d,Ks),_=b.Math.max(_,xi+hr+n.c),B=b.Math.max(B,M),xi+=hr+e;if(_=b.Math.max(_,r),zn=Ks+B+n.a,znxd,Qe=b.Math.abs(B.b-G.b)>xd,(!n&&We&&Qe||n&&(We||Qe))&&ai(Z.a,jt)),Ka(Z.a,r),r.b==0?B=jt:B=(Zn(r.b!=0),u(r.c.b.c,8)),gcn(q,M,W),lne(s)==_e&&($a(_e.i)!=s.a&&(W=new Da,R4t(W,$a(_e.i),Mt)),ee(Z,qlt,W)),R0n(q,Z,Mt),_.a.zc(q,_);Ba(Z,Qt),pa(Z,_e)}for(k=_.a.ec().Kc();k.Ob();)w=u(k.Pb(),17),Ba(w,null),pa(w,null);or(e)}function khe(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;if(t.gc()==1)return u(t.Xb(0),231);if(t.gc()<=0)return new C$;for(s=t.Kc();s.Ob();){for(n=u(s.Pb(),231),G=0,_=Ti,M=Ti,w=Oa,k=Oa,q=new S(n.e);q.ad&&(St=0,jt+=h+bt,h=0),Fwn(W,n,St,jt),e=b.Math.max(e,St+Z.a),h=b.Math.max(h,Z.b),St+=Z.a+bt;return W}function Ehe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;switch(_=new ju,t.a.g){case 3:B=u(K(e.e,(ae(),F2)),15),q=u(K(e.j,F2),15),G=u(K(e.f,F2),15),n=u(K(e.e,Q4),15),r=u(K(e.j,Q4),15),s=u(K(e.f,Q4),15),h=new le,Rs(h,B),q.Jc(new JX),Rs(h,_t(q,152)?V6(u(q,152)):_t(q,131)?u(q,131).a:_t(q,54)?new mv(q):new Mm(q)),Rs(h,G),o=new le,Rs(o,n),Rs(o,_t(r,152)?V6(u(r,152)):_t(r,131)?u(r,131).a:_t(r,54)?new mv(r):new Mm(r)),Rs(o,s),ee(e.f,F2,h),ee(e.f,Q4,o),ee(e.f,eTt,e.f),ee(e.e,F2,null),ee(e.e,Q4,null),ee(e.j,F2,null),ee(e.j,Q4,null);break;case 1:Ka(_,e.e.a),ai(_,e.i.n),Ka(_,c2(e.j.a)),ai(_,e.a.n),Ka(_,e.f.a);break;default:Ka(_,e.e.a),Ka(_,c2(e.j.a)),Ka(_,e.f.a)}Mh(e.f.a),Ka(e.f.a,_),Ba(e.f,e.e.c),d=u(K(e.e,(xe(),Oo)),74),k=u(K(e.j,Oo),74),w=u(K(e.f,Oo),74),(d||k||w)&&(M=new ju,owt(M,w),owt(M,k),owt(M,d),ee(e.f,Oo,M)),Ba(e.j,null),pa(e.j,null),Ba(e.e,null),pa(e.e,null),Lo(e.a,null),Lo(e.i,null),e.g&&Ehe(t,e.g)}function t5n(t){Z5t();var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(t==null||(o=R$(t),G=zun(o),G%4!=0))return null;if(W=G/4|0,W==0)return Nt(Xu,P4,25,0,15,1);for(M=null,e=0,n=0,r=0,s=0,h=0,d=0,w=0,k=0,q=0,B=0,_=0,M=Nt(Xu,P4,25,W*3,15,1);q>4)<<24>>24,M[B++]=((n&15)<<4|r>>2&15)<<24>>24,M[B++]=(r<<6|s)<<24>>24}return!dM(h=o[_++])||!dM(d=o[_++])?null:(e=Y1[h],n=Y1[d],w=o[_++],k=o[_++],Y1[w]==-1||Y1[k]==-1?w==61&&k==61?n&15?null:(Z=Nt(Xu,P4,25,q*3+1,15,1),Pc(M,0,Z,0,q*3),Z[B]=(e<<2|n>>4)<<24>>24,Z):w!=61&&k==61?(r=Y1[w],r&3?null:(Z=Nt(Xu,P4,25,q*3+2,15,1),Pc(M,0,Z,0,q*3),Z[B++]=(e<<2|n>>4)<<24>>24,Z[B]=((n&15)<<4|r>>2&15)<<24>>24,Z)):null:(r=Y1[w],s=Y1[k],M[B++]=(e<<2|n>>4)<<24>>24,M[B++]=((n&15)<<4|r>>2&15)<<24>>24,M[B++]=(r<<6|s)<<24>>24,M))}function e5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(mr(e,c1e,1),G=u(K(t,(xe(),X0)),218),s=new S(t.b);s.a=2){for(W=!0,B=new S(o.j),n=u(Q(B),11),q=null;B.a0&&(s=u(Pe(Z.c.a,ce-1),10),h=t.i[s.p],We=b.Math.ceil(U3(t.n,s,Z)),o=Qt.a.e-Z.d.d-(h.a.e+s.o.b+s.d.a)-We),k=bs,ce0&&_e.a.e.e-_e.a.a-(_e.b.e.e-_e.b.a)<0,G=St.a.e.e-St.a.a-(St.b.e.e-St.b.a)<0&&_e.a.e.e-_e.a.a-(_e.b.e.e-_e.b.a)>0,q=St.a.e.e+St.b.a<_e.b.e.e+_e.a.a,B=St.a.e.e+St.b.a>_e.b.e.e+_e.a.a,jt=0,!W&&!G&&(B?o+M>0?jt=M:k-r>0&&(jt=r):q&&(o+d>0?jt=d:k-Mt>0&&(jt=Mt))),Qt.a.e+=jt,Qt.b&&(Qt.d.e+=jt),!1))}function _he(t,e,n){var r,s,o,h,d,w,k,_,M,B;if(r=new ch(e.qf().a,e.qf().b,e.rf().a,e.rf().b),s=new S6,t.c)for(h=new S(e.wf());h.ak&&(r.a+=MUt(Nt(Eh,wd,25,-k,15,1))),r.a+="Is",ud(w,Lu(32))>=0)for(s=0;s=r.o.b/2}else Mt=!M;Mt?(bt=u(K(r,(ae(),Ox)),15),bt?B?o=bt:(s=u(K(r,Ax),15),s?bt.gc()<=s.gc()?o=bt:o=s:(o=new le,ee(r,Ax,o))):(o=new le,ee(r,Ox,o))):(s=u(K(r,(ae(),Ax)),15),s?M?o=s:(bt=u(K(r,Ox),15),bt?s.gc()<=bt.gc()?o=s:o=bt:(o=new le,ee(r,Ox,o))):(o=new le,ee(r,Ax,o))),o.Fc(t),ee(t,(ae(),zV),n),e.d==n?(pa(e,null),n.e.c.length+n.g.c.length==0&&tc(n,null),Ycn(n)):(Ba(e,null),n.e.c.length+n.g.c.length==0&&tc(n,null)),Mh(e.a)}function s5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi;for(Mt=new xa(t.b,0),_=e.Kc(),G=0,k=u(_.Pb(),19).a,Qt=0,n=new Qs,_e=new A0;Mt.b=t.a&&(r=Vmn(t,Mt),_=b.Math.max(_,r.b),jt=b.Math.max(jt,r.d),ue(d,new ya(Mt,r)));for(We=new le,k=0;k<_;++k)$m(We,0,(Zn(Z.b>0),Z.a.Xb(Z.c=--Z.b),Qe=new Lh(t.b),Rm(Z,Qe),Zn(Z.b0?(k=0,Z&&(k+=d),k+=(Qe-1)*h,St&&(k+=d),We&&St&&(k=b.Math.max(k,H2n(St,h,Mt,_e))),k0){for(B=_<100?null:new Lp(_),k=new iyt(e),G=k.g,bt=Nt(Sr,Jr,25,_,15,1),r=0,jt=new Kv(_),s=0;s=0;)if(q!=null?Si(q,G[w]):Gt(q)===Gt(G[w])){bt.length<=r&&(Z=bt,bt=Nt(Sr,Jr,25,2*bt.length,15,1),Pc(Z,0,bt,0,r)),bt[r++]=s,Or(jt,G[w]);break t}if(q=q,Gt(q)===Gt(d))break}}if(k=jt,G=jt.g,_=r,r>bt.length&&(Z=bt,bt=Nt(Sr,Jr,25,r,15,1),Pc(Z,0,bt,0,r)),r>0){for(St=!0,o=0;o=0;)nx(t,bt[h]);if(r!=_){for(s=_;--s>=r;)nx(k,s);Z=bt,bt=Nt(Sr,Jr,25,r,15,1),Pc(Z,0,bt,0,r)}e=k}}}else for(e=zfn(t,e),s=t.i;--s>=0;)e.Hc(t.g[s])&&(nx(t,s),St=!0);if(St){if(bt!=null){for(n=e.gc(),M=n==1?I_(t,4,e.Kc().Pb(),null,bt[0],W):I_(t,6,e,bt,bt[0],W),B=n<100?null:new Lp(n),s=e.Kc();s.Ob();)q=s.Pb(),B=cvt(t,u(q,72),B);B?(B.Ei(M),B.Fi()):Ci(t.e,M)}else{for(B=tZe(e.gc()),s=e.Kc();s.Ob();)q=s.Pb(),B=cvt(t,u(q,72),B);B&&B.Fi()}return!0}else return!1}function l5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;for(n=new Jie(e),n.a||Wwn(e),k=Kvn(e),w=new Hv,Z=new Wce,W=new S(e.a);W.a0||n.o==V1&&s0?(M=u(Pe(B.c.a,h-1),10),We=U3(t.b,B,M),Z=B.n.b-B.d.d-(M.n.b+M.o.b+M.d.a+We)):Z=B.n.b-B.d.d,k=b.Math.min(Z,k),hh?m7(t,e,n):m7(t,n,e),sh?1:0}return r=u(K(e,(ae(),Lc)),19).a,o=u(K(n,Lc),19).a,r>o?m7(t,e,n):m7(t,n,e),ro?1:0}function x6t(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt;if(Be(Fe(ze(e,(di(),$G)))))return pn(),pn(),uo;if(k=(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i!=0,M=Zgn(e),_=!M.dc(),k||_){if(s=u(ze(e,EE),149),!s)throw nt(new B3("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(Mt=Vbt(s,(p7(),JG)),Nie(e),!k&&_&&!Mt)return pn(),pn(),uo;if(w=new le,Gt(ze(e,i5))===Gt(($0(),np))&&(Vbt(s,QG)||Vbt(s,XG)))for(q=bue(t,e),G=new cs,Ka(G,(!e.a&&(e.a=new he(ds,e,10,11)),e.a));G.b!=0;)B=u(G.b==0?null:(Zn(G.b!=0),fh(G,G.a.a)),33),Nie(B),bt=Gt(ze(B,i5))===Gt(YS),bt||s2(B,GS)&&!imt(s,ze(B,EE))?(d=x6t(t,B,n,r),Rs(w,d),Eo(B,i5,YS),Oue(B)):Ka(G,(!B.a&&(B.a=new he(ds,B,10,11)),B.a));else for(q=(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i,h=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));h.e!=h.i.gc();)o=u(dr(h),33),d=x6t(t,o,n,r),Rs(w,d),Oue(o);for(Z=new S(w);Z.a=0?q=Z6(d):q=HD(Z6(d)),t.Ye(pE,q)),k=new Da,B=!1,t.Xe(Pw)?(O2t(k,u(t.We(Pw),8)),B=!0):jXe(k,h.a/2,h.b/2),q.g){case 4:ee(_,du,(ph(),gb)),ee(_,HV,(h2(),G4)),_.o.b=h.b,W<0&&(_.o.a=-W),Us(M,(be(),Hn)),B||(k.a=h.a),k.a-=h.a;break;case 2:ee(_,du,(ph(),Fy)),ee(_,HV,(h2(),oE)),_.o.b=h.b,W<0&&(_.o.a=-W),Us(M,(be(),Bn)),B||(k.a=0);break;case 1:ee(_,P2,(B0(),W4)),_.o.a=h.a,W<0&&(_.o.b=-W),Us(M,(be(),yr)),B||(k.b=h.b),k.b-=h.b;break;case 3:ee(_,P2,(B0(),Sx)),_.o.a=h.a,W<0&&(_.o.b=-W),Us(M,(be(),On)),B||(k.b=0)}if(O2t(M.n,k),ee(_,Pw,k),e==U2||e==h0||e==Kc){if(G=0,e==U2&&t.Xe(Qg))switch(q.g){case 1:case 2:G=u(t.We(Qg),19).a;break;case 3:case 4:G=-u(t.We(Qg),19).a}else switch(q.g){case 4:case 2:G=o.b,e==h0&&(G/=s.b);break;case 1:case 3:G=o.a,e==h0&&(G/=s.a)}ee(_,Iw,G)}return ee(_,gc,q),_}function d5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe;if(n=Zt(ve(K(t.a.j,(xe(),PTt)))),n<-1||!t.a.i||D6(u(K(t.a.o,ws),98))||rc(t.a.o,(be(),Hn)).gc()<2&&rc(t.a.o,Bn).gc()<2)return!0;if(t.a.c.Rf())return!1;for(Qt=0,jt=0,St=new le,w=t.a.e,k=0,_=w.length;k<_;++k){for(d=w[k],B=d,q=0,W=B.length;q=n}function g5n(){rbt();function t(r){var s=this;this.dispatch=function(o){var h=o.data;switch(h.cmd){case"algorithms":var d=h3t((pn(),new T(new m1(Cb.b))));r.postMessage({id:h.id,data:d});break;case"categories":var w=h3t((pn(),new T(new m1(Cb.c))));r.postMessage({id:h.id,data:w});break;case"options":var k=h3t((pn(),new T(new m1(Cb.d))));r.postMessage({id:h.id,data:k});break;case"register":x3n(h.algorithms),r.postMessage({id:h.id});break;case"layout":eyn(h.graph,h.layoutOptions||{},h.options||{}),r.postMessage({id:h.id,data:h.graph});break}},this.saveDispatch=function(o){try{s.dispatch(o)}catch(h){r.postMessage({id:o.data.id,error:h})}}}function e(r){var s=this;this.dispatcher=new t({postMessage:function(o){s.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){s.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===vot&&typeof self!==vot){var n=new t(self);self.onmessage=n.saveDispatch}else typeof p!==vot&&p.exports&&(Object.defineProperty(v,"__esModule",{value:!0}),p.exports={default:e,Worker:e})}function p5n(t){t.N||(t.N=!0,t.b=hc(t,0),fs(t.b,0),fs(t.b,1),fs(t.b,2),t.bb=hc(t,1),fs(t.bb,0),fs(t.bb,1),t.fb=hc(t,2),fs(t.fb,3),fs(t.fb,4),Gi(t.fb,5),t.qb=hc(t,3),fs(t.qb,0),Gi(t.qb,1),Gi(t.qb,2),fs(t.qb,3),fs(t.qb,4),Gi(t.qb,5),fs(t.qb,6),t.a=hi(t,4),t.c=hi(t,5),t.d=hi(t,6),t.e=hi(t,7),t.f=hi(t,8),t.g=hi(t,9),t.i=hi(t,10),t.j=hi(t,11),t.k=hi(t,12),t.n=hi(t,13),t.o=hi(t,14),t.p=hi(t,15),t.q=hi(t,16),t.s=hi(t,17),t.r=hi(t,18),t.t=hi(t,19),t.u=hi(t,20),t.v=hi(t,21),t.w=hi(t,22),t.B=hi(t,23),t.A=hi(t,24),t.C=hi(t,25),t.D=hi(t,26),t.F=hi(t,27),t.G=hi(t,28),t.H=hi(t,29),t.J=hi(t,30),t.I=hi(t,31),t.K=hi(t,32),t.M=hi(t,33),t.L=hi(t,34),t.P=hi(t,35),t.Q=hi(t,36),t.R=hi(t,37),t.S=hi(t,38),t.T=hi(t,39),t.U=hi(t,40),t.V=hi(t,41),t.X=hi(t,42),t.W=hi(t,43),t.Y=hi(t,44),t.Z=hi(t,45),t.$=hi(t,46),t._=hi(t,47),t.ab=hi(t,48),t.cb=hi(t,49),t.db=hi(t,50),t.eb=hi(t,51),t.gb=hi(t,52),t.hb=hi(t,53),t.ib=hi(t,54),t.jb=hi(t,55),t.kb=hi(t,56),t.lb=hi(t,57),t.mb=hi(t,58),t.nb=hi(t,59),t.ob=hi(t,60),t.pb=hi(t,61))}function b5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;if(Mt=0,e.f.a==0)for(Z=new S(t);Z.ak&&(Sn(k,e.c.length),u(e.c[k],200)).a.c.length==0;)Eu(e,(Sn(k,e.c.length),e.c[k]));if(!w){--o;continue}if(nmn(e,_,s,w,B,n,k,r)){M=!0;continue}if(B){if(uyn(e,_,s,w,n,k,r)){M=!0;continue}else if(Ryt(_,s)){s.c=!0,M=!0;continue}}else if(Ryt(_,s)){s.c=!0,M=!0;continue}if(M)continue}if(Ryt(_,s)){s.c=!0,M=!0,w&&(w.k=!1);continue}else Gz(s.q)}return M}function Iat(t,e,n,r,s,o,h){var d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks;for(W=0,Rn=0,k=new S(t.b);k.aW&&(o&&(Xb(ce,q),Xb(We,de(_.b-1)),ue(t.d,G),d.c=Nt(Qn,Me,1,0,5,1)),xi=n.b,Ks+=q+e,q=0,M=b.Math.max(M,n.b+n.c+hr)),d.c[d.c.length]=w,Uie(w,xi,Ks),M=b.Math.max(M,xi+hr+n.c),q=b.Math.max(q,B),xi+=hr+e,G=w;if(Rs(t.a,d),ue(t.d,u(Pe(d,d.c.length-1),157)),M=b.Math.max(M,r),zn=Ks+q+n.a,zn1&&(h=b.Math.min(h,b.Math.abs(u(e1(d.a,1),8).b-_.b)))));else for(W=new S(e.j);W.as&&(o=B.a-s,h=Ti,r.c=Nt(Qn,Me,1,0,5,1),s=B.a),B.a>=s&&(r.c[r.c.length]=d,d.a.b>1&&(h=b.Math.min(h,b.Math.abs(u(e1(d.a,d.a.b-2),8).b-B.b)))));if(r.c.length!=0&&o>e.o.a/2&&h>e.o.b/2){for(q=new Nc,tc(q,e),Us(q,(be(),On)),q.n.a=e.o.a/2,bt=new Nc,tc(bt,e),Us(bt,yr),bt.n.a=e.o.a/2,bt.n.b=e.o.b,w=new S(r);w.a=k.b?Ba(d,bt):Ba(d,q)):(k=u(ftn(d.a),8),Z=d.a.b==0?S1(d.c):u(vj(d.a),8),Z.b>=k.b?pa(d,bt):pa(d,q)),M=u(K(d,(xe(),Oo)),74),M&&ry(M,k,!0);e.n.a=s-e.o.a/2}}function x5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks,eh,Zh;if(Rn=null,hr=e,zn=OZt(t,LZt(n),hr),q_(zn,O0(hr,Cd)),xi=u(e4(t.g,ix(I0(hr,zct))),33),B=I0(hr,"sourcePort"),r=null,B&&(r=ix(B)),Ks=u(e4(t.j,r),118),!xi)throw d=s7(hr),G="An edge must have a source node (edge id: '"+d,W=G+H7,nt(new od(W));if(Ks&&!dd(_1(Ks),xi))throw w=O0(hr,Cd),Z="The source port of an edge must be a port of the edge's source node (edge id: '"+w,bt=Z+H7,nt(new od(bt));if(We=(!zn.b&&(zn.b=new En(vr,zn,4,7)),zn.b),o=null,Ks?o=Ks:o=xi,Or(We,o),eh=u(e4(t.g,ix(I0(hr,y8t))),33),q=I0(hr,"targetPort"),s=null,q&&(s=ix(q)),Zh=u(e4(t.j,s),118),!eh)throw M=s7(hr),Mt="An edge must have a target node (edge id: '"+M,St=Mt+H7,nt(new od(St));if(Zh&&!dd(_1(Zh),eh))throw k=O0(hr,Cd),jt="The target port of an edge must be a port of the edge's target node (edge id: '"+k,Qt=jt+H7,nt(new od(Qt));if(Qe=(!zn.c&&(zn.c=new En(vr,zn,5,8)),zn.c),h=null,Zh?h=Zh:h=eh,Or(Qe,h),(!zn.b&&(zn.b=new En(vr,zn,4,7)),zn.b).i==0||(!zn.c&&(zn.c=new En(vr,zn,5,8)),zn.c).i==0)throw _=O0(hr,Cd),ce=_de+_,_e=ce+H7,nt(new od(_e));return Jz(hr,zn),hbn(hr,zn),Rn=yit(t,hr,zn),Rn}function Mhe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn;return M=Tmn(yu(t,(be(),W1)),e),G=f4(yu(t,Mf),e),jt=f4(yu(t,Zl),e),We=Uz(yu(t,Uh),e),B=Uz(yu(t,xh),e),Mt=f4(yu(t,Df),e),W=f4(yu(t,ol),e),ce=f4(yu(t,Jl),e),Qt=f4(yu(t,kh),e),Qe=Uz(yu(t,gu),e),bt=f4(yu(t,Iu),e),St=f4(yu(t,cl),e),_e=f4(yu(t,Du),e),Rn=Uz(yu(t,Ou),e),q=Uz(yu(t,Yu),e),Z=f4(yu(t,Yc),e),n=i4(ut(ot(ga,1),To,25,15,[Mt.a,We.a,ce.a,Rn.a])),r=i4(ut(ot(ga,1),To,25,15,[G.a,M.a,jt.a,Z.a])),s=bt.a,o=i4(ut(ot(ga,1),To,25,15,[W.a,B.a,Qt.a,q.a])),k=i4(ut(ot(ga,1),To,25,15,[Mt.b,G.b,W.b,St.b])),w=i4(ut(ot(ga,1),To,25,15,[We.b,M.b,B.b,Z.b])),_=Qe.b,d=i4(ut(ot(ga,1),To,25,15,[ce.b,jt.b,Qt.b,_e.b])),Ng(yu(t,W1),n+s,k+_),Ng(yu(t,Yc),n+s,k+_),Ng(yu(t,Mf),n+s,0),Ng(yu(t,Zl),n+s,k+_+w),Ng(yu(t,Uh),0,k+_),Ng(yu(t,xh),n+s+r,k+_),Ng(yu(t,ol),n+s+r,0),Ng(yu(t,Jl),0,k+_+w),Ng(yu(t,kh),n+s+r,k+_+w),Ng(yu(t,gu),0,k),Ng(yu(t,Iu),n,0),Ng(yu(t,Du),0,k+_+w),Ng(yu(t,Yu),n+s+r,0),h=new Da,h.a=i4(ut(ot(ga,1),To,25,15,[n+r+s+o,Qe.a,St.a,_e.a])),h.b=i4(ut(ot(ga,1),To,25,15,[k+w+_+d,bt.b,Rn.b,q.b])),h}function k5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;for(W=new le,B=new S(t.d.b);B.as.d.d+s.d.a?_.f.d=!0:(_.f.d=!0,_.f.a=!0))),r.b!=r.d.c&&(e=n);_&&(o=u(tr(t.f,h.d.i),57),e.bo.d.d+o.d.a?_.f.d=!0:(_.f.d=!0,_.f.a=!0))}for(d=new ar(lr(Uo(q).a.Kc(),new H));Vr(d);)h=u(Ir(d),17),h.a.b!=0&&(e=u(vj(h.a),8),h.d.j==(be(),On)&&(Z=new xC(e,new Re(e.a,s.d.d),s,h),Z.f.a=!0,Z.a=h.d,W.c[W.c.length]=Z),h.d.j==yr&&(Z=new xC(e,new Re(e.a,s.d.d+s.d.a),s,h),Z.f.d=!0,Z.a=h.d,W.c[W.c.length]=Z))}return W}function E5n(t,e,n){var r,s,o,h,d,w,k,_,M;if(mr(n,"Network simplex node placement",1),t.e=e,t.n=u(K(e,(ae(),X4)),304),$yn(t),ydn(t),ys(ec(new kn(null,new Tn(t.e.b,16)),new gQ),new E$t(t)),ys(Wi(ec(Wi(ec(new kn(null,new Tn(t.e.b,16)),new V9),new TQ),new _Q),new CQ),new k$t(t)),Be(Fe(K(t.e,(xe(),TS))))&&(h=zc(n,1),mr(h,"Straight Edges Pre-Processing",1),s4n(t),or(h)),efn(t.f),o=u(K(e,SS),19).a*t.f.a.c.length,lat(Xpt(Qpt(xnt(t.f),o),!1),zc(n,1)),t.d.a.gc()!=0){for(h=zc(n,1),mr(h,"Flexible Where Space Processing",1),d=u(Ov(Hj(xu(new kn(null,new Tn(t.f.a,16)),new pQ),new cQ)),19).a,w=u(Ov(qj(xu(new kn(null,new Tn(t.f.a,16)),new bQ),new uQ)),19).a,k=w-d,_=Iv(new Kb,t.f),M=Iv(new Kb,t.f),yf(lf(uf(cf(hf(new Sh,2e4),k),_),M)),ys(Wi(Wi(qnt(t.i),new vQ),new wQ),new yXt(d,_,k,M)),s=t.d.a.ec().Kc();s.Ob();)r=u(s.Pb(),213),r.g=1;lat(Xpt(Qpt(xnt(t.f),o),!1),zc(h,1)),or(h)}Be(Fe(K(e,TS)))&&(h=zc(n,1),mr(h,"Straight Edges Post-Processing",1),lgn(t),or(h)),H3n(t),t.e=null,t.f=null,t.i=null,t.c=null,nl(t.k),t.j=null,t.a=null,t.o=null,t.d.a.$b(),or(n)}function T5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(d=new S(t.a.b);d.a0)if(r=M.gc(),k=Cs(b.Math.floor((r+1)/2))-1,s=Cs(b.Math.ceil((r+1)/2))-1,e.o==V1)for(_=s;_>=k;_--)e.a[jt.p]==jt&&(W=u(M.Xb(_),46),G=u(W.a,10),!S0(n,W.b)&&q>t.b.e[G.p]&&(e.a[G.p]=jt,e.g[jt.p]=e.g[G.p],e.a[jt.p]=e.g[jt.p],e.f[e.g[jt.p].p]=(Fn(),!!(Be(e.f[e.g[jt.p].p])&jt.k==(Gn(),ca))),q=t.b.e[G.p]));else for(_=k;_<=s;_++)e.a[jt.p]==jt&&(bt=u(M.Xb(_),46),Z=u(bt.a,10),!S0(n,bt.b)&&q=G&&(Mt>G&&(q.c=Nt(Qn,Me,1,0,5,1),G=Mt),q.c[q.c.length]=h);q.c.length!=0&&(B=u(Pe(q,zz(e,q.c.length)),128),zn.a.Bc(B)!=null,B.s=W++,w5t(B,Qe,ce),q.c=Nt(Qn,Me,1,0,5,1))}for(jt=t.c.length+1,d=new S(t);d.aRn.s&&(Dl(n),Eu(Rn.i,r),r.c>0&&(r.a=Rn,ue(Rn.t,r),r.b=_e,ue(_e.i,r)))}function k6t(t){var e,n,r,s,o;switch(e=t.c,e){case 11:return t.Ml();case 12:return t.Ol();case 14:return t.Ql();case 15:return t.Tl();case 16:return t.Rl();case 17:return t.Ul();case 21:return mi(t),yi(),yi(),fA;case 10:switch(t.a){case 65:return t.yl();case 90:return t.Dl();case 122:return t.Kl();case 98:return t.El();case 66:return t.zl();case 60:return t.Jl();case 62:return t.Hl()}}switch(o=m5n(t),e=t.c,e){case 3:return t.Zl(o);case 4:return t.Xl(o);case 5:return t.Yl(o);case 0:if(t.a==123&&t.d=48&&e<=57){for(r=e-48;s=48&&e<=57;)if(r=r*10+e-48,r<0)throw nt(new Rr(Gr((Fr(),C8t))))}else throw nt(new Rr(Gr((Fr(),Jde))));if(n=r,e==44){if(s>=t.j)throw nt(new Rr(Gr((Fr(),e0e))));if((e=Ta(t.i,s++))>=48&&e<=57){for(n=e-48;s=48&&e<=57;)if(n=n*10+e-48,n<0)throw nt(new Rr(Gr((Fr(),C8t))));if(r>n)throw nt(new Rr(Gr((Fr(),n0e))))}else n=-1}if(e!=125)throw nt(new Rr(Gr((Fr(),t0e))));t.sl(s)?(o=(yi(),yi(),new Wm(9,o)),t.d=s+1):(o=(yi(),yi(),new Wm(3,o)),t.d=s),o.dm(r),o.cm(n),mi(t)}}return o}function Dhe(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn;for(W=new Jc(e.b),jt=new Jc(e.b),B=new Jc(e.b),We=new Jc(e.b),Z=new Jc(e.b),_e=si(e,0);_e.b!=_e.d.c;)for(Qt=u(ii(_e),11),d=new S(Qt.g);d.a0,bt=Qt.g.c.length>0,k&&bt?B.c[B.c.length]=Qt:k?W.c[W.c.length]=Qt:bt&&(jt.c[jt.c.length]=Qt);for(G=new S(W);G.a1)for(G=new A6((!t.a&&(t.a=new he(us,t,6,6)),t.a));G.e!=G.i.gc();)uC(G);for(h=u(At((!t.a&&(t.a=new he(us,t,6,6)),t.a),0),202),Z=xi,xi>Qt+jt?Z=Qt+jt:xice+W?bt=ce+W:KsQt-jt&&Zce-W&&btxi+hr?We=xi+hr:QtKs+_e?Qe=Ks+_e:cexi-hr&&WeKs-_e&&Qen&&(B=n-1),q=bN+pl(e,24)*PI*M-M/2,q<0?q=1:q>r&&(q=r-1),s=(Tv(),w=new mp,w),W$(s,B),K$(s,q),Or((!h.a&&(h.a=new Bs(Wh,h,5)),h.a),s)}function xe(){xe=X,eht=(di(),X3e),l_t=Q3e,AO=eAt,Tf=Z3e,Fx=nAt,Fw=J3e,Vy=rAt,vE=iAt,wE=sAt,nht=qG,Bw=G2,rht=t4e,CS=cAt,sG=zx,SO=(_6t(),Wve),Z4=Kve,$2=Yve,J4=Xve,Owe=new ao(zG,de(0)),bE=Vve,u_t=Gve,Px=Uve,w_t=wwe,h_t=Jve,f_t=nwe,sht=uwe,d_t=swe,g_t=owe,aG=kwe,aht=mwe,b_t=gwe,p_t=fwe,v_t=bwe,Nw=Rve,_S=jve,Xlt=nve,zTt=ive,i_t=new Mv(12),r_t=new ao(V2,i_t),RTt=(q0(),CE),X0=new ao(DSt,RTt),zy=new ao(ml,0),Nwe=new ao(gft,de(1)),UV=new ao(jx,P7),j2=$G,ws=US,pE=c5,Cwe=UO,Md=z3e,jy=i5,Pwe=new ao(pft,(Fn(),!0)),$y=WO,B2=oft,R2=H2,iG=mb,tht=jG,BTt=(fo(),c0),Xl=new ao(jw,BTt),Ow=a5,nG=$St,qy=Ky,Iwe=dft,o_t=JSt,a_t=(u4(),JO),new ao(KSt,a_t),Lwe=uft,Mwe=lft,Dwe=hft,Awe=cft,iht=Zve,ZTt=Cve,Zlt=_ve,SS=Qve,du=wve,Ry=K2e,ES=W2e,By=N2e,NTt=P2e,Ult=j2e,CO=F2e,Wlt=G2e,JTt=Sve,t_t=Ave,WTt=fve,rG=qve,Jlt=Dve,Qlt=ove,n_t=Fve,$Tt=tve,Ylt=eve,Glt=BG,e_t=Lve,KV=S2e,DTt=C2e,WV=_2e,VTt=lve,HTt=uve,GTt=hve,dE=o5,Oo=s5,Xg=OSt,Dd=aft,Klt=sft,PTt=z2e,Qg=fft,kS=V3e,JV=G3e,Pw=XSt,s_t=U3e,gE=W3e,YTt=yve,XTt=kve,Hy=$x,Hlt=T2e,QTt=Tve,ZV=Q2e,QV=X2e,eG=KO,KTt=pve,TS=Ove,LO=aAt,FTt=Y2e,c_t=Hve,jTt=Z2e,Swe=vve,_we=H2e,UTt=BSt,tG=mve,XV=V2e,pb=O2e,OTt=D2e,YV=L2e,ITt=M2e,Vlt=I2e,Nx=A2e,qTt=cve}function Nat(t,e){yat();var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi;if(We=t.e,G=t.d,s=t.a,We==0)switch(e){case 0:return"0";case 1:return M7;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return ce=new Ap,e<0?ce.a+="0E+":ce.a+="0E",ce.a+=-e,ce.a}if(St=G*10+1+7,jt=Nt(Eh,wd,25,St+1,15,1),n=St,G==1)if(d=s[0],d<0){xi=Gs(d,po);do W=xi,xi=eI(xi,10),jt[--n]=48+Mr(Qp(W,Ia(xi,10)))&Ms;while(_c(xi,0)!=0)}else{xi=d;do W=xi,xi=xi/10|0,jt[--n]=48+(W-xi*10)&Ms;while(xi!=0)}else{Rn=Nt(Sr,Jr,25,G,15,1),hr=G,Pc(s,0,Rn,0,hr);t:for(;;){for(_e=0,k=hr-1;k>=0;k--)zn=Ra(M0(_e,32),Gs(Rn[k],po)),bt=Pdn(zn),Rn[k]=Mr(bt),_e=Mr(Rp(bt,32));Mt=Mr(_e),Z=n;do jt[--n]=48+Mt%10&Ms;while((Mt=Mt/10|0)!=0&&n!=0);for(r=9-Z+n,w=0;w0;w++)jt[--n]=48;for(M=hr-1;Rn[M]==0;M--)if(M==0)break t;hr=M+1}for(;jt[n]==48;)++n}if(q=We<0,h=St-n-e-1,e==0)return q&&(jt[--n]=45),Ih(jt,n,St-n);if(e>0&&h>=-6){if(h>=0){for(_=n+h,B=St-1;B>=_;B--)jt[B+1]=jt[B];return jt[++_]=46,q&&(jt[--n]=45),Ih(jt,n,St-n+1)}for(M=2;M<-h+1;M++)jt[--n]=48;return jt[--n]=46,jt[--n]=48,q&&(jt[--n]=45),Ih(jt,n,St-n)}return Qe=n+1,o=St,Qt=new Lm,q&&(Qt.a+="-"),o-Qe>=1?($p(Qt,jt[n]),Qt.a+=".",Qt.a+=Ih(jt,n+1,St-n-1)):Qt.a+=Ih(jt,n,St-n),Qt.a+="E",h>0&&(Qt.a+="+"),Qt.a+=""+h,Qt.a}function Nhe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce;switch(t.c=e,t.g=new Ar,n=(Dm(),new Sm(t.c)),r=new er(n),s3t(r),St=jr(ze(t.c,(rI(),tSt))),w=u(ze(t.c,Xht),316),Qt=u(ze(t.c,Qht),429),h=u(ze(t.c,QCt),482),jt=u(ze(t.c,Yht),430),t.j=Zt(ve(ze(t.c,h3e))),d=t.a,w.g){case 0:d=t.a;break;case 1:d=t.b;break;case 2:d=t.i;break;case 3:d=t.e;break;case 4:d=t.f;break;default:throw nt(new Pn(pH+(w.f!=null?w.f:""+w.g)))}if(t.d=new iQt(d,Qt,h),ee(t.d,(q8(),uS),Fe(ze(t.c,u3e))),t.d.c=Be(Fe(ze(t.c,ZCt))),i$(t.c).i==0)return t.d;for(M=new nr(i$(t.c));M.e!=M.i.gc();){for(_=u(dr(M),33),q=_.g/2,B=_.f/2,ce=new Re(_.i+q,_.j+B);Ml(t.g,ce);)Fm(ce,(b.Math.random()-.5)*xd,(b.Math.random()-.5)*xd);W=u(ze(_,(di(),KO)),142),Z=new xQt(ce,new ch(ce.a-q-t.j/2-W.b,ce.b-B-t.j/2-W.d,_.g+t.j+(W.b+W.c),_.f+t.j+(W.d+W.a))),ue(t.d.i,Z),Ai(t.g,ce,new ya(Z,_))}switch(jt.g){case 0:if(St==null)t.d.d=u(Pe(t.d.i,0),65);else for(Mt=new S(t.d.i);Mt.a1&&ks(_,bt,_.c.b,_.c),H$(s)));bt=Mt}return _}function D5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks,eh,Zh,X1;for(mr(n,"Greedy cycle removal",1),St=e.a,X1=St.c.length,t.a=Nt(Sr,Jr,25,X1,15,1),t.c=Nt(Sr,Jr,25,X1,15,1),t.b=Nt(Sr,Jr,25,X1,15,1),k=0,bt=new S(St);bt.a0?hr+1:1);for(h=new S(ce.g);h.a0?hr+1:1)}t.c[k]==0?ai(t.e,W):t.a[k]==0&&ai(t.f,W),++k}for(G=-1,q=1,M=new le,t.d=u(K(e,(ae(),Ix)),230);X1>0;){for(;t.e.b!=0;)Ks=u(Tnt(t.e),10),t.b[Ks.p]=G--,G5t(t,Ks),--X1;for(;t.f.b!=0;)eh=u(Tnt(t.f),10),t.b[eh.p]=q++,G5t(t,eh),--X1;if(X1>0){for(B=Oa,Mt=new S(St);Mt.a=B&&(jt>B&&(M.c=Nt(Qn,Me,1,0,5,1),B=jt),M.c[M.c.length]=W));_=t.Zf(M),t.b[_.p]=q++,G5t(t,_),--X1}}for(xi=St.c.length+1,k=0;kt.b[Zh]&&(dw(r,!0),ee(e,xO,(Fn(),!0)));t.a=null,t.c=null,t.b=null,Mh(t.f),Mh(t.e),or(n)}function Fhe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(r=new le,d=new le,Z=e/2,q=t.gc(),s=u(t.Xb(0),8),bt=u(t.Xb(1),8),G=Kst(s.a,s.b,bt.a,bt.b,Z),ue(r,(Sn(0,G.c.length),u(G.c[0],8))),ue(d,(Sn(1,G.c.length),u(G.c[1],8))),k=2;k=0;w--)ai(n,(Sn(w,h.c.length),u(h.c[w],8)));return n}function I5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;if(h=!0,M=null,r=null,s=null,e=!1,q=q4e,k=null,o=null,d=0,w=tst(t,d,UAt,WAt),w=0&&un(t.substr(d,2),"//")?(d+=2,w=tst(t,d,iA,sA),r=t.substr(d,w-d),d=w):M!=null&&(d==t.length||($r(d,t.length),t.charCodeAt(d)!=47))&&(h=!1,w=E2t(t,Lu(35),d),w==-1&&(w=t.length),r=t.substr(d,w-d),d=w);if(!n&&d0&&Ta(_,_.length-1)==58&&(s=_,d=w)),d=t.j){t.a=-1,t.c=1;return}if(e=Ta(t.i,t.d++),t.a=e,t.b==1){switch(e){case 92:if(r=10,t.d>=t.j)throw nt(new Rr(Gr((Fr(),kH))));t.a=Ta(t.i,t.d++);break;case 45:(t.e&512)==512&&t.d=t.j||Ta(t.i,t.d)!=63)break;if(++t.d>=t.j)throw nt(new Rr(Gr((Fr(),Zct))));switch(e=Ta(t.i,t.d++),e){case 58:r=13;break;case 61:r=14;break;case 33:r=15;break;case 91:r=19;break;case 62:r=18;break;case 60:if(t.d>=t.j)throw nt(new Rr(Gr((Fr(),Zct))));if(e=Ta(t.i,t.d++),e==61)r=16;else if(e==33)r=17;else throw nt(new Rr(Gr((Fr(),Pde))));break;case 35:for(;t.d=t.j)throw nt(new Rr(Gr((Fr(),kH))));t.a=Ta(t.i,t.d++);break;default:r=0}t.c=r}function N5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr;if(_e=u(K(t,(xe(),ws)),98),_e!=(va(),U1)&&_e!=kb){for(G=t.b,q=G.c.length,_=new Jc((ql(q+2,jat),q$(Ra(Ra(5,q+2),(q+2)/10|0)))),W=new Jc((ql(q+2,jat),q$(Ra(Ra(5,q+2),(q+2)/10|0)))),ue(_,new Ar),ue(_,new Ar),ue(W,new le),ue(W,new le),ce=new le,e=0;e=Qt||!ehn(bt,r))&&(r=DQt(e,_)),Lo(bt,r),o=new ar(lr(Uo(bt).a.Kc(),new H));Vr(o);)s=u(Ir(o),17),!t.a[s.p]&&(W=s.c.i,--t.e[W.p],t.e[W.p]==0&&A8(h7(q,W)));for(k=_.c.length-1;k>=0;--k)ue(e.b,(Sn(k,_.c.length),u(_.c[k],29)));e.a.c=Nt(Qn,Me,1,0,5,1),or(n)}function Bhe(t){var e,n,r,s,o,h,d,w,k;for(t.b=1,mi(t),e=null,t.c==0&&t.a==94?(mi(t),e=(yi(),yi(),new jl(4)),qc(e,0,G7),d=new jl(4)):d=(yi(),yi(),new jl(4)),s=!0;(k=t.c)!=1;){if(k==0&&t.a==93&&!s){e&&(CC(e,d),d=e);break}if(n=t.a,r=!1,k==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:vy(d,y7(n)),r=!0;break;case 105:case 73:case 99:case 67:n=(vy(d,y7(n)),-1),n<0&&(r=!0);break;case 112:case 80:if(w=J4t(t,n),!w)throw nt(new Rr(Gr((Fr(),Jct))));vy(d,w),r=!0;break;default:n=O5t(t)}else if(k==24&&!s){if(e&&(CC(e,d),d=e),o=Bhe(t),CC(d,o),t.c!=0||t.a!=93)throw nt(new Rr(Gr((Fr(),Gde))));break}if(mi(t),!r){if(k==0){if(n==91)throw nt(new Rr(Gr((Fr(),T8t))));if(n==93)throw nt(new Rr(Gr((Fr(),_8t))));if(n==45&&!s&&t.a!=93)throw nt(new Rr(Gr((Fr(),tut))))}if(t.c!=0||t.a!=45||n==45&&s)qc(d,n,n);else{if(mi(t),(k=t.c)==1)throw nt(new Rr(Gr((Fr(),EH))));if(k==0&&t.a==93)qc(d,n,n),qc(d,45,45);else{if(k==0&&t.a==93||k==24)throw nt(new Rr(Gr((Fr(),tut))));if(h=t.a,k==0){if(h==91)throw nt(new Rr(Gr((Fr(),T8t))));if(h==93)throw nt(new Rr(Gr((Fr(),_8t))));if(h==45)throw nt(new Rr(Gr((Fr(),tut))))}else k==10&&(h=O5t(t));if(mi(t),n>h)throw nt(new Rr(Gr((Fr(),Kde))));qc(d,n,h)}}}s=!1}if(t.c==1)throw nt(new Rr(Gr((Fr(),EH))));return v4(d),TC(d),t.b=0,mi(t),d}function F5n(t){Nr(t.c,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#decimal"])),Nr(t.d,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#integer"])),Nr(t.e,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#boolean"])),Nr(t.f,Zr,ut(ot(Le,1),re,2,6,[Na,"EBoolean",fi,"EBoolean:Object"])),Nr(t.i,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#byte"])),Nr(t.g,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#hexBinary"])),Nr(t.j,Zr,ut(ot(Le,1),re,2,6,[Na,"EByte",fi,"EByte:Object"])),Nr(t.n,Zr,ut(ot(Le,1),re,2,6,[Na,"EChar",fi,"EChar:Object"])),Nr(t.t,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#double"])),Nr(t.u,Zr,ut(ot(Le,1),re,2,6,[Na,"EDouble",fi,"EDouble:Object"])),Nr(t.F,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#float"])),Nr(t.G,Zr,ut(ot(Le,1),re,2,6,[Na,"EFloat",fi,"EFloat:Object"])),Nr(t.I,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#int"])),Nr(t.J,Zr,ut(ot(Le,1),re,2,6,[Na,"EInt",fi,"EInt:Object"])),Nr(t.N,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#long"])),Nr(t.O,Zr,ut(ot(Le,1),re,2,6,[Na,"ELong",fi,"ELong:Object"])),Nr(t.Z,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#short"])),Nr(t.$,Zr,ut(ot(Le,1),re,2,6,[Na,"EShort",fi,"EShort:Object"])),Nr(t._,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#string"]))}function B5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr;if(t.c.length==1)return Sn(0,t.c.length),u(t.c[0],135);if(t.c.length<=0)return new A$;for(w=new S(t);w.aM&&(zn=0,hr+=_+_e,_=0),Wbn(Qt,h,zn,hr),e=b.Math.max(e,zn+ce.a),_=b.Math.max(_,ce.b),zn+=ce.a+_e;for(jt=new Ar,n=new Ar,Qe=new S(t);Qe.aYst(o))&&(M=o);for(!M&&(M=(Sn(0,Z.c.length),u(Z.c[0],180))),W=new S(e.b);W.a=-1900?1:0,n>=4?Yr(t,ut(ot(Le,1),re,2,6,[tfe,efe])[d]):Yr(t,ut(ot(Le,1),re,2,6,["BC","AD"])[d]);break;case 121:Dhn(t,n,r);break;case 77:Pwn(t,n,r);break;case 107:w=s.q.getHours(),w==0?Xd(t,24,n):Xd(t,w,n);break;case 83:n2n(t,n,s);break;case 69:_=r.q.getDay(),n==5?Yr(t,ut(ot(Le,1),re,2,6,["S","M","T","W","T","F","S"])[_]):n==4?Yr(t,ut(ot(Le,1),re,2,6,[Jat,tot,eot,not,rot,iot,sot])[_]):Yr(t,ut(ot(Le,1),re,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[_]);break;case 97:s.q.getHours()>=12&&s.q.getHours()<24?Yr(t,ut(ot(Le,1),re,2,6,["AM","PM"])[1]):Yr(t,ut(ot(Le,1),re,2,6,["AM","PM"])[0]);break;case 104:M=s.q.getHours()%12,M==0?Xd(t,12,n):Xd(t,M,n);break;case 75:B=s.q.getHours()%12,Xd(t,B,n);break;case 72:q=s.q.getHours(),Xd(t,q,n);break;case 99:G=r.q.getDay(),n==5?Yr(t,ut(ot(Le,1),re,2,6,["S","M","T","W","T","F","S"])[G]):n==4?Yr(t,ut(ot(Le,1),re,2,6,[Jat,tot,eot,not,rot,iot,sot])[G]):n==3?Yr(t,ut(ot(Le,1),re,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[G]):Xd(t,G,1);break;case 76:W=r.q.getMonth(),n==5?Yr(t,ut(ot(Le,1),re,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[W]):n==4?Yr(t,ut(ot(Le,1),re,2,6,[qat,Hat,Vat,Gat,ux,Uat,Wat,Kat,Yat,Xat,Qat,Zat])[W]):n==3?Yr(t,ut(ot(Le,1),re,2,6,["Jan","Feb","Mar","Apr",ux,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[W]):Xd(t,W+1,n);break;case 81:Z=r.q.getMonth()/3|0,n<4?Yr(t,ut(ot(Le,1),re,2,6,["Q1","Q2","Q3","Q4"])[Z]):Yr(t,ut(ot(Le,1),re,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[Z]);break;case 100:bt=r.q.getDate(),Xd(t,bt,n);break;case 109:k=s.q.getMinutes(),Xd(t,k,n);break;case 115:h=s.q.getSeconds(),Xd(t,h,n);break;case 122:n<4?Yr(t,o.c[0]):Yr(t,o.c[1]);break;case 118:Yr(t,o.b);break;case 90:n<3?Yr(t,Ggn(o)):n==3?Yr(t,Kgn(o)):Yr(t,Ygn(o.a));break;default:return!1}return!0}function T6t(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi;if(Tue(e),w=u(At((!e.b&&(e.b=new En(vr,e,4,7)),e.b),0),82),_=u(At((!e.c&&(e.c=new En(vr,e,5,8)),e.c),0),82),d=Ro(w),k=Ro(_),h=(!e.a&&(e.a=new he(us,e,6,6)),e.a).i==0?null:u(At((!e.a&&(e.a=new he(us,e,6,6)),e.a),0),202),_e=u(tr(t.a,d),10),zn=u(tr(t.a,k),10),We=null,hr=null,_t(w,186)&&(ce=u(tr(t.a,w),299),_t(ce,11)?We=u(ce,11):_t(ce,10)&&(_e=u(ce,10),We=u(Pe(_e.j,0),11))),_t(_,186)&&(Rn=u(tr(t.a,_),299),_t(Rn,11)?hr=u(Rn,11):_t(Rn,10)&&(zn=u(Rn,10),hr=u(Pe(zn.j,0),11))),!_e||!zn)throw nt(new FT("The source or the target of edge "+e+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(W=new zv,Bo(W,e),ee(W,(ae(),Ii),e),ee(W,(xe(),Oo),null),q=u(K(r,Wc),21),_e==zn&&q.Fc((go(),wS)),We||(Qt=(ho(),su),Qe=null,h&&V3(u(K(_e,ws),98))&&(Qe=new Re(h.j,h.k),NZt(Qe,rD(e)),lJt(Qe,n),Zm(k,d)&&(Qt=al,Fi(Qe,_e.n))),We=kle(_e,Qe,Qt,r)),hr||(Qt=(ho(),al),xi=null,h&&V3(u(K(zn,ws),98))&&(xi=new Re(h.b,h.c),NZt(xi,rD(e)),lJt(xi,n)),hr=kle(zn,xi,Qt,$a(zn))),Ba(W,We),pa(W,hr),(We.e.c.length>1||We.g.c.length>1||hr.e.c.length>1||hr.g.c.length>1)&&q.Fc((go(),vS)),B=new nr((!e.n&&(e.n=new he(Yo,e,1,7)),e.n));B.e!=B.i.gc();)if(M=u(dr(B),137),!Be(Fe(ze(M,j2)))&&M.a)switch(Z=Pit(M),ue(W.b,Z),u(K(Z,Dd),272).g){case 1:case 2:q.Fc((go(),uE));break;case 0:q.Fc((go(),cE)),ee(Z,Dd,(D1(),TE))}if(o=u(K(r,ES),314),bt=u(K(r,rG),315),s=o==(K6(),wO)||bt==(aC(),fht),h&&(!h.a&&(h.a=new Bs(Wh,h,5)),h.a).i!=0&&s){for(Mt=sI(h),G=new ju,jt=si(Mt,0);jt.b!=jt.d.c;)St=u(ii(jt),8),ai(G,new So(St));ee(W,X9t,G)}return W}function z5n(t){t.gb||(t.gb=!0,t.b=hc(t,0),fs(t.b,18),Gi(t.b,19),t.a=hc(t,1),fs(t.a,1),Gi(t.a,2),Gi(t.a,3),Gi(t.a,4),Gi(t.a,5),t.o=hc(t,2),fs(t.o,8),fs(t.o,9),Gi(t.o,10),Gi(t.o,11),Gi(t.o,12),Gi(t.o,13),Gi(t.o,14),Gi(t.o,15),Gi(t.o,16),Gi(t.o,17),Gi(t.o,18),Gi(t.o,19),Gi(t.o,20),Gi(t.o,21),Gi(t.o,22),Gi(t.o,23),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),t.p=hc(t,3),fs(t.p,2),fs(t.p,3),fs(t.p,4),fs(t.p,5),Gi(t.p,6),Gi(t.p,7),Do(t.p),Do(t.p),t.q=hc(t,4),fs(t.q,8),t.v=hc(t,5),Gi(t.v,9),Do(t.v),Do(t.v),Do(t.v),t.w=hc(t,6),fs(t.w,2),fs(t.w,3),fs(t.w,4),Gi(t.w,5),t.B=hc(t,7),Gi(t.B,1),Do(t.B),Do(t.B),Do(t.B),t.Q=hc(t,8),Gi(t.Q,0),Do(t.Q),t.R=hc(t,9),fs(t.R,1),t.S=hc(t,10),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),t.T=hc(t,11),Gi(t.T,10),Gi(t.T,11),Gi(t.T,12),Gi(t.T,13),Gi(t.T,14),Do(t.T),Do(t.T),t.U=hc(t,12),fs(t.U,2),fs(t.U,3),Gi(t.U,4),Gi(t.U,5),Gi(t.U,6),Gi(t.U,7),Do(t.U),t.V=hc(t,13),Gi(t.V,10),t.W=hc(t,14),fs(t.W,18),fs(t.W,19),fs(t.W,20),Gi(t.W,21),Gi(t.W,22),Gi(t.W,23),t.bb=hc(t,15),fs(t.bb,10),fs(t.bb,11),fs(t.bb,12),fs(t.bb,13),fs(t.bb,14),fs(t.bb,15),fs(t.bb,16),Gi(t.bb,17),Do(t.bb),Do(t.bb),t.eb=hc(t,16),fs(t.eb,2),fs(t.eb,3),fs(t.eb,4),fs(t.eb,5),fs(t.eb,6),fs(t.eb,7),Gi(t.eb,8),Gi(t.eb,9),t.ab=hc(t,17),fs(t.ab,0),fs(t.ab,1),t.H=hc(t,18),Gi(t.H,0),Gi(t.H,1),Gi(t.H,2),Gi(t.H,3),Gi(t.H,4),Gi(t.H,5),Do(t.H),t.db=hc(t,19),Gi(t.db,2),t.c=hi(t,20),t.d=hi(t,21),t.e=hi(t,22),t.f=hi(t,23),t.i=hi(t,24),t.g=hi(t,25),t.j=hi(t,26),t.k=hi(t,27),t.n=hi(t,28),t.r=hi(t,29),t.s=hi(t,30),t.t=hi(t,31),t.u=hi(t,32),t.fb=hi(t,33),t.A=hi(t,34),t.C=hi(t,35),t.D=hi(t,36),t.F=hi(t,37),t.G=hi(t,38),t.I=hi(t,39),t.J=hi(t,40),t.L=hi(t,41),t.M=hi(t,42),t.N=hi(t,43),t.O=hi(t,44),t.P=hi(t,45),t.X=hi(t,46),t.Y=hi(t,47),t.Z=hi(t,48),t.$=hi(t,49),t._=hi(t,50),t.cb=hi(t,51),t.K=hi(t,52))}function di(){di=X;var t,e;GS=new ts(V1e),EE=new ts(G1e),CSt=(Qd(),tft),z3e=new vn(hkt,CSt),jx=new vn(px,null),q3e=new ts(s8t),ASt=(cy(),Ki(rft,ut(ot(ift,1),oe,291,0,[nft]))),BG=new vn(cH,ASt),UO=new vn(KI,(Fn(),!1)),LSt=(fo(),c0),jw=new vn(gkt,LSt),ISt=(q0(),bft),DSt=new vn(UI,ISt),PSt=new vn(gH,!1),FSt=($0(),HG),i5=new vn(oH,FSt),USt=new Mv(12),V2=new vn(ww,USt),RG=new vn($I,!1),BSt=new vn(vct,!1),YO=new vn(FC,!1),QSt=(va(),kb),US=new vn(Fot,QSt),$x=new ts(uH),zG=new ts(jI),gft=new ts(Hq),pft=new ts(PC),RSt=new ju,s5=new vn(Ekt,RSt),V3e=new vn(Ckt,!1),G3e=new vn(Skt,!1),jSt=new MT,KO=new vn(Lkt,jSt),$G=new vn(ukt,!1),Y3e=new vn(U1e,1),new vn(W1e,!0),de(0),new vn(K1e,de(100)),new vn(Y1e,!1),de(0),new vn(X1e,de(4e3)),de(0),new vn(Q1e,de(400)),new vn(Z1e,!1),new vn(J1e,!1),new vn(tde,!0),new vn(ede,!1),SSt=(Az(),yft),H3e=new vn(i8t,SSt),X3e=new vn(Qxt,10),Q3e=new vn(Zxt,10),eAt=new vn(Mot,20),Z3e=new vn(Jxt,10),nAt=new vn(Pot,2),J3e=new vn(tkt,10),rAt=new vn(ekt,0),qG=new vn(ikt,5),iAt=new vn(nkt,1),sAt=new vn(rkt,1),G2=new vn(ky,20),t4e=new vn(skt,10),cAt=new vn(akt,10),zx=new ts(okt),oAt=new aUt,aAt=new vn(Mkt,oAt),W3e=new ts(bct),WSt=!1,U3e=new vn(pct,WSt),zSt=new Mv(5),$St=new vn(pkt,zSt),qSt=(fy(),e=u(Wf(vo),9),new oh(e,u(ff(e,e.length),9),0)),a5=new vn(F7,qSt),YSt=(u4(),xb),KSt=new vn(wkt,YSt),uft=new ts(mkt),lft=new ts(ykt),hft=new ts(xkt),cft=new ts(kkt),HSt=(t=u(Wf(tA),9),new oh(t,u(ff(t,t.length),9),0)),H2=new vn(M4,HSt),GSt=on((bl(),AE)),mb=new vn(bx,GSt),VSt=new Re(0,0),o5=new vn(vx,VSt),jG=new vn(gct,!1),MSt=(D1(),TE),aft=new vn(Tkt,MSt),sft=new vn(Vq,!1),de(1),new vn(nde,null),XSt=new ts(Akt),fft=new ts(_kt),tAt=(be(),ac),c5=new vn(lkt,tAt),ml=new ts(ckt),ZSt=(il(),on(Eb)),Ky=new vn(B7,ZSt),dft=new vn(bkt,!1),JSt=new vn(vkt,!0),WO=new vn(fkt,!1),oft=new vn(dkt,!1),OSt=new vn(Dot,1),NSt=(tq(),wft),new vn(rde,NSt),K3e=!0}function ae(){ae=X;var t,e;Ii=new ts(oxt),U9t=new ts("coordinateOrigin"),$lt=new ts("processors"),G9t=new Hs("compoundNode",(Fn(),!1)),kO=new Hs("insideConnections",!1),X9t=new ts("originalBendpoints"),Q9t=new ts("originalDummyNodePosition"),Z9t=new ts("originalLabelEdge"),TO=new ts("representedLabels"),mS=new ts("endLabels"),Lx=new ts("endLabel.origin"),Dx=new Hs("labelSide",(Vl(),ZO)),K4=new Hs("maxEdgeThickness",0),H1=new Hs("reversed",!1),Ix=new ts(jfe),a1=new Hs("longEdgeSource",null),qh=new Hs("longEdgeTarget",null),Py=new Hs("longEdgeHasLabelDummies",!1),EO=new Hs("longEdgeBeforeLabelDummy",!1),HV=new Hs("edgeConstraint",(h2(),Elt)),Dw=new ts("inLayerLayoutUnit"),P2=new Hs("inLayerConstraint",(B0(),yO)),Mx=new Hs("inLayerSuccessorConstraint",new le),Y9t=new Hs("inLayerSuccessorConstraintBetweenNonDummies",!1),sl=new ts("portDummy"),qV=new Hs("crossingHint",de(0)),Wc=new Hs("graphProperties",(e=u(Wf(Mlt),9),new oh(e,u(ff(e,e.length),9),0))),gc=new Hs("externalPortSide",(be(),ac)),K9t=new Hs("externalPortSize",new Da),Plt=new ts("externalPortReplacedDummies"),VV=new ts("externalPortReplacedDummy"),Ny=new Hs("externalPortConnections",(t=u(Wf(Za),9),new oh(t,u(ff(t,t.length),9),0))),Iw=new Hs(Dfe,0),V9t=new ts("barycenterAssociates"),Ox=new ts("TopSideComments"),Ax=new ts("BottomSideComments"),zV=new ts("CommentConnectionPort"),Blt=new Hs("inputCollect",!1),jlt=new Hs("outputCollect",!1),xO=new Hs("cyclic",!1),W9t=new ts("crossHierarchyMap"),qlt=new ts("targetOffset"),new Hs("splineLabelSize",new Da),X4=new ts("spacings"),GV=new Hs("partitionConstraint",!1),Lw=new ts("breakingPoint.info"),eTt=new ts("splines.survivingEdge"),F2=new ts("splines.route.start"),Q4=new ts("splines.edgeChain"),tTt=new ts("originalPortConstraints"),hE=new ts("selfLoopHolder"),fE=new ts("splines.nsPortY"),Lc=new ts("modelOrder"),Rlt=new ts("longEdgeTargetNode"),Mw=new Hs(f1e,!1),Y4=new Hs(f1e,!1),Flt=new ts("layerConstraints.hiddenNodes"),J9t=new ts("layerConstraints.opposidePort"),zlt=new ts("targetNode.modelOrder")}function _6t(){_6t=X,fTt=(TD(),NV),Y2e=new vn(pxt,fTt),ove=new vn(bxt,(Fn(),!1)),wTt=(x$(),Nlt),fve=new vn(Kq,wTt),Sve=new vn(vxt,!1),Ave=new vn(wxt,!0),T2e=new vn(mxt,!1),CTt=(yD(),pht),Hve=new vn(yxt,CTt),de(1),Qve=new vn(xxt,de(7)),Zve=new vn(kxt,!1),cve=new vn(Ext,!1),hTt=(m2(),xlt),K2e=new vn(qot,hTt),xTt=(Zz(),cht),Cve=new vn(VI,xTt),mTt=(ph(),_O),wve=new vn(Txt,mTt),de(-1),vve=new vn(_xt,de(-1)),de(-1),mve=new vn(Cxt,de(-1)),de(-1),yve=new vn(Hot,de(4)),de(-1),kve=new vn(Vot,de(2)),yTt=(m4(),hG),_ve=new vn(Got,yTt),de(0),Tve=new vn(Uot,de(0)),pve=new vn(Wot,de(Ti)),lTt=(K6(),Cx),W2e=new vn($C,lTt),N2e=new vn(Sxt,!1),z2e=new vn(Kot,.1),G2e=new vn(Yot,!1),de(-1),H2e=new vn(Axt,de(-1)),de(-1),V2e=new vn(Lxt,de(-1)),de(0),P2e=new vn(Mxt,de(40)),uTt=(G8(),Ilt),j2e=new vn(Xot,uTt),cTt=mO,F2e=new vn(Yq,cTt),_Tt=(aC(),AS),qve=new vn(D4,_Tt),Ove=new ts(Xq),kTt=(bD(),FV),Lve=new vn(Qot,kTt),ETt=(nI(),BV),Dve=new vn(Zot,ETt),Fve=new vn(Jot,.3),Rve=new ts(tct),TTt=(sy(),lG),jve=new vn(ect,TTt),pTt=(uz(),vht),tve=new vn(Dxt,pTt),bTt=(lD(),wht),eve=new vn(Ixt,bTt),vTt=(Z8(),DS),nve=new vn(Qq,vTt),ive=new vn(Zq,.2),Z2e=new vn(nct,2),Wve=new vn(Oxt,null),Yve=new vn(Nxt,10),Kve=new vn(Pxt,10),Xve=new vn(Fxt,20),de(0),Vve=new vn(Bxt,de(0)),de(0),Gve=new vn(Rxt,de(0)),de(0),Uve=new vn(jxt,de(0)),_2e=new vn(rct,!1),iTt=(f7(),bS),S2e=new vn($xt,iTt),rTt=(I$(),mlt),C2e=new vn(zxt,rTt),lve=new vn(Jq,!1),de(0),uve=new vn(ict,de(16)),de(0),hve=new vn(sct,de(5)),LTt=(gz(),xht),wwe=new vn(Y0,LTt),Jve=new vn(tH,10),nwe=new vn(eH,1),ATt=(X$(),OV),uwe=new vn(zC,ATt),swe=new ts(act),STt=de(1),de(0),owe=new vn(oct,STt),MTt=(oz(),yht),kwe=new vn(nH,MTt),mwe=new ts(rH),gwe=new vn(iH,!0),fwe=new vn(sH,2),bwe=new vn(cct,!0),gTt=(nq(),PV),Q2e=new vn(qxt,gTt),dTt=(rx(),sE),X2e=new vn(Hxt,dTt),oTt=(j0(),bb),O2e=new vn(aH,oTt),I2e=new vn(Vxt,!1),sTt=(ew(),z4),A2e=new vn(uct,sTt),aTt=(Y_(),uht),D2e=new vn(Gxt,aTt),L2e=new vn(lct,0),M2e=new vn(hct,0),gve=klt,dve=wO,xve=cG,Eve=cG,bve=oht,q2e=($0(),np),U2e=Cx,$2e=Cx,B2e=Cx,R2e=np,Nve=LS,Pve=AS,Mve=AS,Ive=AS,Bve=dht,zve=LS,$ve=LS,rve=(q0(),qx),sve=qx,ave=DS,J2e=XO,twe=mE,ewe=Gy,rwe=mE,iwe=Gy,lwe=mE,hwe=Gy,awe=ylt,cwe=OV,Ewe=mE,Twe=Gy,ywe=mE,xwe=Gy,pwe=Gy,dwe=Gy,vwe=Gy}function co(){co=X,HEt=new Ls("DIRECTION_PREPROCESSOR",0),$Et=new Ls("COMMENT_PREPROCESSOR",1),hS=new Ls("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),slt=new Ls("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),c9t=new Ls("PARTITION_PREPROCESSOR",4),gV=new Ls("LABEL_DUMMY_INSERTER",5),TV=new Ls("SELF_LOOP_PREPROCESSOR",6),eE=new Ls("LAYER_CONSTRAINT_PREPROCESSOR",7),a9t=new Ls("PARTITION_MIDPROCESSOR",8),QEt=new Ls("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),i9t=new Ls("NODE_PROMOTION",10),tE=new Ls("LAYER_CONSTRAINT_POSTPROCESSOR",11),o9t=new Ls("PARTITION_POSTPROCESSOR",12),KEt=new Ls("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),u9t=new Ls("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),NEt=new Ls("BREAKING_POINT_INSERTER",15),wV=new Ls("LONG_EDGE_SPLITTER",16),alt=new Ls("PORT_SIDE_PROCESSOR",17),fV=new Ls("INVERTED_PORT_PROCESSOR",18),xV=new Ls("PORT_LIST_SORTER",19),h9t=new Ls("SORT_BY_INPUT_ORDER_OF_MODEL",20),yV=new Ls("NORTH_SOUTH_PORT_PREPROCESSOR",21),PEt=new Ls("BREAKING_POINT_PROCESSOR",22),s9t=new Ls(i1e,23),f9t=new Ls(s1e,24),kV=new Ls("SELF_LOOP_PORT_RESTORER",25),l9t=new Ls("SINGLE_EDGE_GRAPH_WRAPPER",26),dV=new Ls("IN_LAYER_CONSTRAINT_PROCESSOR",27),GEt=new Ls("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),n9t=new Ls("LABEL_AND_NODE_SIZE_PROCESSOR",29),e9t=new Ls("INNERMOST_NODE_MARGIN_CALCULATOR",30),_V=new Ls("SELF_LOOP_ROUTER",31),REt=new Ls("COMMENT_NODE_MARGIN_CALCULATOR",32),hV=new Ls("END_LABEL_PREPROCESSOR",33),bV=new Ls("LABEL_DUMMY_SWITCHER",34),BEt=new Ls("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),J7=new Ls("LABEL_SIDE_SELECTOR",36),JEt=new Ls("HYPEREDGE_DUMMY_MERGER",37),YEt=new Ls("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),r9t=new Ls("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),fS=new Ls("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),zEt=new Ls("CONSTRAINTS_POSTPROCESSOR",41),jEt=new Ls("COMMENT_POSTPROCESSOR",42),t9t=new Ls("HYPERNODE_PROCESSOR",43),XEt=new Ls("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),vV=new Ls("LONG_EDGE_JOINER",45),EV=new Ls("SELF_LOOP_POSTPROCESSOR",46),FEt=new Ls("BREAKING_POINT_REMOVER",47),mV=new Ls("NORTH_SOUTH_PORT_POSTPROCESSOR",48),ZEt=new Ls("HORIZONTAL_COMPACTOR",49),pV=new Ls("LABEL_DUMMY_REMOVER",50),UEt=new Ls("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),VEt=new Ls("END_LABEL_SORTER",52),bO=new Ls("REVERSED_EDGE_RESTORER",53),lV=new Ls("END_LABEL_POSTPROCESSOR",54),WEt=new Ls("HIERARCHICAL_NODE_RESIZER",55),qEt=new Ls("DIRECTION_POSTPROCESSOR",56)}function q5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks,eh,Zh,X1,hU,bN,dA,vN,OE,Fft,j5e,Bft,cp,Gw,NE,wN,mN,Kx,Rft,gA,$5e,SLt,Uw,pA,jft,Yx,bA,i3,vA,$ft,z5e;for(SLt=0,xi=e,Zh=0,bN=xi.length;Zh0&&(t.a[cp.p]=SLt++)}for(bA=0,Ks=n,X1=0,dA=Ks.length;X10;){for(cp=(Zn(mN.b>0),u(mN.a.Xb(mN.c=--mN.b),11)),wN=0,d=new S(cp.e);d.a0&&(cp.j==(be(),On)?(t.a[cp.p]=bA,++bA):(t.a[cp.p]=bA+vN+Fft,++Fft))}bA+=Fft}for(NE=new Ar,G=new A0,hr=e,eh=0,hU=hr.length;ehk.b&&(k.b=Kx)):cp.i.c==$5e&&(Kxk.c&&(k.c=Kx));for(M8(W,0,W.length,null),Yx=Nt(Sr,Jr,25,W.length,15,1),r=Nt(Sr,Jr,25,bA+1,15,1),bt=0;bt0;)_e%2>0&&(s+=$ft[_e+1]),_e=(_e-1)/2|0,++$ft[_e];for(Qe=Nt(dme,Me,362,W.length*2,0,1),jt=0;jt'?":un(Pde,t)?"'(?<' or '(? toIndex: ",R6t=", toIndex: ",j6t="Index: ",$6t=", Size: ",D7="org.eclipse.elk.alg.common",qi={62:1},dfe="org.eclipse.elk.alg.common.compaction",gfe="Scanline/EventHandler",r0="org.eclipse.elk.alg.common.compaction.oned",pfe="CNode belongs to another CGroup.",bfe="ISpacingsHandler/1",wot="The ",mot=" instance has been finished already.",vfe="The direction ",wfe=" is not supported by the CGraph instance.",mfe="OneDimensionalCompactor",yfe="OneDimensionalCompactor/lambda$0$Type",xfe="Quadruplet",kfe="ScanlineConstraintCalculator",Efe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",Tfe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",_fe="ScanlineConstraintCalculator/Timestamp",Cfe="ScanlineConstraintCalculator/lambda$0$Type",md={169:1,45:1},yot="org.eclipse.elk.alg.common.compaction.options",sc="org.eclipse.elk.core.data",z6t="org.eclipse.elk.polyomino.traversalStrategy",q6t="org.eclipse.elk.polyomino.lowLevelSort",H6t="org.eclipse.elk.polyomino.highLevelSort",V6t="org.eclipse.elk.polyomino.fill",Ph={130:1},xot="polyomino",IC="org.eclipse.elk.alg.common.networksimplex",i0={177:1,3:1,4:1},Sfe="org.eclipse.elk.alg.common.nodespacing",T2="org.eclipse.elk.alg.common.nodespacing.cellsystem",I7="CENTER",Afe={212:1,326:1},G6t={3:1,4:1,5:1,595:1},fx="LEFT",dx="RIGHT",U6t="Vertical alignment cannot be null",W6t="BOTTOM",Bq="org.eclipse.elk.alg.common.nodespacing.internal",OC="UNDEFINED",R1=.01,FI="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",Lfe="LabelPlacer/lambda$0$Type",Mfe="LabelPlacer/lambda$1$Type",Dfe="portRatioOrPosition",O7="org.eclipse.elk.alg.common.overlaps",kot="DOWN",yd="org.eclipse.elk.alg.common.polyomino",Rq="NORTH",Eot="EAST",Tot="SOUTH",_ot="WEST",jq="org.eclipse.elk.alg.common.polyomino.structures",K6t="Direction",Cot="Grid is only of size ",Sot=". Requested point (",Aot=") is out of bounds.",$q=" Given center based coordinates were (",BI="org.eclipse.elk.graph.properties",Ife="IPropertyHolder",Y6t={3:1,94:1,134:1},gx="org.eclipse.elk.alg.common.spore",Ofe="org.eclipse.elk.alg.common.utils",_2={209:1},A4="org.eclipse.elk.core",Nfe="Connected Components Compaction",Pfe="org.eclipse.elk.alg.disco",zq="org.eclipse.elk.alg.disco.graph",Lot="org.eclipse.elk.alg.disco.options",X6t="CompactionStrategy",Q6t="org.eclipse.elk.disco.componentCompaction.strategy",Z6t="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",J6t="org.eclipse.elk.disco.debug.discoGraph",txt="org.eclipse.elk.disco.debug.discoPolys",Ffe="componentCompaction",C2="org.eclipse.elk.disco",Mot="org.eclipse.elk.spacing.componentComponent",Dot="org.eclipse.elk.edge.thickness",px="org.eclipse.elk.aspectRatio",ww="org.eclipse.elk.padding",L4="org.eclipse.elk.alg.disco.transform",Iot=1.5707963267948966,N7=17976931348623157e292,xy={3:1,4:1,5:1,192:1},ext={3:1,6:1,4:1,5:1,106:1,120:1},nxt="org.eclipse.elk.alg.force",rxt="ComponentsProcessor",Bfe="ComponentsProcessor/1",RI="org.eclipse.elk.alg.force.graph",Rfe="Component Layout",ixt="org.eclipse.elk.alg.force.model",qq="org.eclipse.elk.force.model",sxt="org.eclipse.elk.force.iterations",axt="org.eclipse.elk.force.repulsivePower",Oot="org.eclipse.elk.force.temperature",xd=.001,Not="org.eclipse.elk.force.repulsion",NC="org.eclipse.elk.alg.force.options",P7=1.600000023841858,Wl="org.eclipse.elk.force",jI="org.eclipse.elk.priority",ky="org.eclipse.elk.spacing.nodeNode",Pot="org.eclipse.elk.spacing.edgeLabel",Hq="org.eclipse.elk.randomSeed",PC="org.eclipse.elk.separateConnectedComponents",$I="org.eclipse.elk.interactive",Fot="org.eclipse.elk.portConstraints",Vq="org.eclipse.elk.edgeLabels.inline",FC="org.eclipse.elk.omitNodeMicroLayout",bx="org.eclipse.elk.nodeSize.options",M4="org.eclipse.elk.nodeSize.constraints",F7="org.eclipse.elk.nodeLabels.placement",B7="org.eclipse.elk.portLabels.placement",oxt="origin",jfe="random",$fe="boundingBox.upLeft",zfe="boundingBox.lowRight",cxt="org.eclipse.elk.stress.fixed",uxt="org.eclipse.elk.stress.desiredEdgeLength",lxt="org.eclipse.elk.stress.dimension",hxt="org.eclipse.elk.stress.epsilon",fxt="org.eclipse.elk.stress.iterationLimit",sb="org.eclipse.elk.stress",qfe="ELK Stress",vx="org.eclipse.elk.nodeSize.minimum",Gq="org.eclipse.elk.alg.force.stress",Hfe="Layered layout",wx="org.eclipse.elk.alg.layered",zI="org.eclipse.elk.alg.layered.compaction.components",BC="org.eclipse.elk.alg.layered.compaction.oned",Uq="org.eclipse.elk.alg.layered.compaction.oned.algs",S2="org.eclipse.elk.alg.layered.compaction.recthull",kd="org.eclipse.elk.alg.layered.components",K0="NONE",Cc={3:1,6:1,4:1,9:1,5:1,122:1},Vfe={3:1,6:1,4:1,5:1,141:1,106:1,120:1},Wq="org.eclipse.elk.alg.layered.compound",vs={51:1},ru="org.eclipse.elk.alg.layered.graph",Bot=" -> ",Gfe="Not supported by LGraph",dxt="Port side is undefined",Rot={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},Gg={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},Ufe={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},Wfe=`([{"' \r +`,Kfe=`)]}"' \r +`,Yfe="The given string contains parts that cannot be parsed as numbers.",qI="org.eclipse.elk.core.math",Xfe={3:1,4:1,142:1,207:1,414:1},Qfe={3:1,4:1,116:1,207:1,414:1},Un="org.eclipse.elk.layered",Ug="org.eclipse.elk.alg.layered.graph.transform",Zfe="ElkGraphImporter",Jfe="ElkGraphImporter/lambda$0$Type",t1e="ElkGraphImporter/lambda$1$Type",e1e="ElkGraphImporter/lambda$2$Type",n1e="ElkGraphImporter/lambda$4$Type",r1e="Node margin calculation",$n="org.eclipse.elk.alg.layered.intermediate",i1e="ONE_SIDED_GREEDY_SWITCH",s1e="TWO_SIDED_GREEDY_SWITCH",jot="No implementation is available for the layout processor ",gxt="IntermediateProcessorStrategy",$ot="Node '",a1e="FIRST_SEPARATE",o1e="LAST_SEPARATE",c1e="Odd port side processing",Ps="org.eclipse.elk.alg.layered.intermediate.compaction",RC="org.eclipse.elk.alg.layered.intermediate.greedyswitch",s0="org.eclipse.elk.alg.layered.p3order.counting",HI={225:1},mx="org.eclipse.elk.alg.layered.intermediate.loops",Kl="org.eclipse.elk.alg.layered.intermediate.loops.ordering",ab="org.eclipse.elk.alg.layered.intermediate.loops.routing",jC="org.eclipse.elk.alg.layered.intermediate.preserveorder",Ed="org.eclipse.elk.alg.layered.intermediate.wrapping",Sc="org.eclipse.elk.alg.layered.options",zot="INTERACTIVE",u1e="DEPTH_FIRST",l1e="EDGE_LENGTH",h1e="SELF_LOOPS",f1e="firstTryWithInitialOrder",pxt="org.eclipse.elk.layered.directionCongruency",bxt="org.eclipse.elk.layered.feedbackEdges",Kq="org.eclipse.elk.layered.interactiveReferencePoint",vxt="org.eclipse.elk.layered.mergeEdges",wxt="org.eclipse.elk.layered.mergeHierarchyEdges",mxt="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",yxt="org.eclipse.elk.layered.portSortingStrategy",xxt="org.eclipse.elk.layered.thoroughness",kxt="org.eclipse.elk.layered.unnecessaryBendpoints",Ext="org.eclipse.elk.layered.generatePositionAndLayerIds",qot="org.eclipse.elk.layered.cycleBreaking.strategy",VI="org.eclipse.elk.layered.layering.strategy",Txt="org.eclipse.elk.layered.layering.layerConstraint",_xt="org.eclipse.elk.layered.layering.layerChoiceConstraint",Cxt="org.eclipse.elk.layered.layering.layerId",Hot="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Vot="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Got="org.eclipse.elk.layered.layering.nodePromotion.strategy",Uot="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",Wot="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",$C="org.eclipse.elk.layered.crossingMinimization.strategy",Sxt="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Kot="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",Yot="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Axt="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",Lxt="org.eclipse.elk.layered.crossingMinimization.positionId",Mxt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Xot="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",Yq="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",D4="org.eclipse.elk.layered.nodePlacement.strategy",Xq="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Qot="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Zot="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Jot="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",tct="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",ect="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",Dxt="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Ixt="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",Qq="org.eclipse.elk.layered.edgeRouting.splines.mode",Zq="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",nct="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",Oxt="org.eclipse.elk.layered.spacing.baseValue",Nxt="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Pxt="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Fxt="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",Bxt="org.eclipse.elk.layered.priority.direction",Rxt="org.eclipse.elk.layered.priority.shortness",jxt="org.eclipse.elk.layered.priority.straightness",rct="org.eclipse.elk.layered.compaction.connectedComponents",$xt="org.eclipse.elk.layered.compaction.postCompaction.strategy",zxt="org.eclipse.elk.layered.compaction.postCompaction.constraints",Jq="org.eclipse.elk.layered.highDegreeNodes.treatment",ict="org.eclipse.elk.layered.highDegreeNodes.threshold",sct="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Y0="org.eclipse.elk.layered.wrapping.strategy",tH="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",eH="org.eclipse.elk.layered.wrapping.correctionFactor",zC="org.eclipse.elk.layered.wrapping.cutting.strategy",act="org.eclipse.elk.layered.wrapping.cutting.cuts",oct="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",nH="org.eclipse.elk.layered.wrapping.validify.strategy",rH="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",iH="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",sH="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",cct="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",qxt="org.eclipse.elk.layered.edgeLabels.sideSelection",Hxt="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",aH="org.eclipse.elk.layered.considerModelOrder.strategy",Vxt="org.eclipse.elk.layered.considerModelOrder.noModelOrder",uct="org.eclipse.elk.layered.considerModelOrder.components",Gxt="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",lct="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",hct="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",fct="layering",d1e="layering.minWidth",g1e="layering.nodePromotion",GI="crossingMinimization",oH="org.eclipse.elk.hierarchyHandling",p1e="crossingMinimization.greedySwitch",b1e="nodePlacement",v1e="nodePlacement.bk",w1e="edgeRouting",UI="org.eclipse.elk.edgeRouting",j1="spacing",Uxt="priority",Wxt="compaction",m1e="compaction.postCompaction",y1e="Specifies whether and how post-process compaction is applied.",Kxt="highDegreeNodes",Yxt="wrapping",x1e="wrapping.cutting",k1e="wrapping.validify",Xxt="wrapping.multiEdge",dct="edgeLabels",WI="considerModelOrder",Qxt="org.eclipse.elk.spacing.commentComment",Zxt="org.eclipse.elk.spacing.commentNode",Jxt="org.eclipse.elk.spacing.edgeEdge",tkt="org.eclipse.elk.spacing.edgeNode",ekt="org.eclipse.elk.spacing.labelLabel",nkt="org.eclipse.elk.spacing.labelPortHorizontal",rkt="org.eclipse.elk.spacing.labelPortVertical",ikt="org.eclipse.elk.spacing.labelNode",skt="org.eclipse.elk.spacing.nodeSelfLoop",akt="org.eclipse.elk.spacing.portPort",okt="org.eclipse.elk.spacing.individual",ckt="org.eclipse.elk.port.borderOffset",ukt="org.eclipse.elk.noLayout",lkt="org.eclipse.elk.port.side",KI="org.eclipse.elk.debugMode",hkt="org.eclipse.elk.alignment",fkt="org.eclipse.elk.insideSelfLoops.activate",dkt="org.eclipse.elk.insideSelfLoops.yo",gct="org.eclipse.elk.nodeSize.fixedGraphSize",gkt="org.eclipse.elk.direction",pkt="org.eclipse.elk.nodeLabels.padding",bkt="org.eclipse.elk.portLabels.nextToPortIfPossible",vkt="org.eclipse.elk.portLabels.treatAsGroup",wkt="org.eclipse.elk.portAlignment.default",mkt="org.eclipse.elk.portAlignment.north",ykt="org.eclipse.elk.portAlignment.south",xkt="org.eclipse.elk.portAlignment.west",kkt="org.eclipse.elk.portAlignment.east",cH="org.eclipse.elk.contentAlignment",Ekt="org.eclipse.elk.junctionPoints",Tkt="org.eclipse.elk.edgeLabels.placement",_kt="org.eclipse.elk.port.index",Ckt="org.eclipse.elk.commentBox",Skt="org.eclipse.elk.hypernode",Akt="org.eclipse.elk.port.anchor",pct="org.eclipse.elk.partitioning.activate",bct="org.eclipse.elk.partitioning.partition",uH="org.eclipse.elk.position",Lkt="org.eclipse.elk.margins",Mkt="org.eclipse.elk.spacing.portsSurrounding",vct="org.eclipse.elk.interactiveLayout",Ac="org.eclipse.elk.core.util",Dkt={3:1,4:1,5:1,593:1},E1e="NETWORK_SIMPLEX",Vc={123:1,51:1},lH="org.eclipse.elk.alg.layered.p1cycles",Ey="org.eclipse.elk.alg.layered.p2layers",Ikt={402:1,225:1},T1e={832:1,3:1,4:1},Wu="org.eclipse.elk.alg.layered.p3order",bo="org.eclipse.elk.alg.layered.p4nodes",_1e={3:1,4:1,5:1,840:1},Td=1e-5,ob="org.eclipse.elk.alg.layered.p4nodes.bk",wct="org.eclipse.elk.alg.layered.p5edges",r1="org.eclipse.elk.alg.layered.p5edges.orthogonal",mct="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",yct=1e-6,Ty="org.eclipse.elk.alg.layered.p5edges.splines",xct=.09999999999999998,hH=1e-8,C1e=4.71238898038469,S1e=3.141592653589793,qC="org.eclipse.elk.alg.mrtree",HC="org.eclipse.elk.alg.mrtree.graph",yx="org.eclipse.elk.alg.mrtree.intermediate",A1e="Set neighbors in level",L1e="DESCENDANTS",Okt="org.eclipse.elk.mrtree.weighting",Nkt="org.eclipse.elk.mrtree.searchOrder",fH="org.eclipse.elk.alg.mrtree.options",Wg="org.eclipse.elk.mrtree",M1e="org.eclipse.elk.tree",Pkt="org.eclipse.elk.alg.radial",I4=6.283185307179586,Fkt=5e-324,D1e="org.eclipse.elk.alg.radial.intermediate",kct="org.eclipse.elk.alg.radial.intermediate.compaction",I1e={3:1,4:1,5:1,106:1},Bkt="org.eclipse.elk.alg.radial.intermediate.optimization",Ect="No implementation is available for the layout option ",VC="org.eclipse.elk.alg.radial.options",Rkt="org.eclipse.elk.radial.orderId",jkt="org.eclipse.elk.radial.radius",Tct="org.eclipse.elk.radial.compactor",_ct="org.eclipse.elk.radial.compactionStepSize",$kt="org.eclipse.elk.radial.sorter",zkt="org.eclipse.elk.radial.wedgeCriteria",qkt="org.eclipse.elk.radial.optimizationCriteria",_d="org.eclipse.elk.radial",O1e="org.eclipse.elk.alg.radial.p1position.wedge",Hkt="org.eclipse.elk.alg.radial.sorting",N1e=5.497787143782138,P1e=3.9269908169872414,F1e=2.356194490192345,B1e="org.eclipse.elk.alg.rectpacking",dH="org.eclipse.elk.alg.rectpacking.firstiteration",Cct="org.eclipse.elk.alg.rectpacking.options",Vkt="org.eclipse.elk.rectpacking.optimizationGoal",Gkt="org.eclipse.elk.rectpacking.lastPlaceShift",Ukt="org.eclipse.elk.rectpacking.currentPosition",Wkt="org.eclipse.elk.rectpacking.desiredPosition",Kkt="org.eclipse.elk.rectpacking.onlyFirstIteration",Ykt="org.eclipse.elk.rectpacking.rowCompaction",Sct="org.eclipse.elk.rectpacking.expandToAspectRatio",Xkt="org.eclipse.elk.rectpacking.targetWidth",gH="org.eclipse.elk.expandNodes",Fh="org.eclipse.elk.rectpacking",YI="org.eclipse.elk.alg.rectpacking.util",pH="No implementation available for ",_y="org.eclipse.elk.alg.spore",Cy="org.eclipse.elk.alg.spore.options",mw="org.eclipse.elk.sporeCompaction",Act="org.eclipse.elk.underlyingLayoutAlgorithm",Qkt="org.eclipse.elk.processingOrder.treeConstruction",Zkt="org.eclipse.elk.processingOrder.spanningTreeCostFunction",Lct="org.eclipse.elk.processingOrder.preferredRoot",Mct="org.eclipse.elk.processingOrder.rootSelection",Dct="org.eclipse.elk.structure.structureExtractionStrategy",Jkt="org.eclipse.elk.compaction.compactionStrategy",t8t="org.eclipse.elk.compaction.orthogonal",e8t="org.eclipse.elk.overlapRemoval.maxIterations",n8t="org.eclipse.elk.overlapRemoval.runScanline",Ict="processingOrder",R1e="overlapRemoval",R7="org.eclipse.elk.sporeOverlap",j1e="org.eclipse.elk.alg.spore.p1structure",Oct="org.eclipse.elk.alg.spore.p2processingorder",Nct="org.eclipse.elk.alg.spore.p3execution",$1e="Invalid index: ",j7="org.eclipse.elk.core.alg",O4={331:1},Sy={288:1},z1e="Make sure its type is registered with the ",r8t=" utility class.",$7="true",Pct="false",q1e="Couldn't clone property '",yw=.05,Bh="org.eclipse.elk.core.options",H1e=1.2999999523162842,xw="org.eclipse.elk.box",i8t="org.eclipse.elk.box.packingMode",V1e="org.eclipse.elk.algorithm",G1e="org.eclipse.elk.resolvedAlgorithm",s8t="org.eclipse.elk.bendPoints",W5n="org.eclipse.elk.labelManager",U1e="org.eclipse.elk.scaleFactor",W1e="org.eclipse.elk.animate",K1e="org.eclipse.elk.animTimeFactor",Y1e="org.eclipse.elk.layoutAncestors",X1e="org.eclipse.elk.maxAnimTime",Q1e="org.eclipse.elk.minAnimTime",Z1e="org.eclipse.elk.progressBar",J1e="org.eclipse.elk.validateGraph",tde="org.eclipse.elk.validateOptions",ede="org.eclipse.elk.zoomToFit",K5n="org.eclipse.elk.font.name",nde="org.eclipse.elk.font.size",rde="org.eclipse.elk.edge.type",ide="partitioning",sde="nodeLabels",bH="portAlignment",Fct="nodeSize",Bct="port",a8t="portLabels",ade="insideSelfLoops",GC="org.eclipse.elk.fixed",vH="org.eclipse.elk.random",ode="port must have a parent node to calculate the port side",cde="The edge needs to have exactly one edge section. Found: ",UC="org.eclipse.elk.core.util.adapters",vh="org.eclipse.emf.ecore",N4="org.eclipse.elk.graph",ude="EMapPropertyHolder",lde="ElkBendPoint",hde="ElkGraphElement",fde="ElkConnectableShape",o8t="ElkEdge",dde="ElkEdgeSection",gde="EModelElement",pde="ENamedElement",c8t="ElkLabel",u8t="ElkNode",l8t="ElkPort",bde={92:1,90:1},xx="org.eclipse.emf.common.notify.impl",cb="The feature '",WC="' is not a valid changeable feature",vde="Expecting null",Rct="' is not a valid feature",wde="The feature ID",mde=" is not a valid feature ID",yc=32768,yde={105:1,92:1,90:1,56:1,49:1,97:1},Ln="org.eclipse.emf.ecore.impl",A2="org.eclipse.elk.graph.impl",KC="Recursive containment not allowed for ",z7="The datatype '",kw="' is not a valid classifier",jct="The value '",P4={190:1,3:1,4:1},$ct="The class '",q7="http://www.eclipse.org/elk/ElkGraph",xf=1024,h8t="property",YC="value",zct="source",xde="properties",kde="identifier",qct="height",Hct="width",Vct="parent",Gct="text",Uct="children",Ede="hierarchical",f8t="sources",Wct="targets",d8t="sections",wH="bendPoints",g8t="outgoingShape",p8t="incomingShape",b8t="outgoingSections",v8t="incomingSections",qa="org.eclipse.emf.common.util",w8t="Severe implementation error in the Json to ElkGraph importer.",Cd="id",Ca="org.eclipse.elk.graph.json",m8t="Unhandled parameter types: ",Tde="startPoint",_de="An edge must have at least one source and one target (edge id: '",H7="').",Cde="Referenced edge section does not exist: ",Sde=" (edge id: '",y8t="target",Ade="sourcePoint",Lde="targetPoint",mH="group",fi="name",Mde="connectableShape cannot be null",Dde="edge cannot be null",Kct="Passed edge is not 'simple'.",yH="org.eclipse.elk.graph.util",XI="The 'no duplicates' constraint is violated",Yct="targetIndex=",L2=", size=",Xct="sourceIndex=",Sd={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},Qct={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},xH="logging",Ide="measureExecutionTime",Ode="parser.parse.1",Nde="parser.parse.2",kH="parser.next.1",Zct="parser.next.2",Pde="parser.next.3",Fde="parser.next.4",M2="parser.factor.1",x8t="parser.factor.2",Bde="parser.factor.3",Rde="parser.factor.4",jde="parser.factor.5",$de="parser.factor.6",zde="parser.atom.1",qde="parser.atom.2",Hde="parser.atom.3",k8t="parser.atom.4",Jct="parser.atom.5",E8t="parser.cc.1",EH="parser.cc.2",Vde="parser.cc.3",Gde="parser.cc.5",T8t="parser.cc.6",_8t="parser.cc.7",tut="parser.cc.8",Ude="parser.ope.1",Wde="parser.ope.2",Kde="parser.ope.3",Kg="parser.descape.1",Yde="parser.descape.2",Xde="parser.descape.3",Qde="parser.descape.4",Zde="parser.descape.5",wh="parser.process.1",Jde="parser.quantifier.1",t0e="parser.quantifier.2",e0e="parser.quantifier.3",n0e="parser.quantifier.4",C8t="parser.quantifier.5",r0e="org.eclipse.emf.common.notify",S8t={415:1,672:1},i0e={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},QI={366:1,143:1},XC="index=",eut={3:1,4:1,5:1,126:1},s0e={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},A8t={3:1,6:1,4:1,5:1,192:1},a0e={3:1,4:1,5:1,165:1,367:1},o0e=";/?:@&=+$,",c0e="invalid authority: ",u0e="EAnnotation",l0e="ETypedElement",h0e="EStructuralFeature",f0e="EAttribute",d0e="EClassifier",g0e="EEnumLiteral",p0e="EGenericType",b0e="EOperation",v0e="EParameter",w0e="EReference",m0e="ETypeParameter",Yi="org.eclipse.emf.ecore.util",nut={76:1},L8t={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},y0e="org.eclipse.emf.ecore.util.FeatureMap$Entry",Ku=8192,Ay=2048,QC="byte",TH="char",ZC="double",JC="float",tS="int",eS="long",nS="short",x0e="java.lang.Object",F4={3:1,4:1,5:1,247:1},M8t={3:1,4:1,5:1,673:1},k0e={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},Ko={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},ZI="mixed",Zr="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",Rh="kind",E0e={3:1,4:1,5:1,674:1},D8t={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},_H={20:1,28:1,52:1,14:1,15:1,58:1,69:1},CH={47:1,125:1,279:1},SH={72:1,332:1},AH="The value of type '",LH="' must be of type '",B4=1316,jh="http://www.eclipse.org/emf/2002/Ecore",MH=-32768,Ew="constraints",Na="baseType",T0e="getEStructuralFeature",_0e="getFeatureID",rS="feature",C0e="getOperationID",I8t="operation",S0e="defaultValue",A0e="eTypeParameters",L0e="isInstance",M0e="getEEnumLiteral",D0e="eContainingClass",ci={55:1},I0e={3:1,4:1,5:1,119:1},O0e="org.eclipse.emf.ecore.resource",N0e={92:1,90:1,591:1,1935:1},rut="org.eclipse.emf.ecore.resource.impl",O8t="unspecified",JI="simple",DH="attribute",P0e="attributeWildcard",IH="element",iut="elementWildcard",i1="collapse",sut="itemType",OH="namespace",tO="##targetNamespace",$h="whiteSpace",N8t="wildcards",D2="http://www.eclipse.org/emf/2003/XMLType",aut="##any",V7="uninitialized",eO="The multiplicity constraint is violated",NH="org.eclipse.emf.ecore.xml.type",F0e="ProcessingInstruction",B0e="SimpleAnyType",R0e="XMLTypeDocumentRoot",Ds="org.eclipse.emf.ecore.xml.type.impl",nO="INF",j0e="processing",$0e="ENTITIES_._base",P8t="minLength",F8t="ENTITY",PH="NCName",z0e="IDREFS_._base",B8t="integer",out="token",cut="pattern",q0e="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",R8t="\\i\\c*",H0e="[\\i-[:]][\\c-[:]]*",V0e="nonPositiveInteger",rO="maxInclusive",j8t="NMTOKEN",G0e="NMTOKENS_._base",$8t="nonNegativeInteger",iO="minInclusive",U0e="normalizedString",W0e="unsignedByte",K0e="unsignedInt",Y0e="18446744073709551615",X0e="unsignedShort",Q0e="processingInstruction",Yg="org.eclipse.emf.ecore.xml.type.internal",G7=1114111,Z0e="Internal Error: shorthands: \\u",iS="xml:isDigit",uut="xml:isWord",lut="xml:isSpace",hut="xml:isNameChar",fut="xml:isInitialNameChar",J0e="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",tge="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",ege="Private Use",dut="ASSIGNED",gut="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",z8t="UNASSIGNED",U7={3:1,117:1},nge="org.eclipse.emf.ecore.xml.type.util",FH={3:1,4:1,5:1,368:1},q8t="org.eclipse.xtext.xbase.lib",rge="Cannot add elements to a Range",ige="Cannot set elements in a Range",sge="Cannot remove elements from a Range",BH="locale",RH="default",jH="user.agent",l,$H,put;b.goog=b.goog||{},b.goog.global=b.goog.global||b,y0n(),D(1,null,{},C),l.Fb=function(e){return tUt(this,e)},l.Gb=function(){return this.gm},l.Hb=function(){return Dv(this)},l.Ib=function(){var e;return Mp(dl(this))+"@"+(e=Ji(this)>>>0,e.toString(16))},l.equals=function(t){return this.Fb(t)},l.hashCode=function(){return this.Hb()},l.toString=function(){return this.Ib()};var age,oge,cge;D(290,1,{290:1,2026:1},myt),l.le=function(e){var n;return n=new myt,n.i=4,e>1?n.c=vQt(this,e-1):n.c=this,n},l.me=function(){return L0(this),this.b},l.ne=function(){return Mp(this)},l.oe=function(){return L0(this),this.k},l.pe=function(){return(this.i&4)!=0},l.qe=function(){return(this.i&1)!=0},l.Ib=function(){return Nmt(this)},l.i=0;var Qn=N(ic,"Object",1),H8t=N(ic,"Class",290);D(1998,1,CI),N(SI,"Optional",1998),D(1170,1998,CI,A),l.Fb=function(e){return e===this},l.Hb=function(){return 2040732332},l.Ib=function(){return"Optional.absent()"},l.Jb=function(e){return Dr(e),DT(),but};var but;N(SI,"Absent",1170),D(628,1,{},cet),N(SI,"Joiner",628);var Y5n=as(SI,"Predicate");D(582,1,{169:1,582:1,3:1,45:1},bT),l.Mb=function(e){return rre(this,e)},l.Lb=function(e){return rre(this,e)},l.Fb=function(e){var n;return _t(e,582)?(n=u(e,582),f5t(this.a,n.a)):!1},l.Hb=function(){return Tyt(this.a)+306654252},l.Ib=function(){return agn(this.a)},N(SI,"Predicates/AndPredicate",582),D(408,1998,{408:1,3:1},Bk),l.Fb=function(e){var n;return _t(e,408)?(n=u(e,408),Si(this.a,n.a)):!1},l.Hb=function(){return 1502476572+Ji(this.a)},l.Ib=function(){return Hhe+this.a+")"},l.Jb=function(e){return new Bk(r$(e.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},N(SI,"Present",408),D(198,1,_7),l.Nb=function(e){Ea(this,e)},l.Qb=function(){Vqt()},N(Ye,"UnmodifiableIterator",198),D(1978,198,C7),l.Qb=function(){Vqt()},l.Rb=function(e){throw nt(new Pr)},l.Wb=function(e){throw nt(new Pr)},N(Ye,"UnmodifiableListIterator",1978),D(386,1978,C7),l.Ob=function(){return this.c0},l.Pb=function(){if(this.c>=this.d)throw nt(new vc);return this.Xb(this.c++)},l.Tb=function(){return this.c},l.Ub=function(){if(this.c<=0)throw nt(new vc);return this.Xb(--this.c)},l.Vb=function(){return this.c-1},l.c=0,l.d=0,N(Ye,"AbstractIndexedListIterator",386),D(699,198,_7),l.Ob=function(){return oit(this)},l.Pb=function(){return Amt(this)},l.e=1,N(Ye,"AbstractIterator",699),D(1986,1,{224:1}),l.Zb=function(){var e;return e=this.f,e||(this.f=this.ac())},l.Fb=function(e){return _it(this,e)},l.Hb=function(){return Ji(this.Zb())},l.dc=function(){return this.gc()==0},l.ec=function(){return N6(this)},l.Ib=function(){return Wo(this.Zb())},N(Ye,"AbstractMultimap",1986),D(726,1986,k2),l.$b=function(){Q$(this)},l._b=function(e){return uHt(this,e)},l.ac=function(){return new t8(this,this.c)},l.ic=function(e){return this.hc()},l.bc=function(){return new K3(this,this.c)},l.jc=function(){return this.mc(this.hc())},l.kc=function(){return new Sqt(this)},l.lc=function(){return Ist(this.c.vc().Nc(),new F,64,this.d)},l.cc=function(e){return Pi(this,e)},l.fc=function(e){return $D(this,e)},l.gc=function(){return this.d},l.mc=function(e){return pn(),new T(e)},l.nc=function(){return new Cqt(this)},l.oc=function(){return Ist(this.c.Cc().Nc(),new P,64,this.d)},l.pc=function(e,n){return new D$(this,e,n,null)},l.d=0,N(Ye,"AbstractMapBasedMultimap",726),D(1631,726,k2),l.hc=function(){return new Jc(this.a)},l.jc=function(){return pn(),pn(),uo},l.cc=function(e){return u(Pi(this,e),15)},l.fc=function(e){return u($D(this,e),15)},l.Zb=function(){return j6(this)},l.Fb=function(e){return _it(this,e)},l.qc=function(e){return u(Pi(this,e),15)},l.rc=function(e){return u($D(this,e),15)},l.mc=function(e){return JM(u(e,15))},l.pc=function(e,n){return kZt(this,e,u(n,15),null)},N(Ye,"AbstractListMultimap",1631),D(732,1,da),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.c.Ob()||this.e.Ob()},l.Pb=function(){var e;return this.e.Ob()||(e=u(this.c.Pb(),42),this.b=e.cd(),this.a=u(e.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},l.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d},N(Ye,"AbstractMapBasedMultimap/Itr",732),D(1099,732,da,Cqt),l.sc=function(e,n){return n},N(Ye,"AbstractMapBasedMultimap/1",1099),D(1100,1,{},P),l.Kb=function(e){return u(e,14).Nc()},N(Ye,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100),D(1101,732,da,Sqt),l.sc=function(e,n){return new Cv(e,n)},N(Ye,"AbstractMapBasedMultimap/2",1101);var V8t=as(br,"Map");D(1967,1,bw),l.wc=function(e){U_(this,e)},l.yc=function(e,n,r){return qit(this,e,n,r)},l.$b=function(){this.vc().$b()},l.tc=function(e){return pst(this,e)},l._b=function(e){return!!p4t(this,e,!1)},l.uc=function(e){var n,r,s;for(r=this.vc().Kc();r.Ob();)if(n=u(r.Pb(),42),s=n.dd(),Gt(e)===Gt(s)||e!=null&&Si(e,s))return!0;return!1},l.Fb=function(e){var n,r,s;if(e===this)return!0;if(!_t(e,83)||(s=u(e,83),this.gc()!=s.gc()))return!1;for(r=s.vc().Kc();r.Ob();)if(n=u(r.Pb(),42),!this.tc(n))return!1;return!0},l.xc=function(e){return cc(p4t(this,e,!1))},l.Hb=function(){return gyt(this.vc())},l.dc=function(){return this.gc()==0},l.ec=function(){return new Tm(this)},l.zc=function(e,n){throw nt(new Tg("Put not supported on this map"))},l.Ac=function(e){G_(this,e)},l.Bc=function(e){return cc(p4t(this,e,!0))},l.gc=function(){return this.vc().gc()},l.Ib=function(){return sae(this)},l.Cc=function(){return new m1(this)},N(br,"AbstractMap",1967),D(1987,1967,bw),l.bc=function(){return new TR(this)},l.vc=function(){return xYt(this)},l.ec=function(){var e;return e=this.g,e||(this.g=this.bc())},l.Cc=function(){var e;return e=this.i,e||(this.i=new eVt(this))},N(Ye,"Maps/ViewCachingAbstractMap",1987),D(389,1987,bw,t8),l.xc=function(e){return qan(this,e)},l.Bc=function(e){return iun(this,e)},l.$b=function(){this.d==this.e.c?this.e.$b():Oj(new Fvt(this))},l._b=function(e){return Fre(this.d,e)},l.Ec=function(){return new Rk(this)},l.Dc=function(){return this.Ec()},l.Fb=function(e){return this===e||Si(this.d,e)},l.Hb=function(){return Ji(this.d)},l.ec=function(){return this.e.ec()},l.gc=function(){return this.d.gc()},l.Ib=function(){return Wo(this.d)},N(Ye,"AbstractMapBasedMultimap/AsMap",389);var $1=as(ic,"Iterable");D(28,1,wy),l.Jc=function(e){_a(this,e)},l.Lc=function(){return this.Oc()},l.Nc=function(){return new Tn(this,0)},l.Oc=function(){return new kn(null,this.Nc())},l.Fc=function(e){throw nt(new Tg("Add not supported on this collection"))},l.Gc=function(e){return Ka(this,e)},l.$b=function(){xwt(this)},l.Hc=function(e){return ry(this,e,!1)},l.Ic=function(e){return DD(this,e)},l.dc=function(){return this.gc()==0},l.Mc=function(e){return ry(this,e,!0)},l.Pc=function(){return Yvt(this)},l.Qc=function(e){return XD(this,e)},l.Ib=function(){return Jp(this)},N(br,"AbstractCollection",28);var zh=as(br,"Set");D(B1,28,Uu),l.Nc=function(){return new Tn(this,1)},l.Fb=function(e){return Lie(this,e)},l.Hb=function(){return gyt(this)},N(br,"AbstractSet",B1),D(1970,B1,Uu),N(Ye,"Sets/ImprovedAbstractSet",1970),D(1971,1970,Uu),l.$b=function(){this.Rc().$b()},l.Hc=function(e){return lie(this,e)},l.dc=function(){return this.Rc().dc()},l.Mc=function(e){var n;return this.Hc(e)?(n=u(e,42),this.Rc().ec().Mc(n.cd())):!1},l.gc=function(){return this.Rc().gc()},N(Ye,"Maps/EntrySet",1971),D(1097,1971,Uu,Rk),l.Hc=function(e){return Hyt(this.a.d.vc(),e)},l.Kc=function(){return new Fvt(this.a)},l.Rc=function(){return this.a},l.Mc=function(e){var n;return Hyt(this.a.d.vc(),e)?(n=u(e,42),Asn(this.a.e,n.cd()),!0):!1},l.Nc=function(){return GM(this.a.d.vc().Nc(),new GB(this.a))},N(Ye,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097),D(1098,1,{},GB),l.Kb=function(e){return hJt(this.a,u(e,42))},N(Ye,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098),D(730,1,da,Fvt),l.Nb=function(e){Ea(this,e)},l.Pb=function(){var e;return e=u(this.b.Pb(),42),this.a=u(e.dd(),14),hJt(this.c,e)},l.Ob=function(){return this.b.Ob()},l.Qb=function(){r4(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},N(Ye,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730),D(532,1970,Uu,TR),l.$b=function(){this.b.$b()},l.Hc=function(e){return this.b._b(e)},l.Jc=function(e){Dr(e),this.b.wc(new btt(e))},l.dc=function(){return this.b.dc()},l.Kc=function(){return new IT(this.b.vc().Kc())},l.Mc=function(e){return this.b._b(e)?(this.b.Bc(e),!0):!1},l.gc=function(){return this.b.gc()},N(Ye,"Maps/KeySet",532),D(318,532,Uu,K3),l.$b=function(){var e;Oj((e=this.b.vc().Kc(),new cbt(this,e)))},l.Ic=function(e){return this.b.ec().Ic(e)},l.Fb=function(e){return this===e||Si(this.b.ec(),e)},l.Hb=function(){return Ji(this.b.ec())},l.Kc=function(){var e;return e=this.b.vc().Kc(),new cbt(this,e)},l.Mc=function(e){var n,r;return r=0,n=u(this.b.Bc(e),14),n&&(r=n.gc(),n.$b(),this.a.d-=r),r>0},l.Nc=function(){return this.b.ec().Nc()},N(Ye,"AbstractMapBasedMultimap/KeySet",318),D(731,1,da,cbt),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.c.Ob()},l.Pb=function(){return this.a=u(this.c.Pb(),42),this.a.cd()},l.Qb=function(){var e;r4(!!this.a),e=u(this.a.dd(),14),this.c.Qb(),this.b.a.d-=e.gc(),e.$b(),this.a=null},N(Ye,"AbstractMapBasedMultimap/KeySet/1",731),D(491,389,{83:1,161:1},RM),l.bc=function(){return this.Sc()},l.ec=function(){return this.Tc()},l.Sc=function(){return new gM(this.c,this.Uc())},l.Tc=function(){var e;return e=this.b,e||(this.b=this.Sc())},l.Uc=function(){return u(this.d,161)},N(Ye,"AbstractMapBasedMultimap/SortedAsMap",491),D(542,491,Vhe,yj),l.bc=function(){return new Jk(this.a,u(u(this.d,161),171))},l.Sc=function(){return new Jk(this.a,u(u(this.d,161),171))},l.ec=function(){var e;return e=this.b,u(e||(this.b=new Jk(this.a,u(u(this.d,161),171))),271)},l.Tc=function(){var e;return e=this.b,u(e||(this.b=new Jk(this.a,u(u(this.d,161),171))),271)},l.Uc=function(){return u(u(this.d,161),171)},N(Ye,"AbstractMapBasedMultimap/NavigableAsMap",542),D(490,318,Ghe,gM),l.Nc=function(){return this.b.ec().Nc()},N(Ye,"AbstractMapBasedMultimap/SortedKeySet",490),D(388,490,S6t,Jk),N(Ye,"AbstractMapBasedMultimap/NavigableKeySet",388),D(541,28,wy,D$),l.Fc=function(e){var n,r;return gl(this),r=this.d.dc(),n=this.d.Fc(e),n&&(++this.f.d,r&&qM(this)),n},l.Gc=function(e){var n,r,s;return e.dc()?!1:(s=(gl(this),this.d.gc()),n=this.d.Gc(e),n&&(r=this.d.gc(),this.f.d+=r-s,s==0&&qM(this)),n)},l.$b=function(){var e;e=(gl(this),this.d.gc()),e!=0&&(this.d.$b(),this.f.d-=e,Rj(this))},l.Hc=function(e){return gl(this),this.d.Hc(e)},l.Ic=function(e){return gl(this),this.d.Ic(e)},l.Fb=function(e){return e===this?!0:(gl(this),Si(this.d,e))},l.Hb=function(){return gl(this),Ji(this.d)},l.Kc=function(){return gl(this),new kvt(this)},l.Mc=function(e){var n;return gl(this),n=this.d.Mc(e),n&&(--this.f.d,Rj(this)),n},l.gc=function(){return jGt(this)},l.Nc=function(){return gl(this),this.d.Nc()},l.Ib=function(){return gl(this),Wo(this.d)},N(Ye,"AbstractMapBasedMultimap/WrappedCollection",541);var mh=as(br,"List");D(728,541,{20:1,28:1,14:1,15:1},Qvt),l.ad=function(e){n4(this,e)},l.Nc=function(){return gl(this),this.d.Nc()},l.Vc=function(e,n){var r;gl(this),r=this.d.dc(),u(this.d,15).Vc(e,n),++this.a.d,r&&qM(this)},l.Wc=function(e,n){var r,s,o;return n.dc()?!1:(o=(gl(this),this.d.gc()),r=u(this.d,15).Wc(e,n),r&&(s=this.d.gc(),this.a.d+=s-o,o==0&&qM(this)),r)},l.Xb=function(e){return gl(this),u(this.d,15).Xb(e)},l.Xc=function(e){return gl(this),u(this.d,15).Xc(e)},l.Yc=function(){return gl(this),new wUt(this)},l.Zc=function(e){return gl(this),new DXt(this,e)},l.$c=function(e){var n;return gl(this),n=u(this.d,15).$c(e),--this.a.d,Rj(this),n},l._c=function(e,n){return gl(this),u(this.d,15)._c(e,n)},l.bd=function(e,n){return gl(this),kZt(this.a,this.e,u(this.d,15).bd(e,n),this.b?this.b:this)},N(Ye,"AbstractMapBasedMultimap/WrappedList",728),D(1096,728,{20:1,28:1,14:1,15:1,54:1},cWt),N(Ye,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096),D(620,1,da,kvt),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return x8(this),this.b.Ob()},l.Pb=function(){return x8(this),this.b.Pb()},l.Qb=function(){GUt(this)},N(Ye,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620),D(729,620,Jd,wUt,DXt),l.Qb=function(){GUt(this)},l.Rb=function(e){var n;n=jGt(this.a)==0,(x8(this),u(this.b,125)).Rb(e),++this.a.a.d,n&&qM(this.a)},l.Sb=function(){return(x8(this),u(this.b,125)).Sb()},l.Tb=function(){return(x8(this),u(this.b,125)).Tb()},l.Ub=function(){return(x8(this),u(this.b,125)).Ub()},l.Vb=function(){return(x8(this),u(this.b,125)).Vb()},l.Wb=function(e){(x8(this),u(this.b,125)).Wb(e)},N(Ye,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729),D(727,541,Ghe,H2t),l.Nc=function(){return gl(this),this.d.Nc()},N(Ye,"AbstractMapBasedMultimap/WrappedSortedSet",727),D(1095,727,S6t,lUt),N(Ye,"AbstractMapBasedMultimap/WrappedNavigableSet",1095),D(1094,541,Uu,kWt),l.Nc=function(){return gl(this),this.d.Nc()},N(Ye,"AbstractMapBasedMultimap/WrappedSet",1094),D(1103,1,{},F),l.Kb=function(e){return Nsn(u(e,42))},N(Ye,"AbstractMapBasedMultimap/lambda$1$Type",1103),D(1102,1,{},rtt),l.Kb=function(e){return new Cv(this.a,e)},N(Ye,"AbstractMapBasedMultimap/lambda$2$Type",1102);var I2=as(br,"Map/Entry");D(345,1,Mq),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),dd(this.cd(),n.cd())&&dd(this.dd(),n.dd())):!1},l.Hb=function(){var e,n;return e=this.cd(),n=this.dd(),(e==null?0:Ji(e))^(n==null?0:Ji(n))},l.ed=function(e){throw nt(new Pr)},l.Ib=function(){return this.cd()+"="+this.dd()},N(Ye,Uhe,345),D(1988,28,wy),l.$b=function(){this.fd().$b()},l.Hc=function(e){var n;return _t(e,42)?(n=u(e,42),gin(this.fd(),n.cd(),n.dd())):!1},l.Mc=function(e){var n;return _t(e,42)?(n=u(e,42),nZt(this.fd(),n.cd(),n.dd())):!1},l.gc=function(){return this.fd().d},N(Ye,"Multimaps/Entries",1988),D(733,1988,wy,QL),l.Kc=function(){return this.a.kc()},l.fd=function(){return this.a},l.Nc=function(){return this.a.lc()},N(Ye,"AbstractMultimap/Entries",733),D(734,733,Uu,Rpt),l.Nc=function(){return this.a.lc()},l.Fb=function(e){return O4t(this,e)},l.Hb=function(){return rne(this)},N(Ye,"AbstractMultimap/EntrySet",734),D(735,28,wy,D3),l.$b=function(){this.a.$b()},l.Hc=function(e){return Zcn(this.a,e)},l.Kc=function(){return this.a.nc()},l.gc=function(){return this.a.d},l.Nc=function(){return this.a.oc()},N(Ye,"AbstractMultimap/Values",735),D(1989,28,{835:1,20:1,28:1,14:1}),l.Jc=function(e){Dr(e),X3(this).Jc(new ptt(e))},l.Nc=function(){var e;return e=X3(this).Nc(),Ist(e,new yt,64|e.qd()&1296,this.a.d)},l.Fc=function(e){return Wpt(),!0},l.Gc=function(e){return Dr(this),Dr(e),_t(e,543)?min(u(e,835)):!e.dc()&&Zrt(this,e.Kc())},l.Hc=function(e){var n;return n=u(ny(j6(this.a),e),14),(n?n.gc():0)>0},l.Fb=function(e){return fbn(this,e)},l.Hb=function(){return Ji(X3(this))},l.dc=function(){return X3(this).dc()},l.Mc=function(e){return koe(this,e,1)>0},l.Ib=function(){return Wo(X3(this))},N(Ye,"AbstractMultiset",1989),D(1991,1970,Uu),l.$b=function(){Q$(this.a.a)},l.Hc=function(e){var n,r;return _t(e,492)?(r=u(e,416),u(r.a.dd(),14).gc()<=0?!1:(n=IQt(this.a,r.a.cd()),n==u(r.a.dd(),14).gc())):!1},l.Mc=function(e){var n,r,s,o;return _t(e,492)&&(r=u(e,416),n=r.a.cd(),s=u(r.a.dd(),14).gc(),s!=0)?(o=this.a,tpn(o,n,s)):!1},N(Ye,"Multisets/EntrySet",1991),D(1109,1991,Uu,ZL),l.Kc=function(){return new Pqt(xYt(j6(this.a.a)).Kc())},l.gc=function(){return j6(this.a.a).gc()},N(Ye,"AbstractMultiset/EntrySet",1109),D(619,726,k2),l.hc=function(){return this.gd()},l.jc=function(){return this.hd()},l.cc=function(e){return this.jd(e)},l.fc=function(e){return this.kd(e)},l.Zb=function(){var e;return e=this.f,e||(this.f=this.ac())},l.hd=function(){return pn(),pn(),UH},l.Fb=function(e){return _it(this,e)},l.jd=function(e){return u(Pi(this,e),21)},l.kd=function(e){return u($D(this,e),21)},l.mc=function(e){return pn(),new Yk(u(e,21))},l.pc=function(e,n){return new kWt(this,e,u(n,21))},N(Ye,"AbstractSetMultimap",619),D(1657,619,k2),l.hc=function(){return new Dp(this.b)},l.gd=function(){return new Dp(this.b)},l.jc=function(){return fwt(new Dp(this.b))},l.hd=function(){return fwt(new Dp(this.b))},l.cc=function(e){return u(u(Pi(this,e),21),84)},l.jd=function(e){return u(u(Pi(this,e),21),84)},l.fc=function(e){return u(u($D(this,e),21),84)},l.kd=function(e){return u(u($D(this,e),21),84)},l.mc=function(e){return _t(e,271)?fwt(u(e,271)):(pn(),new k2t(u(e,84)))},l.Zb=function(){var e;return e=this.f,e||(this.f=_t(this.c,171)?new yj(this,u(this.c,171)):_t(this.c,161)?new RM(this,u(this.c,161)):new t8(this,this.c))},l.pc=function(e,n){return _t(n,271)?new lUt(this,e,u(n,271)):new H2t(this,e,u(n,84))},N(Ye,"AbstractSortedSetMultimap",1657),D(1658,1657,k2),l.Zb=function(){var e;return e=this.f,u(u(e||(this.f=_t(this.c,171)?new yj(this,u(this.c,171)):_t(this.c,161)?new RM(this,u(this.c,161)):new t8(this,this.c)),161),171)},l.ec=function(){var e;return e=this.i,u(u(e||(this.i=_t(this.c,171)?new Jk(this,u(this.c,171)):_t(this.c,161)?new gM(this,u(this.c,161)):new K3(this,this.c)),84),271)},l.bc=function(){return _t(this.c,171)?new Jk(this,u(this.c,171)):_t(this.c,161)?new gM(this,u(this.c,161)):new K3(this,this.c)},N(Ye,"AbstractSortedKeySortedSetMultimap",1658),D(2010,1,{1947:1}),l.Fb=function(e){return H1n(this,e)},l.Hb=function(){var e;return gyt((e=this.g,e||(this.g=new vT(this))))},l.Ib=function(){var e;return sae((e=this.f,e||(this.f=new g2t(this))))},N(Ye,"AbstractTable",2010),D(665,B1,Uu,vT),l.$b=function(){Gqt()},l.Hc=function(e){var n,r;return _t(e,468)?(n=u(e,682),r=u(ny(VYt(this.a),Np(n.c.e,n.b)),83),!!r&&Hyt(r.vc(),new Cv(Np(n.c.c,n.a),U6(n.c,n.b,n.a)))):!1},l.Kc=function(){return Snn(this.a)},l.Mc=function(e){var n,r;return _t(e,468)?(n=u(e,682),r=u(ny(VYt(this.a),Np(n.c.e,n.b)),83),!!r&&_un(r.vc(),new Cv(Np(n.c.c,n.a),U6(n.c,n.b,n.a)))):!1},l.gc=function(){return nYt(this.a)},l.Nc=function(){return kin(this.a)},N(Ye,"AbstractTable/CellSet",665),D(1928,28,wy,itt),l.$b=function(){Gqt()},l.Hc=function(e){return Ndn(this.a,e)},l.Kc=function(){return Ann(this.a)},l.gc=function(){return nYt(this.a)},l.Nc=function(){return sZt(this.a)},N(Ye,"AbstractTable/Values",1928),D(1632,1631,k2),N(Ye,"ArrayListMultimapGwtSerializationDependencies",1632),D(513,1632,k2,oet,Bwt),l.hc=function(){return new Jc(this.a)},l.a=0,N(Ye,"ArrayListMultimap",513),D(664,2010,{664:1,1947:1,3:1},Ioe),N(Ye,"ArrayTable",664),D(1924,386,C7,jUt),l.Xb=function(e){return new wyt(this.a,e)},N(Ye,"ArrayTable/1",1924),D(1925,1,{},VB),l.ld=function(e){return new wyt(this.a,e)},N(Ye,"ArrayTable/1methodref$getCell$Type",1925),D(2011,1,{682:1}),l.Fb=function(e){var n;return e===this?!0:_t(e,468)?(n=u(e,682),dd(Np(this.c.e,this.b),Np(n.c.e,n.b))&&dd(Np(this.c.c,this.a),Np(n.c.c,n.a))&&dd(U6(this.c,this.b,this.a),U6(n.c,n.b,n.a))):!1},l.Hb=function(){return vz(ut(ot(Qn,1),Me,1,5,[Np(this.c.e,this.b),Np(this.c.c,this.a),U6(this.c,this.b,this.a)]))},l.Ib=function(){return"("+Np(this.c.e,this.b)+","+Np(this.c.c,this.a)+")="+U6(this.c,this.b,this.a)},N(Ye,"Tables/AbstractCell",2011),D(468,2011,{468:1,682:1},wyt),l.a=0,l.b=0,l.d=0,N(Ye,"ArrayTable/2",468),D(1927,1,{},a6),l.ld=function(e){return bte(this.a,e)},N(Ye,"ArrayTable/2methodref$getValue$Type",1927),D(1926,386,C7,$Ut),l.Xb=function(e){return bte(this.a,e)},N(Ye,"ArrayTable/3",1926),D(1979,1967,bw),l.$b=function(){Oj(this.kc())},l.vc=function(){return new c6(this)},l.lc=function(){return new wXt(this.kc(),this.gc())},N(Ye,"Maps/IteratorBasedAbstractMap",1979),D(828,1979,bw),l.$b=function(){throw nt(new Pr)},l._b=function(e){return lHt(this.c,e)},l.kc=function(){return new zUt(this,this.c.b.c.gc())},l.lc=function(){return Ant(this.c.b.c.gc(),16,new dv(this))},l.xc=function(e){var n;return n=u(w_(this.c,e),19),n?this.nd(n.a):null},l.dc=function(){return this.c.b.c.dc()},l.ec=function(){return Fnt(this.c)},l.zc=function(e,n){var r;if(r=u(w_(this.c,e),19),!r)throw nt(new Pn(this.md()+" "+e+" not in "+Fnt(this.c)));return this.od(r.a,n)},l.Bc=function(e){throw nt(new Pr)},l.gc=function(){return this.c.b.c.gc()},N(Ye,"ArrayTable/ArrayMap",828),D(1923,1,{},dv),l.ld=function(e){return UYt(this.a,e)},N(Ye,"ArrayTable/ArrayMap/0methodref$getEntry$Type",1923),D(1921,345,Mq,VHt),l.cd=function(){return HXe(this.a,this.b)},l.dd=function(){return this.a.nd(this.b)},l.ed=function(e){return this.a.od(this.b,e)},l.b=0,N(Ye,"ArrayTable/ArrayMap/1",1921),D(1922,386,C7,zUt),l.Xb=function(e){return UYt(this.a,e)},N(Ye,"ArrayTable/ArrayMap/2",1922),D(1920,828,bw,OYt),l.md=function(){return"Column"},l.nd=function(e){return U6(this.b,this.a,e)},l.od=function(e,n){return qne(this.b,this.a,e,n)},l.a=0,N(Ye,"ArrayTable/Row",1920),D(829,828,bw,g2t),l.nd=function(e){return new OYt(this.a,e)},l.zc=function(e,n){return u(n,83),CKe()},l.od=function(e,n){return u(n,83),SKe()},l.md=function(){return"Row"},N(Ye,"ArrayTable/RowMap",829),D(1120,1,Nh,GHt),l.qd=function(){return this.a.qd()&-262},l.rd=function(){return this.a.rd()},l.Nb=function(e){this.a.Nb(new $Ht(e,this.b))},l.sd=function(e){return this.a.sd(new jHt(e,this.b))},N(Ye,"CollectSpliterators/1",1120),D(1121,1,Kn,jHt),l.td=function(e){this.a.td(this.b.Kb(e))},N(Ye,"CollectSpliterators/1/lambda$0$Type",1121),D(1122,1,Kn,$Ht),l.td=function(e){this.a.td(this.b.Kb(e))},N(Ye,"CollectSpliterators/1/lambda$1$Type",1122),D(1123,1,Nh,bZt),l.qd=function(){return this.a},l.rd=function(){return this.d&&(this.b=yUt(this.b,this.d.rd())),yUt(this.b,0)},l.Nb=function(e){this.d&&(this.d.Nb(e),this.d=null),this.c.Nb(new RHt(this.e,e)),this.b=0},l.sd=function(e){for(;;){if(this.d&&this.d.sd(e))return a_(this.b,Dq)&&(this.b=Qp(this.b,1)),!0;if(this.d=null,!this.c.sd(new zHt(this,this.e)))return!1}},l.a=0,l.b=0,N(Ye,"CollectSpliterators/1FlatMapSpliterator",1123),D(1124,1,Kn,zHt),l.td=function(e){UQe(this.a,this.b,e)},N(Ye,"CollectSpliterators/1FlatMapSpliterator/lambda$0$Type",1124),D(1125,1,Kn,RHt),l.td=function(e){MXe(this.b,this.a,e)},N(Ye,"CollectSpliterators/1FlatMapSpliterator/lambda$1$Type",1125),D(1117,1,Nh,ZWt),l.qd=function(){return 16464|this.b},l.rd=function(){return this.a.rd()},l.Nb=function(e){this.a.xe(new HHt(e,this.c))},l.sd=function(e){return this.a.ye(new qHt(e,this.c))},l.b=0,N(Ye,"CollectSpliterators/1WithCharacteristics",1117),D(1118,1,AI,qHt),l.ud=function(e){this.a.td(this.b.ld(e))},N(Ye,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1118),D(1119,1,AI,HHt),l.ud=function(e){this.a.td(this.b.ld(e))},N(Ye,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1119),D(245,1,Bat),l.wd=function(e){return this.vd(u(e,245))},l.vd=function(e){var n;return e==(Ztt(),wut)?1:e==(Jtt(),vut)?-1:(n=(Mj(),SD(this.a,e.a)),n!=0?n:_t(this,519)==_t(e,519)?0:_t(this,519)?1:-1)},l.zd=function(){return this.a},l.Fb=function(e){return x3t(this,e)},N(Ye,"Cut",245),D(1761,245,Bat,Kqt),l.vd=function(e){return e==this?0:1},l.xd=function(e){throw nt(new ypt)},l.yd=function(e){e.a+="+∞)"},l.zd=function(){throw nt(new Ho(Khe))},l.Hb=function(){return qd(),M3t(this)},l.Ad=function(e){return!1},l.Ib=function(){return"+∞"};var vut;N(Ye,"Cut/AboveAll",1761),D(519,245,{245:1,519:1,3:1,35:1},UUt),l.xd=function(e){wc((e.a+="(",e),this.a)},l.yd=function(e){$p(wc(e,this.a),93)},l.Hb=function(){return~Ji(this.a)},l.Ad=function(e){return Mj(),SD(this.a,e)<0},l.Ib=function(){return"/"+this.a+"\\"},N(Ye,"Cut/AboveValue",519),D(1760,245,Bat,Yqt),l.vd=function(e){return e==this?0:-1},l.xd=function(e){e.a+="(-∞"},l.yd=function(e){throw nt(new ypt)},l.zd=function(){throw nt(new Ho(Khe))},l.Hb=function(){return qd(),M3t(this)},l.Ad=function(e){return!0},l.Ib=function(){return"-∞"};var wut;N(Ye,"Cut/BelowAll",1760),D(1762,245,Bat,WUt),l.xd=function(e){wc((e.a+="[",e),this.a)},l.yd=function(e){$p(wc(e,this.a),41)},l.Hb=function(){return Ji(this.a)},l.Ad=function(e){return Mj(),SD(this.a,e)<=0},l.Ib=function(){return"\\"+this.a+"/"},N(Ye,"Cut/BelowValue",1762),D(537,1,t0),l.Jc=function(e){_a(this,e)},l.Ib=function(){return eln(u(r$(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},N(Ye,"FluentIterable",537),D(433,537,t0,u_),l.Kc=function(){return new ar(lr(this.a.Kc(),new H))},N(Ye,"FluentIterable/2",433),D(1046,537,t0,QGt),l.Kc=function(){return jp(this)},N(Ye,"FluentIterable/3",1046),D(708,386,C7,p2t),l.Xb=function(e){return this.a[e].Kc()},N(Ye,"FluentIterable/3/1",708),D(1972,1,{}),l.Ib=function(){return Wo(this.Bd().b)},N(Ye,"ForwardingObject",1972),D(1973,1972,Yhe),l.Bd=function(){return this.Cd()},l.Jc=function(e){_a(this,e)},l.Lc=function(){return this.Oc()},l.Nc=function(){return new Tn(this,0)},l.Oc=function(){return new kn(null,this.Nc())},l.Fc=function(e){return this.Cd(),gHt()},l.Gc=function(e){return this.Cd(),pHt()},l.$b=function(){this.Cd(),bHt()},l.Hc=function(e){return this.Cd().Hc(e)},l.Ic=function(e){return this.Cd().Ic(e)},l.dc=function(){return this.Cd().b.dc()},l.Kc=function(){return this.Cd().Kc()},l.Mc=function(e){return this.Cd(),vHt()},l.gc=function(){return this.Cd().b.gc()},l.Pc=function(){return this.Cd().Pc()},l.Qc=function(e){return this.Cd().Qc(e)},N(Ye,"ForwardingCollection",1973),D(1980,28,A6t),l.Kc=function(){return this.Ed()},l.Fc=function(e){throw nt(new Pr)},l.Gc=function(e){throw nt(new Pr)},l.$b=function(){throw nt(new Pr)},l.Hc=function(e){return e!=null&&ry(this,e,!1)},l.Dd=function(){switch(this.gc()){case 0:return Vm(),Vm(),mut;case 1:return Vm(),new Lnt(Dr(this.Ed().Pb()));default:return new NYt(this,this.Pc())}},l.Mc=function(e){throw nt(new Pr)},N(Ye,"ImmutableCollection",1980),D(712,1980,A6t,wpt),l.Kc=function(){return W6(this.a.Kc())},l.Hc=function(e){return e!=null&&this.a.Hc(e)},l.Ic=function(e){return this.a.Ic(e)},l.dc=function(){return this.a.dc()},l.Ed=function(){return W6(this.a.Kc())},l.gc=function(){return this.a.gc()},l.Pc=function(){return this.a.Pc()},l.Qc=function(e){return this.a.Qc(e)},l.Ib=function(){return Wo(this.a)},N(Ye,"ForwardingImmutableCollection",712),D(152,1980,SC),l.Kc=function(){return this.Ed()},l.Yc=function(){return this.Fd(0)},l.Zc=function(e){return this.Fd(e)},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.bd=function(e,n){return this.Gd(e,n)},l.Vc=function(e,n){throw nt(new Pr)},l.Wc=function(e,n){throw nt(new Pr)},l.Fb=function(e){return Xpn(this,e)},l.Hb=function(){return ocn(this)},l.Xc=function(e){return e==null?-1:yfn(this,e)},l.Ed=function(){return this.Fd(0)},l.Fd=function(e){return M2t(this,e)},l.$c=function(e){throw nt(new Pr)},l._c=function(e,n){throw nt(new Pr)},l.Gd=function(e,n){var r;return yz((r=new nVt(this),new Kd(r,e,n)))};var mut;N(Ye,"ImmutableList",152),D(2006,152,SC),l.Kc=function(){return W6(this.Hd().Kc())},l.bd=function(e,n){return yz(this.Hd().bd(e,n))},l.Hc=function(e){return e!=null&&this.Hd().Hc(e)},l.Ic=function(e){return this.Hd().Ic(e)},l.Fb=function(e){return Si(this.Hd(),e)},l.Xb=function(e){return Np(this,e)},l.Hb=function(){return Ji(this.Hd())},l.Xc=function(e){return this.Hd().Xc(e)},l.dc=function(){return this.Hd().dc()},l.Ed=function(){return W6(this.Hd().Kc())},l.gc=function(){return this.Hd().gc()},l.Gd=function(e,n){return yz(this.Hd().bd(e,n))},l.Pc=function(){return this.Hd().Qc(Nt(Qn,Me,1,this.Hd().gc(),5,1))},l.Qc=function(e){return this.Hd().Qc(e)},l.Ib=function(){return Wo(this.Hd())},N(Ye,"ForwardingImmutableList",2006),D(714,1,S7),l.vc=function(){return Pv(this)},l.wc=function(e){U_(this,e)},l.ec=function(){return Fnt(this)},l.yc=function(e,n,r){return qit(this,e,n,r)},l.Cc=function(){return this.Ld()},l.$b=function(){throw nt(new Pr)},l._b=function(e){return this.xc(e)!=null},l.uc=function(e){return this.Ld().Hc(e)},l.Jd=function(){return new jzt(this)},l.Kd=function(){return new $zt(this)},l.Fb=function(e){return Jcn(this,e)},l.Hb=function(){return Pv(this).Hb()},l.dc=function(){return this.gc()==0},l.zc=function(e,n){return AKe()},l.Bc=function(e){throw nt(new Pr)},l.Ib=function(){return D0n(this)},l.Ld=function(){return this.e?this.e:this.e=this.Kd()},l.c=null,l.d=null,l.e=null;var uge;N(Ye,"ImmutableMap",714),D(715,714,S7),l._b=function(e){return lHt(this,e)},l.uc=function(e){return aVt(this.b,e)},l.Id=function(){return Pre(new mT(this))},l.Jd=function(){return Pre(gXt(this.b))},l.Kd=function(){return fd(),new wpt(dXt(this.b))},l.Fb=function(e){return oVt(this.b,e)},l.xc=function(e){return w_(this,e)},l.Hb=function(){return Ji(this.b.c)},l.dc=function(){return this.b.c.dc()},l.gc=function(){return this.b.c.gc()},l.Ib=function(){return Wo(this.b.c)},N(Ye,"ForwardingImmutableMap",715),D(1974,1973,Rat),l.Bd=function(){return this.Md()},l.Cd=function(){return this.Md()},l.Nc=function(){return new Tn(this,1)},l.Fb=function(e){return e===this||this.Md().Fb(e)},l.Hb=function(){return this.Md().Hb()},N(Ye,"ForwardingSet",1974),D(1069,1974,Rat,mT),l.Bd=function(){return m8(this.a.b)},l.Cd=function(){return m8(this.a.b)},l.Hc=function(e){if(_t(e,42)&&u(e,42).cd()==null)return!1;try{return sVt(m8(this.a.b),e)}catch(n){if(n=rs(n),_t(n,205))return!1;throw nt(n)}},l.Md=function(){return m8(this.a.b)},l.Qc=function(e){var n;return n=YXt(m8(this.a.b),e),m8(this.a.b).b.gc()=0?"+":"")+(r/60|0),n=rj(b.Math.abs(r)%60),(pae(),_ge)[this.q.getDay()]+" "+Cge[this.q.getMonth()]+" "+rj(this.q.getDate())+" "+rj(this.q.getHours())+":"+rj(this.q.getMinutes())+":"+rj(this.q.getSeconds())+" GMT"+e+n+" "+this.q.getFullYear()};var HH=N(br,"Date",199);D(1915,199,ife,qse),l.a=!1,l.b=0,l.c=0,l.d=0,l.e=0,l.f=0,l.g=!1,l.i=0,l.j=0,l.k=0,l.n=0,l.o=0,l.p=0,N("com.google.gwt.i18n.shared.impl","DateRecord",1915),D(1966,1,{}),l.fe=function(){return null},l.ge=function(){return null},l.he=function(){return null},l.ie=function(){return null},l.je=function(){return null},N(lx,"JSONValue",1966),D(216,1966,{216:1},yg,u6),l.Fb=function(e){return _t(e,216)?$wt(this.a,u(e,216).a):!1},l.ee=function(){return XWe},l.Hb=function(){return Swt(this.a)},l.fe=function(){return this},l.Ib=function(){var e,n,r;for(r=new Fl("["),n=0,e=this.a.length;n0&&(r.a+=","),wc(r,Xm(this,n));return r.a+="]",r.a},N(lx,"JSONArray",216),D(483,1966,{483:1},$k),l.ee=function(){return QWe},l.ge=function(){return this},l.Ib=function(){return Fn(),""+this.a},l.a=!1;var bge,vge;N(lx,"JSONBoolean",483),D(985,60,U0,Fqt),N(lx,"JSONException",985),D(1023,1966,{},mt),l.ee=function(){return nKe},l.Ib=function(){return Mu};var wge;N(lx,"JSONNull",1023),D(258,1966,{258:1},yT),l.Fb=function(e){return _t(e,258)?this.a==u(e,258).a:!1},l.ee=function(){return ZWe},l.Hb=function(){return s8(this.a)},l.he=function(){return this},l.Ib=function(){return this.a+""},l.a=0,N(lx,"JSONNumber",258),D(183,1966,{183:1},w6,zk),l.Fb=function(e){return _t(e,183)?$wt(this.a,u(e,183).a):!1},l.ee=function(){return JWe},l.Hb=function(){return Swt(this.a)},l.ie=function(){return this},l.Ib=function(){var e,n,r,s,o,h,d;for(d=new Fl("{"),e=!0,h=hit(this,Nt(Le,re,2,0,6,1)),r=h,s=0,o=r.length;s=0?":"+this.c:"")+")"},l.c=0;var o7t=N(ic,"StackTraceElement",310);cge={3:1,475:1,35:1,2:1};var Le=N(ic,L6t,2);D(107,418,{475:1},_g,BT,Ah),N(ic,"StringBuffer",107),D(100,418,{475:1},Ap,Lm,Fl),N(ic,"StringBuilder",100),D(687,73,oot,Ypt),N(ic,"StringIndexOutOfBoundsException",687),D(2043,1,{});var c7t;D(844,1,{},Vt),l.Kb=function(e){return u(e,78).e},N(ic,"Throwable/lambda$0$Type",844),D(41,60,{3:1,102:1,60:1,78:1,41:1},Pr,Tg),N(ic,"UnsupportedOperationException",41),D(240,236,{3:1,35:1,236:1,240:1},kD,ibt),l.wd=function(e){return Yue(this,u(e,240))},l.ke=function(){return ly(Dle(this))},l.Fb=function(e){var n;return this===e?!0:_t(e,240)?(n=u(e,240),this.e==n.e&&Yue(this,n)==0):!1},l.Hb=function(){var e;return this.b!=0?this.b:this.a<54?(e=Au(this.f),this.b=Mr(Gs(e,-1)),this.b=33*this.b+Mr(Gs(Rp(e,32),-1)),this.b=17*this.b+Cs(this.e),this.b):(this.b=17*Lre(this.c)+Cs(this.e),this.b)},l.Ib=function(){return Dle(this)},l.a=0,l.b=0,l.d=0,l.e=0,l.f=0;var kge,N2,u7t,l7t,h7t,f7t,d7t,g7t,Sut=N("java.math","BigDecimal",240);D(91,236,{3:1,35:1,236:1,91:1},L3t,Og,Y3,h4t,Iie,Fp),l.wd=function(e){return Sie(this,u(e,91))},l.ke=function(){return ly(Nat(this,0))},l.Fb=function(e){return c3t(this,e)},l.Hb=function(){return Lre(this)},l.Ib=function(){return Nat(this,0)},l.b=-2,l.c=0,l.d=0,l.e=0;var Aut,VH,p7t,Lut,GH,Y7,R4=N("java.math","BigInteger",91),Ege,Tge,Ex,oS;D(488,1967,bw),l.$b=function(){nl(this)},l._b=function(e){return Ml(this,e)},l.uc=function(e){return dre(this,e,this.g)||dre(this,e,this.f)},l.vc=function(){return new kg(this)},l.xc=function(e){return tr(this,e)},l.zc=function(e,n){return Ai(this,e,n)},l.Bc=function(e){return G6(this,e)},l.gc=function(){return $T(this)},N(br,"AbstractHashMap",488),D(261,B1,Uu,kg),l.$b=function(){this.a.$b()},l.Hc=function(e){return hZt(this,e)},l.Kc=function(){return new d2(this.a)},l.Mc=function(e){var n;return hZt(this,e)?(n=u(e,42).cd(),this.a.Bc(n),!0):!1},l.gc=function(){return this.a.gc()},N(br,"AbstractHashMap/EntrySet",261),D(262,1,da,d2),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return Yv(this)},l.Ob=function(){return this.b},l.Qb=function(){cte(this)},l.b=!1,N(br,"AbstractHashMap/EntrySetIterator",262),D(417,1,da,h6),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return mM(this)},l.Pb=function(){return OXt(this)},l.Qb=function(){Dl(this)},l.b=0,l.c=-1,N(br,"AbstractList/IteratorImpl",417),D(96,417,Jd,xa),l.Qb=function(){Dl(this)},l.Rb=function(e){Rm(this,e)},l.Sb=function(){return this.b>0},l.Tb=function(){return this.b},l.Ub=function(){return Zn(this.b>0),this.a.Xb(this.c=--this.b)},l.Vb=function(){return this.b-1},l.Wb=function(e){Pm(this.c!=-1),this.a._c(this.c,e)},N(br,"AbstractList/ListIteratorImpl",96),D(219,52,L7,Kd),l.Vc=function(e,n){Um(e,this.b),this.c.Vc(this.a+e,n),++this.b},l.Xb=function(e){return Sn(e,this.b),this.c.Xb(this.a+e)},l.$c=function(e){var n;return Sn(e,this.b),n=this.c.$c(this.a+e),--this.b,n},l._c=function(e,n){return Sn(e,this.b),this.c._c(this.a+e,n)},l.gc=function(){return this.b},l.a=0,l.b=0,N(br,"AbstractList/SubList",219),D(384,B1,Uu,Tm),l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a._b(e)},l.Kc=function(){var e;return e=this.a.vc().Kc(),new rM(e)},l.Mc=function(e){return this.a._b(e)?(this.a.Bc(e),!0):!1},l.gc=function(){return this.a.gc()},N(br,"AbstractMap/1",384),D(691,1,da,rM),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.a.Ob()},l.Pb=function(){var e;return e=u(this.a.Pb(),42),e.cd()},l.Qb=function(){this.a.Qb()},N(br,"AbstractMap/1/1",691),D(226,28,wy,m1),l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a.uc(e)},l.Kc=function(){var e;return e=this.a.vc().Kc(),new y1(e)},l.gc=function(){return this.a.gc()},N(br,"AbstractMap/2",226),D(294,1,da,y1),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.a.Ob()},l.Pb=function(){var e;return e=u(this.a.Pb(),42),e.dd()},l.Qb=function(){this.a.Qb()},N(br,"AbstractMap/2/1",294),D(484,1,{484:1,42:1}),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),Rc(this.d,n.cd())&&Rc(this.e,n.dd())):!1},l.cd=function(){return this.d},l.dd=function(){return this.e},l.Hb=function(){return G3(this.d)^G3(this.e)},l.ed=function(e){return X2t(this,e)},l.Ib=function(){return this.d+"="+this.e},N(br,"AbstractMap/AbstractEntry",484),D(383,484,{484:1,383:1,42:1},RR),N(br,"AbstractMap/SimpleEntry",383),D(1984,1,hot),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),Rc(this.cd(),n.cd())&&Rc(this.dd(),n.dd())):!1},l.Hb=function(){return G3(this.cd())^G3(this.dd())},l.Ib=function(){return this.cd()+"="+this.dd()},N(br,Uhe,1984),D(1992,1967,Vhe),l.tc=function(e){return mJt(this,e)},l._b=function(e){return vnt(this,e)},l.vc=function(){return new x(this)},l.xc=function(e){var n;return n=e,cc(Lyt(this,n))},l.ec=function(){return new y(this)},N(br,"AbstractNavigableMap",1992),D(739,B1,Uu,x),l.Hc=function(e){return _t(e,42)&&mJt(this.b,u(e,42))},l.Kc=function(){return new v_(this.b)},l.Mc=function(e){var n;return _t(e,42)?(n=u(e,42),ate(this.b,n)):!1},l.gc=function(){return this.b.c},N(br,"AbstractNavigableMap/EntrySet",739),D(493,B1,S6t,y),l.Nc=function(){return new FR(this)},l.$b=function(){OT(this.a)},l.Hc=function(e){return vnt(this.a,e)},l.Kc=function(){var e;return e=new v_(new g_(this.a).b),new g(e)},l.Mc=function(e){return vnt(this.a,e)?(D_(this.a,e),!0):!1},l.gc=function(){return this.a.c},N(br,"AbstractNavigableMap/NavigableKeySet",493),D(494,1,da,g),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return mM(this.a.a)},l.Pb=function(){var e;return e=wj(this.a),e.cd()},l.Qb=function(){uKt(this.a)},N(br,"AbstractNavigableMap/NavigableKeySet/1",494),D(2004,28,wy),l.Fc=function(e){return A8(h7(this,e)),!0},l.Gc=function(e){return In(e),Cj(e!=this,"Can't add a queue to itself"),Ka(this,e)},l.$b=function(){for(;Jrt(this)!=null;);},N(br,"AbstractQueue",2004),D(302,28,{4:1,20:1,28:1,14:1},F3,FQt),l.Fc=function(e){return Kwt(this,e),!0},l.$b=function(){tmt(this)},l.Hc=function(e){return Fne(new M_(this),e)},l.dc=function(){return NT(this)},l.Kc=function(){return new M_(this)},l.Mc=function(e){return frn(new M_(this),e)},l.gc=function(){return this.c-this.b&this.a.length-1},l.Nc=function(){return new Tn(this,272)},l.Qc=function(e){var n;return n=this.c-this.b&this.a.length-1,e.lengthn&&ls(e,n,null),e},l.b=0,l.c=0,N(br,"ArrayDeque",302),D(446,1,da,M_),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.a!=this.b},l.Pb=function(){return mz(this)},l.Qb=function(){Nee(this)},l.a=0,l.b=0,l.c=-1,N(br,"ArrayDeque/IteratorImpl",446),D(12,52,ofe,le,Jc,qu),l.Vc=function(e,n){$m(this,e,n)},l.Fc=function(e){return ue(this,e)},l.Wc=function(e,n){return Pyt(this,e,n)},l.Gc=function(e){return Rs(this,e)},l.$b=function(){this.c=Nt(Qn,Me,1,0,5,1)},l.Hc=function(e){return Go(this,e,0)!=-1},l.Jc=function(e){_u(this,e)},l.Xb=function(e){return Pe(this,e)},l.Xc=function(e){return Go(this,e,0)},l.dc=function(){return this.c.length==0},l.Kc=function(){return new S(this)},l.$c=function(e){return Ig(this,e)},l.Mc=function(e){return Eu(this,e)},l.Ud=function(e,n){PQt(this,e,n)},l._c=function(e,n){return lh(this,e,n)},l.gc=function(){return this.c.length},l.ad=function(e){aa(this,e)},l.Pc=function(){return ant(this)},l.Qc=function(e){return P1(this,e)};var X5n=N(br,"ArrayList",12);D(7,1,da,S),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return Jo(this)},l.Pb=function(){return Q(this)},l.Qb=function(){C_(this)},l.a=0,l.b=-1,N(br,"ArrayList/1",7),D(2013,b.Function,{},dt),l.te=function(e,n){return js(e,n)},D(154,52,cfe,Cl),l.Hc=function(e){return Fee(this,e)!=-1},l.Jc=function(e){var n,r,s,o;for(In(e),r=this.a,s=0,o=r.length;s>>0,e.toString(16)))},l.f=0,l.i=Ns;var XH=N(r0,"CNode",57);D(814,1,{},Lpt),N(r0,"CNode/CNodeBuilder",814);var $ge;D(1525,1,{},_r),l.Oe=function(e,n){return 0},l.Pe=function(e,n){return 0},N(r0,bfe,1525),D(1790,1,{},qr),l.Le=function(e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;for(_=bs,s=new S(e.a.b);s.as.d.c||s.d.c==h.d.c&&s.d.b0?e+this.n.d+this.n.a:0},l.Se=function(){var e,n,r,s,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].Se());else if(this.g)o=r3t(this,Est(this,null,!0));else for(n=(Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])),r=0,s=n.length;r0?o+this.n.b+this.n.c:0},l.Te=function(){var e,n,r,s,o;if(this.g)for(e=Est(this,null,!1),r=(Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])),s=0,o=r.length;s0&&(s[0]+=this.d,r-=s[0]),s[2]>0&&(s[2]+=this.d,r-=s[2]),this.c.a=b.Math.max(0,r),this.c.d=n.d+e.d+(this.c.a-r)/2,s[1]=b.Math.max(s[1],r),omt(this,iu,n.d+e.d+s[0]-(s[1]-r)/2,s)},l.b=null,l.d=0,l.e=!1,l.f=!1,l.g=!1;var Fut=0,QH=0;N(T2,"GridContainerCell",1473),D(461,22,{3:1,35:1,22:1,461:1},met);var lb,Ad,kf,Xge=zr(T2,"HorizontalLabelAlignment",461,Ur,Srn,hZe),Qge;D(306,212,{212:1,306:1},nQt,uee,JXt),l.Re=function(){return $Kt(this)},l.Se=function(){return Nvt(this)},l.a=0,l.c=!1;var a6n=N(T2,"LabelCell",306);D(244,326,{212:1,326:1,244:1},rC),l.Re=function(){return cI(this)},l.Se=function(){return uI(this)},l.Te=function(){gat(this)},l.Ue=function(){pat(this)},l.b=0,l.c=0,l.d=!1,N(T2,"StripContainerCell",244),D(1626,1,gi,Mc),l.Mb=function(e){return TKe(u(e,212))},N(T2,"StripContainerCell/lambda$0$Type",1626),D(1627,1,{},bp),l.Fe=function(e){return u(e,212).Se()},N(T2,"StripContainerCell/lambda$1$Type",1627),D(1628,1,gi,fm),l.Mb=function(e){return _Ke(u(e,212))},N(T2,"StripContainerCell/lambda$2$Type",1628),D(1629,1,{},T0),l.Fe=function(e){return u(e,212).Re()},N(T2,"StripContainerCell/lambda$3$Type",1629),D(462,22,{3:1,35:1,22:1,462:1},yet);var Ef,hb,s1,Zge=zr(T2,"VerticalLabelAlignment",462,Ur,Arn,fZe),Jge;D(789,1,{},v6t),l.c=0,l.d=0,l.k=0,l.s=0,l.t=0,l.v=!1,l.w=0,l.D=!1,N(Bq,"NodeContext",789),D(1471,1,qi,Fd),l.ue=function(e,n){return nUt(u(e,61),u(n,61))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Bq,"NodeContext/0methodref$comparePortSides$Type",1471),D(1472,1,qi,No),l.ue=function(e,n){return Zdn(u(e,111),u(n,111))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Bq,"NodeContext/1methodref$comparePortContexts$Type",1472),D(159,22,{3:1,35:1,22:1,159:1},dh);var tpe,epe,npe,rpe,ipe,spe,ape,ope,cpe,upe,lpe,hpe,fpe,dpe,gpe,ppe,bpe,vpe,wpe,mpe,ype,But,xpe=zr(Bq,"NodeLabelLocation",159,Ur,est,dZe),kpe;D(111,1,{111:1},Poe),l.a=!1,N(Bq,"PortContext",111),D(1476,1,Kn,ta),l.td=function(e){xHt(u(e,306))},N(FI,Lfe,1476),D(1477,1,gi,bu),l.Mb=function(e){return!!u(e,111).c},N(FI,Mfe,1477),D(1478,1,Kn,Pu),l.td=function(e){xHt(u(e,111).c)},N(FI,"LabelPlacer/lambda$2$Type",1478);var Q7t;D(1475,1,Kn,mo),l.td=function(e){Bm(),iKe(u(e,111))},N(FI,"NodeLabelAndSizeUtilities/lambda$0$Type",1475),D(790,1,Kn,dvt),l.td=function(e){bYe(this.b,this.c,this.a,u(e,181))},l.a=!1,l.c=!1,N(FI,"NodeLabelCellCreator/lambda$0$Type",790),D(1474,1,Kn,bn),l.td=function(e){oKe(this.a,u(e,181))},N(FI,"PortContextCreator/lambda$0$Type",1474);var ZH;D(1829,1,{},Os),N(O7,"GreedyRectangleStripOverlapRemover",1829),D(1830,1,qi,lo),l.ue=function(e,n){return KXe(u(e,222),u(n,222))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(O7,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830),D(1786,1,{},Jzt),l.a=5,l.e=0,N(O7,"RectangleStripOverlapRemover",1786),D(1787,1,qi,Fu),l.ue=function(e,n){return YXe(u(e,222),u(n,222))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(O7,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787),D(1789,1,qi,zo),l.ue=function(e,n){return men(u(e,222),u(n,222))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(O7,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789),D(406,22,{3:1,35:1,22:1,406:1},zR);var sO,Rut,jut,aO,Epe=zr(O7,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,Ur,Sin,gZe),Tpe;D(222,1,{222:1},Nnt),N(O7,"RectangleStripOverlapRemover/RectangleNode",222),D(1788,1,Kn,pr),l.td=function(e){Efn(this.a,u(e,222))},N(O7,"RectangleStripOverlapRemover/lambda$1$Type",1788),D(1304,1,qi,nd),l.ue=function(e,n){return Lyn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1304),D(1307,1,{},sf),l.Kb=function(e){return u(e,324).a},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1307),D(1308,1,gi,ll),l.Mb=function(e){return u(e,323).a},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1308),D(1309,1,gi,Vi),l.Mb=function(e){return u(e,323).a},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1309),D(1302,1,qi,Ke),l.ue=function(e,n){return uwn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1302),D(1305,1,{},Tl),l.Kb=function(e){return u(e,324).a},N(yd,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1305),D(767,1,qi,kr),l.ue=function(e,n){return hcn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinNumOfExtensionsComparator",767),D(1300,1,qi,ni),l.ue=function(e,n){return yon(u(e,321),u(n,321))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinPerimeterComparator",1300),D(1301,1,qi,eo),l.ue=function(e,n){return Xhn(u(e,321),u(n,321))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinPerimeterComparatorWithShape",1301),D(1303,1,qi,Dc),l.ue=function(e,n){return Iwn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1303),D(1306,1,{},Ju),l.Kb=function(e){return u(e,324).a},N(yd,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1306),D(777,1,{},ybt),l.Ce=function(e,n){return Ein(this,u(e,46),u(n,167))},N(yd,"SuccessorCombination",777),D(644,1,{},Qo),l.Ce=function(e,n){var r;return fpn((r=u(e,46),u(n,167),r))},N(yd,"SuccessorJitter",644),D(643,1,{},jf),l.Ce=function(e,n){var r;return tvn((r=u(e,46),u(n,167),r))},N(yd,"SuccessorLineByLine",643),D(568,1,{},rh),l.Ce=function(e,n){var r;return dbn((r=u(e,46),u(n,167),r))},N(yd,"SuccessorManhattan",568),D(1356,1,{},dm),l.Ce=function(e,n){var r;return T2n((r=u(e,46),u(n,167),r))},N(yd,"SuccessorMaxNormWindingInMathPosSense",1356),D(400,1,{},fr),l.Ce=function(e,n){return cwt(this,e,n)},l.c=!1,l.d=!1,l.e=!1,l.f=!1,N(yd,"SuccessorQuadrantsGeneric",400),D(1357,1,{},S9),l.Kb=function(e){return u(e,324).a},N(yd,"SuccessorQuadrantsGeneric/lambda$0$Type",1357),D(323,22,{3:1,35:1,22:1,323:1},$R),l.a=!1;var oO,cO,uO,lO,_pe=zr(jq,K6t,323,Ur,Min,pZe),Cpe;D(1298,1,{}),l.Ib=function(){var e,n,r,s,o,h;for(r=" ",e=de(0),o=0;o=0?"b"+e+"["+Irt(this.a)+"]":"b["+Irt(this.a)+"]"):"b_"+Dv(this)},N(RI,"FBendpoint",559),D(282,134,{3:1,282:1,94:1,134:1},FWt),l.Ib=function(){return Irt(this)},N(RI,"FEdge",282),D(231,134,{3:1,231:1,94:1,134:1},C$);var c6n=N(RI,"FGraph",231);D(447,357,{3:1,447:1,357:1,94:1,134:1},jZt),l.Ib=function(){return this.b==null||this.b.length==0?"l["+Irt(this.a)+"]":"l_"+this.b},N(RI,"FLabel",447),D(144,357,{3:1,144:1,357:1,94:1,134:1},YYt),l.Ib=function(){return jwt(this)},l.b=0,N(RI,"FNode",144),D(2003,1,{}),l.bf=function(e){X5t(this,e)},l.cf=function(){wse(this)},l.d=0,N(ixt,"AbstractForceModel",2003),D(631,2003,{631:1},Ane),l.af=function(e,n){var r,s,o,h,d;return goe(this.f,e,n),o=fa(uc(n.d),e.d),d=b.Math.sqrt(o.a*o.a+o.b*o.b),s=b.Math.max(0,d-A_(e.e)/2-A_(n.e)/2),r=ire(this.e,e,n),r>0?h=-ben(s,this.c)*r:h=cQe(s,this.b)*u(K(e,(n1(),Z7)),19).a,ld(o,h/d),o},l.bf=function(e){X5t(this,e),this.a=u(K(e,(n1(),iV)),19).a,this.c=Zt(ve(K(e,sV))),this.b=Zt(ve(K(e,Uut)))},l.df=function(e){return e0&&(h-=yKe(s,this.a)*r),ld(o,h*this.b/d),o},l.bf=function(e){var n,r,s,o,h,d,w;for(X5t(this,e),this.b=Zt(ve(K(e,(n1(),Wut)))),this.c=this.b/u(K(e,iV),19).a,s=e.e.c.length,h=0,o=0,w=new S(e.e);w.a0},l.a=0,l.b=0,l.c=0,N(ixt,"FruchtermanReingoldModel",632),D(849,1,Ph,NJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,qq),""),"Force Model"),"Determines the model for force calculation."),aEt),(Hg(),ms)),oEt),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,sxt),""),"Iterations"),"The number of iterations on the force model."),de(300)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,axt),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Oot),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),xd),$o),wa),on(qn)))),ba(e,Oot,qq,Upe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Not),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),$o),wa),on(qn)))),ba(e,Not,qq,Hpe),phe((new dT,e))};var $pe,zpe,aEt,qpe,Hpe,Vpe,Gpe,Upe;N(NC,"ForceMetaDataProvider",849),D(424,22,{3:1,35:1,22:1,424:1},Tbt);var Gut,rV,oEt=zr(NC,"ForceModelStrategy",424,Ur,nrn,wZe),Wpe;D(988,1,Ph,dT),l.Qe=function(e){phe(e)};var Kpe,Ype,cEt,iV,uEt,Xpe,Qpe,Zpe,lEt,Jpe,hEt,fEt,tbe,Z7,ebe,Uut,dEt,nbe,rbe,sV,Wut;N(NC,"ForceOptions",988),D(989,1,{},vg),l.$e=function(){var e;return e=new Cpt,e},l._e=function(e){},N(NC,"ForceOptions/ForceFactory",989);var dO,lS,Tx,aV;D(850,1,Ph,PJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cxt),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Fn(),!1)),(Hg(),Pa)),Ws),on((t1(),ua))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,uxt),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),$o),wa),Ki(qn,ut(ot(ep,1),oe,175,0,[Id]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,lxt),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),gEt),ms),xEt),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hxt),""),"Stress Epsilon"),"Termination criterion for the iterative process."),xd),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,fxt),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),de(Ti)),xc),Ha),on(qn)))),Jle((new FJ,e))};var ibe,sbe,gEt,abe,obe,cbe;N(NC,"StressMetaDataProvider",850),D(992,1,Ph,FJ),l.Qe=function(e){Jle(e)};var oV,pEt,bEt,vEt,wEt,mEt,ube,lbe,hbe,fbe,yEt,dbe;N(NC,"StressOptions",992),D(993,1,{},dk),l.$e=function(){var e;return e=new BWt,e},l._e=function(e){},N(NC,"StressOptions/StressFactory",993),D(1128,209,_2,BWt),l.Ze=function(e,n){var r,s,o,h,d;for(mr(n,qfe,1),Be(Fe(ze(e,(JD(),wEt))))?Be(Fe(ze(e,yEt)))||u$((r=new rr((Dm(),new Sm(e))),r)):yce(new Cpt,e,zc(n,1)),o=Xne(e),s=ule(this.a,o),d=s.Kc();d.Ob();)h=u(d.Pb(),231),!(h.e.c.length<=1)&&(Syn(this.b,h),sbn(this.b),_u(h.d,new vp));o=khe(s),mhe(o),or(n)},N(Gq,"StressLayoutProvider",1128),D(1129,1,Kn,vp),l.td=function(e){r6t(u(e,447))},N(Gq,"StressLayoutProvider/lambda$0$Type",1129),D(990,1,{},Uzt),l.c=0,l.e=0,l.g=0,N(Gq,"StressMajorization",990),D(379,22,{3:1,35:1,22:1,379:1},xet);var Kut,Yut,Xut,xEt=zr(Gq,"StressMajorization/Dimension",379,Ur,Mrn,mZe),gbe;D(991,1,qi,Di),l.ue=function(e,n){return YQe(this.a,u(e,144),u(n,144))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Gq,"StressMajorization/lambda$0$Type",991),D(1229,1,{},ZQt),N(wx,"ElkLayered",1229),D(1230,1,Kn,L9),l.td=function(e){apn(u(e,37))},N(wx,"ElkLayered/lambda$0$Type",1230),D(1231,1,Kn,wi),l.td=function(e){XQe(this.a,u(e,37))},N(wx,"ElkLayered/lambda$1$Type",1231),D(1263,1,{},TUt);var pbe,bbe,vbe;N(wx,"GraphConfigurator",1263),D(759,1,Kn,_s),l.td=function(e){Cae(this.a,u(e,10))},N(wx,"GraphConfigurator/lambda$0$Type",759),D(760,1,{},M9),l.Kb=function(e){return t4t(),new kn(null,new Tn(u(e,29).a,16))},N(wx,"GraphConfigurator/lambda$1$Type",760),D(761,1,Kn,Zi),l.td=function(e){Cae(this.a,u(e,10))},N(wx,"GraphConfigurator/lambda$2$Type",761),D(1127,209,_2,Yzt),l.Ze=function(e,n){var r;r=Kmn(new eqt,e),Gt(ze(e,(xe(),jy)))===Gt(($0(),np))?Cln(this.a,r,n):kpn(this.a,r,n),ghe(new RJ,r)},N(wx,"LayeredLayoutProvider",1127),D(356,22,{3:1,35:1,22:1,356:1},xM);var Ld,fb,fu,Gc,jo,kEt=zr(wx,"LayeredPhases",356,Ur,dsn,yZe),wbe;D(1651,1,{},Bee),l.i=0;var mbe;N(zI,"ComponentsToCGraphTransformer",1651);var ybe;D(1652,1,{},$f),l.ef=function(e,n){return b.Math.min(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},l.ff=function(e,n){return b.Math.min(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},N(zI,"ComponentsToCGraphTransformer/1",1652),D(81,1,{81:1}),l.i=0,l.k=!0,l.o=Ns;var Qut=N(BC,"CNode",81);D(460,81,{460:1,81:1},_2t,C3t),l.Ib=function(){return""},N(zI,"ComponentsToCGraphTransformer/CRectNode",460),D(1623,1,{},ov);var Zut,Jut;N(zI,"OneDimensionalComponentsCompaction",1623),D(1624,1,{},Bd),l.Kb=function(e){return xrn(u(e,46))},l.Fb=function(e){return this===e},N(zI,"OneDimensionalComponentsCompaction/lambda$0$Type",1624),D(1625,1,{},E3),l.Kb=function(e){return Nln(u(e,46))},l.Fb=function(e){return this===e},N(zI,"OneDimensionalComponentsCompaction/lambda$1$Type",1625),D(1654,1,{},KYt),N(BC,"CGraph",1654),D(189,1,{189:1},Zit),l.b=0,l.c=0,l.e=0,l.g=!0,l.i=Ns,N(BC,"CGroup",189),D(1653,1,{},R5),l.ef=function(e,n){return b.Math.max(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},l.ff=function(e,n){return b.Math.max(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},N(BC,bfe,1653),D(1655,1,{},Soe),l.d=!1;var xbe,tlt=N(BC,mfe,1655);D(1656,1,{},ou),l.Kb=function(e){return hbt(),Fn(),u(u(e,46).a,81).d.e!=0},l.Fb=function(e){return this===e},N(BC,yfe,1656),D(823,1,{},Pvt),l.a=!1,l.b=!1,l.c=!1,l.d=!1,N(BC,xfe,823),D(1825,1,{},fYt),N(Uq,kfe,1825);var gO=as(S2,gfe);D(1826,1,{369:1},HXt),l.Ke=function(e){pvn(this,u(e,466))},N(Uq,Efe,1826),D(1827,1,qi,j5),l.ue=function(e,n){return pnn(u(e,81),u(n,81))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Uq,Tfe,1827),D(466,1,{466:1},Cbt),l.a=!1,N(Uq,_fe,466),D(1828,1,qi,no),l.ue=function(e,n){return S1n(u(e,466),u(n,466))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Uq,Cfe,1828),D(140,1,{140:1},i8,Mvt),l.Fb=function(e){var n;return e==null||u6n!=dl(e)?!1:(n=u(e,140),Rc(this.c,n.c)&&Rc(this.d,n.d))},l.Hb=function(){return vz(ut(ot(Qn,1),Me,1,5,[this.c,this.d]))},l.Ib=function(){return"("+this.c+Xa+this.d+(this.a?"cx":"")+this.b+")"},l.a=!0,l.c=0,l.d=0;var u6n=N(S2,"Point",140);D(405,22,{3:1,35:1,22:1,405:1},qR);var Cw,Dy,$4,Iy,kbe=zr(S2,"Point/Quadrant",405,Ur,Din,xZe),Ebe;D(1642,1,{},Xzt),l.b=null,l.c=null,l.d=null,l.e=null,l.f=null;var Tbe,_be,Cbe,Sbe,Abe;N(S2,"RectilinearConvexHull",1642),D(574,1,{369:1},Bz),l.Ke=function(e){gan(this,u(e,140))},l.b=0;var EEt;N(S2,"RectilinearConvexHull/MaximalElementsEventHandler",574),D(1644,1,qi,uv),l.ue=function(e,n){return inn(ve(e),ve(n))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644),D(1643,1,{369:1},aee),l.Ke=function(e){A2n(this,u(e,140))},l.a=0,l.b=null,l.c=null,l.d=null,l.e=null,N(S2,"RectilinearConvexHull/RectangleEventHandler",1643),D(1645,1,qi,wg),l.ue=function(e,n){return oin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$0$Type",1645),D(1646,1,qi,cv),l.ue=function(e,n){return cin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$1$Type",1646),D(1647,1,qi,JK),l.ue=function(e,n){return lin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$2$Type",1647),D(1648,1,qi,qb),l.ue=function(e,n){return uin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$3$Type",1648),D(1649,1,qi,tY),l.ue=function(e,n){return f0n(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$4$Type",1649),D(1650,1,{},yQt),N(S2,"Scanline",1650),D(2005,1,{}),N(kd,"AbstractGraphPlacer",2005),D(325,1,{325:1},fWt),l.mf=function(e){return this.nf(e)?(cn(this.b,u(K(e,(ae(),Ny)),21),e),!0):!1},l.nf=function(e){var n,r,s,o;for(n=u(K(e,(ae(),Ny)),21),o=u(Pi(Hi,n),21),s=o.Kc();s.Ob();)if(r=u(s.Pb(),21),!u(Pi(this.b,r),15).dc())return!1;return!0};var Hi;N(kd,"ComponentGroup",325),D(765,2005,{},Mpt),l.of=function(e){var n,r;for(r=new S(this.a);r.aG&&(ce=0,_e+=q+o,q=0),bt=d.c,wC(d,ce+bt.a,_e+bt.b),Kf(bt),r=b.Math.max(r,ce+St.a),q=b.Math.max(q,St.b),ce+=St.a+o;if(n.f.a=r,n.f.b=_e+q,Be(Fe(K(h,WV)))){for(s=new D9,E6t(s,e,o),B=e.Kc();B.Ob();)M=u(B.Pb(),37),Fi(Kf(M.c),s.e);Fi(Kf(n.f),s.a)}Emt(n,e)},N(kd,"SimpleRowGraphPlacer",1291),D(1292,1,qi,zf),l.ue=function(e,n){return lcn(u(e,37),u(n,37))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(kd,"SimpleRowGraphPlacer/1",1292);var Mbe;D(1262,1,md,pm),l.Lb=function(e){var n;return n=u(K(u(e,243).b,(xe(),Oo)),74),!!n&&n.b!=0},l.Fb=function(e){return this===e},l.Mb=function(e){var n;return n=u(K(u(e,243).b,(xe(),Oo)),74),!!n&&n.b!=0},N(Wq,"CompoundGraphPostprocessor/1",1262),D(1261,1,vs,nqt),l.pf=function(e,n){ese(this,u(e,37),n)},N(Wq,"CompoundGraphPreprocessor",1261),D(441,1,{441:1},qre),l.c=!1,N(Wq,"CompoundGraphPreprocessor/ExternalPort",441),D(243,1,{243:1},Tj),l.Ib=function(){return ont(this.c)+":"+Eoe(this.b)},N(Wq,"CrossHierarchyEdge",243),D(763,1,qi,Ni),l.ue=function(e,n){return Jfn(this,u(e,243),u(n,243))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Wq,"CrossHierarchyEdgeComparator",763),D(299,134,{3:1,299:1,94:1,134:1}),l.p=0,N(ru,"LGraphElement",299),D(17,299,{3:1,17:1,299:1,94:1,134:1},zv),l.Ib=function(){return Eoe(this)};var nlt=N(ru,"LEdge",17);D(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},Gmt),l.Jc=function(e){_a(this,e)},l.Kc=function(){return new S(this.b)},l.Ib=function(){return this.b.c.length==0?"G-unlayered"+Jp(this.a):this.a.c.length==0?"G-layered"+Jp(this.b):"G[layerless"+Jp(this.a)+", layers"+Jp(this.b)+"]"};var Dbe=N(ru,"LGraph",37),Ibe;D(657,1,{}),l.qf=function(){return this.e.n},l.We=function(e){return K(this.e,e)},l.rf=function(){return this.e.o},l.sf=function(){return this.e.p},l.Xe=function(e){return ea(this.e,e)},l.tf=function(e){this.e.n.a=e.a,this.e.n.b=e.b},l.uf=function(e){this.e.o.a=e.a,this.e.o.b=e.b},l.vf=function(e){this.e.p=e},N(ru,"LGraphAdapters/AbstractLShapeAdapter",657),D(577,1,{839:1},ns),l.wf=function(){var e,n;if(!this.b)for(this.b=Hd(this.a.b.c.length),n=new S(this.a.b);n.a0&&Are(($r(n-1,e.length),e.charCodeAt(n-1)),Kfe);)--n;if(h> ",e),Wz(r)),Yr(wc((e.a+="[",e),r.i),"]")),e.a},l.c=!0,l.d=!1;var AEt,LEt,MEt,DEt,IEt,OEt,Nbe=N(ru,"LPort",11);D(397,1,t0,sa),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=new S(this.a.e),new Xs(e)},N(ru,"LPort/1",397),D(1290,1,da,Xs),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(Q(this.a),17).c},l.Ob=function(){return Jo(this.a)},l.Qb=function(){C_(this.a)},N(ru,"LPort/1/1",1290),D(359,1,t0,Cr),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=new S(this.a.g),new Jt(e)},N(ru,"LPort/2",359),D(762,1,da,Jt),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(Q(this.a),17).d},l.Ob=function(){return Jo(this.a)},l.Qb=function(){C_(this.a)},N(ru,"LPort/2/1",762),D(1283,1,t0,HVt),l.Jc=function(e){_a(this,e)},l.Kc=function(){return new M1(this)},N(ru,"LPort/CombineIter",1283),D(201,1,da,M1),l.Nb=function(e){Ea(this,e)},l.Qb=function(){dHt()},l.Ob=function(){return p_(this)},l.Pb=function(){return Jo(this.a)?Q(this.a):Q(this.b)},N(ru,"LPort/CombineIter/1",201),D(1285,1,md,wp),l.Lb=function(e){return TYt(e)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).e.c.length!=0},N(ru,"LPort/lambda$0$Type",1285),D(1284,1,md,bm),l.Lb=function(e){return _Yt(e)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).g.c.length!=0},N(ru,"LPort/lambda$1$Type",1284),D(1286,1,md,nY),l.Lb=function(e){return Vu(),u(e,11).j==(be(),On)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),On)},N(ru,"LPort/lambda$2$Type",1286),D(1287,1,md,Hb),l.Lb=function(e){return Vu(),u(e,11).j==(be(),Hn)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),Hn)},N(ru,"LPort/lambda$3$Type",1287),D(1288,1,md,rY),l.Lb=function(e){return Vu(),u(e,11).j==(be(),yr)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),yr)},N(ru,"LPort/lambda$4$Type",1288),D(1289,1,md,iY),l.Lb=function(e){return Vu(),u(e,11).j==(be(),Bn)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),Bn)},N(ru,"LPort/lambda$5$Type",1289),D(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},Lh),l.Jc=function(e){_a(this,e)},l.Kc=function(){return new S(this.a)},l.Ib=function(){return"L_"+Go(this.b.b,this,0)+Jp(this.a)},N(ru,"Layer",29),D(1342,1,{},eqt),N(Ug,Zfe,1342),D(1346,1,{},$5),l.Kb=function(e){return Ro(u(e,82))},N(Ug,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346),D(1349,1,{},I9),l.Kb=function(e){return Ro(u(e,82))},N(Ug,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349),D(1343,1,Kn,jn),l.td=function(e){Boe(this.a,u(e,118))},N(Ug,Jfe,1343),D(1344,1,Kn,Lr),l.td=function(e){Boe(this.a,u(e,118))},N(Ug,t1e,1344),D(1345,1,{},XP),l.Kb=function(e){return new kn(null,new Tn(Jen(u(e,79)),16))},N(Ug,e1e,1345),D(1347,1,gi,ir),l.Mb=function(e){return tXe(this.a,u(e,33))},N(Ug,n1e,1347),D(1348,1,{},gk),l.Kb=function(e){return new kn(null,new Tn(tnn(u(e,79)),16))},N(Ug,"ElkGraphImporter/lambda$5$Type",1348),D(1350,1,gi,sr),l.Mb=function(e){return eXe(this.a,u(e,33))},N(Ug,"ElkGraphImporter/lambda$7$Type",1350),D(1351,1,gi,sY),l.Mb=function(e){return vnn(u(e,79))},N(Ug,"ElkGraphImporter/lambda$8$Type",1351),D(1278,1,{},RJ);var Pbe;N(Ug,"ElkGraphLayoutTransferrer",1278),D(1279,1,gi,Fa),l.Mb=function(e){return HQe(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$0$Type",1279),D(1280,1,Kn,Hr),l.td=function(e){vM(),ue(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$1$Type",1280),D(1281,1,gi,ss),l.Mb=function(e){return AQe(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$2$Type",1281),D(1282,1,Kn,qo),l.td=function(e){vM(),ue(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$3$Type",1282),D(1485,1,vs,pk),l.pf=function(e,n){Mon(u(e,37),n)},N($n,"CommentNodeMarginCalculator",1485),D(1486,1,{},aY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"CommentNodeMarginCalculator/lambda$0$Type",1486),D(1487,1,Kn,oY),l.td=function(e){lyn(u(e,10))},N($n,"CommentNodeMarginCalculator/lambda$1$Type",1487),D(1488,1,vs,cY),l.pf=function(e,n){Evn(u(e,37),n)},N($n,"CommentPostprocessor",1488),D(1489,1,vs,uY),l.pf=function(e,n){M4n(u(e,37),n)},N($n,"CommentPreprocessor",1489),D(1490,1,vs,lY),l.pf=function(e,n){Ubn(u(e,37),n)},N($n,"ConstraintsPostprocessor",1490),D(1491,1,vs,hY),l.pf=function(e,n){Jon(u(e,37),n)},N($n,"EdgeAndLayerConstraintEdgeReverser",1491),D(1492,1,vs,fY),l.pf=function(e,n){zln(u(e,37),n)},N($n,"EndLabelPostprocessor",1492),D(1493,1,{},dY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"EndLabelPostprocessor/lambda$0$Type",1493),D(1494,1,gi,gY),l.Mb=function(e){return Pnn(u(e,10))},N($n,"EndLabelPostprocessor/lambda$1$Type",1494),D(1495,1,Kn,pY),l.td=function(e){A1n(u(e,10))},N($n,"EndLabelPostprocessor/lambda$2$Type",1495),D(1496,1,vs,bY),l.pf=function(e,n){vgn(u(e,37),n)},N($n,"EndLabelPreprocessor",1496),D(1497,1,{},yL),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"EndLabelPreprocessor/lambda$0$Type",1497),D(1498,1,Kn,pKt),l.td=function(e){vYe(this.a,this.b,this.c,u(e,10))},l.a=0,l.b=0,l.c=!1,N($n,"EndLabelPreprocessor/lambda$1$Type",1498),D(1499,1,gi,vY),l.Mb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),_E))},N($n,"EndLabelPreprocessor/lambda$2$Type",1499),D(1500,1,Kn,Bc),l.td=function(e){ai(this.a,u(e,70))},N($n,"EndLabelPreprocessor/lambda$3$Type",1500),D(1501,1,gi,wY),l.Mb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),Yy))},N($n,"EndLabelPreprocessor/lambda$4$Type",1501),D(1502,1,Kn,ro),l.td=function(e){ai(this.a,u(e,70))},N($n,"EndLabelPreprocessor/lambda$5$Type",1502),D(1551,1,vs,BJ),l.pf=function(e,n){Yun(u(e,37),n)};var Fbe;N($n,"EndLabelSorter",1551),D(1552,1,qi,O9),l.ue=function(e,n){return _hn(u(e,456),u(n,456))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"EndLabelSorter/1",1552),D(456,1,{456:1},PXt),N($n,"EndLabelSorter/LabelGroup",456),D(1553,1,{},QP),l.Kb=function(e){return wM(),new kn(null,new Tn(u(e,29).a,16))},N($n,"EndLabelSorter/lambda$0$Type",1553),D(1554,1,gi,z5),l.Mb=function(e){return wM(),u(e,10).k==(Gn(),qs)},N($n,"EndLabelSorter/lambda$1$Type",1554),D(1555,1,Kn,mY),l.td=function(e){A0n(u(e,10))},N($n,"EndLabelSorter/lambda$2$Type",1555),D(1556,1,gi,yY),l.Mb=function(e){return wM(),Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),Yy))},N($n,"EndLabelSorter/lambda$3$Type",1556),D(1557,1,gi,xY),l.Mb=function(e){return wM(),Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),_E))},N($n,"EndLabelSorter/lambda$4$Type",1557),D(1503,1,vs,kY),l.pf=function(e,n){xyn(this,u(e,37))},l.b=0,l.c=0,N($n,"FinalSplineBendpointsCalculator",1503),D(1504,1,{},EY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"FinalSplineBendpointsCalculator/lambda$0$Type",1504),D(1505,1,{},N9),l.Kb=function(e){return new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N($n,"FinalSplineBendpointsCalculator/lambda$1$Type",1505),D(1506,1,gi,xL),l.Mb=function(e){return!Wa(u(e,17))},N($n,"FinalSplineBendpointsCalculator/lambda$2$Type",1506),D(1507,1,gi,ZP),l.Mb=function(e){return ea(u(e,17),(ae(),F2))},N($n,"FinalSplineBendpointsCalculator/lambda$3$Type",1507),D(1508,1,Kn,Tc),l.td=function(e){Nwn(this.a,u(e,128))},N($n,"FinalSplineBendpointsCalculator/lambda$4$Type",1508),D(1509,1,Kn,T3),l.td=function(e){jst(u(e,17).a)},N($n,"FinalSplineBendpointsCalculator/lambda$5$Type",1509),D(792,1,vs,Ma),l.pf=function(e,n){g3n(this,u(e,37),n)},N($n,"GraphTransformer",792),D(511,22,{3:1,35:1,22:1,511:1},_bt);var ilt,pO,Bbe=zr($n,"GraphTransformer/Mode",511,Ur,rrn,PJe),Rbe;D(1510,1,vs,_3),l.pf=function(e,n){V2n(u(e,37),n)},N($n,"HierarchicalNodeResizingProcessor",1510),D(1511,1,vs,TY),l.pf=function(e,n){_on(u(e,37),n)},N($n,"HierarchicalPortConstraintProcessor",1511),D(1512,1,qi,of),l.ue=function(e,n){return Fhn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"HierarchicalPortConstraintProcessor/NodeComparator",1512),D(1513,1,vs,q5),l.pf=function(e,n){Gmn(u(e,37),n)},N($n,"HierarchicalPortDummySizeProcessor",1513),D(1514,1,vs,_Y),l.pf=function(e,n){qvn(this,u(e,37),n)},l.a=0,N($n,"HierarchicalPortOrthogonalEdgeRouter",1514),D(1515,1,qi,bk),l.ue=function(e,n){return WXe(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"HierarchicalPortOrthogonalEdgeRouter/1",1515),D(1516,1,qi,Rd),l.ue=function(e,n){return oan(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"HierarchicalPortOrthogonalEdgeRouter/2",1516),D(1517,1,vs,CY),l.pf=function(e,n){d0n(u(e,37),n)},N($n,"HierarchicalPortPositionProcessor",1517),D(1518,1,vs,jJ),l.pf=function(e,n){c5n(this,u(e,37))},l.a=0,l.c=0;var cV,uV;N($n,"HighDegreeNodeLayeringProcessor",1518),D(571,1,{571:1},SY),l.b=-1,l.d=-1,N($n,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",571),D(1519,1,{},AY),l.Kb=function(e){return VM(),Uo(u(e,10))},l.Fb=function(e){return this===e},N($n,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1519),D(1520,1,{},LY),l.Kb=function(e){return VM(),$s(u(e,10))},l.Fb=function(e){return this===e},N($n,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1520),D(1526,1,vs,P9),l.pf=function(e,n){mmn(this,u(e,37),n)},N($n,"HyperedgeDummyMerger",1526),D(793,1,{},pvt),l.a=!1,l.b=!1,l.c=!1,N($n,"HyperedgeDummyMerger/MergeState",793),D(1527,1,{},kL),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"HyperedgeDummyMerger/lambda$0$Type",1527),D(1528,1,{},JP),l.Kb=function(e){return new kn(null,new Tn(u(e,10).j,16))},N($n,"HyperedgeDummyMerger/lambda$1$Type",1528),D(1529,1,Kn,EL),l.td=function(e){u(e,11).p=-1},N($n,"HyperedgeDummyMerger/lambda$2$Type",1529),D(1530,1,vs,H5),l.pf=function(e,n){vmn(u(e,37),n)},N($n,"HypernodesProcessor",1530),D(1531,1,vs,MY),l.pf=function(e,n){wmn(u(e,37),n)},N($n,"InLayerConstraintProcessor",1531),D(1532,1,vs,tF),l.pf=function(e,n){Kon(u(e,37),n)},N($n,"InnermostNodeMarginCalculator",1532),D(1533,1,vs,eF),l.pf=function(e,n){_4n(this,u(e,37))},l.a=Ns,l.b=Ns,l.c=bs,l.d=bs;var l6n=N($n,"InteractiveExternalPortPositioner",1533);D(1534,1,{},DY),l.Kb=function(e){return u(e,17).d.i},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$0$Type",1534),D(1535,1,{},io),l.Kb=function(e){return XXe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$1$Type",1535),D(1536,1,{},IY),l.Kb=function(e){return u(e,17).c.i},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$2$Type",1536),D(1537,1,{},_l),l.Kb=function(e){return QXe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$3$Type",1537),D(1538,1,{},Gf),l.Kb=function(e){return $Qe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$4$Type",1538),D(1539,1,{},Ep),l.Kb=function(e){return zQe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$5$Type",1539),D(77,22,{3:1,35:1,22:1,77:1,234:1},Ls),l.Kf=function(){switch(this.g){case 15:return new KX;case 22:return new YX;case 47:return new ZX;case 28:case 35:return new C3;case 32:return new pk;case 42:return new cY;case 1:return new uY;case 41:return new lY;case 56:return new Ma(($8(),pO));case 0:return new Ma(($8(),ilt));case 2:return new hY;case 54:return new fY;case 33:return new bY;case 51:return new kY;case 55:return new _3;case 13:return new TY;case 38:return new q5;case 44:return new _Y;case 40:return new CY;case 9:return new jJ;case 49:return new eWt;case 37:return new P9;case 43:return new H5;case 27:return new MY;case 30:return new tF;case 3:return new eF;case 18:return new NY;case 29:return new PY;case 5:return new MB;case 50:return new OY;case 34:return new $J;case 36:return new vk;case 52:return new BJ;case 11:return new vm;case 7:return new qJ;case 39:return new wk;case 45:return new jY;case 16:return new F9;case 10:return new rd;case 48:return new _L;case 21:return new mk;case 23:return new ret((Zv(),IS));case 8:return new sF;case 12:return new SL;case 4:return new zY;case 19:return new gT;case 17:return new UY;case 53:return new WY;case 6:return new fF;case 25:return new sqt;case 46:return new QY;case 31:return new jWt;case 14:return new LL;case 26:return new eQ;case 20:return new sX;case 24:return new ret((Zv(),dG));default:throw nt(new Pn(jot+(this.f!=null?this.f:""+this.g)))}};var NEt,PEt,FEt,BEt,REt,jEt,$Et,zEt,qEt,HEt,hS,lV,hV,VEt,GEt,UEt,WEt,KEt,YEt,XEt,fS,QEt,ZEt,JEt,t9t,e9t,slt,fV,dV,n9t,gV,pV,bV,J7,tE,eE,r9t,vV,wV,i9t,mV,yV,s9t,a9t,o9t,c9t,xV,alt,bO,kV,EV,TV,_V,u9t,l9t,h9t,f9t,h6n=zr($n,gxt,77,Ur,Lce,NJe),jbe;D(1540,1,vs,NY),l.pf=function(e,n){S4n(u(e,37),n)},N($n,"InvertedPortProcessor",1540),D(1541,1,vs,PY),l.pf=function(e,n){Swn(u(e,37),n)},N($n,"LabelAndNodeSizeProcessor",1541),D(1542,1,gi,FY),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"LabelAndNodeSizeProcessor/lambda$0$Type",1542),D(1543,1,gi,jd),l.Mb=function(e){return u(e,10).k==(Gn(),Is)},N($n,"LabelAndNodeSizeProcessor/lambda$1$Type",1543),D(1544,1,Kn,bKt),l.td=function(e){wYe(this.b,this.a,this.c,u(e,10))},l.a=!1,l.c=!1,N($n,"LabelAndNodeSizeProcessor/lambda$2$Type",1544),D(1545,1,vs,MB),l.pf=function(e,n){Q3n(u(e,37),n)};var $be;N($n,"LabelDummyInserter",1545),D(1546,1,md,lv),l.Lb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),TE))},l.Fb=function(e){return this===e},l.Mb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),TE))},N($n,"LabelDummyInserter/1",1546),D(1547,1,vs,OY),l.pf=function(e,n){Jyn(u(e,37),n)},N($n,"LabelDummyRemover",1547),D(1548,1,gi,BY),l.Mb=function(e){return Be(Fe(K(u(e,70),(xe(),Klt))))},N($n,"LabelDummyRemover/lambda$0$Type",1548),D(1359,1,vs,$J),l.pf=function(e,n){A3n(this,u(e,37),n)},l.a=null;var olt;N($n,"LabelDummySwitcher",1359),D(286,1,{286:1},Sue),l.c=0,l.d=null,l.f=0,N($n,"LabelDummySwitcher/LabelDummyInfo",286),D(1360,1,{},nF),l.Kb=function(e){return Y6(),new kn(null,new Tn(u(e,29).a,16))},N($n,"LabelDummySwitcher/lambda$0$Type",1360),D(1361,1,gi,rF),l.Mb=function(e){return Y6(),u(e,10).k==(Gn(),Pl)},N($n,"LabelDummySwitcher/lambda$1$Type",1361),D(1362,1,{},Eg),l.Kb=function(e){return LQe(this.a,u(e,10))},N($n,"LabelDummySwitcher/lambda$2$Type",1362),D(1363,1,Kn,ad),l.td=function(e){Aen(this.a,u(e,286))},N($n,"LabelDummySwitcher/lambda$3$Type",1363),D(1364,1,qi,RY),l.ue=function(e,n){return nen(u(e,286),u(n,286))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"LabelDummySwitcher/lambda$4$Type",1364),D(791,1,vs,C3),l.pf=function(e,n){jsn(u(e,37),n)},N($n,"LabelManagementProcessor",791),D(1549,1,vs,vk),l.pf=function(e,n){lvn(u(e,37),n)},N($n,"LabelSideSelector",1549),D(1550,1,gi,TL),l.Mb=function(e){return Be(Fe(K(u(e,70),(xe(),Klt))))},N($n,"LabelSideSelector/lambda$0$Type",1550),D(1558,1,vs,vm),l.pf=function(e,n){Umn(u(e,37),n)},N($n,"LayerConstraintPostprocessor",1558),D(1559,1,vs,qJ),l.pf=function(e,n){abn(u(e,37),n)};var d9t;N($n,"LayerConstraintPreprocessor",1559),D(360,22,{3:1,35:1,22:1,360:1},HR);var vO,CV,SV,clt,zbe=zr($n,"LayerConstraintPreprocessor/HiddenNodeConnections",360,Ur,Iin,_Ze),qbe;D(1560,1,vs,wk),l.pf=function(e,n){Xyn(u(e,37),n)},N($n,"LayerSizeAndGraphHeightCalculator",1560),D(1561,1,vs,jY),l.pf=function(e,n){Jbn(u(e,37),n)},N($n,"LongEdgeJoiner",1561),D(1562,1,vs,F9),l.pf=function(e,n){Dyn(u(e,37),n)},N($n,"LongEdgeSplitter",1562),D(1563,1,vs,rd),l.pf=function(e,n){D3n(this,u(e,37),n)},l.d=0,l.e=0,l.i=0,l.j=0,l.k=0,l.n=0,N($n,"NodePromotion",1563),D(1564,1,{},iF),l.Kb=function(e){return u(e,46),Fn(),!0},l.Fb=function(e){return this===e},N($n,"NodePromotion/lambda$0$Type",1564),D(1565,1,{},Tp),l.Kb=function(e){return Yen(this.a,u(e,46))},l.Fb=function(e){return this===e},l.a=0,N($n,"NodePromotion/lambda$1$Type",1565),D(1566,1,{},Uf),l.Kb=function(e){return Xen(this.a,u(e,46))},l.Fb=function(e){return this===e},l.a=0,N($n,"NodePromotion/lambda$2$Type",1566),D(1567,1,vs,_L),l.pf=function(e,n){e5n(u(e,37),n)},N($n,"NorthSouthPortPostprocessor",1567),D(1568,1,vs,mk),l.pf=function(e,n){$4n(u(e,37),n)},N($n,"NorthSouthPortPreprocessor",1568),D(1569,1,qi,CL),l.ue=function(e,n){return pcn(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"NorthSouthPortPreprocessor/lambda$0$Type",1569),D(1570,1,vs,sF),l.pf=function(e,n){rmn(u(e,37),n)},N($n,"PartitionMidprocessor",1570),D(1571,1,gi,$Y),l.Mb=function(e){return ea(u(e,10),(xe(),gE))},N($n,"PartitionMidprocessor/lambda$0$Type",1571),D(1572,1,Kn,bv),l.td=function(e){wnn(this.a,u(e,10))},N($n,"PartitionMidprocessor/lambda$1$Type",1572),D(1573,1,vs,SL),l.pf=function(e,n){m2n(u(e,37),n)},N($n,"PartitionPostprocessor",1573),D(1574,1,vs,zY),l.pf=function(e,n){Lpn(u(e,37),n)},N($n,"PartitionPreprocessor",1574),D(1575,1,gi,qY),l.Mb=function(e){return ea(u(e,10),(xe(),gE))},N($n,"PartitionPreprocessor/lambda$0$Type",1575),D(1576,1,{},aF),l.Kb=function(e){return new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N($n,"PartitionPreprocessor/lambda$1$Type",1576),D(1577,1,gi,V5),l.Mb=function(e){return khn(u(e,17))},N($n,"PartitionPreprocessor/lambda$2$Type",1577),D(1578,1,Kn,oF),l.td=function(e){_cn(u(e,17))},N($n,"PartitionPreprocessor/lambda$3$Type",1578),D(1579,1,vs,gT),l.pf=function(e,n){zwn(u(e,37),n)};var g9t,Hbe,Vbe,Gbe,p9t,b9t;N($n,"PortListSorter",1579),D(1580,1,{},G5),l.Kb=function(e){return Q8(),u(e,11).e},N($n,"PortListSorter/lambda$0$Type",1580),D(1581,1,{},HY),l.Kb=function(e){return Q8(),u(e,11).g},N($n,"PortListSorter/lambda$1$Type",1581),D(1582,1,qi,AL),l.ue=function(e,n){return zZt(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"PortListSorter/lambda$2$Type",1582),D(1583,1,qi,VY),l.ue=function(e,n){return Ufn(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"PortListSorter/lambda$3$Type",1583),D(1584,1,qi,GY),l.ue=function(e,n){return Xue(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"PortListSorter/lambda$4$Type",1584),D(1585,1,vs,UY),l.pf=function(e,n){tbn(u(e,37),n)},N($n,"PortSideProcessor",1585),D(1586,1,vs,WY),l.pf=function(e,n){ewn(u(e,37),n)},N($n,"ReversedEdgeRestorer",1586),D(1591,1,vs,sqt),l.pf=function(e,n){Mfn(this,u(e,37),n)},N($n,"SelfLoopPortRestorer",1591),D(1592,1,{},cF),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"SelfLoopPortRestorer/lambda$0$Type",1592),D(1593,1,gi,KY),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SelfLoopPortRestorer/lambda$1$Type",1593),D(1594,1,gi,YY),l.Mb=function(e){return ea(u(e,10),(ae(),hE))},N($n,"SelfLoopPortRestorer/lambda$2$Type",1594),D(1595,1,{},XY),l.Kb=function(e){return u(K(u(e,10),(ae(),hE)),403)},N($n,"SelfLoopPortRestorer/lambda$3$Type",1595),D(1596,1,Kn,Cm),l.td=function(e){j0n(this.a,u(e,403))},N($n,"SelfLoopPortRestorer/lambda$4$Type",1596),D(794,1,Kn,uF),l.td=function(e){tgn(u(e,101))},N($n,"SelfLoopPortRestorer/lambda$5$Type",794),D(1597,1,vs,QY),l.pf=function(e,n){jhn(u(e,37),n)},N($n,"SelfLoopPostProcessor",1597),D(1598,1,{},ZY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"SelfLoopPostProcessor/lambda$0$Type",1598),D(1599,1,gi,JY),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SelfLoopPostProcessor/lambda$1$Type",1599),D(1600,1,gi,lF),l.Mb=function(e){return ea(u(e,10),(ae(),hE))},N($n,"SelfLoopPostProcessor/lambda$2$Type",1600),D(1601,1,Kn,tX),l.td=function(e){U1n(u(e,10))},N($n,"SelfLoopPostProcessor/lambda$3$Type",1601),D(1602,1,{},eX),l.Kb=function(e){return new kn(null,new Tn(u(e,101).f,1))},N($n,"SelfLoopPostProcessor/lambda$4$Type",1602),D(1603,1,Kn,d6),l.td=function(e){Pin(this.a,u(e,409))},N($n,"SelfLoopPostProcessor/lambda$5$Type",1603),D(1604,1,gi,hF),l.Mb=function(e){return!!u(e,101).i},N($n,"SelfLoopPostProcessor/lambda$6$Type",1604),D(1605,1,Kn,N3),l.td=function(e){mKe(this.a,u(e,101))},N($n,"SelfLoopPostProcessor/lambda$7$Type",1605),D(1587,1,vs,fF),l.pf=function(e,n){Ibn(u(e,37),n)},N($n,"SelfLoopPreProcessor",1587),D(1588,1,{},dF),l.Kb=function(e){return new kn(null,new Tn(u(e,101).f,1))},N($n,"SelfLoopPreProcessor/lambda$0$Type",1588),D(1589,1,{},nX),l.Kb=function(e){return u(e,409).a},N($n,"SelfLoopPreProcessor/lambda$1$Type",1589),D(1590,1,Kn,rX),l.td=function(e){TXe(u(e,17))},N($n,"SelfLoopPreProcessor/lambda$2$Type",1590),D(1606,1,vs,jWt),l.pf=function(e,n){L0n(this,u(e,37),n)},N($n,"SelfLoopRouter",1606),D(1607,1,{},yk),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"SelfLoopRouter/lambda$0$Type",1607),D(1608,1,gi,U5),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SelfLoopRouter/lambda$1$Type",1608),D(1609,1,gi,B9),l.Mb=function(e){return ea(u(e,10),(ae(),hE))},N($n,"SelfLoopRouter/lambda$2$Type",1609),D(1610,1,{},iX),l.Kb=function(e){return u(K(u(e,10),(ae(),hE)),403)},N($n,"SelfLoopRouter/lambda$3$Type",1610),D(1611,1,Kn,PVt),l.td=function(e){unn(this.a,this.b,u(e,403))},N($n,"SelfLoopRouter/lambda$4$Type",1611),D(1612,1,vs,LL),l.pf=function(e,n){Z2n(u(e,37),n)},N($n,"SemiInteractiveCrossMinProcessor",1612),D(1613,1,gi,R9),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1613),D(1614,1,gi,ML),l.Mb=function(e){return eYt(u(e,10))._b((xe(),Hy))},N($n,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1614),D(1615,1,qi,gF),l.ue=function(e,n){return Son(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1615),D(1616,1,{},pF),l.Ce=function(e,n){return Cnn(u(e,10),u(n,10))},N($n,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1616),D(1618,1,vs,sX),l.pf=function(e,n){Wmn(u(e,37),n)},N($n,"SortByInputModelProcessor",1618),D(1619,1,gi,aX),l.Mb=function(e){return u(e,11).g.c.length!=0},N($n,"SortByInputModelProcessor/lambda$0$Type",1619),D(1620,1,Kn,g6),l.td=function(e){sgn(this.a,u(e,11))},N($n,"SortByInputModelProcessor/lambda$1$Type",1620),D(1693,803,{},Xee),l.Me=function(e){var n,r,s,o;switch(this.c=e,this.a.g){case 2:n=new le,ys(Wi(new kn(null,new Tn(this.c.a.b,16)),new mF),new $Vt(this,n)),aI(this,new vF),_u(n,new cX),n.c=Nt(Qn,Me,1,0,5,1),ys(Wi(new kn(null,new Tn(this.c.a.b,16)),new uX),new P3(n)),aI(this,new lX),_u(n,new hX),n.c=Nt(Qn,Me,1,0,5,1),r=mUt(une(Jj(new kn(null,new Tn(this.c.a.b,16)),new $d(this))),new fX),ys(new kn(null,new Tn(this.c.a.a,16)),new BVt(r,n)),aI(this,new dX),_u(n,new oX),n.c=Nt(Qn,Me,1,0,5,1);break;case 3:s=new le,aI(this,new bF),o=mUt(une(Jj(new kn(null,new Tn(this.c.a.b,16)),new TT(this))),new wF),ys(Wi(new kn(null,new Tn(this.c.a.b,16)),new gX),new jVt(o,s)),aI(this,new pX),_u(s,new bX),s.c=Nt(Qn,Me,1,0,5,1);break;default:throw nt(new Vzt)}},l.b=0,N(Ps,"EdgeAwareScanlineConstraintCalculation",1693),D(1694,1,md,bF),l.Lb=function(e){return _t(u(e,57).g,145)},l.Fb=function(e){return this===e},l.Mb=function(e){return _t(u(e,57).g,145)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1694),D(1695,1,{},TT),l.Fe=function(e){return Rgn(this.a,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1695),D(1703,1,Oq,FVt),l.Vd=function(){cC(this.a,this.b,-1)},l.b=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1703),D(1705,1,md,vF),l.Lb=function(e){return _t(u(e,57).g,145)},l.Fb=function(e){return this===e},l.Mb=function(e){return _t(u(e,57).g,145)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1705),D(1706,1,Kn,cX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1706),D(1707,1,gi,uX),l.Mb=function(e){return _t(u(e,57).g,10)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1707),D(1709,1,Kn,P3),l.td=function(e){hln(this.a,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1709),D(1708,1,Oq,VVt),l.Vd=function(){cC(this.b,this.a,-1)},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1708),D(1710,1,md,lX),l.Lb=function(e){return _t(u(e,57).g,10)},l.Fb=function(e){return this===e},l.Mb=function(e){return _t(u(e,57).g,10)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1710),D(1711,1,Kn,hX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1711),D(1712,1,{},$d),l.Fe=function(e){return jgn(this.a,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1712),D(1713,1,{},fX),l.De=function(){return 0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1713),D(1696,1,{},wF),l.De=function(){return 0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1696),D(1715,1,Kn,BVt),l.td=function(e){Utn(this.a,this.b,u(e,307))},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1715),D(1714,1,Oq,RVt),l.Vd=function(){ace(this.a,this.b,-1)},l.b=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1714),D(1716,1,md,dX),l.Lb=function(e){return u(e,57),!0},l.Fb=function(e){return this===e},l.Mb=function(e){return u(e,57),!0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1716),D(1717,1,Kn,oX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1717),D(1697,1,gi,gX),l.Mb=function(e){return _t(u(e,57).g,10)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1697),D(1699,1,Kn,jVt),l.td=function(e){Wtn(this.a,this.b,u(e,57))},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1699),D(1698,1,Oq,GVt),l.Vd=function(){cC(this.b,this.a,-1)},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1698),D(1700,1,md,pX),l.Lb=function(e){return u(e,57),!0},l.Fb=function(e){return this===e},l.Mb=function(e){return u(e,57),!0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1700),D(1701,1,Kn,bX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1701),D(1702,1,gi,mF),l.Mb=function(e){return _t(u(e,57).g,145)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1702),D(1704,1,Kn,$Vt),l.td=function(e){Van(this.a,this.b,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1704),D(1521,1,vs,eWt),l.pf=function(e,n){Ryn(this,u(e,37),n)};var Ube;N(Ps,"HorizontalGraphCompactor",1521),D(1522,1,{},x1),l.Oe=function(e,n){var r,s,o;return Imt(e,n)||(r=J3(e),s=J3(n),r&&r.k==(Gn(),Is)||s&&s.k==(Gn(),Is))?0:(o=u(K(this.a.a,(ae(),X4)),304),ZXe(o,r?r.k:(Gn(),ca),s?s.k:(Gn(),ca)))},l.Pe=function(e,n){var r,s,o;return Imt(e,n)?1:(r=J3(e),s=J3(n),o=u(K(this.a.a,(ae(),X4)),304),S2t(o,r?r.k:(Gn(),ca),s?s.k:(Gn(),ca)))},N(Ps,"HorizontalGraphCompactor/1",1522),D(1523,1,{},j9),l.Ne=function(e,n){return qT(),e.a.i==0},N(Ps,"HorizontalGraphCompactor/lambda$0$Type",1523),D(1524,1,{},zd),l.Ne=function(e,n){return knn(this.a,e,n)},N(Ps,"HorizontalGraphCompactor/lambda$1$Type",1524),D(1664,1,{},Pte);var Wbe,Kbe;N(Ps,"LGraphToCGraphTransformer",1664),D(1672,1,gi,vX),l.Mb=function(e){return e!=null},N(Ps,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1672),D(1665,1,{},wX),l.Kb=function(e){return df(),Wo(K(u(u(e,57).g,10),(ae(),Ii)))},N(Ps,"LGraphToCGraphTransformer/lambda$0$Type",1665),D(1666,1,{},yF),l.Kb=function(e){return df(),Rre(u(u(e,57).g,145))},N(Ps,"LGraphToCGraphTransformer/lambda$1$Type",1666),D(1675,1,gi,mX),l.Mb=function(e){return df(),_t(u(e,57).g,10)},N(Ps,"LGraphToCGraphTransformer/lambda$10$Type",1675),D(1676,1,Kn,yX),l.td=function(e){xnn(u(e,57))},N(Ps,"LGraphToCGraphTransformer/lambda$11$Type",1676),D(1677,1,gi,xX),l.Mb=function(e){return df(),_t(u(e,57).g,145)},N(Ps,"LGraphToCGraphTransformer/lambda$12$Type",1677),D(1681,1,Kn,kX),l.td=function(e){Cun(u(e,57))},N(Ps,"LGraphToCGraphTransformer/lambda$13$Type",1681),D(1678,1,Kn,_T),l.td=function(e){XYe(this.a,u(e,8))},l.a=0,N(Ps,"LGraphToCGraphTransformer/lambda$14$Type",1678),D(1679,1,Kn,Ub),l.td=function(e){ZYe(this.a,u(e,110))},l.a=0,N(Ps,"LGraphToCGraphTransformer/lambda$15$Type",1679),D(1680,1,Kn,nR),l.td=function(e){QYe(this.a,u(e,8))},l.a=0,N(Ps,"LGraphToCGraphTransformer/lambda$16$Type",1680),D(1682,1,{},EX),l.Kb=function(e){return df(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(Ps,"LGraphToCGraphTransformer/lambda$17$Type",1682),D(1683,1,gi,TX),l.Mb=function(e){return df(),Wa(u(e,17))},N(Ps,"LGraphToCGraphTransformer/lambda$18$Type",1683),D(1684,1,Kn,Ntt),l.td=function(e){Ian(this.a,u(e,17))},N(Ps,"LGraphToCGraphTransformer/lambda$19$Type",1684),D(1668,1,Kn,Ptt),l.td=function(e){fin(this.a,u(e,145))},N(Ps,"LGraphToCGraphTransformer/lambda$2$Type",1668),D(1685,1,{},xF),l.Kb=function(e){return df(),new kn(null,new Tn(u(e,29).a,16))},N(Ps,"LGraphToCGraphTransformer/lambda$20$Type",1685),D(1686,1,{},_X),l.Kb=function(e){return df(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(Ps,"LGraphToCGraphTransformer/lambda$21$Type",1686),D(1687,1,{},kF),l.Kb=function(e){return df(),u(K(u(e,17),(ae(),F2)),15)},N(Ps,"LGraphToCGraphTransformer/lambda$22$Type",1687),D(1688,1,gi,CX),l.Mb=function(e){return tQe(u(e,15))},N(Ps,"LGraphToCGraphTransformer/lambda$23$Type",1688),D(1689,1,Kn,Ftt),l.td=function(e){Lgn(this.a,u(e,15))},N(Ps,"LGraphToCGraphTransformer/lambda$24$Type",1689),D(1667,1,Kn,zVt),l.td=function(e){Jin(this.a,this.b,u(e,145))},N(Ps,"LGraphToCGraphTransformer/lambda$3$Type",1667),D(1669,1,{},SX),l.Kb=function(e){return df(),new kn(null,new Tn(u(e,29).a,16))},N(Ps,"LGraphToCGraphTransformer/lambda$4$Type",1669),D(1670,1,{},AX),l.Kb=function(e){return df(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(Ps,"LGraphToCGraphTransformer/lambda$5$Type",1670),D(1671,1,{},$9),l.Kb=function(e){return df(),u(K(u(e,17),(ae(),F2)),15)},N(Ps,"LGraphToCGraphTransformer/lambda$6$Type",1671),D(1673,1,Kn,Btt),l.td=function(e){opn(this.a,u(e,15))},N(Ps,"LGraphToCGraphTransformer/lambda$8$Type",1673),D(1674,1,Kn,qVt),l.td=function(e){yXe(this.a,this.b,u(e,145))},N(Ps,"LGraphToCGraphTransformer/lambda$9$Type",1674),D(1663,1,{},LX),l.Le=function(e){var n,r,s,o,h;for(this.a=e,this.d=new Utt,this.c=Nt(X7t,Me,121,this.a.a.a.c.length,0,1),this.b=0,r=new S(this.a.a.a);r.a=Z&&(ue(h,de(M)),St=b.Math.max(St,jt[M-1]-B),w+=W,bt+=jt[M-1]-bt,B=jt[M-1],W=k[M]),W=b.Math.max(W,k[M]),++M;w+=W}G=b.Math.min(1/St,1/n.b/w),G>s&&(s=G,r=h)}return r},l.Wf=function(){return!1},N(Ed,"MSDCutIndexHeuristic",802),D(1617,1,vs,eQ),l.pf=function(e,n){jmn(u(e,37),n)},N(Ed,"SingleEdgeGraphWrapper",1617),D(227,22,{3:1,35:1,22:1,227:1},YT);var H4,iE,sE,Oy,dS,V4,aE=zr(Sc,"CenterEdgeLabelPlacementStrategy",227,Ur,Xsn,AZe),a2e;D(422,22,{3:1,35:1,22:1,422:1},Sbt);var w9t,mlt,m9t=zr(Sc,"ConstraintCalculationStrategy",422,Ur,$nn,LZe),o2e;D(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},Tet),l.Kf=function(){return voe(this)},l.Xf=function(){return voe(this)};var wO,Cx,y9t,x9t=zr(Sc,"CrossingMinimizationStrategy",314,Ur,Irn,MZe),c2e;D(337,22,{3:1,35:1,22:1,337:1},_et);var k9t,ylt,OV,E9t=zr(Sc,"CuttingStrategy",337,Ur,Orn,OZe),u2e;D(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},EM),l.Kf=function(){return rce(this)},l.Xf=function(){return rce(this)};var T9t,xlt,gS,klt,pS,_9t=zr(Sc,"CycleBreakingStrategy",335,Ur,ksn,NZe),l2e;D(419,22,{3:1,35:1,22:1,419:1},Abt);var NV,C9t,S9t=zr(Sc,"DirectionCongruency",419,Ur,jnn,PZe),h2e;D(450,22,{3:1,35:1,22:1,450:1},Cet);var oE,Elt,G4,f2e=zr(Sc,"EdgeConstraint",450,Ur,Nrn,FZe),d2e;D(276,22,{3:1,35:1,22:1,276:1},XT);var Tlt,_lt,Clt,Slt,PV,Alt,A9t=zr(Sc,"EdgeLabelSideSelection",276,Ur,tan,BZe),g2e;D(479,22,{3:1,35:1,22:1,479:1},Lbt);var FV,L9t,M9t=zr(Sc,"EdgeStraighteningStrategy",479,Ur,Rnn,RZe),p2e;D(274,22,{3:1,35:1,22:1,274:1},QT);var Llt,D9t,I9t,BV,O9t,N9t,P9t=zr(Sc,"FixedAlignment",274,Ur,Zsn,jZe),b2e;D(275,22,{3:1,35:1,22:1,275:1},ZT);var F9t,B9t,R9t,j9t,bS,$9t,z9t=zr(Sc,"GraphCompactionStrategy",275,Ur,Qsn,$Ze),v2e;D(256,22,{3:1,35:1,22:1,256:1},Im);var cE,RV,uE,yh,vS,jV,lE,U4,$V,wS,Mlt=zr(Sc,"GraphProperties",256,Ur,jon,zZe),w2e;D(292,22,{3:1,35:1,22:1,292:1},Aet);var mO,Dlt,Ilt,Olt=zr(Sc,"GreedySwitchType",292,Ur,Brn,qZe),m2e;D(303,22,{3:1,35:1,22:1,303:1},Let);var Sx,yO,W4,y2e=zr(Sc,"InLayerConstraint",303,Ur,Frn,HZe),x2e;D(420,22,{3:1,35:1,22:1,420:1},Mbt);var Nlt,q9t,H9t=zr(Sc,"InteractiveReferencePoint",420,Ur,znn,VZe),k2e,V9t,Ax,Lw,zV,G9t,U9t,qV,W9t,xO,HV,mS,Lx,Ny,Plt,VV,gc,K9t,Mw,Wc,Flt,Blt,kO,P2,Dw,Mx,Y9t,Dx,EO,Py,a1,qh,Rlt,K4,Lc,Ii,X9t,Q9t,Z9t,J9t,tTt,jlt,GV,sl,Iw,$lt,Ix,TO,H1,Y4,hE,X4,Q4,fE,F2,eTt,zlt,qlt,Ox;D(163,22,{3:1,35:1,22:1,163:1},_M);var yS,gb,xS,Fy,_O,nTt=zr(Sc,"LayerConstraint",163,Ur,_sn,GZe),E2e;D(848,1,Ph,KJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,pxt),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),fTt),(Hg(),ms)),S9t),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,bxt),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Fn(),!1)),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Kq),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),wTt),ms),H9t),on(qn)))),ba(e,Kq,qot,gve),ba(e,Kq,$C,dve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vxt),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,wxt),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),Pa),Ws),on(qn)))),an(e,new Xe(QKe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,mxt),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),Pa),Ws),on(q2)),ut(ot(Le,1),re,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,yxt),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),CTt),ms),N_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,xxt),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),de(7)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,kxt),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ext),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,qot),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),hTt),ms),_9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,VI),fct),"Node Layering Strategy"),"Strategy for node layering."),xTt),ms),k_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Txt),fct),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),mTt),ms),nTt),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,_xt),fct),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Cxt),fct),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Hot),d1e),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),de(4)),xc),Ha),on(qn)))),ba(e,Hot,VI,xve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Vot),d1e),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),de(2)),xc),Ha),on(qn)))),ba(e,Vot,VI,Eve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Got),g1e),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),yTt),ms),D_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Uot),g1e),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),de(0)),xc),Ha),on(qn)))),ba(e,Uot,Got,null),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Wot),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),de(Ti)),xc),Ha),on(qn)))),ba(e,Wot,VI,bve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,$C),GI),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),lTt),ms),x9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Sxt),GI),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Kot),GI),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),$o),wa),on(qn)))),ba(e,Kot,oH,q2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Yot),GI),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),Pa),Ws),on(qn)))),ba(e,Yot,$C,U2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Axt),GI),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Lxt),GI),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Mxt),p1e),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),de(40)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Xot),p1e),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),uTt),ms),Olt),on(qn)))),ba(e,Xot,$C,$2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Yq),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),cTt),ms),Olt),on(qn)))),ba(e,Yq,$C,B2e),ba(e,Yq,oH,R2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,D4),b1e),"Node Placement Strategy"),"Strategy for node placement."),_Tt),ms),C_t),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Xq),b1e),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),Pa),Ws),on(qn)))),ba(e,Xq,D4,Nve),ba(e,Xq,D4,Pve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Qot),v1e),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),kTt),ms),M9t),on(qn)))),ba(e,Qot,D4,Mve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Zot),v1e),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),ETt),ms),P9t),on(qn)))),ba(e,Zot,D4,Ive),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Jot),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),$o),wa),on(qn)))),ba(e,Jot,D4,Bve),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,tct),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),ms),hht),on(ua)))),ba(e,tct,D4,zve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ect),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),TTt),ms),hht),on(qn)))),ba(e,ect,D4,$ve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Dxt),w1e),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),pTt),ms),B_t),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ixt),w1e),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),bTt),ms),R_t),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Qq),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),vTt),ms),$_t),on(qn)))),ba(e,Qq,UI,rve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Zq),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),$o),wa),on(qn)))),ba(e,Zq,UI,sve),ba(e,Zq,Qq,ave),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,nct),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),$o),wa),on(qn)))),ba(e,nct,UI,J2e),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Oxt),j1),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Nxt),j1),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Pxt),j1),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Fxt),j1),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Bxt),Uxt),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Rxt),Uxt),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,jxt),Uxt),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,rct),Wxt),Nfe),"Tries to further compact components (disconnected sub-graphs)."),!1),Pa),Ws),on(qn)))),ba(e,rct,PC,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,$xt),m1e),"Post Compaction Strategy"),y1e),iTt),ms),z9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,zxt),m1e),"Post Compaction Constraint Calculation"),y1e),rTt),ms),m9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Jq),Kxt),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ict),Kxt),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),de(16)),xc),Ha),on(qn)))),ba(e,ict,Jq,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,sct),Kxt),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),de(5)),xc),Ha),on(qn)))),ba(e,sct,Jq,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Y0),Yxt),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),LTt),ms),V_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,tH),Yxt),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),$o),wa),on(qn)))),ba(e,tH,Y0,twe),ba(e,tH,Y0,ewe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,eH),Yxt),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),$o),wa),on(qn)))),ba(e,eH,Y0,rwe),ba(e,eH,Y0,iwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,zC),x1e),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),ATt),ms),E9t),on(qn)))),ba(e,zC,Y0,lwe),ba(e,zC,Y0,hwe),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,act),x1e),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),G1),mh),on(qn)))),ba(e,act,zC,awe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,oct),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),STt),xc),Ha),on(qn)))),ba(e,oct,zC,cwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,nH),k1e),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),MTt),ms),H_t),on(qn)))),ba(e,nH,Y0,Ewe),ba(e,nH,Y0,Twe),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,rH),k1e),"Valid Indices for Wrapping"),null),G1),mh),on(qn)))),ba(e,rH,Y0,ywe),ba(e,rH,Y0,xwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,iH),Xxt),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),Pa),Ws),on(qn)))),ba(e,iH,Y0,pwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,sH),Xxt),"Distance Penalty When Improving Cuts"),null),2),$o),wa),on(qn)))),ba(e,sH,Y0,dwe),ba(e,sH,iH,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cct),Xxt),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),Pa),Ws),on(qn)))),ba(e,cct,Y0,vwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,qxt),dct),"Edge Label Side Selection"),"Method to decide on edge label sides."),gTt),ms),A9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Hxt),dct),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),dTt),ms),aE),Ki(qn,ut(ot(ep,1),oe,175,0,[tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,aH),WI),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),oTt),ms),O_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Vxt),WI),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,uct),WI),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),sTt),ms),_Et),on(qn)))),ba(e,uct,PC,null),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Gxt),WI),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),aTt),ms),T_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,lct),WI),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),$o),wa),on(qn)))),ba(e,lct,aH,null),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hct),WI),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),$o),wa),on(qn)))),ba(e,hct,aH,null),jhe((new IB,e))};var T2e,_2e,C2e,rTt,S2e,iTt,A2e,sTt,L2e,M2e,D2e,aTt,I2e,O2e,oTt,N2e,P2e,F2e,cTt,B2e,R2e,j2e,uTt,$2e,z2e,q2e,H2e,V2e,G2e,U2e,W2e,lTt,K2e,hTt,Y2e,fTt,X2e,dTt,Q2e,gTt,Z2e,J2e,tve,pTt,eve,bTt,nve,vTt,rve,ive,sve,ave,ove,cve,uve,lve,hve,fve,wTt,dve,gve,pve,bve,vve,wve,mTt,mve,yve,xve,kve,Eve,Tve,_ve,yTt,Cve,xTt,Sve,Ave,Lve,kTt,Mve,Dve,ETt,Ive,Ove,Nve,Pve,Fve,Bve,Rve,jve,TTt,$ve,zve,qve,_Tt,Hve,CTt,Vve,Gve,Uve,Wve,Kve,Yve,Xve,Qve,Zve,Jve,twe,ewe,nwe,rwe,iwe,swe,awe,owe,STt,cwe,uwe,ATt,lwe,hwe,fwe,dwe,gwe,pwe,bwe,vwe,wwe,LTt,mwe,ywe,xwe,kwe,MTt,Ewe,Twe;N(Sc,"LayeredMetaDataProvider",848),D(986,1,Ph,IB),l.Qe=function(e){jhe(e)};var Md,Hlt,UV,kS,WV,DTt,KV,Nx,YV,ITt,OTt,Vlt,pb,Glt,By,NTt,CO,Ult,PTt,_we,XV,Wlt,ES,Ry,Cwe,Xl,FTt,BTt,QV,Klt,Dd,ZV,X0,RTt,jTt,$Tt,Ylt,Xlt,zTt,Xg,Qlt,qTt,jy,HTt,VTt,GTt,JV,$y,B2,UTt,WTt,Oo,KTt,Swe,du,tG,YTt,XTt,QTt,Zlt,ZTt,eG,JTt,t_t,nG,Ow,e_t,Jlt,TS,n_t,Nw,_S,rG,R2,tht,dE,iG,j2,r_t,i_t,s_t,gE,a_t,Awe,Lwe,Mwe,Dwe,Pw,zy,ws,Qg,Iwe,qy,o_t,pE,c_t,Hy,Owe,bE,u_t,Px,Nwe,Pwe,SO,eht,l_t,AO,Tf,Z4,Fx,Fw,$2,sG,Vy,nht,vE,wE,Bw,J4,rht,LO,CS,SS,iht,h_t,f_t,d_t,g_t,sht,p_t,b_t,v_t,w_t,aht,aG;N(Sc,"LayeredOptions",986),D(987,1,{},rQ),l.$e=function(){var e;return e=new Yzt,e},l._e=function(e){},N(Sc,"LayeredOptions/LayeredFactory",987),D(1372,1,{}),l.a=0;var Fwe;N(Ac,"ElkSpacings/AbstractSpacingsBuilder",1372),D(779,1372,{},o3t);var oG,Bwe;N(Sc,"LayeredSpacings/LayeredSpacingsBuilder",779),D(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},JT),l.Kf=function(){return wce(this)},l.Xf=function(){return wce(this)};var oht,m_t,y_t,cG,cht,x_t,k_t=zr(Sc,"LayeringStrategy",313,Ur,Jsn,UZe),Rwe;D(378,22,{3:1,35:1,22:1,378:1},Met);var uht,E_t,uG,T_t=zr(Sc,"LongEdgeOrderingStrategy",378,Ur,Drn,WZe),jwe;D(197,22,{3:1,35:1,22:1,197:1},GR);var t5,e5,lG,lht,hht=zr(Sc,"NodeFlexibility",197,Ur,Rin,KZe),$we;D(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},TM),l.Kf=function(){return nce(this)},l.Xf=function(){return nce(this)};var AS,fht,dht,LS,__t,C_t=zr(Sc,"NodePlacementStrategy",315,Ur,xsn,tJe),zwe;D(260,22,{3:1,35:1,22:1,260:1},T6);var S_t,MO,A_t,L_t,DO,M_t,hG,fG,D_t=zr(Sc,"NodePromotionStrategy",260,Ur,Zan,XZe),qwe;D(339,22,{3:1,35:1,22:1,339:1},Det);var I_t,bb,ght,O_t=zr(Sc,"OrderingStrategy",339,Ur,jrn,QZe),Hwe;D(421,22,{3:1,35:1,22:1,421:1},Dbt);var pht,bht,N_t=zr(Sc,"PortSortingStrategy",421,Ur,qnn,ZZe),Vwe;D(452,22,{3:1,35:1,22:1,452:1},Iet);var al,su,MS,Gwe=zr(Sc,"PortType",452,Ur,Rrn,YZe),Uwe;D(375,22,{3:1,35:1,22:1,375:1},Oet);var P_t,vht,F_t,B_t=zr(Sc,"SelfLoopDistributionStrategy",375,Ur,$rn,JZe),Wwe;D(376,22,{3:1,35:1,22:1,376:1},Ibt);var IO,wht,R_t=zr(Sc,"SelfLoopOrderingStrategy",376,Ur,Bnn,eJe),Kwe;D(304,1,{304:1},zle),N(Sc,"Spacings",304),D(336,22,{3:1,35:1,22:1,336:1},Net);var mht,j_t,DS,$_t=zr(Sc,"SplineRoutingMode",336,Ur,qrn,nJe),Ywe;D(338,22,{3:1,35:1,22:1,338:1},Pet);var yht,z_t,q_t,H_t=zr(Sc,"ValidifyStrategy",338,Ur,Hrn,rJe),Xwe;D(377,22,{3:1,35:1,22:1,377:1},Fet);var Gy,xht,mE,V_t=zr(Sc,"WrappingStrategy",377,Ur,zrn,iJe),Qwe;D(1383,1,Vc,QJ),l.Yf=function(e){return u(e,37),Zwe},l.pf=function(e,n){Oyn(this,u(e,37),n)};var Zwe;N(lH,"DepthFirstCycleBreaker",1383),D(782,1,Vc,Gvt),l.Yf=function(e){return u(e,37),Jwe},l.pf=function(e,n){D5n(this,u(e,37),n)},l.Zf=function(e){return u(Pe(e,zz(this.d,e.c.length)),10)};var Jwe;N(lH,"GreedyCycleBreaker",782),D(1386,782,Vc,AGt),l.Zf=function(e){var n,r,s,o;for(o=null,n=Ti,s=new S(e);s.a1&&(Be(Fe(K($a((Sn(0,e.c.length),u(e.c[0],10))),(xe(),By))))?fce(e,this.d,u(this,660)):(pn(),aa(e,this.d)),Ine(this.e,e))},l.Sf=function(e,n,r,s){var o,h,d,w,k,_,M;for(n!=rYt(r,e.length)&&(h=e[n-(r?1:-1)],bmt(this.f,h,r?(ho(),su):(ho(),al))),o=e[n][0],M=!s||o.k==(Gn(),Is),_=L1(e[n]),this.ag(_,M,!1,r),d=0,k=new S(_);k.a"),e0?brt(this.a,e[n-1],e[n]):!r&&n1&&(Be(Fe(K($a((Sn(0,e.c.length),u(e.c[0],10))),(xe(),By))))?fce(e,this.d,this):(pn(),aa(e,this.d)),Be(Fe(K($a((Sn(0,e.c.length),u(e.c[0],10))),By)))||Ine(this.e,e))},N(Wu,"ModelOrderBarycenterHeuristic",660),D(1803,1,qi,f$t),l.ue=function(e,n){return W0n(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Wu,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803),D(1403,1,Vc,ett),l.Yf=function(e){var n;return u(e,37),n=ij(fme),Ei(n,(Ya(),fu),(co(),xV)),n},l.pf=function(e,n){Inn((u(e,37),n))};var fme;N(Wu,"NoCrossingMinimizer",1403),D(796,402,Ikt,ebt),l.$f=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G;switch(B=this.g,r.g){case 1:{for(o=0,h=0,M=new S(e.j);M.a1&&(o.j==(be(),Hn)?this.b[e]=!0:o.j==Bn&&e>0&&(this.b[e-1]=!0))},l.f=0,N(s0,"AllCrossingsCounter",1798),D(587,1,{},rz),l.b=0,l.d=0,N(s0,"BinaryIndexedTree",587),D(524,1,{},HM);var W_t,gG;N(s0,"CrossingsCounter",524),D(1906,1,qi,d$t),l.ue=function(e,n){return Ptn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$0$Type",1906),D(1907,1,qi,g$t),l.ue=function(e,n){return Ftn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$1$Type",1907),D(1908,1,qi,p$t),l.ue=function(e,n){return Btn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$2$Type",1908),D(1909,1,qi,b$t),l.ue=function(e,n){return Rtn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$3$Type",1909),D(1910,1,Kn,v$t),l.td=function(e){man(this.a,u(e,11))},N(s0,"CrossingsCounter/lambda$4$Type",1910),D(1911,1,gi,w$t),l.Mb=function(e){return OYe(this.a,u(e,11))},N(s0,"CrossingsCounter/lambda$5$Type",1911),D(1912,1,Kn,m$t),l.td=function(e){TGt(this,e)},N(s0,"CrossingsCounter/lambda$6$Type",1912),D(1913,1,Kn,XVt),l.td=function(e){var n;f8(),Vp(this.b,(n=this.a,u(e,11),n))},N(s0,"CrossingsCounter/lambda$7$Type",1913),D(826,1,md,BF),l.Lb=function(e){return f8(),ea(u(e,11),(ae(),sl))},l.Fb=function(e){return this===e},l.Mb=function(e){return f8(),ea(u(e,11),(ae(),sl))},N(s0,"CrossingsCounter/lambda$8$Type",826),D(1905,1,{},y$t),N(s0,"HyperedgeCrossingsCounter",1905),D(467,1,{35:1,467:1},$Wt),l.wd=function(e){return bhn(this,u(e,467))},l.b=0,l.c=0,l.e=0,l.f=0;var f6n=N(s0,"HyperedgeCrossingsCounter/Hyperedge",467);D(362,1,{35:1,362:1},e$),l.wd=function(e){return gbn(this,u(e,362))},l.b=0,l.c=0;var dme=N(s0,"HyperedgeCrossingsCounter/HyperedgeCorner",362);D(523,22,{3:1,35:1,22:1,523:1},Obt);var OS,NS,gme=zr(s0,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,Ur,Hnn,aJe),pme;D(1405,1,Vc,XJ),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?bme:null},l.pf=function(e,n){P1n(this,u(e,37),n)};var bme;N(bo,"InteractiveNodePlacer",1405),D(1406,1,Vc,YJ),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?vme:null},l.pf=function(e,n){mfn(this,u(e,37),n)};var vme,pG,bG;N(bo,"LinearSegmentsNodePlacer",1406),D(257,1,{35:1,257:1},Dpt),l.wd=function(e){return GKe(this,u(e,257))},l.Fb=function(e){var n;return _t(e,257)?(n=u(e,257),this.b==n.b):!1},l.Hb=function(){return this.b},l.Ib=function(){return"ls"+Jp(this.e)},l.a=0,l.b=0,l.c=-1,l.d=-1,l.g=0;var wme=N(bo,"LinearSegmentsNodePlacer/LinearSegment",257);D(1408,1,Vc,dYt),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?mme:null},l.pf=function(e,n){E5n(this,u(e,37),n)},l.b=0,l.g=0;var mme;N(bo,"NetworkSimplexPlacer",1408),D(1427,1,qi,cQ),l.ue=function(e,n){return mu(u(e,19).a,u(n,19).a)},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(bo,"NetworkSimplexPlacer/0methodref$compare$Type",1427),D(1429,1,qi,uQ),l.ue=function(e,n){return mu(u(e,19).a,u(n,19).a)},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(bo,"NetworkSimplexPlacer/1methodref$compare$Type",1429),D(649,1,{649:1},QVt);var d6n=N(bo,"NetworkSimplexPlacer/EdgeRep",649);D(401,1,{401:1},Ewt),l.b=!1;var g6n=N(bo,"NetworkSimplexPlacer/NodeRep",401);D(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},aqt),N(bo,"NetworkSimplexPlacer/Path",508),D(1409,1,{},lQ),l.Kb=function(e){return u(e,17).d.i.k},N(bo,"NetworkSimplexPlacer/Path/lambda$0$Type",1409),D(1410,1,gi,hQ),l.Mb=function(e){return u(e,267)==(Gn(),ca)},N(bo,"NetworkSimplexPlacer/Path/lambda$1$Type",1410),D(1411,1,{},fQ),l.Kb=function(e){return u(e,17).d.i},N(bo,"NetworkSimplexPlacer/Path/lambda$2$Type",1411),D(1412,1,gi,x$t),l.Mb=function(e){return TWt(uie(u(e,10)))},N(bo,"NetworkSimplexPlacer/Path/lambda$3$Type",1412),D(1413,1,gi,dQ),l.Mb=function(e){return Ttn(u(e,11))},N(bo,"NetworkSimplexPlacer/lambda$0$Type",1413),D(1414,1,Kn,ZVt),l.td=function(e){xXe(this.a,this.b,u(e,11))},N(bo,"NetworkSimplexPlacer/lambda$1$Type",1414),D(1423,1,Kn,k$t),l.td=function(e){zgn(this.a,u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$10$Type",1423),D(1424,1,{},gQ),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$11$Type",1424),D(1425,1,Kn,E$t),l.td=function(e){Bvn(this.a,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$12$Type",1425),D(1426,1,{},pQ),l.Kb=function(e){return Rl(),de(u(e,121).e)},N(bo,"NetworkSimplexPlacer/lambda$13$Type",1426),D(1428,1,{},bQ),l.Kb=function(e){return Rl(),de(u(e,121).e)},N(bo,"NetworkSimplexPlacer/lambda$15$Type",1428),D(1430,1,gi,vQ),l.Mb=function(e){return Rl(),u(e,401).c.k==(Gn(),qs)},N(bo,"NetworkSimplexPlacer/lambda$17$Type",1430),D(1431,1,gi,wQ),l.Mb=function(e){return Rl(),u(e,401).c.j.c.length>1},N(bo,"NetworkSimplexPlacer/lambda$18$Type",1431),D(1432,1,Kn,yXt),l.td=function(e){Sln(this.c,this.b,this.d,this.a,u(e,401))},l.c=0,l.d=0,N(bo,"NetworkSimplexPlacer/lambda$19$Type",1432),D(1415,1,{},mQ),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$2$Type",1415),D(1433,1,Kn,T$t),l.td=function(e){mXe(this.a,u(e,11))},l.a=0,N(bo,"NetworkSimplexPlacer/lambda$20$Type",1433),D(1434,1,{},K5),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$21$Type",1434),D(1435,1,Kn,_$t),l.td=function(e){NXe(this.a,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$22$Type",1435),D(1436,1,gi,RF),l.Mb=function(e){return TWt(e)},N(bo,"NetworkSimplexPlacer/lambda$23$Type",1436),D(1437,1,{},yQ),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$24$Type",1437),D(1438,1,gi,C$t),l.Mb=function(e){return $Ye(this.a,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$25$Type",1438),D(1439,1,Kn,JVt),l.td=function(e){ugn(this.a,this.b,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$26$Type",1439),D(1440,1,gi,xQ),l.Mb=function(e){return Rl(),!Wa(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$27$Type",1440),D(1441,1,gi,kQ),l.Mb=function(e){return Rl(),!Wa(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$28$Type",1441),D(1442,1,{},S$t),l.Ce=function(e,n){return DXe(this.a,u(e,29),u(n,29))},N(bo,"NetworkSimplexPlacer/lambda$29$Type",1442),D(1416,1,{},jF),l.Kb=function(e){return Rl(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(bo,"NetworkSimplexPlacer/lambda$3$Type",1416),D(1417,1,gi,EQ),l.Mb=function(e){return Rl(),win(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$4$Type",1417),D(1418,1,Kn,A$t),l.td=function(e){Fmn(this.a,u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$5$Type",1418),D(1419,1,{},V9),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$6$Type",1419),D(1420,1,gi,TQ),l.Mb=function(e){return Rl(),u(e,10).k==(Gn(),qs)},N(bo,"NetworkSimplexPlacer/lambda$7$Type",1420),D(1421,1,{},_Q),l.Kb=function(e){return Rl(),new kn(null,new Fv(new ar(lr(z0(u(e,10)).a.Kc(),new H))))},N(bo,"NetworkSimplexPlacer/lambda$8$Type",1421),D(1422,1,gi,CQ),l.Mb=function(e){return Rl(),wtn(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$9$Type",1422),D(1404,1,Vc,pT),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?yme:null},l.pf=function(e,n){vyn(u(e,37),n)};var yme;N(bo,"SimpleNodePlacer",1404),D(180,1,{180:1},k4),l.Ib=function(){var e;return e="",this.c==(gd(),Rw)?e+=dx:this.c==Zg&&(e+=fx),this.o==(C1(),z2)?e+=kot:this.o==V1?e+="UP":e+="BALANCED",e},N(ob,"BKAlignedLayout",180),D(516,22,{3:1,35:1,22:1,516:1},Pbt);var Zg,Rw,xme=zr(ob,"BKAlignedLayout/HDirection",516,Ur,Gnn,oJe),kme;D(515,22,{3:1,35:1,22:1,515:1},Nbt);var z2,V1,Eme=zr(ob,"BKAlignedLayout/VDirection",515,Ur,Unn,cJe),Tme;D(1634,1,{},tGt),N(ob,"BKAligner",1634),D(1637,1,{},Ose),N(ob,"BKCompactor",1637),D(654,1,{654:1},SQ),l.a=0,N(ob,"BKCompactor/ClassEdge",654),D(458,1,{458:1},iqt),l.a=null,l.b=0,N(ob,"BKCompactor/ClassNode",458),D(1407,1,Vc,CGt),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?_me:null},l.pf=function(e,n){R5n(this,u(e,37),n)},l.d=!1;var _me;N(ob,"BKNodePlacer",1407),D(1635,1,{},AQ),l.d=0,N(ob,"NeighborhoodInformation",1635),D(1636,1,qi,L$t),l.ue=function(e,n){return Gan(this,u(e,46),u(n,46))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(ob,"NeighborhoodInformation/NeighborComparator",1636),D(808,1,{}),N(ob,"ThresholdStrategy",808),D(1763,808,{},uqt),l.bg=function(e,n,r){return this.a.o==(C1(),V1)?bs:Ns},l.cg=function(){},N(ob,"ThresholdStrategy/NullThresholdStrategy",1763),D(579,1,{579:1},eGt),l.c=!1,l.d=!1,N(ob,"ThresholdStrategy/Postprocessable",579),D(1764,808,{},lqt),l.bg=function(e,n,r){var s,o,h;return o=n==r,s=this.a.a[r.p]==n,o||s?(h=e,this.a.c==(gd(),Rw)?(o&&(h=kat(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=kat(this,r,!1))):(o&&(h=kat(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=kat(this,r,!1))),h):e},l.cg=function(){for(var e,n,r,s,o;this.d.b!=0;)o=u(crn(this.d),579),s=tle(this,o),s.a&&(e=s.a,r=Be(this.a.f[this.a.g[o.b.p].p]),!(!r&&!Wa(e)&&e.c.i.c==e.d.i.c)&&(n=oce(this,o),n||KYe(this.e,o)));for(;this.e.a.c.length!=0;)oce(this,u(vre(this.e),579))},N(ob,"ThresholdStrategy/SimpleThresholdStrategy",1764),D(635,1,{635:1,246:1,234:1},LQ),l.Kf=function(){return Sne(this)},l.Xf=function(){return Sne(this)};var kht;N(wct,"EdgeRouterFactory",635),D(1458,1,Vc,sd),l.Yf=function(e){return bvn(u(e,37))},l.pf=function(e,n){Tyn(u(e,37),n)};var Cme,Sme,Ame,Lme,Mme,K_t,Dme,Ime;N(wct,"OrthogonalEdgeRouter",1458),D(1451,1,Vc,SGt),l.Yf=function(e){return $1n(u(e,37))},l.pf=function(e,n){V4n(this,u(e,37),n)};var Ome,Nme,Pme,Fme,NO,Bme;N(wct,"PolylineEdgeRouter",1451),D(1452,1,md,MQ),l.Lb=function(e){return lyt(u(e,10))},l.Fb=function(e){return this===e},l.Mb=function(e){return lyt(u(e,10))},N(wct,"PolylineEdgeRouter/1",1452),D(1809,1,gi,DQ),l.Mb=function(e){return u(e,129).c==(Yf(),vb)},N(r1,"HyperEdgeCycleDetector/lambda$0$Type",1809),D(1810,1,{},IQ),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$1$Type",1810),D(1811,1,gi,OQ),l.Mb=function(e){return u(e,129).c==(Yf(),vb)},N(r1,"HyperEdgeCycleDetector/lambda$2$Type",1811),D(1812,1,{},Y5),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$3$Type",1812),D(1813,1,{},NQ),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$4$Type",1813),D(1814,1,{},PQ),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$5$Type",1814),D(112,1,{35:1,112:1},LD),l.wd=function(e){return UKe(this,u(e,112))},l.Fb=function(e){var n;return _t(e,112)?(n=u(e,112),this.g==n.g):!1},l.Hb=function(){return this.g},l.Ib=function(){var e,n,r,s;for(e=new Fl("{"),s=new S(this.n);s.a"+this.b+" ("+rQe(this.c)+")"},l.d=0,N(r1,"HyperEdgeSegmentDependency",129),D(520,22,{3:1,35:1,22:1,520:1},Fbt);var vb,Uy,Rme=zr(r1,"HyperEdgeSegmentDependency/DependencyType",520,Ur,Vnn,uJe),jme;D(1815,1,{},M$t),N(r1,"HyperEdgeSegmentSplitter",1815),D(1816,1,{},oHt),l.a=0,l.b=0,N(r1,"HyperEdgeSegmentSplitter/AreaRating",1816),D(329,1,{329:1},knt),l.a=0,l.b=0,l.c=0,N(r1,"HyperEdgeSegmentSplitter/FreeArea",329),D(1817,1,qi,qQ),l.ue=function(e,n){return JQe(u(e,112),u(n,112))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(r1,"HyperEdgeSegmentSplitter/lambda$0$Type",1817),D(1818,1,Kn,xXt),l.td=function(e){isn(this.a,this.d,this.c,this.b,u(e,112))},l.b=0,N(r1,"HyperEdgeSegmentSplitter/lambda$1$Type",1818),D(1819,1,{},HQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).e,16))},N(r1,"HyperEdgeSegmentSplitter/lambda$2$Type",1819),D(1820,1,{},VQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).j,16))},N(r1,"HyperEdgeSegmentSplitter/lambda$3$Type",1820),D(1821,1,{},GQ),l.Fe=function(e){return Zt(ve(e))},N(r1,"HyperEdgeSegmentSplitter/lambda$4$Type",1821),D(655,1,{},Unt),l.a=0,l.b=0,l.c=0,N(r1,"OrthogonalRoutingGenerator",655),D(1638,1,{},UQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).e,16))},N(r1,"OrthogonalRoutingGenerator/lambda$0$Type",1638),D(1639,1,{},WQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).j,16))},N(r1,"OrthogonalRoutingGenerator/lambda$1$Type",1639),D(661,1,{}),N(mct,"BaseRoutingDirectionStrategy",661),D(1807,661,{},hqt),l.dg=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!(e.r&&!e.q))for(M=n+e.o*r,_=new S(e.n);_.a<_.c.c.length;)for(k=u(Q(_),11),B=nc(ut(ot(na,1),re,8,0,[k.i.n,k.n,k.a])).a,w=new S(k.g);w.axd&&(h=M,o=e,s=new Re(B,h),ai(d.a,s),fw(this,d,o,s,!1),q=e.r,q&&(G=Zt(ve(e1(q.e,0))),s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1),h=n+q.o*r,o=q,s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1)),s=new Re(Z,h),ai(d.a,s),fw(this,d,o,s,!1)))},l.eg=function(e){return e.i.n.a+e.n.a+e.a.a},l.fg=function(){return be(),yr},l.gg=function(){return be(),On},N(mct,"NorthToSouthRoutingStrategy",1807),D(1808,661,{},fqt),l.dg=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!(e.r&&!e.q))for(M=n-e.o*r,_=new S(e.n);_.a<_.c.c.length;)for(k=u(Q(_),11),B=nc(ut(ot(na,1),re,8,0,[k.i.n,k.n,k.a])).a,w=new S(k.g);w.axd&&(h=M,o=e,s=new Re(B,h),ai(d.a,s),fw(this,d,o,s,!1),q=e.r,q&&(G=Zt(ve(e1(q.e,0))),s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1),h=n-q.o*r,o=q,s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1)),s=new Re(Z,h),ai(d.a,s),fw(this,d,o,s,!1)))},l.eg=function(e){return e.i.n.a+e.n.a+e.a.a},l.fg=function(){return be(),On},l.gg=function(){return be(),yr},N(mct,"SouthToNorthRoutingStrategy",1808),D(1806,661,{},dqt),l.dg=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!(e.r&&!e.q))for(M=n+e.o*r,_=new S(e.n);_.a<_.c.c.length;)for(k=u(Q(_),11),B=nc(ut(ot(na,1),re,8,0,[k.i.n,k.n,k.a])).b,w=new S(k.g);w.axd&&(h=M,o=e,s=new Re(h,B),ai(d.a,s),fw(this,d,o,s,!0),q=e.r,q&&(G=Zt(ve(e1(q.e,0))),s=new Re(h,G),ai(d.a,s),fw(this,d,o,s,!0),h=n+q.o*r,o=q,s=new Re(h,G),ai(d.a,s),fw(this,d,o,s,!0)),s=new Re(h,Z),ai(d.a,s),fw(this,d,o,s,!0)))},l.eg=function(e){return e.i.n.b+e.n.b+e.a.b},l.fg=function(){return be(),Hn},l.gg=function(){return be(),Bn},N(mct,"WestToEastRoutingStrategy",1806),D(813,1,{},n6t),l.Ib=function(){return Jp(this.a)},l.b=0,l.c=!1,l.d=!1,l.f=0,N(Ty,"NubSpline",813),D(407,1,{407:1},Fce,eQt),N(Ty,"NubSpline/PolarCP",407),D(1453,1,Vc,_se),l.Yf=function(e){return Ldn(u(e,37))},l.pf=function(e,n){u5n(this,u(e,37),n)};var $me,zme,qme,Hme,Vme;N(Ty,"SplineEdgeRouter",1453),D(268,1,{268:1},S$),l.Ib=function(){return this.a+" ->("+this.c+") "+this.b},l.c=0,N(Ty,"SplineEdgeRouter/Dependency",268),D(455,22,{3:1,35:1,22:1,455:1},Bbt);var wb,n5,Gme=zr(Ty,"SplineEdgeRouter/SideToProcess",455,Ur,Wnn,lJe),Ume;D(1454,1,gi,zQ),l.Mb=function(e){return bC(),!u(e,128).o},N(Ty,"SplineEdgeRouter/lambda$0$Type",1454),D(1455,1,{},$Q),l.Ge=function(e){return bC(),u(e,128).v+1},N(Ty,"SplineEdgeRouter/lambda$1$Type",1455),D(1456,1,Kn,nGt),l.td=function(e){ytn(this.a,this.b,u(e,46))},N(Ty,"SplineEdgeRouter/lambda$2$Type",1456),D(1457,1,Kn,rGt),l.td=function(e){xtn(this.a,this.b,u(e,46))},N(Ty,"SplineEdgeRouter/lambda$3$Type",1457),D(128,1,{35:1,128:1},Jae,c6t),l.wd=function(e){return WKe(this,u(e,128))},l.b=0,l.e=!1,l.f=0,l.g=0,l.j=!1,l.k=!1,l.n=0,l.o=!1,l.p=!1,l.q=!1,l.s=0,l.u=0,l.v=0,l.F=0,N(Ty,"SplineSegment",128),D(459,1,{459:1},G9),l.a=0,l.b=!1,l.c=!1,l.d=!1,l.e=!1,l.f=0,N(Ty,"SplineSegment/EdgeInformation",459),D(1234,1,{},FQ),N(qC,rxt,1234),D(1235,1,qi,BQ),l.ue=function(e,n){return rpn(u(e,135),u(n,135))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(qC,Bfe,1235),D(1233,1,{},EHt),N(qC,"MrTree",1233),D(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},UR),l.Kf=function(){return Toe(this)},l.Xf=function(){return Toe(this)};var vG,PS,PO,FS,Y_t=zr(qC,"TreeLayoutPhases",393,Ur,jin,hJe),Wme;D(1130,209,_2,HWt),l.Ze=function(e,n){var r,s,o,h,d,w,k;for(Be(Fe(ze(e,(hw(),eCt))))||u$((r=new rr((Dm(),new Sm(e))),r)),d=(w=new A$,Bo(w,e),ee(w,(mc(),jS),e),k=new Ar,Kwn(e,w,k),hmn(e,w,k),w),h=imn(this.a,d),o=new S(h);o.a"+b$(this.c):"e_"+Ji(this)},N(HC,"TEdge",188),D(135,134,{3:1,135:1,94:1,134:1},A$),l.Ib=function(){var e,n,r,s,o;for(o=null,s=si(this.b,0);s.b!=s.d.c;)r=u(ii(s),86),o+=(r.c==null||r.c.length==0?"n_"+r.g:"n_"+r.c)+` +`;for(n=si(this.a,0);n.b!=n.d.c;)e=u(ii(n),188),o+=(e.b&&e.c?b$(e.b)+"->"+b$(e.c):"e_"+Ji(e))+` +`;return o};var p6n=N(HC,"TGraph",135);D(633,502,{3:1,502:1,633:1,94:1,134:1}),N(HC,"TShape",633),D(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},kit),l.Ib=function(){return b$(this)};var b6n=N(HC,"TNode",86);D(255,1,t0,Sp),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=si(this.a.d,0),new p6(e)},N(HC,"TNode/2",255),D(358,1,da,p6),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(ii(this.a),188).c},l.Ob=function(){return kR(this.a)},l.Qb=function(){H$(this.a)},N(HC,"TNode/2/1",358),D(1840,1,vs,qWt),l.pf=function(e,n){Smn(this,u(e,135),n)},N(yx,"FanProcessor",1840),D(327,22,{3:1,35:1,22:1,327:1,234:1},t_),l.Kf=function(){switch(this.g){case 0:return new Aqt;case 1:return new qWt;case 2:return new X5;case 3:return new KQ;case 4:return new XQ;case 5:return new OL;default:throw nt(new Pn(jot+(this.f!=null?this.f:""+this.g)))}};var Eht,Tht,_ht,Cht,Sht,wG,Kme=zr(yx,gxt,327,Ur,ean,fJe),Yme;D(1843,1,vs,KQ),l.pf=function(e,n){ubn(this,u(e,135),n)},l.a=0,N(yx,"LevelHeightProcessor",1843),D(1844,1,t0,YQ),l.Jc=function(e){_a(this,e)},l.Kc=function(){return pn(),e8(),X7},N(yx,"LevelHeightProcessor/1",1844),D(1841,1,vs,X5),l.pf=function(e,n){bgn(this,u(e,135),n)},l.a=0,N(yx,"NeighborsProcessor",1841),D(1842,1,t0,$F),l.Jc=function(e){_a(this,e)},l.Kc=function(){return pn(),e8(),X7},N(yx,"NeighborsProcessor/1",1842),D(1845,1,vs,XQ),l.pf=function(e,n){cbn(this,u(e,135),n)},l.a=0,N(yx,"NodePositionProcessor",1845),D(1839,1,vs,Aqt),l.pf=function(e,n){Nyn(this,u(e,135))},N(yx,"RootProcessor",1839),D(1846,1,vs,OL),l.pf=function(e,n){Hun(u(e,135))},N(yx,"Untreeifyer",1846);var FO,BS,Xme,Aht,mG,RS,Lht,yG,xG,yE,jS,kG,Jg,X_t,Qme,Mht,Wy,Dht,Q_t;D(851,1,Ph,M3),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Okt),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),J_t),(Hg(),ms)),aCt),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Nkt),""),"Search Order"),"Which search order to use when computing a spanning tree."),Z_t),ms),cCt),on(qn)))),Xle((new KL,e))};var Zme,Z_t,Jme,J_t;N(fH,"MrTreeMetaDataProvider",851),D(994,1,Ph,KL),l.Qe=function(e){Xle(e)};var tye,tCt,eye,nye,rye,iye,eCt,sye,nCt,aye,EG,rCt,oye,iCt,cye;N(fH,"MrTreeOptions",994),D(995,1,{},QQ),l.$e=function(){var e;return e=new HWt,e},l._e=function(e){},N(fH,"MrTreeOptions/MrtreeFactory",995),D(480,22,{3:1,35:1,22:1,480:1},Rbt);var Iht,sCt,aCt=zr(fH,"OrderWeighting",480,Ur,Ynn,dJe),uye;D(425,22,{3:1,35:1,22:1,425:1},jbt);var oCt,Oht,cCt=zr(fH,"TreeifyingOrder",425,Ur,Knn,pJe),lye;D(1459,1,Vc,WL),l.Yf=function(e){return u(e,135),hye},l.pf=function(e,n){qon(this,u(e,135),n)};var hye;N("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),D(1460,1,Vc,JJ),l.Yf=function(e){return u(e,135),fye},l.pf=function(e,n){Cgn(this,u(e,135),n)};var fye;N("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),D(1461,1,Vc,ZJ),l.Yf=function(e){return u(e,135),dye},l.pf=function(e,n){Hvn(this,u(e,135),n)},l.a=0;var dye;N("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),D(1462,1,Vc,NB),l.Yf=function(e){return u(e,135),gye},l.pf=function(e,n){p1n(u(e,135),n)};var gye;N("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var $S;D(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},$bt),l.Kf=function(){return nie(this)},l.Xf=function(){return nie(this)};var TG,xE,uCt=zr(Pkt,"RadialLayoutPhases",495,Ur,Xnn,gJe),pye;D(1131,209,_2,kHt),l.Ze=function(e,n){var r,s,o,h,d,w;if(r=soe(this,e),mr(n,"Radial layout",r.c.length),Be(Fe(ze(e,(ay(),mCt))))||u$((s=new rr((Dm(),new Sm(e))),s)),w=Idn(e),Eo(e,(b_(),$S),w),!w)throw nt(new Pn("The given graph is not a tree!"));for(o=Zt(ve(ze(e,SG))),o==0&&(o=moe(e)),Eo(e,SG,o),d=new S(soe(this,e));d.a0&&Sre(($r(n-1,e.length),e.charCodeAt(n-1)),Kfe);)--n;if(s>=n)throw nt(new Pn("The given string does not contain any numbers."));if(o=py(e.substr(s,n-s),`,|;|\r| +`),o.length!=2)throw nt(new Pn("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=ly(uy(o[0])),this.b=ly(uy(o[1]))}catch(h){throw h=rs(h),_t(h,127)?(r=h,nt(new Pn(Yfe+r))):nt(h)}},l.Ib=function(){return"("+this.a+","+this.b+")"},l.a=0,l.b=0;var na=N(qI,"KVector",8);D(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ju,yR,hWt),l.Pc=function(){return eun(this)},l.Jf=function(e){var n,r,s,o,h,d;s=py(e,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | +`),Mh(this);try{for(r=0,h=0,o=0,d=0;r0&&(h%2==0?o=ly(s[r]):d=ly(s[r]),h>0&&h%2!=0&&ai(this,new Re(o,d)),++h),++r}catch(w){throw w=rs(w),_t(w,127)?(n=w,nt(new Pn("The given string does not match the expected format for vectors."+n))):nt(w)}},l.Ib=function(){var e,n,r;for(e=new Fl("("),n=si(this,0);n.b!=n.d.c;)r=u(ii(n),8),Yr(e,r.a+","+r.b),n.b!=n.d.c&&(e.a+="; ");return(e.a+=")",e).a};var wSt=N(qI,"KVectorChain",74);D(248,22,{3:1,35:1,22:1,248:1},e_);var tft,NG,PG,$O,zO,FG,mSt=zr(Bh,"Alignment",248,Ur,Ysn,IJe),N3e;D(979,1,Ph,ntt),l.Qe=function(e){Gue(e)};var ySt,eft,P3e,xSt,kSt,F3e,ESt,B3e,R3e,TSt,_St,j3e;N(Bh,"BoxLayouterOptions",979),D(980,1,{},OZ),l.$e=function(){var e;return e=new jZ,e},l._e=function(e){},N(Bh,"BoxLayouterOptions/BoxFactory",980),D(291,22,{3:1,35:1,22:1,291:1},n_);var qO,nft,HO,VO,GO,rft,ift=zr(Bh,"ContentAlignment",291,Ur,Ksn,OJe),$3e;D(684,1,Ph,kp),l.Qe=function(e){an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,V1e),""),"Layout Algorithm"),"Select a specific layout algorithm."),(Hg(),kE)),Le),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,G1e),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),G1),m6n),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hkt),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),CSt),ms),mSt),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,px),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,s8t),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),G1),wSt),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cH),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),ASt),Rx),ift),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,KI),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Fn(),!1)),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gkt),""),K6t),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),LSt),ms),WS),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,UI),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),ISt),ms),vft),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gH),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,oH),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),FSt),ms),xAt),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ww),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),USt),G1),SEt),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,$I),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vct),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,FC),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Fot),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),QSt),ms),TAt),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,uH),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),G1),na),Ki(ua,ut(ot(ep,1),oe,175,0,[q2,tp]))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,jI),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),xc),Ha),Ki(ua,ut(ot(ep,1),oe,175,0,[Id]))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Hq),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,PC),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ekt),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),RSt),G1),wSt),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ckt),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Skt),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,W5n),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),G1),T6n),Ki(qn,ut(ot(ep,1),oe,175,0,[tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Lkt),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),jSt),G1),CEt),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ukt),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),Pa),Ws),Ki(ua,ut(ot(ep,1),oe,175,0,[Id,q2,tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,U1e),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),$o),wa),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,W1e),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,K1e),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),de(100)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Y1e),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,X1e),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),de(4e3)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Q1e),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),de(400)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Z1e),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,J1e),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,tde),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ede),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,i8t),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),SSt),ms),MAt),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Qxt),j1),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Zxt),j1),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Mot),j1),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Jxt),j1),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Pot),j1),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,tkt),j1),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ekt),j1),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ikt),j1),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,nkt),j1),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,rkt),j1),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ky),j1),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,skt),j1),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,akt),j1),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),$o),wa),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,okt),j1),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),G1),x4e),Ki(ua,ut(ot(ep,1),oe,175,0,[Id,q2,tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Mkt),j1),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),oAt),G1),CEt),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,bct),ide),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),xc),Ha),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),ba(e,bct,pct,K3e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,pct),ide),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),WSt),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,pkt),sde),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),zSt),G1),SEt),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,F7),sde),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),qSt),Rx),vo),Ki(ua,ut(ot(ep,1),oe,175,0,[tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,wkt),bH),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),YSt),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,mkt),bH),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,ykt),bH),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,xkt),bH),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,kkt),bH),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,M4),Fct),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),HSt),Rx),tA),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,bx),Fct),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),GSt),Rx),CAt),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vx),Fct),"Node Size Minimum"),"The minimal size to which a node can be reduced."),VSt),G1),na),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gct),Fct),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Tkt),dct),"Edge Label Placement"),"Gives a hint on where to put edge labels."),MSt),ms),uAt),on(tp)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Vq),dct),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),Pa),Ws),on(tp)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,K5n),"font"),"Font Name"),"Font name used for a label."),kE),Le),on(tp)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,nde),"font"),"Font Size"),"Font size used for a label."),xc),Ha),on(tp)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Akt),Bct),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),G1),na),on(q2)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,_kt),Bct),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),xc),Ha),on(q2)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,lkt),Bct),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),tAt),ms),Za),on(q2)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,ckt),Bct),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),$o),wa),on(q2)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,B7),a8t),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),ZSt),Rx),VG),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,bkt),a8t),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vkt),a8t),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,fkt),ade),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,dkt),ade),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),Pa),Ws),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Dot),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),$o),wa),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,rde),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),NSt),ms),pAt),on(Id)))),VT(e,new $6(RT(Qk(Xk(new wm,Un),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),VT(e,new $6(RT(Qk(Xk(new wm,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),VT(e,new $6(RT(Qk(Xk(new wm,Wl),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),VT(e,new $6(RT(Qk(Xk(new wm,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),VT(e,new $6(RT(Qk(Xk(new wm,M1e),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),VT(e,new $6(RT(Qk(Xk(new wm,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),VT(e,new $6(RT(Qk(Xk(new wm,_d),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),Mue((new $B,e)),Gue((new ntt,e)),aue((new zB,e))};var GS,z3e,CSt,jx,q3e,H3e,SSt,V3e,BG,ASt,UO,jw,LSt,sft,aft,MSt,DSt,ISt,OSt,NSt,PSt,i5,FSt,G3e,WO,oft,RG,BSt,s5,RSt,KO,jSt,$St,zSt,a5,qSt,H2,HSt,jG,o5,VSt,mb,GSt,$G,YO,V2,USt,U3e,WSt,W3e,K3e,KSt,YSt,cft,uft,lft,hft,XSt,ml,US,QSt,fft,dft,Ky,ZSt,JSt,c5,tAt,$x,zG,gft,EE,Y3e,pft,X3e,Q3e,eAt,Z3e,nAt,J3e,zx,rAt,qG,iAt,sAt,G2,t4e,aAt,oAt,cAt;N(Bh,"CoreOptions",684),D(103,22,{3:1,35:1,22:1,103:1},LM);var Q0,Hh,_f,c0,Z0,WS=zr(Bh,K6t,103,Ur,vsn,FJe),e4e;D(272,22,{3:1,35:1,22:1,272:1},Het);var TE,Yy,_E,uAt=zr(Bh,"EdgeLabelPlacement",272,Ur,Qrn,BJe),n4e;D(218,22,{3:1,35:1,22:1,218:1},KR);var CE,XO,qx,bft,vft=zr(Bh,"EdgeRouting",218,Ur,Hin,RJe),r4e;D(312,22,{3:1,35:1,22:1,312:1},r_);var lAt,hAt,fAt,dAt,wft,gAt,pAt=zr(Bh,"EdgeType",312,Ur,ran,jJe),i4e;D(977,1,Ph,$B),l.Qe=function(e){Mue(e)};var bAt,vAt,wAt,mAt,s4e,yAt,KS;N(Bh,"FixedLayouterOptions",977),D(978,1,{},BL),l.$e=function(){var e;return e=new BZ,e},l._e=function(e){},N(Bh,"FixedLayouterOptions/FixedFactory",978),D(334,22,{3:1,35:1,22:1,334:1},Vet);var np,HG,YS,xAt=zr(Bh,"HierarchyHandling",334,Ur,Xrn,$Je),a4e;D(285,22,{3:1,35:1,22:1,285:1},YR);var u0,yb,QO,ZO,o4e=zr(Bh,"LabelSide",285,Ur,qin,zJe),c4e;D(93,22,{3:1,35:1,22:1,93:1},z3);var J0,Cf,Vh,Sf,Ql,Af,Gh,l0,Lf,vo=zr(Bh,"NodeLabelPlacement",93,Ur,aon,qJe),u4e;D(249,22,{3:1,35:1,22:1,249:1},MM);var kAt,XS,xb,EAt,JO,QS=zr(Bh,"PortAlignment",249,Ur,wsn,HJe),l4e;D(98,22,{3:1,35:1,22:1,98:1},i_);var U2,Kc,h0,SE,U1,kb,TAt=zr(Bh,"PortConstraints",98,Ur,$sn,VJe),h4e;D(273,22,{3:1,35:1,22:1,273:1},s_);var ZS,JS,tg,tN,Eb,Hx,VG=zr(Bh,"PortLabelPlacement",273,Ur,nan,GJe),f4e;D(61,22,{3:1,35:1,22:1,61:1},DM);var Hn,On,xh,kh,Du,gu,W1,Mf,ol,Yu,Yc,cl,Iu,Ou,Df,Zl,Jl,Uh,yr,ac,Bn,Za=zr(Bh,"PortSide",61,Ur,gsn,KJe),d4e;D(981,1,Ph,zB),l.Qe=function(e){aue(e)};var g4e,p4e,_At,b4e,v4e;N(Bh,"RandomLayouterOptions",981),D(982,1,{},HZ),l.$e=function(){var e;return e=new GZ,e},l._e=function(e){},N(Bh,"RandomLayouterOptions/RandomFactory",982),D(374,22,{3:1,35:1,22:1,374:1},XR);var Xy,eN,nN,W2,tA=zr(Bh,"SizeConstraint",374,Ur,zin,UJe),w4e;D(259,22,{3:1,35:1,22:1,259:1},q3);var rN,GG,AE,mft,iN,eA,UG,WG,KG,CAt=zr(Bh,"SizeOptions",259,Ur,don,WJe),m4e;D(370,1,{1949:1},Wk),l.b=!1,l.c=0,l.d=-1,l.e=null,l.f=null,l.g=-1,l.j=!1,l.k=!1,l.n=!1,l.o=0,l.q=0,l.r=0,N(Ac,"BasicProgressMonitor",370),D(972,209,_2,jZ),l.Ze=function(e,n){var r,s,o,h,d,w,k,_,M;switch(mr(n,"Box layout",2),o=lM(ve(ze(e,(eq(),j3e)))),h=u(ze(e,R3e),116),r=Be(Fe(ze(e,xSt))),s=Be(Fe(ze(e,kSt))),u(ze(e,eft),311).g){case 0:d=(w=new qu((!e.a&&(e.a=new he(ds,e,10,11)),e.a)),pn(),aa(w,new q$t(s)),w),k=z4t(e),_=ve(ze(e,ySt)),(_==null||(In(_),_<=0))&&(_=1.3),M=Z4n(d,o,h,k.a,k.b,r,(In(_),_)),gw(e,M.a,M.b,!1,!0);break;default:Kyn(e,o,h,r)}or(n)},N(Ac,"BoxLayoutProvider",972),D(973,1,qi,q$t),l.ue=function(e,n){return b2n(this,u(e,33),u(n,33))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},l.a=!1,N(Ac,"BoxLayoutProvider/1",973),D(157,1,{157:1},U$,lWt),l.Ib=function(){return this.c?$5t(this.c):Jp(this.b)},N(Ac,"BoxLayoutProvider/Group",157),D(311,22,{3:1,35:1,22:1,311:1},QR);var SAt,AAt,LAt,yft,MAt=zr(Ac,"BoxLayoutProvider/PackingMode",311,Ur,Vin,YJe),y4e;D(974,1,qi,$Z),l.ue=function(e,n){return mnn(u(e,157),u(n,157))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Ac,"BoxLayoutProvider/lambda$0$Type",974),D(975,1,qi,KF),l.ue=function(e,n){return fnn(u(e,157),u(n,157))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Ac,"BoxLayoutProvider/lambda$1$Type",975),D(976,1,qi,zZ),l.ue=function(e,n){return dnn(u(e,157),u(n,157))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Ac,"BoxLayoutProvider/lambda$2$Type",976),D(1365,1,{831:1},qZ),l.qg=function(e,n){return IR(),!_t(n,160)||yHt((X6(),u(e,160)),n)},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1365),D(1366,1,Kn,H$t),l.td=function(e){run(this.a,u(e,146))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1366),D(1367,1,Kn,RZ),l.td=function(e){u(e,94),IR()},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1367),D(1371,1,Kn,V$t),l.td=function(e){Aon(this.a,u(e,94))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1371),D(1369,1,gi,aGt),l.Mb=function(e){return Hcn(this.a,this.b,u(e,146))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1369),D(1368,1,gi,oGt),l.Mb=function(e){return aQe(this.a,this.b,u(e,831))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1368),D(1370,1,Kn,cGt),l.td=function(e){aen(this.a,this.b,u(e,146))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1370),D(935,1,{},FZ),l.Kb=function(e){return cUt(e)},l.Fb=function(e){return this===e},N(Ac,"ElkUtil/lambda$0$Type",935),D(936,1,Kn,uGt),l.td=function(e){wpn(this.a,this.b,u(e,79))},l.a=0,l.b=0,N(Ac,"ElkUtil/lambda$1$Type",936),D(937,1,Kn,lGt),l.td=function(e){wKe(this.a,this.b,u(e,202))},l.a=0,l.b=0,N(Ac,"ElkUtil/lambda$2$Type",937),D(938,1,Kn,hGt),l.td=function(e){uXe(this.a,this.b,u(e,137))},l.a=0,l.b=0,N(Ac,"ElkUtil/lambda$3$Type",938),D(939,1,Kn,G$t),l.td=function(e){ktn(this.a,u(e,469))},N(Ac,"ElkUtil/lambda$4$Type",939),D(342,1,{35:1,342:1},KWe),l.wd=function(e){return BXe(this,u(e,236))},l.Fb=function(e){var n;return _t(e,342)?(n=u(e,342),this.a==n.a):!1},l.Hb=function(){return Cs(this.a)},l.Ib=function(){return this.a+" (exclusive)"},l.a=0,N(Ac,"ExclusiveBounds/ExclusiveLowerBound",342),D(1138,209,_2,BZ),l.Ze=function(e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe;for(mr(n,"Fixed Layout",1),h=u(ze(e,(di(),DSt)),218),B=0,q=0,St=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));St.e!=St.i.gc();){for(bt=u(dr(St),33),Qe=u(ze(bt,(bz(),KS)),8),Qe&&(k1(bt,Qe.a,Qe.b),u(ze(bt,vAt),174).Hc((Nl(),Xy))&&(G=u(ze(bt,mAt),8),G.a>0&&G.b>0&&gw(bt,G.a,G.b,!0,!0))),B=b.Math.max(B,bt.i+bt.g),q=b.Math.max(q,bt.j+bt.f),_=new nr((!bt.n&&(bt.n=new he(Yo,bt,1,7)),bt.n));_.e!=_.i.gc();)w=u(dr(_),137),Qe=u(ze(w,KS),8),Qe&&k1(w,Qe.a,Qe.b),B=b.Math.max(B,bt.i+w.i+w.g),q=b.Math.max(q,bt.j+w.j+w.f);for(ce=new nr((!bt.c&&(bt.c=new he(yl,bt,9,9)),bt.c));ce.e!=ce.i.gc();)for(Qt=u(dr(ce),118),Qe=u(ze(Qt,KS),8),Qe&&k1(Qt,Qe.a,Qe.b),_e=bt.i+Qt.i,We=bt.j+Qt.j,B=b.Math.max(B,_e+Qt.g),q=b.Math.max(q,We+Qt.f),k=new nr((!Qt.n&&(Qt.n=new he(Yo,Qt,1,7)),Qt.n));k.e!=k.i.gc();)w=u(dr(k),137),Qe=u(ze(w,KS),8),Qe&&k1(w,Qe.a,Qe.b),B=b.Math.max(B,_e+w.i+w.g),q=b.Math.max(q,We+w.j+w.f);for(o=new ar(lr(V0(bt).a.Kc(),new H));Vr(o);)r=u(Ir(o),79),M=xhe(r),B=b.Math.max(B,M.a),q=b.Math.max(q,M.b);for(s=new ar(lr(fI(bt).a.Kc(),new H));Vr(s);)r=u(Ir(s),79),hs(Zd(r))!=e&&(M=xhe(r),B=b.Math.max(B,M.a),q=b.Math.max(q,M.b))}if(h==(q0(),CE))for(Mt=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));Mt.e!=Mt.i.gc();)for(bt=u(dr(Mt),33),s=new ar(lr(V0(bt).a.Kc(),new H));Vr(s);)r=u(Ir(s),79),d=pmn(r),d.b==0?Eo(r,s5,null):Eo(r,s5,d);Be(Fe(ze(e,(bz(),wAt))))||(jt=u(ze(e,s4e),116),Z=B+jt.b+jt.c,W=q+jt.d+jt.a,gw(e,Z,W,!0,!0)),or(n)},N(Ac,"FixedLayoutProvider",1138),D(373,134,{3:1,414:1,373:1,94:1,134:1},tl,Rte),l.Jf=function(e){var n,r,s,o,h,d,w,k,_;if(e)try{for(k=py(e,";,;"),h=k,d=0,w=h.length;d>16&Ms|n^s<<16},l.Kc=function(){return new U$t(this)},l.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+Wo(this.b)+")":this.b==null?"pair("+Wo(this.a)+",null)":"pair("+Wo(this.a)+","+Wo(this.b)+")"},N(Ac,"Pair",46),D(983,1,da,U$t),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},l.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw nt(new vc)},l.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),nt(new Ru)},l.b=!1,l.c=!1,N(Ac,"Pair/1",983),D(448,1,{448:1},kXt),l.Fb=function(e){return Rc(this.a,u(e,448).a)&&Rc(this.c,u(e,448).c)&&Rc(this.d,u(e,448).d)&&Rc(this.b,u(e,448).b)},l.Hb=function(){return vz(ut(ot(Qn,1),Me,1,5,[this.a,this.c,this.d,this.b]))},l.Ib=function(){return"("+this.a+Xa+this.c+Xa+this.d+Xa+this.b+")"},N(Ac,"Quadruple",448),D(1126,209,_2,GZ),l.Ze=function(e,n){var r,s,o,h,d;if(mr(n,"Random Layout",1),(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i==0){or(n);return}h=u(ze(e,(v3t(),b4e)),19),h&&h.a!=0?o=new T$(h.a):o=new Hit,r=lM(ve(ze(e,g4e))),d=lM(ve(ze(e,v4e))),s=u(ze(e,p4e),116),L4n(e,o,r,d,s),or(n)},N(Ac,"RandomLayoutProvider",1126);var T4e;D(553,1,{}),l.qf=function(){return new Re(this.f.i,this.f.j)},l.We=function(e){return KXt(e,(di(),ml))?ze(this.f,_4e):ze(this.f,e)},l.rf=function(){return new Re(this.f.g,this.f.f)},l.sf=function(){return this.g},l.Xe=function(e){return s2(this.f,e)},l.tf=function(e){Cu(this.f,e.a),Su(this.f,e.b)},l.uf=function(e){Qv(this.f,e.a),Xv(this.f,e.b)},l.vf=function(e){this.g=e},l.g=0;var _4e;N(UC,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553),D(554,1,{839:1},aR),l.wf=function(){var e,n;if(!this.b)for(this.b=y$(Zj(this.a).i),n=new nr(Zj(this.a));n.e!=n.i.gc();)e=u(dr(n),137),ue(this.b,new iet(e));return this.b},l.b=null,N(UC,"ElkGraphAdapters/ElkEdgeAdapter",554),D(301,553,{},Sm),l.xf=function(){return kse(this)},l.a=null,N(UC,"ElkGraphAdapters/ElkGraphAdapter",301),D(630,553,{181:1},iet),N(UC,"ElkGraphAdapters/ElkLabelAdapter",630),D(629,553,{680:1},snt),l.wf=function(){return Dfn(this)},l.Af=function(){var e;return e=u(ze(this.f,(di(),KO)),142),!e&&(e=new MT),e},l.Cf=function(){return Ifn(this)},l.Ef=function(e){var n;n=new ynt(e),Eo(this.f,(di(),KO),n)},l.Ff=function(e){Eo(this.f,(di(),V2),new fvt(e))},l.yf=function(){return this.d},l.zf=function(){var e,n;if(!this.a)for(this.a=new le,n=new ar(lr(fI(u(this.f,33)).a.Kc(),new H));Vr(n);)e=u(Ir(n),79),ue(this.a,new aR(e));return this.a},l.Bf=function(){var e,n;if(!this.c)for(this.c=new le,n=new ar(lr(V0(u(this.f,33)).a.Kc(),new H));Vr(n);)e=u(Ir(n),79),ue(this.c,new aR(e));return this.c},l.Df=function(){return i$(u(this.f,33)).i!=0||Be(Fe(u(this.f,33).We((di(),WO))))},l.Gf=function(){kan(this,(Dm(),T4e))},l.a=null,l.b=null,l.c=null,l.d=null,l.e=null,N(UC,"ElkGraphAdapters/ElkNodeAdapter",629),D(1266,553,{838:1},xzt),l.wf=function(){return $fn(this)},l.zf=function(){var e,n;if(!this.a)for(this.a=Hd(u(this.f,118).xg().i),n=new nr(u(this.f,118).xg());n.e!=n.i.gc();)e=u(dr(n),79),ue(this.a,new aR(e));return this.a},l.Bf=function(){var e,n;if(!this.c)for(this.c=Hd(u(this.f,118).yg().i),n=new nr(u(this.f,118).yg());n.e!=n.i.gc();)e=u(dr(n),79),ue(this.c,new aR(e));return this.c},l.Hf=function(){return u(u(this.f,118).We((di(),c5)),61)},l.If=function(){var e,n,r,s,o,h,d,w;for(s=_1(u(this.f,118)),r=new nr(u(this.f,118).yg());r.e!=r.i.gc();)for(e=u(dr(r),79),w=new nr((!e.c&&(e.c=new En(vr,e,5,8)),e.c));w.e!=w.i.gc();){if(d=u(dr(w),82),Zm(Ro(d),s))return!0;if(Ro(d)==s&&Be(Fe(ze(e,(di(),oft)))))return!0}for(n=new nr(u(this.f,118).xg());n.e!=n.i.gc();)for(e=u(dr(n),79),h=new nr((!e.b&&(e.b=new En(vr,e,4,7)),e.b));h.e!=h.i.gc();)if(o=u(dr(h),82),Zm(Ro(o),s))return!0;return!1},l.a=null,l.b=null,l.c=null,N(UC,"ElkGraphAdapters/ElkPortAdapter",1266),D(1267,1,qi,UZ),l.ue=function(e,n){return cwn(u(e,118),u(n,118))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(UC,"ElkGraphAdapters/PortComparator",1267);var Tb=as(vh,"EObject"),LE=as(N4,ude),Wh=as(N4,lde),sN=as(N4,hde),aN=as(N4,"ElkShape"),vr=as(N4,fde),ra=as(N4,o8t),us=as(N4,dde),oN=as(vh,gde),nA=as(vh,"EFactory"),C4e,xft=as(vh,pde),o1=as(vh,"EPackage"),la,S4e,A4e,NAt,YG,L4e,PAt,FAt,BAt,_b,M4e,D4e,Yo=as(N4,c8t),ds=as(N4,u8t),yl=as(N4,l8t);D(90,1,bde),l.Jg=function(){return this.Kg(),null},l.Kg=function(){return null},l.Lg=function(){return this.Kg(),!1},l.Mg=function(){return!1},l.Ng=function(e){Ci(this,e)},N(xx,"BasicNotifierImpl",90),D(97,90,yde),l.nh=function(){return Sl(this)},l.Og=function(e,n){return e},l.Pg=function(){throw nt(new Pr)},l.Qg=function(e){var n;return n=oo(u(wn(this.Tg(),this.Vg()),18)),this.eh().ih(this,n.n,n.f,e)},l.Rg=function(e,n){throw nt(new Pr)},l.Sg=function(e,n,r){return Ul(this,e,n,r)},l.Tg=function(){var e;return this.Pg()&&(e=this.Pg().ck(),e)?e:this.zh()},l.Ug=function(){return Ust(this)},l.Vg=function(){throw nt(new Pr)},l.Wg=function(){var e,n;return n=this.ph().dk(),!n&&this.Pg().ik(n=(GT(),e=Lwt(bd(this.Tg())),e==null?Lft:new NM(this,e))),n},l.Xg=function(e,n){return e},l.Yg=function(e){var n;return n=e.Gj(),n?e.aj():es(this.Tg(),e)},l.Zg=function(){var e;return e=this.Pg(),e?e.fk():null},l.$g=function(){return this.Pg()?this.Pg().ck():null},l._g=function(e,n,r){return jz(this,e,n,r)},l.ah=function(e){return L8(this,e)},l.bh=function(e,n){return Brt(this,e,n)},l.dh=function(){var e;return e=this.Pg(),!!e&&e.gk()},l.eh=function(){throw nt(new Pr)},l.fh=function(){return Iz(this)},l.gh=function(e,n,r,s){return tx(this,e,n,s)},l.hh=function(e,n,r){var s;return s=u(wn(this.Tg(),n),66),s.Nj().Qj(this,this.yh(),n-this.Ah(),e,r)},l.ih=function(e,n,r,s){return c$(this,e,n,s)},l.jh=function(e,n,r){var s;return s=u(wn(this.Tg(),n),66),s.Nj().Rj(this,this.yh(),n-this.Ah(),e,r)},l.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},l.lh=function(e){return rst(this,e)},l.mh=function(e){return hQt(this,e)},l.oh=function(e){return Fle(this,e)},l.ph=function(){throw nt(new Pr)},l.qh=function(){return this.Pg()?this.Pg().ek():null},l.rh=function(){return Iz(this)},l.sh=function(e,n){zst(this,e,n)},l.th=function(e){this.ph().hk(e)},l.uh=function(e){this.ph().kk(e)},l.vh=function(e){this.ph().jk(e)},l.wh=function(e,n){var r,s,o,h;return h=this.Zg(),h&&e&&(n=za(h.Vk(),this,n),h.Zk(this)),s=this.eh(),s&&(cat(this,this.eh(),this.Vg()).Bb&Qa?(o=s.fh(),o&&(e?!h&&o.Zk(this):o.Yk(this))):(n=(r=this.Vg(),r>=0?this.Qg(n):this.eh().ih(this,-1-r,null,n)),n=this.Sg(null,-1,n))),this.uh(e),n},l.xh=function(e){var n,r,s,o,h,d,w,k;if(r=this.Tg(),h=es(r,e),n=this.Ah(),h>=n)return u(e,66).Nj().Uj(this,this.yh(),h-n);if(h<=-1)if(d=T4((Gu(),Sa),r,e),d){if(so(),u(d,66).Oj()||(d=z6(Mo(Sa,d))),o=(s=this.Yg(d),u(s>=0?this._g(s,!0,!0):lw(this,d,!0),153)),k=d.Zj(),k>1||k==-1)return u(u(o,215).hl(e,!1),76)}else throw nt(new Pn(cb+e.ne()+Rct));else if(e.$j())return s=this.Yg(e),u(s>=0?this._g(s,!1,!0):lw(this,e,!1),76);return w=new DGt(this,e),w},l.yh=function(){return Mmt(this)},l.zh=function(){return(zp(),An).S},l.Ah=function(){return Jn(this.zh())},l.Bh=function(e){Fst(this,e)},l.Ib=function(){return mf(this)},N(Ln,"BasicEObjectImpl",97);var I4e;D(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),l.Ch=function(e){var n;return n=Dmt(this),n[e]},l.Dh=function(e,n){var r;r=Dmt(this),ls(r,e,n)},l.Eh=function(e){var n;n=Dmt(this),ls(n,e,null)},l.Jg=function(){return u(Mn(this,4),126)},l.Kg=function(){throw nt(new Pr)},l.Lg=function(){return(this.Db&4)!=0},l.Pg=function(){throw nt(new Pr)},l.Fh=function(e){J6(this,2,e)},l.Rg=function(e,n){this.Db=n<<16|this.Db&255,this.Fh(e)},l.Tg=function(){return ku(this)},l.Vg=function(){return this.Db>>16},l.Wg=function(){var e,n;return GT(),n=Lwt(bd((e=u(Mn(this,16),26),e||this.zh()))),n==null?Lft:new NM(this,n)},l.Mg=function(){return(this.Db&1)==0},l.Zg=function(){return u(Mn(this,128),1935)},l.$g=function(){return u(Mn(this,16),26)},l.dh=function(){return(this.Db&32)!=0},l.eh=function(){return u(Mn(this,2),49)},l.kh=function(){return(this.Db&64)!=0},l.ph=function(){throw nt(new Pr)},l.qh=function(){return u(Mn(this,64),281)},l.th=function(e){J6(this,16,e)},l.uh=function(e){J6(this,128,e)},l.vh=function(e){J6(this,64,e)},l.yh=function(){return uu(this)},l.Db=0,N(Ln,"MinimalEObjectImpl",114),D(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l.Fh=function(e){this.Cb=e},l.eh=function(){return this.Cb},N(Ln,"MinimalEObjectImpl/Container",115),D(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return q3t(this,e,n,r)},l.jh=function(e,n,r){return M4t(this,e,n,r)},l.lh=function(e){return zwt(this,e)},l.sh=function(e,n){Syt(this,e,n)},l.zh=function(){return nu(),D4e},l.Bh=function(e){byt(this,e)},l.Ve=function(){return Hie(this)},l.We=function(e){return ze(this,e)},l.Xe=function(e){return s2(this,e)},l.Ye=function(e,n){return Eo(this,e,n)},N(A2,"EMapPropertyHolderImpl",1985),D(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},mp),l._g=function(e,n,r){switch(e){case 0:return this.a;case 1:return this.b}return jz(this,e,n,r)},l.lh=function(e){switch(e){case 0:return this.a!=0;case 1:return this.b!=0}return rst(this,e)},l.sh=function(e,n){switch(e){case 0:W$(this,Zt(ve(n)));return;case 1:K$(this,Zt(ve(n)));return}zst(this,e,n)},l.zh=function(){return nu(),S4e},l.Bh=function(e){switch(e){case 0:W$(this,0);return;case 1:K$(this,0);return}Fst(this,e)},l.Ib=function(){var e;return this.Db&64?mf(this):(e=new Ah(mf(this)),e.a+=" (x: ",j3(e,this.a),e.a+=", y: ",j3(e,this.b),e.a+=")",e.a)},l.a=0,l.b=0,N(A2,"ElkBendPointImpl",567),D(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return Uyt(this,e,n,r)},l.hh=function(e,n,r){return Mst(this,e,n,r)},l.jh=function(e,n,r){return git(this,e,n,r)},l.lh=function(e){return cyt(this,e)},l.sh=function(e,n){o4t(this,e,n)},l.zh=function(){return nu(),L4e},l.Bh=function(e){qyt(this,e)},l.zg=function(){return this.k},l.Ag=function(){return Zj(this)},l.Ib=function(){return zit(this)},l.k=null,N(A2,"ElkGraphElementImpl",723),D(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return n3t(this,e,n,r)},l.lh=function(e){return u3t(this,e)},l.sh=function(e,n){c4t(this,e,n)},l.zh=function(){return nu(),M4e},l.Bh=function(e){g3t(this,e)},l.Bg=function(){return this.f},l.Cg=function(){return this.g},l.Dg=function(){return this.i},l.Eg=function(){return this.j},l.Fg=function(e,n){sj(this,e,n)},l.Gg=function(e,n){k1(this,e,n)},l.Hg=function(e){Cu(this,e)},l.Ig=function(e){Su(this,e)},l.Ib=function(){return Pst(this)},l.f=0,l.g=0,l.i=0,l.j=0,N(A2,"ElkShapeImpl",724),D(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return F3t(this,e,n,r)},l.hh=function(e,n,r){return e4t(this,e,n,r)},l.jh=function(e,n,r){return n4t(this,e,n,r)},l.lh=function(e){return _yt(this,e)},l.sh=function(e,n){h5t(this,e,n)},l.zh=function(){return nu(),A4e},l.Bh=function(e){A3t(this,e)},l.xg=function(){return!this.d&&(this.d=new En(ra,this,8,5)),this.d},l.yg=function(){return!this.e&&(this.e=new En(ra,this,7,4)),this.e},N(A2,"ElkConnectableShapeImpl",725),D(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},fv),l.Qg=function(e){return Q3t(this,e)},l._g=function(e,n,r){switch(e){case 3:return rD(this);case 4:return!this.b&&(this.b=new En(vr,this,4,7)),this.b;case 5:return!this.c&&(this.c=new En(vr,this,5,8)),this.c;case 6:return!this.a&&(this.a=new he(us,this,6,6)),this.a;case 7:return Fn(),!this.b&&(this.b=new En(vr,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i<=1));case 8:return Fn(),!!gC(this);case 9:return Fn(),!!uw(this);case 10:return Fn(),!this.b&&(this.b=new En(vr,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i!=0)}return Uyt(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 3:return this.Cb&&(r=(s=this.Db>>16,s>=0?Q3t(this,r):this.Cb.ih(this,-1-s,null,r))),V2t(this,u(e,33),r);case 4:return!this.b&&(this.b=new En(vr,this,4,7)),eu(this.b,e,r);case 5:return!this.c&&(this.c=new En(vr,this,5,8)),eu(this.c,e,r);case 6:return!this.a&&(this.a=new he(us,this,6,6)),eu(this.a,e,r)}return Mst(this,e,n,r)},l.jh=function(e,n,r){switch(n){case 3:return V2t(this,null,r);case 4:return!this.b&&(this.b=new En(vr,this,4,7)),za(this.b,e,r);case 5:return!this.c&&(this.c=new En(vr,this,5,8)),za(this.c,e,r);case 6:return!this.a&&(this.a=new he(us,this,6,6)),za(this.a,e,r)}return git(this,e,n,r)},l.lh=function(e){switch(e){case 3:return!!rD(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new En(vr,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i<=1));case 8:return gC(this);case 9:return uw(this);case 10:return!this.b&&(this.b=new En(vr,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i!=0)}return cyt(this,e)},l.sh=function(e,n){switch(e){case 3:Zst(this,u(n,33));return;case 4:!this.b&&(this.b=new En(vr,this,4,7)),Tr(this.b),!this.b&&(this.b=new En(vr,this,4,7)),gs(this.b,u(n,14));return;case 5:!this.c&&(this.c=new En(vr,this,5,8)),Tr(this.c),!this.c&&(this.c=new En(vr,this,5,8)),gs(this.c,u(n,14));return;case 6:!this.a&&(this.a=new he(us,this,6,6)),Tr(this.a),!this.a&&(this.a=new he(us,this,6,6)),gs(this.a,u(n,14));return}o4t(this,e,n)},l.zh=function(){return nu(),NAt},l.Bh=function(e){switch(e){case 3:Zst(this,null);return;case 4:!this.b&&(this.b=new En(vr,this,4,7)),Tr(this.b);return;case 5:!this.c&&(this.c=new En(vr,this,5,8)),Tr(this.c);return;case 6:!this.a&&(this.a=new he(us,this,6,6)),Tr(this.a);return}qyt(this,e)},l.Ib=function(){return xle(this)},N(A2,"ElkEdgeImpl",352),D(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},id),l.Qg=function(e){return W3t(this,e)},l._g=function(e,n,r){switch(e){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new Bs(Wh,this,5)),this.a;case 6:return cQt(this);case 7:return n?cst(this):this.i;case 8:return n?ost(this):this.f;case 9:return!this.g&&(this.g=new En(us,this,9,10)),this.g;case 10:return!this.e&&(this.e=new En(us,this,10,9)),this.e;case 11:return this.d}return q3t(this,e,n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?W3t(this,r):this.Cb.ih(this,-1-o,null,r))),G2t(this,u(e,79),r);case 9:return!this.g&&(this.g=new En(us,this,9,10)),eu(this.g,e,r);case 10:return!this.e&&(this.e=new En(us,this,10,9)),eu(this.e,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(nu(),YG)),n),66),h.Nj().Qj(this,uu(this),n-Jn((nu(),YG)),e,r)},l.jh=function(e,n,r){switch(n){case 5:return!this.a&&(this.a=new Bs(Wh,this,5)),za(this.a,e,r);case 6:return G2t(this,null,r);case 9:return!this.g&&(this.g=new En(us,this,9,10)),za(this.g,e,r);case 10:return!this.e&&(this.e=new En(us,this,10,9)),za(this.e,e,r)}return M4t(this,e,n,r)},l.lh=function(e){switch(e){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!cQt(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return zwt(this,e)},l.sh=function(e,n){switch(e){case 1:P8(this,Zt(ve(n)));return;case 2:B8(this,Zt(ve(n)));return;case 3:N8(this,Zt(ve(n)));return;case 4:F8(this,Zt(ve(n)));return;case 5:!this.a&&(this.a=new Bs(Wh,this,5)),Tr(this.a),!this.a&&(this.a=new Bs(Wh,this,5)),gs(this.a,u(n,14));return;case 6:kce(this,u(n,79));return;case 7:J$(this,u(n,82));return;case 8:Z$(this,u(n,82));return;case 9:!this.g&&(this.g=new En(us,this,9,10)),Tr(this.g),!this.g&&(this.g=new En(us,this,9,10)),gs(this.g,u(n,14));return;case 10:!this.e&&(this.e=new En(us,this,10,9)),Tr(this.e),!this.e&&(this.e=new En(us,this,10,9)),gs(this.e,u(n,14));return;case 11:Jmt(this,jr(n));return}Syt(this,e,n)},l.zh=function(){return nu(),YG},l.Bh=function(e){switch(e){case 1:P8(this,0);return;case 2:B8(this,0);return;case 3:N8(this,0);return;case 4:F8(this,0);return;case 5:!this.a&&(this.a=new Bs(Wh,this,5)),Tr(this.a);return;case 6:kce(this,null);return;case 7:J$(this,null);return;case 8:Z$(this,null);return;case 9:!this.g&&(this.g=new En(us,this,9,10)),Tr(this.g);return;case 10:!this.e&&(this.e=new En(us,this,10,9)),Tr(this.e);return;case 11:Jmt(this,null);return}byt(this,e)},l.Ib=function(){return $oe(this)},l.b=0,l.c=0,l.d=null,l.j=0,l.k=0,N(A2,"ElkEdgeSectionImpl",439),D(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),l._g=function(e,n,r){var s;return e==0?(!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab):hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.hh=function(e,n,r){var s,o;return n==0?(!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r)):(o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Qj(this,uu(this),n-Jn(this.zh()),e,r))},l.jh=function(e,n,r){var s,o;return n==0?(!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r)):(o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r))},l.lh=function(e){var n;return e==0?!!this.Ab&&this.Ab.i!=0:uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.oh=function(e){return m6t(this,e)},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.uh=function(e){J6(this,128,e)},l.zh=function(){return ln(),X4e},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.Gh=function(){this.Bb|=1},l.Hh=function(e){return mC(this,e)},l.Bb=0,N(Ln,"EModelElementImpl",150),D(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},qB),l.Ih=function(e,n){return Qle(this,e,n)},l.Jh=function(e){var n,r,s,o,h;if(this.a!=zl(e)||e.Bb&256)throw nt(new Pn($ct+e.zb+kw));for(s=Po(e);Oc(s.a).i!=0;){if(r=u(EI(s,0,(n=u(At(Oc(s.a),0),87),h=n.c,_t(h,88)?u(h,26):(ln(),Qh))),26),cw(r))return o=zl(r).Nh().Jh(r),u(o,49).th(e),o;s=Po(r)}return(e.D!=null?e.D:e.B)=="java.util.Map$Entry"?new UKt(e):new Dvt(e)},l.Kh=function(e,n){return pw(this,e,n)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.a}return hh(this,e-Jn((ln(),Lb)),wn((s=u(Mn(this,16),26),s||Lb),e),n,r)},l.hh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 1:return this.a&&(r=u(this.a,49).ih(this,4,o1,r)),$yt(this,u(e,235),r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Lb)),n),66),o.Nj().Qj(this,uu(this),n-Jn((ln(),Lb)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 1:return $yt(this,null,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Lb)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Lb)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return uh(this,e-Jn((ln(),Lb)),wn((n=u(Mn(this,16),26),n||Lb),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:kae(this,u(n,235));return}bh(this,e-Jn((ln(),Lb)),wn((r=u(Mn(this,16),26),r||Lb),e),n)},l.zh=function(){return ln(),Lb},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:kae(this,null);return}gh(this,e-Jn((ln(),Lb)),wn((n=u(Mn(this,16),26),n||Lb),e))};var rA,RAt,O4e;N(Ln,"EFactoryImpl",704),D(xf,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},Z5),l.Ih=function(e,n){switch(e.yj()){case 12:return u(n,146).tg();case 13:return Wo(n);default:throw nt(new Pn(z7+e.ne()+kw))}},l.Jh=function(e){var n,r,s,o,h,d,w,k;switch(e.G==-1&&(e.G=(n=zl(e),n?$g(n.Mh(),e):-1)),e.G){case 4:return h=new Y9,h;case 6:return d=new Npt,d;case 7:return w=new Ppt,w;case 8:return s=new fv,s;case 9:return r=new mp,r;case 10:return o=new id,o;case 11:return k=new YF,k;default:throw nt(new Pn($ct+e.zb+kw))}},l.Kh=function(e,n){switch(e.yj()){case 13:case 12:return null;default:throw nt(new Pn(z7+e.ne()+kw))}},N(A2,"ElkGraphFactoryImpl",xf),D(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),l.Wg=function(){var e,n;return n=(e=u(Mn(this,16),26),Lwt(bd(e||this.zh()))),n==null?(GT(),GT(),Lft):new dWt(this,n)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.ne()}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:this.Lh(jr(n));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),Q4e},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:this.Lh(null);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.ne=function(){return this.zb},l.Lh=function(e){tu(this,e)},l.Ib=function(){return X_(this)},l.zb=null,N(Ln,"ENamedElementImpl",438),D(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},WXt),l.Qg=function(e){return Fse(this,e)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new qm(this,c1,this)),this.rb;case 6:return!this.vb&&(this.vb=new M6(o1,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?u(this.Cb,235):null:uQt(this)}return hh(this,e-Jn((ln(),ap)),wn((s=u(Mn(this,16),26),s||ap),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 4:return this.sb&&(r=u(this.sb,49).ih(this,1,nA,r)),Vyt(this,u(e,471),r);case 5:return!this.rb&&(this.rb=new qm(this,c1,this)),eu(this.rb,e,r);case 6:return!this.vb&&(this.vb=new M6(o1,this,6,7)),eu(this.vb,e,r);case 7:return this.Cb&&(r=(o=this.Db>>16,o>=0?Fse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,7,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),ap)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),ap)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 4:return Vyt(this,null,r);case 5:return!this.rb&&(this.rb=new qm(this,c1,this)),za(this.rb,e,r);case 6:return!this.vb&&(this.vb=new M6(o1,this,6,7)),za(this.vb,e,r);case 7:return Ul(this,null,7,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),ap)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),ap)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!uQt(this)}return uh(this,e-Jn((ln(),ap)),wn((n=u(Mn(this,16),26),n||ap),e))},l.oh=function(e){var n;return n=M2n(this,e),n||m6t(this,e)},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:az(this,jr(n));return;case 3:sz(this,jr(n));return;case 4:Nst(this,u(n,471));return;case 5:!this.rb&&(this.rb=new qm(this,c1,this)),Tr(this.rb),!this.rb&&(this.rb=new qm(this,c1,this)),gs(this.rb,u(n,14));return;case 6:!this.vb&&(this.vb=new M6(o1,this,6,7)),Tr(this.vb),!this.vb&&(this.vb=new M6(o1,this,6,7)),gs(this.vb,u(n,14));return}bh(this,e-Jn((ln(),ap)),wn((r=u(Mn(this,16),26),r||ap),e),n)},l.vh=function(e){var n,r;if(e&&this.rb)for(r=new nr(this.rb);r.e!=r.i.gc();)n=dr(r),_t(n,351)&&(u(n,351).w=null);J6(this,64,e)},l.zh=function(){return ln(),ap},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:az(this,null);return;case 3:sz(this,null);return;case 4:Nst(this,null);return;case 5:!this.rb&&(this.rb=new qm(this,c1,this)),Tr(this.rb);return;case 6:!this.vb&&(this.vb=new M6(o1,this,6,7)),Tr(this.vb);return}gh(this,e-Jn((ln(),ap)),wn((n=u(Mn(this,16),26),n||ap),e))},l.Gh=function(){xst(this)},l.Mh=function(){return!this.rb&&(this.rb=new qm(this,c1,this)),this.rb},l.Nh=function(){return this.sb},l.Oh=function(){return this.ub},l.Ph=function(){return this.xb},l.Qh=function(){return this.yb},l.Rh=function(e){this.ub=e},l.Ib=function(){var e;return this.Db&64?X_(this):(e=new Ah(X_(this)),e.a+=" (nsURI: ",yo(e,this.yb),e.a+=", nsPrefix: ",yo(e,this.xb),e.a+=")",e.a)},l.xb=null,l.yb=null,N(Ln,"EPackageImpl",179),D(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},Yoe),l.q=!1,l.r=!1;var N4e=!1;N(A2,"ElkGraphPackageImpl",555),D(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Y9),l.Qg=function(e){return K3t(this,e)},l._g=function(e,n,r){switch(e){case 7:return lQt(this);case 8:return this.a}return n3t(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 7:return this.Cb&&(r=(s=this.Db>>16,s>=0?K3t(this,r):this.Cb.ih(this,-1-s,null,r))),Uvt(this,u(e,160),r)}return Mst(this,e,n,r)},l.jh=function(e,n,r){return n==7?Uvt(this,null,r):git(this,e,n,r)},l.lh=function(e){switch(e){case 7:return!!lQt(this);case 8:return!un("",this.a)}return u3t(this,e)},l.sh=function(e,n){switch(e){case 7:_5t(this,u(n,160));return;case 8:Umt(this,jr(n));return}c4t(this,e,n)},l.zh=function(){return nu(),PAt},l.Bh=function(e){switch(e){case 7:_5t(this,null);return;case 8:Umt(this,"");return}g3t(this,e)},l.Ib=function(){return Fae(this)},l.a="",N(A2,"ElkLabelImpl",354),D(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Npt),l.Qg=function(e){return Z3t(this,e)},l._g=function(e,n,r){switch(e){case 9:return!this.c&&(this.c=new he(yl,this,9,9)),this.c;case 10:return!this.a&&(this.a=new he(ds,this,10,11)),this.a;case 11:return hs(this);case 12:return!this.b&&(this.b=new he(ra,this,12,3)),this.b;case 13:return Fn(),!this.a&&(this.a=new he(ds,this,10,11)),this.a.i>0}return F3t(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 9:return!this.c&&(this.c=new he(yl,this,9,9)),eu(this.c,e,r);case 10:return!this.a&&(this.a=new he(ds,this,10,11)),eu(this.a,e,r);case 11:return this.Cb&&(r=(s=this.Db>>16,s>=0?Z3t(this,r):this.Cb.ih(this,-1-s,null,r))),tvt(this,u(e,33),r);case 12:return!this.b&&(this.b=new he(ra,this,12,3)),eu(this.b,e,r)}return e4t(this,e,n,r)},l.jh=function(e,n,r){switch(n){case 9:return!this.c&&(this.c=new he(yl,this,9,9)),za(this.c,e,r);case 10:return!this.a&&(this.a=new he(ds,this,10,11)),za(this.a,e,r);case 11:return tvt(this,null,r);case 12:return!this.b&&(this.b=new he(ra,this,12,3)),za(this.b,e,r)}return n4t(this,e,n,r)},l.lh=function(e){switch(e){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!hs(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new he(ds,this,10,11)),this.a.i>0}return _yt(this,e)},l.sh=function(e,n){switch(e){case 9:!this.c&&(this.c=new he(yl,this,9,9)),Tr(this.c),!this.c&&(this.c=new he(yl,this,9,9)),gs(this.c,u(n,14));return;case 10:!this.a&&(this.a=new he(ds,this,10,11)),Tr(this.a),!this.a&&(this.a=new he(ds,this,10,11)),gs(this.a,u(n,14));return;case 11:k5t(this,u(n,33));return;case 12:!this.b&&(this.b=new he(ra,this,12,3)),Tr(this.b),!this.b&&(this.b=new he(ra,this,12,3)),gs(this.b,u(n,14));return}h5t(this,e,n)},l.zh=function(){return nu(),FAt},l.Bh=function(e){switch(e){case 9:!this.c&&(this.c=new he(yl,this,9,9)),Tr(this.c);return;case 10:!this.a&&(this.a=new he(ds,this,10,11)),Tr(this.a);return;case 11:k5t(this,null);return;case 12:!this.b&&(this.b=new he(ra,this,12,3)),Tr(this.b);return}A3t(this,e)},l.Ib=function(){return $5t(this)},N(A2,"ElkNodeImpl",239),D(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Ppt),l.Qg=function(e){return Y3t(this,e)},l._g=function(e,n,r){return e==9?_1(this):F3t(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 9:return this.Cb&&(r=(s=this.Db>>16,s>=0?Y3t(this,r):this.Cb.ih(this,-1-s,null,r))),U2t(this,u(e,33),r)}return e4t(this,e,n,r)},l.jh=function(e,n,r){return n==9?U2t(this,null,r):n4t(this,e,n,r)},l.lh=function(e){return e==9?!!_1(this):_yt(this,e)},l.sh=function(e,n){switch(e){case 9:x5t(this,u(n,33));return}h5t(this,e,n)},l.zh=function(){return nu(),BAt},l.Bh=function(e){switch(e){case 9:x5t(this,null);return}A3t(this,e)},l.Ib=function(){return kue(this)},N(A2,"ElkPortImpl",186);var P4e=as(qa,"BasicEMap/Entry");D(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},YF),l.Fb=function(e){return this===e},l.cd=function(){return this.b},l.Hb=function(){return Dv(this)},l.Uh=function(e){Wmt(this,u(e,146))},l._g=function(e,n,r){switch(e){case 0:return this.b;case 1:return this.c}return jz(this,e,n,r)},l.lh=function(e){switch(e){case 0:return!!this.b;case 1:return this.c!=null}return rst(this,e)},l.sh=function(e,n){switch(e){case 0:Wmt(this,u(n,146));return;case 1:Xmt(this,n);return}zst(this,e,n)},l.zh=function(){return nu(),_b},l.Bh=function(e){switch(e){case 0:Wmt(this,null);return;case 1:Xmt(this,null);return}Fst(this,e)},l.Sh=function(){var e;return this.a==-1&&(e=this.b,this.a=e?Ji(e):0),this.a},l.dd=function(){return this.c},l.Th=function(e){this.a=e},l.ed=function(e){var n;return n=this.c,Xmt(this,e),n},l.Ib=function(){var e;return this.Db&64?mf(this):(e=new Ap,Yr(Yr(Yr(e,this.b?this.b.tg():Mu),Bot),d_(this.c)),e.a)},l.a=-1,l.c=null;var $w=N(A2,"ElkPropertyToValueMapEntryImpl",1092);D(984,1,{},XF),N(Ca,"JsonAdapter",984),D(210,60,U0,od),N(Ca,"JsonImportException",210),D(857,1,{},Bse),N(Ca,"JsonImporter",857),D(891,1,{},fGt),N(Ca,"JsonImporter/lambda$0$Type",891),D(892,1,{},dGt),N(Ca,"JsonImporter/lambda$1$Type",892),D(900,1,{},W$t),N(Ca,"JsonImporter/lambda$10$Type",900),D(902,1,{},gGt),N(Ca,"JsonImporter/lambda$11$Type",902),D(903,1,{},pGt),N(Ca,"JsonImporter/lambda$12$Type",903),D(909,1,{},SXt),N(Ca,"JsonImporter/lambda$13$Type",909),D(908,1,{},CXt),N(Ca,"JsonImporter/lambda$14$Type",908),D(904,1,{},bGt),N(Ca,"JsonImporter/lambda$15$Type",904),D(905,1,{},vGt),N(Ca,"JsonImporter/lambda$16$Type",905),D(906,1,{},wGt),N(Ca,"JsonImporter/lambda$17$Type",906),D(907,1,{},mGt),N(Ca,"JsonImporter/lambda$18$Type",907),D(912,1,{},K$t),N(Ca,"JsonImporter/lambda$19$Type",912),D(893,1,{},Y$t),N(Ca,"JsonImporter/lambda$2$Type",893),D(910,1,{},X$t),N(Ca,"JsonImporter/lambda$20$Type",910),D(911,1,{},Q$t),N(Ca,"JsonImporter/lambda$21$Type",911),D(915,1,{},Z$t),N(Ca,"JsonImporter/lambda$22$Type",915),D(913,1,{},J$t),N(Ca,"JsonImporter/lambda$23$Type",913),D(914,1,{},tzt),N(Ca,"JsonImporter/lambda$24$Type",914),D(917,1,{},ezt),N(Ca,"JsonImporter/lambda$25$Type",917),D(916,1,{},nzt),N(Ca,"JsonImporter/lambda$26$Type",916),D(918,1,Kn,yGt),l.td=function(e){san(this.b,this.a,jr(e))},N(Ca,"JsonImporter/lambda$27$Type",918),D(919,1,Kn,xGt),l.td=function(e){aan(this.b,this.a,jr(e))},N(Ca,"JsonImporter/lambda$28$Type",919),D(920,1,{},kGt),N(Ca,"JsonImporter/lambda$29$Type",920),D(896,1,{},rzt),N(Ca,"JsonImporter/lambda$3$Type",896),D(921,1,{},EGt),N(Ca,"JsonImporter/lambda$30$Type",921),D(922,1,{},izt),N(Ca,"JsonImporter/lambda$31$Type",922),D(923,1,{},szt),N(Ca,"JsonImporter/lambda$32$Type",923),D(924,1,{},azt),N(Ca,"JsonImporter/lambda$33$Type",924),D(925,1,{},ozt),N(Ca,"JsonImporter/lambda$34$Type",925),D(859,1,{},czt),N(Ca,"JsonImporter/lambda$35$Type",859),D(929,1,{},wKt),N(Ca,"JsonImporter/lambda$36$Type",929),D(926,1,Kn,uzt),l.td=function(e){usn(this.a,u(e,469))},N(Ca,"JsonImporter/lambda$37$Type",926),D(927,1,Kn,LGt),l.td=function(e){BYe(this.a,this.b,u(e,202))},N(Ca,"JsonImporter/lambda$38$Type",927),D(928,1,Kn,MGt),l.td=function(e){RYe(this.a,this.b,u(e,202))},N(Ca,"JsonImporter/lambda$39$Type",928),D(894,1,{},lzt),N(Ca,"JsonImporter/lambda$4$Type",894),D(930,1,Kn,hzt),l.td=function(e){lsn(this.a,u(e,8))},N(Ca,"JsonImporter/lambda$40$Type",930),D(895,1,{},fzt),N(Ca,"JsonImporter/lambda$5$Type",895),D(899,1,{},dzt),N(Ca,"JsonImporter/lambda$6$Type",899),D(897,1,{},gzt),N(Ca,"JsonImporter/lambda$7$Type",897),D(898,1,{},pzt),N(Ca,"JsonImporter/lambda$8$Type",898),D(901,1,{},bzt),N(Ca,"JsonImporter/lambda$9$Type",901),D(948,1,Kn,vzt),l.td=function(e){F6(this.a,new Hm(jr(e)))},N(Ca,"JsonMetaDataConverter/lambda$0$Type",948),D(949,1,Kn,wzt),l.td=function(e){Cen(this.a,u(e,237))},N(Ca,"JsonMetaDataConverter/lambda$1$Type",949),D(950,1,Kn,mzt),l.td=function(e){Ern(this.a,u(e,149))},N(Ca,"JsonMetaDataConverter/lambda$2$Type",950),D(951,1,Kn,yzt),l.td=function(e){Sen(this.a,u(e,175))},N(Ca,"JsonMetaDataConverter/lambda$3$Type",951),D(237,22,{3:1,35:1,22:1,237:1},C6);var XG,QG,kft,ZG,JG,tU,Eft,Tft,eU=zr(BI,"GraphFeature",237,Ur,Yan,QJe),F4e;D(13,1,{35:1,146:1},ts,Hs,vn,ao),l.wd=function(e){return FXe(this,u(e,146))},l.Fb=function(e){return KXt(this,e)},l.wg=function(){return Ie(this)},l.tg=function(){return this.b},l.Hb=function(){return zg(this.b)},l.Ib=function(){return this.b},N(BI,"Property",13),D(818,1,qi,dpt),l.ue=function(e,n){return tln(this,u(e,94),u(n,94))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(BI,"PropertyHolderComparator",818),D(695,1,da,gpt),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return lan(this)},l.Qb=function(){dHt()},l.Ob=function(){return!!this.a},N(yH,"ElkGraphUtil/AncestorIterator",695);var jAt=as(qa,"EList");D(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),l.Vc=function(e,n){J_(this,e,n)},l.Fc=function(e){return Or(this,e)},l.Wc=function(e,n){return vyt(this,e,n)},l.Gc=function(e){return gs(this,e)},l.Zh=function(){return new L6(this)},l.$h=function(){return new PM(this)},l._h=function(e){return CD(this,e)},l.ai=function(){return!0},l.bi=function(e,n){},l.ci=function(){},l.di=function(e,n){jrt(this,e,n)},l.ei=function(e,n,r){},l.fi=function(e,n){},l.gi=function(e,n,r){},l.Fb=function(e){return cue(this,e)},l.Hb=function(){return fyt(this)},l.hi=function(){return!1},l.Kc=function(){return new nr(this)},l.Yc=function(){return new A6(this)},l.Zc=function(e){var n;if(n=this.gc(),e<0||e>n)throw nt(new jm(e,n));return new Vnt(this,e)},l.ji=function(e,n){this.ii(e,this.Xc(n))},l.Mc=function(e){return j$(this,e)},l.li=function(e,n){return n},l._c=function(e,n){return l4(this,e,n)},l.Ib=function(){return i3t(this)},l.ni=function(){return!0},l.oi=function(e,n){return Y8(this,n)},N(qa,"AbstractEList",67),D(63,67,Sd,J5,Kv,iyt),l.Vh=function(e,n){return Dst(this,e,n)},l.Wh=function(e){return lse(this,e)},l.Xh=function(e,n){zD(this,e,n)},l.Yh=function(e){uD(this,e)},l.pi=function(e){return _mt(this,e)},l.$b=function(){R_(this)},l.Hc=function(e){return l7(this,e)},l.Xb=function(e){return At(this,e)},l.qi=function(e){var n,r,s;++this.j,r=this.g==null?0:this.g.length,e>r&&(s=this.g,n=r+(r/2|0)+4,n=0?(this.$c(n),!0):!1},l.mi=function(e,n){return this.Ui(e,this.oi(e,n))},l.gc=function(){return this.Vi()},l.Pc=function(){return this.Wi()},l.Qc=function(e){return this.Xi(e)},l.Ib=function(){return this.Yi()},N(qa,"DelegatingEList",1995),D(1996,1995,i0e),l.Vh=function(e,n){return Y5t(this,e,n)},l.Wh=function(e){return this.Vh(this.Vi(),e)},l.Xh=function(e,n){Woe(this,e,n)},l.Yh=function(e){Roe(this,e)},l.ai=function(){return!this.bj()},l.$b=function(){_C(this)},l.Zi=function(e,n,r,s,o){return new XXt(this,e,n,r,s,o)},l.$i=function(e){Ci(this.Ai(),e)},l._i=function(){return null},l.aj=function(){return-1},l.Ai=function(){return null},l.bj=function(){return!1},l.cj=function(e,n){return n},l.dj=function(e,n){return n},l.ej=function(){return!1},l.fj=function(){return!this.Ri()},l.ii=function(e,n){var r,s;return this.ej()?(s=this.fj(),r=S4t(this,e,n),this.$i(this.Zi(7,de(n),r,e,s)),r):S4t(this,e,n)},l.$c=function(e){var n,r,s,o;return this.ej()?(r=null,s=this.fj(),n=this.Zi(4,o=Ij(this,e),null,e,s),this.bj()&&o?(r=this.dj(o,r),r?(r.Ei(n),r.Fi()):this.$i(n)):r?(r.Ei(n),r.Fi()):this.$i(n),o):(o=Ij(this,e),this.bj()&&o&&(r=this.dj(o,null),r&&r.Fi()),o)},l.mi=function(e,n){return ele(this,e,n)},N(xx,"DelegatingNotifyingListImpl",1996),D(143,1,QI),l.Ei=function(e){return g4t(this,e)},l.Fi=function(){Krt(this)},l.xi=function(){return this.d},l._i=function(){return null},l.gj=function(){return null},l.yi=function(e){return-1},l.zi=function(){return zce(this)},l.Ai=function(){return null},l.Bi=function(){return M5t(this)},l.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},l.hj=function(){return!1},l.Di=function(e){var n,r,s,o,h,d,w,k,_,M,B;switch(this.d){case 1:case 2:switch(o=e.xi(),o){case 1:case 2:if(h=e.Ai(),Gt(h)===Gt(this.Ai())&&this.yi(null)==e.yi(null))return this.g=e.zi(),e.xi()==1&&(this.d=1),!0}case 4:{switch(o=e.xi(),o){case 4:{if(h=e.Ai(),Gt(h)===Gt(this.Ai())&&this.yi(null)==e.yi(null))return _=f6t(this),k=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,d=e.Ci(),this.d=6,B=new Kv(2),k<=d?(Or(B,this.n),Or(B,e.Bi()),this.g=ut(ot(Sr,1),Jr,25,15,[this.o=k,d+1])):(Or(B,e.Bi()),Or(B,this.n),this.g=ut(ot(Sr,1),Jr,25,15,[this.o=d,k])),this.n=B,_||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=e.xi(),o){case 4:{if(h=e.Ai(),Gt(h)===Gt(this.Ai())&&this.yi(null)==e.yi(null)){for(_=f6t(this),d=e.Ci(),M=u(this.g,48),s=Nt(Sr,Jr,25,M.length+1,15,1),n=0;n>>0,n.toString(16))),s.a+=" (eventType: ",this.d){case 1:{s.a+="SET";break}case 2:{s.a+="UNSET";break}case 3:{s.a+="ADD";break}case 5:{s.a+="ADD_MANY";break}case 4:{s.a+="REMOVE";break}case 6:{s.a+="REMOVE_MANY";break}case 7:{s.a+="MOVE";break}case 8:{s.a+="REMOVING_ADAPTER";break}case 9:{s.a+="RESOLVE";break}default:{fet(s,this.d);break}}if(Lue(this)&&(s.a+=", touch: true"),s.a+=", position: ",fet(s,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),s.a+=", notifier: ",o_(s,this.Ai()),s.a+=", feature: ",o_(s,this._i()),s.a+=", oldValue: ",o_(s,M5t(this)),s.a+=", newValue: ",this.d==6&&_t(this.g,48)){for(r=u(this.g,48),s.a+="[",e=0;e10?((!this.b||this.c.j!=this.a)&&(this.b=new y_(this),this.a=this.j),S0(this.b,e)):l7(this,e)},l.ni=function(){return!0},l.a=0,N(qa,"AbstractEList/1",953),D(295,73,oot,jm),N(qa,"AbstractEList/BasicIndexOutOfBoundsException",295),D(40,1,da,nr),l.Nb=function(e){Ea(this,e)},l.mj=function(){if(this.i.j!=this.f)throw nt(new sh)},l.nj=function(){return dr(this)},l.Ob=function(){return this.e!=this.i.gc()},l.Pb=function(){return this.nj()},l.Qb=function(){uC(this)},l.e=0,l.f=0,l.g=-1,N(qa,"AbstractEList/EIterator",40),D(278,40,Jd,A6,Vnt),l.Qb=function(){uC(this)},l.Rb=function(e){fie(this,e)},l.oj=function(){var e;try{return e=this.d.Xb(--this.e),this.mj(),this.g=this.e,e}catch(n){throw n=rs(n),_t(n,73)?(this.mj(),nt(new vc)):nt(n)}},l.pj=function(e){dse(this,e)},l.Sb=function(){return this.e!=0},l.Tb=function(){return this.e},l.Ub=function(){return this.oj()},l.Vb=function(){return this.e-1},l.Wb=function(e){this.pj(e)},N(qa,"AbstractEList/EListIterator",278),D(341,40,da,L6),l.nj=function(){return ist(this)},l.Qb=function(){throw nt(new Pr)},N(qa,"AbstractEList/NonResolvingEIterator",341),D(385,278,Jd,PM,ovt),l.Rb=function(e){throw nt(new Pr)},l.nj=function(){var e;try{return e=this.c.ki(this.e),this.mj(),this.g=this.e++,e}catch(n){throw n=rs(n),_t(n,73)?(this.mj(),nt(new vc)):nt(n)}},l.oj=function(){var e;try{return e=this.c.ki(--this.e),this.mj(),this.g=this.e,e}catch(n){throw n=rs(n),_t(n,73)?(this.mj(),nt(new vc)):nt(n)}},l.Qb=function(){throw nt(new Pr)},l.Wb=function(e){throw nt(new Pr)},N(qa,"AbstractEList/NonResolvingEListIterator",385),D(1982,67,s0e),l.Vh=function(e,n){var r,s,o,h,d,w,k,_,M,B,q;if(o=n.gc(),o!=0){for(_=u(Mn(this.a,4),126),M=_==null?0:_.length,q=M+o,s=Cit(this,q),B=M-e,B>0&&Pc(_,e,s,e+o,B),k=n.Kc(),d=0;dr)throw nt(new jm(e,r));return new oXt(this,e)},l.$b=function(){var e,n;++this.j,e=u(Mn(this.a,4),126),n=e==null?0:e.length,a7(this,null),jrt(this,n,e)},l.Hc=function(e){var n,r,s,o,h;if(n=u(Mn(this.a,4),126),n!=null){if(e!=null){for(s=n,o=0,h=s.length;o=r)throw nt(new jm(e,r));return n[e]},l.Xc=function(e){var n,r,s;if(n=u(Mn(this.a,4),126),n!=null){if(e!=null){for(r=0,s=n.length;rr)throw nt(new jm(e,r));return new aXt(this,e)},l.ii=function(e,n){var r,s,o;if(r=yie(this),o=r==null?0:r.length,e>=o)throw nt(new Co(Yct+e+L2+o));if(n>=o)throw nt(new Co(Xct+n+L2+o));return s=r[n],e!=n&&(e0&&Pc(e,0,n,0,r),n},l.Qc=function(e){var n,r,s;return n=u(Mn(this.a,4),126),s=n==null?0:n.length,s>0&&(e.lengths&&ls(e,s,null),e};var B4e;N(qa,"ArrayDelegatingEList",1982),D(1038,40,da,bJt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},l.Qb=function(){uC(this),this.a=u(Mn(this.b.a,4),126)},N(qa,"ArrayDelegatingEList/EIterator",1038),D(706,278,Jd,MYt,aXt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},l.pj=function(e){dse(this,e),this.a=u(Mn(this.b.a,4),126)},l.Qb=function(){uC(this),this.a=u(Mn(this.b.a,4),126)},N(qa,"ArrayDelegatingEList/EListIterator",706),D(1039,341,da,vJt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},N(qa,"ArrayDelegatingEList/NonResolvingEIterator",1039),D(707,385,Jd,DYt,oXt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},N(qa,"ArrayDelegatingEList/NonResolvingEListIterator",707),D(606,295,oot,Wet),N(qa,"BasicEList/BasicIndexOutOfBoundsException",606),D(696,63,Sd,Ubt),l.Vc=function(e,n){throw nt(new Pr)},l.Fc=function(e){throw nt(new Pr)},l.Wc=function(e,n){throw nt(new Pr)},l.Gc=function(e){throw nt(new Pr)},l.$b=function(){throw nt(new Pr)},l.qi=function(e){throw nt(new Pr)},l.Kc=function(){return this.Zh()},l.Yc=function(){return this.$h()},l.Zc=function(e){return this._h(e)},l.ii=function(e,n){throw nt(new Pr)},l.ji=function(e,n){throw nt(new Pr)},l.$c=function(e){throw nt(new Pr)},l.Mc=function(e){throw nt(new Pr)},l._c=function(e,n){throw nt(new Pr)},N(qa,"BasicEList/UnmodifiableEList",696),D(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),l.Vc=function(e,n){CXe(this,e,u(n,42))},l.Fc=function(e){return fQe(this,u(e,42))},l.Jc=function(e){_a(this,e)},l.Xb=function(e){return u(At(this.c,e),133)},l.ii=function(e,n){return u(this.c.ii(e,n),42)},l.ji=function(e,n){SXe(this,e,u(n,42))},l.Lc=function(){return new kn(null,new Tn(this,16))},l.$c=function(e){return u(this.c.$c(e),42)},l._c=function(e,n){return yen(this,e,u(n,42))},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.Oc=function(){return new kn(null,new Tn(this,16))},l.Wc=function(e,n){return this.c.Wc(e,n)},l.Gc=function(e){return this.c.Gc(e)},l.$b=function(){this.c.$b()},l.Hc=function(e){return this.c.Hc(e)},l.Ic=function(e){return DD(this.c,e)},l.qj=function(){var e,n,r;if(this.d==null){for(this.d=Nt($At,A8t,63,2*this.f+1,0,1),r=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)e=u(n.nj(),133),qz(this,e);this.e=r}},l.Fb=function(e){return nKt(this,e)},l.Hb=function(){return fyt(this.c)},l.Xc=function(e){return this.c.Xc(e)},l.rj=function(){this.c=new kzt(this)},l.dc=function(){return this.f==0},l.Kc=function(){return this.c.Kc()},l.Yc=function(){return this.c.Yc()},l.Zc=function(e){return this.c.Zc(e)},l.sj=function(){return fD(this)},l.tj=function(e,n,r){return new mKt(e,n,r)},l.uj=function(){return new yp},l.Mc=function(e){return Pee(this,e)},l.gc=function(){return this.f},l.bd=function(e,n){return new Kd(this.c,e,n)},l.Pc=function(){return this.c.Pc()},l.Qc=function(e){return this.c.Qc(e)},l.Ib=function(){return i3t(this.c)},l.e=0,l.f=0,N(qa,"BasicEMap",705),D(1033,63,Sd,kzt),l.bi=function(e,n){uKe(this,u(n,133))},l.ei=function(e,n,r){var s;++(s=this,u(n,133),s).a.e},l.fi=function(e,n){lKe(this,u(n,133))},l.gi=function(e,n,r){JXe(this,u(n,133),u(r,133))},l.di=function(e,n){_ne(this.a)},N(qa,"BasicEMap/1",1033),D(1034,63,Sd,yp),l.ri=function(e){return Nt(x6n,a0e,612,e,0,1)},N(qa,"BasicEMap/2",1034),D(1035,B1,Uu,Ezt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){return Yit(this.a,e)},l.Kc=function(){return this.a.f==0?(l8(),lN.a):new iHt(this.a)},l.Mc=function(e){var n;return n=this.a.f,Dz(this.a,e),this.a.f!=n},l.gc=function(){return this.a.f},N(qa,"BasicEMap/3",1035),D(1036,28,wy,Tzt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){return uue(this.a,e)},l.Kc=function(){return this.a.f==0?(l8(),lN.a):new sHt(this.a)},l.gc=function(){return this.a.f},N(qa,"BasicEMap/4",1036),D(1037,B1,Uu,_zt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){var n,r,s,o,h,d,w,k,_;if(this.a.f>0&&_t(e,42)&&(this.a.qj(),k=u(e,42),w=k.cd(),o=w==null?0:Ji(w),h=W2t(this.a,o),n=this.a.d[h],n)){for(r=u(n.g,367),_=n.i,d=0;d<_;++d)if(s=r[d],s.Sh()==o&&s.Fb(k))return!0}return!1},l.Kc=function(){return this.a.f==0?(l8(),lN.a):new art(this.a)},l.Mc=function(e){return ece(this,e)},l.gc=function(){return this.a.f},N(qa,"BasicEMap/5",1037),D(613,1,da,art),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.b!=-1},l.Pb=function(){var e;if(this.f.e!=this.c)throw nt(new sh);if(this.b==-1)throw nt(new vc);return this.d=this.a,this.e=this.b,Hse(this),e=u(this.f.d[this.d].g[this.e],133),this.vj(e)},l.Qb=function(){if(this.f.e!=this.c)throw nt(new sh);if(this.e==-1)throw nt(new Ru);this.f.c.Mc(At(this.f.d[this.d],this.e)),this.c=this.f.e,this.e=-1,this.a==this.d&&this.b!=-1&&--this.b},l.vj=function(e){return e},l.a=0,l.b=-1,l.c=0,l.d=0,l.e=0,N(qa,"BasicEMap/BasicEMapIterator",613),D(1031,613,da,iHt),l.vj=function(e){return e.cd()},N(qa,"BasicEMap/BasicEMapKeyIterator",1031),D(1032,613,da,sHt),l.vj=function(e){return e.dd()},N(qa,"BasicEMap/BasicEMapValueIterator",1032),D(1030,1,bw,Czt),l.wc=function(e){U_(this,e)},l.yc=function(e,n,r){return qit(this,e,n,r)},l.$b=function(){this.a.c.$b()},l._b=function(e){return RGt(this,e)},l.uc=function(e){return uue(this.a,e)},l.vc=function(){return qsn(this.a)},l.Fb=function(e){return nKt(this.a,e)},l.xc=function(e){return Jf(this.a,e)},l.Hb=function(){return fyt(this.a.c)},l.dc=function(){return this.a.f==0},l.ec=function(){return Hsn(this.a)},l.zc=function(e,n){return Yz(this.a,e,n)},l.Bc=function(e){return Dz(this.a,e)},l.gc=function(){return this.a.f},l.Ib=function(){return i3t(this.a.c)},l.Cc=function(){return zsn(this.a)},N(qa,"BasicEMap/DelegatingMap",1030),D(612,1,{42:1,133:1,612:1},mKt),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),(this.b!=null?Si(this.b,n.cd()):Gt(this.b)===Gt(n.cd()))&&(this.c!=null?Si(this.c,n.dd()):Gt(this.c)===Gt(n.dd()))):!1},l.Sh=function(){return this.a},l.cd=function(){return this.b},l.dd=function(){return this.c},l.Hb=function(){return this.a^(this.c==null?0:Ji(this.c))},l.Th=function(e){this.a=e},l.Uh=function(e){throw nt(new Wb)},l.ed=function(e){var n;return n=this.c,this.c=e,n},l.Ib=function(){return this.b+"->"+this.c},l.a=0;var x6n=N(qa,"BasicEMap/EntryImpl",612);D(536,1,{},kk),N(qa,"BasicEMap/View",536);var lN;D(768,1,{}),l.Fb=function(e){return f5t((pn(),uo),e)},l.Hb=function(){return Tyt((pn(),uo))},l.Ib=function(){return Jp((pn(),uo))},N(qa,"ECollections/BasicEmptyUnmodifiableEList",768),D(1312,1,Jd,QF),l.Nb=function(e){Ea(this,e)},l.Rb=function(e){throw nt(new Pr)},l.Ob=function(){return!1},l.Sb=function(){return!1},l.Pb=function(){throw nt(new vc)},l.Tb=function(){return 0},l.Ub=function(){throw nt(new vc)},l.Vb=function(){return-1},l.Qb=function(){throw nt(new Pr)},l.Wb=function(e){throw nt(new Pr)},N(qa,"ECollections/BasicEmptyUnmodifiableEList/1",1312),D(1310,768,{20:1,14:1,15:1,58:1},pqt),l.Vc=function(e,n){CHt()},l.Fc=function(e){return SHt()},l.Wc=function(e,n){return AHt()},l.Gc=function(e){return LHt()},l.$b=function(){MHt()},l.Hc=function(e){return!1},l.Ic=function(e){return!1},l.Jc=function(e){_a(this,e)},l.Xb=function(e){return Ybt((pn(),e)),null},l.Xc=function(e){return-1},l.dc=function(){return!0},l.Kc=function(){return this.a},l.Yc=function(){return this.a},l.Zc=function(e){return this.a},l.ii=function(e,n){return DHt()},l.ji=function(e,n){IHt()},l.Lc=function(){return new kn(null,new Tn(this,16))},l.$c=function(e){return OHt()},l.Mc=function(e){return NHt()},l._c=function(e,n){return PHt()},l.gc=function(){return 0},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.Oc=function(){return new kn(null,new Tn(this,16))},l.bd=function(e,n){return pn(),new Kd(uo,e,n)},l.Pc=function(){return Yvt((pn(),uo))},l.Qc=function(e){return pn(),XD(uo,e)},N(qa,"ECollections/EmptyUnmodifiableEList",1310),D(1311,768,{20:1,14:1,15:1,58:1,589:1},bqt),l.Vc=function(e,n){CHt()},l.Fc=function(e){return SHt()},l.Wc=function(e,n){return AHt()},l.Gc=function(e){return LHt()},l.$b=function(){MHt()},l.Hc=function(e){return!1},l.Ic=function(e){return!1},l.Jc=function(e){_a(this,e)},l.Xb=function(e){return Ybt((pn(),e)),null},l.Xc=function(e){return-1},l.dc=function(){return!0},l.Kc=function(){return this.a},l.Yc=function(){return this.a},l.Zc=function(e){return this.a},l.ii=function(e,n){return DHt()},l.ji=function(e,n){IHt()},l.Lc=function(){return new kn(null,new Tn(this,16))},l.$c=function(e){return OHt()},l.Mc=function(e){return NHt()},l._c=function(e,n){return PHt()},l.gc=function(){return 0},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.Oc=function(){return new kn(null,new Tn(this,16))},l.bd=function(e,n){return pn(),new Kd(uo,e,n)},l.Pc=function(){return Yvt((pn(),uo))},l.Qc=function(e){return pn(),XD(uo,e)},l.sj=function(){return pn(),pn(),a0},N(qa,"ECollections/EmptyUnmodifiableEMap",1311);var qAt=as(qa,"Enumerator"),nU;D(281,1,{281:1},rat),l.Fb=function(e){var n;return this===e?!0:_t(e,281)?(n=u(e,281),this.f==n.f&&ztn(this.i,n.i)&&Mnt(this.a,this.f&256?n.f&256?n.a:null:n.f&256?null:n.a)&&Mnt(this.d,n.d)&&Mnt(this.g,n.g)&&Mnt(this.e,n.e)&&Phn(this,n)):!1},l.Hb=function(){return this.f},l.Ib=function(){return $ue(this)},l.f=0;var R4e=0,j4e=0,$4e=0,z4e=0,HAt=0,VAt=0,GAt=0,UAt=0,WAt=0,q4e,iA=0,sA=0,H4e=0,V4e=0,rU,KAt;N(qa,"URI",281),D(1091,43,S4,vqt),l.zc=function(e,n){return u(Ao(this,jr(e),u(n,281)),281)},N(qa,"URI/URICache",1091),D(497,63,Sd,Ek,Nj),l.hi=function(){return!0},N(qa,"UniqueEList",497),D(581,60,U0,F$),N(qa,"WrappedException",581);var ei=as(vh,u0e),Qy=as(vh,l0e),Nu=as(vh,h0e),Zy=as(vh,f0e),c1=as(vh,d0e),Kh=as(vh,"EClass"),Sft=as(vh,"EDataType"),G4e;D(1183,43,S4,wqt),l.xc=function(e){return ha(e)?jc(this,e):cc(Fo(this.f,e))},N(vh,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1183);var iU=as(vh,"EEnum"),eg=as(vh,g0e),wo=as(vh,p0e),Yh=as(vh,b0e),Xh,zw=as(vh,v0e),Jy=as(vh,w0e);D(1029,1,{},WZ),l.Ib=function(){return"NIL"},N(vh,"EStructuralFeature/Internal/DynamicValueHolder/1",1029);var U4e;D(1028,43,S4,mqt),l.xc=function(e){return ha(e)?jc(this,e):cc(Fo(this.f,e))},N(vh,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1028);var pu=as(vh,m0e),Vx=as(vh,"EValidator/PatternMatcher"),YAt,XAt,An,rp,t3,Sb,W4e,K4e,Y4e,Ab,ip,Lb,qw,K1,X4e,Q4e,Qh,sp,Z4e,ap,e3,u5,Ja,J4e,t5e,Hw,sU=as(Yi,"FeatureMap/Entry");D(535,1,{72:1},JR),l.ak=function(){return this.a},l.dd=function(){return this.b},N(Ln,"BasicEObjectImpl/1",535),D(1027,1,nut,DGt),l.Wj=function(e){return Brt(this.a,this.b,e)},l.fj=function(){return hQt(this.a,this.b)},l.Wb=function(e){Dwt(this.a,this.b,e)},l.Xj=function(){Ben(this.a,this.b)},N(Ln,"BasicEObjectImpl/4",1027),D(1983,1,{108:1}),l.bk=function(e){this.e=e==0?e5e:Nt(Qn,Me,1,e,5,1)},l.Ch=function(e){return this.e[e]},l.Dh=function(e,n){this.e[e]=n},l.Eh=function(e){this.e[e]=null},l.ck=function(){return this.c},l.dk=function(){throw nt(new Pr)},l.ek=function(){throw nt(new Pr)},l.fk=function(){return this.d},l.gk=function(){return this.e!=null},l.hk=function(e){this.c=e},l.ik=function(e){throw nt(new Pr)},l.jk=function(e){throw nt(new Pr)},l.kk=function(e){this.d=e};var e5e;N(Ln,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983),D(185,1983,{108:1},ih),l.dk=function(){return this.a},l.ek=function(){return this.b},l.ik=function(e){this.a=e},l.jk=function(e){this.b=e},N(Ln,"BasicEObjectImpl/EPropertiesHolderImpl",185),D(506,97,yde,Tk),l.Kg=function(){return this.f},l.Pg=function(){return this.k},l.Rg=function(e,n){this.g=e,this.i=n},l.Tg=function(){return this.j&2?this.ph().ck():this.zh()},l.Vg=function(){return this.i},l.Mg=function(){return(this.j&1)!=0},l.eh=function(){return this.g},l.kh=function(){return(this.j&4)!=0},l.ph=function(){return!this.k&&(this.k=new ih),this.k},l.th=function(e){this.ph().hk(e),e?this.j|=2:this.j&=-3},l.vh=function(e){this.ph().jk(e),e?this.j|=4:this.j&=-5},l.zh=function(){return(zp(),An).S},l.i=0,l.j=1,N(Ln,"EObjectImpl",506),D(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},Dvt),l.Ch=function(e){return this.e[e]},l.Dh=function(e,n){this.e[e]=n},l.Eh=function(e){this.e[e]=null},l.Tg=function(){return this.d},l.Yg=function(e){return es(this.d,e)},l.$g=function(){return this.d},l.dh=function(){return this.e!=null},l.ph=function(){return!this.k&&(this.k=new ZF),this.k},l.th=function(e){this.d=e},l.yh=function(){var e;return this.e==null&&(e=Jn(this.d),this.e=e==0?n5e:Nt(Qn,Me,1,e,5,1)),this},l.Ah=function(){return 0};var n5e;N(Ln,"DynamicEObjectImpl",780),D(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},UKt),l.Fb=function(e){return this===e},l.Hb=function(){return Dv(this)},l.th=function(e){this.d=e,this.b=gI(e,"key"),this.c=gI(e,YC)},l.Sh=function(){var e;return this.a==-1&&(e=Yrt(this,this.b),this.a=e==null?0:Ji(e)),this.a},l.cd=function(){return Yrt(this,this.b)},l.dd=function(){return Yrt(this,this.c)},l.Th=function(e){this.a=e},l.Uh=function(e){Dwt(this,this.b,e)},l.ed=function(e){var n;return n=Yrt(this,this.c),Dwt(this,this.c,e),n},l.a=0,N(Ln,"DynamicEObjectImpl/BasicEMapEntry",1376),D(1377,1,{108:1},ZF),l.bk=function(e){throw nt(new Pr)},l.Ch=function(e){throw nt(new Pr)},l.Dh=function(e,n){throw nt(new Pr)},l.Eh=function(e){throw nt(new Pr)},l.ck=function(){throw nt(new Pr)},l.dk=function(){return this.a},l.ek=function(){return this.b},l.fk=function(){return this.c},l.gk=function(){throw nt(new Pr)},l.hk=function(e){throw nt(new Pr)},l.ik=function(e){this.a=e},l.jk=function(e){this.b=e},l.kk=function(e){this.c=e},N(Ln,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377),D(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},JF),l.Qg=function(e){return X3t(this,e)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.d;case 2:return r?(!this.b&&(this.b=new Al((ln(),Ja),pc,this)),this.b):(!this.b&&(this.b=new Al((ln(),Ja),pc,this)),fD(this.b));case 3:return bQt(this);case 4:return!this.a&&(this.a=new Bs(Tb,this,4)),this.a;case 5:return!this.c&&(this.c=new W3(Tb,this,5)),this.c}return hh(this,e-Jn((ln(),rp)),wn((s=u(Mn(this,16),26),s||rp),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 3:return this.Cb&&(r=(o=this.Db>>16,o>=0?X3t(this,r):this.Cb.ih(this,-1-o,null,r))),Wvt(this,u(e,147),r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),rp)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),rp)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 2:return!this.b&&(this.b=new Al((ln(),Ja),pc,this)),kj(this.b,e,r);case 3:return Wvt(this,null,r);case 4:return!this.a&&(this.a=new Bs(Tb,this,4)),za(this.a,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),rp)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),rp)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!bQt(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return uh(this,e-Jn((ln(),rp)),wn((n=u(Mn(this,16),26),n||rp),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:Ctn(this,jr(n));return;case 2:!this.b&&(this.b=new Al((ln(),Ja),pc,this)),lz(this.b,n);return;case 3:Mce(this,u(n,147));return;case 4:!this.a&&(this.a=new Bs(Tb,this,4)),Tr(this.a),!this.a&&(this.a=new Bs(Tb,this,4)),gs(this.a,u(n,14));return;case 5:!this.c&&(this.c=new W3(Tb,this,5)),Tr(this.c),!this.c&&(this.c=new W3(Tb,this,5)),gs(this.c,u(n,14));return}bh(this,e-Jn((ln(),rp)),wn((r=u(Mn(this,16),26),r||rp),e),n)},l.zh=function(){return ln(),rp},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:Qmt(this,null);return;case 2:!this.b&&(this.b=new Al((ln(),Ja),pc,this)),this.b.c.$b();return;case 3:Mce(this,null);return;case 4:!this.a&&(this.a=new Bs(Tb,this,4)),Tr(this.a);return;case 5:!this.c&&(this.c=new W3(Tb,this,5)),Tr(this.c);return}gh(this,e-Jn((ln(),rp)),wn((n=u(Mn(this,16),26),n||rp),e))},l.Ib=function(){return Gre(this)},l.d=null,N(Ln,"EAnnotationImpl",510),D(151,705,L8t,Il),l.Xh=function(e,n){cXe(this,e,u(n,42))},l.lk=function(e,n){return nZe(this,u(e,42),n)},l.pi=function(e){return u(u(this.c,69).pi(e),133)},l.Zh=function(){return u(this.c,69).Zh()},l.$h=function(){return u(this.c,69).$h()},l._h=function(e){return u(this.c,69)._h(e)},l.mk=function(e,n){return kj(this,e,n)},l.Wj=function(e){return u(this.c,76).Wj(e)},l.rj=function(){},l.fj=function(){return u(this.c,76).fj()},l.tj=function(e,n,r){var s;return s=u(zl(this.b).Nh().Jh(this.b),133),s.Th(e),s.Uh(n),s.ed(r),s},l.uj=function(){return new bpt(this)},l.Wb=function(e){lz(this,e)},l.Xj=function(){u(this.c,76).Xj()},N(Yi,"EcoreEMap",151),D(158,151,L8t,Al),l.qj=function(){var e,n,r,s,o,h;if(this.d==null){for(h=Nt($At,A8t,63,2*this.f+1,0,1),r=this.c.Kc();r.e!=r.i.gc();)n=u(r.nj(),133),s=n.Sh(),o=(s&Ti)%h.length,e=h[o],!e&&(e=h[o]=new bpt(this)),e.Fc(n);this.d=h}},N(Ln,"EAnnotationImpl/1",158),D(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),l._g=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),!!this.$j();case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r)}return o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r)},l.lh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0)}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:this.Lh(jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:this.ok(u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),t5e},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:this.Lh(null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:this.ok(1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.Gh=function(){Oh(this),this.Bb|=1},l.Yj=function(){return Oh(this)},l.Zj=function(){return this.t},l.$j=function(){var e;return e=this.t,e>1||e==-1},l.hi=function(){return(this.Bb&512)!=0},l.nk=function(e,n){return Gyt(this,e,n)},l.ok=function(e){ty(this,e)},l.Ib=function(){return n5t(this)},l.s=0,l.t=1,N(Ln,"ETypedElementImpl",284),D(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),l.Qg=function(e){return Sse(this,e)},l._g=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),!!this.$j();case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return Fn(),!!(this.Bb&xf);case 11:return Fn(),!!(this.Bb&Ay);case 12:return Fn(),!!(this.Bb&yy);case 13:return this.j;case 14:return v7(this);case 15:return Fn(),!!(this.Bb&Ku);case 16:return Fn(),!!(this.Bb&vd);case 17:return Gm(this)}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 17:return this.Cb&&(r=(o=this.Db>>16,o>=0?Sse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,17,r)}return h=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),h.Nj().Qj(this,uu(this),n-Jn(this.zh()),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r);case 17:return Ul(this,null,17,r)}return o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r)},l.lh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return(this.Bb&xf)==0;case 11:return(this.Bb&Ay)!=0;case 12:return(this.Bb&yy)!=0;case 13:return this.j!=null;case 14:return v7(this)!=null;case 15:return(this.Bb&Ku)!=0;case 16:return(this.Bb&vd)!=0;case 17:return!!Gm(this)}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:xrt(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:this.ok(u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 10:t7(this,Be(Fe(n)));return;case 11:r7(this,Be(Fe(n)));return;case 12:e7(this,Be(Fe(n)));return;case 13:Wbt(this,jr(n));return;case 15:n7(this,Be(Fe(n)));return;case 16:i7(this,Be(Fe(n)));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),J4e},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),4),tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:this.ok(1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 10:t7(this,!0);return;case 11:r7(this,!1);return;case 12:e7(this,!1);return;case 13:this.i=null,ez(this,null);return;case 15:n7(this,!1);return;case 16:i7(this,!1);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.Gh=function(){y8(Mo((Gu(),Sa),this)),Oh(this),this.Bb|=1},l.Gj=function(){return this.f},l.zj=function(){return v7(this)},l.Hj=function(){return Gm(this)},l.Lj=function(){return null},l.pk=function(){return this.k},l.aj=function(){return this.n},l.Mj=function(){return Qz(this)},l.Nj=function(){var e,n,r,s,o,h,d,w,k;return this.p||(r=Gm(this),(r.i==null&&bd(r),r.i).length,s=this.Lj(),s&&Jn(Gm(s)),o=Oh(this),d=o.Bj(),e=d?d.i&1?d==xl?Ws:d==Sr?Ha:d==r3?K7:d==ga?wa:d==Db?Tw:d==d5?_w:d==Xu?kx:aS:d:null,n=v7(this),w=o.zj(),aln(this),this.Bb&vd&&((h=r4t((Gu(),Sa),r))&&h!=this||(h=z6(Mo(Sa,this))))?this.p=new OGt(this,h):this.$j()?this.rk()?s?this.Bb&Ku?e?this.sk()?this.p=new t2(47,e,this,s):this.p=new t2(5,e,this,s):this.sk()?this.p=new r2(46,this,s):this.p=new r2(4,this,s):e?this.sk()?this.p=new t2(49,e,this,s):this.p=new t2(7,e,this,s):this.sk()?this.p=new r2(48,this,s):this.p=new r2(6,this,s):this.Bb&Ku?e?e==I2?this.p=new Lg(50,P4e,this):this.sk()?this.p=new Lg(43,e,this):this.p=new Lg(1,e,this):this.sk()?this.p=new Dg(42,this):this.p=new Dg(0,this):e?e==I2?this.p=new Lg(41,P4e,this):this.sk()?this.p=new Lg(45,e,this):this.p=new Lg(3,e,this):this.sk()?this.p=new Dg(44,this):this.p=new Dg(2,this):_t(o,148)?e==sU?this.p=new Dg(40,this):this.Bb&512?this.Bb&Ku?e?this.p=new Lg(9,e,this):this.p=new Dg(8,this):e?this.p=new Lg(11,e,this):this.p=new Dg(10,this):this.Bb&Ku?e?this.p=new Lg(13,e,this):this.p=new Dg(12,this):e?this.p=new Lg(15,e,this):this.p=new Dg(14,this):s?(k=s.t,k>1||k==-1?this.sk()?this.Bb&Ku?e?this.p=new t2(25,e,this,s):this.p=new r2(24,this,s):e?this.p=new t2(27,e,this,s):this.p=new r2(26,this,s):this.Bb&Ku?e?this.p=new t2(29,e,this,s):this.p=new r2(28,this,s):e?this.p=new t2(31,e,this,s):this.p=new r2(30,this,s):this.sk()?this.Bb&Ku?e?this.p=new t2(33,e,this,s):this.p=new r2(32,this,s):e?this.p=new t2(35,e,this,s):this.p=new r2(34,this,s):this.Bb&Ku?e?this.p=new t2(37,e,this,s):this.p=new r2(36,this,s):e?this.p=new t2(39,e,this,s):this.p=new r2(38,this,s)):this.sk()?this.Bb&Ku?e?this.p=new Lg(17,e,this):this.p=new Dg(16,this):e?this.p=new Lg(19,e,this):this.p=new Dg(18,this):this.Bb&Ku?e?this.p=new Lg(21,e,this):this.p=new Dg(20,this):e?this.p=new Lg(23,e,this):this.p=new Dg(22,this):this.qk()?this.sk()?this.p=new yKt(u(o,26),this,s):this.p=new Mwt(u(o,26),this,s):_t(o,148)?e==sU?this.p=new Dg(40,this):this.Bb&Ku?e?this.p=new wYt(n,w,this,(Kit(),d==Sr?rLt:d==xl?ZAt:d==Db?iLt:d==r3?nLt:d==ga?eLt:d==d5?sLt:d==Xu?JAt:d==Eh?tLt:Mft)):this.p=new MXt(u(o,148),n,w,this):e?this.p=new vYt(n,w,this,(Kit(),d==Sr?rLt:d==xl?ZAt:d==Db?iLt:d==r3?nLt:d==ga?eLt:d==d5?sLt:d==Xu?JAt:d==Eh?tLt:Mft)):this.p=new LXt(u(o,148),n,w,this):this.rk()?s?this.Bb&Ku?this.sk()?this.p=new kKt(u(o,26),this,s):this.p=new xvt(u(o,26),this,s):this.sk()?this.p=new xKt(u(o,26),this,s):this.p=new Ent(u(o,26),this,s):this.Bb&Ku?this.sk()?this.p=new vWt(u(o,26),this):this.p=new P2t(u(o,26),this):this.sk()?this.p=new bWt(u(o,26),this):this.p=new unt(u(o,26),this):this.sk()?s?this.Bb&Ku?this.p=new EKt(u(o,26),this,s):this.p=new mvt(u(o,26),this,s):this.Bb&Ku?this.p=new wWt(u(o,26),this):this.p=new F2t(u(o,26),this):s?this.Bb&Ku?this.p=new TKt(u(o,26),this,s):this.p=new yvt(u(o,26),this,s):this.Bb&Ku?this.p=new mWt(u(o,26),this):this.p=new Pj(u(o,26),this)),this.p},l.Ij=function(){return(this.Bb&xf)!=0},l.qk=function(){return!1},l.rk=function(){return!1},l.Jj=function(){return(this.Bb&vd)!=0},l.Oj=function(){return Qrt(this)},l.sk=function(){return!1},l.Kj=function(){return(this.Bb&Ku)!=0},l.tk=function(e){this.k=e},l.Lh=function(e){xrt(this,e)},l.Ib=function(){return pq(this)},l.e=!1,l.n=0,N(Ln,"EStructuralFeatureImpl",449),D(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},Ktt),l._g=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),!!Z4t(this);case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return Fn(),!!(this.Bb&xf);case 11:return Fn(),!!(this.Bb&Ay);case 12:return Fn(),!!(this.Bb&yy);case 13:return this.j;case 14:return v7(this);case 15:return Fn(),!!(this.Bb&Ku);case 16:return Fn(),!!(this.Bb&vd);case 17:return Gm(this);case 18:return Fn(),!!(this.Bb&yc);case 19:return n?pit(this):MJt(this)}return hh(this,e-Jn((ln(),t3)),wn((s=u(Mn(this,16),26),s||t3),e),n,r)},l.lh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return Z4t(this);case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return(this.Bb&xf)==0;case 11:return(this.Bb&Ay)!=0;case 12:return(this.Bb&yy)!=0;case 13:return this.j!=null;case 14:return v7(this)!=null;case 15:return(this.Bb&Ku)!=0;case 16:return(this.Bb&vd)!=0;case 17:return!!Gm(this);case 18:return(this.Bb&yc)!=0;case 19:return!!MJt(this)}return uh(this,e-Jn((ln(),t3)),wn((n=u(Mn(this,16),26),n||t3),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:xrt(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:cHt(this,u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 10:t7(this,Be(Fe(n)));return;case 11:r7(this,Be(Fe(n)));return;case 12:e7(this,Be(Fe(n)));return;case 13:Wbt(this,jr(n));return;case 15:n7(this,Be(Fe(n)));return;case 16:i7(this,Be(Fe(n)));return;case 18:$it(this,Be(Fe(n)));return}bh(this,e-Jn((ln(),t3)),wn((r=u(Mn(this,16),26),r||t3),e),n)},l.zh=function(){return ln(),t3},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),4),tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:this.b=0,ty(this,1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 10:t7(this,!0);return;case 11:r7(this,!1);return;case 12:e7(this,!1);return;case 13:this.i=null,ez(this,null);return;case 15:n7(this,!1);return;case 16:i7(this,!1);return;case 18:$it(this,!1);return}gh(this,e-Jn((ln(),t3)),wn((n=u(Mn(this,16),26),n||t3),e))},l.Gh=function(){pit(this),y8(Mo((Gu(),Sa),this)),Oh(this),this.Bb|=1},l.$j=function(){return Z4t(this)},l.nk=function(e,n){return this.b=0,this.a=null,Gyt(this,e,n)},l.ok=function(e){cHt(this,e)},l.Ib=function(){var e;return this.Db&64?pq(this):(e=new Ah(pq(this)),e.a+=" (iD: ",Cg(e,(this.Bb&yc)!=0),e.a+=")",e.a)},l.b=0,N(Ln,"EAttributeImpl",322),D(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),l.uk=function(e){return e.Tg()==this},l.Qg=function(e){return yst(this,e)},l.Rg=function(e,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=e},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return cw(this);case 4:return this.zj();case 5:return this.F;case 6:return n?zl(this):E8(this);case 7:return!this.A&&(this.A=new $u(pu,this,7)),this.A}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?yst(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,6,r)}return h=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),h.Nj().Qj(this,uu(this),n-Jn(this.zh()),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 6:return Ul(this,null,6,r);case 7:return!this.A&&(this.A=new $u(pu,this,7)),za(this.A,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!cw(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!E8(this);case 7:return!!this.A&&this.A.i!=0}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:p$(this,jr(n));return;case 2:Xet(this,jr(n));return;case 5:E7(this,jr(n));return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A),!this.A&&(this.A=new $u(pu,this,7)),gs(this.A,u(n,14));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),W4e},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,179)&&(u(this.Cb,179).tb=null),tu(this,null);return;case 2:X8(this,null),R8(this,this.D);return;case 5:E7(this,null);return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.yj=function(){var e;return this.G==-1&&(this.G=(e=zl(this),e?$g(e.Mh(),this):-1)),this.G},l.zj=function(){return null},l.Aj=function(){return zl(this)},l.vk=function(){return this.v},l.Bj=function(){return cw(this)},l.Cj=function(){return this.D!=null?this.D:this.B},l.Dj=function(){return this.F},l.wj=function(e){return fat(this,e)},l.wk=function(e){this.v=e},l.xk=function(e){ane(this,e)},l.yk=function(e){this.C=e},l.Lh=function(e){p$(this,e)},l.Ib=function(){return Sz(this)},l.C=null,l.D=null,l.G=-1,N(Ln,"EClassifierImpl",351),D(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},XL),l.uk=function(e){return qQe(this,e.Tg())},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return cw(this);case 4:return null;case 5:return this.F;case 6:return n?zl(this):E8(this);case 7:return!this.A&&(this.A=new $u(pu,this,7)),this.A;case 8:return Fn(),!!(this.Bb&256);case 9:return Fn(),!!(this.Bb&512);case 10:return Po(this);case 11:return!this.q&&(this.q=new he(Yh,this,11,10)),this.q;case 12:return E4(this);case 13:return kC(this);case 14:return kC(this),this.r;case 15:return E4(this),this.k;case 16:return q4t(this);case 17:return vat(this);case 18:return bd(this);case 19:return cq(this);case 20:return E4(this),this.o;case 21:return!this.s&&(this.s=new he(Nu,this,21,17)),this.s;case 22:return Oc(this);case 23:return nat(this)}return hh(this,e-Jn((ln(),Sb)),wn((s=u(Mn(this,16),26),s||Sb),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?yst(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,6,r);case 11:return!this.q&&(this.q=new he(Yh,this,11,10)),eu(this.q,e,r);case 21:return!this.s&&(this.s=new he(Nu,this,21,17)),eu(this.s,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),Sb)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),Sb)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 6:return Ul(this,null,6,r);case 7:return!this.A&&(this.A=new $u(pu,this,7)),za(this.A,e,r);case 11:return!this.q&&(this.q=new he(Yh,this,11,10)),za(this.q,e,r);case 21:return!this.s&&(this.s=new he(Nu,this,21,17)),za(this.s,e,r);case 22:return za(Oc(this),e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Sb)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Sb)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!cw(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!E8(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&Oc(this.u.a).i!=0&&!(this.n&&ust(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return E4(this).i!=0;case 13:return kC(this).i!=0;case 14:return kC(this),this.r.i!=0;case 15:return E4(this),this.k.i!=0;case 16:return q4t(this).i!=0;case 17:return vat(this).i!=0;case 18:return bd(this).i!=0;case 19:return cq(this).i!=0;case 20:return E4(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&ust(this.n);case 23:return nat(this).i!=0}return uh(this,e-Jn((ln(),Sb)),wn((n=u(Mn(this,16),26),n||Sb),e))},l.oh=function(e){var n;return n=this.i==null||this.q&&this.q.i!=0?null:gI(this,e),n||m6t(this,e)},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:p$(this,jr(n));return;case 2:Xet(this,jr(n));return;case 5:E7(this,jr(n));return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A),!this.A&&(this.A=new $u(pu,this,7)),gs(this.A,u(n,14));return;case 8:Wyt(this,Be(Fe(n)));return;case 9:Kyt(this,Be(Fe(n)));return;case 10:_C(Po(this)),gs(Po(this),u(n,14));return;case 11:!this.q&&(this.q=new he(Yh,this,11,10)),Tr(this.q),!this.q&&(this.q=new he(Yh,this,11,10)),gs(this.q,u(n,14));return;case 21:!this.s&&(this.s=new he(Nu,this,21,17)),Tr(this.s),!this.s&&(this.s=new he(Nu,this,21,17)),gs(this.s,u(n,14));return;case 22:Tr(Oc(this)),gs(Oc(this),u(n,14));return}bh(this,e-Jn((ln(),Sb)),wn((r=u(Mn(this,16),26),r||Sb),e),n)},l.zh=function(){return ln(),Sb},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,179)&&(u(this.Cb,179).tb=null),tu(this,null);return;case 2:X8(this,null),R8(this,this.D);return;case 5:E7(this,null);return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A);return;case 8:Wyt(this,!1);return;case 9:Kyt(this,!1);return;case 10:this.u&&_C(this.u);return;case 11:!this.q&&(this.q=new he(Yh,this,11,10)),Tr(this.q);return;case 21:!this.s&&(this.s=new he(Nu,this,21,17)),Tr(this.s);return;case 22:this.n&&Tr(this.n);return}gh(this,e-Jn((ln(),Sb)),wn((n=u(Mn(this,16),26),n||Sb),e))},l.Gh=function(){var e,n;if(E4(this),kC(this),q4t(this),vat(this),bd(this),cq(this),nat(this),R_(stn(hl(this))),this.s)for(e=0,n=this.s.i;e=0;--n)At(this,n);return b3t(this,e)},l.Xj=function(){Tr(this)},l.oi=function(e,n){return Lee(this,e,n)},N(Yi,"EcoreEList",622),D(496,622,Ko,WM),l.ai=function(){return!1},l.aj=function(){return this.c},l.bj=function(){return!1},l.Fk=function(){return!0},l.hi=function(){return!0},l.li=function(e,n){return n},l.ni=function(){return!1},l.c=0,N(Yi,"EObjectEList",496),D(85,496,Ko,Bs),l.bj=function(){return!0},l.Dk=function(){return!1},l.rk=function(){return!0},N(Yi,"EObjectContainmentEList",85),D(545,85,Ko,hj),l.ci=function(){this.b=!0},l.fj=function(){return this.b},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.b,this.b=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.b=!1},l.b=!1,N(Yi,"EObjectContainmentEList/Unsettable",545),D(1140,545,Ko,pYt),l.ii=function(e,n){var r,s;return r=u(tC(this,e,n),87),Sl(this.e)&&Uk(this,new gD(this.a,7,(ln(),K4e),de(n),(s=r.c,_t(s,88)?u(s,26):Qh),e)),r},l.jj=function(e,n){return Wln(this,u(e,87),n)},l.kj=function(e,n){return Uln(this,u(e,87),n)},l.lj=function(e,n,r){return K1n(this,u(e,87),u(n,87),r)},l.Zi=function(e,n,r,s,o){switch(e){case 3:return I_(this,e,n,r,s,this.i>1);case 5:return I_(this,e,n,r,s,this.i-u(r,15).gc()>0);default:return new F0(this.e,e,this.c,n,r,s,!0)}},l.ij=function(){return!0},l.fj=function(){return ust(this)},l.Xj=function(){Tr(this)},N(Ln,"EClassImpl/1",1140),D(1154,1153,S8t),l.ui=function(e){var n,r,s,o,h,d,w;if(r=e.xi(),r!=8){if(s=Mhn(e),s==0)switch(r){case 1:case 9:{w=e.Bi(),w!=null&&(n=hl(u(w,473)),!n.c&&(n.c=new xm),j$(n.c,e.Ai())),d=e.zi(),d!=null&&(o=u(d,473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),Or(n.c,u(e.Ai(),26))));break}case 3:{d=e.zi(),d!=null&&(o=u(d,473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),Or(n.c,u(e.Ai(),26))));break}case 5:{if(d=e.zi(),d!=null)for(h=u(d,14).Kc();h.Ob();)o=u(h.Pb(),473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),Or(n.c,u(e.Ai(),26)));break}case 4:{w=e.Bi(),w!=null&&(o=u(w,473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),j$(n.c,e.Ai())));break}case 6:{if(w=e.Bi(),w!=null)for(h=u(w,14).Kc();h.Ob();)o=u(h.Pb(),473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),j$(n.c,e.Ai()));break}}this.Hk(s)}},l.Hk=function(e){gue(this,e)},l.b=63,N(Ln,"ESuperAdapter",1154),D(1155,1154,S8t,Szt),l.Hk=function(e){hy(this,e)},N(Ln,"EClassImpl/10",1155),D(1144,696,Ko),l.Vh=function(e,n){return Dst(this,e,n)},l.Wh=function(e){return lse(this,e)},l.Xh=function(e,n){zD(this,e,n)},l.Yh=function(e){uD(this,e)},l.pi=function(e){return _mt(this,e)},l.mi=function(e,n){return Xrt(this,e,n)},l.lk=function(e,n){throw nt(new Pr)},l.Zh=function(){return new L6(this)},l.$h=function(){return new PM(this)},l._h=function(e){return CD(this,e)},l.mk=function(e,n){throw nt(new Pr)},l.Wj=function(e){return this},l.fj=function(){return this.i!=0},l.Wb=function(e){throw nt(new Pr)},l.Xj=function(){throw nt(new Pr)},N(Yi,"EcoreEList/UnmodifiableEList",1144),D(319,1144,Ko,H3),l.ni=function(){return!1},N(Yi,"EcoreEList/UnmodifiableEList/FastCompare",319),D(1147,319,Ko,Zne),l.Xc=function(e){var n,r,s;if(_t(e,170)&&(n=u(e,170),r=n.aj(),r!=-1)){for(s=this.i;r4)if(this.wj(e)){if(this.rk()){if(s=u(e,49),r=s.Ug(),w=r==this.b&&(this.Dk()?s.Og(s.Vg(),u(wn(ku(this.b),this.aj()).Yj(),26).Bj())==oo(u(wn(ku(this.b),this.aj()),18)).n:-1-s.Vg()==this.aj()),this.Ek()&&!w&&!r&&s.Zg()){for(o=0;o1||s==-1)):!1},l.Dk=function(){var e,n,r;return n=wn(ku(this.b),this.aj()),_t(n,99)?(e=u(n,18),r=oo(e),!!r):!1},l.Ek=function(){var e,n;return n=wn(ku(this.b),this.aj()),_t(n,99)?(e=u(n,18),(e.Bb&Qa)!=0):!1},l.Xc=function(e){var n,r,s,o;if(s=this.Qi(e),s>=0)return s;if(this.Fk()){for(r=0,o=this.Vi();r=0;--e)EI(this,e,this.Oi(e));return this.Wi()},l.Qc=function(e){var n;if(this.Ek())for(n=this.Vi()-1;n>=0;--n)EI(this,n,this.Oi(n));return this.Xi(e)},l.Xj=function(){_C(this)},l.oi=function(e,n){return dte(this,e,n)},N(Yi,"DelegatingEcoreEList",742),D(1150,742,D8t,MWt),l.Hi=function(e,n){bQe(this,e,u(n,26))},l.Ii=function(e){lXe(this,u(e,26))},l.Oi=function(e){var n,r;return n=u(At(Oc(this.a),e),87),r=n.c,_t(r,88)?u(r,26):(ln(),Qh)},l.Ti=function(e){var n,r;return n=u(dy(Oc(this.a),e),87),r=n.c,_t(r,88)?u(r,26):(ln(),Qh)},l.Ui=function(e,n){return vfn(this,e,u(n,26))},l.ai=function(){return!1},l.Zi=function(e,n,r,s,o){return null},l.Ji=function(){return new Lzt(this)},l.Ki=function(){Tr(Oc(this.a))},l.Li=function(e){return Hre(this,e)},l.Mi=function(e){var n,r;for(r=e.Kc();r.Ob();)if(n=r.Pb(),!Hre(this,n))return!1;return!0},l.Ni=function(e){var n,r,s;if(_t(e,15)&&(s=u(e,15),s.gc()==Oc(this.a).i)){for(n=s.Kc(),r=new nr(this);n.Ob();)if(Gt(n.Pb())!==Gt(dr(r)))return!1;return!0}return!1},l.Pi=function(){var e,n,r,s,o;for(r=1,n=new nr(Oc(this.a));n.e!=n.i.gc();)e=u(dr(n),87),s=(o=e.c,_t(o,88)?u(o,26):(ln(),Qh)),r=31*r+(s?Dv(s):0);return r},l.Qi=function(e){var n,r,s,o;for(s=0,r=new nr(Oc(this.a));r.e!=r.i.gc();){if(n=u(dr(r),87),Gt(e)===Gt((o=n.c,_t(o,88)?u(o,26):(ln(),Qh))))return s;++s}return-1},l.Ri=function(){return Oc(this.a).i==0},l.Si=function(){return null},l.Vi=function(){return Oc(this.a).i},l.Wi=function(){var e,n,r,s,o,h;for(h=Oc(this.a).i,o=Nt(Qn,Me,1,h,5,1),r=0,n=new nr(Oc(this.a));n.e!=n.i.gc();)e=u(dr(n),87),o[r++]=(s=e.c,_t(s,88)?u(s,26):(ln(),Qh));return o},l.Xi=function(e){var n,r,s,o,h,d,w;for(w=Oc(this.a).i,e.lengthw&&ls(e,w,null),s=0,r=new nr(Oc(this.a));r.e!=r.i.gc();)n=u(dr(r),87),h=(d=n.c,_t(d,88)?u(d,26):(ln(),Qh)),ls(e,s++,h);return e},l.Yi=function(){var e,n,r,s,o;for(o=new _g,o.a+="[",e=Oc(this.a),n=0,s=Oc(this.a).i;n>16,o>=0?yst(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,6,r);case 9:return!this.a&&(this.a=new he(eg,this,9,5)),eu(this.a,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),Ab)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),Ab)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 6:return Ul(this,null,6,r);case 7:return!this.A&&(this.A=new $u(pu,this,7)),za(this.A,e,r);case 9:return!this.a&&(this.a=new he(eg,this,9,5)),za(this.a,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Ab)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Ab)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!cw(this);case 4:return!!Oyt(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!E8(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return uh(this,e-Jn((ln(),Ab)),wn((n=u(Mn(this,16),26),n||Ab),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:p$(this,jr(n));return;case 2:Xet(this,jr(n));return;case 5:E7(this,jr(n));return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A),!this.A&&(this.A=new $u(pu,this,7)),gs(this.A,u(n,14));return;case 8:xz(this,Be(Fe(n)));return;case 9:!this.a&&(this.a=new he(eg,this,9,5)),Tr(this.a),!this.a&&(this.a=new he(eg,this,9,5)),gs(this.a,u(n,14));return}bh(this,e-Jn((ln(),Ab)),wn((r=u(Mn(this,16),26),r||Ab),e),n)},l.zh=function(){return ln(),Ab},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,179)&&(u(this.Cb,179).tb=null),tu(this,null);return;case 2:X8(this,null),R8(this,this.D);return;case 5:E7(this,null);return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A);return;case 8:xz(this,!0);return;case 9:!this.a&&(this.a=new he(eg,this,9,5)),Tr(this.a);return}gh(this,e-Jn((ln(),Ab)),wn((n=u(Mn(this,16),26),n||Ab),e))},l.Gh=function(){var e,n;if(this.a)for(e=0,n=this.a.i;e>16==5?u(this.Cb,671):null}return hh(this,e-Jn((ln(),ip)),wn((s=u(Mn(this,16),26),s||ip),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 5:return this.Cb&&(r=(o=this.Db>>16,o>=0?Pse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,5,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),ip)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),ip)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 5:return Ul(this,null,5,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),ip)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),ip)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&u(this.Cb,671))}return uh(this,e-Jn((ln(),ip)),wn((n=u(Mn(this,16),26),n||ip),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:nit(this,u(n,19).a);return;case 3:Moe(this,u(n,1940));return;case 4:iit(this,jr(n));return}bh(this,e-Jn((ln(),ip)),wn((r=u(Mn(this,16),26),r||ip),e),n)},l.zh=function(){return ln(),ip},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:nit(this,0);return;case 3:Moe(this,null);return;case 4:iit(this,null);return}gh(this,e-Jn((ln(),ip)),wn((n=u(Mn(this,16),26),n||ip),e))},l.Ib=function(){var e;return e=this.c,e??this.zb},l.b=null,l.c=null,l.d=0,N(Ln,"EEnumLiteralImpl",573);var k6n=as(Ln,"EFactoryImpl/InternalEDateTimeFormat");D(489,1,{2015:1},oM),N(Ln,"EFactoryImpl/1ClientInternalEDateTimeFormat",489),D(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},wv),l.Sg=function(e,n,r){var s;return r=Ul(this,e,n,r),this.e&&_t(e,170)&&(s=oq(this,this.e),s!=this.c&&(r=T7(this,s,r))),r},l._g=function(e,n,r){var s;switch(e){case 0:return this.f;case 1:return!this.d&&(this.d=new Bs(wo,this,1)),this.d;case 2:return n?wq(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?fst(this):this.a}return hh(this,e-Jn((ln(),qw)),wn((s=u(Mn(this,16),26),s||qw),e),n,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return Ore(this,null,r);case 1:return!this.d&&(this.d=new Bs(wo,this,1)),za(this.d,e,r);case 3:return Ire(this,null,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),qw)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),qw)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return uh(this,e-Jn((ln(),qw)),wn((n=u(Mn(this,16),26),n||qw),e))},l.sh=function(e,n){var r;switch(e){case 0:Jse(this,u(n,87));return;case 1:!this.d&&(this.d=new Bs(wo,this,1)),Tr(this.d),!this.d&&(this.d=new Bs(wo,this,1)),gs(this.d,u(n,14));return;case 3:f4t(this,u(n,87));return;case 4:L4t(this,u(n,836));return;case 5:O8(this,u(n,138));return}bh(this,e-Jn((ln(),qw)),wn((r=u(Mn(this,16),26),r||qw),e),n)},l.zh=function(){return ln(),qw},l.Bh=function(e){var n;switch(e){case 0:Jse(this,null);return;case 1:!this.d&&(this.d=new Bs(wo,this,1)),Tr(this.d);return;case 3:f4t(this,null);return;case 4:L4t(this,null);return;case 5:O8(this,null);return}gh(this,e-Jn((ln(),qw)),wn((n=u(Mn(this,16),26),n||qw),e))},l.Ib=function(){var e;return e=new Fl(mf(this)),e.a+=" (expression: ",xat(this,e),e.a+=")",e.a};var QAt;N(Ln,"EGenericTypeImpl",241),D(1969,1964,_H),l.Xh=function(e,n){SWt(this,e,n)},l.lk=function(e,n){return SWt(this,this.gc(),e),n},l.pi=function(e){return e1(this.Gi(),e)},l.Zh=function(){return this.$h()},l.Gi=function(){return new Ozt(this)},l.$h=function(){return this._h(0)},l._h=function(e){return this.Gi().Zc(e)},l.mk=function(e,n){return ry(this,e,!0),n},l.ii=function(e,n){var r,s;return s=kst(this,n),r=this.Zc(e),r.Rb(s),s},l.ji=function(e,n){var r;ry(this,n,!0),r=this.Zc(e),r.Rb(n)},N(Yi,"AbstractSequentialInternalEList",1969),D(486,1969,_H,NM),l.pi=function(e){return e1(this.Gi(),e)},l.Zh=function(){return this.b==null?(Sg(),Sg(),hN):this.Jk()},l.Gi=function(){return new ZGt(this.a,this.b)},l.$h=function(){return this.b==null?(Sg(),Sg(),hN):this.Jk()},l._h=function(e){var n,r;if(this.b==null){if(e<0||e>1)throw nt(new Co(XC+e+", size=0"));return Sg(),Sg(),hN}for(r=this.Jk(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.Gj()!=LE||n.aj()!=0)&&(!this.Mk()||this.b.mh(n))){if(h=this.b.bh(n,this.Lk()),this.f=(so(),u(n,66).Oj()),this.f||n.$j()){if(this.Lk()?(s=u(h,15),this.k=s):(s=u(h,69),this.k=this.j=s),_t(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?Gae(this,this.p):roe(this))return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(e=u(o,72),e.ak(),r=e.dd(),this.i=r):(r=o,this.i=r),this.g=-3,!0}else if(h!=null)return this.k=null,this.p=null,r=h,this.i=r,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(e=u(o,72),e.ak(),r=e.dd(),this.i=r):(r=o,this.i=r),this.g=-3,!0}},l.Pb=function(){return hz(this)},l.Tb=function(){return this.a},l.Ub=function(){var e;if(this.g<-1||this.Sb())return--this.a,this.g=0,e=this.i,this.Sb(),e;throw nt(new vc)},l.Vb=function(){return this.a-1},l.Qb=function(){throw nt(new Pr)},l.Lk=function(){return!1},l.Wb=function(e){throw nt(new Pr)},l.Mk=function(){return!0},l.a=0,l.d=0,l.f=!1,l.g=0,l.n=0,l.o=0;var hN;N(Yi,"EContentsEList/FeatureIteratorImpl",279),D(697,279,CH,N2t),l.Lk=function(){return!0},N(Yi,"EContentsEList/ResolvingFeatureIteratorImpl",697),D(1157,697,CH,pWt),l.Mk=function(){return!1},N(Ln,"ENamedElementImpl/1/1",1157),D(1158,279,CH,gWt),l.Mk=function(){return!1},N(Ln,"ENamedElementImpl/1/2",1158),D(36,143,QI,Km,Lrt,oa,Vrt,F0,bf,Rmt,HQt,jmt,VQt,umt,GQt,qmt,UQt,lmt,WQt,$mt,KQt,__,gD,ort,zmt,YQt,hmt,XQt),l._i=function(){return kmt(this)},l.gj=function(){var e;return e=kmt(this),e?e.zj():null},l.yi=function(e){return this.b==-1&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,e)},l.Ai=function(){return this.c},l.hj=function(){var e;return e=kmt(this),e?e.Kj():!1},l.b=-1,N(Ln,"ENotificationImpl",36),D(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},Ytt),l.Qg=function(e){return Rse(this,e)},l._g=function(e,n,r){var s,o,h;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),h=this.t,h>1||h==-1;case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?u(this.Cb,26):null;case 11:return!this.d&&(this.d=new $u(pu,this,11)),this.d;case 12:return!this.c&&(this.c=new he(zw,this,12,10)),this.c;case 13:return!this.a&&(this.a=new $M(this,this)),this.a;case 14:return fl(this)}return hh(this,e-Jn((ln(),sp)),wn((s=u(Mn(this,16),26),s||sp),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 10:return this.Cb&&(r=(o=this.Db>>16,o>=0?Rse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,10,r);case 12:return!this.c&&(this.c=new he(zw,this,12,10)),eu(this.c,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),sp)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),sp)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r);case 10:return Ul(this,null,10,r);case 11:return!this.d&&(this.d=new $u(pu,this,11)),za(this.d,e,r);case 12:return!this.c&&(this.c=new he(zw,this,12,10)),za(this.c,e,r);case 14:return za(fl(this),e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),sp)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),sp)),e,r)},l.lh=function(e){var n,r,s;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return s=this.t,s>1||s==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return!!(this.Db>>16==10&&u(this.Cb,26));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&fl(this.a.a).i!=0&&!(this.b&&lst(this.b));case 14:return!!this.b&&lst(this.b)}return uh(this,e-Jn((ln(),sp)),wn((n=u(Mn(this,16),26),n||sp),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:ty(this,u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 11:!this.d&&(this.d=new $u(pu,this,11)),Tr(this.d),!this.d&&(this.d=new $u(pu,this,11)),gs(this.d,u(n,14));return;case 12:!this.c&&(this.c=new he(zw,this,12,10)),Tr(this.c),!this.c&&(this.c=new he(zw,this,12,10)),gs(this.c,u(n,14));return;case 13:!this.a&&(this.a=new $M(this,this)),_C(this.a),!this.a&&(this.a=new $M(this,this)),gs(this.a,u(n,14));return;case 14:Tr(fl(this)),gs(fl(this),u(n,14));return}bh(this,e-Jn((ln(),sp)),wn((r=u(Mn(this,16),26),r||sp),e),n)},l.zh=function(){return ln(),sp},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:ty(this,1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 11:!this.d&&(this.d=new $u(pu,this,11)),Tr(this.d);return;case 12:!this.c&&(this.c=new he(zw,this,12,10)),Tr(this.c);return;case 13:this.a&&_C(this.a);return;case 14:this.b&&Tr(this.b);return}gh(this,e-Jn((ln(),sp)),wn((n=u(Mn(this,16),26),n||sp),e))},l.Gh=function(){var e,n;if(this.c)for(e=0,n=this.c.i;ew&&ls(e,w,null),s=0,r=new nr(fl(this.a));r.e!=r.i.gc();)n=u(dr(r),87),h=(d=n.c,d||(ln(),K1)),ls(e,s++,h);return e},l.Yi=function(){var e,n,r,s,o;for(o=new _g,o.a+="[",e=fl(this.a),n=0,s=fl(this.a).i;n1);case 5:return I_(this,e,n,r,s,this.i-u(r,15).gc()>0);default:return new F0(this.e,e,this.c,n,r,s,!0)}},l.ij=function(){return!0},l.fj=function(){return lst(this)},l.Xj=function(){Tr(this)},N(Ln,"EOperationImpl/2",1341),D(498,1,{1938:1,498:1},IGt),N(Ln,"EPackageImpl/1",498),D(16,85,Ko,he),l.zk=function(){return this.d},l.Ak=function(){return this.b},l.Dk=function(){return!0},l.b=0,N(Yi,"EObjectContainmentWithInverseEList",16),D(353,16,Ko,M6),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentWithInverseEList/Resolving",353),D(298,353,Ko,qm),l.ci=function(){this.a.tb=null},N(Ln,"EPackageImpl/2",298),D(1228,1,{},tB),N(Ln,"EPackageImpl/3",1228),D(718,43,S4,Fpt),l._b=function(e){return ha(e)?crt(this,e):!!Fo(this.f,e)},N(Ln,"EPackageRegistryImpl",718),D(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},Xtt),l.Qg=function(e){return jse(this,e)},l._g=function(e,n,r){var s,o,h;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),h=this.t,h>1||h==-1;case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?u(this.Cb,59):null}return hh(this,e-Jn((ln(),e3)),wn((s=u(Mn(this,16),26),s||e3),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 10:return this.Cb&&(r=(o=this.Db>>16,o>=0?jse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,10,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),e3)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),e3)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r);case 10:return Ul(this,null,10,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),e3)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),e3)),e,r)},l.lh=function(e){var n,r,s;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return s=this.t,s>1||s==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return!!(this.Db>>16==10&&u(this.Cb,59))}return uh(this,e-Jn((ln(),e3)),wn((n=u(Mn(this,16),26),n||e3),e))},l.zh=function(){return ln(),e3},N(Ln,"EParameterImpl",509),D(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},j2t),l._g=function(e,n,r){var s,o,h,d;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),d=this.t,d>1||d==-1;case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return Fn(),!!(this.Bb&xf);case 11:return Fn(),!!(this.Bb&Ay);case 12:return Fn(),!!(this.Bb&yy);case 13:return this.j;case 14:return v7(this);case 15:return Fn(),!!(this.Bb&Ku);case 16:return Fn(),!!(this.Bb&vd);case 17:return Gm(this);case 18:return Fn(),!!(this.Bb&yc);case 19:return Fn(),h=oo(this),!!(h&&h.Bb&yc);case 20:return Fn(),!!(this.Bb&Qa);case 21:return n?oo(this):this.b;case 22:return n?kyt(this):wJt(this);case 23:return!this.a&&(this.a=new W3(Zy,this,23)),this.a}return hh(this,e-Jn((ln(),u5)),wn((s=u(Mn(this,16),26),s||u5),e),n,r)},l.lh=function(e){var n,r,s,o;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return(this.Bb&xf)==0;case 11:return(this.Bb&Ay)!=0;case 12:return(this.Bb&yy)!=0;case 13:return this.j!=null;case 14:return v7(this)!=null;case 15:return(this.Bb&Ku)!=0;case 16:return(this.Bb&vd)!=0;case 17:return!!Gm(this);case 18:return(this.Bb&yc)!=0;case 19:return s=oo(this),!!s&&(s.Bb&yc)!=0;case 20:return(this.Bb&Qa)==0;case 21:return!!this.b;case 22:return!!wJt(this);case 23:return!!this.a&&this.a.i!=0}return uh(this,e-Jn((ln(),u5)),wn((n=u(Mn(this,16),26),n||u5),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:xrt(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:ty(this,u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 10:t7(this,Be(Fe(n)));return;case 11:r7(this,Be(Fe(n)));return;case 12:e7(this,Be(Fe(n)));return;case 13:Wbt(this,jr(n));return;case 15:n7(this,Be(Fe(n)));return;case 16:i7(this,Be(Fe(n)));return;case 18:krn(this,Be(Fe(n)));return;case 20:Jyt(this,Be(Fe(n)));return;case 21:Zmt(this,u(n,18));return;case 23:!this.a&&(this.a=new W3(Zy,this,23)),Tr(this.a),!this.a&&(this.a=new W3(Zy,this,23)),gs(this.a,u(n,14));return}bh(this,e-Jn((ln(),u5)),wn((r=u(Mn(this,16),26),r||u5),e),n)},l.zh=function(){return ln(),u5},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),4),tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:ty(this,1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 10:t7(this,!0);return;case 11:r7(this,!1);return;case 12:e7(this,!1);return;case 13:this.i=null,ez(this,null);return;case 15:n7(this,!1);return;case 16:i7(this,!1);return;case 18:Zyt(this,!1),_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),2);return;case 20:Jyt(this,!0);return;case 21:Zmt(this,null);return;case 23:!this.a&&(this.a=new W3(Zy,this,23)),Tr(this.a);return}gh(this,e-Jn((ln(),u5)),wn((n=u(Mn(this,16),26),n||u5),e))},l.Gh=function(){kyt(this),y8(Mo((Gu(),Sa),this)),Oh(this),this.Bb|=1},l.Lj=function(){return oo(this)},l.qk=function(){var e;return e=oo(this),!!e&&(e.Bb&yc)!=0},l.rk=function(){return(this.Bb&yc)!=0},l.sk=function(){return(this.Bb&Qa)!=0},l.nk=function(e,n){return this.c=null,Gyt(this,e,n)},l.Ib=function(){var e;return this.Db&64?pq(this):(e=new Ah(pq(this)),e.a+=" (containment: ",Cg(e,(this.Bb&yc)!=0),e.a+=", resolveProxies: ",Cg(e,(this.Bb&Qa)!=0),e.a+=")",e.a)},N(Ln,"EReferenceImpl",99),D(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},YZ),l.Fb=function(e){return this===e},l.cd=function(){return this.b},l.dd=function(){return this.c},l.Hb=function(){return Dv(this)},l.Uh=function(e){Stn(this,jr(e))},l.ed=function(e){return ptn(this,jr(e))},l._g=function(e,n,r){var s;switch(e){case 0:return this.b;case 1:return this.c}return hh(this,e-Jn((ln(),Ja)),wn((s=u(Mn(this,16),26),s||Ja),e),n,r)},l.lh=function(e){var n;switch(e){case 0:return this.b!=null;case 1:return this.c!=null}return uh(this,e-Jn((ln(),Ja)),wn((n=u(Mn(this,16),26),n||Ja),e))},l.sh=function(e,n){var r;switch(e){case 0:Atn(this,jr(n));return;case 1:Ymt(this,jr(n));return}bh(this,e-Jn((ln(),Ja)),wn((r=u(Mn(this,16),26),r||Ja),e),n)},l.zh=function(){return ln(),Ja},l.Bh=function(e){var n;switch(e){case 0:Kmt(this,null);return;case 1:Ymt(this,null);return}gh(this,e-Jn((ln(),Ja)),wn((n=u(Mn(this,16),26),n||Ja),e))},l.Sh=function(){var e;return this.a==-1&&(e=this.b,this.a=e==null?0:zg(e)),this.a},l.Th=function(e){this.a=e},l.Ib=function(){var e;return this.Db&64?mf(this):(e=new Ah(mf(this)),e.a+=" (key: ",yo(e,this.b),e.a+=", value: ",yo(e,this.c),e.a+=")",e.a)},l.a=-1,l.b=null,l.c=null;var pc=N(Ln,"EStringToStringMapEntryImpl",548),i5e=as(Yi,"FeatureMap/Entry/Internal");D(565,1,SH),l.Ok=function(e){return this.Pk(u(e,49))},l.Pk=function(e){return this.Ok(e)},l.Fb=function(e){var n,r;return this===e?!0:_t(e,72)?(n=u(e,72),n.ak()==this.c?(r=this.dd(),r==null?n.dd()==null:Si(r,n.dd())):!1):!1},l.ak=function(){return this.c},l.Hb=function(){var e;return e=this.dd(),Ji(this.c)^(e==null?0:Ji(e))},l.Ib=function(){var e,n;return e=this.c,n=zl(e.Hj()).Ph(),e.ne(),(n!=null&&n.length!=0?n+":"+e.ne():e.ne())+"="+this.dd()},N(Ln,"EStructuralFeatureImpl/BasicFeatureMapEntry",565),D(776,565,SH,K2t),l.Pk=function(e){return new K2t(this.c,e)},l.dd=function(){return this.a},l.Qk=function(e,n,r){return Von(this,e,this.a,n,r)},l.Rk=function(e,n,r){return Gon(this,e,this.a,n,r)},N(Ln,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776),D(1314,1,{},OGt),l.Pj=function(e,n,r,s,o){var h;return h=u(L8(e,this.b),215),h.nl(this.a).Wj(s)},l.Qj=function(e,n,r,s,o){var h;return h=u(L8(e,this.b),215),h.el(this.a,s,o)},l.Rj=function(e,n,r,s,o){var h;return h=u(L8(e,this.b),215),h.fl(this.a,s,o)},l.Sj=function(e,n,r){var s;return s=u(L8(e,this.b),215),s.nl(this.a).fj()},l.Tj=function(e,n,r,s){var o;o=u(L8(e,this.b),215),o.nl(this.a).Wb(s)},l.Uj=function(e,n,r){return u(L8(e,this.b),215).nl(this.a)},l.Vj=function(e,n,r){var s;s=u(L8(e,this.b),215),s.nl(this.a).Xj()},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314),D(89,1,{},Lg,t2,Dg,r2),l.Pj=function(e,n,r,s,o){var h;if(h=n.Ch(r),h==null&&n.Dh(r,h=Aq(this,e)),!o)switch(this.e){case 50:case 41:return u(h,589).sj();case 40:return u(h,215).kl()}return h},l.Qj=function(e,n,r,s,o){var h,d;return d=n.Ch(r),d==null&&n.Dh(r,d=Aq(this,e)),h=u(d,69).lk(s,o),h},l.Rj=function(e,n,r,s,o){var h;return h=n.Ch(r),h!=null&&(o=u(h,69).mk(s,o)),o},l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null&&u(s,76).fj()},l.Tj=function(e,n,r,s){var o;o=u(n.Ch(r),76),!o&&n.Dh(r,o=Aq(this,e)),o.Wb(s)},l.Uj=function(e,n,r){var s,o;return o=n.Ch(r),o==null&&n.Dh(r,o=Aq(this,e)),_t(o,76)?u(o,76):(s=u(n.Ch(r),15),new Izt(s))},l.Vj=function(e,n,r){var s;s=u(n.Ch(r),76),!s&&n.Dh(r,s=Aq(this,e)),s.Xj()},l.b=0,l.e=0,N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateMany",89),D(504,1,{}),l.Qj=function(e,n,r,s,o){throw nt(new Pr)},l.Rj=function(e,n,r,s,o){throw nt(new Pr)},l.Uj=function(e,n,r){return new AXt(this,e,n,r)};var f0;N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504),D(1331,1,nut,AXt),l.Wj=function(e){return this.a.Pj(this.c,this.d,this.b,e,!0)},l.fj=function(){return this.a.Sj(this.c,this.d,this.b)},l.Wb=function(e){this.a.Tj(this.c,this.d,this.b,e)},l.Xj=function(){this.a.Vj(this.c,this.d,this.b)},l.b=0,N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331),D(769,504,{},Mwt),l.Pj=function(e,n,r,s,o){return cat(e,e.eh(),e.Vg())==this.b?this.sk()&&s?Ust(e):e.eh():null},l.Qj=function(e,n,r,s,o){var h,d;return e.eh()&&(o=(h=e.Vg(),h>=0?e.Qg(o):e.eh().ih(e,-1-h,null,o))),d=es(e.Tg(),this.e),e.Sg(s,d,o)},l.Rj=function(e,n,r,s,o){var h;return h=es(e.Tg(),this.e),e.Sg(null,h,o)},l.Sj=function(e,n,r){var s;return s=es(e.Tg(),this.e),!!e.eh()&&e.Vg()==s},l.Tj=function(e,n,r,s){var o,h,d,w,k;if(s!=null&&!fat(this.a,s))throw nt(new Kk(AH+(_t(s,56)?l4t(u(s,56).Tg()):Nmt(dl(s)))+LH+this.a+"'"));if(o=e.eh(),d=es(e.Tg(),this.e),Gt(s)!==Gt(o)||e.Vg()!=d&&s!=null){if(c7(e,u(s,56)))throw nt(new Pn(KC+e.Ib()));k=null,o&&(k=(h=e.Vg(),h>=0?e.Qg(k):e.eh().ih(e,-1-h,null,k))),w=u(s,49),w&&(k=w.gh(e,es(w.Tg(),this.b),null,k)),k=e.Sg(w,d,k),k&&k.Fi()}else e.Lg()&&e.Mg()&&Ci(e,new oa(e,1,d,s,s))},l.Vj=function(e,n,r){var s,o,h,d;s=e.eh(),s?(d=(o=e.Vg(),o>=0?e.Qg(null):e.eh().ih(e,-1-o,null,null)),h=es(e.Tg(),this.e),d=e.Sg(null,h,d),d&&d.Fi()):e.Lg()&&e.Mg()&&Ci(e,new __(e,1,this.e,null,null))},l.sk=function(){return!1},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769),D(1315,769,{},yKt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315),D(563,504,{}),l.Pj=function(e,n,r,s,o){var h;return h=n.Ch(r),h==null?this.b:Gt(h)===Gt(f0)?null:h},l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null&&(Gt(s)===Gt(f0)||!Si(s,this.b))},l.Tj=function(e,n,r,s){var o,h;e.Lg()&&e.Mg()?(o=(h=n.Ch(r),h==null?this.b:Gt(h)===Gt(f0)?null:h),s==null?this.c!=null?(n.Dh(r,null),s=this.b):this.b!=null?n.Dh(r,f0):n.Dh(r,null):(this.Sk(s),n.Dh(r,s)),Ci(e,this.d.Tk(e,1,this.e,o,s))):s==null?this.c!=null?n.Dh(r,null):this.b!=null?n.Dh(r,f0):n.Dh(r,null):(this.Sk(s),n.Dh(r,s))},l.Vj=function(e,n,r){var s,o;e.Lg()&&e.Mg()?(s=(o=n.Ch(r),o==null?this.b:Gt(o)===Gt(f0)?null:o),n.Eh(r),Ci(e,this.d.Tk(e,1,this.e,s,this.b))):n.Eh(r)},l.Sk=function(e){throw nt(new qzt)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563),D(B4,1,{},eB),l.Tk=function(e,n,r,s,o){return new __(e,n,r,s,o)},l.Uk=function(e,n,r,s,o,h){return new ort(e,n,r,s,o,h)};var ZAt,JAt,tLt,eLt,nLt,rLt,iLt,Mft,sLt;N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",B4),D(1332,B4,{},nB),l.Tk=function(e,n,r,s,o){return new hmt(e,n,r,Be(Fe(s)),Be(Fe(o)))},l.Uk=function(e,n,r,s,o,h){return new XQt(e,n,r,Be(Fe(s)),Be(Fe(o)),h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332),D(1333,B4,{},rB),l.Tk=function(e,n,r,s,o){return new Rmt(e,n,r,u(s,217).a,u(o,217).a)},l.Uk=function(e,n,r,s,o,h){return new HQt(e,n,r,u(s,217).a,u(o,217).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333),D(1334,B4,{},Ck),l.Tk=function(e,n,r,s,o){return new jmt(e,n,r,u(s,172).a,u(o,172).a)},l.Uk=function(e,n,r,s,o,h){return new VQt(e,n,r,u(s,172).a,u(o,172).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334),D(1335,B4,{},iB),l.Tk=function(e,n,r,s,o){return new umt(e,n,r,Zt(ve(s)),Zt(ve(o)))},l.Uk=function(e,n,r,s,o,h){return new GQt(e,n,r,Zt(ve(s)),Zt(ve(o)),h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335),D(1336,B4,{},sB),l.Tk=function(e,n,r,s,o){return new qmt(e,n,r,u(s,155).a,u(o,155).a)},l.Uk=function(e,n,r,s,o,h){return new UQt(e,n,r,u(s,155).a,u(o,155).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336),D(1337,B4,{},XZ),l.Tk=function(e,n,r,s,o){return new lmt(e,n,r,u(s,19).a,u(o,19).a)},l.Uk=function(e,n,r,s,o,h){return new WQt(e,n,r,u(s,19).a,u(o,19).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337),D(1338,B4,{},Sk),l.Tk=function(e,n,r,s,o){return new $mt(e,n,r,u(s,162).a,u(o,162).a)},l.Uk=function(e,n,r,s,o,h){return new KQt(e,n,r,u(s,162).a,u(o,162).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338),D(1339,B4,{},Ak),l.Tk=function(e,n,r,s,o){return new zmt(e,n,r,u(s,184).a,u(o,184).a)},l.Uk=function(e,n,r,s,o,h){return new YQt(e,n,r,u(s,184).a,u(o,184).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339),D(1317,563,{},LXt),l.Sk=function(e){if(!this.a.wj(e))throw nt(new Kk(AH+dl(e)+LH+this.a+"'"))},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317),D(1318,563,{},vYt),l.Sk=function(e){},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318),D(770,563,{}),l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null},l.Tj=function(e,n,r,s){var o,h;e.Lg()&&e.Mg()?(o=!0,h=n.Ch(r),h==null?(o=!1,h=this.b):Gt(h)===Gt(f0)&&(h=null),s==null?this.c!=null?(n.Dh(r,null),s=this.b):n.Dh(r,f0):(this.Sk(s),n.Dh(r,s)),Ci(e,this.d.Uk(e,1,this.e,h,s,!o))):s==null?this.c!=null?n.Dh(r,null):n.Dh(r,f0):(this.Sk(s),n.Dh(r,s))},l.Vj=function(e,n,r){var s,o;e.Lg()&&e.Mg()?(s=!0,o=n.Ch(r),o==null?(s=!1,o=this.b):Gt(o)===Gt(f0)&&(o=null),n.Eh(r),Ci(e,this.d.Uk(e,2,this.e,o,this.b,s))):n.Eh(r)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770),D(1319,770,{},MXt),l.Sk=function(e){if(!this.a.wj(e))throw nt(new Kk(AH+dl(e)+LH+this.a+"'"))},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319),D(1320,770,{},wYt),l.Sk=function(e){},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320),D(398,504,{},Pj),l.Pj=function(e,n,r,s,o){var h,d,w,k,_;if(_=n.Ch(r),this.Kj()&&Gt(_)===Gt(f0))return null;if(this.sk()&&s&&_!=null){if(w=u(_,49),w.kh()&&(k=Xp(e,w),w!=k)){if(!fat(this.a,k))throw nt(new Kk(AH+dl(k)+LH+this.a+"'"));n.Dh(r,_=k),this.rk()&&(h=u(k,49),d=w.ih(e,this.b?es(w.Tg(),this.b):-1-es(e.Tg(),this.e),null,null),!h.eh()&&(d=h.gh(e,this.b?es(h.Tg(),this.b):-1-es(e.Tg(),this.e),null,d)),d&&d.Fi()),e.Lg()&&e.Mg()&&Ci(e,new __(e,9,this.e,w,k))}return _}else return _},l.Qj=function(e,n,r,s,o){var h,d;return d=n.Ch(r),Gt(d)===Gt(f0)&&(d=null),n.Dh(r,s),this.bj()?Gt(d)!==Gt(s)&&d!=null&&(h=u(d,49),o=h.ih(e,es(h.Tg(),this.b),null,o)):this.rk()&&d!=null&&(o=u(d,49).ih(e,-1-es(e.Tg(),this.e),null,o)),e.Lg()&&e.Mg()&&(!o&&(o=new Lp(4)),o.Ei(new __(e,1,this.e,d,s))),o},l.Rj=function(e,n,r,s,o){var h;return h=n.Ch(r),Gt(h)===Gt(f0)&&(h=null),n.Eh(r),e.Lg()&&e.Mg()&&(!o&&(o=new Lp(4)),this.Kj()?o.Ei(new __(e,2,this.e,h,null)):o.Ei(new __(e,1,this.e,h,null))),o},l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null},l.Tj=function(e,n,r,s){var o,h,d,w,k;if(s!=null&&!fat(this.a,s))throw nt(new Kk(AH+(_t(s,56)?l4t(u(s,56).Tg()):Nmt(dl(s)))+LH+this.a+"'"));k=n.Ch(r),w=k!=null,this.Kj()&&Gt(k)===Gt(f0)&&(k=null),d=null,this.bj()?Gt(k)!==Gt(s)&&(k!=null&&(o=u(k,49),d=o.ih(e,es(o.Tg(),this.b),null,d)),s!=null&&(o=u(s,49),d=o.gh(e,es(o.Tg(),this.b),null,d))):this.rk()&&Gt(k)!==Gt(s)&&(k!=null&&(d=u(k,49).ih(e,-1-es(e.Tg(),this.e),null,d)),s!=null&&(d=u(s,49).gh(e,-1-es(e.Tg(),this.e),null,d))),s==null&&this.Kj()?n.Dh(r,f0):n.Dh(r,s),e.Lg()&&e.Mg()?(h=new ort(e,1,this.e,k,s,this.Kj()&&!w),d?(d.Ei(h),d.Fi()):Ci(e,h)):d&&d.Fi()},l.Vj=function(e,n,r){var s,o,h,d,w;w=n.Ch(r),d=w!=null,this.Kj()&&Gt(w)===Gt(f0)&&(w=null),h=null,w!=null&&(this.bj()?(s=u(w,49),h=s.ih(e,es(s.Tg(),this.b),null,h)):this.rk()&&(h=u(w,49).ih(e,-1-es(e.Tg(),this.e),null,h))),n.Eh(r),e.Lg()&&e.Mg()?(o=new ort(e,this.Kj()?2:1,this.e,w,null,d),h?(h.Ei(o),h.Fi()):Ci(e,o)):h&&h.Fi()},l.bj=function(){return!1},l.rk=function(){return!1},l.sk=function(){return!1},l.Kj=function(){return!1},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398),D(564,398,{},unt),l.rk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564),D(1323,564,{},bWt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323),D(772,564,{},P2t),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772),D(1325,772,{},vWt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325),D(640,564,{},Ent),l.bj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640),D(1324,640,{},xKt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324),D(773,640,{},xvt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773),D(1326,773,{},kKt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326),D(641,398,{},F2t),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641),D(1327,641,{},wWt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327),D(774,641,{},mvt),l.bj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774),D(1328,774,{},EKt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328),D(1321,398,{},mWt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321),D(771,398,{},yvt),l.bj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771),D(1322,771,{},TKt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322),D(775,565,SH,bwt),l.Pk=function(e){return new bwt(this.a,this.c,e)},l.dd=function(){return this.b},l.Qk=function(e,n,r){return Gsn(this,e,this.b,r)},l.Rk=function(e,n,r){return Usn(this,e,this.b,r)},N(Ln,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775),D(1329,1,nut,Izt),l.Wj=function(e){return this.a},l.fj=function(){return _t(this.a,95)?u(this.a,95).fj():!this.a.dc()},l.Wb=function(e){this.a.$b(),this.a.Gc(u(e,15))},l.Xj=function(){_t(this.a,95)?u(this.a,95).Xj():this.a.$b()},N(Ln,"EStructuralFeatureImpl/SettingMany",1329),D(1330,565,SH,RZt),l.Ok=function(e){return new fnt(($i(),uA),this.b.Ih(this.a,e))},l.dd=function(){return null},l.Qk=function(e,n,r){return r},l.Rk=function(e,n,r){return r},N(Ln,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330),D(642,565,SH,fnt),l.Ok=function(e){return new fnt(this.c,e)},l.dd=function(){return this.a},l.Qk=function(e,n,r){return r},l.Rk=function(e,n,r){return r},N(Ln,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642),D(391,497,Sd,xm),l.ri=function(e){return Nt(Kh,Me,26,e,0,1)},l.ni=function(){return!1},N(Ln,"ESuperAdapter/1",391),D(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},RL),l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new x_(this,wo,this)),this.a}return hh(this,e-Jn((ln(),Hw)),wn((s=u(Mn(this,16),26),s||Hw),e),n,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 2:return!this.a&&(this.a=new x_(this,wo,this)),za(this.a,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Hw)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Hw)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return uh(this,e-Jn((ln(),Hw)),wn((n=u(Mn(this,16),26),n||Hw),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:!this.a&&(this.a=new x_(this,wo,this)),Tr(this.a),!this.a&&(this.a=new x_(this,wo,this)),gs(this.a,u(n,14));return}bh(this,e-Jn((ln(),Hw)),wn((r=u(Mn(this,16),26),r||Hw),e),n)},l.zh=function(){return ln(),Hw},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:!this.a&&(this.a=new x_(this,wo,this)),Tr(this.a);return}gh(this,e-Jn((ln(),Hw)),wn((n=u(Mn(this,16),26),n||Hw),e))},N(Ln,"ETypeParameterImpl",444),D(445,85,Ko,x_),l.cj=function(e,n){return Udn(this,u(e,87),n)},l.dj=function(e,n){return Wdn(this,u(e,87),n)},N(Ln,"ETypeParameterImpl/1",445),D(634,43,S4,Qtt),l.ec=function(){return new cR(this)},N(Ln,"ETypeParameterImpl/2",634),D(556,B1,Uu,cR),l.Fc=function(e){return GWt(this,u(e,87))},l.Gc=function(e){var n,r,s;for(s=!1,r=e.Kc();r.Ob();)n=u(r.Pb(),87),Ai(this.a,n,"")==null&&(s=!0);return s},l.$b=function(){nl(this.a)},l.Hc=function(e){return Ml(this.a,e)},l.Kc=function(){var e;return e=new d2(new kg(this.a).a),new uR(e)},l.Mc=function(e){return DJt(this,e)},l.gc=function(){return $T(this.a)},N(Ln,"ETypeParameterImpl/2/1",556),D(557,1,da,uR),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(Yv(this.a).cd(),87)},l.Ob=function(){return this.a.b},l.Qb=function(){cte(this.a)},N(Ln,"ETypeParameterImpl/2/1/1",557),D(1276,43,S4,kqt),l._b=function(e){return ha(e)?crt(this,e):!!Fo(this.f,e)},l.xc=function(e){var n,r;return n=ha(e)?jc(this,e):cc(Fo(this.f,e)),_t(n,837)?(r=u(n,837),n=r._j(),Ai(this,u(e,235),n),n):n??(e==null?(pet(),a5e):null)},N(Ln,"EValidatorRegistryImpl",1276),D(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},QZ),l.Ih=function(e,n){switch(e.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:Wo(n);case 25:return ton(n);case 27:return van(n);case 28:return wan(n);case 29:return n==null?null:_Ut(rA[0],u(n,199));case 41:return n==null?"":Mp(u(n,290));case 42:return Wo(n);case 50:return jr(n);default:throw nt(new Pn(z7+e.ne()+kw))}},l.Jh=function(e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;switch(e.G==-1&&(e.G=(q=zl(e),q?$g(q.Mh(),e):-1)),e.G){case 0:return r=new Ktt,r;case 1:return n=new JF,n;case 2:return s=new XL,s;case 4:return o=new lR,o;case 5:return h=new xqt,h;case 6:return d=new Gzt,d;case 7:return w=new qB,w;case 10:return _=new Tk,_;case 11:return M=new Ytt,M;case 12:return B=new WXt,B;case 13:return G=new Xtt,G;case 14:return W=new j2t,W;case 17:return Z=new YZ,Z;case 18:return k=new wv,k;case 19:return bt=new RL,bt;default:throw nt(new Pn($ct+e.zb+kw))}},l.Kh=function(e,n){switch(e.yj()){case 20:return n==null?null:new ibt(n);case 21:return n==null?null:new Fp(n);case 23:case 22:return n==null?null:shn(n);case 26:case 24:return n==null?null:ED(Gl(n,-128,127)<<24>>24);case 25:return bbn(n);case 27:return qfn(n);case 28:return Hfn(n);case 29:return h0n(n);case 32:case 31:return n==null?null:ly(n);case 38:case 37:return n==null?null:new Tpt(n);case 40:case 39:return n==null?null:de(Gl(n,Oa,Ti));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:b2(Sq(n));case 49:case 48:return n==null?null:J8(Gl(n,MH,32767)<<16>>16);case 50:return n;default:throw nt(new Pn(z7+e.ne()+kw))}},N(Ln,"EcoreFactoryImpl",1313),D(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},lXt),l.gb=!1,l.hb=!1;var aLt,s5e=!1;N(Ln,"EcorePackageImpl",547),D(1184,1,{837:1},ZZ),l._j=function(){return YUt(),o5e},N(Ln,"EcorePackageImpl/1",1184),D(1193,1,ci,JZ),l.wj=function(e){return _t(e,147)},l.xj=function(e){return Nt(oN,Me,147,e,0,1)},N(Ln,"EcorePackageImpl/10",1193),D(1194,1,ci,tJ),l.wj=function(e){return _t(e,191)},l.xj=function(e){return Nt(xft,Me,191,e,0,1)},N(Ln,"EcorePackageImpl/11",1194),D(1195,1,ci,eJ),l.wj=function(e){return _t(e,56)},l.xj=function(e){return Nt(Tb,Me,56,e,0,1)},N(Ln,"EcorePackageImpl/12",1195),D(1196,1,ci,nJ),l.wj=function(e){return _t(e,399)},l.xj=function(e){return Nt(Yh,M8t,59,e,0,1)},N(Ln,"EcorePackageImpl/13",1196),D(1197,1,ci,rJ),l.wj=function(e){return _t(e,235)},l.xj=function(e){return Nt(o1,Me,235,e,0,1)},N(Ln,"EcorePackageImpl/14",1197),D(1198,1,ci,iJ),l.wj=function(e){return _t(e,509)},l.xj=function(e){return Nt(zw,Me,2017,e,0,1)},N(Ln,"EcorePackageImpl/15",1198),D(1199,1,ci,aB),l.wj=function(e){return _t(e,99)},l.xj=function(e){return Nt(Jy,F4,18,e,0,1)},N(Ln,"EcorePackageImpl/16",1199),D(1200,1,ci,sJ),l.wj=function(e){return _t(e,170)},l.xj=function(e){return Nt(Nu,F4,170,e,0,1)},N(Ln,"EcorePackageImpl/17",1200),D(1201,1,ci,aJ),l.wj=function(e){return _t(e,472)},l.xj=function(e){return Nt(Qy,Me,472,e,0,1)},N(Ln,"EcorePackageImpl/18",1201),D(1202,1,ci,oJ),l.wj=function(e){return _t(e,548)},l.xj=function(e){return Nt(pc,a0e,548,e,0,1)},N(Ln,"EcorePackageImpl/19",1202),D(1185,1,ci,oB),l.wj=function(e){return _t(e,322)},l.xj=function(e){return Nt(Zy,F4,34,e,0,1)},N(Ln,"EcorePackageImpl/2",1185),D(1203,1,ci,Lk),l.wj=function(e){return _t(e,241)},l.xj=function(e){return Nt(wo,E0e,87,e,0,1)},N(Ln,"EcorePackageImpl/20",1203),D(1204,1,ci,Z9),l.wj=function(e){return _t(e,444)},l.xj=function(e){return Nt(pu,Me,836,e,0,1)},N(Ln,"EcorePackageImpl/21",1204),D(1205,1,ci,cB),l.wj=function(e){return Om(e)},l.xj=function(e){return Nt(Ws,re,476,e,8,1)},N(Ln,"EcorePackageImpl/22",1205),D(1206,1,ci,cJ),l.wj=function(e){return _t(e,190)},l.xj=function(e){return Nt(Xu,re,190,e,0,2)},N(Ln,"EcorePackageImpl/23",1206),D(1207,1,ci,uB),l.wj=function(e){return _t(e,217)},l.xj=function(e){return Nt(kx,re,217,e,0,1)},N(Ln,"EcorePackageImpl/24",1207),D(1208,1,ci,lB),l.wj=function(e){return _t(e,172)},l.xj=function(e){return Nt(aS,re,172,e,0,1)},N(Ln,"EcorePackageImpl/25",1208),D(1209,1,ci,uJ),l.wj=function(e){return _t(e,199)},l.xj=function(e){return Nt(HH,re,199,e,0,1)},N(Ln,"EcorePackageImpl/26",1209),D(1210,1,ci,J9),l.wj=function(e){return!1},l.xj=function(e){return Nt(TLt,Me,2110,e,0,1)},N(Ln,"EcorePackageImpl/27",1210),D(1211,1,ci,km),l.wj=function(e){return Nm(e)},l.xj=function(e){return Nt(wa,re,333,e,7,1)},N(Ln,"EcorePackageImpl/28",1211),D(1212,1,ci,hB),l.wj=function(e){return _t(e,58)},l.xj=function(e){return Nt(jAt,xy,58,e,0,1)},N(Ln,"EcorePackageImpl/29",1212),D(1186,1,ci,fB),l.wj=function(e){return _t(e,510)},l.xj=function(e){return Nt(ei,{3:1,4:1,5:1,1934:1},590,e,0,1)},N(Ln,"EcorePackageImpl/3",1186),D(1213,1,ci,lJ),l.wj=function(e){return _t(e,573)},l.xj=function(e){return Nt(qAt,Me,1940,e,0,1)},N(Ln,"EcorePackageImpl/30",1213),D(1214,1,ci,hJ),l.wj=function(e){return _t(e,153)},l.xj=function(e){return Nt(hLt,xy,153,e,0,1)},N(Ln,"EcorePackageImpl/31",1214),D(1215,1,ci,tT),l.wj=function(e){return _t(e,72)},l.xj=function(e){return Nt(sU,I0e,72,e,0,1)},N(Ln,"EcorePackageImpl/32",1215),D(1216,1,ci,dB),l.wj=function(e){return _t(e,155)},l.xj=function(e){return Nt(K7,re,155,e,0,1)},N(Ln,"EcorePackageImpl/33",1216),D(1217,1,ci,gB),l.wj=function(e){return _t(e,19)},l.xj=function(e){return Nt(Ha,re,19,e,0,1)},N(Ln,"EcorePackageImpl/34",1217),D(1218,1,ci,bc),l.wj=function(e){return _t(e,290)},l.xj=function(e){return Nt(H8t,Me,290,e,0,1)},N(Ln,"EcorePackageImpl/35",1218),D(1219,1,ci,fJ),l.wj=function(e){return _t(e,162)},l.xj=function(e){return Nt(Tw,re,162,e,0,1)},N(Ln,"EcorePackageImpl/36",1219),D(1220,1,ci,pB),l.wj=function(e){return _t(e,83)},l.xj=function(e){return Nt(V8t,Me,83,e,0,1)},N(Ln,"EcorePackageImpl/37",1220),D(1221,1,ci,eT),l.wj=function(e){return _t(e,591)},l.xj=function(e){return Nt(oLt,Me,591,e,0,1)},N(Ln,"EcorePackageImpl/38",1221),D(1222,1,ci,dJ),l.wj=function(e){return!1},l.xj=function(e){return Nt(_Lt,Me,2111,e,0,1)},N(Ln,"EcorePackageImpl/39",1222),D(1187,1,ci,gJ),l.wj=function(e){return _t(e,88)},l.xj=function(e){return Nt(Kh,Me,26,e,0,1)},N(Ln,"EcorePackageImpl/4",1187),D(1223,1,ci,nT),l.wj=function(e){return _t(e,184)},l.xj=function(e){return Nt(_w,re,184,e,0,1)},N(Ln,"EcorePackageImpl/40",1223),D(1224,1,ci,bB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ln,"EcorePackageImpl/41",1224),D(1225,1,ci,rT),l.wj=function(e){return _t(e,588)},l.xj=function(e){return Nt(zAt,Me,588,e,0,1)},N(Ln,"EcorePackageImpl/42",1225),D(1226,1,ci,iT),l.wj=function(e){return!1},l.xj=function(e){return Nt(CLt,re,2112,e,0,1)},N(Ln,"EcorePackageImpl/43",1226),D(1227,1,ci,qf),l.wj=function(e){return _t(e,42)},l.xj=function(e){return Nt(I2,Iq,42,e,0,1)},N(Ln,"EcorePackageImpl/44",1227),D(1188,1,ci,jL),l.wj=function(e){return _t(e,138)},l.xj=function(e){return Nt(c1,Me,138,e,0,1)},N(Ln,"EcorePackageImpl/5",1188),D(1189,1,ci,$L),l.wj=function(e){return _t(e,148)},l.xj=function(e){return Nt(Sft,Me,148,e,0,1)},N(Ln,"EcorePackageImpl/6",1189),D(1190,1,ci,n6),l.wj=function(e){return _t(e,457)},l.xj=function(e){return Nt(iU,Me,671,e,0,1)},N(Ln,"EcorePackageImpl/7",1190),D(1191,1,ci,pJ),l.wj=function(e){return _t(e,573)},l.xj=function(e){return Nt(eg,Me,678,e,0,1)},N(Ln,"EcorePackageImpl/8",1191),D(1192,1,ci,bJ),l.wj=function(e){return _t(e,471)},l.xj=function(e){return Nt(nA,Me,471,e,0,1)},N(Ln,"EcorePackageImpl/9",1192),D(1025,1982,s0e,$qt),l.bi=function(e,n){Dun(this,u(n,415))},l.fi=function(e,n){toe(this,e,u(n,415))},N(Ln,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1025),D(1026,143,QI,eXt),l.Ai=function(){return this.a.a},N(Ln,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1026),D(1053,1052,{},vUt),N("org.eclipse.emf.ecore.plugin","EcorePlugin",1053);var oLt=as(O0e,"Resource");D(781,1378,N0e),l.Yk=function(e){},l.Zk=function(e){},l.Vk=function(){return!this.a&&(this.a=new Htt(this)),this.a},l.Wk=function(e){var n,r,s,o,h;if(s=e.length,s>0)if($r(0,e.length),e.charCodeAt(0)==47){for(h=new Jc(4),o=1,n=1;n0&&(e=e.substr(0,r)));return Jgn(this,e)},l.Xk=function(){return this.c},l.Ib=function(){var e;return Mp(this.gm)+"@"+(e=Ji(this)>>>0,e.toString(16))+" uri='"+this.d+"'"},l.b=!1,N(rut,"ResourceImpl",781),D(1379,781,N0e,Nzt),N(rut,"BinaryResourceImpl",1379),D(1169,694,Qct),l.si=function(e){return _t(e,56)?Nnn(this,u(e,56)):_t(e,591)?new nr(u(e,591).Vk()):Gt(e)===Gt(this.f)?u(e,14).Kc():(l8(),lN.a)},l.Ob=function(){return e5t(this)},l.a=!1,N(Yi,"EcoreUtil/ContentTreeIterator",1169),D(1380,1169,Qct,IYt),l.si=function(e){return Gt(e)===Gt(this.f)?u(e,15).Kc():new pZt(u(e,56))},N(rut,"ResourceImpl/5",1380),D(648,1994,k0e,Htt),l.Hc=function(e){return this.i<=4?l7(this,e):_t(e,49)&&u(e,49).Zg()==this.a},l.bi=function(e,n){e==this.i-1&&(this.a.b||(this.a.b=!0))},l.di=function(e,n){e==0?this.a.b||(this.a.b=!0):jrt(this,e,n)},l.fi=function(e,n){},l.gi=function(e,n,r){},l.aj=function(){return 2},l.Ai=function(){return this.a},l.bj=function(){return!0},l.cj=function(e,n){var r;return r=u(e,49),n=r.wh(this.a,n),n},l.dj=function(e,n){var r;return r=u(e,49),r.wh(null,n)},l.ej=function(){return!1},l.hi=function(){return!0},l.ri=function(e){return Nt(Tb,Me,56,e,0,1)},l.ni=function(){return!1},N(rut,"ResourceImpl/ContentsEList",648),D(957,1964,L7,Ozt),l.Zc=function(e){return this.a._h(e)},l.gc=function(){return this.a.gc()},N(Yi,"AbstractSequentialInternalEList/1",957);var cLt,uLt,Sa,lLt;D(624,1,{},NKt);var aU,oU;N(Yi,"BasicExtendedMetaData",624),D(1160,1,{},NGt),l.$k=function(){return null},l._k=function(){return this.a==-2&&xg(this,a0n(this.d,this.b)),this.a},l.al=function(){return null},l.bl=function(){return pn(),pn(),uo},l.ne=function(){return this.c==V7&&I3(this,Die(this.d,this.b)),this.c},l.cl=function(){return 0},l.a=-2,l.c=V7,N(Yi,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160),D(1161,1,{},eZt),l.$k=function(){return this.a==(S8(),aU)&&lpt(this,k2n(this.f,this.b)),this.a},l._k=function(){return 0},l.al=function(){return this.c==(S8(),aU)&&Ctt(this,E2n(this.f,this.b)),this.c},l.bl=function(){return!this.d&&Stt(this,kwn(this.f,this.b)),this.d},l.ne=function(){return this.e==V7&&QB(this,Die(this.f,this.b)),this.e},l.cl=function(){return this.g==-2&&ZB(this,_dn(this.f,this.b)),this.g},l.e=V7,l.g=-2,N(Yi,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1161),D(1159,1,{},FGt),l.b=!1,l.c=!1,N(Yi,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1159),D(1162,1,{},tZt),l.c=-2,l.e=V7,l.f=V7,N(Yi,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1162),D(585,622,Ko,Sj),l.aj=function(){return this.c},l.Fk=function(){return!1},l.li=function(e,n){return n},l.c=0,N(Yi,"EDataTypeEList",585);var hLt=as(Yi,"FeatureMap");D(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},ps),l.Vc=function(e,n){w2n(this,e,u(n,72))},l.Fc=function(e){return Bbn(this,u(e,72))},l.Yh=function(e){Een(this,u(e,72))},l.cj=function(e,n){return rZe(this,u(e,72),n)},l.dj=function(e,n){return cvt(this,u(e,72),n)},l.ii=function(e,n){return $wn(this,e,n)},l.li=function(e,n){return m3n(this,e,u(n,72))},l._c=function(e,n){return cvn(this,e,u(n,72))},l.jj=function(e,n){return iZe(this,u(e,72),n)},l.kj=function(e,n){return sKt(this,u(e,72),n)},l.lj=function(e,n,r){return cdn(this,u(e,72),u(n,72),r)},l.oi=function(e,n){return Lst(this,e,u(n,72))},l.dl=function(e,n){return H5t(this,e,n)},l.Wc=function(e,n){var r,s,o,h,d,w,k,_,M;for(_=new Kv(n.gc()),o=n.Kc();o.Ob();)if(s=u(o.Pb(),72),h=s.ak(),G0(this.e,h))(!h.hi()||!k$(this,h,s.dd())&&!l7(_,s))&&Or(_,s);else{for(M=hu(this.e.Tg(),h),r=u(this.g,119),d=!0,w=0;w=0;)if(n=e[this.c],this.k.rl(n.ak()))return this.j=this.f?n:n.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},N(Yi,"BasicFeatureMap/FeatureEIterator",410),D(662,410,Jd,Ket),l.Lk=function(){return!0},N(Yi,"BasicFeatureMap/ResolvingFeatureEIterator",662),D(955,486,_H,SUt),l.Gi=function(){return this},N(Yi,"EContentsEList/1",955),D(956,486,_H,ZGt),l.Lk=function(){return!1},N(Yi,"EContentsEList/2",956),D(954,279,CH,AUt),l.Nk=function(e){},l.Ob=function(){return!1},l.Sb=function(){return!1},N(Yi,"EContentsEList/FeatureIteratorImpl/1",954),D(825,585,Ko,d2t),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EDataTypeEList/Unsettable",825),D(1849,585,Ko,FUt),l.hi=function(){return!0},N(Yi,"EDataTypeUniqueEList",1849),D(1850,825,Ko,BUt),l.hi=function(){return!0},N(Yi,"EDataTypeUniqueEList/Unsettable",1850),D(139,85,Ko,$u),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentEList/Resolving",139),D(1163,545,Ko,PUt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentEList/Unsettable/Resolving",1163),D(748,16,Ko,evt),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EObjectContainmentWithInverseEList/Unsettable",748),D(1173,748,Ko,UWt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173),D(743,496,Ko,f2t),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EObjectEList/Unsettable",743),D(328,496,Ko,W3),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectResolvingEList",328),D(1641,743,Ko,RUt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectResolvingEList/Unsettable",1641),D(1381,1,{},vJ);var a5e;N(Yi,"EObjectValidator",1381),D(546,496,Ko,Uj),l.zk=function(){return this.d},l.Ak=function(){return this.b},l.bj=function(){return!0},l.Dk=function(){return!0},l.b=0,N(Yi,"EObjectWithInverseEList",546),D(1176,546,Ko,WWt),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseEList/ManyInverse",1176),D(625,546,Ko,gnt),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EObjectWithInverseEList/Unsettable",625),D(1175,625,Ko,KWt),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseEList/Unsettable/ManyInverse",1175),D(749,546,Ko,nvt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectWithInverseResolvingEList",749),D(31,749,Ko,En),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseResolvingEList/ManyInverse",31),D(750,625,Ko,rvt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectWithInverseResolvingEList/Unsettable",750),D(1174,750,Ko,YWt),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174),D(1164,622,Ko),l.ai=function(){return(this.b&1792)==0},l.ci=function(){this.b|=1},l.Bk=function(){return(this.b&4)!=0},l.bj=function(){return(this.b&40)!=0},l.Ck=function(){return(this.b&16)!=0},l.Dk=function(){return(this.b&8)!=0},l.Ek=function(){return(this.b&Ay)!=0},l.rk=function(){return(this.b&32)!=0},l.Fk=function(){return(this.b&xf)!=0},l.wj=function(e){return this.d?MZt(this.d,e):this.ak().Yj().wj(e)},l.fj=function(){return this.b&2?(this.b&1)!=0:this.i!=0},l.hi=function(){return(this.b&128)!=0},l.Xj=function(){var e;Tr(this),this.b&2&&(Sl(this.e)?(e=(this.b&1)!=0,this.b&=-2,Uk(this,new bf(this.e,2,es(this.e.Tg(),this.ak()),e,!1))):this.b&=-2)},l.ni=function(){return(this.b&1536)==0},l.b=0,N(Yi,"EcoreEList/Generic",1164),D(1165,1164,Ko,jXt),l.ak=function(){return this.a},N(Yi,"EcoreEList/Dynamic",1165),D(747,63,Sd,bpt),l.ri=function(e){return _D(this.a.a,e)},N(Yi,"EcoreEMap/1",747),D(746,85,Ko,ewt),l.bi=function(e,n){qz(this.b,u(n,133))},l.di=function(e,n){_ne(this.b)},l.ei=function(e,n,r){var s;++(s=this.b,u(n,133),s).e},l.fi=function(e,n){Rit(this.b,u(n,133))},l.gi=function(e,n,r){Rit(this.b,u(r,133)),Gt(r)===Gt(n)&&u(r,133).Th(fXe(u(n,133).cd())),qz(this.b,u(n,133))},N(Yi,"EcoreEMap/DelegateEObjectContainmentEList",746),D(1171,151,L8t,Ree),N(Yi,"EcoreEMap/Unsettable",1171),D(1172,746,Ko,XWt),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172),D(1168,228,S4,qYt),l.a=!1,l.b=!1,N(Yi,"EcoreUtil/Copier",1168),D(745,1,da,pZt),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return hie(this)},l.Pb=function(){var e;return hie(this),e=this.b,this.b=null,e},l.Qb=function(){this.a.Qb()},N(Yi,"EcoreUtil/ProperContentIterator",745),D(1382,1381,{},HB);var o5e;N(Yi,"EcoreValidator",1382);var c5e;as(Yi,"FeatureMapUtil/Validator"),D(1260,1,{1942:1},wJ),l.rl=function(e){return!0},N(Yi,"FeatureMapUtil/1",1260),D(757,1,{1942:1},w6t),l.rl=function(e){var n;return this.c==e?!0:(n=Fe(tr(this.a,e)),n==null?rwn(this,e)?(EJt(this.a,e,(Fn(),W7)),!0):(EJt(this.a,e,(Fn(),O2)),!1):n==(Fn(),W7))},l.e=!1;var Dft;N(Yi,"FeatureMapUtil/BasicValidator",757),D(758,43,S4,c2t),N(Yi,"FeatureMapUtil/BasicValidator/Cache",758),D(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},IM),l.Vc=function(e,n){$ce(this.c,this.b,e,n)},l.Fc=function(e){return H5t(this.c,this.b,e)},l.Wc=function(e,n){return wyn(this.c,this.b,e,n)},l.Gc=function(e){return h_(this,e)},l.Xh=function(e,n){jan(this.c,this.b,e,n)},l.lk=function(e,n){return B5t(this.c,this.b,e,n)},l.pi=function(e){return xq(this.c,this.b,e,!1)},l.Zh=function(){return uUt(this.c,this.b)},l.$h=function(){return JYe(this.c,this.b)},l._h=function(e){return Vsn(this.c,this.b,e)},l.mk=function(e,n){return AWt(this,e,n)},l.$b=function(){b6(this)},l.Hc=function(e){return k$(this.c,this.b,e)},l.Ic=function(e){return Hon(this.c,this.b,e)},l.Xb=function(e){return xq(this.c,this.b,e,!0)},l.Wj=function(e){return this},l.Xc=function(e){return esn(this.c,this.b,e)},l.dc=function(){return tj(this)},l.fj=function(){return!GD(this.c,this.b)},l.Kc=function(){return San(this.c,this.b)},l.Yc=function(){return Aan(this.c,this.b)},l.Zc=function(e){return $un(this.c,this.b,e)},l.ii=function(e,n){return ile(this.c,this.b,e,n)},l.ji=function(e,n){Rsn(this.c,this.b,e,n)},l.$c=function(e){return Bae(this.c,this.b,e)},l.Mc=function(e){return Twn(this.c,this.b,e)},l._c=function(e,n){return lle(this.c,this.b,e,n)},l.Wb=function(e){iq(this.c,this.b),h_(this,u(e,15))},l.gc=function(){return Jun(this.c,this.b)},l.Pc=function(){return Zrn(this.c,this.b)},l.Qc=function(e){return nsn(this.c,this.b,e)},l.Ib=function(){var e,n;for(n=new _g,n.a+="[",e=uUt(this.c,this.b);Ait(e);)yo(n,d_($z(e))),Ait(e)&&(n.a+=Xa);return n.a+="]",n.a},l.Xj=function(){iq(this.c,this.b)},N(Yi,"FeatureMapUtil/FeatureEList",501),D(627,36,QI,Mrt),l.yi=function(e){return Z_(this,e)},l.Di=function(e){var n,r,s,o,h,d,w;switch(this.d){case 1:case 2:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.g=e.zi(),e.xi()==1&&(this.d=1),!0;break}case 3:{switch(o=e.xi(),o){case 3:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.d=5,n=new Kv(2),Or(n,this.g),Or(n,e.zi()),this.g=n,!0;break}}break}case 5:{switch(o=e.xi(),o){case 3:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return r=u(this.g,14),r.Fc(e.zi()),!0;break}}break}case 4:{switch(o=e.xi(),o){case 3:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.d=1,this.g=e.zi(),!0;break}case 4:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.d=6,w=new Kv(2),Or(w,this.n),Or(w,e.Bi()),this.n=w,d=ut(ot(Sr,1),Jr,25,15,[this.o,e.Ci()]),this.g=d,!0;break}}break}case 6:{switch(o=e.xi(),o){case 4:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return r=u(this.n,14),r.Fc(e.Bi()),d=u(this.g,48),s=Nt(Sr,Jr,25,d.length+1,15,1),Pc(d,0,s,0,d.length),s[d.length]=e.Ci(),this.g=s,!0;break}}break}}return!1},N(Yi,"FeatureMapUtil/FeatureENotificationImpl",627),D(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},Dj),l.dl=function(e,n){return H5t(this.c,e,n)},l.el=function(e,n,r){return B5t(this.c,e,n,r)},l.fl=function(e,n,r){return a6t(this.c,e,n,r)},l.gl=function(){return this},l.hl=function(e,n){return kI(this.c,e,n)},l.il=function(e){return u(xq(this.c,this.b,e,!1),72).ak()},l.jl=function(e){return u(xq(this.c,this.b,e,!1),72).dd()},l.kl=function(){return this.a},l.ll=function(e){return!GD(this.c,e)},l.ml=function(e,n){kq(this.c,e,n)},l.nl=function(e){return Gee(this.c,e)},l.ol=function(e){pse(this.c,e)},N(Yi,"FeatureMapUtil/FeatureFeatureMap",552),D(1259,1,nut,BGt),l.Wj=function(e){return xq(this.b,this.a,-1,e)},l.fj=function(){return!GD(this.b,this.a)},l.Wb=function(e){kq(this.b,this.a,e)},l.Xj=function(){iq(this.b,this.a)},N(Yi,"FeatureMapUtil/FeatureValue",1259);var Gx,Ift,Oft,Ux,u5e,fN=as(NH,"AnyType");D(666,60,U0,set),N(NH,"InvalidDatatypeValueException",666);var cU=as(NH,F0e),dN=as(NH,B0e),fLt=as(NH,R0e),l5e,kc,dLt,K2,h5e,f5e,d5e,g5e,p5e,b5e,v5e,w5e,m5e,y5e,x5e,l5,k5e,h5,oA,E5e,Vw,gN,pN,T5e,cA,uA;D(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},Bpt),l._g=function(e,n,r){switch(e){case 0:return r?(!this.c&&(this.c=new ps(this,0)),this.c):(!this.c&&(this.c=new ps(this,0)),this.c.b);case 1:return r?(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)):(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).kl();case 2:return r?(!this.b&&(this.b=new ps(this,2)),this.b):(!this.b&&(this.b=new ps(this,2)),this.b.b)}return hh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e),n,r)},l.jh=function(e,n,r){var s;switch(n){case 0:return!this.c&&(this.c=new ps(this,0)),wI(this.c,e,r);case 1:return(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),69)).mk(e,r);case 2:return!this.b&&(this.b=new ps(this,2)),wI(this.b,e,r)}return s=u(wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),n),66),s.Nj().Rj(this,Mmt(this),n-Jn(this.zh()),e,r)},l.lh=function(e){switch(e){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).dc();case 2:return!!this.b&&this.b.i!=0}return uh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e))},l.sh=function(e,n){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),QM(this.c,n);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new ps(this,2)),QM(this.b,n);return}bh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e),n)},l.zh=function(){return $i(),dLt},l.Bh=function(e){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),Tr(this.c);return;case 1:(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).$b();return;case 2:!this.b&&(this.b=new ps(this,2)),Tr(this.b);return}gh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e))},l.Ib=function(){var e;return this.j&4?mf(this):(e=new Ah(mf(this)),e.a+=" (mixed: ",o_(e,this.c),e.a+=", anyAttribute: ",o_(e,this.b),e.a+=")",e.a)},N(Ds,"AnyTypeImpl",830),D(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},vB),l._g=function(e,n,r){switch(e){case 0:return this.a;case 1:return this.b}return hh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e),n,r)},l.lh=function(e){switch(e){case 0:return this.a!=null;case 1:return this.b!=null}return uh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e))},l.sh=function(e,n){switch(e){case 0:Dtt(this,jr(n));return;case 1:fpt(this,jr(n));return}bh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e),n)},l.zh=function(){return $i(),l5},l.Bh=function(e){switch(e){case 0:this.a=null;return;case 1:this.b=null;return}gh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e))},l.Ib=function(){var e;return this.j&4?mf(this):(e=new Ah(mf(this)),e.a+=" (data: ",yo(e,this.a),e.a+=", target: ",yo(e,this.b),e.a+=")",e.a)},l.a=null,l.b=null,N(Ds,"ProcessingInstructionImpl",667),D(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},Tqt),l._g=function(e,n,r){switch(e){case 0:return r?(!this.c&&(this.c=new ps(this,0)),this.c):(!this.c&&(this.c=new ps(this,0)),this.c.b);case 1:return r?(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)):(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).kl();case 2:return r?(!this.b&&(this.b=new ps(this,2)),this.b):(!this.b&&(this.b=new ps(this,2)),this.b.b);case 3:return!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0));case 4:return ivt(this.a,(!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0))));case 5:return this.a}return hh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e),n,r)},l.lh=function(e){switch(e){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0))!=null;case 4:return ivt(this.a,(!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0))))!=null;case 5:return!!this.a}return uh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e))},l.sh=function(e,n){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),QM(this.c,n);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new ps(this,2)),QM(this.b,n);return;case 3:Hwt(this,jr(n));return;case 4:Hwt(this,svt(this.a,n));return;case 5:Ec(this,u(n,148));return}bh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e),n)},l.zh=function(){return $i(),h5},l.Bh=function(e){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),Tr(this.c);return;case 1:(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).$b();return;case 2:!this.b&&(this.b=new ps(this,2)),Tr(this.b);return;case 3:!this.c&&(this.c=new ps(this,0)),kq(this.c,($i(),oA),null);return;case 4:Hwt(this,svt(this.a,null));return;case 5:this.a=null;return}gh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e))},N(Ds,"SimpleAnyTypeImpl",668),D(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},Eqt),l._g=function(e,n,r){switch(e){case 0:return r?(!this.a&&(this.a=new ps(this,0)),this.a):(!this.a&&(this.a=new ps(this,0)),this.a.b);case 1:return r?(!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),this.b):(!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),fD(this.b));case 2:return r?(!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),this.c):(!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),fD(this.c));case 3:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),gN));case 4:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),pN));case 5:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),cA));case 6:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),uA))}return hh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e),n,r)},l.jh=function(e,n,r){var s;switch(n){case 0:return!this.a&&(this.a=new ps(this,0)),wI(this.a,e,r);case 1:return!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),kj(this.b,e,r);case 2:return!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),kj(this.c,e,r);case 5:return!this.a&&(this.a=new ps(this,0)),AWt($c(this.a,($i(),cA)),e,r)}return s=u(wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():($i(),Vw),n),66),s.Nj().Rj(this,Mmt(this),n-Jn(($i(),Vw)),e,r)},l.lh=function(e){switch(e){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),gN)));case 4:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),pN)));case 5:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),cA)));case 6:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),uA)))}return uh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e))},l.sh=function(e,n){switch(e){case 0:!this.a&&(this.a=new ps(this,0)),QM(this.a,n);return;case 1:!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),lz(this.b,n);return;case 2:!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),lz(this.c,n);return;case 3:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),gN))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,gN),u(n,14));return;case 4:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),pN))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,pN),u(n,14));return;case 5:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),cA))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,cA),u(n,14));return;case 6:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),uA))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,uA),u(n,14));return}bh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e),n)},l.zh=function(){return $i(),Vw},l.Bh=function(e){switch(e){case 0:!this.a&&(this.a=new ps(this,0)),Tr(this.a);return;case 1:!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),gN)));return;case 4:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),pN)));return;case 5:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),cA)));return;case 6:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),uA)));return}gh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e))},l.Ib=function(){var e;return this.j&4?mf(this):(e=new Ah(mf(this)),e.a+=" (mixed: ",o_(e,this.a),e.a+=")",e.a)},N(Ds,"XMLTypeDocumentRootImpl",669),D(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},Em),l.Ih=function(e,n){switch(e.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:Wo(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return jr(n);case 6:return vQe(u(n,190));case 12:case 47:case 49:case 11:return Qle(this,e,n);case 13:return n==null?null:iyn(u(n,240));case 15:case 14:return n==null?null:gen(Zt(ve(n)));case 17:return tae(($i(),n));case 18:return tae(n);case 21:case 20:return n==null?null:pen(u(n,155).a);case 27:return wQe(u(n,190));case 30:return bse(($i(),u(n,15)));case 31:return bse(u(n,15));case 40:return yQe(($i(),n));case 42:return eae(($i(),n));case 43:return eae(n);case 59:case 48:return mQe(($i(),n));default:throw nt(new Pn(z7+e.ne()+kw))}},l.Jh=function(e){var n,r,s,o,h;switch(e.G==-1&&(e.G=(r=zl(e),r?$g(r.Mh(),e):-1)),e.G){case 0:return n=new Bpt,n;case 1:return s=new vB,s;case 2:return o=new Tqt,o;case 3:return h=new Eqt,h;default:throw nt(new Pn($ct+e.zb+kw))}},l.Kh=function(e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt;switch(e.yj()){case 5:case 52:case 4:return n;case 6:return Nhn(n);case 8:case 7:return n==null?null:xdn(n);case 9:return n==null?null:ED(Gl((s=Hc(n,!0),s.length>0&&($r(0,s.length),s.charCodeAt(0)==43)?s.substr(1):s),-128,127)<<24>>24);case 10:return n==null?null:ED(Gl((o=Hc(n,!0),o.length>0&&($r(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o),-128,127)<<24>>24);case 11:return jr(pw(this,($i(),d5e),n));case 12:return jr(pw(this,($i(),g5e),n));case 13:return n==null?null:new ibt(Hc(n,!0));case 15:case 14:return qbn(n);case 16:return jr(pw(this,($i(),p5e),n));case 17:return kie(($i(),n));case 18:return kie(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Hc(n,!0);case 21:case 20:return Qbn(n);case 22:return jr(pw(this,($i(),b5e),n));case 23:return jr(pw(this,($i(),v5e),n));case 24:return jr(pw(this,($i(),w5e),n));case 25:return jr(pw(this,($i(),m5e),n));case 26:return jr(pw(this,($i(),y5e),n));case 27:return Lhn(n);case 30:return Eie(($i(),n));case 31:return Eie(n);case 32:return n==null?null:de(Gl((M=Hc(n,!0),M.length>0&&($r(0,M.length),M.charCodeAt(0)==43)?M.substr(1):M),Oa,Ti));case 33:return n==null?null:new Fp((B=Hc(n,!0),B.length>0&&($r(0,B.length),B.charCodeAt(0)==43)?B.substr(1):B));case 34:return n==null?null:de(Gl((q=Hc(n,!0),q.length>0&&($r(0,q.length),q.charCodeAt(0)==43)?q.substr(1):q),Oa,Ti));case 36:return n==null?null:b2(Sq((G=Hc(n,!0),G.length>0&&($r(0,G.length),G.charCodeAt(0)==43)?G.substr(1):G)));case 37:return n==null?null:b2(Sq((W=Hc(n,!0),W.length>0&&($r(0,W.length),W.charCodeAt(0)==43)?W.substr(1):W)));case 40:return Gln(($i(),n));case 42:return Tie(($i(),n));case 43:return Tie(n);case 44:return n==null?null:new Fp((Z=Hc(n,!0),Z.length>0&&($r(0,Z.length),Z.charCodeAt(0)==43)?Z.substr(1):Z));case 45:return n==null?null:new Fp((bt=Hc(n,!0),bt.length>0&&($r(0,bt.length),bt.charCodeAt(0)==43)?bt.substr(1):bt));case 46:return Hc(n,!1);case 47:return jr(pw(this,($i(),x5e),n));case 59:case 48:return Vln(($i(),n));case 49:return jr(pw(this,($i(),k5e),n));case 50:return n==null?null:J8(Gl((Mt=Hc(n,!0),Mt.length>0&&($r(0,Mt.length),Mt.charCodeAt(0)==43)?Mt.substr(1):Mt),MH,32767)<<16>>16);case 51:return n==null?null:J8(Gl((h=Hc(n,!0),h.length>0&&($r(0,h.length),h.charCodeAt(0)==43)?h.substr(1):h),MH,32767)<<16>>16);case 53:return jr(pw(this,($i(),E5e),n));case 55:return n==null?null:J8(Gl((d=Hc(n,!0),d.length>0&&($r(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d),MH,32767)<<16>>16);case 56:return n==null?null:J8(Gl((w=Hc(n,!0),w.length>0&&($r(0,w.length),w.charCodeAt(0)==43)?w.substr(1):w),MH,32767)<<16>>16);case 57:return n==null?null:b2(Sq((k=Hc(n,!0),k.length>0&&($r(0,k.length),k.charCodeAt(0)==43)?k.substr(1):k)));case 58:return n==null?null:b2(Sq((_=Hc(n,!0),_.length>0&&($r(0,_.length),_.charCodeAt(0)==43)?_.substr(1):_)));case 60:return n==null?null:de(Gl((r=Hc(n,!0),r.length>0&&($r(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),Oa,Ti));case 61:return n==null?null:de(Gl(Hc(n,!0),Oa,Ti));default:throw nt(new Pn(z7+e.ne()+kw))}};var _5e,gLt,C5e,pLt;N(Ds,"XMLTypeFactoryImpl",1919),D(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},uXt),l.N=!1,l.O=!1;var S5e=!1;N(Ds,"XMLTypePackageImpl",586),D(1852,1,{837:1},r6),l._j=function(){return Q5t(),F5e},N(Ds,"XMLTypePackageImpl/1",1852),D(1861,1,ci,g1),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/10",1861),D(1862,1,ci,wB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/11",1862),D(1863,1,ci,mB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/12",1863),D(1864,1,ci,yB),l.wj=function(e){return Nm(e)},l.xj=function(e){return Nt(wa,re,333,e,7,1)},N(Ds,"XMLTypePackageImpl/13",1864),D(1865,1,ci,xB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/14",1865),D(1866,1,ci,kB),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/15",1866),D(1867,1,ci,EB),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/16",1867),D(1868,1,ci,Hf),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/17",1868),D(1869,1,ci,vu),l.wj=function(e){return _t(e,155)},l.xj=function(e){return Nt(K7,re,155,e,0,1)},N(Ds,"XMLTypePackageImpl/18",1869),D(1870,1,ci,mJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/19",1870),D(1853,1,ci,yJ),l.wj=function(e){return _t(e,843)},l.xj=function(e){return Nt(fN,Me,843,e,0,1)},N(Ds,"XMLTypePackageImpl/2",1853),D(1871,1,ci,xJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/20",1871),D(1872,1,ci,wu),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/21",1872),D(1873,1,ci,sT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/22",1873),D(1874,1,ci,TB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/23",1874),D(1875,1,ci,_B),l.wj=function(e){return _t(e,190)},l.xj=function(e){return Nt(Xu,re,190,e,0,2)},N(Ds,"XMLTypePackageImpl/24",1875),D(1876,1,ci,i6),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/25",1876),D(1877,1,ci,kJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/26",1877),D(1878,1,ci,Mk),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/27",1878),D(1879,1,ci,EJ),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/28",1879),D(1880,1,ci,CB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/29",1880),D(1854,1,ci,TJ),l.wj=function(e){return _t(e,667)},l.xj=function(e){return Nt(cU,Me,2021,e,0,1)},N(Ds,"XMLTypePackageImpl/3",1854),D(1881,1,ci,_J),l.wj=function(e){return _t(e,19)},l.xj=function(e){return Nt(Ha,re,19,e,0,1)},N(Ds,"XMLTypePackageImpl/30",1881),D(1882,1,ci,aT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/31",1882),D(1883,1,ci,SB),l.wj=function(e){return _t(e,162)},l.xj=function(e){return Nt(Tw,re,162,e,0,1)},N(Ds,"XMLTypePackageImpl/32",1883),D(1884,1,ci,zL),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/33",1884),D(1885,1,ci,oT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/34",1885),D(1886,1,ci,CJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/35",1886),D(1887,1,ci,SJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/36",1887),D(1888,1,ci,qL),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/37",1888),D(1889,1,ci,cT),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/38",1889),D(1890,1,ci,p1),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/39",1890),D(1855,1,ci,Dk),l.wj=function(e){return _t(e,668)},l.xj=function(e){return Nt(dN,Me,2022,e,0,1)},N(Ds,"XMLTypePackageImpl/4",1855),D(1891,1,ci,AJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/40",1891),D(1892,1,ci,Ik),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/41",1892),D(1893,1,ci,HL),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/42",1893),D(1894,1,ci,Gb),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/43",1894),D(1895,1,ci,uT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/44",1895),D(1896,1,ci,VL),l.wj=function(e){return _t(e,184)},l.xj=function(e){return Nt(_w,re,184,e,0,1)},N(Ds,"XMLTypePackageImpl/45",1896),D(1897,1,ci,Vf),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/46",1897),D(1898,1,ci,lT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/47",1898),D(1899,1,ci,b1),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/48",1899),D(ib,1,ci,v1),l.wj=function(e){return _t(e,184)},l.xj=function(e){return Nt(_w,re,184,e,0,1)},N(Ds,"XMLTypePackageImpl/49",ib),D(1856,1,ci,LJ),l.wj=function(e){return _t(e,669)},l.xj=function(e){return Nt(fLt,Me,2023,e,0,1)},N(Ds,"XMLTypePackageImpl/5",1856),D(1901,1,ci,MJ),l.wj=function(e){return _t(e,162)},l.xj=function(e){return Nt(Tw,re,162,e,0,1)},N(Ds,"XMLTypePackageImpl/50",1901),D(1902,1,ci,L3),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/51",1902),D(1903,1,ci,Ok),l.wj=function(e){return _t(e,19)},l.xj=function(e){return Nt(Ha,re,19,e,0,1)},N(Ds,"XMLTypePackageImpl/52",1903),D(1857,1,ci,Nk),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/6",1857),D(1858,1,ci,hT),l.wj=function(e){return _t(e,190)},l.xj=function(e){return Nt(Xu,re,190,e,0,2)},N(Ds,"XMLTypePackageImpl/7",1858),D(1859,1,ci,DJ),l.wj=function(e){return Om(e)},l.xj=function(e){return Nt(Ws,re,476,e,8,1)},N(Ds,"XMLTypePackageImpl/8",1859),D(1860,1,ci,s6),l.wj=function(e){return _t(e,217)},l.xj=function(e){return Nt(kx,re,217,e,0,1)},N(Ds,"XMLTypePackageImpl/9",1860);var Y1,op,lA,uU,wt;D(50,60,U0,Rr),N(Yg,"RegEx/ParseException",50),D(820,1,{},GL),l.sl=function(e){return er*16)throw nt(new Rr(Gr((Fr(),Yde))));r=r*16+o}while(!0);if(this.a!=125)throw nt(new Rr(Gr((Fr(),Xde))));if(r>G7)throw nt(new Rr(Gr((Fr(),Qde))));e=r}else{if(o=0,this.c!=0||(o=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(r=o,mi(this),this.c!=0||(o=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));r=r*16+o,e=r}break;case 117:if(s=0,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));n=n*16+s,e=n;break;case 118:if(mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,n>G7)throw nt(new Rr(Gr((Fr(),"parser.descappe.4"))));e=n;break;case 65:case 90:case 122:throw nt(new Rr(Gr((Fr(),Zde))))}return e},l.ul=function(e){var n,r;switch(e){case 100:r=(this.e&32)==32?nb("Nd",!0):(yi(),lU);break;case 68:r=(this.e&32)==32?nb("Nd",!1):(yi(),xLt);break;case 119:r=(this.e&32)==32?nb("IsWord",!0):(yi(),IE);break;case 87:r=(this.e&32)==32?nb("IsWord",!1):(yi(),ELt);break;case 115:r=(this.e&32)==32?nb("IsSpace",!0):(yi(),Wx);break;case 83:r=(this.e&32)==32?nb("IsSpace",!1):(yi(),kLt);break;default:throw nt(new Zo((n=e,Z0e+n.toString(16))))}return r},l.vl=function(e){var n,r,s,o,h,d,w,k,_,M,B,q;for(this.b=1,mi(this),n=null,this.c==0&&this.a==94?(mi(this),e?M=(yi(),yi(),new jl(5)):(n=(yi(),yi(),new jl(4)),qc(n,0,G7),M=new jl(4))):M=(yi(),yi(),new jl(4)),o=!0;(q=this.c)!=1&&!(q==0&&this.a==93&&!o);){if(o=!1,r=this.a,s=!1,q==10)switch(r){case 100:case 68:case 119:case 87:case 115:case 83:vy(M,this.ul(r)),s=!0;break;case 105:case 73:case 99:case 67:r=this.Ll(M,r),r<0&&(s=!0);break;case 112:case 80:if(B=J4t(this,r),!B)throw nt(new Rr(Gr((Fr(),Jct))));vy(M,B),s=!0;break;default:r=this.tl()}else if(q==20){if(d=c8(this.i,58,this.d),d<0)throw nt(new Rr(Gr((Fr(),E8t))));if(w=!0,Ta(this.i,this.d)==94&&(++this.d,w=!1),h=Bl(this.i,this.d,d),k=lte(h,w,(this.e&512)==512),!k)throw nt(new Rr(Gr((Fr(),Vde))));if(vy(M,k),s=!0,d+1>=this.j||Ta(this.i,d+1)!=93)throw nt(new Rr(Gr((Fr(),E8t))));this.d=d+2}if(mi(this),!s)if(this.c!=0||this.a!=45)qc(M,r,r);else{if(mi(this),(q=this.c)==1)throw nt(new Rr(Gr((Fr(),EH))));q==0&&this.a==93?(qc(M,r,r),qc(M,45,45)):(_=this.a,q==10&&(_=this.tl()),mi(this),qc(M,r,_))}(this.e&xf)==xf&&this.c==0&&this.a==44&&mi(this)}if(this.c==1)throw nt(new Rr(Gr((Fr(),EH))));return n&&(CC(n,M),M=n),v4(M),TC(M),this.b=0,mi(this),M},l.wl=function(){var e,n,r,s;for(r=this.vl(!1);(s=this.c)!=7;)if(e=this.a,s==0&&(e==45||e==38)||s==4){if(mi(this),this.c!=9)throw nt(new Rr(Gr((Fr(),Ude))));if(n=this.vl(!1),s==4)vy(r,n);else if(e==45)CC(r,n);else if(e==38)Gle(r,n);else throw nt(new Zo("ASSERT"))}else throw nt(new Rr(Gr((Fr(),Wde))));return mi(this),r},l.xl=function(){var e,n;return e=this.a-48,n=(yi(),yi(),new drt(12,null,e)),!this.g&&(this.g=new fR),hR(this.g,new vpt(e)),mi(this),n},l.yl=function(){return mi(this),yi(),M5e},l.zl=function(){return mi(this),yi(),L5e},l.Al=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Bl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Cl=function(){return mi(this),Ucn()},l.Dl=function(){return mi(this),yi(),I5e},l.El=function(){return mi(this),yi(),N5e},l.Fl=function(){var e;if(this.d>=this.j||((e=Ta(this.i,this.d++))&65504)!=64)throw nt(new Rr(Gr((Fr(),zde))));return mi(this),yi(),yi(),new Gd(0,e-64)},l.Gl=function(){return mi(this),Lmn()},l.Hl=function(){return mi(this),yi(),P5e},l.Il=function(){var e;return e=(yi(),yi(),new Gd(0,105)),mi(this),e},l.Jl=function(){return mi(this),yi(),O5e},l.Kl=function(){return mi(this),yi(),D5e},l.Ll=function(e,n){return this.tl()},l.Ml=function(){return mi(this),yi(),mLt},l.Nl=function(){var e,n,r,s,o;if(this.d+1>=this.j)throw nt(new Rr(Gr((Fr(),Rde))));if(s=-1,n=null,e=Ta(this.i,this.d),49<=e&&e<=57){if(s=e-48,!this.g&&(this.g=new fR),hR(this.g,new vpt(s)),++this.d,Ta(this.i,this.d)!=41)throw nt(new Rr(Gr((Fr(),M2))));++this.d}else switch(e==63&&--this.d,mi(this),n=k6t(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));break;default:throw nt(new Rr(Gr((Fr(),jde))))}if(mi(this),o=sw(this),r=null,o.e==2){if(o.em()!=2)throw nt(new Rr(Gr((Fr(),$de))));r=o.am(1),o=o.am(0)}if(this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),yi(),yi(),new qte(s,n,o,r)},l.Ol=function(){return mi(this),yi(),yLt},l.Pl=function(){var e;if(mi(this),e=Wj(24,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Ql=function(){var e;if(mi(this),e=Wj(20,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Rl=function(){var e;if(mi(this),e=Wj(22,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Sl=function(){var e,n,r,s,o;for(e=0,r=0,n=-1;this.d=this.j)throw nt(new Rr(Gr((Fr(),x8t))));if(n==45){for(++this.d;this.d=this.j)throw nt(new Rr(Gr((Fr(),x8t))))}if(n==58){if(++this.d,mi(this),s=WYt(sw(this),e,r),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));mi(this)}else if(n==41)++this.d,mi(this),s=WYt(sw(this),e,r);else throw nt(new Rr(Gr((Fr(),Bde))));return s},l.Tl=function(){var e;if(mi(this),e=Wj(21,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Ul=function(){var e;if(mi(this),e=Wj(23,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Vl=function(){var e,n;if(mi(this),e=this.f++,n=$nt(sw(this),e),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),n},l.Wl=function(){var e;if(mi(this),e=$nt(sw(this),0),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Xl=function(e){return mi(this),this.c==5?(mi(this),Bj(e,(yi(),yi(),new Wm(9,e)))):Bj(e,(yi(),yi(),new Wm(3,e)))},l.Yl=function(e){var n;return mi(this),n=(yi(),yi(),new l_(2)),this.c==5?(mi(this),x2(n,fA),x2(n,e)):(x2(n,e),x2(n,fA)),n},l.Zl=function(e){return mi(this),this.c==5?(mi(this),yi(),yi(),new Wm(9,e)):(yi(),yi(),new Wm(3,e))},l.a=0,l.b=0,l.c=0,l.d=0,l.e=0,l.f=1,l.g=null,l.j=0,N(Yg,"RegEx/RegexParser",820),D(1824,820,{},_qt),l.sl=function(e){return!1},l.tl=function(){return O5t(this)},l.ul=function(e){return y7(e)},l.vl=function(e){return Bhe(this)},l.wl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.xl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.yl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.zl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Al=function(){return mi(this),y7(67)},l.Bl=function(){return mi(this),y7(73)},l.Cl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Dl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.El=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Fl=function(){return mi(this),y7(99)},l.Gl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Hl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Il=function(){return mi(this),y7(105)},l.Jl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Kl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ll=function(e,n){return vy(e,y7(n)),-1},l.Ml=function(){return mi(this),yi(),yi(),new Gd(0,94)},l.Nl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ol=function(){return mi(this),yi(),yi(),new Gd(0,36)},l.Pl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ql=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Rl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Sl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Tl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ul=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Vl=function(){var e;if(mi(this),e=$nt(sw(this),0),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Wl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Xl=function(e){return mi(this),Bj(e,(yi(),yi(),new Wm(3,e)))},l.Yl=function(e){var n;return mi(this),n=(yi(),yi(),new l_(2)),x2(n,e),x2(n,fA),n},l.Zl=function(e){return mi(this),yi(),yi(),new Wm(3,e)};var f5=null,ME=null;N(Yg,"RegEx/ParserForXMLSchema",1824),D(117,1,U7,vv),l.$l=function(e){throw nt(new Zo("Not supported."))},l._l=function(){return-1},l.am=function(e){return null},l.bm=function(){return null},l.cm=function(e){},l.dm=function(e){},l.em=function(){return 0},l.Ib=function(){return this.fm(0)},l.fm=function(e){return this.e==11?".":""},l.e=0;var bLt,DE,hA,A5e,vLt,n3=null,lU,Nft=null,wLt,fA,Pft=null,mLt,yLt,xLt,kLt,ELt,L5e,Wx,M5e,D5e,I5e,O5e,IE,N5e,P5e,E6n=N(Yg,"RegEx/Token",117);D(136,117,{3:1,136:1,117:1},jl),l.fm=function(e){var n,r,s;if(this.e==4)if(this==wLt)r=".";else if(this==lU)r="\\d";else if(this==IE)r="\\w";else if(this==Wx)r="\\s";else{for(s=new _g,s.a+="[",n=0;n0&&(s.a+=","),this.b[n]===this.b[n+1]?yo(s,xI(this.b[n])):(yo(s,xI(this.b[n])),s.a+="-",yo(s,xI(this.b[n+1])));s.a+="]",r=s.a}else if(this==xLt)r="\\D";else if(this==ELt)r="\\W";else if(this==kLt)r="\\S";else{for(s=new _g,s.a+="[^",n=0;n0&&(s.a+=","),this.b[n]===this.b[n+1]?yo(s,xI(this.b[n])):(yo(s,xI(this.b[n])),s.a+="-",yo(s,xI(this.b[n+1])));s.a+="]",r=s.a}return r},l.a=!1,l.c=!1,N(Yg,"RegEx/RangeToken",136),D(584,1,{584:1},vpt),l.a=0,N(Yg,"RegEx/RegexParser/ReferencePosition",584),D(583,1,{3:1,583:1},FHt),l.Fb=function(e){var n;return e==null||!_t(e,583)?!1:(n=u(e,583),un(this.b,n.b)&&this.a==n.a)},l.Hb=function(){return zg(this.b+"/"+S5t(this.a))},l.Ib=function(){return this.c.fm(this.a)},l.a=0,N(Yg,"RegEx/RegularExpression",583),D(223,117,U7,Gd),l._l=function(){return this.a},l.fm=function(e){var n,r,s;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:s="\\"+dnt(this.a&Ms);break;case 12:s="\\f";break;case 10:s="\\n";break;case 13:s="\\r";break;case 9:s="\\t";break;case 27:s="\\e";break;default:this.a>=Qa?(r=(n=this.a>>>0,"0"+n.toString(16)),s="\\v"+Bl(r,r.length-6,r.length)):s=""+dnt(this.a&Ms)}break;case 8:this==mLt||this==yLt?s=""+dnt(this.a&Ms):s="\\"+dnt(this.a&Ms);break;default:s=null}return s},l.a=0,N(Yg,"RegEx/Token/CharToken",223),D(309,117,U7,Wm),l.am=function(e){return this.a},l.cm=function(e){this.b=e},l.dm=function(e){this.c=e},l.em=function(){return 1},l.fm=function(e){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.fm(e)+"*";else if(this.c==this.b)n=this.a.fm(e)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.fm(e)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.fm(e)+"{"+this.c+",}";else throw nt(new Zo("Token#toString(): CLOSURE "+this.c+Xa+this.b));else if(this.c<0&&this.b<0)n=this.a.fm(e)+"*?";else if(this.c==this.b)n=this.a.fm(e)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.fm(e)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.fm(e)+"{"+this.c+",}?";else throw nt(new Zo("Token#toString(): NONGREEDYCLOSURE "+this.c+Xa+this.b));return n},l.b=0,l.c=0,N(Yg,"RegEx/Token/ClosureToken",309),D(821,117,U7,uwt),l.am=function(e){return e==0?this.a:this.b},l.em=function(){return 2},l.fm=function(e){var n;return this.b.e==3&&this.b.am(0)==this.a?n=this.a.fm(e)+"+":this.b.e==9&&this.b.am(0)==this.a?n=this.a.fm(e)+"+?":n=this.a.fm(e)+(""+this.b.fm(e)),n},N(Yg,"RegEx/Token/ConcatToken",821),D(1822,117,U7,qte),l.am=function(e){if(e==0)return this.d;if(e==1)return this.b;throw nt(new Zo("Internal Error: "+e))},l.em=function(){return this.b?2:1},l.fm=function(e){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},l.c=0,N(Yg,"RegEx/Token/ConditionToken",1822),D(1823,117,U7,qQt),l.am=function(e){return this.b},l.em=function(){return 1},l.fm=function(e){return"(?"+(this.a==0?"":S5t(this.a))+(this.c==0?"":S5t(this.c))+":"+this.b.fm(e)+")"},l.a=0,l.c=0,N(Yg,"RegEx/Token/ModifierToken",1823),D(822,117,U7,pwt),l.am=function(e){return this.a},l.em=function(){return 1},l.fm=function(e){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.fm(e)+")":n="("+this.a.fm(e)+")";break;case 20:n="(?="+this.a.fm(e)+")";break;case 21:n="(?!"+this.a.fm(e)+")";break;case 22:n="(?<="+this.a.fm(e)+")";break;case 23:n="(?"+this.a.fm(e)+")"}return n},l.b=0,N(Yg,"RegEx/Token/ParenToken",822),D(521,117,{3:1,117:1,521:1},drt),l.bm=function(){return this.b},l.fm=function(e){return this.e==12?"\\"+this.a:Bpn(this.b)},l.a=0,N(Yg,"RegEx/Token/StringToken",521),D(465,117,U7,l_),l.$l=function(e){x2(this,e)},l.am=function(e){return u(Rv(this.a,e),117)},l.em=function(){return this.a?this.a.a.c.length:0},l.fm=function(e){var n,r,s,o,h;if(this.e==1){if(this.a.a.c.length==2)n=u(Rv(this.a,0),117),r=u(Rv(this.a,1),117),r.e==3&&r.am(0)==n?o=n.fm(e)+"+":r.e==9&&r.am(0)==n?o=n.fm(e)+"+?":o=n.fm(e)+(""+r.fm(e));else{for(h=new _g,s=0;s=this.c.b:this.a<=this.c.b},l.Sb=function(){return this.b>0},l.Tb=function(){return this.b},l.Vb=function(){return this.b-1},l.Qb=function(){throw nt(new Tg(sge))},l.a=0,l.b=0,N(q8t,"ExclusiveRange/RangeIterator",254);var Eh=w8(TH,"C"),Sr=w8(tS,"I"),xl=w8(cx,"Z"),Db=w8(eS,"J"),Xu=w8(QC,"B"),ga=w8(ZC,"D"),r3=w8(JC,"F"),d5=w8(nS,"S"),T6n=as("org.eclipse.elk.core.labels","ILabelManager"),TLt=as(qa,"DiagnosticChain"),_Lt=as(O0e,"ResourceSet"),CLt=N(qa,"InvocationTargetException",null),B5e=(vR(),psn),R5e=R5e=idn;lon(rKe),Fon("permProps",[[[BH,RH],[jH,"gecko1_8"]],[[BH,RH],[jH,"ie10"]],[[BH,RH],[jH,"ie8"]],[[BH,RH],[jH,"ie9"]],[[BH,RH],[jH,"safari"]]]),R5e(null,"elk",null)}).call(this)}).call(this,typeof d0<"u"?d0:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(f,p,v){function m(P,F){if(!(P instanceof F))throw new TypeError("Cannot call a class as a function")}function b(P,F){if(!P)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return F&&(typeof F=="object"||typeof F=="function")?F:P}function E(P,F){if(typeof F!="function"&&F!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof F);P.prototype=Object.create(F&&F.prototype,{constructor:{value:P,enumerable:!1,writable:!0,configurable:!0}}),F&&(Object.setPrototypeOf?Object.setPrototypeOf(P,F):P.__proto__=F)}var C=f("./elk-api.js").default,A=function(P){E(F,P);function F(){var j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};m(this,F);var R=Object.assign({},j),H=!1;try{f.resolve("web-worker"),H=!0}catch{}if(j.workerUrl)if(H){var Y=f("web-worker");R.workerFactory=function(it){return new Y(it)}}else console.warn(`Web worker requested but 'web-worker' package not installed. +Consider installing the package or pass your own 'workerFactory' to ELK's constructor. +... Falling back to non-web worker version.`);if(!R.workerFactory){var rt=f("./elk-worker.min.js"),J=rt.Worker;R.workerFactory=function(it){return new J(it)}}return b(this,(F.__proto__||Object.getPrototypeOf(F)).call(this,R))}return F}(C);Object.defineProperty(p.exports,"__esModule",{value:!0}),p.exports=A,A.default=A},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(f,p,v){p.exports=Worker},{}]},{},[3])(3)})})(mjt);var cUe=mjt.exports;const uUe=PE(cUe),yjt=new uUe;let sv={};const lUe={};let B5={};const hUe=async function(i,a,f,p,v,m,b){const C=f.select(`[id="${a}"]`).insert("g").attr("class","nodes"),A=Object.keys(i);return await Promise.all(A.map(async function(P){const F=i[P];let j="default";F.classes.length>0&&(j=F.classes.join(" ")),j=j+" flowchart-label";const R=em(F.styles);let H=F.text!==void 0?F.text:F.id;const Y={width:0,height:0},rt=[{id:F.id+"-west",layoutOptions:{"port.side":"WEST"}},{id:F.id+"-east",layoutOptions:{"port.side":"EAST"}},{id:F.id+"-south",layoutOptions:{"port.side":"SOUTH"}},{id:F.id+"-north",layoutOptions:{"port.side":"NORTH"}}];let J=0,it="",ft={};switch(F.type){case"round":J=5,it="rect";break;case"square":it="rect";break;case"diamond":it="question",ft={portConstraints:"FIXED_SIDE"};break;case"hexagon":it="hexagon";break;case"odd":it="rect_left_inv_arrow";break;case"lean_right":it="lean_right";break;case"lean_left":it="lean_left";break;case"trapezoid":it="trapezoid";break;case"inv_trapezoid":it="inv_trapezoid";break;case"odd_right":it="rect_left_inv_arrow";break;case"circle":it="circle";break;case"ellipse":it="ellipse";break;case"stadium":it="stadium";break;case"subroutine":it="subroutine";break;case"cylinder":it="cylinder";break;case"group":it="rect";break;case"doublecircle":it="doublecircle";break;default:it="rect"}const Tt={labelStyle:R.labelStyle,shape:it,labelText:H,labelType:F.labelType,rx:J,ry:J,class:j,style:R.style,id:F.id,link:F.link,linkTarget:F.linkTarget,tooltip:v.db.getTooltip(F.id)||"",domId:v.db.lookUpDomId(F.id),haveCallback:F.haveCallback,width:F.type==="group"?500:void 0,dir:F.dir,type:F.type,props:F.props,padding:De().flowchart.padding};let kt,mt;if(Tt.type!=="group")mt=await _Bt(C,Tt,F.dir),kt=mt.node().getBBox();else{p.createElementNS("http://www.w3.org/2000/svg","text");const{shapeSvg:yt,bbox:st}=await Od(C,Tt,void 0,!0);Y.width=st.width,Y.wrappingWidth=De().flowchart.wrappingWidth,Y.height=st.height,Y.labelNode=yt.node(),Tt.labelData=Y}const ct={id:F.id,ports:F.type==="diamond"?rt:[],layoutOptions:ft,labelText:H,labelData:Y,domId:v.db.lookUpDomId(F.id),width:kt==null?void 0:kt.width,height:kt==null?void 0:kt.height,type:F.type,el:mt,parent:m.parentById[F.id]};B5[Tt.id]=ct})),b},xjt=(i,a,f)=>{const p={TB:{in:{north:"north"},out:{south:"west",west:"east",east:"south"}},LR:{in:{west:"west"},out:{east:"south",south:"north",north:"east"}},RL:{in:{east:"east"},out:{west:"north",north:"south",south:"west"}},BT:{in:{south:"south"},out:{north:"east",east:"west",west:"north"}}};return p.TD=p.TB,Wt.info("abc88",f,a,i),p[f][a][i]},kjt=(i,a,f)=>{if(Wt.info("getNextPort abc88",{node:i,edgeDirection:a,graphDirection:f}),!sv[i])switch(f){case"TB":case"TD":sv[i]={inPosition:"north",outPosition:"south"};break;case"BT":sv[i]={inPosition:"south",outPosition:"north"};break;case"RL":sv[i]={inPosition:"east",outPosition:"west"};break;case"LR":sv[i]={inPosition:"west",outPosition:"east"};break}const p=a==="in"?sv[i].inPosition:sv[i].outPosition;return a==="in"?sv[i].inPosition=xjt(sv[i].inPosition,a,f):sv[i].outPosition=xjt(sv[i].outPosition,a,f),p},fUe=(i,a)=>{let f=i.start,p=i.end;const v=f,m=p,b=B5[f],E=B5[p];return!b||!E?{source:f,target:p}:(b.type==="diamond"&&(f=`${f}-${kjt(f,"out",a)}`),E.type==="diamond"&&(p=`${p}-${kjt(p,"in",a)}`),{source:f,target:p,sourceId:v,targetId:m})},dUe=function(i,a,f,p){Wt.info("abc78 edges = ",i);const v=p.insert("g").attr("class","edgeLabels");let m={},b=a.db.getDirection(),E,C;if(i.defaultStyle!==void 0){const A=em(i.defaultStyle);E=A.style,C=A.labelStyle}return i.forEach(function(A){const P="L-"+A.start+"-"+A.end;m[P]===void 0?(m[P]=0,Wt.info("abc78 new entry",P,m[P])):(m[P]++,Wt.info("abc78 new entry",P,m[P]));let F=P+"-"+m[P];Wt.info("abc78 new link id to be used is",P,F,m[P]);const j="LS-"+A.start,R="LE-"+A.end,H={style:"",labelStyle:""};switch(H.minlen=A.length||1,A.type==="arrow_open"?H.arrowhead="none":H.arrowhead="normal",H.arrowTypeStart="arrow_open",H.arrowTypeEnd="arrow_open",A.type){case"double_arrow_cross":H.arrowTypeStart="arrow_cross";case"arrow_cross":H.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":H.arrowTypeStart="arrow_point";case"arrow_point":H.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":H.arrowTypeStart="arrow_circle";case"arrow_circle":H.arrowTypeEnd="arrow_circle";break}let Y="",rt="";switch(A.stroke){case"normal":Y="fill:none;",E!==void 0&&(Y=E),C!==void 0&&(rt=C),H.thickness="normal",H.pattern="solid";break;case"dotted":H.thickness="normal",H.pattern="dotted",H.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":H.thickness="thick",H.pattern="solid",H.style="stroke-width: 3.5px;fill:none;";break}if(A.style!==void 0){const mt=em(A.style);Y=mt.style,rt=mt.labelStyle}H.style=H.style+=Y,H.labelStyle=H.labelStyle+=rt,A.interpolate!==void 0?H.curve=Z2(A.interpolate,ig):i.defaultInterpolate!==void 0?H.curve=Z2(i.defaultInterpolate,ig):H.curve=Z2(lUe.curve,ig),A.text===void 0?A.style!==void 0&&(H.arrowheadStyle="fill: #333"):(H.arrowheadStyle="fill: #333",H.labelpos="c"),H.labelType=A.labelType,H.label=A.text.replace(ui.lineBreakRegex,` +`),A.style===void 0&&(H.style=H.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),H.labelStyle=H.labelStyle.replace("color:","fill:"),H.id=F,H.classes="flowchart-link "+j+" "+R;const J=ABt(v,H),{source:it,target:ft,sourceId:Tt,targetId:kt}=fUe(A,b);Wt.debug("abc78 source and target",it,ft),f.edges.push({id:"e"+A.start+A.end,sources:[it],targets:[ft],sourceId:Tt,targetId:kt,labelEl:J,labels:[{width:H.width,height:H.height,orgWidth:H.width,orgHeight:H.height,text:H.label,layoutOptions:{"edgeLabels.inline":"true","edgeLabels.placement":"CENTER"}}],edgeData:H})}),f},gUe=function(i,a,f,p){let v="";switch(p&&(v=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,v=v.replace(/\(/g,"\\("),v=v.replace(/\)/g,"\\)")),a.arrowTypeStart){case"arrow_cross":i.attr("marker-start","url("+v+"#"+f+"-crossStart)");break;case"arrow_point":i.attr("marker-start","url("+v+"#"+f+"-pointStart)");break;case"arrow_barb":i.attr("marker-start","url("+v+"#"+f+"-barbStart)");break;case"arrow_circle":i.attr("marker-start","url("+v+"#"+f+"-circleStart)");break;case"aggregation":i.attr("marker-start","url("+v+"#"+f+"-aggregationStart)");break;case"extension":i.attr("marker-start","url("+v+"#"+f+"-extensionStart)");break;case"composition":i.attr("marker-start","url("+v+"#"+f+"-compositionStart)");break;case"dependency":i.attr("marker-start","url("+v+"#"+f+"-dependencyStart)");break;case"lollipop":i.attr("marker-start","url("+v+"#"+f+"-lollipopStart)");break}switch(a.arrowTypeEnd){case"arrow_cross":i.attr("marker-end","url("+v+"#"+f+"-crossEnd)");break;case"arrow_point":i.attr("marker-end","url("+v+"#"+f+"-pointEnd)");break;case"arrow_barb":i.attr("marker-end","url("+v+"#"+f+"-barbEnd)");break;case"arrow_circle":i.attr("marker-end","url("+v+"#"+f+"-circleEnd)");break;case"aggregation":i.attr("marker-end","url("+v+"#"+f+"-aggregationEnd)");break;case"extension":i.attr("marker-end","url("+v+"#"+f+"-extensionEnd)");break;case"composition":i.attr("marker-end","url("+v+"#"+f+"-compositionEnd)");break;case"dependency":i.attr("marker-end","url("+v+"#"+f+"-dependencyEnd)");break;case"lollipop":i.attr("marker-end","url("+v+"#"+f+"-lollipopEnd)");break}},pUe=function(i,a){return Wt.info("Extracting classes"),a.db.getClasses()},bUe=function(i){const a={parentById:{},childrenById:{}},f=i.getSubGraphs();return Wt.info("Subgraphs - ",f),f.forEach(function(p){p.nodes.forEach(function(v){a.parentById[v]=p.id,a.childrenById[p.id]===void 0&&(a.childrenById[p.id]=[]),a.childrenById[p.id].push(v)})}),f.forEach(function(p){p.id,a.parentById[p.id]!==void 0&&a.parentById[p.id]}),a},vUe=function(i,a,f){const p=oUe(i,a,f);if(p===void 0||p==="root")return{x:0,y:0};const v=B5[p].offset;return{x:v.posX,y:v.posY}},wUe=function(i,a,f,p,v){const m=vUe(a.sourceId,a.targetId,v),b=a.sections[0].startPoint,E=a.sections[0].endPoint,A=(a.sections[0].bendPoints?a.sections[0].bendPoints:[]).map(rt=>[rt.x+m.x,rt.y+m.y]),P=[[b.x+m.x,b.y+m.y],...A,[E.x+m.x,E.y+m.y]],F=YE().curve(ig),j=i.insert("path").attr("d",F(P)).attr("class","path "+f.classes).attr("fill","none"),R=i.insert("g").attr("class","edgeLabel"),H=xr(R.node().appendChild(a.labelEl)),Y=H.node().firstChild.getBoundingClientRect();H.attr("width",Y.width),H.attr("height",Y.height),R.attr("transform",`translate(${a.labels[0].x+m.x}, ${a.labels[0].y+m.y})`),gUe(j,f,p.type,p.arrowMarkerAbsolute)},Ejt=(i,a)=>{i.forEach(f=>{f.children||(f.children=[]);const p=a.childrenById[f.id];p&&p.forEach(v=>{f.children.push(B5[v])}),Ejt(f.children,a)})},mUe=async function(i,a,f,p){var ct;B5={},sv={};const v=xr("body").append("div").attr("style","height:400px").attr("id","cy");let m={id:"root",layoutOptions:{"elk.hierarchyHandling":"INCLUDE_CHILDREN","org.eclipse.elk.padding":"[top=100, left=100, bottom=110, right=110]","elk.layered.spacing.edgeNodeBetweenLayers":"30","elk.direction":"DOWN"},children:[],edges:[]};switch(Wt.info("Drawing flowchart using v3 renderer",yjt),p.db.getDirection()){case"BT":m.layoutOptions["elk.direction"]="UP";break;case"TB":m.layoutOptions["elk.direction"]="DOWN";break;case"LR":m.layoutOptions["elk.direction"]="RIGHT";break;case"RL":m.layoutOptions["elk.direction"]="LEFT";break}const{securityLevel:E,flowchart:C}=De();let A;E==="sandbox"&&(A=xr("#i"+a));const P=xr(E==="sandbox"?A.nodes()[0].contentDocument.body:"body"),F=E==="sandbox"?A.nodes()[0].contentDocument:document,j=P.select(`[id="${a}"]`);DFt(j,["point","circle","cross"],p.type,p.arrowMarkerAbsolute);const H=p.db.getVertices();let Y;const rt=p.db.getSubGraphs();Wt.info("Subgraphs - ",rt);for(let yt=rt.length-1;yt>=0;yt--)Y=rt[yt],p.db.addVertex(Y.id,{text:Y.title,type:Y.labelType},"group",void 0,Y.classes,Y.dir);const J=j.insert("g").attr("class","subgraphs"),it=bUe(p.db);m=await hUe(H,a,P,F,p,it,m);const ft=j.insert("g").attr("class","edges edgePath"),Tt=p.db.getEdges();m=dUe(Tt,p,m,j),Object.keys(B5).forEach(yt=>{const st=B5[yt];st.parent||m.children.push(st),it.childrenById[yt]!==void 0&&(st.labels=[{text:st.labelText,layoutOptions:{"nodeLabels.placement":"[H_CENTER, V_TOP, INSIDE]"},width:st.labelData.width,height:st.labelData.height}],delete st.x,delete st.y,delete st.width,delete st.height)}),Ejt(m.children,it),Wt.info("after layout",JSON.stringify(m,null,2));const mt=await yjt.layout(m);Tjt(0,0,mt.children,j,J,p,0),Wt.info("after layout",mt),(ct=mt.edges)==null||ct.map(yt=>{wUe(ft,yt,yt.edgeData,p,it)}),s9({},j,C.diagramPadding,C.useMaxWidth),v.remove()},Tjt=(i,a,f,p,v,m,b)=>{f.forEach(function(E){if(E)if(B5[E.id].offset={posX:E.x+i,posY:E.y+a,x:i,y:a,depth:b,width:E.width,height:E.height},E.type==="group"){const C=v.insert("g").attr("class","subgraph");C.insert("rect").attr("class","subgraph subgraph-lvl-"+b%5+" node").attr("x",E.x+i).attr("y",E.y+a).attr("width",E.width).attr("height",E.height);const A=C.insert("g").attr("class","label"),P=De().flowchart.htmlLabels?E.labelData.width/2:0;A.attr("transform",`translate(${E.labels[0].x+i+E.x+P}, ${E.labels[0].y+a+E.y+3})`),A.node().appendChild(E.labelData.labelNode),Wt.info("Id (UGH)= ",E.type,E.labels)}else Wt.info("Id (UGH)= ",E.id),E.el.attr("transform",`translate(${E.x+i+E.width/2}, ${E.y+a+E.height/2})`)}),f.forEach(function(E){E&&E.type==="group"&&Tjt(i+E.x,a+E.y,E.children,p,v,m,b+1)})},yUe={getClasses:pUe,draw:mUe},xUe=i=>{let a="";for(let f=0;f<5;f++)a+=` + .subgraph-lvl-${f} { + fill: ${i[`surface${f}`]}; + stroke: ${i[`surfacePeer${f}`]}; + } + `;return a},kUe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:DDe,renderer:yUe,parser:Fdt,styles:i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span { + color: ${i.titleColor}; + } + + .label text,span { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.85; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + .cluster rect { + fill: ${i.clusterBkg}; + stroke: ${i.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } + .subgraph { + stroke-width:2; + rx:3; + } + // .subgraph-lvl-1 { + // fill:#ccc; + // // stroke:black; + // } + + .flowchart-label text { + text-anchor: middle; + } + + ${xUe(i)} +`}},Symbol.toStringTag,{value:"Module"}));var Fgt=function(){var i=function(rt,J,it,ft){for(it=it||{},ft=rt.length;ft--;it[rt[ft]]=J);return it},a=[1,2],f=[1,5],p=[6,9,11,17,18,20,22,23,26,27,28],v=[1,15],m=[1,16],b=[1,17],E=[1,18],C=[1,19],A=[1,23],P=[1,24],F=[1,27],j=[4,6,9,11,17,18,20,22,23,26,27,28],R={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,period_statement:24,event_statement:25,period:26,event:27,open_directive:28,type_directive:29,arg_directive:30,close_directive:31,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",26:"period",27:"event",28:"open_directive",29:"type_directive",30:"arg_directive",31:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[24,1],[25,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(J,it,ft,Tt,kt,mt,ct){var yt=mt.length-1;switch(kt){case 1:return mt[yt-1];case 3:this.$=[];break;case 4:mt[yt-1].push(mt[yt]),this.$=mt[yt-1];break;case 5:case 6:this.$=mt[yt];break;case 7:case 8:this.$=[];break;case 11:Tt.getCommonDb().setDiagramTitle(mt[yt].substr(6)),this.$=mt[yt].substr(6);break;case 12:this.$=mt[yt].trim(),Tt.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=mt[yt].trim(),Tt.getCommonDb().setAccDescription(this.$);break;case 15:Tt.addSection(mt[yt].substr(8)),this.$=mt[yt].substr(8);break;case 19:Tt.addTask(mt[yt],0,""),this.$=mt[yt];break;case 20:Tt.addEvent(mt[yt].substr(2)),this.$=mt[yt];break;case 21:Tt.parseDirective("%%{","open_directive");break;case 22:Tt.parseDirective(mt[yt],"type_directive");break;case 23:mt[yt]=mt[yt].trim().replace(/'/g,'"'),Tt.parseDirective(mt[yt],"arg_directive");break;case 24:Tt.parseDirective("}%%","close_directive","timeline");break}},table:[{3:1,4:a,7:3,12:4,28:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,28:f},{13:8,29:[1,9]},{29:[2,21]},{6:[1,10],7:22,8:11,9:[1,12],10:13,11:[1,14],12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:A,27:P,28:f},{1:[2,2]},{14:25,15:[1,26],31:F},i([15,31],[2,22]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:22,10:28,12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:A,27:P,28:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),{19:[1,29]},{21:[1,30]},i(p,[2,14]),i(p,[2,15]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(p,[2,19]),i(p,[2,20]),{11:[1,31]},{16:32,30:[1,33]},{11:[2,24]},i(p,[2,5]),i(p,[2,12]),i(p,[2,13]),i(j,[2,9]),{14:34,31:F},{31:[2,23]},{11:[1,35]},i(j,[2,10])],defaultActions:{5:[2,21],7:[2,2],27:[2,24],33:[2,23]},parseError:function(J,it){if(it.recoverable)this.trace(J);else{var ft=new Error(J);throw ft.hash=it,ft}},parse:function(J){var it=this,ft=[0],Tt=[],kt=[null],mt=[],ct=this.table,yt="",st=0,xt=0,ht=2,dt=1,Ct=mt.slice.call(arguments,1),tt=Object.create(this.lexer),Pt={yy:{}};for(var pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,pt)&&(Pt.yy[pt]=this.yy[pt]);tt.setInput(J,Pt.yy),Pt.yy.lexer=tt,Pt.yy.parser=this,typeof tt.yylloc>"u"&&(tt.yylloc={});var Ft=tt.yylloc;mt.push(Ft);var X=tt.options&&tt.options.ranges;typeof Pt.yy.parseError=="function"?this.parseError=Pt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Rt(){var ke;return ke=Tt.pop()||tt.lex()||dt,typeof ke!="number"&&(ke instanceof Array&&(Tt=ke,ke=Tt.pop()),ke=it.symbols_[ke]||ke),ke}for(var Bt,vt,Ot,Vt,qe={},_n,Te,Wn,Ae;;){if(vt=ft[ft.length-1],this.defaultActions[vt]?Ot=this.defaultActions[vt]:((Bt===null||typeof Bt>"u")&&(Bt=Rt()),Ot=ct[vt]&&ct[vt][Bt]),typeof Ot>"u"||!Ot.length||!Ot[0]){var ne="";Ae=[];for(_n in ct[vt])this.terminals_[_n]&&_n>ht&&Ae.push("'"+this.terminals_[_n]+"'");tt.showPosition?ne="Parse error on line "+(st+1)+`: +`+tt.showPosition()+` +Expecting `+Ae.join(", ")+", got '"+(this.terminals_[Bt]||Bt)+"'":ne="Parse error on line "+(st+1)+": Unexpected "+(Bt==dt?"end of input":"'"+(this.terminals_[Bt]||Bt)+"'"),this.parseError(ne,{text:tt.match,token:this.terminals_[Bt]||Bt,line:tt.yylineno,loc:Ft,expected:Ae})}if(Ot[0]instanceof Array&&Ot.length>1)throw new Error("Parse Error: multiple actions possible at state: "+vt+", token: "+Bt);switch(Ot[0]){case 1:ft.push(Bt),kt.push(tt.yytext),mt.push(tt.yylloc),ft.push(Ot[1]),Bt=null,xt=tt.yyleng,yt=tt.yytext,st=tt.yylineno,Ft=tt.yylloc;break;case 2:if(Te=this.productions_[Ot[1]][1],qe.$=kt[kt.length-Te],qe._$={first_line:mt[mt.length-(Te||1)].first_line,last_line:mt[mt.length-1].last_line,first_column:mt[mt.length-(Te||1)].first_column,last_column:mt[mt.length-1].last_column},X&&(qe._$.range=[mt[mt.length-(Te||1)].range[0],mt[mt.length-1].range[1]]),Vt=this.performAction.apply(qe,[yt,xt,st,Pt.yy,Ot[1],kt,mt].concat(Ct)),typeof Vt<"u")return Vt;Te&&(ft=ft.slice(0,-1*Te*2),kt=kt.slice(0,-1*Te),mt=mt.slice(0,-1*Te)),ft.push(this.productions_[Ot[1]][0]),kt.push(qe.$),mt.push(qe._$),Wn=ct[ft[ft.length-2]][ft[ft.length-1]],ft.push(Wn);break;case 3:return!0}}return!0}},H=function(){var rt={EOF:1,parseError:function(it,ft){if(this.yy.parser)this.yy.parser.parseError(it,ft);else throw new Error(it)},setInput:function(J,it){return this.yy=it||this.yy||{},this._input=J,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var J=this._input[0];this.yytext+=J,this.yyleng++,this.offset++,this.match+=J,this.matched+=J;var it=J.match(/(?:\r\n?|\n).*/g);return it?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),J},unput:function(J){var it=J.length,ft=J.split(/(?:\r\n?|\n)/g);this._input=J+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-it),this.offset-=it;var Tt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ft.length-1&&(this.yylineno-=ft.length-1);var kt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ft?(ft.length===Tt.length?this.yylloc.first_column:0)+Tt[Tt.length-ft.length].length-ft[0].length:this.yylloc.first_column-it},this.options.ranges&&(this.yylloc.range=[kt[0],kt[0]+this.yyleng-it]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(J){this.unput(this.match.slice(J))},pastInput:function(){var J=this.matched.substr(0,this.matched.length-this.match.length);return(J.length>20?"...":"")+J.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var J=this.match;return J.length<20&&(J+=this._input.substr(0,20-J.length)),(J.substr(0,20)+(J.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var J=this.pastInput(),it=new Array(J.length+1).join("-");return J+this.upcomingInput()+` +`+it+"^"},test_match:function(J,it){var ft,Tt,kt;if(this.options.backtrack_lexer&&(kt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(kt.yylloc.range=this.yylloc.range.slice(0))),Tt=J[0].match(/(?:\r\n?|\n).*/g),Tt&&(this.yylineno+=Tt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Tt?Tt[Tt.length-1].length-Tt[Tt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+J[0].length},this.yytext+=J[0],this.match+=J[0],this.matches=J,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(J[0].length),this.matched+=J[0],ft=this.performAction.call(this,this.yy,this,it,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ft)return ft;if(this._backtrack){for(var mt in kt)this[mt]=kt[mt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var J,it,ft,Tt;this._more||(this.yytext="",this.match="");for(var kt=this._currentRules(),mt=0;mtit[0].length)){if(it=ft,Tt=mt,this.options.backtrack_lexer){if(J=this.test_match(ft,kt[mt]),J!==!1)return J;if(this._backtrack){it=!1;continue}else return!1}else if(!this.options.flex)break}return it?(J=this.test_match(it,kt[Tt]),J!==!1?J:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var it=this.next();return it||this.lex()},begin:function(it){this.conditionStack.push(it)},popState:function(){var it=this.conditionStack.length-1;return it>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(it){return it=this.conditionStack.length-1-Math.abs(it||0),it>=0?this.conditionStack[it]:"INITIAL"},pushState:function(it){this.begin(it)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(it,ft,Tt,kt){switch(Tt){case 0:return this.begin("open_directive"),28;case 1:return this.begin("type_directive"),29;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),31;case 4:return 30;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 27;case 21:return 26;case 22:return 6;case 23:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?::\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23],inclusive:!0}}};return rt}();R.lexer=H;function Y(){this.yy={}}return Y.prototype=R,R.Parser=Y,new Y}();Fgt.parser=Fgt;const EUe=Fgt;let bL="",_jt=0;const Bgt=[],UK=[],vL=[],Cjt=()=>COt,Sjt=(i,a,f)=>{FW(globalThis,i,a,f)},Ajt=function(){Bgt.length=0,UK.length=0,bL="",vL.length=0,cg()},Ljt=function(i){bL=i,Bgt.push(i)},Mjt=function(){return Bgt},Djt=function(){let i=Pjt();const a=100;let f=0;for(;!i&&ff.id===_jt-1).events.push(i)},Njt=function(i){const a={section:bL,type:bL,description:i,task:i,classes:[]};UK.push(a)},Pjt=function(){const i=function(f){return vL[f].processed};let a=!0;for(const[f,p]of vL.entries())i(f),a=a&&p.processed;return a},TUe=Object.freeze(Object.defineProperty({__proto__:null,addEvent:Ojt,addSection:Ljt,addTask:Ijt,addTaskOrg:Njt,clear:Ajt,default:{clear:Ajt,getCommonDb:Cjt,addSection:Ljt,getSections:Mjt,getTasks:Djt,addTask:Ijt,addTaskOrg:Njt,addEvent:Ojt,parseDirective:Sjt},getCommonDb:Cjt,getSections:Mjt,getTasks:Djt,parseDirective:Sjt},Symbol.toStringTag,{value:"Module"})),_Ue=12,WK=function(i,a){const f=i.append("rect");return f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),f.attr("rx",a.rx),f.attr("ry",a.ry),a.class!==void 0&&f.attr("class",a.class),f},CUe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function m(C){const A=LA().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(C){const A=LA().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(C){C.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?m(v):a.score<3?b(v):E(v),p},SUe=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},Fjt=function(i,a){const f=a.text.replace(//gi," "),p=i.append("text");p.attr("x",a.x),p.attr("y",a.y),p.attr("class","legend"),p.style("text-anchor",a.anchor),a.class!==void 0&&p.attr("class",a.class);const v=p.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.text(f),p},AUe=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");p.attr("points",f(a.x,a.y,50,20,7)),p.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,Fjt(i,a)},LUe=function(i,a,f){const p=i.append("g"),v=Rgt();v.x=a.x,v.y=a.y,v.fill=a.fill,v.width=f.width,v.height=f.height,v.class="journey-section section-type-"+a.num,v.rx=3,v.ry=3,WK(p,v),Rjt(f)(a.text,p,v.x,v.y,v.width,v.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let Bjt=-1;const MUe=function(i,a,f){const p=a.x+f.width/2,v=i.append("g");Bjt++;const m=300+5*30;v.append("line").attr("id","task"+Bjt).attr("x1",p).attr("y1",a.y).attr("x2",p).attr("y2",m).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),CUe(v,{cx:p,cy:300+(5-a.score)*30,score:a.score});const b=Rgt();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,WK(v,b),a.x+14,Rjt(f)(a.task,v,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},DUe=function(i,a){WK(i,{x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,class:"rect"}).lower()},IUe=function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},Rgt=function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},Rjt=function(){function i(v,m,b,E,C,A,P,F){const j=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("font-color",F).style("text-anchor","middle").text(v);p(j,P)}function a(v,m,b,E,C,A,P,F,j){const{taskFontSize:R,taskFontFamily:H}=F,Y=v.split(//gi);for(let rt=0;rt)/).reverse(),v,m=[],b=1.1,E=f.attr("y"),C=parseFloat(f.attr("dy")),A=f.text(null).append("tspan").attr("x",0).attr("y",E).attr("dy",C+"em");for(let P=0;Pa||v==="
")&&(m.pop(),A.text(m.join(" ").trim()),v==="
"?m=[""]:m=[v],A=f.append("tspan").attr("x",0).attr("y",E).attr("dy",b+"em").text(v))})}const NUe=function(i,a,f,p){const v=f%_Ue-1,m=i.append("g");a.section=v,m.attr("class",(a.class?a.class+" ":"")+"timeline-node "+("section-"+v));const b=m.append("g"),E=m.append("g"),A=E.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(jjt,a.width).node().getBBox(),P=p.fontSize&&p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;return a.height=A.height+P*1.1*.5+a.padding,a.height=Math.max(a.height,a.maxHeight),a.width=a.width+2*a.padding,E.attr("transform","translate("+a.width/2+", "+a.padding/2+")"),FUe(b,a,v),a},PUe=function(i,a,f){const p=i.append("g"),m=p.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(jjt,a.width).node().getBBox(),b=f.fontSize&&f.fontSize.replace?f.fontSize.replace("px",""):f.fontSize;return p.remove(),m.height+b*1.1*.5+a.padding},FUe=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+a.type).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},T9={drawRect:WK,drawCircle:SUe,drawSection:LUe,drawText:Fjt,drawLabel:AUe,drawTask:MUe,drawBackgroundRect:DUe,getTextObj:IUe,getNoteRect:Rgt,initGraphics:OUe,drawNode:NUe,getVirtualNodeHeight:PUe},BUe=function(i,a,f,p){var st,xt;const v=De(),m=v.leftMargin??50;Wt.debug("timeline",p.db);const b=v.securityLevel;let E;b==="sandbox"&&(E=xr("#i"+a));const A=xr(b==="sandbox"?E.nodes()[0].contentDocument.body:"body").select("#"+a);A.append("g");const P=p.db.getTasks(),F=p.db.getCommonDb().getDiagramTitle();Wt.debug("task",P),T9.initGraphics(A);const j=p.db.getSections();Wt.debug("sections",j);let R=0,H=0,Y=0,rt=0,J=50+m,it=50;rt=50;let ft=0,Tt=!0;j.forEach(function(ht){const dt={number:ft,descr:ht,section:ft,width:150,padding:20,maxHeight:R},Ct=T9.getVirtualNodeHeight(A,dt,v);Wt.debug("sectionHeight before draw",Ct),R=Math.max(R,Ct+20)});let kt=0,mt=0;Wt.debug("tasks.length",P.length);for(const[ht,dt]of P.entries()){const Ct={number:ht,descr:dt,section:dt.section,width:150,padding:20,maxHeight:H},tt=T9.getVirtualNodeHeight(A,Ct,v);Wt.debug("taskHeight before draw",tt),H=Math.max(H,tt+20),kt=Math.max(kt,dt.events.length);let Pt=0;for(let pt=0;pt0?j.forEach(ht=>{const dt=P.filter(pt=>pt.section===ht),Ct={number:ft,descr:ht,section:ft,width:200*Math.max(dt.length,1)-50,padding:20,maxHeight:R};Wt.debug("sectionNode",Ct);const tt=A.append("g"),Pt=T9.drawNode(tt,Ct,ft,v);Wt.debug("sectionNode output",Pt),tt.attr("transform",`translate(${J}, ${rt})`),it+=R+50,dt.length>0&&$jt(A,dt,ft,J,it,H,v,kt,mt,R,!1),J+=200*Math.max(dt.length,1),it=rt,ft++}):(Tt=!1,$jt(A,P,ft,J,it,H,v,kt,mt,R,!0));const ct=A.node().getBBox();Wt.debug("bounds",ct),F&&A.append("text").text(F).attr("x",ct.width/2-m).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),Y=Tt?R+H+150:H+100,A.append("g").attr("class","lineWrapper").append("line").attr("x1",m).attr("y1",Y).attr("x2",ct.width+3*m).attr("y2",Y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),s9(void 0,A,((st=v.timeline)==null?void 0:st.padding)??50,((xt=v.timeline)==null?void 0:xt.useMaxWidth)??!1)},$jt=function(i,a,f,p,v,m,b,E,C,A,P){var F;for(const j of a){const R={descr:j.task,section:f,number:f,width:150,padding:20,maxHeight:m};Wt.debug("taskNode",R);const H=i.append("g").attr("class","taskWrapper"),rt=T9.drawNode(H,R,f,b).height;if(Wt.debug("taskHeight after draw",rt),H.attr("transform",`translate(${p}, ${v})`),m=Math.max(m,rt),j.events){const J=i.append("g").attr("class","lineWrapper");let it=m;v+=100,it=it+RUe(i,j.events,f,p,v,b),v-=100,J.append("line").attr("x1",p+190/2).attr("y1",v+m).attr("x2",p+190/2).attr("y2",v+m+(P?m:A)+C+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}p=p+200,P&&!((F=b.timeline)!=null&&F.disableMulticolor)&&f++}v=v-10},RUe=function(i,a,f,p,v,m){let b=0;const E=v;v=v+100;for(const C of a){const A={descr:C,section:f,number:f,width:150,padding:20,maxHeight:50};Wt.debug("eventNode",A);const P=i.append("g").attr("class","eventWrapper"),j=T9.drawNode(P,A,f,m).height;b=b+j,P.attr("transform",`translate(${p}, ${v})`),v=v+10+j}return v=E,b},jUe={setConf:()=>{},draw:BUe},$Ue=i=>{let a="";for(let f=0;f` + .edge { + stroke-width: 3; + } + ${$Ue(i)} + .section-root rect, .section-root path, .section-root circle { + fill: ${i.git0}; + } + .section-root text { + fill: ${i.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .eventWrapper { + filter: brightness(120%); + } +`}},Symbol.toStringTag,{value:"Module"}));var jgt=function(){var i=function(Tt,kt,mt,ct){for(mt=mt||{},ct=Tt.length;ct--;mt[Tt[ct]]=kt);return mt},a=[1,4],f=[1,13],p=[1,12],v=[1,15],m=[1,16],b=[1,20],E=[1,19],C=[6,7,8],A=[1,26],P=[1,24],F=[1,25],j=[6,7,11],R=[1,6,13,15,16,19,22],H=[1,33],Y=[1,34],rt=[1,6,7,11,13,15,16,19,22],J={trace:function(){},yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:function(kt,mt,ct,yt,st,xt,ht){var dt=xt.length-1;switch(st){case 6:case 7:return yt;case 8:yt.getLogger().trace("Stop NL ");break;case 9:yt.getLogger().trace("Stop EOF ");break;case 11:yt.getLogger().trace("Stop NL2 ");break;case 12:yt.getLogger().trace("Stop EOF2 ");break;case 15:yt.getLogger().info("Node: ",xt[dt].id),yt.addNode(xt[dt-1].length,xt[dt].id,xt[dt].descr,xt[dt].type);break;case 16:yt.getLogger().trace("Icon: ",xt[dt]),yt.decorateNode({icon:xt[dt]});break;case 17:case 21:yt.decorateNode({class:xt[dt]});break;case 18:yt.getLogger().trace("SPACELIST");break;case 19:yt.getLogger().trace("Node: ",xt[dt].id),yt.addNode(0,xt[dt].id,xt[dt].descr,xt[dt].type);break;case 20:yt.decorateNode({icon:xt[dt]});break;case 25:yt.getLogger().trace("node found ..",xt[dt-2]),this.$={id:xt[dt-1],descr:xt[dt-1],type:yt.getType(xt[dt-2],xt[dt])};break;case 26:this.$={id:xt[dt],descr:xt[dt],type:yt.nodeType.DEFAULT};break;case 27:yt.getLogger().trace("node found ..",xt[dt-3]),this.$={id:xt[dt-3],descr:xt[dt-1],type:yt.getType(xt[dt-2],xt[dt])};break}},table:[{3:1,4:2,5:3,6:[1,5],8:a},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:a},{6:f,7:[1,10],9:9,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(C,[2,3]),{1:[2,2]},i(C,[2,4]),i(C,[2,5]),{1:[2,6],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:f,9:22,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:A,7:P,10:23,11:F},i(j,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:b,22:E}),i(j,[2,18]),i(j,[2,19]),i(j,[2,20]),i(j,[2,21]),i(j,[2,23]),i(j,[2,24]),i(j,[2,26],{19:[1,30]}),{20:[1,31]},{6:A,7:P,10:32,11:F},{1:[2,7],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(R,[2,14],{7:H,11:Y}),i(rt,[2,8]),i(rt,[2,9]),i(rt,[2,10]),i(j,[2,15]),i(j,[2,16]),i(j,[2,17]),{20:[1,35]},{21:[1,36]},i(R,[2,13],{7:H,11:Y}),i(rt,[2,11]),i(rt,[2,12]),{21:[1,37]},i(j,[2,25]),i(j,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:function(kt,mt){if(mt.recoverable)this.trace(kt);else{var ct=new Error(kt);throw ct.hash=mt,ct}},parse:function(kt){var mt=this,ct=[0],yt=[],st=[null],xt=[],ht=this.table,dt="",Ct=0,tt=0,Pt=2,pt=1,Ft=xt.slice.call(arguments,1),X=Object.create(this.lexer),Rt={yy:{}};for(var Bt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Bt)&&(Rt.yy[Bt]=this.yy[Bt]);X.setInput(kt,Rt.yy),Rt.yy.lexer=X,Rt.yy.parser=this,typeof X.yylloc>"u"&&(X.yylloc={});var vt=X.yylloc;xt.push(vt);var Ot=X.options&&X.options.ranges;typeof Rt.yy.parseError=="function"?this.parseError=Rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Vt(){var Ce;return Ce=yt.pop()||X.lex()||pt,typeof Ce!="number"&&(Ce instanceof Array&&(yt=Ce,Ce=yt.pop()),Ce=mt.symbols_[Ce]||Ce),Ce}for(var qe,_n,Te,Wn,Ae={},ne,ke,Ve,Ee;;){if(_n=ct[ct.length-1],this.defaultActions[_n]?Te=this.defaultActions[_n]:((qe===null||typeof qe>"u")&&(qe=Vt()),Te=ht[_n]&&ht[_n][qe]),typeof Te>"u"||!Te.length||!Te[0]){var He="";Ee=[];for(ne in ht[_n])this.terminals_[ne]&&ne>Pt&&Ee.push("'"+this.terminals_[ne]+"'");X.showPosition?He="Parse error on line "+(Ct+1)+`: +`+X.showPosition()+` +Expecting `+Ee.join(", ")+", got '"+(this.terminals_[qe]||qe)+"'":He="Parse error on line "+(Ct+1)+": Unexpected "+(qe==pt?"end of input":"'"+(this.terminals_[qe]||qe)+"'"),this.parseError(He,{text:X.match,token:this.terminals_[qe]||qe,line:X.yylineno,loc:vt,expected:Ee})}if(Te[0]instanceof Array&&Te.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_n+", token: "+qe);switch(Te[0]){case 1:ct.push(qe),st.push(X.yytext),xt.push(X.yylloc),ct.push(Te[1]),qe=null,tt=X.yyleng,dt=X.yytext,Ct=X.yylineno,vt=X.yylloc;break;case 2:if(ke=this.productions_[Te[1]][1],Ae.$=st[st.length-ke],Ae._$={first_line:xt[xt.length-(ke||1)].first_line,last_line:xt[xt.length-1].last_line,first_column:xt[xt.length-(ke||1)].first_column,last_column:xt[xt.length-1].last_column},Ot&&(Ae._$.range=[xt[xt.length-(ke||1)].range[0],xt[xt.length-1].range[1]]),Wn=this.performAction.apply(Ae,[dt,tt,Ct,Rt.yy,Te[1],st,xt].concat(Ft)),typeof Wn<"u")return Wn;ke&&(ct=ct.slice(0,-1*ke*2),st=st.slice(0,-1*ke),xt=xt.slice(0,-1*ke)),ct.push(this.productions_[Te[1]][0]),st.push(Ae.$),xt.push(Ae._$),Ve=ht[ct[ct.length-2]][ct[ct.length-1]],ct.push(Ve);break;case 3:return!0}}return!0}},it=function(){var Tt={EOF:1,parseError:function(mt,ct){if(this.yy.parser)this.yy.parser.parseError(mt,ct);else throw new Error(mt)},setInput:function(kt,mt){return this.yy=mt||this.yy||{},this._input=kt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var kt=this._input[0];this.yytext+=kt,this.yyleng++,this.offset++,this.match+=kt,this.matched+=kt;var mt=kt.match(/(?:\r\n?|\n).*/g);return mt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),kt},unput:function(kt){var mt=kt.length,ct=kt.split(/(?:\r\n?|\n)/g);this._input=kt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-mt),this.offset-=mt;var yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ct.length-1&&(this.yylineno-=ct.length-1);var st=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ct?(ct.length===yt.length?this.yylloc.first_column:0)+yt[yt.length-ct.length].length-ct[0].length:this.yylloc.first_column-mt},this.options.ranges&&(this.yylloc.range=[st[0],st[0]+this.yyleng-mt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(kt){this.unput(this.match.slice(kt))},pastInput:function(){var kt=this.matched.substr(0,this.matched.length-this.match.length);return(kt.length>20?"...":"")+kt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var kt=this.match;return kt.length<20&&(kt+=this._input.substr(0,20-kt.length)),(kt.substr(0,20)+(kt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var kt=this.pastInput(),mt=new Array(kt.length+1).join("-");return kt+this.upcomingInput()+` +`+mt+"^"},test_match:function(kt,mt){var ct,yt,st;if(this.options.backtrack_lexer&&(st={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(st.yylloc.range=this.yylloc.range.slice(0))),yt=kt[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+kt[0].length},this.yytext+=kt[0],this.match+=kt[0],this.matches=kt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(kt[0].length),this.matched+=kt[0],ct=this.performAction.call(this,this.yy,this,mt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ct)return ct;if(this._backtrack){for(var xt in st)this[xt]=st[xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var kt,mt,ct,yt;this._more||(this.yytext="",this.match="");for(var st=this._currentRules(),xt=0;xtmt[0].length)){if(mt=ct,yt=xt,this.options.backtrack_lexer){if(kt=this.test_match(ct,st[xt]),kt!==!1)return kt;if(this._backtrack){mt=!1;continue}else return!1}else if(!this.options.flex)break}return mt?(kt=this.test_match(mt,st[yt]),kt!==!1?kt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var mt=this.next();return mt||this.lex()},begin:function(mt){this.conditionStack.push(mt)},popState:function(){var mt=this.conditionStack.length-1;return mt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(mt){return mt=this.conditionStack.length-1-Math.abs(mt||0),mt>=0?this.conditionStack[mt]:"INITIAL"},pushState:function(mt){this.begin(mt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(mt,ct,yt,st){switch(yt){case 0:return mt.getLogger().trace("Found comment",ct.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:this.popState();break;case 5:mt.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return mt.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:mt.getLogger().trace("end icon"),this.popState();break;case 10:return mt.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return mt.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return mt.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return mt.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:return this.begin("NODE"),19;case 15:return this.begin("NODE"),19;case 16:return this.begin("NODE"),19;case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:mt.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return mt.getLogger().trace("description:",ct.yytext),"NODE_DESCR";case 26:this.popState();break;case 27:return this.popState(),mt.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),mt.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),mt.getLogger().trace("node end ...",ct.yytext),"NODE_DEND";case 30:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 31:return this.popState(),mt.getLogger().trace("node end (-"),"NODE_DEND";case 32:return this.popState(),mt.getLogger().trace("node end (-"),"NODE_DEND";case 33:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 34:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 35:return mt.getLogger().trace("Long description:",ct.yytext),20;case 36:return mt.getLogger().trace("Long description:",ct.yytext),20}},rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return Tt}();J.lexer=it;function ft(){this.yy={}}return ft.prototype=J,J.Parser=ft,new ft}();jgt.parser=jgt;const qUe=jgt,WP=i=>v0(i,De());let av=[],zjt=0,$gt={};const HUe=()=>{av=[],zjt=0,$gt={}},VUe=function(i){for(let a=av.length-1;a>=0;a--)if(av[a].levelav.length>0?av[0]:null,UUe=(i,a,f,p)=>{Wt.info("addNode",i,a,f,p);const v=De(),m={id:zjt++,nodeId:WP(a),level:i,descr:WP(f),type:p,children:[],width:De().mindmap.maxNodeWidth};switch(m.type){case Zu.ROUNDED_RECT:m.padding=2*v.mindmap.padding;break;case Zu.RECT:m.padding=2*v.mindmap.padding;break;case Zu.HEXAGON:m.padding=2*v.mindmap.padding;break;default:m.padding=v.mindmap.padding}const b=VUe(i);if(b)b.children.push(m),av.push(m);else if(av.length===0)av.push(m);else{let E=new Error('There can be only one root. No parent could be found for ("'+m.descr+'")');throw E.hash={text:"branch "+name,token:"branch "+name,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+name+'"']},E}},Zu={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},WUe=(i,a)=>{switch(Wt.debug("In get type",i,a),i){case"[":return Zu.RECT;case"(":return a===")"?Zu.ROUNDED_RECT:Zu.CLOUD;case"((":return Zu.CIRCLE;case")":return Zu.CLOUD;case"))":return Zu.BANG;case"{{":return Zu.HEXAGON;default:return Zu.DEFAULT}},qjt=(i,a)=>{$gt[i]=a},KUe=i=>{const a=av[av.length-1];i&&i.icon&&(a.icon=WP(i.icon)),i&&i.class&&(a.class=WP(i.class))},_9=i=>{switch(i){case Zu.DEFAULT:return"no-border";case Zu.RECT:return"rect";case Zu.ROUNDED_RECT:return"rounded-rect";case Zu.CIRCLE:return"circle";case Zu.CLOUD:return"cloud";case Zu.BANG:return"bang";case Zu.HEXAGON:return"hexgon";default:return"no-border"}};let Hjt;const YUe=i=>{Hjt=i},XUe=()=>Wt,QUe=i=>av[i],zgt=i=>$gt[i],ZUe=Object.freeze(Object.defineProperty({__proto__:null,addNode:UUe,clear:HUe,decorateNode:KUe,getElementById:zgt,getLogger:XUe,getMindmap:GUe,getNodeById:QUe,getType:WUe,nodeType:Zu,get parseError(){return Hjt},sanitizeText:WP,setElementForId:qjt,setErrorHandler:YUe,type2Str:_9},Symbol.toStringTag,{value:"Module"})),Vjt=12,JUe=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},tWe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("height",a.height).attr("width",a.width)},eWe=function(i,a){const f=a.width,p=a.height,v=.15*f,m=.25*f,b=.35*f,E=.2*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 0 a${v},${v} 0 0,1 ${f*.25},${-1*f*.1} + a${b},${b} 1 0,1 ${f*.4},${-1*f*.1} + a${m},${m} 1 0,1 ${f*.35},${1*f*.2} + + a${v},${v} 1 0,1 ${f*.15},${1*p*.35} + a${E},${E} 1 0,1 ${-1*f*.15},${1*p*.65} + + a${m},${v} 1 0,1 ${-1*f*.25},${f*.15} + a${b},${b} 1 0,1 ${-1*f*.5},0 + a${v},${v} 1 0,1 ${-1*f*.25},${-1*f*.15} + + a${v},${v} 1 0,1 ${-1*f*.1},${-1*p*.35} + a${E},${E} 1 0,1 ${f*.1},${-1*p*.65} + + H0 V0 Z`)},nWe=function(i,a){const f=a.width,p=a.height,v=.15*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 0 a${v},${v} 1 0,0 ${f*.25},${-1*p*.1} + a${v},${v} 1 0,0 ${f*.25},0 + a${v},${v} 1 0,0 ${f*.25},0 + a${v},${v} 1 0,0 ${f*.25},${1*p*.1} + + a${v},${v} 1 0,0 ${f*.15},${1*p*.33} + a${v*.8},${v*.8} 1 0,0 0,${1*p*.34} + a${v},${v} 1 0,0 ${-1*f*.15},${1*p*.33} + + a${v},${v} 1 0,0 ${-1*f*.25},${p*.15} + a${v},${v} 1 0,0 ${-1*f*.25},0 + a${v},${v} 1 0,0 ${-1*f*.25},0 + a${v},${v} 1 0,0 ${-1*f*.25},${-1*p*.15} + + a${v},${v} 1 0,0 ${-1*f*.1},${-1*p*.33} + a${v*.8},${v*.8} 1 0,0 0,${-1*p*.34} + a${v},${v} 1 0,0 ${f*.1},${-1*p*.33} + + H0 V0 Z`)},rWe=function(i,a){i.append("circle").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("r",a.width/2)};function iWe(i,a,f,p,v){return i.insert("polygon",":first-child").attr("points",p.map(function(m){return m.x+","+m.y}).join(" ")).attr("transform","translate("+(v.width-a)/2+", "+f+")")}const sWe=function(i,a){const f=a.height,v=f/4,m=a.width-a.padding+2*v,b=[{x:v,y:0},{x:m-v,y:0},{x:m,y:-f/2},{x:m-v,y:-f},{x:v,y:-f},{x:0,y:-f/2}];iWe(i,m,f,b,a)},aWe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("height",a.height).attr("rx",a.padding).attr("ry",a.padding).attr("width",a.width)},Gjt={drawNode:function(i,a,f,p){const v=p.htmlLabels,m=f%(Vjt-1),b=i.append("g");a.section=m;let E="section-"+m;m<0&&(E+=" section-root"),b.attr("class",(a.class?a.class+" ":"")+"mindmap-node "+E);const C=b.append("g"),A=b.append("g"),P=a.descr.replace(/()/g,` +`);vK(A,P,{useHtmlLabels:v,width:a.width,classes:"mindmap-node-label"}),v||A.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const F=A.node().getBBox(),j=p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;if(a.height=F.height+j*1.1*.5+a.padding,a.width=F.width+2*a.padding,a.icon)if(a.type===Zu.CIRCLE)a.height+=50,a.width+=50,b.append("foreignObject").attr("height","50px").attr("width",a.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),A.attr("transform","translate("+a.width/2+", "+(a.height/2-1.5*a.padding)+")");else{a.width+=50;const R=a.height;a.height=Math.max(R,60);const H=Math.abs(a.height-R);b.append("foreignObject").attr("width","60px").attr("height",a.height).attr("style","text-align: center;margin-top:"+H/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),A.attr("transform","translate("+(25+a.width/2)+", "+(H/2+a.padding/2)+")")}else if(v){const R=(a.width-F.width)/2,H=(a.height-F.height)/2;A.attr("transform","translate("+R+", "+H+")")}else{const R=a.width/2,H=a.padding/2;A.attr("transform","translate("+R+", "+H+")")}switch(a.type){case Zu.DEFAULT:JUe(C,a,m);break;case Zu.ROUNDED_RECT:aWe(C,a);break;case Zu.RECT:tWe(C,a);break;case Zu.CIRCLE:C.attr("transform","translate("+a.width/2+", "+ +a.height/2+")"),rWe(C,a);break;case Zu.CLOUD:eWe(C,a);break;case Zu.BANG:nWe(C,a);break;case Zu.HEXAGON:sWe(C,a);break}return qjt(a.id,b),a.height},positionNode:function(i){const a=zgt(i.id),f=i.x||0,p=i.y||0;a.attr("transform","translate("+f+","+p+")")},drawEdge:function(a,f,p,v,m){const b=m%(Vjt-1),E=p.x+p.width/2,C=p.y+p.height/2,A=f.x+f.width/2,P=f.y+f.height/2,F=A>E?E+Math.abs(E-A)/2:E-Math.abs(E-A)/2,j=P>C?C+Math.abs(C-P)/2:C-Math.abs(C-P)/2,R=A>E?Math.abs(E-F)/2+E:-Math.abs(E-F)/2+E,H=P>C?Math.abs(C-j)/2+C:-Math.abs(C-j)/2+C;a.append("path").attr("d",p.direction==="TB"||p.direction==="BT"?`M${E},${C} Q${E},${H} ${F},${j} T${A},${P}`:`M${E},${C} Q${R},${C} ${F},${j} T${A},${P}`).attr("class","edge section-edge-"+b+" edge-depth-"+v)}};var Ujt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){function f(y){return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(g){return typeof g}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g},f(y)}function p(y,g){if(!(y instanceof g))throw new TypeError("Cannot call a class as a function")}function v(y,g){for(var x=0;xy.length)&&(g=y.length);for(var x=0,T=new Array(g);x"u"?null:window,H=R?R.navigator:null;R&&R.document;var Y=f(""),rt=f({}),J=f(function(){}),it=typeof HTMLElement>"u"?"undefined":f(HTMLElement),ft=function(g){return g&&g.instanceString&&kt(g.instanceString)?g.instanceString():null},Tt=function(g){return g!=null&&f(g)==Y},kt=function(g){return g!=null&&f(g)===J},mt=function(g){return!dt(g)&&(Array.isArray?Array.isArray(g):g!=null&&g instanceof Array)},ct=function(g){return g!=null&&f(g)===rt&&!mt(g)&&g.constructor===Object},yt=function(g){return g!=null&&f(g)===rt},st=function(g){return g!=null&&f(g)===f(1)&&!isNaN(g)},xt=function(g){return st(g)&&Math.floor(g)===g},ht=function(g){if(it!=="undefined")return g!=null&&g instanceof HTMLElement},dt=function(g){return Ct(g)||tt(g)},Ct=function(g){return ft(g)==="collection"&&g._private.single},tt=function(g){return ft(g)==="collection"&&!g._private.single},Pt=function(g){return ft(g)==="core"},pt=function(g){return ft(g)==="stylesheet"},Ft=function(g){return ft(g)==="event"},X=function(g){return g==null?!0:!!(g===""||g.match(/^\s+$/))},Rt=function(g){return typeof HTMLElement>"u"?!1:g instanceof HTMLElement},Bt=function(g){return ct(g)&&st(g.x1)&&st(g.x2)&&st(g.y1)&&st(g.y2)},vt=function(g){return yt(g)&&kt(g.then)},Ot=function(){return H&&H.userAgent.match(/msie|trident|edge/i)},Vt=function(g,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var I=[],O=0;Ox?1:0},ye=function(g,x){return-1*$e(g,x)},fn=Object.assign!=null?Object.assign.bind(Object):function(y){for(var g=arguments,x=1;x1&&(Lt-=1),Lt<1/6?lt+(gt-lt)*6*Lt:Lt<1/2?gt:Lt<2/3?lt+(gt-lt)*(2/3-Lt)*6:lt}var U=new RegExp("^"+Ve+"$").exec(g);if(U){if(T=parseInt(U[1]),T<0?T=(360- -1*T%360)%360:T>360&&(T=T%360),T/=360,L=parseFloat(U[2]),L<0||L>100||(L=L/100,I=parseFloat(U[3]),I<0||I>100)||(I=I/100,O=U[4],O!==void 0&&(O=parseFloat(O),O<0||O>1)))return;if(L===0)$=z=S=Math.round(I*255);else{var et=I<.5?I*(1+L):I+L-I*L,at=2*I-et;$=Math.round(255*V(at,et,T+1/3)),z=Math.round(255*V(at,et,T)),S=Math.round(255*V(at,et,T-1/3))}x=[$,z,S,O]}return x},qt=function(g){var x,T=new RegExp("^"+ne+"$").exec(g);if(T){x=[];for(var L=[],I=1;I<=3;I++){var O=T[I];if(O[O.length-1]==="%"&&(L[I]=!0),O=parseFloat(O),L[I]&&(O=O/100*255),O<0||O>255)return;x.push(Math.floor(O))}var $=L[1]||L[2]||L[3],z=L[1]&&L[2]&&L[3];if($&&!z)return;var S=T[4];if(S!==void 0){if(S=parseFloat(S),S<0||S>1)return;x.push(S)}}return x},zi=function(g){return ki[g.toLowerCase()]},Se=function(g){return(mt(g)?g:null)||zi(g)||Yt(g)||qt(g)||Mi(g)},ki={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Ri=function(g){for(var x=g.map,T=g.keys,L=T.length,I=0;I=g||Ht<0||U&&ie>=I}function Et(){var Xt=_r();if(Lt(Xt))return Dt(Xt);$=setTimeout(Et,gt(Xt))}function Dt(Xt){return $=void 0,et&&T?at(Xt):(T=L=void 0,O)}function It(){$!==void 0&&clearTimeout($),S=0,T=z=L=$=void 0}function zt(){return $===void 0?O:Dt(_r())}function te(){var Xt=_r(),Ht=Lt(Xt);if(T=arguments,L=this,z=Xt,Ht){if($===void 0)return lt(z);if(U)return clearTimeout($),$=setTimeout(Et,g),at(z)}return $===void 0&&($=setTimeout(Et,g)),O}return te.cancel=It,te.flush=zt,te}var os=zb,As=R?R.performance:null,ma=As&&As.now?function(){return As.now()}:function(){return Date.now()},vi=function(){if(R){if(R.requestAnimationFrame)return function(y){R.requestAnimationFrame(y)};if(R.mozRequestAnimationFrame)return function(y){R.mozRequestAnimationFrame(y)};if(R.webkitRequestAnimationFrame)return function(y){R.webkitRequestAnimationFrame(y)};if(R.msRequestAnimationFrame)return function(y){R.msRequestAnimationFrame(y)}}return function(y){y&&setTimeout(function(){y(ma())},1e3/60)}}(),Qc=function(g){return vi(g)},me=ma,bg=9261,Oe=65599,af=5381,fk=function(g){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bg,T=x,L;L=g.next(),!L.done;)T=T*Oe+L.value|0;return T},k3=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bg;return x*Oe+g|0},gm=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:af;return(x<<5)+x+g|0},A9=function(g,x){return g*2097152+x},au=function(g){return g[0]*2097152+g[1]},vg=function(g,x){return[k3(g[0],x[0]),gm(g[1],x[1])]},dk=function(g,x){var T={value:0,done:!1},L=0,I=g.length,O={next:function(){return L=0&&!(g[L]===x&&(g.splice(L,1),T));L--);},mL=function(g){g.splice(0,g.length)},YP=function(g,x){for(var T=0;T"u"?"undefined":f(Set))!==rY?Set:iY,I9=function(g,x){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(g===void 0||x===void 0||!Pt(g)){ou("An element must have a core reference and parameters set");return}var L=x.group;if(L==null&&(x.data&&x.data.source!=null&&x.data.target!=null?L="edges":L="nodes"),L!=="nodes"&&L!=="edges"){ou("An element must be of type `nodes` or `edges`; you specified `"+L+"`");return}this.length=1,this[0]=this;var I=this._private={cy:g,single:!0,data:x.data||{},position:x.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:L,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!x.selected,selectable:x.selectable===void 0?!0:!!x.selectable,locked:!!x.locked,grabbed:!1,grabbable:x.grabbable===void 0?!0:!!x.grabbable,pannable:x.pannable===void 0?L==="edges":!!x.pannable,active:!1,classes:new $5,animation:{current:[],queue:[]},rscratch:{},scratch:x.scratch||{},edges:[],children:[],parent:x.parent&&x.parent.isNode()?x.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(I.position.x==null&&(I.position.x=0),I.position.y==null&&(I.position.y=0),x.renderedPosition){var O=x.renderedPosition,$=g.pan(),z=g.zoom();I.position={x:(O.x-$.x)/z,y:(O.y-$.y)/z}}var S=[];mt(x.classes)?S=x.classes:Tt(x.classes)&&(S=x.classes.split(/\s+/));for(var V=0,U=S.length;VDt?1:0},V=function(Et,Dt,It,zt,te){var Xt;if(It==null&&(It=0),te==null&&(te=T),It<0)throw new Error("lo must be non-negative");for(zt==null&&(zt=Et.length);Itfe;0<=fe?Ut++:Ut--)ie.push(Ut);return ie}.apply(this).reverse(),Ht=[],zt=0,te=Xt.length;ztge;0<=ge?++ie:--ie)se.push(O(Et,It));return se},gt=function(Et,Dt,It,zt){var te,Xt,Ht;for(zt==null&&(zt=T),te=Et[It];It>Dt;){if(Ht=It-1>>1,Xt=Et[Ht],zt(te,Xt)<0){Et[It]=Xt,It=Ht;continue}break}return Et[It]=te},Lt=function(Et,Dt,It){var zt,te,Xt,Ht,ie;for(It==null&&(It=T),te=Et.length,ie=Dt,Xt=Et[Dt],zt=2*Dt+1;zt0;){var Xt=Dt.pop(),Ht=Lt(Xt),ie=Xt.id();if(et[ie]=Ht,Ht!==1/0)for(var Ut=Xt.neighborhood().intersect(lt),fe=0;fe0)for(xn.unshift(Ge);U[Xn];){var Cn=U[Xn];xn.unshift(Cn.edge),xn.unshift(Cn.node),Dn=Cn.node,Xn=Dn.id()}return $.spawn(xn)}}}},cY={kruskal:function(g){g=g||function(It){return 1};for(var x=this.byGroup(),T=x.nodes,L=x.edges,I=T.length,O=new Array(I),$=T,z=function(zt){for(var te=0;te0;){if(te(),Ht++,zt===V){for(var ie=[],Ut=I,fe=V,ge=Et[fe];ie.unshift(Ut),ge!=null&&ie.unshift(ge),Ut=Lt[fe],Ut!=null;)fe=Ut.id(),ge=Et[fe];return{found:!0,distance:U[zt],path:this.spawn(ie),steps:Ht}}at[zt]=!0;for(var se=It._private.edges,Ne=0;Nege&&(lt[fe]=ge,Dt[fe]=Ut,It[fe]=te),!I){var se=Ut*V+ie;!I&<[se]>ge&&(lt[se]=ge,Dt[se]=ie,It[se]=te)}}}for(var Ne=0;Ne1&&arguments[1]!==void 0?arguments[1]:O,Ua=It(Ni),sa=[],Xs=Ua;;){if(Xs==null)return x.spawn();var Cr=Dt(Xs),Jt=Cr.edge,jn=Cr.pred;if(sa.unshift(Xs[0]),Xs.same(ns)&&sa.length>0)break;Jt!=null&&sa.unshift(Jt),Xs=jn}return z.spawn(sa)},Xt=0;Xt=0;V--){var U=S[V],et=U[1],at=U[2];(x[et]===$&&x[at]===z||x[et]===z&&x[at]===$)&&S.splice(V,1)}for(var lt=0;ltL;){var I=Math.floor(Math.random()*x.length);x=bY(I,g,x),T--}return x},vY={kargerStein:function(){var g=this,x=this.byGroup(),T=x.nodes,L=x.edges;L.unmergeBy(function(xn){return xn.isLoop()});var I=T.length,O=L.length,$=Math.ceil(Math.pow(Math.log(I)/Math.LN2,2)),z=Math.floor(I/pY);if(I<2){ou("At least 2 nodes are required for Karger-Stein algorithm");return}for(var S=[],V=0;V1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=1/0,I=x;I1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=-1/0,I=x;I1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=0,I=0,O=x;O1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,I=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,O=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;L?g=g.slice(x,T):(T0&&g.splice(0,x));for(var $=0,z=g.length-1;z>=0;z--){var S=g[z];O?isFinite(S)||(g[z]=-1/0,$++):g.splice(z,1)}I&&g.sort(function(et,at){return et-at});var V=g.length,U=Math.floor(V/2);return V%2!==0?g[U+1+$]:(g[U-1+$]+g[U+$])/2},EY=function(g){return Math.PI*g/180},N9=function(g,x){return Math.atan2(x,g)-Math.PI/2},xL=Math.log2||function(y){return Math.log(y)/Math.log(2)},ZP=function(g){return g>0?1:g<0?-1:0},T3=function(g,x){return Math.sqrt(_3(g,x))},_3=function(g,x){var T=x.x-g.x,L=x.y-g.y;return T*T+L*L},TY=function(g){for(var x=g.length,T=0,L=0;L=g.x1&&g.y2>=g.y1)return{x1:g.x1,y1:g.y1,x2:g.x2,y2:g.y2,w:g.x2-g.x1,h:g.y2-g.y1};if(g.w!=null&&g.h!=null&&g.w>=0&&g.h>=0)return{x1:g.x1,y1:g.y1,x2:g.x1+g.w,y2:g.y1+g.h,w:g.w,h:g.h}}},CY=function(g){return{x1:g.x1,x2:g.x2,w:g.w,y1:g.y1,y2:g.y2,h:g.h}},SY=function(g){g.x1=1/0,g.y1=1/0,g.x2=-1/0,g.y2=-1/0,g.w=0,g.h=0},AY=function(g,x){g.x1=Math.min(g.x1,x.x1),g.x2=Math.max(g.x2,x.x2),g.w=g.x2-g.x1,g.y1=Math.min(g.y1,x.y1),g.y2=Math.max(g.y2,x.y2),g.h=g.y2-g.y1},LY=function(g,x,T){g.x1=Math.min(g.x1,x),g.x2=Math.max(g.x2,x),g.w=g.x2-g.x1,g.y1=Math.min(g.y1,T),g.y2=Math.max(g.y2,T),g.h=g.y2-g.y1},P9=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return g.x1-=x,g.x2+=x,g.y1-=x,g.y2+=x,g.w=g.x2-g.x1,g.h=g.y2-g.y1,g},kL=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],T,L,I,O;if(x.length===1)T=L=I=O=x[0];else if(x.length===2)T=I=x[0],O=L=x[1];else if(x.length===4){var $=E(x,4);T=$[0],L=$[1],I=$[2],O=$[3]}return g.x1-=O,g.x2+=L,g.y1-=T,g.y2+=I,g.w=g.x2-g.x1,g.h=g.y2-g.y1,g},JP=function(g,x){g.x1=x.x1,g.y1=x.y1,g.x2=x.x2,g.y2=x.y2,g.w=g.x2-g.x1,g.h=g.y2-g.y1},EL=function(g,x){return!(g.x1>x.x2||x.x1>g.x2||g.x2x.y2||x.y1>g.y2)},H5=function(g,x,T){return g.x1<=x&&x<=g.x2&&g.y1<=T&&T<=g.y2},MY=function(g,x){return H5(g,x.x,x.y)},tF=function(g,x){return H5(g,x.x1,x.y1)&&H5(g,x.x2,x.y2)},eF=function(g,x,T,L,I,O,$){var z=mk(I,O),S=I/2,V=O/2,U;{var et=T-S+z-$,at=L-V-$,lt=T+S-z+$,gt=at;if(U=vm(g,x,T,L,et,at,lt,gt,!1),U.length>0)return U}{var Lt=T+S+$,Et=L-V+z-$,Dt=Lt,It=L+V-z+$;if(U=vm(g,x,T,L,Lt,Et,Dt,It,!1),U.length>0)return U}{var zt=T-S+z-$,te=L+V+$,Xt=T+S-z+$,Ht=te;if(U=vm(g,x,T,L,zt,te,Xt,Ht,!1),U.length>0)return U}{var ie=T-S-$,Ut=L-V+z-$,fe=ie,ge=L+V-z+$;if(U=vm(g,x,T,L,ie,Ut,fe,ge,!1),U.length>0)return U}var se;{var Ne=T-S+z,pe=L-V+z;if(se=vk(g,x,T,L,Ne,pe,z+$),se.length>0&&se[0]<=Ne&&se[1]<=pe)return[se[0],se[1]]}{var gn=T+S-z,je=L-V+z;if(se=vk(g,x,T,L,gn,je,z+$),se.length>0&&se[0]>=gn&&se[1]<=je)return[se[0],se[1]]}{var Ge=T+S-z,xn=L+V-z;if(se=vk(g,x,T,L,Ge,xn,z+$),se.length>0&&se[0]>=Ge&&se[1]>=xn)return[se[0],se[1]]}{var Dn=T-S+z,Xn=L+V-z;if(se=vk(g,x,T,L,Dn,Xn,z+$),se.length>0&&se[0]<=Dn&&se[1]>=Xn)return[se[0],se[1]]}return[]},DY=function(g,x,T,L,I,O,$){var z=$,S=Math.min(T,I),V=Math.max(T,I),U=Math.min(L,O),et=Math.max(L,O);return S-z<=g&&g<=V+z&&U-z<=x&&x<=et+z},IY=function(g,x,T,L,I,O,$,z,S){var V={x1:Math.min(T,$,I)-S,x2:Math.max(T,$,I)+S,y1:Math.min(L,z,O)-S,y2:Math.max(L,z,O)+S};return!(gV.x2||xV.y2)},OY=function(g,x,T,L){T-=L;var I=x*x-4*g*T;if(I<0)return[];var O=Math.sqrt(I),$=2*g,z=(-x+O)/$,S=(-x-O)/$;return[z,S]},NY=function(g,x,T,L,I){var O=1e-5;g===0&&(g=O),x/=g,T/=g,L/=g;var $,z,S,V,U,et,at,lt;if(z=(3*T-x*x)/9,S=-(27*L)+x*(9*T-2*(x*x)),S/=54,$=z*z*z+S*S,I[1]=0,at=x/3,$>0){U=S+Math.sqrt($),U=U<0?-Math.pow(-U,1/3):Math.pow(U,1/3),et=S-Math.sqrt($),et=et<0?-Math.pow(-et,1/3):Math.pow(et,1/3),I[0]=-at+U+et,at+=(U+et)/2,I[4]=I[2]=-at,at=Math.sqrt(3)*(-et+U)/2,I[3]=at,I[5]=-at;return}if(I[5]=I[3]=0,$===0){lt=S<0?-Math.pow(-S,1/3):Math.pow(S,1/3),I[0]=-at+2*lt,I[4]=I[2]=-(lt+at);return}z=-z,V=z*z*z,V=Math.acos(S/Math.sqrt(V)),lt=2*Math.sqrt(z),I[0]=-at+lt*Math.cos(V/3),I[2]=-at+lt*Math.cos((V+2*Math.PI)/3),I[4]=-at+lt*Math.cos((V+4*Math.PI)/3)},PY=function(g,x,T,L,I,O,$,z){var S=1*T*T-4*T*I+2*T*$+4*I*I-4*I*$+$*$+L*L-4*L*O+2*L*z+4*O*O-4*O*z+z*z,V=1*9*T*I-3*T*T-3*T*$-6*I*I+3*I*$+9*L*O-3*L*L-3*L*z-6*O*O+3*O*z,U=1*3*T*T-6*T*I+T*$-T*g+2*I*I+2*I*g-$*g+3*L*L-6*L*O+L*z-L*x+2*O*O+2*O*x-z*x,et=1*T*I-T*T+T*g-I*g+L*O-L*L+L*x-O*x,at=[];NY(S,V,U,et,at);for(var lt=1e-7,gt=[],Lt=0;Lt<6;Lt+=2)Math.abs(at[Lt+1])=0&&at[Lt]<=1&>.push(at[Lt]);gt.push(1),gt.push(0);for(var Et=-1,Dt,It,zt,te=0;te=0?ztS?(g-I)*(g-I)+(x-O)*(x-O):V-et},jd=function(g,x,T){for(var L,I,O,$,z,S=0,V=0;V=g&&g>=O||L<=g&&g<=O)z=(g-L)/(O-L)*($-I)+I,z>x&&S++;else continue;return S%2!==0},lv=function(g,x,T,L,I,O,$,z,S){var V=new Array(T.length),U;z[0]!=null?(U=Math.atan(z[1]/z[0]),z[0]<0?U=U+Math.PI/2:U=-U-Math.PI/2):U=z;for(var et=Math.cos(-U),at=Math.sin(-U),lt=0;lt0){var Lt=rF(V,-S);gt=nF(Lt)}else gt=V;return jd(g,x,gt)},BY=function(g,x,T,L,I,O,$){for(var z=new Array(T.length),S=O/2,V=$/2,U=CL(O,$),et=U*U,at=0;at=0&&Lt<=1&&Dt.push(Lt),Et>=0&&Et<=1&&Dt.push(Et),Dt.length===0)return[];var It=Dt[0]*z[0]+g,zt=Dt[0]*z[1]+x;if(Dt.length>1){if(Dt[0]==Dt[1])return[It,zt];var te=Dt[1]*z[0]+g,Xt=Dt[1]*z[1]+x;return[It,zt,te,Xt]}else return[It,zt]},TL=function(g,x,T){return x<=g&&g<=T||T<=g&&g<=x?g:g<=x&&x<=T||T<=x&&x<=g?x:T},vm=function(g,x,T,L,I,O,$,z,S){var V=g-I,U=T-g,et=$-I,at=x-O,lt=L-x,gt=z-O,Lt=et*at-gt*V,Et=U*at-lt*V,Dt=gt*U-et*lt;if(Dt!==0){var It=Lt/Dt,zt=Et/Dt,te=.001,Xt=0-te,Ht=1+te;return Xt<=It&&It<=Ht&&Xt<=zt&&zt<=Ht?[g+It*U,x+It*lt]:S?[g+It*U,x+It*lt]:[]}else return Lt===0||Et===0?TL(g,T,$)===$?[$,z]:TL(g,T,I)===I?[I,O]:TL(I,$,T)===T?[T,L]:[]:[]},wk=function(g,x,T,L,I,O,$,z){var S=[],V,U=new Array(T.length),et=!0;O==null&&(et=!1);var at;if(et){for(var lt=0;lt0){var gt=rF(U,-z);at=nF(gt)}else at=U}else at=T;for(var Lt,Et,Dt,It,zt=0;zt2){for(var je=[S[0],S[1]],Ge=Math.pow(je[0]-g,2)+Math.pow(je[1]-x,2),xn=1;xnV&&(V=zt)},get:function(It){return S[It]}},et=0;et<$.length;et++){var at=$[et],lt=at.id();T?z[lt]=at.outgoers().nodes():z[lt]=at.openNeighborhood().nodes(),U.set(lt,0)}for(var gt=function(It){for(var zt=$[It].id(),te=[],Xt={},Ht={},ie={},Ut=new pk(function(ur,er){return ie[ur]-ie[er]}),fe=0;fe<$.length;fe++){var ge=$[fe].id();Xt[ge]=[],Ht[ge]=0,ie[ge]=1/0}for(Ht[zt]=1,ie[zt]=0,Ut.push(zt);!Ut.empty();){var se=Ut.pop();if(te.push(se),I)for(var Ne=0;Ne0?je=gn.edgesTo(pe)[0]:je=pe.edgesTo(gn)[0];var Ge=L(je);pe=pe.id(),ie[pe]>ie[se]+Ge&&(ie[pe]=ie[se]+Ge,Ut.nodes.indexOf(pe)<0?Ut.push(pe):Ut.updateItem(pe),Ht[pe]=0,Xt[pe]=[]),ie[pe]==ie[se]+Ge&&(Ht[pe]=Ht[pe]+Ht[se],Xt[pe].push(se))}else for(var xn=0;xn0;){for(var Yn=te.pop(),rr=0;rr0&&$.push(T[z]);$.length!==0&&I.push(L.collection($))}return I},ZY=function(g,x){for(var T=0;T5&&arguments[5]!==void 0?arguments[5]:eX,$=L,z,S,V=0;V=2?yk(g,x,T,0,dF,nX):yk(g,x,T,0,fF)},squaredEuclidean:function(g,x,T){return yk(g,x,T,0,dF)},manhattan:function(g,x,T){return yk(g,x,T,0,fF)},max:function(g,x,T){return yk(g,x,T,-1/0,rX)}};U5["squared-euclidean"]=U5.squaredEuclidean,U5.squaredeuclidean=U5.squaredEuclidean;function B9(y,g,x,T,L,I){var O;return kt(y)?O=y:O=U5[y]||U5.euclidean,g===0&&kt(y)?O(L,I):O(g,x,T,L,I)}var iX=zf({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),LL=function(g){return iX(g)},R9=function(g,x,T,L,I){var O=I!=="kMedoids",$=O?function(U){return T[U]}:function(U){return L[U](T)},z=function(et){return L[et](x)},S=T,V=x;return B9(g,L.length,$,z,S,V)},ML=function(g,x,T){for(var L=T.length,I=new Array(L),O=new Array(L),$=new Array(x),z=null,S=0;ST)return!1}return!0},oX=function(g,x,T){for(var L=0;L$&&($=x[S][V],z=V);I[z].push(g[S])}for(var U=0;U=I.threshold||I.mode==="dendrogram"&&g.length===1)return!1;var lt=x[O],gt=x[L[O]],Lt;I.mode==="dendrogram"?Lt={left:lt,right:gt,key:lt.key}:Lt={value:lt.value.concat(gt.value),key:lt.key},g[lt.index]=Lt,g.splice(gt.index,1),x[lt.key]=Lt;for(var Et=0;EtT[gt.key][Dt.key]&&(z=T[gt.key][Dt.key])):I.linkage==="max"?(z=T[lt.key][Dt.key],T[lt.key][Dt.key]0&&L.push(I);return L},xF=function(g,x,T){for(var L=[],I=0;I$&&(O=S,$=x[I*g+S])}O>0&&L.push(O)}for(var V=0;VS&&(z=V,S=U)}T[I]=O[z]}return L=xF(g,x,T),L},kF=function(g){for(var x=this.cy(),T=this.nodes(),L=xX(g),I={},O=0;O=ge?(se=ge,ge=pe,Ne=gn):pe>se&&(se=pe);for(var je=0;je<$;je++)U[fe*$+je]=(1-L.damping)*(S[fe*$+je]-ge)+L.damping*It[je];U[fe*$+Ne]=(1-L.damping)*(S[fe*$+Ne]-se)+L.damping*It[Ne]}for(var Ge=0;Ge<$;Ge++){for(var xn=0,Dn=0;Dn<$;Dn++)It[Dn]=et[Dn*$+Ge],zt[Dn]=Math.max(0,U[Dn*$+Ge]),xn+=zt[Dn];xn-=zt[Ge],zt[Ge]=U[Ge*$+Ge],xn+=zt[Ge];for(var Xn=0;Xn<$;Xn++)et[Xn*$+Ge]=(1-L.damping)*Math.min(0,xn-zt[Xn])+L.damping*It[Xn];et[Ge*$+Ge]=(1-L.damping)*(xn-zt[Ge])+L.damping*It[Ge]}for(var Cn=0,Yn=0;Yn<$;Yn++){var rr=et[Yn*$+Yn]+U[Yn*$+Yn]>0?1:0;Ht[Ut%L.minIterations*$+Yn]=rr,Cn+=rr}if(Cn>0&&(Ut>=L.minIterations-1||Ut==L.maxIterations-1)){for(var wr=0,ur=0;ur<$;ur++){te[ur]=0;for(var er=0;er1||Xt>1)&&($=!0),U[It]=[],Dt.outgoers().forEach(function(ie){ie.isEdge()&&U[It].push(ie.id())})}else et[It]=[void 0,Dt.target().id()]}):O.forEach(function(Dt){var It=Dt.id();if(Dt.isNode()){var zt=Dt.degree(!0);zt%2&&(z?S?$=!0:S=It:z=It),U[It]=[],Dt.connectedEdges().forEach(function(te){return U[It].push(te.id())})}else et[It]=[Dt.source().id(),Dt.target().id()]});var at={found:!1,trail:void 0};if($)return at;if(S&&z)if(I){if(V&&S!=V)return at;V=S}else{if(V&&S!=V&&z!=V)return at;V||(V=S)}else V||(V=O[0].id());var lt=function(It){for(var zt=It,te=[It],Xt,Ht,ie;U[zt].length;)Xt=U[zt].shift(),Ht=et[Xt][0],ie=et[Xt][1],zt!=ie?(U[ie]=U[ie].filter(function(Ut){return Ut!=Xt}),zt=ie):!I&&zt!=Ht&&(U[Ht]=U[Ht].filter(function(Ut){return Ut!=Xt}),zt=Ht),te.unshift(Xt),te.unshift(zt);return te},gt=[],Lt=[];for(Lt=lt(V);Lt.length!=1;)U[Lt[0]].length==0?(gt.unshift(O.getElementById(Lt.shift())),gt.unshift(O.getElementById(Lt.shift()))):Lt=lt(Lt.shift()).concat(Lt);gt.unshift(O.getElementById(Lt.shift()));for(var Et in U)if(U[Et].length)return at;return at.found=!0,at.trail=this.spawn(gt,!0),at}},$9=function(){var g=this,x={},T=0,L=0,I=[],O=[],$={},z=function(et,at){for(var lt=O.length-1,gt=[],Lt=g.spawn();O[lt].x!=et||O[lt].y!=at;)gt.push(O.pop().edge),lt--;gt.push(O.pop().edge),gt.forEach(function(Et){var Dt=Et.connectedNodes().intersection(g);Lt.merge(Et),Dt.forEach(function(It){var zt=It.id(),te=It.connectedEdges().intersection(g);Lt.merge(It),x[zt].cutVertex?Lt.merge(te.filter(function(Xt){return Xt.isLoop()})):Lt.merge(te)})}),I.push(Lt)},S=function U(et,at,lt){et===lt&&(L+=1),x[at]={id:T,low:T++,cutVertex:!1};var gt=g.getElementById(at).connectedEdges().intersection(g);if(gt.size()===0)I.push(g.spawn(g.getElementById(at)));else{var Lt,Et,Dt,It;gt.forEach(function(zt){Lt=zt.source().id(),Et=zt.target().id(),Dt=Lt===at?Et:Lt,Dt!==lt&&(It=zt.id(),$[It]||($[It]=!0,O.push({x:at,y:Dt,edge:zt})),Dt in x?x[at].low=Math.min(x[at].low,x[Dt].id):(U(et,Dt,at),x[at].low=Math.min(x[at].low,x[Dt].low),x[at].id<=x[Dt].low&&(x[at].cutVertex=!0,z(at,Dt))))})}};g.forEach(function(U){if(U.isNode()){var et=U.id();et in x||(L=0,S(et,et),x[et].cutVertex=L>1)}});var V=Object.keys(x).filter(function(U){return x[U].cutVertex}).map(function(U){return g.getElementById(U)});return{cut:g.spawn(V),components:I}},LX={hopcroftTarjanBiconnected:$9,htbc:$9,htb:$9,hopcroftTarjanBiconnectedComponents:$9},z9=function(){var g=this,x={},T=0,L=[],I=[],O=g.spawn(g),$=function z(S){I.push(S),x[S]={index:T,low:T++,explored:!1};var V=g.getElementById(S).connectedEdges().intersection(g);if(V.forEach(function(gt){var Lt=gt.target().id();Lt!==S&&(Lt in x||z(Lt),x[Lt].explored||(x[S].low=Math.min(x[S].low,x[Lt].low)))}),x[S].index===x[S].low){for(var U=g.spawn();;){var et=I.pop();if(U.merge(g.getElementById(et)),x[et].low=x[S].index,x[et].explored=!0,et===S)break}var at=U.edgesWith(U),lt=U.merge(at);L.push(lt),O=O.difference(lt)}};return g.forEach(function(z){if(z.isNode()){var S=z.id();S in x||$(S)}}),{cut:O,components:L}},MX={tarjanStronglyConnected:z9,tsc:z9,tscc:z9,tarjanStronglyConnectedComponents:z9},EF={};[gk,oY,cY,lY,fY,gY,vY,qY,V5,G5,AL,tX,dX,mX,CX,AX,LX,MX].forEach(function(y){fn(EF,y)});/*! +Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable +Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) +Licensed under The MIT License (http://opensource.org/licenses/MIT) +*/var TF=0,_F=1,CF=2,hv=function y(g){if(!(this instanceof y))return new y(g);this.id="Thenable/1.0.7",this.state=TF,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof g=="function"&&g.call(this,this.fulfill.bind(this),this.reject.bind(this))};hv.prototype={fulfill:function(g){return SF(this,_F,"fulfillValue",g)},reject:function(g){return SF(this,CF,"rejectReason",g)},then:function(g,x){var T=this,L=new hv;return T.onFulfilled.push(MF(g,L,"fulfill")),T.onRejected.push(MF(x,L,"reject")),AF(T),L.proxy}};var SF=function(g,x,T,L){return g.state===TF&&(g.state=x,g[T]=L,AF(g)),g},AF=function(g){g.state===_F?LF(g,"onFulfilled",g.fulfillValue):g.state===CF&&LF(g,"onRejected",g.rejectReason)},LF=function(g,x,T){if(g[x].length!==0){var L=g[x];g[x]=[];var I=function(){for(var $=0;$0}},clearQueue:function(){return function(){var x=this,T=x.length!==void 0,L=T?x:[x],I=this._private.cy||this;if(!I.styleEnabled())return this;for(var O=0;O-1}var DQ=MQ;function IQ(y,g){var x=this.__data__,T=V9(x,y);return T<0?(++this.size,x.push([y,g])):x[T][1]=g,this}var OQ=IQ;function Y5(y){var g=-1,x=y==null?0:y.length;for(this.clear();++g-1&&y%1==0&&y0&&this.spawn(L).updateStyle().emit("class"),x},addClass:function(g){return this.toggleClass(g,!0)},hasClass:function(g){var x=this[0];return x!=null&&x._private.classes.has(g)},toggleClass:function(g,x){mt(g)||(g=g.match(/\S+/g)||[]);for(var T=this,L=x===void 0,I=[],O=0,$=T.length;O<$;O++)for(var z=T[O],S=z._private.classes,V=!1,U=0;U0&&this.spawn(I).updateStyle().emit("class"),T},removeClass:function(g){return this.toggleClass(g,!1)},flashClass:function(g,x){var T=this;if(x==null)x=250;else if(x===0)return T;return T.addClass(g),setTimeout(function(){T.removeClass(g)},x),T}};K9.className=K9.classNames=K9.classes;var oc={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Ae,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};oc.variable="(?:[\\w-.]|(?:\\\\"+oc.metaChar+"))+",oc.className="(?:[\\w-]|(?:\\\\"+oc.metaChar+"))+",oc.value=oc.string+"|"+oc.number,oc.id=oc.variable,function(){var y,g,x;for(y=oc.comparatorOp.split("|"),x=0;x=0)&&g!=="="&&(oc.comparatorOp+="|\\!"+g)}();var Zc=function(){return{checks:[]}},Qi={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},FL=[{selector:":selected",matches:function(g){return g.selected()}},{selector:":unselected",matches:function(g){return!g.selected()}},{selector:":selectable",matches:function(g){return g.selectable()}},{selector:":unselectable",matches:function(g){return!g.selectable()}},{selector:":locked",matches:function(g){return g.locked()}},{selector:":unlocked",matches:function(g){return!g.locked()}},{selector:":visible",matches:function(g){return g.visible()}},{selector:":hidden",matches:function(g){return!g.visible()}},{selector:":transparent",matches:function(g){return g.transparent()}},{selector:":grabbed",matches:function(g){return g.grabbed()}},{selector:":free",matches:function(g){return!g.grabbed()}},{selector:":removed",matches:function(g){return g.removed()}},{selector:":inside",matches:function(g){return!g.removed()}},{selector:":grabbable",matches:function(g){return g.grabbable()}},{selector:":ungrabbable",matches:function(g){return!g.grabbable()}},{selector:":animated",matches:function(g){return g.animated()}},{selector:":unanimated",matches:function(g){return!g.animated()}},{selector:":parent",matches:function(g){return g.isParent()}},{selector:":childless",matches:function(g){return g.isChildless()}},{selector:":child",matches:function(g){return g.isChild()}},{selector:":orphan",matches:function(g){return g.isOrphan()}},{selector:":nonorphan",matches:function(g){return g.isChild()}},{selector:":compound",matches:function(g){return g.isNode()?g.isParent():g.source().isParent()||g.target().isParent()}},{selector:":loop",matches:function(g){return g.isLoop()}},{selector:":simple",matches:function(g){return g.isSimple()}},{selector:":active",matches:function(g){return g.active()}},{selector:":inactive",matches:function(g){return!g.active()}},{selector:":backgrounding",matches:function(g){return g.backgrounding()}},{selector:":nonbackgrounding",matches:function(g){return!g.backgrounding()}}].sort(function(y,g){return ye(y.selector,g.selector)}),OZ=function(){for(var y={},g,x=0;x0&&V.edgeCount>0)return no("The selector `"+g+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(V.edgeCount>1)return no("The selector `"+g+"` is invalid because it uses multiple edge selectors"),!1;V.edgeCount===1&&no("The selector `"+g+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},jZ=function(){if(this.toStringCache!=null)return this.toStringCache;for(var g=function(V){return V??""},x=function(V){return Tt(V)?'"'+V+'"':g(V)},T=function(V){return" "+V+" "},L=function(V,U){var et=V.type,at=V.value;switch(et){case Qi.GROUP:{var lt=g(at);return lt.substring(0,lt.length-1)}case Qi.DATA_COMPARE:{var gt=V.field,Lt=V.operator;return"["+gt+T(g(Lt))+x(at)+"]"}case Qi.DATA_BOOL:{var Et=V.operator,Dt=V.field;return"["+g(Et)+Dt+"]"}case Qi.DATA_EXIST:{var It=V.field;return"["+It+"]"}case Qi.META_COMPARE:{var zt=V.operator,te=V.field;return"[["+te+T(g(zt))+x(at)+"]]"}case Qi.STATE:return at;case Qi.ID:return"#"+at;case Qi.CLASS:return"."+at;case Qi.PARENT:case Qi.CHILD:return I(V.parent,U)+T(">")+I(V.child,U);case Qi.ANCESTOR:case Qi.DESCENDANT:return I(V.ancestor,U)+" "+I(V.descendant,U);case Qi.COMPOUND_SPLIT:{var Xt=I(V.left,U),Ht=I(V.subject,U),ie=I(V.right,U);return Xt+(Xt.length>0?" ":"")+Ht+ie}case Qi.TRUE:return""}},I=function(V,U){return V.checks.reduce(function(et,at,lt){return et+(U===V&<===0?"$":"")+L(at,U)},"")},O="",$=0;$1&&$=0&&(x=x.replace("!",""),U=!0),x.indexOf("@")>=0&&(x=x.replace("@",""),V=!0),(I||$||V)&&(z=!I&&!O?"":""+g,S=""+T),V&&(g=z=z.toLowerCase(),T=S=S.toLowerCase()),x){case"*=":L=z.indexOf(S)>=0;break;case"$=":L=z.indexOf(S,z.length-S.length)>=0;break;case"^=":L=z.indexOf(S)===0;break;case"=":L=g===T;break;case">":et=!0,L=g>T;break;case">=":et=!0,L=g>=T;break;case"<":et=!0,L=g0;){var V=L.shift();g(V),I.add(V.id()),$&&T(L,I,V)}return y}function kk(y,g,x){if(x.isParent())for(var T=x._private.children,L=0;L1&&arguments[1]!==void 0?arguments[1]:!0;return Y9(this,y,g,kk)};function YF(y,g,x){if(x.isChild()){var T=x._private.parent;g.has(T.id())||y.push(T)}}Z5.forEachUp=function(y){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return Y9(this,y,g,YF)};function WZ(y,g,x){YF(y,g,x),kk(y,g,x)}Z5.forEachUpAndDown=function(y){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return Y9(this,y,g,WZ)},Z5.ancestors=Z5.parents;var Ek,XF;Ek=XF={data:Ic.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Ic.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Ic.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Ic.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Ic.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Ic.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var g=this[0];if(g)return g._private.data.id}},Ek.attr=Ek.data,Ek.removeAttr=Ek.removeData;var KZ=XF,X9={};function J5(y){return function(g){var x=this;if(g===void 0&&(g=!0),x.length!==0)if(x.isNode()&&!x.removed()){for(var T=0,L=x[0],I=L._private.edges,O=0;Og}),minIndegree:t6("indegree",function(y,g){return yg}),minOutdegree:t6("outdegree",function(y,g){return yg})}),fn(X9,{totalDegree:function(g){for(var x=0,T=this.nodes(),L=0;L0,et=U;U&&(V=V[0]);var at=et?V.position():{x:0,y:0};x!==void 0?S.position(g,x+at[g]):I!==void 0&&S.position({x:I.x+at.x,y:I.y+at.y})}else{var lt=T.position(),gt=$?T.parent():null,Lt=gt&>.length>0,Et=Lt;Lt&&(gt=gt[0]);var Dt=Et?gt.position():{x:0,y:0};return I={x:lt.x-Dt.x,y:lt.y-Dt.y},g===void 0?I:I[g]}else if(!O)return;return this}},yp.modelPosition=yp.point=yp.position,yp.modelPositions=yp.points=yp.positions,yp.renderedPoint=yp.renderedPosition,yp.relativePoint=yp.relativePosition;var JF=QF,e6,Vb;e6=Vb={},Vb.renderedBoundingBox=function(y){var g=this.boundingBox(y),x=this.cy(),T=x.zoom(),L=x.pan(),I=g.x1*T+L.x,O=g.x2*T+L.x,$=g.y1*T+L.y,z=g.y2*T+L.y;return{x1:I,x2:O,y1:$,y2:z,w:O-I,h:z-$}},Vb.dirtyCompoundBoundsCache=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,g=this.cy();return!g.styleEnabled()||!g.hasCompoundNodes()?this:(this.forEachUp(function(x){if(x.isParent()){var T=x._private;T.compoundBoundsClean=!1,T.bbCache=null,y||x.emitAndNotify("bounds")}}),this)},Vb.updateCompoundBounds=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,g=this.cy();if(!g.styleEnabled()||!g.hasCompoundNodes())return this;if(!y&&g.batching())return this;function x(O){if(!O.isParent())return;var $=O._private,z=O.children(),S=O.pstyle("compound-sizing-wrt-labels").value==="include",V={width:{val:O.pstyle("min-width").pfValue,left:O.pstyle("min-width-bias-left"),right:O.pstyle("min-width-bias-right")},height:{val:O.pstyle("min-height").pfValue,top:O.pstyle("min-height-bias-top"),bottom:O.pstyle("min-height-bias-bottom")}},U=z.boundingBox({includeLabels:S,includeOverlays:!1,useCache:!1}),et=$.position;(U.w===0||U.h===0)&&(U={w:O.pstyle("width").pfValue,h:O.pstyle("height").pfValue},U.x1=et.x-U.w/2,U.x2=et.x+U.w/2,U.y1=et.y-U.h/2,U.y2=et.y+U.h/2);function at(Ut,fe,ge){var se=0,Ne=0,pe=fe+ge;return Ut>0&&pe>0&&(se=fe/pe*Ut,Ne=ge/pe*Ut),{biasDiff:se,biasComplementDiff:Ne}}function lt(Ut,fe,ge,se){if(ge.units==="%")switch(se){case"width":return Ut>0?ge.pfValue*Ut:0;case"height":return fe>0?ge.pfValue*fe:0;case"average":return Ut>0&&fe>0?ge.pfValue*(Ut+fe)/2:0;case"min":return Ut>0&&fe>0?Ut>fe?ge.pfValue*fe:ge.pfValue*Ut:0;case"max":return Ut>0&&fe>0?Ut>fe?ge.pfValue*Ut:ge.pfValue*fe:0;default:return 0}else return ge.units==="px"?ge.pfValue:0}var gt=V.width.left.value;V.width.left.units==="px"&&V.width.val>0&&(gt=gt*100/V.width.val);var Lt=V.width.right.value;V.width.right.units==="px"&&V.width.val>0&&(Lt=Lt*100/V.width.val);var Et=V.height.top.value;V.height.top.units==="px"&&V.height.val>0&&(Et=Et*100/V.height.val);var Dt=V.height.bottom.value;V.height.bottom.units==="px"&&V.height.val>0&&(Dt=Dt*100/V.height.val);var It=at(V.width.val-U.w,gt,Lt),zt=It.biasDiff,te=It.biasComplementDiff,Xt=at(V.height.val-U.h,Et,Dt),Ht=Xt.biasDiff,ie=Xt.biasComplementDiff;$.autoPadding=lt(U.w,U.h,O.pstyle("padding"),O.pstyle("padding-relative-to").value),$.autoWidth=Math.max(U.w,V.width.val),et.x=(-zt+U.x1+U.x2+te)/2,$.autoHeight=Math.max(U.h,V.height.val),et.y=(-Ht+U.y1+U.y2+ie)/2}for(var T=0;Tg.x2?L:g.x2,g.y1=Tg.y2?I:g.y2,g.w=g.x2-g.x1,g.h=g.y2-g.y1)},A3=function(g,x){return x==null?g:xp(g,x.x1,x.y1,x.x2,x.y2)},_k=function(g,x,T){return wp(g,x,T)},Q9=function(g,x,T){if(!x.cy().headless()){var L=x._private,I=L.rstyle,O=I.arrowWidth/2,$=x.pstyle(T+"-arrow-shape").value,z,S;if($!=="none"){T==="source"?(z=I.srcX,S=I.srcY):T==="target"?(z=I.tgtX,S=I.tgtY):(z=I.midX,S=I.midY);var V=L.arrowBounds=L.arrowBounds||{},U=V[T]=V[T]||{};U.x1=z-O,U.y1=S-O,U.x2=z+O,U.y2=S+O,U.w=U.x2-U.x1,U.h=U.y2-U.y1,P9(U,1),xp(g,U.x1,U.y1,U.x2,U.y2)}}},tB=function(g,x,T){if(!x.cy().headless()){var L;T?L=T+"-":L="";var I=x._private,O=I.rstyle,$=x.pstyle(L+"label").strValue;if($){var z=x.pstyle("text-halign"),S=x.pstyle("text-valign"),V=_k(O,"labelWidth",T),U=_k(O,"labelHeight",T),et=_k(O,"labelX",T),at=_k(O,"labelY",T),lt=x.pstyle(L+"text-margin-x").pfValue,gt=x.pstyle(L+"text-margin-y").pfValue,Lt=x.isEdge(),Et=x.pstyle(L+"text-rotation"),Dt=x.pstyle("text-outline-width").pfValue,It=x.pstyle("text-border-width").pfValue,zt=It/2,te=x.pstyle("text-background-padding").pfValue,Xt=2,Ht=U,ie=V,Ut=ie/2,fe=Ht/2,ge,se,Ne,pe;if(Lt)ge=et-Ut,se=et+Ut,Ne=at-fe,pe=at+fe;else{switch(z.value){case"left":ge=et-ie,se=et;break;case"center":ge=et-Ut,se=et+Ut;break;case"right":ge=et,se=et+ie;break}switch(S.value){case"top":Ne=at-Ht,pe=at;break;case"center":Ne=at-fe,pe=at+fe;break;case"bottom":Ne=at,pe=at+Ht;break}}ge+=lt-Math.max(Dt,zt)-te-Xt,se+=lt+Math.max(Dt,zt)+te+Xt,Ne+=gt-Math.max(Dt,zt)-te-Xt,pe+=gt+Math.max(Dt,zt)+te+Xt;var gn=T||"main",je=I.labelBounds,Ge=je[gn]=je[gn]||{};Ge.x1=ge,Ge.y1=Ne,Ge.x2=se,Ge.y2=pe,Ge.w=se-ge,Ge.h=pe-Ne;var xn=Lt&&Et.strValue==="autorotate",Dn=Et.pfValue!=null&&Et.pfValue!==0;if(xn||Dn){var Xn=xn?_k(I.rstyle,"labelAngle",T):Et.pfValue,Cn=Math.cos(Xn),Yn=Math.sin(Xn),rr=(ge+se)/2,wr=(Ne+pe)/2;if(!Lt){switch(z.value){case"left":rr=se;break;case"right":rr=ge;break}switch(S.value){case"top":wr=pe;break;case"bottom":wr=Ne;break}}var ur=function(La,Di){return La=La-rr,Di=Di-wr,{x:La*Cn-Di*Yn+rr,y:La*Yn+Di*Cn+wr}},er=ur(ge,Ne),bn=ur(ge,pe),pr=ur(se,Ne),fr=ur(se,pe);ge=Math.min(er.x,bn.x,pr.x,fr.x),se=Math.max(er.x,bn.x,pr.x,fr.x),Ne=Math.min(er.y,bn.y,pr.y,fr.y),pe=Math.max(er.y,bn.y,pr.y,fr.y)}var ri=gn+"Rot",_i=je[ri]=je[ri]||{};_i.x1=ge,_i.y1=Ne,_i.x2=se,_i.y2=pe,_i.w=se-ge,_i.h=pe-Ne,xp(g,ge,Ne,se,pe),xp(I.labelBounds.all,ge,Ne,se,pe)}return g}},YZ=function(g,x){var T=g._private.cy,L=T.styleEnabled(),I=T.headless(),O=Rd(),$=g._private,z=g.isNode(),S=g.isEdge(),V,U,et,at,lt,gt,Lt=$.rstyle,Et=z&&L?g.pstyle("bounds-expansion").pfValue:[0],Dt=function(_s){return _s.pstyle("display").value!=="none"},It=!L||Dt(g)&&(!S||Dt(g.source())&&Dt(g.target()));if(It){var zt=0,te=0;L&&x.includeOverlays&&(zt=g.pstyle("overlay-opacity").value,zt!==0&&(te=g.pstyle("overlay-padding").value));var Xt=0,Ht=0;L&&x.includeUnderlays&&(Xt=g.pstyle("underlay-opacity").value,Xt!==0&&(Ht=g.pstyle("underlay-padding").value));var ie=Math.max(te,Ht),Ut=0,fe=0;if(L&&(Ut=g.pstyle("width").pfValue,fe=Ut/2),z&&x.includeNodes){var ge=g.position();lt=ge.x,gt=ge.y;var se=g.outerWidth(),Ne=se/2,pe=g.outerHeight(),gn=pe/2;V=lt-Ne,U=lt+Ne,et=gt-gn,at=gt+gn,xp(O,V,et,U,at)}else if(S&&x.includeEdges)if(L&&!I){var je=g.pstyle("curve-style").strValue;if(V=Math.min(Lt.srcX,Lt.midX,Lt.tgtX),U=Math.max(Lt.srcX,Lt.midX,Lt.tgtX),et=Math.min(Lt.srcY,Lt.midY,Lt.tgtY),at=Math.max(Lt.srcY,Lt.midY,Lt.tgtY),V-=fe,U+=fe,et-=fe,at+=fe,xp(O,V,et,U,at),je==="haystack"){var Ge=Lt.haystackPts;if(Ge&&Ge.length===2){if(V=Ge[0].x,et=Ge[0].y,U=Ge[1].x,at=Ge[1].y,V>U){var xn=V;V=U,U=xn}if(et>at){var Dn=et;et=at,at=Dn}xp(O,V-fe,et-fe,U+fe,at+fe)}}else if(je==="bezier"||je==="unbundled-bezier"||je==="segments"||je==="taxi"){var Xn;switch(je){case"bezier":case"unbundled-bezier":Xn=Lt.bezierPts;break;case"segments":case"taxi":Xn=Lt.linePts;break}if(Xn!=null)for(var Cn=0;CnU){var bn=V;V=U,U=bn}if(et>at){var pr=et;et=at,at=pr}V-=fe,U+=fe,et-=fe,at+=fe,xp(O,V,et,U,at)}if(L&&x.includeEdges&&S&&(Q9(O,g,"mid-source"),Q9(O,g,"mid-target"),Q9(O,g,"source"),Q9(O,g,"target")),L){var fr=g.pstyle("ghost").value==="yes";if(fr){var ri=g.pstyle("ghost-offset-x").pfValue,_i=g.pstyle("ghost-offset-y").pfValue;xp(O,O.x1+ri,O.y1+_i,O.x2+ri,O.y2+_i)}}var ia=$.bodyBounds=$.bodyBounds||{};JP(ia,O),kL(ia,Et),P9(ia,1),L&&(V=O.x1,U=O.x2,et=O.y1,at=O.y2,xp(O,V-ie,et-ie,U+ie,at+ie));var La=$.overlayBounds=$.overlayBounds||{};JP(La,O),kL(La,Et),P9(La,1);var Di=$.labelBounds=$.labelBounds||{};Di.all!=null?SY(Di.all):Di.all=Rd(),L&&x.includeLabels&&(x.includeMainLabels&&tB(O,g,null),S&&(x.includeSourceLabels&&tB(O,g,"source"),x.includeTargetLabels&&tB(O,g,"target")))}return O.x1=_0(O.x1),O.y1=_0(O.y1),O.x2=_0(O.x2),O.y2=_0(O.y2),O.w=_0(O.x2-O.x1),O.h=_0(O.y2-O.y1),O.w>0&&O.h>0&&It&&(kL(O,Et),P9(O,1)),O},eB=function(g){var x=0,T=function(O){return(O?1:0)<0&&arguments[0]!==void 0?arguments[0]:uJ,g=arguments.length>1?arguments[1]:void 0,x=0;x=0;$--)O($);return this},km.removeAllListeners=function(){return this.removeListener("*")},km.emit=km.trigger=function(y,g,x){var T=this.listeners,L=T.length;return this.emitting++,mt(g)||(g=[g]),lJ(this,function(I,O){x!=null&&(T=[{event:O.event,type:O.type,namespace:O.namespace,callback:x}],L=T.length);for(var $=function(V){var U=T[V];if(U.type===O.type&&(!U.namespace||U.namespace===O.namespace||U.namespace===cJ)&&I.eventMatches(I.context,U,O)){var et=[O];g!=null&&YP(et,g),I.beforeEmit(I.context,U,O),U.conf&&U.conf.one&&(I.listeners=I.listeners.filter(function(gt){return gt!==U}));var at=I.callbackContext(I.context,U,O),lt=U.callback.apply(at,et);I.afterEmit(I.context,U,O),lt===!1&&(O.stopPropagation(),O.preventDefault())}},z=0;z1&&!O){var $=this.length-1,z=this[$],S=z._private.data.id;this[$]=void 0,this[g]=z,I.set(S,{ele:z,index:g})}return this.length--,this},unmergeOne:function(g){g=g[0];var x=this._private,T=g._private.data.id,L=x.map,I=L.get(T);if(!I)return this;var O=I.index;return this.unmergeAt(O),this},unmerge:function(g){var x=this._private.cy;if(!g)return this;if(g&&Tt(g)){var T=g;g=x.mutableElements().filter(T)}for(var L=0;L=0;x--){var T=this[x];g(T)&&this.unmergeAt(x)}return this},map:function(g,x){for(var T=[],L=this,I=0;IT&&(T=z,L=$)}return{value:T,ele:L}},min:function(g,x){for(var T=1/0,L,I=this,O=0;O=0&&I"u"?"undefined":f(Symbol))!=g&&f(Symbol.iterator)!=g;x&&(eT[Symbol.iterator]=function(){var T=this,L={value:void 0,done:!1},I=0,O=this.length;return b({next:function(){return I1&&arguments[1]!==void 0?arguments[1]:!0,T=this[0],L=T.cy();if(L.styleEnabled()&&T){this.cleanStyle();var I=T._private.style[g];return I??(x?L.style().getDefaultProperty(g):null)}},numericStyle:function(g){var x=this[0];if(x.cy().styleEnabled()&&x){var T=x.pstyle(g);return T.pfValue!==void 0?T.pfValue:T.value}},numericStyleUnits:function(g){var x=this[0];if(x.cy().styleEnabled()&&x)return x.pstyle(g).units},renderedStyle:function(g){var x=this.cy();if(!x.styleEnabled())return this;var T=this[0];if(T)return x.style().getRenderedStyle(T,g)},style:function(g,x){var T=this.cy();if(!T.styleEnabled())return this;var L=!1,I=T.style();if(ct(g)){var O=g;I.applyBypass(this,O,L),this.emitAndNotify("style")}else if(Tt(g))if(x===void 0){var $=this[0];return $?I.getStylePropertyValue($,g):void 0}else I.applyBypass(this,g,x,L),this.emitAndNotify("style");else if(g===void 0){var z=this[0];return z?I.getRawStyle(z):void 0}return this},removeStyle:function(g){var x=this.cy();if(!x.styleEnabled())return this;var T=!1,L=x.style(),I=this;if(g===void 0)for(var O=0;O0&&g.push(V[0]),g.push($[0])}return this.spawn(g,!0).filter(y)},"neighborhood"),closedNeighborhood:function(g){return this.neighborhood().add(this).filter(g)},openNeighborhood:function(g){return this.neighborhood(g)}}),g1.neighbourhood=g1.neighborhood,g1.closedNeighbourhood=g1.closedNeighborhood,g1.openNeighbourhood=g1.openNeighborhood,fn(g1,{source:id(function(g){var x=this[0],T;return x&&(T=x._private.source||x.cy().collection()),T&&g?T.filter(g):T},"source"),target:id(function(g){var x=this[0],T;return x&&(T=x._private.target||x.cy().collection()),T&&g?T.filter(g):T},"target"),sources:xB({attr:"source"}),targets:xB({attr:"target"})});function xB(y){return function(x){for(var T=[],L=0;L0);return O},component:function(){var g=this[0];return g.cy().mutableElements().components(g)[0]}}),g1.componentsOf=g1.components;var Hf=function(g,x){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(g===void 0){ou("A collection must have a reference to the core");return}var I=new Hb,O=!1;if(!x)x=[];else if(x.length>0&&ct(x[0])&&!Ct(x[0])){O=!0;for(var $=[],z=new $5,S=0,V=x.length;S0&&arguments[0]!==void 0?arguments[0]:!0,g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,T=x.cy(),L=T._private,I=[],O=[],$,z=0,S=x.length;z0){for(var Dn=$.length===x.length?x:new Hf(T,$),Xn=0;Xn0&&arguments[0]!==void 0?arguments[0]:!0,g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,T=[],L={},I=x._private.cy;function O(pe){for(var gn=pe._private.edges,je=0;je0&&(y?ge.emitAndNotify("remove"):g&&ge.emit("remove"));for(var se=0;se0?se=pe:ge=pe;while(Math.abs(Ne)>O&&++gn<$);return pe}function te(fe){for(var ge=0,se=1,Ne=z-1;se!==Ne&&et[se]<=fe;++se)ge+=S;--se;var pe=(fe-et[se])/(et[se+1]-et[se]),gn=ge+pe*S,je=Et(gn,y,x);return je>=I?Dt(fe,gn):je===0?gn:zt(fe,ge,ge+S)}var Xt=!1;function Ht(){Xt=!0,(y!==g||x!==T)&&It()}var ie=function(ge){return Xt||Ht(),y===g&&x===T?ge:ge===0?0:ge===1?1:Lt(te(ge),g,T)};ie.getControlPoints=function(){return[{x:y,y:g},{x,y:T}]};var Ut="generateBezier("+[y,g,x,T]+")";return ie.toString=function(){return Ut},ie}/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */var xJ=function(){function y(T){return-T.tension*T.x-T.friction*T.v}function g(T,L,I){var O={x:T.x+I.dx*L,v:T.v+I.dv*L,tension:T.tension,friction:T.friction};return{dx:O.v,dv:y(O)}}function x(T,L){var I={dx:T.v,dv:y(T)},O=g(T,L*.5,I),$=g(T,L*.5,O),z=g(T,L,$),S=1/6*(I.dx+2*(O.dx+$.dx)+z.dx),V=1/6*(I.dv+2*(O.dv+$.dv)+z.dv);return T.x=T.x+S*L,T.v=T.v+V*L,T}return function T(L,I,O){var $={x:-1,v:0,tension:null,friction:null},z=[0],S=0,V=1/1e4,U=16/1e3,et,at,lt;for(L=parseFloat(L)||500,I=parseFloat(I)||20,O=O||null,$.tension=L,$.friction=I,et=O!==null,et?(S=T(L,I),at=S/O*U):at=U;lt=x(lt||$,at),z.push(1+lt.x),S+=16,Math.abs(lt.x)>V&&Math.abs(lt.v)>V;);return et?function(gt){return z[gt*(z.length-1)|0]}:S}}(),wu=function(g,x,T,L){var I=yJ(g,x,T,L);return function(O,$,z){return O+($-O)*I(z)}},sT={linear:function(g,x,T){return g+(x-g)*T},ease:wu(.25,.1,.25,1),"ease-in":wu(.42,0,1,1),"ease-out":wu(0,0,.58,1),"ease-in-out":wu(.42,0,.58,1),"ease-in-sine":wu(.47,0,.745,.715),"ease-out-sine":wu(.39,.575,.565,1),"ease-in-out-sine":wu(.445,.05,.55,.95),"ease-in-quad":wu(.55,.085,.68,.53),"ease-out-quad":wu(.25,.46,.45,.94),"ease-in-out-quad":wu(.455,.03,.515,.955),"ease-in-cubic":wu(.55,.055,.675,.19),"ease-out-cubic":wu(.215,.61,.355,1),"ease-in-out-cubic":wu(.645,.045,.355,1),"ease-in-quart":wu(.895,.03,.685,.22),"ease-out-quart":wu(.165,.84,.44,1),"ease-in-out-quart":wu(.77,0,.175,1),"ease-in-quint":wu(.755,.05,.855,.06),"ease-out-quint":wu(.23,1,.32,1),"ease-in-out-quint":wu(.86,0,.07,1),"ease-in-expo":wu(.95,.05,.795,.035),"ease-out-expo":wu(.19,1,.22,1),"ease-in-out-expo":wu(1,0,0,1),"ease-in-circ":wu(.6,.04,.98,.335),"ease-out-circ":wu(.075,.82,.165,1),"ease-in-out-circ":wu(.785,.135,.15,.86),spring:function(g,x,T){if(T===0)return sT.linear;var L=xJ(g,x,T);return function(I,O,$){return I+(O-I)*L($)}},"cubic-bezier":wu};function TB(y,g,x,T,L){if(T===1||g===x)return x;var I=L(g,x,T);return y==null||((y.roundValue||y.color)&&(I=Math.round(I)),y.min!==void 0&&(I=Math.max(I,y.min)),y.max!==void 0&&(I=Math.min(I,y.max))),I}function _B(y,g){return y.pfValue!=null||y.value!=null?y.pfValue!=null&&(g==null||g.type.units!=="%")?y.pfValue:y.value:y}function i6(y,g,x,T,L){var I=L!=null?L.type:null;x<0?x=0:x>1&&(x=1);var O=_B(y,L),$=_B(g,L);if(st(O)&&st($))return TB(I,O,$,x,T);if(mt(O)&&mt($)){for(var z=[],S=0;S<$.length;S++){var V=O[S],U=$[S];if(V!=null&&U!=null){var et=TB(I,V,U,x,T);z.push(et)}else z.push(U)}return z}}function kJ(y,g,x,T){var L=!T,I=y._private,O=g._private,$=O.easing,z=O.startTime,S=T?y:y.cy(),V=S.style();if(!O.easingImpl)if($==null)O.easingImpl=sT.linear;else{var U;if(Tt($)){var et=V.parse("transition-timing-function",$);U=et.value}else U=$;var at,lt;Tt(U)?(at=U,lt=[]):(at=U[1],lt=U.slice(2).map(function(Dn){return+Dn})),lt.length>0?(at==="spring"&<.push(O.duration),O.easingImpl=sT[at].apply(null,lt)):O.easingImpl=sT[at]}var gt=O.easingImpl,Lt;if(O.duration===0?Lt=1:Lt=(x-z)/O.duration,O.applying&&(Lt=O.progress),Lt<0?Lt=0:Lt>1&&(Lt=1),O.delay==null){var Et=O.startPosition,Dt=O.position;if(Dt&&L&&!y.locked()){var It={};Mk(Et.x,Dt.x)&&(It.x=i6(Et.x,Dt.x,Lt,gt)),Mk(Et.y,Dt.y)&&(It.y=i6(Et.y,Dt.y,Lt,gt)),y.position(It)}var zt=O.startPan,te=O.pan,Xt=I.pan,Ht=te!=null&&T;Ht&&(Mk(zt.x,te.x)&&(Xt.x=i6(zt.x,te.x,Lt,gt)),Mk(zt.y,te.y)&&(Xt.y=i6(zt.y,te.y,Lt,gt)),y.emit("pan"));var ie=O.startZoom,Ut=O.zoom,fe=Ut!=null&&T;fe&&(Mk(ie,Ut)&&(I.zoom=bk(I.minZoom,i6(ie,Ut,Lt,gt),I.maxZoom)),y.emit("zoom")),(Ht||fe)&&y.emit("viewport");var ge=O.style;if(ge&&ge.length>0&&L){for(var se=0;se=0;Ht--){var ie=Xt[Ht];ie()}Xt.splice(0,Xt.length)},Dt=at.length-1;Dt>=0;Dt--){var It=at[Dt],zt=It._private;if(zt.stopped){at.splice(Dt,1),zt.hooked=!1,zt.playing=!1,zt.started=!1,Et(zt.frames);continue}!zt.playing&&!zt.applying||(zt.playing&&zt.applying&&(zt.applying=!1),zt.started||EJ(V,It,y),kJ(V,It,y,U),zt.applying&&(zt.applying=!1),Et(zt.frames),zt.step!=null&&zt.step(y),It.completed()&&(at.splice(Dt,1),zt.hooked=!1,zt.playing=!1,zt.started=!1,Et(zt.completes)),gt=!0)}return!U&&at.length===0&<.length===0&&T.push(V),gt}for(var I=!1,O=0;O0?g.notify("draw",x):g.notify("draw")),x.unmerge(T),g.emit("step")}var TJ={animate:Ic.animate(),animation:Ic.animation(),animated:Ic.animated(),clearQueue:Ic.clearQueue(),delay:Ic.delay(),delayAnimation:Ic.delayAnimation(),stop:Ic.stop(),addToAnimationPool:function(g){var x=this;x.styleEnabled()&&x._private.aniEles.merge(g)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var g=this;if(g._private.animationsRunning=!0,!g.styleEnabled())return;function x(){g._private.animationsRunning&&Qc(function(I){CB(I,g),x()})}var T=g.renderer();T&&T.beforeRender?T.beforeRender(function(I,O){CB(O,g)},T.beforeRenderPriorities.animations):x()}},_J={qualifierCompare:function(g,x){return g==null||x==null?g==null&&x==null:g.sameText(x)},eventMatches:function(g,x,T){var L=x.qualifier;return L!=null?g!==T.target&&Ct(T.target)&&L.matches(T.target):!0},addEventFields:function(g,x){x.cy=g,x.target=g},callbackContext:function(g,x,T){return x.qualifier!=null?T.target:g}},aT=function(g){return Tt(g)?new ym(g):g},SB={createEmitter:function(){var g=this._private;return g.emitter||(g.emitter=new J9(_J,this)),this},emitter:function(){return this._private.emitter},on:function(g,x,T){return this.emitter().on(g,aT(x),T),this},removeListener:function(g,x,T){return this.emitter().removeListener(g,aT(x),T),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(g,x,T){return this.emitter().one(g,aT(x),T),this},once:function(g,x,T){return this.emitter().one(g,aT(x),T),this},emit:function(g,x){return this.emitter().emit(g,x),this},emitAndNotify:function(g,x){return this.emit(g),this.notify(g,x),this}};Ic.eventAliasesOn(SB);var zL={png:function(g){var x=this._private.renderer;return g=g||{},x.png(g)},jpg:function(g){var x=this._private.renderer;return g=g||{},g.bg=g.bg||"#fff",x.jpg(g)}};zL.jpeg=zL.jpg;var oT={layout:function(g){var x=this;if(g==null){ou("Layout options must be specified to make a layout");return}if(g.name==null){ou("A `name` must be specified to make a layout");return}var T=g.name,L=x.extension("layout",T);if(L==null){ou("No such layout `"+T+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var I;Tt(g.eles)?I=x.$(g.eles):I=g.eles!=null?g.eles:x.$();var O=new L(fn({},g,{cy:x,eles:I}));return O}};oT.createLayout=oT.makeLayout=oT.layout;var CJ={notify:function(g,x){var T=this._private;if(this.batching()){T.batchNotifications=T.batchNotifications||{};var L=T.batchNotifications[g]=T.batchNotifications[g]||this.collection();x!=null&&L.merge(x);return}if(T.notificationsEnabled){var I=this.renderer();this.destroyed()||!I||I.notify(g,x)}},notifications:function(g){var x=this._private;return g===void 0?x.notificationsEnabled:(x.notificationsEnabled=!!g,this)},noNotifications:function(g){this.notifications(!1),g(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var g=this._private;return g.batchCount==null&&(g.batchCount=0),g.batchCount===0&&(g.batchStyleEles=this.collection(),g.batchNotifications={}),g.batchCount++,this},endBatch:function(){var g=this._private;if(g.batchCount===0)return this;if(g.batchCount--,g.batchCount===0){g.batchStyleEles.updateStyle();var x=this.renderer();Object.keys(g.batchNotifications).forEach(function(T){var L=g.batchNotifications[T];L.empty()?x.notify(T):x.notify(T,L)})}return this},batch:function(g){return this.startBatch(),g(),this.endBatch(),this},batchData:function(g){var x=this;return this.batch(function(){for(var T=Object.keys(g),L=0;L0;)x.removeChild(x.childNodes[0]);g._private.renderer=null,g.mutableElements().forEach(function(T){var L=T._private;L.rscratch={},L.rstyle={},L.animation.current=[],L.animation.queue=[]})},onRender:function(g){return this.on("render",g)},offRender:function(g){return this.off("render",g)}};qL.invalidateDimensions=qL.resize;var cT={collection:function(g,x){return Tt(g)?this.$(g):dt(g)?g.collection():mt(g)?(x||(x={}),new Hf(this,g,x.unique,x.removed)):new Hf(this)},nodes:function(g){var x=this.$(function(T){return T.isNode()});return g?x.filter(g):x},edges:function(g){var x=this.$(function(T){return T.isEdge()});return g?x.filter(g):x},$:function(g){var x=this._private.elements;return g?x.filter(g):x.spawnSelf()},mutableElements:function(){return this._private.elements}};cT.elements=cT.filter=cT.$;var p1={},Dk="t",AJ="f";p1.apply=function(y){for(var g=this,x=g._private,T=x.cy,L=T.collection(),I=0;I0;if(et||U&&at){var lt=void 0;et&&at||et?lt=S.properties:at&&(lt=S.mappedProperties);for(var gt=0;gt1&&(zt=1),$.color){var Xt=T.valueMin[0],Ht=T.valueMax[0],ie=T.valueMin[1],Ut=T.valueMax[1],fe=T.valueMin[2],ge=T.valueMax[2],se=T.valueMin[3]==null?1:T.valueMin[3],Ne=T.valueMax[3]==null?1:T.valueMax[3],pe=[Math.round(Xt+(Ht-Xt)*zt),Math.round(ie+(Ut-ie)*zt),Math.round(fe+(ge-fe)*zt),Math.round(se+(Ne-se)*zt)];I={bypass:T.bypass,name:T.name,value:pe,strValue:"rgb("+pe[0]+", "+pe[1]+", "+pe[2]+")"}}else if($.number){var gn=T.valueMin+(T.valueMax-T.valueMin)*zt;I=this.parse(T.name,gn,T.bypass,et)}else return!1;if(!I)return gt(),!1;I.mapping=T,T=I;break}case O.data:{for(var je=T.field.split("."),Ge=U.data,xn=0;xn0&&I>0){for(var $={},z=!1,S=0;S0?y.delayAnimation(O).play().promise().then(It):It()}).then(function(){return y.animation({style:$,duration:I,easing:y.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){x.removeBypasses(y,L),y.emitAndNotify("style"),T.transitioning=!1})}else T.transitioning&&(this.removeBypasses(y,L),y.emitAndNotify("style"),T.transitioning=!1)},p1.checkTrigger=function(y,g,x,T,L,I){var O=this.properties[g],$=L(O);$!=null&&$(x,T)&&I(O)},p1.checkZOrderTrigger=function(y,g,x,T){var L=this;this.checkTrigger(y,g,x,T,function(I){return I.triggersZOrder},function(){L._private.cy.notify("zorder",y)})},p1.checkBoundsTrigger=function(y,g,x,T){this.checkTrigger(y,g,x,T,function(L){return L.triggersBounds},function(L){y.dirtyCompoundBoundsCache(),y.dirtyBoundingBoxCache(),L.triggersBoundsOfParallelBeziers&&(g==="curve-style"&&(x==="bezier"||T==="bezier")||g==="display"&&(x==="none"||T==="none"))&&y.parallelEdges().forEach(function(I){I.isBundledBezier()&&I.dirtyBoundingBoxCache()})})},p1.checkTriggers=function(y,g,x,T){y.dirtyStyleCache(),this.checkZOrderTrigger(y,g,x,T),this.checkBoundsTrigger(y,g,x,T)};var Ik={};Ik.applyBypass=function(y,g,x,T){var L=this,I=[],O=!0;if(g==="*"||g==="**"){if(x!==void 0)for(var $=0;$L.length?T=T.substr(L.length):T=""}function z(){I.length>O.length?I=I.substr(O.length):I=""}for(;;){var S=T.match(/^\s*$/);if(S)break;var V=T.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!V){no("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+T);break}L=V[0];var U=V[1];if(U!=="core"){var et=new ym(U);if(et.invalid){no("Skipping parsing of block: Invalid selector found in string stylesheet: "+U),$();continue}}var at=V[2],lt=!1;I=at;for(var gt=[];;){var Lt=I.match(/^\s*$/);if(Lt)break;var Et=I.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!Et){no("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+at),lt=!0;break}O=Et[0];var Dt=Et[1],It=Et[2],zt=g.properties[Dt];if(!zt){no("Skipping property: Invalid property name in: "+O),z();continue}var te=x.parse(Dt,It);if(!te){no("Skipping property: Invalid property definition in: "+O),z();continue}gt.push({name:Dt,val:It}),z()}if(lt){$();break}x.selector(U);for(var Xt=0;Xt=7&&g[0]==="d"&&(V=new RegExp($.data.regex).exec(g))){if(x)return!1;var et=$.data;return{name:y,value:V,strValue:""+g,mapped:et,field:V[1],bypass:x}}else if(g.length>=10&&g[0]==="m"&&(U=new RegExp($.mapData.regex).exec(g))){if(x||S.multiple)return!1;var at=$.mapData;if(!(S.color||S.number))return!1;var lt=this.parse(y,U[4]);if(!lt||lt.mapped)return!1;var gt=this.parse(y,U[5]);if(!gt||gt.mapped)return!1;if(lt.pfValue===gt.pfValue||lt.strValue===gt.strValue)return no("`"+y+": "+g+"` is not a valid mapper because the output range is zero; converting to `"+y+": "+lt.strValue+"`"),this.parse(y,lt.strValue);if(S.color){var Lt=lt.value,Et=gt.value,Dt=Lt[0]===Et[0]&&Lt[1]===Et[1]&&Lt[2]===Et[2]&&(Lt[3]===Et[3]||(Lt[3]==null||Lt[3]===1)&&(Et[3]==null||Et[3]===1));if(Dt)return!1}return{name:y,value:U,strValue:""+g,mapped:at,field:U[1],fieldMin:parseFloat(U[2]),fieldMax:parseFloat(U[3]),valueMin:lt.value,valueMax:gt.value,bypass:x}}}if(S.multiple&&T!=="multiple"){var It;if(z?It=g.split(/\s+/):mt(g)?It=g:It=[g],S.evenMultiple&&It.length%2!==0)return null;for(var zt=[],te=[],Xt=[],Ht="",ie=!1,Ut=0;Ut0?" ":"")+fe.strValue}return S.validate&&!S.validate(zt,te)?null:S.singleEnum&&ie?zt.length===1&&Tt(zt[0])?{name:y,value:zt[0],strValue:zt[0],bypass:x}:null:{name:y,value:zt,pfValue:Xt,strValue:Ht,bypass:x,units:te}}var ge=function(){for(var fr=0;frS.max||S.strictMax&&g===S.max))return null;var je={name:y,value:g,strValue:""+g+(se||""),units:se,bypass:x};return S.unitless||se!=="px"&&se!=="em"?je.pfValue=g:je.pfValue=se==="px"||!se?g:this.getEmSizeInPixels()*g,(se==="ms"||se==="s")&&(je.pfValue=se==="ms"?g:1e3*g),(se==="deg"||se==="rad")&&(je.pfValue=se==="rad"?g:EY(g)),se==="%"&&(je.pfValue=g/100),je}else if(S.propList){var Ge=[],xn=""+g;if(xn!=="none"){for(var Dn=xn.split(/\s*,\s*|\s+/),Xn=0;Xn0&&$>0&&!isNaN(T.w)&&!isNaN(T.h)&&T.w>0&&T.h>0){z=Math.min((O-2*x)/T.w,($-2*x)/T.h),z=z>this._private.maxZoom?this._private.maxZoom:z,z=z=T.minZoom&&(T.maxZoom=x),this},minZoom:function(g){return g===void 0?this._private.minZoom:this.zoomRange({min:g})},maxZoom:function(g){return g===void 0?this._private.maxZoom:this.zoomRange({max:g})},getZoomedViewport:function(g){var x=this._private,T=x.pan,L=x.zoom,I,O,$=!1;if(x.zoomingEnabled||($=!0),st(g)?O=g:ct(g)&&(O=g.level,g.position!=null?I=O9(g.position,L,T):g.renderedPosition!=null&&(I=g.renderedPosition),I!=null&&!x.panningEnabled&&($=!0)),O=O>x.maxZoom?x.maxZoom:O,O=Ox.maxZoom||!x.zoomingEnabled?O=!0:(x.zoom=z,I.push("zoom"))}if(L&&(!O||!g.cancelOnFailedZoom)&&x.panningEnabled){var S=g.pan;st(S.x)&&(x.pan.x=S.x,$=!1),st(S.y)&&(x.pan.y=S.y,$=!1),$||I.push("pan")}return I.length>0&&(I.push("viewport"),this.emit(I.join(" ")),this.notify("viewport")),this},center:function(g){var x=this.getCenterPan(g);return x&&(this._private.pan=x,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(g,x){if(this._private.panningEnabled){if(Tt(g)){var T=g;g=this.mutableElements().filter(T)}else dt(g)||(g=this.mutableElements());if(g.length!==0){var L=g.boundingBox(),I=this.width(),O=this.height();x=x===void 0?this._private.zoom:x;var $={x:(I-x*(L.x1+L.x2))/2,y:(O-x*(L.y1+L.y2))/2};return $}}},reset:function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},invalidateSize:function(){this._private.sizeCache=null},size:function(){var g=this._private,x=g.container;return g.sizeCache=g.sizeCache||(x?function(){var T=R.getComputedStyle(x),L=function(O){return parseFloat(T.getPropertyValue(O))};return{width:x.clientWidth-L("padding-left")-L("padding-right"),height:x.clientHeight-L("padding-top")-L("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var g=this._private.pan,x=this._private.zoom,T=this.renderedExtent(),L={x1:(T.x1-g.x)/x,x2:(T.x2-g.x)/x,y1:(T.y1-g.y)/x,y2:(T.y2-g.y)/x};return L.w=L.x2-L.x1,L.h=L.y2-L.y1,L},renderedExtent:function(){var g=this.width(),x=this.height();return{x1:0,y1:0,x2:g,y2:x,w:g,h:x}},multiClickDebounceTime:function(g){if(g)this._private.multiClickDebounceTime=g;else return this._private.multiClickDebounceTime;return this}};L3.centre=L3.center,L3.autolockNodes=L3.autolock,L3.autoungrabifyNodes=L3.autoungrabify;var Ok={data:Ic.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Ic.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Ic.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Ic.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Ok.attr=Ok.data,Ok.removeAttr=Ok.removeData;var Nk=function(g){var x=this;g=fn({},g);var T=g.container;T&&!ht(T)&&ht(T[0])&&(T=T[0]);var L=T?T._cyreg:null;L=L||{},L&&L.cy&&(L.cy.destroy(),L={});var I=L.readies=L.readies||[];T&&(T._cyreg=L),L.cy=x;var O=R!==void 0&&T!==void 0&&!g.headless,$=g;$.layout=fn({name:O?"grid":"null"},$.layout),$.renderer=fn({name:O?"canvas":"null"},$.renderer);var z=function(lt,gt,Lt){return gt!==void 0?gt:Lt!==void 0?Lt:lt},S=this._private={container:T,ready:!1,options:$,elements:new Hf(this),listeners:[],aniEles:new Hf(this),data:$.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:z(!0,$.zoomingEnabled),userZoomingEnabled:z(!0,$.userZoomingEnabled),panningEnabled:z(!0,$.panningEnabled),userPanningEnabled:z(!0,$.userPanningEnabled),boxSelectionEnabled:z(!0,$.boxSelectionEnabled),autolock:z(!1,$.autolock,$.autolockNodes),autoungrabify:z(!1,$.autoungrabify,$.autoungrabifyNodes),autounselectify:z(!1,$.autounselectify),styleEnabled:$.styleEnabled===void 0?O:$.styleEnabled,zoom:st($.zoom)?$.zoom:1,pan:{x:ct($.pan)&&st($.pan.x)?$.pan.x:0,y:ct($.pan)&&st($.pan.y)?$.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:z(250,$.multiClickDebounceTime)};this.createEmitter(),this.selectionType($.selectionType),this.zoomRange({min:$.minZoom,max:$.maxZoom});var V=function(lt,gt){var Lt=lt.some(vt);if(Lt)return W5.all(lt).then(gt);gt(lt)};S.styleEnabled&&x.setStyle([]);var U=fn({},$,$.renderer);x.initRenderer(U);var et=function(lt,gt,Lt){x.notifications(!1);var Et=x.mutableElements();Et.length>0&&Et.remove(),lt!=null&&(ct(lt)||mt(lt))&&x.add(lt),x.one("layoutready",function(It){x.notifications(!0),x.emit(It),x.one("load",gt),x.emitAndNotify("load")}).one("layoutstop",function(){x.one("done",Lt),x.emit("done")});var Dt=fn({},x._private.options.layout);Dt.eles=x.elements(),x.layout(Dt).run()};V([$.style,$.elements],function(at){var lt=at[0],gt=at[1];S.styleEnabled&&x.style().append(lt),et(gt,function(){x.startAnimationLoop(),S.ready=!0,kt($.ready)&&x.on("ready",$.ready);for(var Lt=0;Lt0,z=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),S;if(dt(g.roots))S=g.roots;else if(mt(g.roots)){for(var V=[],U=0;U0;){var gn=pe(),je=fe(gn,se);if(je)gn.outgoers().filter(function(Di){return Di.isNode()&&T.has(Di)}).forEach(Ne);else if(je===null){no("Detected double maximal shift for node `"+gn.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}Ut();var Ge=0;if(g.avoidOverlap)for(var xn=0;xn0&&Et[0].length<=3?Xs/2:0),jn=2*Math.PI/Et[Zi].length*Ni;return Zi===0&&Et[0].length===1&&(Jt=1),{x:_i.x+Jt*Math.cos(jn),y:_i.y+Jt*Math.sin(jn)}}else{var Cr={x:_i.x+(Ni+1-(ns+1)/2)*Ua,y:(Zi+1)*sa};return Cr}};return T.nodes().layoutPositions(this,g,La),this};var IJ={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function fT(y){this.options=fn({},IJ,y)}fT.prototype.run=function(){var y=this.options,g=y,x=y.cy,T=g.eles,L=g.counterclockwise!==void 0?!g.counterclockwise:g.clockwise,I=T.nodes().not(":parent");g.sort&&(I=I.sort(g.sort));for(var O=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),$={x:O.x1+O.w/2,y:O.y1+O.h/2},z=g.sweep===void 0?2*Math.PI-2*Math.PI/I.length:g.sweep,S=z/Math.max(1,I.length-1),V,U=0,et=0;et1&&g.avoidOverlap){U*=1.75;var Et=Math.cos(S)-Math.cos(0),Dt=Math.sin(S)-Math.sin(0),It=Math.sqrt(U*U/(Et*Et+Dt*Dt));V=Math.max(It,V)}var zt=function(Xt,Ht){var ie=g.startAngle+Ht*S*(L?1:-1),Ut=V*Math.cos(ie),fe=V*Math.sin(ie),ge={x:$.x+Ut,y:$.y+fe};return ge};return T.nodes().layoutPositions(this,g,zt),this};var OJ={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(g){return g.degree()},levelWidth:function(g){return g.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function LB(y){this.options=fn({},OJ,y)}LB.prototype.run=function(){for(var y=this.options,g=y,x=g.counterclockwise!==void 0?!g.counterclockwise:g.clockwise,T=y.cy,L=g.eles,I=L.nodes().not(":parent"),O=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:T.width(),h:T.height()}),$={x:O.x1+O.w/2,y:O.y1+O.h/2},z=[],S=0,V=0;V0){var te=Math.abs(Dt[0].value-zt.value);te>=Lt&&(Dt=[],Et.push(Dt))}Dt.push(zt)}var Xt=S+g.minNodeSpacing;if(!g.avoidOverlap){var Ht=Et.length>0&&Et[0].length>1,ie=Math.min(O.w,O.h)/2-Xt,Ut=ie/(Et.length+Ht?1:0);Xt=Math.min(Xt,Ut)}for(var fe=0,ge=0;ge1&&g.avoidOverlap){var gn=Math.cos(pe)-Math.cos(0),je=Math.sin(pe)-Math.sin(0),Ge=Math.sqrt(Xt*Xt/(gn*gn+je*je));fe=Math.max(Ge,fe)}se.r=fe,fe+=Xt}if(g.equidistant){for(var xn=0,Dn=0,Xn=0;Xn=y.numIter||(zJ(T,y),T.temperature=T.temperature*y.coolingFactor,T.temperature=y.animationThreshold&&I(),Qc(U)}};V()}else{for(;S;)S=O(z),z++;IB(T,y),$()}return this},dT.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},dT.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var PJ=function(g,x,T){for(var L=T.eles.edges(),I=T.eles.nodes(),O={isCompound:g.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:I.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:L.size(),temperature:T.initialTemp,clientWidth:g.width(),clientHeight:g.width(),boundingBox:Rd(T.boundingBox?T.boundingBox:{x1:0,y1:0,w:g.width(),h:g.height()})},$=T.eles.components(),z={},S=0;S<$.length;S++)for(var V=$[S],U=0;U0){O.graphSet.push(Ht);for(var S=0;SL.count?0:L.graph},BJ=function y(g,x,T,L){var I=L.graphSet[T];if(-10)var U=L.nodeOverlap*V,et=Math.sqrt($*$+z*z),at=U*$/et,lt=U*z/et;else var gt=gT(g,$,z),Lt=gT(x,-1*$,-1*z),Et=Lt.x-gt.x,Dt=Lt.y-gt.y,It=Et*Et+Dt*Dt,et=Math.sqrt(It),U=(g.nodeRepulsion+x.nodeRepulsion)/It,at=U*Et/et,lt=U*Dt/et;g.isLocked||(g.offsetX-=at,g.offsetY-=lt),x.isLocked||(x.offsetX+=at,x.offsetY+=lt)}},VJ=function(g,x,T,L){if(T>0)var I=g.maxX-x.minX;else var I=x.maxX-g.minX;if(L>0)var O=g.maxY-x.minY;else var O=x.maxY-g.minY;return I>=0&&O>=0?Math.sqrt(I*I+O*O):0},gT=function(g,x,T){var L=g.positionX,I=g.positionY,O=g.height||1,$=g.width||1,z=T/x,S=O/$,V={};return x===0&&0T?(V.x=L,V.y=I+O/2,V):0x&&-1*S<=z&&z<=S?(V.x=L-$/2,V.y=I-$*T/2/x,V):0=S)?(V.x=L+O*x/2/T,V.y=I+O/2,V):(0>T&&(z<=-1*S||z>=S)&&(V.x=L-O*x/2/T,V.y=I-O/2),V)},GJ=function(g,x){for(var T=0;TT){var Lt=x.gravity*at/gt,Et=x.gravity*lt/gt;et.offsetX+=Lt,et.offsetY+=Et}}}}},WJ=function(g,x){var T=[],L=0,I=-1;for(T.push.apply(T,g.graphSet[0]),I+=g.graphSet[0].length;L<=I;){var O=T[L++],$=g.idToIndex[O],z=g.layoutNodes[$],S=z.children;if(0T)var I={x:T*g/L,y:T*x/L};else var I={x:g,y:x};return I},XJ=function y(g,x){var T=g.parentId;if(T!=null){var L=x.layoutNodes[x.idToIndex[T]],I=!1;if((L.maxX==null||g.maxX+L.padRight>L.maxX)&&(L.maxX=g.maxX+L.padRight,I=!0),(L.minX==null||g.minX-L.padLeftL.maxY)&&(L.maxY=g.maxY+L.padBottom,I=!0),(L.minY==null||g.minY-L.padTopEt&&(lt+=Lt+x.componentSpacing,at=0,gt=0,Lt=0)}}},QJ={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(g){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function OB(y){this.options=fn({},QJ,y)}OB.prototype.run=function(){var y=this.options,g=y,x=y.cy,T=g.eles,L=T.nodes().not(":parent");g.sort&&(L=L.sort(g.sort));var I=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()});if(I.h===0||I.w===0)T.nodes().layoutPositions(this,g,function(rr){return{x:I.x1,y:I.y1}});else{var O=L.size(),$=Math.sqrt(O*I.h/I.w),z=Math.round($),S=Math.round(I.w/I.h*$),V=function(wr){if(wr==null)return Math.min(z,S);var ur=Math.min(z,S);ur==z?z=wr:S=wr},U=function(wr){if(wr==null)return Math.max(z,S);var ur=Math.max(z,S);ur==z?z=wr:S=wr},et=g.rows,at=g.cols!=null?g.cols:g.columns;if(et!=null&&at!=null)z=et,S=at;else if(et!=null&&at==null)z=et,S=Math.ceil(O/z);else if(et==null&&at!=null)S=at,z=Math.ceil(O/S);else if(S*z>O){var lt=V(),gt=U();(lt-1)*gt>=O?V(lt-1):(gt-1)*lt>=O&&U(gt-1)}else for(;S*z=O?U(Et+1):V(Lt+1)}var Dt=I.w/S,It=I.h/z;if(g.condense&&(Dt=0,It=0),g.avoidOverlap)for(var zt=0;zt=S&&(gn=0,pe++)},Ge={},xn=0;xn(gn=FY(y,g,je[Ge],je[Ge+1],je[Ge+2],je[Ge+3])))return Lt(Ht,gn),!0}else if(Ut.edgeType==="bezier"||Ut.edgeType==="multibezier"||Ut.edgeType==="self"||Ut.edgeType==="compound"){for(var je=Ut.allpts,Ge=0;Ge+5(gn=PY(y,g,je[Ge],je[Ge+1],je[Ge+2],je[Ge+3],je[Ge+4],je[Ge+5])))return Lt(Ht,gn),!0}for(var xn=xn||ie.source,Dn=Dn||ie.target,Xn=L.getArrowWidth(fe,ge),Cn=[{name:"source",x:Ut.arrowStartX,y:Ut.arrowStartY,angle:Ut.srcArrowAngle},{name:"target",x:Ut.arrowEndX,y:Ut.arrowEndY,angle:Ut.tgtArrowAngle},{name:"mid-source",x:Ut.midX,y:Ut.midY,angle:Ut.midsrcArrowAngle},{name:"mid-target",x:Ut.midX,y:Ut.midY,angle:Ut.midtgtArrowAngle}],Ge=0;Ge0&&(Et(xn),Et(Dn))}function It(Ht,ie,Ut){return wp(Ht,ie,Ut)}function zt(Ht,ie){var Ut=Ht._private,fe=et,ge;ie?ge=ie+"-":ge="",Ht.boundingBox();var se=Ut.labelBounds[ie||"main"],Ne=Ht.pstyle(ge+"label").value,pe=Ht.pstyle("text-events").strValue==="yes";if(!(!pe||!Ne)){var gn=It(Ut.rscratch,"labelX",ie),je=It(Ut.rscratch,"labelY",ie),Ge=It(Ut.rscratch,"labelAngle",ie),xn=Ht.pstyle(ge+"text-margin-x").pfValue,Dn=Ht.pstyle(ge+"text-margin-y").pfValue,Xn=se.x1-fe-xn,Cn=se.x2+fe-xn,Yn=se.y1-fe-Dn,rr=se.y2+fe-Dn;if(Ge){var wr=Math.cos(Ge),ur=Math.sin(Ge),er=function(La,Di){return La=La-gn,Di=Di-je,{x:La*wr-Di*ur+gn,y:La*ur+Di*wr+je}},bn=er(Xn,Yn),pr=er(Xn,rr),fr=er(Cn,Yn),ri=er(Cn,rr),_i=[bn.x+xn,bn.y+Dn,fr.x+xn,fr.y+Dn,ri.x+xn,ri.y+Dn,pr.x+xn,pr.y+Dn];if(jd(y,g,_i))return Lt(Ht),!0}else if(H5(se,y,g))return Lt(Ht),!0}}for(var te=O.length-1;te>=0;te--){var Xt=O[te];Xt.isNode()?Et(Xt)||zt(Xt):Dt(Xt)||zt(Xt)||zt(Xt,"source")||zt(Xt,"target")}return $},M3.getAllInBox=function(y,g,x,T){var L=this.getCachedZSortedEles().interactive,I=[],O=Math.min(y,x),$=Math.max(y,x),z=Math.min(g,T),S=Math.max(g,T);y=O,x=$,g=z,T=S;for(var V=Rd({x1:y,y1:g,x2:x,y2:T}),U=0;U0?Math.max(ss-qo,0):Math.min(ss+qo,0)},Ne=se(fe,ie),pe=se(ge,Ut),gn=!1;Dt===S?Et=Math.abs(Ne)>Math.abs(pe)?L:T:Dt===z||Dt===$?(Et=T,gn=!0):(Dt===I||Dt===O)&&(Et=L,gn=!0);var je=Et===T,Ge=je?pe:Ne,xn=je?ge:fe,Dn=ZP(xn),Xn=!1;!(gn&&(zt||Xt))&&(Dt===$&&xn<0||Dt===z&&xn>0||Dt===I&&xn>0||Dt===O&&xn<0)&&(Dn*=-1,Ge=Dn*Math.abs(Ge),Xn=!0);var Cn;if(zt){var Yn=te<0?1+te:te;Cn=Yn*Ge}else{var rr=te<0?Ge:0;Cn=rr+te*Dn}var wr=function(ss){return Math.abs(ss)=Math.abs(Ge)},ur=wr(Cn),er=wr(Math.abs(Ge)-Math.abs(Cn)),bn=ur||er;if(bn&&!Xn)if(je){var pr=Math.abs(xn)<=et/2,fr=Math.abs(fe)<=at/2;if(pr){var ri=(V.x1+V.x2)/2,_i=V.y1,ia=V.y2;x.segpts=[ri,_i,ri,ia]}else if(fr){var La=(V.y1+V.y2)/2,Di=V.x1,wi=V.x2;x.segpts=[Di,La,wi,La]}else x.segpts=[V.x1,V.y2]}else{var _s=Math.abs(xn)<=U/2,Zi=Math.abs(ge)<=lt/2;if(_s){var Ni=(V.y1+V.y2)/2,ns=V.x1,Ua=V.x2;x.segpts=[ns,Ni,Ua,Ni]}else if(Zi){var sa=(V.x1+V.x2)/2,Xs=V.y1,Cr=V.y2;x.segpts=[sa,Xs,sa,Cr]}else x.segpts=[V.x2,V.y1]}else if(je){var Jt=V.y1+Cn+(Lt?et/2*Dn:0),jn=V.x1,Lr=V.x2;x.segpts=[jn,Jt,Lr,Jt]}else{var ir=V.x1+Cn+(Lt?U/2*Dn:0),sr=V.y1,Fa=V.y2;x.segpts=[ir,sr,ir,Fa]}},sd.tryToCorrectInvalidPoints=function(y,g){var x=y._private.rscratch;if(x.edgeType==="bezier"){var T=g.srcPos,L=g.tgtPos,I=g.srcW,O=g.srcH,$=g.tgtW,z=g.tgtH,S=g.srcShape,V=g.tgtShape,U=!st(x.startX)||!st(x.startY),et=!st(x.arrowStartX)||!st(x.arrowStartY),at=!st(x.endX)||!st(x.endY),lt=!st(x.arrowEndX)||!st(x.arrowEndY),gt=3,Lt=this.getArrowWidth(y.pstyle("width").pfValue,y.pstyle("arrow-scale").value)*this.arrowShapeWidth,Et=gt*Lt,Dt=T3({x:x.ctrlpts[0],y:x.ctrlpts[1]},{x:x.startX,y:x.startY}),It=Dtpe.poolIndex()){var gn=Ne;Ne=pe,pe=gn}var je=Ut.srcPos=Ne.position(),Ge=Ut.tgtPos=pe.position(),xn=Ut.srcW=Ne.outerWidth(),Dn=Ut.srcH=Ne.outerHeight(),Xn=Ut.tgtW=pe.outerWidth(),Cn=Ut.tgtH=pe.outerHeight(),Yn=Ut.srcShape=x.nodeShapes[g.getNodeShape(Ne)],rr=Ut.tgtShape=x.nodeShapes[g.getNodeShape(pe)];Ut.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var wr=0;wr0){var pr=I,fr=_3(pr,z5(x)),ri=_3(pr,z5(bn)),_i=fr;if(ri2){var ia=_3(pr,{x:bn[2],y:bn[3]});ia<_i&&(x=[bn[2],bn[3]])}}}var La=F9(x,fe,g.arrowShapes[$].spacing(y)+S),Di=F9(x,fe,g.arrowShapes[$].gap(y)+S);if(et.endX=Di[0],et.endY=Di[1],et.arrowEndX=La[0],et.arrowEndY=La[1],Ht==="inside-to-node")x=[I.x,I.y];else if(Xt.units)x=this.manualEndptToPx(T,Xt);else if(Ht==="outside-to-line")x=et.srcIntn;else if(Ht==="outside-to-node"||Ht==="outside-to-node-or-label"?Ne=ge:(Ht==="outside-to-line"||Ht==="outside-to-line-or-label")&&(Ne=[O.x,O.y]),x=g.nodeShapes[this.getNodeShape(T)].intersectLine(I.x,I.y,T.outerWidth(),T.outerHeight(),Ne[0],Ne[1],0),Ht==="outside-to-node-or-label"||Ht==="outside-to-line-or-label"){var wi=T._private.rscratch,_s=wi.labelWidth,Zi=wi.labelHeight,Ni=wi.labelX,ns=wi.labelY,Ua=_s/2,sa=Zi/2,Xs=T.pstyle("text-valign").value;Xs==="top"?ns-=sa:Xs==="bottom"&&(ns+=sa);var Cr=T.pstyle("text-halign").value;Cr==="left"?Ni-=Ua:Cr==="right"&&(Ni+=Ua);var Jt=wk(Ne[0],Ne[1],[Ni-Ua,ns-sa,Ni+Ua,ns-sa,Ni+Ua,ns+sa,Ni-Ua,ns+sa],I.x,I.y);if(Jt.length>0){var jn=O,Lr=_3(jn,z5(x)),ir=_3(jn,z5(Jt)),sr=Lr;if(ir2){var Fa=_3(jn,{x:Jt[2],y:Jt[3]});Fa=lt||Ht){Lt={cp:zt,segment:Xt};break}}if(Lt)break}var ie=Lt.cp,Ut=Lt.segment,fe=(lt-Et)/Ut.length,ge=Ut.t1-Ut.t0,se=at?Ut.t0+ge*fe:Ut.t1-ge*fe;se=bk(0,se,1),g=q5(ie.p0,ie.p1,ie.p2,se),et=qB(ie.p0,ie.p1,ie.p2,se);break}case"straight":case"segments":case"haystack":{for(var Ne=0,pe,gn,je,Ge,xn=T.allpts.length,Dn=0;Dn+3=lt));Dn+=2);var Xn=lt-gn,Cn=Xn/pe;Cn=bk(0,Cn,1),g=_Y(je,Ge,Cn),et=zB(je,Ge);break}}O("labelX",U,g.x),O("labelY",U,g.y),O("labelAutoAngle",U,et)}};S("source"),S("target"),this.applyLabelDimensions(y)}},kp.applyLabelDimensions=function(y){this.applyPrefixedLabelDimensions(y),y.isEdge()&&(this.applyPrefixedLabelDimensions(y,"source"),this.applyPrefixedLabelDimensions(y,"target"))},kp.applyPrefixedLabelDimensions=function(y,g){var x=y._private,T=this.getLabelText(y,g),L=this.calculateLabelDimensions(y,T),I=y.pstyle("line-height").pfValue,O=y.pstyle("text-wrap").strValue,$=wp(x.rscratch,"labelWrapCachedLines",g)||[],z=O!=="wrap"?1:Math.max($.length,1),S=L.height/z,V=S*I,U=L.width,et=L.height+(z-1)*(I-1)*S;bm(x.rstyle,"labelWidth",g,U),bm(x.rscratch,"labelWidth",g,U),bm(x.rstyle,"labelHeight",g,et),bm(x.rscratch,"labelHeight",g,et),bm(x.rscratch,"labelLineHeight",g,V)},kp.getLabelText=function(y,g){var x=y._private,T=g?g+"-":"",L=y.pstyle(T+"label").strValue,I=y.pstyle("text-transform").value,O=function(Xn,Cn){return Cn?(bm(x.rscratch,Xn,g,Cn),Cn):wp(x.rscratch,Xn,g)};if(!L)return"";I=="none"||(I=="uppercase"?L=L.toUpperCase():I=="lowercase"&&(L=L.toLowerCase()));var $=y.pstyle("text-wrap").value;if($==="wrap"){var z=O("labelKey");if(z!=null&&O("labelWrapKey")===z)return O("labelWrapCachedText");for(var S="​",V=L.split(` +`),U=y.pstyle("text-max-width").pfValue,et=y.pstyle("text-overflow-wrap").value,at=et==="anywhere",lt=[],gt=/[\s\u200b]+/,Lt=at?"":" ",Et=0;EtU){for(var Xt=Dt.split(gt),Ht="",ie=0;ieNe)break;pe+=L[Ge],Ge===L.length-1&&(je=!0)}return je||(pe+=gn),pe}return L},kp.getLabelJustification=function(y){var g=y.pstyle("text-justification").strValue,x=y.pstyle("text-halign").strValue;if(g==="auto")if(y.isNode())switch(x){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return g},kp.calculateLabelDimensions=function(y,g){var x=this,T=vp(g,y._private.labelDimsKey),L=x.labelDimCache||(x.labelDimCache=[]),I=L[T];if(I!=null)return I;var O=0,$=y.pstyle("font-style").strValue,z=y.pstyle("font-size").pfValue,S=y.pstyle("font-family").strValue,V=y.pstyle("font-weight").strValue,U=this.labelCalcCanvas,et=this.labelCalcCanvasContext;if(!U){U=this.labelCalcCanvas=document.createElement("canvas"),et=this.labelCalcCanvasContext=U.getContext("2d");var at=U.style;at.position="absolute",at.left="-9999px",at.top="-9999px",at.zIndex="-1",at.visibility="hidden",at.pointerEvents="none"}et.font="".concat($," ").concat(V," ").concat(z,"px ").concat(S);for(var lt=0,gt=0,Lt=g.split(` +`),Et=0;Et1&&arguments[1]!==void 0?arguments[1]:!0;if(g.merge(O),$)for(var z=0;z=y.desktopTapThreshold2}var bv=T(Jt);Gf&&(y.hoverData.tapholdCancelled=!0);var Cm=function(){var Ub=y.hoverData.dragDelta=y.hoverData.dragDelta||[];Ub.length===0?(Ub.push(io[0]),Ub.push(io[1])):(Ub[0]+=io[0],Ub[1]+=io[1])};Lr=!0,x(ro,["mousemove","vmousemove","tapdrag"],Jt,{x:Hr[0],y:Hr[1]});var d6=function(){y.data.bgActivePosistion=void 0,y.hoverData.selecting||ir.emit({originalEvent:Jt,type:"boxstart",position:{x:Hr[0],y:Hr[1]}}),Bc[4]=1,y.hoverData.selecting=!0,y.redrawHint("select",!0),y.redraw()};if(y.hoverData.which===3){if(Gf){var N3={originalEvent:Jt,type:"cxtdrag",position:{x:Hr[0],y:Hr[1]}};Ma?Ma.emit(N3):ir.emit(N3),y.hoverData.cxtDragged=!0,(!y.hoverData.cxtOver||ro!==y.hoverData.cxtOver)&&(y.hoverData.cxtOver&&y.hoverData.cxtOver.emit({originalEvent:Jt,type:"cxtdragout",position:{x:Hr[0],y:Hr[1]}}),y.hoverData.cxtOver=ro,ro&&ro.emit({originalEvent:Jt,type:"cxtdragover",position:{x:Hr[0],y:Hr[1]}}))}}else if(y.hoverData.dragging){if(Lr=!0,ir.panningEnabled()&&ir.userPanningEnabled()){var g6;if(y.hoverData.justStartedPan){var TT=y.hoverData.mdownPos;g6={x:(Hr[0]-TT[0])*sr,y:(Hr[1]-TT[1])*sr},y.hoverData.justStartedPan=!1}else g6={x:io[0]*sr,y:io[1]*sr};ir.panBy(g6),ir.emit("dragpan"),y.hoverData.dragged=!0}Hr=y.projectIntoViewport(Jt.clientX,Jt.clientY)}else if(Bc[4]==1&&(Ma==null||Ma.pannable())){if(Gf){if(!y.hoverData.dragging&&ir.boxSelectionEnabled()&&(bv||!ir.panningEnabled()||!ir.userPanningEnabled()))d6();else if(!y.hoverData.selecting&&ir.panningEnabled()&&ir.userPanningEnabled()){var P3=L(Ma,y.hoverData.downs);P3&&(y.hoverData.dragging=!0,y.hoverData.justStartedPan=!0,Bc[4]=0,y.data.bgActivePosistion=z5(ss),y.redrawHint("select",!0),y.redraw())}Ma&&Ma.pannable()&&Ma.active()&&Ma.unactivate()}}else{if(Ma&&Ma.pannable()&&Ma.active()&&Ma.unactivate(),(!Ma||!Ma.grabbed())&&ro!=Tc&&(Tc&&x(Tc,["mouseout","tapdragout"],Jt,{x:Hr[0],y:Hr[1]}),ro&&x(ro,["mouseover","tapdragover"],Jt,{x:Hr[0],y:Hr[1]}),y.hoverData.last=ro),Ma)if(Gf){if(ir.boxSelectionEnabled()&&bv)Ma&&Ma.grabbed()&&(gt(_l),Ma.emit("freeon"),_l.emit("free"),y.dragData.didDrag&&(Ma.emit("dragfreeon"),_l.emit("dragfree"))),d6();else if(Ma&&Ma.grabbed()&&y.nodeIsDraggable(Ma)){var $d=!y.dragData.didDrag;$d&&y.redrawHint("eles",!0),y.dragData.didDrag=!0,y.hoverData.draggingEles||at(_l,{inDragLayer:!0});var x1={x:0,y:0};if(st(io[0])&&st(io[1])&&(x1.x+=io[0],x1.y+=io[1],$d)){var zd=y.hoverData.dragDelta;zd&&st(zd[0])&&st(zd[1])&&(x1.x+=zd[0],x1.y+=zd[1])}y.hoverData.draggingEles=!0,_l.silentShift(x1).emit("position drag"),y.redrawHint("drag",!0),y.redraw()}}else Cm();Lr=!0}if(Bc[2]=Hr[0],Bc[3]=Hr[1],Lr)return Jt.stopPropagation&&Jt.stopPropagation(),Jt.preventDefault&&Jt.preventDefault(),!1}},!1);var Ut,fe,ge;y.registerBinding(window,"mouseup",function(Jt){var jn=y.hoverData.capture;if(jn){y.hoverData.capture=!1;var Lr=y.cy,ir=y.projectIntoViewport(Jt.clientX,Jt.clientY),sr=y.selection,Fa=y.findNearestElement(ir[0],ir[1],!0,!1),Hr=y.dragData.possibleDragElements,ss=y.hoverData.down,qo=T(Jt);if(y.data.bgActivePosistion&&(y.redrawHint("select",!0),y.redraw()),y.hoverData.tapholdCancelled=!0,y.data.bgActivePosistion=void 0,ss&&ss.unactivate(),y.hoverData.which===3){var Bc={originalEvent:Jt,type:"cxttapend",position:{x:ir[0],y:ir[1]}};if(ss?ss.emit(Bc):Lr.emit(Bc),!y.hoverData.cxtDragged){var ro={originalEvent:Jt,type:"cxttap",position:{x:ir[0],y:ir[1]}};ss?ss.emit(ro):Lr.emit(ro)}y.hoverData.cxtDragged=!1,y.hoverData.which=null}else if(y.hoverData.which===1){if(x(Fa,["mouseup","tapend","vmouseup"],Jt,{x:ir[0],y:ir[1]}),!y.dragData.didDrag&&!y.hoverData.dragged&&!y.hoverData.selecting&&!y.hoverData.isOverThresholdDrag&&(x(ss,["click","tap","vclick"],Jt,{x:ir[0],y:ir[1]}),fe=!1,Jt.timeStamp-ge<=Lr.multiClickDebounceTime()?(Ut&&clearTimeout(Ut),fe=!0,ge=null,x(ss,["dblclick","dbltap","vdblclick"],Jt,{x:ir[0],y:ir[1]})):(Ut=setTimeout(function(){fe||x(ss,["oneclick","onetap","voneclick"],Jt,{x:ir[0],y:ir[1]})},Lr.multiClickDebounceTime()),ge=Jt.timeStamp)),ss==null&&!y.dragData.didDrag&&!y.hoverData.selecting&&!y.hoverData.dragged&&!T(Jt)&&(Lr.$(g).unselect(["tapunselect"]),Hr.length>0&&y.redrawHint("eles",!0),y.dragData.possibleDragElements=Hr=Lr.collection()),Fa==ss&&!y.dragData.didDrag&&!y.hoverData.selecting&&Fa!=null&&Fa._private.selectable&&(y.hoverData.dragging||(Lr.selectionType()==="additive"||qo?Fa.selected()?Fa.unselect(["tapunselect"]):Fa.select(["tapselect"]):qo||(Lr.$(g).unmerge(Fa).unselect(["tapunselect"]),Fa.select(["tapselect"]))),y.redrawHint("eles",!0)),y.hoverData.selecting){var Tc=Lr.collection(y.getAllInBox(sr[0],sr[1],sr[2],sr[3]));y.redrawHint("select",!0),Tc.length>0&&y.redrawHint("eles",!0),Lr.emit({type:"boxend",originalEvent:Jt,position:{x:ir[0],y:ir[1]}});var Ma=function(Gf){return Gf.selectable()&&!Gf.selected()};Lr.selectionType()==="additive"||qo||Lr.$(g).unmerge(Tc).unselect(),Tc.emit("box").stdFilter(Ma).select().emit("boxselect"),y.redraw()}if(y.hoverData.dragging&&(y.hoverData.dragging=!1,y.redrawHint("select",!0),y.redrawHint("eles",!0),y.redraw()),!sr[4]){y.redrawHint("drag",!0),y.redrawHint("eles",!0);var io=ss&&ss.grabbed();gt(Hr),io&&(ss.emit("freeon"),Hr.emit("free"),y.dragData.didDrag&&(ss.emit("dragfreeon"),Hr.emit("dragfree")))}}sr[4]=0,y.hoverData.down=null,y.hoverData.cxtStarted=!1,y.hoverData.draggingEles=!1,y.hoverData.selecting=!1,y.hoverData.isOverThresholdDrag=!1,y.dragData.didDrag=!1,y.hoverData.dragged=!1,y.hoverData.dragDelta=[],y.hoverData.mdownPos=null,y.hoverData.mdownGPos=null}},!1);var se=function(Jt){if(!y.scrollingPage){var jn=y.cy,Lr=jn.zoom(),ir=jn.pan(),sr=y.projectIntoViewport(Jt.clientX,Jt.clientY),Fa=[sr[0]*Lr+ir.x,sr[1]*Lr+ir.y];if(y.hoverData.draggingEles||y.hoverData.dragging||y.hoverData.cxtStarted||Ht()){Jt.preventDefault();return}if(jn.panningEnabled()&&jn.userPanningEnabled()&&jn.zoomingEnabled()&&jn.userZoomingEnabled()){Jt.preventDefault(),y.data.wheelZooming=!0,clearTimeout(y.data.wheelTimeout),y.data.wheelTimeout=setTimeout(function(){y.data.wheelZooming=!1,y.redrawHint("eles",!0),y.redraw()},150);var Hr;Jt.deltaY!=null?Hr=Jt.deltaY/-250:Jt.wheelDeltaY!=null?Hr=Jt.wheelDeltaY/1e3:Hr=Jt.wheelDelta/1e3,Hr=Hr*y.wheelSensitivity;var ss=Jt.deltaMode===1;ss&&(Hr*=33);var qo=jn.zoom()*Math.pow(10,Hr);Jt.type==="gesturechange"&&(qo=y.gestureStartZoom*Jt.scale),jn.zoom({level:qo,renderedPosition:{x:Fa[0],y:Fa[1]}}),jn.emit(Jt.type==="gesturechange"?"pinchzoom":"scrollzoom")}}};y.registerBinding(y.container,"wheel",se,!0),y.registerBinding(window,"scroll",function(Jt){y.scrollingPage=!0,clearTimeout(y.scrollingPageTimeout),y.scrollingPageTimeout=setTimeout(function(){y.scrollingPage=!1},250)},!0),y.registerBinding(y.container,"gesturestart",function(Jt){y.gestureStartZoom=y.cy.zoom(),y.hasTouchStarted||Jt.preventDefault()},!0),y.registerBinding(y.container,"gesturechange",function(Cr){y.hasTouchStarted||se(Cr)},!0),y.registerBinding(y.container,"mouseout",function(Jt){var jn=y.projectIntoViewport(Jt.clientX,Jt.clientY);y.cy.emit({originalEvent:Jt,type:"mouseout",position:{x:jn[0],y:jn[1]}})},!1),y.registerBinding(y.container,"mouseover",function(Jt){var jn=y.projectIntoViewport(Jt.clientX,Jt.clientY);y.cy.emit({originalEvent:Jt,type:"mouseover",position:{x:jn[0],y:jn[1]}})},!1);var Ne,pe,gn,je,Ge,xn,Dn,Xn,Cn,Yn,rr,wr,ur,er=function(Jt,jn,Lr,ir){return Math.sqrt((Lr-Jt)*(Lr-Jt)+(ir-jn)*(ir-jn))},bn=function(Jt,jn,Lr,ir){return(Lr-Jt)*(Lr-Jt)+(ir-jn)*(ir-jn)},pr;y.registerBinding(y.container,"touchstart",pr=function(Jt){if(y.hasTouchStarted=!0,!!ie(Jt)){Et(),y.touchData.capture=!0,y.data.bgActivePosistion=void 0;var jn=y.cy,Lr=y.touchData.now,ir=y.touchData.earlier;if(Jt.touches[0]){var sr=y.projectIntoViewport(Jt.touches[0].clientX,Jt.touches[0].clientY);Lr[0]=sr[0],Lr[1]=sr[1]}if(Jt.touches[1]){var sr=y.projectIntoViewport(Jt.touches[1].clientX,Jt.touches[1].clientY);Lr[2]=sr[0],Lr[3]=sr[1]}if(Jt.touches[2]){var sr=y.projectIntoViewport(Jt.touches[2].clientX,Jt.touches[2].clientY);Lr[4]=sr[0],Lr[5]=sr[1]}if(Jt.touches[1]){y.touchData.singleTouchMoved=!0,gt(y.dragData.touchDragEles);var Fa=y.findContainerClientCoords();Cn=Fa[0],Yn=Fa[1],rr=Fa[2],wr=Fa[3],Ne=Jt.touches[0].clientX-Cn,pe=Jt.touches[0].clientY-Yn,gn=Jt.touches[1].clientX-Cn,je=Jt.touches[1].clientY-Yn,ur=0<=Ne&&Ne<=rr&&0<=gn&&gn<=rr&&0<=pe&&pe<=wr&&0<=je&&je<=wr;var Hr=jn.pan(),ss=jn.zoom();Ge=er(Ne,pe,gn,je),xn=bn(Ne,pe,gn,je),Dn=[(Ne+gn)/2,(pe+je)/2],Xn=[(Dn[0]-Hr.x)/ss,(Dn[1]-Hr.y)/ss];var qo=200,Bc=qo*qo;if(xn=1){for(var Tp=y.touchData.startPosition=[],Uf=0;Uf=y.touchTapThreshold2}if(jn&&y.touchData.cxt){Jt.preventDefault();var Tp=Jt.touches[0].clientX-Cn,Uf=Jt.touches[0].clientY-Yn,Eg=Jt.touches[1].clientX-Cn,ad=Jt.touches[1].clientY-Yn,bv=bn(Tp,Uf,Eg,ad),Cm=bv/xn,d6=150,N3=d6*d6,g6=1.5,TT=g6*g6;if(Cm>=TT||bv>=N3){y.touchData.cxt=!1,y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var P3={originalEvent:Jt,type:"cxttapend",position:{x:sr[0],y:sr[1]}};y.touchData.start?(y.touchData.start.unactivate().emit(P3),y.touchData.start=null):ir.emit(P3)}}if(jn&&y.touchData.cxt){var P3={originalEvent:Jt,type:"cxtdrag",position:{x:sr[0],y:sr[1]}};y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.touchData.start?y.touchData.start.emit(P3):ir.emit(P3),y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxtDragged=!0;var $d=y.findNearestElement(sr[0],sr[1],!0,!0);(!y.touchData.cxtOver||$d!==y.touchData.cxtOver)&&(y.touchData.cxtOver&&y.touchData.cxtOver.emit({originalEvent:Jt,type:"cxtdragout",position:{x:sr[0],y:sr[1]}}),y.touchData.cxtOver=$d,$d&&$d.emit({originalEvent:Jt,type:"cxtdragover",position:{x:sr[0],y:sr[1]}}))}else if(jn&&Jt.touches[2]&&ir.boxSelectionEnabled())Jt.preventDefault(),y.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,y.touchData.selecting||ir.emit({originalEvent:Jt,type:"boxstart",position:{x:sr[0],y:sr[1]}}),y.touchData.selecting=!0,y.touchData.didSelect=!0,Lr[4]=1,!Lr||Lr.length===0||Lr[0]===void 0?(Lr[0]=(sr[0]+sr[2]+sr[4])/3,Lr[1]=(sr[1]+sr[3]+sr[5])/3,Lr[2]=(sr[0]+sr[2]+sr[4])/3+1,Lr[3]=(sr[1]+sr[3]+sr[5])/3+1):(Lr[2]=(sr[0]+sr[2]+sr[4])/3,Lr[3]=(sr[1]+sr[3]+sr[5])/3),y.redrawHint("select",!0),y.redraw();else if(jn&&Jt.touches[1]&&!y.touchData.didSelect&&ir.zoomingEnabled()&&ir.panningEnabled()&&ir.userZoomingEnabled()&&ir.userPanningEnabled()){Jt.preventDefault(),y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var x1=y.dragData.touchDragEles;if(x1){y.redrawHint("drag",!0);for(var zd=0;zd0&&!y.hoverData.draggingEles&&!y.swipePanning&&y.data.bgActivePosistion!=null&&(y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.redraw())}},!1);var ri;y.registerBinding(window,"touchcancel",ri=function(Jt){var jn=y.touchData.start;y.touchData.capture=!1,jn&&jn.unactivate()});var _i,ia,La,Di;if(y.registerBinding(window,"touchend",_i=function(Jt){var jn=y.touchData.start,Lr=y.touchData.capture;if(Lr)Jt.touches.length===0&&(y.touchData.capture=!1),Jt.preventDefault();else return;var ir=y.selection;y.swipePanning=!1,y.hoverData.draggingEles=!1;var sr=y.cy,Fa=sr.zoom(),Hr=y.touchData.now,ss=y.touchData.earlier;if(Jt.touches[0]){var qo=y.projectIntoViewport(Jt.touches[0].clientX,Jt.touches[0].clientY);Hr[0]=qo[0],Hr[1]=qo[1]}if(Jt.touches[1]){var qo=y.projectIntoViewport(Jt.touches[1].clientX,Jt.touches[1].clientY);Hr[2]=qo[0],Hr[3]=qo[1]}if(Jt.touches[2]){var qo=y.projectIntoViewport(Jt.touches[2].clientX,Jt.touches[2].clientY);Hr[4]=qo[0],Hr[5]=qo[1]}jn&&jn.unactivate();var Bc;if(y.touchData.cxt){if(Bc={originalEvent:Jt,type:"cxttapend",position:{x:Hr[0],y:Hr[1]}},jn?jn.emit(Bc):sr.emit(Bc),!y.touchData.cxtDragged){var ro={originalEvent:Jt,type:"cxttap",position:{x:Hr[0],y:Hr[1]}};jn?jn.emit(ro):sr.emit(ro)}y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxt=!1,y.touchData.start=null,y.redraw();return}if(!Jt.touches[2]&&sr.boxSelectionEnabled()&&y.touchData.selecting){y.touchData.selecting=!1;var Tc=sr.collection(y.getAllInBox(ir[0],ir[1],ir[2],ir[3]));ir[0]=void 0,ir[1]=void 0,ir[2]=void 0,ir[3]=void 0,ir[4]=0,y.redrawHint("select",!0),sr.emit({type:"boxend",originalEvent:Jt,position:{x:Hr[0],y:Hr[1]}});var Ma=function(N3){return N3.selectable()&&!N3.selected()};Tc.emit("box").stdFilter(Ma).select().emit("boxselect"),Tc.nonempty()&&y.redrawHint("eles",!0),y.redraw()}if(jn!=null&&jn.unactivate(),Jt.touches[2])y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);else if(!Jt.touches[1]){if(!Jt.touches[0]){if(!Jt.touches[0]){y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var io=y.dragData.touchDragEles;if(jn!=null){var _l=jn._private.grabbed;gt(io),y.redrawHint("drag",!0),y.redrawHint("eles",!0),_l&&(jn.emit("freeon"),io.emit("free"),y.dragData.didDrag&&(jn.emit("dragfreeon"),io.emit("dragfree"))),x(jn,["touchend","tapend","vmouseup","tapdragout"],Jt,{x:Hr[0],y:Hr[1]}),jn.unactivate(),y.touchData.start=null}else{var Gf=y.findNearestElement(Hr[0],Hr[1],!0,!0);x(Gf,["touchend","tapend","vmouseup","tapdragout"],Jt,{x:Hr[0],y:Hr[1]})}var Ep=y.touchData.startPosition[0]-Hr[0],Tp=Ep*Ep,Uf=y.touchData.startPosition[1]-Hr[1],Eg=Uf*Uf,ad=Tp+Eg,bv=ad*Fa*Fa;y.touchData.singleTouchMoved||(jn||sr.$(":selected").unselect(["tapunselect"]),x(jn,["tap","vclick"],Jt,{x:Hr[0],y:Hr[1]}),ia=!1,Jt.timeStamp-Di<=sr.multiClickDebounceTime()?(La&&clearTimeout(La),ia=!0,Di=null,x(jn,["dbltap","vdblclick"],Jt,{x:Hr[0],y:Hr[1]})):(La=setTimeout(function(){ia||x(jn,["onetap","voneclick"],Jt,{x:Hr[0],y:Hr[1]})},sr.multiClickDebounceTime()),Di=Jt.timeStamp)),jn!=null&&!y.dragData.didDrag&&jn._private.selectable&&bv"u"){var wi=[],_s=function(Jt){return{clientX:Jt.clientX,clientY:Jt.clientY,force:1,identifier:Jt.pointerId,pageX:Jt.pageX,pageY:Jt.pageY,radiusX:Jt.width/2,radiusY:Jt.height/2,screenX:Jt.screenX,screenY:Jt.screenY,target:Jt.target}},Zi=function(Jt){return{event:Jt,touch:_s(Jt)}},Ni=function(Jt){wi.push(Zi(Jt))},ns=function(Jt){for(var jn=0;jn0)return Cn[0]}return null},at=Object.keys(U),lt=0;lt0?et:eF(I,O,g,x,T,L,$)},checkPoint:function(g,x,T,L,I,O,$){var z=mk(L,I),S=2*z;if(lv(g,x,this.points,O,$,L,I-S,[0,-1],T)||lv(g,x,this.points,O,$,L-S,I,[0,-1],T))return!0;var V=L/2+2*T,U=I/2+2*T,et=[O-V,$-U,O-V,$,O+V,$,O+V,$-U];return!!(jd(g,x,et)||C3(g,x,S,S,O+L/2-z,$+I/2-z,T)||C3(g,x,S,S,O-L/2+z,$+I/2-z,T))}}},dv.registerNodeShapes=function(){var y=this.nodeShapes={},g=this;this.generateEllipse(),this.generatePolygon("triangle",rd(3,0)),this.generateRoundPolygon("round-triangle",rd(3,0)),this.generatePolygon("rectangle",rd(4,0)),y.square=y.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var x=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",x),this.generateRoundPolygon("round-diamond",x)}this.generatePolygon("pentagon",rd(5,0)),this.generateRoundPolygon("round-pentagon",rd(5,0)),this.generatePolygon("hexagon",rd(6,0)),this.generateRoundPolygon("round-hexagon",rd(6,0)),this.generatePolygon("heptagon",rd(7,0)),this.generateRoundPolygon("round-heptagon",rd(7,0)),this.generatePolygon("octagon",rd(8,0)),this.generateRoundPolygon("round-octagon",rd(8,0));var T=new Array(20);{var L=_L(5,0),I=_L(5,Math.PI/5),O=.5*(3-Math.sqrt(5));O*=1.57;for(var $=0;$=g.deqFastCost*zt)break}else if(S){if(Dt>=g.deqCost*at||Dt>=g.deqAvgCost*et)break}else if(It>=g.deqNoDrawCost*ZL)break;var te=g.deq(T,Lt,gt);if(te.length>0)for(var Xt=0;Xt0&&(g.onDeqd(T,lt),!S&&g.shouldRedraw(T,lt,Lt,gt)&&I())},$=g.priority||R5;L.beforeRender(O,$(T))}}}},itt=function(){function y(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:uv;p(this,y),this.idsByKey=new Hb,this.keyForId=new Hb,this.cachesByLvl=new Hb,this.lvls=[],this.getKey=g,this.doesEleInvalidateKey=x}return m(y,[{key:"getIdsFor",value:function(x){x==null&&ou("Can not get id list for null key");var T=this.idsByKey,L=this.idsByKey.get(x);return L||(L=new $5,T.set(x,L)),L}},{key:"addIdForKey",value:function(x,T){x!=null&&this.getIdsFor(x).add(T)}},{key:"deleteIdForKey",value:function(x,T){x!=null&&this.getIdsFor(x).delete(T)}},{key:"getNumberOfIdsForKey",value:function(x){return x==null?0:this.getIdsFor(x).size}},{key:"updateKeyMappingFor",value:function(x){var T=x.id(),L=this.keyForId.get(T),I=this.getKey(x);this.deleteIdForKey(L,T),this.addIdForKey(I,T),this.keyForId.set(T,I)}},{key:"deleteKeyMappingFor",value:function(x){var T=x.id(),L=this.keyForId.get(T);this.deleteIdForKey(L,T),this.keyForId.delete(T)}},{key:"keyHasChangedFor",value:function(x){var T=x.id(),L=this.keyForId.get(T),I=this.getKey(x);return L!==I}},{key:"isInvalid",value:function(x){return this.keyHasChangedFor(x)||this.doesEleInvalidateKey(x)}},{key:"getCachesAt",value:function(x){var T=this.cachesByLvl,L=this.lvls,I=T.get(x);return I||(I=new Hb,T.set(x,I),L.push(x)),I}},{key:"getCache",value:function(x,T){return this.getCachesAt(T).get(x)}},{key:"get",value:function(x,T){var L=this.getKey(x),I=this.getCache(L,T);return I!=null&&this.updateKeyMappingFor(x),I}},{key:"getForCachedKey",value:function(x,T){var L=this.keyForId.get(x.id()),I=this.getCache(L,T);return I}},{key:"hasCache",value:function(x,T){return this.getCachesAt(T).has(x)}},{key:"has",value:function(x,T){var L=this.getKey(x);return this.hasCache(L,T)}},{key:"setCache",value:function(x,T,L){L.key=x,this.getCachesAt(T).set(x,L)}},{key:"set",value:function(x,T,L){var I=this.getKey(x);this.setCache(I,T,L),this.updateKeyMappingFor(x)}},{key:"deleteCache",value:function(x,T){this.getCachesAt(T).delete(x)}},{key:"delete",value:function(x,T){var L=this.getKey(x);this.deleteCache(L,T)}},{key:"invalidateKey",value:function(x){var T=this;this.lvls.forEach(function(L){return T.deleteCache(x,L)})}},{key:"invalidate",value:function(x){var T=x.id(),L=this.keyForId.get(T);this.deleteKeyMappingFor(x);var I=this.doesEleInvalidateKey(x);return I&&this.invalidateKey(L),I||this.getNumberOfIdsForKey(L)===0}}]),y}(),wT=25,mT=50,o6=-4,JL=3,tM=7.99,stt=8,att=1024,ott=1024,UB=1024,ctt=.2,utt=.8,ltt=10,htt=.15,ftt=.1,dtt=.9,gtt=.9,ptt=100,btt=1,c6={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},vtt=zf({getKey:null,doesEleInvalidateKey:uv,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:cv,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),jk=function(g,x){var T=this;T.renderer=g,T.onDequeues=[];var L=vtt(x);fn(T,L),T.lookup=new itt(L.getKey,L.doesEleInvalidateKey),T.setupDequeueing()},Ch=jk.prototype;Ch.reasons=c6,Ch.getTextureQueue=function(y){var g=this;return g.eleImgCaches=g.eleImgCaches||{},g.eleImgCaches[y]=g.eleImgCaches[y]||[]},Ch.getRetiredTextureQueue=function(y){var g=this,x=g.eleImgCaches.retired=g.eleImgCaches.retired||{},T=x[y]=x[y]||[];return T},Ch.getElementQueue=function(){var y=this,g=y.eleCacheQueue=y.eleCacheQueue||new pk(function(x,T){return T.reqs-x.reqs});return g},Ch.getElementKeyToQueue=function(){var y=this,g=y.eleKeyToCacheQueue=y.eleKeyToCacheQueue||{};return g},Ch.getElement=function(y,g,x,T,L){var I=this,O=this.renderer,$=O.cy.zoom(),z=this.lookup;if(!g||g.w===0||g.h===0||isNaN(g.w)||isNaN(g.h)||!y.visible()||y.removed()||!I.allowEdgeTxrCaching&&y.isEdge()||!I.allowParentTxrCaching&&y.isParent())return null;if(T==null&&(T=Math.ceil(xL($*x))),T=tM||T>JL)return null;var S=Math.pow(2,T),V=g.h*S,U=g.w*S,et=O.eleTextBiggerThanMin(y,S);if(!this.isVisible(y,et))return null;var at=z.get(y,T);if(at&&at.invalidated&&(at.invalidated=!1,at.texture.invalidatedWidth-=at.width),at)return at;var lt;if(V<=wT?lt=wT:V<=mT?lt=mT:lt=Math.ceil(V/mT)*mT,V>UB||U>ott)return null;var gt=I.getTextureQueue(lt),Lt=gt[gt.length-2],Et=function(){return I.recycleTexture(lt,U)||I.addTexture(lt,U)};Lt||(Lt=gt[gt.length-1]),Lt||(Lt=Et()),Lt.width-Lt.usedWidthT;ge--)Ut=I.getElement(y,g,x,ge,c6.downscale);fe()}else return I.queueElement(y,Xt.level-1),Xt;else{var se;if(!It&&!zt&&!te)for(var Ne=T-1;Ne>=o6;Ne--){var pe=z.get(y,Ne);if(pe){se=pe;break}}if(Dt(se))return I.queueElement(y,T),se;Lt.context.translate(Lt.usedWidth,0),Lt.context.scale(S,S),this.drawElement(Lt.context,y,g,et,!1),Lt.context.scale(1/S,1/S),Lt.context.translate(-Lt.usedWidth,0)}return at={x:Lt.usedWidth,texture:Lt,level:T,scale:S,width:U,height:V,scaledLabelShown:et},Lt.usedWidth+=Math.ceil(U+stt),Lt.eleCaches.push(at),z.set(y,T,at),I.checkTextureFullness(Lt),at},Ch.invalidateElements=function(y){for(var g=0;g=ctt*y.width&&this.retireTexture(y)},Ch.checkTextureFullness=function(y){var g=this,x=g.getTextureQueue(y.height);y.usedWidth/y.width>utt&&y.fullnessChecks>=ltt?pm(x,y):y.fullnessChecks++},Ch.retireTexture=function(y){var g=this,x=y.height,T=g.getTextureQueue(x),L=this.lookup;pm(T,y),y.retired=!0;for(var I=y.eleCaches,O=0;O=g)return O.retired=!1,O.usedWidth=0,O.invalidatedWidth=0,O.fullnessChecks=0,mL(O.eleCaches),O.context.setTransform(1,0,0,1,0,0),O.context.clearRect(0,0,O.width,O.height),pm(L,O),T.push(O),O}},Ch.queueElement=function(y,g){var x=this,T=x.getElementQueue(),L=x.getElementKeyToQueue(),I=this.getKey(y),O=L[I];if(O)O.level=Math.max(O.level,g),O.eles.merge(y),O.reqs++,T.updateItem(O);else{var $={eles:y.spawn().merge(y),level:g,reqs:1,key:I};T.push($),L[I]=$}},Ch.dequeue=function(y){for(var g=this,x=g.getElementQueue(),T=g.getElementKeyToQueue(),L=[],I=g.lookup,O=0;O0;O++){var $=x.pop(),z=$.key,S=$.eles[0],V=I.hasCache(S,$.level);if(T[z]=null,V)continue;L.push($);var U=g.getBoundingBox(S);g.getElement(S,U,y,$.level,c6.dequeue)}return L},Ch.removeFromQueue=function(y){var g=this,x=g.getElementQueue(),T=g.getElementKeyToQueue(),L=this.getKey(y),I=T[L];I!=null&&(I.eles.length===1?(I.reqs=E3,x.updateItem(I),x.pop(),T[L]=null):I.eles.unmerge(y))},Ch.onDequeue=function(y){this.onDequeues.push(y)},Ch.offDequeue=function(y){pm(this.onDequeues,y)},Ch.setupDequeueing=vT.setupDequeueing({deqRedrawThreshold:ptt,deqCost:htt,deqAvgCost:ftt,deqNoDrawCost:dtt,deqFastCost:gtt,deq:function(g,x,T){return g.dequeue(x,T)},onDeqd:function(g,x){for(var T=0;T=yT||x>$k)return null}T.validateLayersElesOrdering(x,y);var z=T.layersByLevel,S=Math.pow(2,x),V=z[x]=z[x]||[],U,et=T.levelIsComplete(x,y),at,lt=function(){var fe=function(gn){if(T.validateLayersElesOrdering(gn,y),T.levelIsComplete(gn,y))return at=z[gn],!0},ge=function(gn){if(!at)for(var je=x+gn;u6<=je&&je<=$k&&!fe(je);je+=gn);};ge(1),ge(-1);for(var se=V.length-1;se>=0;se--){var Ne=V[se];Ne.invalid&&pm(V,Ne)}};if(!et)lt();else return V;var gt=function(){if(!U){U=Rd();for(var fe=0;fenpt)return null;var Ne=T.makeLayer(U,x);if(ge!=null){var pe=V.indexOf(ge)+1;V.splice(pe,0,Ne)}else(fe.insert===void 0||fe.insert)&&V.unshift(Ne);return Ne};if(T.skipping&&!$)return null;for(var Et=null,Dt=y.length/wtt,It=!$,zt=0;zt=Dt||!tF(Et.bb,te.boundingBox()))&&(Et=Lt({insert:!0,after:Et}),!Et))return null;at||It?T.queueLayer(Et,te):T.drawEleInLayer(Et,te,x,g),Et.eles.push(te),Ht[x]=Et}return at||(It?null:V)},w1.getEleLevelForLayerLevel=function(y,g){return y},w1.drawEleInLayer=function(y,g,x,T){var L=this,I=this.renderer,O=y.context,$=g.boundingBox();$.w===0||$.h===0||!g.visible()||(x=L.getEleLevelForLayerLevel(x,T),I.setImgSmoothing(O,!1),I.drawCachedElement(O,g,null,null,x,rpt),I.setImgSmoothing(O,!0))},w1.levelIsComplete=function(y,g){var x=this,T=x.layersByLevel[y];if(!T||T.length===0)return!1;for(var L=0,I=0;I0||O.invalid)return!1;L+=O.eles.length}return L===g.length},w1.validateLayersElesOrdering=function(y,g){var x=this.layersByLevel[y];if(x)for(var T=0;T0){g=!0;break}}return g},w1.invalidateElements=function(y){var g=this;y.length!==0&&(g.lastInvalidationTime=me(),!(y.length===0||!g.haveLayers())&&g.updateElementsInLayers(y,function(T,L,I){g.invalidateLayer(T)}))},w1.invalidateLayer=function(y){if(this.lastInvalidationTime=me(),!y.invalid){var g=y.level,x=y.eles,T=this.layersByLevel[g];pm(T,y),y.elesQueue=[],y.invalid=!0,y.replacement&&(y.replacement.invalid=!0);for(var L=0;L3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,O=this,$=g._private.rscratch;if(!(I&&!g.visible())&&!($.badLine||$.allpts==null||isNaN($.allpts[0]))){var z;x&&(z=x,y.translate(-z.x1,-z.y1));var S=I?g.pstyle("opacity").value:1,V=I?g.pstyle("line-opacity").value:1,U=g.pstyle("curve-style").value,et=g.pstyle("line-style").value,at=g.pstyle("width").pfValue,lt=g.pstyle("line-cap").value,gt=S*V,Lt=S*V,Et=function(){var se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:gt;U==="straight-triangle"?(O.eleStrokeStyle(y,g,se),O.drawEdgeTrianglePath(g,y,$.allpts)):(y.lineWidth=at,y.lineCap=lt,O.eleStrokeStyle(y,g,se),O.drawEdgePath(g,y,$.allpts,et),y.lineCap="butt")},Dt=function(){L&&O.drawEdgeOverlay(y,g)},It=function(){L&&O.drawEdgeUnderlay(y,g)},zt=function(){var se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Lt;O.drawArrowheads(y,g,se)},te=function(){O.drawElementText(y,g,null,T)};y.lineJoin="round";var Xt=g.pstyle("ghost").value==="yes";if(Xt){var Ht=g.pstyle("ghost-offset-x").pfValue,ie=g.pstyle("ghost-offset-y").pfValue,Ut=g.pstyle("ghost-opacity").value,fe=gt*Ut;y.translate(Ht,ie),Et(fe),zt(fe),y.translate(-Ht,-ie)}It(),Et(),zt(),Dt(),te(),x&&y.translate(z.x1,z.y1)}};var Ttt=function(g){if(!["overlay","underlay"].includes(g))throw new Error("Invalid state");return function(x,T){if(T.visible()){var L=T.pstyle("".concat(g,"-opacity")).value;if(L!==0){var I=this,O=I.usePaths(),$=T._private.rscratch,z=T.pstyle("".concat(g,"-padding")).pfValue,S=2*z,V=T.pstyle("".concat(g,"-color")).value;x.lineWidth=S,$.edgeType==="self"&&!O?x.lineCap="butt":x.lineCap="round",I.colorStrokeStyle(x,V[0],V[1],V[2],L),I.drawEdgePath(T,x,$.allpts,"solid")}}}};pv.drawEdgeOverlay=Ttt("overlay"),pv.drawEdgeUnderlay=Ttt("underlay"),pv.drawEdgePath=function(y,g,x,T){var L=y._private.rscratch,I=g,O,$=!1,z=this.usePaths(),S=y.pstyle("line-dash-pattern").pfValue,V=y.pstyle("line-dash-offset").pfValue;if(z){var U=x.join("$"),et=L.pathCacheKey&&L.pathCacheKey===U;et?(O=g=L.pathCache,$=!0):(O=g=new Path2D,L.pathCacheKey=U,L.pathCache=O)}if(I.setLineDash)switch(T){case"dotted":I.setLineDash([1,1]);break;case"dashed":I.setLineDash(S),I.lineDashOffset=V;break;case"solid":I.setLineDash([]);break}if(!$&&!L.badLine)switch(g.beginPath&&g.beginPath(),g.moveTo(x[0],x[1]),L.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var at=2;at+35&&arguments[5]!==void 0?arguments[5]:!0,O=this;if(T==null){if(I&&!O.eleTextBiggerThanMin(g))return}else if(T===!1)return;if(g.isNode()){var $=g.pstyle("label");if(!$||!$.value)return;var z=O.getLabelJustification(g);y.textAlign=z,y.textBaseline="bottom"}else{var S=g.element()._private.rscratch.badLine,V=g.pstyle("label"),U=g.pstyle("source-label"),et=g.pstyle("target-label");if(S||(!V||!V.value)&&(!U||!U.value)&&(!et||!et.value))return;y.textAlign="center",y.textBaseline="bottom"}var at=!x,lt;x&&(lt=x,y.translate(-lt.x1,-lt.y1)),L==null?(O.drawText(y,g,null,at,I),g.isEdge()&&(O.drawText(y,g,"source",at,I),O.drawText(y,g,"target",at,I))):O.drawText(y,g,L,at,I),x&&y.translate(lt.x1,lt.y1)},l6.getFontCache=function(y){var g;this.fontCaches=this.fontCaches||[];for(var x=0;x2&&arguments[2]!==void 0?arguments[2]:!0,T=g.pstyle("font-style").strValue,L=g.pstyle("font-size").pfValue+"px",I=g.pstyle("font-family").strValue,O=g.pstyle("font-weight").strValue,$=x?g.effectiveOpacity()*g.pstyle("text-opacity").value:1,z=g.pstyle("text-outline-opacity").value*$,S=g.pstyle("color").value,V=g.pstyle("text-outline-color").value;y.font=T+" "+O+" "+L+" "+I,y.lineJoin="round",this.colorFillStyle(y,S[0],S[1],S[2],$),this.colorStrokeStyle(y,V[0],V[1],V[2],z)};function upt(y,g,x,T,L){var I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5;y.beginPath(),y.moveTo(g+I,x),y.lineTo(g+T-I,x),y.quadraticCurveTo(g+T,x,g+T,x+I),y.lineTo(g+T,x+L-I),y.quadraticCurveTo(g+T,x+L,g+T-I,x+L),y.lineTo(g+I,x+L),y.quadraticCurveTo(g,x+L,g,x+L-I),y.lineTo(g,x+I),y.quadraticCurveTo(g,x,g+I,x),y.closePath(),y.fill()}l6.getTextAngle=function(y,g){var x,T=y._private,L=T.rscratch,I=g?g+"-":"",O=y.pstyle(I+"text-rotation"),$=wp(L,"labelAngle",g);return O.strValue==="autorotate"?x=y.isEdge()?$:0:O.strValue==="none"?x=0:x=O.pfValue,x},l6.drawText=function(y,g,x){var T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=g._private,O=I.rscratch,$=L?g.effectiveOpacity():1;if(!(L&&($===0||g.pstyle("text-opacity").value===0))){x==="main"&&(x=null);var z=wp(O,"labelX",x),S=wp(O,"labelY",x),V,U,et=this.getLabelText(g,x);if(et!=null&&et!==""&&!isNaN(z)&&!isNaN(S)){this.setupTextStyle(y,g,L);var at=x?x+"-":"",lt=wp(O,"labelWidth",x),gt=wp(O,"labelHeight",x),Lt=g.pstyle(at+"text-margin-x").pfValue,Et=g.pstyle(at+"text-margin-y").pfValue,Dt=g.isEdge(),It=g.pstyle("text-halign").value,zt=g.pstyle("text-valign").value;Dt&&(It="center",zt="center"),z+=Lt,S+=Et;var te;switch(T?te=this.getTextAngle(g,x):te=0,te!==0&&(V=z,U=S,y.translate(V,U),y.rotate(te),z=0,S=0),zt){case"top":break;case"center":S+=gt/2;break;case"bottom":S+=gt;break}var Xt=g.pstyle("text-background-opacity").value,Ht=g.pstyle("text-border-opacity").value,ie=g.pstyle("text-border-width").pfValue,Ut=g.pstyle("text-background-padding").pfValue;if(Xt>0||ie>0&&Ht>0){var fe=z-Ut;switch(It){case"left":fe-=lt;break;case"center":fe-=lt/2;break}var ge=S-gt-Ut,se=lt+2*Ut,Ne=gt+2*Ut;if(Xt>0){var pe=y.fillStyle,gn=g.pstyle("text-background-color").value;y.fillStyle="rgba("+gn[0]+","+gn[1]+","+gn[2]+","+Xt*$+")";var je=g.pstyle("text-background-shape").strValue;je.indexOf("round")===0?upt(y,fe,ge,se,Ne,2):y.fillRect(fe,ge,se,Ne),y.fillStyle=pe}if(ie>0&&Ht>0){var Ge=y.strokeStyle,xn=y.lineWidth,Dn=g.pstyle("text-border-color").value,Xn=g.pstyle("text-border-style").value;if(y.strokeStyle="rgba("+Dn[0]+","+Dn[1]+","+Dn[2]+","+Ht*$+")",y.lineWidth=ie,y.setLineDash)switch(Xn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"double":y.lineWidth=ie/4,y.setLineDash([]);break;case"solid":y.setLineDash([]);break}if(y.strokeRect(fe,ge,se,Ne),Xn==="double"){var Cn=ie/2;y.strokeRect(fe+Cn,ge+Cn,se-Cn*2,Ne-Cn*2)}y.setLineDash&&y.setLineDash([]),y.lineWidth=xn,y.strokeStyle=Ge}}var Yn=2*g.pstyle("text-outline-width").pfValue;if(Yn>0&&(y.lineWidth=Yn),g.pstyle("text-wrap").value==="wrap"){var rr=wp(O,"labelWrapCachedLines",x),wr=wp(O,"labelLineHeight",x),ur=lt/2,er=this.getLabelJustification(g);switch(er==="auto"||(It==="left"?er==="left"?z+=-lt:er==="center"&&(z+=-ur):It==="center"?er==="left"?z+=-ur:er==="right"&&(z+=ur):It==="right"&&(er==="center"?z+=ur:er==="right"&&(z+=lt))),zt){case"top":S-=(rr.length-1)*wr;break;case"center":case"bottom":S-=(rr.length-1)*wr;break}for(var bn=0;bn0&&y.strokeText(rr[bn],z,S),y.fillText(rr[bn],z,S),S+=wr}else Yn>0&&y.strokeText(et,z,S),y.fillText(et,z,S);te!==0&&(y.rotate(-te),y.translate(-V,-U))}}};var qk={};qk.drawNode=function(y,g,x){var T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,O=this,$,z,S=g._private,V=S.rscratch,U=g.position();if(!(!st(U.x)||!st(U.y))&&!(I&&!g.visible())){var et=I?g.effectiveOpacity():1,at=O.usePaths(),lt,gt=!1,Lt=g.padding();$=g.width()+2*Lt,z=g.height()+2*Lt;var Et;x&&(Et=x,y.translate(-Et.x1,-Et.y1));for(var Dt=g.pstyle("background-image"),It=Dt.value,zt=new Array(It.length),te=new Array(It.length),Xt=0,Ht=0;Ht0&&arguments[0]!==void 0?arguments[0]:Ne;O.eleFillStyle(y,g,Ni)},xn=function(){var Ni=arguments.length>0&&arguments[0]!==void 0?arguments[0]:je;O.colorStrokeStyle(y,pe[0],pe[1],pe[2],Ni)},Dn=g.pstyle("shape").strValue,Xn=g.pstyle("shape-polygon-points").pfValue;if(at){y.translate(U.x,U.y);var Cn=O.nodePathCache=O.nodePathCache||[],Yn=L9(Dn==="polygon"?Dn+","+Xn.join(","):Dn,""+z,""+$),rr=Cn[Yn];rr!=null?(lt=rr,gt=!0,V.pathCache=lt):(lt=new Path2D,Cn[Yn]=V.pathCache=lt)}var wr=function(){if(!gt){var Ni=U;at&&(Ni={x:0,y:0}),O.nodeShapes[O.getNodeShape(g)].draw(lt||y,Ni.x,Ni.y,$,z)}at?y.fill(lt):y.fill()},ur=function(){for(var Ni=arguments.length>0&&arguments[0]!==void 0?arguments[0]:et,ns=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Ua=S.backgrounding,sa=0,Xs=0;Xs0&&arguments[0]!==void 0?arguments[0]:!1,ns=arguments.length>1&&arguments[1]!==void 0?arguments[1]:et;O.hasPie(g)&&(O.drawPie(y,g,ns),Ni&&(at||O.nodeShapes[O.getNodeShape(g)].draw(y,U.x,U.y,$,z)))},bn=function(){var Ni=arguments.length>0&&arguments[0]!==void 0?arguments[0]:et,ns=(ge>0?ge:-ge)*Ni,Ua=ge>0?0:255;ge!==0&&(O.colorFillStyle(y,Ua,Ua,Ua,ns),at?y.fill(lt):y.fill())},pr=function(){if(se>0){if(y.lineWidth=se,y.lineCap="butt",y.setLineDash)switch(gn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"solid":case"double":y.setLineDash([]);break}if(at?y.stroke(lt):y.stroke(),gn==="double"){y.lineWidth=se/3;var Ni=y.globalCompositeOperation;y.globalCompositeOperation="destination-out",at?y.stroke(lt):y.stroke(),y.globalCompositeOperation=Ni}y.setLineDash&&y.setLineDash([])}},fr=function(){L&&O.drawNodeOverlay(y,g,U,$,z)},ri=function(){L&&O.drawNodeUnderlay(y,g,U,$,z)},_i=function(){O.drawElementText(y,g,null,T)},ia=g.pstyle("ghost").value==="yes";if(ia){var La=g.pstyle("ghost-offset-x").pfValue,Di=g.pstyle("ghost-offset-y").pfValue,wi=g.pstyle("ghost-opacity").value,_s=wi*et;y.translate(La,Di),Ge(wi*Ne),wr(),ur(_s,!0),xn(wi*je),pr(),er(ge!==0||se!==0),ur(_s,!1),bn(_s),y.translate(-La,-Di)}at&&y.translate(-U.x,-U.y),ri(),at&&y.translate(U.x,U.y),Ge(),wr(),ur(et,!0),xn(),pr(),er(ge!==0||se!==0),ur(et,!1),bn(),at&&y.translate(-U.x,-U.y),_i(),fr(),x&&y.translate(Et.x1,Et.y1)}};var _tt=function(g){if(!["overlay","underlay"].includes(g))throw new Error("Invalid state");return function(x,T,L,I,O){var $=this;if(T.visible()){var z=T.pstyle("".concat(g,"-padding")).pfValue,S=T.pstyle("".concat(g,"-opacity")).value,V=T.pstyle("".concat(g,"-color")).value,U=T.pstyle("".concat(g,"-shape")).value;if(S>0){if(L=L||T.position(),I==null||O==null){var et=T.padding();I=T.width()+2*et,O=T.height()+2*et}$.colorFillStyle(x,V[0],V[1],V[2],S),$.nodeShapes[U].draw(x,L.x,L.y,I+z*2,O+z*2),x.fill()}}}};qk.drawNodeOverlay=_tt("overlay"),qk.drawNodeUnderlay=_tt("underlay"),qk.hasPie=function(y){return y=y[0],y._private.hasPie},qk.drawPie=function(y,g,x,T){g=g[0],T=T||g.position();var L=g.cy().style(),I=g.pstyle("pie-size"),O=T.x,$=T.y,z=g.width(),S=g.height(),V=Math.min(z,S)/2,U=0,et=this.usePaths();et&&(O=0,$=0),I.units==="%"?V=V*I.pfValue:I.pfValue!==void 0&&(V=I.pfValue/2);for(var at=1;at<=L.pieBackgroundN;at++){var lt=g.pstyle("pie-"+at+"-background-size").value,gt=g.pstyle("pie-"+at+"-background-color").value,Lt=g.pstyle("pie-"+at+"-background-opacity").value*x,Et=lt/100;Et+U>1&&(Et=1-U);var Dt=1.5*Math.PI+2*Math.PI*U,It=2*Math.PI*Et,zt=Dt+It;lt===0||U>=1||U+Et>1||(y.beginPath(),y.moveTo(O,$),y.arc(O,$,V,Dt,zt),y.closePath(),this.colorFillStyle(y,gt[0],gt[1],gt[2],Lt),y.fill(),U+=Et)}};var xg={},lpt=100;xg.getPixelRatio=function(){var y=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var g=y.backingStorePixelRatio||y.webkitBackingStorePixelRatio||y.mozBackingStorePixelRatio||y.msBackingStorePixelRatio||y.oBackingStorePixelRatio||y.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/g},xg.paintCache=function(y){for(var g=this.paintCaches=this.paintCaches||[],x=!0,T,L=0;LO.minMbLowQualFrames&&(O.motionBlurPxRatio=O.mbPxRBlurry)),O.clearingMotionBlur&&(O.motionBlurPxRatio=1),O.textureDrawLastFrame&&!U&&(V[O.NODE]=!0,V[O.SELECT_BOX]=!0);var Dt=z.style(),It=z.zoom(),zt=L!==void 0?L:It,te=z.pan(),Xt={x:te.x,y:te.y},Ht={zoom:It,pan:{x:te.x,y:te.y}},ie=O.prevViewport,Ut=ie===void 0||Ht.zoom!==ie.zoom||Ht.pan.x!==ie.pan.x||Ht.pan.y!==ie.pan.y;!Ut&&!(gt&&!lt)&&(O.motionBlurPxRatio=1),I&&(Xt=I),zt*=$,Xt.x*=$,Xt.y*=$;var fe=O.getCachedZSortedEles();function ge(Di,wi,_s,Zi,Ni){var ns=Di.globalCompositeOperation;Di.globalCompositeOperation="destination-out",O.colorFillStyle(Di,255,255,255,O.motionBlurTransparency),Di.fillRect(wi,_s,Zi,Ni),Di.globalCompositeOperation=ns}function se(Di,wi){var _s,Zi,Ni,ns;!O.clearingMotionBlur&&(Di===S.bufferContexts[O.MOTIONBLUR_BUFFER_NODE]||Di===S.bufferContexts[O.MOTIONBLUR_BUFFER_DRAG])?(_s={x:te.x*at,y:te.y*at},Zi=It*at,Ni=O.canvasWidth*at,ns=O.canvasHeight*at):(_s=Xt,Zi=zt,Ni=O.canvasWidth,ns=O.canvasHeight),Di.setTransform(1,0,0,1,0,0),wi==="motionBlur"?ge(Di,0,0,Ni,ns):!g&&(wi===void 0||wi)&&Di.clearRect(0,0,Ni,ns),x||(Di.translate(_s.x,_s.y),Di.scale(Zi,Zi)),I&&Di.translate(I.x,I.y),L&&Di.scale(L,L)}if(U||(O.textureDrawLastFrame=!1),U){if(O.textureDrawLastFrame=!0,!O.textureCache){O.textureCache={},O.textureCache.bb=z.mutableElements().boundingBox(),O.textureCache.texture=O.data.bufferCanvases[O.TEXTURE_BUFFER];var Ne=O.data.bufferContexts[O.TEXTURE_BUFFER];Ne.setTransform(1,0,0,1,0,0),Ne.clearRect(0,0,O.canvasWidth*O.textureMult,O.canvasHeight*O.textureMult),O.render({forcedContext:Ne,drawOnlyNodeLayer:!0,forcedPxRatio:$*O.textureMult});var Ht=O.textureCache.viewport={zoom:z.zoom(),pan:z.pan(),width:O.canvasWidth,height:O.canvasHeight};Ht.mpan={x:(0-Ht.pan.x)/Ht.zoom,y:(0-Ht.pan.y)/Ht.zoom}}V[O.DRAG]=!1,V[O.NODE]=!1;var pe=S.contexts[O.NODE],gn=O.textureCache.texture,Ht=O.textureCache.viewport;pe.setTransform(1,0,0,1,0,0),et?ge(pe,0,0,Ht.width,Ht.height):pe.clearRect(0,0,Ht.width,Ht.height);var je=Dt.core("outside-texture-bg-color").value,Ge=Dt.core("outside-texture-bg-opacity").value;O.colorFillStyle(pe,je[0],je[1],je[2],Ge),pe.fillRect(0,0,Ht.width,Ht.height);var It=z.zoom();se(pe,!1),pe.clearRect(Ht.mpan.x,Ht.mpan.y,Ht.width/Ht.zoom/$,Ht.height/Ht.zoom/$),pe.drawImage(gn,Ht.mpan.x,Ht.mpan.y,Ht.width/Ht.zoom/$,Ht.height/Ht.zoom/$)}else O.textureOnViewport&&!g&&(O.textureCache=null);var xn=z.extent(),Dn=O.pinching||O.hoverData.dragging||O.swipePanning||O.data.wheelZooming||O.hoverData.draggingEles||O.cy.animated(),Xn=O.hideEdgesOnViewport&&Dn,Cn=[];if(Cn[O.NODE]=!V[O.NODE]&&et&&!O.clearedForMotionBlur[O.NODE]||O.clearingMotionBlur,Cn[O.NODE]&&(O.clearedForMotionBlur[O.NODE]=!0),Cn[O.DRAG]=!V[O.DRAG]&&et&&!O.clearedForMotionBlur[O.DRAG]||O.clearingMotionBlur,Cn[O.DRAG]&&(O.clearedForMotionBlur[O.DRAG]=!0),V[O.NODE]||x||T||Cn[O.NODE]){var Yn=et&&!Cn[O.NODE]&&at!==1,pe=g||(Yn?O.data.bufferContexts[O.MOTIONBLUR_BUFFER_NODE]:S.contexts[O.NODE]),rr=et&&!Yn?"motionBlur":void 0;se(pe,rr),Xn?O.drawCachedNodes(pe,fe.nondrag,$,xn):O.drawLayeredElements(pe,fe.nondrag,$,xn),O.debug&&O.drawDebugPoints(pe,fe.nondrag),!x&&!et&&(V[O.NODE]=!1)}if(!T&&(V[O.DRAG]||x||Cn[O.DRAG])){var Yn=et&&!Cn[O.DRAG]&&at!==1,pe=g||(Yn?O.data.bufferContexts[O.MOTIONBLUR_BUFFER_DRAG]:S.contexts[O.DRAG]);se(pe,et&&!Yn?"motionBlur":void 0),Xn?O.drawCachedNodes(pe,fe.drag,$,xn):O.drawCachedElements(pe,fe.drag,$,xn),O.debug&&O.drawDebugPoints(pe,fe.drag),!x&&!et&&(V[O.DRAG]=!1)}if(O.showFps||!T&&V[O.SELECT_BOX]&&!x){var pe=g||S.contexts[O.SELECT_BOX];if(se(pe),O.selection[4]==1&&(O.hoverData.selecting||O.touchData.selecting)){var It=O.cy.zoom(),wr=Dt.core("selection-box-border-width").value/It;pe.lineWidth=wr,pe.fillStyle="rgba("+Dt.core("selection-box-color").value[0]+","+Dt.core("selection-box-color").value[1]+","+Dt.core("selection-box-color").value[2]+","+Dt.core("selection-box-opacity").value+")",pe.fillRect(O.selection[0],O.selection[1],O.selection[2]-O.selection[0],O.selection[3]-O.selection[1]),wr>0&&(pe.strokeStyle="rgba("+Dt.core("selection-box-border-color").value[0]+","+Dt.core("selection-box-border-color").value[1]+","+Dt.core("selection-box-border-color").value[2]+","+Dt.core("selection-box-opacity").value+")",pe.strokeRect(O.selection[0],O.selection[1],O.selection[2]-O.selection[0],O.selection[3]-O.selection[1]))}if(S.bgActivePosistion&&!O.hoverData.selecting){var It=O.cy.zoom(),ur=S.bgActivePosistion;pe.fillStyle="rgba("+Dt.core("active-bg-color").value[0]+","+Dt.core("active-bg-color").value[1]+","+Dt.core("active-bg-color").value[2]+","+Dt.core("active-bg-opacity").value+")",pe.beginPath(),pe.arc(ur.x,ur.y,Dt.core("active-bg-size").pfValue/It,0,2*Math.PI),pe.fill()}var er=O.lastRedrawTime;if(O.showFps&&er){er=Math.round(er);var bn=Math.round(1e3/er);pe.setTransform(1,0,0,1,0,0),pe.fillStyle="rgba(255, 0, 0, 0.75)",pe.strokeStyle="rgba(255, 0, 0, 0.75)",pe.lineWidth=1,pe.fillText("1 frame = "+er+" ms = "+bn+" fps",0,20);var pr=60;pe.strokeRect(0,30,250,20),pe.fillRect(0,30,250*Math.min(bn/pr,1),20)}x||(V[O.SELECT_BOX]=!1)}if(et&&at!==1){var fr=S.contexts[O.NODE],ri=O.data.bufferCanvases[O.MOTIONBLUR_BUFFER_NODE],_i=S.contexts[O.DRAG],ia=O.data.bufferCanvases[O.MOTIONBLUR_BUFFER_DRAG],La=function(wi,_s,Zi){wi.setTransform(1,0,0,1,0,0),Zi||!Et?wi.clearRect(0,0,O.canvasWidth,O.canvasHeight):ge(wi,0,0,O.canvasWidth,O.canvasHeight);var Ni=at;wi.drawImage(_s,0,0,O.canvasWidth*Ni,O.canvasHeight*Ni,0,0,O.canvasWidth,O.canvasHeight)};(V[O.NODE]||Cn[O.NODE])&&(La(fr,ri,Cn[O.NODE]),V[O.NODE]=!1),(V[O.DRAG]||Cn[O.DRAG])&&(La(_i,ia,Cn[O.DRAG]),V[O.DRAG]=!1)}O.prevViewport=Ht,O.clearingMotionBlur&&(O.clearingMotionBlur=!1,O.motionBlurCleared=!0,O.motionBlur=!0),et&&(O.motionBlurTimeout=setTimeout(function(){O.motionBlurTimeout=null,O.clearedForMotionBlur[O.NODE]=!1,O.clearedForMotionBlur[O.DRAG]=!1,O.motionBlur=!1,O.clearingMotionBlur=!U,O.mbFrames=0,V[O.NODE]=!0,V[O.DRAG]=!0,O.redraw()},lpt)),g||z.emit("render")};var I3={};I3.drawPolygonPath=function(y,g,x,T,L,I){var O=T/2,$=L/2;y.beginPath&&y.beginPath(),y.moveTo(g+O*I[0],x+$*I[1]);for(var z=1;z0&&O>0){at.clearRect(0,0,I,O),at.globalCompositeOperation="source-over";var lt=this.getCachedZSortedEles();if(y.full)at.translate(-T.x1*S,-T.y1*S),at.scale(S,S),this.drawElements(at,lt),at.scale(1/S,1/S),at.translate(T.x1*S,T.y1*S);else{var gt=g.pan(),Lt={x:gt.x*S,y:gt.y*S};S*=g.zoom(),at.translate(Lt.x,Lt.y),at.scale(S,S),this.drawElements(at,lt),at.scale(1/S,1/S),at.translate(-Lt.x,-Lt.y)}y.bg&&(at.globalCompositeOperation="destination-over",at.fillStyle=y.bg,at.rect(0,0,I,O),at.fill())}return et};function hpt(y,g){for(var x=atob(y),T=new ArrayBuffer(x.length),L=new Uint8Array(T),I=0;I"u"?"undefined":f(OffscreenCanvas))!=="undefined"?x=new OffscreenCanvas(y,g):(x=document.createElement("canvas"),x.width=y,x.height=g),x},[C0,gv,pv,kT,l6,qk,xg,I3,ET,Dtt].forEach(function(y){fn(Ec,y)});var h6=[{name:"null",impl:FB},{name:"base",impl:QL},{name:"canvas",impl:fpt}],kg=[{type:"layout",extensions:ett},{type:"renderer",extensions:h6}],Tm={},rM={};function m1(y,g,x){var T=x,L=function(ie){no("Can not register `"+g+"` for `"+y+"` since `"+ie+"` already exists in the prototype and can not be overridden")};if(y==="core"){if(Nk.prototype[g])return L(g);Nk.prototype[g]=x}else if(y==="collection"){if(Hf.prototype[g])return L(g);Hf.prototype[g]=x}else if(y==="layout"){for(var I=function(ie){this.options=ie,x.call(this,ie),ct(this._private)||(this._private={}),this._private.cy=ie.cy,this._private.listeners=[],this.createEmitter()},O=I.prototype=Object.create(x.prototype),$=[],z=0;z<$.length;z++){var S=$[z];O[S]=O[S]||function(){return this}}O.start&&!O.run?O.run=function(){return this.start(),this}:!O.start&&O.run&&(O.start=function(){return this.run(),this});var V=x.prototype.stop;O.stop=function(){var Ht=this.options;if(Ht&&Ht.animate){var ie=this.animations;if(ie)for(var Ut=0;UtH&&(this.rect.x-=(this.labelWidth-H)/2,this.setWidth(this.labelWidth)),this.labelHeight>Y&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-Y)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-Y),this.setHeight(this.labelHeight))}}},F.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==b.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},F.prototype.transform=function(R){var H=this.rect.x;H>C.WORLD_BOUNDARY?H=C.WORLD_BOUNDARY:H<-C.WORLD_BOUNDARY&&(H=-C.WORLD_BOUNDARY);var Y=this.rect.y;Y>C.WORLD_BOUNDARY?Y=C.WORLD_BOUNDARY:Y<-C.WORLD_BOUNDARY&&(Y=-C.WORLD_BOUNDARY);var rt=new P(H,Y),J=R.inverseTransformPoint(rt);this.setLocation(J.x,J.y)},F.prototype.getLeft=function(){return this.rect.x},F.prototype.getRight=function(){return this.rect.x+this.rect.width},F.prototype.getTop=function(){return this.rect.y},F.prototype.getBottom=function(){return this.rect.y+this.rect.height},F.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},f.exports=F},function(f,p,v){function m(b,E){b==null&&E==null?(this.x=0,this.y=0):(this.x=b,this.y=E)}m.prototype.getX=function(){return this.x},m.prototype.getY=function(){return this.y},m.prototype.setX=function(b){this.x=b},m.prototype.setY=function(b){this.y=b},m.prototype.getDifference=function(b){return new DimensionD(this.x-b.x,this.y-b.y)},m.prototype.getCopy=function(){return new m(this.x,this.y)},m.prototype.translate=function(b){return this.x+=b.width,this.y+=b.height,this},f.exports=m},function(f,p,v){var m=v(2),b=v(10),E=v(0),C=v(6),A=v(3),P=v(1),F=v(13),j=v(12),R=v(11);function H(rt,J,it){m.call(this,it),this.estimatedSize=b.MIN_VALUE,this.margin=E.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=rt,J!=null&&J instanceof C?this.graphManager=J:J!=null&&J instanceof Layout&&(this.graphManager=J.graphManager)}H.prototype=Object.create(m.prototype);for(var Y in m)H[Y]=m[Y];H.prototype.getNodes=function(){return this.nodes},H.prototype.getEdges=function(){return this.edges},H.prototype.getGraphManager=function(){return this.graphManager},H.prototype.getParent=function(){return this.parent},H.prototype.getLeft=function(){return this.left},H.prototype.getRight=function(){return this.right},H.prototype.getTop=function(){return this.top},H.prototype.getBottom=function(){return this.bottom},H.prototype.isConnected=function(){return this.isConnected},H.prototype.add=function(rt,J,it){if(J==null&&it==null){var ft=rt;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(ft)>-1)throw"Node already in graph!";return ft.owner=this,this.getNodes().push(ft),ft}else{var Tt=rt;if(!(this.getNodes().indexOf(J)>-1&&this.getNodes().indexOf(it)>-1))throw"Source or target not in graph!";if(!(J.owner==it.owner&&J.owner==this))throw"Both owners must be this graph!";return J.owner!=it.owner?null:(Tt.source=J,Tt.target=it,Tt.isInterGraph=!1,this.getEdges().push(Tt),J.edges.push(Tt),it!=J&&it.edges.push(Tt),Tt)}},H.prototype.remove=function(rt){var J=rt;if(rt instanceof A){if(J==null)throw"Node is null!";if(!(J.owner!=null&&J.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var it=J.edges.slice(),ft,Tt=it.length,kt=0;kt-1&&yt>-1))throw"Source and/or target doesn't know this edge!";ft.source.edges.splice(ct,1),ft.target!=ft.source&&ft.target.edges.splice(yt,1);var mt=ft.source.owner.getEdges().indexOf(ft);if(mt==-1)throw"Not in owner's edge list!";ft.source.owner.getEdges().splice(mt,1)}},H.prototype.updateLeftTop=function(){for(var rt=b.MAX_VALUE,J=b.MAX_VALUE,it,ft,Tt,kt=this.getNodes(),mt=kt.length,ct=0;ctit&&(rt=it),J>ft&&(J=ft)}return rt==b.MAX_VALUE?null:(kt[0].getParent().paddingLeft!=null?Tt=kt[0].getParent().paddingLeft:Tt=this.margin,this.left=J-Tt,this.top=rt-Tt,new j(this.left,this.top))},H.prototype.updateBounds=function(rt){for(var J=b.MAX_VALUE,it=-b.MAX_VALUE,ft=b.MAX_VALUE,Tt=-b.MAX_VALUE,kt,mt,ct,yt,st,xt=this.nodes,ht=xt.length,dt=0;dtkt&&(J=kt),itct&&(ft=ct),Ttkt&&(J=kt),itct&&(ft=ct),Tt=this.nodes.length){var ht=0;it.forEach(function(dt){dt.owner==rt&&ht++}),ht==this.nodes.length&&(this.isConnected=!0)}},f.exports=H},function(f,p,v){var m,b=v(1);function E(C){m=v(5),this.layout=C,this.graphs=[],this.edges=[]}E.prototype.addRoot=function(){var C=this.layout.newGraph(),A=this.layout.newNode(null),P=this.add(C,A);return this.setRootGraph(P),this.rootGraph},E.prototype.add=function(C,A,P,F,j){if(P==null&&F==null&&j==null){if(C==null)throw"Graph is null!";if(A==null)throw"Parent node is null!";if(this.graphs.indexOf(C)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(C),C.parent!=null)throw"Already has a parent!";if(A.child!=null)throw"Already has a child!";return C.parent=A,A.child=C,C}else{j=P,F=A,P=C;var R=F.getOwner(),H=j.getOwner();if(!(R!=null&&R.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(H!=null&&H.getGraphManager()==this))throw"Target not in this graph mgr!";if(R==H)return P.isInterGraph=!1,R.add(P,F,j);if(P.isInterGraph=!0,P.source=F,P.target=j,this.edges.indexOf(P)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(P),!(P.source!=null&&P.target!=null))throw"Edge source and/or target is null!";if(!(P.source.edges.indexOf(P)==-1&&P.target.edges.indexOf(P)==-1))throw"Edge already in source and/or target incidency list!";return P.source.edges.push(P),P.target.edges.push(P),P}},E.prototype.remove=function(C){if(C instanceof m){var A=C;if(A.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(A==this.rootGraph||A.parent!=null&&A.parent.graphManager==this))throw"Invalid parent node!";var P=[];P=P.concat(A.getEdges());for(var F,j=P.length,R=0;R=C.getRight()?A[0]+=Math.min(C.getX()-E.getX(),E.getRight()-C.getRight()):C.getX()<=E.getX()&&C.getRight()>=E.getRight()&&(A[0]+=Math.min(E.getX()-C.getX(),C.getRight()-E.getRight())),E.getY()<=C.getY()&&E.getBottom()>=C.getBottom()?A[1]+=Math.min(C.getY()-E.getY(),E.getBottom()-C.getBottom()):C.getY()<=E.getY()&&C.getBottom()>=E.getBottom()&&(A[1]+=Math.min(E.getY()-C.getY(),C.getBottom()-E.getBottom()));var j=Math.abs((C.getCenterY()-E.getCenterY())/(C.getCenterX()-E.getCenterX()));C.getCenterY()===E.getCenterY()&&C.getCenterX()===E.getCenterX()&&(j=1);var R=j*A[0],H=A[1]/j;A[0]R)return A[0]=P,A[1]=Y,A[2]=j,A[3]=xt,!1;if(Fj)return A[0]=H,A[1]=F,A[2]=yt,A[3]=R,!1;if(Pj?(A[0]=J,A[1]=it,tt=!0):(A[0]=rt,A[1]=Y,tt=!0):pt===X&&(P>j?(A[0]=H,A[1]=Y,tt=!0):(A[0]=ft,A[1]=it,tt=!0)),-Ft===X?j>P?(A[2]=st,A[3]=xt,Pt=!0):(A[2]=yt,A[3]=ct,Pt=!0):Ft===X&&(j>P?(A[2]=mt,A[3]=ct,Pt=!0):(A[2]=ht,A[3]=xt,Pt=!0)),tt&&Pt)return!1;if(P>j?F>R?(Rt=this.getCardinalDirection(pt,X,4),Bt=this.getCardinalDirection(Ft,X,2)):(Rt=this.getCardinalDirection(-pt,X,3),Bt=this.getCardinalDirection(-Ft,X,1)):F>R?(Rt=this.getCardinalDirection(-pt,X,1),Bt=this.getCardinalDirection(-Ft,X,3)):(Rt=this.getCardinalDirection(pt,X,2),Bt=this.getCardinalDirection(Ft,X,4)),!tt)switch(Rt){case 1:Ot=Y,vt=P+-kt/X,A[0]=vt,A[1]=Ot;break;case 2:vt=ft,Ot=F+Tt*X,A[0]=vt,A[1]=Ot;break;case 3:Ot=it,vt=P+kt/X,A[0]=vt,A[1]=Ot;break;case 4:vt=J,Ot=F+-Tt*X,A[0]=vt,A[1]=Ot;break}if(!Pt)switch(Bt){case 1:qe=ct,Vt=j+-Ct/X,A[2]=Vt,A[3]=qe;break;case 2:Vt=ht,qe=R+dt*X,A[2]=Vt,A[3]=qe;break;case 3:qe=xt,Vt=j+Ct/X,A[2]=Vt,A[3]=qe;break;case 4:Vt=st,qe=R+-dt*X,A[2]=Vt,A[3]=qe;break}}return!1},b.getCardinalDirection=function(E,C,A){return E>C?A:1+A%4},b.getIntersection=function(E,C,A,P){if(P==null)return this.getIntersection2(E,C,A);var F=E.x,j=E.y,R=C.x,H=C.y,Y=A.x,rt=A.y,J=P.x,it=P.y,ft=void 0,Tt=void 0,kt=void 0,mt=void 0,ct=void 0,yt=void 0,st=void 0,xt=void 0,ht=void 0;return kt=H-j,ct=F-R,st=R*j-F*H,mt=it-rt,yt=Y-J,xt=J*rt-Y*it,ht=kt*yt-mt*ct,ht===0?null:(ft=(ct*xt-yt*st)/ht,Tt=(mt*st-kt*xt)/ht,new m(ft,Tt))},b.angleOfVector=function(E,C,A,P){var F=void 0;return E!==A?(F=Math.atan((P-C)/(A-E)),A0?1:b<0?-1:0},m.floor=function(b){return b<0?Math.ceil(b):Math.floor(b)},m.ceil=function(b){return b<0?Math.floor(b):Math.ceil(b)},f.exports=m},function(f,p,v){function m(){}m.MAX_VALUE=2147483647,m.MIN_VALUE=-2147483648,f.exports=m},function(f,p,v){var m=function(){function F(j,R){for(var H=0;H"u"?"undefined":m(E);return E==null||C!="object"&&C!="function"},f.exports=b},function(f,p,v){function m(Y){if(Array.isArray(Y)){for(var rt=0,J=Array(Y.length);rt0&&rt;){for(kt.push(ct[0]);kt.length>0&&rt;){var yt=kt[0];kt.splice(0,1),Tt.add(yt);for(var st=yt.getEdges(),ft=0;ft-1&&ct.splice(Ct,1)}Tt=new Set,mt=new Map}}return Y},H.prototype.createDummyNodesForBendpoints=function(Y){for(var rt=[],J=Y.source,it=this.graphManager.calcLowestCommonAncestor(Y.source,Y.target),ft=0;ft0){for(var it=this.edgeToDummyNodes.get(J),ft=0;ft=0&&rt.splice(xt,1);var ht=mt.getNeighborsList();ht.forEach(function(tt){if(J.indexOf(tt)<0){var Pt=it.get(tt),pt=Pt-1;pt==1&&yt.push(tt),it.set(tt,pt)}})}J=J.concat(yt),(rt.length==1||rt.length==2)&&(ft=!0,Tt=rt[0])}return Tt},H.prototype.setGraphManager=function(Y){this.graphManager=Y},f.exports=H},function(f,p,v){function m(){}m.seed=1,m.x=0,m.nextDouble=function(){return m.x=Math.sin(m.seed++)*1e4,m.x-Math.floor(m.x)},f.exports=m},function(f,p,v){var m=v(4);function b(E,C){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}b.prototype.getWorldOrgX=function(){return this.lworldOrgX},b.prototype.setWorldOrgX=function(E){this.lworldOrgX=E},b.prototype.getWorldOrgY=function(){return this.lworldOrgY},b.prototype.setWorldOrgY=function(E){this.lworldOrgY=E},b.prototype.getWorldExtX=function(){return this.lworldExtX},b.prototype.setWorldExtX=function(E){this.lworldExtX=E},b.prototype.getWorldExtY=function(){return this.lworldExtY},b.prototype.setWorldExtY=function(E){this.lworldExtY=E},b.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},b.prototype.setDeviceOrgX=function(E){this.ldeviceOrgX=E},b.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},b.prototype.setDeviceOrgY=function(E){this.ldeviceOrgY=E},b.prototype.getDeviceExtX=function(){return this.ldeviceExtX},b.prototype.setDeviceExtX=function(E){this.ldeviceExtX=E},b.prototype.getDeviceExtY=function(){return this.ldeviceExtY},b.prototype.setDeviceExtY=function(E){this.ldeviceExtY=E},b.prototype.transformX=function(E){var C=0,A=this.lworldExtX;return A!=0&&(C=this.ldeviceOrgX+(E-this.lworldOrgX)*this.ldeviceExtX/A),C},b.prototype.transformY=function(E){var C=0,A=this.lworldExtY;return A!=0&&(C=this.ldeviceOrgY+(E-this.lworldOrgY)*this.ldeviceExtY/A),C},b.prototype.inverseTransformX=function(E){var C=0,A=this.ldeviceExtX;return A!=0&&(C=this.lworldOrgX+(E-this.ldeviceOrgX)*this.lworldExtX/A),C},b.prototype.inverseTransformY=function(E){var C=0,A=this.ldeviceExtY;return A!=0&&(C=this.lworldOrgY+(E-this.ldeviceOrgY)*this.lworldExtY/A),C},b.prototype.inverseTransformPoint=function(E){var C=new m(this.inverseTransformX(E.x),this.inverseTransformY(E.y));return C},f.exports=b},function(f,p,v){function m(R){if(Array.isArray(R)){for(var H=0,Y=Array(R.length);HE.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*E.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(R-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-E.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT_INCREMENTAL):(R>E.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(E.COOLING_ADAPTATION_FACTOR,1-(R-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*(1-E.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},F.prototype.calcSpringForces=function(){for(var R=this.getAllEdges(),H,Y=0;Y0&&arguments[0]!==void 0?arguments[0]:!0,H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Y,rt,J,it,ft=this.getAllNodes(),Tt;if(this.useFRGridVariant)for(this.totalIterations%E.GRID_CALCULATION_CHECK_PERIOD==1&&R&&this.updateGrid(),Tt=new Set,Y=0;Ykt||Tt>kt)&&(R.gravitationForceX=-this.gravityConstant*J,R.gravitationForceY=-this.gravityConstant*it)):(kt=H.getEstimatedSize()*this.compoundGravityRangeFactor,(ft>kt||Tt>kt)&&(R.gravitationForceX=-this.gravityConstant*J*this.compoundGravityConstant,R.gravitationForceY=-this.gravityConstant*it*this.compoundGravityConstant))},F.prototype.isConverged=function(){var R,H=!1;return this.totalIterations>this.maxIterations/3&&(H=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),R=this.totalDisplacement=ft.length||kt>=ft[0].length)){for(var mt=0;mtF}}]),A}();f.exports=C},function(f,p,v){var m=function(){function C(A,P){for(var F=0;F2&&arguments[2]!==void 0?arguments[2]:1,j=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,R=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;b(this,C),this.sequence1=A,this.sequence2=P,this.match_score=F,this.mismatch_penalty=j,this.gap_penalty=R,this.iMax=A.length+1,this.jMax=P.length+1,this.grid=new Array(this.iMax);for(var H=0;H=0;A--){var P=this.listeners[A];P.event===E&&P.callback===C&&this.listeners.splice(A,1)}},b.emit=function(E,C){for(var A=0;AP.coolingFactor*P.maxNodeDisplacement&&(this.displacementX=P.coolingFactor*P.maxNodeDisplacement*E.sign(this.displacementX)),Math.abs(this.displacementY)>P.coolingFactor*P.maxNodeDisplacement&&(this.displacementY=P.coolingFactor*P.maxNodeDisplacement*E.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),P.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},C.prototype.propogateDisplacementToChildren=function(P,F){for(var j=this.getChild().getNodes(),R,H=0;H0)this.positionNodesRadially(ct);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var yt=new Set(this.getAllNodes()),st=this.nodesWithGravity.filter(function(xt){return yt.has(xt)});this.graphManager.setAllNodesToApplyGravitation(st),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},kt.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%j.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var ct=new Set(this.getAllNodes()),yt=this.nodesWithGravity.filter(function(ht){return ct.has(ht)});this.graphManager.setAllNodesToApplyGravitation(yt),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=j.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=j.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var st=!this.isTreeGrowing&&!this.isGrowthFinished,xt=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(st,xt),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},kt.prototype.getPositionsData=function(){for(var ct=this.graphManager.getAllNodes(),yt={},st=0;st1){var tt;for(tt=0;ttxt&&(xt=Math.floor(Ct.y)),dt=Math.floor(Ct.x+F.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Y(R.WORLD_CENTER_X-Ct.x/2,R.WORLD_CENTER_Y-Ct.y/2))},kt.radialLayout=function(ct,yt,st){var xt=Math.max(this.maxDiagonalInTree(ct),F.DEFAULT_RADIAL_SEPARATION);kt.branchRadialLayout(yt,null,0,359,0,xt);var ht=ft.calculateBounds(ct),dt=new Tt;dt.setDeviceOrgX(ht.getMinX()),dt.setDeviceOrgY(ht.getMinY()),dt.setWorldOrgX(st.x),dt.setWorldOrgY(st.y);for(var Ct=0;Ct1;){var qe=Vt[0];Vt.splice(0,1);var _n=X.indexOf(qe);_n>=0&&X.splice(_n,1),vt--,Rt--}yt!=null?Ot=(X.indexOf(Vt[0])+1)%vt:Ot=0;for(var Te=Math.abs(xt-st)/Rt,Wn=Ot;Bt!=Rt;Wn=++Wn%vt){var Ae=X[Wn].getOtherEnd(ct);if(Ae!=yt){var ne=(st+Bt*Te)%360,ke=(ne+Te)%360;kt.branchRadialLayout(Ae,ct,ne,ke,ht+dt,dt),Bt++}}},kt.maxDiagonalInTree=function(ct){for(var yt=J.MIN_VALUE,st=0;styt&&(yt=ht)}return yt},kt.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},kt.prototype.groupZeroDegreeMembers=function(){var ct=this,yt={};this.memberGroups={},this.idToDummyNode={};for(var st=[],xt=this.graphManager.getAllNodes(),ht=0;ht"u"&&(yt[tt]=[]),yt[tt]=yt[tt].concat(dt)}Object.keys(yt).forEach(function(Pt){if(yt[Pt].length>1){var pt="DummyCompound_"+Pt;ct.memberGroups[pt]=yt[Pt];var Ft=yt[Pt][0].getParent(),X=new A(ct.graphManager);X.id=pt,X.paddingLeft=Ft.paddingLeft||0,X.paddingRight=Ft.paddingRight||0,X.paddingBottom=Ft.paddingBottom||0,X.paddingTop=Ft.paddingTop||0,ct.idToDummyNode[pt]=X;var Rt=ct.getGraphManager().add(ct.newGraph(),X),Bt=Ft.getChild();Bt.add(X);for(var vt=0;vt=0;ct--){var yt=this.compoundOrder[ct],st=yt.id,xt=yt.paddingLeft,ht=yt.paddingTop;this.adjustLocations(this.tiledMemberPack[st],yt.rect.x,yt.rect.y,xt,ht)}},kt.prototype.repopulateZeroDegreeMembers=function(){var ct=this,yt=this.tiledZeroDegreePack;Object.keys(yt).forEach(function(st){var xt=ct.idToDummyNode[st],ht=xt.paddingLeft,dt=xt.paddingTop;ct.adjustLocations(yt[st],xt.rect.x,xt.rect.y,ht,dt)})},kt.prototype.getToBeTiled=function(ct){var yt=ct.id;if(this.toBeTiled[yt]!=null)return this.toBeTiled[yt];var st=ct.getChild();if(st==null)return this.toBeTiled[yt]=!1,!1;for(var xt=st.getNodes(),ht=0;ht0)return this.toBeTiled[yt]=!1,!1;if(dt.getChild()==null){this.toBeTiled[dt.id]=!1;continue}if(!this.getToBeTiled(dt))return this.toBeTiled[yt]=!1,!1}return this.toBeTiled[yt]=!0,!0},kt.prototype.getNodeDegree=function(ct){ct.id;for(var yt=ct.getEdges(),st=0,xt=0;xtPt&&(Pt=Ft.rect.height)}st+=Pt+ct.verticalPadding}},kt.prototype.tileCompoundMembers=function(ct,yt){var st=this;this.tiledMemberPack=[],Object.keys(ct).forEach(function(xt){var ht=yt[xt];st.tiledMemberPack[xt]=st.tileNodes(ct[xt],ht.paddingLeft+ht.paddingRight),ht.rect.width=st.tiledMemberPack[xt].width,ht.rect.height=st.tiledMemberPack[xt].height})},kt.prototype.tileNodes=function(ct,yt){var st=F.TILING_PADDING_VERTICAL,xt=F.TILING_PADDING_HORIZONTAL,ht={rows:[],rowWidth:[],rowHeight:[],width:0,height:yt,verticalPadding:st,horizontalPadding:xt};ct.sort(function(tt,Pt){return tt.rect.width*tt.rect.height>Pt.rect.width*Pt.rect.height?-1:tt.rect.width*tt.rect.height0&&(Ct+=ct.horizontalPadding),ct.rowWidth[st]=Ct,ct.width0&&(tt+=ct.verticalPadding);var Pt=0;tt>ct.rowHeight[st]&&(Pt=ct.rowHeight[st],ct.rowHeight[st]=tt,Pt=ct.rowHeight[st]-Pt),ct.height+=Pt,ct.rows[st].push(yt)},kt.prototype.getShortestRowIndex=function(ct){for(var yt=-1,st=Number.MAX_VALUE,xt=0;xtst&&(yt=xt,st=ct.rowWidth[xt]);return yt},kt.prototype.canAddHorizontal=function(ct,yt,st){var xt=this.getShortestRowIndex(ct);if(xt<0)return!0;var ht=ct.rowWidth[xt];if(ht+ct.horizontalPadding+yt<=ct.width)return!0;var dt=0;ct.rowHeight[xt]0&&(dt=st+ct.verticalPadding-ct.rowHeight[xt]);var Ct;ct.width-ht>=yt+ct.horizontalPadding?Ct=(ct.height+dt)/(ht+yt+ct.horizontalPadding):Ct=(ct.height+dt)/ct.width,dt=st+ct.verticalPadding;var tt;return ct.widthdt&&yt!=st){xt.splice(-1,1),ct.rows[st].push(ht),ct.rowWidth[yt]=ct.rowWidth[yt]-dt,ct.rowWidth[st]=ct.rowWidth[st]+dt,ct.width=ct.rowWidth[instance.getLongestRowIndex(ct)];for(var Ct=Number.MIN_VALUE,tt=0;ttCt&&(Ct=xt[tt].height);yt>0&&(Ct+=ct.verticalPadding);var Pt=ct.rowHeight[yt]+ct.rowHeight[st];ct.rowHeight[yt]=Ct,ct.rowHeight[st]0)for(var Bt=ht;Bt<=dt;Bt++)Rt[0]+=this.grid[Bt][Ct-1].length+this.grid[Bt][Ct].length-1;if(dt0)for(var Bt=Ct;Bt<=tt;Bt++)Rt[3]+=this.grid[ht-1][Bt].length+this.grid[ht][Bt].length-1;for(var vt=J.MAX_VALUE,Ot,Vt,qe=0;qe0){var tt;tt=Tt.getGraphManager().add(Tt.newGraph(),st),this.processChildrenList(tt,yt,Tt)}}},Y.prototype.stop=function(){return this.stopped=!0,this};var J=function(ft){ft("layout","cose-bilkent",Y)};typeof cytoscape<"u"&&J(cytoscape),p.exports=J}])})})(Kjt);var lWe=Kjt.exports;const hWe=PE(lWe);Wjt.use(hWe);function Qjt(i,a,f,p){Gjt.drawNode(i,a,f,p),a.children&&a.children.forEach((v,m)=>{Qjt(i,v,f<0?m:f,p)})}function fWe(i,a){a.edges().map((f,p)=>{const v=f.data();if(f[0]._private.bodyBounds){const m=f[0]._private.rscratch;Wt.trace("Edge: ",p,v),i.insert("path").attr("d",`M ${m.startX},${m.startY} L ${m.midX},${m.midY} L${m.endX},${m.endY} `).attr("class","edge section-edge-"+v.section+" edge-depth-"+v.depth)}})}function Zjt(i,a,f,p){a.add({group:"nodes",data:{id:i.id,labelText:i.descr,height:i.height,width:i.width,level:p,nodeId:i.id,padding:i.padding,type:i.type},position:{x:i.x,y:i.y}}),i.children&&i.children.forEach(v=>{Zjt(v,a,f,p+1),a.add({group:"edges",data:{id:`${i.id}_${v.id}`,source:i.id,target:v.id,depth:p,section:v.section}})})}function dWe(i,a){return new Promise(f=>{const p=xr("body").append("div").attr("id","cy").attr("style","display:none"),v=Wjt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});p.remove(),Zjt(i,v,a,0),v.nodes().forEach(function(m){m.layoutDimensions=()=>{const b=m.data();return{w:b.width,h:b.height}}}),v.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),v.ready(m=>{Wt.info("Ready",m),f(v)})})}function gWe(i){i.nodes().map((a,f)=>{const p=a.data();p.x=a.position().x,p.y=a.position().y,Gjt.positionNode(p);const v=zgt(p.nodeId);Wt.info("Id:",f,"Position: (",a.position().x,", ",a.position().y,")",p),v.attr("transform",`translate(${a.position().x-p.width/2}, ${a.position().y-p.height/2})`),v.attr("attr",`apa-${f})`)})}const pWe={draw:async(i,a,f,p)=>{const v=De();v.htmlLabels=!1,Wt.debug(`Rendering mindmap diagram +`+i,p.parser);const m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const C=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body").select("#"+a);C.append("g");const A=p.db.getMindmap(),P=C.append("g");P.attr("class","mindmap-edges");const F=C.append("g");F.attr("class","mindmap-nodes"),Qjt(F,A,-1,v);const j=await dWe(A,v);fWe(P,j),gWe(j),s9(void 0,C,v.mindmap.padding,v.mindmap.useMaxWidth)}},bWe=i=>{let a="";for(let f=0;f` + .edge { + stroke-width: 3; + } + ${bWe(i)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${i.git0}; + } + .section-root text { + fill: ${i.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .mindmap-node-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`}},Symbol.toStringTag,{value:"Module"}));var Vgt=function(){var i=function(E,C,A,P){for(A=A||{},P=E.length;P--;A[E[P]]=C);return A},a=[1,9],f=[1,10],p=[1,5,10,12],v={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(C,A,P,F,j,R,H){var Y=R.length-1;switch(j){case 7:const rt=F.findOrCreateNode(R[Y-4].trim().replaceAll('""','"')),J=F.findOrCreateNode(R[Y-2].trim().replaceAll('""','"')),it=parseFloat(R[Y].trim());F.addLink(rt,J,it);break;case 8:case 9:case 11:this.$=R[Y];break;case 10:this.$=R[Y-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:a,20:f},{1:[2,6],7:11,10:[1,12]},i(f,[2,4],{9:13,5:[1,14]}),{12:[1,15]},i(p,[2,8]),i(p,[2,9]),{19:[1,16]},i(p,[2,11]),{1:[2,1]},{1:[2,5]},i(f,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:a,20:f},{15:18,16:7,17:8,18:a,20:f},{18:[1,19]},i(f,[2,3]),{12:[1,20]},i(p,[2,10]),{15:21,16:7,17:8,18:a,20:f},i([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(C,A){if(A.recoverable)this.trace(C);else{var P=new Error(C);throw P.hash=A,P}},parse:function(C){var A=this,P=[0],F=[],j=[null],R=[],H=this.table,Y="",rt=0,J=0,it=2,ft=1,Tt=R.slice.call(arguments,1),kt=Object.create(this.lexer),mt={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(mt.yy[ct]=this.yy[ct]);kt.setInput(C,mt.yy),mt.yy.lexer=kt,mt.yy.parser=this,typeof kt.yylloc>"u"&&(kt.yylloc={});var yt=kt.yylloc;R.push(yt);var st=kt.options&&kt.options.ranges;typeof mt.yy.parseError=="function"?this.parseError=mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(){var vt;return vt=F.pop()||kt.lex()||ft,typeof vt!="number"&&(vt instanceof Array&&(F=vt,vt=F.pop()),vt=A.symbols_[vt]||vt),vt}for(var ht,dt,Ct,tt,Pt={},pt,Ft,X,Rt;;){if(dt=P[P.length-1],this.defaultActions[dt]?Ct=this.defaultActions[dt]:((ht===null||typeof ht>"u")&&(ht=xt()),Ct=H[dt]&&H[dt][ht]),typeof Ct>"u"||!Ct.length||!Ct[0]){var Bt="";Rt=[];for(pt in H[dt])this.terminals_[pt]&&pt>it&&Rt.push("'"+this.terminals_[pt]+"'");kt.showPosition?Bt="Parse error on line "+(rt+1)+`: +`+kt.showPosition()+` +Expecting `+Rt.join(", ")+", got '"+(this.terminals_[ht]||ht)+"'":Bt="Parse error on line "+(rt+1)+": Unexpected "+(ht==ft?"end of input":"'"+(this.terminals_[ht]||ht)+"'"),this.parseError(Bt,{text:kt.match,token:this.terminals_[ht]||ht,line:kt.yylineno,loc:yt,expected:Rt})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+dt+", token: "+ht);switch(Ct[0]){case 1:P.push(ht),j.push(kt.yytext),R.push(kt.yylloc),P.push(Ct[1]),ht=null,J=kt.yyleng,Y=kt.yytext,rt=kt.yylineno,yt=kt.yylloc;break;case 2:if(Ft=this.productions_[Ct[1]][1],Pt.$=j[j.length-Ft],Pt._$={first_line:R[R.length-(Ft||1)].first_line,last_line:R[R.length-1].last_line,first_column:R[R.length-(Ft||1)].first_column,last_column:R[R.length-1].last_column},st&&(Pt._$.range=[R[R.length-(Ft||1)].range[0],R[R.length-1].range[1]]),tt=this.performAction.apply(Pt,[Y,J,rt,mt.yy,Ct[1],j,R].concat(Tt)),typeof tt<"u")return tt;Ft&&(P=P.slice(0,-1*Ft*2),j=j.slice(0,-1*Ft),R=R.slice(0,-1*Ft)),P.push(this.productions_[Ct[1]][0]),j.push(Pt.$),R.push(Pt._$),X=H[P[P.length-2]][P[P.length-1]],P.push(X);break;case 3:return!0}}return!0}},m=function(){var E={EOF:1,parseError:function(A,P){if(this.yy.parser)this.yy.parser.parseError(A,P);else throw new Error(A)},setInput:function(C,A){return this.yy=A||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var A=C.match(/(?:\r\n?|\n).*/g);return A?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},unput:function(C){var A=C.length,P=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-A),this.offset-=A;var F=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),P.length-1&&(this.yylineno-=P.length-1);var j=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:P?(P.length===F.length?this.yylloc.first_column:0)+F[F.length-P.length].length-P[0].length:this.yylloc.first_column-A},this.options.ranges&&(this.yylloc.range=[j[0],j[0]+this.yyleng-A]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(C){this.unput(this.match.slice(C))},pastInput:function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var C=this.pastInput(),A=new Array(C.length+1).join("-");return C+this.upcomingInput()+` +`+A+"^"},test_match:function(C,A){var P,F,j;if(this.options.backtrack_lexer&&(j={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(j.yylloc.range=this.yylloc.range.slice(0))),F=C[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],P=this.performAction.call(this,this.yy,this,A,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),P)return P;if(this._backtrack){for(var R in j)this[R]=j[R];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,A,P,F;this._more||(this.yytext="",this.match="");for(var j=this._currentRules(),R=0;RA[0].length)){if(A=P,F=R,this.options.backtrack_lexer){if(C=this.test_match(P,j[R]),C!==!1)return C;if(this._backtrack){A=!1;continue}else return!1}else if(!this.options.flex)break}return A?(C=this.test_match(A,j[F]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var A=this.next();return A||this.lex()},begin:function(A){this.conditionStack.push(A)},popState:function(){var A=this.conditionStack.length-1;return A>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(A){return A=this.conditionStack.length-1-Math.abs(A||0),A>=0?this.conditionStack[A]:"INITIAL"},pushState:function(A){this.begin(A)},stateStackSize:function(){return this.conditionStack.length},options:{easy_keword_rules:!0},performAction:function(A,P,F,j){switch(F){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}},rules:[/^(?:sankey-beta\b)/,/^(?:$)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:(\u002C))/,/^(?:(\u0022))/,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/,/^(?:(\u0022)(?!(\u0022)))/,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return E}();v.lexer=m;function b(){this.yy={}}return b.prototype=v,v.Parser=b,new b}();Vgt.parser=Vgt;const KK=Vgt;let YK=[],XK=[],wL={};const wWe=()=>{YK=[],XK=[],wL={},cg()};class mWe{constructor(a,f,p=0){this.source=a,this.target=f,this.value=p}}const yWe=(i,a,f)=>{YK.push(new mWe(i,a,f))};class xWe{constructor(a){this.ID=a}}const kWe={nodesMap:wL,getConfig:()=>De().sankey,getNodes:()=>XK,getLinks:()=>YK,getGraph:()=>({nodes:XK.map(i=>({id:i.ID})),links:YK.map(i=>({source:i.source.ID,target:i.target.ID,value:i.value}))}),addLink:yWe,findOrCreateNode:i=>(i=ui.sanitizeText(i,De()),wL[i]||(wL[i]=new xWe(i),XK.push(wL[i])),wL[i]),getAccTitle:ug,setAccTitle:m0,getAccDescription:hg,setAccDescription:lg,getDiagramTitle:hp,setDiagramTitle:Nb,clear:wWe};function Jjt(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f=v)&&(f=v)}return f}function t$t(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f>p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f>v||f===void 0&&v>=v)&&(f=v)}return f}function Ggt(i,a){let f=0;if(a===void 0)for(let p of i)(p=+p)&&(f+=p);else{let p=-1;for(let v of i)(v=+a(v,++p,i))&&(f+=v)}return f}function EWe(i){return i.target.depth}function TWe(i){return i.depth}function _We(i,a){return a-1-i.height}function e$t(i,a){return i.sourceLinks.length?i.depth:a-1}function CWe(i){return i.targetLinks.length?i.depth:i.sourceLinks.length?t$t(i.sourceLinks,EWe)-1:0}function QK(i){return function(){return i}}function n$t(i,a){return ZK(i.source,a.source)||i.index-a.index}function r$t(i,a){return ZK(i.target,a.target)||i.index-a.index}function ZK(i,a){return i.y0-a.y0}function Ugt(i){return i.value}function SWe(i){return i.index}function AWe(i){return i.nodes}function LWe(i){return i.links}function i$t(i,a){const f=i.get(a);if(!f)throw new Error("missing: "+a);return f}function s$t({nodes:i}){for(const a of i){let f=a.y0,p=f;for(const v of a.sourceLinks)v.y0=f+v.width/2,f+=v.width;for(const v of a.targetLinks)v.y1=p+v.width/2,p+=v.width}}function MWe(){let i=0,a=0,f=1,p=1,v=24,m=8,b,E=SWe,C=e$t,A,P,F=AWe,j=LWe,R=6;function H(){const Pt={nodes:F.apply(null,arguments),links:j.apply(null,arguments)};return Y(Pt),rt(Pt),J(Pt),it(Pt),kt(Pt),s$t(Pt),Pt}H.update=function(Pt){return s$t(Pt),Pt},H.nodeId=function(Pt){return arguments.length?(E=typeof Pt=="function"?Pt:QK(Pt),H):E},H.nodeAlign=function(Pt){return arguments.length?(C=typeof Pt=="function"?Pt:QK(Pt),H):C},H.nodeSort=function(Pt){return arguments.length?(A=Pt,H):A},H.nodeWidth=function(Pt){return arguments.length?(v=+Pt,H):v},H.nodePadding=function(Pt){return arguments.length?(m=b=+Pt,H):m},H.nodes=function(Pt){return arguments.length?(F=typeof Pt=="function"?Pt:QK(Pt),H):F},H.links=function(Pt){return arguments.length?(j=typeof Pt=="function"?Pt:QK(Pt),H):j},H.linkSort=function(Pt){return arguments.length?(P=Pt,H):P},H.size=function(Pt){return arguments.length?(i=a=0,f=+Pt[0],p=+Pt[1],H):[f-i,p-a]},H.extent=function(Pt){return arguments.length?(i=+Pt[0][0],f=+Pt[1][0],a=+Pt[0][1],p=+Pt[1][1],H):[[i,a],[f,p]]},H.iterations=function(Pt){return arguments.length?(R=+Pt,H):R};function Y({nodes:Pt,links:pt}){for(const[X,Rt]of Pt.entries())Rt.index=X,Rt.sourceLinks=[],Rt.targetLinks=[];const Ft=new Map(Pt.map((X,Rt)=>[E(X,Rt,Pt),X]));for(const[X,Rt]of pt.entries()){Rt.index=X;let{source:Bt,target:vt}=Rt;typeof Bt!="object"&&(Bt=Rt.source=i$t(Ft,Bt)),typeof vt!="object"&&(vt=Rt.target=i$t(Ft,vt)),Bt.sourceLinks.push(Rt),vt.targetLinks.push(Rt)}if(P!=null)for(const{sourceLinks:X,targetLinks:Rt}of Pt)X.sort(P),Rt.sort(P)}function rt({nodes:Pt}){for(const pt of Pt)pt.value=pt.fixedValue===void 0?Math.max(Ggt(pt.sourceLinks,Ugt),Ggt(pt.targetLinks,Ugt)):pt.fixedValue}function J({nodes:Pt}){const pt=Pt.length;let Ft=new Set(Pt),X=new Set,Rt=0;for(;Ft.size;){for(const Bt of Ft){Bt.depth=Rt;for(const{target:vt}of Bt.sourceLinks)X.add(vt)}if(++Rt>pt)throw new Error("circular link");Ft=X,X=new Set}}function it({nodes:Pt}){const pt=Pt.length;let Ft=new Set(Pt),X=new Set,Rt=0;for(;Ft.size;){for(const Bt of Ft){Bt.height=Rt;for(const{source:vt}of Bt.targetLinks)X.add(vt)}if(++Rt>pt)throw new Error("circular link");Ft=X,X=new Set}}function ft({nodes:Pt}){const pt=Jjt(Pt,Rt=>Rt.depth)+1,Ft=(f-i-v)/(pt-1),X=new Array(pt);for(const Rt of Pt){const Bt=Math.max(0,Math.min(pt-1,Math.floor(C.call(null,Rt,pt))));Rt.layer=Bt,Rt.x0=i+Bt*Ft,Rt.x1=Rt.x0+v,X[Bt]?X[Bt].push(Rt):X[Bt]=[Rt]}if(A)for(const Rt of X)Rt.sort(A);return X}function Tt(Pt){const pt=t$t(Pt,Ft=>(p-a-(Ft.length-1)*b)/Ggt(Ft,Ugt));for(const Ft of Pt){let X=a;for(const Rt of Ft){Rt.y0=X,Rt.y1=X+Rt.value*pt,X=Rt.y1+b;for(const Bt of Rt.sourceLinks)Bt.width=Bt.value*pt}X=(p-X+b)/(Ft.length+1);for(let Rt=0;RtFt.length)-1)),Tt(pt);for(let Ft=0;Ft0))continue;let qe=(Ot/Vt-vt.y0)*pt;vt.y0+=qe,vt.y1+=qe,ht(vt)}A===void 0&&Bt.sort(ZK),yt(Bt,Ft)}}function ct(Pt,pt,Ft){for(let X=Pt.length,Rt=X-2;Rt>=0;--Rt){const Bt=Pt[Rt];for(const vt of Bt){let Ot=0,Vt=0;for(const{target:_n,value:Te}of vt.sourceLinks){let Wn=Te*(_n.layer-vt.layer);Ot+=tt(vt,_n)*Wn,Vt+=Wn}if(!(Vt>0))continue;let qe=(Ot/Vt-vt.y0)*pt;vt.y0+=qe,vt.y1+=qe,ht(vt)}A===void 0&&Bt.sort(ZK),yt(Bt,Ft)}}function yt(Pt,pt){const Ft=Pt.length>>1,X=Pt[Ft];xt(Pt,X.y0-b,Ft-1,pt),st(Pt,X.y1+b,Ft+1,pt),xt(Pt,p,Pt.length-1,pt),st(Pt,a,0,pt)}function st(Pt,pt,Ft,X){for(;Ft1e-6&&(Rt.y0+=Bt,Rt.y1+=Bt),pt=Rt.y1+b}}function xt(Pt,pt,Ft,X){for(;Ft>=0;--Ft){const Rt=Pt[Ft],Bt=(Rt.y1-pt)*X;Bt>1e-6&&(Rt.y0-=Bt,Rt.y1-=Bt),pt=Rt.y0-b}}function ht({sourceLinks:Pt,targetLinks:pt}){if(P===void 0){for(const{source:{sourceLinks:Ft}}of pt)Ft.sort(r$t);for(const{target:{targetLinks:Ft}}of Pt)Ft.sort(n$t)}}function dt(Pt){if(P===void 0)for(const{sourceLinks:pt,targetLinks:Ft}of Pt)pt.sort(r$t),Ft.sort(n$t)}function Ct(Pt,pt){let Ft=Pt.y0-(Pt.sourceLinks.length-1)*b/2;for(const{target:X,width:Rt}of Pt.sourceLinks){if(X===pt)break;Ft+=Rt+b}for(const{source:X,width:Rt}of pt.targetLinks){if(X===Pt)break;Ft-=Rt}return Ft}function tt(Pt,pt){let Ft=pt.y0-(pt.targetLinks.length-1)*b/2;for(const{source:X,width:Rt}of pt.targetLinks){if(X===Pt)break;Ft+=Rt+b}for(const{target:X,width:Rt}of Pt.sourceLinks){if(X===pt)break;Ft-=Rt}return Ft}return H}var Wgt=Math.PI,Kgt=2*Wgt,C9=1e-6,DWe=Kgt-C9;function Ygt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function a$t(){return new Ygt}Ygt.prototype=a$t.prototype={constructor:Ygt,moveTo:function(i,a){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(i,a){this._+="L"+(this._x1=+i)+","+(this._y1=+a)},quadraticCurveTo:function(i,a,f,p){this._+="Q"+ +i+","+ +a+","+(this._x1=+f)+","+(this._y1=+p)},bezierCurveTo:function(i,a,f,p,v,m){this._+="C"+ +i+","+ +a+","+ +f+","+ +p+","+(this._x1=+v)+","+(this._y1=+m)},arcTo:function(i,a,f,p,v){i=+i,a=+a,f=+f,p=+p,v=+v;var m=this._x1,b=this._y1,E=f-i,C=p-a,A=m-i,P=b-a,F=A*A+P*P;if(v<0)throw new Error("negative radius: "+v);if(this._x1===null)this._+="M"+(this._x1=i)+","+(this._y1=a);else if(F>C9)if(!(Math.abs(P*E-C*A)>C9)||!v)this._+="L"+(this._x1=i)+","+(this._y1=a);else{var j=f-m,R=p-b,H=E*E+C*C,Y=j*j+R*R,rt=Math.sqrt(H),J=Math.sqrt(F),it=v*Math.tan((Wgt-Math.acos((H+F-Y)/(2*rt*J)))/2),ft=it/J,Tt=it/rt;Math.abs(ft-1)>C9&&(this._+="L"+(i+ft*A)+","+(a+ft*P)),this._+="A"+v+","+v+",0,0,"+ +(P*j>A*R)+","+(this._x1=i+Tt*E)+","+(this._y1=a+Tt*C)}},arc:function(i,a,f,p,v,m){i=+i,a=+a,f=+f,m=!!m;var b=f*Math.cos(p),E=f*Math.sin(p),C=i+b,A=a+E,P=1^m,F=m?p-v:v-p;if(f<0)throw new Error("negative radius: "+f);this._x1===null?this._+="M"+C+","+A:(Math.abs(this._x1-C)>C9||Math.abs(this._y1-A)>C9)&&(this._+="L"+C+","+A),f&&(F<0&&(F=F%Kgt+Kgt),F>DWe?this._+="A"+f+","+f+",0,1,"+P+","+(i-b)+","+(a-E)+"A"+f+","+f+",0,1,"+P+","+(this._x1=C)+","+(this._y1=A):F>C9&&(this._+="A"+f+","+f+",0,"+ +(F>=Wgt)+","+P+","+(this._x1=i+f*Math.cos(v))+","+(this._y1=a+f*Math.sin(v))))},rect:function(i,a,f,p){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)+"h"+ +f+"v"+ +p+"h"+-f+"Z"},toString:function(){return this._}};function o$t(i){return function(){return i}}function IWe(i){return i[0]}function OWe(i){return i[1]}var NWe=Array.prototype.slice;function PWe(i){return i.source}function FWe(i){return i.target}function BWe(i){var a=PWe,f=FWe,p=IWe,v=OWe,m=null;function b(){var E,C=NWe.call(arguments),A=a.apply(this,C),P=f.apply(this,C);if(m||(m=E=a$t()),i(m,+p.apply(this,(C[0]=A,C)),+v.apply(this,C),+p.apply(this,(C[0]=P,C)),+v.apply(this,C)),E)return m=null,E+""||null}return b.source=function(E){return arguments.length?(a=E,b):a},b.target=function(E){return arguments.length?(f=E,b):f},b.x=function(E){return arguments.length?(p=typeof E=="function"?E:o$t(+E),b):p},b.y=function(E){return arguments.length?(v=typeof E=="function"?E:o$t(+E),b):v},b.context=function(E){return arguments.length?(m=E??null,b):m},b}function RWe(i,a,f,p,v){i.moveTo(a,f),i.bezierCurveTo(a=(a+p)/2,f,a,v,p,v)}function jWe(){return BWe(RWe)}function $We(i){return[i.source.x1,i.y0]}function zWe(i){return[i.target.x0,i.y1]}function qWe(){return jWe().source($We).target(zWe)}const Xgt=class{static next(i){return new Xgt(i+ ++Xgt.count)}constructor(i){this.id=i,this.href=`#${i}`}toString(){return"url("+this.href+")"}};let Qgt=Xgt;Qgt.count=0;const HWe={left:TWe,right:_We,center:CWe,justify:e$t},VWe={draw:function(i,a,f,p){const{securityLevel:v,sankey:m}=De(),b=i9.sankey;let E;v==="sandbox"&&(E=xr("#i"+a));const C=xr(v==="sandbox"?E.nodes()[0].contentDocument.body:"body"),A=v==="sandbox"?C.select(`[id="${a}"]`):xr(`[id="${a}"]`),P=(m==null?void 0:m.width)??b.width,F=(m==null?void 0:m.height)??b.width,j=(m==null?void 0:m.useMaxWidth)??b.useMaxWidth,R=(m==null?void 0:m.nodeAlignment)??b.nodeAlignment,H=(m==null?void 0:m.prefix)??b.prefix,Y=(m==null?void 0:m.suffix)??b.suffix,rt=(m==null?void 0:m.showValues)??b.showValues;og(A,F,P,j);const J=p.db.getGraph(),it=HWe[R],ft=10;MWe().nodeId(xt=>xt.id).nodeWidth(ft).nodePadding(10+(rt?15:0)).nodeAlign(it).extent([[0,0],[P,F]])(J);const kt=E1t(CEe);A.append("g").attr("class","nodes").selectAll(".node").data(J.nodes).join("g").attr("class","node").attr("id",xt=>(xt.uid=Qgt.next("node-")).id).attr("transform",function(xt){return"translate("+xt.x0+","+xt.y0+")"}).attr("x",xt=>xt.x0).attr("y",xt=>xt.y0).append("rect").attr("height",xt=>xt.y1-xt.y0).attr("width",xt=>xt.x1-xt.x0).attr("fill",xt=>kt(xt.id));const mt=({id:xt,value:ht})=>rt?`${xt} +${H}${Math.round(ht*100)/100}${Y}`:xt;A.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(J.nodes).join("text").attr("x",xt=>xt.x0

(xt.y1+xt.y0)/2).attr("dy",`${rt?"0":"0.35"}em`).attr("text-anchor",xt=>xt.x0

(ht.uid=Qgt.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",ht=>ht.source.x1).attr("x2",ht=>ht.target.x0);xt.append("stop").attr("offset","0%").attr("stop-color",ht=>kt(ht.source.id)),xt.append("stop").attr("offset","100%").attr("stop-color",ht=>kt(ht.target.id))}let st;switch(yt){case"gradient":st=xt=>xt.uid;break;case"source":st=xt=>kt(xt.source.id);break;case"target":st=xt=>kt(xt.target.id);break;default:st=yt}ct.append("path").attr("d",qWe()).attr("stroke",st).attr("stroke-width",xt=>Math.max(1,xt.width))}},GWe=i=>i.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),UWe=KK.parse.bind(KK);KK.parse=i=>UWe(GWe(i));const WWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:KK,db:kWe,renderer:VWe}},Symbol.toStringTag,{value:"Module"}));return Pb}); diff --git a/v1.5.24/elasticlunr.min.js b/v1.5.24/elasticlunr.min.js new file mode 100644 index 000000000..94b20dd2e --- /dev/null +++ b/v1.5.24/elasticlunr.min.js @@ -0,0 +1,10 @@ +/** + * elasticlunr - http://weixsong.github.io + * Lightweight full-text search engine in Javascript for browser search and offline search. - 0.9.5 + * + * Copyright (C) 2017 Oliver Nightingale + * Copyright (C) 2017 Wei Song + * MIT Licensed + * @license + */ +!function(){function e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),t.utils.toString=function(e){return void 0===e||null===e?"":e.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var e=Array.prototype.slice.call(arguments),t=e.pop(),n=e;if("function"!=typeof t)throw new TypeError("last argument must be a function");n.forEach(function(e){this.hasHandler(e)||(this.events[e]=[]),this.events[e].push(t)},this)},t.EventEmitter.prototype.removeListener=function(e,t){if(this.hasHandler(e)){var n=this.events[e].indexOf(t);-1!==n&&(this.events[e].splice(n,1),0==this.events[e].length&&delete this.events[e])}},t.EventEmitter.prototype.emit=function(e){if(this.hasHandler(e)){var t=Array.prototype.slice.call(arguments,1);this.events[e].forEach(function(e){e.apply(void 0,t)},this)}},t.EventEmitter.prototype.hasHandler=function(e){return e in this.events},t.tokenizer=function(e){if(!arguments.length||null===e||void 0===e)return[];if(Array.isArray(e)){var n=e.filter(function(e){return null===e||void 0===e?!1:!0});n=n.map(function(e){return t.utils.toString(e).toLowerCase()});var i=[];return n.forEach(function(e){var n=e.split(t.tokenizer.seperator);i=i.concat(n)},this),i}return e.toString().trim().toLowerCase().split(t.tokenizer.seperator)},t.tokenizer.defaultSeperator=/[\s\-]+/,t.tokenizer.seperator=t.tokenizer.defaultSeperator,t.tokenizer.setSeperator=function(e){null!==e&&void 0!==e&&"object"==typeof e&&(t.tokenizer.seperator=e)},t.tokenizer.resetSeperator=function(){t.tokenizer.seperator=t.tokenizer.defaultSeperator},t.tokenizer.getSeperator=function(){return t.tokenizer.seperator},t.Pipeline=function(){this._queue=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in t.Pipeline.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[n]=e},t.Pipeline.getRegisteredFunction=function(e){return e in t.Pipeline.registeredFunctions!=!0?null:t.Pipeline.registeredFunctions[e]},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.getRegisteredFunction(e);if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._queue.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i+1,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i,0,n)},t.Pipeline.prototype.remove=function(e){var t=this._queue.indexOf(e);-1!==t&&this._queue.splice(t,1)},t.Pipeline.prototype.run=function(e){for(var t=[],n=e.length,i=this._queue.length,o=0;n>o;o++){for(var r=e[o],s=0;i>s&&(r=this._queue[s](r,o,e),void 0!==r&&null!==r);s++);void 0!==r&&null!==r&&t.push(r)}return t},t.Pipeline.prototype.reset=function(){this._queue=[]},t.Pipeline.prototype.get=function(){return this._queue},t.Pipeline.prototype.toJSON=function(){return this._queue.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.DocumentStore,this.index={},this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var e=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,e)},t.Index.prototype.off=function(e,t){return this.eventEmitter.removeListener(e,t)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;n._fields=e.fields,n._ref=e.ref,n.documentStore=t.DocumentStore.load(e.documentStore),n.pipeline=t.Pipeline.load(e.pipeline),n.index={};for(var i in e.index)n.index[i]=t.InvertedIndex.load(e.index[i]);return n},t.Index.prototype.addField=function(e){return this._fields.push(e),this.index[e]=new t.InvertedIndex,this},t.Index.prototype.setRef=function(e){return this._ref=e,this},t.Index.prototype.saveDocument=function(e){return this.documentStore=new t.DocumentStore(e),this},t.Index.prototype.addDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.addDoc(i,e),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));this.documentStore.addFieldLength(i,n,o.length);var r={};o.forEach(function(e){e in r?r[e]+=1:r[e]=1},this);for(var s in r){var u=r[s];u=Math.sqrt(u),this.index[n].addToken(s,{ref:i,tf:u})}},this),n&&this.eventEmitter.emit("add",e,this)}},t.Index.prototype.removeDocByRef=function(e){if(e&&this.documentStore.isDocStored()!==!1&&this.documentStore.hasDoc(e)){var t=this.documentStore.getDoc(e);this.removeDoc(t,!1)}},t.Index.prototype.removeDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.hasDoc(i)&&(this.documentStore.removeDoc(i),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));o.forEach(function(e){this.index[n].removeToken(e,i)},this)},this),n&&this.eventEmitter.emit("remove",e,this))}},t.Index.prototype.updateDoc=function(e,t){var t=void 0===t?!0:t;this.removeDocByRef(e[this._ref],!1),this.addDoc(e,!1),t&&this.eventEmitter.emit("update",e,this)},t.Index.prototype.idf=function(e,t){var n="@"+t+"/"+e;if(Object.prototype.hasOwnProperty.call(this._idfCache,n))return this._idfCache[n];var i=this.index[t].getDocFreq(e),o=1+Math.log(this.documentStore.length/(i+1));return this._idfCache[n]=o,o},t.Index.prototype.getFields=function(){return this._fields.slice()},t.Index.prototype.search=function(e,n){if(!e)return[];e="string"==typeof e?{any:e}:JSON.parse(JSON.stringify(e));var i=null;null!=n&&(i=JSON.stringify(n));for(var o=new t.Configuration(i,this.getFields()).get(),r={},s=Object.keys(e),u=0;u0&&t.push(e);for(var i in n)"docs"!==i&&"df"!==i&&this.expandToken(e+i,t,n[i]);return t},t.InvertedIndex.prototype.toJSON=function(){return{root:this.root}},t.Configuration=function(e,n){var e=e||"";if(void 0==n||null==n)throw new Error("fields should not be null");this.config={};var i;try{i=JSON.parse(e),this.buildUserConfig(i,n)}catch(o){t.utils.warn("user configuration parse failed, will use default configuration"),this.buildDefaultConfig(n)}},t.Configuration.prototype.buildDefaultConfig=function(e){this.reset(),e.forEach(function(e){this.config[e]={boost:1,bool:"OR",expand:!1}},this)},t.Configuration.prototype.buildUserConfig=function(e,n){var i="OR",o=!1;if(this.reset(),"bool"in e&&(i=e.bool||i),"expand"in e&&(o=e.expand||o),"fields"in e)for(var r in e.fields)if(n.indexOf(r)>-1){var s=e.fields[r],u=o;void 0!=s.expand&&(u=s.expand),this.config[r]={boost:s.boost||0===s.boost?s.boost:1,bool:s.bool||i,expand:u}}else t.utils.warn("field name in user configuration not found in index instance fields");else this.addAllFields2UserConfig(i,o,n)},t.Configuration.prototype.addAllFields2UserConfig=function(e,t,n){n.forEach(function(n){this.config[n]={boost:1,bool:e,expand:t}},this)},t.Configuration.prototype.get=function(){return this.config},t.Configuration.prototype.reset=function(){this.config={}},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(e){var t=new this;return t.elements=e,t.length=e.length,t},lunr.SortedSet.prototype.add=function(){var e,t;for(e=0;e1;){if(r===e)return o;e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o]}return r===e?o:-1},lunr.SortedSet.prototype.locationFor=function(e){for(var t=0,n=this.elements.length,i=n-t,o=t+Math.floor(i/2),r=this.elements[o];i>1;)e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o];return r>e?o:e>r?o+1:void 0},lunr.SortedSet.prototype.intersect=function(e){for(var t=new lunr.SortedSet,n=0,i=0,o=this.length,r=e.length,s=this.elements,u=e.elements;;){if(n>o-1||i>r-1)break;s[n]!==u[i]?s[n]u[i]&&i++:(t.add(s[n]),n++,i++)}return t},lunr.SortedSet.prototype.clone=function(){var e=new lunr.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},lunr.SortedSet.prototype.union=function(e){var t,n,i;this.length>=e.length?(t=this,n=e):(t=e,n=this),i=t.clone();for(var o=0,r=n.toArray();o + + + + diff --git a/v1.5.24/fonts/OPEN-SANS-LICENSE.txt b/v1.5.24/fonts/OPEN-SANS-LICENSE.txt new file mode 100644 index 000000000..d64569567 --- /dev/null +++ b/v1.5.24/fonts/OPEN-SANS-LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/v1.5.24/fonts/SOURCE-CODE-PRO-LICENSE.txt b/v1.5.24/fonts/SOURCE-CODE-PRO-LICENSE.txt new file mode 100644 index 000000000..366206f54 --- /dev/null +++ b/v1.5.24/fonts/SOURCE-CODE-PRO-LICENSE.txt @@ -0,0 +1,93 @@ +Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/v1.5.24/fonts/fonts.css b/v1.5.24/fonts/fonts.css new file mode 100644 index 000000000..858efa598 --- /dev/null +++ b/v1.5.24/fonts/fonts.css @@ -0,0 +1,100 @@ +/* Open Sans is licensed under the Apache License, Version 2.0. See http://www.apache.org/licenses/LICENSE-2.0 */ +/* Source Code Pro is under the Open Font License. See https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL */ + +/* open-sans-300 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 300; + src: local('Open Sans Light'), local('OpenSans-Light'), + url('open-sans-v17-all-charsets-300.woff2') format('woff2'); +} + +/* open-sans-300italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 300; + src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), + url('open-sans-v17-all-charsets-300italic.woff2') format('woff2'); +} + +/* open-sans-regular - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 400; + src: local('Open Sans Regular'), local('OpenSans-Regular'), + url('open-sans-v17-all-charsets-regular.woff2') format('woff2'); +} + +/* open-sans-italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 400; + src: local('Open Sans Italic'), local('OpenSans-Italic'), + url('open-sans-v17-all-charsets-italic.woff2') format('woff2'); +} + +/* open-sans-600 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 600; + src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'), + url('open-sans-v17-all-charsets-600.woff2') format('woff2'); +} + +/* open-sans-600italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 600; + src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'), + url('open-sans-v17-all-charsets-600italic.woff2') format('woff2'); +} + +/* open-sans-700 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 700; + src: local('Open Sans Bold'), local('OpenSans-Bold'), + url('open-sans-v17-all-charsets-700.woff2') format('woff2'); +} + +/* open-sans-700italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 700; + src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), + url('open-sans-v17-all-charsets-700italic.woff2') format('woff2'); +} + +/* open-sans-800 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 800; + src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'), + url('open-sans-v17-all-charsets-800.woff2') format('woff2'); +} + +/* open-sans-800italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 800; + src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'), + url('open-sans-v17-all-charsets-800italic.woff2') format('woff2'); +} + +/* source-code-pro-500 - latin_vietnamese_latin-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Source Code Pro'; + font-style: normal; + font-weight: 500; + src: url('source-code-pro-v11-all-charsets-500.woff2') format('woff2'); +} diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-300.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-300.woff2 new file mode 100644 index 000000000..9f51be370 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-300.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-300italic.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-300italic.woff2 new file mode 100644 index 000000000..2f5454484 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-300italic.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-600.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-600.woff2 new file mode 100644 index 000000000..f503d558d Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-600.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-600italic.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-600italic.woff2 new file mode 100644 index 000000000..c99aabe80 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-600italic.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-700.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-700.woff2 new file mode 100644 index 000000000..421a1ab25 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-700.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-700italic.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-700italic.woff2 new file mode 100644 index 000000000..12ce3d20d Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-700italic.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-800.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-800.woff2 new file mode 100644 index 000000000..c94a223b0 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-800.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-800italic.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-800italic.woff2 new file mode 100644 index 000000000..eed7d3c63 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-800italic.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-italic.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-italic.woff2 new file mode 100644 index 000000000..398b68a08 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-italic.woff2 differ diff --git a/v1.5.24/fonts/open-sans-v17-all-charsets-regular.woff2 b/v1.5.24/fonts/open-sans-v17-all-charsets-regular.woff2 new file mode 100644 index 000000000..8383e94c6 Binary files /dev/null and b/v1.5.24/fonts/open-sans-v17-all-charsets-regular.woff2 differ diff --git a/v1.5.24/fonts/source-code-pro-v11-all-charsets-500.woff2 b/v1.5.24/fonts/source-code-pro-v11-all-charsets-500.woff2 new file mode 100644 index 000000000..722245682 Binary files /dev/null and b/v1.5.24/fonts/source-code-pro-v11-all-charsets-500.woff2 differ diff --git a/v1.5.24/getting_started.html b/v1.5.24/getting_started.html new file mode 100644 index 000000000..084d03441 --- /dev/null +++ b/v1.5.24/getting_started.html @@ -0,0 +1,242 @@ + + + + + + Getting Started - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Getting Started

+

The following documentation helps a beginner learn to use Claircore.

+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/getting_started/libindex_usage.html b/v1.5.24/getting_started/libindex_usage.html new file mode 100644 index 000000000..fe384e2fe --- /dev/null +++ b/v1.5.24/getting_started/libindex_usage.html @@ -0,0 +1,381 @@ + + + + + + Libindex Usage - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Libindex Usage

+

Libindex is the Go package responsible for fetching container image layers, +identifying packages, distributions, and repositories within these layers, and +computing a final coalesced Index Report.

+

An Index Report is primarily used as input to Libvuln's vulnerability matching +process.

+

Usage

+

Libindex is runtime constructed via the libindex.New method. New requires an libindex.Opts struct.

+

Options

+
package libindex // import "github.com/quay/claircore/libindex"
+
+type Options struct {
+	// Store is the interface used to persist and retrieve results of indexing.
+	Store indexer.Store
+	// Locker provides system-wide locks. If the indexing work is distributed the
+	// lock should be backed by a distributed store.
+	Locker LockSource
+	// FetchArena is an interface tied to the lifecycle of LibIndex to enable management
+	// of the filesystem while separate processes are dealing with layers, for example:
+	// you can reference count downloaded layer files to avoid racing.
+	FetchArena indexer.FetchArena
+	// ScanLockRetry specifies how often we should try to acquire a lock for scanning a
+	// given manifest if lock is taken.
+	ScanLockRetry time.Duration
+	// LayerScanConcurrency specifies the number of layers to be scanned in parallel.
+	LayerScanConcurrency int
+	// LayerFetchOpt is unused and kept here for backwards compatibility.
+	LayerFetchOpt interface{}
+	// NoLayerValidation controls whether layers are checked to actually be
+	// content-addressed. With this option toggled off, callers can trigger
+	// layers to be indexed repeatedly by changing the identifier in the
+	// manifest.
+	NoLayerValidation bool
+	// ControllerFactory provides an alternative method for creating a scanner during libindex runtime
+	// if nil the default factory will be used. useful for testing purposes
+	ControllerFactory ControllerFactory
+	// Ecosystems a list of ecosystems to use which define which package databases and coalescing methods we use
+	Ecosystems []*indexer.Ecosystem
+	// ScannerConfig holds functions that can be passed into configurable
+	// scanners. They're broken out by kind, and only used if a scanner
+	// implements the appropriate interface.
+	//
+	// Providing a function for a scanner that's not expecting it is not a fatal
+	// error.
+	ScannerConfig struct {
+		Package, Dist, Repo, File map[string]func(interface{}) error
+	}
+	Resolvers []indexer.Resolver
+}
+    Options are dependencies and options for constructing an instance of
+    libindex
+
+

The above outlines the relevant bits of the Options structure.

+

Store is required needs to be an object that satisfies the indexer.Store interface.

+

Locker is required and needs to satisfy the LockSource interface.

+

FetchArena is required and needs to satify the FetchArena interface.

+

Providing a nil "Ecosystems" slice will supply the default set, instructing +Libindex to index for all supported content in a layer, and is typically +desired.

+

Construction

+

Constructing Libindex is straight forward.

+
	opts := new(libindex.Options)
+	// Populate with desired settings...
+	lib, err := libindex.New(ctx, opts, http.DefaultClient)
+	if err != nil {
+		panic(err)
+	}
+	defer lib.Close(ctx) // Remember to cleanup when done.
+
+

The constructing code should provide a valid Context tied to some lifetime.

+

Indexing

+

Indexing is the process of submitting a manifest to Libindex, fetching the +manifest's layers, indexing their contents, and coalescing a final Index +Report.

+

Coalescing is the act of computing a final set of contents (packages, +distributions, repos) from a set of layers. Since layers maybe shared between +many manifests, the final contents of a manifest must be computed.

+

To perform an Index you must provide a claircore.Manifest data struture to the +Index method. The Manifest data structure describes an image manifest's layers +and where they can be fetched from.

+
	m := new(claircore.Manifest)
+	// Populate somehow ...
+	ir, err := lib.Index(ctx, m)
+	if err != nil {
+		panic(err)
+	}
+
+

The Index method will block until an claircore.IndexReport is returned. The +context should be bound to some valid lifetime such as a request.

+

As the Indexer works on the manifest it will update its database throughout the +process. You may view the status of an index report via the "IndexReport" +method.

+
	ir, ok, err := lib.IndexReport(ctx, m.Hash)
+	if err != nil {
+		panic(err)
+	}
+
+

Libindex performs its work incrementally and saves state as it goes along. If +Libindex encounters an intermittent error during the index (for example, due to +network failure while fetching a layer), when the manifest is resubmitted only +the layers not yet indexed will be fetched and processed.

+

State

+

Libindex treats layers as content addressable. Once a layer identified by a +particular hash is indexed its contents are definitively known. A request to +re-index a known layer results in returning the previous successful response.

+

This comes in handy when dealing with base layers. The Ubuntu base layer is +seen very often across container registries. Treating this layer as content +addressable precludes the need to fetch and index the layer every time Libindex +encounters it in a manifest.

+

There are times where re-indexing the same layer is necessary however. At the +point where Libindex realizes a new version of a component has not indexed a +layer being submitted it will perform the indexing operation.

+

A client must notice that Libindex has updated one of its components and +subsequently resubmit Manifests. The State endpoint is implemented for this +reason.

+

Clients may query the State endpoint to receive an opaque string acting as a +cookie, identifying a unique state of Libindex. When a client sees this cookie +change it should re-submit manifests to Libindex to obtain a new index report.

+
	state, err := lib.State(ctx)
+	if err != nil {
+		panic(err)
+	}
+	if state == prevState {
+		// Nothing to do.
+		return
+	}
+	// Otherwise, re-index manifest.
+
+

AffectedManifests

+

Libindex is capable of providing a client with all manifests affected by a set +of vulnerabilities. This functionality is designed for use with a notification +mechanism.

+
	var vulns []claircore.Vulnerability
+	affected, err := lib.AffectedManifests(ctx, vulns)
+	if err != nil {
+		panic(err)
+	}
+	for manifest, vulns := range affected.VulnerableManifests {
+		for _, vuln := range vulns {
+			fmt.Printf("vuln affecting manifest %s: %+v", manifest, vuln)
+		}
+	}
+
+

The slice of vulnerabilities returned for each manifest hash will be sorted by +claircore.NormalizedSeverity in "most severe" descending order.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/getting_started/libvuln_usage.html b/v1.5.24/getting_started/libvuln_usage.html new file mode 100644 index 000000000..ebccd92e8 --- /dev/null +++ b/v1.5.24/getting_started/libvuln_usage.html @@ -0,0 +1,409 @@ + + + + + + Libvuln Usage - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Libvuln Usage

+

Libvuln is the Go package responsible for keeping the database of +vulnerabilities consistent, matching container image contents with +vulnerabilities, and reporting diffs between updates of the same security +database.

+

Usage

+

Libvuln is runtime constructed via the libvuln.New method. New requires a +libvuln.Opts struct.

+

Options

+
package libvuln // import "github.com/quay/claircore/libvuln"
+
+type Options struct {
+	// Store is the interface used to persist and retrieve vulnerabilites
+	// for of matching.
+	Store datastore.MatcherStore
+	// Locker provides system-wide locks for the updater subsystem. If the
+	// matching work is distributed the lock should be backed by a distributed
+	// store.
+	Locker LockSource
+	// An interval on which Libvuln will check for new security database
+	// updates.
+	//
+	// This duration will have jitter added to it, to help with smearing load on
+	// installations.
+	UpdateInterval time.Duration
+	// A slice of strings representing which updaters libvuln will create.
+	//
+	// If nil all default UpdaterSets will be used.
+	//
+	// The following sets are supported:
+	// "alpine"
+	// "aws"
+	// "debian"
+	// "oracle"
+	// "photon"
+	// "pyupio"
+	// "rhel"
+	// "suse"
+	// "ubuntu"
+	UpdaterSets []string
+	// A list of out-of-tree updaters to run.
+	//
+	// This list will be merged with any defined UpdaterSets.
+	//
+	// If you desire no updaters to run do not add an updater
+	// into this slice.
+	Updaters []driver.Updater
+	// A slice of strings representing which
+	// matchers will be used.
+	//
+	// If nil all default Matchers will be used
+	//
+	// The following names are supported by default:
+	// "alpine"
+	// "aws"
+	// "debian"
+	// "oracle"
+	// "photon"
+	// "python"
+	// "rhel"
+	// "suse"
+	// "ubuntu"
+	MatcherNames []string
+
+	// Config holds configuration blocks for MatcherFactories and Matchers,
+	// keyed by name.
+	MatcherConfigs map[string]driver.MatcherConfigUnmarshaler
+
+	// A list of out-of-tree matchers you'd like libvuln to
+	// use.
+	//
+	// This list will me merged with the default matchers.
+	Matchers []driver.Matcher
+
+	// Enrichers is a slice of enrichers to use with all VulnerabilityReport
+	// requests.
+	Enrichers []driver.Enricher
+
+	// UpdateWorkers controls the number of update workers running concurrently.
+	// If less than or equal to zero, a sensible default will be used.
+	UpdateWorkers int
+
+	// UpdateRetention controls the number of updates to retain between
+	// garbage collection periods.
+	//
+	// The lowest possible value is 2 in order to compare updates for notification
+	// purposes.
+	UpdateRetention int
+
+	// If set to true, there will not be a goroutine launched to periodically
+	// run updaters.
+	DisableBackgroundUpdates bool
+
+	// UpdaterConfigs is a map of functions for configuration of Updaters.
+	UpdaterConfigs map[string]driver.ConfigUnmarshaler
+
+	// Client is an http.Client for use by all updaters.
+	//
+	// Must be set.
+	Client *http.Client
+}
+
+

The above outlines the relevant bits of the Opts structure.

+

Construction

+

Constructing Libvuln is straight forward.

+
	opts := new(libvuln.Options)
+	// Populate with desired settings...
+	lib, err := libvuln.New(ctx, opts)
+	if err != nil {
+		panic(err)
+	}
+	defer lib.Close(ctx)
+
+

The constructing code should provide a valid Context tied to some lifetime.

+

On construction, New will block until the security databases are initialized. +Expect some delay before this method returns.

+

Scanning

+

Scanning is the process of taking a claircore.IndexReport comprised of a +Manifest's content and determining which vulnerabilities affect the Manifest. A +claircore.VulnerabilityReport will be returned with these details.

+
	m := new(claircore.Manifest)
+	// Populate somehow ...
+	ir, err := indexer.Index(ctx, m)
+	if err != nil {
+		panic(err)
+	}
+	vr, err := lib.Scan(ctx, ir)
+	if err != nil {
+		panic(err)
+	}
+
+

In the above example, Libindex is used to generate a claircore.IndexReport. +The index report is then provided to Libvuln and a subsequent vulnerability +report identifying any vulnerabilities affecting the manifest is returned.

+

Updates API

+

By default, Libvuln manages a set of long running updaters responsible for +periodically fetching and loading new advisory contents into its database. The +Updates API allows a client to view and manipulate aspects of the update +operations that updaters perform.

+

In this getting started guide, we will only cover the two methods most +interesting to new users.

+

UpdateOperations

+

This API provides a list of recent update operations performed by implemented updaters. +The UpdateOperation slice returned will be sorted by latest timestamp descending.

+
	ops, err := lib.UpdateOperations(ctx, `updater`)
+	if err != nil {
+		panic(err)
+	}
+	for updater, ops := range ops {
+		fmt.Printf("ops for updater %s, %+v", updater, ops)
+	}
+
+

UpdateDiff

+

Mostly used by the Clair v4 notification subsystem, this endpoint will provide the +caller with any removed or added vulnerabilities between two update operations. +Typically a diff takes places against two versions of the same data source. This +is useful to inform downstream applications what new vulnerabilities have +entered the system.

+
	ops, err := lib.UpdateOperations(ctx, `updater`)
+	if err != nil {
+		panic(err)
+	}
+	for upd, ops := range ops {
+		fmt.Printf("updater: %v", upd)
+		diff, err := lib.UpdateDiff(ctx, ops[1].Ref, ops[0].Ref)
+		if err != nil {
+			panic(err)
+		}
+		for _, vuln := range diff.Added {
+			fmt.Printf("vuln %+v added in %v", vuln, diff.Cur.Ref)
+		}
+	}
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/highlight.css b/v1.5.24/highlight.css new file mode 100644 index 000000000..ba57b82b2 --- /dev/null +++ b/v1.5.24/highlight.css @@ -0,0 +1,82 @@ +/* + * An increased contrast highlighting scheme loosely based on the + * "Base16 Atelier Dune Light" theme by Bram de Haan + * (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune) + * Original Base16 color scheme by Chris Kempson + * (https://github.com/chriskempson/base16) + */ + +/* Comment */ +.hljs-comment, +.hljs-quote { + color: #575757; +} + +/* Red */ +.hljs-variable, +.hljs-template-variable, +.hljs-attribute, +.hljs-tag, +.hljs-name, +.hljs-regexp, +.hljs-link, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class { + color: #d70025; +} + +/* Orange */ +.hljs-number, +.hljs-meta, +.hljs-built_in, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params { + color: #b21e00; +} + +/* Green */ +.hljs-string, +.hljs-symbol, +.hljs-bullet { + color: #008200; +} + +/* Blue */ +.hljs-title, +.hljs-section { + color: #0030f2; +} + +/* Purple */ +.hljs-keyword, +.hljs-selector-tag { + color: #9d00ec; +} + +.hljs { + display: block; + overflow-x: auto; + background: #f6f7f6; + color: #000; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-addition { + color: #22863a; + background-color: #f0fff4; +} + +.hljs-deletion { + color: #b31d28; + background-color: #ffeef0; +} diff --git a/v1.5.24/highlight.js b/v1.5.24/highlight.js new file mode 100644 index 000000000..3256c00ed --- /dev/null +++ b/v1.5.24/highlight.js @@ -0,0 +1,53 @@ +/* + Highlight.js 10.1.1 (93fd0d73) + License: BSD-3-Clause + Copyright (c) 2006-2020, Ivan Sagalaev +*/ +var hljs=function(){"use strict";function e(n){Object.freeze(n);var t="function"==typeof n;return Object.getOwnPropertyNames(n).forEach((function(r){!Object.hasOwnProperty.call(n,r)||null===n[r]||"object"!=typeof n[r]&&"function"!=typeof n[r]||t&&("caller"===r||"callee"===r||"arguments"===r)||Object.isFrozen(n[r])||e(n[r])})),n}class n{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data}ignoreMatch(){this.ignore=!0}}function t(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function r(e,...n){var t={};for(const n in e)t[n]=e[n];return n.forEach((function(e){for(const n in e)t[n]=e[n]})),t}function a(e){return e.nodeName.toLowerCase()}var i=Object.freeze({__proto__:null,escapeHTML:t,inherit:r,nodeStream:function(e){var n=[];return function e(t,r){for(var i=t.firstChild;i;i=i.nextSibling)3===i.nodeType?r+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:r,node:i}),r=e(i,r),a(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:r,node:i}));return r}(e,0),n},mergeStreams:function(e,n,r){var i=0,s="",o=[];function l(){return e.length&&n.length?e[0].offset!==n[0].offset?e[0].offset"}function u(e){s+=""}function d(e){("start"===e.event?c:u)(e.node)}for(;e.length||n.length;){var g=l();if(s+=t(r.substring(i,g[0].offset)),i=g[0].offset,g===e){o.reverse().forEach(u);do{d(g.splice(0,1)[0]),g=l()}while(g===e&&g.length&&g[0].offset===i);o.reverse().forEach(c)}else"start"===g[0].event?o.push(g[0].node):o.pop(),d(g.splice(0,1)[0])}return s+t(r.substr(i))}});const s="",o=e=>!!e.kind;class l{constructor(e,n){this.buffer="",this.classPrefix=n.classPrefix,e.walk(this)}addText(e){this.buffer+=t(e)}openNode(e){if(!o(e))return;let n=e.kind;e.sublanguage||(n=`${this.classPrefix}${n}`),this.span(n)}closeNode(e){o(e)&&(this.buffer+=s)}value(){return this.buffer}span(e){this.buffer+=``}}class c{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const n={kind:e,children:[]};this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,n){return"string"==typeof n?e.addText(n):n.children&&(e.openNode(n),n.children.forEach(n=>this._walk(e,n)),e.closeNode(n)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{c._collapse(e)}))}}class u extends c{constructor(e){super(),this.options=e}addKeyword(e,n){""!==e&&(this.openNode(n),this.addText(e),this.closeNode())}addText(e){""!==e&&this.add(e)}addSublanguage(e,n){const t=e.root;t.kind=n,t.sublanguage=!0,this.add(t)}toHTML(){return new l(this,this.options).value()}finalize(){return!0}}function d(e){return e?"string"==typeof e?e:e.source:null}const g="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",h={begin:"\\\\[\\s\\S]",relevance:0},f={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[h]},p={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[h]},b={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},m=function(e,n,t={}){var a=r({className:"comment",begin:e,end:n,contains:[]},t);return a.contains.push(b),a.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),a},v=m("//","$"),x=m("/\\*","\\*/"),E=m("#","$");var _=Object.freeze({__proto__:null,IDENT_RE:"[a-zA-Z]\\w*",UNDERSCORE_IDENT_RE:"[a-zA-Z_]\\w*",NUMBER_RE:"\\b\\d+(\\.\\d+)?",C_NUMBER_RE:g,BINARY_NUMBER_RE:"\\b(0b[01]+)",RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const n=/^#![ ]*\//;return e.binary&&(e.begin=function(...e){return e.map(e=>d(e)).join("")}(n,/.*\b/,e.binary,/\b.*/)),r({className:"meta",begin:n,end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)},BACKSLASH_ESCAPE:h,APOS_STRING_MODE:f,QUOTE_STRING_MODE:p,PHRASAL_WORDS_MODE:b,COMMENT:m,C_LINE_COMMENT_MODE:v,C_BLOCK_COMMENT_MODE:x,HASH_COMMENT_MODE:E,NUMBER_MODE:{className:"number",begin:"\\b\\d+(\\.\\d+)?",relevance:0},C_NUMBER_MODE:{className:"number",begin:g,relevance:0},BINARY_NUMBER_MODE:{className:"number",begin:"\\b(0b[01]+)",relevance:0},CSS_NUMBER_MODE:{className:"number",begin:"\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[h,{begin:/\[/,end:/\]/,relevance:0,contains:[h]}]}]},TITLE_MODE:{className:"title",begin:"[a-zA-Z]\\w*",relevance:0},UNDERSCORE_TITLE_MODE:{className:"title",begin:"[a-zA-Z_]\\w*",relevance:0},METHOD_GUARD:{begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{n.data._beginMatch!==e[1]&&n.ignoreMatch()}})}}),N="of and for in not or if then".split(" ");function w(e,n){return n?+n:function(e){return N.includes(e.toLowerCase())}(e)?0:1}const R=t,y=r,{nodeStream:k,mergeStreams:O}=i,M=Symbol("nomatch");return function(t){var a=[],i={},s={},o=[],l=!0,c=/(^(<[^>]+>|\t|)+|\n)/gm,g="Could not find the language '{}', did you forget to load/include a language module?";const h={disableAutodetect:!0,name:"Plain text",contains:[]};var f={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:u};function p(e){return f.noHighlightRe.test(e)}function b(e,n,t,r){var a={code:n,language:e};S("before:highlight",a);var i=a.result?a.result:m(a.language,a.code,t,r);return i.code=a.code,S("after:highlight",i),i}function m(e,t,a,s){var o=t;function c(e,n){var t=E.case_insensitive?n[0].toLowerCase():n[0];return Object.prototype.hasOwnProperty.call(e.keywords,t)&&e.keywords[t]}function u(){null!=y.subLanguage?function(){if(""!==A){var e=null;if("string"==typeof y.subLanguage){if(!i[y.subLanguage])return void O.addText(A);e=m(y.subLanguage,A,!0,k[y.subLanguage]),k[y.subLanguage]=e.top}else e=v(A,y.subLanguage.length?y.subLanguage:null);y.relevance>0&&(I+=e.relevance),O.addSublanguage(e.emitter,e.language)}}():function(){if(!y.keywords)return void O.addText(A);let e=0;y.keywordPatternRe.lastIndex=0;let n=y.keywordPatternRe.exec(A),t="";for(;n;){t+=A.substring(e,n.index);const r=c(y,n);if(r){const[e,a]=r;O.addText(t),t="",I+=a,O.addKeyword(n[0],e)}else t+=n[0];e=y.keywordPatternRe.lastIndex,n=y.keywordPatternRe.exec(A)}t+=A.substr(e),O.addText(t)}(),A=""}function h(e){return e.className&&O.openNode(e.className),y=Object.create(e,{parent:{value:y}})}function p(e){return 0===y.matcher.regexIndex?(A+=e[0],1):(L=!0,0)}var b={};function x(t,r){var i=r&&r[0];if(A+=t,null==i)return u(),0;if("begin"===b.type&&"end"===r.type&&b.index===r.index&&""===i){if(A+=o.slice(r.index,r.index+1),!l){const n=Error("0 width match regex");throw n.languageName=e,n.badRule=b.rule,n}return 1}if(b=r,"begin"===r.type)return function(e){var t=e[0],r=e.rule;const a=new n(r),i=[r.__beforeBegin,r["on:begin"]];for(const n of i)if(n&&(n(e,a),a.ignore))return p(t);return r&&r.endSameAsBegin&&(r.endRe=RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")),r.skip?A+=t:(r.excludeBegin&&(A+=t),u(),r.returnBegin||r.excludeBegin||(A=t)),h(r),r.returnBegin?0:t.length}(r);if("illegal"===r.type&&!a){const e=Error('Illegal lexeme "'+i+'" for mode "'+(y.className||"")+'"');throw e.mode=y,e}if("end"===r.type){var s=function(e){var t=e[0],r=o.substr(e.index),a=function e(t,r,a){let i=function(e,n){var t=e&&e.exec(n);return t&&0===t.index}(t.endRe,a);if(i){if(t["on:end"]){const e=new n(t);t["on:end"](r,e),e.ignore&&(i=!1)}if(i){for(;t.endsParent&&t.parent;)t=t.parent;return t}}if(t.endsWithParent)return e(t.parent,r,a)}(y,e,r);if(!a)return M;var i=y;i.skip?A+=t:(i.returnEnd||i.excludeEnd||(A+=t),u(),i.excludeEnd&&(A=t));do{y.className&&O.closeNode(),y.skip||y.subLanguage||(I+=y.relevance),y=y.parent}while(y!==a.parent);return a.starts&&(a.endSameAsBegin&&(a.starts.endRe=a.endRe),h(a.starts)),i.returnEnd?0:t.length}(r);if(s!==M)return s}if("illegal"===r.type&&""===i)return 1;if(B>1e5&&B>3*r.index)throw Error("potential infinite loop, way more iterations than matches");return A+=i,i.length}var E=T(e);if(!E)throw console.error(g.replace("{}",e)),Error('Unknown language: "'+e+'"');var _=function(e){function n(n,t){return RegExp(d(n),"m"+(e.case_insensitive?"i":"")+(t?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,n){n.position=this.position++,this.matchIndexes[this.matchAt]=n,this.regexes.push([n,e]),this.matchAt+=function(e){return RegExp(e.toString()+"|").exec("").length-1}(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map(e=>e[1]);this.matcherRe=n(function(e,n="|"){for(var t=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,r=0,a="",i=0;i0&&(a+=n),a+="(";o.length>0;){var l=t.exec(o);if(null==l){a+=o;break}a+=o.substring(0,l.index),o=o.substring(l.index+l[0].length),"\\"===l[0][0]&&l[1]?a+="\\"+(+l[1]+s):(a+=l[0],"("===l[0]&&r++)}a+=")"}return a}(e),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const n=this.matcherRe.exec(e);if(!n)return null;const t=n.findIndex((e,n)=>n>0&&void 0!==e),r=this.matchIndexes[t];return n.splice(0,t),Object.assign(n,r)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const n=new t;return this.rules.slice(e).forEach(([e,t])=>n.addRule(e,t)),n.compile(),this.multiRegexes[e]=n,n}considerAll(){this.regexIndex=0}addRule(e,n){this.rules.push([e,n]),"begin"===n.type&&this.count++}exec(e){const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex;const t=n.exec(e);return t&&(this.regexIndex+=t.position+1,this.regexIndex===this.count&&(this.regexIndex=0)),t}}function i(e,n){const t=e.input[e.index-1],r=e.input[e.index+e[0].length];"."!==t&&"."!==r||n.ignoreMatch()}if(e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return function t(s,o){const l=s;if(s.compiled)return l;s.compiled=!0,s.__beforeBegin=null,s.keywords=s.keywords||s.beginKeywords;let c=null;if("object"==typeof s.keywords&&(c=s.keywords.$pattern,delete s.keywords.$pattern),s.keywords&&(s.keywords=function(e,n){var t={};return"string"==typeof e?r("keyword",e):Object.keys(e).forEach((function(n){r(n,e[n])})),t;function r(e,r){n&&(r=r.toLowerCase()),r.split(" ").forEach((function(n){var r=n.split("|");t[r[0]]=[e,w(r[0],r[1])]}))}}(s.keywords,e.case_insensitive)),s.lexemes&&c)throw Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return l.keywordPatternRe=n(s.lexemes||c||/\w+/,!0),o&&(s.beginKeywords&&(s.begin="\\b("+s.beginKeywords.split(" ").join("|")+")(?=\\b|\\s)",s.__beforeBegin=i),s.begin||(s.begin=/\B|\b/),l.beginRe=n(s.begin),s.endSameAsBegin&&(s.end=s.begin),s.end||s.endsWithParent||(s.end=/\B|\b/),s.end&&(l.endRe=n(s.end)),l.terminator_end=d(s.end)||"",s.endsWithParent&&o.terminator_end&&(l.terminator_end+=(s.end?"|":"")+o.terminator_end)),s.illegal&&(l.illegalRe=n(s.illegal)),void 0===s.relevance&&(s.relevance=1),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((function(e){return function(e){return e.variants&&!e.cached_variants&&(e.cached_variants=e.variants.map((function(n){return r(e,{variants:null},n)}))),e.cached_variants?e.cached_variants:function e(n){return!!n&&(n.endsWithParent||e(n.starts))}(e)?r(e,{starts:e.starts?r(e.starts):null}):Object.isFrozen(e)?r(e):e}("self"===e?s:e)}))),s.contains.forEach((function(e){t(e,l)})),s.starts&&t(s.starts,o),l.matcher=function(e){const n=new a;return e.contains.forEach(e=>n.addRule(e.begin,{rule:e,type:"begin"})),e.terminator_end&&n.addRule(e.terminator_end,{type:"end"}),e.illegal&&n.addRule(e.illegal,{type:"illegal"}),n}(l),l}(e)}(E),N="",y=s||_,k={},O=new f.__emitter(f);!function(){for(var e=[],n=y;n!==E;n=n.parent)n.className&&e.unshift(n.className);e.forEach(e=>O.openNode(e))}();var A="",I=0,S=0,B=0,L=!1;try{for(y.matcher.considerAll();;){B++,L?L=!1:(y.matcher.lastIndex=S,y.matcher.considerAll());const e=y.matcher.exec(o);if(!e)break;const n=x(o.substring(S,e.index),e);S=e.index+n}return x(o.substr(S)),O.closeAllNodes(),O.finalize(),N=O.toHTML(),{relevance:I,value:N,language:e,illegal:!1,emitter:O,top:y}}catch(n){if(n.message&&n.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:n.message,context:o.slice(S-100,S+100),mode:n.mode},sofar:N,relevance:0,value:R(o),emitter:O};if(l)return{illegal:!1,relevance:0,value:R(o),emitter:O,language:e,top:y,errorRaised:n};throw n}}function v(e,n){n=n||f.languages||Object.keys(i);var t=function(e){const n={relevance:0,emitter:new f.__emitter(f),value:R(e),illegal:!1,top:h};return n.emitter.addText(e),n}(e),r=t;return n.filter(T).filter(I).forEach((function(n){var a=m(n,e,!1);a.language=n,a.relevance>r.relevance&&(r=a),a.relevance>t.relevance&&(r=t,t=a)})),r.language&&(t.second_best=r),t}function x(e){return f.tabReplace||f.useBR?e.replace(c,e=>"\n"===e?f.useBR?"
":e:f.tabReplace?e.replace(/\t/g,f.tabReplace):e):e}function E(e){let n=null;const t=function(e){var n=e.className+" ";n+=e.parentNode?e.parentNode.className:"";const t=f.languageDetectRe.exec(n);if(t){var r=T(t[1]);return r||(console.warn(g.replace("{}",t[1])),console.warn("Falling back to no-highlight mode for this block.",e)),r?t[1]:"no-highlight"}return n.split(/\s+/).find(e=>p(e)||T(e))}(e);if(p(t))return;S("before:highlightBlock",{block:e,language:t}),f.useBR?(n=document.createElement("div")).innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n"):n=e;const r=n.textContent,a=t?b(t,r,!0):v(r),i=k(n);if(i.length){const e=document.createElement("div");e.innerHTML=a.value,a.value=O(i,k(e),r)}a.value=x(a.value),S("after:highlightBlock",{block:e,result:a}),e.innerHTML=a.value,e.className=function(e,n,t){var r=n?s[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),e.includes(r)||a.push(r),a.join(" ").trim()}(e.className,t,a.language),e.result={language:a.language,re:a.relevance,relavance:a.relevance},a.second_best&&(e.second_best={language:a.second_best.language,re:a.second_best.relevance,relavance:a.second_best.relevance})}const N=()=>{if(!N.called){N.called=!0;var e=document.querySelectorAll("pre code");a.forEach.call(e,E)}};function T(e){return e=(e||"").toLowerCase(),i[e]||i[s[e]]}function A(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach(e=>{s[e]=n})}function I(e){var n=T(e);return n&&!n.disableAutodetect}function S(e,n){var t=e;o.forEach((function(e){e[t]&&e[t](n)}))}Object.assign(t,{highlight:b,highlightAuto:v,fixMarkup:x,highlightBlock:E,configure:function(e){f=y(f,e)},initHighlighting:N,initHighlightingOnLoad:function(){window.addEventListener("DOMContentLoaded",N,!1)},registerLanguage:function(e,n){var r=null;try{r=n(t)}catch(n){if(console.error("Language definition for '{}' could not be registered.".replace("{}",e)),!l)throw n;console.error(n),r=h}r.name||(r.name=e),i[e]=r,r.rawDefinition=n.bind(null,t),r.aliases&&A(r.aliases,{languageName:e})},listLanguages:function(){return Object.keys(i)},getLanguage:T,registerAliases:A,requireLanguage:function(e){var n=T(e);if(n)return n;throw Error("The '{}' language is required, but not loaded.".replace("{}",e))},autoDetection:I,inherit:y,addPlugin:function(e){o.push(e)}}),t.debugMode=function(){l=!1},t.safeMode=function(){l=!0},t.versionString="10.1.1";for(const n in _)"object"==typeof _[n]&&e(_[n]);return Object.assign(t,_),t}({})}();"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs); +hljs.registerLanguage("apache",function(){"use strict";return function(e){var n={className:"number",begin:"\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?"};return{name:"Apache config",aliases:["apacheconf"],case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"section",begin:"",contains:[n,{className:"number",begin:":\\d{1,5}"},e.inherit(e.QUOTE_STRING_MODE,{relevance:0})]},{className:"attribute",begin:/\w+/,relevance:0,keywords:{nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{end:/$/,relevance:0,keywords:{literal:"on off all deny allow"},contains:[{className:"meta",begin:"\\s\\[",end:"\\]$"},{className:"variable",begin:"[\\$%]\\{",end:"\\}",contains:["self",{className:"number",begin:"[\\$%]\\d+"}]},n,{className:"number",begin:"\\d+"},e.QUOTE_STRING_MODE]}}],illegal:/\S/}}}()); +hljs.registerLanguage("bash",function(){"use strict";return function(e){const s={};Object.assign(s,{className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{/,end:/\}/,contains:[{begin:/:-/,contains:[s]}]}]});const t={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,t]};t.contains.push(n);const a={begin:/\$\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,s]},i=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10}),c={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b-?[a-z\._]+\b/,keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},contains:[i,e.SHEBANG(),c,a,e.HASH_COMMENT_MODE,n,{className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},s]}}}()); +hljs.registerLanguage("c-like",function(){"use strict";return function(e){function t(e){return"(?:"+e+")?"}var n="(decltype\\(auto\\)|"+t("[a-zA-Z_]\\w*::")+"[a-zA-Z_]\\w*"+t("<.*?>")+")",r={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},a={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},i={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},s={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(a,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},o={className:"title",begin:t("[a-zA-Z_]\\w*::")+e.IDENT_RE,relevance:0},c=t("[a-zA-Z_]\\w*::")+e.IDENT_RE+"\\s*\\(",l={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",literal:"true false nullptr NULL"},d=[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,i,a],_={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:l,contains:d.concat([{begin:/\(/,end:/\)/,keywords:l,contains:d.concat(["self"]),relevance:0}]),relevance:0},u={className:"function",begin:"("+n+"[\\*&\\s]+)+"+c,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:l,illegal:/[^\w\s\*&:<>]/,contains:[{begin:"decltype\\(auto\\)",keywords:l,relevance:0},{begin:c,returnBegin:!0,contains:[o],relevance:0},{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,i,r,{begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:["self",e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,i,r]}]},r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s]};return{aliases:["c","cc","h","c++","h++","hpp","hh","hxx","cxx"],keywords:l,disableAutodetect:!0,illegal:"",keywords:l,contains:["self",r]},{begin:e.IDENT_RE+"::",keywords:l},{className:"class",beginKeywords:"class struct",end:/[{;:]/,contains:[{begin://,contains:["self"]},e.TITLE_MODE]}]),exports:{preprocessor:s,strings:a,keywords:l}}}}()); +hljs.registerLanguage("c",function(){"use strict";return function(e){var n=e.getLanguage("c-like").rawDefinition();return n.name="C",n.aliases=["c","h"],n}}()); +hljs.registerLanguage("coffeescript",function(){"use strict";const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);return function(r){var t={keyword:e.concat(["then","unless","until","loop","by","when","and","or","is","isnt","not"]).filter((e=>n=>!e.includes(n))(["var","const","let","function","static"])).join(" "),literal:n.concat(["yes","no","on","off"]).join(" "),built_in:a.concat(["npm","print"]).join(" ")},i="[A-Za-z$_][0-9A-Za-z$_]*",s={className:"subst",begin:/#\{/,end:/}/,keywords:t},o=[r.BINARY_NUMBER_MODE,r.inherit(r.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0}}),{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[r.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[r.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[r.BACKSLASH_ESCAPE,s]},{begin:/"/,end:/"/,contains:[r.BACKSLASH_ESCAPE,s]}]},{className:"regexp",variants:[{begin:"///",end:"///",contains:[s,r.HASH_COMMENT_MODE]},{begin:"//[gim]{0,3}(?=\\W)",relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:"@"+i},{subLanguage:"javascript",excludeBegin:!0,excludeEnd:!0,variants:[{begin:"```",end:"```"},{begin:"`",end:"`"}]}];s.contains=o;var c=r.inherit(r.TITLE_MODE,{begin:i}),l={className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(o)}]};return{name:"CoffeeScript",aliases:["coffee","cson","iced"],keywords:t,illegal:/\/\*/,contains:o.concat([r.COMMENT("###","###"),r.HASH_COMMENT_MODE,{className:"function",begin:"^\\s*"+i+"\\s*=\\s*(\\(.*\\))?\\s*\\B[-=]>",end:"[-=]>",returnBegin:!0,contains:[c,l]},{begin:/[:\(,=]\s*/,relevance:0,contains:[{className:"function",begin:"(\\(.*\\))?\\s*\\B[-=]>",end:"[-=]>",returnBegin:!0,contains:[l]}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[c]},c]},{begin:i+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}}}()); +hljs.registerLanguage("cpp",function(){"use strict";return function(e){var t=e.getLanguage("c-like").rawDefinition();return t.disableAutodetect=!1,t.name="C++",t.aliases=["cc","c++","h++","hpp","hh","hxx","cxx"],t}}()); +hljs.registerLanguage("csharp",function(){"use strict";return function(e){var n={keyword:"abstract as base bool break byte case catch char checked const continue decimal default delegate do double enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending async await by descending dynamic equals from get global group into join let nameof on orderby partial remove select set value var when where yield",literal:"null false true"},i=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},s={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},t=e.inherit(s,{illegal:/\n/}),l={className:"subst",begin:"{",end:"}",keywords:n},r=e.inherit(l,{illegal:/\n/}),c={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:"{{"},{begin:"}}"},e.BACKSLASH_ESCAPE,r]},o={className:"string",begin:/\$@"/,end:'"',contains:[{begin:"{{"},{begin:"}}"},{begin:'""'},l]},g=e.inherit(o,{illegal:/\n/,contains:[{begin:"{{"},{begin:"}}"},{begin:'""'},r]});l.contains=[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.C_BLOCK_COMMENT_MODE],r.contains=[g,c,t,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];var d={variants:[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},i]},_=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",b={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:n,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"\x3c!--|--\x3e"},{begin:""}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},d,a,{beginKeywords:"class interface",end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},i,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",end:/[{;=]/,illegal:/[^\s:]/,contains:[i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"meta-string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+_+"\\s+)+"+e.IDENT_RE+"\\s*(\\<.+\\>)?\\s*\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:n,contains:[{begin:e.IDENT_RE+"\\s*(\\<.+\\>)?\\s*\\(",returnBegin:!0,contains:[e.TITLE_MODE,E],relevance:0},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,relevance:0,contains:[d,a,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},b]}}}()); +hljs.registerLanguage("css",function(){"use strict";return function(e){var n={begin:/(?:[A-Z\_\.\-]+|--[a-zA-Z0-9_-]+)\s*:/,returnBegin:!0,end:";",endsWithParent:!0,contains:[{className:"attribute",begin:/\S/,end:":",excludeEnd:!0,starts:{endsWithParent:!0,excludeEnd:!0,contains:[{begin:/[\w-]+\(/,returnBegin:!0,contains:[{className:"built_in",begin:/[\w-]+/},{begin:/\(/,end:/\)/,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE]}]},e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE,{className:"number",begin:"#[0-9A-Fa-f]+"},{className:"meta",begin:"!important"}]}}]};return{name:"CSS",case_insensitive:!0,illegal:/[=\/|'\$]/,contains:[e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/},{className:"selector-class",begin:/\.[A-Za-z0-9_-]+/},{className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},{className:"selector-pseudo",begin:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{begin:"@(page|font-face)",lexemes:"@[a-z-]+",keywords:"@page @font-face"},{begin:"@",end:"[{;]",illegal:/:/,returnBegin:!0,contains:[{className:"keyword",begin:/@\-?\w[\w]*(\-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:"and or not only",contains:[{begin:/[a-z-]+:/,className:"attribute"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0},{begin:"{",end:"}",illegal:/\S/,contains:[e.C_BLOCK_COMMENT_MODE,n]}]}}}()); +hljs.registerLanguage("diff",function(){"use strict";return function(e){return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,variants:[{begin:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{begin:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{begin:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{className:"comment",variants:[{begin:/Index: /,end:/$/},{begin:/={3,}/,end:/$/},{begin:/^\-{3}/,end:/$/},{begin:/^\*{3} /,end:/$/},{begin:/^\+{3}/,end:/$/},{begin:/^\*{15}$/}]},{className:"addition",begin:"^\\+",end:"$"},{className:"deletion",begin:"^\\-",end:"$"},{className:"addition",begin:"^\\!",end:"$"}]}}}()); +hljs.registerLanguage("go",function(){"use strict";return function(e){var n={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{name:"Go",aliases:["golang"],keywords:n,illegal:"e(n)).join("")}return function(a){var s={className:"number",relevance:0,variants:[{begin:/([\+\-]+)?[\d]+_[\d_]+/},{begin:a.NUMBER_RE}]},i=a.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];var t={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)}/}]},r={className:"literal",begin:/\bon|off|true|false|yes|no\b/},l={className:"string",contains:[a.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},c={begin:/\[/,end:/\]/,contains:[i,r,t,l,s,"self"],relevance:0},g="("+[/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/].map(n=>e(n)).join("|")+")";return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:n(g,"(\\s*\\.\\s*",g,")*",n("(?=",/\s*=\s*[^#\s]/,")")),className:"attr",starts:{end:/$/,contains:[i,c,r,t,l,s]}}]}}}()); +hljs.registerLanguage("java",function(){"use strict";function e(e){return e?"string"==typeof e?e:e.source:null}function n(e){return a("(",e,")?")}function a(...n){return n.map(n=>e(n)).join("")}function s(...n){return"("+n.map(n=>e(n)).join("|")+")"}return function(e){var t="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",i={className:"meta",begin:"@[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},r=e=>a("[",e,"]+([",e,"_]*[",e,"]+)?"),c={className:"number",variants:[{begin:`\\b(0[bB]${r("01")})[lL]?`},{begin:`\\b(0${r("0-7")})[dDfFlL]?`},{begin:a(/\b0[xX]/,s(a(r("a-fA-F0-9"),/\./,r("a-fA-F0-9")),a(r("a-fA-F0-9"),/\.?/),a(/\./,r("a-fA-F0-9"))),/([pP][+-]?(\d+))?/,/[fFdDlL]?/)},{begin:a(/\b/,s(a(/\d*\./,r("\\d")),r("\\d")),/[eE][+-]?[\d]+[dDfF]?/)},{begin:a(/\b/,r(/\d/),n(/\.?/),n(r(/\d/)),/[dDfFlL]?/)}],relevance:0};return{name:"Java",aliases:["jsp"],keywords:t,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"class interface",end:/[{;=]/,excludeEnd:!0,keywords:"class interface",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"new throw return else",relevance:0},{className:"function",begin:"([À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(\\s*,\\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*)*>)?\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:t,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:t,relevance:0,contains:[i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},c,i]}}}()); +hljs.registerLanguage("javascript",function(){"use strict";const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function s(e){return r("(?=",e,")")}function r(...e){return e.map(e=>(function(e){return e?"string"==typeof e?e:e.source:null})(e)).join("")}return function(t){var i="[A-Za-z$_][0-9A-Za-z$_]*",c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/},o={$pattern:"[A-Za-z$_][0-9A-Za-z$_]*",keyword:e.join(" "),literal:n.join(" "),built_in:a.join(" ")},l={className:"number",variants:[{begin:"\\b(0[bB][01]+)n?"},{begin:"\\b(0[oO][0-7]+)n?"},{begin:t.C_NUMBER_RE+"n?"}],relevance:0},E={className:"subst",begin:"\\$\\{",end:"\\}",keywords:o,contains:[]},d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,E],subLanguage:"xml"}},g={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,E],subLanguage:"css"}},u={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,E]};E.contains=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,g,u,l,t.REGEXP_MODE];var b=E.contains.concat([{begin:/\(/,end:/\)/,contains:["self"].concat(E.contains,[t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE])},t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]),_={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:b};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:o,contains:[t.SHEBANG({binary:"node",relevance:5}),{className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,g,u,t.C_LINE_COMMENT_MODE,t.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,l,{begin:r(/[{,\n]\s*/,s(r(/(((\/\/.*)|(\/\*(.|\n)*\*\/))\s*)*/,i+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:i+s("\\s*:"),relevance:0}]},{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,t.REGEXP_MODE,{className:"function",begin:"(\\([^(]*(\\([^(]*(\\([^(]*\\))?\\))?\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:b}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:"<>",end:""},{begin:c.begin,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[t.inherit(t.TITLE_MODE,{begin:i}),_],illegal:/\[|%/},{begin:/\$[(.]/},t.METHOD_GUARD,{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"constructor",end:/\{/,excludeEnd:!0},{begin:"(get|set)\\s+(?="+i+"\\()",end:/{/,keywords:"get set",contains:[t.inherit(t.TITLE_MODE,{begin:i}),{begin:/\(\)/},_]}],illegal:/#(?!!)/}}}()); +hljs.registerLanguage("json",function(){"use strict";return function(n){var e={literal:"true false null"},i=[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],t=[n.QUOTE_STRING_MODE,n.C_NUMBER_MODE],a={end:",",endsWithParent:!0,excludeEnd:!0,contains:t,keywords:e},l={begin:"{",end:"}",contains:[{className:"attr",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE],illegal:"\\n"},n.inherit(a,{begin:/:/})].concat(i),illegal:"\\S"},s={begin:"\\[",end:"\\]",contains:[n.inherit(a)],illegal:"\\S"};return t.push(l,s),i.forEach((function(n){t.push(n)})),{name:"JSON",contains:t,keywords:e,illegal:"\\S"}}}()); +hljs.registerLanguage("kotlin",function(){"use strict";return function(e){var n={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual trait volatile transient native default",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},a={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},i={className:"subst",begin:"\\${",end:"}",contains:[e.C_NUMBER_MODE]},s={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},t={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[s,i]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,s,i]}]};i.contains.push(t);var r={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(t,{className:"meta-string"})]}]},c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),o={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},d=o;return d.variants[1].contains=[o],o.variants[1].contains=[d],{name:"Kotlin",aliases:["kt"],keywords:n,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},a,r,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:n,illegal:/fun\s+(<.*>)?[^\s\(]+(\s+[^\s\(]+)\s*=/,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[o,e.C_LINE_COMMENT_MODE,c],relevance:0},e.C_LINE_COMMENT_MODE,c,r,l,t,e.C_NUMBER_MODE]},c]},{className:"class",beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/,excludeBegin:!0,returnEnd:!0},r,l]},t,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},{className:"number",begin:"\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",relevance:0}]}}}()); +hljs.registerLanguage("less",function(){"use strict";return function(e){var n="([\\w-]+|@{[\\w-]+})",a=[],s=[],t=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},r=function(e,n,a){return{className:e,begin:n,relevance:a}},i={begin:"\\(",end:"\\)",contains:s,relevance:0};s.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t("'"),t('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},r("number","#[0-9A-Fa-f]+\\b"),i,r("variable","@@?[\\w-]+",10),r("variable","@{[\\w-]+}"),r("built_in","~?`[^`]*?`"),{className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0},{className:"meta",begin:"!important"});var c=s.concat({begin:"{",end:"}",contains:a}),l={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(s)},o={begin:n+"\\s*:",returnBegin:!0,end:"[;}]",relevance:0,contains:[{className:"attribute",begin:n,end:":",excludeEnd:!0,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:s}}]},g={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",returnEnd:!0,contains:s,relevance:0}},d={className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:c}},b={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:n,end:"{"}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,r("keyword","all\\b"),r("variable","@{[\\w-]+}"),r("selector-tag",n+"%?",0),r("selector-id","#"+n),r("selector-class","\\."+n,0),r("selector-tag","&",0),{className:"selector-attr",begin:"\\[",end:"\\]"},{className:"selector-pseudo",begin:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{begin:"\\(",end:"\\)",contains:c},{begin:"!important"}]};return a.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,g,d,o,b),{name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:a}}}()); +hljs.registerLanguage("lua",function(){"use strict";return function(e){var t={begin:"\\[=*\\[",end:"\\]=*\\]",contains:["self"]},a=[e.COMMENT("--(?!\\[=*\\[)","$"),e.COMMENT("--\\[=*\\[","\\]=*\\]",{contains:[t],relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:a.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:a}].concat(a)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"\\[=*\\[",end:"\\]=*\\]",contains:[t],relevance:5}])}}}()); +hljs.registerLanguage("makefile",function(){"use strict";return function(e){var i={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,contains:[{className:"meta",begin:"",relevance:10,contains:[a,i,t,s,{begin:"\\[",end:"\\]",contains:[{className:"meta",begin:"",contains:[a,s,i,t]}]}]},e.COMMENT("\x3c!--","--\x3e",{relevance:10}),{begin:"<\\!\\[CDATA\\[",end:"\\]\\]>",relevance:10},n,{className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",begin:")",end:">",keywords:{name:"style"},contains:[c],starts:{end:"",returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:")",end:">",keywords:{name:"script"},contains:[c],starts:{end:"<\/script>",returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:"",contains:[{className:"name",begin:/[^\/><\s]+/,relevance:0},c]}]}}}()); +hljs.registerLanguage("markdown",function(){"use strict";return function(n){const e={begin:"<",end:">",subLanguage:"xml",relevance:0},a={begin:"\\[.+?\\][\\(\\[].*?[\\)\\]]",returnBegin:!0,contains:[{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0,relevance:0},{className:"link",begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}],relevance:10},i={className:"strong",contains:[],variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},s={className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{begin:/_(?!_)/,end:/_/,relevance:0}]};i.contains.push(s),s.contains.push(i);var c=[e,a];return i.contains=i.contains.concat(c),s.contains=s.contains.concat(c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:c=c.concat(i,s)},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:c}]}]},e,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},i,s,{className:"quote",begin:"^>\\s+",contains:c,end:"$"},{className:"code",variants:[{begin:"(`{3,})(.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})(.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},a,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}}()); +hljs.registerLanguage("nginx",function(){"use strict";return function(e){var n={className:"variable",variants:[{begin:/\$\d+/},{begin:/\$\{/,end:/}/},{begin:"[\\$\\@]"+e.UNDERSCORE_IDENT_RE}]},a={endsWithParent:!0,keywords:{$pattern:"[a-z/_]+",literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},relevance:0,illegal:"=>",contains:[e.HASH_COMMENT_MODE,{className:"string",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/}]},{begin:"([a-z]+):/",end:"\\s",endsWithParent:!0,excludeEnd:!0,contains:[n]},{className:"regexp",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:"\\s\\^",end:"\\s|{|;",returnEnd:!0},{begin:"~\\*?\\s+",end:"\\s|{|;",returnEnd:!0},{begin:"\\*(\\.[a-z\\-]+)+"},{begin:"([a-z\\-]+\\.)+\\*"}]},{className:"number",begin:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{className:"number",begin:"\\b\\d+[kKmMgGdshdwy]*\\b",relevance:0},n]};return{name:"Nginx config",aliases:["nginxconf"],contains:[e.HASH_COMMENT_MODE,{begin:e.UNDERSCORE_IDENT_RE+"\\s+{",returnBegin:!0,end:"{",contains:[{className:"section",begin:e.UNDERSCORE_IDENT_RE}],relevance:0},{begin:e.UNDERSCORE_IDENT_RE+"\\s",end:";|{",returnBegin:!0,contains:[{className:"attribute",begin:e.UNDERSCORE_IDENT_RE,starts:a}],relevance:0}],illegal:"[^\\s\\}]"}}}()); +hljs.registerLanguage("objectivec",function(){"use strict";return function(e){var n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={$pattern:n,keyword:"@interface @class @protocol @implementation"};return{name:"Objective-C",aliases:["mm","objc","obj-c"],keywords:{$pattern:n,keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},illegal:"/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+_.keyword.split(" ").join("|")+")\\b",end:"({|$)",excludeEnd:!0,keywords:_,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}}()); +hljs.registerLanguage("perl",function(){"use strict";return function(e){var n={$pattern:/[\w.]+/,keyword:"getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qq fileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmget sub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedir ioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when"},t={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:n},s={begin:"->{",end:"}"},r={variants:[{begin:/\$\d/},{begin:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{begin:/[\$%@][^\s\w{]/,relevance:0}]},i=[e.BACKSLASH_ESCAPE,t,r],a=[r,e.HASH_COMMENT_MODE,e.COMMENT("^\\=\\w","\\=cut",{endsWithParent:!0}),s,{className:"string",contains:i,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*\\<",end:"\\>",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:"{\\w+}",contains:[],relevance:0},{begin:"-?\\w+\\s*\\=\\>",contains:[],relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",begin:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",relevance:10},{className:"regexp",begin:"(m|qr)?/",end:"/[a-z]*",contains:[e.BACKSLASH_ESCAPE],relevance:0}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return t.contains=a,s.contains=a,{name:"Perl",aliases:["pl","pm"],keywords:n,contains:a}}}()); +hljs.registerLanguage("php",function(){"use strict";return function(e){var r={begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},t={className:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{begin:/\?>/}]},a={className:"string",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},n={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]},i={keyword:"__CLASS__ __DIR__ __FILE__ __FUNCTION__ __LINE__ __METHOD__ __NAMESPACE__ __TRAIT__ die echo exit include include_once print require require_once array abstract and as binary bool boolean break callable case catch class clone const continue declare default do double else elseif empty enddeclare endfor endforeach endif endswitch endwhile eval extends final finally float for foreach from global goto if implements instanceof insteadof int integer interface isset iterable list new object or private protected public real return string switch throw trait try unset use var void while xor yield",literal:"false null true",built_in:"Error|0 AppendIterator ArgumentCountError ArithmeticError ArrayIterator ArrayObject AssertionError BadFunctionCallException BadMethodCallException CachingIterator CallbackFilterIterator CompileError Countable DirectoryIterator DivisionByZeroError DomainException EmptyIterator ErrorException Exception FilesystemIterator FilterIterator GlobIterator InfiniteIterator InvalidArgumentException IteratorIterator LengthException LimitIterator LogicException MultipleIterator NoRewindIterator OutOfBoundsException OutOfRangeException OuterIterator OverflowException ParentIterator ParseError RangeException RecursiveArrayIterator RecursiveCachingIterator RecursiveCallbackFilterIterator RecursiveDirectoryIterator RecursiveFilterIterator RecursiveIterator RecursiveIteratorIterator RecursiveRegexIterator RecursiveTreeIterator RegexIterator RuntimeException SeekableIterator SplDoublyLinkedList SplFileInfo SplFileObject SplFixedArray SplHeap SplMaxHeap SplMinHeap SplObjectStorage SplObserver SplObserver SplPriorityQueue SplQueue SplStack SplSubject SplSubject SplTempFileObject TypeError UnderflowException UnexpectedValueException ArrayAccess Closure Generator Iterator IteratorAggregate Serializable Throwable Traversable WeakReference Directory __PHP_Incomplete_Class parent php_user_filter self static stdClass"};return{aliases:["php","php3","php4","php5","php6","php7"],case_insensitive:!0,keywords:i,contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[t]}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler"}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;?$/,contains:[e.BACKSLASH_ESCAPE,{className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]}]},t,{className:"keyword",begin:/\$this\b/},r,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",r,e.C_BLOCK_COMMENT_MODE,a,n]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"=>"},a,n]}}}()); +hljs.registerLanguage("php-template",function(){"use strict";return function(n){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}}()); +hljs.registerLanguage("plaintext",function(){"use strict";return function(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}}()); +hljs.registerLanguage("properties",function(){"use strict";return function(e){var n="[ \\t\\f]*",t="("+n+"[:=]"+n+"|[ \\t\\f]+)",a="([^\\\\:= \\t\\f\\n]|\\\\.)+",s={end:t,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\n"}]}};return{name:".properties",case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{begin:"([^\\\\\\W:= \\t\\f\\n]|\\\\.)+"+t,returnBegin:!0,contains:[{className:"attr",begin:"([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",endsParent:!0,relevance:0}],starts:s},{begin:a+t,returnBegin:!0,relevance:0,contains:[{className:"meta",begin:a,endsParent:!0,relevance:0}],starts:s},{className:"attr",relevance:0,begin:a+n+"$"}]}}}()); +hljs.registerLanguage("python",function(){"use strict";return function(e){var n={keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10",built_in:"Ellipsis NotImplemented",literal:"False None True"},a={className:"meta",begin:/^(>>>|\.\.\.) /},i={className:"subst",begin:/\{/,end:/\}/,keywords:n,illegal:/#/},s={begin:/\{\{/,relevance:0},r={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/(u|b)?r?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/(u|b)?r?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/(fr|rf|f)'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,s,i]},{begin:/(fr|rf|f)"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,s,i]},{begin:/(u|r|ur)'/,end:/'/,relevance:10},{begin:/(u|r|ur)"/,end:/"/,relevance:10},{begin:/(b|br)'/,end:/'/},{begin:/(b|br)"/,end:/"/},{begin:/(fr|rf|f)'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,i]},{begin:/(fr|rf|f)"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,i]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},l={className:"number",relevance:0,variants:[{begin:e.BINARY_NUMBER_RE+"[lLjJ]?"},{begin:"\\b(0o[0-7]+)[lLjJ]?"},{begin:e.C_NUMBER_RE+"[lLjJ]?"}]},t={className:"params",variants:[{begin:/\(\s*\)/,skip:!0,className:null},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:["self",a,l,r,e.HASH_COMMENT_MODE]}]};return i.contains=[r,l,a],{name:"Python",aliases:["py","gyp","ipython"],keywords:n,illegal:/(<\/|->|\?)|=>/,contains:[a,l,{beginKeywords:"if",relevance:0},r,e.HASH_COMMENT_MODE,{variants:[{className:"function",beginKeywords:"def"},{className:"class",beginKeywords:"class"}],end:/:/,illegal:/[${=;\n,]/,contains:[e.UNDERSCORE_TITLE_MODE,t,{begin:/->/,endsWithParent:!0,keywords:"None"}]},{className:"meta",begin:/^[\t ]*@/,end:/$/},{begin:/\b(print|exec)\(/}]}}}()); +hljs.registerLanguage("python-repl",function(){"use strict";return function(n){return{aliases:["pycon"],contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}}()); +hljs.registerLanguage("ruby",function(){"use strict";return function(e){var n="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",a={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},s={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},r=[e.COMMENT("#","$",{contains:[s]}),e.COMMENT("^\\=begin","^\\=end",{contains:[s],relevance:10}),e.COMMENT("^__END__","\\n$")],c={className:"subst",begin:"#\\{",end:"}",keywords:a},t={className:"string",contains:[e.BACKSLASH_ESCAPE,c],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[qQwWx]?\\(",end:"\\)"},{begin:"%[qQwWx]?\\[",end:"\\]"},{begin:"%[qQwWx]?{",end:"}"},{begin:"%[qQwWx]?<",end:">"},{begin:"%[qQwWx]?/",end:"/"},{begin:"%[qQwWx]?%",end:"%"},{begin:"%[qQwWx]?-",end:"-"},{begin:"%[qQwWx]?\\|",end:"\\|"},{begin:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{begin:/<<[-~]?'?(\w+)(?:.|\n)*?\n\s*\1\b/,returnBegin:!0,contains:[{begin:/<<[-~]?'?/},e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,c]})]}]},b={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:a},d=[t,i,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{begin:"<\\s*",contains:[{begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE}]}].concat(r)},{className:"function",beginKeywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:n}),b].concat(r)},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(\\!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[t,{begin:n}],relevance:0},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{className:"params",begin:/\|/,end:/\|/,keywords:a},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[i,{className:"regexp",contains:[e.BACKSLASH_ESCAPE,c],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r{",end:"}[a-z]*"},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(r),relevance:0}].concat(r);c.contains=d,b.contains=d;var g=[{begin:/^\s*=>/,starts:{end:"$",contains:d}},{className:"meta",begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>)",starts:{end:"$",contains:d}}];return{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:a,illegal:/\/\*/,contains:r.concat(g).concat(d)}}}()); +hljs.registerLanguage("rust",function(){"use strict";return function(e){var n="([ui](8|16|32|64|128|size)|f(32|64))?",t="drop i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize f32 f64 str char bool Box Option Result String Vec Copy Send Sized Sync Drop Fn FnMut FnOnce ToOwned Clone Debug PartialEq PartialOrd Eq Ord AsRef AsMut Into From Default Iterator Extend IntoIterator DoubleEndedIterator ExactSizeIterator SliceConcatExt ToString assert! assert_eq! bitflags! bytes! cfg! col! concat! concat_idents! debug_assert! debug_assert_eq! env! panic! file! format! format_args! include_bin! include_str! line! local_data_key! module_path! option_env! print! println! select! stringify! try! unimplemented! unreachable! vec! write! writeln! macro_rules! assert_ne! debug_assert_ne!";return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",keyword:"abstract as async await become box break const continue crate do dyn else enum extern false final fn for if impl in let loop macro match mod move mut override priv pub ref return self Self static struct super trait true try type typeof unsafe unsized use virtual where while yield",literal:"true false Some None Ok Err",built_in:t},illegal:""}]}}}()); +hljs.registerLanguage("scss",function(){"use strict";return function(e){var t={className:"variable",begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"},i={className:"number",begin:"#[0-9A-Fa-f]+"};return e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE,{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"\\#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},{className:"selector-attr",begin:"\\[",end:"\\]",illegal:"$"},{className:"selector-tag",begin:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",relevance:0},{className:"selector-pseudo",begin:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{className:"selector-pseudo",begin:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},t,{className:"attribute",begin:"\\b(src|z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",illegal:"[^\\s]"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[t,i,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"meta",begin:"!important"}]},{begin:"@(page|font-face)",lexemes:"@[a-z-]+",keywords:"@page @font-face"},{begin:"@",end:"[{;]",returnBegin:!0,keywords:"and or not only",contains:[{begin:"@[a-z-]+",className:"keyword"},t,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i,e.CSS_NUMBER_MODE]}]}}}()); +hljs.registerLanguage("shell",function(){"use strict";return function(s){return{name:"Shell Session",aliases:["console"],contains:[{className:"meta",begin:"^\\s{0,3}[/\\w\\d\\[\\]()@-]*[>%$#]",starts:{end:"$",subLanguage:"bash"}}]}}}()); +hljs.registerLanguage("sql",function(){"use strict";return function(e){var t=e.COMMENT("--","$");return{name:"SQL",case_insensitive:!0,illegal:/[<>{}*]/,contains:[{beginKeywords:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment values with",end:/;/,endsWithParent:!0,keywords:{$pattern:/[\w\.]+/,keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias all allocate allow alter always analyze ancillary and anti any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound bucket buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain explode export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour hours http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lateral lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minutes minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second seconds section securefile security seed segment select self semi sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tablesample tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace window with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp tinyint varchar varchar2 varying void"},contains:[{className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{className:"string",begin:'"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:"`",end:"`"},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]}}}()); +hljs.registerLanguage("swift",function(){"use strict";return function(e){var i={keyword:"#available #colorLiteral #column #else #elseif #endif #file #fileLiteral #function #if #imageLiteral #line #selector #sourceLocation _ __COLUMN__ __FILE__ __FUNCTION__ __LINE__ Any as as! as? associatedtype associativity break case catch class continue convenience default defer deinit didSet do dynamic dynamicType else enum extension fallthrough false fileprivate final for func get guard if import in indirect infix init inout internal is lazy left let mutating nil none nonmutating open operator optional override postfix precedence prefix private protocol Protocol public repeat required rethrows return right self Self set static struct subscript super switch throw throws true try try! try? Type typealias unowned var weak where while willSet",literal:"true false nil",built_in:"abs advance alignof alignofValue anyGenerator assert assertionFailure bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c compactMap contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal fatalError filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced isUniquelyReferencedNonObjC join lazy lexicographicalCompare map max maxElement min minElement numericCast overlaps partition posix precondition preconditionFailure print println quickSort readLine reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith stride strideof strideofValue swap toString transcode underestimateCount unsafeAddressOf unsafeBitCast unsafeDowncast unsafeUnwrap unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafeMutablePointer withUnsafeMutablePointers withUnsafePointer withUnsafePointers withVaList zip"},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),t={className:"subst",begin:/\\\(/,end:"\\)",keywords:i,contains:[]},a={className:"string",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:/"""/,end:/"""/},{begin:/"/,end:/"/}]},r={className:"number",begin:"\\b([\\d_]+(\\.[\\deE_]+)?|0x[a-fA-F0-9_]+(\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b",relevance:0};return t.contains=[r],{name:"Swift",keywords:i,contains:[a,e.C_LINE_COMMENT_MODE,n,{className:"type",begin:"\\b[A-Z][\\wÀ-ʸ']*[!?]"},{className:"type",begin:"\\b[A-Z][\\wÀ-ʸ']*",relevance:0},r,{className:"function",beginKeywords:"func",end:"{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{begin://},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:i,contains:["self",r,a,e.C_BLOCK_COMMENT_MODE,{begin:":"}],illegal:/["']/}],illegal:/\[|%/},{className:"class",beginKeywords:"struct protocol class extension enum",keywords:i,end:"\\{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/})]},{className:"meta",begin:"(@discardableResult|@warn_unused_result|@exported|@lazy|@noescape|@NSCopying|@NSManaged|@objc|@objcMembers|@convention|@required|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix|@autoclosure|@testable|@available|@nonobjc|@NSApplicationMain|@UIApplicationMain|@dynamicMemberLookup|@propertyWrapper)\\b"},{beginKeywords:"import",end:/$/,contains:[e.C_LINE_COMMENT_MODE,n]}]}}}()); +hljs.registerLanguage("typescript",function(){"use strict";const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);return function(r){var t={$pattern:"[A-Za-z$_][0-9A-Za-z$_]*",keyword:e.concat(["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"]).join(" "),literal:n.join(" "),built_in:a.concat(["any","void","number","boolean","string","object","never","enum"]).join(" ")},s={className:"meta",begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},i={className:"number",variants:[{begin:"\\b(0[bB][01]+)n?"},{begin:"\\b(0[oO][0-7]+)n?"},{begin:r.C_NUMBER_RE+"n?"}],relevance:0},o={className:"subst",begin:"\\$\\{",end:"\\}",keywords:t,contains:[]},c={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[r.BACKSLASH_ESCAPE,o],subLanguage:"xml"}},l={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[r.BACKSLASH_ESCAPE,o],subLanguage:"css"}},E={className:"string",begin:"`",end:"`",contains:[r.BACKSLASH_ESCAPE,o]};o.contains=[r.APOS_STRING_MODE,r.QUOTE_STRING_MODE,c,l,E,i,r.REGEXP_MODE];var d={begin:"\\(",end:/\)/,keywords:t,contains:["self",r.QUOTE_STRING_MODE,r.APOS_STRING_MODE,r.NUMBER_MODE]},u={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,contains:[r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,s,d]};return{name:"TypeScript",aliases:["ts"],keywords:t,contains:[r.SHEBANG(),{className:"meta",begin:/^\s*['"]use strict['"]/},r.APOS_STRING_MODE,r.QUOTE_STRING_MODE,c,l,E,r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,i,{begin:"("+r.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,r.REGEXP_MODE,{className:"function",begin:"(\\([^(]*(\\([^(]*(\\([^(]*\\))?\\))?\\)|"+r.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:r.UNDERSCORE_IDENT_RE},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,contains:d.contains}]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[\{;]/,excludeEnd:!0,keywords:t,contains:["self",r.inherit(r.TITLE_MODE,{begin:"[A-Za-z$_][0-9A-Za-z$_]*"}),u],illegal:/%/,relevance:0},{beginKeywords:"constructor",end:/[\{;]/,excludeEnd:!0,contains:["self",u]},{begin:/module\./,keywords:{built_in:"module"},relevance:0},{beginKeywords:"module",end:/\{/,excludeEnd:!0},{beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:"interface extends"},{begin:/\$[(.]/},{begin:"\\."+r.IDENT_RE,relevance:0},s,d]}}}()); +hljs.registerLanguage("yaml",function(){"use strict";return function(e){var n="true false yes no null",a="[\\w#;/?:@&=+$,.~*\\'()[\\]]+",s={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:"{{",end:"}}"},{begin:"%{",end:"}"}]}]},i=e.inherit(s,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={end:",",endsWithParent:!0,excludeEnd:!0,contains:[],keywords:n,relevance:0},t={begin:"{",end:"}",contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]",contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---s*$",relevance:10},{className:"string",begin:"[\\|>]([0-9]?[+-])?[ ]*\\n( *)[\\S ]+\\n(\\2[\\S ]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type",begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"\\-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},{className:"number",begin:e.C_NUMBER_RE+"\\b"},t,g,s],c=[...b];return c.pop(),c.push(i),l.contains=c,{name:"YAML",case_insensitive:!0,aliases:["yml","YAML"],contains:b}}}()); +hljs.registerLanguage("armasm",function(){"use strict";return function(s){const e={variants:[s.COMMENT("^[ \\t]*(?=#)","$",{relevance:0,excludeBegin:!0}),s.COMMENT("[;@]","$",{relevance:0}),s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]};return{name:"ARM Assembly",case_insensitive:!0,aliases:["arm"],keywords:{$pattern:"\\.?"+s.IDENT_RE,meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND ",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @"},contains:[{className:"keyword",begin:"\\b(adc|(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|wfe|wfi|yield)(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?[sptrx]?(?=\\s)"},e,s.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{begin:"[#$=]?0x[0-9a-f]+"},{begin:"[#$=]?0b[01]+"},{begin:"[#$=]\\d+"},{begin:"\\b\\d+"}],relevance:0},{className:"symbol",variants:[{begin:"^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^[a-z_\\.\\$][a-z0-9_\\.\\$]+"},{begin:"[=#]\\w+"}],relevance:0}]}}}()); +hljs.registerLanguage("d",function(){"use strict";return function(e){var a={$pattern:e.UNDERSCORE_IDENT_RE,keyword:"abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__",built_in:"bool cdouble cent cfloat char creal dchar delegate double dstring float function idouble ifloat ireal long real short string ubyte ucent uint ulong ushort wchar wstring",literal:"false null true"},d="((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))",n="\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};",t={className:"number",begin:"\\b"+d+"(L|u|U|Lu|LU|uL|UL)?",relevance:0},_={className:"number",begin:"\\b(((0[xX](([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)\\.([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)|\\.?([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))[pP][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))|((0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(\\.\\d*|([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)))|\\d+\\.(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)|\\.(0|[1-9][\\d_]*)([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))?))([fF]|L|i|[fF]i|Li)?|"+d+"(i|[fF]i|Li))",relevance:0},r={className:"string",begin:"'("+n+"|.)",end:"'",illegal:"."},i={className:"string",begin:'"',contains:[{begin:n,relevance:0}],end:'"[cwd]?'},s=e.COMMENT("\\/\\+","\\+\\/",{contains:["self"],relevance:10});return{name:"D",keywords:a,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,{className:"string",begin:'x"[\\da-fA-F\\s\\n\\r]*"[cwd]?',relevance:10},i,{className:"string",begin:'[rq]"',end:'"[cwd]?',relevance:5},{className:"string",begin:"`",end:"`[cwd]?"},{className:"string",begin:'q"\\{',end:'\\}"'},_,t,r,{className:"meta",begin:"^#!",end:"$",relevance:5},{className:"meta",begin:"#(line)",end:"$",relevance:5},{className:"keyword",begin:"@[a-zA-Z_][a-zA-Z_\\d]*"}]}}}()); +hljs.registerLanguage("handlebars",function(){"use strict";function e(...e){return e.map(e=>(function(e){return e?"string"==typeof e?e:e.source:null})(e)).join("")}return function(n){const a={"builtin-name":"action bindattr collection component concat debugger each each-in get hash if in input link-to loc log lookup mut outlet partial query-params render template textarea unbound unless view with yield"},t=/\[.*?\]/,s=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,i=e("(",/'.*?'/,"|",/".*?"/,"|",t,"|",s,"|",/\.|\//,")+"),r=e("(",t,"|",s,")(?==)"),l={begin:i,lexemes:/[\w.\/]+/},c=n.inherit(l,{keywords:{literal:"true false undefined null"}}),o={begin:/\(/,end:/\)/},m={className:"attr",begin:r,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[n.NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,c,o]}}},d={contains:[n.NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},m,c,o],returnEnd:!0},g=n.inherit(l,{className:"name",keywords:a,starts:n.inherit(d,{end:/\)/})});o.contains=[g];const u=n.inherit(l,{keywords:a,className:"name",starts:n.inherit(d,{end:/}}/})}),b=n.inherit(l,{keywords:a,className:"name"}),h=n.inherit(l,{className:"name",keywords:a,starts:n.inherit(d,{end:/}}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},n.COMMENT(/\{\{!--/,/--\}\}/),n.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[u],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[b]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[u]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[b]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[h]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[h]}]}}}()); +hljs.registerLanguage("haskell",function(){"use strict";return function(e){var n={variants:[e.COMMENT("--","$"),e.COMMENT("{-","-}",{contains:["self"]})]},i={className:"meta",begin:"{-#",end:"#-}"},a={className:"meta",begin:"^#",end:"$"},s={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},l={begin:"\\(",end:"\\)",illegal:'"',contains:[i,a,{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{begin:"[_a-z][\\w']*"}),n]};return{name:"Haskell",aliases:["hs"],keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",contains:[{beginKeywords:"module",end:"where",keywords:"module where",contains:[l,n],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$",keywords:"import qualified as hiding",contains:[l,n],illegal:"\\W\\.|;"},{className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where",keywords:"class family instance where",contains:[s,l,n]},{className:"class",begin:"\\b(data|(new)?type)\\b",end:"$",keywords:"data family type newtype deriving",contains:[i,s,l,{begin:"{",end:"}",contains:l.contains},n]},{beginKeywords:"default",end:"$",contains:[s,l,n]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,n]},{begin:"\\bforeign\\b",end:"$",keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",contains:[s,e.QUOTE_STRING_MODE,n]},{className:"meta",begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$"},i,a,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,s,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),n,{begin:"->|<-"}]}}}()); +hljs.registerLanguage("julia",function(){"use strict";return function(e){var r="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",t={$pattern:r,keyword:"in isa where baremodule begin break catch ccall const continue do else elseif end export false finally for function global if import importall let local macro module quote return true try using while type immutable abstract bitstype typealias ",literal:"true false ARGS C_NULL DevNull ENDIAN_BOM ENV I Inf Inf16 Inf32 Inf64 InsertionSort JULIA_HOME LOAD_PATH MergeSort NaN NaN16 NaN32 NaN64 PROGRAM_FILE QuickSort RoundDown RoundFromZero RoundNearest RoundNearestTiesAway RoundNearestTiesUp RoundToZero RoundUp STDERR STDIN STDOUT VERSION catalan e|0 eu|0 eulergamma golden im nothing pi γ π φ ",built_in:"ANY AbstractArray AbstractChannel AbstractFloat AbstractMatrix AbstractRNG AbstractSerializer AbstractSet AbstractSparseArray AbstractSparseMatrix AbstractSparseVector AbstractString AbstractUnitRange AbstractVecOrMat AbstractVector Any ArgumentError Array AssertionError Associative Base64DecodePipe Base64EncodePipe Bidiagonal BigFloat BigInt BitArray BitMatrix BitVector Bool BoundsError BufferStream CachingPool CapturedException CartesianIndex CartesianRange Cchar Cdouble Cfloat Channel Char Cint Cintmax_t Clong Clonglong ClusterManager Cmd CodeInfo Colon Complex Complex128 Complex32 Complex64 CompositeException Condition ConjArray ConjMatrix ConjVector Cptrdiff_t Cshort Csize_t Cssize_t Cstring Cuchar Cuint Cuintmax_t Culong Culonglong Cushort Cwchar_t Cwstring DataType Date DateFormat DateTime DenseArray DenseMatrix DenseVecOrMat DenseVector Diagonal Dict DimensionMismatch Dims DirectIndexString Display DivideError DomainError EOFError EachLine Enum Enumerate ErrorException Exception ExponentialBackOff Expr Factorization FileMonitor Float16 Float32 Float64 Function Future GlobalRef GotoNode HTML Hermitian IO IOBuffer IOContext IOStream IPAddr IPv4 IPv6 IndexCartesian IndexLinear IndexStyle InexactError InitError Int Int128 Int16 Int32 Int64 Int8 IntSet Integer InterruptException InvalidStateException Irrational KeyError LabelNode LinSpace LineNumberNode LoadError LowerTriangular MIME Matrix MersenneTwister Method MethodError MethodTable Module NTuple NewvarNode NullException Nullable Number ObjectIdDict OrdinalRange OutOfMemoryError OverflowError Pair ParseError PartialQuickSort PermutedDimsArray Pipe PollingFileWatcher ProcessExitedException Ptr QuoteNode RandomDevice Range RangeIndex Rational RawFD ReadOnlyMemoryError Real ReentrantLock Ref Regex RegexMatch RemoteChannel RemoteException RevString RoundingMode RowVector SSAValue SegmentationFault SerializationState Set SharedArray SharedMatrix SharedVector Signed SimpleVector Slot SlotNumber SparseMatrixCSC SparseVector StackFrame StackOverflowError StackTrace StepRange StepRangeLen StridedArray StridedMatrix StridedVecOrMat StridedVector String SubArray SubString SymTridiagonal Symbol Symmetric SystemError TCPSocket Task Text TextDisplay Timer Tridiagonal Tuple Type TypeError TypeMapEntry TypeMapLevel TypeName TypeVar TypedSlot UDPSocket UInt UInt128 UInt16 UInt32 UInt64 UInt8 UndefRefError UndefVarError UnicodeError UniformScaling Union UnionAll UnitRange Unsigned UpperTriangular Val Vararg VecElement VecOrMat Vector VersionNumber Void WeakKeyDict WeakRef WorkerConfig WorkerPool "},a={keywords:t,illegal:/<\//},n={className:"subst",begin:/\$\(/,end:/\)/,keywords:t},o={className:"variable",begin:"\\$"+r},i={className:"string",contains:[e.BACKSLASH_ESCAPE,n,o],variants:[{begin:/\w*"""/,end:/"""\w*/,relevance:10},{begin:/\w*"/,end:/"\w*/}]},l={className:"string",contains:[e.BACKSLASH_ESCAPE,n,o],begin:"`",end:"`"},s={className:"meta",begin:"@"+r};return a.name="Julia",a.contains=[{className:"number",begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/,relevance:0},{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},i,l,s,{className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#",end:"$"}]},e.HASH_COMMENT_MODE,{className:"keyword",begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/}],n.contains=a.contains,a}}()); +hljs.registerLanguage("nim",function(){"use strict";return function(e){return{name:"Nim",aliases:["nim"],keywords:{keyword:"addr and as asm bind block break case cast const continue converter discard distinct div do elif else end enum except export finally for from func generic if import in include interface is isnot iterator let macro method mixin mod nil not notin object of or out proc ptr raise ref return shl shr static template try tuple type using var when while with without xor yield",literal:"shared guarded stdin stdout stderr result true false",built_in:"int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float float32 float64 bool char string cstring pointer expr stmt void auto any range array openarray varargs seq set clong culong cchar cschar cshort cint csize clonglong cfloat cdouble clongdouble cuchar cushort cuint culonglong cstringarray semistatic"},contains:[{className:"meta",begin:/{\./,end:/\.}/,relevance:10},{className:"string",begin:/[a-zA-Z]\w*"/,end:/"/,contains:[{begin:/""/}]},{className:"string",begin:/([a-zA-Z]\w*)?"""/,end:/"""/},e.QUOTE_STRING_MODE,{className:"type",begin:/\b[A-Z]\w+\b/,relevance:0},{className:"number",relevance:0,variants:[{begin:/\b(0[xX][0-9a-fA-F][_0-9a-fA-F]*)('?[iIuU](8|16|32|64))?/},{begin:/\b(0o[0-7][_0-7]*)('?[iIuUfF](8|16|32|64))?/},{begin:/\b(0(b|B)[01][_01]*)('?[iIuUfF](8|16|32|64))?/},{begin:/\b(\d[_\d]*)('?[iIuUfF](8|16|32|64))?/}]},e.HASH_COMMENT_MODE]}}}()); +hljs.registerLanguage("r",function(){"use strict";return function(e){var n="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{name:"R",contains:[e.HASH_COMMENT_MODE,{begin:n,keywords:{$pattern:n,keyword:"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10"},relevance:0},{className:"number",begin:"0[xX][0-9a-fA-F]+[Li]?\\b",relevance:0},{className:"number",begin:"\\d+(?:[eE][+\\-]?\\d*)?L\\b",relevance:0},{className:"number",begin:"\\d+\\.(?!\\d)(?:i\\b)?",relevance:0},{className:"number",begin:"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{className:"number",begin:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{begin:"`",end:"`",relevance:0},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]}]}}}()); +hljs.registerLanguage("scala",function(){"use strict";return function(e){var n={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"},{begin:"\\${",end:"}"}]},a={className:"string",variants:[{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:'"""',end:'"""',relevance:10},{begin:'[a-z]+"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,n]},{className:"string",begin:'[a-z]+"""',end:'"""',contains:[n],relevance:10}]},s={className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},t={className:"title",begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/,relevance:0},i={className:"class",beginKeywords:"class object trait type",end:/[:={\[\n;]/,excludeEnd:!0,contains:[{beginKeywords:"extends with",relevance:10},{begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[s]},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[s]},t]},l={className:"function",beginKeywords:"def",end:/[:={\[(\n;]/,excludeEnd:!0,contains:[t]};return{name:"Scala",keywords:{literal:"true false null",keyword:"type yield lazy override def with val var sealed abstract private trait object if forSome for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{className:"symbol",begin:"'\\w[\\w\\d_]*(?!')"},s,l,i,e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"}]}}}()); +hljs.registerLanguage("x86asm",function(){"use strict";return function(s){return{name:"Intel x86 Assembly",case_insensitive:!0,keywords:{$pattern:"[.%]?"+s.IDENT_RE,keyword:"lock rep repe repz repne repnz xaquire xrelease bnd nobnd aaa aad aam aas adc add and arpl bb0_reset bb1_reset bound bsf bsr bswap bt btc btr bts call cbw cdq cdqe clc cld cli clts cmc cmp cmpsb cmpsd cmpsq cmpsw cmpxchg cmpxchg486 cmpxchg8b cmpxchg16b cpuid cpu_read cpu_write cqo cwd cwde daa das dec div dmint emms enter equ f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcmovb fcmovbe fcmove fcmovnb fcmovnbe fcmovne fcmovnu fcmovu fcom fcomi fcomip fcomp fcompp fcos fdecstp fdisi fdiv fdivp fdivr fdivrp femms feni ffree ffreep fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisttp fisub fisubr fld fld1 fldcw fldenv fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fndisi fneni fninit fnop fnsave fnstcw fnstenv fnstsw fpatan fprem fprem1 fptan frndint frstor fsave fscale fsetpm fsin fsincos fsqrt fst fstcw fstenv fstp fstsw fsub fsubp fsubr fsubrp ftst fucom fucomi fucomip fucomp fucompp fxam fxch fxtract fyl2x fyl2xp1 hlt ibts icebp idiv imul in inc incbin insb insd insw int int01 int1 int03 int3 into invd invpcid invlpg invlpga iret iretd iretq iretw jcxz jecxz jrcxz jmp jmpe lahf lar lds lea leave les lfence lfs lgdt lgs lidt lldt lmsw loadall loadall286 lodsb lodsd lodsq lodsw loop loope loopne loopnz loopz lsl lss ltr mfence monitor mov movd movq movsb movsd movsq movsw movsx movsxd movzx mul mwait neg nop not or out outsb outsd outsw packssdw packsswb packuswb paddb paddd paddsb paddsiw paddsw paddusb paddusw paddw pand pandn pause paveb pavgusb pcmpeqb pcmpeqd pcmpeqw pcmpgtb pcmpgtd pcmpgtw pdistib pf2id pfacc pfadd pfcmpeq pfcmpge pfcmpgt pfmax pfmin pfmul pfrcp pfrcpit1 pfrcpit2 pfrsqit1 pfrsqrt pfsub pfsubr pi2fd pmachriw pmaddwd pmagw pmulhriw pmulhrwa pmulhrwc pmulhw pmullw pmvgezb pmvlzb pmvnzb pmvzb pop popa popad popaw popf popfd popfq popfw por prefetch prefetchw pslld psllq psllw psrad psraw psrld psrlq psrlw psubb psubd psubsb psubsiw psubsw psubusb psubusw psubw punpckhbw punpckhdq punpckhwd punpcklbw punpckldq punpcklwd push pusha pushad pushaw pushf pushfd pushfq pushfw pxor rcl rcr rdshr rdmsr rdpmc rdtsc rdtscp ret retf retn rol ror rdm rsdc rsldt rsm rsts sahf sal salc sar sbb scasb scasd scasq scasw sfence sgdt shl shld shr shrd sidt sldt skinit smi smint smintold smsw stc std sti stosb stosd stosq stosw str sub svdc svldt svts swapgs syscall sysenter sysexit sysret test ud0 ud1 ud2b ud2 ud2a umov verr verw fwait wbinvd wrshr wrmsr xadd xbts xchg xlatb xlat xor cmove cmovz cmovne cmovnz cmova cmovnbe cmovae cmovnb cmovb cmovnae cmovbe cmovna cmovg cmovnle cmovge cmovnl cmovl cmovnge cmovle cmovng cmovc cmovnc cmovo cmovno cmovs cmovns cmovp cmovpe cmovnp cmovpo je jz jne jnz ja jnbe jae jnb jb jnae jbe jna jg jnle jge jnl jl jnge jle jng jc jnc jo jno js jns jpo jnp jpe jp sete setz setne setnz seta setnbe setae setnb setnc setb setnae setcset setbe setna setg setnle setge setnl setl setnge setle setng sets setns seto setno setpe setp setpo setnp addps addss andnps andps cmpeqps cmpeqss cmpleps cmpless cmpltps cmpltss cmpneqps cmpneqss cmpnleps cmpnless cmpnltps cmpnltss cmpordps cmpordss cmpunordps cmpunordss cmpps cmpss comiss cvtpi2ps cvtps2pi cvtsi2ss cvtss2si cvttps2pi cvttss2si divps divss ldmxcsr maxps maxss minps minss movaps movhps movlhps movlps movhlps movmskps movntps movss movups mulps mulss orps rcpps rcpss rsqrtps rsqrtss shufps sqrtps sqrtss stmxcsr subps subss ucomiss unpckhps unpcklps xorps fxrstor fxrstor64 fxsave fxsave64 xgetbv xsetbv xsave xsave64 xsaveopt xsaveopt64 xrstor xrstor64 prefetchnta prefetcht0 prefetcht1 prefetcht2 maskmovq movntq pavgb pavgw pextrw pinsrw pmaxsw pmaxub pminsw pminub pmovmskb pmulhuw psadbw pshufw pf2iw pfnacc pfpnacc pi2fw pswapd maskmovdqu clflush movntdq movnti movntpd movdqa movdqu movdq2q movq2dq paddq pmuludq pshufd pshufhw pshuflw pslldq psrldq psubq punpckhqdq punpcklqdq addpd addsd andnpd andpd cmpeqpd cmpeqsd cmplepd cmplesd cmpltpd cmpltsd cmpneqpd cmpneqsd cmpnlepd cmpnlesd cmpnltpd cmpnltsd cmpordpd cmpordsd cmpunordpd cmpunordsd cmppd comisd cvtdq2pd cvtdq2ps cvtpd2dq cvtpd2pi cvtpd2ps cvtpi2pd cvtps2dq cvtps2pd cvtsd2si cvtsd2ss cvtsi2sd cvtss2sd cvttpd2pi cvttpd2dq cvttps2dq cvttsd2si divpd divsd maxpd maxsd minpd minsd movapd movhpd movlpd movmskpd movupd mulpd mulsd orpd shufpd sqrtpd sqrtsd subpd subsd ucomisd unpckhpd unpcklpd xorpd addsubpd addsubps haddpd haddps hsubpd hsubps lddqu movddup movshdup movsldup clgi stgi vmcall vmclear vmfunc vmlaunch vmload vmmcall vmptrld vmptrst vmread vmresume vmrun vmsave vmwrite vmxoff vmxon invept invvpid pabsb pabsw pabsd palignr phaddw phaddd phaddsw phsubw phsubd phsubsw pmaddubsw pmulhrsw pshufb psignb psignw psignd extrq insertq movntsd movntss lzcnt blendpd blendps blendvpd blendvps dppd dpps extractps insertps movntdqa mpsadbw packusdw pblendvb pblendw pcmpeqq pextrb pextrd pextrq phminposuw pinsrb pinsrd pinsrq pmaxsb pmaxsd pmaxud pmaxuw pminsb pminsd pminud pminuw pmovsxbw pmovsxbd pmovsxbq pmovsxwd pmovsxwq pmovsxdq pmovzxbw pmovzxbd pmovzxbq pmovzxwd pmovzxwq pmovzxdq pmuldq pmulld ptest roundpd roundps roundsd roundss crc32 pcmpestri pcmpestrm pcmpistri pcmpistrm pcmpgtq popcnt getsec pfrcpv pfrsqrtv movbe aesenc aesenclast aesdec aesdeclast aesimc aeskeygenassist vaesenc vaesenclast vaesdec vaesdeclast vaesimc vaeskeygenassist vaddpd vaddps vaddsd vaddss vaddsubpd vaddsubps vandpd vandps vandnpd vandnps vblendpd vblendps vblendvpd vblendvps vbroadcastss vbroadcastsd vbroadcastf128 vcmpeq_ospd vcmpeqpd vcmplt_ospd vcmpltpd vcmple_ospd vcmplepd vcmpunord_qpd vcmpunordpd vcmpneq_uqpd vcmpneqpd vcmpnlt_uspd vcmpnltpd vcmpnle_uspd vcmpnlepd vcmpord_qpd vcmpordpd vcmpeq_uqpd vcmpnge_uspd vcmpngepd vcmpngt_uspd vcmpngtpd vcmpfalse_oqpd vcmpfalsepd vcmpneq_oqpd vcmpge_ospd vcmpgepd vcmpgt_ospd vcmpgtpd vcmptrue_uqpd vcmptruepd vcmplt_oqpd vcmple_oqpd vcmpunord_spd vcmpneq_uspd vcmpnlt_uqpd vcmpnle_uqpd vcmpord_spd vcmpeq_uspd vcmpnge_uqpd vcmpngt_uqpd vcmpfalse_ospd vcmpneq_ospd vcmpge_oqpd vcmpgt_oqpd vcmptrue_uspd vcmppd vcmpeq_osps vcmpeqps vcmplt_osps vcmpltps vcmple_osps vcmpleps vcmpunord_qps vcmpunordps vcmpneq_uqps vcmpneqps vcmpnlt_usps vcmpnltps vcmpnle_usps vcmpnleps vcmpord_qps vcmpordps vcmpeq_uqps vcmpnge_usps vcmpngeps vcmpngt_usps vcmpngtps vcmpfalse_oqps vcmpfalseps vcmpneq_oqps vcmpge_osps vcmpgeps vcmpgt_osps vcmpgtps vcmptrue_uqps vcmptrueps vcmplt_oqps vcmple_oqps vcmpunord_sps vcmpneq_usps vcmpnlt_uqps vcmpnle_uqps vcmpord_sps vcmpeq_usps vcmpnge_uqps vcmpngt_uqps vcmpfalse_osps vcmpneq_osps vcmpge_oqps vcmpgt_oqps vcmptrue_usps vcmpps vcmpeq_ossd vcmpeqsd vcmplt_ossd vcmpltsd vcmple_ossd vcmplesd vcmpunord_qsd vcmpunordsd vcmpneq_uqsd vcmpneqsd vcmpnlt_ussd vcmpnltsd vcmpnle_ussd vcmpnlesd vcmpord_qsd vcmpordsd vcmpeq_uqsd vcmpnge_ussd vcmpngesd vcmpngt_ussd vcmpngtsd vcmpfalse_oqsd vcmpfalsesd vcmpneq_oqsd vcmpge_ossd vcmpgesd vcmpgt_ossd vcmpgtsd vcmptrue_uqsd vcmptruesd vcmplt_oqsd vcmple_oqsd vcmpunord_ssd vcmpneq_ussd vcmpnlt_uqsd vcmpnle_uqsd vcmpord_ssd vcmpeq_ussd vcmpnge_uqsd vcmpngt_uqsd vcmpfalse_ossd vcmpneq_ossd vcmpge_oqsd vcmpgt_oqsd vcmptrue_ussd vcmpsd vcmpeq_osss vcmpeqss vcmplt_osss vcmpltss vcmple_osss vcmpless vcmpunord_qss vcmpunordss vcmpneq_uqss vcmpneqss vcmpnlt_usss vcmpnltss vcmpnle_usss vcmpnless vcmpord_qss vcmpordss vcmpeq_uqss vcmpnge_usss vcmpngess vcmpngt_usss vcmpngtss vcmpfalse_oqss vcmpfalsess vcmpneq_oqss vcmpge_osss vcmpgess vcmpgt_osss vcmpgtss vcmptrue_uqss vcmptruess vcmplt_oqss vcmple_oqss vcmpunord_sss vcmpneq_usss vcmpnlt_uqss vcmpnle_uqss vcmpord_sss vcmpeq_usss vcmpnge_uqss vcmpngt_uqss vcmpfalse_osss vcmpneq_osss vcmpge_oqss vcmpgt_oqss vcmptrue_usss vcmpss vcomisd vcomiss vcvtdq2pd vcvtdq2ps vcvtpd2dq vcvtpd2ps vcvtps2dq vcvtps2pd vcvtsd2si vcvtsd2ss vcvtsi2sd vcvtsi2ss vcvtss2sd vcvtss2si vcvttpd2dq vcvttps2dq vcvttsd2si vcvttss2si vdivpd vdivps vdivsd vdivss vdppd vdpps vextractf128 vextractps vhaddpd vhaddps vhsubpd vhsubps vinsertf128 vinsertps vlddqu vldqqu vldmxcsr vmaskmovdqu vmaskmovps vmaskmovpd vmaxpd vmaxps vmaxsd vmaxss vminpd vminps vminsd vminss vmovapd vmovaps vmovd vmovq vmovddup vmovdqa vmovqqa vmovdqu vmovqqu vmovhlps vmovhpd vmovhps vmovlhps vmovlpd vmovlps vmovmskpd vmovmskps vmovntdq vmovntqq vmovntdqa vmovntpd vmovntps vmovsd vmovshdup vmovsldup vmovss vmovupd vmovups vmpsadbw vmulpd vmulps vmulsd vmulss vorpd vorps vpabsb vpabsw vpabsd vpacksswb vpackssdw vpackuswb vpackusdw vpaddb vpaddw vpaddd vpaddq vpaddsb vpaddsw vpaddusb vpaddusw vpalignr vpand vpandn vpavgb vpavgw vpblendvb vpblendw vpcmpestri vpcmpestrm vpcmpistri vpcmpistrm vpcmpeqb vpcmpeqw vpcmpeqd vpcmpeqq vpcmpgtb vpcmpgtw vpcmpgtd vpcmpgtq vpermilpd vpermilps vperm2f128 vpextrb vpextrw vpextrd vpextrq vphaddw vphaddd vphaddsw vphminposuw vphsubw vphsubd vphsubsw vpinsrb vpinsrw vpinsrd vpinsrq vpmaddwd vpmaddubsw vpmaxsb vpmaxsw vpmaxsd vpmaxub vpmaxuw vpmaxud vpminsb vpminsw vpminsd vpminub vpminuw vpminud vpmovmskb vpmovsxbw vpmovsxbd vpmovsxbq vpmovsxwd vpmovsxwq vpmovsxdq vpmovzxbw vpmovzxbd vpmovzxbq vpmovzxwd vpmovzxwq vpmovzxdq vpmulhuw vpmulhrsw vpmulhw vpmullw vpmulld vpmuludq vpmuldq vpor vpsadbw vpshufb vpshufd vpshufhw vpshuflw vpsignb vpsignw vpsignd vpslldq vpsrldq vpsllw vpslld vpsllq vpsraw vpsrad vpsrlw vpsrld vpsrlq vptest vpsubb vpsubw vpsubd vpsubq vpsubsb vpsubsw vpsubusb vpsubusw vpunpckhbw vpunpckhwd vpunpckhdq vpunpckhqdq vpunpcklbw vpunpcklwd vpunpckldq vpunpcklqdq vpxor vrcpps vrcpss vrsqrtps vrsqrtss vroundpd vroundps vroundsd vroundss vshufpd vshufps vsqrtpd vsqrtps vsqrtsd vsqrtss vstmxcsr vsubpd vsubps vsubsd vsubss vtestps vtestpd vucomisd vucomiss vunpckhpd vunpckhps vunpcklpd vunpcklps vxorpd vxorps vzeroall vzeroupper pclmullqlqdq pclmulhqlqdq pclmullqhqdq pclmulhqhqdq pclmulqdq vpclmullqlqdq vpclmulhqlqdq vpclmullqhqdq vpclmulhqhqdq vpclmulqdq vfmadd132ps vfmadd132pd vfmadd312ps vfmadd312pd vfmadd213ps vfmadd213pd vfmadd123ps vfmadd123pd vfmadd231ps vfmadd231pd vfmadd321ps vfmadd321pd vfmaddsub132ps vfmaddsub132pd vfmaddsub312ps vfmaddsub312pd vfmaddsub213ps vfmaddsub213pd vfmaddsub123ps vfmaddsub123pd vfmaddsub231ps vfmaddsub231pd vfmaddsub321ps vfmaddsub321pd vfmsub132ps vfmsub132pd vfmsub312ps vfmsub312pd vfmsub213ps vfmsub213pd vfmsub123ps vfmsub123pd vfmsub231ps vfmsub231pd vfmsub321ps vfmsub321pd vfmsubadd132ps vfmsubadd132pd vfmsubadd312ps vfmsubadd312pd vfmsubadd213ps vfmsubadd213pd vfmsubadd123ps vfmsubadd123pd vfmsubadd231ps vfmsubadd231pd vfmsubadd321ps vfmsubadd321pd vfnmadd132ps vfnmadd132pd vfnmadd312ps vfnmadd312pd vfnmadd213ps vfnmadd213pd vfnmadd123ps vfnmadd123pd vfnmadd231ps vfnmadd231pd vfnmadd321ps vfnmadd321pd vfnmsub132ps vfnmsub132pd vfnmsub312ps vfnmsub312pd vfnmsub213ps vfnmsub213pd vfnmsub123ps vfnmsub123pd vfnmsub231ps vfnmsub231pd vfnmsub321ps vfnmsub321pd vfmadd132ss vfmadd132sd vfmadd312ss vfmadd312sd vfmadd213ss vfmadd213sd vfmadd123ss vfmadd123sd vfmadd231ss vfmadd231sd vfmadd321ss vfmadd321sd vfmsub132ss vfmsub132sd vfmsub312ss vfmsub312sd vfmsub213ss vfmsub213sd vfmsub123ss vfmsub123sd vfmsub231ss vfmsub231sd vfmsub321ss vfmsub321sd vfnmadd132ss vfnmadd132sd vfnmadd312ss vfnmadd312sd vfnmadd213ss vfnmadd213sd vfnmadd123ss vfnmadd123sd vfnmadd231ss vfnmadd231sd vfnmadd321ss vfnmadd321sd vfnmsub132ss vfnmsub132sd vfnmsub312ss vfnmsub312sd vfnmsub213ss vfnmsub213sd vfnmsub123ss vfnmsub123sd vfnmsub231ss vfnmsub231sd vfnmsub321ss vfnmsub321sd rdfsbase rdgsbase rdrand wrfsbase wrgsbase vcvtph2ps vcvtps2ph adcx adox rdseed clac stac xstore xcryptecb xcryptcbc xcryptctr xcryptcfb xcryptofb montmul xsha1 xsha256 llwpcb slwpcb lwpval lwpins vfmaddpd vfmaddps vfmaddsd vfmaddss vfmaddsubpd vfmaddsubps vfmsubaddpd vfmsubaddps vfmsubpd vfmsubps vfmsubsd vfmsubss vfnmaddpd vfnmaddps vfnmaddsd vfnmaddss vfnmsubpd vfnmsubps vfnmsubsd vfnmsubss vfrczpd vfrczps vfrczsd vfrczss vpcmov vpcomb vpcomd vpcomq vpcomub vpcomud vpcomuq vpcomuw vpcomw vphaddbd vphaddbq vphaddbw vphadddq vphaddubd vphaddubq vphaddubw vphaddudq vphadduwd vphadduwq vphaddwd vphaddwq vphsubbw vphsubdq vphsubwd vpmacsdd vpmacsdqh vpmacsdql vpmacssdd vpmacssdqh vpmacssdql vpmacsswd vpmacssww vpmacswd vpmacsww vpmadcsswd vpmadcswd vpperm vprotb vprotd vprotq vprotw vpshab vpshad vpshaq vpshaw vpshlb vpshld vpshlq vpshlw vbroadcasti128 vpblendd vpbroadcastb vpbroadcastw vpbroadcastd vpbroadcastq vpermd vpermpd vpermps vpermq vperm2i128 vextracti128 vinserti128 vpmaskmovd vpmaskmovq vpsllvd vpsllvq vpsravd vpsrlvd vpsrlvq vgatherdpd vgatherqpd vgatherdps vgatherqps vpgatherdd vpgatherqd vpgatherdq vpgatherqq xabort xbegin xend xtest andn bextr blci blcic blsi blsic blcfill blsfill blcmsk blsmsk blsr blcs bzhi mulx pdep pext rorx sarx shlx shrx tzcnt tzmsk t1mskc valignd valignq vblendmpd vblendmps vbroadcastf32x4 vbroadcastf64x4 vbroadcasti32x4 vbroadcasti64x4 vcompresspd vcompressps vcvtpd2udq vcvtps2udq vcvtsd2usi vcvtss2usi vcvttpd2udq vcvttps2udq vcvttsd2usi vcvttss2usi vcvtudq2pd vcvtudq2ps vcvtusi2sd vcvtusi2ss vexpandpd vexpandps vextractf32x4 vextractf64x4 vextracti32x4 vextracti64x4 vfixupimmpd vfixupimmps vfixupimmsd vfixupimmss vgetexppd vgetexpps vgetexpsd vgetexpss vgetmantpd vgetmantps vgetmantsd vgetmantss vinsertf32x4 vinsertf64x4 vinserti32x4 vinserti64x4 vmovdqa32 vmovdqa64 vmovdqu32 vmovdqu64 vpabsq vpandd vpandnd vpandnq vpandq vpblendmd vpblendmq vpcmpltd vpcmpled vpcmpneqd vpcmpnltd vpcmpnled vpcmpd vpcmpltq vpcmpleq vpcmpneqq vpcmpnltq vpcmpnleq vpcmpq vpcmpequd vpcmpltud vpcmpleud vpcmpnequd vpcmpnltud vpcmpnleud vpcmpud vpcmpequq vpcmpltuq vpcmpleuq vpcmpnequq vpcmpnltuq vpcmpnleuq vpcmpuq vpcompressd vpcompressq vpermi2d vpermi2pd vpermi2ps vpermi2q vpermt2d vpermt2pd vpermt2ps vpermt2q vpexpandd vpexpandq vpmaxsq vpmaxuq vpminsq vpminuq vpmovdb vpmovdw vpmovqb vpmovqd vpmovqw vpmovsdb vpmovsdw vpmovsqb vpmovsqd vpmovsqw vpmovusdb vpmovusdw vpmovusqb vpmovusqd vpmovusqw vpord vporq vprold vprolq vprolvd vprolvq vprord vprorq vprorvd vprorvq vpscatterdd vpscatterdq vpscatterqd vpscatterqq vpsraq vpsravq vpternlogd vpternlogq vptestmd vptestmq vptestnmd vptestnmq vpxord vpxorq vrcp14pd vrcp14ps vrcp14sd vrcp14ss vrndscalepd vrndscaleps vrndscalesd vrndscaless vrsqrt14pd vrsqrt14ps vrsqrt14sd vrsqrt14ss vscalefpd vscalefps vscalefsd vscalefss vscatterdpd vscatterdps vscatterqpd vscatterqps vshuff32x4 vshuff64x2 vshufi32x4 vshufi64x2 kandnw kandw kmovw knotw kortestw korw kshiftlw kshiftrw kunpckbw kxnorw kxorw vpbroadcastmb2q vpbroadcastmw2d vpconflictd vpconflictq vplzcntd vplzcntq vexp2pd vexp2ps vrcp28pd vrcp28ps vrcp28sd vrcp28ss vrsqrt28pd vrsqrt28ps vrsqrt28sd vrsqrt28ss vgatherpf0dpd vgatherpf0dps vgatherpf0qpd vgatherpf0qps vgatherpf1dpd vgatherpf1dps vgatherpf1qpd vgatherpf1qps vscatterpf0dpd vscatterpf0dps vscatterpf0qpd vscatterpf0qps vscatterpf1dpd vscatterpf1dps vscatterpf1qpd vscatterpf1qps prefetchwt1 bndmk bndcl bndcu bndcn bndmov bndldx bndstx sha1rnds4 sha1nexte sha1msg1 sha1msg2 sha256rnds2 sha256msg1 sha256msg2 hint_nop0 hint_nop1 hint_nop2 hint_nop3 hint_nop4 hint_nop5 hint_nop6 hint_nop7 hint_nop8 hint_nop9 hint_nop10 hint_nop11 hint_nop12 hint_nop13 hint_nop14 hint_nop15 hint_nop16 hint_nop17 hint_nop18 hint_nop19 hint_nop20 hint_nop21 hint_nop22 hint_nop23 hint_nop24 hint_nop25 hint_nop26 hint_nop27 hint_nop28 hint_nop29 hint_nop30 hint_nop31 hint_nop32 hint_nop33 hint_nop34 hint_nop35 hint_nop36 hint_nop37 hint_nop38 hint_nop39 hint_nop40 hint_nop41 hint_nop42 hint_nop43 hint_nop44 hint_nop45 hint_nop46 hint_nop47 hint_nop48 hint_nop49 hint_nop50 hint_nop51 hint_nop52 hint_nop53 hint_nop54 hint_nop55 hint_nop56 hint_nop57 hint_nop58 hint_nop59 hint_nop60 hint_nop61 hint_nop62 hint_nop63",built_in:"ip eip rip al ah bl bh cl ch dl dh sil dil bpl spl r8b r9b r10b r11b r12b r13b r14b r15b ax bx cx dx si di bp sp r8w r9w r10w r11w r12w r13w r14w r15w eax ebx ecx edx esi edi ebp esp eip r8d r9d r10d r11d r12d r13d r14d r15d rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15 cs ds es fs gs ss st st0 st1 st2 st3 st4 st5 st6 st7 mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7 xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7 xmm8 xmm9 xmm10 xmm11 xmm12 xmm13 xmm14 xmm15 xmm16 xmm17 xmm18 xmm19 xmm20 xmm21 xmm22 xmm23 xmm24 xmm25 xmm26 xmm27 xmm28 xmm29 xmm30 xmm31 ymm0 ymm1 ymm2 ymm3 ymm4 ymm5 ymm6 ymm7 ymm8 ymm9 ymm10 ymm11 ymm12 ymm13 ymm14 ymm15 ymm16 ymm17 ymm18 ymm19 ymm20 ymm21 ymm22 ymm23 ymm24 ymm25 ymm26 ymm27 ymm28 ymm29 ymm30 ymm31 zmm0 zmm1 zmm2 zmm3 zmm4 zmm5 zmm6 zmm7 zmm8 zmm9 zmm10 zmm11 zmm12 zmm13 zmm14 zmm15 zmm16 zmm17 zmm18 zmm19 zmm20 zmm21 zmm22 zmm23 zmm24 zmm25 zmm26 zmm27 zmm28 zmm29 zmm30 zmm31 k0 k1 k2 k3 k4 k5 k6 k7 bnd0 bnd1 bnd2 bnd3 cr0 cr1 cr2 cr3 cr4 cr8 dr0 dr1 dr2 dr3 dr8 tr3 tr4 tr5 tr6 tr7 r0 r1 r2 r3 r4 r5 r6 r7 r0b r1b r2b r3b r4b r5b r6b r7b r0w r1w r2w r3w r4w r5w r6w r7w r0d r1d r2d r3d r4d r5d r6d r7d r0h r1h r2h r3h r0l r1l r2l r3l r4l r5l r6l r7l r8l r9l r10l r11l r12l r13l r14l r15l db dw dd dq dt ddq do dy dz resb resw resd resq rest resdq reso resy resz incbin equ times byte word dword qword nosplit rel abs seg wrt strict near far a32 ptr",meta:"%define %xdefine %+ %undef %defstr %deftok %assign %strcat %strlen %substr %rotate %elif %else %endif %if %ifmacro %ifctx %ifidn %ifidni %ifid %ifnum %ifstr %iftoken %ifempty %ifenv %error %warning %fatal %rep %endrep %include %push %pop %repl %pathsearch %depend %use %arg %stacksize %local %line %comment %endcomment .nolist __FILE__ __LINE__ __SECT__ __BITS__ __OUTPUT_FORMAT__ __DATE__ __TIME__ __DATE_NUM__ __TIME_NUM__ __UTC_DATE__ __UTC_TIME__ __UTC_DATE_NUM__ __UTC_TIME_NUM__ __PASS__ struc endstruc istruc at iend align alignb sectalign daz nodaz up down zero default option assume public bits use16 use32 use64 default section segment absolute extern global common cpu float __utf16__ __utf16le__ __utf16be__ __utf32__ __utf32le__ __utf32be__ __float8__ __float16__ __float32__ __float64__ __float80m__ __float80e__ __float128l__ __float128h__ __Infinity__ __QNaN__ __SNaN__ Inf NaN QNaN SNaN float8 float16 float32 float64 float80m float80e float128l float128h __FLOAT_DAZ__ __FLOAT_ROUND__ __FLOAT__"},contains:[s.COMMENT(";","$",{relevance:0}),{className:"number",variants:[{begin:"\\b(?:([0-9][0-9_]*)?\\.[0-9_]*(?:[eE][+-]?[0-9_]+)?|(0[Xx])?[0-9][0-9_]*\\.?[0-9_]*(?:[pP](?:[+-]?[0-9_]+)?)?)\\b",relevance:0},{begin:"\\$[0-9][0-9A-Fa-f]*",relevance:0},{begin:"\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b"},{begin:"\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b"}]},s.QUOTE_STRING_MODE,{className:"string",variants:[{begin:"'",end:"[^\\\\]'"},{begin:"`",end:"[^\\\\]`"}],relevance:0},{className:"symbol",variants:[{begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)"},{begin:"^\\s*%%[A-Za-z0-9_$#@~.?]*:"}],relevance:0},{className:"subst",begin:"%[0-9]+",relevance:0},{className:"subst",begin:"%!S+",relevance:0},{className:"meta",begin:/^\s*\.[\w_-]+/}]}}}()); \ No newline at end of file diff --git a/v1.5.24/howto.html b/v1.5.24/howto.html new file mode 100644 index 000000000..7ce1bc6e0 --- /dev/null +++ b/v1.5.24/howto.html @@ -0,0 +1,241 @@ + + + + + + How Tos - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

How Tos

+

The following sections provide instructions on accomplish specific goals in Claircore.

+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/howto/add_dist.html b/v1.5.24/howto/add_dist.html new file mode 100644 index 000000000..d253ee5b5 --- /dev/null +++ b/v1.5.24/howto/add_dist.html @@ -0,0 +1,383 @@ + + + + + + Adding Distribution Or Language Support - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Adding Distribution And Language Support

+

Note: If terms in this document sound foreign check out Getting Started to acquaint yourself with "indexing", "scanning", and "matching"

+

The claircore team is always open to adding more distributions and languages to the library.

+

Generally, distributions or languages must provide a security tracker.

+

All officially supported distributions and languages provide a database of security vulnerabilities.

+

These databases are maintained by the distribution or language developers and reflect up-to-date CVE and advisory data for their packages.

+

If your distribution or language does not provide a security tracker or piggy-backs off another distribution's start an issue in our Github issue tracker to discuss further.

+

Implementing an Updater

+

The first step to adding your distribution or language to claircore is getting your security tracker's data ingested by Libvuln.

+

The Updater interfaces are responsible for this task.

+

An implementer must consider several design points:

+
    +
  • Does the security database provide enough information to parse each entry into a claircore.Vulnerability? +
      +
    • Each entry must parse into a claircore.Vulnerability.
    • +
    • Each Vulnerability must contain a package and a repository or distribution field.
    • +
    +
  • +
  • Will the Updater need to be configured at runtime? +
      +
    • Your updater may implement the Configurable interface. Your matcher will have its "Configuration" method called before use, giving you an opportunity for run time configuration.
    • +
    +
  • +
  • What fields in a parsed claircore.Vulnerability will be present when indexing layer artifacts. +
      +
    • When implementing an updater you must keep in mind how packages/distributions/repositories will be parsed during index. +When indexing a layer a common data model must exist between the possible package/distribution/repository and the parsed Vulnerabilitie's package/distribution/repository fields.
    • +
    +
  • +
+

If you are having trouble figuring out these requirements do not hesitate to reach out to us for help.

+

After you have taken the design points into consideration, you are ready to implement your updater.

+

Typically you will create a new package named after the source you are adding support for.

+

Inside this package you can begin implementing the Updater and Updater Set Factory interfaces.

+

Optionally you may implement the Configurable interface if you need runtime configuration.

+

It will undoubtly be helpful to look at the examples in the "ubuntu", "rhel", and "debian" packages to get yourself started.

+

Implementing a Package Scanner

+

At this point you hopefully have your Updater working, writing vulnerability data into Libvuln's database.

+

We can now move our attention to package scanning.

+

A package scanner is responsible for taking a claircore.Layer and parsing the contents for a particular package database or set of files inside the provided tar archive. +Once the target files are located the package scanner should parse these files into claircore.Packages and return a slice of these data structures.

+

Package scanning is context free, meaning no distribution classification has happened yet. +This is because manifests are made up of layers, and a layer which holds a package database may not hold distribution information such as an os-release file. +A package scanner need only parse a target package database and return claircore.Packages.

+

You need to implement the Package Scanner interface to achieve this.

+

Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.

+

Keep in mind that its very common for distributions to utilize an existing package manager such as RPM.

+

If this is the case there's a high likelihood that you can utilize the existing "rpm" or "dpkg" package scanner implementations.

+

Implementing a Distribution Scanner

+

Once the package scanner is implemented, tested, and working you can begin implementing a Distribution Scanner.

+

Implementing a distribution scanner is a design choice. +Distributions and repositories are the way claircore matches packages to vulnerabilities.

+

If your implemented Updater parses vulnerabilities with distribution information you will likely need to implement a distribution scanner. +Likewise, if your Updater parses vulnerabilities with repository information (typical with language vulnerabilities) you will likely need to implement a repository scanner.

+

A distribution scanner, like a package scanner, is provided a claircore.Layer.

+

The distribution scanner will parse the provided tar archive exhaustively searching for any clue that this layer was derived from your distribution. +If you identify that it is, you should return a common distribution used by your Updater implementation. +This ensures that claircore can match the output of your distribution scanner with your parsed vulnerabilities.

+

Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.

+

Implementing a Repository Scanner

+

As mentioned above, implementing a repository scanner is a design choice, often times applicable for language package managers.

+

If your Updater parses vulnerabilities with a repository field you will likely want to implement a repository scanner.

+

A repository scanner is used just like a distribution scanner however you will search for any clues that a layer contains your repository and if so return a common data model identifying the repository.

+

Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.

+

Implementing a Coalescer

+

As you may have noticed, the process of scanning a layer for packages, distribution, and repository information is distinct and separate.

+

At some point, claircore will need to take all the context-free information returned from layer scanners and create a complete view of the manifest. +A coalescer performs this computation.

+

It's unlikely you will need to implement your own coalescer. +Claircore provides a default "linux" coalescer which will work if your package database is rewritten when modified. +For example, if a Dockerfile's RUN command causes a change to to dpkg's /var/lib/dpkg/status database, the resulting manifest will have a copy placed in the associated layer.

+

However, if your package database does not fit into this model, implementing a coalescer may be necessary.

+

To implement a coalescer, several details must be understood:

+
    +
  • Each layer only provides a "piece" of the final manifest. +
      +
    • Because manifests are comprised of multiple copy-on-write layers, some layers may contain package information, distribution information, repository information, any combination of those, or no information at all.
    • +
    +
  • +
  • An OS may have a "dist-upgrade" performed and the implications of this on the package management system is distribution or language dependent. +
      +
    • The coalescer must deal with distribution upgrades in a sane way. +If your distribution or language does a dist-upgrade, are all packages bumped? +Are they simply left alone? +The coalescer must understand what happens and compute the final manifest's content correctly.
    • +
    +
  • +
  • Packages may be removed and added between layers. +
      +
    • When the package database is a regular file on disk, this case is simpler: the database file found in the most recent layer holds the ultimate set of packages for all previous layers. +However, in the case where the package database is realized by adding and removing files on disk it becomes trickier. +Claircore has no special handling of whiteout files, currently. +We will address this in upcoming releases.
    • +
    +
  • +
+

If your distribution or language cannot utilize a default coalescer, you will need to implement the Coalescer interface

+

Implementing or Adding To An Ecosystem

+

An Ecosystem provides a set of coalescers, package scanners, distribution scanners, and repository scanners to Libindex at the time of indexing.

+

Libindex will take the Ecosystem and scan each layer with all provided scanners. +When Libindex is ready to coalesce the results of each scanner into an IndexReport the provided coalescer is given the output of the configured scanners.

+

This allows Libindex to segment the input to the coalescing step to particular scanners that a coalescer understands.

+

For instance, if we only wanted a (fictitious) Haskell coalescer to evaluate artifacts returned from a (fictitious) Haskell package and repository scanner we would create an ecosystem similar to:

+
// HaskellScanner returns a configured PackageScanner.
+func haskellScanner() indexer.PackageScanner { return nil }
+
+// HaskellCoalescer returns a configured Coalescer.
+func haskellCoalescer() indexer.Coalescer { return nil }
+
+// NewEcosystem provides the set of scanners and coalescers for the haskell
+// ecosystem.
+func NewEcosystem(ctx context.Context) *indexer.Ecosystem {
+	return &indexer.Ecosystem{
+		PackageScanners: func(ctx context.Context) ([]indexer.PackageScanner, error) {
+			return []indexer.PackageScanner{haskellScanner()}, nil
+		},
+		DistributionScanners: func(ctx context.Context) ([]indexer.DistributionScanner, error) {
+			return []indexer.DistributionScanner{}, nil
+		},
+		RepositoryScanners: func(ctx context.Context) ([]indexer.RepositoryScanner, error) {
+			return []indexer.RepositoryScanner{}, nil
+		},
+		Coalescer: func(ctx context.Context) (indexer.Coalescer, error) {
+			return haskellCoalescer(), nil
+		},
+	}
+}
+
+
+

This ensures that Libindex will only provide Haskell artifacts to the Haskell coalescer and avoid calling the coalescer with rpm packages for example.

+

If your distribution uses an already implemented package manager such as "rpm" or "dpkg", it's likely you will simply add your scanners to the existing ecosystem in one of those packages.

+

Alternative Implementations

+

This how-to guide is a "perfect world" scenario.

+

Working on claircore has made us realize that this domain is a bit messy. +Security trackers are not developed with package managers in mind, security databases do not follow correct specs, distribution maintainers spin their own tools, etc.

+

We understand that supporting your distribution or language may take some bending of claircore's architecture and business logic. +If this is the case, start a conversation with us. +We are open to design discussions.

+

Getting Help

+

At this point, you have implemented all the necessary components to integrate your distribution or language with claircore.

+

If you struggle with the design phase or are getting stuck at the implementation phases do not hesitate to reach out to us. +Here are some links:

+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/howto_test.go b/v1.5.24/howto_test.go new file mode 100644 index 000000000..5adb5ec78 --- /dev/null +++ b/v1.5.24/howto_test.go @@ -0,0 +1,35 @@ +package docs + +import ( + "context" + + "github.com/quay/claircore/indexer" +) + +// ANCHOR: example +// HaskellScanner returns a configured PackageScanner. +func haskellScanner() indexer.PackageScanner { return nil } + +// HaskellCoalescer returns a configured Coalescer. +func haskellCoalescer() indexer.Coalescer { return nil } + +// NewEcosystem provides the set of scanners and coalescers for the haskell +// ecosystem. +func NewEcosystem(ctx context.Context) *indexer.Ecosystem { + return &indexer.Ecosystem{ + PackageScanners: func(ctx context.Context) ([]indexer.PackageScanner, error) { + return []indexer.PackageScanner{haskellScanner()}, nil + }, + DistributionScanners: func(ctx context.Context) ([]indexer.DistributionScanner, error) { + return []indexer.DistributionScanner{}, nil + }, + RepositoryScanners: func(ctx context.Context) ([]indexer.RepositoryScanner, error) { + return []indexer.RepositoryScanner{}, nil + }, + Coalescer: func(ctx context.Context) (indexer.Coalescer, error) { + return haskellCoalescer(), nil + }, + } +} + +// ANCHOR_END: example diff --git a/v1.5.24/index.html b/v1.5.24/index.html new file mode 100644 index 000000000..b8aba129e --- /dev/null +++ b/v1.5.24/index.html @@ -0,0 +1,273 @@ + + + + + + Introduction - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Claircore

+

Claircore is the engine behind the Clair v4 container security solution. +The Claircore package exports our domain models, interfaces necessary to plug into our business logic, and a default set of implementations. +This default set of implementations define our support matrix and consists of the following distributions and languages:

+
    +
  • Ubuntu
  • +
  • Debian
  • +
  • RHEL
  • +
  • Red Hat Container First content
  • +
  • SUSE
  • +
  • Oracle
  • +
  • Alpine
  • +
  • AWS Linux
  • +
  • VMWare Photon
  • +
  • Python
  • +
  • Java
  • +
  • Go
  • +
  • Ruby
  • +
+

Claircore relies on PostgreSQL for its persistence and the library will handle migrations if configured to do so.

+

The diagram below is a high level overview of Claircore's architecture.

+
+graph LR
+subgraph Indexer
+im[Image Manifest]
+libindex[Libindex]
+iir[IndexReport]
+im --> libindex --> iir
+end
+iir -.-> db[(Database)]
+
+
+graph LR
+subgraph Matcher
+mir[IndexReport]
+libvuln[Libvuln]
+vr[VulnerabilityReport]
+mir --> libvuln --> vr
+end
+db[(Database)] -.-> mir
+
+

When a claircore.Manifest is submitted to Libindex, the library will index its constituent parts and create a report with its findings.

+

When a claircore.IndexReport is provided to Libvuln, the library will discover vulnerabilities affecting it and generate a claircore.VulnerabilityReport.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/introduction.html b/v1.5.24/introduction.html new file mode 100644 index 000000000..b8aba129e --- /dev/null +++ b/v1.5.24/introduction.html @@ -0,0 +1,273 @@ + + + + + + Introduction - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Claircore

+

Claircore is the engine behind the Clair v4 container security solution. +The Claircore package exports our domain models, interfaces necessary to plug into our business logic, and a default set of implementations. +This default set of implementations define our support matrix and consists of the following distributions and languages:

+
    +
  • Ubuntu
  • +
  • Debian
  • +
  • RHEL
  • +
  • Red Hat Container First content
  • +
  • SUSE
  • +
  • Oracle
  • +
  • Alpine
  • +
  • AWS Linux
  • +
  • VMWare Photon
  • +
  • Python
  • +
  • Java
  • +
  • Go
  • +
  • Ruby
  • +
+

Claircore relies on PostgreSQL for its persistence and the library will handle migrations if configured to do so.

+

The diagram below is a high level overview of Claircore's architecture.

+
+graph LR
+subgraph Indexer
+im[Image Manifest]
+libindex[Libindex]
+iir[IndexReport]
+im --> libindex --> iir
+end
+iir -.-> db[(Database)]
+
+
+graph LR
+subgraph Matcher
+mir[IndexReport]
+libvuln[Libvuln]
+vr[VulnerabilityReport]
+mir --> libvuln --> vr
+end
+db[(Database)] -.-> mir
+
+

When a claircore.Manifest is submitted to Libindex, the library will index its constituent parts and create a report with its findings.

+

When a claircore.IndexReport is provided to Libvuln, the library will discover vulnerabilities affecting it and generate a claircore.VulnerabilityReport.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/libindex_test.go b/v1.5.24/libindex_test.go new file mode 100644 index 000000000..53c91fa73 --- /dev/null +++ b/v1.5.24/libindex_test.go @@ -0,0 +1,68 @@ +package docs + +import ( + "context" + "fmt" + "net/http" + + "github.com/quay/claircore" + "github.com/quay/claircore/libindex" +) + +func Example_libindex() { + ctx := context.TODO() + + // ANCHOR: new + opts := new(libindex.Options) + // Populate with desired settings... + lib, err := libindex.New(ctx, opts, http.DefaultClient) + if err != nil { + panic(err) + } + defer lib.Close(ctx) // Remember to cleanup when done. + // ANCHOR_END: new + + // ANCHOR: index + m := new(claircore.Manifest) + // Populate somehow ... + ir, err := lib.Index(ctx, m) + if err != nil { + panic(err) + } + // ANCHOR_END: index + _ = ir + + // ANCHOR: indexreport + ir, ok, err := lib.IndexReport(ctx, m.Hash) + if err != nil { + panic(err) + } + // ANCHOR_END: indexreport + _ = ok + + var prevState string + // ANCHOR: state + state, err := lib.State(ctx) + if err != nil { + panic(err) + } + if state == prevState { + // Nothing to do. + return + } + // Otherwise, re-index manifest. + // ANCHOR_END: state + + // ANCHOR: affectedmanifests + var vulns []claircore.Vulnerability + affected, err := lib.AffectedManifests(ctx, vulns) + if err != nil { + panic(err) + } + for manifest, vulns := range affected.VulnerableManifests { + for _, vuln := range vulns { + fmt.Printf("vuln affecting manifest %s: %+v", manifest, vuln) + } + } + // ANCHOR_END: affectedmanifests +} diff --git a/v1.5.24/libvuln_test.go b/v1.5.24/libvuln_test.go new file mode 100644 index 000000000..1c310ffe8 --- /dev/null +++ b/v1.5.24/libvuln_test.go @@ -0,0 +1,70 @@ +package docs + +import ( + "context" + "fmt" + "net/http" + + "github.com/quay/claircore" + "github.com/quay/claircore/libindex" + "github.com/quay/claircore/libvuln" +) + +func Example_libvuln() { + ctx := context.TODO() + + // ANCHOR: new + opts := new(libvuln.Options) + // Populate with desired settings... + lib, err := libvuln.New(ctx, opts) + if err != nil { + panic(err) + } + defer lib.Close(ctx) + // ANCHOR_END: new + + liopts := new(libindex.Options) + // Populate with desired settings... + indexer, err := libindex.New(ctx, liopts, http.DefaultClient) + if err != nil { + panic(err) + } + defer indexer.Close(ctx) + // ANCHOR: scan + m := new(claircore.Manifest) + // Populate somehow ... + ir, err := indexer.Index(ctx, m) + if err != nil { + panic(err) + } + vr, err := lib.Scan(ctx, ir) + if err != nil { + panic(err) + } + // ANCHOR_END: scan + _ = vr + + // ANCHOR: ops + ops, err := lib.UpdateOperations(ctx, `updater`) + if err != nil { + panic(err) + } + // ANCHOR_END: ops + // ANCHOR: ops_print + for updater, ops := range ops { + fmt.Printf("ops for updater %s, %+v", updater, ops) + } + // ANCHOR_END: ops_print + // ANCHOR: ops_diff + for upd, ops := range ops { + fmt.Printf("updater: %v", upd) + diff, err := lib.UpdateDiff(ctx, ops[1].Ref, ops[0].Ref) + if err != nil { + panic(err) + } + for _, vuln := range diff.Added { + fmt.Printf("vuln %+v added in %v", vuln, diff.Cur.Ref) + } + } + // ANCHOR_END: ops_diff +} diff --git a/v1.5.24/listing_test.go b/v1.5.24/listing_test.go new file mode 100644 index 000000000..91657569a --- /dev/null +++ b/v1.5.24/listing_test.go @@ -0,0 +1,72 @@ +package docs + +import ( + "bufio" + "io/fs" + "os" + "path" + "regexp" + "sort" + "testing" + + "github.com/google/go-cmp/cmp" +) + +// TestListing fails if the SUMMARY.md falls out of sync with the markdown files +// in this directory. +func TestListing(t *testing.T) { + // Check that this is the docs test. + // These files are copied into the "book" directory, so when left around in + // a work tree, test will run there as well. + if _, err := os.Stat("index.html"); err == nil { + t.Skip("skip listing check in compiled docs") + } + + linkline, err := regexp.Compile(`\s*- \[.+\]\((.+)\)`) + if err != nil { + t.Fatal(err) + } + f, err := os.Open("SUMMARY.md") + if err != nil { + t.Fatal(err) + } + defer f.Close() + + linked := []string{"SUMMARY.md"} + s := bufio.NewScanner(f) + for s.Scan() { + ms := linkline.FindSubmatch(s.Bytes()) + switch { + case ms == nil, len(ms) == 1: + continue + case len(ms) == 2: + linked = append(linked, path.Clean(string(ms[1]))) + } + } + if err := s.Err(); err != nil { + t.Error(err) + } + sort.Strings(linked) + + var files []string + err = fs.WalkDir(os.DirFS("."), ".", func(p string, d fs.DirEntry, err error) error { + switch { + case err != nil: + return err + case d.IsDir(): + return nil + case path.Ext(d.Name()) != ".md": + return nil + } + files = append(files, p) + return nil + }) + if err != nil { + t.Error(err) + } + sort.Strings(files) + + if !cmp.Equal(linked, files) { + t.Error(cmp.Diff(linked, files)) + } +} diff --git a/v1.5.24/logger_test.go b/v1.5.24/logger_test.go new file mode 100644 index 000000000..47abe5f01 --- /dev/null +++ b/v1.5.24/logger_test.go @@ -0,0 +1,27 @@ +package docs_test + +import ( + "context" + "time" + + "github.com/quay/zlog" +) + +// Example_logger is an example annotated for inclusion in the prose +// documentation. +func Example_logger() { + ctx := context.Background() + // ANCHOR: kvs + ctx = zlog.ContextWithValues(ctx, + "component", "Example.Logger") + // ANCHOR_END: kvs + + // ANCHOR: bad_example + zlog.Info(ctx).Msgf("done at: %v", time.Now()) + // ANCHOR_END: bad_example + // ANCHOR: good_example + zlog.Info(ctx). + Time("time", time.Now()). + Msgf("done") + // ANCHOR_END: good_example +} diff --git a/v1.5.24/mark.min.js b/v1.5.24/mark.min.js new file mode 100644 index 000000000..163623188 --- /dev/null +++ b/v1.5.24/mark.min.js @@ -0,0 +1,7 @@ +/*!*************************************************** +* mark.js v8.11.1 +* https://markjs.io/ +* Copyright (c) 2014–2018, Julian Kühnel +* Released under the MIT license https://git.io/vwTVl +*****************************************************/ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Mark=t()}(this,function(){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},n=function(){function e(e,t){for(var n=0;n1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:5e3;t(this,e),this.ctx=n,this.iframes=r,this.exclude=i,this.iframesTimeout=o}return n(e,[{key:"getContexts",value:function(){var e=[];return(void 0!==this.ctx&&this.ctx?NodeList.prototype.isPrototypeOf(this.ctx)?Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?this.ctx:"string"==typeof this.ctx?Array.prototype.slice.call(document.querySelectorAll(this.ctx)):[this.ctx]:[]).forEach(function(t){var n=e.filter(function(e){return e.contains(t)}).length>0;-1!==e.indexOf(t)||n||e.push(t)}),e}},{key:"getIframeContents",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=void 0;try{var i=e.contentWindow;if(r=i.document,!i||!r)throw new Error("iframe inaccessible")}catch(e){n()}r&&t(r)}},{key:"isIframeBlank",value:function(e){var t="about:blank",n=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&n!==t&&n}},{key:"observeIframeLoad",value:function(e,t,n){var r=this,i=!1,o=null,a=function a(){if(!i){i=!0,clearTimeout(o);try{r.isIframeBlank(e)||(e.removeEventListener("load",a),r.getIframeContents(e,t,n))}catch(e){n()}}};e.addEventListener("load",a),o=setTimeout(a,this.iframesTimeout)}},{key:"onIframeReady",value:function(e,t,n){try{"complete"===e.contentWindow.document.readyState?this.isIframeBlank(e)?this.observeIframeLoad(e,t,n):this.getIframeContents(e,t,n):this.observeIframeLoad(e,t,n)}catch(e){n()}}},{key:"waitForIframes",value:function(e,t){var n=this,r=0;this.forEachIframe(e,function(){return!0},function(e){r++,n.waitForIframes(e.querySelector("html"),function(){--r||t()})},function(e){e||t()})}},{key:"forEachIframe",value:function(t,n,r){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},a=t.querySelectorAll("iframe"),s=a.length,c=0;a=Array.prototype.slice.call(a);var u=function(){--s<=0&&o(c)};s||u(),a.forEach(function(t){e.matches(t,i.exclude)?u():i.onIframeReady(t,function(e){n(t)&&(c++,r(e)),u()},u)})}},{key:"createIterator",value:function(e,t,n){return document.createNodeIterator(e,t,n,!1)}},{key:"createInstanceOnIframe",value:function(t){return new e(t.querySelector("html"),this.iframes)}},{key:"compareNodeIframe",value:function(e,t,n){if(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_PRECEDING){if(null===t)return!0;if(t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING)return!0}return!1}},{key:"getIteratorNode",value:function(e){var t=e.previousNode();return{prevNode:t,node:null===t?e.nextNode():e.nextNode()&&e.nextNode()}}},{key:"checkIframeFilter",value:function(e,t,n,r){var i=!1,o=!1;return r.forEach(function(e,t){e.val===n&&(i=t,o=e.handled)}),this.compareNodeIframe(e,t,n)?(!1!==i||o?!1===i||o||(r[i].handled=!0):r.push({val:n,handled:!0}),!0):(!1===i&&r.push({val:n,handled:!1}),!1)}},{key:"handleOpenIframes",value:function(e,t,n,r){var i=this;e.forEach(function(e){e.handled||i.getIframeContents(e.val,function(e){i.createInstanceOnIframe(e).forEachNode(t,n,r)})})}},{key:"iterateThroughNodes",value:function(e,t,n,r,i){for(var o,a=this,s=this.createIterator(t,e,r),c=[],u=[],l=void 0,h=void 0;void 0,o=a.getIteratorNode(s),h=o.prevNode,l=o.node;)this.iframes&&this.forEachIframe(t,function(e){return a.checkIframeFilter(l,h,e,c)},function(t){a.createInstanceOnIframe(t).forEachNode(e,function(e){return u.push(e)},r)}),u.push(l);u.forEach(function(e){n(e)}),this.iframes&&this.handleOpenIframes(c,e,n,r),i()}},{key:"forEachNode",value:function(e,t,n){var r=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},o=this.getContexts(),a=o.length;a||i(),o.forEach(function(o){var s=function(){r.iterateThroughNodes(e,o,t,n,function(){--a<=0&&i()})};r.iframes?r.waitForIframes(o,s):s()})}}],[{key:"matches",value:function(e,t){var n="string"==typeof t?[t]:t,r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(r){var i=!1;return n.every(function(t){return!r.call(e,t)||(i=!0,!1)}),i}return!1}}]),e}(),o=function(){function e(n){t(this,e),this.opt=r({},{diacritics:!0,synonyms:{},accuracy:"partially",caseSensitive:!1,ignoreJoiners:!1,ignorePunctuation:[],wildcards:"disabled"},n)}return n(e,[{key:"create",value:function(e){return"disabled"!==this.opt.wildcards&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),"disabled"!==this.opt.wildcards&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e),new RegExp(e,"gm"+(this.opt.caseSensitive?"":"i"))}},{key:"escapeStr",value:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}},{key:"createSynonymsRegExp",value:function(e){var t=this.opt.synonyms,n=this.opt.caseSensitive?"":"i",r=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(var i in t)if(t.hasOwnProperty(i)){var o=t[i],a="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(i):this.escapeStr(i),s="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(o):this.escapeStr(o);""!==a&&""!==s&&(e=e.replace(new RegExp("("+this.escapeStr(a)+"|"+this.escapeStr(s)+")","gm"+n),r+"("+this.processSynonyms(a)+"|"+this.processSynonyms(s)+")"+r))}return e}},{key:"processSynonyms",value:function(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}},{key:"setupWildcardsRegExp",value:function(e){return(e=e.replace(/(?:\\)*\?/g,function(e){return"\\"===e.charAt(0)?"?":""})).replace(/(?:\\)*\*/g,function(e){return"\\"===e.charAt(0)?"*":""})}},{key:"createWildcardsRegExp",value:function(e){var t="withSpaces"===this.opt.wildcards;return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}},{key:"setupIgnoreJoinersRegExp",value:function(e){return e.replace(/[^(|)\\]/g,function(e,t,n){var r=n.charAt(t+1);return/[(|)\\]/.test(r)||""===r?e:e+"\0"})}},{key:"createJoinersRegExp",value:function(e){var t=[],n=this.opt.ignorePunctuation;return Array.isArray(n)&&n.length&&t.push(this.escapeStr(n.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join("["+t.join("")+"]*"):e}},{key:"createDiacriticsRegExp",value:function(e){var t=this.opt.caseSensitive?"":"i",n=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"],r=[];return e.split("").forEach(function(i){n.every(function(n){if(-1!==n.indexOf(i)){if(r.indexOf(n)>-1)return!1;e=e.replace(new RegExp("["+n+"]","gm"+t),"["+n+"]"),r.push(n)}return!0})}),e}},{key:"createMergedBlanksRegExp",value:function(e){return e.replace(/[\s]+/gim,"[\\s]+")}},{key:"createAccuracyRegExp",value:function(e){var t=this,n=this.opt.accuracy,r="string"==typeof n?n:n.value,i="";switch(("string"==typeof n?[]:n.limiters).forEach(function(e){i+="|"+t.escapeStr(e)}),r){case"partially":default:return"()("+e+")";case"complementary":return"()([^"+(i="\\s"+(i||this.escapeStr("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿")))+"]*"+e+"[^"+i+"]*)";case"exactly":return"(^|\\s"+i+")("+e+")(?=$|\\s"+i+")"}}}]),e}(),a=function(){function a(e){t(this,a),this.ctx=e,this.ie=!1;var n=window.navigator.userAgent;(n.indexOf("MSIE")>-1||n.indexOf("Trident")>-1)&&(this.ie=!0)}return n(a,[{key:"log",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"debug",r=this.opt.log;this.opt.debug&&"object"===(void 0===r?"undefined":e(r))&&"function"==typeof r[n]&&r[n]("mark.js: "+t)}},{key:"getSeparatedKeywords",value:function(e){var t=this,n=[];return e.forEach(function(e){t.opt.separateWordSearch?e.split(" ").forEach(function(e){e.trim()&&-1===n.indexOf(e)&&n.push(e)}):e.trim()&&-1===n.indexOf(e)&&n.push(e)}),{keywords:n.sort(function(e,t){return t.length-e.length}),length:n.length}}},{key:"isNumeric",value:function(e){return Number(parseFloat(e))==e}},{key:"checkRanges",value:function(e){var t=this;if(!Array.isArray(e)||"[object Object]"!==Object.prototype.toString.call(e[0]))return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];var n=[],r=0;return e.sort(function(e,t){return e.start-t.start}).forEach(function(e){var i=t.callNoMatchOnInvalidRanges(e,r),o=i.start,a=i.end;i.valid&&(e.start=o,e.length=a-o,n.push(e),r=a)}),n}},{key:"callNoMatchOnInvalidRanges",value:function(e,t){var n=void 0,r=void 0,i=!1;return e&&void 0!==e.start?(r=(n=parseInt(e.start,10))+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&r-t>0&&r-n>0?i=!0:(this.log("Ignoring invalid or overlapping range: "+JSON.stringify(e)),this.opt.noMatch(e))):(this.log("Ignoring invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:n,end:r,valid:i}}},{key:"checkWhitespaceRanges",value:function(e,t,n){var r=void 0,i=!0,o=n.length,a=t-o,s=parseInt(e.start,10)-a;return(r=(s=s>o?o:s)+parseInt(e.length,10))>o&&(r=o,this.log("End range automatically set to the max value of "+o)),s<0||r-s<0||s>o||r>o?(i=!1,this.log("Invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)):""===n.substring(s,r).replace(/\s+/g,"")&&(i=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:s,end:r,valid:i}}},{key:"getTextNodes",value:function(e){var t=this,n="",r=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,function(e){r.push({start:n.length,end:(n+=e.textContent).length,node:e})},function(e){return t.matchesExclude(e.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},function(){e({value:n,nodes:r})})}},{key:"matchesExclude",value:function(e){return i.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}},{key:"wrapRangeInTextNode",value:function(e,t,n){var r=this.opt.element?this.opt.element:"mark",i=e.splitText(t),o=i.splitText(n-t),a=document.createElement(r);return a.setAttribute("data-markjs","true"),this.opt.className&&a.setAttribute("class",this.opt.className),a.textContent=i.textContent,i.parentNode.replaceChild(a,i),o}},{key:"wrapRangeInMappedTextNode",value:function(e,t,n,r,i){var o=this;e.nodes.every(function(a,s){var c=e.nodes[s+1];if(void 0===c||c.start>t){if(!r(a.node))return!1;var u=t-a.start,l=(n>a.end?a.end:n)-a.start,h=e.value.substr(0,a.start),f=e.value.substr(l+a.start);if(a.node=o.wrapRangeInTextNode(a.node,u,l),e.value=h+f,e.nodes.forEach(function(t,n){n>=s&&(e.nodes[n].start>0&&n!==s&&(e.nodes[n].start-=l),e.nodes[n].end-=l)}),n-=l,i(a.node.previousSibling,a.start),!(n>a.end))return!1;t=a.end}return!0})}},{key:"wrapGroups",value:function(e,t,n,r){return r((e=this.wrapRangeInTextNode(e,t,t+n)).previousSibling),e}},{key:"separateGroups",value:function(e,t,n,r,i){for(var o=t.length,a=1;a-1&&r(t[a],e)&&(e=this.wrapGroups(e,s,t[a].length,i))}return e}},{key:"wrapMatches",value:function(e,t,n,r,i){var o=this,a=0===t?0:t+1;this.getTextNodes(function(t){t.nodes.forEach(function(t){t=t.node;for(var i=void 0;null!==(i=e.exec(t.textContent))&&""!==i[a];){if(o.opt.separateGroups)t=o.separateGroups(t,i,a,n,r);else{if(!n(i[a],t))continue;var s=i.index;if(0!==a)for(var c=1;c=tt?Ct:""+Array(tt+1-pt.length).join(Pt)+Ct},Tt={s:ft,z:function(Ct){var tt=-Ct.utcOffset(),Pt=Math.abs(tt),pt=Math.floor(Pt/60),Ft=Pt%60;return(tt<=0?"+":"-")+ft(pt,2,"0")+":"+ft(Ft,2,"0")},m:function Ct(tt,Pt){if(tt.date()1)return Ct(Rt[0])}else{var Bt=tt.name;mt[Bt]=tt,Ft=Bt}return!pt&&Ft&&(kt=Ft),Ft||!pt&&kt},st=function(Ct,tt){if(ct(Ct))return Ct.clone();var Pt=typeof tt=="object"?tt:{};return Pt.date=Ct,Pt.args=arguments,new ht(Pt)},xt=Tt;xt.l=yt,xt.i=ct,xt.w=function(Ct,tt){return st(Ct,{locale:tt.$L,utc:tt.$u,x:tt.$x,$offset:tt.$offset})};var ht=function(){function Ct(Pt){this.$L=yt(Pt.locale,null,!0),this.parse(Pt)}var tt=Ct.prototype;return tt.parse=function(Pt){this.$d=function(pt){var Ft=pt.date,X=pt.utc;if(Ft===null)return new Date(NaN);if(xt.u(Ft))return new Date;if(Ft instanceof Date)return new Date(Ft);if(typeof Ft=="string"&&!/Z$/i.test(Ft)){var Rt=Ft.match(rt);if(Rt){var Bt=Rt[2]-1||0,vt=(Rt[7]||"0").substring(0,3);return X?new Date(Date.UTC(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,vt)):new Date(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,vt)}}return new Date(Ft)}(Pt),this.$x=Pt.x||{},this.init()},tt.init=function(){var Pt=this.$d;this.$y=Pt.getFullYear(),this.$M=Pt.getMonth(),this.$D=Pt.getDate(),this.$W=Pt.getDay(),this.$H=Pt.getHours(),this.$m=Pt.getMinutes(),this.$s=Pt.getSeconds(),this.$ms=Pt.getMilliseconds()},tt.$utils=function(){return xt},tt.isValid=function(){return this.$d.toString()!==Y},tt.isSame=function(Pt,pt){var Ft=st(Pt);return this.startOf(pt)<=Ft&&Ft<=this.endOf(pt)},tt.isAfter=function(Pt,pt){return st(Pt){},debug:(...i)=>{},info:(...i)=>{},warn:(...i)=>{},error:(...i)=>{},fatal:(...i)=>{}},zft=function(i="fatal"){let a=g5.fatal;typeof i=="string"?(i=i.toLowerCase(),i in g5&&(a=g5[i])):typeof i=="number"&&(a=i),Wt.trace=()=>{},Wt.debug=()=>{},Wt.info=()=>{},Wt.warn=()=>{},Wt.error=()=>{},Wt.fatal=()=>{},a<=g5.fatal&&(Wt.fatal=console.error?console.error.bind(console,Y2("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Y2("FATAL"))),a<=g5.error&&(Wt.error=console.error?console.error.bind(console,Y2("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Y2("ERROR"))),a<=g5.warn&&(Wt.warn=console.warn?console.warn.bind(console,Y2("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Y2("WARN"))),a<=g5.info&&(Wt.info=console.info?console.info.bind(console,Y2("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Y2("INFO"))),a<=g5.debug&&(Wt.debug=console.debug?console.debug.bind(console,Y2("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Y2("DEBUG"))),a<=g5.trace&&(Wt.trace=console.debug?console.debug.bind(console,Y2("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Y2("TRACE")))},Y2=i=>`%c${up().format("ss.SSS")} : ${i} : `;var qft={};Object.defineProperty(qft,"__esModule",{value:!0});var Xx=qft.sanitizeUrl=void 0,H5e=/^([^\w]*)(javascript|data|vbscript)/im,V5e=/&#(\w+)(^\w|;)?/g,G5e=/&(newline|tab);/gi,U5e=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,W5e=/^.+(:|:)/gim,K5e=[".","/"];function Y5e(i){return K5e.indexOf(i[0])>-1}function X5e(i){return i.replace(V5e,function(a,f){return String.fromCharCode(f)})}function Q5e(i){var a=X5e(i||"").replace(G5e,"").replace(U5e,"").trim();if(!a)return"about:blank";if(Y5e(a))return a;var f=a.match(W5e);if(!f)return a;var p=f[0];return H5e.test(p)?"about:blank":a}Xx=qft.sanitizeUrl=Q5e;function fU(i,a){return i==null||a==null?NaN:ia?1:i>=a?0:NaN}function Z5e(i,a){return i==null||a==null?NaN:ai?1:a>=i?0:NaN}function Hft(i){let a,f,p;i.length!==2?(a=fU,f=(E,C)=>fU(i(E),C),p=(E,C)=>i(E)-C):(a=i===fU||i===Z5e?i:J5e,f=i,p=i);function v(E,C,A=0,P=E.length){if(A>>1;f(E[F],C)<0?A=F+1:P=F}while(A>>1;f(E[F],C)<=0?A=F+1:P=F}while(AA&&p(E[F-1],C)>-p(E[F],C)?F-1:F}return{left:v,center:b,right:m}}function J5e(){return 0}function t6e(i){return i===null?NaN:+i}const e6e=Hft(fU).right;Hft(t6e).center;const n6e=e6e;class LLt extends Map{constructor(a,f=s6e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:f}}),a!=null)for(const[p,v]of a)this.set(p,v)}get(a){return super.get(MLt(this,a))}has(a){return super.has(MLt(this,a))}set(a,f){return super.set(r6e(this,a),f)}delete(a){return super.delete(i6e(this,a))}}function MLt({_intern:i,_key:a},f){const p=a(f);return i.has(p)?i.get(p):f}function r6e({_intern:i,_key:a},f){const p=a(f);return i.has(p)?i.get(p):(i.set(p,f),f)}function i6e({_intern:i,_key:a},f){const p=a(f);return i.has(p)&&(f=i.get(p),i.delete(p)),f}function s6e(i){return i!==null&&typeof i=="object"?i.valueOf():i}var Vft=Math.sqrt(50),Gft=Math.sqrt(10),Uft=Math.sqrt(2);function a6e(i,a,f){var p,v=-1,m,b,E;if(a=+a,i=+i,f=+f,i===a&&f>0)return[i];if((p=a0){let C=Math.round(i/E),A=Math.round(a/E);for(C*Ea&&--A,b=new Array(m=A-C+1);++va&&--A,b=new Array(m=A-C+1);++v=0?(m>=Vft?10:m>=Gft?5:m>=Uft?2:1)*Math.pow(10,v):-Math.pow(10,-v)/(m>=Vft?10:m>=Gft?5:m>=Uft?2:1)}function Wft(i,a,f){var p=Math.abs(a-i)/Math.max(0,f),v=Math.pow(10,Math.floor(Math.log(p)/Math.LN10)),m=p/v;return m>=Vft?v*=10:m>=Gft?v*=5:m>=Uft&&(v*=2),a=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f=v)&&(f=v)}return f}function c6e(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f>p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f>v||f===void 0&&v>=v)&&(f=v)}return f}function u6e(i){return i}var dU=1,Kft=2,Yft=3,gU=4,ILt=1e-6;function l6e(i){return"translate("+i+",0)"}function h6e(i){return"translate(0,"+i+")"}function f6e(i){return a=>+i(a)}function d6e(i,a){return a=Math.max(0,i.bandwidth()-a*2)/2,i.round()&&(a=Math.round(a)),f=>+i(f)+a}function g6e(){return!this.__axis}function OLt(i,a){var f=[],p=null,v=null,m=6,b=6,E=3,C=typeof window<"u"&&window.devicePixelRatio>1?0:.5,A=i===dU||i===gU?-1:1,P=i===gU||i===Kft?"x":"y",F=i===dU||i===Yft?l6e:h6e;function j(R){var H=p??(a.ticks?a.ticks.apply(a,f):a.domain()),Y=v??(a.tickFormat?a.tickFormat.apply(a,f):u6e),rt=Math.max(m,0)+E,J=a.range(),it=+J[0]+C,ft=+J[J.length-1]+C,Tt=(a.bandwidth?d6e:f6e)(a.copy(),C),kt=R.selection?R.selection():R,mt=kt.selectAll(".domain").data([null]),ct=kt.selectAll(".tick").data(H,a).order(),yt=ct.exit(),st=ct.enter().append("g").attr("class","tick"),xt=ct.select("line"),ht=ct.select("text");mt=mt.merge(mt.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),ct=ct.merge(st),xt=xt.merge(st.append("line").attr("stroke","currentColor").attr(P+"2",A*m)),ht=ht.merge(st.append("text").attr("fill","currentColor").attr(P,A*rt).attr("dy",i===dU?"0em":i===Yft?"0.71em":"0.32em")),R!==kt&&(mt=mt.transition(R),ct=ct.transition(R),xt=xt.transition(R),ht=ht.transition(R),yt=yt.transition(R).attr("opacity",ILt).attr("transform",function(dt){return isFinite(dt=Tt(dt))?F(dt+C):this.getAttribute("transform")}),st.attr("opacity",ILt).attr("transform",function(dt){var Ct=this.parentNode.__axis;return F((Ct&&isFinite(Ct=Ct(dt))?Ct:Tt(dt))+C)})),yt.remove(),mt.attr("d",i===gU||i===Kft?b?"M"+A*b+","+it+"H"+C+"V"+ft+"H"+A*b:"M"+C+","+it+"V"+ft:b?"M"+it+","+A*b+"V"+C+"H"+ft+"V"+A*b:"M"+it+","+C+"H"+ft),ct.attr("opacity",1).attr("transform",function(dt){return F(Tt(dt)+C)}),xt.attr(P+"2",A*m),ht.attr(P,A*rt).text(Y),kt.filter(g6e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",i===Kft?"start":i===gU?"end":"middle"),kt.each(function(){this.__axis=Tt})}return j.scale=function(R){return arguments.length?(a=R,j):a},j.ticks=function(){return f=Array.from(arguments),j},j.tickArguments=function(R){return arguments.length?(f=R==null?[]:Array.from(R),j):f.slice()},j.tickValues=function(R){return arguments.length?(p=R==null?null:Array.from(R),j):p&&p.slice()},j.tickFormat=function(R){return arguments.length?(v=R,j):v},j.tickSize=function(R){return arguments.length?(m=b=+R,j):m},j.tickSizeInner=function(R){return arguments.length?(m=+R,j):m},j.tickSizeOuter=function(R){return arguments.length?(b=+R,j):b},j.tickPadding=function(R){return arguments.length?(E=+R,j):E},j.offset=function(R){return arguments.length?(C=+R,j):C},j}function p6e(i){return OLt(dU,i)}function b6e(i){return OLt(Yft,i)}var v6e={value:()=>{}};function NLt(){for(var i=0,a=arguments.length,f={},p;i=0&&(p=f.slice(v+1),f=f.slice(0,v)),f&&!a.hasOwnProperty(f))throw new Error("unknown type: "+f);return{type:f,name:p}})}pU.prototype=NLt.prototype={constructor:pU,on:function(i,a){var f=this._,p=w6e(i+"",f),v,m=-1,b=p.length;if(arguments.length<2){for(;++m0)for(var f=new Array(v),p=0,v,m;p=0&&(a=i.slice(0,f))!=="xmlns"&&(i=i.slice(f+1)),FLt.hasOwnProperty(a)?{space:FLt[a],local:i}:i}function y6e(i){return function(){var a=this.ownerDocument,f=this.namespaceURI;return f===Xft&&a.documentElement.namespaceURI===Xft?a.createElement(i):a.createElementNS(f,i)}}function x6e(i){return function(){return this.ownerDocument.createElementNS(i.space,i.local)}}function BLt(i){var a=bU(i);return(a.local?x6e:y6e)(a)}function k6e(){}function Qft(i){return i==null?k6e:function(){return this.querySelector(i)}}function E6e(i){typeof i!="function"&&(i=Qft(i));for(var a=this._groups,f=a.length,p=new Array(f),v=0;v=ft&&(ft=it+1);!(kt=rt[ft])&&++ft=0;)(b=p[v])&&(m&&b.compareDocumentPosition(m)^4&&m.parentNode.insertBefore(b,m),m=b);return this}function W6e(i){i||(i=K6e);function a(F,j){return F&&j?i(F.__data__,j.__data__):!F-!j}for(var f=this._groups,p=f.length,v=new Array(p),m=0;ma?1:i>=a?0:NaN}function Y6e(){var i=arguments[0];return arguments[0]=this,i.apply(null,arguments),this}function X6e(){return Array.from(this)}function Q6e(){for(var i=this._groups,a=0,f=i.length;a1?this.each((a==null?cxe:typeof a=="function"?lxe:uxe)(i,a,f??"")):mA(this.node(),i)}function mA(i,a){return i.style.getPropertyValue(a)||HLt(i).getComputedStyle(i,null).getPropertyValue(a)}function fxe(i){return function(){delete this[i]}}function dxe(i,a){return function(){this[i]=a}}function gxe(i,a){return function(){var f=a.apply(this,arguments);f==null?delete this[i]:this[i]=f}}function pxe(i,a){return arguments.length>1?this.each((a==null?fxe:typeof a=="function"?gxe:dxe)(i,a)):this.node()[i]}function VLt(i){return i.trim().split(/^|\s+/)}function Zft(i){return i.classList||new GLt(i)}function GLt(i){this._node=i,this._names=VLt(i.getAttribute("class")||"")}GLt.prototype={add:function(i){var a=this._names.indexOf(i);a<0&&(this._names.push(i),this._node.setAttribute("class",this._names.join(" ")))},remove:function(i){var a=this._names.indexOf(i);a>=0&&(this._names.splice(a,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(i){return this._names.indexOf(i)>=0}};function ULt(i,a){for(var f=Zft(i),p=-1,v=a.length;++p=0&&(f=a.slice(p+1),a=a.slice(0,p)),{type:a,name:f}})}function Hxe(i){return function(){var a=this.__on;if(a){for(var f=0,p=-1,v=a.length,m;f>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):f===8?yU(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):f===4?yU(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=Zxe.exec(i))?new g0(a[1],a[2],a[3],1):(a=Jxe.exec(i))?new g0(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=tke.exec(i))?yU(a[1],a[2],a[3],a[4]):(a=eke.exec(i))?yU(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=nke.exec(i))?rMt(a[1],a[2]/100,a[3]/100,1):(a=rke.exec(i))?rMt(a[1],a[2]/100,a[3]/100,a[4]):XLt.hasOwnProperty(i)?JLt(XLt[i]):i==="transparent"?new g0(NaN,NaN,NaN,0):null}function JLt(i){return new g0(i>>16&255,i>>8&255,i&255,1)}function yU(i,a,f,p){return p<=0&&(i=a=f=NaN),new g0(i,a,f,p)}function tMt(i){return i instanceof FE||(i=BE(i)),i?(i=i.rgb(),new g0(i.r,i.g,i.b,i.opacity)):new g0}function t1t(i,a,f,p){return arguments.length===1?tMt(i):new g0(i,a,f,p??1)}function g0(i,a,f,p){this.r=+i,this.g=+a,this.b=+f,this.opacity=+p}xN(g0,t1t,wU(FE,{brighter(i){return i=i==null?mU:Math.pow(mU,i),new g0(this.r*i,this.g*i,this.b*i,this.opacity)},darker(i){return i=i==null?kN:Math.pow(kN,i),new g0(this.r*i,this.g*i,this.b*i,this.opacity)},rgb(){return this},clamp(){return new g0(RE(this.r),RE(this.g),RE(this.b),xU(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:eMt,formatHex:eMt,formatHex8:ake,formatRgb:nMt,toString:nMt}));function eMt(){return`#${jE(this.r)}${jE(this.g)}${jE(this.b)}`}function ake(){return`#${jE(this.r)}${jE(this.g)}${jE(this.b)}${jE((isNaN(this.opacity)?1:this.opacity)*255)}`}function nMt(){const i=xU(this.opacity);return`${i===1?"rgb(":"rgba("}${RE(this.r)}, ${RE(this.g)}, ${RE(this.b)}${i===1?")":`, ${i})`}`}function xU(i){return isNaN(i)?1:Math.max(0,Math.min(1,i))}function RE(i){return Math.max(0,Math.min(255,Math.round(i)||0))}function jE(i){return i=RE(i),(i<16?"0":"")+i.toString(16)}function rMt(i,a,f,p){return p<=0?i=a=f=NaN:f<=0||f>=1?i=a=NaN:a<=0&&(i=NaN),new Ww(i,a,f,p)}function iMt(i){if(i instanceof Ww)return new Ww(i.h,i.s,i.l,i.opacity);if(i instanceof FE||(i=BE(i)),!i)return new Ww;if(i instanceof Ww)return i;i=i.rgb();var a=i.r/255,f=i.g/255,p=i.b/255,v=Math.min(a,f,p),m=Math.max(a,f,p),b=NaN,E=m-v,C=(m+v)/2;return E?(a===m?b=(f-p)/E+(f0&&C<1?0:b,new Ww(b,E,C,i.opacity)}function oke(i,a,f,p){return arguments.length===1?iMt(i):new Ww(i,a,f,p??1)}function Ww(i,a,f,p){this.h=+i,this.s=+a,this.l=+f,this.opacity=+p}xN(Ww,oke,wU(FE,{brighter(i){return i=i==null?mU:Math.pow(mU,i),new Ww(this.h,this.s,this.l*i,this.opacity)},darker(i){return i=i==null?kN:Math.pow(kN,i),new Ww(this.h,this.s,this.l*i,this.opacity)},rgb(){var i=this.h%360+(this.h<0)*360,a=isNaN(i)||isNaN(this.s)?0:this.s,f=this.l,p=f+(f<.5?f:1-f)*a,v=2*f-p;return new g0(e1t(i>=240?i-240:i+120,v,p),e1t(i,v,p),e1t(i<120?i+240:i-120,v,p),this.opacity)},clamp(){return new Ww(sMt(this.h),kU(this.s),kU(this.l),xU(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const i=xU(this.opacity);return`${i===1?"hsl(":"hsla("}${sMt(this.h)}, ${kU(this.s)*100}%, ${kU(this.l)*100}%${i===1?")":`, ${i})`}`}}));function sMt(i){return i=(i||0)%360,i<0?i+360:i}function kU(i){return Math.max(0,Math.min(1,i||0))}function e1t(i,a,f){return(i<60?a+(f-a)*i/60:i<180?f:i<240?a+(f-a)*(240-i)/60:a)*255}const cke=Math.PI/180,uke=180/Math.PI,EU=18,aMt=.96422,oMt=1,cMt=.82521,uMt=4/29,xA=6/29,lMt=3*xA*xA,lke=xA*xA*xA;function hMt(i){if(i instanceof a3)return new a3(i.l,i.a,i.b,i.opacity);if(i instanceof p5)return fMt(i);i instanceof g0||(i=tMt(i));var a=s1t(i.r),f=s1t(i.g),p=s1t(i.b),v=n1t((.2225045*a+.7168786*f+.0606169*p)/oMt),m,b;return a===f&&f===p?m=b=v:(m=n1t((.4360747*a+.3850649*f+.1430804*p)/aMt),b=n1t((.0139322*a+.0971045*f+.7141733*p)/cMt)),new a3(116*v-16,500*(m-v),200*(v-b),i.opacity)}function hke(i,a,f,p){return arguments.length===1?hMt(i):new a3(i,a,f,p??1)}function a3(i,a,f,p){this.l=+i,this.a=+a,this.b=+f,this.opacity=+p}xN(a3,hke,wU(FE,{brighter(i){return new a3(this.l+EU*(i??1),this.a,this.b,this.opacity)},darker(i){return new a3(this.l-EU*(i??1),this.a,this.b,this.opacity)},rgb(){var i=(this.l+16)/116,a=isNaN(this.a)?i:i+this.a/500,f=isNaN(this.b)?i:i-this.b/200;return a=aMt*r1t(a),i=oMt*r1t(i),f=cMt*r1t(f),new g0(i1t(3.1338561*a-1.6168667*i-.4906146*f),i1t(-.9787684*a+1.9161415*i+.033454*f),i1t(.0719453*a-.2289914*i+1.4052427*f),this.opacity)}}));function n1t(i){return i>lke?Math.pow(i,1/3):i/lMt+uMt}function r1t(i){return i>xA?i*i*i:lMt*(i-uMt)}function i1t(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function s1t(i){return(i/=255)<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function fke(i){if(i instanceof p5)return new p5(i.h,i.c,i.l,i.opacity);if(i instanceof a3||(i=hMt(i)),i.a===0&&i.b===0)return new p5(NaN,0()=>i;function dMt(i,a){return function(f){return i+f*a}}function dke(i,a,f){return i=Math.pow(i,f),a=Math.pow(a,f)-i,f=1/f,function(p){return Math.pow(i+p*a,f)}}function gke(i,a){var f=a-i;return f?dMt(i,f>180||f<-180?f-360*Math.round(f/360):f):TU(isNaN(i)?a:i)}function pke(i){return(i=+i)==1?TN:function(a,f){return f-a?dke(a,f,i):TU(isNaN(a)?f:a)}}function TN(i,a){var f=a-i;return f?dMt(i,f):TU(isNaN(i)?a:i)}const _U=function i(a){var f=pke(a);function p(v,m){var b=f((v=t1t(v)).r,(m=t1t(m)).r),E=f(v.g,m.g),C=f(v.b,m.b),A=TN(v.opacity,m.opacity);return function(P){return v.r=b(P),v.g=E(P),v.b=C(P),v.opacity=A(P),v+""}}return p.gamma=i,p}(1);function bke(i,a){a||(a=[]);var f=i?Math.min(a.length,i.length):0,p=a.slice(),v;return function(m){for(v=0;vf&&(m=a.slice(f,m),E[b]?E[b]+=m:E[++b]=m),(p=p[0])===(v=v[0])?E[b]?E[b]+=v:E[++b]=v:(E[++b]=null,C.push({i:b,x:Kw(p,v)})),f=c1t.lastIndex;return f180?P+=360:P-A>180&&(A+=360),j.push({i:F.push(v(F)+"rotate(",null,p)-2,x:Kw(A,P)})):P&&F.push(v(F)+"rotate("+P+p)}function E(A,P,F,j){A!==P?j.push({i:F.push(v(F)+"skewX(",null,p)-2,x:Kw(A,P)}):P&&F.push(v(F)+"skewX("+P+p)}function C(A,P,F,j,R,H){if(A!==F||P!==j){var Y=R.push(v(R)+"scale(",null,",",null,")");H.push({i:Y-4,x:Kw(A,F)},{i:Y-2,x:Kw(P,j)})}else(F!==1||j!==1)&&R.push(v(R)+"scale("+F+","+j+")")}return function(A,P){var F=[],j=[];return A=i(A),P=i(P),m(A.translateX,A.translateY,P.translateX,P.translateY,F,j),b(A.rotate,P.rotate,F,j),E(A.skewX,P.skewX,F,j),C(A.scaleX,A.scaleY,P.scaleX,P.scaleY,F,j),A=P=null,function(R){for(var H=-1,Y=j.length,rt;++H=0&&i._call.call(void 0,a),i=i._next;--kA}function xMt(){$E=(AU=AN.now())+LU,kA=_N=0;try{Dke()}finally{kA=0,Oke(),$E=0}}function Ike(){var i=AN.now(),a=i-AU;a>wMt&&(LU-=a,AU=i)}function Oke(){for(var i,a=SU,f,p=1/0;a;)a._call?(p>a._time&&(p=a._time),i=a,a=a._next):(f=a._next,a._next=null,a=i?i._next=f:SU=f);SN=i,f1t(p)}function f1t(i){if(!kA){_N&&(_N=clearTimeout(_N));var a=i-$E;a>24?(i<1/0&&(_N=setTimeout(xMt,i-AN.now()-LU)),CN&&(CN=clearInterval(CN))):(CN||(AU=AN.now(),CN=setInterval(Ike,wMt)),kA=1,mMt(xMt))}}function kMt(i,a,f){var p=new MU;return a=a==null?0:+a,p.restart(v=>{p.stop(),i(v+a)},a,f),p}var Nke=NLt("start","end","cancel","interrupt"),Pke=[],EMt=0,TMt=1,d1t=2,DU=3,_Mt=4,g1t=5,IU=6;function OU(i,a,f,p,v,m){var b=i.__transition;if(!b)i.__transition={};else if(f in b)return;Fke(i,f,{name:a,index:p,group:v,on:Nke,tween:Pke,time:m.time,delay:m.delay,duration:m.duration,ease:m.ease,timer:null,state:EMt})}function p1t(i,a){var f=Yw(i,a);if(f.state>EMt)throw new Error("too late; already scheduled");return f}function o3(i,a){var f=Yw(i,a);if(f.state>DU)throw new Error("too late; already running");return f}function Yw(i,a){var f=i.__transition;if(!f||!(f=f[a]))throw new Error("transition not found");return f}function Fke(i,a,f){var p=i.__transition,v;p[a]=f,f.timer=yMt(m,0,f.time);function m(A){f.state=TMt,f.timer.restart(b,f.delay,f.time),f.delay<=A&&b(A-f.delay)}function b(A){var P,F,j,R;if(f.state!==TMt)return C();for(P in p)if(R=p[P],R.name===f.name){if(R.state===DU)return kMt(b);R.state===_Mt?(R.state=IU,R.timer.stop(),R.on.call("interrupt",i,i.__data__,R.index,R.group),delete p[P]):+Pd1t&&p.state=0&&(a=a.slice(0,f)),!a||a==="start"})}function d8e(i,a,f){var p,v,m=f8e(a)?p1t:o3;return function(){var b=m(this,i),E=b.on;E!==p&&(v=(p=E).copy()).on(a,f),b.on=v}}function g8e(i,a){var f=this._id;return arguments.length<2?Yw(this.node(),f).on.on(i):this.each(d8e(f,i,a))}function p8e(i){return function(){var a=this.parentNode;for(var f in this.__transition)if(+f!==i)return;a&&a.removeChild(this)}}function b8e(){return this.on("end.remove",p8e(this._id))}function v8e(i){var a=this._name,f=this._id;typeof i!="function"&&(i=Qft(i));for(var p=this._groups,v=p.length,m=new Array(v),b=0;bzE)if(!(Math.abs(P*E-C*A)>zE)||!v)this._+="L"+(this._x1=i)+","+(this._y1=a);else{var j=f-m,R=p-b,H=E*E+C*C,Y=j*j+R*R,rt=Math.sqrt(H),J=Math.sqrt(F),it=v*Math.tan((v1t-Math.acos((H+F-Y)/(2*rt*J)))/2),ft=it/J,Tt=it/rt;Math.abs(ft-1)>zE&&(this._+="L"+(i+ft*A)+","+(a+ft*P)),this._+="A"+v+","+v+",0,0,"+ +(P*j>A*R)+","+(this._x1=i+Tt*E)+","+(this._y1=a+Tt*C)}},arc:function(i,a,f,p,v,m){i=+i,a=+a,f=+f,m=!!m;var b=f*Math.cos(p),E=f*Math.sin(p),C=i+b,A=a+E,P=1^m,F=m?p-v:v-p;if(f<0)throw new Error("negative radius: "+f);this._x1===null?this._+="M"+C+","+A:(Math.abs(this._x1-C)>zE||Math.abs(this._y1-A)>zE)&&(this._+="L"+C+","+A),f&&(F<0&&(F=F%w1t+w1t),F>q8e?this._+="A"+f+","+f+",0,1,"+P+","+(i-b)+","+(a-E)+"A"+f+","+f+",0,1,"+P+","+(this._x1=C)+","+(this._y1=A):F>zE&&(this._+="A"+f+","+f+",0,"+ +(F>=v1t)+","+P+","+(this._x1=i+f*Math.cos(v))+","+(this._y1=a+f*Math.sin(v))))},rect:function(i,a,f,p){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)+"h"+ +f+"v"+ +p+"h"+-f+"Z"},toString:function(){return this._}};function H8e(i){if(!i.ok)throw new Error(i.status+" "+i.statusText);return i.text()}function V8e(i,a){return fetch(i,a).then(H8e)}function G8e(i){return(a,f)=>V8e(a,f).then(p=>new DOMParser().parseFromString(p,i))}var U8e=G8e("image/svg+xml");function W8e(i){return Math.abs(i=Math.round(i))>=1e21?i.toLocaleString("en").replace(/,/g,""):i.toString(10)}function NU(i,a){if((f=(i=a?i.toExponential(a-1):i.toExponential()).indexOf("e"))<0)return null;var f,p=i.slice(0,f);return[p.length>1?p[0]+p.slice(2):p,+i.slice(f+1)]}function EA(i){return i=NU(Math.abs(i)),i?i[1]:NaN}function K8e(i,a){return function(f,p){for(var v=f.length,m=[],b=0,E=i[0],C=0;v>0&&E>0&&(C+E+1>p&&(E=Math.max(1,p-C)),m.push(f.substring(v-=E,v+E)),!((C+=E+1)>p));)E=i[b=(b+1)%i.length];return m.reverse().join(a)}}function Y8e(i){return function(a){return a.replace(/[0-9]/g,function(f){return i[+f]})}}var X8e=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function PU(i){if(!(a=X8e.exec(i)))throw new Error("invalid format: "+i);var a;return new x1t({fill:a[1],align:a[2],sign:a[3],symbol:a[4],zero:a[5],width:a[6],comma:a[7],precision:a[8]&&a[8].slice(1),trim:a[9],type:a[10]})}PU.prototype=x1t.prototype;function x1t(i){this.fill=i.fill===void 0?" ":i.fill+"",this.align=i.align===void 0?">":i.align+"",this.sign=i.sign===void 0?"-":i.sign+"",this.symbol=i.symbol===void 0?"":i.symbol+"",this.zero=!!i.zero,this.width=i.width===void 0?void 0:+i.width,this.comma=!!i.comma,this.precision=i.precision===void 0?void 0:+i.precision,this.trim=!!i.trim,this.type=i.type===void 0?"":i.type+""}x1t.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Q8e(i){t:for(var a=i.length,f=1,p=-1,v;f0&&(p=0);break}return p>0?i.slice(0,p)+i.slice(v+1):i}var LMt;function Z8e(i,a){var f=NU(i,a);if(!f)return i+"";var p=f[0],v=f[1],m=v-(LMt=Math.max(-8,Math.min(8,Math.floor(v/3)))*3)+1,b=p.length;return m===b?p:m>b?p+new Array(m-b+1).join("0"):m>0?p.slice(0,m)+"."+p.slice(m):"0."+new Array(1-m).join("0")+NU(i,Math.max(0,a+m-1))[0]}function MMt(i,a){var f=NU(i,a);if(!f)return i+"";var p=f[0],v=f[1];return v<0?"0."+new Array(-v).join("0")+p:p.length>v+1?p.slice(0,v+1)+"."+p.slice(v+1):p+new Array(v-p.length+2).join("0")}const DMt={"%":(i,a)=>(i*100).toFixed(a),b:i=>Math.round(i).toString(2),c:i=>i+"",d:W8e,e:(i,a)=>i.toExponential(a),f:(i,a)=>i.toFixed(a),g:(i,a)=>i.toPrecision(a),o:i=>Math.round(i).toString(8),p:(i,a)=>MMt(i*100,a),r:MMt,s:Z8e,X:i=>Math.round(i).toString(16).toUpperCase(),x:i=>Math.round(i).toString(16)};function IMt(i){return i}var OMt=Array.prototype.map,NMt=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function J8e(i){var a=i.grouping===void 0||i.thousands===void 0?IMt:K8e(OMt.call(i.grouping,Number),i.thousands+""),f=i.currency===void 0?"":i.currency[0]+"",p=i.currency===void 0?"":i.currency[1]+"",v=i.decimal===void 0?".":i.decimal+"",m=i.numerals===void 0?IMt:Y8e(OMt.call(i.numerals,String)),b=i.percent===void 0?"%":i.percent+"",E=i.minus===void 0?"−":i.minus+"",C=i.nan===void 0?"NaN":i.nan+"";function A(F){F=PU(F);var j=F.fill,R=F.align,H=F.sign,Y=F.symbol,rt=F.zero,J=F.width,it=F.comma,ft=F.precision,Tt=F.trim,kt=F.type;kt==="n"?(it=!0,kt="g"):DMt[kt]||(ft===void 0&&(ft=12),Tt=!0,kt="g"),(rt||j==="0"&&R==="=")&&(rt=!0,j="0",R="=");var mt=Y==="$"?f:Y==="#"&&/[boxX]/.test(kt)?"0"+kt.toLowerCase():"",ct=Y==="$"?p:/[%p]/.test(kt)?b:"",yt=DMt[kt],st=/[defgprs%]/.test(kt);ft=ft===void 0?6:/[gprs]/.test(kt)?Math.max(1,Math.min(21,ft)):Math.max(0,Math.min(20,ft));function xt(ht){var dt=mt,Ct=ct,tt,Pt,pt;if(kt==="c")Ct=yt(ht)+Ct,ht="";else{ht=+ht;var Ft=ht<0||1/ht<0;if(ht=isNaN(ht)?C:yt(Math.abs(ht),ft),Tt&&(ht=Q8e(ht)),Ft&&+ht==0&&H!=="+"&&(Ft=!1),dt=(Ft?H==="("?H:E:H==="-"||H==="("?"":H)+dt,Ct=(kt==="s"?NMt[8+LMt/3]:"")+Ct+(Ft&&H==="("?")":""),st){for(tt=-1,Pt=ht.length;++ttpt||pt>57){Ct=(pt===46?v+ht.slice(tt+1):ht.slice(tt))+Ct,ht=ht.slice(0,tt);break}}}it&&!rt&&(ht=a(ht,1/0));var X=dt.length+ht.length+Ct.length,Rt=X>1)+dt+ht+Ct+Rt.slice(X);break;default:ht=Rt+dt+ht+Ct;break}return m(ht)}return xt.toString=function(){return F+""},xt}function P(F,j){var R=A((F=PU(F),F.type="f",F)),H=Math.max(-8,Math.min(8,Math.floor(EA(j)/3)))*3,Y=Math.pow(10,-H),rt=NMt[8+H/3];return function(J){return R(Y*J)+rt}}return{format:A,formatPrefix:P}}var FU,PMt,FMt;t7e({thousands:",",grouping:[3],currency:["$",""]});function t7e(i){return FU=J8e(i),PMt=FU.format,FMt=FU.formatPrefix,FU}function e7e(i){return Math.max(0,-EA(Math.abs(i)))}function n7e(i,a){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(EA(a)/3)))*3-EA(Math.abs(i)))}function r7e(i,a){return i=Math.abs(i),a=Math.abs(a)-i,Math.max(0,EA(a)-EA(i))+1}function k1t(i,a){switch(arguments.length){case 0:break;case 1:this.range(i);break;default:this.range(a).domain(i);break}return this}const BMt=Symbol("implicit");function E1t(){var i=new LLt,a=[],f=[],p=BMt;function v(m){let b=i.get(m);if(b===void 0){if(p!==BMt)return p;i.set(m,b=a.push(m)-1)}return f[b%f.length]}return v.domain=function(m){if(!arguments.length)return a.slice();a=[],i=new LLt;for(const b of m)i.has(b)||i.set(b,a.push(b)-1);return v},v.range=function(m){return arguments.length?(f=Array.from(m),v):f.slice()},v.unknown=function(m){return arguments.length?(p=m,v):p},v.copy=function(){return E1t(a,f).unknown(p)},k1t.apply(v,arguments),v}function i7e(i){return function(){return i}}function s7e(i){return+i}var RMt=[0,1];function TA(i){return i}function T1t(i,a){return(a-=i=+i)?function(f){return(f-i)/a}:i7e(isNaN(a)?NaN:.5)}function a7e(i,a){var f;return i>a&&(f=i,i=a,a=f),function(p){return Math.max(i,Math.min(a,p))}}function o7e(i,a,f){var p=i[0],v=i[1],m=a[0],b=a[1];return v2?c7e:o7e,C=A=null,F}function F(j){return j==null||isNaN(j=+j)?m:(C||(C=E(i.map(p),a,f)))(p(b(j)))}return F.invert=function(j){return b(v((A||(A=E(a,i.map(p),Kw)))(j)))},F.domain=function(j){return arguments.length?(i=Array.from(j,s7e),P()):i.slice()},F.range=function(j){return arguments.length?(a=Array.from(j),P()):a.slice()},F.rangeRound=function(j){return a=Array.from(j),f=Eke,P()},F.clamp=function(j){return arguments.length?(b=j?!0:TA,P()):b!==TA},F.interpolate=function(j){return arguments.length?(f=j,P()):f},F.unknown=function(j){return arguments.length?(m=j,F):m},function(j,R){return p=j,v=R,P()}}function $Mt(){return u7e()(TA,TA)}function l7e(i,a,f,p){var v=Wft(i,a,f),m;switch(p=PU(p??",f"),p.type){case"s":{var b=Math.max(Math.abs(i),Math.abs(a));return p.precision==null&&!isNaN(m=n7e(v,b))&&(p.precision=m),FMt(p,b)}case"":case"e":case"g":case"p":case"r":{p.precision==null&&!isNaN(m=r7e(v,Math.max(Math.abs(i),Math.abs(a))))&&(p.precision=m-(p.type==="e"));break}case"f":case"%":{p.precision==null&&!isNaN(m=e7e(v))&&(p.precision=m-(p.type==="%")*2);break}}return PMt(p)}function h7e(i){var a=i.domain;return i.ticks=function(f){var p=a();return a6e(p[0],p[p.length-1],f??10)},i.tickFormat=function(f,p){var v=a();return l7e(v[0],v[v.length-1],f??10,p)},i.nice=function(f){f==null&&(f=10);var p=a(),v=0,m=p.length-1,b=p[v],E=p[m],C,A,P=10;for(E0;){if(A=DLt(b,E,f),A===C)return p[v]=b,p[m]=E,a(p);if(A>0)b=Math.floor(b/A)*A,E=Math.ceil(E/A)*A;else if(A<0)b=Math.ceil(b*A)/A,E=Math.floor(E*A)/A;else break;C=A}return i},i}function BU(){var i=$Mt();return i.copy=function(){return jMt(i,BU())},k1t.apply(i,arguments),h7e(i)}function f7e(i,a){i=i.slice();var f=0,p=i.length-1,v=i[f],m=i[p],b;return m0))return C;do C.push(A=new Date(+m)),a(m,E),i(m);while(A=b)for(;i(b),!m(b);)b.setTime(b-1)},function(b,E){if(b>=b)if(E<0)for(;++E<=0;)for(;a(b,-1),!m(b););else for(;--E>=0;)for(;a(b,1),!m(b););})},f&&(v.count=function(m,b){return _1t.setTime(+m),C1t.setTime(+b),i(_1t),i(C1t),Math.floor(f(_1t,C1t))},v.every=function(m){return m=Math.floor(m),!isFinite(m)||!(m>0)?null:m>1?v.filter(p?function(b){return p(b)%m===0}:function(b){return v.count(0,b)%m===0}):v}),v}var RU=rg(function(){},function(i,a){i.setTime(+i+a)},function(i,a){return a-i});RU.every=function(i){return i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?rg(function(a){a.setTime(Math.floor(a/i)*i)},function(a,f){a.setTime(+a+f*i)},function(a,f){return(f-a)/i}):RU};const d7e=RU;RU.range;const w5=1e3,c3=w5*60,qE=c3*60,HE=qE*24,S1t=HE*7,zMt=HE*30,A1t=HE*365;var qMt=rg(function(i){i.setTime(i-i.getMilliseconds())},function(i,a){i.setTime(+i+a*w5)},function(i,a){return(a-i)/w5},function(i){return i.getUTCSeconds()});const LN=qMt;qMt.range;var HMt=rg(function(i){i.setTime(i-i.getMilliseconds()-i.getSeconds()*w5)},function(i,a){i.setTime(+i+a*c3)},function(i,a){return(a-i)/c3},function(i){return i.getMinutes()});const jU=HMt;HMt.range;var VMt=rg(function(i){i.setTime(i-i.getMilliseconds()-i.getSeconds()*w5-i.getMinutes()*c3)},function(i,a){i.setTime(+i+a*qE)},function(i,a){return(a-i)/qE},function(i){return i.getHours()});const $U=VMt;VMt.range;var GMt=rg(i=>i.setHours(0,0,0,0),(i,a)=>i.setDate(i.getDate()+a),(i,a)=>(a-i-(a.getTimezoneOffset()-i.getTimezoneOffset())*c3)/HE,i=>i.getDate()-1);const _A=GMt;GMt.range;function VE(i){return rg(function(a){a.setDate(a.getDate()-(a.getDay()+7-i)%7),a.setHours(0,0,0,0)},function(a,f){a.setDate(a.getDate()+f*7)},function(a,f){return(f-a-(f.getTimezoneOffset()-a.getTimezoneOffset())*c3)/S1t})}var MN=VE(0),DN=VE(1),UMt=VE(2),WMt=VE(3),GE=VE(4),KMt=VE(5),YMt=VE(6);MN.range,DN.range,UMt.range,WMt.range,GE.range,KMt.range,YMt.range;var XMt=rg(function(i){i.setDate(1),i.setHours(0,0,0,0)},function(i,a){i.setMonth(i.getMonth()+a)},function(i,a){return a.getMonth()-i.getMonth()+(a.getFullYear()-i.getFullYear())*12},function(i){return i.getMonth()});const zU=XMt;XMt.range;var L1t=rg(function(i){i.setMonth(0,1),i.setHours(0,0,0,0)},function(i,a){i.setFullYear(i.getFullYear()+a)},function(i,a){return a.getFullYear()-i.getFullYear()},function(i){return i.getFullYear()});L1t.every=function(i){return!isFinite(i=Math.floor(i))||!(i>0)?null:rg(function(a){a.setFullYear(Math.floor(a.getFullYear()/i)*i),a.setMonth(0,1),a.setHours(0,0,0,0)},function(a,f){a.setFullYear(a.getFullYear()+f*i)})};const UE=L1t;L1t.range;var QMt=rg(function(i){i.setUTCHours(0,0,0,0)},function(i,a){i.setUTCDate(i.getUTCDate()+a)},function(i,a){return(a-i)/HE},function(i){return i.getUTCDate()-1});const ZMt=QMt;QMt.range;function WE(i){return rg(function(a){a.setUTCDate(a.getUTCDate()-(a.getUTCDay()+7-i)%7),a.setUTCHours(0,0,0,0)},function(a,f){a.setUTCDate(a.getUTCDate()+f*7)},function(a,f){return(f-a)/S1t})}var JMt=WE(0),qU=WE(1),g7e=WE(2),p7e=WE(3),CA=WE(4),b7e=WE(5),v7e=WE(6);JMt.range,qU.range,g7e.range,p7e.range,CA.range,b7e.range,v7e.range;var M1t=rg(function(i){i.setUTCMonth(0,1),i.setUTCHours(0,0,0,0)},function(i,a){i.setUTCFullYear(i.getUTCFullYear()+a)},function(i,a){return a.getUTCFullYear()-i.getUTCFullYear()},function(i){return i.getUTCFullYear()});M1t.every=function(i){return!isFinite(i=Math.floor(i))||!(i>0)?null:rg(function(a){a.setUTCFullYear(Math.floor(a.getUTCFullYear()/i)*i),a.setUTCMonth(0,1),a.setUTCHours(0,0,0,0)},function(a,f){a.setUTCFullYear(a.getUTCFullYear()+f*i)})};const IN=M1t;M1t.range;function w7e(i,a,f,p,v,m){const b=[[LN,1,w5],[LN,5,5*w5],[LN,15,15*w5],[LN,30,30*w5],[m,1,c3],[m,5,5*c3],[m,15,15*c3],[m,30,30*c3],[v,1,qE],[v,3,3*qE],[v,6,6*qE],[v,12,12*qE],[p,1,HE],[p,2,2*HE],[f,1,S1t],[a,1,zMt],[a,3,3*zMt],[i,1,A1t]];function E(A,P,F){const j=Prt).right(b,j);if(R===b.length)return i.every(Wft(A/A1t,P/A1t,F));if(R===0)return d7e.every(Math.max(Wft(A,P,F),1));const[H,Y]=b[j/b[R-1][2]53)return null;"w"in Ee||(Ee.w=1),"Z"in Ee?(Ce=I1t(ON(Ee.y,0,1)),$e=Ce.getUTCDay(),Ce=$e>4||$e===0?qU.ceil(Ce):qU(Ce),Ce=ZMt.offset(Ce,(Ee.V-1)*7),Ee.y=Ce.getUTCFullYear(),Ee.m=Ce.getUTCMonth(),Ee.d=Ce.getUTCDate()+(Ee.w+6)%7):(Ce=D1t(ON(Ee.y,0,1)),$e=Ce.getDay(),Ce=$e>4||$e===0?DN.ceil(Ce):DN(Ce),Ce=_A.offset(Ce,(Ee.V-1)*7),Ee.y=Ce.getFullYear(),Ee.m=Ce.getMonth(),Ee.d=Ce.getDate()+(Ee.w+6)%7)}else("W"in Ee||"U"in Ee)&&("w"in Ee||(Ee.w="u"in Ee?Ee.u%7:"W"in Ee?1:0),$e="Z"in Ee?I1t(ON(Ee.y,0,1)).getUTCDay():D1t(ON(Ee.y,0,1)).getDay(),Ee.m=0,Ee.d="W"in Ee?(Ee.w+6)%7+Ee.W*7-($e+5)%7:Ee.w+Ee.U*7-($e+6)%7);return"Z"in Ee?(Ee.H+=Ee.Z/100|0,Ee.M+=Ee.Z%100,I1t(Ee)):D1t(Ee)}}function yt(ne,ke,Ve,Ee){for(var He=0,Ce=ke.length,$e=Ve.length,ye,fn;He=$e)return-1;if(ye=ke.charCodeAt(He++),ye===37){if(ye=ke.charAt(He++),fn=kt[ye in tDt?ke.charAt(He++):ye],!fn||(Ee=fn(ne,Ve,Ee))<0)return-1}else if(ye!=Ve.charCodeAt(Ee++))return-1}return Ee}function st(ne,ke,Ve){var Ee=A.exec(ke.slice(Ve));return Ee?(ne.p=P.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function xt(ne,ke,Ve){var Ee=R.exec(ke.slice(Ve));return Ee?(ne.w=H.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function ht(ne,ke,Ve){var Ee=F.exec(ke.slice(Ve));return Ee?(ne.w=j.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function dt(ne,ke,Ve){var Ee=J.exec(ke.slice(Ve));return Ee?(ne.m=it.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function Ct(ne,ke,Ve){var Ee=Y.exec(ke.slice(Ve));return Ee?(ne.m=rt.get(Ee[0].toLowerCase()),Ve+Ee[0].length):-1}function tt(ne,ke,Ve){return yt(ne,a,ke,Ve)}function Pt(ne,ke,Ve){return yt(ne,f,ke,Ve)}function pt(ne,ke,Ve){return yt(ne,p,ke,Ve)}function Ft(ne){return b[ne.getDay()]}function X(ne){return m[ne.getDay()]}function Rt(ne){return C[ne.getMonth()]}function Bt(ne){return E[ne.getMonth()]}function vt(ne){return v[+(ne.getHours()>=12)]}function Ot(ne){return 1+~~(ne.getMonth()/3)}function Vt(ne){return b[ne.getUTCDay()]}function qe(ne){return m[ne.getUTCDay()]}function _n(ne){return C[ne.getUTCMonth()]}function Te(ne){return E[ne.getUTCMonth()]}function Wn(ne){return v[+(ne.getUTCHours()>=12)]}function Ae(ne){return 1+~~(ne.getUTCMonth()/3)}return{format:function(ne){var ke=mt(ne+="",ft);return ke.toString=function(){return ne},ke},parse:function(ne){var ke=ct(ne+="",!1);return ke.toString=function(){return ne},ke},utcFormat:function(ne){var ke=mt(ne+="",Tt);return ke.toString=function(){return ne},ke},utcParse:function(ne){var ke=ct(ne+="",!0);return ke.toString=function(){return ne},ke}}}var tDt={"-":"",_:" ",0:"0"},Q1=/^\s*\d+/,k7e=/^%/,E7e=/[\\^$*+?|[\]().{}]/g;function Fc(i,a,f){var p=i<0?"-":"",v=(p?-i:i)+"",m=v.length;return p+(m[a.toLowerCase(),f]))}function _7e(i,a,f){var p=Q1.exec(a.slice(f,f+1));return p?(i.w=+p[0],f+p[0].length):-1}function C7e(i,a,f){var p=Q1.exec(a.slice(f,f+1));return p?(i.u=+p[0],f+p[0].length):-1}function S7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.U=+p[0],f+p[0].length):-1}function A7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.V=+p[0],f+p[0].length):-1}function L7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.W=+p[0],f+p[0].length):-1}function eDt(i,a,f){var p=Q1.exec(a.slice(f,f+4));return p?(i.y=+p[0],f+p[0].length):-1}function nDt(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.y=+p[0]+(+p[0]>68?1900:2e3),f+p[0].length):-1}function M7e(i,a,f){var p=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(a.slice(f,f+6));return p?(i.Z=p[1]?0:-(p[2]+(p[3]||"00")),f+p[0].length):-1}function D7e(i,a,f){var p=Q1.exec(a.slice(f,f+1));return p?(i.q=p[0]*3-3,f+p[0].length):-1}function I7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.m=p[0]-1,f+p[0].length):-1}function rDt(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.d=+p[0],f+p[0].length):-1}function O7e(i,a,f){var p=Q1.exec(a.slice(f,f+3));return p?(i.m=0,i.d=+p[0],f+p[0].length):-1}function iDt(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.H=+p[0],f+p[0].length):-1}function N7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.M=+p[0],f+p[0].length):-1}function P7e(i,a,f){var p=Q1.exec(a.slice(f,f+2));return p?(i.S=+p[0],f+p[0].length):-1}function F7e(i,a,f){var p=Q1.exec(a.slice(f,f+3));return p?(i.L=+p[0],f+p[0].length):-1}function B7e(i,a,f){var p=Q1.exec(a.slice(f,f+6));return p?(i.L=Math.floor(p[0]/1e3),f+p[0].length):-1}function R7e(i,a,f){var p=k7e.exec(a.slice(f,f+1));return p?f+p[0].length:-1}function j7e(i,a,f){var p=Q1.exec(a.slice(f));return p?(i.Q=+p[0],f+p[0].length):-1}function $7e(i,a,f){var p=Q1.exec(a.slice(f));return p?(i.s=+p[0],f+p[0].length):-1}function sDt(i,a){return Fc(i.getDate(),a,2)}function z7e(i,a){return Fc(i.getHours(),a,2)}function q7e(i,a){return Fc(i.getHours()%12||12,a,2)}function H7e(i,a){return Fc(1+_A.count(UE(i),i),a,3)}function aDt(i,a){return Fc(i.getMilliseconds(),a,3)}function V7e(i,a){return aDt(i,a)+"000"}function G7e(i,a){return Fc(i.getMonth()+1,a,2)}function U7e(i,a){return Fc(i.getMinutes(),a,2)}function W7e(i,a){return Fc(i.getSeconds(),a,2)}function K7e(i){var a=i.getDay();return a===0?7:a}function Y7e(i,a){return Fc(MN.count(UE(i)-1,i),a,2)}function oDt(i){var a=i.getDay();return a>=4||a===0?GE(i):GE.ceil(i)}function X7e(i,a){return i=oDt(i),Fc(GE.count(UE(i),i)+(UE(i).getDay()===4),a,2)}function Q7e(i){return i.getDay()}function Z7e(i,a){return Fc(DN.count(UE(i)-1,i),a,2)}function J7e(i,a){return Fc(i.getFullYear()%100,a,2)}function tEe(i,a){return i=oDt(i),Fc(i.getFullYear()%100,a,2)}function eEe(i,a){return Fc(i.getFullYear()%1e4,a,4)}function nEe(i,a){var f=i.getDay();return i=f>=4||f===0?GE(i):GE.ceil(i),Fc(i.getFullYear()%1e4,a,4)}function rEe(i){var a=i.getTimezoneOffset();return(a>0?"-":(a*=-1,"+"))+Fc(a/60|0,"0",2)+Fc(a%60,"0",2)}function cDt(i,a){return Fc(i.getUTCDate(),a,2)}function iEe(i,a){return Fc(i.getUTCHours(),a,2)}function sEe(i,a){return Fc(i.getUTCHours()%12||12,a,2)}function aEe(i,a){return Fc(1+ZMt.count(IN(i),i),a,3)}function uDt(i,a){return Fc(i.getUTCMilliseconds(),a,3)}function oEe(i,a){return uDt(i,a)+"000"}function cEe(i,a){return Fc(i.getUTCMonth()+1,a,2)}function uEe(i,a){return Fc(i.getUTCMinutes(),a,2)}function lEe(i,a){return Fc(i.getUTCSeconds(),a,2)}function hEe(i){var a=i.getUTCDay();return a===0?7:a}function fEe(i,a){return Fc(JMt.count(IN(i)-1,i),a,2)}function lDt(i){var a=i.getUTCDay();return a>=4||a===0?CA(i):CA.ceil(i)}function dEe(i,a){return i=lDt(i),Fc(CA.count(IN(i),i)+(IN(i).getUTCDay()===4),a,2)}function gEe(i){return i.getUTCDay()}function pEe(i,a){return Fc(qU.count(IN(i)-1,i),a,2)}function bEe(i,a){return Fc(i.getUTCFullYear()%100,a,2)}function vEe(i,a){return i=lDt(i),Fc(i.getUTCFullYear()%100,a,2)}function wEe(i,a){return Fc(i.getUTCFullYear()%1e4,a,4)}function mEe(i,a){var f=i.getUTCDay();return i=f>=4||f===0?CA(i):CA.ceil(i),Fc(i.getUTCFullYear()%1e4,a,4)}function yEe(){return"+0000"}function hDt(){return"%"}function fDt(i){return+i}function dDt(i){return Math.floor(+i/1e3)}var SA,HU;xEe({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function xEe(i){return SA=x7e(i),HU=SA.format,SA.parse,SA.utcFormat,SA.utcParse,SA}function kEe(i){return new Date(i)}function EEe(i){return i instanceof Date?+i:+new Date(+i)}function gDt(i,a,f,p,v,m,b,E,C,A){var P=$Mt(),F=P.invert,j=P.domain,R=A(".%L"),H=A(":%S"),Y=A("%I:%M"),rt=A("%I %p"),J=A("%a %d"),it=A("%b %d"),ft=A("%B"),Tt=A("%Y");function kt(mt){return(C(mt)1?0:i<-1?FN:Math.acos(i)}function bDt(i){return i>=1?VU:i<=-1?-VU:Math.asin(i)}function LEe(i){return i.innerRadius}function MEe(i){return i.outerRadius}function DEe(i){return i.startAngle}function IEe(i){return i.endAngle}function OEe(i){return i&&i.padAngle}function NEe(i,a,f,p,v,m,b,E){var C=f-i,A=p-a,P=b-v,F=E-m,j=F*C-P*A;if(!(j*jtt*tt+Pt*Pt&&(yt=xt,st=ht),{cx:yt,cy:st,x01:-P,y01:-F,x11:yt*(v/kt-1),y11:st*(v/kt-1)}}function LA(){var i=LEe,a=MEe,f=Jh(0),p=null,v=DEe,m=IEe,b=OEe,E=null;function C(){var A,P,F=+i.apply(this,arguments),j=+a.apply(this,arguments),R=v.apply(this,arguments)-VU,H=m.apply(this,arguments)-VU,Y=pDt(H-R),rt=H>R;if(E||(E=A=y1t()),jb0))E.moveTo(0,0);else if(Y>GU-b0)E.moveTo(j*KE(R),j*u3(R)),E.arc(0,0,j,R,H,!rt),F>b0&&(E.moveTo(F*KE(H),F*u3(H)),E.arc(0,0,F,H,R,rt));else{var J=R,it=H,ft=R,Tt=H,kt=Y,mt=Y,ct=b.apply(this,arguments)/2,yt=ct>b0&&(p?+p.apply(this,arguments):AA(F*F+j*j)),st=O1t(pDt(j-F)/2,+f.apply(this,arguments)),xt=st,ht=st,dt,Ct;if(yt>b0){var tt=bDt(yt/F*u3(ct)),Pt=bDt(yt/j*u3(ct));(kt-=tt*2)>b0?(tt*=rt?1:-1,ft+=tt,Tt-=tt):(kt=0,ft=Tt=(R+H)/2),(mt-=Pt*2)>b0?(Pt*=rt?1:-1,J+=Pt,it-=Pt):(mt=0,J=it=(R+H)/2)}var pt=j*KE(J),Ft=j*u3(J),X=F*KE(Tt),Rt=F*u3(Tt);if(st>b0){var Bt=j*KE(it),vt=j*u3(it),Ot=F*KE(ft),Vt=F*u3(ft),qe;if(Yb0?ht>b0?(dt=UU(Ot,Vt,pt,Ft,j,ht,rt),Ct=UU(Bt,vt,X,Rt,j,ht,rt),E.moveTo(dt.cx+dt.x01,dt.cy+dt.y01),htb0)||!(kt>b0)?E.lineTo(X,Rt):xt>b0?(dt=UU(X,Rt,Bt,vt,F,-xt,rt),Ct=UU(pt,Ft,Ot,Vt,F,-xt,rt),E.lineTo(dt.cx+dt.x01,dt.cy+dt.y01),xti?1:a>=i?0:NaN}function REe(i){return i}function jEe(){var i=REe,a=BEe,f=null,p=Jh(0),v=Jh(GU),m=Jh(0);function b(E){var C,A=(E=vDt(E)).length,P,F,j=0,R=new Array(A),H=new Array(A),Y=+p.apply(this,arguments),rt=Math.min(GU,Math.max(-GU,v.apply(this,arguments)-Y)),J,it=Math.min(Math.abs(rt)/A,m.apply(this,arguments)),ft=it*(rt<0?-1:1),Tt;for(C=0;C0&&(j+=Tt);for(a!=null?R.sort(function(kt,mt){return a(H[kt],H[mt])}):f!=null&&R.sort(function(kt,mt){return f(E[kt],E[mt])}),C=0,F=j?(rt-A*ft)/j:0;C0?Tt*F:0)+ft,H[P]={data:E[P],index:C,value:Tt,startAngle:Y,endAngle:J,padAngle:it};return H}return b.value=function(E){return arguments.length?(i=typeof E=="function"?E:Jh(+E),b):i},b.sortValues=function(E){return arguments.length?(a=E,f=null,b):a},b.sort=function(E){return arguments.length?(f=E,a=null,b):f},b.startAngle=function(E){return arguments.length?(p=typeof E=="function"?E:Jh(+E),b):p},b.endAngle=function(E){return arguments.length?(v=typeof E=="function"?E:Jh(+E),b):v},b.padAngle=function(E){return arguments.length?(m=typeof E=="function"?E:Jh(+E),b):m},b}class mDt{constructor(a,f){this._context=a,this._x=f}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(a,f){switch(a=+a,f=+f,this._point){case 0:{this._point=1,this._line?this._context.lineTo(a,f):this._context.moveTo(a,f);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+a)/2,this._y0,this._x0,f,a,f):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+f)/2,a,this._y0,a,f);break}}this._x0=a,this._y0=f}}function $Ee(i){return new mDt(i,!0)}function zEe(i){return new mDt(i,!1)}function Qx(){}function WU(i,a,f){i._context.bezierCurveTo((2*i._x0+i._x1)/3,(2*i._y0+i._y1)/3,(i._x0+2*i._x1)/3,(i._y0+2*i._y1)/3,(i._x0+4*i._x1+a)/6,(i._y0+4*i._y1+f)/6)}function KU(i){this._context=i}KU.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:WU(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:WU(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function MA(i){return new KU(i)}function yDt(i){this._context=i}yDt.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x2=i,this._y2=a;break;case 1:this._point=2,this._x3=i,this._y3=a;break;case 2:this._point=3,this._x4=i,this._y4=a,this._context.moveTo((this._x0+4*this._x1+i)/6,(this._y0+4*this._y1+a)/6);break;default:WU(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function qEe(i){return new yDt(i)}function xDt(i){this._context=i}xDt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var f=(this._x0+4*this._x1+i)/6,p=(this._y0+4*this._y1+a)/6;this._line?this._context.lineTo(f,p):this._context.moveTo(f,p);break;case 3:this._point=4;default:WU(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function HEe(i){return new xDt(i)}function kDt(i,a){this._basis=new KU(i),this._beta=a}kDt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var i=this._x,a=this._y,f=i.length-1;if(f>0)for(var p=i[0],v=a[0],m=i[f]-p,b=a[f]-v,E=-1,C;++E<=f;)C=E/f,this._basis.point(this._beta*i[E]+(1-this._beta)*(p+C*m),this._beta*a[E]+(1-this._beta)*(v+C*b));this._x=this._y=null,this._basis.lineEnd()},point:function(i,a){this._x.push(+i),this._y.push(+a)}};const VEe=function i(a){function f(p){return a===1?new KU(p):new kDt(p,a)}return f.beta=function(p){return i(+p)},f}(.85);function YU(i,a,f){i._context.bezierCurveTo(i._x1+i._k*(i._x2-i._x0),i._y1+i._k*(i._y2-i._y0),i._x2+i._k*(i._x1-a),i._y2+i._k*(i._y1-f),i._x2,i._y2)}function N1t(i,a){this._context=i,this._k=(1-a)/6}N1t.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:YU(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2,this._x1=i,this._y1=a;break;case 2:this._point=3;default:YU(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const GEe=function i(a){function f(p){return new N1t(p,a)}return f.tension=function(p){return i(+p)},f}(0);function P1t(i,a){this._context=i,this._k=(1-a)/6}P1t.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:YU(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const UEe=function i(a){function f(p){return new P1t(p,a)}return f.tension=function(p){return i(+p)},f}(0);function F1t(i,a){this._context=i,this._k=(1-a)/6}F1t.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:YU(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const WEe=function i(a){function f(p){return new F1t(p,a)}return f.tension=function(p){return i(+p)},f}(0);function B1t(i,a,f){var p=i._x1,v=i._y1,m=i._x2,b=i._y2;if(i._l01_a>b0){var E=2*i._l01_2a+3*i._l01_a*i._l12_a+i._l12_2a,C=3*i._l01_a*(i._l01_a+i._l12_a);p=(p*E-i._x0*i._l12_2a+i._x2*i._l01_2a)/C,v=(v*E-i._y0*i._l12_2a+i._y2*i._l01_2a)/C}if(i._l23_a>b0){var A=2*i._l23_2a+3*i._l23_a*i._l12_a+i._l12_2a,P=3*i._l23_a*(i._l23_a+i._l12_a);m=(m*A+i._x1*i._l23_2a-a*i._l12_2a)/P,b=(b*A+i._y1*i._l23_2a-f*i._l12_2a)/P}i._context.bezierCurveTo(p,v,m,b,i._x2,i._y2)}function EDt(i,a){this._context=i,this._alpha=a}EDt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,p=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+p*p,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3;default:B1t(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const KEe=function i(a){function f(p){return a?new EDt(p,a):new N1t(p,0)}return f.alpha=function(p){return i(+p)},f}(.5);function TDt(i,a){this._context=i,this._alpha=a}TDt.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,p=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+p*p,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:B1t(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const YEe=function i(a){function f(p){return a?new TDt(p,a):new P1t(p,0)}return f.alpha=function(p){return i(+p)},f}(.5);function _Dt(i,a){this._context=i,this._alpha=a}_Dt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,p=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+p*p,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:B1t(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const XEe=function i(a){function f(p){return a?new _Dt(p,a):new F1t(p,0)}return f.alpha=function(p){return i(+p)},f}(.5);function CDt(i){this._context=i}CDt.prototype={areaStart:Qx,areaEnd:Qx,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(i,a){i=+i,a=+a,this._point?this._context.lineTo(i,a):(this._point=1,this._context.moveTo(i,a))}};function QEe(i){return new CDt(i)}function SDt(i){return i<0?-1:1}function ADt(i,a,f){var p=i._x1-i._x0,v=a-i._x1,m=(i._y1-i._y0)/(p||v<0&&-0),b=(f-i._y1)/(v||p<0&&-0),E=(m*v+b*p)/(p+v);return(SDt(m)+SDt(b))*Math.min(Math.abs(m),Math.abs(b),.5*Math.abs(E))||0}function LDt(i,a){var f=i._x1-i._x0;return f?(3*(i._y1-i._y0)/f-a)/2:a}function R1t(i,a,f){var p=i._x0,v=i._y0,m=i._x1,b=i._y1,E=(m-p)/3;i._context.bezierCurveTo(p+E,v+E*a,m-E,b-E*f,m,b)}function XU(i){this._context=i}XU.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:R1t(this,this._t0,LDt(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){var f=NaN;if(i=+i,a=+a,!(i===this._x1&&a===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,R1t(this,LDt(this,f=ADt(this,i,a)),f);break;default:R1t(this,this._t0,f=ADt(this,i,a));break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a,this._t0=f}}};function MDt(i){this._context=new DDt(i)}(MDt.prototype=Object.create(XU.prototype)).point=function(i,a){XU.prototype.point.call(this,a,i)};function DDt(i){this._context=i}DDt.prototype={moveTo:function(i,a){this._context.moveTo(a,i)},closePath:function(){this._context.closePath()},lineTo:function(i,a){this._context.lineTo(a,i)},bezierCurveTo:function(i,a,f,p,v,m){this._context.bezierCurveTo(a,i,p,f,m,v)}};function ZEe(i){return new XU(i)}function JEe(i){return new MDt(i)}function IDt(i){this._context=i}IDt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var i=this._x,a=this._y,f=i.length;if(f)if(this._line?this._context.lineTo(i[0],a[0]):this._context.moveTo(i[0],a[0]),f===2)this._context.lineTo(i[1],a[1]);else for(var p=ODt(i),v=ODt(a),m=0,b=1;b=0;--a)v[a]=(b[a]-v[a+1])/m[a];for(m[f-1]=(i[f]+v[f-1])/2,a=0;a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,a),this._context.lineTo(i,a);else{var f=this._x*(1-this._t)+i*this._t;this._context.lineTo(f,this._y),this._context.lineTo(f,a)}break}}this._x=i,this._y=a}};function e9e(i){return new QU(i,.5)}function n9e(i){return new QU(i,0)}function r9e(i){return new QU(i,1)}function BN(i,a,f){this.k=i,this.x=a,this.y=f}BN.prototype={constructor:BN,scale:function(i){return i===1?this:new BN(this.k*i,this.x,this.y)},translate:function(i,a){return i===0&a===0?this:new BN(this.k,this.x+this.k*i,this.y+this.k*a)},apply:function(i){return[i[0]*this.k+this.x,i[1]*this.k+this.y]},applyX:function(i){return i*this.k+this.x},applyY:function(i){return i*this.k+this.y},invert:function(i){return[(i[0]-this.x)/this.k,(i[1]-this.y)/this.k]},invertX:function(i){return(i-this.x)/this.k},invertY:function(i){return(i-this.y)/this.k},rescaleX:function(i){return i.copy().domain(i.range().map(this.invertX,this).map(i.invert,i))},rescaleY:function(i){return i.copy().domain(i.range().map(this.invertY,this).map(i.invert,i))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},BN.prototype;/*! @license DOMPurify 3.0.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.5/LICENSE */const{entries:NDt,setPrototypeOf:PDt,isFrozen:i9e,getPrototypeOf:s9e,getOwnPropertyDescriptor:a9e}=Object;let{freeze:sg,seal:Xw,create:o9e}=Object,{apply:j1t,construct:$1t}=typeof Reflect<"u"&&Reflect;j1t||(j1t=function(a,f,p){return a.apply(f,p)}),sg||(sg=function(a){return a}),Xw||(Xw=function(a){return a}),$1t||($1t=function(a,f){return new a(...f)});const c9e=X2(Array.prototype.forEach),FDt=X2(Array.prototype.pop),RN=X2(Array.prototype.push),ZU=X2(String.prototype.toLowerCase),z1t=X2(String.prototype.toString),u9e=X2(String.prototype.match),Qw=X2(String.prototype.replace),l9e=X2(String.prototype.indexOf),h9e=X2(String.prototype.trim),Ib=X2(RegExp.prototype.test),jN=f9e(TypeError);function X2(i){return function(a){for(var f=arguments.length,p=new Array(f>1?f-1:0),v=1;v/gm),v9e=Xw(/\${[\w\W]*}/gm),w9e=Xw(/^data-[\-\w.\u00B7-\uFFFF]/),m9e=Xw(/^aria-[\-\w]+$/),zDt=Xw(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),y9e=Xw(/^(?:\w+script|data):/i),x9e=Xw(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),qDt=Xw(/^html$/i);var HDt=Object.freeze({__proto__:null,MUSTACHE_EXPR:p9e,ERB_EXPR:b9e,TMPLIT_EXPR:v9e,DATA_ATTR:w9e,ARIA_ATTR:m9e,IS_ALLOWED_URI:zDt,IS_SCRIPT_OR_DATA:y9e,ATTR_WHITESPACE:x9e,DOCTYPE_NAME:qDt});const k9e=()=>typeof window>"u"?null:window,E9e=function(a,f){if(typeof a!="object"||typeof a.createPolicy!="function")return null;let p=null;const v="data-tt-policy-suffix";f&&f.hasAttribute(v)&&(p=f.getAttribute(v));const m="dompurify"+(p?"#"+p:"");try{return a.createPolicy(m,{createHTML(b){return b},createScriptURL(b){return b}})}catch{return console.warn("TrustedTypes policy "+m+" could not be created."),null}};function VDt(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k9e();const a=Vi=>VDt(Vi);if(a.version="3.0.5",a.removed=[],!i||!i.document||i.document.nodeType!==9)return a.isSupported=!1,a;const f=i.document,p=f.currentScript;let{document:v}=i;const{DocumentFragment:m,HTMLTemplateElement:b,Node:E,Element:C,NodeFilter:A,NamedNodeMap:P=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:F,DOMParser:j,trustedTypes:R}=i,H=C.prototype,Y=JU(H,"cloneNode"),rt=JU(H,"nextSibling"),J=JU(H,"childNodes"),it=JU(H,"parentNode");if(typeof b=="function"){const Vi=v.createElement("template");Vi.content&&Vi.content.ownerDocument&&(v=Vi.content.ownerDocument)}let ft,Tt="";const{implementation:kt,createNodeIterator:mt,createDocumentFragment:ct,getElementsByTagName:yt}=v,{importNode:st}=f;let xt={};a.isSupported=typeof NDt=="function"&&typeof it=="function"&&kt&&kt.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:ht,ERB_EXPR:dt,TMPLIT_EXPR:Ct,DATA_ATTR:tt,ARIA_ATTR:Pt,IS_SCRIPT_OR_DATA:pt,ATTR_WHITESPACE:Ft}=HDt;let{IS_ALLOWED_URI:X}=HDt,Rt=null;const Bt=_o({},[...BDt,...q1t,...H1t,...V1t,...RDt]);let vt=null;const Ot=_o({},[...jDt,...G1t,...$Dt,...tW]);let Vt=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),qe=null,_n=null,Te=!0,Wn=!0,Ae=!1,ne=!0,ke=!1,Ve=!1,Ee=!1,He=!1,Ce=!1,$e=!1,ye=!1,fn=!0,Yt=!1;const Mi="user-content-";let qt=!0,zi=!1,Se={},ki=null;const Ri=_o({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let pi=null;const bi=_o({},["audio","video","img","source","image","track"]);let dn=null;const Nn=_o({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Wr="http://www.w3.org/1998/Math/MathML",Li="http://www.w3.org/2000/svg",is="http://www.w3.org/1999/xhtml";let Ts=is,Aa=!1,Xi=null;const Ga=_o({},[Wr,Li,is],z1t);let _r;const qr=["application/xhtml+xml","text/html"],Oi="text/html";let gr,Js=null;const Vn=v.createElement("form"),Xc=function(Ke){return Ke instanceof RegExp||Ke instanceof Function},Er=function(Ke){if(!(Js&&Js===Ke)){if((!Ke||typeof Ke!="object")&&(Ke={}),Ke=DA(Ke),_r=qr.indexOf(Ke.PARSER_MEDIA_TYPE)===-1?_r=Oi:_r=Ke.PARSER_MEDIA_TYPE,gr=_r==="application/xhtml+xml"?z1t:ZU,Rt="ALLOWED_TAGS"in Ke?_o({},Ke.ALLOWED_TAGS,gr):Bt,vt="ALLOWED_ATTR"in Ke?_o({},Ke.ALLOWED_ATTR,gr):Ot,Xi="ALLOWED_NAMESPACES"in Ke?_o({},Ke.ALLOWED_NAMESPACES,z1t):Ga,dn="ADD_URI_SAFE_ATTR"in Ke?_o(DA(Nn),Ke.ADD_URI_SAFE_ATTR,gr):Nn,pi="ADD_DATA_URI_TAGS"in Ke?_o(DA(bi),Ke.ADD_DATA_URI_TAGS,gr):bi,ki="FORBID_CONTENTS"in Ke?_o({},Ke.FORBID_CONTENTS,gr):Ri,qe="FORBID_TAGS"in Ke?_o({},Ke.FORBID_TAGS,gr):{},_n="FORBID_ATTR"in Ke?_o({},Ke.FORBID_ATTR,gr):{},Se="USE_PROFILES"in Ke?Ke.USE_PROFILES:!1,Te=Ke.ALLOW_ARIA_ATTR!==!1,Wn=Ke.ALLOW_DATA_ATTR!==!1,Ae=Ke.ALLOW_UNKNOWN_PROTOCOLS||!1,ne=Ke.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ke=Ke.SAFE_FOR_TEMPLATES||!1,Ve=Ke.WHOLE_DOCUMENT||!1,Ce=Ke.RETURN_DOM||!1,$e=Ke.RETURN_DOM_FRAGMENT||!1,ye=Ke.RETURN_TRUSTED_TYPE||!1,He=Ke.FORCE_BODY||!1,fn=Ke.SANITIZE_DOM!==!1,Yt=Ke.SANITIZE_NAMED_PROPS||!1,qt=Ke.KEEP_CONTENT!==!1,zi=Ke.IN_PLACE||!1,X=Ke.ALLOWED_URI_REGEXP||zDt,Ts=Ke.NAMESPACE||is,Vt=Ke.CUSTOM_ELEMENT_HANDLING||{},Ke.CUSTOM_ELEMENT_HANDLING&&Xc(Ke.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Vt.tagNameCheck=Ke.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Ke.CUSTOM_ELEMENT_HANDLING&&Xc(Ke.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Vt.attributeNameCheck=Ke.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Ke.CUSTOM_ELEMENT_HANDLING&&typeof Ke.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Vt.allowCustomizedBuiltInElements=Ke.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ke&&(Wn=!1),$e&&(Ce=!0),Se&&(Rt=_o({},[...RDt]),vt=[],Se.html===!0&&(_o(Rt,BDt),_o(vt,jDt)),Se.svg===!0&&(_o(Rt,q1t),_o(vt,G1t),_o(vt,tW)),Se.svgFilters===!0&&(_o(Rt,H1t),_o(vt,G1t),_o(vt,tW)),Se.mathMl===!0&&(_o(Rt,V1t),_o(vt,$Dt),_o(vt,tW))),Ke.ADD_TAGS&&(Rt===Bt&&(Rt=DA(Rt)),_o(Rt,Ke.ADD_TAGS,gr)),Ke.ADD_ATTR&&(vt===Ot&&(vt=DA(vt)),_o(vt,Ke.ADD_ATTR,gr)),Ke.ADD_URI_SAFE_ATTR&&_o(dn,Ke.ADD_URI_SAFE_ATTR,gr),Ke.FORBID_CONTENTS&&(ki===Ri&&(ki=DA(ki)),_o(ki,Ke.FORBID_CONTENTS,gr)),qt&&(Rt["#text"]=!0),Ve&&_o(Rt,["html","head","body"]),Rt.table&&(_o(Rt,["tbody"]),delete qe.tbody),Ke.TRUSTED_TYPES_POLICY){if(typeof Ke.TRUSTED_TYPES_POLICY.createHTML!="function")throw jN('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Ke.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw jN('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ft=Ke.TRUSTED_TYPES_POLICY,Tt=ft.createHTML("")}else ft===void 0&&(ft=E9e(R,p)),ft!==null&&typeof Tt=="string"&&(Tt=ft.createHTML(""));sg&&sg(Ke),Js=Ke}},Mc=_o({},["mi","mo","mn","ms","mtext"]),bp=_o({},["foreignobject","desc","title","annotation-xml"]),fm=_o({},["title","style","font","a","script"]),T0=_o({},q1t);_o(T0,H1t),_o(T0,d9e);const Fd=_o({},V1t);_o(Fd,g9e);const No=function(Ke){let kr=it(Ke);(!kr||!kr.tagName)&&(kr={namespaceURI:Ts,tagName:"template"});const ni=ZU(Ke.tagName),eo=ZU(kr.tagName);return Xi[Ke.namespaceURI]?Ke.namespaceURI===Li?kr.namespaceURI===is?ni==="svg":kr.namespaceURI===Wr?ni==="svg"&&(eo==="annotation-xml"||Mc[eo]):!!T0[ni]:Ke.namespaceURI===Wr?kr.namespaceURI===is?ni==="math":kr.namespaceURI===Li?ni==="math"&&bp[eo]:!!Fd[ni]:Ke.namespaceURI===is?kr.namespaceURI===Li&&!bp[eo]||kr.namespaceURI===Wr&&!Mc[eo]?!1:!Fd[ni]&&(fm[ni]||!T0[ni]):!!(_r==="application/xhtml+xml"&&Xi[Ke.namespaceURI]):!1},ta=function(Ke){RN(a.removed,{element:Ke});try{Ke.parentNode.removeChild(Ke)}catch{Ke.remove()}},bu=function(Ke,kr){try{RN(a.removed,{attribute:kr.getAttributeNode(Ke),from:kr})}catch{RN(a.removed,{attribute:null,from:kr})}if(kr.removeAttribute(Ke),Ke==="is"&&!vt[Ke])if(Ce||$e)try{ta(kr)}catch{}else try{kr.setAttribute(Ke,"")}catch{}},Pu=function(Ke){let kr,ni;if(He)Ke=""+Ke;else{const Ju=u9e(Ke,/^[\r\n\t ]+/);ni=Ju&&Ju[0]}_r==="application/xhtml+xml"&&Ts===is&&(Ke=''+Ke+"");const eo=ft?ft.createHTML(Ke):Ke;if(Ts===is)try{kr=new j().parseFromString(eo,_r)}catch{}if(!kr||!kr.documentElement){kr=kt.createDocument(Ts,"template",null);try{kr.documentElement.innerHTML=Aa?Tt:eo}catch{}}const Dc=kr.body||kr.documentElement;return Ke&&ni&&Dc.insertBefore(v.createTextNode(ni),Dc.childNodes[0]||null),Ts===is?yt.call(kr,Ve?"html":"body")[0]:Ve?kr.documentElement:Dc},lo=function(Ke){return mt.call(Ke.ownerDocument||Ke,Ke,A.SHOW_ELEMENT|A.SHOW_COMMENT|A.SHOW_TEXT,null,!1)},mo=function(Ke){return Ke instanceof F&&(typeof Ke.nodeName!="string"||typeof Ke.textContent!="string"||typeof Ke.removeChild!="function"||!(Ke.attributes instanceof P)||typeof Ke.removeAttribute!="function"||typeof Ke.setAttribute!="function"||typeof Ke.namespaceURI!="string"||typeof Ke.insertBefore!="function"||typeof Ke.hasChildNodes!="function")},Os=function(Ke){return typeof E=="object"?Ke instanceof E:Ke&&typeof Ke=="object"&&typeof Ke.nodeType=="number"&&typeof Ke.nodeName=="string"},Tl=function(Ke,kr,ni){xt[Ke]&&c9e(xt[Ke],eo=>{eo.call(a,kr,ni,Js)})},Fu=function(Ke){let kr;if(Tl("beforeSanitizeElements",Ke,null),mo(Ke))return ta(Ke),!0;const ni=gr(Ke.nodeName);if(Tl("uponSanitizeElement",Ke,{tagName:ni,allowedTags:Rt}),Ke.hasChildNodes()&&!Os(Ke.firstElementChild)&&(!Os(Ke.content)||!Os(Ke.content.firstElementChild))&&Ib(/<[/\w]/g,Ke.innerHTML)&&Ib(/<[/\w]/g,Ke.textContent))return ta(Ke),!0;if(!Rt[ni]||qe[ni]){if(!qe[ni]&&nd(ni)&&(Vt.tagNameCheck instanceof RegExp&&Ib(Vt.tagNameCheck,ni)||Vt.tagNameCheck instanceof Function&&Vt.tagNameCheck(ni)))return!1;if(qt&&!ki[ni]){const eo=it(Ke)||Ke.parentNode,Dc=J(Ke)||Ke.childNodes;if(Dc&&eo){const Ju=Dc.length;for(let Qo=Ju-1;Qo>=0;--Qo)eo.insertBefore(Y(Dc[Qo],!0),rt(Ke))}}return ta(Ke),!0}return Ke instanceof C&&!No(Ke)||(ni==="noscript"||ni==="noembed"||ni==="noframes")&&Ib(/<\/no(script|embed|frames)/i,Ke.innerHTML)?(ta(Ke),!0):(ke&&Ke.nodeType===3&&(kr=Ke.textContent,kr=Qw(kr,ht," "),kr=Qw(kr,dt," "),kr=Qw(kr,Ct," "),Ke.textContent!==kr&&(RN(a.removed,{element:Ke.cloneNode()}),Ke.textContent=kr)),Tl("afterSanitizeElements",Ke,null),!1)},zo=function(Ke,kr,ni){if(fn&&(kr==="id"||kr==="name")&&(ni in v||ni in Vn))return!1;if(!(Wn&&!_n[kr]&&Ib(tt,kr))){if(!(Te&&Ib(Pt,kr))){if(!vt[kr]||_n[kr]){if(!(nd(Ke)&&(Vt.tagNameCheck instanceof RegExp&&Ib(Vt.tagNameCheck,Ke)||Vt.tagNameCheck instanceof Function&&Vt.tagNameCheck(Ke))&&(Vt.attributeNameCheck instanceof RegExp&&Ib(Vt.attributeNameCheck,kr)||Vt.attributeNameCheck instanceof Function&&Vt.attributeNameCheck(kr))||kr==="is"&&Vt.allowCustomizedBuiltInElements&&(Vt.tagNameCheck instanceof RegExp&&Ib(Vt.tagNameCheck,ni)||Vt.tagNameCheck instanceof Function&&Vt.tagNameCheck(ni))))return!1}else if(!dn[kr]){if(!Ib(X,Qw(ni,Ft,""))){if(!((kr==="src"||kr==="xlink:href"||kr==="href")&&Ke!=="script"&&l9e(ni,"data:")===0&&pi[Ke])){if(!(Ae&&!Ib(pt,Qw(ni,Ft,"")))){if(ni)return!1}}}}}}return!0},nd=function(Ke){return Ke.indexOf("-")>0},sf=function(Ke){let kr,ni,eo,Dc;Tl("beforeSanitizeAttributes",Ke,null);const{attributes:Ju}=Ke;if(!Ju)return;const Qo={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:vt};for(Dc=Ju.length;Dc--;){kr=Ju[Dc];const{name:jf,namespaceURI:rh}=kr;if(ni=jf==="value"?kr.value:h9e(kr.value),eo=gr(jf),Qo.attrName=eo,Qo.attrValue=ni,Qo.keepAttr=!0,Qo.forceKeepAttr=void 0,Tl("uponSanitizeAttribute",Ke,Qo),ni=Qo.attrValue,Qo.forceKeepAttr||(bu(jf,Ke),!Qo.keepAttr))continue;if(!ne&&Ib(/\/>/i,ni)){bu(jf,Ke);continue}ke&&(ni=Qw(ni,ht," "),ni=Qw(ni,dt," "),ni=Qw(ni,Ct," "));const dm=gr(Ke.nodeName);if(zo(dm,eo,ni)){if(Yt&&(eo==="id"||eo==="name")&&(bu(jf,Ke),ni=Mi+ni),ft&&typeof R=="object"&&typeof R.getAttributeType=="function"&&!rh)switch(R.getAttributeType(dm,eo)){case"TrustedHTML":{ni=ft.createHTML(ni);break}case"TrustedScriptURL":{ni=ft.createScriptURL(ni);break}}try{rh?Ke.setAttributeNS(rh,jf,ni):Ke.setAttribute(jf,ni),FDt(a.removed)}catch{}}}Tl("afterSanitizeAttributes",Ke,null)},ll=function Vi(Ke){let kr;const ni=lo(Ke);for(Tl("beforeSanitizeShadowDOM",Ke,null);kr=ni.nextNode();)Tl("uponSanitizeShadowNode",kr,null),!Fu(kr)&&(kr.content instanceof m&&Vi(kr.content),sf(kr));Tl("afterSanitizeShadowDOM",Ke,null)};return a.sanitize=function(Vi){let Ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},kr,ni,eo,Dc;if(Aa=!Vi,Aa&&(Vi=""),typeof Vi!="string"&&!Os(Vi))if(typeof Vi.toString=="function"){if(Vi=Vi.toString(),typeof Vi!="string")throw jN("dirty is not a string, aborting")}else throw jN("toString is not a function");if(!a.isSupported)return Vi;if(Ee||Er(Ke),a.removed=[],typeof Vi=="string"&&(zi=!1),zi){if(Vi.nodeName){const jf=gr(Vi.nodeName);if(!Rt[jf]||qe[jf])throw jN("root node is forbidden and cannot be sanitized in-place")}}else if(Vi instanceof E)kr=Pu(""),ni=kr.ownerDocument.importNode(Vi,!0),ni.nodeType===1&&ni.nodeName==="BODY"||ni.nodeName==="HTML"?kr=ni:kr.appendChild(ni);else{if(!Ce&&!ke&&!Ve&&Vi.indexOf("<")===-1)return ft&&ye?ft.createHTML(Vi):Vi;if(kr=Pu(Vi),!kr)return Ce?null:ye?Tt:""}kr&&He&&ta(kr.firstChild);const Ju=lo(zi?Vi:kr);for(;eo=Ju.nextNode();)Fu(eo)||(eo.content instanceof m&&ll(eo.content),sf(eo));if(zi)return Vi;if(Ce){if($e)for(Dc=ct.call(kr.ownerDocument);kr.firstChild;)Dc.appendChild(kr.firstChild);else Dc=kr;return(vt.shadowroot||vt.shadowrootmode)&&(Dc=st.call(f,Dc,!0)),Dc}let Qo=Ve?kr.outerHTML:kr.innerHTML;return Ve&&Rt["!doctype"]&&kr.ownerDocument&&kr.ownerDocument.doctype&&kr.ownerDocument.doctype.name&&Ib(qDt,kr.ownerDocument.doctype.name)&&(Qo=" +`+Qo),ke&&(Qo=Qw(Qo,ht," "),Qo=Qw(Qo,dt," "),Qo=Qw(Qo,Ct," ")),ft&&ye?ft.createHTML(Qo):Qo},a.setConfig=function(Vi){Er(Vi),Ee=!0},a.clearConfig=function(){Js=null,Ee=!1},a.isValidAttribute=function(Vi,Ke,kr){Js||Er({});const ni=gr(Vi),eo=gr(Ke);return zo(ni,eo,kr)},a.addHook=function(Vi,Ke){typeof Ke=="function"&&(xt[Vi]=xt[Vi]||[],RN(xt[Vi],Ke))},a.removeHook=function(Vi){if(xt[Vi])return FDt(xt[Vi])},a.removeHooks=function(Vi){xt[Vi]&&(xt[Vi]=[])},a.removeAllHooks=function(){xt={}},a}var eW=VDt();const $N=//gi,T9e=i=>i?WDt(i).replace(/\\n/g,"#br#").split("#br#"):[""],GDt=i=>eW.sanitize(i),UDt=(i,a)=>{var f;if(((f=a.flowchart)==null?void 0:f.htmlLabels)!==!1){const p=a.securityLevel;p==="antiscript"||p==="strict"?i=GDt(i):p!=="loose"&&(i=WDt(i),i=i.replace(//g,">"),i=i.replace(/=/g,"="),i=A9e(i))}return i},v0=(i,a)=>i&&(a.dompurifyConfig?i=eW.sanitize(UDt(i,a),a.dompurifyConfig).toString():i=eW.sanitize(UDt(i,a),{FORBID_TAGS:["style"]}).toString(),i),_9e=(i,a)=>typeof i=="string"?v0(i,a):i.flat().map(f=>v0(f,a)),C9e=i=>$N.test(i),S9e=i=>i.split($N),A9e=i=>i.replace(/#br#/g,"
"),WDt=i=>i.replace($N,"#br#"),L9e=i=>{let a="";return i&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replaceAll(/\(/g,"\\("),a=a.replaceAll(/\)/g,"\\)")),a},u1=i=>!(i===!1||["false","null","0"].includes(String(i).trim().toLowerCase())),M9e=function(...i){const a=i.filter(f=>!isNaN(f));return Math.max(...a)},D9e=function(...i){const a=i.filter(f=>!isNaN(f));return Math.min(...a)},zN=function(i){let a=i;if(i.split("~").length-1>=2){let f=a;do a=f,f=a.replace(/~([^\s,:;]+)~/,"<$1>");while(f!=a);return zN(f)}else return a},ui={getRows:T9e,sanitizeText:v0,sanitizeTextOrArray:_9e,hasBreaks:C9e,splitBreaks:S9e,lineBreakRegex:$N,removeScript:GDt,getUrl:L9e,evaluate:u1,getMax:M9e,getMin:D9e},nW={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:i=>i>=255?255:i<0?0:i,g:i=>i>=255?255:i<0?0:i,b:i=>i>=255?255:i<0?0:i,h:i=>i%360,s:i=>i>=100?100:i<0?0:i,l:i=>i>=100?100:i<0?0:i,a:i=>i>=1?1:i<0?0:i},toLinear:i=>{const a=i/255;return i>.03928?Math.pow((a+.055)/1.055,2.4):a/12.92},hue2rgb:(i,a,f)=>(f<0&&(f+=1),f>1&&(f-=1),f<1/6?i+(a-i)*6*f:f<1/2?a:f<2/3?i+(a-i)*(2/3-f)*6:i),hsl2rgb:({h:i,s:a,l:f},p)=>{if(!a)return f*2.55;i/=360,a/=100,f/=100;const v=f<.5?f*(1+a):f+a-f*a,m=2*f-v;switch(p){case"r":return nW.hue2rgb(m,v,i+1/3)*255;case"g":return nW.hue2rgb(m,v,i)*255;case"b":return nW.hue2rgb(m,v,i-1/3)*255}},rgb2hsl:({r:i,g:a,b:f},p)=>{i/=255,a/=255,f/=255;const v=Math.max(i,a,f),m=Math.min(i,a,f),b=(v+m)/2;if(p==="l")return b*100;if(v===m)return 0;const E=v-m,C=b>.5?E/(2-v-m):E/(v+m);if(p==="s")return C*100;switch(v){case i:return((a-f)/E+(aa>f?Math.min(a,Math.max(f,i)):Math.min(f,Math.max(a,i)),round:i=>Math.round(i*1e10)/1e10},unit:{dec2hex:i=>{const a=Math.round(i).toString(16);return a.length>1?a:`0${a}`}}},Zx={};for(let i=0;i<=255;i++)Zx[i]=ka.unit.dec2hex(i);const w0={ALL:0,RGB:1,HSL:2};class I9e{constructor(){this.type=w0.ALL}get(){return this.type}set(a){if(this.type&&this.type!==a)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=a}reset(){this.type=w0.ALL}is(a){return this.type===a}}const O9e=I9e;class N9e{constructor(a,f){this.color=f,this.changed=!1,this.data=a,this.type=new O9e}set(a,f){return this.color=f,this.changed=!1,this.data=a,this.type.type=w0.ALL,this}_ensureHSL(){const a=this.data,{h:f,s:p,l:v}=a;f===void 0&&(a.h=ka.channel.rgb2hsl(a,"h")),p===void 0&&(a.s=ka.channel.rgb2hsl(a,"s")),v===void 0&&(a.l=ka.channel.rgb2hsl(a,"l"))}_ensureRGB(){const a=this.data,{r:f,g:p,b:v}=a;f===void 0&&(a.r=ka.channel.hsl2rgb(a,"r")),p===void 0&&(a.g=ka.channel.hsl2rgb(a,"g")),v===void 0&&(a.b=ka.channel.hsl2rgb(a,"b"))}get r(){const a=this.data,f=a.r;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"r"))}get g(){const a=this.data,f=a.g;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"g"))}get b(){const a=this.data,f=a.b;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"b"))}get h(){const a=this.data,f=a.h;return!this.type.is(w0.RGB)&&f!==void 0?f:(this._ensureRGB(),ka.channel.rgb2hsl(a,"h"))}get s(){const a=this.data,f=a.s;return!this.type.is(w0.RGB)&&f!==void 0?f:(this._ensureRGB(),ka.channel.rgb2hsl(a,"s"))}get l(){const a=this.data,f=a.l;return!this.type.is(w0.RGB)&&f!==void 0?f:(this._ensureRGB(),ka.channel.rgb2hsl(a,"l"))}get a(){return this.data.a}set r(a){this.type.set(w0.RGB),this.changed=!0,this.data.r=a}set g(a){this.type.set(w0.RGB),this.changed=!0,this.data.g=a}set b(a){this.type.set(w0.RGB),this.changed=!0,this.data.b=a}set h(a){this.type.set(w0.HSL),this.changed=!0,this.data.h=a}set s(a){this.type.set(w0.HSL),this.changed=!0,this.data.s=a}set l(a){this.type.set(w0.HSL),this.changed=!0,this.data.l=a}set a(a){this.changed=!0,this.data.a=a}}const P9e=N9e,rW=new P9e({r:0,g:0,b:0,a:0},"transparent"),KDt={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:i=>{if(i.charCodeAt(0)!==35)return;const a=i.match(KDt.re);if(!a)return;const f=a[1],p=parseInt(f,16),v=f.length,m=v%4===0,b=v>4,E=b?1:17,C=b?8:4,A=m?0:-1,P=b?255:15;return rW.set({r:(p>>C*(A+3)&P)*E,g:(p>>C*(A+2)&P)*E,b:(p>>C*(A+1)&P)*E,a:m?(p&P)*E/255:1},i)},stringify:i=>{const{r:a,g:f,b:p,a:v}=i;return v<1?`#${Zx[Math.round(a)]}${Zx[Math.round(f)]}${Zx[Math.round(p)]}${Zx[Math.round(v*255)]}`:`#${Zx[Math.round(a)]}${Zx[Math.round(f)]}${Zx[Math.round(p)]}`}},qN=KDt,iW={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:i=>{const a=i.match(iW.hueRe);if(a){const[,f,p]=a;switch(p){case"grad":return ka.channel.clamp.h(parseFloat(f)*.9);case"rad":return ka.channel.clamp.h(parseFloat(f)*180/Math.PI);case"turn":return ka.channel.clamp.h(parseFloat(f)*360)}}return ka.channel.clamp.h(parseFloat(i))},parse:i=>{const a=i.charCodeAt(0);if(a!==104&&a!==72)return;const f=i.match(iW.re);if(!f)return;const[,p,v,m,b,E]=f;return rW.set({h:iW._hue2deg(p),s:ka.channel.clamp.s(parseFloat(v)),l:ka.channel.clamp.l(parseFloat(m)),a:b?ka.channel.clamp.a(E?parseFloat(b)/100:parseFloat(b)):1},i)},stringify:i=>{const{h:a,s:f,l:p,a:v}=i;return v<1?`hsla(${ka.lang.round(a)}, ${ka.lang.round(f)}%, ${ka.lang.round(p)}%, ${v})`:`hsl(${ka.lang.round(a)}, ${ka.lang.round(f)}%, ${ka.lang.round(p)}%)`}},sW=iW,aW={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#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",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",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",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",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",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",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",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:i=>{i=i.toLowerCase();const a=aW.colors[i];if(a)return qN.parse(a)},stringify:i=>{const a=qN.stringify(i);for(const f in aW.colors)if(aW.colors[f]===a)return f}},YDt=aW,XDt={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:i=>{const a=i.charCodeAt(0);if(a!==114&&a!==82)return;const f=i.match(XDt.re);if(!f)return;const[,p,v,m,b,E,C,A,P]=f;return rW.set({r:ka.channel.clamp.r(v?parseFloat(p)*2.55:parseFloat(p)),g:ka.channel.clamp.g(b?parseFloat(m)*2.55:parseFloat(m)),b:ka.channel.clamp.b(C?parseFloat(E)*2.55:parseFloat(E)),a:A?ka.channel.clamp.a(P?parseFloat(A)/100:parseFloat(A)):1},i)},stringify:i=>{const{r:a,g:f,b:p,a:v}=i;return v<1?`rgba(${ka.lang.round(a)}, ${ka.lang.round(f)}, ${ka.lang.round(p)}, ${ka.lang.round(v)})`:`rgb(${ka.lang.round(a)}, ${ka.lang.round(f)}, ${ka.lang.round(p)})`}},oW=XDt,Zw={format:{keyword:YDt,hex:qN,rgb:oW,rgba:oW,hsl:sW,hsla:sW},parse:i=>{if(typeof i!="string")return i;const a=qN.parse(i)||oW.parse(i)||sW.parse(i)||YDt.parse(i);if(a)return a;throw new Error(`Unsupported color format: "${i}"`)},stringify:i=>!i.changed&&i.color?i.color:i.type.is(w0.HSL)||i.data.r===void 0?sW.stringify(i):i.a<1||!Number.isInteger(i.r)||!Number.isInteger(i.g)||!Number.isInteger(i.b)?oW.stringify(i):qN.stringify(i)},QDt=(i,a)=>{const f=Zw.parse(i);for(const p in a)f[p]=ka.channel.clamp[p](a[p]);return Zw.stringify(f)},IA=(i,a,f=0,p=1)=>{if(typeof i!="number")return QDt(i,{a});const v=rW.set({r:ka.channel.clamp.r(i),g:ka.channel.clamp.g(a),b:ka.channel.clamp.b(f),a:ka.channel.clamp.a(p)});return Zw.stringify(v)},F9e=(i,a)=>ka.lang.round(Zw.parse(i)[a]),B9e=i=>{const{r:a,g:f,b:p}=Zw.parse(i),v=.2126*ka.channel.toLinear(a)+.7152*ka.channel.toLinear(f)+.0722*ka.channel.toLinear(p);return ka.lang.round(v)},R9e=i=>B9e(i)>=.5,XE=i=>!R9e(i),ZDt=(i,a,f)=>{const p=Zw.parse(i),v=p[a],m=ka.channel.clamp[a](v+f);return v!==m&&(p[a]=m),Zw.stringify(p)},Ss=(i,a)=>ZDt(i,"l",a),Ys=(i,a)=>ZDt(i,"l",-a),mn=(i,a)=>{const f=Zw.parse(i),p={};for(const v in a)a[v]&&(p[v]=f[v]+a[v]);return QDt(i,p)},j9e=(i,a,f=50)=>{const{r:p,g:v,b:m,a:b}=Zw.parse(i),{r:E,g:C,b:A,a:P}=Zw.parse(a),F=f/100,j=F*2-1,R=b-P,Y=((j*R===-1?j:(j+R)/(1+j*R))+1)/2,rt=1-Y,J=p*Y+E*rt,it=v*Y+C*rt,ft=m*Y+A*rt,Tt=b*F+P*(1-F);return IA(J,it,ft,Tt)},ji=(i,a=100)=>{const f=Zw.parse(i);return f.r=255-f.r,f.g=255-f.g,f.b=255-f.b,j9e(f,i,a)},ag=(i,a)=>a?mn(i,{s:-40,l:10}):mn(i,{s:-40,l:-10}),cW="#ffffff",uW="#f2f2f2";let $9e=class{constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||mn(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||mn(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||ag(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||ag(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ji(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ji(this.tertiaryColor),this.lineColor=this.lineColor||ji(this.background),this.arrowheadColor=this.arrowheadColor||ji(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?Ys(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||"grey",this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||Ys(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ji(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ss(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330}),this.darkMode)for(let f=0;f{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const z9e=i=>{const a=new $9e;return a.calculate(i),a};let q9e=class{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ss(this.primaryColor,16),this.tertiaryColor=mn(this.primaryColor,{h:-160}),this.primaryBorderColor=ji(this.background),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.tertiaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ss(ji("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=IA(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=Ys("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Ys(this.sectionBkgColor,10),this.taskBorderColor=IA(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=IA(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=Ss(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=Ss(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.mainContrastColor,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=Ss(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=mn(this.primaryColor,{h:64}),this.fillType3=mn(this.secondaryColor,{h:64}),this.fillType4=mn(this.primaryColor,{h:-64}),this.fillType5=mn(this.secondaryColor,{h:-64}),this.fillType6=mn(this.primaryColor,{h:128}),this.fillType7=mn(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330});for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const H9e=i=>{const a=new q9e;return a.calculate(i),a};let V9e=class{constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=mn(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=mn(this.primaryColor,{h:-160}),this.primaryBorderColor=ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.tertiaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#e8e8e8",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=IA(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||Ys(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||Ys(this.tertiaryColor,40);for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const JDt=i=>{const a=new V9e;return a.calculate(i),a};let G9e=class{constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=Ss("#cde498",10),this.primaryBorderColor=ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.primaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=Ys(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||mn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||mn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||mn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||mn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||mn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||mn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||mn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||mn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||mn(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||Ys(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||Ys(this.tertiaryColor,40);for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}};const U9e=i=>{const a=new G9e;return a.calculate(i),a};class W9e{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Ss(this.contrast,55),this.background="#ffffff",this.tertiaryColor=mn(this.primaryColor,{h:-160}),this.primaryBorderColor=ag(this.primaryColor,this.darkMode),this.secondaryBorderColor=ag(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ag(this.tertiaryColor,this.darkMode),this.primaryTextColor=ji(this.primaryColor),this.secondaryTextColor=ji(this.secondaryColor),this.tertiaryTextColor=ji(this.tertiaryColor),this.lineColor=ji(this.background),this.textColor=ji(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=Ss(this.contrast,55),this.border2=this.contrast,this.actorBorder=Ss(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.lineColor,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let a=0;a{this[p]=a[p]}),this.updateColors(),f.forEach(p=>{this[p]=a[p]})}}const m5={base:{getThemeVariables:z9e},dark:{getThemeVariables:H9e},default:{getThemeVariables:JDt},forest:{getThemeVariables:U9e},neutral:{getThemeVariables:i=>{const a=new W9e;return a.calculate(i),a}}},Jx={flowchart:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},theme:"default",maxTextSize:5e4,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize"],deterministicIds:!1,fontSize:16},tIt={...Jx,deterministicIDSeed:void 0,themeCSS:void 0,themeVariables:m5.default.getThemeVariables(),sequence:{...Jx.sequence,messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},noteFont:function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},actorFont:function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}},gantt:{...Jx.gantt,tickInterval:void 0,useWidth:void 0},c4:{...Jx.c4,useWidth:void 0,personFont:function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},external_personFont:function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},systemFont:function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},external_systemFont:function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},system_dbFont:function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},external_system_dbFont:function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},system_queueFont:function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},external_system_queueFont:function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},containerFont:function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},external_containerFont:function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},container_dbFont:function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},external_container_dbFont:function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},container_queueFont:function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},external_container_queueFont:function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},componentFont:function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},external_componentFont:function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},component_dbFont:function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},external_component_dbFont:function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},component_queueFont:function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},external_component_queueFont:function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},boundaryFont:function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}},pie:{...Jx.pie,useWidth:984},requirement:{...Jx.requirement,useWidth:void 0},gitGraph:{...Jx.gitGraph,useMaxWidth:!1},sankey:{...Jx.sankey,useMaxWidth:!1}},eIt=(i,a="")=>Object.keys(i).reduce((f,p)=>Array.isArray(i[p])?f:typeof i[p]=="object"&&i[p]!==null?[...f,a+p,...eIt(i[p],"")]:[...f,a+p],[]),K9e=new Set(eIt(tIt,"")),If=tIt,nIt=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,lW=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Y9e=/\s*%%.*\n/gm;class rIt extends Error{constructor(a){super(a),this.name="UnknownDiagramError"}}const OA={},hW=function(i,a){i=i.replace(nIt,"").replace(lW,"").replace(Y9e,` +`);for(const[f,{detector:p}]of Object.entries(OA))if(p(i,a))return f;throw new rIt(`No diagram type detected matching given configuration for text: ${i}`)},iIt=(...i)=>{for(const{id:a,detector:f,loader:p}of i)sIt(a,f,p)},sIt=(i,a,f)=>{OA[i]?Wt.error(`Detector with key ${i} already exists`):OA[i]={detector:a,loader:f},Wt.debug(`Detector with key ${i} added${f?" with loader":""}`)},X9e=i=>OA[i].loader,U1t=(i,a,{depth:f=2,clobber:p=!1}={})=>{const v={depth:f,clobber:p};return Array.isArray(a)&&!Array.isArray(i)?(a.forEach(m=>U1t(i,m,v)),i):Array.isArray(a)&&Array.isArray(i)?(a.forEach(m=>{i.includes(m)||i.push(m)}),i):i===void 0||f<=0?i!=null&&typeof i=="object"&&typeof a=="object"?Object.assign(i,a):a:(a!==void 0&&typeof i=="object"&&typeof a=="object"&&Object.keys(a).forEach(m=>{typeof a[m]=="object"&&(i[m]===void 0||typeof i[m]=="object")?(i[m]===void 0&&(i[m]=Array.isArray(a[m])?[]:{}),i[m]=U1t(i[m],a[m],{depth:f-1,clobber:p})):(p||typeof i[m]!="object"&&typeof a[m]!="object")&&(i[m]=a[m])}),i)},Z1=U1t;var Q9e=typeof global=="object"&&global&&global.Object===Object&&global;const aIt=Q9e;var Z9e=typeof self=="object"&&self&&self.Object===Object&&self,J9e=aIt||Z9e||Function("return this")();const Jw=J9e;var tTe=Jw.Symbol;const Q2=tTe;var oIt=Object.prototype,eTe=oIt.hasOwnProperty,nTe=oIt.toString,HN=Q2?Q2.toStringTag:void 0;function rTe(i){var a=eTe.call(i,HN),f=i[HN];try{i[HN]=void 0;var p=!0}catch{}var v=nTe.call(i);return p&&(a?i[HN]=f:delete i[HN]),v}var iTe=Object.prototype,sTe=iTe.toString;function aTe(i){return sTe.call(i)}var oTe="[object Null]",cTe="[object Undefined]",cIt=Q2?Q2.toStringTag:void 0;function QE(i){return i==null?i===void 0?cTe:oTe:cIt&&cIt in Object(i)?rTe(i):aTe(i)}function Ob(i){var a=typeof i;return i!=null&&(a=="object"||a=="function")}var uTe="[object AsyncFunction]",lTe="[object Function]",hTe="[object GeneratorFunction]",fTe="[object Proxy]";function NA(i){if(!Ob(i))return!1;var a=QE(i);return a==lTe||a==hTe||a==uTe||a==fTe}var dTe=Jw["__core-js_shared__"];const W1t=dTe;var uIt=function(){var i=/[^.]+$/.exec(W1t&&W1t.keys&&W1t.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function gTe(i){return!!uIt&&uIt in i}var pTe=Function.prototype,bTe=pTe.toString;function ZE(i){if(i!=null){try{return bTe.call(i)}catch{}try{return i+""}catch{}}return""}var vTe=/[\\^$.*+?()[\]{}|]/g,wTe=/^\[object .+?Constructor\]$/,mTe=Function.prototype,yTe=Object.prototype,xTe=mTe.toString,kTe=yTe.hasOwnProperty,ETe=RegExp("^"+xTe.call(kTe).replace(vTe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function TTe(i){if(!Ob(i)||gTe(i))return!1;var a=NA(i)?ETe:wTe;return a.test(ZE(i))}function _Te(i,a){return i==null?void 0:i[a]}function JE(i,a){var f=_Te(i,a);return TTe(f)?f:void 0}var CTe=JE(Object,"create");const VN=CTe;function STe(){this.__data__=VN?VN(null):{},this.size=0}function ATe(i){var a=this.has(i)&&delete this.__data__[i];return this.size-=a?1:0,a}var LTe="__lodash_hash_undefined__",MTe=Object.prototype,DTe=MTe.hasOwnProperty;function ITe(i){var a=this.__data__;if(VN){var f=a[i];return f===LTe?void 0:f}return DTe.call(a,i)?a[i]:void 0}var OTe=Object.prototype,NTe=OTe.hasOwnProperty;function PTe(i){var a=this.__data__;return VN?a[i]!==void 0:NTe.call(a,i)}var FTe="__lodash_hash_undefined__";function BTe(i,a){var f=this.__data__;return this.size+=this.has(i)?0:1,f[i]=VN&&a===void 0?FTe:a,this}function t9(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a-1}function VTe(i,a){var f=this.__data__,p=fW(f,i);return p<0?(++this.size,f.push([i,a])):f[p][1]=a,this}function y5(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a-1&&i%1==0&&i<=m_e}function tk(i){return i!=null&&Z1t(i.length)&&!NA(i)}function kIt(i){return l3(i)&&tk(i)}function y_e(){return!1}var EIt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,TIt=EIt&&typeof module=="object"&&module&&!module.nodeType&&module,x_e=TIt&&TIt.exports===EIt,_It=x_e?Jw.Buffer:void 0,k_e=_It?_It.isBuffer:void 0,E_e=k_e||y_e;const RA=E_e;var T_e="[object Object]",__e=Function.prototype,C_e=Object.prototype,CIt=__e.toString,S_e=C_e.hasOwnProperty,A_e=CIt.call(Object);function SIt(i){if(!l3(i)||QE(i)!=T_e)return!1;var a=Q1t(i);if(a===null)return!0;var f=S_e.call(a,"constructor")&&a.constructor;return typeof f=="function"&&f instanceof f&&CIt.call(f)==A_e}var L_e="[object Arguments]",M_e="[object Array]",D_e="[object Boolean]",I_e="[object Date]",O_e="[object Error]",N_e="[object Function]",P_e="[object Map]",F_e="[object Number]",B_e="[object Object]",R_e="[object RegExp]",j_e="[object Set]",$_e="[object String]",z_e="[object WeakMap]",q_e="[object ArrayBuffer]",H_e="[object DataView]",V_e="[object Float32Array]",G_e="[object Float64Array]",U_e="[object Int8Array]",W_e="[object Int16Array]",K_e="[object Int32Array]",Y_e="[object Uint8Array]",X_e="[object Uint8ClampedArray]",Q_e="[object Uint16Array]",Z_e="[object Uint32Array]",kl={};kl[V_e]=kl[G_e]=kl[U_e]=kl[W_e]=kl[K_e]=kl[Y_e]=kl[X_e]=kl[Q_e]=kl[Z_e]=!0,kl[L_e]=kl[M_e]=kl[q_e]=kl[D_e]=kl[H_e]=kl[I_e]=kl[O_e]=kl[N_e]=kl[P_e]=kl[F_e]=kl[B_e]=kl[R_e]=kl[j_e]=kl[$_e]=kl[z_e]=!1;function J_e(i){return l3(i)&&Z1t(i.length)&&!!kl[QE(i)]}function wW(i){return function(a){return i(a)}}var AIt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,UN=AIt&&typeof module=="object"&&module&&!module.nodeType&&module,tCe=UN&&UN.exports===AIt,J1t=tCe&&aIt.process,eCe=function(){try{var i=UN&&UN.require&&UN.require("util").types;return i||J1t&&J1t.binding&&J1t.binding("util")}catch{}}();const jA=eCe;var LIt=jA&&jA.isTypedArray,nCe=LIt?wW(LIt):J_e;const mW=nCe;function tdt(i,a){if(!(a==="constructor"&&typeof i[a]=="function")&&a!="__proto__")return i[a]}var rCe=Object.prototype,iCe=rCe.hasOwnProperty;function yW(i,a,f){var p=i[a];(!(iCe.call(i,a)&&PA(p,f))||f===void 0&&!(a in i))&&pW(i,a,f)}function WN(i,a,f,p){var v=!f;f||(f={});for(var m=-1,b=a.length;++m-1&&i%1==0&&i0){if(++a>=mCe)return arguments[0]}else a=0;return i.apply(void 0,arguments)}}var ECe=kCe(wCe);const NIt=ECe;function kW(i,a){return NIt(OIt(i,a,n9),i+"")}function KN(i,a,f){if(!Ob(f))return!1;var p=typeof a;return(p=="number"?tk(f)&&xW(a,f.length):p=="string"&&a in f)?PA(f[a],i):!1}function TCe(i){return kW(function(a,f){var p=-1,v=f.length,m=v>1?f[v-1]:void 0,b=v>2?f[2]:void 0;for(m=i.length>3&&typeof m=="function"?(v--,m):void 0,b&&KN(f[0],f[1],b)&&(m=v<3?void 0:m,v=1),a=Object(a);++pb.args);YN(m),p=Z1(p,[...m])}else p=f.args;if(!p)return;let v=hW(i,a);return["config"].forEach(m=>{p[m]!==void 0&&(v==="flowchart-v2"&&(v="flowchart"),p[v]=p[m],delete p[m])}),p},FIt=function(i,a=null){try{const f=new RegExp(`[%]{2}(?![{]${SCe.source})(?=[}][%]{2}).* +`,"ig");i=i.trim().replace(f,"").replace(/'/gm,'"'),Wt.debug(`Detecting diagram directive${a!==null?" type:"+a:""} based on the text:${i}`);let p;const v=[];for(;(p=lW.exec(i))!==null;)if(p.index===lW.lastIndex&&lW.lastIndex++,p&&!a||a&&p[1]&&p[1].match(a)||a&&p[2]&&p[2].match(a)){const m=p[1]?p[1]:p[2],b=p[3]?p[3].trim():p[4]?JSON.parse(p[4].trim()):null;v.push({type:m,args:b})}return v.length===0&&v.push({type:i,args:null}),v.length===1?v[0]:v}catch(f){return Wt.error(`ERROR: ${f.message} - Unable to parse directive + ${a!==null?" type:"+a:""} based on the text:${i}`),{type:null,args:null}}},LCe=function(i,a){for(const[f,p]of a.entries())if(p.match(i))return f;return-1};function Z2(i,a){if(!i)return a;const f=`curve${i.charAt(0).toUpperCase()+i.slice(1)}`;return CCe[f]||a}function MCe(i,a){const f=i.trim();if(f)return a.securityLevel!=="loose"?Xx(f):f}const DCe=(i,...a)=>{const f=i.split("."),p=f.length-1,v=f[p];let m=window;for(let b=0;b{f+=TW(m,a),a=m});let p=f/2,v;return a=void 0,i.forEach(m=>{if(a&&!v){const b=TW(m,a);if(b=1&&(v={x:m.x,y:m.y}),E>0&&E<1&&(v={x:(1-E)*a.x+E*m.x,y:(1-E)*a.y+E*m.y})}}a=m}),v}function OCe(i){return i.length===1?i[0]:ICe(i)}const NCe=(i,a,f)=>{let p;Wt.info(`our points ${JSON.stringify(a)}`),a[0]!==f&&(a=a.reverse());let m=25,b;p=void 0,a.forEach(P=>{if(p&&!b){const F=TW(P,p);if(F=1&&(b={x:P.x,y:P.y}),j>0&&j<1&&(b={x:(1-j)*p.x+j*P.x,y:(1-j)*p.y+j*P.y})}}p=P});const E=i?10:5,C=Math.atan2(a[0].y-b.y,a[0].x-b.x),A={x:0,y:0};return A.x=Math.sin(C)*E+(a[0].x+b.x)/2,A.y=-Math.cos(C)*E+(a[0].y+b.y)/2,A};function PCe(i,a,f){let p=JSON.parse(JSON.stringify(f)),v;Wt.info("our points",p),a!=="start_left"&&a!=="start_right"&&(p=p.reverse()),p.forEach(F=>{v=F});let b=25+i,E;v=void 0,p.forEach(F=>{if(v&&!E){const j=TW(F,v);if(j=1&&(E={x:F.x,y:F.y}),R>0&&R<1&&(E={x:(1-R)*v.x+R*F.x,y:(1-R)*v.y+R*F.y})}}v=F});const C=10+i*.5,A=Math.atan2(p[0].y-E.y,p[0].x-E.x),P={x:0,y:0};return P.x=Math.sin(A)*C+(p[0].x+E.x)/2,P.y=-Math.cos(A)*C+(p[0].y+E.y)/2,a==="start_left"&&(P.x=Math.sin(A+Math.PI)*C+(p[0].x+E.x)/2,P.y=-Math.cos(A+Math.PI)*C+(p[0].y+E.y)/2),a==="end_right"&&(P.x=Math.sin(A-Math.PI)*C+(p[0].x+E.x)/2-5,P.y=-Math.cos(A-Math.PI)*C+(p[0].y+E.y)/2-5),a==="end_left"&&(P.x=Math.sin(A)*C+(p[0].x+E.x)/2-5,P.y=-Math.cos(A)*C+(p[0].y+E.y)/2-5),P}function em(i){let a="",f="";for(const p of i)p!==void 0&&(p.startsWith("color:")||p.startsWith("text-align:")?f=f+p+";":a=a+p+";");return{style:a,labelStyle:f}}let BIt=0;const RIt=()=>(BIt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+BIt);function FCe(i){let a="";const f="0123456789abcdef",p=f.length;for(let v=0;vFCe(i.length),BCe=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0}},RCe=function(i,a){const f=a.text.replace(ui.lineBreakRegex," "),[,p]=zA(a.fontSize),v=i.append("text");v.attr("x",a.x),v.attr("y",a.y),v.style("text-anchor",a.anchor),v.style("font-family",a.fontFamily),v.style("font-size",p),v.style("font-weight",a.fontWeight),v.attr("fill",a.fill),a.class!==void 0&&v.attr("class",a.class);const m=v.append("tspan");return m.attr("x",a.x+a.textMargin*2),m.attr("fill",a.fill),m.text(f),v},$It=FA((i,a,f)=>{if(!i||(f=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},f),ui.lineBreakRegex.test(i)))return i;const p=i.split(" "),v=[];let m="";return p.forEach((b,E)=>{const C=h3(`${b} `,f),A=h3(m,f);if(C>a){const{hyphenatedStrings:j,remainingWord:R}=jCe(b,a,"-",f);v.push(m,...j),m=R}else A+C>=a?(v.push(m),m=b):m=[m,b].filter(Boolean).join(" ");E+1===p.length&&v.push(m)}),v.filter(b=>b!=="").join(f.joinWith)},(i,a,f)=>`${i}${a}${f.fontSize}${f.fontWeight}${f.fontFamily}${f.joinWith}`),jCe=FA((i,a,f="-",p)=>{p=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},p);const v=[...i],m=[];let b="";return v.forEach((E,C)=>{const A=`${b}${E}`;if(h3(A,p)>=a){const F=C+1,j=v.length===F,R=`${A}${f}`;m.push(j?A:R),b=""}else b=A}),{hyphenatedStrings:m,remainingWord:b}},(i,a,f="-",p)=>`${i}${a}${f}${p.fontSize}${p.fontWeight}${p.fontFamily}`);function edt(i,a){return a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},a),ndt(i,a).height}function h3(i,a){return a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},a),ndt(i,a).width}const ndt=FA((i,a)=>{a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},a);const{fontSize:f,fontFamily:p,fontWeight:v}=a;if(!i)return{width:0,height:0};const[,m]=zA(f),b=["sans-serif",p],E=i.split(ui.lineBreakRegex),C=[],A=xr("body");if(!A.remove)return{width:0,height:0,lineHeight:0};const P=A.append("svg");for(const j of b){let R=0;const H={width:0,height:0,lineHeight:0};for(const Y of E){const rt=BCe();rt.text=Y||PIt;const J=RCe(P,rt).style("font-size",m).style("font-weight",v).style("font-family",j),it=(J._groups||J)[0][0].getBBox();if(it.width===0&&it.height===0)throw new Error("svg element not in render tree");H.width=Math.round(Math.max(H.width,it.width)),R=Math.round(it.height),H.height+=R,H.lineHeight=Math.round(Math.max(H.lineHeight,R))}C.push(H)}P.remove();const F=isNaN(C[1].height)||isNaN(C[1].width)||isNaN(C[1].lineHeight)||C[0].height>C[1].height&&C[0].width>C[1].width&&C[0].lineHeight>C[1].lineHeight?0:1;return C[F]},(i,a)=>`${i}${a.fontSize}${a.fontWeight}${a.fontFamily}`),$Ce=class{constructor(a,f){this.deterministic=a,this.seed=f,this.count=f?f.length:0}next(){return this.deterministic?this.count++:Date.now()}};let _W;const zCe=function(i){return _W=_W||document.createElement("div"),i=escape(i).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),_W.innerHTML=i,unescape(_W.textContent)},YN=i=>{if(Wt.debug("sanitizeDirective called with",i),!(typeof i!="object"||i==null)){if(Array.isArray(i)){i.forEach(a=>YN(a));return}for(const a of Object.keys(i)){if(Wt.debug("Checking key",a),a.startsWith("__")||a.includes("proto")||a.includes("constr")||!K9e.has(a)||i[a]==null){Wt.debug("sanitize deleting key: ",a),delete i[a];continue}if(typeof i[a]=="object"){Wt.debug("sanitizing object",a),YN(i[a]);continue}const f=["themeCSS","fontFamily","altFontFamily"];for(const p of f)a.includes(p)&&(Wt.debug("sanitizing css option",a),i[a]=zIt(i[a]))}if(i.themeVariables)for(const a of Object.keys(i.themeVariables)){const f=i.themeVariables[a];f!=null&&f.match&&!f.match(/^[\d "#%(),.;A-Za-z]+$/)&&(i.themeVariables[a]="")}Wt.debug("After sanitization",i)}},zIt=i=>{let a=0,f=0;for(const p of i){if(a{if(!p)return;const v=i.node().getBBox();i.append("text").text(p).attr("x",v.x+v.width/2).attr("y",-f).attr("class",a)},zA=i=>{if(typeof i=="number")return[i,i+"px"];const a=parseInt(i,10);return Number.isNaN(a)?[void 0,void 0]:i===String(a)?[a,i+"px"]:[a,i]};function HIt(i,a){return EW({},i,a)}const to={assignWithDepth:Z1,wrapLabel:$It,calculateTextHeight:edt,calculateTextWidth:h3,calculateTextDimensions:ndt,cleanAndMerge:HIt,detectInit:ACe,detectDirective:FIt,isSubstringInArray:LCe,interpolateToCurve:Z2,calcLabelPosition:OCe,calcCardinalityPosition:NCe,calcTerminalLabelPosition:PCe,formatUrl:MCe,getStylesFromArray:em,generateId:RIt,random:jIt,runFunc:DCe,entityDecode:zCe,initIdGenerator:$Ce,sanitizeDirective:YN,sanitizeCss:zIt,insertTitle:qCe,parseFontSize:zA};var VIt="comm",GIt="rule",UIt="decl",HCe="@import",VCe="@keyframes",GCe=Math.abs,rdt=String.fromCharCode;function WIt(i){return i.trim()}function idt(i,a,f){return i.replace(a,f)}function UCe(i,a){return i.indexOf(a)}function XN(i,a){return i.charCodeAt(a)|0}function QN(i,a,f){return i.slice(a,f)}function ek(i){return i.length}function KIt(i){return i.length}function CW(i,a){return a.push(i),i}var SW=1,qA=1,YIt=0,J2=0,Nf=0,HA="";function sdt(i,a,f,p,v,m,b){return{value:i,root:a,parent:f,type:p,props:v,children:m,line:SW,column:qA,length:b,return:""}}function WCe(){return Nf}function KCe(){return Nf=J2>0?XN(HA,--J2):0,qA--,Nf===10&&(qA=1,SW--),Nf}function nm(){return Nf=J22||adt(Nf)>3?"":" "}function ZCe(i,a){for(;--a&&nm()&&!(Nf<48||Nf>102||Nf>57&&Nf<65||Nf>70&&Nf<97););return LW(i,AW()+(a<6&&r9()==32&&nm()==32))}function cdt(i){for(;nm();)switch(Nf){case i:return J2;case 34:case 39:i!==34&&i!==39&&cdt(Nf);break;case 40:i===41&&cdt(i);break;case 92:nm();break}return J2}function JCe(i,a){for(;nm()&&i+Nf!==47+10;)if(i+Nf===42+42&&r9()===47)break;return"/*"+LW(a,J2-1)+"*"+rdt(i===47?i:nm())}function tSe(i){for(;!adt(r9());)nm();return LW(i,J2)}function eSe(i){return XCe(MW("",null,null,null,[""],i=YCe(i),0,[0],i))}function MW(i,a,f,p,v,m,b,E,C){for(var A=0,P=0,F=b,j=0,R=0,H=0,Y=1,rt=1,J=1,it=0,ft="",Tt=v,kt=m,mt=p,ct=ft;rt;)switch(H=it,it=nm()){case 40:if(H!=108&&XN(ct,F-1)==58){UCe(ct+=idt(odt(it),"&","&\f"),"&\f")!=-1&&(J=-1);break}case 34:case 39:case 91:ct+=odt(it);break;case 9:case 10:case 13:case 32:ct+=QCe(H);break;case 92:ct+=ZCe(AW()-1,7);continue;case 47:switch(r9()){case 42:case 47:CW(nSe(JCe(nm(),AW()),a,f),C);break;default:ct+="/"}break;case 123*Y:E[A++]=ek(ct)*J;case 125*Y:case 59:case 0:switch(it){case 0:case 125:rt=0;case 59+P:R>0&&ek(ct)-F&&CW(R>32?QIt(ct+";",p,f,F-1):QIt(idt(ct," ","")+";",p,f,F-2),C);break;case 59:ct+=";";default:if(CW(mt=XIt(ct,a,f,A,P,v,E,ft,Tt=[],kt=[],F),m),it===123)if(P===0)MW(ct,a,mt,mt,Tt,m,F,E,kt);else switch(j===99&&XN(ct,3)===110?100:j){case 100:case 109:case 115:MW(i,mt,mt,p&&CW(XIt(i,mt,mt,0,0,v,E,ft,v,Tt=[],F),kt),v,kt,F,E,p?Tt:kt);break;default:MW(ct,mt,mt,mt,[""],kt,0,E,kt)}}A=P=R=0,Y=J=1,ft=ct="",F=b;break;case 58:F=1+ek(ct),R=H;default:if(Y<1){if(it==123)--Y;else if(it==125&&Y++==0&&KCe()==125)continue}switch(ct+=rdt(it),it*Y){case 38:J=P>0?1:(ct+="\f",-1);break;case 44:E[A++]=(ek(ct)-1)*J,J=1;break;case 64:r9()===45&&(ct+=odt(nm())),j=r9(),P=F=ek(ft=ct+=tSe(AW())),it++;break;case 45:H===45&&ek(ct)==2&&(Y=0)}}return m}function XIt(i,a,f,p,v,m,b,E,C,A,P){for(var F=v-1,j=v===0?m:[""],R=KIt(j),H=0,Y=0,rt=0;H0?j[J]+" "+it:idt(it,/&\f/g,j[J])))&&(C[rt++]=ft);return sdt(i,a,f,v===0?GIt:E,C,A,P)}function nSe(i,a,f){return sdt(i,a,f,VIt,rdt(WCe()),QN(i,2,-2),0)}function QIt(i,a,f,p){return sdt(i,a,f,UIt,QN(i,0,p),QN(i,p+1,-1),p)}function udt(i,a){for(var f="",p=KIt(i),v=0;v{let f=Z1({},i),p={};for(const v of a)nOt(v),p=Z1(p,v);if(f=Z1(f,p),p.theme&&p.theme in m5){const v=Z1({},JIt),m=Z1(v.themeVariables||{},p.themeVariables);f.theme&&f.theme in m5&&(f.themeVariables=m5[f.theme].getThemeVariables(m))}return ZN=f,iOt(ZN),ZN},iSe=i=>(lp=Z1({},i9),lp=Z1(lp,i),i.theme&&m5[i.theme]&&(lp.themeVariables=m5[i.theme].getThemeVariables(i.themeVariables)),DW(lp,VA),lp),sSe=i=>{JIt=Z1({},i)},aSe=i=>(lp=Z1(lp,i),DW(lp,VA),lp),tOt=()=>Z1({},lp),eOt=i=>(iOt(i),Z1(ZN,i),De()),De=()=>Z1({},ZN),nOt=i=>{i&&(["secure",...lp.secure??[]].forEach(a=>{Object.hasOwn(i,a)&&(Wt.debug(`Denied attempt to modify a secure key ${a}`,i[a]),delete i[a])}),Object.keys(i).forEach(a=>{a.startsWith("__")&&delete i[a]}),Object.keys(i).forEach(a=>{typeof i[a]=="string"&&(i[a].includes("<")||i[a].includes(">")||i[a].includes("url(data:"))&&delete i[a],typeof i[a]=="object"&&nOt(i[a])}))},IW=i=>{YN(i),i.fontFamily&&(!i.themeVariables||!i.themeVariables.fontFamily)&&(i.themeVariables={fontFamily:i.fontFamily}),VA.push(i),DW(lp,VA)},OW=(i=lp)=>{VA=[],DW(i,VA)},oSe={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},rOt={},cSe=i=>{rOt[i]||(Wt.warn(oSe[i]),rOt[i]=!0)},iOt=i=>{i&&(i.lazyLoadedDiagrams||i.loadExternalDiagramsAtStartup)&&cSe("LAZY_LOAD_DEPRECATED")},sOt="c4",uSe={id:sOt,detector:i=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>EDe);return{id:sOt,diagram:i}}},aOt="flowchart",lSe={id:aOt,detector:(i,a)=>{var f,p;return((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="dagre-wrapper"||((p=a==null?void 0:a.flowchart)==null?void 0:p.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>A$e);return{id:aOt,diagram:i}}},oOt="flowchart-v2",hSe={id:oOt,detector:(i,a)=>{var f,p,v;return((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="dagre-d3"||((p=a==null?void 0:a.flowchart)==null?void 0:p.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)&&((v=a==null?void 0:a.flowchart)==null?void 0:v.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>L$e);return{id:oOt,diagram:i}}},cOt="er",fSe={id:cOt,detector:i=>/^\s*erDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>nze);return{id:cOt,diagram:i}}},uOt="gitGraph",dSe={id:uOt,detector:i=>/^\s*gitGraph/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Aze);return{id:uOt,diagram:i}}},lOt="gantt",gSe={id:lOt,detector:i=>/^\s*gantt/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>wqe);return{id:lOt,diagram:i}}},hOt="info",pSe={id:hOt,detector:i=>/^\s*info/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>yqe);return{id:hOt,diagram:i}}},fOt="pie",bSe={id:fOt,detector:i=>/^\s*pie/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Cqe);return{id:fOt,diagram:i}}},dOt="quadrantChart",vSe={id:dOt,detector:i=>/^\s*quadrantChart/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>qqe);return{id:dOt,diagram:i}}},gOt="requirement",wSe={id:gOt,detector:i=>/^\s*requirement(Diagram)?/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Zqe);return{id:gOt,diagram:i}}},pOt="sequence",mSe={id:pOt,detector:i=>/^\s*sequenceDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>sVe);return{id:pOt,diagram:i}}},bOt="class",ySe={id:bOt,detector:(i,a)=>{var f;return((f=a==null?void 0:a.class)==null?void 0:f.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>SVe);return{id:bOt,diagram:i}}},vOt="classDiagram",xSe={id:vOt,detector:(i,a)=>{var f;return/^\s*classDiagram/.test(i)&&((f=a==null?void 0:a.class)==null?void 0:f.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>OVe);return{id:vOt,diagram:i}}},wOt="state",kSe={id:wOt,detector:(i,a)=>{var f;return((f=a==null?void 0:a.state)==null?void 0:f.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>xGe);return{id:wOt,diagram:i}}},mOt="stateDiagram",ESe={id:mOt,detector:(i,a)=>{var f;return!!(/^\s*stateDiagram-v2/.test(i)||/^\s*stateDiagram/.test(i)&&((f=a==null?void 0:a.state)==null?void 0:f.defaultRenderer)==="dagre-wrapper")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>$Ge);return{id:mOt,diagram:i}}},yOt="journey",TSe={id:yOt,detector:i=>/^\s*journey/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>aUe);return{id:yOt,diagram:i}}},ldt=i=>{var v;const{securityLevel:a}=De();let f=xr("body");if(a==="sandbox"){const b=((v=xr(`#i${i}`).node())==null?void 0:v.contentDocument)??document;f=xr(b.body)}return f.select(`#${i}`)},_Se=function(i,a){for(let f of a)i.attr(f[0],f[1])},CSe=function(i,a,f){let p=new Map;return f?(p.set("width","100%"),p.set("style",`max-width: ${a}px;`)):(p.set("height",i),p.set("width",a)),p},og=function(i,a,f,p){const v=CSe(a,f,p);_Se(i,v)},s9=function(i,a,f,p){const v=a.node().getBBox(),m=v.width,b=v.height;Wt.info(`SVG bounds: ${m}x${b}`,v);let E=0,C=0;Wt.info(`Graph bounds: ${E}x${C}`,i),E=m+f*2,C=b+f*2,Wt.info(`Calculated bounds: ${E}x${C}`),og(a,C,E,p);const A=`${v.x-f} ${v.y-f} ${v.width+2*f} ${v.height+2*f}`;a.attr("viewBox",A)},xOt={draw:(i,a,f)=>{Wt.debug(`renering svg for syntax error +`);const p=ldt(a);p.attr("viewBox","0 0 2412 512"),og(p,100,512,!0);const v=p.append("g");v.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),v.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),v.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),v.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),v.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),v.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),v.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),v.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${f}`)}},SSe=xOt,ASe={db:{},renderer:xOt,parser:{parser:{yy:{}},parse:()=>{}}},kOt="flowchart-elk",LSe={id:kOt,detector:(i,a)=>{var f;return!!(/^\s*flowchart-elk/.test(i)||/^\s*flowchart|graph/.test(i)&&((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="elk")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>kUe);return{id:kOt,diagram:i}}},EOt="timeline",MSe={id:EOt,detector:i=>/^\s*timeline/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>zUe);return{id:EOt,diagram:i}}},TOt="mindmap",DSe={id:TOt,detector:i=>/^\s*mindmap/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>vWe);return{id:TOt,diagram:i}}},_Ot="sankey",ISe={id:_Ot,detector:i=>/^\s*sankey-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>WWe);return{id:_Ot,diagram:i}}},NW={},OSe=(i,a,f)=>{let p="";return i in NW&&NW[i]?p=NW[i](f):Wt.warn(`No theme found for ${i}`),` & { + font-family: ${f.fontFamily}; + font-size: ${f.fontSize}; + fill: ${f.textColor} + } + + /* Classes common for multiple diagrams */ + + & .error-icon { + fill: ${f.errorBkgColor}; + } + & .error-text { + fill: ${f.errorTextColor}; + stroke: ${f.errorTextColor}; + } + + & .edge-thickness-normal { + stroke-width: 2px; + } + & .edge-thickness-thick { + stroke-width: 3.5px + } + & .edge-pattern-solid { + stroke-dasharray: 0; + } + + & .edge-pattern-dashed{ + stroke-dasharray: 3; + } + .edge-pattern-dotted { + stroke-dasharray: 2; + } + + & .marker { + fill: ${f.lineColor}; + stroke: ${f.lineColor}; + } + & .marker.cross { + stroke: ${f.lineColor}; + } + + & svg { + font-family: ${f.fontFamily}; + font-size: ${f.fontSize}; + } + + ${p} + + ${a} +`},NSe=(i,a)=>{a!==void 0&&(NW[i]=a)},PSe=OSe;let hdt="",PW="",fdt="";const ddt=i=>v0(i,De()),cg=function(){hdt="",fdt="",PW=""},m0=function(i){hdt=ddt(i).replace(/^\s+/g,"")},ug=function(){return hdt||PW},lg=function(i){fdt=ddt(i).replace(/\n\s+/g,` +`)},hg=function(){return fdt},Nb=function(i){PW=ddt(i)},hp=function(){return PW},COt=Object.freeze(Object.defineProperty({__proto__:null,clear:cg,default:{getAccTitle:ug,setAccTitle:m0,getDiagramTitle:hp,setDiagramTitle:Nb,getAccDescription:hg,setAccDescription:lg,clear:cg},getAccDescription:hg,getAccTitle:ug,getDiagramTitle:hp,setAccDescription:lg,setAccTitle:m0,setDiagramTitle:Nb},Symbol.toStringTag,{value:"Module"}));let a9={};const FW=function(i,a,f,p){Wt.debug("parseDirective is being called",a,f,p);try{if(a!==void 0)switch(a=a.trim(),f){case"open_directive":a9={};break;case"type_directive":if(!a9)throw new Error("currentDirective is undefined");a9.type=a.toLowerCase();break;case"arg_directive":if(!a9)throw new Error("currentDirective is undefined");a9.args=JSON.parse(a);break;case"close_directive":FSe(i,a9,p),a9=void 0;break}}catch(v){Wt.error(`Error while rendering sequenceDiagram directive: ${a} jison context: ${f}`),Wt.error(v.message)}},FSe=function(i,a,f){switch(Wt.info(`Directive type=${a.type} with args:`,a.args),a.type){case"init":case"initialize":{["config"].forEach(p=>{a.args[p]!==void 0&&(f==="flowchart-v2"&&(f="flowchart"),a.args[f]=a.args[p],delete a.args[p])}),IW(a.args);break}case"wrap":case"nowrap":i&&i.setWrap&&i.setWrap(a.type==="wrap");break;case"themeCss":Wt.warn("themeCss encountered");break;default:Wt.warn(`Unhandled directive: source: '%%{${a.type}: ${JSON.stringify(a.args?a.args:{})}}%%`,a);break}},BSe=Wt,RSe=zft,JN=De,jSe=i=>v0(i,JN()),SOt=s9,$Se=()=>COt,zSe=(i,a,f,p)=>FW(i,a,f,p),BW={},RW=(i,a,f)=>{if(BW[i])throw new Error(`Diagram ${i} already registered.`);BW[i]=a,f&&sIt(i,f),NSe(i,a.styles),a.injectUtils&&a.injectUtils(BSe,RSe,JN,jSe,SOt,$Se(),zSe)},gdt=i=>{if(i in BW)return BW[i];throw new qSe(i)};class qSe extends Error{constructor(a){super(`Diagram ${a} not found.`)}}let AOt=!1;const pdt=()=>{AOt||(AOt=!0,RW("error",ASe,i=>i.toLowerCase().trim()==="error"),RW("---",{db:{clear:()=>{}},styles:{},renderer:{},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},i=>i.toLowerCase().trimStart().startsWith("---")),iIt(uSe,xSe,ySe,fSe,gSe,pSe,bSe,wSe,mSe,LSe,hSe,lSe,DSe,MSe,dSe,ESe,kSe,TSe,vSe,ISe))};/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function LOt(i){return typeof i>"u"||i===null}function HSe(i){return typeof i=="object"&&i!==null}function VSe(i){return Array.isArray(i)?i:LOt(i)?[]:[i]}function GSe(i,a){var f,p,v,m;if(a)for(m=Object.keys(a),f=0,p=m.length;fE&&(m=" ... ",a=p-E+m.length),f-p>E&&(b=" ...",f=p+E-b.length),{str:m+i.slice(a,f).replace(/\t/g,"→")+b,pos:p-a+m.length}}function vdt(i,a){return fg.repeat(" ",a-i.length)+i}function tAe(i,a){if(a=Object.create(a||null),!i.buffer)return null;a.maxLength||(a.maxLength=79),typeof a.indent!="number"&&(a.indent=1),typeof a.linesBefore!="number"&&(a.linesBefore=3),typeof a.linesAfter!="number"&&(a.linesAfter=2);for(var f=/\r?\n|\r|\0/g,p=[0],v=[],m,b=-1;m=f.exec(i.buffer);)v.push(m.index),p.push(m.index+m[0].length),i.position<=m.index&&b<0&&(b=p.length-2);b<0&&(b=p.length-1);var E="",C,A,P=Math.min(i.line+a.linesAfter,v.length).toString().length,F=a.maxLength-(a.indent+P+3);for(C=1;C<=a.linesBefore&&!(b-C<0);C++)A=bdt(i.buffer,p[b-C],v[b-C],i.position-(p[b]-p[b-C]),F),E=fg.repeat(" ",a.indent)+vdt((i.line-C+1).toString(),P)+" | "+A.str+` +`+E;for(A=bdt(i.buffer,p[b],v[b],i.position,F),E+=fg.repeat(" ",a.indent)+vdt((i.line+1).toString(),P)+" | "+A.str+` +`,E+=fg.repeat("-",a.indent+P+3+A.pos)+`^ +`,C=1;C<=a.linesAfter&&!(b+C>=v.length);C++)A=bdt(i.buffer,p[b+C],v[b+C],i.position-(p[b]-p[b+C]),F),E+=fg.repeat(" ",a.indent)+vdt((i.line+C+1).toString(),P)+" | "+A.str+` +`;return E.replace(/\n$/,"")}var eAe=tAe,nAe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],rAe=["scalar","sequence","mapping"];function iAe(i){var a={};return i!==null&&Object.keys(i).forEach(function(f){i[f].forEach(function(p){a[String(p)]=f})}),a}function sAe(i,a){if(a=a||{},Object.keys(a).forEach(function(f){if(nAe.indexOf(f)===-1)throw new k5('Unknown option "'+f+'" is met in definition of "'+i+'" YAML type.')}),this.options=a,this.tag=i,this.kind=a.kind||null,this.resolve=a.resolve||function(){return!0},this.construct=a.construct||function(f){return f},this.instanceOf=a.instanceOf||null,this.predicate=a.predicate||null,this.represent=a.represent||null,this.representName=a.representName||null,this.defaultStyle=a.defaultStyle||null,this.multi=a.multi||!1,this.styleAliases=iAe(a.styleAliases||null),rAe.indexOf(this.kind)===-1)throw new k5('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}var y0=sAe;function DOt(i,a){var f=[];return i[a].forEach(function(p){var v=f.length;f.forEach(function(m,b){m.tag===p.tag&&m.kind===p.kind&&m.multi===p.multi&&(v=b)}),f[v]=p}),f}function aAe(){var i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},a,f;function p(v){v.multi?(i.multi[v.kind].push(v),i.multi.fallback.push(v)):i[v.kind][v.tag]=i.fallback[v.tag]=v}for(a=0,f=arguments.length;a=0?"0b"+i.toString(2):"-0b"+i.toString(2).slice(1)},octal:function(i){return i>=0?"0o"+i.toString(8):"-0o"+i.toString(8).slice(1)},decimal:function(i){return i.toString(10)},hexadecimal:function(i){return i>=0?"0x"+i.toString(16).toUpperCase():"-0x"+i.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),SAe=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function AAe(i){return!(i===null||!SAe.test(i)||i[i.length-1]==="_")}function LAe(i){var a,f;return a=i.replace(/_/g,"").toLowerCase(),f=a[0]==="-"?-1:1,"+-".indexOf(a[0])>=0&&(a=a.slice(1)),a===".inf"?f===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:a===".nan"?NaN:f*parseFloat(a,10)}var MAe=/^[-+]?[0-9]+e/;function DAe(i,a){var f;if(isNaN(i))switch(a){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===i)switch(a){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===i)switch(a){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(fg.isNegativeZero(i))return"-0.0";return f=i.toString(10),MAe.test(f)?f.replace("e",".e"):f}function IAe(i){return Object.prototype.toString.call(i)==="[object Number]"&&(i%1!==0||fg.isNegativeZero(i))}var OAe=new y0("tag:yaml.org,2002:float",{kind:"scalar",resolve:AAe,construct:LAe,predicate:IAe,represent:DAe,defaultStyle:"lowercase"}),IOt=hAe.extend({implicit:[pAe,mAe,CAe,OAe]}),NAe=IOt,OOt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),NOt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function PAe(i){return i===null?!1:OOt.exec(i)!==null||NOt.exec(i)!==null}function FAe(i){var a,f,p,v,m,b,E,C=0,A=null,P,F,j;if(a=OOt.exec(i),a===null&&(a=NOt.exec(i)),a===null)throw new Error("Date resolve error");if(f=+a[1],p=+a[2]-1,v=+a[3],!a[4])return new Date(Date.UTC(f,p,v));if(m=+a[4],b=+a[5],E=+a[6],a[7]){for(C=a[7].slice(0,3);C.length<3;)C+="0";C=+C}return a[9]&&(P=+a[10],F=+(a[11]||0),A=(P*60+F)*6e4,a[9]==="-"&&(A=-A)),j=new Date(Date.UTC(f,p,v,m,b,E,C)),A&&j.setTime(j.getTime()-A),j}function BAe(i){return i.toISOString()}var RAe=new y0("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:PAe,construct:FAe,instanceOf:Date,represent:BAe});function jAe(i){return i==="<<"||i===null}var $Ae=new y0("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jAe}),mdt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function zAe(i){if(i===null)return!1;var a,f,p=0,v=i.length,m=mdt;for(f=0;f64)){if(a<0)return!1;p+=6}return p%8===0}function qAe(i){var a,f,p=i.replace(/[\r\n=]/g,""),v=p.length,m=mdt,b=0,E=[];for(a=0;a>16&255),E.push(b>>8&255),E.push(b&255)),b=b<<6|m.indexOf(p.charAt(a));return f=v%4*6,f===0?(E.push(b>>16&255),E.push(b>>8&255),E.push(b&255)):f===18?(E.push(b>>10&255),E.push(b>>2&255)):f===12&&E.push(b>>4&255),new Uint8Array(E)}function HAe(i){var a="",f=0,p,v,m=i.length,b=mdt;for(p=0;p>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]),f=(f<<8)+i[p];return v=m%3,v===0?(a+=b[f>>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]):v===2?(a+=b[f>>10&63],a+=b[f>>4&63],a+=b[f<<2&63],a+=b[64]):v===1&&(a+=b[f>>2&63],a+=b[f<<4&63],a+=b[64],a+=b[64]),a}function VAe(i){return Object.prototype.toString.call(i)==="[object Uint8Array]"}var GAe=new y0("tag:yaml.org,2002:binary",{kind:"scalar",resolve:zAe,construct:qAe,predicate:VAe,represent:HAe}),UAe=Object.prototype.hasOwnProperty,WAe=Object.prototype.toString;function KAe(i){if(i===null)return!0;var a=[],f,p,v,m,b,E=i;for(f=0,p=E.length;f>10)+55296,(i-65536&1023)+56320)}for(var qOt=new Array(256),HOt=new Array(256),UA=0;UA<256;UA++)qOt[UA]=zOt(UA)?1:0,HOt[UA]=zOt(UA);function gLe(i,a){this.input=i,this.filename=a.filename||null,this.schema=a.schema||sLe,this.onWarning=a.onWarning||null,this.legacy=a.legacy||!1,this.json=a.json||!1,this.listener=a.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=i.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function VOt(i,a){var f={name:i.filename,buffer:i.input.slice(0,-1),position:i.position,line:i.line,column:i.position-i.lineStart};return f.snippet=eAe(f),new k5(a,f)}function Fs(i,a){throw VOt(i,a)}function zW(i,a){i.onWarning&&i.onWarning.call(null,VOt(i,a))}var GOt={YAML:function(a,f,p){var v,m,b;a.version!==null&&Fs(a,"duplication of %YAML directive"),p.length!==1&&Fs(a,"YAML directive accepts exactly one argument"),v=/^([0-9]+)\.([0-9]+)$/.exec(p[0]),v===null&&Fs(a,"ill-formed argument of the YAML directive"),m=parseInt(v[1],10),b=parseInt(v[2],10),m!==1&&Fs(a,"unacceptable YAML version of the document"),a.version=p[0],a.checkLineBreaks=b<2,b!==1&&b!==2&&zW(a,"unsupported YAML version of the document")},TAG:function(a,f,p){var v,m;p.length!==2&&Fs(a,"TAG directive accepts exactly two arguments"),v=p[0],m=p[1],ROt.test(v)||Fs(a,"ill-formed tag handle (first argument) of the TAG directive"),nk.call(a.tagMap,v)&&Fs(a,'there is a previously declared suffix for "'+v+'" tag handle'),jOt.test(m)||Fs(a,"ill-formed tag prefix (second argument) of the TAG directive");try{m=decodeURIComponent(m)}catch{Fs(a,"tag prefix is malformed: "+m)}a.tagMap[v]=m}};function rk(i,a,f,p){var v,m,b,E;if(a1&&(i.result+=fg.repeat(` +`,a-1))}function pLe(i,a,f){var p,v,m,b,E,C,A,P,F=i.kind,j=i.result,R;if(R=i.input.charCodeAt(i.position),fp(R)||GA(R)||R===35||R===38||R===42||R===33||R===124||R===62||R===39||R===34||R===37||R===64||R===96||(R===63||R===45)&&(v=i.input.charCodeAt(i.position+1),fp(v)||f&&GA(v)))return!1;for(i.kind="scalar",i.result="",m=b=i.position,E=!1;R!==0;){if(R===58){if(v=i.input.charCodeAt(i.position+1),fp(v)||f&&GA(v))break}else if(R===35){if(p=i.input.charCodeAt(i.position-1),fp(p))break}else{if(i.position===i.lineStart&&qW(i)||f&&GA(R))break;if(f3(R))if(C=i.line,A=i.lineStart,P=i.lineIndent,Pf(i,!1,-1),i.lineIndent>=a){E=!0,R=i.input.charCodeAt(i.position);continue}else{i.position=b,i.line=C,i.lineStart=A,i.lineIndent=P;break}}E&&(rk(i,m,b,!1),kdt(i,i.line-C),m=b=i.position,E=!1),o9(R)||(b=i.position+1),R=i.input.charCodeAt(++i.position)}return rk(i,m,b,!1),i.result?!0:(i.kind=F,i.result=j,!1)}function bLe(i,a){var f,p,v;if(f=i.input.charCodeAt(i.position),f!==39)return!1;for(i.kind="scalar",i.result="",i.position++,p=v=i.position;(f=i.input.charCodeAt(i.position))!==0;)if(f===39)if(rk(i,p,i.position,!0),f=i.input.charCodeAt(++i.position),f===39)p=i.position,i.position++,v=i.position;else return!0;else f3(f)?(rk(i,p,v,!0),kdt(i,Pf(i,!1,a)),p=v=i.position):i.position===i.lineStart&&qW(i)?Fs(i,"unexpected end of the document within a single quoted scalar"):(i.position++,v=i.position);Fs(i,"unexpected end of the stream within a single quoted scalar")}function vLe(i,a){var f,p,v,m,b,E;if(E=i.input.charCodeAt(i.position),E!==34)return!1;for(i.kind="scalar",i.result="",i.position++,f=p=i.position;(E=i.input.charCodeAt(i.position))!==0;){if(E===34)return rk(i,f,i.position,!0),i.position++,!0;if(E===92){if(rk(i,f,i.position,!0),E=i.input.charCodeAt(++i.position),f3(E))Pf(i,!1,a);else if(E<256&&qOt[E])i.result+=HOt[E],i.position++;else if((b=hLe(E))>0){for(v=b,m=0;v>0;v--)E=i.input.charCodeAt(++i.position),(b=lLe(E))>=0?m=(m<<4)+b:Fs(i,"expected hexadecimal character");i.result+=dLe(m),i.position++}else Fs(i,"unknown escape sequence");f=p=i.position}else f3(E)?(rk(i,f,p,!0),kdt(i,Pf(i,!1,a)),f=p=i.position):i.position===i.lineStart&&qW(i)?Fs(i,"unexpected end of the document within a double quoted scalar"):(i.position++,p=i.position)}Fs(i,"unexpected end of the stream within a double quoted scalar")}function wLe(i,a){var f=!0,p,v,m,b=i.tag,E,C=i.anchor,A,P,F,j,R,H=Object.create(null),Y,rt,J,it;if(it=i.input.charCodeAt(i.position),it===91)P=93,R=!1,E=[];else if(it===123)P=125,R=!0,E={};else return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=E),it=i.input.charCodeAt(++i.position);it!==0;){if(Pf(i,!0,a),it=i.input.charCodeAt(i.position),it===P)return i.position++,i.tag=b,i.anchor=C,i.kind=R?"mapping":"sequence",i.result=E,!0;f?it===44&&Fs(i,"expected the node content, but found ','"):Fs(i,"missed comma between flow collection entries"),rt=Y=J=null,F=j=!1,it===63&&(A=i.input.charCodeAt(i.position+1),fp(A)&&(F=j=!0,i.position++,Pf(i,!0,a))),p=i.line,v=i.lineStart,m=i.position,KA(i,a,jW,!1,!0),rt=i.tag,Y=i.result,Pf(i,!0,a),it=i.input.charCodeAt(i.position),(j||i.line===p)&&it===58&&(F=!0,it=i.input.charCodeAt(++i.position),Pf(i,!0,a),KA(i,a,jW,!1,!0),J=i.result),R?WA(i,E,H,rt,Y,J,p,v,m):F?E.push(WA(i,null,H,rt,Y,J,p,v,m)):E.push(Y),Pf(i,!0,a),it=i.input.charCodeAt(i.position),it===44?(f=!0,it=i.input.charCodeAt(++i.position)):f=!1}Fs(i,"unexpected end of the stream within a flow collection")}function mLe(i,a){var f,p,v=ydt,m=!1,b=!1,E=a,C=0,A=!1,P,F;if(F=i.input.charCodeAt(i.position),F===124)p=!1;else if(F===62)p=!0;else return!1;for(i.kind="scalar",i.result="";F!==0;)if(F=i.input.charCodeAt(++i.position),F===43||F===45)ydt===v?v=F===43?BOt:aLe:Fs(i,"repeat of a chomping mode identifier");else if((P=fLe(F))>=0)P===0?Fs(i,"bad explicit indentation width of a block scalar; it cannot be less than one"):b?Fs(i,"repeat of an indentation width identifier"):(E=a+P-1,b=!0);else break;if(o9(F)){do F=i.input.charCodeAt(++i.position);while(o9(F));if(F===35)do F=i.input.charCodeAt(++i.position);while(!f3(F)&&F!==0)}for(;F!==0;){for(xdt(i),i.lineIndent=0,F=i.input.charCodeAt(i.position);(!b||i.lineIndentE&&(E=i.lineIndent),f3(F)){C++;continue}if(i.lineIndenta)&&C!==0)Fs(i,"bad indentation of a sequence entry");else if(i.lineIndenta)&&(rt&&(b=i.line,E=i.lineStart,C=i.position),KA(i,a,$W,!0,v)&&(rt?H=i.result:Y=i.result),rt||(WA(i,F,j,R,H,Y,b,E,C),R=H=Y=null),Pf(i,!0,-1),it=i.input.charCodeAt(i.position)),(i.line===m||i.lineIndent>a)&&it!==0)Fs(i,"bad indentation of a mapping entry");else if(i.lineIndenta?C=1:i.lineIndent===a?C=0:i.lineIndenta?C=1:i.lineIndent===a?C=0:i.lineIndent tag; it should be "scalar", not "'+i.kind+'"'),F=0,j=i.implicitTypes.length;F"),i.result!==null&&H.kind!==i.kind&&Fs(i,"unacceptable node kind for !<"+i.tag+'> tag; it should be "'+H.kind+'", not "'+i.kind+'"'),H.resolve(i.result,i.tag)?(i.result=H.construct(i.result,i.tag),i.anchor!==null&&(i.anchorMap[i.anchor]=i.result)):Fs(i,"cannot resolve a node with !<"+i.tag+"> explicit tag")}return i.listener!==null&&i.listener("close",i),i.tag!==null||i.anchor!==null||P}function TLe(i){var a=i.position,f,p,v,m=!1,b;for(i.version=null,i.checkLineBreaks=i.legacy,i.tagMap=Object.create(null),i.anchorMap=Object.create(null);(b=i.input.charCodeAt(i.position))!==0&&(Pf(i,!0,-1),b=i.input.charCodeAt(i.position),!(i.lineIndent>0||b!==37));){for(m=!0,b=i.input.charCodeAt(++i.position),f=i.position;b!==0&&!fp(b);)b=i.input.charCodeAt(++i.position);for(p=i.input.slice(f,i.position),v=[],p.length<1&&Fs(i,"directive name must not be less than one character in length");b!==0;){for(;o9(b);)b=i.input.charCodeAt(++i.position);if(b===35){do b=i.input.charCodeAt(++i.position);while(b!==0&&!f3(b));break}if(f3(b))break;for(f=i.position;b!==0&&!fp(b);)b=i.input.charCodeAt(++i.position);v.push(i.input.slice(f,i.position))}b!==0&&xdt(i),nk.call(GOt,p)?GOt[p](i,p,v):zW(i,'unknown document directive "'+p+'"')}if(Pf(i,!0,-1),i.lineIndent===0&&i.input.charCodeAt(i.position)===45&&i.input.charCodeAt(i.position+1)===45&&i.input.charCodeAt(i.position+2)===45?(i.position+=3,Pf(i,!0,-1)):m&&Fs(i,"directives end mark is expected"),KA(i,i.lineIndent-1,$W,!1,!0),Pf(i,!0,-1),i.checkLineBreaks&&cLe.test(i.input.slice(a,i.position))&&zW(i,"non-ASCII line breaks are interpreted as content"),i.documents.push(i.result),i.position===i.lineStart&&qW(i)){i.input.charCodeAt(i.position)===46&&(i.position+=3,Pf(i,!0,-1));return}if(i.position"u"&&(f=a,a=null);var p=KOt(i,f);if(typeof a!="function")return p;for(var v=0,m=p.length;vi.trimStart().replace(/^\s*%%(?!{)[^\n]+\n?/gm,"");class XOt{constructor(a){this.text=a,this.type="graph",this.text+=` +`;const f=De();try{this.type=hW(a,f)}catch(m){this.type="error",this.detectError=m}const p=gdt(this.type);Wt.debug("Type "+this.type),this.db=p.db,this.renderer=p.renderer,this.parser=p.parser;const v=this.parser.parse.bind(this.parser);this.parser.parse=m=>v(ILe(YOt(m,this.db,IW))),this.parser.parser.yy=this.db,this.init=p.init,this.parse()}parse(){var a,f,p;if(this.detectError)throw this.detectError;(f=(a=this.db).clear)==null||f.call(a),(p=this.init)==null||p.call(this,De()),this.parser.parse(this.text)}async render(a,f){await this.renderer.draw(this.text,a,f,this)}getParser(){return this.parser}getType(){return this.type}}const Edt=async i=>{const a=hW(i,De());try{gdt(a)}catch{const p=X9e(a);if(!p)throw new rIt(`Diagram ${a} not found.`);const{id:v,diagram:m}=await p();RW(v,m)}return new XOt(i)};let Tdt=[];const OLe=i=>{Tdt.push(i)},NLe=()=>{Tdt.forEach(i=>{i()}),Tdt=[]};var PLe=wIt(Object.keys,Object);const FLe=PLe;var BLe=Object.prototype,RLe=BLe.hasOwnProperty;function QOt(i){if(!vW(i))return FLe(i);var a=[];for(var f in Object(i))RLe.call(i,f)&&f!="constructor"&&a.push(f);return a}var jLe=JE(Jw,"DataView");const _dt=jLe;var $Le=JE(Jw,"Promise");const Cdt=$Le;var zLe=JE(Jw,"Set");const YA=zLe;var qLe=JE(Jw,"WeakMap");const Sdt=qLe;var ZOt="[object Map]",HLe="[object Object]",JOt="[object Promise]",tNt="[object Set]",eNt="[object WeakMap]",nNt="[object DataView]",VLe=ZE(_dt),GLe=ZE(GN),ULe=ZE(Cdt),WLe=ZE(YA),KLe=ZE(Sdt),c9=QE;(_dt&&c9(new _dt(new ArrayBuffer(1)))!=nNt||GN&&c9(new GN)!=ZOt||Cdt&&c9(Cdt.resolve())!=JOt||YA&&c9(new YA)!=tNt||Sdt&&c9(new Sdt)!=eNt)&&(c9=function(i){var a=QE(i),f=a==HLe?i.constructor:void 0,p=f?ZE(f):"";if(p)switch(p){case VLe:return nNt;case GLe:return ZOt;case ULe:return JOt;case WLe:return tNt;case KLe:return eNt}return a});const XA=c9;var YLe="[object Map]",XLe="[object Set]",QLe=Object.prototype,ZLe=QLe.hasOwnProperty;function eP(i){if(i==null)return!0;if(tk(i)&&(Of(i)||typeof i=="string"||typeof i.splice=="function"||RA(i)||mW(i)||BA(i)))return!i.length;var a=XA(i);if(a==YLe||a==XLe)return!i.size;if(vW(i))return!QOt(i).length;for(var f in i)if(ZLe.call(i,f))return!1;return!0}const JLe="graphics-document document";function tMe(i,a){i.attr("role",JLe),a!==""&&i.attr("aria-roledescription",a)}function eMe(i,a,f,p){if(i.insert!==void 0){if(f){const v=`chart-desc-${p}`;i.attr("aria-describedby",v),i.insert("desc",":first-child").attr("id",v).text(f)}if(a){const v=`chart-title-${p}`;i.attr("aria-labelledby",v),i.insert("title",":first-child").attr("id",v).text(a)}}}const rNt=["graph","flowchart","flowchart-v2","flowchart-elk","stateDiagram","stateDiagram-v2"],nMe=5e4,rMe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",iMe="sandbox",sMe="loose",aMe="http://www.w3.org/2000/svg",oMe="http://www.w3.org/1999/xlink",cMe="http://www.w3.org/1999/xhtml",uMe="100%",lMe="100%",hMe="border:0;margin:0;",fMe="margin:0",dMe="allow-top-navigation-by-user-activation allow-popups",gMe='The "iframe" tag is not supported by your browser.',pMe=["foreignobject"],bMe=["dominant-baseline"];async function vMe(i,a){pdt();try{await Edt(i)}catch(f){if(a!=null&&a.suppressErrors)return!1;throw f}return!0}const wMe=function(i){let a=i;return a=a.replace(/style.*:\S*#.*;/g,function(f){return f.substring(0,f.length-1)}),a=a.replace(/classDef.*:\S*#.*;/g,function(f){return f.substring(0,f.length-1)}),a=a.replace(/#\w+;/g,function(f){const p=f.substring(1,f.length-1);return/^\+?\d+$/.test(p)?"fl°°"+p+"¶ß":"fl°"+p+"¶ß"}),a},nP=function(i){return i.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},iNt=(i,a,f=[])=>` +.${i} ${a} { ${f.join(" !important; ")} !important; }`,mMe=(i,a,f={})=>{var v;let p="";if(i.themeCSS!==void 0&&(p+=` +${i.themeCSS}`),i.fontFamily!==void 0&&(p+=` +:root { --mermaid-font-family: ${i.fontFamily}}`),i.altFontFamily!==void 0&&(p+=` +:root { --mermaid-alt-font-family: ${i.altFontFamily}}`),!eP(f)&&rNt.includes(a)){const C=i.htmlLabels||((v=i.flowchart)==null?void 0:v.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const A in f){const P=f[A];eP(P.styles)||C.forEach(F=>{p+=iNt(P.id,F,P.styles)}),eP(P.textStyles)||(p+=iNt(P.id,"tspan",P.textStyles))}}return p},yMe=(i,a,f,p)=>{const v=mMe(i,a,f),m=PSe(a,v,i.themeVariables);return udt(eSe(`${p}{${m}}`),rSe)},xMe=(i="",a,f)=>{let p=i;return!f&&!a&&(p=p.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),p=nP(p),p=p.replace(/
/g,"
"),p},kMe=(i="",a)=>{var v,m;const f=(m=(v=a==null?void 0:a.viewBox)==null?void 0:v.baseVal)!=null&&m.height?a.viewBox.baseVal.height+"px":lMe,p=btoa(''+i+"");return``},sNt=(i,a,f,p,v)=>{const m=i.append("div");m.attr("id",f),p&&m.attr("style",p);const b=m.append("svg").attr("id",a).attr("width","100%").attr("xmlns",aMe);return v&&b.attr("xmlns:xlink",v),b.append("g"),i};function aNt(i,a){return i.append("iframe").attr("id",a).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const EMe=(i,a,f,p)=>{var v,m,b;(v=i.getElementById(a))==null||v.remove(),(m=i.getElementById(f))==null||m.remove(),(b=i.getElementById(p))==null||b.remove()},TMe=async function(i,a,f){var Ct,tt,Pt,pt;pdt(),OW(),YOt(a,{},IW);const p=to.detectInit(a);p&&IW(p);const v=De();Wt.debug(v),a.length>((v==null?void 0:v.maxTextSize)??nMe)&&(a=rMe),a=a.replace(/\r\n?/g,` +`),a=a.replace(/<(\w+)([^>]*)>/g,(Ft,X,Rt)=>"<"+X+Rt.replace(/="([^"]*)"/g,"='$1'")+">");const m="#"+i,b="i"+i,E="#"+b,C="d"+i,A="#"+C;let P=xr("body");const F=v.securityLevel===iMe,j=v.securityLevel===sMe,R=v.fontFamily;if(f!==void 0){if(f&&(f.innerHTML=""),F){const Ft=aNt(xr(f),b);P=xr(Ft.nodes()[0].contentDocument.body),P.node().style.margin=0}else P=xr(f);sNt(P,i,C,`font-family: ${R}`,oMe)}else{if(EMe(document,i,C,b),F){const Ft=aNt(xr("body"),b);P=xr(Ft.nodes()[0].contentDocument.body),P.node().style.margin=0}else P=xr("body");sNt(P,i,C)}a=wMe(a);let H,Y;try{H=await Edt(a)}catch(Ft){H=new XOt("error"),Y=Ft}const rt=P.select(A).node(),J=H.type,it=rt.firstChild,ft=it.firstChild,Tt=rNt.includes(J)?H.renderer.getClasses(a,H):{},kt=yMe(v,J,Tt,m),mt=document.createElement("style");mt.innerHTML=kt,it.insertBefore(mt,ft);try{await H.renderer.draw(a,i,ZIt,H)}catch(Ft){throw SSe.draw(a,i,ZIt),Ft}const ct=P.select(`${A} svg`),yt=(tt=(Ct=H.db).getAccTitle)==null?void 0:tt.call(Ct),st=(pt=(Pt=H.db).getAccDescription)==null?void 0:pt.call(Pt);CMe(J,ct,yt,st),P.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",cMe);let xt=P.select(A).node().innerHTML;if(Wt.debug("config.arrowMarkerAbsolute",v.arrowMarkerAbsolute),xt=xMe(xt,F,u1(v.arrowMarkerAbsolute)),F){const Ft=P.select(A+" svg").node();xt=kMe(xt,Ft)}else j||(xt=eW.sanitize(xt,{ADD_TAGS:pMe,ADD_ATTR:bMe}));if(NLe(),Y)throw Y;const dt=xr(F?E:A).node();return dt&&"remove"in dt&&dt.remove(),{svg:xt,bindFunctions:H.db.bindFunctions}};function _Me(i={}){var f;i!=null&&i.fontFamily&&!((f=i.themeVariables)!=null&&f.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),sSe(i),i!=null&&i.theme&&i.theme in m5?i.themeVariables=m5[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=m5.default.getThemeVariables(i.themeVariables));const a=typeof i=="object"?iSe(i):tOt();zft(a.logLevel),pdt()}function CMe(i,a,f,p){tMe(a,i),eMe(a,f,p,a.attr("id"))}const J1=Object.freeze({render:TMe,parse:vMe,parseDirective:FW,getDiagramFromText:Edt,initialize:_Me,getConfig:De,setConfig:eOt,getSiteConfig:tOt,updateSiteConfig:aSe,reset:()=>{OW()},globalReset:()=>{OW(i9)},defaultConfig:i9});zft(De().logLevel),OW(De());const SMe=async()=>{Wt.debug("Loading registered diagrams");const a=(await Promise.allSettled(Object.entries(OA).map(async([f,{detector:p,loader:v}])=>{if(v)try{gdt(f)}catch{try{const{diagram:b,id:E}=await v();RW(E,b,p)}catch(b){throw Wt.error(`Failed to load external diagram with key ${f}. Removing from detectors.`),delete OA[f],b}}}))).filter(f=>f.status==="rejected");if(a.length>0){Wt.error(`Failed to load ${a.length} external diagrams`);for(const f of a)Wt.error(f);throw new Error(`Failed to load ${a.length} external diagrams`)}},AMe=(i,a,f)=>{Wt.warn(i),qIt(i)?(f&&f(i.str,i.hash),a.push({...i,message:i.str,error:i})):(f&&f(i),i instanceof Error&&a.push({str:i.message,message:i.message,hash:i.name,error:i}))},oNt=async function(i={querySelector:".mermaid"}){try{await LMe(i)}catch(a){if(qIt(a)&&Wt.error(a.str),Pb.parseError&&Pb.parseError(a),!i.suppressErrors)throw Wt.error("Use the suppressErrors option to suppress these errors"),a}},LMe=async function({postRenderCallback:i,querySelector:a,nodes:f}={querySelector:".mermaid"}){const p=J1.getConfig();Wt.debug(`${i?"":"No "}Callback function found`);let v;if(f)v=f;else if(a)v=document.querySelectorAll(a);else throw new Error("Nodes and querySelector are both undefined");Wt.debug(`Found ${v.length} diagrams`),(p==null?void 0:p.startOnLoad)!==void 0&&(Wt.debug("Start On Load: "+(p==null?void 0:p.startOnLoad)),J1.updateSiteConfig({startOnLoad:p==null?void 0:p.startOnLoad}));const m=new to.initIdGenerator(p.deterministicIds,p.deterministicIDSeed);let b;const E=[];for(const C of Array.from(v)){Wt.info("Rendering diagram: "+C.id);/*! Check if previously processed */if(C.getAttribute("data-processed"))continue;C.setAttribute("data-processed","true");const A=`mermaid-${m.next()}`;b=C.innerHTML,b=wA(to.entityDecode(b)).trim().replace(//gi,"
");const P=to.detectInit(b);P&&Wt.debug("Detected early reinit: ",P);try{const{svg:F,bindFunctions:j}=await hNt(A,b,C);C.innerHTML=F,i&&await i(A),j&&j(C)}catch(F){AMe(F,E,Pb.parseError)}}if(E.length>0)throw E[0]},cNt=function(i){J1.initialize(i)},MMe=async function(i,a,f){Wt.warn("mermaid.init is deprecated. Please use run instead."),i&&cNt(i);const p={postRenderCallback:f,querySelector:".mermaid"};typeof a=="string"?p.querySelector=a:a&&(a instanceof HTMLElement?p.nodes=[a]:p.nodes=a),await oNt(p)},DMe=async(i,{lazyLoad:a=!0}={})=>{iIt(...i),a===!1&&await SMe()},uNt=function(){if(Pb.startOnLoad){const{startOnLoad:i}=J1.getConfig();i&&Pb.run().catch(a=>Wt.error("Mermaid failed to initialize",a))}};if(typeof document<"u"){/*! + * Wait for document loaded before starting the execution + */window.addEventListener("load",uNt,!1)}const IMe=function(i){Pb.parseError=i},HW=[];let Adt=!1;const lNt=async()=>{if(!Adt){for(Adt=!0;HW.length>0;){const i=HW.shift();if(i)try{await i()}catch(a){Wt.error("Error executing queue",a)}}Adt=!1}},OMe=async(i,a)=>new Promise((f,p)=>{const v=()=>new Promise((m,b)=>{J1.parse(i,a).then(E=>{m(E),f(E)},E=>{var C;Wt.error("Error parsing",E),(C=Pb.parseError)==null||C.call(Pb,E),b(E),p(E)})});HW.push(v),lNt().catch(p)}),hNt=(i,a,f)=>new Promise((p,v)=>{const m=()=>new Promise((b,E)=>{J1.render(i,a,f).then(C=>{b(C),p(C)},C=>{var A;Wt.error("Error parsing",C),(A=Pb.parseError)==null||A.call(Pb,C),E(C),v(C)})});HW.push(m),lNt().catch(v)}),Pb={startOnLoad:!0,mermaidAPI:J1,parse:OMe,render:hNt,init:MMe,run:oNt,registerExternalDiagrams:DMe,initialize:cNt,parseError:void 0,contentLoaded:uNt,setParseErrorHandler:IMe,detectType:hW};var VW=function(){var i=function(Ga,_r,qr,Oi){for(qr=qr||{},Oi=Ga.length;Oi--;qr[Ga[Oi]]=_r);return qr},a=[1,6],f=[1,7],p=[1,8],v=[1,9],m=[1,16],b=[1,11],E=[1,12],C=[1,13],A=[1,14],P=[1,15],F=[1,27],j=[1,33],R=[1,34],H=[1,35],Y=[1,36],rt=[1,37],J=[1,72],it=[1,73],ft=[1,74],Tt=[1,75],kt=[1,76],mt=[1,77],ct=[1,78],yt=[1,38],st=[1,39],xt=[1,40],ht=[1,41],dt=[1,42],Ct=[1,43],tt=[1,44],Pt=[1,45],pt=[1,46],Ft=[1,47],X=[1,48],Rt=[1,49],Bt=[1,50],vt=[1,51],Ot=[1,52],Vt=[1,53],qe=[1,54],_n=[1,55],Te=[1,56],Wn=[1,57],Ae=[1,59],ne=[1,60],ke=[1,61],Ve=[1,62],Ee=[1,63],He=[1,64],Ce=[1,65],$e=[1,66],ye=[1,67],fn=[1,68],Yt=[1,69],Mi=[24,52],qt=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],zi=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Se=[1,94],ki=[1,95],Ri=[1,96],pi=[1,97],bi=[15,24,52],dn=[7,8,9,10,18,22,25,26,27,28],Nn=[15,24,43,52],Wr=[15,24,43,52,86,87,89,90],Li=[15,43],is=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Ts={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(_r,qr,Oi,gr,Js,Vn,Xc){var Er=Vn.length-1;switch(Js){case 4:gr.setDirection("TB");break;case 5:gr.setDirection("BT");break;case 6:gr.setDirection("RL");break;case 7:gr.setDirection("LR");break;case 11:gr.parseDirective("%%{","open_directive");break;case 12:break;case 13:Vn[Er]=Vn[Er].trim().replace(/'/g,'"'),gr.parseDirective(Vn[Er],"arg_directive");break;case 14:gr.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:gr.setC4Type(Vn[Er-3]);break;case 26:gr.setTitle(Vn[Er].substring(6)),this.$=Vn[Er].substring(6);break;case 27:gr.setAccDescription(Vn[Er].substring(15)),this.$=Vn[Er].substring(15);break;case 28:this.$=Vn[Er].trim(),gr.setTitle(this.$);break;case 29:case 30:this.$=Vn[Er].trim(),gr.setAccDescription(this.$);break;case 35:case 36:Vn[Er].splice(2,0,"ENTERPRISE"),gr.addPersonOrSystemBoundary(...Vn[Er]),this.$=Vn[Er];break;case 37:gr.addPersonOrSystemBoundary(...Vn[Er]),this.$=Vn[Er];break;case 38:Vn[Er].splice(2,0,"CONTAINER"),gr.addContainerBoundary(...Vn[Er]),this.$=Vn[Er];break;case 39:gr.addDeploymentNode("node",...Vn[Er]),this.$=Vn[Er];break;case 40:gr.addDeploymentNode("nodeL",...Vn[Er]),this.$=Vn[Er];break;case 41:gr.addDeploymentNode("nodeR",...Vn[Er]),this.$=Vn[Er];break;case 42:gr.popBoundaryParseStack();break;case 46:gr.addPersonOrSystem("person",...Vn[Er]),this.$=Vn[Er];break;case 47:gr.addPersonOrSystem("external_person",...Vn[Er]),this.$=Vn[Er];break;case 48:gr.addPersonOrSystem("system",...Vn[Er]),this.$=Vn[Er];break;case 49:gr.addPersonOrSystem("system_db",...Vn[Er]),this.$=Vn[Er];break;case 50:gr.addPersonOrSystem("system_queue",...Vn[Er]),this.$=Vn[Er];break;case 51:gr.addPersonOrSystem("external_system",...Vn[Er]),this.$=Vn[Er];break;case 52:gr.addPersonOrSystem("external_system_db",...Vn[Er]),this.$=Vn[Er];break;case 53:gr.addPersonOrSystem("external_system_queue",...Vn[Er]),this.$=Vn[Er];break;case 54:gr.addContainer("container",...Vn[Er]),this.$=Vn[Er];break;case 55:gr.addContainer("container_db",...Vn[Er]),this.$=Vn[Er];break;case 56:gr.addContainer("container_queue",...Vn[Er]),this.$=Vn[Er];break;case 57:gr.addContainer("external_container",...Vn[Er]),this.$=Vn[Er];break;case 58:gr.addContainer("external_container_db",...Vn[Er]),this.$=Vn[Er];break;case 59:gr.addContainer("external_container_queue",...Vn[Er]),this.$=Vn[Er];break;case 60:gr.addComponent("component",...Vn[Er]),this.$=Vn[Er];break;case 61:gr.addComponent("component_db",...Vn[Er]),this.$=Vn[Er];break;case 62:gr.addComponent("component_queue",...Vn[Er]),this.$=Vn[Er];break;case 63:gr.addComponent("external_component",...Vn[Er]),this.$=Vn[Er];break;case 64:gr.addComponent("external_component_db",...Vn[Er]),this.$=Vn[Er];break;case 65:gr.addComponent("external_component_queue",...Vn[Er]),this.$=Vn[Er];break;case 67:gr.addRel("rel",...Vn[Er]),this.$=Vn[Er];break;case 68:gr.addRel("birel",...Vn[Er]),this.$=Vn[Er];break;case 69:gr.addRel("rel_u",...Vn[Er]),this.$=Vn[Er];break;case 70:gr.addRel("rel_d",...Vn[Er]),this.$=Vn[Er];break;case 71:gr.addRel("rel_l",...Vn[Er]),this.$=Vn[Er];break;case 72:gr.addRel("rel_r",...Vn[Er]),this.$=Vn[Er];break;case 73:gr.addRel("rel_b",...Vn[Er]),this.$=Vn[Er];break;case 74:Vn[Er].splice(0,1),gr.addRel("rel",...Vn[Er]),this.$=Vn[Er];break;case 75:gr.updateElStyle("update_el_style",...Vn[Er]),this.$=Vn[Er];break;case 76:gr.updateRelStyle("update_rel_style",...Vn[Er]),this.$=Vn[Er];break;case 77:gr.updateLayoutConfig("update_layout_config",...Vn[Er]),this.$=Vn[Er];break;case 78:this.$=[Vn[Er]];break;case 79:Vn[Er].unshift(Vn[Er-1]),this.$=Vn[Er];break;case 80:case 82:this.$=Vn[Er].trim();break;case 81:let Mc={};Mc[Vn[Er-1].trim()]=Vn[Er].trim(),this.$=Mc;break;case 83:this.$="";break}},table:[{3:1,4:2,5:3,6:4,7:a,8:f,9:p,10:v,11:5,12:10,18:m,22:b,25:E,26:C,27:A,28:P},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:a,8:f,9:p,10:v,11:5,12:10,18:m,22:b,25:E,26:C,27:A,28:P},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:F},i([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:79,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:80,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:81,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{23:82,29:29,30:30,31:31,32:j,33:R,34:H,36:Y,38:rt,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},i(Mi,[2,20],{53:32,39:58,40:70,42:71,30:87,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt}),i(Mi,[2,21]),i(qt,[2,23],{15:[1,88]}),i(Mi,[2,43],{15:[1,89]}),i(zi,[2,26]),i(zi,[2,27]),{35:[1,90]},{37:[1,91]},i(zi,[2,30]),{45:92,85:93,86:Se,87:ki,89:Ri,90:pi},{45:98,85:93,86:Se,87:ki,89:Ri,90:pi},{45:99,85:93,86:Se,87:ki,89:Ri,90:pi},{45:100,85:93,86:Se,87:ki,89:Ri,90:pi},{45:101,85:93,86:Se,87:ki,89:Ri,90:pi},{45:102,85:93,86:Se,87:ki,89:Ri,90:pi},{45:103,85:93,86:Se,87:ki,89:Ri,90:pi},{45:104,85:93,86:Se,87:ki,89:Ri,90:pi},{45:105,85:93,86:Se,87:ki,89:Ri,90:pi},{45:106,85:93,86:Se,87:ki,89:Ri,90:pi},{45:107,85:93,86:Se,87:ki,89:Ri,90:pi},{45:108,85:93,86:Se,87:ki,89:Ri,90:pi},{45:109,85:93,86:Se,87:ki,89:Ri,90:pi},{45:110,85:93,86:Se,87:ki,89:Ri,90:pi},{45:111,85:93,86:Se,87:ki,89:Ri,90:pi},{45:112,85:93,86:Se,87:ki,89:Ri,90:pi},{45:113,85:93,86:Se,87:ki,89:Ri,90:pi},{45:114,85:93,86:Se,87:ki,89:Ri,90:pi},{45:115,85:93,86:Se,87:ki,89:Ri,90:pi},{45:116,85:93,86:Se,87:ki,89:Ri,90:pi},i(bi,[2,66]),{45:117,85:93,86:Se,87:ki,89:Ri,90:pi},{45:118,85:93,86:Se,87:ki,89:Ri,90:pi},{45:119,85:93,86:Se,87:ki,89:Ri,90:pi},{45:120,85:93,86:Se,87:ki,89:Ri,90:pi},{45:121,85:93,86:Se,87:ki,89:Ri,90:pi},{45:122,85:93,86:Se,87:ki,89:Ri,90:pi},{45:123,85:93,86:Se,87:ki,89:Ri,90:pi},{45:124,85:93,86:Se,87:ki,89:Ri,90:pi},{45:125,85:93,86:Se,87:ki,89:Ri,90:pi},{45:126,85:93,86:Se,87:ki,89:Ri,90:pi},{45:127,85:93,86:Se,87:ki,89:Ri,90:pi},{30:128,39:58,40:70,42:71,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,53:32,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt},{15:[1,130],43:[1,129]},{45:131,85:93,86:Se,87:ki,89:Ri,90:pi},{45:132,85:93,86:Se,87:ki,89:Ri,90:pi},{45:133,85:93,86:Se,87:ki,89:Ri,90:pi},{45:134,85:93,86:Se,87:ki,89:Ri,90:pi},{45:135,85:93,86:Se,87:ki,89:Ri,90:pi},{45:136,85:93,86:Se,87:ki,89:Ri,90:pi},{45:137,85:93,86:Se,87:ki,89:Ri,90:pi},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},i(dn,[2,9]),{14:142,21:F},{21:[2,13]},{1:[2,15]},i(Mi,[2,22]),i(qt,[2,24],{31:31,29:143,32:j,33:R,34:H,36:Y,38:rt}),i(Mi,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:j,33:R,34:H,36:Y,38:rt,44:J,46:it,47:ft,48:Tt,49:kt,50:mt,51:ct,54:yt,55:st,56:xt,57:ht,58:dt,59:Ct,60:tt,61:Pt,62:pt,63:Ft,64:X,65:Rt,66:Bt,67:vt,68:Ot,69:Vt,70:qe,71:_n,72:Te,73:Wn,74:Ae,75:ne,76:ke,77:Ve,78:Ee,79:He,80:Ce,81:$e,82:ye,83:fn,84:Yt}),i(zi,[2,28]),i(zi,[2,29]),i(bi,[2,46]),i(Nn,[2,78],{85:93,45:145,86:Se,87:ki,89:Ri,90:pi}),i(Wr,[2,80]),{88:[1,146]},i(Wr,[2,82]),i(Wr,[2,83]),i(bi,[2,47]),i(bi,[2,48]),i(bi,[2,49]),i(bi,[2,50]),i(bi,[2,51]),i(bi,[2,52]),i(bi,[2,53]),i(bi,[2,54]),i(bi,[2,55]),i(bi,[2,56]),i(bi,[2,57]),i(bi,[2,58]),i(bi,[2,59]),i(bi,[2,60]),i(bi,[2,61]),i(bi,[2,62]),i(bi,[2,63]),i(bi,[2,64]),i(bi,[2,65]),i(bi,[2,67]),i(bi,[2,68]),i(bi,[2,69]),i(bi,[2,70]),i(bi,[2,71]),i(bi,[2,72]),i(bi,[2,73]),i(bi,[2,74]),i(bi,[2,75]),i(bi,[2,76]),i(bi,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},i(Li,[2,35]),i(Li,[2,36]),i(Li,[2,37]),i(Li,[2,38]),i(Li,[2,39]),i(Li,[2,40]),i(Li,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},i(qt,[2,25]),i(Mi,[2,45]),i(Nn,[2,79]),i(Wr,[2,81]),i(bi,[2,31]),i(bi,[2,42]),i(is,[2,32]),i(is,[2,33],{15:[1,152]}),i(dn,[2,10]),i(is,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(_r,qr){if(qr.recoverable)this.trace(_r);else{var Oi=new Error(_r);throw Oi.hash=qr,Oi}},parse:function(_r){var qr=this,Oi=[0],gr=[],Js=[null],Vn=[],Xc=this.table,Er="",Mc=0,bp=0,fm=2,T0=1,Fd=Vn.slice.call(arguments,1),No=Object.create(this.lexer),ta={yy:{}};for(var bu in this.yy)Object.prototype.hasOwnProperty.call(this.yy,bu)&&(ta.yy[bu]=this.yy[bu]);No.setInput(_r,ta.yy),ta.yy.lexer=No,ta.yy.parser=this,typeof No.yylloc>"u"&&(No.yylloc={});var Pu=No.yylloc;Vn.push(Pu);var lo=No.options&&No.options.ranges;typeof ta.yy.parseError=="function"?this.parseError=ta.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function mo(){var ni;return ni=gr.pop()||No.lex()||T0,typeof ni!="number"&&(ni instanceof Array&&(gr=ni,ni=gr.pop()),ni=qr.symbols_[ni]||ni),ni}for(var Os,Tl,Fu,zo,nd={},sf,ll,Vi,Ke;;){if(Tl=Oi[Oi.length-1],this.defaultActions[Tl]?Fu=this.defaultActions[Tl]:((Os===null||typeof Os>"u")&&(Os=mo()),Fu=Xc[Tl]&&Xc[Tl][Os]),typeof Fu>"u"||!Fu.length||!Fu[0]){var kr="";Ke=[];for(sf in Xc[Tl])this.terminals_[sf]&&sf>fm&&Ke.push("'"+this.terminals_[sf]+"'");No.showPosition?kr="Parse error on line "+(Mc+1)+`: +`+No.showPosition()+` +Expecting `+Ke.join(", ")+", got '"+(this.terminals_[Os]||Os)+"'":kr="Parse error on line "+(Mc+1)+": Unexpected "+(Os==T0?"end of input":"'"+(this.terminals_[Os]||Os)+"'"),this.parseError(kr,{text:No.match,token:this.terminals_[Os]||Os,line:No.yylineno,loc:Pu,expected:Ke})}if(Fu[0]instanceof Array&&Fu.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Tl+", token: "+Os);switch(Fu[0]){case 1:Oi.push(Os),Js.push(No.yytext),Vn.push(No.yylloc),Oi.push(Fu[1]),Os=null,bp=No.yyleng,Er=No.yytext,Mc=No.yylineno,Pu=No.yylloc;break;case 2:if(ll=this.productions_[Fu[1]][1],nd.$=Js[Js.length-ll],nd._$={first_line:Vn[Vn.length-(ll||1)].first_line,last_line:Vn[Vn.length-1].last_line,first_column:Vn[Vn.length-(ll||1)].first_column,last_column:Vn[Vn.length-1].last_column},lo&&(nd._$.range=[Vn[Vn.length-(ll||1)].range[0],Vn[Vn.length-1].range[1]]),zo=this.performAction.apply(nd,[Er,bp,Mc,ta.yy,Fu[1],Js,Vn].concat(Fd)),typeof zo<"u")return zo;ll&&(Oi=Oi.slice(0,-1*ll*2),Js=Js.slice(0,-1*ll),Vn=Vn.slice(0,-1*ll)),Oi.push(this.productions_[Fu[1]][0]),Js.push(nd.$),Vn.push(nd._$),Vi=Xc[Oi[Oi.length-2]][Oi[Oi.length-1]],Oi.push(Vi);break;case 3:return!0}}return!0}},Aa=function(){var Ga={EOF:1,parseError:function(qr,Oi){if(this.yy.parser)this.yy.parser.parseError(qr,Oi);else throw new Error(qr)},setInput:function(_r,qr){return this.yy=qr||this.yy||{},this._input=_r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var _r=this._input[0];this.yytext+=_r,this.yyleng++,this.offset++,this.match+=_r,this.matched+=_r;var qr=_r.match(/(?:\r\n?|\n).*/g);return qr?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_r},unput:function(_r){var qr=_r.length,Oi=_r.split(/(?:\r\n?|\n)/g);this._input=_r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-qr),this.offset-=qr;var gr=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Oi.length-1&&(this.yylineno-=Oi.length-1);var Js=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Oi?(Oi.length===gr.length?this.yylloc.first_column:0)+gr[gr.length-Oi.length].length-Oi[0].length:this.yylloc.first_column-qr},this.options.ranges&&(this.yylloc.range=[Js[0],Js[0]+this.yyleng-qr]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(_r){this.unput(this.match.slice(_r))},pastInput:function(){var _r=this.matched.substr(0,this.matched.length-this.match.length);return(_r.length>20?"...":"")+_r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var _r=this.match;return _r.length<20&&(_r+=this._input.substr(0,20-_r.length)),(_r.substr(0,20)+(_r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var _r=this.pastInput(),qr=new Array(_r.length+1).join("-");return _r+this.upcomingInput()+` +`+qr+"^"},test_match:function(_r,qr){var Oi,gr,Js;if(this.options.backtrack_lexer&&(Js={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Js.yylloc.range=this.yylloc.range.slice(0))),gr=_r[0].match(/(?:\r\n?|\n).*/g),gr&&(this.yylineno+=gr.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:gr?gr[gr.length-1].length-gr[gr.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_r[0].length},this.yytext+=_r[0],this.match+=_r[0],this.matches=_r,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(_r[0].length),this.matched+=_r[0],Oi=this.performAction.call(this,this.yy,this,qr,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Oi)return Oi;if(this._backtrack){for(var Vn in Js)this[Vn]=Js[Vn];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _r,qr,Oi,gr;this._more||(this.yytext="",this.match="");for(var Js=this._currentRules(),Vn=0;Vnqr[0].length)){if(qr=Oi,gr=Vn,this.options.backtrack_lexer){if(_r=this.test_match(Oi,Js[Vn]),_r!==!1)return _r;if(this._backtrack){qr=!1;continue}else return!1}else if(!this.options.flex)break}return qr?(_r=this.test_match(qr,Js[gr]),_r!==!1?_r:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var qr=this.next();return qr||this.lex()},begin:function(qr){this.conditionStack.push(qr)},popState:function(){var qr=this.conditionStack.length-1;return qr>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(qr){return qr=this.conditionStack.length-1-Math.abs(qr||0),qr>=0?this.conditionStack[qr]:"INITIAL"},pushState:function(qr){this.begin(qr)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(qr,Oi,gr,Js){switch(gr){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:break;case 19:c;break;case 20:return 15;case 21:break;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),55;case 28:return this.begin("person"),54;case 29:return this.begin("system_ext_queue"),61;case 30:return this.begin("system_ext_db"),60;case 31:return this.begin("system_ext"),59;case 32:return this.begin("system_queue"),58;case 33:return this.begin("system_db"),57;case 34:return this.begin("system"),56;case 35:return this.begin("boundary"),47;case 36:return this.begin("enterprise_boundary"),44;case 37:return this.begin("system_boundary"),46;case 38:return this.begin("container_ext_queue"),67;case 39:return this.begin("container_ext_db"),66;case 40:return this.begin("container_ext"),65;case 41:return this.begin("container_queue"),64;case 42:return this.begin("container_db"),63;case 43:return this.begin("container"),62;case 44:return this.begin("container_boundary"),48;case 45:return this.begin("component_ext_queue"),73;case 46:return this.begin("component_ext_db"),72;case 47:return this.begin("component_ext"),71;case 48:return this.begin("component_queue"),70;case 49:return this.begin("component_db"),69;case 50:return this.begin("component"),68;case 51:return this.begin("node"),49;case 52:return this.begin("node"),49;case 53:return this.begin("node_l"),50;case 54:return this.begin("node_r"),51;case 55:return this.begin("rel"),74;case 56:return this.begin("birel"),75;case 57:return this.begin("rel_u"),76;case 58:return this.begin("rel_u"),76;case 59:return this.begin("rel_d"),77;case 60:return this.begin("rel_d"),77;case 61:return this.begin("rel_l"),78;case 62:return this.begin("rel_l"),78;case 63:return this.begin("rel_r"),79;case 64:return this.begin("rel_r"),79;case 65:return this.begin("rel_b"),80;case 66:return this.begin("rel_index"),81;case 67:return this.begin("update_el_style"),82;case 68:return this.begin("update_rel_style"),83;case 69:return this.begin("update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:this.begin("attribute");break;case 73:this.popState(),this.popState();break;case 74:return 90;case 75:break;case 76:return 90;case 77:this.begin("string");break;case 78:this.popState();break;case 79:return"STR";case 80:this.begin("string_kv");break;case 81:return this.begin("string_kv_key"),"STR_KEY";case 82:this.popState(),this.begin("string_kv_value");break;case 83:return"STR_VALUE";case 84:this.popState(),this.popState();break;case 85:return"STR";case 86:return"LBRACE";case 87:return"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},string_kv_value:{rules:[83,84],inclusive:!1},string_kv_key:{rules:[82],inclusive:!1},string_kv:{rules:[81],inclusive:!1},string:{rules:[78,79],inclusive:!1},attribute:{rules:[73,74,75,76,77,80,85],inclusive:!1},update_layout_config:{rules:[70,71,72,73],inclusive:!1},update_rel_style:{rules:[70,71,72,73],inclusive:!1},update_el_style:{rules:[70,71,72,73],inclusive:!1},rel_b:{rules:[70,71,72,73],inclusive:!1},rel_r:{rules:[70,71,72,73],inclusive:!1},rel_l:{rules:[70,71,72,73],inclusive:!1},rel_d:{rules:[70,71,72,73],inclusive:!1},rel_u:{rules:[70,71,72,73],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[70,71,72,73],inclusive:!1},node_r:{rules:[70,71,72,73],inclusive:!1},node_l:{rules:[70,71,72,73],inclusive:!1},node:{rules:[70,71,72,73],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[70,71,72,73],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[70,71,72,73],inclusive:!1},component_ext:{rules:[70,71,72,73],inclusive:!1},component_queue:{rules:[70,71,72,73],inclusive:!1},component_db:{rules:[70,71,72,73],inclusive:!1},component:{rules:[70,71,72,73],inclusive:!1},container_boundary:{rules:[70,71,72,73],inclusive:!1},container_ext_queue:{rules:[70,71,72,73],inclusive:!1},container_ext_db:{rules:[70,71,72,73],inclusive:!1},container_ext:{rules:[70,71,72,73],inclusive:!1},container_queue:{rules:[70,71,72,73],inclusive:!1},container_db:{rules:[70,71,72,73],inclusive:!1},container:{rules:[70,71,72,73],inclusive:!1},birel:{rules:[70,71,72,73],inclusive:!1},system_boundary:{rules:[70,71,72,73],inclusive:!1},enterprise_boundary:{rules:[70,71,72,73],inclusive:!1},boundary:{rules:[70,71,72,73],inclusive:!1},system_ext_queue:{rules:[70,71,72,73],inclusive:!1},system_ext_db:{rules:[70,71,72,73],inclusive:!1},system_ext:{rules:[70,71,72,73],inclusive:!1},system_queue:{rules:[70,71,72,73],inclusive:!1},system_db:{rules:[70,71,72,73],inclusive:!1},system:{rules:[70,71,72,73],inclusive:!1},person_ext:{rules:[70,71,72,73],inclusive:!1},person:{rules:[70,71,72,73],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,86,87,88,89,90],inclusive:!0}}};return Ga}();Ts.lexer=Aa;function Xi(){this.yy={}}return Xi.prototype=Ts,Ts.Parser=Xi,new Xi}();VW.parser=VW;const NMe=VW;let rm=[],ik=[""],dg="global",im="",d3=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],rP=[],Ldt="",Mdt=!1,GW=4,UW=2;var fNt;const PMe=function(){return fNt},FMe=function(i){fNt=v0(i,De())},BMe=function(i,a,f){J1.parseDirective(this,i,a,f)},RMe=function(i,a,f,p,v,m,b,E,C){if(i==null||a===void 0||a===null||f===void 0||f===null||p===void 0||p===null)return;let A={};const P=rP.find(F=>F.from===a&&F.to===f);if(P?A=P:rP.push(A),A.type=i,A.from=a,A.to=f,A.label={text:p},v==null)A.techn={text:""};else if(typeof v=="object"){let[F,j]=Object.entries(v)[0];A[F]={text:j}}else A.techn={text:v};if(m==null)A.descr={text:""};else if(typeof m=="object"){let[F,j]=Object.entries(m)[0];A[F]={text:j}}else A.descr={text:m};if(typeof b=="object"){let[F,j]=Object.entries(b)[0];A[F]=j}else A.sprite=b;if(typeof E=="object"){let[F,j]=Object.entries(E)[0];A[F]=j}else A.tags=E;if(typeof C=="object"){let[F,j]=Object.entries(C)[0];A[F]=j}else A.link=C;A.wrap=sk()},jMe=function(i,a,f,p,v,m,b){if(a===null||f===null)return;let E={};const C=rm.find(A=>A.alias===a);if(C&&a===C.alias?E=C:(E.alias=a,rm.push(E)),f==null?E.label={text:""}:E.label={text:f},p==null)E.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];E[A]={text:P}}else E.descr={text:p};if(typeof v=="object"){let[A,P]=Object.entries(v)[0];E[A]=P}else E.sprite=v;if(typeof m=="object"){let[A,P]=Object.entries(m)[0];E[A]=P}else E.tags=m;if(typeof b=="object"){let[A,P]=Object.entries(b)[0];E[A]=P}else E.link=b;E.typeC4Shape={text:i},E.parentBoundary=dg,E.wrap=sk()},$Me=function(i,a,f,p,v,m,b,E){if(a===null||f===null)return;let C={};const A=rm.find(P=>P.alias===a);if(A&&a===A.alias?C=A:(C.alias=a,rm.push(C)),f==null?C.label={text:""}:C.label={text:f},p==null)C.techn={text:""};else if(typeof p=="object"){let[P,F]=Object.entries(p)[0];C[P]={text:F}}else C.techn={text:p};if(v==null)C.descr={text:""};else if(typeof v=="object"){let[P,F]=Object.entries(v)[0];C[P]={text:F}}else C.descr={text:v};if(typeof m=="object"){let[P,F]=Object.entries(m)[0];C[P]=F}else C.sprite=m;if(typeof b=="object"){let[P,F]=Object.entries(b)[0];C[P]=F}else C.tags=b;if(typeof E=="object"){let[P,F]=Object.entries(E)[0];C[P]=F}else C.link=E;C.wrap=sk(),C.typeC4Shape={text:i},C.parentBoundary=dg},zMe=function(i,a,f,p,v,m,b,E){if(a===null||f===null)return;let C={};const A=rm.find(P=>P.alias===a);if(A&&a===A.alias?C=A:(C.alias=a,rm.push(C)),f==null?C.label={text:""}:C.label={text:f},p==null)C.techn={text:""};else if(typeof p=="object"){let[P,F]=Object.entries(p)[0];C[P]={text:F}}else C.techn={text:p};if(v==null)C.descr={text:""};else if(typeof v=="object"){let[P,F]=Object.entries(v)[0];C[P]={text:F}}else C.descr={text:v};if(typeof m=="object"){let[P,F]=Object.entries(m)[0];C[P]=F}else C.sprite=m;if(typeof b=="object"){let[P,F]=Object.entries(b)[0];C[P]=F}else C.tags=b;if(typeof E=="object"){let[P,F]=Object.entries(E)[0];C[P]=F}else C.link=E;C.wrap=sk(),C.typeC4Shape={text:i},C.parentBoundary=dg},qMe=function(i,a,f,p,v){if(i===null||a===null)return;let m={};const b=d3.find(E=>E.alias===i);if(b&&i===b.alias?m=b:(m.alias=i,d3.push(m)),a==null?m.label={text:""}:m.label={text:a},f==null)m.type={text:"system"};else if(typeof f=="object"){let[E,C]=Object.entries(f)[0];m[E]={text:C}}else m.type={text:f};if(typeof p=="object"){let[E,C]=Object.entries(p)[0];m[E]=C}else m.tags=p;if(typeof v=="object"){let[E,C]=Object.entries(v)[0];m[E]=C}else m.link=v;m.parentBoundary=dg,m.wrap=sk(),im=dg,dg=i,ik.push(im)},HMe=function(i,a,f,p,v){if(i===null||a===null)return;let m={};const b=d3.find(E=>E.alias===i);if(b&&i===b.alias?m=b:(m.alias=i,d3.push(m)),a==null?m.label={text:""}:m.label={text:a},f==null)m.type={text:"container"};else if(typeof f=="object"){let[E,C]=Object.entries(f)[0];m[E]={text:C}}else m.type={text:f};if(typeof p=="object"){let[E,C]=Object.entries(p)[0];m[E]=C}else m.tags=p;if(typeof v=="object"){let[E,C]=Object.entries(v)[0];m[E]=C}else m.link=v;m.parentBoundary=dg,m.wrap=sk(),im=dg,dg=i,ik.push(im)},VMe=function(i,a,f,p,v,m,b,E){if(a===null||f===null)return;let C={};const A=d3.find(P=>P.alias===a);if(A&&a===A.alias?C=A:(C.alias=a,d3.push(C)),f==null?C.label={text:""}:C.label={text:f},p==null)C.type={text:"node"};else if(typeof p=="object"){let[P,F]=Object.entries(p)[0];C[P]={text:F}}else C.type={text:p};if(v==null)C.descr={text:""};else if(typeof v=="object"){let[P,F]=Object.entries(v)[0];C[P]={text:F}}else C.descr={text:v};if(typeof b=="object"){let[P,F]=Object.entries(b)[0];C[P]=F}else C.tags=b;if(typeof E=="object"){let[P,F]=Object.entries(E)[0];C[P]=F}else C.link=E;C.nodeType=i,C.parentBoundary=dg,C.wrap=sk(),im=dg,dg=a,ik.push(im)},GMe=function(){dg=im,ik.pop(),im=ik.pop(),ik.push(im)},UMe=function(i,a,f,p,v,m,b,E,C,A,P){let F=rm.find(j=>j.alias===a);if(!(F===void 0&&(F=d3.find(j=>j.alias===a),F===void 0))){if(f!=null)if(typeof f=="object"){let[j,R]=Object.entries(f)[0];F[j]=R}else F.bgColor=f;if(p!=null)if(typeof p=="object"){let[j,R]=Object.entries(p)[0];F[j]=R}else F.fontColor=p;if(v!=null)if(typeof v=="object"){let[j,R]=Object.entries(v)[0];F[j]=R}else F.borderColor=v;if(m!=null)if(typeof m=="object"){let[j,R]=Object.entries(m)[0];F[j]=R}else F.shadowing=m;if(b!=null)if(typeof b=="object"){let[j,R]=Object.entries(b)[0];F[j]=R}else F.shape=b;if(E!=null)if(typeof E=="object"){let[j,R]=Object.entries(E)[0];F[j]=R}else F.sprite=E;if(C!=null)if(typeof C=="object"){let[j,R]=Object.entries(C)[0];F[j]=R}else F.techn=C;if(A!=null)if(typeof A=="object"){let[j,R]=Object.entries(A)[0];F[j]=R}else F.legendText=A;if(P!=null)if(typeof P=="object"){let[j,R]=Object.entries(P)[0];F[j]=R}else F.legendSprite=P}},WMe=function(i,a,f,p,v,m,b){const E=rP.find(C=>C.from===a&&C.to===f);if(E!==void 0){if(p!=null)if(typeof p=="object"){let[C,A]=Object.entries(p)[0];E[C]=A}else E.textColor=p;if(v!=null)if(typeof v=="object"){let[C,A]=Object.entries(v)[0];E[C]=A}else E.lineColor=v;if(m!=null)if(typeof m=="object"){let[C,A]=Object.entries(m)[0];E[C]=parseInt(A)}else E.offsetX=parseInt(m);if(b!=null)if(typeof b=="object"){let[C,A]=Object.entries(b)[0];E[C]=parseInt(A)}else E.offsetY=parseInt(b)}},KMe=function(i,a,f){let p=GW,v=UW;if(typeof a=="object"){const m=Object.values(a)[0];p=parseInt(m)}else p=parseInt(a);if(typeof f=="object"){const m=Object.values(f)[0];v=parseInt(m)}else v=parseInt(f);p>=1&&(GW=p),v>=1&&(UW=v)},YMe=function(){return GW},XMe=function(){return UW},QMe=function(){return dg},ZMe=function(){return im},dNt=function(i){return i==null?rm:rm.filter(a=>a.parentBoundary===i)},JMe=function(i){return rm.find(a=>a.alias===i)},tDe=function(i){return Object.keys(dNt(i))},eDe=function(i){return i==null?d3:d3.filter(a=>a.parentBoundary===i)},nDe=function(){return rP},rDe=function(){return Ldt},iDe=function(i){Mdt=i},sk=function(){return Mdt},gNt={addPersonOrSystem:jMe,addPersonOrSystemBoundary:qMe,addContainer:$Me,addContainerBoundary:HMe,addComponent:zMe,addDeploymentNode:VMe,popBoundaryParseStack:GMe,addRel:RMe,updateElStyle:UMe,updateRelStyle:WMe,updateLayoutConfig:KMe,autoWrap:sk,setWrap:iDe,getC4ShapeArray:dNt,getC4Shape:JMe,getC4ShapeKeys:tDe,getBoundarys:eDe,getCurrentBoundaryParse:QMe,getParentBoundaryParse:ZMe,getRels:nDe,getTitle:rDe,getC4Type:PMe,getC4ShapeInRow:YMe,getC4BoundaryInRow:XMe,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,parseDirective:BMe,getConfig:()=>De().c4,clear:function(){rm=[],d3=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],im="",dg="global",ik=[""],rP=[],ik=[""],Ldt="",Mdt=!1,GW=4,UW=2},LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(i){Ldt=v0(i,De())},setC4Type:FMe},WW=(i,a)=>{const f=i.append("rect");if(f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),a.rx!==void 0&&f.attr("rx",a.rx),a.ry!==void 0&&f.attr("ry",a.ry),a.attrs!==void 0)for(const p in a.attrs)f.attr(p,a.attrs[p]);return a.class!==void 0&&f.attr("class",a.class),f},pNt=(i,a)=>{const f={x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,stroke:a.stroke,class:"rect"};WW(i,f).lower()},sDe=(i,a)=>{const f=a.text.replace($N," "),p=i.append("text");p.attr("x",a.x),p.attr("y",a.y),p.attr("class","legend"),p.style("text-anchor",a.anchor),a.class!==void 0&&p.attr("class",a.class);const v=p.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.text(f),p},aDe=(i,a,f,p)=>{const v=i.append("image");v.attr("x",a),v.attr("y",f);const m=Xx(p);v.attr("xlink:href",m)},oDe=(i,a,f,p)=>{const v=i.append("use");v.attr("x",a),v.attr("y",f);const m=Xx(p);v.attr("xlink:href",`#${m}`)},u9=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),Ddt=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),Idt=function(i,a){return WW(i,a)},bNt=function(i,a,f,p,v,m){const b=i.append("image");b.attr("width",a),b.attr("height",f),b.attr("x",p),b.attr("y",v);let E=m.startsWith("data:image/png;base64")?m:Xx(m);b.attr("xlink:href",E)},cDe=(i,a,f)=>{const p=i.append("g");let v=0;for(let m of a){let b=m.textColor?m.textColor:"#444444",E=m.lineColor?m.lineColor:"#444444",C=m.offsetX?parseInt(m.offsetX):0,A=m.offsetY?parseInt(m.offsetY):0,P="";if(v===0){let j=p.append("line");j.attr("x1",m.startPoint.x),j.attr("y1",m.startPoint.y),j.attr("x2",m.endPoint.x),j.attr("y2",m.endPoint.y),j.attr("stroke-width","1"),j.attr("stroke",E),j.style("fill","none"),m.type!=="rel_b"&&j.attr("marker-end","url("+P+"#arrowhead)"),(m.type==="birel"||m.type==="rel_b")&&j.attr("marker-start","url("+P+"#arrowend)"),v=-1}else{let j=p.append("path");j.attr("fill","none").attr("stroke-width","1").attr("stroke",E).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",m.startPoint.x).replaceAll("starty",m.startPoint.y).replaceAll("controlx",m.startPoint.x+(m.endPoint.x-m.startPoint.x)/2-(m.endPoint.x-m.startPoint.x)/4).replaceAll("controly",m.startPoint.y+(m.endPoint.y-m.startPoint.y)/2).replaceAll("stopx",m.endPoint.x).replaceAll("stopy",m.endPoint.y)),m.type!=="rel_b"&&j.attr("marker-end","url("+P+"#arrowhead)"),(m.type==="birel"||m.type==="rel_b")&&j.attr("marker-start","url("+P+"#arrowend)")}let F=f.messageFont();E5(f)(m.label.text,p,Math.min(m.startPoint.x,m.endPoint.x)+Math.abs(m.endPoint.x-m.startPoint.x)/2+C,Math.min(m.startPoint.y,m.endPoint.y)+Math.abs(m.endPoint.y-m.startPoint.y)/2+A,m.label.width,m.label.height,{fill:b},F),m.techn&&m.techn.text!==""&&(F=f.messageFont(),E5(f)("["+m.techn.text+"]",p,Math.min(m.startPoint.x,m.endPoint.x)+Math.abs(m.endPoint.x-m.startPoint.x)/2+C,Math.min(m.startPoint.y,m.endPoint.y)+Math.abs(m.endPoint.y-m.startPoint.y)/2+f.messageFontSize+5+A,Math.max(m.label.width,m.techn.width),m.techn.height,{fill:b,"font-style":"italic"},F))}},uDe=function(i,a,f){const p=i.append("g");let v=a.bgColor?a.bgColor:"none",m=a.borderColor?a.borderColor:"#444444",b=a.fontColor?a.fontColor:"black",E={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};a.nodeType&&(E={"stroke-width":1});let C={x:a.x,y:a.y,fill:v,stroke:m,width:a.width,height:a.height,rx:2.5,ry:2.5,attrs:E};Idt(p,C);let A=f.boundaryFont();A.fontWeight="bold",A.fontSize=A.fontSize+2,A.fontColor=b,E5(f)(a.label.text,p,a.x,a.y+a.label.Y,a.width,a.height,{fill:"#444444"},A),a.type&&a.type.text!==""&&(A=f.boundaryFont(),A.fontColor=b,E5(f)(a.type.text,p,a.x,a.y+a.type.Y,a.width,a.height,{fill:"#444444"},A)),a.descr&&a.descr.text!==""&&(A=f.boundaryFont(),A.fontSize=A.fontSize-2,A.fontColor=b,E5(f)(a.descr.text,p,a.x,a.y+a.descr.Y,a.width,a.height,{fill:"#444444"},A))},lDe=function(i,a,f){var F;let p=a.bgColor?a.bgColor:f[a.typeC4Shape.text+"_bg_color"],v=a.borderColor?a.borderColor:f[a.typeC4Shape.text+"_border_color"],m=a.fontColor?a.fontColor:"#FFFFFF",b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(a.typeC4Shape.text){case"person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}const E=i.append("g");E.attr("class","person-man");const C=u9();switch(a.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":C.x=a.x,C.y=a.y,C.fill=p,C.width=a.width,C.height=a.height,C.stroke=v,C.rx=2.5,C.ry=2.5,C.attrs={"stroke-width":.5},Idt(E,C);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":E.append("path").attr("fill",p).attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2).replaceAll("height",a.height)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":E.append("path").attr("fill",p).attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("width",a.width).replaceAll("half",a.height/2)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",v).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",a.x+a.width).replaceAll("starty",a.y).replaceAll("half",a.height/2));break}let A=mDe(f,a.typeC4Shape.text);switch(E.append("text").attr("fill",m).attr("font-family",A.fontFamily).attr("font-size",A.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",a.typeC4Shape.width).attr("x",a.x+a.width/2-a.typeC4Shape.width/2).attr("y",a.y+a.typeC4Shape.Y).text("<<"+a.typeC4Shape.text+">>"),a.typeC4Shape.text){case"person":case"external_person":bNt(E,48,48,a.x+a.width/2-24,a.y+a.image.Y,b);break}let P=f[a.typeC4Shape.text+"Font"]();return P.fontWeight="bold",P.fontSize=P.fontSize+2,P.fontColor=m,E5(f)(a.label.text,E,a.x,a.y+a.label.Y,a.width,a.height,{fill:m},P),P=f[a.typeC4Shape.text+"Font"](),P.fontColor=m,a.techn&&((F=a.techn)==null?void 0:F.text)!==""?E5(f)(a.techn.text,E,a.x,a.y+a.techn.Y,a.width,a.height,{fill:m,"font-style":"italic"},P):a.type&&a.type.text!==""&&E5(f)(a.type.text,E,a.x,a.y+a.type.Y,a.width,a.height,{fill:m,"font-style":"italic"},P),a.descr&&a.descr.text!==""&&(P=f.personFont(),P.fontColor=m,E5(f)(a.descr.text,E,a.x,a.y+a.descr.Y,a.width,a.height,{fill:m},P)),a.height},hDe=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},fDe=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},dDe=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},gDe=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},pDe=function(i){i.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},bDe=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},vDe=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},wDe=function(i){const f=i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);f.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),f.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},mDe=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),E5=function(){function i(v,m,b,E,C,A,P){const F=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("text-anchor","middle").text(v);p(F,P)}function a(v,m,b,E,C,A,P,F){const{fontSize:j,fontFamily:R,fontWeight:H}=F,Y=v.split(ui.lineBreakRegex);for(let rt=0;rt=this.data.widthLimit||p>=this.data.widthLimit||this.nextData.cnt>vNt)&&(f=this.nextData.startx+a.margin+Es.nextLinePaddingX,v=this.nextData.stopy+a.margin*2,this.nextData.stopx=p=f+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=m=v+a.height,this.nextData.cnt=1),a.x=f,a.y=v,this.updateVal(this.data,"startx",f,Math.min),this.updateVal(this.data,"starty",v,Math.min),this.updateVal(this.data,"stopx",p,Math.max),this.updateVal(this.data,"stopy",m,Math.max),this.updateVal(this.nextData,"startx",f,Math.min),this.updateVal(this.nextData,"starty",v,Math.min),this.updateVal(this.nextData,"stopx",p,Math.max),this.updateVal(this.nextData,"stopy",m,Math.max)}init(a){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},Ndt(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}}const Ndt=function(i){Z1(Es,i),i.fontFamily&&(Es.personFontFamily=Es.systemFontFamily=Es.messageFontFamily=i.fontFamily),i.fontSize&&(Es.personFontSize=Es.systemFontSize=Es.messageFontSize=i.fontSize),i.fontWeight&&(Es.personFontWeight=Es.systemFontWeight=Es.messageFontWeight=i.fontWeight)},iP=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),XW=i=>({fontFamily:i.boundaryFontFamily,fontSize:i.boundaryFontSize,fontWeight:i.boundaryFontWeight}),yDe=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight});function sm(i,a,f,p,v){if(!a[i].width)if(f)a[i].text=$It(a[i].text,v,p),a[i].textLines=a[i].text.split(ui.lineBreakRegex).length,a[i].width=v,a[i].height=edt(a[i].text,p);else{let m=a[i].text.split(ui.lineBreakRegex);a[i].textLines=m.length;let b=0;a[i].height=0,a[i].width=0;for(const E of m)a[i].width=Math.max(h3(E,p),a[i].width),b=edt(E,p),a[i].height=a[i].height+b}}const mNt=function(i,a,f){a.x=f.data.startx,a.y=f.data.starty,a.width=f.data.stopx-f.data.startx,a.height=f.data.stopy-f.data.starty,a.label.y=Es.c4ShapeMargin-35;let p=a.wrap&&Es.wrap,v=XW(Es);v.fontSize=v.fontSize+2,v.fontWeight="bold";let m=h3(a.label.text,v);sm("label",a,p,v,m),g3.drawBoundary(i,a,Es)},yNt=function(i,a,f,p){let v=0;for(const m of p){v=0;const b=f[m];let E=iP(Es,b.typeC4Shape.text);switch(E.fontSize=E.fontSize-2,b.typeC4Shape.width=h3("«"+b.typeC4Shape.text+"»",E),b.typeC4Shape.height=E.fontSize+2,b.typeC4Shape.Y=Es.c4ShapePadding,v=b.typeC4Shape.Y+b.typeC4Shape.height-4,b.image={width:0,height:0,Y:0},b.typeC4Shape.text){case"person":case"external_person":b.image.width=48,b.image.height=48,b.image.Y=v,v=b.image.Y+b.image.height;break}b.sprite&&(b.image.width=48,b.image.height=48,b.image.Y=v,v=b.image.Y+b.image.height);let C=b.wrap&&Es.wrap,A=Es.width-Es.c4ShapePadding*2,P=iP(Es,b.typeC4Shape.text);if(P.fontSize=P.fontSize+2,P.fontWeight="bold",sm("label",b,C,P,A),b.label.Y=v+8,v=b.label.Y+b.label.height,b.type&&b.type.text!==""){b.type.text="["+b.type.text+"]";let R=iP(Es,b.typeC4Shape.text);sm("type",b,C,R,A),b.type.Y=v+5,v=b.type.Y+b.type.height}else if(b.techn&&b.techn.text!==""){b.techn.text="["+b.techn.text+"]";let R=iP(Es,b.techn.text);sm("techn",b,C,R,A),b.techn.Y=v+5,v=b.techn.Y+b.techn.height}let F=v,j=b.label.width;if(b.descr&&b.descr.text!==""){let R=iP(Es,b.typeC4Shape.text);sm("descr",b,C,R,A),b.descr.Y=v+20,v=b.descr.Y+b.descr.height,j=Math.max(b.label.width,b.descr.width),F=v-b.descr.textLines*5}j=j+Es.c4ShapePadding,b.width=Math.max(b.width||Es.width,j,Es.width),b.height=Math.max(b.height||Es.height,F,Es.height),b.margin=b.margin||Es.c4ShapeMargin,i.insert(b),g3.drawC4Shape(a,b,Es)}i.bumpLastMargin(Es.c4ShapeMargin)};let tv=class{constructor(a,f){this.x=a,this.y=f}},xNt=function(i,a){let f=i.x,p=i.y,v=a.x,m=a.y,b=f+i.width/2,E=p+i.height/2,C=Math.abs(f-v),A=Math.abs(p-m),P=A/C,F=i.height/i.width,j=null;return p==m&&fv?j=new tv(f,E):f==v&&pm&&(j=new tv(b,p)),f>v&&p=P?j=new tv(f,E+P*i.width/2):j=new tv(b-C/A*i.height/2,p+i.height):f=P?j=new tv(f+i.width,E+P*i.width/2):j=new tv(b+C/A*i.height/2,p+i.height):fm?F>=P?j=new tv(f+i.width,E-P*i.width/2):j=new tv(b+i.height/2*C/A,p):f>v&&p>m&&(F>=P?j=new tv(f,E-i.width/2*P):j=new tv(b-i.height/2*C/A,p)),j},xDe=function(i,a){let f={x:0,y:0};f.x=a.x+a.width/2,f.y=a.y+a.height/2;let p=xNt(i,f);f.x=i.x+i.width/2,f.y=i.y+i.height/2;let v=xNt(a,f);return{startPoint:p,endPoint:v}};const kDe=function(i,a,f,p){let v=0;for(let m of a){v=v+1;let b=m.wrap&&Es.wrap,E=yDe(Es);p.db.getC4Type()==="C4Dynamic"&&(m.label.text=v+": "+m.label.text);let A=h3(m.label.text,E);sm("label",m,b,E,A),m.techn&&m.techn.text!==""&&(A=h3(m.techn.text,E),sm("techn",m,b,E,A)),m.descr&&m.descr.text!==""&&(A=h3(m.descr.text,E),sm("descr",m,b,E,A));let P=f(m.from),F=f(m.to),j=xDe(P,F);m.startPoint=j.startPoint,m.endPoint=j.endPoint}g3.drawRels(i,a,Es)};function kNt(i,a,f,p,v){let m=new wNt(v);m.data.widthLimit=f.data.widthLimit/Math.min(Odt,p.length);for(let[b,E]of p.entries()){let C=0;E.image={width:0,height:0,Y:0},E.sprite&&(E.image.width=48,E.image.height=48,E.image.Y=C,C=E.image.Y+E.image.height);let A=E.wrap&&Es.wrap,P=XW(Es);if(P.fontSize=P.fontSize+2,P.fontWeight="bold",sm("label",E,A,P,m.data.widthLimit),E.label.Y=C+8,C=E.label.Y+E.label.height,E.type&&E.type.text!==""){E.type.text="["+E.type.text+"]";let H=XW(Es);sm("type",E,A,H,m.data.widthLimit),E.type.Y=C+5,C=E.type.Y+E.type.height}if(E.descr&&E.descr.text!==""){let H=XW(Es);H.fontSize=H.fontSize-2,sm("descr",E,A,H,m.data.widthLimit),E.descr.Y=C+20,C=E.descr.Y+E.descr.height}if(b==0||b%Odt===0){let H=f.data.startx+Es.diagramMarginX,Y=f.data.stopy+Es.diagramMarginY+C;m.setData(H,H,Y,Y)}else{let H=m.data.stopx!==m.data.startx?m.data.stopx+Es.diagramMarginX:m.data.startx,Y=m.data.starty;m.setData(H,H,Y,Y)}m.name=E.alias;let F=v.db.getC4ShapeArray(E.alias),j=v.db.getC4ShapeKeys(E.alias);j.length>0&&yNt(m,i,F,j),a=E.alias;let R=v.db.getBoundarys(a);R.length>0&&kNt(i,a,m,R,v),E.alias!=="global"&&mNt(i,E,m),f.data.stopy=Math.max(m.data.stopy+Es.c4ShapeMargin,f.data.stopy),f.data.stopx=Math.max(m.data.stopx+Es.c4ShapeMargin,f.data.stopx),KW=Math.max(KW,f.data.stopx),YW=Math.max(YW,f.data.stopy)}}const ENt={drawPersonOrSystemArray:yNt,drawBoundary:mNt,setConf:Ndt,draw:function(i,a,f,p){Es=De().c4;const v=De().securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const b=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body");let E=p.db;p.db.setWrap(Es.wrap),vNt=E.getC4ShapeInRow(),Odt=E.getC4BoundaryInRow(),Wt.debug(`C:${JSON.stringify(Es,null,2)}`);const C=v==="sandbox"?b.select(`[id="${a}"]`):xr(`[id="${a}"]`);g3.insertComputerIcon(C),g3.insertDatabaseIcon(C),g3.insertClockIcon(C);let A=new wNt(p);A.setData(Es.diagramMarginX,Es.diagramMarginX,Es.diagramMarginY,Es.diagramMarginY),A.data.widthLimit=screen.availWidth,KW=Es.diagramMarginX,YW=Es.diagramMarginY;const P=p.db.getTitle();let F=p.db.getBoundarys("");kNt(C,"",A,F,p),g3.insertArrowHead(C),g3.insertArrowEnd(C),g3.insertArrowCrossHead(C),g3.insertArrowFilledHead(C),kDe(C,p.db.getRels(),p.db.getC4Shape,p),A.data.stopx=KW,A.data.stopy=YW;const j=A.data;let H=j.stopy-j.starty+2*Es.diagramMarginY;const rt=j.stopx-j.startx+2*Es.diagramMarginX;P&&C.append("text").text(P).attr("x",(j.stopx-j.startx)/2-4*Es.diagramMarginX).attr("y",j.starty+Es.diagramMarginY),og(C,H,rt,Es.useMaxWidth);const J=P?60:0;C.attr("viewBox",j.startx-Es.diagramMarginX+" -"+(Es.diagramMarginY+J)+" "+rt+" "+(H+J)),Wt.debug("models:",j)}},EDe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:NMe,db:gNt,renderer:ENt,styles:i=>`.person { + stroke: ${i.personBorder}; + fill: ${i.personBkg}; + } +`,init:i=>{ENt.setConf(i.c4)}}},Symbol.toStringTag,{value:"Module"}));var Pdt=function(){var i=function(zb,os,As,ma){for(As=As||{},ma=zb.length;ma--;As[zb[ma]]=os);return As},a=[1,9],f=[1,7],p=[1,6],v=[1,8],m=[1,20,21,22,23,38,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],b=[2,10],E=[1,20],C=[1,21],A=[1,22],P=[1,23],F=[1,30],j=[1,32],R=[1,33],H=[1,34],Y=[1,56],rt=[1,55],J=[1,36],it=[1,37],ft=[1,38],Tt=[1,39],kt=[1,40],mt=[1,51],ct=[1,53],yt=[1,49],st=[1,54],xt=[1,50],ht=[1,57],dt=[1,52],Ct=[1,58],tt=[1,59],Pt=[1,41],pt=[1,42],Ft=[1,43],X=[1,44],Rt=[1,62],Bt=[1,67],vt=[1,20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Ot=[1,71],Vt=[1,70],qe=[1,72],_n=[20,21,23,84,86],Te=[1,98],Wn=[1,103],Ae=[1,102],ne=[1,99],ke=[1,95],Ve=[1,101],Ee=[1,97],He=[1,104],Ce=[1,100],$e=[1,105],ye=[1,96],fn=[20,21,22,23,84,86],Yt=[20,21,22,23,55,84,86],Mi=[20,21,22,23,40,53,55,57,59,61,63,65,67,69,72,74,76,77,79,84,86,97,110,113,114,117,119,122,123,124],qt=[20,21,23],zi=[20,21,23,53,69,84,86,97,110,113,114,117,119,122,123,124],Se=[1,12,20,21,22,23,24,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],ki=[53,69,97,110,113,114,117,119,122,123,124],Ri=[1,134],pi=[1,133],bi=[1,141],dn=[1,155],Nn=[1,156],Wr=[1,157],Li=[1,158],is=[1,143],Ts=[1,145],Aa=[1,149],Xi=[1,150],Ga=[1,151],_r=[1,152],qr=[1,153],Oi=[1,154],gr=[1,159],Js=[1,160],Vn=[1,139],Xc=[1,140],Er=[1,147],Mc=[1,142],bp=[1,146],fm=[1,144],T0=[20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Fd=[1,162],No=[20,21,22,23,26,53,69,97,113,114,117,119,122,123,124],ta=[1,182],bu=[1,178],Pu=[1,179],lo=[1,183],mo=[1,180],Os=[1,181],Tl=[12,21,22,24],Fu=[86,124,127],zo=[20,21,22,23,24,26,38,40,43,53,69,84,92,93,94,95,96,97,98,113,117,119,122,123,124],nd=[22,114],sf=[42,58,60,62,64,66,71,73,75,76,78,80,124,125,126],ll=[1,250],Vi=[1,248],Ke=[1,252],kr=[1,246],ni=[1,247],eo=[1,249],Dc=[1,251],Ju=[1,253],Qo=[1,270],jf=[20,21,23,114],rh=[20,21,22,23,69,92,113,114,117,118,119,120],dm={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,textNoTags:39,SQS:40,text:41,SQE:42,end:43,direction:44,acc_title:45,acc_title_value:46,acc_descr:47,acc_descr_value:48,acc_descr_multiline_value:49,link:50,node:51,styledVertex:52,AMP:53,vertex:54,STYLE_SEPARATOR:55,idString:56,DOUBLECIRCLESTART:57,DOUBLECIRCLEEND:58,PS:59,PE:60,"(-":61,"-)":62,STADIUMSTART:63,STADIUMEND:64,SUBROUTINESTART:65,SUBROUTINEEND:66,VERTEX_WITH_PROPS_START:67,"NODE_STRING[field]":68,COLON:69,"NODE_STRING[value]":70,PIPE:71,CYLINDERSTART:72,CYLINDEREND:73,DIAMOND_START:74,DIAMOND_STOP:75,TAGEND:76,TRAPSTART:77,TRAPEND:78,INVTRAPSTART:79,INVTRAPEND:80,linkStatement:81,arrowText:82,TESTSTR:83,START_LINK:84,edgeText:85,LINK:86,edgeTextToken:87,STR:88,MD_STR:89,textToken:90,keywords:91,STYLE:92,LINKSTYLE:93,CLASSDEF:94,CLASS:95,CLICK:96,DOWN:97,UP:98,textNoTagsToken:99,stylesOpt:100,"idString[vertex]":101,"idString[class]":102,CALLBACKNAME:103,CALLBACKARGS:104,HREF:105,LINK_TARGET:106,"STR[link]":107,"STR[tooltip]":108,alphaNum:109,DEFAULT:110,numList:111,INTERPOLATE:112,NUM:113,COMMA:114,style:115,styleComponent:116,NODE_STRING:117,UNIT:118,BRKT:119,PCT:120,idStringToken:121,MINUS:122,MULT:123,UNICODE_TEXT:124,TEXT:125,TAGSTART:126,EDGE_TEXT:127,alphaNumToken:128,direction_tb:129,direction_bt:130,direction_rl:131,direction_lr:132,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",42:"SQE",43:"end",45:"acc_title",46:"acc_title_value",47:"acc_descr",48:"acc_descr_value",49:"acc_descr_multiline_value",53:"AMP",55:"STYLE_SEPARATOR",57:"DOUBLECIRCLESTART",58:"DOUBLECIRCLEEND",59:"PS",60:"PE",61:"(-",62:"-)",63:"STADIUMSTART",64:"STADIUMEND",65:"SUBROUTINESTART",66:"SUBROUTINEEND",67:"VERTEX_WITH_PROPS_START",68:"NODE_STRING[field]",69:"COLON",70:"NODE_STRING[value]",71:"PIPE",72:"CYLINDERSTART",73:"CYLINDEREND",74:"DIAMOND_START",75:"DIAMOND_STOP",76:"TAGEND",77:"TRAPSTART",78:"TRAPEND",79:"INVTRAPSTART",80:"INVTRAPEND",83:"TESTSTR",84:"START_LINK",86:"LINK",88:"STR",89:"MD_STR",92:"STYLE",93:"LINKSTYLE",94:"CLASSDEF",95:"CLASS",96:"CLICK",97:"DOWN",98:"UP",101:"idString[vertex]",102:"idString[class]",103:"CALLBACKNAME",104:"CALLBACKARGS",105:"HREF",106:"LINK_TARGET",107:"STR[link]",108:"STR[tooltip]",110:"DEFAULT",112:"INTERPOLATE",113:"NUM",114:"COMMA",117:"NODE_STRING",118:"UNIT",119:"BRKT",120:"PCT",122:"MINUS",123:"MULT",124:"UNICODE_TEXT",125:"TEXT",126:"TAGSTART",127:"EDGE_TEXT",129:"direction_tb",130:"direction_bt",131:"direction_rl",132:"direction_lr"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[51,1],[51,5],[52,1],[52,3],[54,4],[54,4],[54,6],[54,4],[54,4],[54,4],[54,8],[54,4],[54,4],[54,4],[54,6],[54,4],[54,4],[54,4],[54,4],[54,4],[54,1],[50,2],[50,3],[50,3],[50,1],[50,3],[85,1],[85,2],[85,1],[85,1],[81,1],[82,3],[41,1],[41,2],[41,1],[41,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[39,1],[39,2],[39,1],[39,1],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,3],[37,5],[37,5],[37,7],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[111,1],[111,3],[100,1],[100,3],[115,1],[115,2],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[121,1],[90,1],[90,1],[90,1],[90,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[99,1],[87,1],[87,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[56,1],[56,2],[109,1],[109,2],[44,1],[44,1],[44,1],[44,1]],performAction:function(os,As,ma,vi,Qc,me,bg){var Oe=me.length-1;switch(Qc){case 5:vi.parseDirective("%%{","open_directive");break;case 6:vi.parseDirective(me[Oe],"type_directive");break;case 7:me[Oe]=me[Oe].trim().replace(/'/g,'"'),vi.parseDirective(me[Oe],"arg_directive");break;case 8:vi.parseDirective("}%%","close_directive","flowchart");break;case 10:this.$=[];break;case 11:(!Array.isArray(me[Oe])||me[Oe].length>0)&&me[Oe-1].push(me[Oe]),this.$=me[Oe-1];break;case 12:case 184:this.$=me[Oe];break;case 19:vi.setDirection("TB"),this.$="TB";break;case 20:vi.setDirection(me[Oe-1]),this.$=me[Oe-1];break;case 35:this.$=me[Oe-1].nodes;break;case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 41:this.$=vi.addSubGraph(me[Oe-6],me[Oe-1],me[Oe-4]);break;case 42:this.$=vi.addSubGraph(me[Oe-3],me[Oe-1],me[Oe-3]);break;case 43:this.$=vi.addSubGraph(void 0,me[Oe-1],void 0);break;case 45:this.$=me[Oe].trim(),vi.setAccTitle(this.$);break;case 46:case 47:this.$=me[Oe].trim(),vi.setAccDescription(this.$);break;case 51:vi.addLink(me[Oe-2].stmt,me[Oe],me[Oe-1]),this.$={stmt:me[Oe],nodes:me[Oe].concat(me[Oe-2].nodes)};break;case 52:vi.addLink(me[Oe-3].stmt,me[Oe-1],me[Oe-2]),this.$={stmt:me[Oe-1],nodes:me[Oe-1].concat(me[Oe-3].nodes)};break;case 53:this.$={stmt:me[Oe-1],nodes:me[Oe-1]};break;case 54:this.$={stmt:me[Oe],nodes:me[Oe]};break;case 55:this.$=[me[Oe]];break;case 56:this.$=me[Oe-4].concat(me[Oe]);break;case 57:this.$=me[Oe];break;case 58:this.$=me[Oe-2],vi.setClass(me[Oe-2],me[Oe]);break;case 59:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"square");break;case 60:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"doublecircle");break;case 61:this.$=me[Oe-5],vi.addVertex(me[Oe-5],me[Oe-2],"circle");break;case 62:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"ellipse");break;case 63:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"stadium");break;case 64:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"subroutine");break;case 65:this.$=me[Oe-7],vi.addVertex(me[Oe-7],me[Oe-1],"rect",void 0,void 0,void 0,Object.fromEntries([[me[Oe-5],me[Oe-3]]]));break;case 66:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"cylinder");break;case 67:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"round");break;case 68:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"diamond");break;case 69:this.$=me[Oe-5],vi.addVertex(me[Oe-5],me[Oe-2],"hexagon");break;case 70:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"odd");break;case 71:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"trapezoid");break;case 72:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"inv_trapezoid");break;case 73:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"lean_right");break;case 74:this.$=me[Oe-3],vi.addVertex(me[Oe-3],me[Oe-1],"lean_left");break;case 75:this.$=me[Oe],vi.addVertex(me[Oe]);break;case 76:me[Oe-1].text=me[Oe],this.$=me[Oe-1];break;case 77:case 78:me[Oe-2].text=me[Oe-1],this.$=me[Oe-2];break;case 79:this.$=me[Oe];break;case 80:var af=vi.destructLink(me[Oe],me[Oe-2]);this.$={type:af.type,stroke:af.stroke,length:af.length,text:me[Oe-1]};break;case 81:this.$={text:me[Oe],type:"text"};break;case 82:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 83:this.$={text:me[Oe],type:"string"};break;case 84:this.$={text:me[Oe],type:"markdown"};break;case 85:var af=vi.destructLink(me[Oe]);this.$={type:af.type,stroke:af.stroke,length:af.length};break;case 86:this.$=me[Oe-1];break;case 87:this.$={text:me[Oe],type:"text"};break;case 88:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 89:this.$={text:me[Oe],type:"string"};break;case 90:case 105:this.$={text:me[Oe],type:"markdown"};break;case 102:this.$={text:me[Oe],type:"text"};break;case 103:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 104:this.$={text:me[Oe],type:"text"};break;case 106:this.$=me[Oe-4],vi.addClass(me[Oe-2],me[Oe]);break;case 107:this.$=me[Oe-4],vi.setClass(me[Oe-2],me[Oe]);break;case 108:case 116:this.$=me[Oe-1],vi.setClickEvent(me[Oe-1],me[Oe]);break;case 109:case 117:this.$=me[Oe-3],vi.setClickEvent(me[Oe-3],me[Oe-2]),vi.setTooltip(me[Oe-3],me[Oe]);break;case 110:this.$=me[Oe-2],vi.setClickEvent(me[Oe-2],me[Oe-1],me[Oe]);break;case 111:this.$=me[Oe-4],vi.setClickEvent(me[Oe-4],me[Oe-3],me[Oe-2]),vi.setTooltip(me[Oe-4],me[Oe]);break;case 112:this.$=me[Oe-2],vi.setLink(me[Oe-2],me[Oe]);break;case 113:this.$=me[Oe-4],vi.setLink(me[Oe-4],me[Oe-2]),vi.setTooltip(me[Oe-4],me[Oe]);break;case 114:this.$=me[Oe-4],vi.setLink(me[Oe-4],me[Oe-2],me[Oe]);break;case 115:this.$=me[Oe-6],vi.setLink(me[Oe-6],me[Oe-4],me[Oe]),vi.setTooltip(me[Oe-6],me[Oe-2]);break;case 118:this.$=me[Oe-1],vi.setLink(me[Oe-1],me[Oe]);break;case 119:this.$=me[Oe-3],vi.setLink(me[Oe-3],me[Oe-2]),vi.setTooltip(me[Oe-3],me[Oe]);break;case 120:this.$=me[Oe-3],vi.setLink(me[Oe-3],me[Oe-2],me[Oe]);break;case 121:this.$=me[Oe-5],vi.setLink(me[Oe-5],me[Oe-4],me[Oe]),vi.setTooltip(me[Oe-5],me[Oe-2]);break;case 122:this.$=me[Oe-4],vi.addVertex(me[Oe-2],void 0,void 0,me[Oe]);break;case 123:this.$=me[Oe-4],vi.updateLink([me[Oe-2]],me[Oe]);break;case 124:this.$=me[Oe-4],vi.updateLink(me[Oe-2],me[Oe]);break;case 125:this.$=me[Oe-8],vi.updateLinkInterpolate([me[Oe-6]],me[Oe-2]),vi.updateLink([me[Oe-6]],me[Oe]);break;case 126:this.$=me[Oe-8],vi.updateLinkInterpolate(me[Oe-6],me[Oe-2]),vi.updateLink(me[Oe-6],me[Oe]);break;case 127:this.$=me[Oe-6],vi.updateLinkInterpolate([me[Oe-4]],me[Oe]);break;case 128:this.$=me[Oe-6],vi.updateLinkInterpolate(me[Oe-4],me[Oe]);break;case 129:case 131:this.$=[me[Oe]];break;case 130:case 132:me[Oe-2].push(me[Oe]),this.$=me[Oe-2];break;case 134:this.$=me[Oe-1]+me[Oe];break;case 182:this.$=me[Oe];break;case 183:this.$=me[Oe-1]+""+me[Oe];break;case 185:this.$=me[Oe-1]+""+me[Oe];break;case 186:this.$={stmt:"dir",value:"TB"};break;case 187:this.$={stmt:"dir",value:"BT"};break;case 188:this.$={stmt:"dir",value:"RL"};break;case 189:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,5:3,6:5,12:a,16:4,21:f,22:p,24:v},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:a,16:4,21:f,22:p,24:v},i(m,b,{17:11}),{7:12,13:[1,13]},{16:14,21:f,22:p,24:v},{16:15,21:f,22:p,24:v},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},{8:60,10:[1,61],15:Rt},i([10,15],[2,6]),i(m,[2,17]),i(m,[2,18]),i(m,[2,19]),{20:[1,64],21:[1,65],22:Bt,27:63,30:66},i(vt,[2,11]),i(vt,[2,12]),i(vt,[2,13]),i(vt,[2,14]),i(vt,[2,15]),i(vt,[2,16]),{9:68,20:Ot,21:Vt,23:qe,50:69,81:73,84:[1,74],86:[1,75]},{9:76,20:Ot,21:Vt,23:qe},{9:77,20:Ot,21:Vt,23:qe},{9:78,20:Ot,21:Vt,23:qe},{9:79,20:Ot,21:Vt,23:qe},{9:80,20:Ot,21:Vt,23:qe},{9:82,20:Ot,21:Vt,22:[1,81],23:qe},i(vt,[2,44]),{46:[1,83]},{48:[1,84]},i(vt,[2,47]),i(_n,[2,54],{30:85,22:Bt}),{22:[1,86]},{22:[1,87]},{22:[1,88]},{22:[1,89]},{26:Te,53:Wn,69:Ae,88:[1,93],97:ne,103:[1,90],105:[1,91],109:92,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye,128:94},i(vt,[2,186]),i(vt,[2,187]),i(vt,[2,188]),i(vt,[2,189]),i(fn,[2,55]),i(fn,[2,57],{55:[1,106]}),i(Yt,[2,75],{121:119,40:[1,107],53:Y,57:[1,108],59:[1,109],61:[1,110],63:[1,111],65:[1,112],67:[1,113],69:rt,72:[1,114],74:[1,115],76:[1,116],77:[1,117],79:[1,118],97:mt,110:ct,113:yt,114:st,117:xt,119:ht,122:dt,123:Ct,124:tt}),i(Mi,[2,182]),i(Mi,[2,143]),i(Mi,[2,144]),i(Mi,[2,145]),i(Mi,[2,146]),i(Mi,[2,147]),i(Mi,[2,148]),i(Mi,[2,149]),i(Mi,[2,150]),i(Mi,[2,151]),i(Mi,[2,152]),i(Mi,[2,153]),{9:120,20:Ot,21:Vt,23:qe},{11:121,14:[1,122]},i(qt,[2,8]),i(m,[2,20]),i(m,[2,26]),i(m,[2,27]),{21:[1,123]},i(zi,[2,34],{30:124,22:Bt}),i(vt,[2,35]),{51:125,52:45,53:Y,54:46,56:47,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},i(Se,[2,48]),i(Se,[2,49]),i(Se,[2,50]),i(ki,[2,79],{82:126,71:[1,128],83:[1,127]}),{85:129,87:130,88:[1,131],89:[1,132],124:Ri,127:pi},i([53,69,71,83,97,110,113,114,117,119,122,123,124],[2,85]),i(vt,[2,36]),i(vt,[2,37]),i(vt,[2,38]),i(vt,[2,39]),i(vt,[2,40]),{22:bi,24:dn,26:Nn,38:Wr,39:135,43:Li,53:is,69:Ts,84:Aa,88:[1,137],89:[1,138],91:148,92:Xi,93:Ga,94:_r,95:qr,96:Oi,97:gr,98:Js,99:136,113:Vn,117:Xc,119:Er,122:Mc,123:bp,124:fm},i(T0,b,{17:161}),i(vt,[2,45]),i(vt,[2,46]),i(_n,[2,53],{53:Fd}),{53:Y,56:163,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{110:[1,164],111:165,113:[1,166]},{53:Y,56:167,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{53:Y,56:168,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},i(qt,[2,108],{22:[1,169],104:[1,170]}),{88:[1,171]},i(qt,[2,116],{128:173,22:[1,172],26:Te,53:Wn,69:Ae,97:ne,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye}),i(qt,[2,118],{22:[1,174]}),i(No,[2,184]),i(No,[2,171]),i(No,[2,172]),i(No,[2,173]),i(No,[2,174]),i(No,[2,175]),i(No,[2,176]),i(No,[2,177]),i(No,[2,178]),i(No,[2,179]),i(No,[2,180]),i(No,[2,181]),{53:Y,56:175,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{41:176,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:184,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:186,59:[1,185],76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:187,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:188,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:189,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{117:[1,190]},{41:191,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:192,74:[1,193],76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:194,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:195,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{41:196,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},i(Mi,[2,183]),i(Tl,[2,3]),{8:197,15:Rt},{15:[2,7]},i(m,[2,28]),i(zi,[2,33]),i(_n,[2,51],{30:198,22:Bt}),i(ki,[2,76],{22:[1,199]}),{22:[1,200]},{41:201,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{86:[1,202],87:203,124:Ri,127:pi},i(Fu,[2,81]),i(Fu,[2,83]),i(Fu,[2,84]),i(Fu,[2,169]),i(Fu,[2,170]),{9:205,20:Ot,21:Vt,22:bi,23:qe,24:dn,26:Nn,38:Wr,40:[1,204],43:Li,53:is,69:Ts,84:Aa,91:148,92:Xi,93:Ga,94:_r,95:qr,96:Oi,97:gr,98:Js,99:206,113:Vn,117:Xc,119:Er,122:Mc,123:bp,124:fm},i(zo,[2,102]),i(zo,[2,104]),i(zo,[2,105]),i(zo,[2,158]),i(zo,[2,159]),i(zo,[2,160]),i(zo,[2,161]),i(zo,[2,162]),i(zo,[2,163]),i(zo,[2,164]),i(zo,[2,165]),i(zo,[2,166]),i(zo,[2,167]),i(zo,[2,168]),i(zo,[2,91]),i(zo,[2,92]),i(zo,[2,93]),i(zo,[2,94]),i(zo,[2,95]),i(zo,[2,96]),i(zo,[2,97]),i(zo,[2,98]),i(zo,[2,99]),i(zo,[2,100]),i(zo,[2,101]),{18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,43:[1,207],44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},{22:Bt,30:208},{22:[1,209],53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:119,122:dt,123:Ct,124:tt},{22:[1,210]},{22:[1,211],114:[1,212]},i(nd,[2,129]),{22:[1,213],53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:119,122:dt,123:Ct,124:tt},{22:[1,214],53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:119,122:dt,123:Ct,124:tt},{88:[1,215]},i(qt,[2,110],{22:[1,216]}),i(qt,[2,112],{22:[1,217]}),{88:[1,218]},i(No,[2,185]),{88:[1,219],106:[1,220]},i(fn,[2,58],{121:119,53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,122:dt,123:Ct,124:tt}),{42:[1,221],76:ta,90:222,124:lo,125:mo,126:Os},i(sf,[2,87]),i(sf,[2,89]),i(sf,[2,90]),i(sf,[2,154]),i(sf,[2,155]),i(sf,[2,156]),i(sf,[2,157]),{58:[1,223],76:ta,90:222,124:lo,125:mo,126:Os},{41:224,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{60:[1,225],76:ta,90:222,124:lo,125:mo,126:Os},{62:[1,226],76:ta,90:222,124:lo,125:mo,126:Os},{64:[1,227],76:ta,90:222,124:lo,125:mo,126:Os},{66:[1,228],76:ta,90:222,124:lo,125:mo,126:Os},{69:[1,229]},{73:[1,230],76:ta,90:222,124:lo,125:mo,126:Os},{75:[1,231],76:ta,90:222,124:lo,125:mo,126:Os},{41:232,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},{42:[1,233],76:ta,90:222,124:lo,125:mo,126:Os},{76:ta,78:[1,234],80:[1,235],90:222,124:lo,125:mo,126:Os},{76:ta,78:[1,237],80:[1,236],90:222,124:lo,125:mo,126:Os},{9:238,20:Ot,21:Vt,23:qe},i(_n,[2,52],{53:Fd}),i(ki,[2,78]),i(ki,[2,77]),{71:[1,239],76:ta,90:222,124:lo,125:mo,126:Os},i(ki,[2,80]),i(Fu,[2,82]),{41:240,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},i(T0,b,{17:241}),i(zo,[2,103]),i(vt,[2,43]),{52:242,53:Y,54:46,56:47,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},{22:ll,69:Vi,92:Ke,100:243,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{22:ll,69:Vi,92:Ke,100:254,112:[1,255],113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{22:ll,69:Vi,92:Ke,100:256,112:[1,257],113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{113:[1,258]},{22:ll,69:Vi,92:Ke,100:259,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{53:Y,56:260,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt},i(qt,[2,109]),{88:[1,261]},{88:[1,262],106:[1,263]},i(qt,[2,117]),i(qt,[2,119],{22:[1,264]}),i(qt,[2,120]),i(Yt,[2,59]),i(sf,[2,88]),i(Yt,[2,60]),{60:[1,265],76:ta,90:222,124:lo,125:mo,126:Os},i(Yt,[2,67]),i(Yt,[2,62]),i(Yt,[2,63]),i(Yt,[2,64]),{117:[1,266]},i(Yt,[2,66]),i(Yt,[2,68]),{75:[1,267],76:ta,90:222,124:lo,125:mo,126:Os},i(Yt,[2,70]),i(Yt,[2,71]),i(Yt,[2,73]),i(Yt,[2,72]),i(Yt,[2,74]),i(Tl,[2,4]),i([22,53,69,97,110,113,114,117,119,122,123,124],[2,86]),{42:[1,268],76:ta,90:222,124:lo,125:mo,126:Os},{18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,43:[1,269],44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},i(fn,[2,56]),i(qt,[2,122],{114:Qo}),i(jf,[2,131],{116:271,22:ll,69:Vi,92:Ke,113:kr,117:ni,118:eo,119:Dc,120:Ju}),i(rh,[2,133]),i(rh,[2,135]),i(rh,[2,136]),i(rh,[2,137]),i(rh,[2,138]),i(rh,[2,139]),i(rh,[2,140]),i(rh,[2,141]),i(rh,[2,142]),i(qt,[2,123],{114:Qo}),{22:[1,272]},i(qt,[2,124],{114:Qo}),{22:[1,273]},i(nd,[2,130]),i(qt,[2,106],{114:Qo}),i(qt,[2,107],{121:119,53:Y,69:rt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,122:dt,123:Ct,124:tt}),i(qt,[2,111]),i(qt,[2,113],{22:[1,274]}),i(qt,[2,114]),{106:[1,275]},{60:[1,276]},{71:[1,277]},{75:[1,278]},{9:279,20:Ot,21:Vt,23:qe},i(vt,[2,42]),{22:ll,69:Vi,92:Ke,113:kr,115:280,116:245,117:ni,118:eo,119:Dc,120:Ju},i(rh,[2,134]),{26:Te,53:Wn,69:Ae,97:ne,109:281,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye,128:94},{26:Te,53:Wn,69:Ae,97:ne,109:282,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye,128:94},{106:[1,283]},i(qt,[2,121]),i(Yt,[2,61]),{41:284,76:ta,88:bu,89:Pu,90:177,124:lo,125:mo,126:Os},i(Yt,[2,69]),i(T0,b,{17:285}),i(jf,[2,132],{116:271,22:ll,69:Vi,92:Ke,113:kr,117:ni,118:eo,119:Dc,120:Ju}),i(qt,[2,127],{128:173,22:[1,286],26:Te,53:Wn,69:Ae,97:ne,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye}),i(qt,[2,128],{128:173,22:[1,287],26:Te,53:Wn,69:Ae,97:ne,113:ke,114:Ve,117:Ee,119:He,122:Ce,123:$e,124:ye}),i(qt,[2,115]),{42:[1,288],76:ta,90:222,124:lo,125:mo,126:Os},{18:18,19:19,20:E,21:C,22:A,23:P,32:24,33:25,34:26,35:27,36:28,37:29,38:F,43:[1,289],44:31,45:j,47:R,49:H,51:35,52:45,53:Y,54:46,56:47,69:rt,92:J,93:it,94:ft,95:Tt,96:kt,97:mt,110:ct,113:yt,114:st,117:xt,119:ht,121:48,122:dt,123:Ct,124:tt,129:Pt,130:pt,131:Ft,132:X},{22:ll,69:Vi,92:Ke,100:290,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},{22:ll,69:Vi,92:Ke,100:291,113:kr,115:244,116:245,117:ni,118:eo,119:Dc,120:Ju},i(Yt,[2,65]),i(vt,[2,41]),i(qt,[2,125],{114:Qo}),i(qt,[2,126],{114:Qo})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],122:[2,7]},parseError:function(os,As){if(As.recoverable)this.trace(os);else{var ma=new Error(os);throw ma.hash=As,ma}},parse:function(os){var As=this,ma=[0],vi=[],Qc=[null],me=[],bg=this.table,Oe="",af=0,fk=0,k3=2,gm=1,A9=me.slice.call(arguments,1),au=Object.create(this.lexer),vg={yy:{}};for(var dk in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dk)&&(vg.yy[dk]=this.yy[dk]);au.setInput(os,vg.yy),vg.yy.lexer=au,vg.yy.parser=this,typeof au.yylloc>"u"&&(au.yylloc={});var vp=au.yylloc;me.push(vp);var L9=au.options&&au.options.ranges;typeof vg.yy.parseError=="function"?this.parseError=vg.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function M9(){var no;return no=vi.pop()||au.lex()||gm,typeof no!="number"&&(no instanceof Array&&(vi=no,no=vi.pop()),no=As.symbols_[no]||no),no}for(var $f,ov,Bd,E3,cv={},uv,wg,R5,ou;;){if(ov=ma[ma.length-1],this.defaultActions[ov]?Bd=this.defaultActions[ov]:(($f===null||typeof $f>"u")&&($f=M9()),Bd=bg[ov]&&bg[ov][$f]),typeof Bd>"u"||!Bd.length||!Bd[0]){var j5="";ou=[];for(uv in bg[ov])this.terminals_[uv]&&uv>k3&&ou.push("'"+this.terminals_[uv]+"'");au.showPosition?j5="Parse error on line "+(af+1)+`: +`+au.showPosition()+` +Expecting `+ou.join(", ")+", got '"+(this.terminals_[$f]||$f)+"'":j5="Parse error on line "+(af+1)+": Unexpected "+($f==gm?"end of input":"'"+(this.terminals_[$f]||$f)+"'"),this.parseError(j5,{text:au.match,token:this.terminals_[$f]||$f,line:au.yylineno,loc:vp,expected:ou})}if(Bd[0]instanceof Array&&Bd.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ov+", token: "+$f);switch(Bd[0]){case 1:ma.push($f),Qc.push(au.yytext),me.push(au.yylloc),ma.push(Bd[1]),$f=null,fk=au.yyleng,Oe=au.yytext,af=au.yylineno,vp=au.yylloc;break;case 2:if(wg=this.productions_[Bd[1]][1],cv.$=Qc[Qc.length-wg],cv._$={first_line:me[me.length-(wg||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(wg||1)].first_column,last_column:me[me.length-1].last_column},L9&&(cv._$.range=[me[me.length-(wg||1)].range[0],me[me.length-1].range[1]]),E3=this.performAction.apply(cv,[Oe,fk,af,vg.yy,Bd[1],Qc,me].concat(A9)),typeof E3<"u")return E3;wg&&(ma=ma.slice(0,-1*wg*2),Qc=Qc.slice(0,-1*wg),me=me.slice(0,-1*wg)),ma.push(this.productions_[Bd[1]][0]),Qc.push(cv.$),me.push(cv._$),R5=bg[ma[ma.length-2]][ma[ma.length-1]],ma.push(R5);break;case 3:return!0}}return!0}},S9=function(){var zb={EOF:1,parseError:function(As,ma){if(this.yy.parser)this.yy.parser.parseError(As,ma);else throw new Error(As)},setInput:function(os,As){return this.yy=As||this.yy||{},this._input=os,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var os=this._input[0];this.yytext+=os,this.yyleng++,this.offset++,this.match+=os,this.matched+=os;var As=os.match(/(?:\r\n?|\n).*/g);return As?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),os},unput:function(os){var As=os.length,ma=os.split(/(?:\r\n?|\n)/g);this._input=os+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-As),this.offset-=As;var vi=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ma.length-1&&(this.yylineno-=ma.length-1);var Qc=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ma?(ma.length===vi.length?this.yylloc.first_column:0)+vi[vi.length-ma.length].length-ma[0].length:this.yylloc.first_column-As},this.options.ranges&&(this.yylloc.range=[Qc[0],Qc[0]+this.yyleng-As]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(os){this.unput(this.match.slice(os))},pastInput:function(){var os=this.matched.substr(0,this.matched.length-this.match.length);return(os.length>20?"...":"")+os.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var os=this.match;return os.length<20&&(os+=this._input.substr(0,20-os.length)),(os.substr(0,20)+(os.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var os=this.pastInput(),As=new Array(os.length+1).join("-");return os+this.upcomingInput()+` +`+As+"^"},test_match:function(os,As){var ma,vi,Qc;if(this.options.backtrack_lexer&&(Qc={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Qc.yylloc.range=this.yylloc.range.slice(0))),vi=os[0].match(/(?:\r\n?|\n).*/g),vi&&(this.yylineno+=vi.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:vi?vi[vi.length-1].length-vi[vi.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+os[0].length},this.yytext+=os[0],this.match+=os[0],this.matches=os,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(os[0].length),this.matched+=os[0],ma=this.performAction.call(this,this.yy,this,As,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ma)return ma;if(this._backtrack){for(var me in Qc)this[me]=Qc[me];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var os,As,ma,vi;this._more||(this.yytext="",this.match="");for(var Qc=this._currentRules(),me=0;meAs[0].length)){if(As=ma,vi=me,this.options.backtrack_lexer){if(os=this.test_match(ma,Qc[me]),os!==!1)return os;if(this._backtrack){As=!1;continue}else return!1}else if(!this.options.flex)break}return As?(os=this.test_match(As,Qc[vi]),os!==!1?os:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var As=this.next();return As||this.lex()},begin:function(As){this.conditionStack.push(As)},popState:function(){var As=this.conditionStack.length-1;return As>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(As){return As=this.conditionStack.length-1-Math.abs(As||0),As>=0?this.conditionStack[As]:"INITIAL"},pushState:function(As){this.begin(As)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(As,ma,vi,Qc){switch(vi){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:return this.begin("acc_title"),45;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),47;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:this.begin("callbackname");break;case 13:this.popState();break;case 14:this.popState(),this.begin("callbackargs");break;case 15:return 103;case 16:this.popState();break;case 17:return 104;case 18:return"MD_STR";case 19:this.popState();break;case 20:this.begin("md_string");break;case 21:return"STR";case 22:this.popState();break;case 23:this.pushState("string");break;case 24:return 92;case 25:return 110;case 26:return 93;case 27:return 112;case 28:return 94;case 29:return 95;case 30:return 105;case 31:this.begin("click");break;case 32:this.popState();break;case 33:return 96;case 34:return As.lex.firstGraph()&&this.begin("dir"),24;case 35:return As.lex.firstGraph()&&this.begin("dir"),24;case 36:return As.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 43;case 39:return 106;case 40:return 106;case 41:return 106;case 42:return 106;case 43:return this.popState(),25;case 44:return this.popState(),26;case 45:return this.popState(),26;case 46:return this.popState(),26;case 47:return this.popState(),26;case 48:return this.popState(),26;case 49:return this.popState(),26;case 50:return this.popState(),26;case 51:return this.popState(),26;case 52:return this.popState(),26;case 53:return this.popState(),26;case 54:return 129;case 55:return 130;case 56:return 131;case 57:return 132;case 58:return 113;case 59:return 119;case 60:return 55;case 61:return 69;case 62:return 53;case 63:return 20;case 64:return 114;case 65:return 123;case 66:return this.popState(),86;case 67:return this.pushState("edgeText"),84;case 68:return 127;case 69:return this.popState(),86;case 70:return this.pushState("thickEdgeText"),84;case 71:return 127;case 72:return this.popState(),86;case 73:return this.pushState("dottedEdgeText"),84;case 74:return 127;case 75:return 86;case 76:return this.popState(),62;case 77:return"TEXT";case 78:return this.pushState("ellipseText"),61;case 79:return this.popState(),64;case 80:return this.pushState("text"),63;case 81:return this.popState(),66;case 82:return this.pushState("text"),65;case 83:return 67;case 84:return this.pushState("text"),76;case 85:return this.popState(),73;case 86:return this.pushState("text"),72;case 87:return this.popState(),58;case 88:return this.pushState("text"),57;case 89:return this.popState(),78;case 90:return this.popState(),80;case 91:return 125;case 92:return this.pushState("trapText"),77;case 93:return this.pushState("trapText"),79;case 94:return 126;case 95:return 76;case 96:return 98;case 97:return"SEP";case 98:return 97;case 99:return 123;case 100:return 119;case 101:return 53;case 102:return 117;case 103:return 122;case 104:return 124;case 105:return this.popState(),71;case 106:return this.pushState("text"),71;case 107:return this.popState(),60;case 108:return this.pushState("text"),59;case 109:return this.popState(),42;case 110:return this.pushState("text"),40;case 111:return this.popState(),75;case 112:return this.pushState("text"),74;case 113:return"TEXT";case 114:return"QUOTE";case 115:return 21;case 116:return 22;case 117:return 23}},rules:[/^(?:%%\{)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|(?!\)+))/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{close_directive:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},arg_directive:{rules:[3,4,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},type_directive:{rules:[2,3,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},open_directive:{rules:[1,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},callbackargs:{rules:[16,17,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},callbackname:{rules:[13,14,15,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},href:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},click:{rules:[20,23,32,33,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},dottedEdgeText:{rules:[20,23,72,74,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},thickEdgeText:{rules:[20,23,69,71,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},edgeText:{rules:[20,23,66,68,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},trapText:{rules:[20,23,75,78,80,82,86,88,89,90,91,92,93,106,108,110,112],inclusive:!1},ellipseText:{rules:[20,23,75,76,77,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},text:{rules:[20,23,75,78,79,80,81,82,85,86,87,88,92,93,105,106,107,108,109,110,111,112,113],inclusive:!1},vertex:{rules:[20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},dir:{rules:[20,23,43,44,45,46,47,48,49,50,51,52,53,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_descr_multiline:{rules:[10,11,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_descr:{rules:[8,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},acc_title:{rules:[6,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},md_string:{rules:[18,19,20,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},string:{rules:[20,21,22,23,75,78,80,82,86,88,92,93,106,108,110,112],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,20,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39,40,41,42,54,55,56,57,58,59,60,61,62,63,64,65,66,67,69,70,72,73,75,78,80,82,83,84,86,88,92,93,94,95,96,97,98,99,100,101,102,103,104,106,108,110,112,114,115,116,117],inclusive:!0}}};return zb}();dm.lexer=S9;function x3(){this.yy={}}return x3.prototype=dm,dm.Parser=x3,new x3}();Pdt.parser=Pdt;const Fdt=Pdt,TDe="flowchart-";let TNt=0,Bdt=De(),El={},l9=[],QA={},T5=[],QW={},ZW={},JW=0,Rdt=!0,ev,tK,eK=[];const nK=i=>ui.sanitizeText(i,Bdt),_Nt=function(i,a,f){J1.parseDirective(this,i,a,f)},sP=function(i){const a=Object.keys(El);for(const f of a)if(El[f].id===i)return El[f].domId;return i},CNt=function(i,a,f,p,v,m,b={}){let E,C=i;C!==void 0&&C.trim().length!==0&&(El[C]===void 0&&(El[C]={id:C,labelType:"text",domId:TDe+C+"-"+TNt,styles:[],classes:[]}),TNt++,a!==void 0?(Bdt=De(),E=nK(a.text.trim()),El[C].labelType=a.type,E[0]==='"'&&E[E.length-1]==='"'&&(E=E.substring(1,E.length-1)),El[C].text=E):El[C].text===void 0&&(El[C].text=i),f!==void 0&&(El[C].type=f),p!=null&&p.forEach(function(A){El[C].styles.push(A)}),v!=null&&v.forEach(function(A){El[C].classes.push(A)}),m!==void 0&&(El[C].dir=m),El[C].props===void 0?El[C].props=b:b!==void 0&&Object.assign(El[C].props,b))},SNt=function(i,a,f){const m={start:i,end:a,type:void 0,text:"",labelType:"text"};Wt.info("abc78 Got edge...",m);const b=f.text;b!==void 0&&(m.text=nK(b.text.trim()),m.text[0]==='"'&&m.text[m.text.length-1]==='"'&&(m.text=m.text.substring(1,m.text.length-1)),m.labelType=b.type),f!==void 0&&(m.type=f.type,m.stroke=f.stroke,m.length=f.length),l9.push(m)},ANt=function(i,a,f){Wt.info("addLink (abc78)",i,a,f);let p,v;for(p=0;p/)&&(ev="LR"),ev.match(/.*v/)&&(ev="TB"),ev==="TD"&&(ev="TB")},rK=function(i,a){i.split(",").forEach(function(f){let p=f;El[p]!==void 0&&El[p].classes.push(a),QW[p]!==void 0&&QW[p].classes.push(a)})},_De=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(ZW[tK==="gen-1"?sP(f):f]=nK(a))})},CDe=function(i,a,f){let p=sP(i);if(De().securityLevel!=="loose"||a===void 0)return;let v=[];if(typeof f=="string"){v=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let m=0;m")),v.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),xr(this).classed("hover",!1)})};eK.push(zNt);const qNt=function(i="gen-1"){El={},QA={},l9=[],eK=[zNt],T5=[],QW={},JW=0,ZW={},Rdt=!0,tK=i,cg()},HNt=i=>{tK=i||"gen-2"},VNt=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},GNt=function(i,a,f){let p=i.text.trim(),v=f.text;i===f&&f.text.match(/\s/)&&(p=void 0);function m(P){const F={boolean:{},number:{},string:{}},j=[];let R;return{nodeList:P.filter(function(Y){const rt=typeof Y;return Y.stmt&&Y.stmt==="dir"?(R=Y.value,!1):Y.trim()===""?!1:rt in F?F[rt].hasOwnProperty(Y)?!1:F[rt][Y]=!0:j.includes(Y)?!1:j.push(Y)}),dir:R}}let b=[];const{nodeList:E,dir:C}=m(b.concat.apply(b,a));if(b=E,tK==="gen-1")for(let P=0;P2e3)return;if(UNt[aP]=a,T5[a].id===i)return{result:!0,count:0};let p=0,v=1;for(;p=0){const b=WNt(i,m);if(b.result)return{result:!0,count:v+b.count};v=v+b.count}p=p+1}return{result:!1,count:v}},KNt=function(i){return UNt[i]},YNt=function(){aP=-1,T5.length>0&&WNt("none",T5.length-1)},XNt=function(){return T5},QNt=()=>Rdt?(Rdt=!1,!0):!1,ADe=i=>{let a=i.trim(),f="arrow_open";switch(a[0]){case"<":f="arrow_point",a=a.slice(1);break;case"x":f="arrow_cross",a=a.slice(1);break;case"o":f="arrow_circle",a=a.slice(1);break}let p="normal";return a.includes("=")&&(p="thick"),a.includes(".")&&(p="dotted"),{type:f,stroke:p}},LDe=(i,a)=>{const f=a.length;let p=0;for(let v=0;v{const a=i.trim();let f=a.slice(0,-1),p="arrow_open";switch(a.slice(-1)){case"x":p="arrow_cross",a[0]==="x"&&(p="double_"+p,f=f.slice(1));break;case">":p="arrow_point",a[0]==="<"&&(p="double_"+p,f=f.slice(1));break;case"o":p="arrow_circle",a[0]==="o"&&(p="double_"+p,f=f.slice(1));break}let v="normal",m=f.length-1;f[0]==="="&&(v="thick"),f[0]==="~"&&(v="invisible");let b=LDe(".",f);return b&&(v="dotted",m=b),{type:p,stroke:v,length:m}},ZNt=(i,a)=>{const f=MDe(i);let p;if(a){if(p=ADe(a),p.stroke!==f.stroke)return{type:"INVALID",stroke:"INVALID"};if(p.type==="arrow_open")p.type=f.type;else{if(p.type!==f.type)return{type:"INVALID",stroke:"INVALID"};p.type="double_"+p.type}return p.type==="double_arrow"&&(p.type="double_arrow_point"),p.length=f.length,p}return f},JNt=(i,a)=>{let f=!1;return i.forEach(p=>{p.nodes.indexOf(a)>=0&&(f=!0)}),f},tPt=(i,a)=>{const f=[];return i.nodes.forEach((p,v)=>{JNt(a,p)||f.push(i.nodes[v])}),{nodes:f}},ePt={firstGraph:QNt},h9={parseDirective:_Nt,defaultConfig:()=>i9.flowchart,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,addVertex:CNt,lookUpDomId:sP,addLink:ANt,updateLinkInterpolate:LNt,updateLink:MNt,addClass:DNt,setDirection:INt,setClass:rK,setTooltip:_De,getTooltip:NNt,setClickEvent:PNt,setLink:ONt,bindFunctions:FNt,getDirection:BNt,getVertices:RNt,getEdges:jNt,getClasses:$Nt,clear:qNt,setGen:HNt,defaultStyle:VNt,addSubGraph:GNt,getDepthFirstPos:KNt,indexNodes:YNt,getSubGraphs:XNt,destructLink:ZNt,lex:ePt,exists:JNt,makeUniq:tPt,setDiagramTitle:Nb,getDiagramTitle:hp},DDe=Object.freeze(Object.defineProperty({__proto__:null,addClass:DNt,addLink:ANt,addSingleLink:SNt,addSubGraph:GNt,addVertex:CNt,bindFunctions:FNt,clear:qNt,default:h9,defaultStyle:VNt,destructLink:ZNt,firstGraph:QNt,getClasses:$Nt,getDepthFirstPos:KNt,getDirection:BNt,getEdges:jNt,getSubGraphs:XNt,getTooltip:NNt,getVertices:RNt,indexNodes:YNt,lex:ePt,lookUpDomId:sP,parseDirective:_Nt,setClass:rK,setClickEvent:PNt,setDirection:INt,setGen:HNt,setLink:ONt,updateLink:MNt,updateLinkInterpolate:LNt},Symbol.toStringTag,{value:"Module"}));var IDe="[object Symbol]";function f9(i){return typeof i=="symbol"||l3(i)&&QE(i)==IDe}function ZA(i,a){for(var f=-1,p=i==null?0:i.length,v=Array(p);++f-1}function Fb(i){return tk(i)?MIt(i):QOt(i)}var XDe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,QDe=/^\w*$/;function jdt(i,a){if(Of(i))return!1;var f=typeof i;return f=="number"||f=="symbol"||f=="boolean"||i==null||f9(i)?!0:QDe.test(i)||!XDe.test(i)||a!=null&&i in Object(a)}var ZDe=500;function JDe(i){var a=FA(i,function(p){return f.size===ZDe&&f.clear(),p}),f=a.cache;return a}var tIe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,eIe=/\\(\\)?/g,nIe=JDe(function(i){var a=[];return i.charCodeAt(0)===46&&a.push(""),i.replace(tIe,function(f,p,v,m){a.push(v?m.replace(eIe,"$1"):p||f)}),a});const rIe=nIe;function uPt(i){return i==null?"":iPt(i)}function sK(i,a){return Of(i)?i:jdt(i,a)?[i]:rIe(uPt(i))}var iIe=1/0;function oP(i){if(typeof i=="string"||f9(i))return i;var a=i+"";return a=="0"&&1/i==-iIe?"-0":a}function aK(i,a){a=sK(a,i);for(var f=0,p=a.length;i!=null&&f0&&f(E)?a>1?oK(E,a-1,f,p,v):$dt(v,E):p||(v[v.length]=E)}return v}function JA(i){var a=i==null?0:i.length;return a?oK(i,1):[]}function oIe(i){return NIt(OIt(i,void 0,JA),i+"")}function cIe(i,a,f,p){var v=-1,m=i==null?0:i.length;for(p&&m&&(f=i[++v]);++vE))return!1;var A=m.get(i),P=m.get(a);if(A&&P)return A==a&&P==i;var F=-1,j=!0,R=f&FOe?new uP:void 0;for(m.set(i,a),m.set(a,i);++F2?a[2]:void 0;for(v&&KN(a[0],a[1],v)&&(p=1);++f-1?v[m?a[b]:b]:void 0}}var _Ne=Math.max;function CNe(i,a,f){var p=i==null?0:i.length;if(!p)return-1;var v=f==null?0:VDe(f);return v<0&&(v=_Ne(p+v,0)),cPt(i,ak(a),v)}var SNe=TNe(CNe);const Kdt=SNe;function PPt(i,a){var f=-1,p=tk(i)?Array(i.length):[];return uK(i,function(v,m,b){p[++f]=a(v,m,b)}),p}function Ff(i,a){var f=Of(i)?ZA:PPt;return f(i,ak(a))}function ANe(i,a){return i==null?i:Y1t(i,Wdt(a),e9)}function LNe(i,a){return i&&Udt(i,Wdt(a))}function MNe(i,a){return i>a}var DNe=Object.prototype,INe=DNe.hasOwnProperty;function ONe(i,a){return i!=null&&INe.call(i,a)}function Va(i,a){return i!=null&&DPt(i,a,ONe)}function NNe(i,a){return ZA(a,function(f){return i[f]})}function C5(i){return i==null?[]:NNe(i,Fb(i))}function tf(i){return i===void 0}function FPt(i,a){return ia||m&&b&&C&&!E&&!A||p&&b&&C||!f&&C||!v)return 1;if(!p&&!m&&!A&&i=E)return C;var A=f[p];return C*(A=="desc"?-1:1)}}return i.index-a.index}function $Ne(i,a,f){a.length?a=ZA(a,function(m){return Of(m)?function(b){return aK(b,m.length===1?m[0]:m)}:m}):a=[n9];var p=-1;a=ZA(a,wW(ak));var v=PPt(i,function(m,b,E){var C=ZA(a,function(A){return A(m)});return{criteria:C,index:++p,value:m}});return BNe(v,function(m,b){return jNe(m,b,f)})}function zNe(i,a){return FNe(i,a,function(f,p){return IPt(i,p)})}var qNe=oIe(function(i,a){return i==null?{}:zNe(i,a)});const hP=qNe;var HNe=Math.ceil,VNe=Math.max;function GNe(i,a,f,p){for(var v=-1,m=VNe(HNe((a-i)/(f||1)),0),b=Array(m);m--;)b[p?m:++v]=i,i+=f;return b}function UNe(i){return function(a,f,p){return p&&typeof p!="number"&&KN(a,f,p)&&(f=p=void 0),a=iK(a),f===void 0?(f=a,a=0):f=iK(f),p=p===void 0?a1&&KN(i,a[0],a[1])?a=[]:f>2&&KN(a[0],a[1],a[2])&&(a=[a[0]]),$Ne(i,oK(a,1),[])});const dP=YNe;var XNe=1/0,QNe=YA&&1/Hdt(new YA([,-0]))[1]==XNe?function(i){return new YA(i)}:GDe;const ZNe=QNe;var JNe=200;function tPe(i,a,f){var p=-1,v=YDe,m=i.length,b=!0,E=[],C=E;if(f)b=!1,v=kNe;else if(m>=JNe){var A=a?null:ZNe(i);if(A)return Hdt(A);b=!1,v=EPt,C=new uP}else C=a?[]:E;t:for(;++p1?v.setNode(m,f):v.setNode(m)}),this}setNode(a,f){return Va(this._nodes,a)?(arguments.length>1&&(this._nodes[a]=f),this):(this._nodes[a]=arguments.length>1?f:this._defaultNodeLabelFn(a),this._isCompound&&(this._parent[a]=p9,this._children[a]={},this._children[p9][a]=!0),this._in[a]={},this._preds[a]={},this._out[a]={},this._sucs[a]={},++this._nodeCount,this)}node(a){return this._nodes[a]}hasNode(a){return Va(this._nodes,a)}removeNode(a){var f=this;if(Va(this._nodes,a)){var p=function(v){f.removeEdge(f._edgeObjs[v])};delete this._nodes[a],this._isCompound&&(this._removeFromParentsChildList(a),delete this._parent[a],cr(this.children(a),function(v){f.setParent(v)}),delete this._children[a]),cr(Fb(this._in[a]),p),delete this._in[a],delete this._preds[a],cr(Fb(this._out[a]),p),delete this._out[a],delete this._sucs[a],--this._nodeCount}return this}setParent(a,f){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(tf(f))f=p9;else{f+="";for(var p=f;!tf(p);p=this.parent(p))if(p===a)throw new Error("Setting "+f+" as parent of "+a+" would create a cycle");this.setNode(f)}return this.setNode(a),this._removeFromParentsChildList(a),this._parent[a]=f,this._children[f][a]=!0,this}_removeFromParentsChildList(a){delete this._children[this._parent[a]][a]}parent(a){if(this._isCompound){var f=this._parent[a];if(f!==p9)return f}}children(a){if(tf(a)&&(a=p9),this._isCompound){var f=this._children[a];if(f)return Fb(f)}else{if(a===p9)return this.nodes();if(this.hasNode(a))return[]}}predecessors(a){var f=this._preds[a];if(f)return Fb(f)}successors(a){var f=this._sucs[a];if(f)return Fb(f)}neighbors(a){var f=this.predecessors(a);if(f)return nPe(f,this.successors(a))}isLeaf(a){var f;return this.isDirected()?f=this.successors(a):f=this.neighbors(a),f.length===0}filterNodes(a){var f=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});f.setGraph(this.graph());var p=this;cr(this._nodes,function(b,E){a(E)&&f.setNode(E,b)}),cr(this._edgeObjs,function(b){f.hasNode(b.v)&&f.hasNode(b.w)&&f.setEdge(b,p.edge(b))});var v={};function m(b){var E=p.parent(b);return E===void 0||f.hasNode(E)?(v[b]=E,E):E in v?v[E]:m(E)}return this._isCompound&&cr(f.nodes(),function(b){f.setParent(b,m(b))}),f}setDefaultEdgeLabel(a){return NA(a)||(a=$A(a)),this._defaultEdgeLabelFn=a,this}edgeCount(){return this._edgeCount}edges(){return C5(this._edgeObjs)}setPath(a,f){var p=this,v=arguments;return fP(a,function(m,b){return v.length>1?p.setEdge(m,b,f):p.setEdge(m,b),b}),this}setEdge(){var a,f,p,v,m=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(a=b.v,f=b.w,p=b.name,arguments.length===2&&(v=arguments[1],m=!0)):(a=b,f=arguments[1],p=arguments[3],arguments.length>2&&(v=arguments[2],m=!0)),a=""+a,f=""+f,tf(p)||(p=""+p);var E=gP(this._isDirected,a,f,p);if(Va(this._edgeLabels,E))return m&&(this._edgeLabels[E]=v),this;if(!tf(p)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(a),this.setNode(f),this._edgeLabels[E]=m?v:this._defaultEdgeLabelFn(a,f,p);var C=oPe(this._isDirected,a,f,p);return a=C.v,f=C.w,Object.freeze(C),this._edgeObjs[E]=C,RPt(this._preds[f],a),RPt(this._sucs[a],f),this._in[f][E]=C,this._out[a][E]=C,this._edgeCount++,this}edge(a,f,p){var v=arguments.length===1?Qdt(this._isDirected,arguments[0]):gP(this._isDirected,a,f,p);return this._edgeLabels[v]}hasEdge(a,f,p){var v=arguments.length===1?Qdt(this._isDirected,arguments[0]):gP(this._isDirected,a,f,p);return Va(this._edgeLabels,v)}removeEdge(a,f,p){var v=arguments.length===1?Qdt(this._isDirected,arguments[0]):gP(this._isDirected,a,f,p),m=this._edgeObjs[v];return m&&(a=m.v,f=m.w,delete this._edgeLabels[v],delete this._edgeObjs[v],jPt(this._preds[f],a),jPt(this._sucs[a],f),delete this._in[f][v],delete this._out[a][v],this._edgeCount--),this}inEdges(a,f){var p=this._in[a];if(p){var v=C5(p);return f?_5(v,function(m){return m.v===f}):v}}outEdges(a,f){var p=this._out[a];if(p){var v=C5(p);return f?_5(v,function(m){return m.w===f}):v}}nodeEdges(a,f){var p=this.inEdges(a,f);if(p)return p.concat(this.outEdges(a,f))}}l1.prototype._nodeCount=0,l1.prototype._edgeCount=0;function RPt(i,a){i[a]?i[a]++:i[a]=1}function jPt(i,a){--i[a]||delete i[a]}function gP(i,a,f,p){var v=""+a,m=""+f;if(!i&&v>m){var b=v;v=m,m=b}return v+BPt+m+BPt+(tf(p)?aPe:p)}function oPe(i,a,f,p){var v=""+a,m=""+f;if(!i&&v>m){var b=v;v=m,m=b}var E={v,w:m};return p&&(E.name=p),E}function Qdt(i,a){return gP(i,a.v,a.w,a.name)}class cPe{constructor(){var a={};a._next=a._prev=a,this._sentinel=a}dequeue(){var a=this._sentinel,f=a._prev;if(f!==a)return $Pt(f),f}enqueue(a){var f=this._sentinel;a._prev&&a._next&&$Pt(a),a._next=f._next,f._next._prev=a,f._next=a,a._prev=f}toString(){for(var a=[],f=this._sentinel,p=f._prev;p!==f;)a.push(JSON.stringify(p,uPe)),p=p._prev;return"["+a.join(", ")+"]"}}function $Pt(i){i._prev._next=i._next,i._next._prev=i._prev,delete i._next,delete i._prev}function uPe(i,a){if(i!=="_next"&&i!=="_prev")return a}var lPe=$A(1);function hPe(i,a){if(i.nodeCount()<=1)return[];var f=dPe(i,a||lPe),p=fPe(f.graph,f.buckets,f.zeroIdx);return JA(Ff(p,function(v){return i.outEdges(v.v,v.w)}))}function fPe(i,a,f){for(var p=[],v=a[a.length-1],m=a[0],b;i.nodeCount();){for(;b=m.dequeue();)Zdt(i,a,f,b);for(;b=v.dequeue();)Zdt(i,a,f,b);if(i.nodeCount()){for(var E=a.length-2;E>0;--E)if(b=a[E].dequeue(),b){p=p.concat(Zdt(i,a,f,b,!0));break}}}return p}function Zdt(i,a,f,p,v){var m=v?[]:void 0;return cr(i.inEdges(p.v),function(b){var E=i.edge(b),C=i.node(b.v);v&&m.push({v:b.v,w:b.w}),C.out-=E,Jdt(a,f,C)}),cr(i.outEdges(p.v),function(b){var E=i.edge(b),C=b.w,A=i.node(C);A.in-=E,Jdt(a,f,A)}),i.removeNode(p.v),m}function dPe(i,a){var f=new l1,p=0,v=0;cr(i.nodes(),function(E){f.setNode(E,{v:E,in:0,out:0})}),cr(i.edges(),function(E){var C=f.edge(E.v,E.w)||0,A=a(E),P=C+A;f.setEdge(E.v,E.w,P),v=Math.max(v,f.node(E.v).out+=A),p=Math.max(p,f.node(E.w).in+=A)});var m=g9(v+p+3).map(function(){return new cPe}),b=p+1;return cr(f.nodes(),function(E){Jdt(m,b,f.node(E))}),{graph:f,buckets:m,zeroIdx:b}}function Jdt(i,a,f){f.out?f.in?i[f.out-f.in+a].enqueue(f):i[i.length-1].enqueue(f):i[0].enqueue(f)}function gPe(i){var a=i.graph().acyclicer==="greedy"?hPe(i,f(i)):pPe(i);cr(a,function(p){var v=i.edge(p);i.removeEdge(p),v.forwardName=p.name,v.reversed=!0,i.setEdge(p.w,p.v,v,fK("rev"))});function f(p){return function(v){return p.edge(v).weight}}}function pPe(i){var a=[],f={},p={};function v(m){Va(p,m)||(p[m]=!0,f[m]=!0,cr(i.outEdges(m),function(b){Va(f,b.w)?a.push(b):v(b.w)}),delete f[m])}return cr(i.nodes(),v),a}function bPe(i){cr(i.edges(),function(a){var f=i.edge(a);if(f.reversed){i.removeEdge(a);var p=f.forwardName;delete f.reversed,delete f.forwardName,i.setEdge(a.w,a.v,f,p)}})}function eL(i,a,f,p){var v;do v=fK(p);while(i.hasNode(v));return f.dummy=a,i.setNode(v,f),v}function vPe(i){var a=new l1().setGraph(i.graph());return cr(i.nodes(),function(f){a.setNode(f,i.node(f))}),cr(i.edges(),function(f){var p=a.edge(f.v,f.w)||{weight:0,minlen:1},v=i.edge(f);a.setEdge(f.v,f.w,{weight:p.weight+v.weight,minlen:Math.max(p.minlen,v.minlen)})}),a}function zPt(i){var a=new l1({multigraph:i.isMultigraph()}).setGraph(i.graph());return cr(i.nodes(),function(f){i.children(f).length||a.setNode(f,i.node(f))}),cr(i.edges(),function(f){a.setEdge(f,i.edge(f))}),a}function qPt(i,a){var f=i.x,p=i.y,v=a.x-f,m=a.y-p,b=i.width/2,E=i.height/2;if(!v&&!m)throw new Error("Not possible to find intersection inside of the rectangle");var C,A;return Math.abs(m)*b>Math.abs(v)*E?(m<0&&(E=-E),C=E*v/m,A=E):(v<0&&(b=-b),C=b,A=b*m/v),{x:f+C,y:p+A}}function dK(i){var a=Ff(g9(VPt(i)+1),function(){return[]});return cr(i.nodes(),function(f){var p=i.node(f),v=p.rank;tf(v)||(a[v][p.order]=f)}),a}function wPe(i){var a=lP(Ff(i.nodes(),function(f){return i.node(f).rank}));cr(i.nodes(),function(f){var p=i.node(f);Va(p,"rank")&&(p.rank-=a)})}function mPe(i){var a=lP(Ff(i.nodes(),function(m){return i.node(m).rank})),f=[];cr(i.nodes(),function(m){var b=i.node(m).rank-a;f[b]||(f[b]=[]),f[b].push(m)});var p=0,v=i.graph().nodeRankFactor;cr(f,function(m,b){tf(m)&&b%v!==0?--p:p&&cr(m,function(E){i.node(E).rank+=p})})}function HPt(i,a,f,p){var v={width:0,height:0};return arguments.length>=4&&(v.rank=f,v.order=p),eL(i,"border",v,a)}function VPt(i){return d9(Ff(i.nodes(),function(a){var f=i.node(a).rank;if(!tf(f))return f}))}function yPe(i,a){var f={lhs:[],rhs:[]};return cr(i,function(p){a(p)?f.lhs.push(p):f.rhs.push(p)}),f}function xPe(i,a){var f=OPt();try{return a()}finally{console.log(i+" time: "+(OPt()-f)+"ms")}}function kPe(i,a){return a()}function EPe(i){function a(f){var p=i.children(f),v=i.node(f);if(p.length&&cr(p,a),Va(v,"minRank")){v.borderLeft=[],v.borderRight=[];for(var m=v.minRank,b=v.maxRank+1;mb.lim&&(E=b,C=!0);var A=_5(a.edges(),function(P){return C===nFt(i,i.node(P.v),E)&&C!==nFt(i,i.node(P.w),E)});return Xdt(A,function(P){return pP(a,P)})}function eFt(i,a,f,p){var v=f.v,m=f.w;i.removeEdge(v,m),i.setEdge(p.v,p.w,{}),i0t(i),r0t(i,a),RPe(i,a)}function RPe(i,a){var f=Kdt(i.nodes(),function(v){return!a.node(v).parent}),p=FPe(i,f);p=p.slice(1),cr(p,function(v){var m=i.node(v).parent,b=a.edge(v,m),E=!1;b||(b=a.edge(m,v),E=!0),a.node(v).rank=a.node(m).rank+(E?b.minlen:-b.minlen)})}function jPe(i,a,f){return i.hasEdge(a,f)}function nFt(i,a,f){return f.low<=a.lim&&a.lim<=f.lim}function $Pe(i){switch(i.graph().ranker){case"network-simplex":rFt(i);break;case"tight-tree":qPe(i);break;case"longest-path":zPe(i);break;default:rFt(i)}}var zPe=n0t;function qPe(i){n0t(i),KPt(i)}function rFt(i){b9(i)}function HPe(i){var a=eL(i,"root",{},"_root"),f=VPe(i),p=d9(C5(f))-1,v=2*p+1;i.graph().nestingRoot=a,cr(i.edges(),function(b){i.edge(b).minlen*=v});var m=GPe(i)+1;cr(i.children(),function(b){iFt(i,a,v,m,p,f,b)}),i.graph().nodeRankFactor=v}function iFt(i,a,f,p,v,m,b){var E=i.children(b);if(!E.length){b!==a&&i.setEdge(a,b,{weight:0,minlen:f});return}var C=HPt(i,"_bt"),A=HPt(i,"_bb"),P=i.node(b);i.setParent(C,b),P.borderTop=C,i.setParent(A,b),P.borderBottom=A,cr(E,function(F){iFt(i,a,f,p,v,m,F);var j=i.node(F),R=j.borderTop?j.borderTop:F,H=j.borderBottom?j.borderBottom:F,Y=j.borderTop?p:2*p,rt=R!==H?1:v-m[b]+1;i.setEdge(C,R,{weight:Y,minlen:rt,nestingEdge:!0}),i.setEdge(H,A,{weight:Y,minlen:rt,nestingEdge:!0})}),i.parent(b)||i.setEdge(a,C,{weight:0,minlen:v+m[b]})}function VPe(i){var a={};function f(p,v){var m=i.children(p);m&&m.length&&cr(m,function(b){f(b,v+1)}),a[p]=v}return cr(i.children(),function(p){f(p,1)}),a}function GPe(i){return fP(i.edges(),function(a,f){return a+i.edge(f).weight},0)}function UPe(i){var a=i.graph();i.removeNode(a.nestingRoot),delete a.nestingRoot,cr(i.edges(),function(f){var p=i.edge(f);p.nestingEdge&&i.removeEdge(f)})}function WPe(i,a,f){var p={},v;cr(f,function(m){for(var b=i.parent(m),E,C;b;){if(E=i.parent(b),E?(C=p[E],p[E]=b):(C=v,v=b),C&&C!==b){a.setEdge(C,b);return}b=E}})}function KPe(i,a,f){var p=YPe(i),v=new l1({compound:!0}).setGraph({root:p}).setDefaultNodeLabel(function(m){return i.node(m)});return cr(i.nodes(),function(m){var b=i.node(m),E=i.parent(m);(b.rank===a||b.minRank<=a&&a<=b.maxRank)&&(v.setNode(m),v.setParent(m,E||p),cr(i[f](m),function(C){var A=C.v===m?C.w:C.v,P=v.edge(A,m),F=tf(P)?0:P.weight;v.setEdge(A,m,{weight:i.edge(C).weight+F})}),Va(b,"minRank")&&v.setNode(m,{borderLeft:b.borderLeft[a],borderRight:b.borderRight[a]}))}),v}function YPe(i){for(var a;i.hasNode(a=fK("_root")););return a}function XPe(i,a){for(var f=0,p=1;p0;)P%2&&(F+=E[P+1]),P=P-1>>1,E[P]+=A.weight;C+=A.weight*F})),C}function ZPe(i){var a={},f=_5(i.nodes(),function(E){return!i.children(E).length}),p=d9(Ff(f,function(E){return i.node(E).rank})),v=Ff(g9(p+1),function(){return[]});function m(E){if(!Va(a,E)){a[E]=!0;var C=i.node(E);v[C.rank].push(E),cr(i.successors(E),m)}}var b=dP(f,function(E){return i.node(E).rank});return cr(b,m),v}function JPe(i,a){return Ff(a,function(f){var p=i.inEdges(f);if(p.length){var v=fP(p,function(m,b){var E=i.edge(b),C=i.node(b.v);return{sum:m.sum+E.weight*C.order,weight:m.weight+E.weight}},{sum:0,weight:0});return{v:f,barycenter:v.sum/v.weight,weight:v.weight}}else return{v:f}})}function tFe(i,a){var f={};cr(i,function(v,m){var b=f[v.v]={indegree:0,in:[],out:[],vs:[v.v],i:m};tf(v.barycenter)||(b.barycenter=v.barycenter,b.weight=v.weight)}),cr(a.edges(),function(v){var m=f[v.v],b=f[v.w];!tf(m)&&!tf(b)&&(b.indegree++,m.out.push(f[v.w]))});var p=_5(f,function(v){return!v.indegree});return eFe(p)}function eFe(i){var a=[];function f(m){return function(b){b.merged||(tf(b.barycenter)||tf(m.barycenter)||b.barycenter>=m.barycenter)&&nFe(m,b)}}function p(m){return function(b){b.in.push(m),--b.indegree===0&&i.push(b)}}for(;i.length;){var v=i.pop();a.push(v),cr(v.in.reverse(),f(v)),cr(v.out,p(v))}return Ff(_5(a,function(m){return!m.merged}),function(m){return hP(m,["vs","i","barycenter","weight"])})}function nFe(i,a){var f=0,p=0;i.weight&&(f+=i.barycenter*i.weight,p+=i.weight),a.weight&&(f+=a.barycenter*a.weight,p+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=f/p,i.weight=p,i.i=Math.min(a.i,i.i),a.merged=!0}function rFe(i,a){var f=yPe(i,function(P){return Va(P,"barycenter")}),p=f.lhs,v=dP(f.rhs,function(P){return-P.i}),m=[],b=0,E=0,C=0;p.sort(iFe(!!a)),C=sFt(m,v,C),cr(p,function(P){C+=P.vs.length,m.push(P.vs),b+=P.barycenter*P.weight,E+=P.weight,C=sFt(m,v,C)});var A={vs:JA(m)};return E&&(A.barycenter=b/E,A.weight=E),A}function sFt(i,a,f){for(var p;a.length&&(p=lK(a)).i<=f;)a.pop(),i.push(p.vs),f++;return f}function iFe(i){return function(a,f){return a.barycenterf.barycenter?1:i?f.i-a.i:a.i-f.i}}function aFt(i,a,f,p){var v=i.children(a),m=i.node(a),b=m?m.borderLeft:void 0,E=m?m.borderRight:void 0,C={};b&&(v=_5(v,function(H){return H!==b&&H!==E}));var A=JPe(i,v);cr(A,function(H){if(i.children(H.v).length){var Y=aFt(i,H.v,f,p);C[H.v]=Y,Va(Y,"barycenter")&&aFe(H,Y)}});var P=tFe(A,f);sFe(P,C);var F=rFe(P,p);if(b&&(F.vs=JA([b,F.vs,E]),i.predecessors(b).length)){var j=i.node(i.predecessors(b)[0]),R=i.node(i.predecessors(E)[0]);Va(F,"barycenter")||(F.barycenter=0,F.weight=0),F.barycenter=(F.barycenter*F.weight+j.order+R.order)/(F.weight+2),F.weight+=2}return F}function sFe(i,a){cr(i,function(f){f.vs=JA(f.vs.map(function(p){return a[p]?a[p].vs:p}))})}function aFe(i,a){tf(i.barycenter)?(i.barycenter=a.barycenter,i.weight=a.weight):(i.barycenter=(i.barycenter*i.weight+a.barycenter*a.weight)/(i.weight+a.weight),i.weight+=a.weight)}function oFe(i){var a=VPt(i),f=oFt(i,g9(1,a+1),"inEdges"),p=oFt(i,g9(a-1,-1,-1),"outEdges"),v=ZPe(i);cFt(i,v);for(var m=Number.POSITIVE_INFINITY,b,E=0,C=0;C<4;++E,++C){cFe(E%2?f:p,E%4>=2),v=dK(i);var A=XPe(i,v);Ab||E>a[C].lim));for(A=C,C=p;(C=i.parent(C))!==A;)m.push(C);return{path:v.concat(m.reverse()),lca:A}}function hFe(i){var a={},f=0;function p(v){var m=f;cr(i.children(v),p),a[v]={low:m,lim:f++}}return cr(i.children(),p),a}function fFe(i,a){var f={};function p(v,m){var b=0,E=0,C=v.length,A=lK(m);return cr(m,function(P,F){var j=gFe(i,P),R=j?i.node(j).order:C;(j||P===A)&&(cr(m.slice(E,F+1),function(H){cr(i.predecessors(H),function(Y){var rt=i.node(Y),J=rt.order;(JA)&&uFt(f,j,P)})})}function v(m,b){var E=-1,C,A=0;return cr(b,function(P,F){if(i.node(P).dummy==="border"){var j=i.predecessors(P);j.length&&(C=i.node(j[0]).order,p(b,A,F,E,C),A=F,E=C)}p(b,A,b.length,C,m.length)}),b}return fP(a,v),f}function gFe(i,a){if(i.node(a).dummy)return Kdt(i.predecessors(a),function(f){return i.node(f).dummy})}function uFt(i,a,f){if(a>f){var p=a;a=f,f=p}var v=i[a];v||(i[a]=v={}),v[f]=!0}function pFe(i,a,f){if(a>f){var p=a;a=f,f=p}return Va(i[a],f)}function bFe(i,a,f,p){var v={},m={},b={};return cr(a,function(E){cr(E,function(C,A){v[C]=C,m[C]=C,b[C]=A})}),cr(a,function(E){var C=-1;cr(E,function(A){var P=p(A);if(P.length){P=dP(P,function(Y){return b[Y]});for(var F=(P.length-1)/2,j=Math.floor(F),R=Math.ceil(F);j<=R;++j){var H=P[j];m[A]===A&&C0}function b3(i,a,f){var p=i.x,v=i.y,m=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;a.forEach(function(H){b=Math.min(b,H.x),E=Math.min(E,H.y)});for(var C=p-i.width/2-b,A=v-i.height/2-E,P=0;P1&&m.sort(function(H,Y){var rt=H.x-f.x,J=H.y-f.y,it=Math.sqrt(rt*rt+J*J),ft=Y.x-f.x,Tt=Y.y-f.y,kt=Math.sqrt(ft*ft+Tt*Tt);return itMath.abs(v)*E?(m<0&&(E=-E),C=m===0?0:E*v/m,A=E):(v<0&&(b=-b),C=b,A=v===0?0:b*m/v),{x:f+C,y:p+A}}var b0t={rect:mBe,ellipse:yBe,circle:xBe,diamond:kBe};function wBe(i){b0t=i}function mBe(i,a,f){var p=i.insert("rect",":first-child").attr("rx",f.rx).attr("ry",f.ry).attr("x",-a.width/2).attr("y",-a.height/2).attr("width",a.width).attr("height",a.height);return f.intersect=function(v){return p0t(f,v)},p}function yBe(i,a,f){var p=a.width/2,v=a.height/2,m=i.insert("ellipse",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("rx",p).attr("ry",v);return f.intersect=function(b){return pFt(f,p,v,b)},m}function xBe(i,a,f){var p=Math.max(a.width,a.height)/2,v=i.insert("circle",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("r",p);return f.intersect=function(m){return bBe(f,p,m)},v}function kBe(i,a,f){var p=a.width*Math.SQRT2/2,v=a.height*Math.SQRT2/2,m=[{x:0,y:-v},{x:-p,y:0},{x:0,y:v},{x:p,y:0}],b=i.insert("polygon",":first-child").attr("points",m.map(function(E){return E.x+","+E.y}).join(" "));return f.intersect=function(E){return b3(f,m,E)},b}function EBe(){var i=function(a,f){CBe(f);var p=bP(a,"output"),v=bP(p,"clusters"),m=bP(p,"edgePaths"),b=f0t(bP(p,"edgeLabels"),f),E=g0t(bP(p,"nodes"),f,b0t);nL(f),pBe(E,f),gBe(b,f),d0t(m,f,c0t);var C=h0t(v,f);dBe(C,f),SBe(f)};return i.createNodes=function(a){return arguments.length?(fBe(a),i):g0t},i.createClusters=function(a){return arguments.length?(iBe(a),i):h0t},i.createEdgeLabels=function(a){return arguments.length?(sBe(a),i):f0t},i.createEdgePaths=function(a){return arguments.length?(aBe(a),i):d0t},i.shapes=function(a){return arguments.length?(wBe(a),i):b0t},i.arrows=function(a){return arguments.length?(QFe(a),i):c0t},i}var TBe={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},_Be={arrowhead:"normal",curve:ig};function CBe(i){i.nodes().forEach(function(a){var f=i.node(a);!Va(f,"label")&&!i.children(a).length&&(f.label=a),Va(f,"paddingX")&&tL(f,{paddingLeft:f.paddingX,paddingRight:f.paddingX}),Va(f,"paddingY")&&tL(f,{paddingTop:f.paddingY,paddingBottom:f.paddingY}),Va(f,"padding")&&tL(f,{paddingLeft:f.padding,paddingRight:f.padding,paddingTop:f.padding,paddingBottom:f.padding}),tL(f,TBe),cr(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(p){f[p]=Number(f[p])}),Va(f,"width")&&(f._prevWidth=f.width),Va(f,"height")&&(f._prevHeight=f.height)}),i.edges().forEach(function(a){var f=i.edge(a);Va(f,"label")||(f.label=""),tL(f,_Be)})}function SBe(i){cr(i.nodes(),function(a){var f=i.node(a);Va(f,"_prevWidth")?f.width=f._prevWidth:delete f.width,Va(f,"_prevHeight")?f.height=f._prevHeight:delete f.height,delete f._prevWidth,delete f._prevHeight})}function bP(i,a){var f=i.select("g."+a);return f.empty()&&(f=i.append("g").attr("class",a)),f}function vFt(i,a,f){const p=a.width,v=a.height,m=(p+v)*.9,b=[{x:m/2,y:0},{x:m,y:-m/2},{x:m/2,y:-m},{x:0,y:-m/2}],E=S5(i,m,m,b);return f.intersect=function(C){return b3(f,b,C)},E}function wFt(i,a,f){const v=a.height,m=v/4,b=a.width+2*m,E=[{x:m,y:0},{x:b-m,y:0},{x:b,y:-v/2},{x:b-m,y:-v},{x:m,y:-v},{x:0,y:-v/2}],C=S5(i,b,v,E);return f.intersect=function(A){return b3(f,E,A)},C}function mFt(i,a,f){const p=a.width,v=a.height,m=[{x:-v/2,y:0},{x:p,y:0},{x:p,y:-v},{x:-v/2,y:-v},{x:0,y:-v/2}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function yFt(i,a,f){const p=a.width,v=a.height,m=[{x:-2*v/6,y:0},{x:p-v/6,y:0},{x:p+2*v/6,y:-v},{x:v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function xFt(i,a,f){const p=a.width,v=a.height,m=[{x:2*v/6,y:0},{x:p+v/6,y:0},{x:p-2*v/6,y:-v},{x:-v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function kFt(i,a,f){const p=a.width,v=a.height,m=[{x:-2*v/6,y:0},{x:p+2*v/6,y:0},{x:p-v/6,y:-v},{x:v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function EFt(i,a,f){const p=a.width,v=a.height,m=[{x:v/6,y:0},{x:p-v/6,y:0},{x:p+2*v/6,y:-v},{x:-2*v/6,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function TFt(i,a,f){const p=a.width,v=a.height,m=[{x:0,y:0},{x:p+v/2,y:0},{x:p,y:-v/2},{x:p+v/2,y:-v},{x:0,y:-v}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function _Ft(i,a,f){const p=a.height,v=a.width+p/4,m=i.insert("rect",":first-child").attr("rx",p/2).attr("ry",p/2).attr("x",-v/2).attr("y",-p/2).attr("width",v).attr("height",p);return f.intersect=function(b){return p0t(f,b)},m}function CFt(i,a,f){const p=a.width,v=a.height,m=[{x:0,y:0},{x:p,y:0},{x:p,y:-v},{x:0,y:-v},{x:0,y:0},{x:-8,y:0},{x:p+8,y:0},{x:p+8,y:-v},{x:-8,y:-v},{x:-8,y:0}],b=S5(i,p,v,m);return f.intersect=function(E){return b3(f,m,E)},b}function SFt(i,a,f){const p=a.width,v=p/2,m=v/(2.5+p/50),b=a.height+m,E="M 0,"+m+" a "+v+","+m+" 0,0,0 "+p+" 0 a "+v+","+m+" 0,0,0 "+-p+" 0 l 0,"+b+" a "+v+","+m+" 0,0,0 "+p+" 0 l 0,"+-b,C=i.attr("label-offset-y",m).insert("path",":first-child").attr("d",E).attr("transform","translate("+-p/2+","+-(b/2+m)+")");return f.intersect=function(A){const P=p0t(f,A),F=P.x-f.x;if(v!=0&&(Math.abs(F)f.height/2-m)){let j=m*m*(1-F*F/(v*v));j!=0&&(j=Math.sqrt(j)),j=m-j,A.y-f.y>0&&(j=-j),P.y+=j}return P},C}function ABe(i){i.shapes().question=vFt,i.shapes().hexagon=wFt,i.shapes().stadium=_Ft,i.shapes().subroutine=CFt,i.shapes().cylinder=SFt,i.shapes().rect_left_inv_arrow=mFt,i.shapes().lean_right=yFt,i.shapes().lean_left=xFt,i.shapes().trapezoid=kFt,i.shapes().inv_trapezoid=EFt,i.shapes().rect_right_inv_arrow=TFt}function LBe(i){i({question:vFt}),i({hexagon:wFt}),i({stadium:_Ft}),i({subroutine:CFt}),i({cylinder:SFt}),i({rect_left_inv_arrow:mFt}),i({lean_right:yFt}),i({lean_left:xFt}),i({trapezoid:kFt}),i({inv_trapezoid:EFt}),i({rect_right_inv_arrow:TFt})}function S5(i,a,f,p){return i.insert("polygon",":first-child").attr("points",p.map(function(v){return v.x+","+v.y}).join(" ")).attr("transform","translate("+-a/2+","+f/2+")")}const MBe={addToRender:ABe,addToRenderV2:LBe},AFt={},DBe=function(i){const a=Object.keys(i);for(const f of a)AFt[f]=i[f]},LFt=function(i,a,f,p,v,m){const b=p?p.select(`[id="${f}"]`):xr(`[id="${f}"]`),E=v||document;Object.keys(i).forEach(function(A){const P=i[A];let F="default";P.classes.length>0&&(F=P.classes.join(" "));const j=em(P.styles);let R=P.text!==void 0?P.text:P.id,H;if(u1(De().flowchart.htmlLabels)){const J={label:R.replace(/fa[blrs]?:fa-[\w-]+/g,it=>``)};H=u0t(b,J).node(),H.parentNode.removeChild(H)}else{const J=E.createElementNS("http://www.w3.org/2000/svg","text");J.setAttribute("style",j.labelStyle.replace("color:","fill:"));const it=R.split(ui.lineBreakRegex);for(const ft of it){const Tt=E.createElementNS("http://www.w3.org/2000/svg","tspan");Tt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),Tt.setAttribute("dy","1em"),Tt.setAttribute("x","1"),Tt.textContent=ft,J.appendChild(Tt)}H=J}let Y=0,rt="";switch(P.type){case"round":Y=5,rt="rect";break;case"square":rt="rect";break;case"diamond":rt="question";break;case"hexagon":rt="hexagon";break;case"odd":rt="rect_left_inv_arrow";break;case"lean_right":rt="lean_right";break;case"lean_left":rt="lean_left";break;case"trapezoid":rt="trapezoid";break;case"inv_trapezoid":rt="inv_trapezoid";break;case"odd_right":rt="rect_left_inv_arrow";break;case"circle":rt="circle";break;case"ellipse":rt="ellipse";break;case"stadium":rt="stadium";break;case"subroutine":rt="subroutine";break;case"cylinder":rt="cylinder";break;case"group":rt="rect";break;default:rt="rect"}Wt.warn("Adding node",P.id,P.domId),a.setNode(m.db.lookUpDomId(P.id),{labelType:"svg",labelStyle:j.labelStyle,shape:rt,label:H,rx:Y,ry:Y,class:F,style:j.style,id:m.db.lookUpDomId(P.id)})})},MFt=function(i,a,f){let p=0,v,m;if(i.defaultStyle!==void 0){const b=em(i.defaultStyle);v=b.style,m=b.labelStyle}i.forEach(function(b){p++;const E="L-"+b.start+"-"+b.end,C="LS-"+b.start,A="LE-"+b.end,P={};b.type==="arrow_open"?P.arrowhead="none":P.arrowhead="normal";let F="",j="";if(b.style!==void 0){const R=em(b.style);F=R.style,j=R.labelStyle}else switch(b.stroke){case"normal":F="fill:none",v!==void 0&&(F=v),m!==void 0&&(j=m);break;case"dotted":F="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":F=" stroke-width: 3.5px;fill:none";break}P.style=F,P.labelStyle=j,b.interpolate!==void 0?P.curve=Z2(b.interpolate,ig):i.defaultInterpolate!==void 0?P.curve=Z2(i.defaultInterpolate,ig):P.curve=Z2(AFt.curve,ig),b.text===void 0?b.style!==void 0&&(P.arrowheadStyle="fill: #333"):(P.arrowheadStyle="fill: #333",P.labelpos="c",u1(De().flowchart.htmlLabels)?(P.labelType="html",P.label=`${b.text.replace(/fa[blrs]?:fa-[\w-]+/g,R=>``)}`):(P.labelType="text",P.label=b.text.replace(ui.lineBreakRegex,` +`),b.style===void 0&&(P.style=P.style||"stroke: #333; stroke-width: 1.5px;fill:none"),P.labelStyle=P.labelStyle.replace("color:","fill:"))),P.id=E,P.class=C+" "+A,P.minlen=b.length||1,a.setEdge(f.db.lookUpDomId(b.start),f.db.lookUpDomId(b.end),P,p)})},IBe={setConf:DBe,addVertices:LFt,addEdges:MFt,getClasses:function(i,a){return Wt.info("Extracting classes"),a.db.getClasses()},draw:function(i,a,f,p){Wt.info("Drawing flowchart");const{securityLevel:v,flowchart:m}=De();let b;v==="sandbox"&&(b=xr("#i"+a));const E=xr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=v==="sandbox"?b.nodes()[0].contentDocument:document;let A=p.db.getDirection();A===void 0&&(A="TD");const P=m.nodeSpacing||50,F=m.rankSpacing||50,j=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:A,nodesep:P,ranksep:F,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let R;const H=p.db.getSubGraphs();for(let mt=H.length-1;mt>=0;mt--)R=H[mt],p.db.addVertex(R.id,R.title,"group",void 0,R.classes);const Y=p.db.getVertices();Wt.warn("Get vertices",Y);const rt=p.db.getEdges();let J=0;for(J=H.length-1;J>=0;J--){R=H[J],YLt("cluster").append("text");for(let mt=0;mt{a.forEach(v=>{FBe[v](i,f,p)})},FBe={extension:(i,a,f)=>{Wt.trace("Making markers for ",f),i.append("defs").append("marker").attr("id",a+"-extensionStart").attr("class","marker extension "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id",a+"-extensionEnd").attr("class","marker extension "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-compositionStart").attr("class","marker composition "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",a+"-compositionEnd").attr("class","marker composition "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-aggregationStart").attr("class","marker aggregation "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",a+"-aggregationEnd").attr("class","marker aggregation "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-dependencyStart").attr("class","marker dependency "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",a+"-dependencyEnd").attr("class","marker dependency "+a).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-lollipopStart").attr("class","marker lollipop "+a).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},point:(i,a)=>{i.append("marker").attr("id",a+"-pointEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",10).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",a+"-pointStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(i,a)=>{i.append("marker").attr("id",a+"-circleEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",a+"-circleStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(i,a)=>{i.append("marker").attr("id",a+"-crossEnd").attr("class","marker cross "+a).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),i.append("marker").attr("id",a+"-crossStart").attr("class","marker cross "+a).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(i,a)=>{i.append("defs").append("marker").attr("id",a+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},DFt=PBe;function BBe(i,a){a&&i.attr("style",a)}function RBe(i){const a=xr(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),f=a.append("xhtml:div"),p=i.label,v=i.isNode?"nodeLabel":"edgeLabel";return f.html('"+p+""),BBe(f,i.labelStyle),f.style("display","inline-block"),f.style("white-space","nowrap"),f.attr("xmlns","http://www.w3.org/1999/xhtml"),a.node()}const dp=(i,a,f,p)=>{let v=i||"";if(typeof v=="object"&&(v=v[0]),u1(De().flowchart.htmlLabels)){v=v.replace(/\\n|\n/g,"
"),Wt.info("vertexText"+v);const m={isNode:p,label:nP(v).replace(/fa[blrs]?:fa-[\w-]+/g,E=>``),labelStyle:a.replace("fill:","color:")};return RBe(m)}else{const m=document.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("style",a.replace("color:","fill:"));let b=[];typeof v=="string"?b=v.split(/\\n|\n|/gi):Array.isArray(v)?b=v:b=[];for(const E of b){const C=document.createElementNS("http://www.w3.org/2000/svg","tspan");C.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),C.setAttribute("dy","1em"),C.setAttribute("x","0"),f?C.setAttribute("class","title-row"):C.setAttribute("class","row"),C.textContent=E.trim(),m.appendChild(C)}return m}};function jBe(i,a){var{includeImageAlt:f=!0}=a||{};return IFt(i,f)}function IFt(i,a){return i&&typeof i=="object"&&(i.value||(a?i.alt:"")||"children"in i&&OFt(i.children,a)||Array.isArray(i)&&OFt(i,a))||""}function OFt(i,a){for(var f=[],p=-1;++pv?0:v+a:a=a>v?v:a,f=f>0?f:0,p.length<1e4)b=Array.from(p),b.unshift(a,f),[].splice.apply(i,b);else for(f&&[].splice.apply(i,[a,f]);m0?(v3(i,i.length,0,a),i):a}const NFt={}.hasOwnProperty;function $Be(i){const a={};let f=-1;for(;++fb))return;const ct=a.events.length;let yt=ct,st,xt;for(;yt--;)if(a.events[yt][0]==="exit"&&a.events[yt][1].type==="chunkFlow"){if(st){xt=a.events[yt][1].end;break}st=!0}for(J(p),mt=ct;mtft;){const kt=f[Tt];a.containerState=kt[1],kt[0].exit.call(a,i)}f.length=ft}function it(){v.write([null]),m=void 0,v=void 0,a.containerState._closeFlow=void 0}}function ZBe(i,a,f){return Qu(i,i.attempt(this.parser.constructs.document,a,f),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function BFt(i){if(i===null||rv(i)||UBe(i))return 1;if(WBe(i))return 2}function m0t(i,a,f){const p=[];let v=-1;for(;++v1&&i[f][1].end.offset-i[f][1].start.offset>1?2:1;const F=Object.assign({},i[p][1].end),j=Object.assign({},i[f][1].start);RFt(F,-C),RFt(j,C),b={type:C>1?"strongSequence":"emphasisSequence",start:F,end:Object.assign({},i[p][1].end)},E={type:C>1?"strongSequence":"emphasisSequence",start:Object.assign({},i[f][1].start),end:j},m={type:C>1?"strongText":"emphasisText",start:Object.assign({},i[p][1].end),end:Object.assign({},i[f][1].start)},v={type:C>1?"strong":"emphasis",start:Object.assign({},b.start),end:Object.assign({},E.end)},i[p][1].end=Object.assign({},b.start),i[f][1].start=Object.assign({},E.end),A=[],i[p][1].end.offset-i[p][1].start.offset&&(A=nv(A,[["enter",i[p][1],a],["exit",i[p][1],a]])),A=nv(A,[["enter",v,a],["enter",b,a],["exit",b,a],["enter",m,a]]),A=nv(A,m0t(a.parser.constructs.insideSpan.null,i.slice(p+1,f),a)),A=nv(A,[["exit",m,a],["enter",E,a],["exit",E,a],["exit",v,a]]),i[f][1].end.offset-i[f][1].start.offset?(P=2,A=nv(A,[["enter",i[f][1],a],["exit",i[f][1],a]])):P=0,v3(i,p-1,f-p+3,A),f=p+A.length-P-2;break}}for(f=-1;++f=4?b(A):f(A)}function b(A){return A===null?C(A):ja(A)?i.attempt(lRe,b,C)(A):(i.enter("codeFlowValue"),E(A))}function E(A){return A===null||ja(A)?(i.exit("codeFlowValue"),b(A)):(i.consume(A),E)}function C(A){return i.exit("codeIndented"),a(A)}}function fRe(i,a,f){const p=this;return v;function v(b){return p.parser.lazy[p.now().line]?f(b):ja(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v):Qu(i,m,"linePrefix",4+1)(b)}function m(b){const E=p.events[p.events.length-1];return E&&E[1].type==="linePrefix"&&E[2].sliceSerialize(E[1],!0).length>=4?a(b):ja(b)?v(b):f(b)}}const dRe={name:"codeText",tokenize:bRe,resolve:gRe,previous:pRe};function gRe(i){let a=i.length-4,f=3,p,v;if((i[f][1].type==="lineEnding"||i[f][1].type==="space")&&(i[a][1].type==="lineEnding"||i[a][1].type==="space")){for(p=f;++p=4?a(b):i.interrupt(p.parser.constructs.flow,f,a)(b)}}function GFt(i,a,f,p,v,m,b,E,C){const A=C||Number.POSITIVE_INFINITY;let P=0;return F;function F(J){return J===60?(i.enter(p),i.enter(v),i.enter(m),i.consume(J),i.exit(m),j):J===null||J===41||w0t(J)?f(J):(i.enter(p),i.enter(b),i.enter(E),i.enter("chunkString",{contentType:"string"}),Y(J))}function j(J){return J===62?(i.enter(m),i.consume(J),i.exit(m),i.exit(v),i.exit(p),a):(i.enter(E),i.enter("chunkString",{contentType:"string"}),R(J))}function R(J){return J===62?(i.exit("chunkString"),i.exit(E),j(J)):J===null||J===60||ja(J)?f(J):(i.consume(J),J===92?H:R)}function H(J){return J===60||J===62||J===92?(i.consume(J),R):R(J)}function Y(J){return J===40?++P>A?f(J):(i.consume(J),Y):J===41?P--?(i.consume(J),Y):(i.exit("chunkString"),i.exit(E),i.exit(b),i.exit(p),a(J)):J===null||rv(J)?P?f(J):(i.exit("chunkString"),i.exit(E),i.exit(b),i.exit(p),a(J)):w0t(J)?f(J):(i.consume(J),J===92?rt:Y)}function rt(J){return J===40||J===41||J===92?(i.consume(J),Y):Y(J)}}function UFt(i,a,f,p,v,m){const b=this;let E=0,C;return A;function A(R){return i.enter(p),i.enter(v),i.consume(R),i.exit(v),i.enter(m),P}function P(R){return R===null||R===91||R===93&&!C||R===94&&!E&&"_hiddenFootnoteSupport"in b.parser.constructs||E>999?f(R):R===93?(i.exit(m),i.enter(v),i.consume(R),i.exit(v),i.exit(p),a):ja(R)?(i.enter("lineEnding"),i.consume(R),i.exit("lineEnding"),P):(i.enter("chunkString",{contentType:"string"}),F(R))}function F(R){return R===null||R===91||R===93||ja(R)||E++>999?(i.exit("chunkString"),P(R)):(i.consume(R),C=C||!Bf(R),R===92?j:F)}function j(R){return R===91||R===92||R===93?(i.consume(R),E++,F):F(R)}}function WFt(i,a,f,p,v,m){let b;return E;function E(j){return i.enter(p),i.enter(v),i.consume(j),i.exit(v),b=j===40?41:j,C}function C(j){return j===b?(i.enter(v),i.consume(j),i.exit(v),i.exit(p),a):(i.enter(m),A(j))}function A(j){return j===b?(i.exit(m),C(b)):j===null?f(j):ja(j)?(i.enter("lineEnding"),i.consume(j),i.exit("lineEnding"),Qu(i,A,"linePrefix")):(i.enter("chunkString",{contentType:"string"}),P(j))}function P(j){return j===b||j===null||ja(j)?(i.exit("chunkString"),A(j)):(i.consume(j),j===92?F:P)}function F(j){return j===b||j===92?(i.consume(j),P):P(j)}}function vP(i,a){let f;return p;function p(v){return ja(v)?(i.enter("lineEnding"),i.consume(v),i.exit("lineEnding"),f=!0,p):Bf(v)?Qu(i,p,f?"linePrefix":"lineSuffix")(v):a(v)}}function rL(i){return i.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const ERe={name:"definition",tokenize:_Re},TRe={tokenize:CRe,partial:!0};function _Re(i,a,f){const p=this;let v;return m;function m(C){return i.enter("definition"),UFt.call(p,i,b,f,"definitionLabel","definitionLabelMarker","definitionLabelString")(C)}function b(C){return v=rL(p.sliceSerialize(p.events[p.events.length-1][1]).slice(1,-1)),C===58?(i.enter("definitionMarker"),i.consume(C),i.exit("definitionMarker"),vP(i,GFt(i,i.attempt(TRe,Qu(i,E,"whitespace"),Qu(i,E,"whitespace")),f,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString"))):f(C)}function E(C){return C===null||ja(C)?(i.exit("definition"),p.parser.defined.includes(v)||p.parser.defined.push(v),a(C)):f(C)}}function CRe(i,a,f){return p;function p(b){return rv(b)?vP(i,v)(b):f(b)}function v(b){return b===34||b===39||b===40?WFt(i,Qu(i,m,"whitespace"),f,"definitionTitle","definitionTitleMarker","definitionTitleString")(b):f(b)}function m(b){return b===null||ja(b)?a(b):f(b)}}const SRe={name:"hardBreakEscape",tokenize:ARe};function ARe(i,a,f){return p;function p(m){return i.enter("hardBreakEscape"),i.enter("escapeMarker"),i.consume(m),v}function v(m){return ja(m)?(i.exit("escapeMarker"),i.exit("hardBreakEscape"),a(m)):f(m)}}const LRe={name:"headingAtx",tokenize:DRe,resolve:MRe};function MRe(i,a){let f=i.length-2,p=3,v,m;return i[p][1].type==="whitespace"&&(p+=2),f-2>p&&i[f][1].type==="whitespace"&&(f-=2),i[f][1].type==="atxHeadingSequence"&&(p===f-1||f-4>p&&i[f-2][1].type==="whitespace")&&(f-=p+1===f?2:4),f>p&&(v={type:"atxHeadingText",start:i[p][1].start,end:i[f][1].end},m={type:"chunkText",start:i[p][1].start,end:i[f][1].end,contentType:"text"},v3(i,p,f-p+1,[["enter",v,a],["enter",m,a],["exit",m,a],["exit",v,a]])),i}function DRe(i,a,f){const p=this;let v=0;return m;function m(P){return i.enter("atxHeading"),i.enter("atxHeadingSequence"),b(P)}function b(P){return P===35&&v++<6?(i.consume(P),b):P===null||rv(P)?(i.exit("atxHeadingSequence"),p.interrupt?a(P):E(P)):f(P)}function E(P){return P===35?(i.enter("atxHeadingSequence"),C(P)):P===null||ja(P)?(i.exit("atxHeading"),a(P)):Bf(P)?Qu(i,E,"whitespace")(P):(i.enter("atxHeadingText"),A(P))}function C(P){return P===35?(i.consume(P),C):(i.exit("atxHeadingSequence"),E(P))}function A(P){return P===null||P===35||rv(P)?(i.exit("atxHeadingText"),E(P)):(i.consume(P),A)}}const IRe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],KFt=["pre","script","style","textarea"],ORe={name:"htmlFlow",tokenize:FRe,resolveTo:PRe,concrete:!0},NRe={tokenize:BRe,partial:!0};function PRe(i){let a=i.length;for(;a--&&!(i[a][0]==="enter"&&i[a][1].type==="htmlFlow"););return a>1&&i[a-2][1].type==="linePrefix"&&(i[a][1].start=i[a-2][1].start,i[a+1][1].start=i[a-2][1].start,i.splice(a-2,2)),i}function FRe(i,a,f){const p=this;let v,m,b,E,C;return A;function A(Ot){return i.enter("htmlFlow"),i.enter("htmlFlowData"),i.consume(Ot),P}function P(Ot){return Ot===33?(i.consume(Ot),F):Ot===47?(i.consume(Ot),H):Ot===63?(i.consume(Ot),v=3,p.interrupt?a:Rt):w3(Ot)?(i.consume(Ot),b=String.fromCharCode(Ot),m=!0,Y):f(Ot)}function F(Ot){return Ot===45?(i.consume(Ot),v=2,j):Ot===91?(i.consume(Ot),v=5,b="CDATA[",E=0,R):w3(Ot)?(i.consume(Ot),v=4,p.interrupt?a:Rt):f(Ot)}function j(Ot){return Ot===45?(i.consume(Ot),p.interrupt?a:Rt):f(Ot)}function R(Ot){return Ot===b.charCodeAt(E++)?(i.consume(Ot),E===b.length?p.interrupt?a:ht:R):f(Ot)}function H(Ot){return w3(Ot)?(i.consume(Ot),b=String.fromCharCode(Ot),Y):f(Ot)}function Y(Ot){return Ot===null||Ot===47||Ot===62||rv(Ot)?Ot!==47&&m&&KFt.includes(b.toLowerCase())?(v=1,p.interrupt?a(Ot):ht(Ot)):IRe.includes(b.toLowerCase())?(v=6,Ot===47?(i.consume(Ot),rt):p.interrupt?a(Ot):ht(Ot)):(v=7,p.interrupt&&!p.parser.lazy[p.now().line]?f(Ot):m?it(Ot):J(Ot)):Ot===45||om(Ot)?(i.consume(Ot),b+=String.fromCharCode(Ot),Y):f(Ot)}function rt(Ot){return Ot===62?(i.consume(Ot),p.interrupt?a:ht):f(Ot)}function J(Ot){return Bf(Ot)?(i.consume(Ot),J):st(Ot)}function it(Ot){return Ot===47?(i.consume(Ot),st):Ot===58||Ot===95||w3(Ot)?(i.consume(Ot),ft):Bf(Ot)?(i.consume(Ot),it):st(Ot)}function ft(Ot){return Ot===45||Ot===46||Ot===58||Ot===95||om(Ot)?(i.consume(Ot),ft):Tt(Ot)}function Tt(Ot){return Ot===61?(i.consume(Ot),kt):Bf(Ot)?(i.consume(Ot),Tt):it(Ot)}function kt(Ot){return Ot===null||Ot===60||Ot===61||Ot===62||Ot===96?f(Ot):Ot===34||Ot===39?(i.consume(Ot),C=Ot,mt):Bf(Ot)?(i.consume(Ot),kt):(C=null,ct(Ot))}function mt(Ot){return Ot===null||ja(Ot)?f(Ot):Ot===C?(i.consume(Ot),yt):(i.consume(Ot),mt)}function ct(Ot){return Ot===null||Ot===34||Ot===39||Ot===60||Ot===61||Ot===62||Ot===96||rv(Ot)?Tt(Ot):(i.consume(Ot),ct)}function yt(Ot){return Ot===47||Ot===62||Bf(Ot)?it(Ot):f(Ot)}function st(Ot){return Ot===62?(i.consume(Ot),xt):f(Ot)}function xt(Ot){return Bf(Ot)?(i.consume(Ot),xt):Ot===null||ja(Ot)?ht(Ot):f(Ot)}function ht(Ot){return Ot===45&&v===2?(i.consume(Ot),Pt):Ot===60&&v===1?(i.consume(Ot),pt):Ot===62&&v===4?(i.consume(Ot),Bt):Ot===63&&v===3?(i.consume(Ot),Rt):Ot===93&&v===5?(i.consume(Ot),X):ja(Ot)&&(v===6||v===7)?i.check(NRe,Bt,dt)(Ot):Ot===null||ja(Ot)?dt(Ot):(i.consume(Ot),ht)}function dt(Ot){return i.exit("htmlFlowData"),Ct(Ot)}function Ct(Ot){return Ot===null?vt(Ot):ja(Ot)?i.attempt({tokenize:tt,partial:!0},Ct,vt)(Ot):(i.enter("htmlFlowData"),ht(Ot))}function tt(Ot,Vt,qe){return _n;function _n(Wn){return Ot.enter("lineEnding"),Ot.consume(Wn),Ot.exit("lineEnding"),Te}function Te(Wn){return p.parser.lazy[p.now().line]?qe(Wn):Vt(Wn)}}function Pt(Ot){return Ot===45?(i.consume(Ot),Rt):ht(Ot)}function pt(Ot){return Ot===47?(i.consume(Ot),b="",Ft):ht(Ot)}function Ft(Ot){return Ot===62&&KFt.includes(b.toLowerCase())?(i.consume(Ot),Bt):w3(Ot)&&b.length<8?(i.consume(Ot),b+=String.fromCharCode(Ot),Ft):ht(Ot)}function X(Ot){return Ot===93?(i.consume(Ot),Rt):ht(Ot)}function Rt(Ot){return Ot===62?(i.consume(Ot),Bt):Ot===45&&v===2?(i.consume(Ot),Rt):ht(Ot)}function Bt(Ot){return Ot===null||ja(Ot)?(i.exit("htmlFlowData"),vt(Ot)):(i.consume(Ot),Bt)}function vt(Ot){return i.exit("htmlFlow"),a(Ot)}}function BRe(i,a,f){return p;function p(v){return i.exit("htmlFlowData"),i.enter("lineEndingBlank"),i.consume(v),i.exit("lineEndingBlank"),i.attempt(gK,a,f)}}const RRe={name:"htmlText",tokenize:jRe};function jRe(i,a,f){const p=this;let v,m,b,E;return C;function C(vt){return i.enter("htmlText"),i.enter("htmlTextData"),i.consume(vt),A}function A(vt){return vt===33?(i.consume(vt),P):vt===47?(i.consume(vt),ct):vt===63?(i.consume(vt),kt):w3(vt)?(i.consume(vt),xt):f(vt)}function P(vt){return vt===45?(i.consume(vt),F):vt===91?(i.consume(vt),m="CDATA[",b=0,rt):w3(vt)?(i.consume(vt),Tt):f(vt)}function F(vt){return vt===45?(i.consume(vt),j):f(vt)}function j(vt){return vt===null||vt===62?f(vt):vt===45?(i.consume(vt),R):H(vt)}function R(vt){return vt===null||vt===62?f(vt):H(vt)}function H(vt){return vt===null?f(vt):vt===45?(i.consume(vt),Y):ja(vt)?(E=H,X(vt)):(i.consume(vt),H)}function Y(vt){return vt===45?(i.consume(vt),Bt):H(vt)}function rt(vt){return vt===m.charCodeAt(b++)?(i.consume(vt),b===m.length?J:rt):f(vt)}function J(vt){return vt===null?f(vt):vt===93?(i.consume(vt),it):ja(vt)?(E=J,X(vt)):(i.consume(vt),J)}function it(vt){return vt===93?(i.consume(vt),ft):J(vt)}function ft(vt){return vt===62?Bt(vt):vt===93?(i.consume(vt),ft):J(vt)}function Tt(vt){return vt===null||vt===62?Bt(vt):ja(vt)?(E=Tt,X(vt)):(i.consume(vt),Tt)}function kt(vt){return vt===null?f(vt):vt===63?(i.consume(vt),mt):ja(vt)?(E=kt,X(vt)):(i.consume(vt),kt)}function mt(vt){return vt===62?Bt(vt):kt(vt)}function ct(vt){return w3(vt)?(i.consume(vt),yt):f(vt)}function yt(vt){return vt===45||om(vt)?(i.consume(vt),yt):st(vt)}function st(vt){return ja(vt)?(E=st,X(vt)):Bf(vt)?(i.consume(vt),st):Bt(vt)}function xt(vt){return vt===45||om(vt)?(i.consume(vt),xt):vt===47||vt===62||rv(vt)?ht(vt):f(vt)}function ht(vt){return vt===47?(i.consume(vt),Bt):vt===58||vt===95||w3(vt)?(i.consume(vt),dt):ja(vt)?(E=ht,X(vt)):Bf(vt)?(i.consume(vt),ht):Bt(vt)}function dt(vt){return vt===45||vt===46||vt===58||vt===95||om(vt)?(i.consume(vt),dt):Ct(vt)}function Ct(vt){return vt===61?(i.consume(vt),tt):ja(vt)?(E=Ct,X(vt)):Bf(vt)?(i.consume(vt),Ct):ht(vt)}function tt(vt){return vt===null||vt===60||vt===61||vt===62||vt===96?f(vt):vt===34||vt===39?(i.consume(vt),v=vt,Pt):ja(vt)?(E=tt,X(vt)):Bf(vt)?(i.consume(vt),tt):(i.consume(vt),v=void 0,Ft)}function Pt(vt){return vt===v?(i.consume(vt),pt):vt===null?f(vt):ja(vt)?(E=Pt,X(vt)):(i.consume(vt),Pt)}function pt(vt){return vt===62||vt===47||rv(vt)?ht(vt):f(vt)}function Ft(vt){return vt===null||vt===34||vt===39||vt===60||vt===61||vt===96?f(vt):vt===62||rv(vt)?ht(vt):(i.consume(vt),Ft)}function X(vt){return i.exit("htmlTextData"),i.enter("lineEnding"),i.consume(vt),i.exit("lineEnding"),Qu(i,Rt,"linePrefix",p.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Rt(vt){return i.enter("htmlTextData"),E(vt)}function Bt(vt){return vt===62?(i.consume(vt),i.exit("htmlTextData"),i.exit("htmlText"),a):f(vt)}}const E0t={name:"labelEnd",tokenize:GRe,resolveTo:VRe,resolveAll:HRe},$Re={tokenize:URe},zRe={tokenize:WRe},qRe={tokenize:KRe};function HRe(i){let a=-1,f;for(;++a-1&&(b[0]=b[0].slice(p)),m>0&&b.push(i[v].slice(0,m))),b}function wje(i,a){let f=-1;const p=[];let v;for(;++f13&&f<32||f>126&&f<160||f>55295&&f<57344||f>64975&&f<65008||(f&65535)===65535||(f&65535)===65534||f>1114111?"�":String.fromCharCode(f)}const Cje=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Sje(i){return i.replace(Cje,Aje)}function Aje(i,a,f){if(a)return a;if(f.charCodeAt(0)===35){const v=f.charCodeAt(1),m=v===120||v===88;return JFt(f.slice(m?2:1),m?16:10)}return x0t(f)||i}function bK(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?tBt(i.position):"start"in i||"end"in i?tBt(i):"line"in i||"column"in i?_0t(i):""}function _0t(i){return eBt(i&&i.line)+":"+eBt(i&&i.column)}function tBt(i){return _0t(i&&i.start)+"-"+_0t(i&&i.end)}function eBt(i){return i&&typeof i=="number"?i:1}const nBt={}.hasOwnProperty,rBt=function(i,a,f){return typeof a!="string"&&(f=a,a=void 0),Lje(f)(_je(Eje(f).document().write(Tje()(i,a,!0))))};function Lje(i){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:E(qt),autolinkProtocol:ht,autolinkEmail:ht,atxHeading:E(ye),blockQuote:E(Ve),characterEscape:ht,characterReference:ht,codeFenced:E(Ee),codeFencedFenceInfo:C,codeFencedFenceMeta:C,codeIndented:E(Ee,C),codeText:E(He,C),codeTextData:ht,data:ht,codeFlowValue:ht,definition:E(Ce),definitionDestinationString:C,definitionLabelString:C,definitionTitleString:C,emphasis:E($e),hardBreakEscape:E(fn),hardBreakTrailing:E(fn),htmlFlow:E(Yt,C),htmlFlowData:ht,htmlText:E(Yt,C),htmlTextData:ht,image:E(Mi),label:C,link:E(qt),listItem:E(Se),listItemValue:H,listOrdered:E(zi,R),listUnordered:E(zi),paragraph:E(ki),reference:_n,referenceString:C,resourceDestinationString:C,resourceTitleString:C,setextHeading:E(ye),strong:E(Ri),thematicBreak:E(bi)},exit:{atxHeading:P(),atxHeadingSequence:ct,autolink:P(),autolinkEmail:ke,autolinkProtocol:ne,blockQuote:P(),characterEscapeValue:dt,characterReferenceMarkerHexadecimal:Wn,characterReferenceMarkerNumeric:Wn,characterReferenceValue:Ae,codeFenced:P(it),codeFencedFence:J,codeFencedFenceInfo:Y,codeFencedFenceMeta:rt,codeFlowValue:dt,codeIndented:P(ft),codeText:P(Ft),codeTextData:dt,data:dt,definition:P(),definitionDestinationString:mt,definitionLabelString:Tt,definitionTitleString:kt,emphasis:P(),hardBreakEscape:P(tt),hardBreakTrailing:P(tt),htmlFlow:P(Pt),htmlFlowData:dt,htmlText:P(pt),htmlTextData:dt,image:P(Rt),label:vt,labelText:Bt,lineEnding:Ct,link:P(X),listItem:P(),listOrdered:P(),listUnordered:P(),paragraph:P(),referenceString:Te,resourceDestinationString:Ot,resourceTitleString:Vt,resource:qe,setextHeading:P(xt),setextHeadingLineSequence:st,setextHeadingText:yt,strong:P(),thematicBreak:P()}};iBt(a,(i||{}).mdastExtensions||[]);const f={};return p;function p(dn){let Nn={type:"root",children:[]};const Wr={stack:[Nn],tokenStack:[],config:a,enter:A,exit:F,buffer:C,resume:j,setData:m,getData:b},Li=[];let is=-1;for(;++is0){const Ts=Wr.tokenStack[Wr.tokenStack.length-1];(Ts[1]||sBt).call(Wr,void 0,Ts[0])}for(Nn.position={start:ck(dn.length>0?dn[0][1].start:{line:1,column:1,offset:0}),end:ck(dn.length>0?dn[dn.length-2][1].end:{line:1,column:1,offset:0})},is=-1;++is{P!==0&&(v++,p.push([])),A.split(" ").forEach(F=>{F&&p[v].push({content:F,type:E})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(C=>{m(C,b.type)})}return f.forEach(b=>{b.type==="paragraph"&&b.children.forEach(E=>{m(E)})}),p}function Oje(i){const{children:a}=rBt(i);function f(p){return p.type==="text"?p.value.replace(/\n/g,"
"):p.type==="strong"?`${p.children.map(f).join("")}`:p.type==="emphasis"?`${p.children.map(f).join("")}`:p.type==="paragraph"?`

${p.children.map(f).join("")}

`:`Unsupported markdown: ${p.type}`}return a.map(f).join("")}function Nje(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function Pje(i,a){const f=Nje(a.content);return aBt(i,[],f,a.type)}function aBt(i,a,f,p){if(f.length===0)return[{content:a.join(""),type:p},{content:"",type:p}];const[v,...m]=f,b=[...a,v];return i([{content:b.join(""),type:p}])?aBt(i,b,m,p):(a.length===0&&v&&(a.push(v),f.shift()),[{content:a.join(""),type:p},{content:f.join(""),type:p}])}function Fje(i,a){if(i.some(({content:f})=>f.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return C0t(i,a)}function C0t(i,a,f=[],p=[]){if(i.length===0)return p.length>0&&f.push(p),f.length>0?f:[];let v="";i[0].content===" "&&(v=" ",i.shift());const m=i.shift()??{content:" ",type:"normal"},b=[...p];if(v!==""&&b.push({content:v,type:"normal"}),b.push(m),a(b))return C0t(i,a,f,b);if(p.length>0)f.push(p),i.unshift(m);else if(m.content){const[E,C]=Pje(a,m);f.push([E]),C.content&&i.unshift(C)}return C0t(i,a,f)}function Bje(i,a){a&&i.attr("style",a)}function Rje(i,a,f,p,v=!1){const m=i.append("foreignObject"),b=m.append("xhtml:div"),E=a.label,C=a.isNode?"nodeLabel":"edgeLabel";b.html(` + "+E+""),Bje(b,a.labelStyle),b.style("display","table-cell"),b.style("white-space","nowrap"),b.style("max-width",f+"px"),b.attr("xmlns","http://www.w3.org/1999/xhtml"),v&&b.attr("class","labelBkg");let A=b.node().getBoundingClientRect();return A.width===f&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",f+"px"),A=b.node().getBoundingClientRect()),m.style("width",A.width),m.style("height",A.height),m.node()}function oBt(i,a,f){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*f-.1+"em").attr("dy",f+"em")}function jje(i,a,f){const p=i.append("text"),v=oBt(p,1,a);cBt(v,f);const m=v.node().getComputedTextLength();return p.remove(),m}function $je(i,a,f,p=!1){const m=a.append("g"),b=m.insert("rect").attr("class","background"),E=m.append("text").attr("y","-10.1");let C=0;for(const A of f){const P=j=>jje(m,1.1,j)<=i,F=P(A)?[A]:Fje(A,P);for(const j of F){const R=oBt(E,C,1.1);cBt(R,j),C++}}if(p){const A=E.node().getBBox(),P=2;return b.attr("x",-P).attr("y",-P).attr("width",A.width+2*P).attr("height",A.height+2*P),m.node()}else return E.node()}function cBt(i,a){i.text(""),a.forEach((f,p)=>{const v=i.append("tspan").attr("font-style",f.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",f.type==="strong"?"bold":"normal");p===0?v.text(f.content):v.text(" "+f.content)})}const vK=(i,a="",{style:f="",isTitle:p=!1,classes:v="",useHtmlLabels:m=!0,isNode:b=!0,width:E=200,addSvgBackground:C=!1}={})=>{if(Wt.info("createText",a,f,p,v,m,b,C),m){const A=Oje(a),P={isNode:b,label:nP(A).replace(/fa[blrs]?:fa-[\w-]+/g,j=>``),labelStyle:f.replace("fill:","color:")};return Rje(i,P,E,v,C)}else{const A=Ije(a);return $je(E,i,A,C)}},Od=async(i,a,f,p)=>{let v;const m=a.useHtmlLabels||u1(De().flowchart.htmlLabels);f?v=f:v="node default";const b=i.insert("g").attr("class",v).attr("id",a.domId||a.id),E=b.insert("g").attr("class","label").attr("style",a.labelStyle);let C;a.labelText===void 0?C="":C=typeof a.labelText=="string"?a.labelText:a.labelText[0];const A=E.node();let P;a.labelType==="markdown"?P=vK(E,v0(nP(C),De()),{useHtmlLabels:m,width:a.width||De().flowchart.wrappingWidth,classes:"markdown-node-label"}):P=A.appendChild(dp(v0(nP(C),De()),a.labelStyle,!1,p));let F=P.getBBox();const j=a.padding/2;if(u1(De().flowchart.htmlLabels)){const R=P.children[0],H=xr(P),Y=R.getElementsByTagName("img");if(Y){const rt=C.replace(/]*>/g,"").trim()==="";await Promise.all([...Y].map(J=>new Promise(it=>{function ft(){if(J.style.display="flex",J.style.flexDirection="column",rt){const Tt=De().fontSize?De().fontSize:window.getComputedStyle(document.body).fontSize,kt=5;J.style.width=parseInt(Tt,10)*kt+"px"}else J.style.width="100%";it(J)}setTimeout(()=>{J.complete&&ft()}),J.addEventListener("error",ft),J.addEventListener("load",ft)})))}F=R.getBoundingClientRect(),H.attr("width",F.width),H.attr("height",F.height)}return m?E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"):E.attr("transform","translate(0, "+-F.height/2+")"),a.centerLabel&&E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),E.insert("rect",":first-child"),{shapeSvg:b,bbox:F,halfPadding:j,label:E}},ef=(i,a)=>{const f=a.node().getBBox();i.width=f.width,i.height=f.height};function L5(i,a,f,p){return i.insert("polygon",":first-child").attr("points",p.map(function(v){return v.x+","+v.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-a/2+","+f/2+")")}let Xo={},cm={},uBt={};const zje=()=>{cm={},uBt={},Xo={}},wK=(i,a)=>(Wt.trace("In isDecendant",a," ",i," = ",cm[a].includes(i)),!!cm[a].includes(i)),qje=(i,a)=>(Wt.info("Decendants of ",a," is ",cm[a]),Wt.info("Edge is ",i),i.v===a||i.w===a?!1:cm[a]?cm[a].includes(i.v)||wK(i.v,a)||wK(i.w,a)||cm[a].includes(i.w):(Wt.debug("Tilt, ",a,",not in decendants"),!1)),lBt=(i,a,f,p)=>{Wt.warn("Copying children of ",i,"root",p,"data",a.node(i),p);const v=a.children(i)||[];i!==p&&v.push(i),Wt.warn("Copying (nodes) clusterId",i,"nodes",v),v.forEach(m=>{if(a.children(m).length>0)lBt(m,a,f,p);else{const b=a.node(m);Wt.info("cp ",m," to ",p," with parent ",i),f.setNode(m,b),p!==a.parent(m)&&(Wt.warn("Setting parent",m,a.parent(m)),f.setParent(m,a.parent(m))),i!==p&&m!==i?(Wt.debug("Setting parent",m,i),f.setParent(m,i)):(Wt.info("In copy ",i,"root",p,"data",a.node(i),p),Wt.debug("Not Setting parent for node=",m,"cluster!==rootId",i!==p,"node!==clusterId",m!==i));const E=a.edges(m);Wt.debug("Copying Edges",E),E.forEach(C=>{Wt.info("Edge",C);const A=a.edge(C.v,C.w,C.name);Wt.info("Edge data",A,p);try{qje(C,p)?(Wt.info("Copying as ",C.v,C.w,A,C.name),f.setEdge(C.v,C.w,A,C.name),Wt.info("newGraph edges ",f.edges(),f.edge(f.edges()[0]))):Wt.info("Skipping copy of edge ",C.v,"-->",C.w," rootId: ",p," clusterId:",i)}catch(P){Wt.error(P)}})}Wt.debug("Removing node",m),a.removeNode(m)})},hBt=(i,a)=>{const f=a.children(i);let p=[...f];for(const v of f)uBt[v]=i,p=[...p,...hBt(v,a)];return p},wP=(i,a)=>{Wt.trace("Searching",i);const f=a.children(i);if(Wt.trace("Searching children of id ",i,f),f.length<1)return Wt.trace("This is a valid node",i),i;for(const p of f){const v=wP(p,a);if(v)return Wt.trace("Found replacement for",i," => ",v),v}},mK=i=>!Xo[i]||!Xo[i].externalConnections?i:Xo[i]?Xo[i].id:i,Hje=(i,a)=>{if(!i||a>10){Wt.debug("Opting out, no graph ");return}else Wt.debug("Opting in, graph ");i.nodes().forEach(function(f){i.children(f).length>0&&(Wt.warn("Cluster identified",f," Replacement id in edges: ",wP(f,i)),cm[f]=hBt(f,i),Xo[f]={id:wP(f,i),clusterData:i.node(f)})}),i.nodes().forEach(function(f){const p=i.children(f),v=i.edges();p.length>0?(Wt.debug("Cluster identified",f,cm),v.forEach(m=>{if(m.v!==f&&m.w!==f){const b=wK(m.v,f),E=wK(m.w,f);b^E&&(Wt.warn("Edge: ",m," leaves cluster ",f),Wt.warn("Decendants of XXX ",f,": ",cm[f]),Xo[f].externalConnections=!0)}})):Wt.debug("Not a cluster ",f,cm)}),i.edges().forEach(function(f){const p=i.edge(f);Wt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(f)),Wt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(i.edge(f)));let v=f.v,m=f.w;if(Wt.warn("Fix XXX",Xo,"ids:",f.v,f.w,"Translating: ",Xo[f.v]," --- ",Xo[f.w]),Xo[f.v]&&Xo[f.w]&&Xo[f.v]===Xo[f.w]){Wt.warn("Fixing and trixing link to self - removing XXX",f.v,f.w,f.name),Wt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),v=mK(f.v),m=mK(f.w),i.removeEdge(f.v,f.w,f.name);const b=f.w+"---"+f.v;i.setNode(b,{domId:b,id:b,labelStyle:"",labelText:p.label,padding:0,shape:"labelRect",style:""});const E=JSON.parse(JSON.stringify(p)),C=JSON.parse(JSON.stringify(p));E.label="",E.arrowTypeEnd="none",C.label="",E.fromCluster=f.v,C.toCluster=f.v,i.setEdge(v,b,E,f.name+"-cyclic-special"),i.setEdge(b,m,C,f.name+"-cyclic-special")}else(Xo[f.v]||Xo[f.w])&&(Wt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),v=mK(f.v),m=mK(f.w),i.removeEdge(f.v,f.w,f.name),v!==f.v&&(p.fromCluster=f.v),m!==f.w&&(p.toCluster=f.w),Wt.warn("Fix Replacing with XXX",v,m,f.name),i.setEdge(v,m,p,f.name))}),Wt.warn("Adjusted Graph",A5(i)),fBt(i,0),Wt.trace(Xo)},fBt=(i,a)=>{if(Wt.warn("extractor - ",a,A5(i),i.children("D")),a>10){Wt.error("Bailing out");return}let f=i.nodes(),p=!1;for(const v of f){const m=i.children(v);p=p||m.length>0}if(!p){Wt.debug("Done, no node has children",i.nodes());return}Wt.debug("Nodes = ",f,a);for(const v of f)if(Wt.debug("Extracting node",v,Xo,Xo[v]&&!Xo[v].externalConnections,!i.parent(v),i.node(v),i.children("D")," Depth ",a),!Xo[v])Wt.debug("Not a cluster",v,a);else if(!Xo[v].externalConnections&&i.children(v)&&i.children(v).length>0){Wt.warn("Cluster without external connections, without a parent and with children",v,a);let b=i.graph().rankdir==="TB"?"LR":"TB";Xo[v]&&Xo[v].clusterData&&Xo[v].clusterData.dir&&(b=Xo[v].clusterData.dir,Wt.warn("Fixing dir",Xo[v].clusterData.dir,b));const E=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:b,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Wt.warn("Old graph before copy",A5(i)),lBt(v,i,E,v),i.setNode(v,{clusterNode:!0,id:v,clusterData:Xo[v].clusterData,labelText:Xo[v].labelText,graph:E}),Wt.warn("New graph after copy node: (",v,")",A5(E)),Wt.debug("Old graph after copy",A5(i))}else Wt.warn("Cluster ** ",v," **not meeting the criteria !externalConnections:",!Xo[v].externalConnections," no parent: ",!i.parent(v)," children ",i.children(v)&&i.children(v).length>0,i.children("D"),a),Wt.debug(Xo);f=i.nodes(),Wt.warn("New list of nodes",f);for(const v of f){const m=i.node(v);Wt.warn(" Now next level",v,m),m.clusterNode&&fBt(m.graph,a+1)}},dBt=(i,a)=>{if(a.length===0)return[];let f=Object.assign(a);return a.forEach(p=>{const v=i.children(p),m=dBt(i,v);f=[...f,...m]}),f},Vje=i=>dBt(i,i.children());function Gje(i,a){return i.intersect(a)}function gBt(i,a,f,p){var v=i.x,m=i.y,b=v-p.x,E=m-p.y,C=Math.sqrt(a*a*E*E+f*f*b*b),A=Math.abs(a*f*b/C);p.x0}function Kje(i,a,f){var p=i.x,v=i.y,m=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;typeof a.forEach=="function"?a.forEach(function(H){b=Math.min(b,H.x),E=Math.min(E,H.y)}):(b=Math.min(b,a.x),E=Math.min(E,a.y));for(var C=p-i.width/2-b,A=v-i.height/2-E,P=0;P1&&m.sort(function(H,Y){var rt=H.x-f.x,J=H.y-f.y,it=Math.sqrt(rt*rt+J*J),ft=Y.x-f.x,Tt=Y.y-f.y,kt=Math.sqrt(ft*ft+Tt*Tt);return it{var f=i.x,p=i.y,v=a.x-f,m=a.y-p,b=i.width/2,E=i.height/2,C,A;return Math.abs(m)*b>Math.abs(v)*E?(m<0&&(E=-E),C=m===0?0:E*v/m,A=E):(v<0&&(b=-b),C=b,A=v===0?0:b*m/v),{x:f+C,y:p+A}},Th={node:Gje,circle:Uje,ellipse:gBt,polygon:Kje,rect:mP},Yje=async(i,a)=>{a.useHtmlLabels||De().flowchart.htmlLabels||(a.centerLabel=!0);const{shapeSvg:p,bbox:v,halfPadding:m}=await Od(i,a,"node "+a.classes,!0);Wt.info("Classes = ",a.classes);const b=p.insert("rect",":first-child");return b.attr("rx",a.rx).attr("ry",a.ry).attr("x",-v.width/2-m).attr("y",-v.height/2-m).attr("width",v.width+a.padding).attr("height",v.height+a.padding),ef(a,b),a.intersect=function(E){return Th.rect(a,E)},p};let bBt=0;const Xje=function(i,a,f,p,v){const m=function(it){switch(it){case v.db.relationType.AGGREGATION:return"aggregation";case v.db.relationType.EXTENSION:return"extension";case v.db.relationType.COMPOSITION:return"composition";case v.db.relationType.DEPENDENCY:return"dependency";case v.db.relationType.LOLLIPOP:return"lollipop"}};a.points=a.points.filter(it=>!Number.isNaN(it.y));const b=a.points,E=YE().x(function(it){return it.x}).y(function(it){return it.y}).curve(MA),C=i.append("path").attr("d",E(b)).attr("id","edge"+bBt).attr("class","relation");let A="";p.arrowMarkerAbsolute&&(A=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,A=A.replace(/\(/g,"\\("),A=A.replace(/\)/g,"\\)")),f.relation.lineType==1&&C.attr("class","relation dashed-line"),f.relation.lineType==10&&C.attr("class","relation dotted-line"),f.relation.type1!=="none"&&C.attr("marker-start","url("+A+"#"+m(f.relation.type1)+"Start)"),f.relation.type2!=="none"&&C.attr("marker-end","url("+A+"#"+m(f.relation.type2)+"End)");let P,F;const j=a.points.length;let R=to.calcLabelPosition(a.points);P=R.x,F=R.y;let H,Y,rt,J;if(j%2!==0&&j>1){let it=to.calcCardinalityPosition(f.relation.type1!=="none",a.points,a.points[0]),ft=to.calcCardinalityPosition(f.relation.type2!=="none",a.points,a.points[j-1]);Wt.debug("cardinality_1_point "+JSON.stringify(it)),Wt.debug("cardinality_2_point "+JSON.stringify(ft)),H=it.x,Y=it.y,rt=ft.x,J=ft.y}if(f.title!==void 0){const it=i.append("g").attr("class","classLabel"),ft=it.append("text").attr("class","label").attr("x",P).attr("y",F).attr("fill","red").attr("text-anchor","middle").text(f.title);window.label=ft;const Tt=ft.node().getBBox();it.insert("rect",":first-child").attr("class","box").attr("x",Tt.x-p.padding/2).attr("y",Tt.y-p.padding/2).attr("width",Tt.width+p.padding).attr("height",Tt.height+p.padding)}Wt.info("Rendering relation "+JSON.stringify(f)),f.relationTitle1!==void 0&&f.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",H).attr("y",Y).attr("fill","black").attr("font-size","6").text(f.relationTitle1),f.relationTitle2!==void 0&&f.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",rt).attr("y",J).attr("fill","black").attr("font-size","6").text(f.relationTitle2),bBt++},Qje=function(i,a,f,p){Wt.debug("Rendering class ",a,f);const v=a.id,m={id:v,label:a.id,width:0,height:0},b=i.append("g").attr("id",p.db.lookUpDomId(v)).attr("class","classGroup");let E;a.link?E=b.append("svg:a").attr("xlink:href",a.link).attr("target",a.linkTarget).append("text").attr("y",f.textHeight+f.padding).attr("x",0):E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);let C=!0;a.annotations.forEach(function(kt){const mt=E.append("tspan").text("«"+kt+"»");C||mt.attr("dy",f.textHeight),C=!1});let A=vBt(a);const P=E.append("tspan").text(A).attr("class","title");C||P.attr("dy",f.textHeight);const F=E.node().getBBox().height,j=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin/2).attr("y2",f.padding+F+f.dividerMargin/2),R=b.append("text").attr("x",f.padding).attr("y",F+f.dividerMargin+f.textHeight).attr("fill","white").attr("class","classText");C=!0,a.members.forEach(function(kt){wBt(R,kt,C,f),C=!1});const H=R.node().getBBox(),Y=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin+H.height).attr("y2",f.padding+F+f.dividerMargin+H.height),rt=b.append("text").attr("x",f.padding).attr("y",F+2*f.dividerMargin+H.height+f.textHeight).attr("fill","white").attr("class","classText");C=!0,a.methods.forEach(function(kt){wBt(rt,kt,C,f),C=!1});const J=b.node().getBBox();var it=" ";a.cssClasses.length>0&&(it=it+a.cssClasses.join(" "));const Tt=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",J.width+2*f.padding).attr("height",J.height+f.padding+.5*f.dividerMargin).attr("class",it).node().getBBox().width;return E.node().childNodes.forEach(function(kt){kt.setAttribute("x",(Tt-kt.getBBox().width)/2)}),a.tooltip&&E.insert("title").text(a.tooltip),j.attr("x2",Tt),Y.attr("x2",Tt),m.width=Tt,m.height=J.height+f.padding+.5*f.dividerMargin,m},vBt=function(i){let a=i.id;return i.type&&(a+="<"+i.type+">"),a},Zje=function(i,a,f,p){Wt.debug("Rendering note ",a,f);const v=a.id,m={id:v,text:a.text,width:0,height:0},b=i.append("g").attr("id",v).attr("class","classGroup");let E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);const C=JSON.parse(`"${a.text}"`).split(` +`);C.forEach(function(j){Wt.debug(`Adding line: ${j}`),E.append("tspan").text(j).attr("class","title").attr("dy",f.textHeight)});const A=b.node().getBBox(),F=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",A.width+2*f.padding).attr("height",A.height+C.length*f.textHeight+f.padding+.5*f.dividerMargin).node().getBBox().width;return E.node().childNodes.forEach(function(j){j.setAttribute("x",(F-j.getBBox().width)/2)}),m.width=F,m.height=A.height+C.length*f.textHeight+f.padding+.5*f.dividerMargin,m},yK=function(i){let a="",f="",p="",v="",m=i.substring(0,1),b=i.substring(i.length-1,i.length);m.match(/[#+~-]/)&&(v=m);let E=/[\s\w)~]/;b.match(E)||(f=mBt(b));const C=v===""?0:1;let A=f===""?i.length:i.length-1;i=i.substring(C,A);const P=i.indexOf("("),F=i.indexOf(")");if(P>1&&F>P&&F<=i.length){let R=i.substring(0,P).trim();const H=i.substring(P+1,F);if(a=v+R+"("+zN(H.trim())+")",Fi?" "+i:"",Bb=(i,a)=>`${a||"node default"}${yBt(i.classes)} ${yBt(i.class)}`,xBt=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=v+m,E=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}];Wt.info("Question main (Circle)");const C=L5(f,b,b,E);return C.attr("style",a.style),ef(a,C),a.intersect=function(A){return Wt.warn("Intersect called"),Th.polygon(a,E,A)},f},Jje=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=28,v=[{x:0,y:p/2},{x:p/2,y:0},{x:0,y:-p/2},{x:-p/2,y:0}];return f.insert("polygon",":first-child").attr("points",v.map(function(b){return b.x+","+b.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),a.width=28,a.height=28,a.intersect=function(b){return Th.circle(a,14,b)},f},t$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=4,m=p.height+a.padding,b=m/v,E=p.width+2*b+a.padding,C=[{x:b,y:0},{x:E-b,y:0},{x:E,y:-m/2},{x:E-b,y:-m},{x:b,y:-m},{x:0,y:-m/2}],A=L5(f,E,m,C);return A.attr("style",a.style),ef(a,A),a.intersect=function(P){return Th.polygon(a,C,P)},f},e$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-m/2,y:0},{x:v,y:0},{x:v,y:-m},{x:-m/2,y:-m},{x:0,y:-m/2}];return L5(f,v,m,b).attr("style",a.style),a.width=v+m,a.height=m,a.intersect=function(C){return Th.polygon(a,b,C)},f},n$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-2*m/6,y:0},{x:v-m/6,y:0},{x:v+2*m/6,y:-m},{x:m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},r$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:2*m/6,y:0},{x:v+m/6,y:0},{x:v-2*m/6,y:-m},{x:-m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},i$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-2*m/6,y:0},{x:v+2*m/6,y:0},{x:v-m/6,y:-m},{x:m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},s$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:m/6,y:0},{x:v-m/6,y:0},{x:v+2*m/6,y:-m},{x:-2*m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},a$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:0,y:0},{x:v+m/2,y:0},{x:v,y:-m/2},{x:v+m/2,y:-m},{x:0,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},o$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=v/2,b=m/(2.5+v/50),E=p.height+b+a.padding,C="M 0,"+b+" a "+m+","+b+" 0,0,0 "+v+" 0 a "+m+","+b+" 0,0,0 "+-v+" 0 l 0,"+E+" a "+m+","+b+" 0,0,0 "+v+" 0 l 0,"+-E,A=f.attr("label-offset-y",b).insert("path",":first-child").attr("style",a.style).attr("d",C).attr("transform","translate("+-v/2+","+-(E/2+b)+")");return ef(a,A),a.intersect=function(P){const F=Th.rect(a,P),j=F.x-a.x;if(m!=0&&(Math.abs(j)a.height/2-b)){let R=b*b*(1-j*j/(m*m));R!=0&&(R=Math.sqrt(R)),R=b-R,P.y-a.y>0&&(R=-R),F.y+=R}return F},f},c$e=async(i,a)=>{const{shapeSvg:f,bbox:p,halfPadding:v}=await Od(i,a,"node "+a.classes+" "+a.class,!0),m=f.insert("rect",":first-child"),b=p.width+a.padding,E=p.height+a.padding;if(m.attr("class","basic label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",-p.width/2-v).attr("y",-p.height/2-v).attr("width",b).attr("height",E),a.props){const C=new Set(Object.keys(a.props));a.props.borders&&(kBt(m,a.props.borders,b,E),C.delete("borders")),C.forEach(A=>{Wt.warn(`Unknown node property ${A}`)})}return ef(a,m),a.intersect=function(C){return Th.rect(a,C)},f},u$e=async(i,a)=>{const{shapeSvg:f}=await Od(i,a,"label",!0);Wt.trace("Classes = ",a.class);const p=f.insert("rect",":first-child"),v=0,m=0;if(p.attr("width",v).attr("height",m),f.attr("class","label edgeLabel"),a.props){const b=new Set(Object.keys(a.props));a.props.borders&&(kBt(p,a.props.borders,v,m),b.delete("borders")),b.forEach(E=>{Wt.warn(`Unknown node property ${E}`)})}return ef(a,p),a.intersect=function(b){return Th.rect(a,b)},f};function kBt(i,a,f,p){const v=[],m=E=>{v.push(E,0)},b=E=>{v.push(0,E)};a.includes("t")?(Wt.debug("add top border"),m(f)):b(f),a.includes("r")?(Wt.debug("add right border"),m(p)):b(p),a.includes("b")?(Wt.debug("add bottom border"),m(f)):b(f),a.includes("l")?(Wt.debug("add left border"),m(p)):b(p),i.attr("stroke-dasharray",v.join(" "))}const l$e=(i,a)=>{let f;a.classes?f="node "+a.classes:f="node default";const p=i.insert("g").attr("class",f).attr("id",a.domId||a.id),v=p.insert("rect",":first-child"),m=p.insert("line"),b=p.insert("g").attr("class","label"),E=a.labelText.flat?a.labelText.flat():a.labelText;let C="";typeof E=="object"?C=E[0]:C=E,Wt.info("Label text abc79",C,E,typeof E=="object");const A=b.node().appendChild(dp(C,a.labelStyle,!0,!0));let P={width:0,height:0};if(u1(De().flowchart.htmlLabels)){const Y=A.children[0],rt=xr(A);P=Y.getBoundingClientRect(),rt.attr("width",P.width),rt.attr("height",P.height)}Wt.info("Text 2",E);const F=E.slice(1,E.length);let j=A.getBBox();const R=b.node().appendChild(dp(F.join?F.join("
"):F,a.labelStyle,!0,!0));if(u1(De().flowchart.htmlLabels)){const Y=R.children[0],rt=xr(R);P=Y.getBoundingClientRect(),rt.attr("width",P.width),rt.attr("height",P.height)}const H=a.padding/2;return xr(R).attr("transform","translate( "+(P.width>j.width?0:(j.width-P.width)/2)+", "+(j.height+H+5)+")"),xr(A).attr("transform","translate( "+(P.width{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.height+a.padding,m=p.width+v/4+a.padding,b=f.insert("rect",":first-child").attr("style",a.style).attr("rx",v/2).attr("ry",v/2).attr("x",-m/2).attr("y",-v/2).attr("width",m).attr("height",v);return ef(a,b),a.intersect=function(E){return Th.rect(a,E)},f},f$e=async(i,a)=>{const{shapeSvg:f,bbox:p,halfPadding:v}=await Od(i,a,Bb(a,void 0),!0),m=f.insert("circle",":first-child");return m.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",p.width/2+v).attr("width",p.width+a.padding).attr("height",p.height+a.padding),Wt.info("Circle main"),ef(a,m),a.intersect=function(b){return Wt.info("Circle intersect",a,p.width/2+v,b),Th.circle(a,p.width/2+v,b)},f},d$e=async(i,a)=>{const{shapeSvg:f,bbox:p,halfPadding:v}=await Od(i,a,Bb(a,void 0),!0),m=5,b=f.insert("g",":first-child"),E=b.insert("circle"),C=b.insert("circle");return b.attr("class",a.class),E.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",p.width/2+v+m).attr("width",p.width+a.padding+m*2).attr("height",p.height+a.padding+m*2),C.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",p.width/2+v).attr("width",p.width+a.padding).attr("height",p.height+a.padding),Wt.info("DoubleCircle main"),ef(a,E),a.intersect=function(A){return Wt.info("DoubleCircle intersect",a,p.width/2+v+m,A),Th.circle(a,p.width/2+v+m,A)},f},g$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:0,y:0},{x:v,y:0},{x:v,y:-m},{x:0,y:-m},{x:0,y:0},{x:-8,y:0},{x:v+8,y:0},{x:v+8,y:-m},{x:-8,y:-m},{x:-8,y:0}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},p$e=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=f.insert("circle",":first-child");return p.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),ef(a,p),a.intersect=function(v){return Th.circle(a,7,v)},f},EBt=(i,a,f)=>{const p=i.insert("g").attr("class","node default").attr("id",a.domId||a.id);let v=70,m=10;f==="LR"&&(v=10,m=70);const b=p.append("rect").attr("x",-1*v/2).attr("y",-1*m/2).attr("width",v).attr("height",m).attr("class","fork-join");return ef(a,b),a.height=a.height+a.padding/2,a.width=a.width+a.padding/2,a.intersect=function(E){return Th.rect(a,E)},p},TBt={rhombus:xBt,question:xBt,rect:c$e,labelRect:u$e,rectWithTitle:l$e,choice:Jje,circle:f$e,doublecircle:d$e,stadium:h$e,hexagon:t$e,rect_left_inv_arrow:e$e,lean_right:n$e,lean_left:r$e,trapezoid:i$e,inv_trapezoid:s$e,rect_right_inv_arrow:a$e,cylinder:o$e,start:p$e,end:(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=f.insert("circle",":first-child"),v=f.insert("circle",":first-child");return v.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),p.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),ef(a,v),a.intersect=function(m){return Th.circle(a,7,m)},f},note:Yje,subroutine:g$e,fork:EBt,join:EBt,class_box:(i,a)=>{const f=a.padding/2,p=4,v=8;let m;a.classes?m="node "+a.classes:m="node default";const b=i.insert("g").attr("class",m).attr("id",a.domId||a.id),E=b.insert("rect",":first-child"),C=b.insert("line"),A=b.insert("line");let P=0,F=p;const j=b.insert("g").attr("class","label");let R=0;const H=a.classData.annotations&&a.classData.annotations[0],Y=a.classData.annotations[0]?"«"+a.classData.annotations[0]+"»":"",rt=j.node().appendChild(dp(Y,a.labelStyle,!0,!0));let J=rt.getBBox();if(u1(De().flowchart.htmlLabels)){const yt=rt.children[0],st=xr(rt);J=yt.getBoundingClientRect(),st.attr("width",J.width),st.attr("height",J.height)}a.classData.annotations[0]&&(F+=J.height+p,P+=J.width);let it=a.classData.label;a.classData.type!==void 0&&a.classData.type!==""&&(De().flowchart.htmlLabels?it+="<"+a.classData.type+">":it+="<"+a.classData.type+">");const ft=j.node().appendChild(dp(it,a.labelStyle,!0,!0));xr(ft).attr("class","classTitle");let Tt=ft.getBBox();if(u1(De().flowchart.htmlLabels)){const yt=ft.children[0],st=xr(ft);Tt=yt.getBoundingClientRect(),st.attr("width",Tt.width),st.attr("height",Tt.height)}F+=Tt.height+p,Tt.width>P&&(P=Tt.width);const kt=[];a.classData.members.forEach(yt=>{const st=yK(yt);let xt=st.displayText;De().flowchart.htmlLabels&&(xt=xt.replace(//g,">"));const ht=j.node().appendChild(dp(xt,st.cssStyle?st.cssStyle:a.labelStyle,!0,!0));let dt=ht.getBBox();if(u1(De().flowchart.htmlLabels)){const Ct=ht.children[0],tt=xr(ht);dt=Ct.getBoundingClientRect(),tt.attr("width",dt.width),tt.attr("height",dt.height)}dt.width>P&&(P=dt.width),F+=dt.height+p,kt.push(ht)}),F+=v;const mt=[];if(a.classData.methods.forEach(yt=>{const st=yK(yt);let xt=st.displayText;De().flowchart.htmlLabels&&(xt=xt.replace(//g,">"));const ht=j.node().appendChild(dp(xt,st.cssStyle?st.cssStyle:a.labelStyle,!0,!0));let dt=ht.getBBox();if(u1(De().flowchart.htmlLabels)){const Ct=ht.children[0],tt=xr(ht);dt=Ct.getBoundingClientRect(),tt.attr("width",dt.width),tt.attr("height",dt.height)}dt.width>P&&(P=dt.width),F+=dt.height+p,mt.push(ht)}),F+=v,H){let yt=(P-J.width)/2;xr(rt).attr("transform","translate( "+(-1*P/2+yt)+", "+-1*F/2+")"),R=J.height+p}let ct=(P-Tt.width)/2;return xr(ft).attr("transform","translate( "+(-1*P/2+ct)+", "+(-1*F/2+R)+")"),R+=Tt.height+p,C.attr("class","divider").attr("x1",-P/2-f).attr("x2",P/2+f).attr("y1",-F/2-f+v+R).attr("y2",-F/2-f+v+R),R+=v,kt.forEach(yt=>{xr(yt).attr("transform","translate( "+-P/2+", "+(-1*F/2+R+v/2)+")");const st=yt==null?void 0:yt.getBBox();R+=((st==null?void 0:st.height)??0)+p}),R+=v,A.attr("class","divider").attr("x1",-P/2-f).attr("x2",P/2+f).attr("y1",-F/2-f+v+R).attr("y2",-F/2-f+v+R),R+=v,mt.forEach(yt=>{xr(yt).attr("transform","translate( "+-P/2+", "+(-1*F/2+R)+")");const st=yt==null?void 0:yt.getBBox();R+=((st==null?void 0:st.height)??0)+p}),E.attr("class","outer title-state").attr("x",-P/2-f).attr("y",-(F/2)-f).attr("width",P+a.padding).attr("height",F+a.padding),ef(a,E),a.intersect=function(yt){return Th.rect(a,yt)},b}};let iL={};const _Bt=async(i,a,f)=>{let p,v;if(a.link){let m;De().securityLevel==="sandbox"?m="_top":a.linkTarget&&(m=a.linkTarget||"_blank"),p=i.insert("svg:a").attr("xlink:href",a.link).attr("target",m),v=await TBt[a.shape](p,a,f)}else v=await TBt[a.shape](i,a,f),p=v;return a.tooltip&&v.attr("title",a.tooltip),a.class&&v.attr("class","node default "+a.class),iL[a.id]=p,a.haveCallback&&iL[a.id].attr("class",iL[a.id].attr("class")+" clickable"),p},b$e=(i,a)=>{iL[a.id]=i},v$e=()=>{iL={}},CBt=i=>{const a=iL[i.id];Wt.trace("Transforming node",i.diff,i,"translate("+(i.x-i.width/2-5)+", "+i.width/2+")");const f=8,p=i.diff||0;return i.clusterNode?a.attr("transform","translate("+(i.x+p-i.width/2)+", "+(i.y-i.height/2-f)+")"):a.attr("transform","translate("+i.x+", "+i.y+")"),p},w$e={rect:(i,a)=>{Wt.info("Creating subgraph rect for ",a.id,a);const f=i.insert("g").attr("class","cluster"+(a.class?" "+a.class:"")).attr("id",a.id),p=f.insert("rect",":first-child"),v=u1(De().flowchart.htmlLabels),m=f.insert("g").attr("class","cluster-label"),b=a.labelType==="markdown"?vK(m,a.labelText,{style:a.labelStyle,useHtmlLabels:v}):m.node().appendChild(dp(a.labelText,a.labelStyle,void 0,!0));let E=b.getBBox();if(u1(De().flowchart.htmlLabels)){const j=b.children[0],R=xr(b);E=j.getBoundingClientRect(),R.attr("width",E.width),R.attr("height",E.height)}const C=0*a.padding,A=C/2,P=a.width<=E.width+C?E.width+C:a.width;a.width<=E.width+C?a.diff=(E.width-a.width)/2-a.padding/2:a.diff=-a.padding/2,Wt.trace("Data ",a,JSON.stringify(a)),p.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-P/2).attr("y",a.y-a.height/2-A).attr("width",P).attr("height",a.height+C),v?m.attr("transform","translate("+(a.x-E.width/2)+", "+(a.y-a.height/2)+")"):m.attr("transform","translate("+a.x+", "+(a.y-a.height/2)+")");const F=p.node().getBBox();return a.width=F.width,a.height=F.height,a.intersect=function(j){return mP(a,j)},f},roundedWithTitle:(i,a)=>{const f=i.insert("g").attr("class",a.classes).attr("id",a.id),p=f.insert("rect",":first-child"),v=f.insert("g").attr("class","cluster-label"),m=f.append("rect"),b=v.node().appendChild(dp(a.labelText,a.labelStyle,void 0,!0));let E=b.getBBox();if(u1(De().flowchart.htmlLabels)){const j=b.children[0],R=xr(b);E=j.getBoundingClientRect(),R.attr("width",E.width),R.attr("height",E.height)}E=b.getBBox();const C=0*a.padding,A=C/2,P=a.width<=E.width+a.padding?E.width+a.padding:a.width;a.width<=E.width+a.padding?a.diff=(E.width+a.padding*0-a.width)/2:a.diff=-a.padding/2,p.attr("class","outer").attr("x",a.x-P/2-A).attr("y",a.y-a.height/2-A).attr("width",P+C).attr("height",a.height+C),m.attr("class","inner").attr("x",a.x-P/2-A).attr("y",a.y-a.height/2-A+E.height-1).attr("width",P+C).attr("height",a.height+C-E.height-3),v.attr("transform","translate("+(a.x-E.width/2)+", "+(a.y-a.height/2-a.padding/3+(u1(De().flowchart.htmlLabels)?5:3))+")");const F=p.node().getBBox();return a.height=F.height,a.intersect=function(j){return mP(a,j)},f},noteGroup:(i,a)=>{const f=i.insert("g").attr("class","note-cluster").attr("id",a.id),p=f.insert("rect",":first-child"),v=0*a.padding,m=v/2;p.attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-a.width/2-m).attr("y",a.y-a.height/2-m).attr("width",a.width+v).attr("height",a.height+v).attr("fill","none");const b=p.node().getBBox();return a.width=b.width,a.height=b.height,a.intersect=function(E){return mP(a,E)},f},divider:(i,a)=>{const f=i.insert("g").attr("class",a.classes).attr("id",a.id),p=f.insert("rect",":first-child"),v=0*a.padding,m=v/2;p.attr("class","divider").attr("x",a.x-a.width/2-m).attr("y",a.y-a.height/2).attr("width",a.width+v).attr("height",a.height+v);const b=p.node().getBBox();return a.width=b.width,a.height=b.height,a.diff=-a.padding/2,a.intersect=function(E){return mP(a,E)},f}};let SBt={};const m$e=(i,a)=>{Wt.trace("Inserting cluster");const f=a.shape||"rect";SBt[a.id]=w$e[f](i,a)},y$e=()=>{SBt={}};let xK={},Nd={};const x$e=()=>{xK={},Nd={}},ABt=(i,a)=>{const f=u1(De().flowchart.htmlLabels),p=a.labelType==="markdown"?vK(i,a.label,{style:a.labelStyle,useHtmlLabels:f,addSvgBackground:!0}):dp(a.label,a.labelStyle);Wt.info("abc82",a,a.labelType);const v=i.insert("g").attr("class","edgeLabel"),m=v.insert("g").attr("class","label");m.node().appendChild(p);let b=p.getBBox();if(f){const C=p.children[0],A=xr(p);b=C.getBoundingClientRect(),A.attr("width",b.width),A.attr("height",b.height)}m.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),xK[a.id]=v,a.width=b.width,a.height=b.height;let E;if(a.startLabelLeft){const C=dp(a.startLabelLeft,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].startLeft=A,kK(E,a.startLabelLeft)}if(a.startLabelRight){const C=dp(a.startLabelRight,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=A.node().appendChild(C),P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].startRight=A,kK(E,a.startLabelRight)}if(a.endLabelLeft){const C=dp(a.endLabelLeft,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),A.node().appendChild(C),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].endLeft=A,kK(E,a.endLabelLeft)}if(a.endLabelRight){const C=dp(a.endLabelRight,a.labelStyle),A=i.insert("g").attr("class","edgeTerminals"),P=A.insert("g").attr("class","inner");E=P.node().appendChild(C);const F=C.getBBox();P.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),A.node().appendChild(C),Nd[a.id]||(Nd[a.id]={}),Nd[a.id].endRight=A,kK(E,a.endLabelRight)}return p};function kK(i,a){De().flowchart.htmlLabels&&i&&(i.style.width=a.length*9+"px",i.style.height="12px")}const k$e=(i,a)=>{Wt.info("Moving label abc78 ",i.id,i.label,xK[i.id]);let f=a.updatedPath?a.updatedPath:a.originalPath;if(i.label){const p=xK[i.id];let v=i.x,m=i.y;if(f){const b=to.calcLabelPosition(f);Wt.info("Moving label "+i.label+" from (",v,",",m,") to (",b.x,",",b.y,") abc78"),a.updatedPath&&(v=b.x,m=b.y)}p.attr("transform","translate("+v+", "+m+")")}if(i.startLabelLeft){const p=Nd[i.id].startLeft;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_left",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}if(i.startLabelRight){const p=Nd[i.id].startRight;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_right",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}if(i.endLabelLeft){const p=Nd[i.id].endLeft;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_left",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}if(i.endLabelRight){const p=Nd[i.id].endRight;let v=i.x,m=i.y;if(f){const b=to.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_right",f);v=b.x,m=b.y}p.attr("transform","translate("+v+", "+m+")")}},E$e=(i,a)=>{const f=i.x,p=i.y,v=Math.abs(a.x-f),m=Math.abs(a.y-p),b=i.width/2,E=i.height/2;return v>=b||m>=E},T$e=(i,a,f)=>{Wt.warn(`intersection calc abc89: + outsidePoint: ${JSON.stringify(a)} + insidePoint : ${JSON.stringify(f)} + node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const p=i.x,v=i.y,m=Math.abs(p-f.x),b=i.width/2;let E=f.xMath.abs(p-a.x)*C){let F=f.y{Wt.warn("abc88 cutPathAtIntersect",i,a);let f=[],p=i[0],v=!1;return i.forEach(m=>{if(Wt.info("abc88 checking point",m,a),!E$e(a,m)&&!v){const b=T$e(a,p,m);Wt.warn("abc88 inside",m,p,b),Wt.warn("abc88 intersection",b);let E=!1;f.forEach(C=>{E=E||C.x===b.x&&C.y===b.y}),f.some(C=>C.x===b.x&&C.y===b.y)?Wt.warn("abc88 no intersect",b,f):f.push(b),v=!0}else Wt.warn("abc88 outside",m,p),p=m,v||f.push(m)}),Wt.warn("abc88 returning points",f),f},_$e=function(i,a,f,p,v,m){let b=f.points,E=!1;const C=m.node(a.v);var A=m.node(a.w);Wt.info("abc88 InsertEdge: ",f),A.intersect&&C.intersect&&(b=b.slice(1,f.points.length-1),b.unshift(C.intersect(b[0])),Wt.info("Last point",b[b.length-1],A,A.intersect(b[b.length-1])),b.push(A.intersect(b[b.length-1]))),f.toCluster&&(Wt.info("to cluster abc88",p[f.toCluster]),b=LBt(f.points,p[f.toCluster].node),E=!0),f.fromCluster&&(Wt.info("from cluster abc88",p[f.fromCluster]),b=LBt(b.reverse(),p[f.fromCluster].node).reverse(),E=!0);const P=b.filter(J=>!Number.isNaN(J.y));let F;v==="graph"||v==="flowchart"?F=f.curve||MA:F=MA;const j=YE().x(function(J){return J.x}).y(function(J){return J.y}).curve(F);let R;switch(f.thickness){case"normal":R="edge-thickness-normal";break;case"thick":R="edge-thickness-thick";break;case"invisible":R="edge-thickness-thick";break;default:R=""}switch(f.pattern){case"solid":R+=" edge-pattern-solid";break;case"dotted":R+=" edge-pattern-dotted";break;case"dashed":R+=" edge-pattern-dashed";break}const H=i.append("path").attr("d",j(P)).attr("id",f.id).attr("class"," "+R+(f.classes?" "+f.classes:"")).attr("style",f.style);let Y="";switch((De().flowchart.arrowMarkerAbsolute||De().state.arrowMarkerAbsolute)&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),Wt.info("arrowTypeStart",f.arrowTypeStart),Wt.info("arrowTypeEnd",f.arrowTypeEnd),f.arrowTypeStart){case"arrow_cross":H.attr("marker-start","url("+Y+"#"+v+"-crossStart)");break;case"arrow_point":H.attr("marker-start","url("+Y+"#"+v+"-pointStart)");break;case"arrow_barb":H.attr("marker-start","url("+Y+"#"+v+"-barbStart)");break;case"arrow_circle":H.attr("marker-start","url("+Y+"#"+v+"-circleStart)");break;case"aggregation":H.attr("marker-start","url("+Y+"#"+v+"-aggregationStart)");break;case"extension":H.attr("marker-start","url("+Y+"#"+v+"-extensionStart)");break;case"composition":H.attr("marker-start","url("+Y+"#"+v+"-compositionStart)");break;case"dependency":H.attr("marker-start","url("+Y+"#"+v+"-dependencyStart)");break;case"lollipop":H.attr("marker-start","url("+Y+"#"+v+"-lollipopStart)");break}switch(f.arrowTypeEnd){case"arrow_cross":H.attr("marker-end","url("+Y+"#"+v+"-crossEnd)");break;case"arrow_point":H.attr("marker-end","url("+Y+"#"+v+"-pointEnd)");break;case"arrow_barb":H.attr("marker-end","url("+Y+"#"+v+"-barbEnd)");break;case"arrow_circle":H.attr("marker-end","url("+Y+"#"+v+"-circleEnd)");break;case"aggregation":H.attr("marker-end","url("+Y+"#"+v+"-aggregationEnd)");break;case"extension":H.attr("marker-end","url("+Y+"#"+v+"-extensionEnd)");break;case"composition":H.attr("marker-end","url("+Y+"#"+v+"-compositionEnd)");break;case"dependency":H.attr("marker-end","url("+Y+"#"+v+"-dependencyEnd)");break;case"lollipop":H.attr("marker-end","url("+Y+"#"+v+"-lollipopEnd)");break}let rt={};return E&&(rt.updatedPath=b),rt.originalPath=f.points,rt},MBt=async(i,a,f,p)=>{Wt.info("Graph in recursive render: XXX",A5(a),p);const v=a.graph().rankdir;Wt.trace("Dir in recursive render - dir:",v);const m=i.insert("g").attr("class","root");a.nodes()?Wt.info("Recursive render XXX",a.nodes()):Wt.info("No nodes found for",a),a.edges().length>0&&Wt.trace("Recursive edges",a.edge(a.edges()[0]));const b=m.insert("g").attr("class","clusters"),E=m.insert("g").attr("class","edgePaths"),C=m.insert("g").attr("class","edgeLabels"),A=m.insert("g").attr("class","nodes");await Promise.all(a.nodes().map(async function(F){const j=a.node(F);if(p!==void 0){const R=JSON.parse(JSON.stringify(p.clusterData));Wt.info("Setting data for cluster XXX (",F,") ",R,p),a.setNode(p.id,R),a.parent(F)||(Wt.trace("Setting parent",F,p.id),a.setParent(F,p.id,R))}if(Wt.info("(Insert) Node XXX"+F+": "+JSON.stringify(a.node(F))),j&&j.clusterNode){Wt.info("Cluster identified",F,j.width,a.node(F));const R=await MBt(A,j.graph,f,a.node(F)),H=R.elem;ef(j,H),j.diff=R.diff||0,Wt.info("Node bounds (abc123)",F,j,j.width,j.x,j.y),b$e(H,j),Wt.warn("Recursive render complete ",H,j)}else a.children(F).length>0?(Wt.info("Cluster - the non recursive path XXX",F,j.id,j,a),Wt.info(wP(j.id,a)),Xo[j.id]={id:wP(j.id,a),node:j}):(Wt.info("Node - the non recursive path",F,j.id,j),await _Bt(A,a.node(F),v))})),a.edges().forEach(function(F){const j=a.edge(F.v,F.w,F.name);Wt.info("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(F)),Wt.info("Edge "+F.v+" -> "+F.w+": ",F," ",JSON.stringify(a.edge(F))),Wt.info("Fix",Xo,"ids:",F.v,F.w,"Translateing: ",Xo[F.v],Xo[F.w]),ABt(C,j)}),a.edges().forEach(function(F){Wt.info("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(F))}),Wt.info("#############################################"),Wt.info("### Layout ###"),Wt.info("#############################################"),Wt.info(a),nL(a),Wt.info("Graph after layout:",A5(a));let P=0;return Vje(a).forEach(function(F){const j=a.node(F);Wt.info("Position "+F+": "+JSON.stringify(a.node(F))),Wt.info("Position "+F+": ("+j.x,","+j.y,") width: ",j.width," height: ",j.height),j&&j.clusterNode?CBt(j):a.children(F).length>0?(m$e(b,j),Xo[j.id].node=j):CBt(j)}),a.edges().forEach(function(F){const j=a.edge(F);Wt.info("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(j),j);const R=_$e(E,F,j,Xo,f,a);k$e(j,R)}),a.nodes().forEach(function(F){const j=a.node(F);Wt.info(F,j.type,j.diff),j.type==="group"&&(P=j.diff)}),{elem:m,diff:P}},A0t=async(i,a,f,p,v)=>{DFt(i,f,p,v),v$e(),x$e(),y$e(),zje(),Wt.warn("Graph at first:",A5(a)),Hje(a),Wt.warn("Graph after:",A5(a)),await MBt(i,a,p)},DBt={},C$e=function(i){const a=Object.keys(i);for(const f of a)DBt[f]=i[f]},IBt=function(i,a,f,p,v,m){const b=p.select(`[id="${f}"]`);Object.keys(i).forEach(function(C){const A=i[C];let P="default";A.classes.length>0&&(P=A.classes.join(" ")),P=P+" flowchart-label";const F=em(A.styles);let j=A.text!==void 0?A.text:A.id,R;if(Wt.info("vertex",A,A.labelType),A.labelType==="markdown")Wt.info("vertex",A,A.labelType);else if(u1(De().flowchart.htmlLabels)){const rt={label:j.replace(/fa[blrs]?:fa-[\w-]+/g,J=>``)};R=u0t(b,rt).node(),R.parentNode.removeChild(R)}else{const rt=v.createElementNS("http://www.w3.org/2000/svg","text");rt.setAttribute("style",F.labelStyle.replace("color:","fill:"));const J=j.split(ui.lineBreakRegex);for(const it of J){const ft=v.createElementNS("http://www.w3.org/2000/svg","tspan");ft.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),ft.setAttribute("dy","1em"),ft.setAttribute("x","1"),ft.textContent=it,rt.appendChild(ft)}R=rt}let H=0,Y="";switch(A.type){case"round":H=5,Y="rect";break;case"square":Y="rect";break;case"diamond":Y="question";break;case"hexagon":Y="hexagon";break;case"odd":Y="rect_left_inv_arrow";break;case"lean_right":Y="lean_right";break;case"lean_left":Y="lean_left";break;case"trapezoid":Y="trapezoid";break;case"inv_trapezoid":Y="inv_trapezoid";break;case"odd_right":Y="rect_left_inv_arrow";break;case"circle":Y="circle";break;case"ellipse":Y="ellipse";break;case"stadium":Y="stadium";break;case"subroutine":Y="subroutine";break;case"cylinder":Y="cylinder";break;case"group":Y="rect";break;case"doublecircle":Y="doublecircle";break;default:Y="rect"}a.setNode(A.id,{labelStyle:F.labelStyle,shape:Y,labelText:j,labelType:A.labelType,rx:H,ry:H,class:P,style:F.style,id:A.id,link:A.link,linkTarget:A.linkTarget,tooltip:m.db.getTooltip(A.id)||"",domId:m.db.lookUpDomId(A.id),haveCallback:A.haveCallback,width:A.type==="group"?500:void 0,dir:A.dir,type:A.type,props:A.props,padding:De().flowchart.padding}),Wt.info("setNode",{labelStyle:F.labelStyle,labelType:A.labelType,shape:Y,labelText:j,rx:H,ry:H,class:P,style:F.style,id:A.id,domId:m.db.lookUpDomId(A.id),width:A.type==="group"?500:void 0,type:A.type,dir:A.dir,props:A.props,padding:De().flowchart.padding})})},OBt=function(i,a,f){Wt.info("abc78 edges = ",i);let p=0,v={},m,b;if(i.defaultStyle!==void 0){const E=em(i.defaultStyle);m=E.style,b=E.labelStyle}i.forEach(function(E){p++;const C="L-"+E.start+"-"+E.end;v[C]===void 0?(v[C]=0,Wt.info("abc78 new entry",C,v[C])):(v[C]++,Wt.info("abc78 new entry",C,v[C]));let A=C+"-"+v[C];Wt.info("abc78 new link id to be used is",C,A,v[C]);const P="LS-"+E.start,F="LE-"+E.end,j={style:"",labelStyle:""};switch(j.minlen=E.length||1,E.type==="arrow_open"?j.arrowhead="none":j.arrowhead="normal",j.arrowTypeStart="arrow_open",j.arrowTypeEnd="arrow_open",E.type){case"double_arrow_cross":j.arrowTypeStart="arrow_cross";case"arrow_cross":j.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":j.arrowTypeStart="arrow_point";case"arrow_point":j.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":j.arrowTypeStart="arrow_circle";case"arrow_circle":j.arrowTypeEnd="arrow_circle";break}let R="",H="";switch(E.stroke){case"normal":R="fill:none;",m!==void 0&&(R=m),b!==void 0&&(H=b),j.thickness="normal",j.pattern="solid";break;case"dotted":j.thickness="normal",j.pattern="dotted",j.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":j.thickness="thick",j.pattern="solid",j.style="stroke-width: 3.5px;fill:none;";break;case"invisible":j.thickness="invisible",j.pattern="solid",j.style="stroke-width: 0;fill:none;";break}if(E.style!==void 0){const Y=em(E.style);R=Y.style,H=Y.labelStyle}j.style=j.style+=R,j.labelStyle=j.labelStyle+=H,E.interpolate!==void 0?j.curve=Z2(E.interpolate,ig):i.defaultInterpolate!==void 0?j.curve=Z2(i.defaultInterpolate,ig):j.curve=Z2(DBt.curve,ig),E.text===void 0?E.style!==void 0&&(j.arrowheadStyle="fill: #333"):(j.arrowheadStyle="fill: #333",j.labelpos="c"),j.labelType=E.labelType,j.label=E.text.replace(ui.lineBreakRegex,` +`),E.style===void 0&&(j.style=j.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),j.labelStyle=j.labelStyle.replace("color:","fill:"),j.id=A,j.classes="flowchart-link "+P+" "+F,a.setEdge(E.start,E.end,j,p)})},L0t={setConf:C$e,addVertices:IBt,addEdges:OBt,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,f,p){Wt.info("Drawing flowchart");let v=p.db.getDirection();v===void 0&&(v="TD");const{securityLevel:m,flowchart:b}=De(),E=b.nodeSpacing||50,C=b.rankSpacing||50;let A;m==="sandbox"&&(A=xr("#i"+a));const P=xr(m==="sandbox"?A.nodes()[0].contentDocument.body:"body"),F=m==="sandbox"?A.nodes()[0].contentDocument:document,j=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:v,nodesep:E,ranksep:C,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let R;const H=p.db.getSubGraphs();Wt.info("Subgraphs - ",H);for(let kt=H.length-1;kt>=0;kt--)R=H[kt],Wt.info("Subgraph - ",R),p.db.addVertex(R.id,{text:R.title,type:R.labelType},"group",void 0,R.classes,R.dir);const Y=p.db.getVertices(),rt=p.db.getEdges();Wt.info("Edges",rt);let J=0;for(J=H.length-1;J>=0;J--){R=H[J],YLt("cluster").append("text");for(let kt=0;kt{const f=F9e,p=f(i,"r"),v=f(i,"g"),m=f(i,"b");return IA(p,v,m,a)},NBt=i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span,p { + color: ${i.titleColor}; + } + + .label text,span,p { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + .flowchart-label text { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${S$e(i.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${i.clusterBkg}; + stroke: ${i.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span,p { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`,A$e=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fdt,db:h9,renderer:L0t,styles:NBt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,IBe.setConf(i.flowchart),h9.clear(),h9.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),L$e=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fdt,db:h9,renderer:L0t,styles:NBt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,eOt({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),L0t.setConf(i.flowchart),h9.clear(),h9.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var M0t=function(){var i=function(dt,Ct,tt,Pt){for(tt=tt||{},Pt=dt.length;Pt--;tt[dt[Pt]]=Ct);return tt},a=[1,2],f=[1,5],p=[6,9,11,23,25,27,29,30,31,52],v=[1,17],m=[1,18],b=[1,19],E=[1,20],C=[1,21],A=[1,22],P=[1,25],F=[1,30],j=[1,31],R=[1,32],H=[1,33],Y=[1,34],rt=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,48,52],J=[1,46],it=[30,31,49,50],ft=[4,6,9,11,23,25,27,29,30,31,52],Tt=[44,45,46,47,48],kt=[22,37],mt=[1,66],ct=[1,65],yt=[22,37,39,41],st={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,MD_PARENT:48,NON_IDENTIFYING:49,IDENTIFYING:50,WORD:51,open_directive:52,type_directive:53,arg_directive:54,close_directive:55,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"MD_PARENT",49:"NON_IDENTIFYING",50:"IDENTIFYING",51:"WORD",52:"open_directive",53:"type_directive",54:"arg_directive",55:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(Ct,tt,Pt,pt,Ft,X,Rt){var Bt=X.length-1;switch(Ft){case 1:break;case 3:this.$=[];break;case 4:X[Bt-1].push(X[Bt]),this.$=X[Bt-1];break;case 5:case 6:this.$=X[Bt];break;case 7:case 8:this.$=[];break;case 12:pt.addEntity(X[Bt-4]),pt.addEntity(X[Bt-2]),pt.addRelationship(X[Bt-4],X[Bt],X[Bt-2],X[Bt-3]);break;case 13:pt.addEntity(X[Bt-3]),pt.addAttributes(X[Bt-3],X[Bt-1]);break;case 14:pt.addEntity(X[Bt-2]);break;case 15:pt.addEntity(X[Bt]);break;case 16:case 17:this.$=X[Bt].trim(),pt.setAccTitle(this.$);break;case 18:case 19:this.$=X[Bt].trim(),pt.setAccDescription(this.$);break;case 20:case 44:this.$=X[Bt];break;case 21:case 42:case 43:this.$=X[Bt].replace(/"/g,"");break;case 22:case 30:this.$=[X[Bt]];break;case 23:X[Bt].push(X[Bt-1]),this.$=X[Bt];break;case 24:this.$={attributeType:X[Bt-1],attributeName:X[Bt]};break;case 25:this.$={attributeType:X[Bt-2],attributeName:X[Bt-1],attributeKeyTypeList:X[Bt]};break;case 26:this.$={attributeType:X[Bt-2],attributeName:X[Bt-1],attributeComment:X[Bt]};break;case 27:this.$={attributeType:X[Bt-3],attributeName:X[Bt-2],attributeKeyTypeList:X[Bt-1],attributeComment:X[Bt]};break;case 28:case 29:case 32:this.$=X[Bt];break;case 31:X[Bt-2].push(X[Bt]),this.$=X[Bt-2];break;case 33:this.$=X[Bt].replace(/"/g,"");break;case 34:this.$={cardA:X[Bt],relType:X[Bt-1],cardB:X[Bt-2]};break;case 35:this.$=pt.Cardinality.ZERO_OR_ONE;break;case 36:this.$=pt.Cardinality.ZERO_OR_MORE;break;case 37:this.$=pt.Cardinality.ONE_OR_MORE;break;case 38:this.$=pt.Cardinality.ONLY_ONE;break;case 39:this.$=pt.Cardinality.MD_PARENT;break;case 40:this.$=pt.Identification.NON_IDENTIFYING;break;case 41:this.$=pt.Identification.IDENTIFYING;break;case 45:pt.parseDirective("%%{","open_directive");break;case 46:pt.parseDirective(X[Bt],"type_directive");break;case 47:X[Bt]=X[Bt].trim().replace(/'/g,'"'),pt.parseDirective(X[Bt],"arg_directive");break;case 48:pt.parseDirective("}%%","close_directive","er");break}},table:[{3:1,4:a,7:3,12:4,52:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,52:f},{13:8,53:[1,9]},{53:[2,45]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:v,25:m,27:b,29:E,30:C,31:A,52:f},{1:[2,2]},{14:23,15:[1,24],55:P},i([15,55],[2,46]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:15,10:26,12:4,17:16,23:v,25:m,27:b,29:E,30:C,31:A,52:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),i(p,[2,15],{18:27,42:29,20:[1,28],44:F,45:j,46:R,47:H,48:Y}),{24:[1,35]},{26:[1,36]},{28:[1,37]},i(p,[2,19]),i(rt,[2,20]),i(rt,[2,21]),{11:[1,38]},{16:39,54:[1,40]},{11:[2,48]},i(p,[2,5]),{17:41,30:C,31:A},{21:42,22:[1,43],32:44,33:45,37:J},{43:47,49:[1,48],50:[1,49]},i(it,[2,35]),i(it,[2,36]),i(it,[2,37]),i(it,[2,38]),i(it,[2,39]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(ft,[2,9]),{14:50,55:P},{55:[2,47]},{15:[1,51]},{22:[1,52]},i(p,[2,14]),{21:53,22:[2,22],32:44,33:45,37:J},{34:54,37:[1,55]},{37:[2,28]},{42:56,44:F,45:j,46:R,47:H,48:Y},i(Tt,[2,40]),i(Tt,[2,41]),{11:[1,57]},{19:58,30:[1,61],31:[1,60],51:[1,59]},i(p,[2,13]),{22:[2,23]},i(kt,[2,24],{35:62,36:63,38:64,40:mt,41:ct}),i([22,37,40,41],[2,29]),i([30,31],[2,34]),i(ft,[2,10]),i(p,[2,12]),i(p,[2,42]),i(p,[2,43]),i(p,[2,44]),i(kt,[2,25],{36:67,39:[1,68],41:ct}),i(kt,[2,26]),i(yt,[2,30]),i(kt,[2,33]),i(yt,[2,32]),i(kt,[2,27]),{38:69,40:mt},i(yt,[2,31])],defaultActions:{5:[2,45],7:[2,2],25:[2,48],40:[2,47],46:[2,28],53:[2,23]},parseError:function(Ct,tt){if(tt.recoverable)this.trace(Ct);else{var Pt=new Error(Ct);throw Pt.hash=tt,Pt}},parse:function(Ct){var tt=this,Pt=[0],pt=[],Ft=[null],X=[],Rt=this.table,Bt="",vt=0,Ot=0,Vt=2,qe=1,_n=X.slice.call(arguments,1),Te=Object.create(this.lexer),Wn={yy:{}};for(var Ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ae)&&(Wn.yy[Ae]=this.yy[Ae]);Te.setInput(Ct,Wn.yy),Wn.yy.lexer=Te,Wn.yy.parser=this,typeof Te.yylloc>"u"&&(Te.yylloc={});var ne=Te.yylloc;X.push(ne);var ke=Te.options&&Te.options.ranges;typeof Wn.yy.parseError=="function"?this.parseError=Wn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ve(){var Se;return Se=pt.pop()||Te.lex()||qe,typeof Se!="number"&&(Se instanceof Array&&(pt=Se,Se=pt.pop()),Se=tt.symbols_[Se]||Se),Se}for(var Ee,He,Ce,$e,ye={},fn,Yt,Mi,qt;;){if(He=Pt[Pt.length-1],this.defaultActions[He]?Ce=this.defaultActions[He]:((Ee===null||typeof Ee>"u")&&(Ee=Ve()),Ce=Rt[He]&&Rt[He][Ee]),typeof Ce>"u"||!Ce.length||!Ce[0]){var zi="";qt=[];for(fn in Rt[He])this.terminals_[fn]&&fn>Vt&&qt.push("'"+this.terminals_[fn]+"'");Te.showPosition?zi="Parse error on line "+(vt+1)+`: +`+Te.showPosition()+` +Expecting `+qt.join(", ")+", got '"+(this.terminals_[Ee]||Ee)+"'":zi="Parse error on line "+(vt+1)+": Unexpected "+(Ee==qe?"end of input":"'"+(this.terminals_[Ee]||Ee)+"'"),this.parseError(zi,{text:Te.match,token:this.terminals_[Ee]||Ee,line:Te.yylineno,loc:ne,expected:qt})}if(Ce[0]instanceof Array&&Ce.length>1)throw new Error("Parse Error: multiple actions possible at state: "+He+", token: "+Ee);switch(Ce[0]){case 1:Pt.push(Ee),Ft.push(Te.yytext),X.push(Te.yylloc),Pt.push(Ce[1]),Ee=null,Ot=Te.yyleng,Bt=Te.yytext,vt=Te.yylineno,ne=Te.yylloc;break;case 2:if(Yt=this.productions_[Ce[1]][1],ye.$=Ft[Ft.length-Yt],ye._$={first_line:X[X.length-(Yt||1)].first_line,last_line:X[X.length-1].last_line,first_column:X[X.length-(Yt||1)].first_column,last_column:X[X.length-1].last_column},ke&&(ye._$.range=[X[X.length-(Yt||1)].range[0],X[X.length-1].range[1]]),$e=this.performAction.apply(ye,[Bt,Ot,vt,Wn.yy,Ce[1],Ft,X].concat(_n)),typeof $e<"u")return $e;Yt&&(Pt=Pt.slice(0,-1*Yt*2),Ft=Ft.slice(0,-1*Yt),X=X.slice(0,-1*Yt)),Pt.push(this.productions_[Ce[1]][0]),Ft.push(ye.$),X.push(ye._$),Mi=Rt[Pt[Pt.length-2]][Pt[Pt.length-1]],Pt.push(Mi);break;case 3:return!0}}return!0}},xt=function(){var dt={EOF:1,parseError:function(tt,Pt){if(this.yy.parser)this.yy.parser.parseError(tt,Pt);else throw new Error(tt)},setInput:function(Ct,tt){return this.yy=tt||this.yy||{},this._input=Ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ct=this._input[0];this.yytext+=Ct,this.yyleng++,this.offset++,this.match+=Ct,this.matched+=Ct;var tt=Ct.match(/(?:\r\n?|\n).*/g);return tt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ct},unput:function(Ct){var tt=Ct.length,Pt=Ct.split(/(?:\r\n?|\n)/g);this._input=Ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tt),this.offset-=tt;var pt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Pt.length-1&&(this.yylineno-=Pt.length-1);var Ft=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Pt?(Pt.length===pt.length?this.yylloc.first_column:0)+pt[pt.length-Pt.length].length-Pt[0].length:this.yylloc.first_column-tt},this.options.ranges&&(this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-tt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ct){this.unput(this.match.slice(Ct))},pastInput:function(){var Ct=this.matched.substr(0,this.matched.length-this.match.length);return(Ct.length>20?"...":"")+Ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ct=this.match;return Ct.length<20&&(Ct+=this._input.substr(0,20-Ct.length)),(Ct.substr(0,20)+(Ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ct=this.pastInput(),tt=new Array(Ct.length+1).join("-");return Ct+this.upcomingInput()+` +`+tt+"^"},test_match:function(Ct,tt){var Pt,pt,Ft;if(this.options.backtrack_lexer&&(Ft={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ft.yylloc.range=this.yylloc.range.slice(0))),pt=Ct[0].match(/(?:\r\n?|\n).*/g),pt&&(this.yylineno+=pt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:pt?pt[pt.length-1].length-pt[pt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ct[0].length},this.yytext+=Ct[0],this.match+=Ct[0],this.matches=Ct,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ct[0].length),this.matched+=Ct[0],Pt=this.performAction.call(this,this.yy,this,tt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Pt)return Pt;if(this._backtrack){for(var X in Ft)this[X]=Ft[X];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ct,tt,Pt,pt;this._more||(this.yytext="",this.match="");for(var Ft=this._currentRules(),X=0;Xtt[0].length)){if(tt=Pt,pt=X,this.options.backtrack_lexer){if(Ct=this.test_match(Pt,Ft[X]),Ct!==!1)return Ct;if(this._backtrack){tt=!1;continue}else return!1}else if(!this.options.flex)break}return tt?(Ct=this.test_match(tt,Ft[pt]),Ct!==!1?Ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var tt=this.next();return tt||this.lex()},begin:function(tt){this.conditionStack.push(tt)},popState:function(){var tt=this.conditionStack.length-1;return tt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(tt){return tt=this.conditionStack.length-1-Math.abs(tt||0),tt>=0?this.conditionStack[tt]:"INITIAL"},pushState:function(tt){this.begin(tt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tt,Pt,pt,Ft){switch(pt){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),52;case 8:return this.begin("type_directive"),53;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),55;case 11:return 54;case 12:return 11;case 13:break;case 14:return 9;case 15:return 31;case 16:return 51;case 17:return 4;case 18:return this.begin("block"),20;case 19:return 39;case 20:break;case 21:return 40;case 22:return 37;case 23:return 37;case 24:return 41;case 25:break;case 26:return this.popState(),22;case 27:return Pt.yytext[0];case 28:return 44;case 29:return 46;case 30:return 46;case 31:return 46;case 32:return 44;case 33:return 44;case 34:return 45;case 35:return 45;case 36:return 45;case 37:return 45;case 38:return 45;case 39:return 46;case 40:return 45;case 41:return 46;case 42:return 47;case 43:return 47;case 44:return 47;case 45:return 47;case 46:return 44;case 47:return 45;case 48:return 46;case 49:return 48;case 50:return 49;case 51:return 50;case 52:return 50;case 53:return 49;case 54:return 49;case 55:return 49;case 56:return 30;case 57:return Pt.yytext[0];case 58:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[19,20,21,22,23,24,25,26,27],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58],inclusive:!0}}};return dt}();st.lexer=xt;function ht(){this.yy={}}return ht.prototype=st,st.Parser=ht,new ht}();M0t.parser=M0t;const M$e=M0t;let yP={},D0t=[];const D$e={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},I$e={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},O$e=function(i,a,f){J1.parseDirective(this,i,a,f)},PBt=function(i){return yP[i]===void 0&&(yP[i]={attributes:[]},Wt.info("Added new entity :",i)),yP[i]},N$e={Cardinality:D$e,Identification:I$e,parseDirective:O$e,getConfig:()=>De().er,addEntity:PBt,addAttributes:function(i,a){let f=PBt(i),p;for(p=a.length-1;p>=0;p--)f.attributes.push(a[p]),Wt.debug("Added attribute ",a[p].attributeName)},getEntities:()=>yP,addRelationship:function(i,a,f,p){let v={entityA:i,roleA:a,entityB:f,relSpec:p};D0t.push(v),Wt.debug("Added new relationship :",v)},getRelationships:()=>D0t,clear:function(){yP={},D0t=[],cg()},setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,setDiagramTitle:Nb,getDiagramTitle:hp},um={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},lm={ERMarkers:um,insertMarkers:function(i,a){let f;i.append("defs").append("marker").attr("id",um.MD_PARENT_START).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",um.MD_PARENT_END).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",um.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),i.append("defs").append("marker").attr("id",um.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,0 L21,18"),i.append("defs").append("marker").attr("id",um.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),i.append("defs").append("marker").attr("id",um.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),f=i.append("defs").append("marker").attr("id",um.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),f.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),f.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}},P$e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function F$e(i){return typeof i=="string"&&P$e.test(i)}const Pd=[];for(let i=0;i<256;++i)Pd.push((i+256).toString(16).slice(1));function B$e(i,a=0){return(Pd[i[a+0]]+Pd[i[a+1]]+Pd[i[a+2]]+Pd[i[a+3]]+"-"+Pd[i[a+4]]+Pd[i[a+5]]+"-"+Pd[i[a+6]]+Pd[i[a+7]]+"-"+Pd[i[a+8]]+Pd[i[a+9]]+"-"+Pd[i[a+10]]+Pd[i[a+11]]+Pd[i[a+12]]+Pd[i[a+13]]+Pd[i[a+14]]+Pd[i[a+15]]).toLowerCase()}function R$e(i){if(!F$e(i))throw TypeError("Invalid UUID");let a;const f=new Uint8Array(16);return f[0]=(a=parseInt(i.slice(0,8),16))>>>24,f[1]=a>>>16&255,f[2]=a>>>8&255,f[3]=a&255,f[4]=(a=parseInt(i.slice(9,13),16))>>>8,f[5]=a&255,f[6]=(a=parseInt(i.slice(14,18),16))>>>8,f[7]=a&255,f[8]=(a=parseInt(i.slice(19,23),16))>>>8,f[9]=a&255,f[10]=(a=parseInt(i.slice(24,36),16))/1099511627776&255,f[11]=a/4294967296&255,f[12]=a>>>24&255,f[13]=a>>>16&255,f[14]=a>>>8&255,f[15]=a&255,f}function j$e(i){i=unescape(encodeURIComponent(i));const a=[];for(let f=0;f>>32-a}function V$e(i){const a=[1518500249,1859775393,2400959708,3395469782],f=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof i=="string"){const b=unescape(encodeURIComponent(i));i=[];for(let E=0;E>>0;j=F,F=P,P=I0t(A,30)>>>0,A=C,C=Y}f[0]=f[0]+C>>>0,f[1]=f[1]+A>>>0,f[2]=f[2]+P>>>0,f[3]=f[3]+F>>>0,f[4]=f[4]+j>>>0}return[f[0]>>24&255,f[0]>>16&255,f[0]>>8&255,f[0]&255,f[1]>>24&255,f[1]>>16&255,f[1]>>8&255,f[1]&255,f[2]>>24&255,f[2]>>16&255,f[2]>>8&255,f[2]&255,f[3]>>24&255,f[3]>>16&255,f[3]>>8&255,f[3]&255,f[4]>>24&255,f[4]>>16&255,f[4]>>8&255,f[4]&255]}const G$e=q$e("v5",80,V$e),U$e=/[^\dA-Za-z](\W)*/g;let h1={},xP=new Map;const W$e=function(i){const a=Object.keys(i);for(const f of a)h1[f]=i[f]},K$e=(i,a,f)=>{const p=h1.entityPadding/3,v=h1.entityPadding/3,m=h1.fontSize*.85,b=a.node().getBBox(),E=[];let C=!1,A=!1,P=0,F=0,j=0,R=0,H=b.height+p*2,Y=1;f.forEach(ft=>{ft.attributeKeyTypeList!==void 0&&ft.attributeKeyTypeList.length>0&&(C=!0),ft.attributeComment!==void 0&&(A=!0)}),f.forEach(ft=>{const Tt=`${a.node().id}-attr-${Y}`;let kt=0;const mt=zN(ft.attributeType),ct=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(mt),yt=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(ft.attributeName),st={};st.tn=ct,st.nn=yt;const xt=ct.node().getBBox(),ht=yt.node().getBBox();if(P=Math.max(P,xt.width),F=Math.max(F,ht.width),kt=Math.max(xt.height,ht.height),C){const dt=ft.attributeKeyTypeList!==void 0?ft.attributeKeyTypeList.join(","):"",Ct=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(dt);st.kn=Ct;const tt=Ct.node().getBBox();j=Math.max(j,tt.width),kt=Math.max(kt,tt.height)}if(A){const dt=i.append("text").classed("er entityLabel",!0).attr("id",`${Tt}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",De().fontFamily).style("font-size",m+"px").text(ft.attributeComment||"");st.cn=dt;const Ct=dt.node().getBBox();R=Math.max(R,Ct.width),kt=Math.max(kt,Ct.height)}st.height=kt,E.push(st),H+=kt+p*2,Y+=1});let rt=4;C&&(rt+=2),A&&(rt+=2);const J=P+F+j+R,it={width:Math.max(h1.minEntityWidth,Math.max(b.width+h1.entityPadding*2,J+v*rt)),height:f.length>0?H:Math.max(h1.minEntityHeight,b.height+h1.entityPadding*2)};if(f.length>0){const ft=Math.max(0,(it.width-J-v*rt)/(rt/2));a.attr("transform","translate("+it.width/2+","+(p+b.height/2)+")");let Tt=b.height+p*2,kt="attributeBoxOdd";E.forEach(mt=>{const ct=Tt+p+mt.height/2;mt.tn.attr("transform","translate("+v+","+ct+")");const yt=i.insert("rect","#"+mt.tn.node().id).classed(`er ${kt}`,!0).attr("x",0).attr("y",Tt).attr("width",P+v*2+ft).attr("height",mt.height+p*2),st=parseFloat(yt.attr("x"))+parseFloat(yt.attr("width"));mt.nn.attr("transform","translate("+(st+v)+","+ct+")");const xt=i.insert("rect","#"+mt.nn.node().id).classed(`er ${kt}`,!0).attr("x",st).attr("y",Tt).attr("width",F+v*2+ft).attr("height",mt.height+p*2);let ht=parseFloat(xt.attr("x"))+parseFloat(xt.attr("width"));if(C){mt.kn.attr("transform","translate("+(ht+v)+","+ct+")");const dt=i.insert("rect","#"+mt.kn.node().id).classed(`er ${kt}`,!0).attr("x",ht).attr("y",Tt).attr("width",j+v*2+ft).attr("height",mt.height+p*2);ht=parseFloat(dt.attr("x"))+parseFloat(dt.attr("width"))}A&&(mt.cn.attr("transform","translate("+(ht+v)+","+ct+")"),i.insert("rect","#"+mt.cn.node().id).classed(`er ${kt}`,"true").attr("x",ht).attr("y",Tt).attr("width",R+v*2+ft).attr("height",mt.height+p*2)),Tt+=mt.height+p*2,kt=kt==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else it.height=Math.max(h1.minEntityHeight,H),a.attr("transform","translate("+it.width/2+","+it.height/2+")");return it},Y$e=function(i,a,f){const p=Object.keys(a);let v;return p.forEach(function(m){const b=eze(m,"entity");xP.set(m,b);const E=i.append("g").attr("id",b);v=v===void 0?b:v;const C="text-"+b,A=E.append("text").classed("er entityLabel",!0).attr("id",C).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",De().fontFamily).style("font-size",h1.fontSize+"px").text(m),{width:P,height:F}=K$e(E,A,a[m].attributes),R=E.insert("rect","#"+C).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",P).attr("height",F).node().getBBox();f.setNode(b,{width:R.width,height:R.height,shape:"rect",id:b})}),v},X$e=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )")})},FBt=function(i){return(i.entityA+i.roleA+i.entityB).replace(/\s/g,"")},Q$e=function(i,a){return i.forEach(function(f){a.setEdge(xP.get(f.entityA),xP.get(f.entityB),{relationship:f},FBt(f))}),i};let BBt=0;const Z$e=function(i,a,f,p,v){BBt++;const m=f.edge(xP.get(a.entityA),xP.get(a.entityB),FBt(a)),b=YE().x(function(H){return H.x}).y(function(H){return H.y}).curve(MA),E=i.insert("path","#"+p).classed("er relationshipLine",!0).attr("d",b(m.points)).style("stroke",h1.stroke).style("fill","none");a.relSpec.relType===v.db.Identification.NON_IDENTIFYING&&E.attr("stroke-dasharray","8,8");let C="";switch(h1.arrowMarkerAbsolute&&(C=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,C=C.replace(/\(/g,"\\("),C=C.replace(/\)/g,"\\)")),a.relSpec.cardA){case v.db.Cardinality.ZERO_OR_ONE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ZERO_OR_ONE_END+")");break;case v.db.Cardinality.ZERO_OR_MORE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ZERO_OR_MORE_END+")");break;case v.db.Cardinality.ONE_OR_MORE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ONE_OR_MORE_END+")");break;case v.db.Cardinality.ONLY_ONE:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.ONLY_ONE_END+")");break;case v.db.Cardinality.MD_PARENT:E.attr("marker-end","url("+C+"#"+lm.ERMarkers.MD_PARENT_END+")");break}switch(a.relSpec.cardB){case v.db.Cardinality.ZERO_OR_ONE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ZERO_OR_ONE_START+")");break;case v.db.Cardinality.ZERO_OR_MORE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ZERO_OR_MORE_START+")");break;case v.db.Cardinality.ONE_OR_MORE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ONE_OR_MORE_START+")");break;case v.db.Cardinality.ONLY_ONE:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.ONLY_ONE_START+")");break;case v.db.Cardinality.MD_PARENT:E.attr("marker-start","url("+C+"#"+lm.ERMarkers.MD_PARENT_START+")");break}const A=E.node().getTotalLength(),P=E.node().getPointAtLength(A*.5),F="rel"+BBt,R=i.append("text").classed("er relationshipLabel",!0).attr("id",F).attr("x",P.x).attr("y",P.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",De().fontFamily).style("font-size",h1.fontSize+"px").text(a.roleA).node().getBBox();i.insert("rect","#"+F).classed("er relationshipLabelBox",!0).attr("x",P.x-R.width/2).attr("y",P.y-R.height/2).attr("width",R.width).attr("height",R.height)},J$e=function(i,a,f,p){h1=De().er,Wt.info("Drawing ER diagram");const v=De().securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const E=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);lm.insertMarkers(E,h1);let C;C=new l1({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:h1.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const A=Y$e(E,p.db.getEntities(),C),P=Q$e(p.db.getRelationships(),C);nL(C),X$e(E,C),P.forEach(function(Y){Z$e(E,Y,C,A,p)});const F=h1.diagramPadding;to.insertTitle(E,"entityTitleText",h1.titleTopMargin,p.db.getDiagramTitle());const j=E.node().getBBox(),R=j.width+F*2,H=j.height+F*2;og(E,H,R,h1.useMaxWidth),E.attr("viewBox",`${j.x-F} ${j.y-F} ${R} ${H}`)},tze="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function eze(i="",a=""){const f=i.replace(U$e,"");return`${RBt(a)}${RBt(f)}${G$e(i,tze)}`}function RBt(i=""){return i.length>0?`${i}-`:""}const nze=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:M$e,db:N$e,renderer:{setConf:W$e,draw:J$e},styles:i=>` + .entityBox { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + } + + .attributeBoxOdd { + fill: ${i.attributeBackgroundColorOdd}; + stroke: ${i.nodeBorder}; + } + + .attributeBoxEven { + fill: ${i.attributeBackgroundColorEven}; + stroke: ${i.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${i.tertiaryColor}; + opacity: 0.7; + background-color: ${i.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .relationshipLine { + stroke: ${i.lineColor}; + } + + .entityTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } + #MD_PARENT_START { + fill: #f5f5f5 !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; + } + #MD_PARENT_END { + fill: #f5f5f5 !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; + } + +`}},Symbol.toStringTag,{value:"Module"}));var O0t=function(){var i=function(yt,st,xt,ht){for(xt=xt||{},ht=yt.length;ht--;xt[yt[ht]]=st);return xt},a=[1,4],f=[1,7],p=[1,5],v=[1,9],m=[1,6],b=[2,6],E=[1,16],C=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],A=[8,14,20,22,24,25,27,29,32,37,40],P=[8,13,14,20,22,24,25,27,29,32,37,40],F=[1,26],j=[6,8,14,50,55],R=[8,14,55],H=[1,53],Y=[1,52],rt=[8,14,30,33,35,38,55],J=[1,67],it=[1,68],ft=[1,69],Tt=[8,14,33,35,42,55],kt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(st,xt,ht,dt,Ct,tt,Pt){var pt=tt.length-1;switch(Ct){case 3:return tt[pt];case 4:return tt[pt-1];case 5:return dt.setDirection(tt[pt-3]),tt[pt-1];case 7:dt.setOptions(tt[pt-1]),this.$=tt[pt];break;case 8:tt[pt-1]+=tt[pt],this.$=tt[pt-1];break;case 10:this.$=[];break;case 11:tt[pt-1].push(tt[pt]),this.$=tt[pt-1];break;case 12:this.$=tt[pt-1];break;case 17:this.$=tt[pt].trim(),dt.setAccTitle(this.$);break;case 18:case 19:this.$=tt[pt].trim(),dt.setAccDescription(this.$);break;case 20:dt.addSection(tt[pt].substr(8)),this.$=tt[pt].substr(8);break;case 22:dt.checkout(tt[pt]);break;case 23:dt.branch(tt[pt]);break;case 24:dt.branch(tt[pt-2],tt[pt]);break;case 25:dt.cherryPick(tt[pt],"",void 0);break;case 26:dt.cherryPick(tt[pt-2],"",tt[pt]);break;case 27:case 29:dt.cherryPick(tt[pt-2],"","");break;case 28:dt.cherryPick(tt[pt],"",tt[pt-2]);break;case 30:dt.merge(tt[pt],"","","");break;case 31:dt.merge(tt[pt-2],tt[pt],"","");break;case 32:dt.merge(tt[pt-2],"",tt[pt],"");break;case 33:dt.merge(tt[pt-2],"","",tt[pt]);break;case 34:dt.merge(tt[pt-4],tt[pt],"",tt[pt-2]);break;case 35:dt.merge(tt[pt-4],"",tt[pt],tt[pt-2]);break;case 36:dt.merge(tt[pt-4],"",tt[pt-2],tt[pt]);break;case 37:dt.merge(tt[pt-4],tt[pt-2],tt[pt],"");break;case 38:dt.merge(tt[pt-4],tt[pt-2],"",tt[pt]);break;case 39:dt.merge(tt[pt-4],tt[pt],tt[pt-2],"");break;case 40:dt.merge(tt[pt-6],tt[pt-4],tt[pt-2],tt[pt]);break;case 41:dt.merge(tt[pt-6],tt[pt],tt[pt-4],tt[pt-2]);break;case 42:dt.merge(tt[pt-6],tt[pt-4],tt[pt],tt[pt-2]);break;case 43:dt.merge(tt[pt-6],tt[pt-2],tt[pt-4],tt[pt]);break;case 44:dt.merge(tt[pt-6],tt[pt],tt[pt-2],tt[pt-4]);break;case 45:dt.merge(tt[pt-6],tt[pt-2],tt[pt],tt[pt-4]);break;case 46:dt.commit(tt[pt]);break;case 47:dt.commit("","",dt.commitType.NORMAL,tt[pt]);break;case 48:dt.commit("","",tt[pt],"");break;case 49:dt.commit("","",tt[pt],tt[pt-2]);break;case 50:dt.commit("","",tt[pt-2],tt[pt]);break;case 51:dt.commit("",tt[pt],dt.commitType.NORMAL,"");break;case 52:dt.commit("",tt[pt-2],dt.commitType.NORMAL,tt[pt]);break;case 53:dt.commit("",tt[pt],dt.commitType.NORMAL,tt[pt-2]);break;case 54:dt.commit("",tt[pt-2],tt[pt],"");break;case 55:dt.commit("",tt[pt],tt[pt-2],"");break;case 56:dt.commit("",tt[pt-4],tt[pt-2],tt[pt]);break;case 57:dt.commit("",tt[pt-4],tt[pt],tt[pt-2]);break;case 58:dt.commit("",tt[pt-2],tt[pt-4],tt[pt]);break;case 59:dt.commit("",tt[pt],tt[pt-4],tt[pt-2]);break;case 60:dt.commit("",tt[pt],tt[pt-2],tt[pt-4]);break;case 61:dt.commit("",tt[pt-2],tt[pt],tt[pt-4]);break;case 62:dt.commit(tt[pt],"",dt.commitType.NORMAL,"");break;case 63:dt.commit(tt[pt],"",dt.commitType.NORMAL,tt[pt-2]);break;case 64:dt.commit(tt[pt-2],"",dt.commitType.NORMAL,tt[pt]);break;case 65:dt.commit(tt[pt-2],"",tt[pt],"");break;case 66:dt.commit(tt[pt],"",tt[pt-2],"");break;case 67:dt.commit(tt[pt],tt[pt-2],dt.commitType.NORMAL,"");break;case 68:dt.commit(tt[pt-2],tt[pt],dt.commitType.NORMAL,"");break;case 69:dt.commit(tt[pt-4],"",tt[pt-2],tt[pt]);break;case 70:dt.commit(tt[pt-4],"",tt[pt],tt[pt-2]);break;case 71:dt.commit(tt[pt-2],"",tt[pt-4],tt[pt]);break;case 72:dt.commit(tt[pt],"",tt[pt-4],tt[pt-2]);break;case 73:dt.commit(tt[pt],"",tt[pt-2],tt[pt-4]);break;case 74:dt.commit(tt[pt-2],"",tt[pt],tt[pt-4]);break;case 75:dt.commit(tt[pt-4],tt[pt],tt[pt-2],"");break;case 76:dt.commit(tt[pt-4],tt[pt-2],tt[pt],"");break;case 77:dt.commit(tt[pt-2],tt[pt],tt[pt-4],"");break;case 78:dt.commit(tt[pt],tt[pt-2],tt[pt-4],"");break;case 79:dt.commit(tt[pt],tt[pt-4],tt[pt-2],"");break;case 80:dt.commit(tt[pt-2],tt[pt-4],tt[pt],"");break;case 81:dt.commit(tt[pt-4],tt[pt],dt.commitType.NORMAL,tt[pt-2]);break;case 82:dt.commit(tt[pt-4],tt[pt-2],dt.commitType.NORMAL,tt[pt]);break;case 83:dt.commit(tt[pt-2],tt[pt],dt.commitType.NORMAL,tt[pt-4]);break;case 84:dt.commit(tt[pt],tt[pt-2],dt.commitType.NORMAL,tt[pt-4]);break;case 85:dt.commit(tt[pt],tt[pt-4],dt.commitType.NORMAL,tt[pt-2]);break;case 86:dt.commit(tt[pt-2],tt[pt-4],dt.commitType.NORMAL,tt[pt]);break;case 87:dt.commit(tt[pt-6],tt[pt-4],tt[pt-2],tt[pt]);break;case 88:dt.commit(tt[pt-6],tt[pt-4],tt[pt],tt[pt-2]);break;case 89:dt.commit(tt[pt-6],tt[pt-2],tt[pt-4],tt[pt]);break;case 90:dt.commit(tt[pt-6],tt[pt],tt[pt-4],tt[pt-2]);break;case 91:dt.commit(tt[pt-6],tt[pt-2],tt[pt],tt[pt-4]);break;case 92:dt.commit(tt[pt-6],tt[pt],tt[pt-2],tt[pt-4]);break;case 93:dt.commit(tt[pt-4],tt[pt-6],tt[pt-2],tt[pt]);break;case 94:dt.commit(tt[pt-4],tt[pt-6],tt[pt],tt[pt-2]);break;case 95:dt.commit(tt[pt-2],tt[pt-6],tt[pt-4],tt[pt]);break;case 96:dt.commit(tt[pt],tt[pt-6],tt[pt-4],tt[pt-2]);break;case 97:dt.commit(tt[pt-2],tt[pt-6],tt[pt],tt[pt-4]);break;case 98:dt.commit(tt[pt],tt[pt-6],tt[pt-2],tt[pt-4]);break;case 99:dt.commit(tt[pt],tt[pt-4],tt[pt-2],tt[pt-6]);break;case 100:dt.commit(tt[pt-2],tt[pt-4],tt[pt],tt[pt-6]);break;case 101:dt.commit(tt[pt],tt[pt-2],tt[pt-4],tt[pt-6]);break;case 102:dt.commit(tt[pt-2],tt[pt],tt[pt-4],tt[pt-6]);break;case 103:dt.commit(tt[pt-4],tt[pt-2],tt[pt],tt[pt-6]);break;case 104:dt.commit(tt[pt-4],tt[pt],tt[pt-2],tt[pt-6]);break;case 105:dt.commit(tt[pt-2],tt[pt-4],tt[pt-6],tt[pt]);break;case 106:dt.commit(tt[pt],tt[pt-4],tt[pt-6],tt[pt-2]);break;case 107:dt.commit(tt[pt-2],tt[pt],tt[pt-6],tt[pt-4]);break;case 108:dt.commit(tt[pt],tt[pt-2],tt[pt-6],tt[pt-4]);break;case 109:dt.commit(tt[pt-4],tt[pt-2],tt[pt-6],tt[pt]);break;case 110:dt.commit(tt[pt-4],tt[pt],tt[pt-6],tt[pt-2]);break;case 111:this.$="";break;case 112:this.$=tt[pt];break;case 113:this.$=dt.commitType.NORMAL;break;case 114:this.$=dt.commitType.REVERSE;break;case 115:this.$=dt.commitType.HIGHLIGHT;break;case 118:dt.parseDirective("%%{","open_directive");break;case 119:dt.parseDirective(tt[pt],"type_directive");break;case 120:tt[pt]=tt[pt].trim().replace(/'/g,'"'),dt.parseDirective(tt[pt],"arg_directive");break;case 121:dt.parseDirective("}%%","close_directive","gitGraph");break}},table:[{3:1,4:2,5:3,6:a,8:f,14:p,46:8,50:v,55:m},{1:[3]},{3:10,4:2,5:3,6:a,8:f,14:p,46:8,50:v,55:m},{3:11,4:2,5:3,6:a,8:f,14:p,46:8,50:v,55:m},{7:12,8:b,9:[1,13],10:[1,14],11:15,14:E},i(C,[2,124]),i(C,[2,125]),i(C,[2,126]),{47:17,51:[1,18]},{51:[2,118]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:b,11:15,14:E},{9:[1,21]},i(A,[2,10],{12:22,13:[1,23]}),i(P,[2,9]),{9:[1,25],48:24,53:F},i([9,53],[2,119]),{1:[2,3]},{8:[1,27]},{7:28,8:b,11:15,14:E},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],37:[1,42],40:[1,41]},i(P,[2,8]),i(j,[2,116]),{49:45,52:[1,46]},i(j,[2,121]),{1:[2,4]},{8:[1,47]},i(A,[2,11]),{4:48,8:f,14:p,55:m},i(A,[2,13]),i(R,[2,14]),i(R,[2,15]),i(R,[2,16]),{21:[1,49]},{23:[1,50]},i(R,[2,19]),i(R,[2,20]),i(R,[2,21]),{28:51,34:H,54:Y},i(R,[2,111],{41:54,33:[1,57],34:[1,59],35:[1,55],38:[1,56],42:[1,58]}),{28:60,34:H,54:Y},{33:[1,61],35:[1,62]},{28:63,34:H,54:Y},{48:64,53:F},{53:[2,120]},{1:[2,5]},i(A,[2,12]),i(R,[2,17]),i(R,[2,18]),i(R,[2,22]),i(rt,[2,122]),i(rt,[2,123]),i(R,[2,46]),{34:[1,65]},{39:66,43:J,44:it,45:ft},{34:[1,70]},{34:[1,71]},i(R,[2,112]),i(R,[2,30],{33:[1,72],35:[1,74],38:[1,73]}),{34:[1,75]},{34:[1,76],36:[1,77]},i(R,[2,23],{30:[1,78]}),i(j,[2,117]),i(R,[2,47],{33:[1,80],38:[1,79],42:[1,81]}),i(R,[2,48],{33:[1,83],35:[1,82],42:[1,84]}),i(Tt,[2,113]),i(Tt,[2,114]),i(Tt,[2,115]),i(R,[2,51],{35:[1,85],38:[1,86],42:[1,87]}),i(R,[2,62],{33:[1,90],35:[1,88],38:[1,89]}),{34:[1,91]},{39:92,43:J,44:it,45:ft},{34:[1,93]},i(R,[2,25],{35:[1,94]}),{33:[1,95]},{33:[1,96]},{31:[1,97]},{39:98,43:J,44:it,45:ft},{34:[1,99]},{34:[1,100]},{34:[1,101]},{34:[1,102]},{34:[1,103]},{34:[1,104]},{39:105,43:J,44:it,45:ft},{34:[1,106]},{34:[1,107]},{39:108,43:J,44:it,45:ft},{34:[1,109]},i(R,[2,31],{35:[1,111],38:[1,110]}),i(R,[2,32],{33:[1,113],35:[1,112]}),i(R,[2,33],{33:[1,114],38:[1,115]}),{34:[1,116],36:[1,117]},{34:[1,118]},{34:[1,119]},i(R,[2,24]),i(R,[2,49],{33:[1,120],42:[1,121]}),i(R,[2,53],{38:[1,122],42:[1,123]}),i(R,[2,63],{33:[1,125],38:[1,124]}),i(R,[2,50],{33:[1,126],42:[1,127]}),i(R,[2,55],{35:[1,128],42:[1,129]}),i(R,[2,66],{33:[1,131],35:[1,130]}),i(R,[2,52],{38:[1,132],42:[1,133]}),i(R,[2,54],{35:[1,134],42:[1,135]}),i(R,[2,67],{35:[1,137],38:[1,136]}),i(R,[2,64],{33:[1,139],38:[1,138]}),i(R,[2,65],{33:[1,141],35:[1,140]}),i(R,[2,68],{35:[1,143],38:[1,142]}),{39:144,43:J,44:it,45:ft},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{39:149,43:J,44:it,45:ft},i(R,[2,26]),i(R,[2,27]),i(R,[2,28]),i(R,[2,29]),{34:[1,150]},{34:[1,151]},{39:152,43:J,44:it,45:ft},{34:[1,153]},{39:154,43:J,44:it,45:ft},{34:[1,155]},{34:[1,156]},{34:[1,157]},{34:[1,158]},{34:[1,159]},{34:[1,160]},{34:[1,161]},{39:162,43:J,44:it,45:ft},{34:[1,163]},{34:[1,164]},{34:[1,165]},{39:166,43:J,44:it,45:ft},{34:[1,167]},{39:168,43:J,44:it,45:ft},{34:[1,169]},{34:[1,170]},{34:[1,171]},{39:172,43:J,44:it,45:ft},{34:[1,173]},i(R,[2,37],{35:[1,174]}),i(R,[2,38],{38:[1,175]}),i(R,[2,36],{33:[1,176]}),i(R,[2,39],{35:[1,177]}),i(R,[2,34],{38:[1,178]}),i(R,[2,35],{33:[1,179]}),i(R,[2,60],{42:[1,180]}),i(R,[2,73],{33:[1,181]}),i(R,[2,61],{42:[1,182]}),i(R,[2,84],{38:[1,183]}),i(R,[2,74],{33:[1,184]}),i(R,[2,83],{38:[1,185]}),i(R,[2,59],{42:[1,186]}),i(R,[2,72],{33:[1,187]}),i(R,[2,58],{42:[1,188]}),i(R,[2,78],{35:[1,189]}),i(R,[2,71],{33:[1,190]}),i(R,[2,77],{35:[1,191]}),i(R,[2,57],{42:[1,192]}),i(R,[2,85],{38:[1,193]}),i(R,[2,56],{42:[1,194]}),i(R,[2,79],{35:[1,195]}),i(R,[2,80],{35:[1,196]}),i(R,[2,86],{38:[1,197]}),i(R,[2,70],{33:[1,198]}),i(R,[2,81],{38:[1,199]}),i(R,[2,69],{33:[1,200]}),i(R,[2,75],{35:[1,201]}),i(R,[2,76],{35:[1,202]}),i(R,[2,82],{38:[1,203]}),{34:[1,204]},{39:205,43:J,44:it,45:ft},{34:[1,206]},{34:[1,207]},{39:208,43:J,44:it,45:ft},{34:[1,209]},{34:[1,210]},{34:[1,211]},{34:[1,212]},{39:213,43:J,44:it,45:ft},{34:[1,214]},{39:215,43:J,44:it,45:ft},{34:[1,216]},{34:[1,217]},{34:[1,218]},{34:[1,219]},{34:[1,220]},{34:[1,221]},{34:[1,222]},{39:223,43:J,44:it,45:ft},{34:[1,224]},{34:[1,225]},{34:[1,226]},{39:227,43:J,44:it,45:ft},{34:[1,228]},{39:229,43:J,44:it,45:ft},{34:[1,230]},{34:[1,231]},{34:[1,232]},{39:233,43:J,44:it,45:ft},i(R,[2,40]),i(R,[2,42]),i(R,[2,41]),i(R,[2,43]),i(R,[2,45]),i(R,[2,44]),i(R,[2,101]),i(R,[2,102]),i(R,[2,99]),i(R,[2,100]),i(R,[2,104]),i(R,[2,103]),i(R,[2,108]),i(R,[2,107]),i(R,[2,106]),i(R,[2,105]),i(R,[2,110]),i(R,[2,109]),i(R,[2,98]),i(R,[2,97]),i(R,[2,96]),i(R,[2,95]),i(R,[2,93]),i(R,[2,94]),i(R,[2,92]),i(R,[2,91]),i(R,[2,90]),i(R,[2,89]),i(R,[2,87]),i(R,[2,88])],defaultActions:{9:[2,118],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,120],47:[2,5]},parseError:function(st,xt){if(xt.recoverable)this.trace(st);else{var ht=new Error(st);throw ht.hash=xt,ht}},parse:function(st){var xt=this,ht=[0],dt=[],Ct=[null],tt=[],Pt=this.table,pt="",Ft=0,X=0,Rt=2,Bt=1,vt=tt.slice.call(arguments,1),Ot=Object.create(this.lexer),Vt={yy:{}};for(var qe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,qe)&&(Vt.yy[qe]=this.yy[qe]);Ot.setInput(st,Vt.yy),Vt.yy.lexer=Ot,Vt.yy.parser=this,typeof Ot.yylloc>"u"&&(Ot.yylloc={});var _n=Ot.yylloc;tt.push(_n);var Te=Ot.options&&Ot.options.ranges;typeof Vt.yy.parseError=="function"?this.parseError=Vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Wn(){var Yt;return Yt=dt.pop()||Ot.lex()||Bt,typeof Yt!="number"&&(Yt instanceof Array&&(dt=Yt,Yt=dt.pop()),Yt=xt.symbols_[Yt]||Yt),Yt}for(var Ae,ne,ke,Ve,Ee={},He,Ce,$e,ye;;){if(ne=ht[ht.length-1],this.defaultActions[ne]?ke=this.defaultActions[ne]:((Ae===null||typeof Ae>"u")&&(Ae=Wn()),ke=Pt[ne]&&Pt[ne][Ae]),typeof ke>"u"||!ke.length||!ke[0]){var fn="";ye=[];for(He in Pt[ne])this.terminals_[He]&&He>Rt&&ye.push("'"+this.terminals_[He]+"'");Ot.showPosition?fn="Parse error on line "+(Ft+1)+`: +`+Ot.showPosition()+` +Expecting `+ye.join(", ")+", got '"+(this.terminals_[Ae]||Ae)+"'":fn="Parse error on line "+(Ft+1)+": Unexpected "+(Ae==Bt?"end of input":"'"+(this.terminals_[Ae]||Ae)+"'"),this.parseError(fn,{text:Ot.match,token:this.terminals_[Ae]||Ae,line:Ot.yylineno,loc:_n,expected:ye})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ne+", token: "+Ae);switch(ke[0]){case 1:ht.push(Ae),Ct.push(Ot.yytext),tt.push(Ot.yylloc),ht.push(ke[1]),Ae=null,X=Ot.yyleng,pt=Ot.yytext,Ft=Ot.yylineno,_n=Ot.yylloc;break;case 2:if(Ce=this.productions_[ke[1]][1],Ee.$=Ct[Ct.length-Ce],Ee._$={first_line:tt[tt.length-(Ce||1)].first_line,last_line:tt[tt.length-1].last_line,first_column:tt[tt.length-(Ce||1)].first_column,last_column:tt[tt.length-1].last_column},Te&&(Ee._$.range=[tt[tt.length-(Ce||1)].range[0],tt[tt.length-1].range[1]]),Ve=this.performAction.apply(Ee,[pt,X,Ft,Vt.yy,ke[1],Ct,tt].concat(vt)),typeof Ve<"u")return Ve;Ce&&(ht=ht.slice(0,-1*Ce*2),Ct=Ct.slice(0,-1*Ce),tt=tt.slice(0,-1*Ce)),ht.push(this.productions_[ke[1]][0]),Ct.push(Ee.$),tt.push(Ee._$),$e=Pt[ht[ht.length-2]][ht[ht.length-1]],ht.push($e);break;case 3:return!0}}return!0}},mt=function(){var yt={EOF:1,parseError:function(xt,ht){if(this.yy.parser)this.yy.parser.parseError(xt,ht);else throw new Error(xt)},setInput:function(st,xt){return this.yy=xt||this.yy||{},this._input=st,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var st=this._input[0];this.yytext+=st,this.yyleng++,this.offset++,this.match+=st,this.matched+=st;var xt=st.match(/(?:\r\n?|\n).*/g);return xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),st},unput:function(st){var xt=st.length,ht=st.split(/(?:\r\n?|\n)/g);this._input=st+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-xt),this.offset-=xt;var dt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ht.length-1&&(this.yylineno-=ht.length-1);var Ct=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ht?(ht.length===dt.length?this.yylloc.first_column:0)+dt[dt.length-ht.length].length-ht[0].length:this.yylloc.first_column-xt},this.options.ranges&&(this.yylloc.range=[Ct[0],Ct[0]+this.yyleng-xt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(st){this.unput(this.match.slice(st))},pastInput:function(){var st=this.matched.substr(0,this.matched.length-this.match.length);return(st.length>20?"...":"")+st.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var st=this.match;return st.length<20&&(st+=this._input.substr(0,20-st.length)),(st.substr(0,20)+(st.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var st=this.pastInput(),xt=new Array(st.length+1).join("-");return st+this.upcomingInput()+` +`+xt+"^"},test_match:function(st,xt){var ht,dt,Ct;if(this.options.backtrack_lexer&&(Ct={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ct.yylloc.range=this.yylloc.range.slice(0))),dt=st[0].match(/(?:\r\n?|\n).*/g),dt&&(this.yylineno+=dt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:dt?dt[dt.length-1].length-dt[dt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+st[0].length},this.yytext+=st[0],this.match+=st[0],this.matches=st,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(st[0].length),this.matched+=st[0],ht=this.performAction.call(this,this.yy,this,xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ht)return ht;if(this._backtrack){for(var tt in Ct)this[tt]=Ct[tt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var st,xt,ht,dt;this._more||(this.yytext="",this.match="");for(var Ct=this._currentRules(),tt=0;ttxt[0].length)){if(xt=ht,dt=tt,this.options.backtrack_lexer){if(st=this.test_match(ht,Ct[tt]),st!==!1)return st;if(this._backtrack){xt=!1;continue}else return!1}else if(!this.options.flex)break}return xt?(st=this.test_match(xt,Ct[dt]),st!==!1?st:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var xt=this.next();return xt||this.lex()},begin:function(xt){this.conditionStack.push(xt)},popState:function(){var xt=this.conditionStack.length-1;return xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(xt){return xt=this.conditionStack.length-1-Math.abs(xt||0),xt>=0?this.conditionStack[xt]:"INITIAL"},pushState:function(xt){this.begin(xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xt,ht,dt,Ct){switch(dt){case 0:return this.begin("open_directive"),50;case 1:return this.begin("type_directive"),51;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),53;case 4:return 52;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:break;case 14:break;case 15:return 6;case 16:return 40;case 17:return 33;case 18:return 38;case 19:return 42;case 20:return 43;case 21:return 44;case 22:return 45;case 23:return 35;case 24:return 29;case 25:return 30;case 26:return 37;case 27:return 32;case 28:return 27;case 29:return 10;case 30:return 10;case 31:return 9;case 32:return"CARET";case 33:this.begin("options");break;case 34:this.popState();break;case 35:return 13;case 36:return 36;case 37:this.begin("string");break;case 38:this.popState();break;case 39:return 34;case 40:return 31;case 41:return 54;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[34,35],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,36,37,40,41,42,43],inclusive:!0}}};return yt}();kt.lexer=mt;function ct(){this.yy={}}return ct.prototype=kt,kt.Parser=ct,new ct}();O0t.parser=O0t;const rze=O0t;let EK=De().gitGraph.mainBranchName,ize=De().gitGraph.mainBranchOrder,f1={},gg=null,kP={};kP[EK]={name:EK,order:ize};let Rf={};Rf[EK]=gg;let td=EK,jBt="LR",v9=0;function N0t(){return jIt({length:7})}const sze=function(i,a,f){J1.parseDirective(this,i,a,f)};function aze(i,a){const f=Object.create(null);return i.reduce((p,v)=>{const m=a(v);return f[m]||(f[m]=!0,p.push(v)),p},[])}const oze=function(i){jBt=i};let $Bt={};const cze=function(i){Wt.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{$Bt=JSON.parse(i)}catch(a){Wt.error("error while parsing gitGraph options",a.message)}},uze=function(){return $Bt},lze=function(i,a,f,p){Wt.debug("Entering commit:",i,a,f,p),a=ui.sanitizeText(a,De()),i=ui.sanitizeText(i,De()),p=ui.sanitizeText(p,De());const v={id:a||v9+"-"+N0t(),message:i,seq:v9++,type:f||EP.NORMAL,tag:p||"",parents:gg==null?[]:[gg.id],branch:td};gg=v,f1[v.id]=v,Rf[td]=v.id,Wt.debug("in pushCommit "+v.id)},hze=function(i,a){if(i=ui.sanitizeText(i,De()),Rf[i]===void 0)Rf[i]=gg!=null?gg.id:null,kP[i]={name:i,order:a?parseInt(a,10):null},zBt(i),Wt.debug("in createBranch");else{let f=new Error('Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout '+i+'")');throw f.hash={text:"branch "+i,token:"branch "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+i+'"']},f}},fze=function(i,a,f,p){i=ui.sanitizeText(i,De()),a=ui.sanitizeText(a,De());const v=f1[Rf[td]],m=f1[Rf[i]];if(td===i){let E=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},E}else if(v===void 0||!v){let E=new Error('Incorrect usage of "merge". Current branch ('+td+")has no commits");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},E}else if(Rf[i]===void 0){let E=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") does not exist");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+i]},E}else if(m===void 0||!m){let E=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") has no commits");throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},E}else if(v===m){let E=new Error('Incorrect usage of "merge". Both branches have same head');throw E.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},E}else if(a&&f1[a]!==void 0){let E=new Error('Incorrect usage of "merge". Commit with id:'+a+" already exists, use different custom Id");throw E.hash={text:"merge "+i+a+f+p,token:"merge "+i+a+f+p,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+i+" "+a+"_UNIQUE "+f+" "+p]},E}const b={id:a||v9+"-"+N0t(),message:"merged branch "+i+" into "+td,seq:v9++,parents:[gg==null?null:gg.id,Rf[i]],branch:td,type:EP.MERGE,customType:f,customId:!!a,tag:p||""};gg=b,f1[b.id]=b,Rf[td]=b.id,Wt.debug(Rf),Wt.debug("in mergeBranch")},dze=function(i,a,f){if(Wt.debug("Entering cherryPick:",i,a,f),i=ui.sanitizeText(i,De()),a=ui.sanitizeText(a,De()),f=ui.sanitizeText(f,De()),!i||f1[i]===void 0){let m=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw m.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},m}let p=f1[i],v=p.branch;if(p.type===EP.MERGE){let m=new Error('Incorrect usage of "cherryPick". Source commit should not be a merge commit');throw m.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},m}if(!a||f1[a]===void 0){if(v===td){let E=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw E.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},E}const m=f1[Rf[td]];if(m===void 0||!m){let E=new Error('Incorrect usage of "cherry-pick". Current branch ('+td+")has no commits");throw E.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},E}const b={id:v9+"-"+N0t(),message:"cherry-picked "+p+" into "+td,seq:v9++,parents:[gg==null?null:gg.id,p.id],branch:td,type:EP.CHERRY_PICK,tag:f??"cherry-pick:"+p.id};gg=b,f1[b.id]=b,Rf[td]=b.id,Wt.debug(Rf),Wt.debug("in cherryPick")}},zBt=function(i){if(i=ui.sanitizeText(i,De()),Rf[i]===void 0){let a=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+i+'")');throw a.hash={text:"checkout "+i,token:"checkout "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+i+'"']},a}else{td=i;const a=Rf[td];gg=f1[a]}};function qBt(i,a,f){const p=i.indexOf(a);p===-1?i.push(f):i.splice(p,1,f)}function HBt(i){const a=i.reduce((v,m)=>v.seq>m.seq?v:m,i[0]);let f="";i.forEach(function(v){v===a?f+=" *":f+=" |"});const p=[f,a.id,a.seq];for(let v in Rf)Rf[v]===a.id&&p.push(v);if(Wt.debug(p.join(" ")),a.parents&&a.parents.length==2){const v=f1[a.parents[0]];qBt(i,a,v),i.push(f1[a.parents[1]])}else{if(a.parents.length==0)return;{const v=f1[a.parents];qBt(i,a,v)}}i=aze(i,v=>v.id),HBt(i)}const gze=function(){Wt.debug(f1);const i=VBt()[0];HBt([i])},pze=function(){f1={},gg=null;let i=De().gitGraph.mainBranchName,a=De().gitGraph.mainBranchOrder;Rf={},Rf[i]=null,kP={},kP[i]={name:i,order:a},td=i,v9=0,cg()},bze=function(){return Object.values(kP).map((a,f)=>a.order!==null?a:{...a,order:parseFloat(`0.${f}`,10)}).sort((a,f)=>a.order-f.order).map(({name:a})=>({name:a}))},vze=function(){return Rf},wze=function(){return f1},VBt=function(){const i=Object.keys(f1).map(function(a){return f1[a]});return i.forEach(function(a){Wt.debug(a.id)}),i.sort((a,f)=>a.seq-f.seq),i},mze=function(){return td},yze=function(){return jBt},xze=function(){return gg},EP={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},kze={parseDirective:sze,getConfig:()=>De().gitGraph,setDirection:oze,setOptions:cze,getOptions:uze,commit:lze,branch:hze,merge:fze,cherryPick:dze,checkout:zBt,prettyPrint:gze,clear:pze,getBranchesAsObjArray:bze,getBranches:vze,getCommits:wze,getCommitsArray:VBt,getCurrentBranch:mze,getDirection:yze,getHead:xze,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,setDiagramTitle:Nb,getDiagramTitle:hp,commitType:EP};let TP={};const Rb={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},w9=8;let ed={},_P={},TK=[],CP=0,x0="LR";const Eze=()=>{ed={},_P={},TP={},CP=0,TK=[],x0="LR"},GBt=i=>{const a=document.createElementNS("http://www.w3.org/2000/svg","text");let f=[];typeof i=="string"?f=i.split(/\\n|\n|/gi):Array.isArray(i)?f=i:f=[];for(const p of f){const v=document.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","0"),v.setAttribute("class","row"),v.textContent=p.trim(),a.appendChild(v)}return a},UBt=(i,a,f)=>{const p=JN().gitGraph,v=i.append("g").attr("class","commit-bullets"),m=i.append("g").attr("class","commit-labels");let b=0;x0==="TB"&&(b=30),Object.keys(a).sort((A,P)=>a[A].seq-a[P].seq).forEach(A=>{const P=a[A],F=x0==="TB"?b+10:ed[P.branch].pos,j=x0==="TB"?ed[P.branch].pos:b+10;if(f){let R,H=P.customType!==void 0&&P.customType!==""?P.customType:P.type;switch(H){case Rb.NORMAL:R="commit-normal";break;case Rb.REVERSE:R="commit-reverse";break;case Rb.HIGHLIGHT:R="commit-highlight";break;case Rb.MERGE:R="commit-merge";break;case Rb.CHERRY_PICK:R="commit-cherry-pick";break;default:R="commit-normal"}if(H===Rb.HIGHLIGHT){const Y=v.append("rect");Y.attr("x",j-10),Y.attr("y",F-10),Y.attr("height",20),Y.attr("width",20),Y.attr("class",`commit ${P.id} commit-highlight${ed[P.branch].index%w9} ${R}-outer`),v.append("rect").attr("x",j-6).attr("y",F-6).attr("height",12).attr("width",12).attr("class",`commit ${P.id} commit${ed[P.branch].index%w9} ${R}-inner`)}else if(H===Rb.CHERRY_PICK)v.append("circle").attr("cx",j).attr("cy",F).attr("r",10).attr("class",`commit ${P.id} ${R}`),v.append("circle").attr("cx",j-3).attr("cy",F+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${P.id} ${R}`),v.append("circle").attr("cx",j+3).attr("cy",F+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${P.id} ${R}`),v.append("line").attr("x1",j+3).attr("y1",F+1).attr("x2",j).attr("y2",F-5).attr("stroke","#fff").attr("class",`commit ${P.id} ${R}`),v.append("line").attr("x1",j-3).attr("y1",F+1).attr("x2",j).attr("y2",F-5).attr("stroke","#fff").attr("class",`commit ${P.id} ${R}`);else{const Y=v.append("circle");if(Y.attr("cx",j),Y.attr("cy",F),Y.attr("r",P.type===Rb.MERGE?9:10),Y.attr("class",`commit ${P.id} commit${ed[P.branch].index%w9}`),H===Rb.MERGE){const rt=v.append("circle");rt.attr("cx",j),rt.attr("cy",F),rt.attr("r",6),rt.attr("class",`commit ${R} ${P.id} commit${ed[P.branch].index%w9}`)}H===Rb.REVERSE&&v.append("path").attr("d",`M ${j-5},${F-5}L${j+5},${F+5}M${j-5},${F+5}L${j+5},${F-5}`).attr("class",`commit ${R} ${P.id} commit${ed[P.branch].index%w9}`)}}if(x0==="TB"?_P[P.id]={x:j,y:b+10}:_P[P.id]={x:b+10,y:F},f){if(P.type!==Rb.CHERRY_PICK&&(P.customId&&P.type===Rb.MERGE||P.type!==Rb.MERGE)&&p.showCommitLabel){const Y=m.append("g"),rt=Y.insert("rect").attr("class","commit-label-bkg"),J=Y.append("text").attr("x",b).attr("y",F+25).attr("class","commit-label").text(P.id);let it=J.node().getBBox();if(rt.attr("x",b+10-it.width/2-2).attr("y",F+13.5).attr("width",it.width+2*2).attr("height",it.height+2*2),x0==="TB"&&(rt.attr("x",j-(it.width+4*4+5)).attr("y",F-12),J.attr("x",j-(it.width+4*4)).attr("y",F+it.height-12)),x0!=="TB"&&J.attr("x",b+10-it.width/2),p.rotateCommitLabel)if(x0==="TB")J.attr("transform","rotate(-45, "+j+", "+F+")"),rt.attr("transform","rotate(-45, "+j+", "+F+")");else{let ft=-7.5-(it.width+10)/25*9.5,Tt=10+it.width/25*8.5;Y.attr("transform","translate("+ft+", "+Tt+") rotate(-45, "+b+", "+F+")")}}if(P.tag){const Y=m.insert("polygon"),rt=m.append("circle"),J=m.append("text").attr("y",F-16).attr("class","tag-label").text(P.tag);let it=J.node().getBBox();J.attr("x",b+10-it.width/2);const ft=it.height/2,Tt=F-19.2;Y.attr("class","tag-label-bkg").attr("points",` + ${b-it.width/2-4/2},${Tt+2} + ${b-it.width/2-4/2},${Tt-2} + ${b+10-it.width/2-4},${Tt-ft-2} + ${b+10+it.width/2+4},${Tt-ft-2} + ${b+10+it.width/2+4},${Tt+ft+2} + ${b+10-it.width/2-4},${Tt+ft+2}`),rt.attr("cx",b-it.width/2+4/2).attr("cy",Tt).attr("r",1.5).attr("class","tag-hole"),x0==="TB"&&(Y.attr("class","tag-label-bkg").attr("points",` + ${j},${b+2} + ${j},${b-2} + ${j+10},${b-ft-2} + ${j+10+it.width+4},${b-ft-2} + ${j+10+it.width+4},${b+ft+2} + ${j+10},${b+ft+2}`).attr("transform","translate(12,12) rotate(45, "+j+","+b+")"),rt.attr("cx",j+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+j+","+b+")"),J.attr("x",j+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+j+","+b+")"))}}b+=50,b>CP&&(CP=b)})},Tze=(i,a,f)=>Object.keys(f).filter(m=>f[m].branch===a.branch&&f[m].seq>i.seq&&f[m].seq0,SP=(i,a,f=0)=>{const p=i+Math.abs(i-a)/2;if(f>5)return p;if(TK.every(b=>Math.abs(b-p)>=10))return TK.push(p),p;const m=Math.abs(i-a);return SP(i,a-m/5,f+1)},_ze=(i,a,f,p)=>{const v=_P[a.id],m=_P[f.id],b=Tze(a,f,p);let E="",C="",A=0,P=0,F=ed[f.branch].index,j;if(b){E="A 10 10, 0, 0, 0,",C="A 10 10, 0, 0, 1,",A=10,P=10,F=ed[f.branch].index;const R=v.ym.x&&(E="A 20 20, 0, 0, 0,",C="A 20 20, 0, 0, 1,",A=20,P=20,F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${C} ${v.x-P} ${m.y} L ${m.x} ${m.y}`),v.x===m.x&&(F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x+A} ${v.y} ${E} ${v.x+P} ${m.y+A} L ${m.x} ${m.y}`)):(v.ym.y&&(E="A 20 20, 0, 0, 0,",A=20,P=20,F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${m.x-A} ${v.y} ${E} ${m.x} ${v.y-P} L ${m.x} ${m.y}`),v.y===m.y&&(F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${E} ${v.x+P} ${m.y} L ${m.x} ${m.y}`));i.append("path").attr("d",j).attr("class","arrow arrow"+F%w9)},Cze=(i,a)=>{const f=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(p=>{const v=a[p];v.parents&&v.parents.length>0&&v.parents.forEach(m=>{_ze(f,a[m],v,a)})})},Sze=(i,a)=>{const f=JN().gitGraph,p=i.append("g");a.forEach((v,m)=>{const b=m%w9,E=ed[v.name].pos,C=p.append("line");C.attr("x1",0),C.attr("y1",E),C.attr("x2",CP),C.attr("y2",E),C.attr("class","branch branch"+b),x0==="TB"&&(C.attr("y1",30),C.attr("x1",E),C.attr("y2",CP),C.attr("x2",E)),TK.push(E);let A=v.name;const P=GBt(A),F=p.insert("rect"),R=p.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);R.node().appendChild(P);let H=P.getBBox();F.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-H.width-4-(f.rotateCommitLabel===!0?30:0)).attr("y",-H.height/2+8).attr("width",H.width+18).attr("height",H.height+4),R.attr("transform","translate("+(-H.width-14-(f.rotateCommitLabel===!0?30:0))+", "+(E-H.height/2-1)+")"),x0==="TB"&&(F.attr("x",E-H.width/2-10).attr("y",0),R.attr("transform","translate("+(E-H.width/2-5)+", 0)")),x0!=="TB"&&F.attr("transform","translate(-19, "+(E-H.height/2)+")")})},Aze=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:rze,db:kze,renderer:{draw:function(i,a,f,p){Eze();const v=JN(),m=v.gitGraph;Wt.debug("in gitgraph renderer",i+` +`,"id:",a,f),TP=p.db.getCommits();const b=p.db.getBranchesAsObjArray();x0=p.db.getDirection();const E=xr(`[id="${a}"]`);let C=0;b.forEach((A,P)=>{const F=GBt(A.name),j=E.append("g"),R=j.insert("g").attr("class","branchLabel"),H=R.insert("g").attr("class","label branch-label");H.node().appendChild(F);let Y=F.getBBox();ed[A.name]={pos:C,index:P},C+=50+(m.rotateCommitLabel?40:0)+(x0==="TB"?Y.width/2:0),H.remove(),R.remove(),j.remove()}),UBt(E,TP,!1),m.showBranches&&Sze(E,b),Cze(E,TP),UBt(E,TP,!0),to.insertTitle(E,"gitTitleText",m.titleTopMargin,p.db.getDiagramTitle()),SOt(void 0,E,m.diagramPadding,m.useMaxWidth??v.useMaxWidth)}},styles:i=>` + .commit-id, + .commit-msg, + .branch-label { + fill: lightgrey; + color: lightgrey; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + ${[0,1,2,3,4,5,6,7].map(a=>` + .branch-label${a} { fill: ${i["gitBranchLabel"+a]}; } + .commit${a} { stroke: ${i["git"+a]}; fill: ${i["git"+a]}; } + .commit-highlight${a} { stroke: ${i["gitInv"+a]}; fill: ${i["gitInv"+a]}; } + .label${a} { fill: ${i["git"+a]}; } + .arrow${a} { stroke: ${i["git"+a]}; } + `).join(` +`)} + + .branch { + stroke-width: 1; + stroke: ${i.lineColor}; + stroke-dasharray: 2; + } + .commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};} + .commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; } + .tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};} + .tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; } + .tag-hole { fill: ${i.textColor}; } + + .commit-merge { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + } + .commit-reverse { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + stroke-width: 3; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${i.primaryColor}; + fill: ${i.primaryColor}; + } + + .arrow { stroke-width: 8; stroke-linecap: round; fill: none} + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } +`}},Symbol.toStringTag,{value:"Module"}));var P0t=function(){var i=function(Pt,pt,Ft,X){for(Ft=Ft||{},X=Pt.length;X--;Ft[Pt[X]]=pt);return Ft},a=[1,3],f=[1,5],p=[7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],v=[1,32],m=[1,33],b=[1,34],E=[1,35],C=[1,36],A=[1,37],P=[1,38],F=[1,15],j=[1,16],R=[1,17],H=[1,18],Y=[1,19],rt=[1,20],J=[1,21],it=[1,22],ft=[1,24],Tt=[1,25],kt=[1,26],mt=[1,27],ct=[1,28],yt=[1,30],st=[1,39],xt=[1,42],ht=[5,7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,weekday:12,weekday_monday:13,weekday_tuesday:14,weekday_wednesday:15,weekday_thursday:16,weekday_friday:17,weekday_saturday:18,weekday_sunday:19,dateFormat:20,inclusiveEndDates:21,topAxis:22,axisFormat:23,tickInterval:24,excludes:25,includes:26,todayMarker:27,title:28,acc_title:29,acc_title_value:30,acc_descr:31,acc_descr_value:32,acc_descr_multiline_value:33,section:34,clickStatement:35,taskTxt:36,taskData:37,openDirective:38,typeDirective:39,closeDirective:40,":":41,argDirective:42,click:43,callbackname:44,callbackargs:45,href:46,clickStatementDebug:47,open_directive:48,type_directive:49,arg_directive:50,close_directive:51,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",13:"weekday_monday",14:"weekday_tuesday",15:"weekday_wednesday",16:"weekday_thursday",17:"weekday_friday",18:"weekday_saturday",19:"weekday_sunday",20:"dateFormat",21:"inclusiveEndDates",22:"topAxis",23:"axisFormat",24:"tickInterval",25:"excludes",26:"includes",27:"todayMarker",28:"title",29:"acc_title",30:"acc_title_value",31:"acc_descr",32:"acc_descr_value",33:"acc_descr_multiline_value",34:"section",36:"taskTxt",37:"taskData",41:":",43:"click",44:"callbackname",45:"callbackargs",46:"href",48:"open_directive",49:"type_directive",50:"arg_directive",51:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[35,2],[35,3],[35,3],[35,4],[35,3],[35,4],[35,2],[47,2],[47,3],[47,3],[47,4],[47,3],[47,4],[47,2],[38,1],[39,1],[42,1],[40,1]],performAction:function(pt,Ft,X,Rt,Bt,vt,Ot){var Vt=vt.length-1;switch(Bt){case 2:return vt[Vt-1];case 3:this.$=[];break;case 4:vt[Vt-1].push(vt[Vt]),this.$=vt[Vt-1];break;case 5:case 6:this.$=vt[Vt];break;case 7:case 8:this.$=[];break;case 9:Rt.setWeekday("monday");break;case 10:Rt.setWeekday("tuesday");break;case 11:Rt.setWeekday("wednesday");break;case 12:Rt.setWeekday("thursday");break;case 13:Rt.setWeekday("friday");break;case 14:Rt.setWeekday("saturday");break;case 15:Rt.setWeekday("sunday");break;case 16:Rt.setDateFormat(vt[Vt].substr(11)),this.$=vt[Vt].substr(11);break;case 17:Rt.enableInclusiveEndDates(),this.$=vt[Vt].substr(18);break;case 18:Rt.TopAxis(),this.$=vt[Vt].substr(8);break;case 19:Rt.setAxisFormat(vt[Vt].substr(11)),this.$=vt[Vt].substr(11);break;case 20:Rt.setTickInterval(vt[Vt].substr(13)),this.$=vt[Vt].substr(13);break;case 21:Rt.setExcludes(vt[Vt].substr(9)),this.$=vt[Vt].substr(9);break;case 22:Rt.setIncludes(vt[Vt].substr(9)),this.$=vt[Vt].substr(9);break;case 23:Rt.setTodayMarker(vt[Vt].substr(12)),this.$=vt[Vt].substr(12);break;case 25:Rt.setDiagramTitle(vt[Vt].substr(6)),this.$=vt[Vt].substr(6);break;case 26:this.$=vt[Vt].trim(),Rt.setAccTitle(this.$);break;case 27:case 28:this.$=vt[Vt].trim(),Rt.setAccDescription(this.$);break;case 29:Rt.addSection(vt[Vt].substr(8)),this.$=vt[Vt].substr(8);break;case 31:Rt.addTask(vt[Vt-1],vt[Vt]),this.$="task";break;case 35:this.$=vt[Vt-1],Rt.setClickEvent(vt[Vt-1],vt[Vt],null);break;case 36:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt-1],vt[Vt]);break;case 37:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt-1],null),Rt.setLink(vt[Vt-2],vt[Vt]);break;case 38:this.$=vt[Vt-3],Rt.setClickEvent(vt[Vt-3],vt[Vt-2],vt[Vt-1]),Rt.setLink(vt[Vt-3],vt[Vt]);break;case 39:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt],null),Rt.setLink(vt[Vt-2],vt[Vt-1]);break;case 40:this.$=vt[Vt-3],Rt.setClickEvent(vt[Vt-3],vt[Vt-1],vt[Vt]),Rt.setLink(vt[Vt-3],vt[Vt-2]);break;case 41:this.$=vt[Vt-1],Rt.setLink(vt[Vt-1],vt[Vt]);break;case 42:case 48:this.$=vt[Vt-1]+" "+vt[Vt];break;case 43:case 44:case 46:this.$=vt[Vt-2]+" "+vt[Vt-1]+" "+vt[Vt];break;case 45:case 47:this.$=vt[Vt-3]+" "+vt[Vt-2]+" "+vt[Vt-1]+" "+vt[Vt];break;case 49:Rt.parseDirective("%%{","open_directive");break;case 50:Rt.parseDirective(vt[Vt],"type_directive");break;case 51:vt[Vt]=vt[Vt].trim().replace(/'/g,'"'),Rt.parseDirective(vt[Vt],"arg_directive");break;case 52:Rt.parseDirective("}%%","close_directive","gantt");break}},table:[{3:1,4:2,5:a,38:4,48:f},{1:[3]},{3:6,4:2,5:a,38:4,48:f},i(p,[2,3],{6:7}),{39:8,49:[1,9]},{49:[2,49]},{1:[2,1]},{4:31,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:23,13:v,14:m,15:b,16:E,17:C,18:A,19:P,20:F,21:j,22:R,23:H,24:Y,25:rt,26:J,27:it,28:ft,29:Tt,31:kt,33:mt,34:ct,35:29,36:yt,38:4,43:st,48:f},{40:40,41:[1,41],51:xt},i([41,51],[2,50]),i(p,[2,8],{1:[2,2]}),i(p,[2,4]),{4:31,10:43,12:23,13:v,14:m,15:b,16:E,17:C,18:A,19:P,20:F,21:j,22:R,23:H,24:Y,25:rt,26:J,27:it,28:ft,29:Tt,31:kt,33:mt,34:ct,35:29,36:yt,38:4,43:st,48:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(p,[2,19]),i(p,[2,20]),i(p,[2,21]),i(p,[2,22]),i(p,[2,23]),i(p,[2,24]),i(p,[2,25]),{30:[1,44]},{32:[1,45]},i(p,[2,28]),i(p,[2,29]),i(p,[2,30]),{37:[1,46]},i(p,[2,32]),i(p,[2,9]),i(p,[2,10]),i(p,[2,11]),i(p,[2,12]),i(p,[2,13]),i(p,[2,14]),i(p,[2,15]),{44:[1,47],46:[1,48]},{11:[1,49]},{42:50,50:[1,51]},{11:[2,52]},i(p,[2,5]),i(p,[2,26]),i(p,[2,27]),i(p,[2,31]),i(p,[2,35],{45:[1,52],46:[1,53]}),i(p,[2,41],{44:[1,54]}),i(ht,[2,33]),{40:55,51:xt},{51:[2,51]},i(p,[2,36],{46:[1,56]}),i(p,[2,37]),i(p,[2,39],{45:[1,57]}),{11:[1,58]},i(p,[2,38]),i(p,[2,40]),i(ht,[2,34])],defaultActions:{5:[2,49],6:[2,1],42:[2,52],51:[2,51]},parseError:function(pt,Ft){if(Ft.recoverable)this.trace(pt);else{var X=new Error(pt);throw X.hash=Ft,X}},parse:function(pt){var Ft=this,X=[0],Rt=[],Bt=[null],vt=[],Ot=this.table,Vt="",qe=0,_n=0,Te=2,Wn=1,Ae=vt.slice.call(arguments,1),ne=Object.create(this.lexer),ke={yy:{}};for(var Ve in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ve)&&(ke.yy[Ve]=this.yy[Ve]);ne.setInput(pt,ke.yy),ke.yy.lexer=ne,ke.yy.parser=this,typeof ne.yylloc>"u"&&(ne.yylloc={});var Ee=ne.yylloc;vt.push(Ee);var He=ne.options&&ne.options.ranges;typeof ke.yy.parseError=="function"?this.parseError=ke.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ce(){var pi;return pi=Rt.pop()||ne.lex()||Wn,typeof pi!="number"&&(pi instanceof Array&&(Rt=pi,pi=Rt.pop()),pi=Ft.symbols_[pi]||pi),pi}for(var $e,ye,fn,Yt,Mi={},qt,zi,Se,ki;;){if(ye=X[X.length-1],this.defaultActions[ye]?fn=this.defaultActions[ye]:(($e===null||typeof $e>"u")&&($e=Ce()),fn=Ot[ye]&&Ot[ye][$e]),typeof fn>"u"||!fn.length||!fn[0]){var Ri="";ki=[];for(qt in Ot[ye])this.terminals_[qt]&&qt>Te&&ki.push("'"+this.terminals_[qt]+"'");ne.showPosition?Ri="Parse error on line "+(qe+1)+`: +`+ne.showPosition()+` +Expecting `+ki.join(", ")+", got '"+(this.terminals_[$e]||$e)+"'":Ri="Parse error on line "+(qe+1)+": Unexpected "+($e==Wn?"end of input":"'"+(this.terminals_[$e]||$e)+"'"),this.parseError(Ri,{text:ne.match,token:this.terminals_[$e]||$e,line:ne.yylineno,loc:Ee,expected:ki})}if(fn[0]instanceof Array&&fn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ye+", token: "+$e);switch(fn[0]){case 1:X.push($e),Bt.push(ne.yytext),vt.push(ne.yylloc),X.push(fn[1]),$e=null,_n=ne.yyleng,Vt=ne.yytext,qe=ne.yylineno,Ee=ne.yylloc;break;case 2:if(zi=this.productions_[fn[1]][1],Mi.$=Bt[Bt.length-zi],Mi._$={first_line:vt[vt.length-(zi||1)].first_line,last_line:vt[vt.length-1].last_line,first_column:vt[vt.length-(zi||1)].first_column,last_column:vt[vt.length-1].last_column},He&&(Mi._$.range=[vt[vt.length-(zi||1)].range[0],vt[vt.length-1].range[1]]),Yt=this.performAction.apply(Mi,[Vt,_n,qe,ke.yy,fn[1],Bt,vt].concat(Ae)),typeof Yt<"u")return Yt;zi&&(X=X.slice(0,-1*zi*2),Bt=Bt.slice(0,-1*zi),vt=vt.slice(0,-1*zi)),X.push(this.productions_[fn[1]][0]),Bt.push(Mi.$),vt.push(Mi._$),Se=Ot[X[X.length-2]][X[X.length-1]],X.push(Se);break;case 3:return!0}}return!0}},Ct=function(){var Pt={EOF:1,parseError:function(Ft,X){if(this.yy.parser)this.yy.parser.parseError(Ft,X);else throw new Error(Ft)},setInput:function(pt,Ft){return this.yy=Ft||this.yy||{},this._input=pt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var pt=this._input[0];this.yytext+=pt,this.yyleng++,this.offset++,this.match+=pt,this.matched+=pt;var Ft=pt.match(/(?:\r\n?|\n).*/g);return Ft?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),pt},unput:function(pt){var Ft=pt.length,X=pt.split(/(?:\r\n?|\n)/g);this._input=pt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ft),this.offset-=Ft;var Rt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),X.length-1&&(this.yylineno-=X.length-1);var Bt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:X?(X.length===Rt.length?this.yylloc.first_column:0)+Rt[Rt.length-X.length].length-X[0].length:this.yylloc.first_column-Ft},this.options.ranges&&(this.yylloc.range=[Bt[0],Bt[0]+this.yyleng-Ft]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(pt){this.unput(this.match.slice(pt))},pastInput:function(){var pt=this.matched.substr(0,this.matched.length-this.match.length);return(pt.length>20?"...":"")+pt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var pt=this.match;return pt.length<20&&(pt+=this._input.substr(0,20-pt.length)),(pt.substr(0,20)+(pt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pt=this.pastInput(),Ft=new Array(pt.length+1).join("-");return pt+this.upcomingInput()+` +`+Ft+"^"},test_match:function(pt,Ft){var X,Rt,Bt;if(this.options.backtrack_lexer&&(Bt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Bt.yylloc.range=this.yylloc.range.slice(0))),Rt=pt[0].match(/(?:\r\n?|\n).*/g),Rt&&(this.yylineno+=Rt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Rt?Rt[Rt.length-1].length-Rt[Rt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+pt[0].length},this.yytext+=pt[0],this.match+=pt[0],this.matches=pt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(pt[0].length),this.matched+=pt[0],X=this.performAction.call(this,this.yy,this,Ft,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),X)return X;if(this._backtrack){for(var vt in Bt)this[vt]=Bt[vt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var pt,Ft,X,Rt;this._more||(this.yytext="",this.match="");for(var Bt=this._currentRules(),vt=0;vtFt[0].length)){if(Ft=X,Rt=vt,this.options.backtrack_lexer){if(pt=this.test_match(X,Bt[vt]),pt!==!1)return pt;if(this._backtrack){Ft=!1;continue}else return!1}else if(!this.options.flex)break}return Ft?(pt=this.test_match(Ft,Bt[Rt]),pt!==!1?pt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ft=this.next();return Ft||this.lex()},begin:function(Ft){this.conditionStack.push(Ft)},popState:function(){var Ft=this.conditionStack.length-1;return Ft>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ft){return Ft=this.conditionStack.length-1-Math.abs(Ft||0),Ft>=0?this.conditionStack[Ft]:"INITIAL"},pushState:function(Ft){this.begin(Ft)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ft,X,Rt,Bt){switch(Rt){case 0:return this.begin("open_directive"),48;case 1:return this.begin("type_directive"),49;case 2:return this.popState(),this.begin("arg_directive"),41;case 3:return this.popState(),this.popState(),51;case 4:return 50;case 5:return this.begin("acc_title"),29;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),31;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:break;case 13:break;case 14:break;case 15:return 11;case 16:break;case 17:break;case 18:break;case 19:this.begin("href");break;case 20:this.popState();break;case 21:return 46;case 22:this.begin("callbackname");break;case 23:this.popState();break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 44;case 26:this.popState();break;case 27:return 45;case 28:this.begin("click");break;case 29:this.popState();break;case 30:return 43;case 31:return 5;case 32:return 20;case 33:return 21;case 34:return 22;case 35:return 23;case 36:return 24;case 37:return 26;case 38:return 25;case 39:return 27;case 40:return 13;case 41:return 14;case 42:return 15;case 43:return 16;case 44:return 17;case 45:return 18;case 46:return 19;case 47:return"date";case 48:return 28;case 49:return"accDescription";case 50:return 34;case 51:return 36;case 52:return 37;case 53:return 41;case 54:return 7;case 55:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return Pt}();dt.lexer=Ct;function tt(){this.yy={}}return tt.prototype=dt,dt.Parser=tt,new tt}();P0t.parser=P0t;const Lze=P0t;var WBt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){var f="day";return function(p,v,m){var b=function(A){return A.add(4-A.isoWeekday(),f)},E=v.prototype;E.isoWeekYear=function(){return b(this).year()},E.isoWeek=function(A){if(!this.$utils().u(A))return this.add(7*(A-this.isoWeek()),f);var P,F,j,R,H=b(this),Y=(P=this.isoWeekYear(),F=this.$u,j=(F?m.utc:m)().year(P).startOf("year"),R=4-j.isoWeekday(),j.isoWeekday()>4&&(R+=7),j.add(R,f));return H.diff(Y,"week")+1},E.isoWeekday=function(A){return this.$utils().u(A)?this.day()||7:this.day(this.day()%7?A:A-7)};var C=E.startOf;E.startOf=function(A,P){var F=this.$utils(),j=!!F.u(P)||P;return F.p(A)==="isoweek"?j?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):C.bind(this)(A,P)}}})})(WBt);var Mze=WBt.exports;const Dze=PE(Mze);var KBt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){var f={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},p=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,v=/\d\d/,m=/\d\d?/,b=/\d*[^-_:/,()\s\d]+/,E={},C=function(Y){return(Y=+Y)+(Y>68?1900:2e3)},A=function(Y){return function(rt){this[Y]=+rt}},P=[/[+-]\d\d:?(\d\d)?|Z/,function(Y){(this.zone||(this.zone={})).offset=function(rt){if(!rt||rt==="Z")return 0;var J=rt.match(/([+-]|\d\d)/g),it=60*J[1]+(+J[2]||0);return it===0?0:J[0]==="+"?-it:it}(Y)}],F=function(Y){var rt=E[Y];return rt&&(rt.indexOf?rt:rt.s.concat(rt.f))},j=function(Y,rt){var J,it=E.meridiem;if(it){for(var ft=1;ft<=24;ft+=1)if(Y.indexOf(it(ft,0,rt))>-1){J=ft>12;break}}else J=Y===(rt?"pm":"PM");return J},R={A:[b,function(Y){this.afternoon=j(Y,!1)}],a:[b,function(Y){this.afternoon=j(Y,!0)}],S:[/\d/,function(Y){this.milliseconds=100*+Y}],SS:[v,function(Y){this.milliseconds=10*+Y}],SSS:[/\d{3}/,function(Y){this.milliseconds=+Y}],s:[m,A("seconds")],ss:[m,A("seconds")],m:[m,A("minutes")],mm:[m,A("minutes")],H:[m,A("hours")],h:[m,A("hours")],HH:[m,A("hours")],hh:[m,A("hours")],D:[m,A("day")],DD:[v,A("day")],Do:[b,function(Y){var rt=E.ordinal,J=Y.match(/\d+/);if(this.day=J[0],rt)for(var it=1;it<=31;it+=1)rt(it).replace(/\[|\]/g,"")===Y&&(this.day=it)}],M:[m,A("month")],MM:[v,A("month")],MMM:[b,function(Y){var rt=F("months"),J=(F("monthsShort")||rt.map(function(it){return it.slice(0,3)})).indexOf(Y)+1;if(J<1)throw new Error;this.month=J%12||J}],MMMM:[b,function(Y){var rt=F("months").indexOf(Y)+1;if(rt<1)throw new Error;this.month=rt%12||rt}],Y:[/[+-]?\d+/,A("year")],YY:[v,function(Y){this.year=C(Y)}],YYYY:[/\d{4}/,A("year")],Z:P,ZZ:P};function H(Y){var rt,J;rt=Y,J=E&&E.formats;for(var it=(Y=rt.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(st,xt,ht){var dt=ht&&ht.toUpperCase();return xt||J[ht]||f[ht]||J[dt].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(Ct,tt,Pt){return tt||Pt.slice(1)})})).match(p),ft=it.length,Tt=0;Tt-1)return new Date((Ft==="X"?1e3:1)*pt);var Rt=H(Ft)(pt),Bt=Rt.year,vt=Rt.month,Ot=Rt.day,Vt=Rt.hours,qe=Rt.minutes,_n=Rt.seconds,Te=Rt.milliseconds,Wn=Rt.zone,Ae=new Date,ne=Ot||(Bt||vt?1:Ae.getDate()),ke=Bt||Ae.getFullYear(),Ve=0;Bt&&!vt||(Ve=vt>0?vt-1:Ae.getMonth());var Ee=Vt||0,He=qe||0,Ce=_n||0,$e=Te||0;return Wn?new Date(Date.UTC(ke,Ve,ne,Ee,He,Ce,$e+60*Wn.offset*1e3)):X?new Date(Date.UTC(ke,Ve,ne,Ee,He,Ce,$e)):new Date(ke,Ve,ne,Ee,He,Ce,$e)}catch{return new Date("")}}(kt,yt,mt),this.init(),dt&&dt!==!0&&(this.$L=this.locale(dt).$L),ht&&kt!=this.format(yt)&&(this.$d=new Date("")),E={}}else if(yt instanceof Array)for(var Ct=yt.length,tt=1;tt<=Ct;tt+=1){ct[1]=yt[tt-1];var Pt=J.apply(this,ct);if(Pt.isValid()){this.$d=Pt.$d,this.$L=Pt.$L,this.init();break}tt===Ct&&(this.$d=new Date(""))}else ft.call(this,Tt)}}})})(KBt);var Ize=KBt.exports;const Oze=PE(Ize);var YBt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){return function(f,p){var v=p.prototype,m=v.format;v.format=function(b){var E=this,C=this.$locale();if(!this.isValid())return m.bind(this)(b);var A=this.$utils(),P=(b||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(F){switch(F){case"Q":return Math.ceil((E.$M+1)/3);case"Do":return C.ordinal(E.$D);case"gggg":return E.weekYear();case"GGGG":return E.isoWeekYear();case"wo":return C.ordinal(E.week(),"W");case"w":case"ww":return A.s(E.week(),F==="w"?1:2,"0");case"W":case"WW":return A.s(E.isoWeek(),F==="W"?1:2,"0");case"k":case"kk":return A.s(String(E.$H===0?24:E.$H),F==="k"?1:2,"0");case"X":return Math.floor(E.$d.getTime()/1e3);case"x":return E.$d.getTime();case"z":return"["+E.offsetName()+"]";case"zzz":return"["+E.offsetName("long")+"]";default:return F}});return m.bind(this)(P)}}})})(YBt);var Nze=YBt.exports;const Pze=PE(Nze);up.extend(Dze),up.extend(Oze),up.extend(Pze);let m3="",F0t="",B0t,R0t="",AP=[],LP=[],j0t={},$0t=[],_K=[],sL="",z0t="";const XBt=["active","done","crit","milestone"];let q0t=[],MP=!1,H0t=!1,V0t="sunday",G0t=0;const Fze=function(i,a,f){J1.parseDirective(this,i,a,f)},Bze=function(){$0t=[],_K=[],sL="",q0t=[],CK=0,W0t=void 0,SK=void 0,d1=[],m3="",F0t="",z0t="",B0t=void 0,R0t="",AP=[],LP=[],MP=!1,H0t=!1,G0t=0,j0t={},cg(),V0t="sunday"},Rze=function(i){F0t=i},jze=function(){return F0t},$ze=function(i){B0t=i},zze=function(){return B0t},qze=function(i){R0t=i},Hze=function(){return R0t},Vze=function(i){m3=i},Gze=function(){MP=!0},Uze=function(){return MP},Wze=function(){H0t=!0},Kze=function(){return H0t},Yze=function(i){z0t=i},Xze=function(){return z0t},Qze=function(){return m3},Zze=function(i){AP=i.toLowerCase().split(/[\s,]+/)},Jze=function(){return AP},tqe=function(i){LP=i.toLowerCase().split(/[\s,]+/)},eqe=function(){return LP},nqe=function(){return j0t},rqe=function(i){sL=i,$0t.push(i)},iqe=function(){return $0t},sqe=function(){let i=nRt();const a=10;let f=0;for(;!i&&f=6&&f.includes("weekends")||f.includes(i.format("dddd").toLowerCase())?!0:f.includes(i.format(a.trim()))},aqe=function(i){V0t=i},oqe=function(){return V0t},ZBt=function(i,a,f,p){if(!f.length||i.manualEndTime)return;let v;i.startTime instanceof Date?v=up(i.startTime):v=up(i.startTime,a,!0),v=v.add(1,"d");let m;i.endTime instanceof Date?m=up(i.endTime):m=up(i.endTime,a,!0);const[b,E]=cqe(v,m,a,f,p);i.endTime=b.toDate(),i.renderEndTime=E},cqe=function(i,a,f,p,v){let m=!1,b=null;for(;i<=a;)m||(b=a.toDate()),m=QBt(i,f,p,v),m&&(a=a.add(1,"d")),i=i.add(1,"d");return[a,b]},U0t=function(i,a,f){f=f.trim();const v=/^after\s+([\d\w- ]+)/.exec(f.trim());if(v!==null){let b=null;if(v[1].split(" ").forEach(function(E){let C=oL(E);C!==void 0&&(b?C.endTime>b.endTime&&(b=C):b=C)}),b)return b.endTime;{const E=new Date;return E.setHours(0,0,0,0),E}}let m=up(f,a.trim(),!0);if(m.isValid())return m.toDate();{Wt.debug("Invalid date:"+f),Wt.debug("With date format:"+a.trim());const b=new Date(f);if(b===void 0||isNaN(b.getTime())||b.getFullYear()<-1e4||b.getFullYear()>1e4)throw new Error("Invalid date:"+f);return b}},JBt=function(i){const a=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(i.trim());return a!==null?[Number.parseFloat(a[1]),a[2]]:[NaN,"ms"]},tRt=function(i,a,f,p=!1){f=f.trim();let v=up(f,a.trim(),!0);if(v.isValid())return p&&(v=v.add(1,"d")),v.toDate();let m=up(i);const[b,E]=JBt(f);if(!Number.isNaN(b)){const C=m.add(b,E);C.isValid()&&(m=C)}return m.toDate()};let CK=0;const aL=function(i){return i===void 0?(CK=CK+1,"task"+CK):i},uqe=function(i,a){let f;a.substr(0,1)===":"?f=a.substr(1,a.length):f=a;const p=f.split(","),v={};sRt(p,v,XBt);for(let b=0;b{window.open(f,"_self")}),j0t[p]=f)}),rRt(i,"clickable")},rRt=function(i,a){i.split(",").forEach(function(f){let p=oL(f);p!==void 0&&p.classes.push(a)})},gqe=function(i,a,f){if(De().securityLevel!=="loose"||a===void 0)return;let p=[];if(typeof f=="string"){p=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let m=0;m{to.runFunc(a,...p)})},iRt=function(i,a){q0t.push(function(){const f=document.querySelector(`[id="${i}"]`);f!==null&&f.addEventListener("click",function(){a()})},function(){const f=document.querySelector(`[id="${i}-text"]`);f!==null&&f.addEventListener("click",function(){a()})})},pqe={parseDirective:Fze,getConfig:()=>De().gantt,clear:Bze,setDateFormat:Vze,getDateFormat:Qze,enableInclusiveEndDates:Gze,endDatesAreInclusive:Uze,enableTopAxis:Wze,topAxisEnabled:Kze,setAxisFormat:Rze,getAxisFormat:jze,setTickInterval:$ze,getTickInterval:zze,setTodayMarker:qze,getTodayMarker:Hze,setAccTitle:m0,getAccTitle:ug,setDiagramTitle:Nb,getDiagramTitle:hp,setDisplayMode:Yze,getDisplayMode:Xze,setAccDescription:lg,getAccDescription:hg,addSection:rqe,getSections:iqe,getTasks:sqe,addTask:hqe,findTaskById:oL,addTaskOrg:fqe,setIncludes:Zze,getIncludes:Jze,setExcludes:tqe,getExcludes:eqe,setClickEvent:function(i,a,f){i.split(",").forEach(function(p){gqe(p,a,f)}),rRt(i,"clickable")},setLink:dqe,getLinks:nqe,bindFunctions:function(i){q0t.forEach(function(a){a(i)})},parseDuration:JBt,isInvalidDate:QBt,setWeekday:aqe,getWeekday:oqe};function sRt(i,a,f){let p=!0;for(;p;)p=!1,f.forEach(function(v){const m="^\\s*"+v+"\\s*$",b=new RegExp(m);i[0].match(b)&&(a[v]=!0,i.shift(1),p=!0)})}const bqe=function(){Wt.debug("Something is calling, setConf, remove the call")},aRt={monday:DN,tuesday:UMt,wednesday:WMt,thursday:GE,friday:KMt,saturday:YMt,sunday:MN},vqe=(i,a)=>{let f=[...i].map(()=>-1/0),p=[...i].sort((m,b)=>m.startTime-b.startTime||m.order-b.order),v=0;for(const m of p)for(let b=0;b=f[b]){f[b]=m.endTime,m.order=b+a,b>v&&(v=b);break}return v};let M5;const wqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Lze,db:pqe,renderer:{setConf:bqe,draw:function(i,a,f,p){const v=De().gantt,m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=m==="sandbox"?b.nodes()[0].contentDocument:document,A=C.getElementById(a);M5=A.parentElement.offsetWidth,M5===void 0&&(M5=1200),v.useWidth!==void 0&&(M5=v.useWidth);const P=p.db.getTasks();let F=[];for(const yt of P)F.push(yt.type);F=ct(F);const j={};let R=2*v.topPadding;if(p.db.getDisplayMode()==="compact"||v.displayMode==="compact"){const yt={};for(const xt of P)yt[xt.section]===void 0?yt[xt.section]=[xt]:yt[xt.section].push(xt);let st=0;for(const xt of Object.keys(yt)){const ht=vqe(yt[xt],st)+1;st+=ht,R+=ht*(v.barHeight+v.barGap),j[xt]=ht}}else{R+=P.length*(v.barHeight+v.barGap);for(const yt of F)j[yt]=P.filter(st=>st.type===yt).length}A.setAttribute("viewBox","0 0 "+M5+" "+R);const H=E.select(`[id="${a}"]`),Y=TEe().domain([c6e(P,function(yt){return yt.startTime}),o6e(P,function(yt){return yt.endTime})]).rangeRound([0,M5-v.leftPadding-v.rightPadding]);function rt(yt,st){const xt=yt.startTime,ht=st.startTime;let dt=0;return xt>ht?dt=1:xtBt.order))].map(Bt=>yt.find(vt=>vt.order===Bt));H.append("g").selectAll("rect").data(pt).enter().append("rect").attr("x",0).attr("y",function(Bt,vt){return vt=Bt.order,vt*st+xt-2}).attr("width",function(){return tt-v.rightPadding/2}).attr("height",st).attr("class",function(Bt){for(const[vt,Ot]of F.entries())if(Bt.type===Ot)return"section section"+vt%v.numberSectionStyles;return"section section0"});const Ft=H.append("g").selectAll("rect").data(yt).enter(),X=p.db.getLinks();if(Ft.append("rect").attr("id",function(Bt){return Bt.id}).attr("rx",3).attr("ry",3).attr("x",function(Bt){return Bt.milestone?Y(Bt.startTime)+ht+.5*(Y(Bt.endTime)-Y(Bt.startTime))-.5*dt:Y(Bt.startTime)+ht}).attr("y",function(Bt,vt){return vt=Bt.order,vt*st+xt}).attr("width",function(Bt){return Bt.milestone?dt:Y(Bt.renderEndTime||Bt.endTime)-Y(Bt.startTime)}).attr("height",dt).attr("transform-origin",function(Bt,vt){return vt=Bt.order,(Y(Bt.startTime)+ht+.5*(Y(Bt.endTime)-Y(Bt.startTime))).toString()+"px "+(vt*st+xt+.5*dt).toString()+"px"}).attr("class",function(Bt){const vt="task";let Ot="";Bt.classes.length>0&&(Ot=Bt.classes.join(" "));let Vt=0;for(const[_n,Te]of F.entries())Bt.type===Te&&(Vt=_n%v.numberSectionStyles);let qe="";return Bt.active?Bt.crit?qe+=" activeCrit":qe=" active":Bt.done?Bt.crit?qe=" doneCrit":qe=" done":Bt.crit&&(qe+=" crit"),qe.length===0&&(qe=" task"),Bt.milestone&&(qe=" milestone "+qe),qe+=Vt,qe+=" "+Ot,vt+qe}),Ft.append("text").attr("id",function(Bt){return Bt.id+"-text"}).text(function(Bt){return Bt.task}).attr("font-size",v.fontSize).attr("x",function(Bt){let vt=Y(Bt.startTime),Ot=Y(Bt.renderEndTime||Bt.endTime);Bt.milestone&&(vt+=.5*(Y(Bt.endTime)-Y(Bt.startTime))-.5*dt),Bt.milestone&&(Ot=vt+dt);const Vt=this.getBBox().width;return Vt>Ot-vt?Ot+Vt+1.5*v.leftPadding>tt?vt+ht-5:Ot+ht+5:(Ot-vt)/2+vt+ht}).attr("y",function(Bt,vt){return vt=Bt.order,vt*st+v.barHeight/2+(v.fontSize/2-2)+xt}).attr("text-height",dt).attr("class",function(Bt){const vt=Y(Bt.startTime);let Ot=Y(Bt.endTime);Bt.milestone&&(Ot=vt+dt);const Vt=this.getBBox().width;let qe="";Bt.classes.length>0&&(qe=Bt.classes.join(" "));let _n=0;for(const[Wn,Ae]of F.entries())Bt.type===Ae&&(_n=Wn%v.numberSectionStyles);let Te="";return Bt.active&&(Bt.crit?Te="activeCritText"+_n:Te="activeText"+_n),Bt.done?Bt.crit?Te=Te+" doneCritText"+_n:Te=Te+" doneText"+_n:Bt.crit&&(Te=Te+" critText"+_n),Bt.milestone&&(Te+=" milestoneText"),Vt>Ot-vt?Ot+Vt+1.5*v.leftPadding>tt?qe+" taskTextOutsideLeft taskTextOutside"+_n+" "+Te:qe+" taskTextOutsideRight taskTextOutside"+_n+" "+Te+" width-"+Vt:qe+" taskText taskText"+_n+" "+Te+" width-"+Vt}),De().securityLevel==="sandbox"){let Bt;Bt=xr("#i"+a);const vt=Bt.nodes()[0].contentDocument;Ft.filter(function(Ot){return X[Ot.id]!==void 0}).each(function(Ot){var Vt=vt.querySelector("#"+Ot.id),qe=vt.querySelector("#"+Ot.id+"-text");const _n=Vt.parentNode;var Te=vt.createElement("a");Te.setAttribute("xlink:href",X[Ot.id]),Te.setAttribute("target","_top"),_n.appendChild(Te),Te.appendChild(Vt),Te.appendChild(qe)})}}function ft(yt,st,xt,ht,dt,Ct,tt,Pt){const pt=Ct.reduce((Vt,{startTime:qe})=>Vt?Math.min(Vt,qe):qe,0),Ft=Ct.reduce((Vt,{endTime:qe})=>Vt?Math.max(Vt,qe):qe,0),X=p.db.getDateFormat();if(!pt||!Ft)return;const Rt=[];let Bt=null,vt=up(pt);for(;vt.valueOf()<=Ft;)p.db.isInvalidDate(vt,X,tt,Pt)?Bt?Bt.end=vt:Bt={start:vt,end:vt}:Bt&&(Rt.push(Bt),Bt=null),vt=vt.add(1,"d");H.append("g").selectAll("rect").data(Rt).enter().append("rect").attr("id",function(Vt){return"exclude-"+Vt.start.format("YYYY-MM-DD")}).attr("x",function(Vt){return Y(Vt.start)+xt}).attr("y",v.gridLineStartPadding).attr("width",function(Vt){const qe=Vt.end.add(1,"day");return Y(qe)-Y(Vt.start)}).attr("height",dt-st-v.gridLineStartPadding).attr("transform-origin",function(Vt,qe){return(Y(Vt.start)+xt+.5*(Y(Vt.end)-Y(Vt.start))).toString()+"px "+(qe*yt+.5*dt).toString()+"px"}).attr("class","exclude-range")}function Tt(yt,st,xt,ht){let dt=b6e(Y).tickSize(-ht+st+v.gridLineStartPadding).tickFormat(HU(p.db.getAxisFormat()||v.axisFormat||"%Y-%m-%d"));const tt=/^([1-9]\d*)(minute|hour|day|week|month)$/.exec(p.db.getTickInterval()||v.tickInterval);if(tt!==null){const Pt=tt[1],pt=tt[2],Ft=p.db.getWeekday()||v.weekday;switch(pt){case"minute":dt.ticks(jU.every(Pt));break;case"hour":dt.ticks($U.every(Pt));break;case"day":dt.ticks(_A.every(Pt));break;case"week":dt.ticks(aRt[Ft].every(Pt));break;case"month":dt.ticks(zU.every(Pt));break}}if(H.append("g").attr("class","grid").attr("transform","translate("+yt+", "+(ht-50)+")").call(dt).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),p.db.topAxisEnabled()||v.topAxis){let Pt=p6e(Y).tickSize(-ht+st+v.gridLineStartPadding).tickFormat(HU(p.db.getAxisFormat()||v.axisFormat||"%Y-%m-%d"));if(tt!==null){const pt=tt[1],Ft=tt[2],X=p.db.getWeekday()||v.weekday;switch(Ft){case"minute":Pt.ticks(jU.every(pt));break;case"hour":Pt.ticks($U.every(pt));break;case"day":Pt.ticks(_A.every(pt));break;case"week":Pt.ticks(aRt[X].every(pt));break;case"month":Pt.ticks(zU.every(pt));break}}H.append("g").attr("class","grid").attr("transform","translate("+yt+", "+st+")").call(Pt).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function kt(yt,st){let xt=0;const ht=Object.keys(j).map(dt=>[dt,j[dt]]);H.append("g").selectAll("text").data(ht).enter().append(function(dt){const Ct=dt[0].split(ui.lineBreakRegex),tt=-(Ct.length-1)/2,Pt=C.createElementNS("http://www.w3.org/2000/svg","text");Pt.setAttribute("dy",tt+"em");for(const[pt,Ft]of Ct.entries()){const X=C.createElementNS("http://www.w3.org/2000/svg","tspan");X.setAttribute("alignment-baseline","central"),X.setAttribute("x","10"),pt>0&&X.setAttribute("dy","1em"),X.textContent=Ft,Pt.appendChild(X)}return Pt}).attr("x",10).attr("y",function(dt,Ct){if(Ct>0)for(let tt=0;tt` + .mermaid-main-font { + font-family: "trebuchet ms", verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + .exclude-range { + fill: ${i.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${i.sectionBkgColor}; + } + + .section2 { + fill: ${i.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${i.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${i.titleColor}; + } + + .sectionTitle1 { + fill: ${i.titleColor}; + } + + .sectionTitle2 { + fill: ${i.titleColor}; + } + + .sectionTitle3 { + fill: ${i.titleColor}; + } + + .sectionTitle { + text-anchor: start; + // font-size: ${i.ganttFontSize}; + // text-height: 14px; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${i.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + text { + font-family: ${i.fontFamily}; + fill: ${i.textColor}; + } + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${i.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + + // .taskText:not([font-size]) { + // font-size: ${i.ganttFontSize}; + // } + + .taskTextOutsideRight { + fill: ${i.taskTextDarkColor}; + text-anchor: start; + // font-size: ${i.ganttFontSize}; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + + } + + .taskTextOutsideLeft { + fill: ${i.taskTextDarkColor}; + text-anchor: end; + // font-size: ${i.ganttFontSize}; + } + + /* Special case clickable */ + .task.clickable { + cursor: pointer; + } + .taskText.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${i.taskTextClickableColor} !important; + font-weight: bold; + } + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${i.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${i.taskBkgColor}; + stroke: ${i.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${i.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${i.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${i.activeTaskBkgColor}; + stroke: ${i.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${i.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${i.doneTaskBorderColor}; + fill: ${i.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${i.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${i.critBorderColor}; + fill: ${i.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${i.critBorderColor}; + fill: ${i.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${i.critBorderColor}; + fill: ${i.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${i.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${i.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor} ; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } +`}},Symbol.toStringTag,{value:"Module"}));var K0t=function(){var i=function(m,b,E,C){for(E=E||{},C=m.length;C--;E[m[C]]=b);return E},a=[6,9,10],f={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(b,E,C,A,P,F,j){switch(F.length-1,P){case 1:return A;case 4:break;case 6:A.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(a,[2,3]),i(a,[2,4]),i(a,[2,5]),i(a,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,E){if(E.recoverable)this.trace(b);else{var C=new Error(b);throw C.hash=E,C}},parse:function(b){var E=this,C=[0],A=[],P=[null],F=[],j=this.table,R="",H=0,Y=0,rt=2,J=1,it=F.slice.call(arguments,1),ft=Object.create(this.lexer),Tt={yy:{}};for(var kt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kt)&&(Tt.yy[kt]=this.yy[kt]);ft.setInput(b,Tt.yy),Tt.yy.lexer=ft,Tt.yy.parser=this,typeof ft.yylloc>"u"&&(ft.yylloc={});var mt=ft.yylloc;F.push(mt);var ct=ft.options&&ft.options.ranges;typeof Tt.yy.parseError=="function"?this.parseError=Tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function yt(){var Rt;return Rt=A.pop()||ft.lex()||J,typeof Rt!="number"&&(Rt instanceof Array&&(A=Rt,Rt=A.pop()),Rt=E.symbols_[Rt]||Rt),Rt}for(var st,xt,ht,dt,Ct={},tt,Pt,pt,Ft;;){if(xt=C[C.length-1],this.defaultActions[xt]?ht=this.defaultActions[xt]:((st===null||typeof st>"u")&&(st=yt()),ht=j[xt]&&j[xt][st]),typeof ht>"u"||!ht.length||!ht[0]){var X="";Ft=[];for(tt in j[xt])this.terminals_[tt]&&tt>rt&&Ft.push("'"+this.terminals_[tt]+"'");ft.showPosition?X="Parse error on line "+(H+1)+`: +`+ft.showPosition()+` +Expecting `+Ft.join(", ")+", got '"+(this.terminals_[st]||st)+"'":X="Parse error on line "+(H+1)+": Unexpected "+(st==J?"end of input":"'"+(this.terminals_[st]||st)+"'"),this.parseError(X,{text:ft.match,token:this.terminals_[st]||st,line:ft.yylineno,loc:mt,expected:Ft})}if(ht[0]instanceof Array&&ht.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xt+", token: "+st);switch(ht[0]){case 1:C.push(st),P.push(ft.yytext),F.push(ft.yylloc),C.push(ht[1]),st=null,Y=ft.yyleng,R=ft.yytext,H=ft.yylineno,mt=ft.yylloc;break;case 2:if(Pt=this.productions_[ht[1]][1],Ct.$=P[P.length-Pt],Ct._$={first_line:F[F.length-(Pt||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(Pt||1)].first_column,last_column:F[F.length-1].last_column},ct&&(Ct._$.range=[F[F.length-(Pt||1)].range[0],F[F.length-1].range[1]]),dt=this.performAction.apply(Ct,[R,Y,H,Tt.yy,ht[1],P,F].concat(it)),typeof dt<"u")return dt;Pt&&(C=C.slice(0,-1*Pt*2),P=P.slice(0,-1*Pt),F=F.slice(0,-1*Pt)),C.push(this.productions_[ht[1]][0]),P.push(Ct.$),F.push(Ct._$),pt=j[C[C.length-2]][C[C.length-1]],C.push(pt);break;case 3:return!0}}return!0}},p=function(){var m={EOF:1,parseError:function(E,C){if(this.yy.parser)this.yy.parser.parseError(E,C);else throw new Error(E)},setInput:function(b,E){return this.yy=E||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var E=b.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},unput:function(b){var E=b.length,C=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var A=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),C.length-1&&(this.yylineno-=C.length-1);var P=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:C?(C.length===A.length?this.yylloc.first_column:0)+A[A.length-C.length].length-C[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[P[0],P[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var b=this.pastInput(),E=new Array(b.length+1).join("-");return b+this.upcomingInput()+` +`+E+"^"},test_match:function(b,E){var C,A,P;if(this.options.backtrack_lexer&&(P={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(P.yylloc.range=this.yylloc.range.slice(0))),A=b[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],C=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),C)return C;if(this._backtrack){for(var F in P)this[F]=P[F];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,E,C,A;this._more||(this.yytext="",this.match="");for(var P=this._currentRules(),F=0;FE[0].length)){if(E=C,A=F,this.options.backtrack_lexer){if(b=this.test_match(C,P[F]),b!==!1)return b;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(b=this.test_match(E,P[A]),b!==!1?b:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var E=this.next();return E||this.lex()},begin:function(E){this.conditionStack.push(E)},popState:function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},pushState:function(E){this.begin(E)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(E,C,A,P){switch(A){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};return m}();f.lexer=p;function v(){this.yy={}}return v.prototype=f,f.Parser=v,new v}();K0t.parser=K0t;const mqe=K0t,oRt={info:!1};let Y0t=oRt.info;const yqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:mqe,db:{clear:()=>{Y0t=oRt.info},setInfo:i=>{Y0t=i},getInfo:()=>Y0t},renderer:{draw:(i,a,f)=>{Wt.debug(`rendering info diagram +`+i);const p=ldt(a);og(p,100,400,!0),p.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${f}`)}}}},Symbol.toStringTag,{value:"Module"}));var X0t=function(){var i=function(mt,ct,yt,st){for(yt=yt||{},st=mt.length;st--;yt[mt[st]]=ct);return yt},a=[1,4],f=[1,5],p=[1,6],v=[1,7],m=[1,9],b=[1,11,13,15,17,19,20,26,27,28,29],E=[2,5],C=[1,6,11,13,15,17,19,20,26,27,28,29],A=[26,27,28],P=[2,8],F=[1,18],j=[1,19],R=[1,20],H=[1,21],Y=[1,22],rt=[1,23],J=[1,28],it=[6,26,27,28,29],ft={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(ct,yt,st,xt,ht,dt,Ct){var tt=dt.length-1;switch(ht){case 4:xt.setShowData(!0);break;case 7:this.$=dt[tt-1];break;case 9:xt.addSection(dt[tt-1],xt.cleanupValue(dt[tt]));break;case 10:this.$=dt[tt].trim(),xt.setDiagramTitle(this.$);break;case 11:this.$=dt[tt].trim(),xt.setAccTitle(this.$);break;case 12:case 13:this.$=dt[tt].trim(),xt.setAccDescription(this.$);break;case 14:xt.addSection(dt[tt].substr(8)),this.$=dt[tt].substr(8);break;case 21:xt.parseDirective("%%{","open_directive");break;case 22:xt.parseDirective(dt[tt],"type_directive");break;case 23:dt[tt]=dt[tt].trim().replace(/'/g,'"'),xt.parseDirective(dt[tt],"arg_directive");break;case 24:xt.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},{1:[3]},{3:10,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},{3:11,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},i(b,E,{7:12,8:[1,13]}),i(C,[2,18]),i(C,[2,19]),i(C,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},i(A,P,{21:8,9:16,10:17,5:24,1:[2,3],11:F,13:j,15:R,17:H,19:Y,20:rt,29:m}),i(b,E,{7:25}),{23:26,24:[1,27],32:J},i([24,32],[2,22]),i(b,[2,6]),{4:29,26:f,27:p,28:v},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},i(A,[2,13]),i(A,[2,14]),i(A,[2,15]),i(A,P,{21:8,9:16,10:17,5:24,1:[2,4],11:F,13:j,15:R,17:H,19:Y,20:rt,29:m}),i(it,[2,16]),{25:34,31:[1,35]},i(it,[2,24]),i(b,[2,7]),i(A,[2,9]),i(A,[2,10]),i(A,[2,11]),i(A,[2,12]),{23:36,32:J},{32:[2,23]},i(it,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(ct,yt){if(yt.recoverable)this.trace(ct);else{var st=new Error(ct);throw st.hash=yt,st}},parse:function(ct){var yt=this,st=[0],xt=[],ht=[null],dt=[],Ct=this.table,tt="",Pt=0,pt=0,Ft=2,X=1,Rt=dt.slice.call(arguments,1),Bt=Object.create(this.lexer),vt={yy:{}};for(var Ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ot)&&(vt.yy[Ot]=this.yy[Ot]);Bt.setInput(ct,vt.yy),vt.yy.lexer=Bt,vt.yy.parser=this,typeof Bt.yylloc>"u"&&(Bt.yylloc={});var Vt=Bt.yylloc;dt.push(Vt);var qe=Bt.options&&Bt.options.ranges;typeof vt.yy.parseError=="function"?this.parseError=vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _n(){var ye;return ye=xt.pop()||Bt.lex()||X,typeof ye!="number"&&(ye instanceof Array&&(xt=ye,ye=xt.pop()),ye=yt.symbols_[ye]||ye),ye}for(var Te,Wn,Ae,ne,ke={},Ve,Ee,He,Ce;;){if(Wn=st[st.length-1],this.defaultActions[Wn]?Ae=this.defaultActions[Wn]:((Te===null||typeof Te>"u")&&(Te=_n()),Ae=Ct[Wn]&&Ct[Wn][Te]),typeof Ae>"u"||!Ae.length||!Ae[0]){var $e="";Ce=[];for(Ve in Ct[Wn])this.terminals_[Ve]&&Ve>Ft&&Ce.push("'"+this.terminals_[Ve]+"'");Bt.showPosition?$e="Parse error on line "+(Pt+1)+`: +`+Bt.showPosition()+` +Expecting `+Ce.join(", ")+", got '"+(this.terminals_[Te]||Te)+"'":$e="Parse error on line "+(Pt+1)+": Unexpected "+(Te==X?"end of input":"'"+(this.terminals_[Te]||Te)+"'"),this.parseError($e,{text:Bt.match,token:this.terminals_[Te]||Te,line:Bt.yylineno,loc:Vt,expected:Ce})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Wn+", token: "+Te);switch(Ae[0]){case 1:st.push(Te),ht.push(Bt.yytext),dt.push(Bt.yylloc),st.push(Ae[1]),Te=null,pt=Bt.yyleng,tt=Bt.yytext,Pt=Bt.yylineno,Vt=Bt.yylloc;break;case 2:if(Ee=this.productions_[Ae[1]][1],ke.$=ht[ht.length-Ee],ke._$={first_line:dt[dt.length-(Ee||1)].first_line,last_line:dt[dt.length-1].last_line,first_column:dt[dt.length-(Ee||1)].first_column,last_column:dt[dt.length-1].last_column},qe&&(ke._$.range=[dt[dt.length-(Ee||1)].range[0],dt[dt.length-1].range[1]]),ne=this.performAction.apply(ke,[tt,pt,Pt,vt.yy,Ae[1],ht,dt].concat(Rt)),typeof ne<"u")return ne;Ee&&(st=st.slice(0,-1*Ee*2),ht=ht.slice(0,-1*Ee),dt=dt.slice(0,-1*Ee)),st.push(this.productions_[Ae[1]][0]),ht.push(ke.$),dt.push(ke._$),He=Ct[st[st.length-2]][st[st.length-1]],st.push(He);break;case 3:return!0}}return!0}},Tt=function(){var mt={EOF:1,parseError:function(yt,st){if(this.yy.parser)this.yy.parser.parseError(yt,st);else throw new Error(yt)},setInput:function(ct,yt){return this.yy=yt||this.yy||{},this._input=ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ct=this._input[0];this.yytext+=ct,this.yyleng++,this.offset++,this.match+=ct,this.matched+=ct;var yt=ct.match(/(?:\r\n?|\n).*/g);return yt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ct},unput:function(ct){var yt=ct.length,st=ct.split(/(?:\r\n?|\n)/g);this._input=ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yt),this.offset-=yt;var xt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),st.length-1&&(this.yylineno-=st.length-1);var ht=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:st?(st.length===xt.length?this.yylloc.first_column:0)+xt[xt.length-st.length].length-st[0].length:this.yylloc.first_column-yt},this.options.ranges&&(this.yylloc.range=[ht[0],ht[0]+this.yyleng-yt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ct){this.unput(this.match.slice(ct))},pastInput:function(){var ct=this.matched.substr(0,this.matched.length-this.match.length);return(ct.length>20?"...":"")+ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ct=this.match;return ct.length<20&&(ct+=this._input.substr(0,20-ct.length)),(ct.substr(0,20)+(ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ct=this.pastInput(),yt=new Array(ct.length+1).join("-");return ct+this.upcomingInput()+` +`+yt+"^"},test_match:function(ct,yt){var st,xt,ht;if(this.options.backtrack_lexer&&(ht={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ht.yylloc.range=this.yylloc.range.slice(0))),xt=ct[0].match(/(?:\r\n?|\n).*/g),xt&&(this.yylineno+=xt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xt?xt[xt.length-1].length-xt[xt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ct[0].length},this.yytext+=ct[0],this.match+=ct[0],this.matches=ct,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ct[0].length),this.matched+=ct[0],st=this.performAction.call(this,this.yy,this,yt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),st)return st;if(this._backtrack){for(var dt in ht)this[dt]=ht[dt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ct,yt,st,xt;this._more||(this.yytext="",this.match="");for(var ht=this._currentRules(),dt=0;dtyt[0].length)){if(yt=st,xt=dt,this.options.backtrack_lexer){if(ct=this.test_match(st,ht[dt]),ct!==!1)return ct;if(this._backtrack){yt=!1;continue}else return!1}else if(!this.options.flex)break}return yt?(ct=this.test_match(yt,ht[xt]),ct!==!1?ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var yt=this.next();return yt||this.lex()},begin:function(yt){this.conditionStack.push(yt)},popState:function(){var yt=this.conditionStack.length-1;return yt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(yt){return yt=this.conditionStack.length-1-Math.abs(yt||0),yt>=0?this.conditionStack[yt]:"INITIAL"},pushState:function(yt){this.begin(yt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yt,st,xt,ht){switch(xt){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:break;case 6:break;case 7:return 26;case 8:break;case 9:break;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 20:this.popState();break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};return mt}();ft.lexer=Tt;function kt(){this.yy={}}return kt.prototype=ft,ft.Parser=kt,new kt}();X0t.parser=X0t;const xqe=X0t,cRt=If.pie,AK={sections:{},showData:!1,config:cRt};let LK=AK.sections,Q0t=AK.showData;const kqe=structuredClone(cRt),Eqe={getConfig:()=>structuredClone(kqe),parseDirective:(i,a,f)=>{FW(void 0,i,a,f)},clear:()=>{LK=structuredClone(AK.sections),Q0t=AK.showData,cg()},setDiagramTitle:Nb,getDiagramTitle:hp,setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addSection:(i,a)=>{i=v0(i,De()),LK[i]===void 0&&(LK[i]=a,Wt.debug(`added new section: ${i}, with value: ${a}`))},getSections:()=>LK,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{Q0t=i},getShowData:()=>Q0t},Tqe=i=>` + .pieCircle{ + stroke: ${i.pieStrokeColor}; + stroke-width : ${i.pieStrokeWidth}; + opacity : ${i.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${i.pieOuterStrokeColor}; + stroke-width: ${i.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${i.pieTitleTextSize}; + fill: ${i.pieTitleTextColor}; + font-family: ${i.fontFamily}; + } + .slice { + font-family: ${i.fontFamily}; + fill: ${i.pieSectionTextColor}; + font-size:${i.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${i.pieLegendTextColor}; + font-family: ${i.fontFamily}; + font-size: ${i.pieLegendTextSize}; + } +`,_qe=i=>{const a=Object.entries(i).map(p=>({label:p[0],value:p[1]}));return jEe().value(p=>p.value)(a)},Cqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:xqe,db:Eqe,renderer:{draw:(i,a,f,p)=>{var xt,ht;Wt.debug(`rendering pie chart +`+i);const v=p.db,m=De(),b=HIt(v.getConfig(),m.pie),E=450,C=((ht=(xt=document.getElementById(a))==null?void 0:xt.parentElement)==null?void 0:ht.offsetWidth)??b.useWidth,A=ldt(a);A.attr("viewBox",`0 0 ${C} ${E}`),og(A,E,C,b.useMaxWidth);const P=40,F=18,j=4,R=A.append("g");R.attr("transform","translate("+C/2+","+E/2+")");const{themeVariables:H}=m;let[Y]=zA(H.pieOuterStrokeWidth);Y??(Y=2);const rt=b.textPosition,J=Math.min(C,E)/2-P,it=LA().innerRadius(0).outerRadius(J),ft=LA().innerRadius(J*rt).outerRadius(J*rt);R.append("circle").attr("cx",0).attr("cy",0).attr("r",J+Y/2).attr("class","pieOuterCircle");const Tt=v.getSections(),kt=_qe(Tt),mt=[H.pie1,H.pie2,H.pie3,H.pie4,H.pie5,H.pie6,H.pie7,H.pie8,H.pie9,H.pie10,H.pie11,H.pie12],ct=E1t(mt);R.selectAll("mySlices").data(kt).enter().append("path").attr("d",it).attr("fill",dt=>ct(dt.data.label)).attr("class","pieCircle");let yt=0;Object.keys(Tt).forEach(dt=>{yt+=Tt[dt]}),R.selectAll("mySlices").data(kt).enter().append("text").text(dt=>(dt.data.value/yt*100).toFixed(0)+"%").attr("transform",dt=>"translate("+ft.centroid(dt)+")").style("text-anchor","middle").attr("class","slice"),R.append("text").text(v.getDiagramTitle()).attr("x",0).attr("y",-(E-50)/2).attr("class","pieTitleText");const st=R.selectAll(".legend").data(ct.domain()).enter().append("g").attr("class","legend").attr("transform",(dt,Ct)=>{const tt=F+j,Pt=tt*ct.domain().length/2,pt=12*F,Ft=Ct*tt-Pt;return"translate("+pt+","+Ft+")"});st.append("rect").attr("width",F).attr("height",F).style("fill",ct).style("stroke",ct),st.data(kt).append("text").attr("x",F+j).attr("y",F-j).text(dt=>{const{label:Ct,value:tt}=dt.data;return v.getShowData()?`${Ct} [${tt}]`:Ct})}},styles:Tqe}},Symbol.toStringTag,{value:"Module"}));var Z0t=function(){var i=function(Ae,ne,ke,Ve){for(ke=ke||{},Ve=Ae.length;Ve--;ke[Ae[Ve]]=ne);return ke},a=[1,3],f=[1,5],p=[1,6],v=[1,7],m=[1,8],b=[1,10],E=[1,5,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],C=[1,5,7,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],A=[38,39,40],P=[2,8],F=[1,19],j=[1,23],R=[1,24],H=[1,25],Y=[1,26],rt=[1,27],J=[1,29],it=[1,30],ft=[1,31],Tt=[1,32],kt=[1,33],mt=[1,34],ct=[1,37],yt=[1,38],st=[1,39],xt=[1,40],ht=[1,41],dt=[1,42],Ct=[1,43],tt=[1,44],Pt=[1,45],pt=[1,46],Ft=[1,47],X=[1,48],Rt=[1,49],Bt=[1,52],vt=[1,67],Ot=[1,68],Vt=[5,23,27,38,39,40,50,51,52,53,54,55,56,57,58,59,60,61],qe=[5,7,38,39,40,41],_n={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,directive:6,QUADRANT:7,document:8,line:9,statement:10,axisDetails:11,quadrantDetails:12,points:13,title:14,title_value:15,acc_title:16,acc_title_value:17,acc_descr:18,acc_descr_value:19,acc_descr_multiline_value:20,section:21,text:22,point_start:23,point_x:24,point_y:25,"X-AXIS":26,"AXIS-TEXT-DELIMITER":27,"Y-AXIS":28,QUADRANT_1:29,QUADRANT_2:30,QUADRANT_3:31,QUADRANT_4:32,openDirective:33,typeDirective:34,closeDirective:35,":":36,argDirective:37,NEWLINE:38,SEMI:39,EOF:40,open_directive:41,type_directive:42,arg_directive:43,close_directive:44,alphaNumToken:45,textNoTagsToken:46,STR:47,MD_STR:48,alphaNum:49,PUNCTUATION:50,AMP:51,NUM:52,ALPHA:53,COMMA:54,PLUS:55,EQUALS:56,MULT:57,DOT:58,BRKT:59,UNDERSCORE:60,MINUS:61,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",7:"QUADRANT",14:"title",15:"title_value",16:"acc_title",17:"acc_title_value",18:"acc_descr",19:"acc_descr_value",20:"acc_descr_multiline_value",21:"section",23:"point_start",24:"point_x",25:"point_y",26:"X-AXIS",27:"AXIS-TEXT-DELIMITER",28:"Y-AXIS",29:"QUADRANT_1",30:"QUADRANT_2",31:"QUADRANT_3",32:"QUADRANT_4",36:":",38:"NEWLINE",39:"SEMI",40:"EOF",41:"open_directive",42:"type_directive",43:"arg_directive",44:"close_directive",47:"STR",48:"MD_STR",50:"PUNCTUATION",51:"AMP",52:"NUM",53:"ALPHA",54:"COMMA",55:"PLUS",56:"EQUALS",57:"MULT",58:"DOT",59:"BRKT",60:"UNDERSCORE",61:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[10,0],[10,2],[10,1],[10,1],[10,1],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[13,4],[11,4],[11,3],[11,2],[11,4],[11,3],[11,2],[12,2],[12,2],[12,2],[12,2],[6,3],[6,5],[4,1],[4,1],[4,1],[33,1],[34,1],[37,1],[35,1],[22,1],[22,2],[22,1],[22,1],[49,1],[49,2],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[46,1],[46,1],[46,1]],performAction:function(ne,ke,Ve,Ee,He,Ce,$e){var ye=Ce.length-1;switch(He){case 13:this.$=Ce[ye].trim(),Ee.setDiagramTitle(this.$);break;case 14:this.$=Ce[ye].trim(),Ee.setAccTitle(this.$);break;case 15:case 16:this.$=Ce[ye].trim(),Ee.setAccDescription(this.$);break;case 17:Ee.addSection(Ce[ye].substr(8)),this.$=Ce[ye].substr(8);break;case 19:Ee.addPoint(Ce[ye-3],Ce[ye-1],Ce[ye]);break;case 20:Ee.setXAxisLeftText(Ce[ye-2]),Ee.setXAxisRightText(Ce[ye]);break;case 21:Ce[ye-1].text+=" ⟶ ",Ee.setXAxisLeftText(Ce[ye-1]);break;case 22:Ee.setXAxisLeftText(Ce[ye]);break;case 23:Ee.setYAxisBottomText(Ce[ye-2]),Ee.setYAxisTopText(Ce[ye]);break;case 24:Ce[ye-1].text+=" ⟶ ",Ee.setYAxisBottomText(Ce[ye-1]);break;case 25:Ee.setYAxisBottomText(Ce[ye]);break;case 26:Ee.setQuadrant1Text(Ce[ye]);break;case 27:Ee.setQuadrant2Text(Ce[ye]);break;case 28:Ee.setQuadrant3Text(Ce[ye]);break;case 29:Ee.setQuadrant4Text(Ce[ye]);break;case 35:Ee.parseDirective("%%{","open_directive");break;case 36:Ee.parseDirective(Ce[ye],"type_directive");break;case 37:Ce[ye]=Ce[ye].trim().replace(/'/g,'"'),Ee.parseDirective(Ce[ye],"arg_directive");break;case 38:Ee.parseDirective("}%%","close_directive","quadrantChart");break;case 39:this.$={text:Ce[ye],type:"text"};break;case 40:this.$={text:Ce[ye-1].text+""+Ce[ye],type:Ce[ye-1].type};break;case 41:this.$={text:Ce[ye],type:"text"};break;case 42:this.$={text:Ce[ye],type:"markdown"};break;case 43:this.$=Ce[ye];break;case 44:this.$=Ce[ye-1]+""+Ce[ye];break}},table:[{3:1,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},{1:[3]},{3:11,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},{3:12,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},{3:13,4:2,5:a,6:4,7:f,33:9,38:p,39:v,40:m,41:b},i(E,[2,5],{8:14}),i(C,[2,32]),i(C,[2,33]),i(C,[2,34]),{34:15,42:[1,16]},{42:[2,35]},{1:[2,1]},{1:[2,2]},{1:[2,3]},i(A,P,{33:9,9:17,10:18,11:20,12:21,13:22,6:28,22:35,45:36,1:[2,4],5:F,14:j,16:R,18:H,20:Y,21:rt,26:J,28:it,29:ft,30:Tt,31:kt,32:mt,41:b,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),{35:50,36:[1,51],44:Bt},i([36,44],[2,36]),i(E,[2,6]),{4:53,38:p,39:v,40:m},i(A,P,{33:9,11:20,12:21,13:22,6:28,22:35,45:36,10:54,5:F,14:j,16:R,18:H,20:Y,21:rt,26:J,28:it,29:ft,30:Tt,31:kt,32:mt,41:b,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),i(A,[2,10]),i(A,[2,11]),i(A,[2,12]),{15:[1,55]},{17:[1,56]},{19:[1,57]},i(A,[2,16]),i(A,[2,17]),i(A,[2,18]),{22:58,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:59,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:60,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:61,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:62,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{22:63,45:36,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt},{5:vt,23:[1,64],45:66,46:65,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot},i(Vt,[2,39]),i(Vt,[2,41]),i(Vt,[2,42]),i(Vt,[2,45]),i(Vt,[2,46]),i(Vt,[2,47]),i(Vt,[2,48]),i(Vt,[2,49]),i(Vt,[2,50]),i(Vt,[2,51]),i(Vt,[2,52]),i(Vt,[2,53]),i(Vt,[2,54]),i(Vt,[2,55]),i(qe,[2,30]),{37:69,43:[1,70]},i(qe,[2,38]),i(E,[2,7]),i(A,[2,9]),i(A,[2,13]),i(A,[2,14]),i(A,[2,15]),i(A,[2,22],{46:65,45:66,5:vt,27:[1,71],50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,25],{46:65,45:66,5:vt,27:[1,72],50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,26],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,27],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,28],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,29],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),{24:[1,73]},i(Vt,[2,40]),i(Vt,[2,56]),i(Vt,[2,57]),i(Vt,[2,58]),{35:74,44:Bt},{44:[2,37]},i(A,[2,21],{45:36,22:75,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),i(A,[2,24],{45:36,22:76,47:ct,48:yt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt}),{25:[1,77]},i(qe,[2,31]),i(A,[2,20],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,23],{46:65,45:66,5:vt,50:st,51:xt,52:ht,53:dt,54:Ct,55:tt,56:Pt,57:pt,58:Ft,59:X,60:Rt,61:Ot}),i(A,[2,19])],defaultActions:{10:[2,35],11:[2,1],12:[2,2],13:[2,3],70:[2,37]},parseError:function(ne,ke){if(ke.recoverable)this.trace(ne);else{var Ve=new Error(ne);throw Ve.hash=ke,Ve}},parse:function(ne){var ke=this,Ve=[0],Ee=[],He=[null],Ce=[],$e=this.table,ye="",fn=0,Yt=0,Mi=2,qt=1,zi=Ce.slice.call(arguments,1),Se=Object.create(this.lexer),ki={yy:{}};for(var Ri in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ri)&&(ki.yy[Ri]=this.yy[Ri]);Se.setInput(ne,ki.yy),ki.yy.lexer=Se,ki.yy.parser=this,typeof Se.yylloc>"u"&&(Se.yylloc={});var pi=Se.yylloc;Ce.push(pi);var bi=Se.options&&Se.options.ranges;typeof ki.yy.parseError=="function"?this.parseError=ki.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dn(){var Oi;return Oi=Ee.pop()||Se.lex()||qt,typeof Oi!="number"&&(Oi instanceof Array&&(Ee=Oi,Oi=Ee.pop()),Oi=ke.symbols_[Oi]||Oi),Oi}for(var Nn,Wr,Li,is,Ts={},Aa,Xi,Ga,_r;;){if(Wr=Ve[Ve.length-1],this.defaultActions[Wr]?Li=this.defaultActions[Wr]:((Nn===null||typeof Nn>"u")&&(Nn=dn()),Li=$e[Wr]&&$e[Wr][Nn]),typeof Li>"u"||!Li.length||!Li[0]){var qr="";_r=[];for(Aa in $e[Wr])this.terminals_[Aa]&&Aa>Mi&&_r.push("'"+this.terminals_[Aa]+"'");Se.showPosition?qr="Parse error on line "+(fn+1)+`: +`+Se.showPosition()+` +Expecting `+_r.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":qr="Parse error on line "+(fn+1)+": Unexpected "+(Nn==qt?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(qr,{text:Se.match,token:this.terminals_[Nn]||Nn,line:Se.yylineno,loc:pi,expected:_r})}if(Li[0]instanceof Array&&Li.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Wr+", token: "+Nn);switch(Li[0]){case 1:Ve.push(Nn),He.push(Se.yytext),Ce.push(Se.yylloc),Ve.push(Li[1]),Nn=null,Yt=Se.yyleng,ye=Se.yytext,fn=Se.yylineno,pi=Se.yylloc;break;case 2:if(Xi=this.productions_[Li[1]][1],Ts.$=He[He.length-Xi],Ts._$={first_line:Ce[Ce.length-(Xi||1)].first_line,last_line:Ce[Ce.length-1].last_line,first_column:Ce[Ce.length-(Xi||1)].first_column,last_column:Ce[Ce.length-1].last_column},bi&&(Ts._$.range=[Ce[Ce.length-(Xi||1)].range[0],Ce[Ce.length-1].range[1]]),is=this.performAction.apply(Ts,[ye,Yt,fn,ki.yy,Li[1],He,Ce].concat(zi)),typeof is<"u")return is;Xi&&(Ve=Ve.slice(0,-1*Xi*2),He=He.slice(0,-1*Xi),Ce=Ce.slice(0,-1*Xi)),Ve.push(this.productions_[Li[1]][0]),He.push(Ts.$),Ce.push(Ts._$),Ga=$e[Ve[Ve.length-2]][Ve[Ve.length-1]],Ve.push(Ga);break;case 3:return!0}}return!0}},Te=function(){var Ae={EOF:1,parseError:function(ke,Ve){if(this.yy.parser)this.yy.parser.parseError(ke,Ve);else throw new Error(ke)},setInput:function(ne,ke){return this.yy=ke||this.yy||{},this._input=ne,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ne=this._input[0];this.yytext+=ne,this.yyleng++,this.offset++,this.match+=ne,this.matched+=ne;var ke=ne.match(/(?:\r\n?|\n).*/g);return ke?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ne},unput:function(ne){var ke=ne.length,Ve=ne.split(/(?:\r\n?|\n)/g);this._input=ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ke),this.offset-=ke;var Ee=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ve.length-1&&(this.yylineno-=Ve.length-1);var He=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ve?(Ve.length===Ee.length?this.yylloc.first_column:0)+Ee[Ee.length-Ve.length].length-Ve[0].length:this.yylloc.first_column-ke},this.options.ranges&&(this.yylloc.range=[He[0],He[0]+this.yyleng-ke]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ne){this.unput(this.match.slice(ne))},pastInput:function(){var ne=this.matched.substr(0,this.matched.length-this.match.length);return(ne.length>20?"...":"")+ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ne=this.match;return ne.length<20&&(ne+=this._input.substr(0,20-ne.length)),(ne.substr(0,20)+(ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ne=this.pastInput(),ke=new Array(ne.length+1).join("-");return ne+this.upcomingInput()+` +`+ke+"^"},test_match:function(ne,ke){var Ve,Ee,He;if(this.options.backtrack_lexer&&(He={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(He.yylloc.range=this.yylloc.range.slice(0))),Ee=ne[0].match(/(?:\r\n?|\n).*/g),Ee&&(this.yylineno+=Ee.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ee?Ee[Ee.length-1].length-Ee[Ee.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ne[0].length},this.yytext+=ne[0],this.match+=ne[0],this.matches=ne,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ne[0].length),this.matched+=ne[0],Ve=this.performAction.call(this,this.yy,this,ke,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ve)return Ve;if(this._backtrack){for(var Ce in He)this[Ce]=He[Ce];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ne,ke,Ve,Ee;this._more||(this.yytext="",this.match="");for(var He=this._currentRules(),Ce=0;Ceke[0].length)){if(ke=Ve,Ee=Ce,this.options.backtrack_lexer){if(ne=this.test_match(Ve,He[Ce]),ne!==!1)return ne;if(this._backtrack){ke=!1;continue}else return!1}else if(!this.options.flex)break}return ke?(ne=this.test_match(ke,He[Ee]),ne!==!1?ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ke=this.next();return ke||this.lex()},begin:function(ke){this.conditionStack.push(ke)},popState:function(){var ke=this.conditionStack.length-1;return ke>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ke){return ke=this.conditionStack.length-1-Math.abs(ke||0),ke>=0?this.conditionStack[ke]:"INITIAL"},pushState:function(ke){this.begin(ke)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ke,Ve,Ee,He){switch(Ee){case 0:return this.begin("open_directive"),41;case 1:return this.begin("type_directive"),42;case 2:return this.popState(),this.begin("arg_directive"),36;case 3:return this.popState(),this.popState(),44;case 4:return 43;case 5:break;case 6:break;case 7:return 38;case 8:break;case 9:return this.begin("title"),14;case 10:return this.popState(),"title_value";case 11:return this.begin("acc_title"),16;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),18;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 26;case 19:return 28;case 20:return 27;case 21:return 29;case 22:return 30;case 23:return 31;case 24:return 32;case 25:this.begin("md_string");break;case 26:return"MD_STR";case 27:this.popState();break;case 28:this.begin("string");break;case 29:this.popState();break;case 30:return"STR";case 31:return this.begin("point_start"),23;case 32:return this.begin("point_x"),24;case 33:this.popState();break;case 34:this.popState(),this.begin("point_y");break;case 35:return this.popState(),25;case 36:return 7;case 37:return 53;case 38:return"COLON";case 39:return 55;case 40:return 54;case 41:return 56;case 42:return 56;case 43:return 57;case 44:return 59;case 45:return 60;case 46:return 58;case 47:return 51;case 48:return 61;case 49:return 52;case 50:return 5;case 51:return 39;case 52:return 50;case 53:return 40}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{point_y:{rules:[35],inclusive:!1},point_x:{rules:[34],inclusive:!1},point_start:{rules:[32,33],inclusive:!1},acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[10],inclusive:!1},md_string:{rules:[26,27],inclusive:!1},string:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,11,13,15,18,19,20,21,22,23,24,25,28,31,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],inclusive:!0}}};return Ae}();_n.lexer=Te;function Wn(){this.yy={}}return Wn.prototype=_n,_n.Parser=Wn,new Wn}();Z0t.parser=Z0t;const Sqe=Z0t,pg=JDt();class Aqe{constructor(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){var a,f,p,v,m,b,E,C,A,P,F,j,R,H,Y,rt,J,it;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((a=If.quadrantChart)==null?void 0:a.chartWidth)||500,chartWidth:((f=If.quadrantChart)==null?void 0:f.chartHeight)||500,titlePadding:((p=If.quadrantChart)==null?void 0:p.titlePadding)||10,titleFontSize:((v=If.quadrantChart)==null?void 0:v.titleFontSize)||20,quadrantPadding:((m=If.quadrantChart)==null?void 0:m.quadrantPadding)||5,xAxisLabelPadding:((b=If.quadrantChart)==null?void 0:b.xAxisLabelPadding)||5,yAxisLabelPadding:((E=If.quadrantChart)==null?void 0:E.yAxisLabelPadding)||5,xAxisLabelFontSize:((C=If.quadrantChart)==null?void 0:C.xAxisLabelFontSize)||16,yAxisLabelFontSize:((A=If.quadrantChart)==null?void 0:A.yAxisLabelFontSize)||16,quadrantLabelFontSize:((P=If.quadrantChart)==null?void 0:P.quadrantLabelFontSize)||16,quadrantTextTopPadding:((F=If.quadrantChart)==null?void 0:F.quadrantTextTopPadding)||5,pointTextPadding:((j=If.quadrantChart)==null?void 0:j.pointTextPadding)||5,pointLabelFontSize:((R=If.quadrantChart)==null?void 0:R.pointLabelFontSize)||12,pointRadius:((H=If.quadrantChart)==null?void 0:H.pointRadius)||5,xAxisPosition:((Y=If.quadrantChart)==null?void 0:Y.xAxisPosition)||"top",yAxisPosition:((rt=If.quadrantChart)==null?void 0:rt.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:((J=If.quadrantChart)==null?void 0:J.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:((it=If.quadrantChart)==null?void 0:it.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:pg.quadrant1Fill,quadrant2Fill:pg.quadrant2Fill,quadrant3Fill:pg.quadrant3Fill,quadrant4Fill:pg.quadrant4Fill,quadrant1TextFill:pg.quadrant1TextFill,quadrant2TextFill:pg.quadrant2TextFill,quadrant3TextFill:pg.quadrant3TextFill,quadrant4TextFill:pg.quadrant4TextFill,quadrantPointFill:pg.quadrantPointFill,quadrantPointTextFill:pg.quadrantPointTextFill,quadrantXAxisTextFill:pg.quadrantXAxisTextFill,quadrantYAxisTextFill:pg.quadrantYAxisTextFill,quadrantTitleFill:pg.quadrantTitleFill,quadrantInternalBorderStrokeFill:pg.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:pg.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),Wt.info("clear called")}setData(a){this.data={...this.data,...a}}addPoints(a){this.data.points=[...a,...this.data.points]}setConfig(a){Wt.trace("setConfig called with: ",a),this.config={...this.config,...a}}setThemeConfig(a){Wt.trace("setThemeConfig called with: ",a),this.themeConfig={...this.themeConfig,...a}}calculateSpace(a,f,p,v){const m=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,b={top:a==="top"&&f?m:0,bottom:a==="bottom"&&f?m:0},E=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,C={left:this.config.yAxisPosition==="left"&&p?E:0,right:this.config.yAxisPosition==="right"&&p?E:0},A=this.config.titleFontSize+this.config.titlePadding*2,P={top:v?A:0},F=this.config.quadrantPadding+C.left,j=this.config.quadrantPadding+b.top+P.top,R=this.config.chartWidth-this.config.quadrantPadding*2-C.left-C.right,H=this.config.chartHeight-this.config.quadrantPadding*2-b.top-b.bottom-P.top,Y=R/2,rt=H/2;return{xAxisSpace:b,yAxisSpace:C,titleSpace:P,quadrantSpace:{quadrantLeft:F,quadrantTop:j,quadrantWidth:R,quadrantHalfWidth:Y,quadrantHeight:H,quadrantHalfHeight:rt}}}getAxisLabels(a,f,p,v){const{quadrantSpace:m,titleSpace:b}=v,{quadrantHalfHeight:E,quadrantHeight:C,quadrantLeft:A,quadrantHalfWidth:P,quadrantTop:F,quadrantWidth:j}=m,R=this.data.points.length===0,H=[];return this.data.xAxisLeftText&&f&&H.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:A+(R?P/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+F+C+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&f&&H.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:A+P+(R?P/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+F+C+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&p&&H.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+A+j+this.config.quadrantPadding,y:F+C-(R?E/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&p&&H.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+A+j+this.config.quadrantPadding,y:F+E-(R?E/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:R?"center":"left",horizontalPos:"top",rotation:-90}),H}getQuadrants(a){const{quadrantSpace:f}=a,{quadrantHalfHeight:p,quadrantLeft:v,quadrantHalfWidth:m,quadrantTop:b}=f,E=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v+m,y:b,width:m,height:p,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v,y:b,width:m,height:p,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v,y:b+p,width:m,height:p,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:v+m,y:b+p,width:m,height:p,fill:this.themeConfig.quadrant4Fill}];for(const C of E)C.text.x=C.x+C.width/2,this.data.points.length===0?(C.text.y=C.y+C.height/2,C.text.horizontalPos="middle"):(C.text.y=C.y+this.config.quadrantTextTopPadding,C.text.horizontalPos="top");return E}getQuadrantPoints(a){const{quadrantSpace:f}=a,{quadrantHeight:p,quadrantLeft:v,quadrantTop:m,quadrantWidth:b}=f,E=BU().domain([0,1]).range([v,b+v]),C=BU().domain([0,1]).range([p+m,m]);return this.data.points.map(P=>({x:E(P.x),y:C(P.y),fill:this.themeConfig.quadrantPointFill,radius:this.config.pointRadius,text:{text:P.text,fill:this.themeConfig.quadrantPointTextFill,x:E(P.x),y:C(P.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0}}))}getBorders(a){const f=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:p}=a,{quadrantHalfHeight:v,quadrantHeight:m,quadrantLeft:b,quadrantHalfWidth:E,quadrantTop:C,quadrantWidth:A}=p;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-f,y1:C,x2:b+A+f,y2:C},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b+A,y1:C+f,x2:b+A,y2:C+m-f},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-f,y1:C+m,x2:b+A+f,y2:C+m},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b,y1:C+f,x2:b,y2:C+m-f},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+E,y1:C+f,x2:b+E,y2:C+m-f},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+f,y1:C+v,x2:b+A-f,y2:C+v}]}getTitle(a){if(a)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const a=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),f=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),p=this.config.showTitle&&!!this.data.titleText,v=this.data.points.length>0?"bottom":this.config.xAxisPosition,m=this.calculateSpace(v,a,f,p);return{points:this.getQuadrantPoints(m),quadrants:this.getQuadrants(m),axisLabels:this.getAxisLabels(v,a,f,m),borderLines:this.getBorders(m),title:this.getTitle(p)}}}const Lqe=De();function D5(i){return v0(i.trim(),Lqe)}const k0=new Aqe;function Mqe(i){k0.setData({quadrant1Text:D5(i.text)})}function Dqe(i){k0.setData({quadrant2Text:D5(i.text)})}function Iqe(i){k0.setData({quadrant3Text:D5(i.text)})}function Oqe(i){k0.setData({quadrant4Text:D5(i.text)})}function Nqe(i){k0.setData({xAxisLeftText:D5(i.text)})}function Pqe(i){k0.setData({xAxisRightText:D5(i.text)})}function Fqe(i){k0.setData({yAxisTopText:D5(i.text)})}function Bqe(i){k0.setData({yAxisBottomText:D5(i.text)})}function Rqe(i,a,f){k0.addPoints([{x:a,y:f,text:D5(i.text)}])}function jqe(i){k0.setConfig({chartWidth:i})}function $qe(i){k0.setConfig({chartHeight:i})}function zqe(){const i=De(),{themeVariables:a,quadrantChart:f}=i;return f&&k0.setConfig(f),k0.setThemeConfig({quadrant1Fill:a.quadrant1Fill,quadrant2Fill:a.quadrant2Fill,quadrant3Fill:a.quadrant3Fill,quadrant4Fill:a.quadrant4Fill,quadrant1TextFill:a.quadrant1TextFill,quadrant2TextFill:a.quadrant2TextFill,quadrant3TextFill:a.quadrant3TextFill,quadrant4TextFill:a.quadrant4TextFill,quadrantPointFill:a.quadrantPointFill,quadrantPointTextFill:a.quadrantPointTextFill,quadrantXAxisTextFill:a.quadrantXAxisTextFill,quadrantYAxisTextFill:a.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:a.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:a.quadrantInternalBorderStrokeFill,quadrantTitleFill:a.quadrantTitleFill}),k0.setData({titleText:hp()}),k0.build()}const qqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Sqe,db:{setWidth:jqe,setHeight:$qe,setQuadrant1Text:Mqe,setQuadrant2Text:Dqe,setQuadrant3Text:Iqe,setQuadrant4Text:Oqe,setXAxisLeftText:Nqe,setXAxisRightText:Pqe,setYAxisTopText:Fqe,setYAxisBottomText:Bqe,addPoint:Rqe,getQuadrantData:zqe,parseDirective:function(i,a,f){J1.parseDirective(this,i,a,f)},clear:function(){k0.clear(),cg()},setAccTitle:m0,getAccTitle:ug,setDiagramTitle:Nb,getDiagramTitle:hp,getAccDescription:hg,setAccDescription:lg},renderer:{draw:(i,a,f,p)=>{var yt,st,xt;function v(ht){return ht==="top"?"hanging":"middle"}function m(ht){return ht==="left"?"start":"middle"}function b(ht){return`translate(${ht.x}, ${ht.y}) rotate(${ht.rotation||0})`}const E=De();Wt.debug(`Rendering quadrant chart +`+i);const C=E.securityLevel;let A;C==="sandbox"&&(A=xr("#i"+a));const F=xr(C==="sandbox"?A.nodes()[0].contentDocument.body:"body").select(`[id="${a}"]`),j=F.append("g").attr("class","main"),R=((yt=E.quadrantChart)==null?void 0:yt.chartWidth)||500,H=((st=E.quadrantChart)==null?void 0:st.chartHeight)||500;og(F,H,R,((xt=E.quadrantChart)==null?void 0:xt.useMaxWidth)||!0),F.attr("viewBox","0 0 "+R+" "+H),p.db.setHeight(H),p.db.setWidth(R);const Y=p.db.getQuadrantData(),rt=j.append("g").attr("class","quadrants"),J=j.append("g").attr("class","border"),it=j.append("g").attr("class","data-points"),ft=j.append("g").attr("class","labels"),Tt=j.append("g").attr("class","title");Y.title&&Tt.append("text").attr("x",0).attr("y",0).attr("fill",Y.title.fill).attr("font-size",Y.title.fontSize).attr("dominant-baseline",v(Y.title.horizontalPos)).attr("text-anchor",m(Y.title.verticalPos)).attr("transform",b(Y.title)).text(Y.title.text),Y.borderLines&&J.selectAll("line").data(Y.borderLines).enter().append("line").attr("x1",ht=>ht.x1).attr("y1",ht=>ht.y1).attr("x2",ht=>ht.x2).attr("y2",ht=>ht.y2).style("stroke",ht=>ht.strokeFill).style("stroke-width",ht=>ht.strokeWidth);const kt=rt.selectAll("g.quadrant").data(Y.quadrants).enter().append("g").attr("class","quadrant");kt.append("rect").attr("x",ht=>ht.x).attr("y",ht=>ht.y).attr("width",ht=>ht.width).attr("height",ht=>ht.height).attr("fill",ht=>ht.fill),kt.append("text").attr("x",0).attr("y",0).attr("fill",ht=>ht.text.fill).attr("font-size",ht=>ht.text.fontSize).attr("dominant-baseline",ht=>v(ht.text.horizontalPos)).attr("text-anchor",ht=>m(ht.text.verticalPos)).attr("transform",ht=>b(ht.text)).text(ht=>ht.text.text),ft.selectAll("g.label").data(Y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(ht=>ht.text).attr("fill",ht=>ht.fill).attr("font-size",ht=>ht.fontSize).attr("dominant-baseline",ht=>v(ht.horizontalPos)).attr("text-anchor",ht=>m(ht.verticalPos)).attr("transform",ht=>b(ht));const ct=it.selectAll("g.data-point").data(Y.points).enter().append("g").attr("class","data-point");ct.append("circle").attr("cx",ht=>ht.x).attr("cy",ht=>ht.y).attr("r",ht=>ht.radius).attr("fill",ht=>ht.fill),ct.append("text").attr("x",0).attr("y",0).text(ht=>ht.text.text).attr("fill",ht=>ht.text.fill).attr("font-size",ht=>ht.text.fontSize).attr("dominant-baseline",ht=>v(ht.text.horizontalPos)).attr("text-anchor",ht=>m(ht.text.verticalPos)).attr("transform",ht=>b(ht.text))}},styles:()=>""}},Symbol.toStringTag,{value:"Module"}));var J0t=function(){var i=function(Wn,Ae,ne,ke){for(ne=ne||{},ke=Wn.length;ke--;ne[Wn[ke]]=Ae);return ne},a=[1,3],f=[1,5],p=[1,6],v=[1,7],m=[1,8],b=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],E=[1,22],C=[2,13],A=[1,26],P=[1,27],F=[1,28],j=[1,29],R=[1,30],H=[1,31],Y=[1,24],rt=[1,32],J=[1,33],it=[1,36],ft=[71,72],Tt=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],kt=[1,56],mt=[1,57],ct=[1,58],yt=[1,59],st=[1,60],xt=[1,61],ht=[1,62],dt=[62,63],Ct=[1,74],tt=[1,70],Pt=[1,71],pt=[1,72],Ft=[1,73],X=[1,75],Rt=[1,79],Bt=[1,80],vt=[1,77],Ot=[1,78],Vt=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],qe={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(Ae,ne,ke,Ve,Ee,He,Ce){var $e=He.length-1;switch(Ee){case 6:this.$=He[$e].trim(),Ve.setAccTitle(this.$);break;case 7:case 8:this.$=He[$e].trim(),Ve.setAccDescription(this.$);break;case 9:Ve.parseDirective("%%{","open_directive");break;case 10:Ve.parseDirective(He[$e],"type_directive");break;case 11:He[$e]=He[$e].trim().replace(/'/g,'"'),Ve.parseDirective(He[$e],"arg_directive");break;case 12:Ve.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:Ve.addRequirement(He[$e-3],He[$e-4]);break;case 20:Ve.setNewReqId(He[$e-2]);break;case 21:Ve.setNewReqText(He[$e-2]);break;case 22:Ve.setNewReqRisk(He[$e-2]);break;case 23:Ve.setNewReqVerifyMethod(He[$e-2]);break;case 26:this.$=Ve.RequirementType.REQUIREMENT;break;case 27:this.$=Ve.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=Ve.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=Ve.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=Ve.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=Ve.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=Ve.RiskLevel.LOW_RISK;break;case 33:this.$=Ve.RiskLevel.MED_RISK;break;case 34:this.$=Ve.RiskLevel.HIGH_RISK;break;case 35:this.$=Ve.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=Ve.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=Ve.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=Ve.VerifyType.VERIFY_TEST;break;case 39:Ve.addElement(He[$e-3]);break;case 40:Ve.setNewElementType(He[$e-2]);break;case 41:Ve.setNewElementDocRef(He[$e-2]);break;case 44:Ve.addRelationship(He[$e-2],He[$e],He[$e-4]);break;case 45:Ve.addRelationship(He[$e-2],He[$e-4],He[$e]);break;case 46:this.$=Ve.Relationships.CONTAINS;break;case 47:this.$=Ve.Relationships.COPIES;break;case 48:this.$=Ve.Relationships.DERIVES;break;case 49:this.$=Ve.Relationships.SATISFIES;break;case 50:this.$=Ve.Relationships.VERIFIES;break;case 51:this.$=Ve.Relationships.REFINES;break;case 52:this.$=Ve.Relationships.TRACES;break}},table:[{3:1,4:2,6:a,9:4,14:f,16:p,18:v,19:m},{1:[3]},{3:10,4:2,5:[1,9],6:a,9:4,14:f,16:p,18:v,19:m},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},i(b,[2,8]),{20:[2,9]},{3:16,4:2,6:a,9:4,14:f,16:p,18:v,19:m},{1:[2,2]},{4:21,5:E,7:17,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{11:34,12:[1,35],22:it},i([12,22],[2,10]),i(b,[2,6]),i(b,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:E,7:38,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:39,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:40,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:41,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{4:21,5:E,7:42,8:C,9:4,14:f,16:p,18:v,19:m,23:18,24:19,25:20,26:23,32:25,40:A,41:P,42:F,43:j,44:R,45:H,53:Y,71:rt,72:J},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},i(ft,[2,26]),i(ft,[2,27]),i(ft,[2,28]),i(ft,[2,29]),i(ft,[2,30]),i(ft,[2,31]),i(Tt,[2,55]),i(Tt,[2,56]),i(b,[2,4]),{13:51,21:[1,52]},i(b,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:kt,65:mt,66:ct,67:yt,68:st,69:xt,70:ht},{61:63,64:kt,65:mt,66:ct,67:yt,68:st,69:xt,70:ht},{11:64,22:it},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},i(dt,[2,46]),i(dt,[2,47]),i(dt,[2,48]),i(dt,[2,49]),i(dt,[2,50]),i(dt,[2,51]),i(dt,[2,52]),{63:[1,68]},i(b,[2,5]),{5:Ct,29:69,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Rt,39:Bt,55:76,56:vt,58:Ot},{32:81,71:rt,72:J},{32:82,71:rt,72:J},i(Vt,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:Ct,29:87,30:tt,33:Pt,35:pt,37:Ft,39:X},i(Vt,[2,25]),i(Vt,[2,39]),{31:[1,88]},{31:[1,89]},{5:Rt,39:Bt,55:90,56:vt,58:Ot},i(Vt,[2,43]),i(Vt,[2,44]),i(Vt,[2,45]),{32:91,71:rt,72:J},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},i(Vt,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},i(Vt,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:Ct,29:116,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Ct,29:117,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Ct,29:118,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Ct,29:119,30:tt,33:Pt,35:pt,37:Ft,39:X},{5:Rt,39:Bt,55:120,56:vt,58:Ot},{5:Rt,39:Bt,55:121,56:vt,58:Ot},i(Vt,[2,20]),i(Vt,[2,21]),i(Vt,[2,22]),i(Vt,[2,23]),i(Vt,[2,40]),i(Vt,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(Ae,ne){if(ne.recoverable)this.trace(Ae);else{var ke=new Error(Ae);throw ke.hash=ne,ke}},parse:function(Ae){var ne=this,ke=[0],Ve=[],Ee=[null],He=[],Ce=this.table,$e="",ye=0,fn=0,Yt=2,Mi=1,qt=He.slice.call(arguments,1),zi=Object.create(this.lexer),Se={yy:{}};for(var ki in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ki)&&(Se.yy[ki]=this.yy[ki]);zi.setInput(Ae,Se.yy),Se.yy.lexer=zi,Se.yy.parser=this,typeof zi.yylloc>"u"&&(zi.yylloc={});var Ri=zi.yylloc;He.push(Ri);var pi=zi.options&&zi.options.ranges;typeof Se.yy.parseError=="function"?this.parseError=Se.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function bi(){var qr;return qr=Ve.pop()||zi.lex()||Mi,typeof qr!="number"&&(qr instanceof Array&&(Ve=qr,qr=Ve.pop()),qr=ne.symbols_[qr]||qr),qr}for(var dn,Nn,Wr,Li,is={},Ts,Aa,Xi,Ga;;){if(Nn=ke[ke.length-1],this.defaultActions[Nn]?Wr=this.defaultActions[Nn]:((dn===null||typeof dn>"u")&&(dn=bi()),Wr=Ce[Nn]&&Ce[Nn][dn]),typeof Wr>"u"||!Wr.length||!Wr[0]){var _r="";Ga=[];for(Ts in Ce[Nn])this.terminals_[Ts]&&Ts>Yt&&Ga.push("'"+this.terminals_[Ts]+"'");zi.showPosition?_r="Parse error on line "+(ye+1)+`: +`+zi.showPosition()+` +Expecting `+Ga.join(", ")+", got '"+(this.terminals_[dn]||dn)+"'":_r="Parse error on line "+(ye+1)+": Unexpected "+(dn==Mi?"end of input":"'"+(this.terminals_[dn]||dn)+"'"),this.parseError(_r,{text:zi.match,token:this.terminals_[dn]||dn,line:zi.yylineno,loc:Ri,expected:Ga})}if(Wr[0]instanceof Array&&Wr.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Nn+", token: "+dn);switch(Wr[0]){case 1:ke.push(dn),Ee.push(zi.yytext),He.push(zi.yylloc),ke.push(Wr[1]),dn=null,fn=zi.yyleng,$e=zi.yytext,ye=zi.yylineno,Ri=zi.yylloc;break;case 2:if(Aa=this.productions_[Wr[1]][1],is.$=Ee[Ee.length-Aa],is._$={first_line:He[He.length-(Aa||1)].first_line,last_line:He[He.length-1].last_line,first_column:He[He.length-(Aa||1)].first_column,last_column:He[He.length-1].last_column},pi&&(is._$.range=[He[He.length-(Aa||1)].range[0],He[He.length-1].range[1]]),Li=this.performAction.apply(is,[$e,fn,ye,Se.yy,Wr[1],Ee,He].concat(qt)),typeof Li<"u")return Li;Aa&&(ke=ke.slice(0,-1*Aa*2),Ee=Ee.slice(0,-1*Aa),He=He.slice(0,-1*Aa)),ke.push(this.productions_[Wr[1]][0]),Ee.push(is.$),He.push(is._$),Xi=Ce[ke[ke.length-2]][ke[ke.length-1]],ke.push(Xi);break;case 3:return!0}}return!0}},_n=function(){var Wn={EOF:1,parseError:function(ne,ke){if(this.yy.parser)this.yy.parser.parseError(ne,ke);else throw new Error(ne)},setInput:function(Ae,ne){return this.yy=ne||this.yy||{},this._input=Ae,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ae=this._input[0];this.yytext+=Ae,this.yyleng++,this.offset++,this.match+=Ae,this.matched+=Ae;var ne=Ae.match(/(?:\r\n?|\n).*/g);return ne?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ae},unput:function(Ae){var ne=Ae.length,ke=Ae.split(/(?:\r\n?|\n)/g);this._input=Ae+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ne),this.offset-=ne;var Ve=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ke.length-1&&(this.yylineno-=ke.length-1);var Ee=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ke?(ke.length===Ve.length?this.yylloc.first_column:0)+Ve[Ve.length-ke.length].length-ke[0].length:this.yylloc.first_column-ne},this.options.ranges&&(this.yylloc.range=[Ee[0],Ee[0]+this.yyleng-ne]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ae){this.unput(this.match.slice(Ae))},pastInput:function(){var Ae=this.matched.substr(0,this.matched.length-this.match.length);return(Ae.length>20?"...":"")+Ae.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ae=this.match;return Ae.length<20&&(Ae+=this._input.substr(0,20-Ae.length)),(Ae.substr(0,20)+(Ae.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ae=this.pastInput(),ne=new Array(Ae.length+1).join("-");return Ae+this.upcomingInput()+` +`+ne+"^"},test_match:function(Ae,ne){var ke,Ve,Ee;if(this.options.backtrack_lexer&&(Ee={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ee.yylloc.range=this.yylloc.range.slice(0))),Ve=Ae[0].match(/(?:\r\n?|\n).*/g),Ve&&(this.yylineno+=Ve.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ve?Ve[Ve.length-1].length-Ve[Ve.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ae[0].length},this.yytext+=Ae[0],this.match+=Ae[0],this.matches=Ae,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ae[0].length),this.matched+=Ae[0],ke=this.performAction.call(this,this.yy,this,ne,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ke)return ke;if(this._backtrack){for(var He in Ee)this[He]=Ee[He];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ae,ne,ke,Ve;this._more||(this.yytext="",this.match="");for(var Ee=this._currentRules(),He=0;Hene[0].length)){if(ne=ke,Ve=He,this.options.backtrack_lexer){if(Ae=this.test_match(ke,Ee[He]),Ae!==!1)return Ae;if(this._backtrack){ne=!1;continue}else return!1}else if(!this.options.flex)break}return ne?(Ae=this.test_match(ne,Ee[Ve]),Ae!==!1?Ae:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ne=this.next();return ne||this.lex()},begin:function(ne){this.conditionStack.push(ne)},popState:function(){var ne=this.conditionStack.length-1;return ne>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ne){return ne=this.conditionStack.length-1-Math.abs(ne||0),ne>=0?this.conditionStack[ne]:"INITIAL"},pushState:function(ne){this.begin(ne)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ne,ke,Ve,Ee){switch(Ve){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:break;case 15:break;case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 53:this.popState();break;case 54:return"qString";case 55:return ke.yytext=ke.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,55],inclusive:!0}}};return Wn}();qe.lexer=_n;function Te(){this.yy={}}return Te.prototype=qe,qe.Parser=Te,new Te}();J0t.parser=J0t;const Hqe=J0t;let tgt=[],pp={},DP={},uk={},IP={};const Vqe={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},parseDirective:function(i,a,f){J1.parseDirective(this,i,a,f)},getConfig:()=>De().req,addRequirement:(i,a)=>(DP[i]===void 0&&(DP[i]={name:i,type:a,id:pp.id,text:pp.text,risk:pp.risk,verifyMethod:pp.verifyMethod}),pp={},DP[i]),getRequirements:()=>DP,setNewReqId:i=>{pp!==void 0&&(pp.id=i)},setNewReqText:i=>{pp!==void 0&&(pp.text=i)},setNewReqRisk:i=>{pp!==void 0&&(pp.risk=i)},setNewReqVerifyMethod:i=>{pp!==void 0&&(pp.verifyMethod=i)},setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addElement:i=>(IP[i]===void 0&&(IP[i]={name:i,type:uk.type,docRef:uk.docRef},Wt.info("Added new requirement: ",i)),uk={},IP[i]),getElements:()=>IP,setNewElementType:i=>{uk!==void 0&&(uk.type=i)},setNewElementDocRef:i=>{uk!==void 0&&(uk.docRef=i)},addRelationship:(i,a,f)=>{tgt.push({type:i,src:a,dst:f})},getRelationships:()=>tgt,clear:()=>{tgt=[],pp={},DP={},uk={},IP={},cg()}},Gqe=i=>` + + marker { + fill: ${i.relationColor}; + stroke: ${i.relationColor}; + } + + marker.cross { + stroke: ${i.lineColor}; + } + + svg { + font-family: ${i.fontFamily}; + font-size: ${i.fontSize}; + } + + .reqBox { + fill: ${i.requirementBackground}; + fill-opacity: 1.0; + stroke: ${i.requirementBorderColor}; + stroke-width: ${i.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${i.requirementTextColor}; + } + .reqLabelBox { + fill: ${i.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${i.requirementBorderColor}; + stroke-width: ${i.requirementBorderSize}; + } + .relationshipLine { + stroke: ${i.relationColor}; + stroke-width: 1; + } + .relationshipLabel { + fill: ${i.relationLabelColor}; + } + +`,egt={CONTAINS:"contains",ARROW:"arrow"},uRt={ReqMarkers:egt,insertLineEndings:(i,a)=>{let f=i.append("defs").append("marker").attr("id",egt.CONTAINS+"_line_ending").attr("refX",0).attr("refY",a.line_height/2).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("g");f.append("circle").attr("cx",a.line_height/2).attr("cy",a.line_height/2).attr("r",a.line_height/2).attr("fill","none"),f.append("line").attr("x1",0).attr("x2",a.line_height).attr("y1",a.line_height/2).attr("y2",a.line_height/2).attr("stroke-width",1),f.append("line").attr("y1",0).attr("y2",a.line_height).attr("x1",a.line_height/2).attr("x2",a.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",egt.ARROW+"_line_ending").attr("refX",a.line_height).attr("refY",.5*a.line_height).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("path").attr("d",`M0,0 + L${a.line_height},${a.line_height/2} + M${a.line_height},${a.line_height/2} + L0,${a.line_height}`).attr("stroke-width",1)}};let _h={},lRt=0;const hRt=(i,a)=>i.insert("rect","#"+a).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",_h.rect_min_width+"px").attr("height",_h.rect_min_height+"px"),fRt=(i,a,f)=>{let p=_h.rect_min_width/2,v=i.append("text").attr("class","req reqLabel reqTitle").attr("id",a).attr("x",p).attr("y",_h.rect_padding).attr("dominant-baseline","hanging"),m=0;f.forEach(A=>{m==0?v.append("tspan").attr("text-anchor","middle").attr("x",_h.rect_min_width/2).attr("dy",0).text(A):v.append("tspan").attr("text-anchor","middle").attr("x",_h.rect_min_width/2).attr("dy",_h.line_height*.75).text(A),m++});let b=1.5*_h.rect_padding,E=m*_h.line_height*.75,C=b+E;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",_h.rect_min_width).attr("y1",C).attr("y2",C),{titleNode:v,y:C}},dRt=(i,a,f,p)=>{let v=i.append("text").attr("class","req reqLabel").attr("id",a).attr("x",_h.rect_padding).attr("y",p).attr("dominant-baseline","hanging"),m=0;const b=30;let E=[];return f.forEach(C=>{let A=C.length;for(;A>b&&m<3;){let P=C.substring(0,b);C=C.substring(b,C.length),A=C.length,E[E.length]=P,m++}if(m==3){let P=E[E.length-1];E[E.length-1]=P.substring(0,P.length-4)+"..."}else E[E.length]=C;m=0}),E.forEach(C=>{v.append("tspan").attr("x",_h.rect_padding).attr("dy",_h.line_height).text(C)}),v},Uqe=(i,a,f,p)=>{const v=a.node().getTotalLength(),m=a.node().getPointAtLength(v*.5),b="rel"+lRt;lRt++;const C=i.append("text").attr("class","req relationshipLabel").attr("id",b).attr("x",m.x).attr("y",m.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(p).node().getBBox();i.insert("rect","#"+b).attr("class","req reqLabelBox").attr("x",m.x-C.width/2).attr("y",m.y-C.height/2).attr("width",C.width).attr("height",C.height).attr("fill","white").attr("fill-opacity","85%")},Wqe=function(i,a,f,p,v){const m=f.edge(cL(a.src),cL(a.dst)),b=YE().x(function(C){return C.x}).y(function(C){return C.y}),E=i.insert("path","#"+p).attr("class","er relationshipLine").attr("d",b(m.points)).attr("fill","none");a.type==v.db.Relationships.CONTAINS?E.attr("marker-start","url("+ui.getUrl(_h.arrowMarkerAbsolute)+"#"+a.type+"_line_ending)"):(E.attr("stroke-dasharray","10,7"),E.attr("marker-end","url("+ui.getUrl(_h.arrowMarkerAbsolute)+"#"+uRt.ReqMarkers.ARROW+"_line_ending)")),Uqe(i,E,_h,`<<${a.type}>>`)},Kqe=(i,a,f)=>{Object.keys(i).forEach(p=>{let v=i[p];p=cL(p),Wt.info("Added new requirement: ",p);const m=f.append("g").attr("id",p),b="req-"+p,E=hRt(m,b);let C=fRt(m,p+"_title",[`<<${v.type}>>`,`${v.name}`]);dRt(m,p+"_body",[`Id: ${v.id}`,`Text: ${v.text}`,`Risk: ${v.risk}`,`Verification: ${v.verifyMethod}`],C.y);const A=E.node().getBBox();a.setNode(p,{width:A.width,height:A.height,shape:"rect",id:p})})},Yqe=(i,a,f)=>{Object.keys(i).forEach(p=>{let v=i[p];const m=cL(p),b=f.append("g").attr("id",m),E="element-"+m,C=hRt(b,E);let A=fRt(b,E+"_title",["<>",`${p}`]);dRt(b,E+"_body",[`Type: ${v.type||"Not Specified"}`,`Doc Ref: ${v.docRef||"None"}`],A.y);const P=C.node().getBBox();a.setNode(m,{width:P.width,height:P.height,shape:"rect",id:m})})},Xqe=(i,a)=>(i.forEach(function(f){let p=cL(f.src),v=cL(f.dst);a.setEdge(p,v,{relationship:f})}),i),Qqe=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&(i.select("#"+f),i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )"))})},cL=i=>i.replace(/\s/g,"").replace(/\./g,"_"),Zqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Hqe,db:Vqe,renderer:{draw:(i,a,f,p)=>{_h=De().requirement;const v=_h.securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const E=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);uRt.insertLineEndings(E,_h);const C=new l1({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:_h.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let A=p.db.getRequirements(),P=p.db.getElements(),F=p.db.getRelationships();Kqe(A,C,E),Yqe(P,C,E),Xqe(F,C),nL(C),Qqe(E,C),F.forEach(function(rt){Wqe(E,rt,C,a,p)});const j=_h.rect_padding,R=E.node().getBBox(),H=R.width+j*2,Y=R.height+j*2;og(E,Y,H,_h.useMaxWidth),E.attr("viewBox",`${R.x-j} ${R.y-j} ${H} ${Y}`)}},styles:Gqe}},Symbol.toStringTag,{value:"Module"}));var ngt=function(){var i=function(Ee,He,Ce,$e){for(Ce=Ce||{},$e=Ee.length;$e--;Ce[Ee[$e]]=He);return Ce},a=[1,2],f=[1,3],p=[1,5],v=[1,7],m=[2,5],b=[1,15],E=[1,17],C=[1,19],A=[1,20],P=[1,22],F=[1,23],j=[1,24],R=[1,30],H=[1,31],Y=[1,32],rt=[1,33],J=[1,34],it=[1,35],ft=[1,36],Tt=[1,37],kt=[1,38],mt=[1,39],ct=[1,40],yt=[1,41],st=[1,42],xt=[1,44],ht=[1,45],dt=[1,46],Ct=[1,48],tt=[1,49],Pt=[1,50],pt=[1,51],Ft=[1,52],X=[1,53],Rt=[1,56],Bt=[1,4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],vt=[4,5,22,56,58,59],Ot=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],Vt=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,55,56,58,59,60,65,66,67,68,76,86],qe=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,54,56,58,59,60,65,66,67,68,76,86],_n=[4,5,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,56,58,59,60,65,66,67,68,76,86],Te=[74,75,76],Wn=[1,133],Ae=[1,4,5,7,19,20,22,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,53,54,55,56,58,59,60,65,66,67,68,76,86],ne={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,box_section:11,box_line:12,participant_statement:13,openDirective:14,typeDirective:15,closeDirective:16,":":17,argDirective:18,create:19,box:20,restOfLine:21,end:22,signal:23,autonumber:24,NUM:25,off:26,activate:27,actor:28,deactivate:29,note_statement:30,links_statement:31,link_statement:32,properties_statement:33,details_statement:34,title:35,legacy_title:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,loop:42,rect:43,opt:44,alt:45,else_sections:46,par:47,par_sections:48,par_over:49,critical:50,option_sections:51,break:52,option:53,and:54,else:55,participant:56,AS:57,participant_actor:58,destroy:59,note:60,placement:61,text2:62,over:63,actor_pair:64,links:65,link:66,properties:67,details:68,spaceList:69,",":70,left_of:71,right_of:72,signaltype:73,"+":74,"-":75,ACTOR:76,SOLID_OPEN_ARROW:77,DOTTED_OPEN_ARROW:78,SOLID_ARROW:79,DOTTED_ARROW:80,SOLID_CROSS:81,DOTTED_CROSS:82,SOLID_POINT:83,DOTTED_POINT:84,TXT:85,open_directive:86,type_directive:87,arg_directive:88,close_directive:89,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",17:":",19:"create",20:"box",21:"restOfLine",22:"end",24:"autonumber",25:"NUM",26:"off",27:"activate",29:"deactivate",35:"title",36:"legacy_title",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"loop",43:"rect",44:"opt",45:"alt",47:"par",49:"par_over",50:"critical",52:"break",53:"option",54:"and",55:"else",56:"participant",57:"AS",58:"participant_actor",59:"destroy",60:"note",63:"over",65:"links",66:"link",67:"properties",68:"details",70:",",71:"left_of",72:"right_of",74:"+",75:"-",76:"ACTOR",77:"SOLID_OPEN_ARROW",78:"DOTTED_OPEN_ARROW",79:"SOLID_ARROW",80:"DOTTED_ARROW",81:"SOLID_CROSS",82:"DOTTED_CROSS",83:"SOLID_POINT",84:"DOTTED_POINT",85:"TXT",86:"open_directive",87:"type_directive",88:"arg_directive",89:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[11,0],[11,2],[12,2],[12,1],[12,1],[6,4],[6,6],[10,1],[10,2],[10,4],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[51,1],[51,4],[48,1],[48,4],[46,1],[46,4],[13,5],[13,3],[13,5],[13,3],[13,3],[30,4],[30,4],[31,3],[32,3],[33,3],[34,3],[69,2],[69,1],[64,3],[64,1],[61,1],[61,1],[23,5],[23,5],[23,4],[28,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[73,1],[62,1],[14,1],[15,1],[18,1],[16,1]],performAction:function(He,Ce,$e,ye,fn,Yt,Mi){var qt=Yt.length-1;switch(fn){case 4:return ye.apply(Yt[qt]),Yt[qt];case 5:case 10:this.$=[];break;case 6:case 11:Yt[qt-1].push(Yt[qt]),this.$=Yt[qt-1];break;case 7:case 8:case 12:case 13:this.$=Yt[qt];break;case 9:case 14:this.$=[];break;case 18:Yt[qt].type="createParticipant",this.$=Yt[qt];break;case 19:Yt[qt-1].unshift({type:"boxStart",boxData:ye.parseBoxData(Yt[qt-2])}),Yt[qt-1].push({type:"boxEnd",boxText:Yt[qt-2]}),this.$=Yt[qt-1];break;case 21:this.$={type:"sequenceIndex",sequenceIndex:Number(Yt[qt-2]),sequenceIndexStep:Number(Yt[qt-1]),sequenceVisible:!0,signalType:ye.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceIndex:Number(Yt[qt-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:ye.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:ye.LINETYPE.AUTONUMBER};break;case 24:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:ye.LINETYPE.AUTONUMBER};break;case 25:this.$={type:"activeStart",signalType:ye.LINETYPE.ACTIVE_START,actor:Yt[qt-1]};break;case 26:this.$={type:"activeEnd",signalType:ye.LINETYPE.ACTIVE_END,actor:Yt[qt-1]};break;case 32:ye.setDiagramTitle(Yt[qt].substring(6)),this.$=Yt[qt].substring(6);break;case 33:ye.setDiagramTitle(Yt[qt].substring(7)),this.$=Yt[qt].substring(7);break;case 34:this.$=Yt[qt].trim(),ye.setAccTitle(this.$);break;case 35:case 36:this.$=Yt[qt].trim(),ye.setAccDescription(this.$);break;case 37:Yt[qt-1].unshift({type:"loopStart",loopText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.LOOP_START}),Yt[qt-1].push({type:"loopEnd",loopText:Yt[qt-2],signalType:ye.LINETYPE.LOOP_END}),this.$=Yt[qt-1];break;case 38:Yt[qt-1].unshift({type:"rectStart",color:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.RECT_START}),Yt[qt-1].push({type:"rectEnd",color:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.RECT_END}),this.$=Yt[qt-1];break;case 39:Yt[qt-1].unshift({type:"optStart",optText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.OPT_START}),Yt[qt-1].push({type:"optEnd",optText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.OPT_END}),this.$=Yt[qt-1];break;case 40:Yt[qt-1].unshift({type:"altStart",altText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.ALT_START}),Yt[qt-1].push({type:"altEnd",signalType:ye.LINETYPE.ALT_END}),this.$=Yt[qt-1];break;case 41:Yt[qt-1].unshift({type:"parStart",parText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.PAR_START}),Yt[qt-1].push({type:"parEnd",signalType:ye.LINETYPE.PAR_END}),this.$=Yt[qt-1];break;case 42:Yt[qt-1].unshift({type:"parStart",parText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.PAR_OVER_START}),Yt[qt-1].push({type:"parEnd",signalType:ye.LINETYPE.PAR_END}),this.$=Yt[qt-1];break;case 43:Yt[qt-1].unshift({type:"criticalStart",criticalText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.CRITICAL_START}),Yt[qt-1].push({type:"criticalEnd",signalType:ye.LINETYPE.CRITICAL_END}),this.$=Yt[qt-1];break;case 44:Yt[qt-1].unshift({type:"breakStart",breakText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.BREAK_START}),Yt[qt-1].push({type:"breakEnd",optText:ye.parseMessage(Yt[qt-2]),signalType:ye.LINETYPE.BREAK_END}),this.$=Yt[qt-1];break;case 47:this.$=Yt[qt-3].concat([{type:"option",optionText:ye.parseMessage(Yt[qt-1]),signalType:ye.LINETYPE.CRITICAL_OPTION},Yt[qt]]);break;case 49:this.$=Yt[qt-3].concat([{type:"and",parText:ye.parseMessage(Yt[qt-1]),signalType:ye.LINETYPE.PAR_AND},Yt[qt]]);break;case 51:this.$=Yt[qt-3].concat([{type:"else",altText:ye.parseMessage(Yt[qt-1]),signalType:ye.LINETYPE.ALT_ELSE},Yt[qt]]);break;case 52:Yt[qt-3].draw="participant",Yt[qt-3].type="addParticipant",Yt[qt-3].description=ye.parseMessage(Yt[qt-1]),this.$=Yt[qt-3];break;case 53:Yt[qt-1].draw="participant",Yt[qt-1].type="addParticipant",this.$=Yt[qt-1];break;case 54:Yt[qt-3].draw="actor",Yt[qt-3].type="addParticipant",Yt[qt-3].description=ye.parseMessage(Yt[qt-1]),this.$=Yt[qt-3];break;case 55:Yt[qt-1].draw="actor",Yt[qt-1].type="addParticipant",this.$=Yt[qt-1];break;case 56:Yt[qt-1].type="destroyParticipant",this.$=Yt[qt-1];break;case 57:this.$=[Yt[qt-1],{type:"addNote",placement:Yt[qt-2],actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 58:Yt[qt-2]=[].concat(Yt[qt-1],Yt[qt-1]).slice(0,2),Yt[qt-2][0]=Yt[qt-2][0].actor,Yt[qt-2][1]=Yt[qt-2][1].actor,this.$=[Yt[qt-1],{type:"addNote",placement:ye.PLACEMENT.OVER,actor:Yt[qt-2].slice(0,2),text:Yt[qt]}];break;case 59:this.$=[Yt[qt-1],{type:"addLinks",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 60:this.$=[Yt[qt-1],{type:"addALink",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 61:this.$=[Yt[qt-1],{type:"addProperties",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 62:this.$=[Yt[qt-1],{type:"addDetails",actor:Yt[qt-1].actor,text:Yt[qt]}];break;case 65:this.$=[Yt[qt-2],Yt[qt]];break;case 66:this.$=Yt[qt];break;case 67:this.$=ye.PLACEMENT.LEFTOF;break;case 68:this.$=ye.PLACEMENT.RIGHTOF;break;case 69:this.$=[Yt[qt-4],Yt[qt-1],{type:"addMessage",from:Yt[qt-4].actor,to:Yt[qt-1].actor,signalType:Yt[qt-3],msg:Yt[qt]},{type:"activeStart",signalType:ye.LINETYPE.ACTIVE_START,actor:Yt[qt-1]}];break;case 70:this.$=[Yt[qt-4],Yt[qt-1],{type:"addMessage",from:Yt[qt-4].actor,to:Yt[qt-1].actor,signalType:Yt[qt-3],msg:Yt[qt]},{type:"activeEnd",signalType:ye.LINETYPE.ACTIVE_END,actor:Yt[qt-4]}];break;case 71:this.$=[Yt[qt-3],Yt[qt-1],{type:"addMessage",from:Yt[qt-3].actor,to:Yt[qt-1].actor,signalType:Yt[qt-2],msg:Yt[qt]}];break;case 72:this.$={type:"addParticipant",actor:Yt[qt]};break;case 73:this.$=ye.LINETYPE.SOLID_OPEN;break;case 74:this.$=ye.LINETYPE.DOTTED_OPEN;break;case 75:this.$=ye.LINETYPE.SOLID;break;case 76:this.$=ye.LINETYPE.DOTTED;break;case 77:this.$=ye.LINETYPE.SOLID_CROSS;break;case 78:this.$=ye.LINETYPE.DOTTED_CROSS;break;case 79:this.$=ye.LINETYPE.SOLID_POINT;break;case 80:this.$=ye.LINETYPE.DOTTED_POINT;break;case 81:this.$=ye.parseMessage(Yt[qt].trim().substring(1));break;case 82:ye.parseDirective("%%{","open_directive");break;case 83:ye.parseDirective(Yt[qt],"type_directive");break;case 84:Yt[qt]=Yt[qt].trim().replace(/'/g,'"'),ye.parseDirective(Yt[qt],"arg_directive");break;case 85:ye.parseDirective("}%%","close_directive","sequence");break}},table:[{3:1,4:a,5:f,6:4,7:p,14:6,86:v},{1:[3]},{3:8,4:a,5:f,6:4,7:p,14:6,86:v},{3:9,4:a,5:f,6:4,7:p,14:6,86:v},{3:10,4:a,5:f,6:4,7:p,14:6,86:v},i([1,4,5,19,20,24,27,29,35,36,37,39,41,42,43,44,45,47,49,50,52,56,58,59,60,65,66,67,68,76,86],m,{8:11}),{15:12,87:[1,13]},{87:[2,82]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{16:54,17:[1,55],89:Rt},i([17,89],[2,83]),i(Bt,[2,6]),{6:43,10:57,13:18,14:6,19:C,20:A,23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},i(Bt,[2,8]),i(Bt,[2,9]),i(Bt,[2,17]),{13:58,56:xt,58:ht,59:dt},{21:[1,59]},{5:[1,60]},{5:[1,63],25:[1,61],26:[1,62]},{28:64,76:X},{28:65,76:X},{5:[1,66]},{5:[1,67]},{5:[1,68]},{5:[1,69]},{5:[1,70]},i(Bt,[2,32]),i(Bt,[2,33]),{38:[1,71]},{40:[1,72]},i(Bt,[2,36]),{21:[1,73]},{21:[1,74]},{21:[1,75]},{21:[1,76]},{21:[1,77]},{21:[1,78]},{21:[1,79]},{21:[1,80]},i(Bt,[2,45]),{28:81,76:X},{28:82,76:X},{28:83,76:X},{73:84,77:[1,85],78:[1,86],79:[1,87],80:[1,88],81:[1,89],82:[1,90],83:[1,91],84:[1,92]},{61:93,63:[1,94],71:[1,95],72:[1,96]},{28:97,76:X},{28:98,76:X},{28:99,76:X},{28:100,76:X},i([5,57,70,77,78,79,80,81,82,83,84,85],[2,72]),{5:[1,101]},{18:102,88:[1,103]},{5:[2,85]},i(Bt,[2,7]),i(Bt,[2,18]),i(vt,[2,10],{11:104}),i(Bt,[2,20]),{5:[1,106],25:[1,105]},{5:[1,107]},i(Bt,[2,24]),{5:[1,108]},{5:[1,109]},i(Bt,[2,27]),i(Bt,[2,28]),i(Bt,[2,29]),i(Bt,[2,30]),i(Bt,[2,31]),i(Bt,[2,34]),i(Bt,[2,35]),i(Ot,m,{8:110}),i(Ot,m,{8:111}),i(Ot,m,{8:112}),i(Vt,m,{46:113,8:114}),i(qe,m,{48:115,8:116}),i(qe,m,{8:116,48:117}),i(_n,m,{51:118,8:119}),i(Ot,m,{8:120}),{5:[1,122],57:[1,121]},{5:[1,124],57:[1,123]},{5:[1,125]},{28:128,74:[1,126],75:[1,127],76:X},i(Te,[2,73]),i(Te,[2,74]),i(Te,[2,75]),i(Te,[2,76]),i(Te,[2,77]),i(Te,[2,78]),i(Te,[2,79]),i(Te,[2,80]),{28:129,76:X},{28:131,64:130,76:X},{76:[2,67]},{76:[2,68]},{62:132,85:Wn},{62:134,85:Wn},{62:135,85:Wn},{62:136,85:Wn},i(Ae,[2,15]),{16:137,89:Rt},{89:[2,84]},{4:[1,140],5:[1,142],12:139,13:141,22:[1,138],56:xt,58:ht,59:dt},{5:[1,143]},i(Bt,[2,22]),i(Bt,[2,23]),i(Bt,[2,25]),i(Bt,[2,26]),{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,144],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,145],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,146],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{22:[1,147]},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[2,50],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,55:[1,148],56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{22:[1,149]},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[2,48],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,54:[1,150],56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{22:[1,151]},{22:[1,152]},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[2,46],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,53:[1,153],56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{4:b,5:E,6:43,9:14,10:16,13:18,14:6,19:C,20:A,22:[1,154],23:21,24:P,27:F,28:47,29:j,30:25,31:26,32:27,33:28,34:29,35:R,36:H,37:Y,39:rt,41:J,42:it,43:ft,44:Tt,45:kt,47:mt,49:ct,50:yt,52:st,56:xt,58:ht,59:dt,60:Ct,65:tt,66:Pt,67:pt,68:Ft,76:X,86:v},{21:[1,155]},i(Bt,[2,53]),{21:[1,156]},i(Bt,[2,55]),i(Bt,[2,56]),{28:157,76:X},{28:158,76:X},{62:159,85:Wn},{62:160,85:Wn},{62:161,85:Wn},{70:[1,162],85:[2,66]},{5:[2,59]},{5:[2,81]},{5:[2,60]},{5:[2,61]},{5:[2,62]},{5:[1,163]},i(Bt,[2,19]),i(vt,[2,11]),{13:164,56:xt,58:ht,59:dt},i(vt,[2,13]),i(vt,[2,14]),i(Bt,[2,21]),i(Bt,[2,37]),i(Bt,[2,38]),i(Bt,[2,39]),i(Bt,[2,40]),{21:[1,165]},i(Bt,[2,41]),{21:[1,166]},i(Bt,[2,42]),i(Bt,[2,43]),{21:[1,167]},i(Bt,[2,44]),{5:[1,168]},{5:[1,169]},{62:170,85:Wn},{62:171,85:Wn},{5:[2,71]},{5:[2,57]},{5:[2,58]},{28:172,76:X},i(Ae,[2,16]),i(vt,[2,12]),i(Vt,m,{8:114,46:173}),i(qe,m,{8:116,48:174}),i(_n,m,{8:119,51:175}),i(Bt,[2,52]),i(Bt,[2,54]),{5:[2,69]},{5:[2,70]},{85:[2,65]},{22:[2,51]},{22:[2,49]},{22:[2,47]}],defaultActions:{7:[2,82],8:[2,1],9:[2,2],10:[2,3],56:[2,85],95:[2,67],96:[2,68],103:[2,84],132:[2,59],133:[2,81],134:[2,60],135:[2,61],136:[2,62],159:[2,71],160:[2,57],161:[2,58],170:[2,69],171:[2,70],172:[2,65],173:[2,51],174:[2,49],175:[2,47]},parseError:function(He,Ce){if(Ce.recoverable)this.trace(He);else{var $e=new Error(He);throw $e.hash=Ce,$e}},parse:function(He){var Ce=this,$e=[0],ye=[],fn=[null],Yt=[],Mi=this.table,qt="",zi=0,Se=0,ki=2,Ri=1,pi=Yt.slice.call(arguments,1),bi=Object.create(this.lexer),dn={yy:{}};for(var Nn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Nn)&&(dn.yy[Nn]=this.yy[Nn]);bi.setInput(He,dn.yy),dn.yy.lexer=bi,dn.yy.parser=this,typeof bi.yylloc>"u"&&(bi.yylloc={});var Wr=bi.yylloc;Yt.push(Wr);var Li=bi.options&&bi.options.ranges;typeof dn.yy.parseError=="function"?this.parseError=dn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function is(){var Xc;return Xc=ye.pop()||bi.lex()||Ri,typeof Xc!="number"&&(Xc instanceof Array&&(ye=Xc,Xc=ye.pop()),Xc=Ce.symbols_[Xc]||Xc),Xc}for(var Ts,Aa,Xi,Ga,_r={},qr,Oi,gr,Js;;){if(Aa=$e[$e.length-1],this.defaultActions[Aa]?Xi=this.defaultActions[Aa]:((Ts===null||typeof Ts>"u")&&(Ts=is()),Xi=Mi[Aa]&&Mi[Aa][Ts]),typeof Xi>"u"||!Xi.length||!Xi[0]){var Vn="";Js=[];for(qr in Mi[Aa])this.terminals_[qr]&&qr>ki&&Js.push("'"+this.terminals_[qr]+"'");bi.showPosition?Vn="Parse error on line "+(zi+1)+`: +`+bi.showPosition()+` +Expecting `+Js.join(", ")+", got '"+(this.terminals_[Ts]||Ts)+"'":Vn="Parse error on line "+(zi+1)+": Unexpected "+(Ts==Ri?"end of input":"'"+(this.terminals_[Ts]||Ts)+"'"),this.parseError(Vn,{text:bi.match,token:this.terminals_[Ts]||Ts,line:bi.yylineno,loc:Wr,expected:Js})}if(Xi[0]instanceof Array&&Xi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Aa+", token: "+Ts);switch(Xi[0]){case 1:$e.push(Ts),fn.push(bi.yytext),Yt.push(bi.yylloc),$e.push(Xi[1]),Ts=null,Se=bi.yyleng,qt=bi.yytext,zi=bi.yylineno,Wr=bi.yylloc;break;case 2:if(Oi=this.productions_[Xi[1]][1],_r.$=fn[fn.length-Oi],_r._$={first_line:Yt[Yt.length-(Oi||1)].first_line,last_line:Yt[Yt.length-1].last_line,first_column:Yt[Yt.length-(Oi||1)].first_column,last_column:Yt[Yt.length-1].last_column},Li&&(_r._$.range=[Yt[Yt.length-(Oi||1)].range[0],Yt[Yt.length-1].range[1]]),Ga=this.performAction.apply(_r,[qt,Se,zi,dn.yy,Xi[1],fn,Yt].concat(pi)),typeof Ga<"u")return Ga;Oi&&($e=$e.slice(0,-1*Oi*2),fn=fn.slice(0,-1*Oi),Yt=Yt.slice(0,-1*Oi)),$e.push(this.productions_[Xi[1]][0]),fn.push(_r.$),Yt.push(_r._$),gr=Mi[$e[$e.length-2]][$e[$e.length-1]],$e.push(gr);break;case 3:return!0}}return!0}},ke=function(){var Ee={EOF:1,parseError:function(Ce,$e){if(this.yy.parser)this.yy.parser.parseError(Ce,$e);else throw new Error(Ce)},setInput:function(He,Ce){return this.yy=Ce||this.yy||{},this._input=He,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var He=this._input[0];this.yytext+=He,this.yyleng++,this.offset++,this.match+=He,this.matched+=He;var Ce=He.match(/(?:\r\n?|\n).*/g);return Ce?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),He},unput:function(He){var Ce=He.length,$e=He.split(/(?:\r\n?|\n)/g);this._input=He+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ce),this.offset-=Ce;var ye=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),$e.length-1&&(this.yylineno-=$e.length-1);var fn=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:$e?($e.length===ye.length?this.yylloc.first_column:0)+ye[ye.length-$e.length].length-$e[0].length:this.yylloc.first_column-Ce},this.options.ranges&&(this.yylloc.range=[fn[0],fn[0]+this.yyleng-Ce]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(He){this.unput(this.match.slice(He))},pastInput:function(){var He=this.matched.substr(0,this.matched.length-this.match.length);return(He.length>20?"...":"")+He.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var He=this.match;return He.length<20&&(He+=this._input.substr(0,20-He.length)),(He.substr(0,20)+(He.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var He=this.pastInput(),Ce=new Array(He.length+1).join("-");return He+this.upcomingInput()+` +`+Ce+"^"},test_match:function(He,Ce){var $e,ye,fn;if(this.options.backtrack_lexer&&(fn={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(fn.yylloc.range=this.yylloc.range.slice(0))),ye=He[0].match(/(?:\r\n?|\n).*/g),ye&&(this.yylineno+=ye.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ye?ye[ye.length-1].length-ye[ye.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+He[0].length},this.yytext+=He[0],this.match+=He[0],this.matches=He,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(He[0].length),this.matched+=He[0],$e=this.performAction.call(this,this.yy,this,Ce,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),$e)return $e;if(this._backtrack){for(var Yt in fn)this[Yt]=fn[Yt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var He,Ce,$e,ye;this._more||(this.yytext="",this.match="");for(var fn=this._currentRules(),Yt=0;YtCe[0].length)){if(Ce=$e,ye=Yt,this.options.backtrack_lexer){if(He=this.test_match($e,fn[Yt]),He!==!1)return He;if(this._backtrack){Ce=!1;continue}else return!1}else if(!this.options.flex)break}return Ce?(He=this.test_match(Ce,fn[ye]),He!==!1?He:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ce=this.next();return Ce||this.lex()},begin:function(Ce){this.conditionStack.push(Ce)},popState:function(){var Ce=this.conditionStack.length-1;return Ce>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ce){return Ce=this.conditionStack.length-1-Math.abs(Ce||0),Ce>=0?this.conditionStack[Ce]:"INITIAL"},pushState:function(Ce){this.begin(Ce)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ce,$e,ye,fn){switch(ye){case 0:return this.begin("open_directive"),86;case 1:return this.begin("type_directive"),87;case 2:return this.popState(),this.begin("arg_directive"),17;case 3:return this.popState(),this.popState(),89;case 4:return 88;case 5:return 5;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:return 25;case 12:return this.begin("LINE"),20;case 13:return this.begin("ID"),56;case 14:return this.begin("ID"),58;case 15:return 19;case 16:return this.begin("ID"),59;case 17:return $e.yytext=$e.yytext.trim(),this.begin("ALIAS"),76;case 18:return this.popState(),this.popState(),this.begin("LINE"),57;case 19:return this.popState(),this.popState(),5;case 20:return this.begin("LINE"),42;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),44;case 23:return this.begin("LINE"),45;case 24:return this.begin("LINE"),55;case 25:return this.begin("LINE"),47;case 26:return this.begin("LINE"),49;case 27:return this.begin("LINE"),54;case 28:return this.begin("LINE"),50;case 29:return this.begin("LINE"),53;case 30:return this.begin("LINE"),52;case 31:return this.popState(),21;case 32:return 22;case 33:return 71;case 34:return 72;case 35:return 65;case 36:return 66;case 37:return 67;case 38:return 68;case 39:return 63;case 40:return 60;case 41:return this.begin("ID"),27;case 42:return this.begin("ID"),29;case 43:return 35;case 44:return 36;case 45:return this.begin("acc_title"),37;case 46:return this.popState(),"acc_title_value";case 47:return this.begin("acc_descr"),39;case 48:return this.popState(),"acc_descr_value";case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 7;case 53:return 24;case 54:return 26;case 55:return 70;case 56:return 5;case 57:return $e.yytext=$e.yytext.trim(),76;case 58:return 79;case 59:return 80;case 60:return 77;case 61:return 78;case 62:return 81;case 63:return 82;case 64:return 83;case 65:return 84;case 66:return 85;case 67:return 74;case 68:return 75;case 69:return 5;case 70:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[50,51],inclusive:!1},acc_descr:{rules:[48],inclusive:!1},acc_title:{rules:[46],inclusive:!1},open_directive:{rules:[1,8],inclusive:!1},type_directive:{rules:[2,3,8],inclusive:!1},arg_directive:{rules:[3,4,8],inclusive:!1},ID:{rules:[7,8,17],inclusive:!1},ALIAS:{rules:[7,8,18,19],inclusive:!1},LINE:{rules:[7,8,31],inclusive:!1},INITIAL:{rules:[0,5,6,8,9,10,11,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,43,44,45,47,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70],inclusive:!0}}};return Ee}();ne.lexer=ke;function Ve(){this.yy={}}return Ve.prototype=ne,ne.Parser=Ve,new Ve}();ngt.parser=ngt;const Jqe=ngt;let OP,I5={},rgt={},igt={},uL=[],jb=[],MK=!1,sgt,O5,NP,lL;const tHe=function(i,a,f){J1.parseDirective(this,i,a,f)},eHe=function(i){uL.push({name:i.text,wrap:i.wrap===void 0&&m9()||!!i.wrap,fill:i.color,actorKeys:[]}),O5=uL.slice(-1)[0]},agt=function(i,a,f,p){let v=O5;const m=I5[i];if(m){if(O5&&m.box&&O5!==m.box)throw new Error("A same participant should only be defined in one Box: "+m.name+" can't be in '"+m.box.name+"' and in '"+O5.name+"' at the same time.");if(v=m.box?m.box:O5,m.box=v,m&&a===m.name&&f==null)return}(f==null||f.text==null)&&(f={text:a,wrap:null,type:p}),(p==null||f.text==null)&&(f={text:a,wrap:null,type:p}),I5[i]={box:v,name:a,description:f.text,wrap:f.wrap===void 0&&m9()||!!f.wrap,prevActor:OP,links:{},properties:{},actorCnt:null,rectData:null,type:p||"participant"},OP&&I5[OP]&&(I5[OP].nextActor=i),O5&&O5.actorKeys.push(i),OP=i},nHe=i=>{let a,f=0;for(a=0;a>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},m}return jb.push({from:i,to:a,message:f.text,wrap:f.wrap===void 0&&m9()||!!f.wrap,type:p}),!0},iHe=function(){return uL.length>0},sHe=function(){return uL.some(i=>i.name)},aHe=function(){return jb},oHe=function(){return uL},cHe=function(){return I5},uHe=function(){return rgt},lHe=function(){return igt},PP=function(i){return I5[i]},hHe=function(){return Object.keys(I5)},fHe=function(){MK=!0},dHe=function(){MK=!1},gHe=()=>MK,pHe=function(i){sgt=i},m9=()=>sgt!==void 0?sgt:De().sequence.wrap,bHe=function(){I5={},rgt={},igt={},uL=[],jb=[],MK=!1,cg()},vHe=function(i){const a=i.trim(),f={text:a.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:a.match(/^:?wrap:/)!==null?!0:a.match(/^:?nowrap:/)!==null?!1:void 0};return Wt.debug("parseMessage:",f),f},wHe=function(i){const a=i.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let f=a!=null&&a[1]?a[1].trim():"transparent",p=a!=null&&a[2]?a[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",f)||(f="transparent",p=i.trim());else{const m=new Option().style;m.color=f,m.color!==f&&(f="transparent",p=i.trim())}return{color:f,text:p!==void 0?v0(p.replace(/^:?(?:no)?wrap:/,""),De()):void 0,wrap:p!==void 0?p.match(/^:?wrap:/)!==null?!0:p.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},FP={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32},mHe={FILLED:0,OPEN:1},yHe={LEFTOF:0,RIGHTOF:1,OVER:2},gRt=function(i,a,f){f.text,f.wrap===void 0&&m9()||f.wrap;const p=[].concat(i,i);jb.push({from:p[0],to:p[1],message:f.text,wrap:f.wrap===void 0&&m9()||!!f.wrap,type:FP.NOTE,placement:a})},pRt=function(i,a){const f=PP(i);try{let p=v0(a.text,De());p=p.replace(/&/g,"&"),p=p.replace(/=/g,"=");const v=JSON.parse(p);ogt(f,v)}catch(p){Wt.error("error while parsing actor link text",p)}},xHe=function(i,a){const f=PP(i);try{const b={};let E=v0(a.text,De());var p=E.indexOf("@");E=E.replace(/&/g,"&"),E=E.replace(/=/g,"=");var v=E.slice(0,p-1).trim(),m=E.slice(p+1).trim();b[v]=m,ogt(f,b)}catch(b){Wt.error("error while parsing actor link text",b)}};function ogt(i,a){if(i.links==null)i.links=a;else for(let f in a)i.links[f]=a[f]}const bRt=function(i,a){const f=PP(i);try{let p=v0(a.text,De());const v=JSON.parse(p);vRt(f,v)}catch(p){Wt.error("error while parsing actor properties text",p)}};function vRt(i,a){if(i.properties==null)i.properties=a;else for(let f in a)i.properties[f]=a[f]}function kHe(){O5=void 0}const wRt=function(i,a){const f=PP(i),p=document.getElementById(a.text);try{const v=p.innerHTML,m=JSON.parse(v);m.properties&&vRt(f,m.properties),m.links&&ogt(f,m.links)}catch(v){Wt.error("error while parsing actor details text",v)}},EHe=function(i,a){if(i!==void 0&&i.properties!==void 0)return i.properties[a]},mRt=function(i){if(Array.isArray(i))i.forEach(function(a){mRt(a)});else switch(i.type){case"sequenceIndex":jb.push({from:void 0,to:void 0,message:{start:i.sequenceIndex,step:i.sequenceIndexStep,visible:i.sequenceVisible},wrap:!1,type:i.signalType});break;case"addParticipant":agt(i.actor,i.actor,i.description,i.draw);break;case"createParticipant":if(I5[i.actor])throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");NP=i.actor,agt(i.actor,i.actor,i.description,i.draw),rgt[i.actor]=jb.length;break;case"destroyParticipant":lL=i.actor,igt[i.actor]=jb.length;break;case"activeStart":nf(i.actor,void 0,void 0,i.signalType);break;case"activeEnd":nf(i.actor,void 0,void 0,i.signalType);break;case"addNote":gRt(i.actor,i.placement,i.text);break;case"addLinks":pRt(i.actor,i.text);break;case"addALink":xHe(i.actor,i.text);break;case"addProperties":bRt(i.actor,i.text);break;case"addDetails":wRt(i.actor,i.text);break;case"addMessage":if(NP){if(i.to!==NP)throw new Error("The created participant "+NP+" does not have an associated creating message after its declaration. Please check the sequence diagram.");NP=void 0}else if(lL){if(i.to!==lL&&i.from!==lL)throw new Error("The destroyed participant "+lL+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");lL=void 0}nf(i.from,i.to,i.msg,i.signalType);break;case"boxStart":eHe(i.boxData);break;case"boxEnd":kHe();break;case"loopStart":nf(void 0,void 0,i.loopText,i.signalType);break;case"loopEnd":nf(void 0,void 0,void 0,i.signalType);break;case"rectStart":nf(void 0,void 0,i.color,i.signalType);break;case"rectEnd":nf(void 0,void 0,void 0,i.signalType);break;case"optStart":nf(void 0,void 0,i.optText,i.signalType);break;case"optEnd":nf(void 0,void 0,void 0,i.signalType);break;case"altStart":nf(void 0,void 0,i.altText,i.signalType);break;case"else":nf(void 0,void 0,i.altText,i.signalType);break;case"altEnd":nf(void 0,void 0,void 0,i.signalType);break;case"setAccTitle":m0(i.text);break;case"parStart":nf(void 0,void 0,i.parText,i.signalType);break;case"and":nf(void 0,void 0,i.parText,i.signalType);break;case"parEnd":nf(void 0,void 0,void 0,i.signalType);break;case"criticalStart":nf(void 0,void 0,i.criticalText,i.signalType);break;case"option":nf(void 0,void 0,i.optionText,i.signalType);break;case"criticalEnd":nf(void 0,void 0,void 0,i.signalType);break;case"breakStart":nf(void 0,void 0,i.breakText,i.signalType);break;case"breakEnd":nf(void 0,void 0,void 0,i.signalType);break}},THe={addActor:agt,addMessage:rHe,addSignal:nf,addLinks:pRt,addDetails:wRt,addProperties:bRt,autoWrap:m9,setWrap:pHe,enableSequenceNumbers:fHe,disableSequenceNumbers:dHe,showSequenceNumbers:gHe,getMessages:aHe,getActors:cHe,getCreatedActors:uHe,getDestroyedActors:lHe,getActor:PP,getActorKeys:hHe,getActorProperty:EHe,getAccTitle:ug,getBoxes:oHe,getDiagramTitle:hp,setDiagramTitle:Nb,parseDirective:tHe,getConfig:()=>De().sequence,clear:bHe,parseMessage:vHe,parseBoxData:wHe,LINETYPE:FP,ARROWTYPE:mHe,PLACEMENT:yHe,addNote:gRt,setAccTitle:m0,apply:mRt,setAccDescription:lg,getAccDescription:hg,hasAtLeastOneBox:iHe,hasAtLeastOneBoxWithTitle:sHe},_He=i=>`.actor { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + } + + text.actor > tspan { + fill: ${i.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${i.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${i.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${i.signalColor}; + } + + #arrowhead path { + fill: ${i.signalColor}; + stroke: ${i.signalColor}; + } + + .sequenceNumber { + fill: ${i.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${i.signalColor}; + } + + #crosshead path { + fill: ${i.signalColor}; + stroke: ${i.signalColor}; + } + + .messageText { + fill: ${i.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${i.labelBoxBorderColor}; + fill: ${i.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${i.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${i.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${i.labelBoxBorderColor}; + fill: ${i.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${i.noteBorderColor}; + fill: ${i.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${i.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .activation1 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .activation2 { + fill: ${i.activationBkgColor}; + stroke: ${i.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${i.actorBkg}; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); +} + .actor-man line { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + } + .actor-man circle, line { + stroke: ${i.actorBorder}; + fill: ${i.actorBkg}; + stroke-width: 2px; + } +`,y9=18*2,cgt=function(i,a){return WW(i,a)},yRt=(i,a)=>{OLe(()=>{const f=document.querySelectorAll(i);f.length!==0&&(f[0].addEventListener("mouseover",function(){LHe("actor"+a+"_popup")}),f[0].addEventListener("mouseout",function(){MHe("actor"+a+"_popup")}))})},CHe=function(i,a,f,p,v){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const m=a.links,b=a.actorCnt,E=a.rectData;var C="none";v&&(C="block !important");const A=i.append("g");A.attr("id","actor"+b+"_popup"),A.attr("class","actorPopupMenu"),A.attr("display",C),yRt("#actor"+b+"_popup",b);var P="";E.class!==void 0&&(P=" "+E.class);let F=E.width>f?E.width:f;const j=A.append("rect");if(j.attr("class","actorPopupMenuPanel"+P),j.attr("x",E.x),j.attr("y",E.height),j.attr("fill",E.fill),j.attr("stroke",E.stroke),j.attr("width",F),j.attr("height",E.height),j.attr("rx",E.rx),j.attr("ry",E.ry),m!=null){var R=20;for(let rt in m){var H=A.append("a"),Y=Xx(m[rt]);H.attr("xlink:href",Y),H.attr("target","_blank"),UHe(p)(rt,H,E.x+10,E.height+R,F,20,{class:"actor"},p),R+=30}}return j.attr("height",R),{height:E.height+R,width:F}},SHe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = 'block'; }"},AHe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = 'none'; }"},LHe=function(i){var a=document.getElementById(i);a!=null&&(a.style.display="block")},MHe=function(i){var a=document.getElementById(i);a!=null&&(a.style.display="none")},hL=function(i,a){let f=0,p=0;const v=a.text.split(ui.lineBreakRegex),[m,b]=zA(a.fontSize);let E=[],C=0,A=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":A=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":A=()=>Math.round(a.y+(f+p+a.textMargin)/2);break;case"bottom":case"end":A=()=>Math.round(a.y+(f+p+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[P,F]of v.entries()){a.textMargin!==void 0&&a.textMargin===0&&m!==void 0&&(C=P*m);const j=i.append("text");j.attr("x",a.x),j.attr("y",A()),a.anchor!==void 0&&j.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&j.style("font-family",a.fontFamily),b!==void 0&&j.style("font-size",b),a.fontWeight!==void 0&&j.style("font-weight",a.fontWeight),a.fill!==void 0&&j.attr("fill",a.fill),a.class!==void 0&&j.attr("class",a.class),a.dy!==void 0?j.attr("dy",a.dy):C!==0&&j.attr("dy",C);const R=F||PIt;if(a.tspan){const H=j.append("tspan");H.attr("x",a.x),a.fill!==void 0&&H.attr("fill",a.fill),H.text(R)}else j.text(R);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(p+=(j._groups||j)[0][0].getBBox().height,f=p),E.push(j)}return E},xRt=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");return p.attr("points",f(a.x,a.y,a.width,a.height,7)),p.attr("class","labelBox"),a.y=a.y+a.height/2,hL(i,a),p};let hm=-1;const kRt=(i,a,f,p)=>{i.select&&f.forEach(v=>{const m=a[v],b=i.select("#actor"+m.actorCnt);!p.mirrorActors&&m.stopy?b.attr("y2",m.stopy+m.height/2):p.mirrorActors&&b.attr("y2",m.stopy)})},DHe=function(i,a,f,p){const v=p?a.stopy:a.starty,m=a.x+a.width/2,b=v+5,E=i.append("g").lower();var C=E;p||(hm++,C.append("line").attr("id","actor"+hm).attr("x1",m).attr("y1",b).attr("x2",m).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),C=E.append("g"),a.actorCnt=hm,a.links!=null&&(C.attr("id","root-"+hm),yRt("#root-"+hm,hm)));const A=u9();var P="actor";a.properties!=null&&a.properties.class?P=a.properties.class:A.fill="#eaeaea",A.x=a.x,A.y=v,A.width=a.width,A.height=a.height,A.class=P,A.rx=3,A.ry=3;const F=cgt(C,A);if(a.rectData=A,a.properties!=null&&a.properties.icon){const R=a.properties.icon.trim();R.charAt(0)==="@"?oDe(C,A.x+A.width-20,A.y+10,R.substr(1)):aDe(C,A.x+A.width-20,A.y+10,R)}ugt(f)(a.description,C,A.x,A.y,A.width,A.height,{class:"actor"},f);let j=a.height;if(F.node){const R=F.node().getBBox();a.height=R.height,j=R.height}return j},IHe=function(i,a,f,p){const v=p?a.stopy:a.starty,m=a.x+a.width/2,b=v+80;i.lower(),p||(hm++,i.append("line").attr("id","actor"+hm).attr("x1",m).attr("y1",b).attr("x2",m).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),a.actorCnt=hm);const E=i.append("g");E.attr("class","actor-man");const C=u9();C.x=a.x,C.y=v,C.fill="#eaeaea",C.width=a.width,C.height=a.height,C.class="actor",C.rx=3,C.ry=3,E.append("line").attr("id","actor-man-torso"+hm).attr("x1",m).attr("y1",v+25).attr("x2",m).attr("y2",v+45),E.append("line").attr("id","actor-man-arms"+hm).attr("x1",m-y9/2).attr("y1",v+33).attr("x2",m+y9/2).attr("y2",v+33),E.append("line").attr("x1",m-y9/2).attr("y1",v+60).attr("x2",m).attr("y2",v+45),E.append("line").attr("x1",m).attr("y1",v+45).attr("x2",m+y9/2-2).attr("y2",v+60);const A=E.append("circle");A.attr("cx",a.x+a.width/2),A.attr("cy",v+10),A.attr("r",15),A.attr("width",a.width),A.attr("height",a.height);const P=E.node().getBBox();return a.height=P.height,ugt(f)(a.description,E,C.x,C.y+35,C.width,C.height,{class:"actor"},f),a.height},OHe=function(i,a,f,p){switch(a.type){case"actor":return IHe(i,a,f,p);case"participant":return DHe(i,a,f,p)}},NHe=function(i,a,f){const v=i.append("g");ERt(v,a),a.name&&ugt(f)(a.name,v,a.x,a.y+(a.textMaxHeight||0)/2,a.width,0,{class:"text"},f),v.lower()},PHe=function(i){return i.append("g")},FHe=function(i,a,f,p,v){const m=u9(),b=a.anchored;m.x=a.startx,m.y=a.starty,m.class="activation"+v%3,m.width=a.stopx-a.startx,m.height=f-a.starty,cgt(b,m)},BHe=function(i,a,f,p){const{boxMargin:v,boxTextMargin:m,labelBoxHeight:b,labelBoxWidth:E,messageFontFamily:C,messageFontSize:A,messageFontWeight:P}=p,F=i.append("g"),j=function(Y,rt,J,it){return F.append("line").attr("x1",Y).attr("y1",rt).attr("x2",J).attr("y2",it).attr("class","loopLine")};j(a.startx,a.starty,a.stopx,a.starty),j(a.stopx,a.starty,a.stopx,a.stopy),j(a.startx,a.stopy,a.stopx,a.stopy),j(a.startx,a.starty,a.startx,a.stopy),a.sections!==void 0&&a.sections.forEach(function(Y){j(a.startx,Y.y,a.stopx,Y.y).style("stroke-dasharray","3, 3")});let R=Ddt();R.text=f,R.x=a.startx,R.y=a.starty,R.fontFamily=C,R.fontSize=A,R.fontWeight=P,R.anchor="middle",R.valign="middle",R.tspan=!1,R.width=E||50,R.height=b||20,R.textMargin=m,R.class="labelText",xRt(F,R),R=TRt(),R.text=a.title,R.x=a.startx+E/2+(a.stopx-a.startx)/2,R.y=a.starty+v+m,R.anchor="middle",R.valign="middle",R.textMargin=m,R.class="loopText",R.fontFamily=C,R.fontSize=A,R.fontWeight=P,R.wrap=!0;let H=hL(F,R);return a.sectionTitles!==void 0&&a.sectionTitles.forEach(function(Y,rt){if(Y.message){R.text=Y.message,R.x=a.startx+(a.stopx-a.startx)/2,R.y=a.sections[rt].y+v+m,R.class="loopText",R.anchor="middle",R.valign="middle",R.tspan=!1,R.fontFamily=C,R.fontSize=A,R.fontWeight=P,R.wrap=a.wrap,H=hL(F,R);let J=Math.round(H.map(it=>(it._groups||it)[0][0].getBBox().height).reduce((it,ft)=>it+ft));a.sections[rt].height+=J-(v+m)}}),a.height=Math.round(a.stopy-a.starty),F},ERt=function(i,a){pNt(i,a)},RHe=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},jHe=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},$He=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},zHe=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},qHe=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},HHe=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},VHe=function(i){i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},TRt=function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},GHe=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},ugt=function(){function i(v,m,b,E,C,A,P){const F=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("text-anchor","middle").text(v);p(F,P)}function a(v,m,b,E,C,A,P,F){const{actorFontSize:j,actorFontFamily:R,actorFontWeight:H}=F,[Y,rt]=zA(j),J=v.split(ui.lineBreakRegex);for(let it=0;iti.height||0))+(this.loops.length===0?0:this.loops.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.messages.length===0?0:this.messages.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.notes.length===0?0:this.notes.map(i=>i.height||0).reduce((i,a)=>i+a))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(i){this.boxes.push(i)},addActor:function(i){this.actors.push(i)},addLoop:function(i){this.loops.push(i)},addMessage:function(i){this.messages.push(i)},addNote:function(i){this.notes.push(i)},lastActor:function(){return this.actors[this.actors.length-1]},lastLoop:function(){return this.loops[this.loops.length-1]},lastMessage:function(){return this.messages[this.messages.length-1]},lastNote:function(){return this.notes[this.notes.length-1]},actors:[],boxes:[],loops:[],messages:[],notes:[]},init:function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,CRt(De())},updateVal:function(i,a,f,p){i[a]===void 0?i[a]=f:i[a]=p(f,i[a])},updateBounds:function(i,a,f,p){const v=this;let m=0;function b(E){return function(A){m++;const P=v.sequenceItems.length-m+1;v.updateVal(A,"starty",a-P*hn.boxMargin,Math.min),v.updateVal(A,"stopy",p+P*hn.boxMargin,Math.max),v.updateVal(Br.data,"startx",i-P*hn.boxMargin,Math.min),v.updateVal(Br.data,"stopx",f+P*hn.boxMargin,Math.max),E!=="activation"&&(v.updateVal(A,"startx",i-P*hn.boxMargin,Math.min),v.updateVal(A,"stopx",f+P*hn.boxMargin,Math.max),v.updateVal(Br.data,"starty",a-P*hn.boxMargin,Math.min),v.updateVal(Br.data,"stopy",p+P*hn.boxMargin,Math.max))}}this.sequenceItems.forEach(b()),this.activations.forEach(b("activation"))},insert:function(i,a,f,p){const v=ui.getMin(i,f),m=ui.getMax(i,f),b=ui.getMin(a,p),E=ui.getMax(a,p);this.updateVal(Br.data,"startx",v,Math.min),this.updateVal(Br.data,"starty",b,Math.min),this.updateVal(Br.data,"stopx",m,Math.max),this.updateVal(Br.data,"stopy",E,Math.max),this.updateBounds(v,b,m,E)},newActivation:function(i,a,f){const p=f[i.from.actor],v=DK(i.from.actor).length||0,m=p.x+p.width/2+(v-1)*hn.activationWidth/2;this.activations.push({startx:m,starty:this.verticalPos+2,stopx:m+hn.activationWidth,stopy:void 0,actor:i.from.actor,anchored:rf.anchorElement(a)})},endActivation:function(i){const a=this.activations.map(function(f){return f.actor}).lastIndexOf(i.from.actor);return this.activations.splice(a,1)[0]},createLoop:function(i={message:void 0,wrap:!1,width:void 0},a){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:i.message,wrap:i.wrap,width:i.width,height:0,fill:a}},newLoop:function(i={message:void 0,wrap:!1,width:void 0},a){this.sequenceItems.push(this.createLoop(i,a))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(i){const a=this.sequenceItems.pop();a.sections=a.sections||[],a.sectionTitles=a.sectionTitles||[],a.sections.push({y:Br.getVerticalPos(),height:0}),a.sectionTitles.push(i),this.sequenceItems.push(a)},saveVerticalPos:function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},resetVerticalPos:function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=ui.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},WHe=function(i,a){Br.bumpVerticalPos(hn.boxMargin),a.height=hn.boxMargin,a.starty=Br.getVerticalPos();const f=u9();f.x=a.startx,f.y=a.starty,f.width=a.width||hn.width,f.class="note";const p=i.append("g"),v=rf.drawRect(p,f),m=Ddt();m.x=a.startx,m.y=a.starty,m.width=f.width,m.dy="1em",m.text=a.message,m.class="noteText",m.fontFamily=hn.noteFontFamily,m.fontSize=hn.noteFontSize,m.fontWeight=hn.noteFontWeight,m.anchor=hn.noteAlign,m.textMargin=hn.noteMargin,m.valign="center";const b=hL(p,m),E=Math.round(b.map(C=>(C._groups||C)[0][0].getBBox().height).reduce((C,A)=>C+A));v.attr("height",E+2*hn.noteMargin),a.height+=E+2*hn.noteMargin,Br.bumpVerticalPos(E+2*hn.noteMargin),a.stopy=a.starty+E+2*hn.noteMargin,a.stopx=a.startx+f.width,Br.insert(a.startx,a.starty,a.stopx,a.stopy),Br.models.addNote(a)},x9=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight}),fL=i=>({fontFamily:i.noteFontFamily,fontSize:i.noteFontSize,fontWeight:i.noteFontWeight}),lgt=i=>({fontFamily:i.actorFontFamily,fontSize:i.actorFontSize,fontWeight:i.actorFontWeight});function KHe(i,a){Br.bumpVerticalPos(10);const{startx:f,stopx:p,message:v}=a,m=ui.splitBreaks(v).length,b=to.calculateTextDimensions(v,x9(hn)),E=b.height/m;a.height+=E,Br.bumpVerticalPos(E);let C,A=b.height-10;const P=b.width;if(f===p){C=Br.getVerticalPos()+A,hn.rightAngles||(A+=hn.boxMargin,C=Br.getVerticalPos()+A),A+=30;const F=ui.getMax(P/2,hn.width/2);Br.insert(f-F,Br.getVerticalPos()-10+A,p+F,Br.getVerticalPos()+30+A)}else A+=hn.boxMargin,C=Br.getVerticalPos()+A,Br.insert(f,C-10,p,C);return Br.bumpVerticalPos(A),a.height+=A,a.stopy=a.starty+a.height,Br.insert(a.fromBounds,a.starty,a.toBounds,a.stopy),C}const YHe=function(i,a,f,p){const{startx:v,stopx:m,starty:b,message:E,type:C,sequenceIndex:A,sequenceVisible:P}=a,F=to.calculateTextDimensions(E,x9(hn)),j=Ddt();j.x=v,j.y=b+10,j.width=m-v,j.class="messageText",j.dy="1em",j.text=E,j.fontFamily=hn.messageFontFamily,j.fontSize=hn.messageFontSize,j.fontWeight=hn.messageFontWeight,j.anchor=hn.messageAlign,j.valign="center",j.textMargin=hn.wrapPadding,j.tspan=!1,hL(i,j);const R=F.width;let H;v===m?hn.rightAngles?H=i.append("path").attr("d",`M ${v},${f} H ${v+ui.getMax(hn.width/2,R/2)} V ${f+25} H ${v}`):H=i.append("path").attr("d","M "+v+","+f+" C "+(v+60)+","+(f-10)+" "+(v+60)+","+(f+30)+" "+v+","+(f+20)):(H=i.append("line"),H.attr("x1",v),H.attr("y1",f),H.attr("x2",m),H.attr("y2",f)),C===p.db.LINETYPE.DOTTED||C===p.db.LINETYPE.DOTTED_CROSS||C===p.db.LINETYPE.DOTTED_POINT||C===p.db.LINETYPE.DOTTED_OPEN?(H.style("stroke-dasharray","3, 3"),H.attr("class","messageLine1")):H.attr("class","messageLine0");let Y="";hn.arrowMarkerAbsolute&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),H.attr("stroke-width",2),H.attr("stroke","none"),H.style("fill","none"),(C===p.db.LINETYPE.SOLID||C===p.db.LINETYPE.DOTTED)&&H.attr("marker-end","url("+Y+"#arrowhead)"),(C===p.db.LINETYPE.SOLID_POINT||C===p.db.LINETYPE.DOTTED_POINT)&&H.attr("marker-end","url("+Y+"#filled-head)"),(C===p.db.LINETYPE.SOLID_CROSS||C===p.db.LINETYPE.DOTTED_CROSS)&&H.attr("marker-end","url("+Y+"#crosshead)"),(P||hn.showSequenceNumbers)&&(H.attr("marker-start","url("+Y+"#sequencenumber)"),i.append("text").attr("x",v).attr("y",f+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(A))},XHe=function(i,a,f,p,v,m,b){let E=0,C=0,A,P=0;for(const F of p){const j=a[F],R=j.box;A&&A!=R&&(b||Br.models.addBox(A),C+=hn.boxMargin+A.margin),R&&R!=A&&(b||(R.x=E+C,R.y=v),C+=R.margin),j.width=j.width||hn.width,j.height=ui.getMax(j.height||hn.height,hn.height),j.margin=j.margin||hn.actorMargin,P=ui.getMax(P,j.height),f[j.name]&&(C+=j.width/2),j.x=E+C,j.starty=Br.getVerticalPos(),Br.insert(j.x,v,j.x+j.width,j.height),E+=j.width+C,j.box&&(j.box.width=E+R.margin-j.box.x),C=j.margin,A=j.box,Br.models.addActor(j)}A&&!b&&Br.models.addBox(A),Br.bumpVerticalPos(P)},hgt=function(i,a,f,p){if(p){let v=0;Br.bumpVerticalPos(hn.boxMargin*2);for(const m of f){const b=a[m];b.stopy||(b.stopy=Br.getVerticalPos());const E=rf.drawActor(i,b,hn,!0);v=ui.getMax(v,E)}Br.bumpVerticalPos(v+hn.boxMargin)}else for(const v of f){const m=a[v];rf.drawActor(i,m,hn,!1)}},_Rt=function(i,a,f,p){let v=0,m=0;for(const b of f){const E=a[b],C=tVe(E),A=rf.drawPopup(i,E,C,hn,hn.forceMenus,p);A.height>v&&(v=A.height),A.width+E.x>m&&(m=A.width+E.x)}return{maxHeight:v,maxWidth:m}},CRt=function(i){Z1(hn,i),i.fontFamily&&(hn.actorFontFamily=hn.noteFontFamily=hn.messageFontFamily=i.fontFamily),i.fontSize&&(hn.actorFontSize=hn.noteFontSize=hn.messageFontSize=i.fontSize),i.fontWeight&&(hn.actorFontWeight=hn.noteFontWeight=hn.messageFontWeight=i.fontWeight)},DK=function(i){return Br.activations.filter(function(a){return a.actor===i})},SRt=function(i,a){const f=a[i],p=DK(i),v=p.reduce(function(b,E){return ui.getMin(b,E.startx)},f.x+f.width/2),m=p.reduce(function(b,E){return ui.getMax(b,E.stopx)},f.x+f.width/2);return[v,m]};function y3(i,a,f,p,v){Br.bumpVerticalPos(f);let m=p;if(a.id&&a.message&&i[a.id]){const b=i[a.id].width,E=x9(hn);a.message=to.wrapLabel(`[${a.message}]`,b-2*hn.wrapPadding,E),a.width=b,a.wrap=!0;const C=to.calculateTextDimensions(a.message,E),A=ui.getMax(C.height,hn.labelBoxHeight);m=p+A,Wt.debug(`${A} - ${a.message}`)}v(a),Br.bumpVerticalPos(m)}function QHe(i,a,f,p,v,m,b){function E(A,P){A.x{Ft.add(X.from),Ft.add(X.to)}),H=H.filter(X=>Ft.has(X))}XHe(A,P,F,H,0,Y,!1);const Tt=iVe(Y,P,ft,p);rf.insertArrowHead(A),rf.insertArrowCrossHead(A),rf.insertArrowFilledHead(A),rf.insertSequenceNumber(A);function kt(Ft,X){const Rt=Br.endActivation(Ft);Rt.starty+18>X&&(Rt.starty=X-6,X+=12),rf.drawActivation(A,Rt,X,hn,DK(Ft.from.actor).length),Br.insert(Rt.startx,X-10,Rt.stopx,X)}let mt=1,ct=1;const yt=[],st=[];Y.forEach(function(Ft,X){let Rt,Bt,vt;switch(Ft.type){case p.db.LINETYPE.NOTE:Br.resetVerticalPos(),Bt=Ft.noteModel,WHe(A,Bt);break;case p.db.LINETYPE.ACTIVE_START:Br.newActivation(Ft,A,P);break;case p.db.LINETYPE.ACTIVE_END:kt(Ft,Br.getVerticalPos());break;case p.db.LINETYPE.LOOP_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.LOOP_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"loop",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.RECT_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin,Ot=>Br.newLoop(void 0,Ot.message));break;case p.db.LINETYPE.RECT_END:Rt=Br.endLoop(),st.push(Rt),Br.models.addLoop(Rt),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos());break;case p.db.LINETYPE.OPT_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.OPT_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"opt",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.ALT_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.ALT_ELSE:y3(Tt,Ft,hn.boxMargin+hn.boxTextMargin,hn.boxMargin,Ot=>Br.addSectionToLoop(Ot));break;case p.db.LINETYPE.ALT_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"alt",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.PAR_START:case p.db.LINETYPE.PAR_OVER_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot)),Br.saveVerticalPos();break;case p.db.LINETYPE.PAR_AND:y3(Tt,Ft,hn.boxMargin+hn.boxTextMargin,hn.boxMargin,Ot=>Br.addSectionToLoop(Ot));break;case p.db.LINETYPE.PAR_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"par",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.AUTONUMBER:mt=Ft.message.start||mt,ct=Ft.message.step||ct,Ft.message.visible?p.db.enableSequenceNumbers():p.db.disableSequenceNumbers();break;case p.db.LINETYPE.CRITICAL_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.CRITICAL_OPTION:y3(Tt,Ft,hn.boxMargin+hn.boxTextMargin,hn.boxMargin,Ot=>Br.addSectionToLoop(Ot));break;case p.db.LINETYPE.CRITICAL_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"critical",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;case p.db.LINETYPE.BREAK_START:y3(Tt,Ft,hn.boxMargin,hn.boxMargin+hn.boxTextMargin,Ot=>Br.newLoop(Ot));break;case p.db.LINETYPE.BREAK_END:Rt=Br.endLoop(),rf.drawLoop(A,Rt,"break",hn),Br.bumpVerticalPos(Rt.stopy-Br.getVerticalPos()),Br.models.addLoop(Rt);break;default:try{vt=Ft.msgModel,vt.starty=Br.getVerticalPos(),vt.sequenceIndex=mt,vt.sequenceVisible=p.db.showSequenceNumbers();const Ot=KHe(A,vt);QHe(Ft,vt,Ot,X,P,F,j),yt.push({messageModel:vt,lineStartY:Ot}),Br.models.addMessage(vt)}catch(Ot){Wt.error("error while drawing message",Ot)}}[p.db.LINETYPE.SOLID_OPEN,p.db.LINETYPE.DOTTED_OPEN,p.db.LINETYPE.SOLID,p.db.LINETYPE.DOTTED,p.db.LINETYPE.SOLID_CROSS,p.db.LINETYPE.DOTTED_CROSS,p.db.LINETYPE.SOLID_POINT,p.db.LINETYPE.DOTTED_POINT].includes(Ft.type)&&(mt=mt+ct)}),Wt.debug("createdActors",F),Wt.debug("destroyedActors",j),hgt(A,P,H,!1),yt.forEach(Ft=>YHe(A,Ft.messageModel,Ft.lineStartY,p)),hn.mirrorActors&&hgt(A,P,H,!0),st.forEach(Ft=>rf.drawBackgroundRect(A,Ft)),kRt(A,P,H,hn),Br.models.boxes.forEach(function(Ft){Ft.height=Br.getVerticalPos()-Ft.y,Br.insert(Ft.x,Ft.y,Ft.x+Ft.width,Ft.height),Ft.startx=Ft.x,Ft.starty=Ft.y,Ft.stopx=Ft.startx+Ft.width,Ft.stopy=Ft.starty+Ft.height,Ft.stroke="rgb(0,0,0, 0.5)",rf.drawBox(A,Ft,hn)}),J&&Br.bumpVerticalPos(hn.boxMargin);const xt=_Rt(A,P,H,C),{bounds:ht}=Br.getBounds();let dt=ht.stopy-ht.starty;dt{const b=i[m];b.wrap&&(b.description=to.wrapLabel(b.description,hn.width-2*hn.wrapPadding,lgt(hn)));const E=to.calculateTextDimensions(b.description,lgt(hn));b.width=b.wrap?hn.width:ui.getMax(hn.width,E.width+2*hn.wrapPadding),b.height=b.wrap?ui.getMax(E.height,hn.height):hn.height,p=ui.getMax(p,b.height)});for(const m in a){const b=i[m];if(!b)continue;const E=i[b.nextActor];if(!E){const F=a[m]+hn.actorMargin-b.width/2;b.margin=ui.getMax(F,hn.actorMargin);continue}const A=a[m]+hn.actorMargin-b.width/2-E.width/2;b.margin=ui.getMax(A,hn.actorMargin)}let v=0;return f.forEach(m=>{const b=x9(hn);let E=m.actorKeys.reduce((P,F)=>P+=i[F].width+(i[F].margin||0),0);E-=2*hn.boxTextMargin,m.wrap&&(m.name=to.wrapLabel(m.name,E-2*hn.wrapPadding,b));const C=to.calculateTextDimensions(m.name,b);v=ui.getMax(C.height,v);const A=ui.getMax(E,C.width+2*hn.wrapPadding);if(m.margin=hn.boxTextMargin,Em.textMaxHeight=v),ui.getMax(p,hn.height)}const nVe=function(i,a,f){const p=a[i.from].x,v=a[i.to].x,m=i.wrap&&i.message;let b=to.calculateTextDimensions(m?to.wrapLabel(i.message,hn.width,fL(hn)):i.message,fL(hn));const E={width:m?hn.width:ui.getMax(hn.width,b.width+2*hn.noteMargin),height:0,startx:a[i.from].x,stopx:0,starty:0,stopy:0,message:i.message};return i.placement===f.db.PLACEMENT.RIGHTOF?(E.width=m?ui.getMax(hn.width,b.width):ui.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*hn.noteMargin),E.startx=p+(a[i.from].width+hn.actorMargin)/2):i.placement===f.db.PLACEMENT.LEFTOF?(E.width=m?ui.getMax(hn.width,b.width+2*hn.noteMargin):ui.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*hn.noteMargin),E.startx=p-E.width+(a[i.from].width-hn.actorMargin)/2):i.to===i.from?(b=to.calculateTextDimensions(m?to.wrapLabel(i.message,ui.getMax(hn.width,a[i.from].width),fL(hn)):i.message,fL(hn)),E.width=m?ui.getMax(hn.width,a[i.from].width):ui.getMax(a[i.from].width,hn.width,b.width+2*hn.noteMargin),E.startx=p+(a[i.from].width-E.width)/2):(E.width=Math.abs(p+a[i.from].width/2-(v+a[i.to].width/2))+hn.actorMargin,E.startx=pj.actor).lastIndexOf(A.from.actor);delete Br.activations.splice(F,1)[0]}break}A.placement!==void 0?(E=nVe(A,a,p),A.noteModel=E,m.forEach(F=>{b=F,b.from=ui.getMin(b.from,E.startx),b.to=ui.getMax(b.to,E.startx+E.width),b.width=ui.getMax(b.width,Math.abs(b.from-b.to))-hn.labelBoxWidth})):(C=rVe(A,a,p),A.msgModel=C,C.startx&&C.stopx&&m.length>0&&m.forEach(F=>{if(b=F,C.startx===C.stopx){const j=a[A.from],R=a[A.to];b.from=ui.getMin(j.x-C.width/2,j.x-j.width/2,b.from),b.to=ui.getMax(R.x+C.width/2,R.x+j.width/2,b.to),b.width=ui.getMax(b.width,Math.abs(b.to-b.from))-hn.labelBoxWidth}else b.from=ui.getMin(C.startx,b.from),b.to=ui.getMax(C.stopx,b.to),b.width=ui.getMax(b.width,C.width)-hn.labelBoxWidth}))}),Br.activations=[],Wt.debug("Loop type widths:",v),v},sVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Jqe,db:THe,renderer:{bounds:Br,drawActors:hgt,drawActorsPopup:_Rt,setConf:CRt,draw:ZHe},styles:_He}},Symbol.toStringTag,{value:"Module"}));var fgt=function(){var i=function(Ce,$e,ye,fn){for(ye=ye||{},fn=Ce.length;fn--;ye[Ce[fn]]=$e);return ye},a=[1,34],f=[1,35],p=[1,36],v=[1,37],m=[1,9],b=[1,8],E=[1,19],C=[1,20],A=[1,21],P=[1,40],F=[1,41],j=[1,27],R=[1,25],H=[1,26],Y=[1,32],rt=[1,33],J=[1,28],it=[1,29],ft=[1,30],Tt=[1,31],kt=[1,45],mt=[1,42],ct=[1,43],yt=[1,44],st=[1,46],xt=[1,24],ht=[1,16,24],dt=[1,60],Ct=[1,61],tt=[1,62],Pt=[1,63],pt=[1,64],Ft=[1,65],X=[1,66],Rt=[1,16,24,52],Bt=[1,77],vt=[1,16,24,27,28,36,50,52,55,68,69,70,71,72,73,74,79,81],Ot=[1,16,24,27,28,34,36,50,52,55,59,68,69,70,71,72,73,74,79,81,94,96,97,98,99],Vt=[1,86],qe=[28,94,96,97,98,99],_n=[28,73,74,94,96,97,98,99],Te=[28,68,69,70,71,72,94,96,97,98,99],Wn=[1,99],Ae=[1,16,24,50,52,55],ne=[1,16,24,36],ke=[8,9,10,11,19,23,44,46,48,53,57,58,60,61,63,65,75,76,78,82,94,96,97,98,99],Ve={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,statements:6,direction:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,EOF:24,statement:25,classLabel:26,SQS:27,STR:28,SQE:29,namespaceName:30,alphaNumToken:31,className:32,classLiteralName:33,GENERICTYPE:34,relationStatement:35,LABEL:36,namespaceStatement:37,classStatement:38,methodStatement:39,annotationStatement:40,clickStatement:41,cssClassStatement:42,noteStatement:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,namespaceIdentifier:49,STRUCT_START:50,classStatements:51,STRUCT_STOP:52,NAMESPACE:53,classIdentifier:54,STYLE_SEPARATOR:55,members:56,CLASS:57,ANNOTATION_START:58,ANNOTATION_END:59,MEMBER:60,SEPARATOR:61,relation:62,NOTE_FOR:63,noteText:64,NOTE:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,CSSCLASS:82,commentToken:83,textToken:84,graphCodeTokens:85,textNoTagsToken:86,TAGSTART:87,TAGEND:88,"==":89,"--":90,PCT:91,DEFAULT:92,SPACE:93,MINUS:94,keywords:95,UNICODE_TEXT:96,NUM:97,ALPHA:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",24:"EOF",27:"SQS",28:"STR",29:"SQE",34:"GENERICTYPE",36:"LABEL",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",50:"STRUCT_START",52:"STRUCT_STOP",53:"NAMESPACE",55:"STYLE_SEPARATOR",57:"CLASS",58:"ANNOTATION_START",59:"ANNOTATION_END",60:"MEMBER",61:"SEPARATOR",63:"NOTE_FOR",65:"NOTE",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"CSSCLASS",85:"graphCodeTokens",87:"TAGSTART",88:"TAGEND",89:"==",90:"--",91:"PCT",92:"DEFAULT",93:"SPACE",94:"MINUS",95:"keywords",96:"UNICODE_TEXT",97:"NUM",98:"ALPHA",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,2],[3,1],[7,1],[7,1],[7,1],[7,1],[4,1],[5,4],[5,6],[13,1],[14,1],[18,1],[15,1],[12,4],[6,1],[6,2],[6,3],[26,3],[30,1],[30,2],[32,1],[32,1],[32,2],[32,2],[32,2],[25,1],[25,2],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,2],[25,2],[25,1],[37,4],[37,5],[49,2],[51,1],[51,2],[51,3],[38,1],[38,3],[38,4],[38,6],[54,2],[54,3],[40,4],[56,1],[56,2],[39,1],[39,2],[39,1],[39,1],[35,3],[35,4],[35,4],[35,5],[43,3],[43,2],[62,3],[62,2],[62,2],[62,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[41,3],[41,4],[41,3],[41,4],[41,4],[41,5],[41,3],[41,4],[41,4],[41,5],[41,4],[41,5],[41,5],[41,6],[42,3],[83,1],[83,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[86,1],[86,1],[86,1],[86,1],[31,1],[31,1],[31,1],[31,1],[33,1],[64,1]],performAction:function($e,ye,fn,Yt,Mi,qt,zi){var Se=qt.length-1;switch(Mi){case 4:Yt.setDirection("TB");break;case 5:Yt.setDirection("BT");break;case 6:Yt.setDirection("RL");break;case 7:Yt.setDirection("LR");break;case 11:Yt.parseDirective("%%{","open_directive");break;case 12:Yt.parseDirective(qt[Se],"type_directive");break;case 13:qt[Se]=qt[Se].trim().replace(/'/g,'"'),Yt.parseDirective(qt[Se],"arg_directive");break;case 14:Yt.parseDirective("}%%","close_directive","class");break;case 19:this.$=qt[Se-1];break;case 20:case 22:case 23:this.$=qt[Se];break;case 21:case 24:this.$=qt[Se-1]+qt[Se];break;case 25:case 26:this.$=qt[Se-1]+"~"+qt[Se]+"~";break;case 27:Yt.addRelation(qt[Se]);break;case 28:qt[Se-1].title=Yt.cleanupLabel(qt[Se]),Yt.addRelation(qt[Se-1]);break;case 37:this.$=qt[Se].trim(),Yt.setAccTitle(this.$);break;case 38:case 39:this.$=qt[Se].trim(),Yt.setAccDescription(this.$);break;case 40:Yt.addClassesToNamespace(qt[Se-3],qt[Se-1]);break;case 41:Yt.addClassesToNamespace(qt[Se-4],qt[Se-1]);break;case 42:this.$=qt[Se],Yt.addNamespace(qt[Se]);break;case 43:this.$=[qt[Se]];break;case 44:this.$=[qt[Se-1]];break;case 45:qt[Se].unshift(qt[Se-2]),this.$=qt[Se];break;case 47:Yt.setCssClass(qt[Se-2],qt[Se]);break;case 48:Yt.addMembers(qt[Se-3],qt[Se-1]);break;case 49:Yt.setCssClass(qt[Se-5],qt[Se-3]),Yt.addMembers(qt[Se-5],qt[Se-1]);break;case 50:this.$=qt[Se],Yt.addClass(qt[Se]);break;case 51:this.$=qt[Se-1],Yt.addClass(qt[Se-1]),Yt.setClassLabel(qt[Se-1],qt[Se]);break;case 52:Yt.addAnnotation(qt[Se],qt[Se-2]);break;case 53:this.$=[qt[Se]];break;case 54:qt[Se].push(qt[Se-1]),this.$=qt[Se];break;case 55:break;case 56:Yt.addMember(qt[Se-1],Yt.cleanupLabel(qt[Se]));break;case 57:break;case 58:break;case 59:this.$={id1:qt[Se-2],id2:qt[Se],relation:qt[Se-1],relationTitle1:"none",relationTitle2:"none"};break;case 60:this.$={id1:qt[Se-3],id2:qt[Se],relation:qt[Se-1],relationTitle1:qt[Se-2],relationTitle2:"none"};break;case 61:this.$={id1:qt[Se-3],id2:qt[Se],relation:qt[Se-2],relationTitle1:"none",relationTitle2:qt[Se-1]};break;case 62:this.$={id1:qt[Se-4],id2:qt[Se],relation:qt[Se-2],relationTitle1:qt[Se-3],relationTitle2:qt[Se-1]};break;case 63:Yt.addNote(qt[Se],qt[Se-1]);break;case 64:Yt.addNote(qt[Se]);break;case 65:this.$={type1:qt[Se-2],type2:qt[Se],lineType:qt[Se-1]};break;case 66:this.$={type1:"none",type2:qt[Se],lineType:qt[Se-1]};break;case 67:this.$={type1:qt[Se-1],type2:"none",lineType:qt[Se]};break;case 68:this.$={type1:"none",type2:"none",lineType:qt[Se]};break;case 69:this.$=Yt.relationType.AGGREGATION;break;case 70:this.$=Yt.relationType.EXTENSION;break;case 71:this.$=Yt.relationType.COMPOSITION;break;case 72:this.$=Yt.relationType.DEPENDENCY;break;case 73:this.$=Yt.relationType.LOLLIPOP;break;case 74:this.$=Yt.lineType.LINE;break;case 75:this.$=Yt.lineType.DOTTED_LINE;break;case 76:case 82:this.$=qt[Se-2],Yt.setClickEvent(qt[Se-1],qt[Se]);break;case 77:case 83:this.$=qt[Se-3],Yt.setClickEvent(qt[Se-2],qt[Se-1]),Yt.setTooltip(qt[Se-2],qt[Se]);break;case 78:this.$=qt[Se-2],Yt.setLink(qt[Se-1],qt[Se]);break;case 79:this.$=qt[Se-3],Yt.setLink(qt[Se-2],qt[Se-1],qt[Se]);break;case 80:this.$=qt[Se-3],Yt.setLink(qt[Se-2],qt[Se-1]),Yt.setTooltip(qt[Se-2],qt[Se]);break;case 81:this.$=qt[Se-4],Yt.setLink(qt[Se-3],qt[Se-2],qt[Se]),Yt.setTooltip(qt[Se-3],qt[Se-1]);break;case 84:this.$=qt[Se-3],Yt.setClickEvent(qt[Se-2],qt[Se-1],qt[Se]);break;case 85:this.$=qt[Se-4],Yt.setClickEvent(qt[Se-3],qt[Se-2],qt[Se-1]),Yt.setTooltip(qt[Se-3],qt[Se]);break;case 86:this.$=qt[Se-3],Yt.setLink(qt[Se-2],qt[Se]);break;case 87:this.$=qt[Se-4],Yt.setLink(qt[Se-3],qt[Se-1],qt[Se]);break;case 88:this.$=qt[Se-4],Yt.setLink(qt[Se-3],qt[Se-1]),Yt.setTooltip(qt[Se-3],qt[Se]);break;case 89:this.$=qt[Se-5],Yt.setLink(qt[Se-4],qt[Se-2],qt[Se]),Yt.setTooltip(qt[Se-4],qt[Se-1]);break;case 90:Yt.setCssClass(qt[Se-1],qt[Se]);break}},table:[{3:1,4:2,5:3,6:4,7:18,8:a,9:f,10:p,11:v,12:5,13:6,19:m,23:b,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:E,46:C,48:A,49:23,53:P,54:24,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st},{1:[3]},{1:[2,1]},{3:47,4:2,5:3,6:4,7:18,8:a,9:f,10:p,11:v,12:5,13:6,19:m,23:b,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:E,46:C,48:A,49:23,53:P,54:24,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st},{1:[2,3]},{1:[2,8]},{14:48,20:[1,49]},i(xt,[2,16],{16:[1,50]}),{16:[1,51]},{20:[2,11]},i(ht,[2,27],{36:[1,52]}),i(ht,[2,29]),i(ht,[2,30]),i(ht,[2,31]),i(ht,[2,32]),i(ht,[2,33]),i(ht,[2,34]),i(ht,[2,35]),i(ht,[2,36]),{45:[1,53]},{47:[1,54]},i(ht,[2,39]),i(ht,[2,55],{62:55,66:58,67:59,28:[1,56],36:[1,57],68:dt,69:Ct,70:tt,71:Pt,72:pt,73:Ft,74:X}),{50:[1,67]},i(Rt,[2,46],{50:[1,69],55:[1,68]}),i(ht,[2,57]),i(ht,[2,58]),{31:70,94:kt,96:mt,97:ct,98:yt},{31:38,32:71,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{31:38,32:72,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{31:38,32:73,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{28:[1,74]},{31:38,32:75,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{28:Bt,64:76},i(ht,[2,4]),i(ht,[2,5]),i(ht,[2,6]),i(ht,[2,7]),i(vt,[2,22],{31:38,33:39,32:78,34:[1,79],94:kt,96:mt,97:ct,98:yt,99:st}),i(vt,[2,23],{34:[1,80]}),{30:81,31:82,94:kt,96:mt,97:ct,98:yt},{31:38,32:83,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(Ot,[2,104]),i(Ot,[2,105]),i(Ot,[2,106]),i(Ot,[2,107]),i([1,16,24,27,28,34,36,50,52,55,68,69,70,71,72,73,74,79,81],[2,108]),{1:[2,2]},{15:84,17:[1,85],22:Vt},i([17,22],[2,12]),i(xt,[2,17],{25:7,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,7:18,32:22,49:23,54:24,31:38,33:39,6:87,8:a,9:f,10:p,11:v,44:E,46:C,48:A,53:P,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st}),{6:88,7:18,8:a,9:f,10:p,11:v,25:7,31:38,32:22,33:39,35:10,37:11,38:12,39:13,40:14,41:15,42:16,43:17,44:E,46:C,48:A,49:23,53:P,54:24,57:F,58:j,60:R,61:H,63:Y,65:rt,75:J,76:it,78:ft,82:Tt,94:kt,96:mt,97:ct,98:yt,99:st},i(ht,[2,28]),i(ht,[2,37]),i(ht,[2,38]),{28:[1,90],31:38,32:89,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{62:91,66:58,67:59,68:dt,69:Ct,70:tt,71:Pt,72:pt,73:Ft,74:X},i(ht,[2,56]),{67:92,73:Ft,74:X},i(qe,[2,68],{66:93,68:dt,69:Ct,70:tt,71:Pt,72:pt}),i(_n,[2,69]),i(_n,[2,70]),i(_n,[2,71]),i(_n,[2,72]),i(_n,[2,73]),i(Te,[2,74]),i(Te,[2,75]),{16:[1,95],38:96,51:94,54:24,57:F},{31:97,94:kt,96:mt,97:ct,98:yt},{56:98,60:Wn},{59:[1,100]},{28:[1,101]},{28:[1,102]},{79:[1,103],81:[1,104]},{31:105,94:kt,96:mt,97:ct,98:yt},{28:Bt,64:106},i(ht,[2,64]),i(ht,[2,109]),i(vt,[2,24]),i(vt,[2,25]),i(vt,[2,26]),{50:[2,42]},{30:107,31:82,50:[2,20],94:kt,96:mt,97:ct,98:yt},i(Ae,[2,50],{26:108,27:[1,109]}),{16:[1,110]},{18:111,21:[1,112]},{16:[2,14]},i(xt,[2,18]),{24:[1,113]},i(ne,[2,59]),{31:38,32:114,33:39,94:kt,96:mt,97:ct,98:yt,99:st},{28:[1,116],31:38,32:115,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(qe,[2,67],{66:117,68:dt,69:Ct,70:tt,71:Pt,72:pt}),i(qe,[2,66]),{52:[1,118]},{38:96,51:119,54:24,57:F},{16:[1,120],52:[2,43]},i(Rt,[2,47],{50:[1,121]}),{52:[1,122]},{52:[2,53],56:123,60:Wn},{31:38,32:124,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(ht,[2,76],{28:[1,125]}),i(ht,[2,78],{28:[1,127],77:[1,126]}),i(ht,[2,82],{28:[1,128],80:[1,129]}),{28:[1,130]},i(ht,[2,90]),i(ht,[2,63]),{50:[2,21]},i(Ae,[2,51]),{28:[1,131]},i(ke,[2,9]),{15:132,22:Vt},{22:[2,13]},{1:[2,15]},i(ne,[2,61]),i(ne,[2,60]),{31:38,32:133,33:39,94:kt,96:mt,97:ct,98:yt,99:st},i(qe,[2,65]),i(ht,[2,40]),{52:[1,134]},{38:96,51:135,52:[2,44],54:24,57:F},{56:136,60:Wn},i(Rt,[2,48]),{52:[2,54]},i(ht,[2,52]),i(ht,[2,77]),i(ht,[2,79]),i(ht,[2,80],{77:[1,137]}),i(ht,[2,83]),i(ht,[2,84],{28:[1,138]}),i(ht,[2,86],{28:[1,140],77:[1,139]}),{29:[1,141]},{16:[1,142]},i(ne,[2,62]),i(ht,[2,41]),{52:[2,45]},{52:[1,143]},i(ht,[2,81]),i(ht,[2,85]),i(ht,[2,87]),i(ht,[2,88],{77:[1,144]}),i(Ae,[2,19]),i(ke,[2,10]),i(Rt,[2,49]),i(ht,[2,89])],defaultActions:{2:[2,1],4:[2,3],5:[2,8],9:[2,11],47:[2,2],81:[2,42],86:[2,14],107:[2,21],112:[2,13],113:[2,15],123:[2,54],135:[2,45]},parseError:function($e,ye){if(ye.recoverable)this.trace($e);else{var fn=new Error($e);throw fn.hash=ye,fn}},parse:function($e){var ye=this,fn=[0],Yt=[],Mi=[null],qt=[],zi=this.table,Se="",ki=0,Ri=0,pi=2,bi=1,dn=qt.slice.call(arguments,1),Nn=Object.create(this.lexer),Wr={yy:{}};for(var Li in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Li)&&(Wr.yy[Li]=this.yy[Li]);Nn.setInput($e,Wr.yy),Wr.yy.lexer=Nn,Wr.yy.parser=this,typeof Nn.yylloc>"u"&&(Nn.yylloc={});var is=Nn.yylloc;qt.push(is);var Ts=Nn.options&&Nn.options.ranges;typeof Wr.yy.parseError=="function"?this.parseError=Wr.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Aa(){var Mc;return Mc=Yt.pop()||Nn.lex()||bi,typeof Mc!="number"&&(Mc instanceof Array&&(Yt=Mc,Mc=Yt.pop()),Mc=ye.symbols_[Mc]||Mc),Mc}for(var Xi,Ga,_r,qr,Oi={},gr,Js,Vn,Xc;;){if(Ga=fn[fn.length-1],this.defaultActions[Ga]?_r=this.defaultActions[Ga]:((Xi===null||typeof Xi>"u")&&(Xi=Aa()),_r=zi[Ga]&&zi[Ga][Xi]),typeof _r>"u"||!_r.length||!_r[0]){var Er="";Xc=[];for(gr in zi[Ga])this.terminals_[gr]&&gr>pi&&Xc.push("'"+this.terminals_[gr]+"'");Nn.showPosition?Er="Parse error on line "+(ki+1)+`: +`+Nn.showPosition()+` +Expecting `+Xc.join(", ")+", got '"+(this.terminals_[Xi]||Xi)+"'":Er="Parse error on line "+(ki+1)+": Unexpected "+(Xi==bi?"end of input":"'"+(this.terminals_[Xi]||Xi)+"'"),this.parseError(Er,{text:Nn.match,token:this.terminals_[Xi]||Xi,line:Nn.yylineno,loc:is,expected:Xc})}if(_r[0]instanceof Array&&_r.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ga+", token: "+Xi);switch(_r[0]){case 1:fn.push(Xi),Mi.push(Nn.yytext),qt.push(Nn.yylloc),fn.push(_r[1]),Xi=null,Ri=Nn.yyleng,Se=Nn.yytext,ki=Nn.yylineno,is=Nn.yylloc;break;case 2:if(Js=this.productions_[_r[1]][1],Oi.$=Mi[Mi.length-Js],Oi._$={first_line:qt[qt.length-(Js||1)].first_line,last_line:qt[qt.length-1].last_line,first_column:qt[qt.length-(Js||1)].first_column,last_column:qt[qt.length-1].last_column},Ts&&(Oi._$.range=[qt[qt.length-(Js||1)].range[0],qt[qt.length-1].range[1]]),qr=this.performAction.apply(Oi,[Se,Ri,ki,Wr.yy,_r[1],Mi,qt].concat(dn)),typeof qr<"u")return qr;Js&&(fn=fn.slice(0,-1*Js*2),Mi=Mi.slice(0,-1*Js),qt=qt.slice(0,-1*Js)),fn.push(this.productions_[_r[1]][0]),Mi.push(Oi.$),qt.push(Oi._$),Vn=zi[fn[fn.length-2]][fn[fn.length-1]],fn.push(Vn);break;case 3:return!0}}return!0}},Ee=function(){var Ce={EOF:1,parseError:function(ye,fn){if(this.yy.parser)this.yy.parser.parseError(ye,fn);else throw new Error(ye)},setInput:function($e,ye){return this.yy=ye||this.yy||{},this._input=$e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var $e=this._input[0];this.yytext+=$e,this.yyleng++,this.offset++,this.match+=$e,this.matched+=$e;var ye=$e.match(/(?:\r\n?|\n).*/g);return ye?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),$e},unput:function($e){var ye=$e.length,fn=$e.split(/(?:\r\n?|\n)/g);this._input=$e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ye),this.offset-=ye;var Yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),fn.length-1&&(this.yylineno-=fn.length-1);var Mi=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:fn?(fn.length===Yt.length?this.yylloc.first_column:0)+Yt[Yt.length-fn.length].length-fn[0].length:this.yylloc.first_column-ye},this.options.ranges&&(this.yylloc.range=[Mi[0],Mi[0]+this.yyleng-ye]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function($e){this.unput(this.match.slice($e))},pastInput:function(){var $e=this.matched.substr(0,this.matched.length-this.match.length);return($e.length>20?"...":"")+$e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var $e=this.match;return $e.length<20&&($e+=this._input.substr(0,20-$e.length)),($e.substr(0,20)+($e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var $e=this.pastInput(),ye=new Array($e.length+1).join("-");return $e+this.upcomingInput()+` +`+ye+"^"},test_match:function($e,ye){var fn,Yt,Mi;if(this.options.backtrack_lexer&&(Mi={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Mi.yylloc.range=this.yylloc.range.slice(0))),Yt=$e[0].match(/(?:\r\n?|\n).*/g),Yt&&(this.yylineno+=Yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Yt?Yt[Yt.length-1].length-Yt[Yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+$e[0].length},this.yytext+=$e[0],this.match+=$e[0],this.matches=$e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice($e[0].length),this.matched+=$e[0],fn=this.performAction.call(this,this.yy,this,ye,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),fn)return fn;if(this._backtrack){for(var qt in Mi)this[qt]=Mi[qt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var $e,ye,fn,Yt;this._more||(this.yytext="",this.match="");for(var Mi=this._currentRules(),qt=0;qtye[0].length)){if(ye=fn,Yt=qt,this.options.backtrack_lexer){if($e=this.test_match(fn,Mi[qt]),$e!==!1)return $e;if(this._backtrack){ye=!1;continue}else return!1}else if(!this.options.flex)break}return ye?($e=this.test_match(ye,Mi[Yt]),$e!==!1?$e:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ye=this.next();return ye||this.lex()},begin:function(ye){this.conditionStack.push(ye)},popState:function(){var ye=this.conditionStack.length-1;return ye>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ye){return ye=this.conditionStack.length-1-Math.abs(ye||0),ye>=0?this.conditionStack[ye]:"INITIAL"},pushState:function(ye){this.begin(ye)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ye,fn,Yt,Mi){switch(Yt){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:break;case 10:break;case 11:return this.begin("acc_title"),44;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),46;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 19:break;case 20:return 23;case 21:return 23;case 22:return"EDGE_STATE";case 23:this.begin("callback_name");break;case 24:this.popState();break;case 25:this.popState(),this.begin("callback_args");break;case 26:return 79;case 27:this.popState();break;case 28:return 80;case 29:this.popState();break;case 30:return"STR";case 31:this.begin("string");break;case 32:return this.begin("namespace"),53;case 33:return this.popState(),16;case 34:break;case 35:return this.begin("namespace-body"),50;case 36:return this.popState(),52;case 37:return"EOF_IN_STRUCT";case 38:return 16;case 39:break;case 40:return"EDGE_STATE";case 41:return this.begin("class"),57;case 42:return this.popState(),16;case 43:break;case 44:return this.popState(),this.popState(),52;case 45:return this.begin("class-body"),50;case 46:return this.popState(),52;case 47:return"EOF_IN_STRUCT";case 48:return"EDGE_STATE";case 49:return"OPEN_IN_STRUCT";case 50:break;case 51:return"MEMBER";case 52:return 82;case 53:return 75;case 54:return 76;case 55:return 78;case 56:return 63;case 57:return 65;case 58:return 58;case 59:return 59;case 60:return 81;case 61:this.popState();break;case 62:return"GENERICTYPE";case 63:this.begin("generic");break;case 64:this.popState();break;case 65:return"BQUOTE_STR";case 66:this.begin("bqstring");break;case 67:return 77;case 68:return 77;case 69:return 77;case 70:return 77;case 71:return 69;case 72:return 69;case 73:return 71;case 74:return 71;case 75:return 70;case 76:return 68;case 77:return 72;case 78:return 73;case 79:return 74;case 80:return 36;case 81:return 55;case 82:return 94;case 83:return"DOT";case 84:return"PLUS";case 85:return 91;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 98;case 89:return 27;case 90:return 29;case 91:return"PUNCTUATION";case 92:return 97;case 93:return 96;case 94:return 93;case 95:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[31,36,37,38,39,40,41,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},namespace:{rules:[31,32,33,34,35,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},"class-body":{rules:[31,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},class:{rules:[31,42,43,44,45,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},acc_descr_multiline:{rules:[16,17,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},acc_descr:{rules:[14,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},acc_title:{rules:[12,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},arg_directive:{rules:[7,8,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},type_directive:{rules:[6,7,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},open_directive:{rules:[5,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},callback_args:{rules:[27,28,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},callback_name:{rules:[24,25,26,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},href:{rules:[31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},struct:{rules:[31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},generic:{rules:[31,52,53,54,55,56,57,58,59,60,61,62,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},bqstring:{rules:[31,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},string:{rules:[29,30,31,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,31,32,41,52,53,54,55,56,57,58,59,60,63,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],inclusive:!0}}};return Ce}();Ve.lexer=Ee;function He(){this.yy={}}return He.prototype=Ve,Ve.Parser=He,new He}();fgt.parser=fgt;const ARt=fgt,IK="classId-";let dgt=[],nh={},OK=[],LRt=0,lk={},ggt=0,BP=[];const N5=i=>ui.sanitizeText(i,De()),aVe=function(i,a,f){J1.parseDirective(this,i,a,f)},dL=function(i){let a="",f=i;if(i.indexOf("~")>0){const p=i.split("~");f=N5(p[0]),a=N5(p[1])}return{className:f,type:a}},oVe=function(i,a){a&&(a=N5(a));const{className:f}=dL(i);nh[f].label=a},pgt=function(i){const a=dL(i);nh[a.className]===void 0&&(nh[a.className]={id:a.className,type:a.type,label:a.className,cssClasses:[],methods:[],members:[],annotations:[],domId:IK+a.className+"-"+LRt},LRt++)},MRt=function(i){if(i in nh)return nh[i].domId;throw new Error("Class not found: "+i)},cVe=function(){dgt=[],nh={},OK=[],BP=[],BP.push(IRt),lk={},ggt=0,cg()},uVe=function(i){return nh[i]},lVe=function(){return nh},hVe=function(){return dgt},fVe=function(){return OK},dVe=function(i){Wt.debug("Adding relation: "+JSON.stringify(i)),pgt(i.id1),pgt(i.id2),i.id1=dL(i.id1).className,i.id2=dL(i.id2).className,i.relationTitle1=ui.sanitizeText(i.relationTitle1.trim(),De()),i.relationTitle2=ui.sanitizeText(i.relationTitle2.trim(),De()),dgt.push(i)},gVe=function(i,a){const f=dL(i).className;nh[f].annotations.push(a)},DRt=function(i,a){const f=dL(i).className,p=nh[f];if(typeof a=="string"){const v=a.trim();v.startsWith("<<")&&v.endsWith(">>")?p.annotations.push(N5(v.substring(2,v.length-2))):v.indexOf(")")>0?p.methods.push(N5(v)):v&&p.members.push(N5(v))}},pVe=function(i,a){Array.isArray(a)&&(a.reverse(),a.forEach(f=>DRt(i,f)))},bVe=function(i,a){const f={id:`note${OK.length}`,class:a,text:i};OK.push(f)},vVe=function(i){return i.startsWith(":")&&(i=i.substring(1)),N5(i.trim())},bgt=function(i,a){i.split(",").forEach(function(f){let p=f;f[0].match(/\d/)&&(p=IK+p),nh[p]!==void 0&&nh[p].cssClasses.push(a)})},wVe=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(nh[f].tooltip=N5(a))})},mVe=function(i,a){return a?lk[a].classes[i].tooltip:nh[i].tooltip},yVe=function(i,a,f){const p=De();i.split(",").forEach(function(v){let m=v;v[0].match(/\d/)&&(m=IK+m),nh[m]!==void 0&&(nh[m].link=to.formatUrl(a,p),p.securityLevel==="sandbox"?nh[m].linkTarget="_top":typeof f=="string"?nh[m].linkTarget=N5(f):nh[m].linkTarget="_blank")}),bgt(i,"clickable")},xVe=function(i,a,f){i.split(",").forEach(function(p){kVe(p,a,f),nh[p].haveCallback=!0}),bgt(i,"clickable")},kVe=function(i,a,f){if(De().securityLevel!=="loose"||a===void 0)return;const v=i;if(nh[v]!==void 0){const m=MRt(v);let b=[];if(typeof f=="string"){b=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let E=0;E")),v.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),xr(this).classed("hover",!1)})};BP.push(IRt);let ORt="TB";const NK={parseDirective:aVe,setAccTitle:m0,getAccTitle:ug,getAccDescription:hg,setAccDescription:lg,getConfig:()=>De().class,addClass:pgt,bindFunctions:EVe,clear:cVe,getClass:uVe,getClasses:lVe,getNotes:fVe,addAnnotation:gVe,addNote:bVe,getRelations:hVe,addRelation:dVe,getDirection:()=>ORt,setDirection:i=>{ORt=i},addMember:DRt,addMembers:pVe,cleanupLabel:vVe,lineType:TVe,relationType:_Ve,setClickEvent:xVe,setCssClass:bgt,setLink:yVe,getTooltip:mVe,setTooltip:wVe,lookUpDomId:MRt,setDiagramTitle:Nb,getDiagramTitle:hp,setClassLabel:oVe,addNamespace:function(i){lk[i]===void 0&&(lk[i]={id:i,classes:{},children:{},domId:IK+i+"-"+ggt},ggt++)},addClassesToNamespace:function(i,a){lk[i]!==void 0&&a.map(f=>{nh[f].parent=i,lk[i].classes[f]=nh[f]})},getNamespace:function(i){return lk[i]},getNamespaces:function(){return lk}},NRt=i=>`g.classGroup text { + fill: ${i.nodeBorder}; + fill: ${i.classText}; + stroke: none; + font-family: ${i.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${i.classText}; +} +.edgeLabel .label rect { + fill: ${i.mainBkg}; +} +.label text { + fill: ${i.classText}; +} +.edgeLabel .label span { + background: ${i.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${i.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; +} + +g.classGroup line { + stroke: ${i.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${i.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${i.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${i.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${i.lineColor} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${i.mainBkg} !important; + stroke: ${i.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; +} +`;let PK={};const FK=20,RP=function(i){const a=Object.entries(PK).find(f=>f[1].label===i);if(a)return a[0]},CVe=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},SVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ARt,db:NK,renderer:{draw:function(i,a,f,p){const v=De().class;PK={},Wt.info("Rendering diagram "+i);const m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=E.select(`[id='${a}']`);CVe(C);const A=new l1({multigraph:!0});A.setGraph({isMultiGraph:!0}),A.setDefaultEdgeLabel(function(){return{}});const P=p.db.getClasses(),F=Object.keys(P);for(const it of F){const ft=P[it],Tt=S0t.drawClass(C,ft,v,p);PK[Tt.id]=Tt,A.setNode(Tt.id,Tt),Wt.info("Org height: "+Tt.height)}p.db.getRelations().forEach(function(it){Wt.info("tjoho"+RP(it.id1)+RP(it.id2)+JSON.stringify(it)),A.setEdge(RP(it.id1),RP(it.id2),{relation:it},it.title||"DEFAULT")}),p.db.getNotes().forEach(function(it){Wt.debug(`Adding note: ${JSON.stringify(it)}`);const ft=S0t.drawNote(C,it,v,p);PK[ft.id]=ft,A.setNode(ft.id,ft),it.class&&it.class in P&&A.setEdge(it.id,RP(it.class),{relation:{id1:it.id,id2:it.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),nL(A),A.nodes().forEach(function(it){it!==void 0&&A.node(it)!==void 0&&(Wt.debug("Node "+it+": "+JSON.stringify(A.node(it))),E.select("#"+(p.db.lookUpDomId(it)||it)).attr("transform","translate("+(A.node(it).x-A.node(it).width/2)+","+(A.node(it).y-A.node(it).height/2)+" )"))}),A.edges().forEach(function(it){it!==void 0&&A.edge(it)!==void 0&&(Wt.debug("Edge "+it.v+" -> "+it.w+": "+JSON.stringify(A.edge(it))),S0t.drawEdge(C,A.edge(it),A.edge(it).relation,v,p))});const H=C.node().getBBox(),Y=H.width+FK*2,rt=H.height+FK*2;og(C,rt,Y,v.useMaxWidth);const J=`${H.x-FK} ${H.y-FK} ${Y} ${rt}`;Wt.debug(`viewBox ${J}`),C.attr("viewBox",J)}},styles:NRt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,NK.clear()}}},Symbol.toStringTag,{value:"Module"})),vgt=i=>ui.sanitizeText(i,De());let wgt={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const AVe=function(i,a,f,p){const v=Object.keys(i);Wt.info("keys:",v),Wt.info(i),v.forEach(function(m){var A,P;const b=i[m],C={shape:"rect",id:b.id,domId:b.domId,labelText:vgt(b.id),labelStyle:"",style:"fill: none; stroke: black",padding:((A=De().flowchart)==null?void 0:A.padding)??((P=De().class)==null?void 0:P.padding)};a.setNode(b.id,C),PRt(b.classes,a,f,p,b.id),Wt.info("setNode",C)})},PRt=function(i,a,f,p,v){const m=Object.keys(i);Wt.info("keys:",m),Wt.info(i),m.filter(b=>i[b].parent==v).forEach(function(b){var H,Y;const E=i[b],C=E.cssClasses.join(" "),A={labelStyle:"",style:""},P=E.label??E.id,F=0,j="class_box",R={labelStyle:A.labelStyle,shape:j,labelText:vgt(P),classData:E,rx:F,ry:F,class:C,style:A.style,id:E.id,domId:E.domId,tooltip:p.db.getTooltip(E.id,v)||"",haveCallback:E.haveCallback,link:E.link,width:E.type==="group"?500:void 0,type:E.type,padding:((H=De().flowchart)==null?void 0:H.padding)??((Y=De().class)==null?void 0:Y.padding)};a.setNode(E.id,R),v&&a.setParent(E.id,v),Wt.info("setNode",R)})},LVe=function(i,a,f,p){Wt.info(i),i.forEach(function(v,m){var Y,rt;const b=v,E="",C={labelStyle:"",style:""},A=b.text,P=0,F="note",j={labelStyle:C.labelStyle,shape:F,labelText:vgt(A),noteData:b,rx:P,ry:P,class:E,style:C.style,id:b.id,domId:b.id,tooltip:"",type:"note",padding:((Y=De().flowchart)==null?void 0:Y.padding)??((rt=De().class)==null?void 0:rt.padding)};if(a.setNode(b.id,j),Wt.info("setNode",j),!b.class||!(b.class in p))return;const R=f+m,H={id:`edgeNote${R}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:Z2(wgt.curve,ig)};a.setEdge(b.id,b.class,H,R)})},MVe=function(i,a){const f=De().flowchart;let p=0;i.forEach(function(v){var b;p++;const m={classes:"relation",pattern:v.relation.lineType==1?"dashed":"solid",id:"id"+p,arrowhead:v.type==="arrow_open"?"none":"normal",startLabelRight:v.relationTitle1==="none"?"":v.relationTitle1,endLabelLeft:v.relationTitle2==="none"?"":v.relationTitle2,arrowTypeStart:FRt(v.relation.type1),arrowTypeEnd:FRt(v.relation.type2),style:"fill:none",labelStyle:"",curve:Z2(f==null?void 0:f.curve,ig)};if(Wt.info(m,v),v.style!==void 0){const E=em(v.style);m.style=E.style,m.labelStyle=E.labelStyle}v.text=v.title,v.text===void 0?v.style!==void 0&&(m.arrowheadStyle="fill: #333"):(m.arrowheadStyle="fill: #333",m.labelpos="c",((b=De().flowchart)==null?void 0:b.htmlLabels)??De().htmlLabels?(m.labelType="html",m.label=''+v.text+""):(m.labelType="text",m.label=v.text.replace(ui.lineBreakRegex,` +`),v.style===void 0&&(m.style=m.style||"stroke: #333; stroke-width: 1.5px;fill:none"),m.labelStyle=m.labelStyle.replace("color:","fill:"))),a.setEdge(v.id1,v.id2,m,p)})},DVe=function(i){wgt={...wgt,...i}},IVe=async function(i,a,f,p){Wt.info("Drawing class - ",a);const v=De().flowchart??De().class,m=De().securityLevel;Wt.info("config:",v);const b=(v==null?void 0:v.nodeSpacing)??50,E=(v==null?void 0:v.rankSpacing)??50,C=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:p.db.getDirection(),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),A=p.db.getNamespaces(),P=p.db.getClasses(),F=p.db.getRelations(),j=p.db.getNotes();Wt.info(F),AVe(A,C,a,p),PRt(P,C,a,p),MVe(F,C),LVe(j,C,F.length+1,P);let R;m==="sandbox"&&(R=xr("#i"+a));const H=xr(m==="sandbox"?R.nodes()[0].contentDocument.body:"body"),Y=H.select(`[id="${a}"]`),rt=H.select("#"+a+" g");if(await A0t(rt,C,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",a),to.insertTitle(Y,"classTitleText",(v==null?void 0:v.titleTopMargin)??5,p.db.getDiagramTitle()),s9(C,Y,v==null?void 0:v.diagramPadding,v==null?void 0:v.useMaxWidth),!(v!=null&&v.htmlLabels)){const J=m==="sandbox"?R.nodes()[0].contentDocument:document,it=J.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const ft of it){const Tt=ft.getBBox(),kt=J.createElementNS("http://www.w3.org/2000/svg","rect");kt.setAttribute("rx",0),kt.setAttribute("ry",0),kt.setAttribute("width",Tt.width),kt.setAttribute("height",Tt.height),ft.insertBefore(kt,ft.firstChild)}}};function FRt(i){let a;switch(i){case 0:a="aggregation";break;case 1:a="extension";break;case 2:a="composition";break;case 3:a="dependency";break;case 4:a="lollipop";break;default:a="none"}return a}const OVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ARt,db:NK,renderer:{setConf:DVe,draw:IVe},styles:NRt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,NK.clear()}}},Symbol.toStringTag,{value:"Module"}));var mgt=function(){var i=function(Bt,vt,Ot,Vt){for(Ot=Ot||{},Vt=Bt.length;Vt--;Ot[Bt[Vt]]=vt);return Ot},a=[1,2],f=[1,3],p=[1,5],v=[1,7],m=[2,5],b=[1,15],E=[1,17],C=[1,21],A=[1,22],P=[1,23],F=[1,24],j=[1,37],R=[1,25],H=[1,26],Y=[1,27],rt=[1,28],J=[1,29],it=[1,32],ft=[1,33],Tt=[1,34],kt=[1,35],mt=[1,36],ct=[1,39],yt=[1,40],st=[1,41],xt=[1,42],ht=[1,38],dt=[1,45],Ct=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],tt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Pt=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],pt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Ft={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt",52:"direction_rl",53:"direction_lr",55:";",56:"EDGE_STATE",57:"STYLE_SEPARATOR",58:"left_of",59:"right_of",60:"open_directive",61:"type_directive",62:"arg_directive",63:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[11,3],[11,3],[12,3],[6,3],[6,5],[32,1],[32,1],[32,1],[32,1],[54,1],[54,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1],[45,1],[46,1],[49,1],[47,1]],performAction:function(vt,Ot,Vt,qe,_n,Te,Wn){var Ae=Te.length-1;switch(_n){case 4:return qe.setRootDoc(Te[Ae]),Te[Ae];case 5:this.$=[];break;case 6:Te[Ae]!="nl"&&(Te[Ae-1].push(Te[Ae]),this.$=Te[Ae-1]);break;case 7:case 8:this.$=Te[Ae];break;case 9:this.$="nl";break;case 12:this.$=Te[Ae];break;case 13:const Ee=Te[Ae-1];Ee.description=qe.trimColon(Te[Ae]),this.$=Ee;break;case 14:this.$={stmt:"relation",state1:Te[Ae-2],state2:Te[Ae]};break;case 15:const He=qe.trimColon(Te[Ae]);this.$={stmt:"relation",state1:Te[Ae-3],state2:Te[Ae-1],description:He};break;case 19:this.$={stmt:"state",id:Te[Ae-3],type:"default",description:"",doc:Te[Ae-1]};break;case 20:var ne=Te[Ae],ke=Te[Ae-2].trim();if(Te[Ae].match(":")){var Ve=Te[Ae].split(":");ne=Ve[0],ke=[ke,Ve[1]]}this.$={stmt:"state",id:ne,type:"default",description:ke};break;case 21:this.$={stmt:"state",id:Te[Ae-3],type:"default",description:Te[Ae-5],doc:Te[Ae-1]};break;case 22:this.$={stmt:"state",id:Te[Ae],type:"fork"};break;case 23:this.$={stmt:"state",id:Te[Ae],type:"join"};break;case 24:this.$={stmt:"state",id:Te[Ae],type:"choice"};break;case 25:this.$={stmt:"state",id:qe.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:Te[Ae-1].trim(),note:{position:Te[Ae-2].trim(),text:Te[Ae].trim()}};break;case 30:this.$=Te[Ae].trim(),qe.setAccTitle(this.$);break;case 31:case 32:this.$=Te[Ae].trim(),qe.setAccDescription(this.$);break;case 33:case 34:this.$={stmt:"classDef",id:Te[Ae-1].trim(),classes:Te[Ae].trim()};break;case 35:this.$={stmt:"applyClass",id:Te[Ae-1].trim(),styleClass:Te[Ae].trim()};break;case 38:qe.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:qe.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:qe.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:qe.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:Te[Ae].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:Te[Ae-2].trim(),classes:[Te[Ae].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:Te[Ae-2].trim(),classes:[Te[Ae].trim()],type:"default",description:""};break;case 50:qe.parseDirective("%%{","open_directive");break;case 51:qe.parseDirective(Te[Ae],"type_directive");break;case 52:Te[Ae]=Te[Ae].trim().replace(/'/g,'"'),qe.parseDirective(Te[Ae],"arg_directive");break;case 53:qe.parseDirective("}%%","close_directive","state");break}},table:[{3:1,4:a,5:f,6:4,7:p,45:6,60:v},{1:[3]},{3:8,4:a,5:f,6:4,7:p,45:6,60:v},{3:9,4:a,5:f,6:4,7:p,45:6,60:v},{3:10,4:a,5:f,6:4,7:p,45:6,60:v},i([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],m,{8:11}),{46:12,61:[1,13]},{61:[2,50]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:b,5:E,6:30,9:14,10:16,11:18,12:19,13:20,16:C,17:A,19:P,22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},{47:43,48:[1,44],63:dt},i([48,63],[2,51]),i(Ct,[2,6]),{6:30,10:46,11:18,12:19,13:20,16:C,17:A,19:P,22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},i(Ct,[2,8]),i(Ct,[2,9]),i(Ct,[2,10]),i(Ct,[2,11]),i(Ct,[2,12],{14:[1,47],15:[1,48]}),i(Ct,[2,16]),{18:[1,49]},i(Ct,[2,18],{20:[1,50]}),{23:[1,51]},i(Ct,[2,22]),i(Ct,[2,23]),i(Ct,[2,24]),i(Ct,[2,25]),{30:52,31:[1,53],58:[1,54],59:[1,55]},i(Ct,[2,28]),i(Ct,[2,29]),{34:[1,56]},{36:[1,57]},i(Ct,[2,32]),{39:[1,58],41:[1,59]},{43:[1,60]},i(tt,[2,44],{57:[1,61]}),i(tt,[2,45],{57:[1,62]}),i(Ct,[2,38]),i(Ct,[2,39]),i(Ct,[2,40]),i(Ct,[2,41]),i(Pt,[2,36]),{49:63,62:[1,64]},i(Pt,[2,53]),i(Ct,[2,7]),i(Ct,[2,13]),{13:65,24:j,56:ht},i(Ct,[2,17]),i(pt,m,{8:66}),{24:[1,67]},{24:[1,68]},{23:[1,69]},{24:[2,48]},{24:[2,49]},i(Ct,[2,30]),i(Ct,[2,31]),{40:[1,70]},{40:[1,71]},{44:[1,72]},{24:[1,73]},{24:[1,74]},{47:75,63:dt},{63:[2,52]},i(Ct,[2,14],{14:[1,76]}),{4:b,5:E,6:30,9:14,10:16,11:18,12:19,13:20,16:C,17:A,19:P,21:[1,77],22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},i(Ct,[2,20],{20:[1,78]}),{31:[1,79]},{24:[1,80]},i(Ct,[2,33]),i(Ct,[2,34]),i(Ct,[2,35]),i(tt,[2,46]),i(tt,[2,47]),i(Pt,[2,37]),i(Ct,[2,15]),i(Ct,[2,19]),i(pt,m,{8:81}),i(Ct,[2,26]),i(Ct,[2,27]),{4:b,5:E,6:30,9:14,10:16,11:18,12:19,13:20,16:C,17:A,19:P,21:[1,82],22:F,24:j,25:R,26:H,27:Y,28:rt,29:J,32:31,33:it,35:ft,37:Tt,38:kt,42:mt,45:6,50:ct,51:yt,52:st,53:xt,56:ht,60:v},i(Ct,[2,21])],defaultActions:{7:[2,50],8:[2,1],9:[2,2],10:[2,3],54:[2,48],55:[2,49],64:[2,52]},parseError:function(vt,Ot){if(Ot.recoverable)this.trace(vt);else{var Vt=new Error(vt);throw Vt.hash=Ot,Vt}},parse:function(vt){var Ot=this,Vt=[0],qe=[],_n=[null],Te=[],Wn=this.table,Ae="",ne=0,ke=0,Ve=2,Ee=1,He=Te.slice.call(arguments,1),Ce=Object.create(this.lexer),$e={yy:{}};for(var ye in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ye)&&($e.yy[ye]=this.yy[ye]);Ce.setInput(vt,$e.yy),$e.yy.lexer=Ce,$e.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var fn=Ce.yylloc;Te.push(fn);var Yt=Ce.options&&Ce.options.ranges;typeof $e.yy.parseError=="function"?this.parseError=$e.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mi(){var Li;return Li=qe.pop()||Ce.lex()||Ee,typeof Li!="number"&&(Li instanceof Array&&(qe=Li,Li=qe.pop()),Li=Ot.symbols_[Li]||Li),Li}for(var qt,zi,Se,ki,Ri={},pi,bi,dn,Nn;;){if(zi=Vt[Vt.length-1],this.defaultActions[zi]?Se=this.defaultActions[zi]:((qt===null||typeof qt>"u")&&(qt=Mi()),Se=Wn[zi]&&Wn[zi][qt]),typeof Se>"u"||!Se.length||!Se[0]){var Wr="";Nn=[];for(pi in Wn[zi])this.terminals_[pi]&&pi>Ve&&Nn.push("'"+this.terminals_[pi]+"'");Ce.showPosition?Wr="Parse error on line "+(ne+1)+`: +`+Ce.showPosition()+` +Expecting `+Nn.join(", ")+", got '"+(this.terminals_[qt]||qt)+"'":Wr="Parse error on line "+(ne+1)+": Unexpected "+(qt==Ee?"end of input":"'"+(this.terminals_[qt]||qt)+"'"),this.parseError(Wr,{text:Ce.match,token:this.terminals_[qt]||qt,line:Ce.yylineno,loc:fn,expected:Nn})}if(Se[0]instanceof Array&&Se.length>1)throw new Error("Parse Error: multiple actions possible at state: "+zi+", token: "+qt);switch(Se[0]){case 1:Vt.push(qt),_n.push(Ce.yytext),Te.push(Ce.yylloc),Vt.push(Se[1]),qt=null,ke=Ce.yyleng,Ae=Ce.yytext,ne=Ce.yylineno,fn=Ce.yylloc;break;case 2:if(bi=this.productions_[Se[1]][1],Ri.$=_n[_n.length-bi],Ri._$={first_line:Te[Te.length-(bi||1)].first_line,last_line:Te[Te.length-1].last_line,first_column:Te[Te.length-(bi||1)].first_column,last_column:Te[Te.length-1].last_column},Yt&&(Ri._$.range=[Te[Te.length-(bi||1)].range[0],Te[Te.length-1].range[1]]),ki=this.performAction.apply(Ri,[Ae,ke,ne,$e.yy,Se[1],_n,Te].concat(He)),typeof ki<"u")return ki;bi&&(Vt=Vt.slice(0,-1*bi*2),_n=_n.slice(0,-1*bi),Te=Te.slice(0,-1*bi)),Vt.push(this.productions_[Se[1]][0]),_n.push(Ri.$),Te.push(Ri._$),dn=Wn[Vt[Vt.length-2]][Vt[Vt.length-1]],Vt.push(dn);break;case 3:return!0}}return!0}},X=function(){var Bt={EOF:1,parseError:function(Ot,Vt){if(this.yy.parser)this.yy.parser.parseError(Ot,Vt);else throw new Error(Ot)},setInput:function(vt,Ot){return this.yy=Ot||this.yy||{},this._input=vt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var vt=this._input[0];this.yytext+=vt,this.yyleng++,this.offset++,this.match+=vt,this.matched+=vt;var Ot=vt.match(/(?:\r\n?|\n).*/g);return Ot?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),vt},unput:function(vt){var Ot=vt.length,Vt=vt.split(/(?:\r\n?|\n)/g);this._input=vt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ot),this.offset-=Ot;var qe=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Vt.length-1&&(this.yylineno-=Vt.length-1);var _n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Vt?(Vt.length===qe.length?this.yylloc.first_column:0)+qe[qe.length-Vt.length].length-Vt[0].length:this.yylloc.first_column-Ot},this.options.ranges&&(this.yylloc.range=[_n[0],_n[0]+this.yyleng-Ot]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(vt){this.unput(this.match.slice(vt))},pastInput:function(){var vt=this.matched.substr(0,this.matched.length-this.match.length);return(vt.length>20?"...":"")+vt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var vt=this.match;return vt.length<20&&(vt+=this._input.substr(0,20-vt.length)),(vt.substr(0,20)+(vt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var vt=this.pastInput(),Ot=new Array(vt.length+1).join("-");return vt+this.upcomingInput()+` +`+Ot+"^"},test_match:function(vt,Ot){var Vt,qe,_n;if(this.options.backtrack_lexer&&(_n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(_n.yylloc.range=this.yylloc.range.slice(0))),qe=vt[0].match(/(?:\r\n?|\n).*/g),qe&&(this.yylineno+=qe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:qe?qe[qe.length-1].length-qe[qe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+vt[0].length},this.yytext+=vt[0],this.match+=vt[0],this.matches=vt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(vt[0].length),this.matched+=vt[0],Vt=this.performAction.call(this,this.yy,this,Ot,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Vt)return Vt;if(this._backtrack){for(var Te in _n)this[Te]=_n[Te];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var vt,Ot,Vt,qe;this._more||(this.yytext="",this.match="");for(var _n=this._currentRules(),Te=0;Te<_n.length;Te++)if(Vt=this._input.match(this.rules[_n[Te]]),Vt&&(!Ot||Vt[0].length>Ot[0].length)){if(Ot=Vt,qe=Te,this.options.backtrack_lexer){if(vt=this.test_match(Vt,_n[Te]),vt!==!1)return vt;if(this._backtrack){Ot=!1;continue}else return!1}else if(!this.options.flex)break}return Ot?(vt=this.test_match(Ot,_n[qe]),vt!==!1?vt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ot=this.next();return Ot||this.lex()},begin:function(Ot){this.conditionStack.push(Ot)},popState:function(){var Ot=this.conditionStack.length-1;return Ot>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ot){return Ot=this.conditionStack.length-1-Math.abs(Ot||0),Ot>=0?this.conditionStack[Ot]:"INITIAL"},pushState:function(Ot){this.begin(Ot)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ot,Vt,qe,_n){switch(qe){case 0:return 41;case 1:return 50;case 2:return 51;case 3:return 52;case 4:return 53;case 5:return this.begin("open_directive"),60;case 6:return this.begin("type_directive"),61;case 7:return this.popState(),this.begin("arg_directive"),48;case 8:return this.popState(),this.popState(),63;case 9:return 62;case 10:break;case 11:break;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:break;case 17:return this.pushState("SCALE"),17;case 18:return 18;case 19:this.popState();break;case 20:return this.begin("acc_title"),33;case 21:return this.popState(),"acc_title_value";case 22:return this.begin("acc_descr"),35;case 23:return this.popState(),"acc_descr_value";case 24:this.begin("acc_descr_multiline");break;case 25:this.popState();break;case 26:return"acc_descr_multiline_value";case 27:return this.pushState("CLASSDEF"),38;case 28:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 29:return this.popState(),this.pushState("CLASSDEFID"),39;case 30:return this.popState(),40;case 31:return this.pushState("CLASS"),42;case 32:return this.popState(),this.pushState("CLASS_STYLE"),43;case 33:return this.popState(),44;case 34:return this.pushState("SCALE"),17;case 35:return 18;case 36:this.popState();break;case 37:this.pushState("STATE");break;case 38:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),25;case 39:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),26;case 40:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-10).trim(),27;case 41:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),25;case 42:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),26;case 43:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-10).trim(),27;case 44:return 50;case 45:return 51;case 46:return 52;case 47:return 53;case 48:this.pushState("STATE_STRING");break;case 49:return this.pushState("STATE_ID"),"AS";case 50:return this.popState(),"ID";case 51:this.popState();break;case 52:return"STATE_DESCR";case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;case 56:break;case 57:return this.popState(),21;case 58:break;case 59:return this.begin("NOTE"),29;case 60:return this.popState(),this.pushState("NOTE_ID"),58;case 61:return this.popState(),this.pushState("NOTE_ID"),59;case 62:this.popState(),this.pushState("FLOATING_NOTE");break;case 63:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:break;case 65:return"NOTE_TEXT";case 66:return this.popState(),"ID";case 67:return this.popState(),this.pushState("NOTE_TEXT"),24;case 68:return this.popState(),Vt.yytext=Vt.yytext.substr(2).trim(),31;case 69:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),31;case 70:return 7;case 71:return 7;case 72:return 16;case 73:return 56;case 74:return 24;case 75:return Vt.yytext=Vt.yytext.trim(),14;case 76:return 15;case 77:return 28;case 78:return 57;case 79:return 5;case 80:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[14,15],inclusive:!1},close_directive:{rules:[14,15],inclusive:!1},arg_directive:{rules:[8,9,14,15],inclusive:!1},type_directive:{rules:[7,8,14,15],inclusive:!1},open_directive:{rules:[6,14,15],inclusive:!1},struct:{rules:[14,15,27,31,37,44,45,46,47,56,57,58,59,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[66],inclusive:!1},FLOATING_NOTE:{rules:[63,64,65],inclusive:!1},NOTE_TEXT:{rules:[68,69],inclusive:!1},NOTE_ID:{rules:[67],inclusive:!1},NOTE:{rules:[60,61,62],inclusive:!1},CLASS_STYLE:{rules:[33],inclusive:!1},CLASS:{rules:[32],inclusive:!1},CLASSDEFID:{rules:[30],inclusive:!1},CLASSDEF:{rules:[28,29],inclusive:!1},acc_descr_multiline:{rules:[25,26],inclusive:!1},acc_descr:{rules:[23],inclusive:!1},acc_title:{rules:[21],inclusive:!1},SCALE:{rules:[18,19,35,36],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[50],inclusive:!1},STATE_STRING:{rules:[51,52],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[14,15,38,39,40,41,42,43,48,49,53,54,55],inclusive:!1},ID:{rules:[14,15],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,10,11,12,13,15,16,17,20,22,24,27,31,34,37,55,59,70,71,72,73,74,75,76,78,79,80],inclusive:!0}}};return Bt}();Ft.lexer=X;function Rt(){this.yy={}}return Rt.prototype=Ft,Ft.Parser=Rt,new Rt}();mgt.parser=mgt;const BRt=mgt,NVe="LR",PVe="TB",BK="state",ygt="relation",FVe="classDef",BVe="applyClass",jP="default",RRt="divider",xgt="[*]",jRt="start",$Rt=xgt,zRt="end",qRt="color",HRt="fill",RVe="bgFill",jVe=",";function VRt(){return{}}let GRt=NVe,RK=[],$P=VRt();const URt=()=>({relations:[],states:{},documents:{}});let jK={root:URt()},E0=jK.root,zP=0,WRt=0;const $Ve={LINE:0,DOTTED_LINE:1},zVe={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},$K=i=>JSON.parse(JSON.stringify(i)),qVe=function(i,a,f){J1.parseDirective(this,i,a,f)},HVe=i=>{Wt.info("Setting root doc",i),RK=i},VVe=()=>RK,zK=(i,a,f)=>{if(a.stmt===ygt)zK(i,a.state1,!0),zK(i,a.state2,!1);else if(a.stmt===BK&&(a.id==="[*]"?(a.id=f?i.id+"_start":i.id+"_end",a.start=f):a.id=a.id.trim()),a.doc){const p=[];let v=[],m;for(m=0;m0&&v.length>0){const b={stmt:BK,id:RIt(),type:"divider",doc:$K(v)};p.push($K(b)),a.doc=p}a.doc.forEach(b=>zK(a,b,!0))}},GVe=()=>(zK({id:"root"},{id:"root",doc:RK},!0),{id:"root",doc:RK}),UVe=i=>{let a;i.doc?a=i.doc:a=i,Wt.info(a),KRt(!0),Wt.info("Extract",a),a.forEach(f=>{switch(f.stmt){case BK:k9(f.id.trim(),f.type,f.doc,f.description,f.note,f.classes,f.styles,f.textStyles);break;case ygt:YRt(f.state1,f.state2,f.description);break;case FVe:XRt(f.id.trim(),f.classes);break;case BVe:_gt(f.id.trim(),f.styleClass);break}})},k9=function(i,a=jP,f=null,p=null,v=null,m=null,b=null,E=null){const C=i==null?void 0:i.trim();E0.states[C]===void 0?(Wt.info("Adding state ",C,p),E0.states[C]={id:C,descriptions:[],type:a,doc:f,note:v,classes:[],styles:[],textStyles:[]}):(E0.states[C].doc||(E0.states[C].doc=f),E0.states[C].type||(E0.states[C].type=a)),p&&(Wt.info("Setting state description",C,p),typeof p=="string"&&Tgt(C,p.trim()),typeof p=="object"&&p.forEach(A=>Tgt(C,A.trim()))),v&&(E0.states[C].note=v,E0.states[C].note.text=ui.sanitizeText(E0.states[C].note.text,De())),m&&(Wt.info("Setting state classes",C,m),(typeof m=="string"?[m]:m).forEach(P=>_gt(C,P.trim()))),b&&(Wt.info("Setting state styles",C,b),(typeof b=="string"?[b]:b).forEach(P=>nGe(C,P.trim()))),E&&(Wt.info("Setting state styles",C,b),(typeof E=="string"?[E]:E).forEach(P=>rGe(C,P.trim())))},KRt=function(i){jK={root:URt()},E0=jK.root,zP=0,$P=VRt(),i||cg()},qP=function(i){return E0.states[i]},WVe=function(){return E0.states},KVe=function(){Wt.info("Documents = ",jK)},YVe=function(){return E0.relations};function kgt(i=""){let a=i;return i===xgt&&(zP++,a=`${jRt}${zP}`),a}function Egt(i="",a=jP){return i===xgt?jRt:a}function XVe(i=""){let a=i;return i===$Rt&&(zP++,a=`${zRt}${zP}`),a}function QVe(i="",a=jP){return i===$Rt?zRt:a}function ZVe(i,a,f){let p=kgt(i.id.trim()),v=Egt(i.id.trim(),i.type),m=kgt(a.id.trim()),b=Egt(a.id.trim(),a.type);k9(p,v,i.doc,i.description,i.note,i.classes,i.styles,i.textStyles),k9(m,b,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles),E0.relations.push({id1:p,id2:m,relationTitle:ui.sanitizeText(f,De())})}const YRt=function(i,a,f){if(typeof i=="object")ZVe(i,a,f);else{const p=kgt(i.trim()),v=Egt(i),m=XVe(a.trim()),b=QVe(a);k9(p,v),k9(m,b),E0.relations.push({id1:p,id2:m,title:ui.sanitizeText(f,De())})}},Tgt=function(i,a){const f=E0.states[i],p=a.startsWith(":")?a.replace(":","").trim():a;f.descriptions.push(ui.sanitizeText(p,De()))},JVe=function(i){return i.substring(0,1)===":"?i.substr(2).trim():i.trim()},tGe=()=>(WRt++,"divider-id-"+WRt),XRt=function(i,a=""){$P[i]===void 0&&($P[i]={id:i,styles:[],textStyles:[]});const f=$P[i];a!=null&&a.split(jVe).forEach(p=>{const v=p.replace(/([^;]*);/,"$1").trim();if(p.match(qRt)){const b=v.replace(HRt,RVe).replace(qRt,HRt);f.textStyles.push(b)}f.styles.push(v)})},eGe=function(){return $P},_gt=function(i,a){i.split(",").forEach(function(f){let p=qP(f);if(p===void 0){const v=f.trim();k9(v),p=qP(v)}p.classes.push(a)})},nGe=function(i,a){const f=qP(i);f!==void 0&&f.textStyles.push(a)},rGe=function(i,a){const f=qP(i);f!==void 0&&f.textStyles.push(a)},P5={parseDirective:qVe,getConfig:()=>De().state,addState:k9,clear:KRt,getState:qP,getStates:WVe,getRelations:YVe,getClasses:eGe,getDirection:()=>GRt,addRelation:YRt,getDividerId:tGe,setDirection:i=>{GRt=i},cleanupLabel:JVe,lineType:$Ve,relationType:zVe,logDocuments:KVe,getRootDoc:VVe,setRootDoc:HVe,getRootDocV2:GVe,extract:UVe,trimColon:i=>i&&i[0]===":"?i.substr(1).trim():i.trim(),getAccTitle:ug,setAccTitle:m0,getAccDescription:hg,setAccDescription:lg,addStyleClass:XRt,setCssClass:_gt,addDescription:Tgt,setDiagramTitle:Nb,getDiagramTitle:hp},QRt=i=>` +defs #statediagram-barbEnd { + fill: ${i.transitionColor}; + stroke: ${i.transitionColor}; + } +g.stateGroup text { + fill: ${i.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${i.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${i.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; +} + +g.stateGroup line { + stroke: ${i.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${i.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${i.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${i.noteBorderColor}; + fill: ${i.noteBkgColor}; + + text { + fill: ${i.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${i.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${i.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel .label text { + fill: ${i.transitionLabelColor||i.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${i.transitionLabelColor||i.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${i.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${i.specialStateColor}; + stroke: ${i.specialStateColor}; +} + +.node .fork-join { + fill: ${i.specialStateColor}; + stroke: ${i.specialStateColor}; +} + +.node circle.state-end { + fill: ${i.innerEndBackground}; + stroke: ${i.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${i.compositeBackground||i.background}; + // stroke: ${i.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${i.stateBkg||i.mainBkg}; + stroke: ${i.stateBorder||i.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${i.mainBkg}; + stroke: ${i.stateBorder||i.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${i.lineColor}; +} + +.statediagram-cluster rect { + fill: ${i.compositeTitleBackground}; + stroke: ${i.stateBorder||i.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${i.stateLabelColor}; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${i.stateBorder||i.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${i.compositeBackground||i.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${i.altBackground?i.altBackground:"#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${i.altBackground?i.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${i.noteBkgColor}; + stroke: ${i.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${i.noteBkgColor}; + stroke: ${i.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${i.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${i.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${i.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${i.lineColor}; + stroke: ${i.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; +} +`,Cgt={},iGe=(i,a)=>{Cgt[i]=a},sGe=i=>Cgt[i],ZRt=()=>Object.keys(Cgt),aGe={get:sGe,set:iGe,keys:ZRt,size:()=>ZRt().length},oGe=i=>i.append("circle").attr("class","start-state").attr("r",De().state.sizeUnit).attr("cx",De().state.padding+De().state.sizeUnit).attr("cy",De().state.padding+De().state.sizeUnit),cGe=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",De().state.textHeight).attr("class","divider").attr("x2",De().state.textHeight*2).attr("y1",0).attr("y2",0),uGe=(i,a)=>{const f=i.append("text").attr("x",2*De().state.padding).attr("y",De().state.textHeight+2*De().state.padding).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.id),p=f.node().getBBox();return i.insert("rect",":first-child").attr("x",De().state.padding).attr("y",De().state.padding).attr("width",p.width+2*De().state.padding).attr("height",p.height+2*De().state.padding).attr("rx",De().state.radius),f},lGe=(i,a)=>{const f=function(j,R,H){const Y=j.append("tspan").attr("x",2*De().state.padding).text(R);H||Y.attr("dy",De().state.textHeight)},v=i.append("text").attr("x",2*De().state.padding).attr("y",De().state.textHeight+1.3*De().state.padding).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.descriptions[0]).node().getBBox(),m=v.height,b=i.append("text").attr("x",De().state.padding).attr("y",m+De().state.padding*.4+De().state.dividerMargin+De().state.textHeight).attr("class","state-description");let E=!0,C=!0;a.descriptions.forEach(function(j){E||(f(b,j,C),C=!1),E=!1});const A=i.append("line").attr("x1",De().state.padding).attr("y1",De().state.padding+m+De().state.dividerMargin/2).attr("y2",De().state.padding+m+De().state.dividerMargin/2).attr("class","descr-divider"),P=b.node().getBBox(),F=Math.max(P.width,v.width);return A.attr("x2",F+3*De().state.padding),i.insert("rect",":first-child").attr("x",De().state.padding).attr("y",De().state.padding).attr("width",F+2*De().state.padding).attr("height",P.height+m+2*De().state.padding).attr("rx",De().state.radius),i},hGe=(i,a,f)=>{const p=De().state.padding,v=2*De().state.padding,m=i.node().getBBox(),b=m.width,E=m.x,C=i.append("text").attr("x",0).attr("y",De().state.titleShift).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.id),P=C.node().getBBox().width+v;let F=Math.max(P,b);F===b&&(F=F+v);let j;const R=i.node().getBBox();a.doc,j=E-p,P>b&&(j=(b-F)/2+p),Math.abs(E-R.x)b&&(j=E-(P-b)/2);const H=1-De().state.textHeight;return i.insert("rect",":first-child").attr("x",j).attr("y",H).attr("class",f?"alt-composit":"composit").attr("width",F).attr("height",R.height+De().state.textHeight+De().state.titleShift+1).attr("rx","0"),C.attr("x",j+p),P<=b&&C.attr("x",E+(F-v)/2-P/2+p),i.insert("rect",":first-child").attr("x",j).attr("y",De().state.titleShift-De().state.textHeight-De().state.padding).attr("width",F).attr("height",De().state.textHeight*3).attr("rx",De().state.radius),i.insert("rect",":first-child").attr("x",j).attr("y",De().state.titleShift-De().state.textHeight-De().state.padding).attr("width",F).attr("height",R.height+3+2*De().state.textHeight).attr("rx",De().state.radius),i},fGe=i=>(i.append("circle").attr("class","end-state-outer").attr("r",De().state.sizeUnit+De().state.miniPadding).attr("cx",De().state.padding+De().state.sizeUnit+De().state.miniPadding).attr("cy",De().state.padding+De().state.sizeUnit+De().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",De().state.sizeUnit).attr("cx",De().state.padding+De().state.sizeUnit+2).attr("cy",De().state.padding+De().state.sizeUnit+2)),dGe=(i,a)=>{let f=De().state.forkWidth,p=De().state.forkHeight;if(a.parentId){let v=f;f=p,p=v}return i.append("rect").style("stroke","black").style("fill","black").attr("width",f).attr("height",p).attr("x",De().state.padding).attr("y",De().state.padding)},gGe=(i,a,f,p)=>{let v=0;const m=p.append("text");m.style("text-anchor","start"),m.attr("class","noteText");let b=i.replace(/\r\n/g,"
");b=b.replace(/\n/g,"
");const E=b.split(ui.lineBreakRegex);let C=1.25*De().state.noteMargin;for(const A of E){const P=A.trim();if(P.length>0){const F=m.append("tspan");if(F.text(P),C===0){const j=F.node().getBBox();C+=j.height}v+=C,F.attr("x",a+De().state.noteMargin),F.attr("y",f+v+1.25*De().state.noteMargin)}}return{textWidth:m.node().getBBox().width,textHeight:v}},pGe=(i,a)=>{a.attr("class","state-note");const f=a.append("rect").attr("x",0).attr("y",De().state.padding),p=a.append("g"),{textWidth:v,textHeight:m}=gGe(i,0,0,p);return f.attr("height",m+2*De().state.noteMargin),f.attr("width",v+De().state.noteMargin*2),f},JRt=function(i,a){const f=a.id,p={id:f,label:a.id,width:0,height:0},v=i.append("g").attr("id",f).attr("class","stateGroup");a.type==="start"&&oGe(v),a.type==="end"&&fGe(v),(a.type==="fork"||a.type==="join")&&dGe(v,a),a.type==="note"&&pGe(a.note.text,v),a.type==="divider"&&cGe(v),a.type==="default"&&a.descriptions.length===0&&uGe(v,a),a.type==="default"&&a.descriptions.length>0&&lGe(v,a);const m=v.node().getBBox();return p.width=m.width+2*De().state.padding,p.height=m.height+2*De().state.padding,aGe.set(f,p),p};let tjt=0;const bGe=function(i,a,f){const p=function(C){switch(C){case P5.relationType.AGGREGATION:return"aggregation";case P5.relationType.EXTENSION:return"extension";case P5.relationType.COMPOSITION:return"composition";case P5.relationType.DEPENDENCY:return"dependency"}};a.points=a.points.filter(C=>!Number.isNaN(C.y));const v=a.points,m=YE().x(function(C){return C.x}).y(function(C){return C.y}).curve(MA),b=i.append("path").attr("d",m(v)).attr("id","edge"+tjt).attr("class","transition");let E="";if(De().state.arrowMarkerAbsolute&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\("),E=E.replace(/\)/g,"\\)")),b.attr("marker-end","url("+E+"#"+p(P5.relationType.DEPENDENCY)+"End)"),f.title!==void 0){const C=i.append("g").attr("class","stateLabel"),{x:A,y:P}=to.calcLabelPosition(a.points),F=ui.getRows(f.title);let j=0;const R=[];let H=0,Y=0;for(let it=0;it<=F.length;it++){const ft=C.append("text").attr("text-anchor","middle").text(F[it]).attr("x",A).attr("y",P+j),Tt=ft.node().getBBox();H=Math.max(H,Tt.width),Y=Math.min(Y,Tt.x),Wt.info(Tt.x,A,P+j),j===0&&(j=ft.node().getBBox().height,Wt.info("Title height",j,P)),R.push(ft)}let rt=j*F.length;if(F.length>1){const it=(F.length-1)*j*.5;R.forEach((ft,Tt)=>ft.attr("y",P+Tt*j-it)),rt=j*F.length}const J=C.node().getBBox();C.insert("rect",":first-child").attr("class","box").attr("x",A-H/2-De().state.padding/2).attr("y",P-rt/2-De().state.padding/2-3.5).attr("width",H+De().state.padding).attr("height",rt+De().state.padding),Wt.info(J)}tjt++};let $b;const Sgt={},vGe=function(){},wGe=function(i){i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},mGe=function(i,a,f,p){$b=De().state;const v=De().securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const b=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body"),E=v==="sandbox"?m.nodes()[0].contentDocument:document;Wt.debug("Rendering diagram "+i);const C=b.select(`[id='${a}']`);wGe(C);const A=p.db.getRootDoc();ejt(A,C,void 0,!1,b,E,p);const P=$b.padding,F=C.node().getBBox(),j=F.width+P*2,R=F.height+P*2,H=j*1.75;og(C,R,H,$b.useMaxWidth),C.attr("viewBox",`${F.x-$b.padding} ${F.y-$b.padding} `+j+" "+R)},yGe=i=>i?i.length*$b.fontSizeFactor:1,ejt=(i,a,f,p,v,m,b)=>{const E=new l1({compound:!0,multigraph:!0});let C,A=!0;for(C=0;C{const Tt=ft.parentElement;let kt=0,mt=0;Tt&&(Tt.parentElement&&(kt=Tt.parentElement.getBBox().width),mt=parseInt(Tt.getAttribute("data-x-shift"),10),Number.isNaN(mt)&&(mt=0)),ft.setAttribute("x1",0-mt+8),ft.setAttribute("x2",kt-mt-8)})):Wt.debug("No Node "+J+": "+JSON.stringify(E.node(J)))});let Y=H.getBBox();E.edges().forEach(function(J){J!==void 0&&E.edge(J)!==void 0&&(Wt.debug("Edge "+J.v+" -> "+J.w+": "+JSON.stringify(E.edge(J))),bGe(a,E.edge(J),E.edge(J).relation))}),Y=H.getBBox();const rt={id:f||"root",label:f||"root",width:0,height:0};return rt.width=Y.width+2*$b.padding,rt.height=Y.height+2*$b.padding,Wt.debug("Doc rendered",rt,E),rt},xGe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:BRt,db:P5,renderer:{setConf:vGe,draw:mGe},styles:QRt,init:i=>{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,P5.clear()}}},Symbol.toStringTag,{value:"Module"})),qK="rect",Agt="rectWithTitle",kGe="start",EGe="end",TGe="divider",_Ge="roundedWithTitle",CGe="note",SGe="noteGroup",gL="statediagram",AGe=`${gL}-state`,njt="transition",LGe="note",MGe=`${njt} note-edge`,DGe=`${gL}-${LGe}`,IGe=`${gL}-cluster`,OGe=`${gL}-cluster-alt`,rjt="parent",ijt="note",NGe="state",Lgt="----",PGe=`${Lgt}${ijt}`,sjt=`${Lgt}${rjt}`,ajt="fill:none",ojt="fill: #333",cjt="c",ujt="text",ljt="normal";let HK={},hk=0;const FGe=function(i){const a=Object.keys(i);for(const f of a)i[f]},BGe=function(i,a){return a.db.extract(a.db.getRootDocV2()),a.db.getClasses()};function RGe(i){return i==null?"":i.classes?i.classes.join(" "):""}function Mgt(i="",a=0,f="",p=Lgt){const v=f!==null&&f.length>0?`${p}${f}`:"";return`${NGe}-${i}${v}-${a}`}const HP=(i,a,f,p,v,m)=>{const b=f.id,E=RGe(p[b]);if(b!=="root"){let C=qK;f.start===!0&&(C=kGe),f.start===!1&&(C=EGe),f.type!==jP&&(C=f.type),HK[b]||(HK[b]={id:b,shape:C,description:ui.sanitizeText(b,De()),classes:`${E} ${AGe}`});const A=HK[b];f.description&&(Array.isArray(A.description)?(A.shape=Agt,A.description.push(f.description)):A.description.length>0?(A.shape=Agt,A.description===b?A.description=[f.description]:A.description=[A.description,f.description]):(A.shape=qK,A.description=f.description),A.description=ui.sanitizeTextOrArray(A.description,De())),A.description.length===1&&A.shape===Agt&&(A.shape=qK),!A.type&&f.doc&&(Wt.info("Setting cluster for ",b,Dgt(f)),A.type="group",A.dir=Dgt(f),A.shape=f.type===RRt?TGe:_Ge,A.classes=A.classes+" "+IGe+" "+(m?OGe:""));const P={labelStyle:"",shape:A.shape,labelText:A.description,classes:A.classes,style:"",id:b,dir:A.dir,domId:Mgt(b,hk),type:A.type,padding:15};if(P.centerLabel=!0,f.note){const F={labelStyle:"",shape:CGe,labelText:f.note.text,classes:DGe,style:"",id:b+PGe+"-"+hk,domId:Mgt(b,hk,ijt),type:A.type,padding:15},j={labelStyle:"",shape:SGe,labelText:f.note.text,classes:A.classes,style:"",id:b+sjt,domId:Mgt(b,hk,rjt),type:"group",padding:0};hk++;const R=b+sjt;i.setNode(R,j),i.setNode(F.id,F),i.setNode(b,P),i.setParent(b,R),i.setParent(F.id,R);let H=b,Y=F.id;f.note.position==="left of"&&(H=F.id,Y=b),i.setEdge(H,Y,{arrowhead:"none",arrowType:"",style:ajt,labelStyle:"",classes:MGe,arrowheadStyle:ojt,labelpos:cjt,labelType:ujt,thickness:ljt})}else i.setNode(b,P)}a&&a.id!=="root"&&(Wt.trace("Setting node ",b," to be child of its parent ",a.id),i.setParent(b,a.id)),f.doc&&(Wt.trace("Adding nodes children "),jGe(i,f,f.doc,p,v,!m))},jGe=(i,a,f,p,v,m)=>{Wt.trace("items",f),f.forEach(b=>{switch(b.stmt){case BK:HP(i,a,b,p,v,m);break;case jP:HP(i,a,b,p,v,m);break;case ygt:{HP(i,a,b.state1,p,v,m),HP(i,a,b.state2,p,v,m);const E={id:"edge"+hk,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:ajt,labelStyle:"",label:ui.sanitizeText(b.description,De()),arrowheadStyle:ojt,labelpos:cjt,labelType:ujt,thickness:ljt,classes:njt};i.setEdge(b.state1.id,b.state2.id,E,hk),hk++}break}})},Dgt=(i,a=PVe)=>{let f=a;if(i.doc)for(let p=0;p{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,P5.clear()}}},Symbol.toStringTag,{value:"Module"}));var Igt=function(){var i=function(Y,rt,J,it){for(J=J||{},it=Y.length;it--;J[Y[it]]=rt);return J},a=[1,2],f=[1,5],p=[6,9,11,17,18,20,22,23,24,26],v=[1,15],m=[1,16],b=[1,17],E=[1,18],C=[1,19],A=[1,20],P=[1,24],F=[4,6,9,11,17,18,20,22,23,24,26],j={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(rt,J,it,ft,Tt,kt,mt){var ct=kt.length-1;switch(Tt){case 1:return kt[ct-1];case 3:this.$=[];break;case 4:kt[ct-1].push(kt[ct]),this.$=kt[ct-1];break;case 5:case 6:this.$=kt[ct];break;case 7:case 8:this.$=[];break;case 11:ft.setDiagramTitle(kt[ct].substr(6)),this.$=kt[ct].substr(6);break;case 12:this.$=kt[ct].trim(),ft.setAccTitle(this.$);break;case 13:case 14:this.$=kt[ct].trim(),ft.setAccDescription(this.$);break;case 15:ft.addSection(kt[ct].substr(8)),this.$=kt[ct].substr(8);break;case 16:ft.addTask(kt[ct-1],kt[ct]),this.$="task";break;case 18:ft.parseDirective("%%{","open_directive");break;case 19:ft.parseDirective(kt[ct],"type_directive");break;case 20:kt[ct]=kt[ct].trim().replace(/'/g,'"'),ft.parseDirective(kt[ct],"arg_directive");break;case 21:ft.parseDirective("}%%","close_directive","journey");break}},table:[{3:1,4:a,7:3,12:4,26:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,26:f},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:v,18:m,20:b,22:E,23:C,24:A,26:f},{1:[2,2]},{14:22,15:[1,23],29:P},i([15,29],[2,19]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:21,10:25,12:4,17:v,18:m,20:b,22:E,23:C,24:A,26:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),{19:[1,26]},{21:[1,27]},i(p,[2,14]),i(p,[2,15]),{25:[1,28]},i(p,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},i(p,[2,5]),i(p,[2,12]),i(p,[2,13]),i(p,[2,16]),i(F,[2,9]),{14:32,29:P},{29:[2,20]},{11:[1,33]},i(F,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(rt,J){if(J.recoverable)this.trace(rt);else{var it=new Error(rt);throw it.hash=J,it}},parse:function(rt){var J=this,it=[0],ft=[],Tt=[null],kt=[],mt=this.table,ct="",yt=0,st=0,xt=2,ht=1,dt=kt.slice.call(arguments,1),Ct=Object.create(this.lexer),tt={yy:{}};for(var Pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pt)&&(tt.yy[Pt]=this.yy[Pt]);Ct.setInput(rt,tt.yy),tt.yy.lexer=Ct,tt.yy.parser=this,typeof Ct.yylloc>"u"&&(Ct.yylloc={});var pt=Ct.yylloc;kt.push(pt);var Ft=Ct.options&&Ct.options.ranges;typeof tt.yy.parseError=="function"?this.parseError=tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function X(){var ne;return ne=ft.pop()||Ct.lex()||ht,typeof ne!="number"&&(ne instanceof Array&&(ft=ne,ne=ft.pop()),ne=J.symbols_[ne]||ne),ne}for(var Rt,Bt,vt,Ot,Vt={},qe,_n,Te,Wn;;){if(Bt=it[it.length-1],this.defaultActions[Bt]?vt=this.defaultActions[Bt]:((Rt===null||typeof Rt>"u")&&(Rt=X()),vt=mt[Bt]&&mt[Bt][Rt]),typeof vt>"u"||!vt.length||!vt[0]){var Ae="";Wn=[];for(qe in mt[Bt])this.terminals_[qe]&&qe>xt&&Wn.push("'"+this.terminals_[qe]+"'");Ct.showPosition?Ae="Parse error on line "+(yt+1)+`: +`+Ct.showPosition()+` +Expecting `+Wn.join(", ")+", got '"+(this.terminals_[Rt]||Rt)+"'":Ae="Parse error on line "+(yt+1)+": Unexpected "+(Rt==ht?"end of input":"'"+(this.terminals_[Rt]||Rt)+"'"),this.parseError(Ae,{text:Ct.match,token:this.terminals_[Rt]||Rt,line:Ct.yylineno,loc:pt,expected:Wn})}if(vt[0]instanceof Array&&vt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bt+", token: "+Rt);switch(vt[0]){case 1:it.push(Rt),Tt.push(Ct.yytext),kt.push(Ct.yylloc),it.push(vt[1]),Rt=null,st=Ct.yyleng,ct=Ct.yytext,yt=Ct.yylineno,pt=Ct.yylloc;break;case 2:if(_n=this.productions_[vt[1]][1],Vt.$=Tt[Tt.length-_n],Vt._$={first_line:kt[kt.length-(_n||1)].first_line,last_line:kt[kt.length-1].last_line,first_column:kt[kt.length-(_n||1)].first_column,last_column:kt[kt.length-1].last_column},Ft&&(Vt._$.range=[kt[kt.length-(_n||1)].range[0],kt[kt.length-1].range[1]]),Ot=this.performAction.apply(Vt,[ct,st,yt,tt.yy,vt[1],Tt,kt].concat(dt)),typeof Ot<"u")return Ot;_n&&(it=it.slice(0,-1*_n*2),Tt=Tt.slice(0,-1*_n),kt=kt.slice(0,-1*_n)),it.push(this.productions_[vt[1]][0]),Tt.push(Vt.$),kt.push(Vt._$),Te=mt[it[it.length-2]][it[it.length-1]],it.push(Te);break;case 3:return!0}}return!0}},R=function(){var Y={EOF:1,parseError:function(J,it){if(this.yy.parser)this.yy.parser.parseError(J,it);else throw new Error(J)},setInput:function(rt,J){return this.yy=J||this.yy||{},this._input=rt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var rt=this._input[0];this.yytext+=rt,this.yyleng++,this.offset++,this.match+=rt,this.matched+=rt;var J=rt.match(/(?:\r\n?|\n).*/g);return J?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),rt},unput:function(rt){var J=rt.length,it=rt.split(/(?:\r\n?|\n)/g);this._input=rt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var ft=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),it.length-1&&(this.yylineno-=it.length-1);var Tt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:it?(it.length===ft.length?this.yylloc.first_column:0)+ft[ft.length-it.length].length-it[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[Tt[0],Tt[0]+this.yyleng-J]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(rt){this.unput(this.match.slice(rt))},pastInput:function(){var rt=this.matched.substr(0,this.matched.length-this.match.length);return(rt.length>20?"...":"")+rt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rt=this.match;return rt.length<20&&(rt+=this._input.substr(0,20-rt.length)),(rt.substr(0,20)+(rt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rt=this.pastInput(),J=new Array(rt.length+1).join("-");return rt+this.upcomingInput()+` +`+J+"^"},test_match:function(rt,J){var it,ft,Tt;if(this.options.backtrack_lexer&&(Tt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Tt.yylloc.range=this.yylloc.range.slice(0))),ft=rt[0].match(/(?:\r\n?|\n).*/g),ft&&(this.yylineno+=ft.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ft?ft[ft.length-1].length-ft[ft.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rt[0].length},this.yytext+=rt[0],this.match+=rt[0],this.matches=rt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(rt[0].length),this.matched+=rt[0],it=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),it)return it;if(this._backtrack){for(var kt in Tt)this[kt]=Tt[kt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var rt,J,it,ft;this._more||(this.yytext="",this.match="");for(var Tt=this._currentRules(),kt=0;ktJ[0].length)){if(J=it,ft=kt,this.options.backtrack_lexer){if(rt=this.test_match(it,Tt[kt]),rt!==!1)return rt;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(rt=this.test_match(J,Tt[ft]),rt!==!1?rt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var J=this.next();return J||this.lex()},begin:function(J){this.conditionStack.push(J)},popState:function(){var J=this.conditionStack.length-1;return J>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},pushState:function(J){this.begin(J)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(J,it,ft,Tt){switch(ft){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};return Y}();j.lexer=R;function H(){this.yy={}}return H.prototype=j,j.Parser=H,new H}();Igt.parser=Igt;const zGe=Igt;let pL="";const Ogt=[],VP=[],GP=[],qGe=function(i,a,f){J1.parseDirective(this,i,a,f)},HGe=function(){Ogt.length=0,VP.length=0,pL="",GP.length=0,cg()},VGe=function(i){pL=i,Ogt.push(i)},GGe=function(){return Ogt},UGe=function(){let i=hjt();const a=100;let f=0;for(;!i&&f{f.people&&i.push(...f.people)}),[...new Set(i)].sort()},KGe=function(i,a){const f=a.substr(1).split(":");let p=0,v=[];f.length===1?(p=Number(f[0]),v=[]):(p=Number(f[0]),v=f[1].split(","));const m=v.map(E=>E.trim()),b={section:pL,type:pL,people:m,task:i,score:p};GP.push(b)},YGe=function(i){const a={section:pL,type:pL,description:i,task:i,classes:[]};VP.push(a)},hjt=function(){const i=function(f){return GP[f].processed};let a=!0;for(const[f,p]of GP.entries())i(f),a=a&&p.processed;return a},fjt={parseDirective:qGe,getConfig:()=>De().journey,clear:HGe,setDiagramTitle:Nb,getDiagramTitle:hp,setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addSection:VGe,getSections:GGe,getTasks:UGe,addTask:KGe,addTaskOrg:YGe,getActors:function(){return WGe()}},XGe=i=>`.label { + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + color: ${i.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${i.textColor} + } + + .legend { + fill: ${i.textColor}; + } + + .label text { + fill: #333; + } + .label { + color: ${i.textColor} + } + + .face { + ${i.faceColor?`fill: ${i.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${i.titleColor}; + } + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${i.fillType0?`fill: ${i.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${i.fillType0?`fill: ${i.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${i.fillType0?`fill: ${i.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${i.fillType0?`fill: ${i.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${i.fillType0?`fill: ${i.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${i.fillType0?`fill: ${i.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${i.fillType0?`fill: ${i.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${i.fillType0?`fill: ${i.fillType7}`:""}; + } + + .actor-0 { + ${i.actor0?`fill: ${i.actor0}`:""}; + } + .actor-1 { + ${i.actor1?`fill: ${i.actor1}`:""}; + } + .actor-2 { + ${i.actor2?`fill: ${i.actor2}`:""}; + } + .actor-3 { + ${i.actor3?`fill: ${i.actor3}`:""}; + } + .actor-4 { + ${i.actor4?`fill: ${i.actor4}`:""}; + } + .actor-5 { + ${i.actor5?`fill: ${i.actor5}`:""}; + } +`,Ngt=function(i,a){return WW(i,a)},QGe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function m(C){const A=LA().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(C){const A=LA().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(C){C.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?m(v):a.score<3?b(v):E(v),p},djt=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},gjt=function(i,a){return sDe(i,a)},ZGe=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");p.attr("points",f(a.x,a.y,50,20,7)),p.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,gjt(i,a)},JGe=function(i,a,f){const p=i.append("g"),v=u9();v.x=a.x,v.y=a.y,v.fill=a.fill,v.width=f.width*a.taskCount+f.diagramMarginX*(a.taskCount-1),v.height=f.height,v.class="journey-section section-type-"+a.num,v.rx=3,v.ry=3,Ngt(p,v),bjt(f)(a.text,p,v.x,v.y,v.width,v.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let pjt=-1;const tUe=function(i,a,f){const p=a.x+f.width/2,v=i.append("g");pjt++;const m=300+5*30;v.append("line").attr("id","task"+pjt).attr("x1",p).attr("y1",a.y).attr("x2",p).attr("y2",m).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),QGe(v,{cx:p,cy:300+(5-a.score)*30,score:a.score});const b=u9();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,Ngt(v,b);let E=a.x+14;a.people.forEach(C=>{const A=a.actors[C].color,P={cx:E,cy:a.y,r:7,fill:A,stroke:"#000",title:C,pos:a.actors[C].position};djt(v,P),E+=10}),bjt(f)(a.task,v,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},eUe=function(i,a){pNt(i,a)},bjt=function(){function i(v,m,b,E,C,A,P,F){const j=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("font-color",F).style("text-anchor","middle").text(v);p(j,P)}function a(v,m,b,E,C,A,P,F,j){const{taskFontSize:R,taskFontFamily:H}=F,Y=v.split(//gi);for(let rt=0;rt{const v=F5[p].color,m={cx:20,cy:f,r:7,fill:v,stroke:"#000",pos:F5[p].position};UP.drawCircle(i,m);const b={x:40,y:f+7,fill:"#666",text:p,textMargin:a.boxTextMargin|5};UP.drawText(i,b),f+=20})}const VK=De().journey,E9=VK.leftMargin,iUe=function(i,a,f,p){const v=De().journey,m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body");iv.init();const C=E.select("#"+a);UP.initGraphics(C);const A=p.db.getTasks(),P=p.db.getDiagramTitle(),F=p.db.getActors();for(const J in F5)delete F5[J];let j=0;F.forEach(J=>{F5[J]={color:v.actorColours[j%v.actorColours.length],position:j},j++}),rUe(C),iv.insert(0,0,E9,Object.keys(F5).length*50),sUe(C,A,0);const R=iv.getBounds();P&&C.append("text").text(P).attr("x",E9).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const H=R.stopy-R.starty+2*v.diagramMarginY,Y=E9+R.stopx+2*v.diagramMarginX;og(C,H,Y,v.useMaxWidth),C.append("line").attr("x1",E9).attr("y1",v.height*4).attr("x2",Y-E9-4).attr("y2",v.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const rt=P?70:0;C.attr("viewBox",`${R.startx} -25 ${Y} ${H+rt}`),C.attr("preserveAspectRatio","xMinYMin meet"),C.attr("height",H+rt+25)},iv={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},updateVal:function(i,a,f,p){i[a]===void 0?i[a]=f:i[a]=p(f,i[a])},updateBounds:function(i,a,f,p){const v=De().journey,m=this;let b=0;function E(C){return function(P){b++;const F=m.sequenceItems.length-b+1;m.updateVal(P,"starty",a-F*v.boxMargin,Math.min),m.updateVal(P,"stopy",p+F*v.boxMargin,Math.max),m.updateVal(iv.data,"startx",i-F*v.boxMargin,Math.min),m.updateVal(iv.data,"stopx",f+F*v.boxMargin,Math.max),C!=="activation"&&(m.updateVal(P,"startx",i-F*v.boxMargin,Math.min),m.updateVal(P,"stopx",f+F*v.boxMargin,Math.max),m.updateVal(iv.data,"starty",a-F*v.boxMargin,Math.min),m.updateVal(iv.data,"stopy",p+F*v.boxMargin,Math.max))}}this.sequenceItems.forEach(E())},insert:function(i,a,f,p){const v=Math.min(i,f),m=Math.max(i,f),b=Math.min(a,p),E=Math.max(a,p);this.updateVal(iv.data,"startx",v,Math.min),this.updateVal(iv.data,"starty",b,Math.min),this.updateVal(iv.data,"stopx",m,Math.max),this.updateVal(iv.data,"stopy",E,Math.max),this.updateBounds(v,b,m,E)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},Pgt=VK.sectionFills,vjt=VK.sectionColours,sUe=function(i,a,f){const p=De().journey;let v="";const m=p.height*2+p.diagramMarginY,b=f+m;let E=0,C="#CCC",A="black",P=0;for(const[F,j]of a.entries()){if(v!==j.section){C=Pgt[E%Pgt.length],P=E%Pgt.length,A=vjt[E%vjt.length];let H=0;const Y=j.section;for(let J=F;J(F5[Y]&&(H[Y]=F5[Y]),H),{});j.x=F*p.taskMargin+F*p.width+E9,j.y=b,j.width=p.diagramMarginX,j.height=p.diagramMarginY,j.colour=A,j.fill=C,j.num=P,j.actors=R,UP.drawTask(i,j,p),iv.insert(j.x,j.y,j.x+j.width+p.taskMargin,300+5*30)}},wjt={setConf:nUe,draw:iUe},aUe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:zGe,db:fjt,renderer:wjt,styles:XGe,init:i=>{wjt.setConf(i.journey),fjt.clear()}}},Symbol.toStringTag,{value:"Module"})),oUe=(i,a,f)=>{const{parentById:p}=f,v=new Set;let m=i;for(;m;){if(v.add(m),m===a)return m;m=p[m]}for(m=a;m;){if(v.has(m))return m;m=p[m]}return"root"};function GK(i){throw new Error('Could not dynamically require "'+i+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var mjt={exports:{}};(function(i,a){(function(f){i.exports=f()})(function(){return function(){function f(p,v,m){function b(A,P){if(!v[A]){if(!p[A]){var F=typeof GK=="function"&&GK;if(!P&&F)return F(A,!0);if(E)return E(A,!0);var j=new Error("Cannot find module '"+A+"'");throw j.code="MODULE_NOT_FOUND",j}var R=v[A]={exports:{}};p[A][0].call(R.exports,function(H){var Y=p[A][1][H];return b(Y||H)},R,R.exports,f,p,v,m)}return v[A].exports}for(var E=typeof GK=="function"&&GK,C=0;C0&&arguments[0]!==void 0?arguments[0]:{},j=F.defaultLayoutOptions,R=j===void 0?{}:j,H=F.algorithms,Y=H===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:H,rt=F.workerFactory,J=F.workerUrl;if(b(this,A),this.defaultLayoutOptions=R,this.initialized=!1,typeof J>"u"&&typeof rt>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var it=rt;typeof J<"u"&&typeof rt>"u"&&(it=function(kt){return new Worker(kt)});var ft=it(J);if(typeof ft.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new C(ft),this.worker.postMessage({cmd:"register",algorithms:Y}).then(function(Tt){return P.initialized=!0}).catch(console.err)}return m(A,[{key:"layout",value:function(F){var j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R=j.layoutOptions,H=R===void 0?this.defaultLayoutOptions:R,Y=j.logging,rt=Y===void 0?!1:Y,J=j.measureExecutionTime,it=J===void 0?!1:J;return F?this.worker.postMessage({cmd:"layout",graph:F,layoutOptions:H,options:{logging:rt,measureExecutionTime:it}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),A}();v.default=E;var C=function(){function A(P){var F=this;if(b(this,A),P===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=P,this.worker.onmessage=function(j){setTimeout(function(){F.receive(F,j)},0)}}return m(A,[{key:"postMessage",value:function(F){var j=this.id||0;this.id=j+1,F.id=j;var R=this;return new Promise(function(H,Y){R.resolvers[j]=function(rt,J){rt?(R.convertGwtStyleError(rt),Y(rt)):H(J)},R.worker.postMessage(F)})}},{key:"receive",value:function(F,j){var R=j.data,H=F.resolvers[R.id];H&&(delete F.resolvers[R.id],R.error?H(R.error):H(null,R.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(F){if(F){var j=F.__java$exception;j&&(j.cause&&j.cause.backingJsObject&&(F.cause=j.cause.backingJsObject,this.convertGwtStyleError(F.cause)),delete F.__java$exception)}}}]),A}()},{}],2:[function(f,p,v){(function(m){(function(){var b;typeof window<"u"?b=window:typeof m<"u"?b=m:typeof self<"u"&&(b=self);var E;function C(){}function A(){}function P(){}function F(){}function j(){}function R(){}function H(){}function Y(){}function rt(){}function J(){}function it(){}function ft(){}function Tt(){}function kt(){}function mt(){}function ct(){}function yt(){}function st(){}function xt(){}function ht(){}function dt(){}function Ct(){}function tt(){}function Pt(){}function pt(){}function Ft(){}function X(){}function Rt(){}function Bt(){}function vt(){}function Ot(){}function Vt(){}function qe(){}function _n(){}function Te(){}function Wn(){}function Ae(){}function ne(){}function ke(){}function Ve(){}function Ee(){}function He(){}function Ce(){}function $e(){}function ye(){}function fn(){}function Yt(){}function Mi(){}function qt(){}function zi(){}function Se(){}function ki(){}function Ri(){}function pi(){}function bi(){}function dn(){}function Nn(){}function Wr(){}function Li(){}function is(){}function Ts(){}function Aa(){}function Xi(){}function Ga(){}function _r(){}function qr(){}function Oi(){}function gr(){}function Js(){}function Vn(){}function Xc(){}function Er(){}function Mc(){}function bp(){}function fm(){}function T0(){}function Fd(){}function No(){}function ta(){}function bu(){}function Pu(){}function lo(){}function mo(){}function Os(){}function Tl(){}function Fu(){}function zo(){}function nd(){}function sf(){}function ll(){}function Vi(){}function Ke(){}function kr(){}function ni(){}function eo(){}function Dc(){}function Ju(){}function Qo(){}function jf(){}function rh(){}function dm(){}function S9(){}function x3(){}function zb(){}function os(){}function As(){}function ma(){}function vi(){}function Qc(){}function me(){}function bg(){}function Oe(){}function af(){}function fk(){}function k3(){}function gm(){}function A9(){}function au(){}function vg(){}function dk(){}function vp(){}function L9(){}function M9(){}function $f(){}function ov(){}function Bd(){}function E3(){}function cv(){}function uv(){}function wg(){}function R5(){}function ou(){}function j5(){}function no(){}function JK(){}function qb(){}function tY(){}function D9(){}function eY(){}function KP(){}function zf(){}function pm(){}function mL(){}function YP(){}function wp(){}function bm(){}function nY(){}function Hb(){}function rY(){}function iY(){}function $5(){}function I9(){}function XP(){}function gk(){}function sY(){}function pk(){}function aY(){}function oY(){}function cY(){}function uY(){}function lY(){}function hY(){}function fY(){}function dY(){}function gY(){}function pY(){}function bY(){}function yL(){}function vY(){}function wY(){}function O9(){}function QP(){}function z5(){}function mY(){}function yY(){}function xY(){}function kY(){}function EY(){}function N9(){}function xL(){}function ZP(){}function T3(){}function _3(){}function TY(){}function of(){}function q5(){}function _Y(){}function bk(){}function Rd(){}function CY(){}function SY(){}function AY(){}function LY(){}function P9(){}function kL(){}function JP(){}function EL(){}function H5(){}function MY(){}function tF(){}function eF(){}function DY(){}function IY(){}function OY(){}function NY(){}function PY(){}function FY(){}function jd(){}function lv(){}function BY(){}function nF(){}function rF(){}function RY(){}function C3(){}function vk(){}function TL(){}function vm(){}function wk(){}function jY(){}function F9(){}function rd(){}function iF(){}function _L(){}function mk(){}function CL(){}function sF(){}function $Y(){}function SL(){}function zY(){}function qY(){}function aF(){}function V5(){}function oF(){}function G5(){}function HY(){}function AL(){}function VY(){}function GY(){}function UY(){}function WY(){}function cF(){}function KY(){}function YY(){}function XY(){}function uF(){}function QY(){}function ZY(){}function JY(){}function lF(){}function tX(){}function eX(){}function hF(){}function fF(){}function dF(){}function nX(){}function rX(){}function yk(){}function U5(){}function B9(){}function iX(){}function LL(){}function R9(){}function ML(){}function gF(){}function pF(){}function sX(){}function aX(){}function oX(){}function bF(){}function vF(){}function cX(){}function uX(){}function lX(){}function hX(){}function fX(){}function wF(){}function dX(){}function gX(){}function pX(){}function bX(){}function mF(){}function j9(){}function vX(){}function wX(){}function yF(){}function mX(){}function yX(){}function xX(){}function kX(){}function EX(){}function TX(){}function xF(){}function _X(){}function kF(){}function CX(){}function SX(){}function AX(){}function $9(){}function LX(){}function z9(){}function MX(){}function EF(){}function TF(){}function _F(){}function CF(){}function hv(){}function SF(){}function AF(){}function LF(){}function MF(){}function DX(){}function W5(){}function q9(){}function S3(){}function IX(){}function OX(){}function H9(){}function NX(){}function PX(){}function FX(){}function BX(){}function RX(){}function jX(){}function $X(){}function zX(){}function qX(){}function HX(){}function VX(){}function DL(){}function DF(){}function GX(){}function UX(){}function WX(){}function IF(){}function KX(){}function YX(){}function XX(){}function QX(){}function ZX(){}function JX(){}function OF(){}function NF(){}function tQ(){}function PF(){}function FF(){}function eQ(){}function nQ(){}function rQ(){}function IL(){}function iQ(){}function xk(){}function sQ(){}function aQ(){}function oQ(){}function BF(){}function cQ(){}function uQ(){}function lQ(){}function hQ(){}function fQ(){}function dQ(){}function gQ(){}function pQ(){}function bQ(){}function vQ(){}function wQ(){}function mQ(){}function K5(){}function RF(){}function yQ(){}function xQ(){}function kQ(){}function jF(){}function EQ(){}function V9(){}function TQ(){}function _Q(){}function CQ(){}function SQ(){}function AQ(){}function LQ(){}function MQ(){}function DQ(){}function IQ(){}function OQ(){}function Y5(){}function NQ(){}function PQ(){}function FQ(){}function BQ(){}function RQ(){}function jQ(){}function $Q(){}function zQ(){}function G9(){}function qQ(){}function HQ(){}function VQ(){}function GQ(){}function UQ(){}function WQ(){}function KQ(){}function YQ(){}function X5(){}function $F(){}function XQ(){}function OL(){}function QQ(){}function ZQ(){}function JQ(){}function tZ(){}function eZ(){}function nZ(){}function rZ(){}function zF(){}function iZ(){}function qF(){}function sZ(){}function HF(){}function VF(){}function GF(){}function aZ(){}function oZ(){}function U9(){}function NL(){}function W9(){}function cZ(){}function uZ(){}function PL(){}function lZ(){}function hZ(){}function UF(){}function fZ(){}function dZ(){}function gZ(){}function pZ(){}function bZ(){}function vZ(){}function wZ(){}function mZ(){}function yZ(){}function xZ(){}function mg(){}function kZ(){}function wm(){}function WF(){}function EZ(){}function TZ(){}function _Z(){}function CZ(){}function SZ(){}function AZ(){}function LZ(){}function MZ(){}function DZ(){}function Ic(){}function IZ(){}function K9(){}function oc(){}function Zc(){}function Qi(){}function FL(){}function OZ(){}function NZ(){}function PZ(){}function Q5(){}function mm(){}function Ue(){}function FZ(){}function BZ(){}function RZ(){}function jZ(){}function $Z(){}function KF(){}function zZ(){}function qZ(){}function BL(){}function HZ(){}function tl(){}function Bu(){}function VZ(){}function GZ(){}function UZ(){}function ym(){}function fv(){}function mp(){}function id(){}function Z5(){}function Y9(){}function kk(){}function YF(){}function WZ(){}function Ek(){}function XF(){}function KZ(){}function X9(){}function J5(){}function t6(){}function yp(){}function QF(){}function Tk(){}function ZF(){}function JF(){}function e6(){}function Vb(){}function _0(){}function xp(){}function A3(){}function _k(){}function Q9(){}function tB(){}function YZ(){}function eB(){}function nB(){}function rB(){}function Ck(){}function iB(){}function sB(){}function XZ(){}function Sk(){}function Ak(){}function xm(){}function RL(){}function QZ(){}function ZZ(){}function JZ(){}function tJ(){}function eJ(){}function nJ(){}function rJ(){}function iJ(){}function aB(){}function sJ(){}function aJ(){}function oJ(){}function oB(){}function Lk(){}function Z9(){}function cB(){}function cJ(){}function uB(){}function lB(){}function uJ(){}function J9(){}function km(){}function hB(){}function fB(){}function lJ(){}function hJ(){}function tT(){}function dB(){}function gB(){}function bc(){}function fJ(){}function pB(){}function eT(){}function dJ(){}function gJ(){}function nT(){}function bB(){}function rT(){}function iT(){}function qf(){}function jL(){}function $L(){}function n6(){}function pJ(){}function bJ(){}function vJ(){}function wJ(){}function Em(){}function vB(){}function r6(){}function g1(){}function wB(){}function mB(){}function yB(){}function xB(){}function kB(){}function EB(){}function Hf(){}function vu(){}function mJ(){}function yJ(){}function xJ(){}function wu(){}function sT(){}function TB(){}function _B(){}function i6(){}function kJ(){}function Mk(){}function EJ(){}function CB(){}function TJ(){}function _J(){}function aT(){}function SB(){}function zL(){}function oT(){}function CJ(){}function SJ(){}function qL(){}function cT(){}function p1(){}function Dk(){}function AJ(){}function Ik(){}function HL(){}function Gb(){}function uT(){}function VL(){}function Vf(){}function lT(){}function b1(){}function v1(){}function LJ(){}function MJ(){}function L3(){}function Ok(){}function Nk(){}function hT(){}function DJ(){}function s6(){}function GL(){}function AB(){}function IJ(){}function fT(){DT()}function OJ(){Lit()}function LB(){iC()}function UL(){Kz()}function NJ(){I4t()}function dT(){n1()}function PJ(){H3t()}function FJ(){JD()}function BJ(){wM()}function RJ(){vM()}function jJ(){VM()}function MB(){wVt()}function $J(){Y6()}function zJ(){LR()}function qJ(){LJt()}function DB(){qee()}function HJ(){ote()}function VJ(){TQt()}function gT(){Q8()}function GJ(){tb()}function UJ(){Hee()}function WJ(){vZt()}function KJ(){_6t()}function YJ(){Mse()}function XJ(){_Qt()}function IB(){xe()}function QJ(){EQt()}function OB(){Vee()}function ZJ(){Wne()}function WL(){SQt()}function JJ(){fte()}function NB(){mVt()}function ttt(){d5t()}function PB(){ay()}function ett(){vne()}function FB(){rI()}function BB(){iat()}function RB(){hst()}function KL(){hw()}function M3(){uyt()}function pT(){CQt()}function sd(){Rue()}function jB(){l5t()}function Pk(){Xst()}function YL(){O$()}function ntt(){eq()}function kp(){di()}function $B(){bz()}function zB(){v3t()}function qB(){yq()}function ih(){dKt()}function XL(){dit()}function HB(){Q5t()}function Fk(t){In(t)}function bT(t){this.a=t}function Bk(t){this.a=t}function VB(t){this.a=t}function a6(t){this.a=t}function dv(t){this.a=t}function Rk(t){this.a=t}function GB(t){this.a=t}function rtt(t){this.a=t}function QL(t){this.a=t}function D3(t){this.a=t}function ZL(t){this.a=t}function vT(t){this.a=t}function itt(t){this.a=t}function wT(t){this.a=t}function mT(t){this.a=t}function o6(t){this.a=t}function JL(t){this.a=t}function tM(t){this.a=t}function stt(t){this.a=t}function att(t){this.a=t}function ott(t){this.a=t}function UB(t){this.b=t}function ctt(t){this.c=t}function utt(t){this.a=t}function ltt(t){this.a=t}function htt(t){this.a=t}function ftt(t){this.a=t}function dtt(t){this.a=t}function gtt(t){this.a=t}function ptt(t){this.a=t}function btt(t){this.a=t}function c6(t){this.a=t}function vtt(t){this.a=t}function jk(t){this.a=t}function Ch(t){this.a=t}function wtt(t){this.a=t}function u6(t){this.a=t}function $k(t){this.a=t}function yT(t){this.a=t}function zk(t){this.a=t}function yg(){this.a=[]}function mtt(t,e){t.a=e}function Zgt(t,e){t.a=e}function Jgt(t,e){t.b=e}function tpt(t,e){t.b=e}function ept(t,e){t.b=e}function eM(t,e){t.j=e}function npt(t,e){t.g=e}function rpt(t,e){t.i=e}function ytt(t,e){t.c=e}function w1(t,e){t.d=e}function xtt(t,e){t.d=e}function ipt(t,e){t.c=e}function C0(t,e){t.k=e}function ktt(t,e){t.c=e}function WB(t,e){t.c=e}function KB(t,e){t.a=e}function Ett(t,e){t.a=e}function spt(t,e){t.f=e}function apt(t,e){t.a=e}function gv(t,e){t.b=e}function nM(t,e){t.d=e}function xT(t,e){t.i=e}function YB(t,e){t.o=e}function opt(t,e){t.r=e}function cpt(t,e){t.a=e}function XB(t,e){t.b=e}function pv(t,e){t.e=e}function Ttt(t,e){t.f=e}function kT(t,e){t.g=e}function l6(t,e){t.e=e}function upt(t,e){t.f=e}function qk(t,e){t.f=e}function _tt(t,e){t.n=e}function xg(t,e){t.a=e}function lpt(t,e){t.a=e}function I3(t,e){t.c=e}function Ctt(t,e){t.c=e}function Stt(t,e){t.d=e}function QB(t,e){t.e=e}function ZB(t,e){t.g=e}function Att(t,e){t.a=e}function Hk(t,e){t.c=e}function ET(t,e){t.d=e}function hpt(t,e){t.e=e}function Ltt(t,e){t.f=e}function Mtt(t,e){t.j=e}function Dtt(t,e){t.a=e}function fpt(t,e){t.b=e}function Ec(t,e){t.a=e}function JB(t){t.b=t.a}function Itt(t){t.c=t.d.d}function h6(t){this.d=t}function kg(t){this.a=t}function Tm(t){this.a=t}function rM(t){this.a=t}function m1(t){this.a=t}function f6(t){this.a=t}function Ott(t){this.a=t}function tR(t){this.a=t}function O3(t){this.a=t}function iM(t){this.a=t}function _m(t){this.a=t}function eR(t){this.a=t}function y1(t){this.a=t}function y(t){this.a=t}function g(t){this.a=t}function x(t){this.b=t}function T(t){this.b=t}function L(t){this.b=t}function I(t){this.a=t}function O(t){this.a=t}function $(t){this.a=t}function z(t){this.c=t}function S(t){this.c=t}function V(t){this.c=t}function U(t){this.a=t}function et(t){this.a=t}function at(t){this.a=t}function lt(t){this.a=t}function gt(t){this.a=t}function Lt(t){this.a=t}function Et(t){this.a=t}function Dt(t){this.a=t}function It(t){this.a=t}function zt(t){this.a=t}function te(t){this.a=t}function Xt(t){this.a=t}function Ht(t){this.a=t}function ie(t){this.a=t}function Ut(t){this.a=t}function fe(t){this.a=t}function ge(t){this.a=t}function se(t){this.a=t}function Ne(t){this.a=t}function pe(t){this.a=t}function gn(t){this.a=t}function je(t){this.a=t}function Ge(t){this.a=t}function xn(t){this.a=t}function Dn(t){this.a=t}function Xn(t){this.a=t}function Cn(t){this.a=t}function Yn(t){this.a=t}function rr(t){this.a=t}function wr(t){this.a=t}function ur(t){this.a=t}function er(t){this.a=t}function bn(t){this.a=t}function pr(t){this.a=t}function fr(t){this.a=t}function ri(t){this.a=t}function _i(t){this.a=t}function ia(t){this.a=t}function La(t){this.a=t}function Di(t){this.a=t}function wi(t){this.a=t}function _s(t){this.a=t}function Zi(t){this.a=t}function Ni(t){this.a=t}function ns(t){this.a=t}function Ua(t){this.e=t}function sa(t){this.a=t}function Xs(t){this.a=t}function Cr(t){this.a=t}function Jt(t){this.a=t}function jn(t){this.a=t}function Lr(t){this.a=t}function ir(t){this.a=t}function sr(t){this.a=t}function Fa(t){this.a=t}function Hr(t){this.a=t}function ss(t){this.a=t}function qo(t){this.a=t}function Bc(t){this.a=t}function ro(t){this.a=t}function Tc(t){this.a=t}function Ma(t){this.a=t}function io(t){this.a=t}function _l(t){this.a=t}function Gf(t){this.a=t}function Ep(t){this.a=t}function Tp(t){this.a=t}function Uf(t){this.a=t}function Eg(t){this.a=t}function ad(t){this.a=t}function bv(t){this.a=t}function Cm(t){this.a=t}function d6(t){this.a=t}function N3(t){this.a=t}function g6(t){this.a=t}function TT(t){this.a=t}function P3(t){this.a=t}function $d(t){this.a=t}function x1(t){this.a=t}function zd(t){this.a=t}function _T(t){this.a=t}function Ub(t){this.a=t}function nR(t){this.a=t}function Ntt(t){this.a=t}function Ptt(t){this.a=t}function Ftt(t){this.a=t}function Btt(t){this.a=t}function Rtt(t){this.a=t}function jtt(t){this.a=t}function $tt(t){this.a=t}function Vk(t){this.a=t}function sM(t){this.a=t}function CT(t){this.a=t}function rR(t){this.a=t}function iR(t){this.a=t}function ztt(t){this.a=t}function _p(t){this.a=t}function aM(t){this.a=t}function sR(t){this.a=t}function Gk(t){this.c=t}function Cp(t){this.b=t}function qtt(t){this.a=t}function c$t(t){this.a=t}function u$t(t){this.a=t}function l$t(t){this.a=t}function h$t(t){this.a=t}function f$t(t){this.a=t}function d$t(t){this.a=t}function g$t(t){this.a=t}function p$t(t){this.a=t}function b$t(t){this.a=t}function v$t(t){this.a=t}function w$t(t){this.a=t}function m$t(t){this.a=t}function y$t(t){this.a=t}function x$t(t){this.a=t}function k$t(t){this.a=t}function E$t(t){this.a=t}function T$t(t){this.a=t}function _$t(t){this.a=t}function C$t(t){this.a=t}function S$t(t){this.a=t}function A$t(t){this.a=t}function L$t(t){this.a=t}function M$t(t){this.a=t}function Sp(t){this.a=t}function p6(t){this.a=t}function D$t(t){this.a=t}function I$t(t){this.a=t}function O$t(t){this.a=t}function N$t(t){this.a=t}function P$t(t){this.a=t}function F$t(t){this.a=t}function B$t(t){this.a=t}function R$t(t){this.a=t}function j$t(t){this.a=t}function $$t(t){this.a=t}function z$t(t){this.a=t}function q$t(t){this.a=t}function H$t(t){this.a=t}function V$t(t){this.a=t}function G$t(t){this.a=t}function U$t(t){this.a=t}function aR(t){this.a=t}function W$t(t){this.a=t}function K$t(t){this.a=t}function Y$t(t){this.a=t}function X$t(t){this.a=t}function Q$t(t){this.a=t}function Z$t(t){this.a=t}function J$t(t){this.a=t}function tzt(t){this.a=t}function ezt(t){this.a=t}function nzt(t){this.a=t}function rzt(t){this.a=t}function izt(t){this.a=t}function szt(t){this.a=t}function azt(t){this.a=t}function ozt(t){this.a=t}function czt(t){this.a=t}function uzt(t){this.a=t}function lzt(t){this.a=t}function hzt(t){this.a=t}function fzt(t){this.a=t}function dzt(t){this.a=t}function gzt(t){this.a=t}function pzt(t){this.a=t}function bzt(t){this.a=t}function vzt(t){this.a=t}function wzt(t){this.a=t}function mzt(t){this.a=t}function yzt(t){this.a=t}function dpt(t){this.a=t}function ts(t){this.b=t}function xzt(t){this.f=t}function gpt(t){this.a=t}function kzt(t){this.a=t}function Ezt(t){this.a=t}function Tzt(t){this.a=t}function _zt(t){this.a=t}function Czt(t){this.a=t}function Szt(t){this.a=t}function Azt(t){this.a=t}function Lzt(t){this.a=t}function oM(t){this.a=t}function Mzt(t){this.a=t}function Dzt(t){this.b=t}function ppt(t){this.c=t}function oR(t){this.e=t}function Izt(t){this.a=t}function cR(t){this.a=t}function uR(t){this.a=t}function Htt(t){this.a=t}function Ozt(t){this.a=t}function Nzt(t){this.d=t}function bpt(t){this.a=t}function vpt(t){this.a=t}function vv(t){this.e=t}function KWe(){this.a=0}function F3(){dUt(this)}function le(){Qet(this)}function Ar(){nl(this)}function Vtt(){vXt(this)}function Pzt(){}function wv(){this.c=QAt}function YWe(t,e){e.Wb(t)}function Fzt(t,e){t.b+=e}function Bzt(t){t.b=new oet}function nt(t){return t.e}function XWe(t){return t.a}function QWe(t){return t.a}function ZWe(t){return t.a}function JWe(t){return t.a}function tKe(t){return t.a}function eKe(){return null}function nKe(){return null}function rKe(){rbt(),g5n()}function iKe(t){t.b.tf(t.e)}function ST(t,e){t.b=e-t.b}function AT(t,e){t.a=e-t.a}function Rzt(t,e){e.ad(t.a)}function sKe(t,e){Us(e,t)}function aKe(t,e,n){t.Od(n,e)}function cM(t,e){t.e=e,e.b=t}function wpt(t){fd(),this.a=t}function jzt(t){fd(),this.a=t}function $zt(t){fd(),this.a=t}function mpt(t){Vm(),this.a=t}function zzt(t){k8(),Tut.be(t)}function Wb(){XUt.call(this)}function ypt(){XUt.call(this)}function xpt(){Wb.call(this)}function Gtt(){Wb.call(this)}function qzt(){Wb.call(this)}function uM(){Wb.call(this)}function Ru(){Wb.call(this)}function LT(){Wb.call(this)}function Pr(){Wb.call(this)}function sh(){Wb.call(this)}function Hzt(){Wb.call(this)}function vc(){Wb.call(this)}function Vzt(){Wb.call(this)}function Gzt(){this.a=this}function lR(){this.Bb|=256}function Uzt(){this.b=new KGt}function kpt(){kpt=X,new Ar}function Ept(){xpt.call(this)}function Wzt(t,e){t.length=e}function hR(t,e){ue(t.a,e)}function oKe(t,e){N4t(t.c,e)}function cKe(t,e){Vs(t.b,e)}function uKe(t,e){qz(t.a,e)}function lKe(t,e){Rit(t.a,e)}function Uk(t,e){Ci(t.e,e)}function b6(t){iq(t.c,t.b)}function hKe(t,e){t.kc().Nb(e)}function Tpt(t){this.a=uln(t)}function Qs(){this.a=new Ar}function Kzt(){this.a=new Ar}function fR(){this.a=new le}function Utt(){this.a=new le}function _pt(){this.a=new le}function Sh(){this.a=new Xc}function Kb(){this.a=new _Jt}function Cpt(){this.a=new A9}function Spt(){this.a=new lVt}function Yzt(){this.a=new ZQt}function Apt(){this.a=new gQt}function Lpt(){this.a=new RWt}function Xzt(){this.a=new le}function Mpt(){this.a=new le}function Qzt(){this.a=new le}function Zzt(){this.a=new le}function Jzt(){this.d=new le}function tqt(){this.a=new Qs}function eqt(){this.a=new Ar}function nqt(){this.b=new Ar}function rqt(){this.b=new le}function Dpt(){this.e=new le}function iqt(){this.d=new le}function sqt(){this.a=new GJ}function aqt(){le.call(this)}function Ipt(){fR.call(this)}function oqt(){xj.call(this)}function cqt(){Mpt.call(this)}function Wtt(){MT.call(this)}function MT(){Pzt.call(this)}function v6(){Pzt.call(this)}function Opt(){v6.call(this)}function uqt(){GXt.call(this)}function lqt(){GXt.call(this)}function hqt(){$pt.call(this)}function fqt(){$pt.call(this)}function dqt(){$pt.call(this)}function gqt(){zpt.call(this)}function ju(){cs.call(this)}function Npt(){ym.call(this)}function Ppt(){ym.call(this)}function pqt(){Dqt.call(this)}function bqt(){Dqt.call(this)}function vqt(){Ar.call(this)}function wqt(){Ar.call(this)}function mqt(){Ar.call(this)}function yqt(){Qs.call(this)}function Ktt(){jee.call(this)}function xqt(){lR.call(this)}function Ytt(){h2t.call(this)}function Xtt(){h2t.call(this)}function Fpt(){Ar.call(this)}function Qtt(){Ar.call(this)}function kqt(){Ar.call(this)}function Bpt(){Tk.call(this)}function Eqt(){Tk.call(this)}function Tqt(){Bpt.call(this)}function _qt(){GL.call(this)}function Cqt(t){lee.call(this,t)}function Sqt(t){lee.call(this,t)}function Rpt(t){QL.call(this,t)}function jpt(t){tVt.call(this,t)}function fKe(t){jpt.call(this,t)}function dKe(t){tVt.call(this,t)}function Wk(){this.a=new cs}function $pt(){this.a=new Qs}function zpt(){this.a=new Ar}function Aqt(){this.a=new le}function Lqt(){this.j=new le}function qpt(){this.a=new GF}function Mqt(){this.a=new _Ht}function Dqt(){this.a=new QF}function Ztt(){Ztt=X,wut=new Yqt}function Jtt(){Jtt=X,vut=new Kqt}function DT(){DT=X,but=new A}function dR(){dR=X,xut=new KUt}function gKe(t){jpt.call(this,t)}function pKe(t){jpt.call(this,t)}function Iqt(t){Drt.call(this,t)}function Oqt(t){Drt.call(this,t)}function Nqt(t){aKt.call(this,t)}function tet(t){P0n.call(this,t)}function mv(t){Mm.call(this,t)}function IT(t){_R.call(this,t)}function Hpt(t){_R.call(this,t)}function Pqt(t){_R.call(this,t)}function Zo(t){yYt.call(this,t)}function Fqt(t){Zo.call(this,t)}function w6(){zk.call(this,{})}function gR(t){o8(),this.a=t}function OT(t){t.b=null,t.c=0}function bKe(t,e){t.e=e,Bce(t,e)}function vKe(t,e){t.a=e,xgn(t)}function eet(t,e,n){t.a[e.g]=n}function wKe(t,e,n){B1n(n,t,e)}function mKe(t,e){VQe(e.i,t.n)}function Bqt(t,e){Gcn(t).td(e)}function yKe(t,e){return t*t/e}function Rqt(t,e){return t.g-e.g}function xKe(t){return new yT(t)}function kKe(t){return new Hm(t)}function pR(t){Zo.call(this,t)}function Co(t){Zo.call(this,t)}function jqt(t){Zo.call(this,t)}function net(t){yYt.call(this,t)}function ret(t){oyt(),this.a=t}function $qt(t){fKt(),this.a=t}function Sm(t){Pnt(),this.f=t}function iet(t){Pnt(),this.f=t}function Kk(t){Zo.call(this,t)}function Pn(t){Zo.call(this,t)}function Ho(t){Zo.call(this,t)}function zqt(t){Zo.call(this,t)}function m6(t){Zo.call(this,t)}function Be(t){return In(t),t}function Zt(t){return In(t),t}function lM(t){return In(t),t}function Vpt(t){return In(t),t}function EKe(t){return In(t),t}function NT(t){return t.b==t.c}function Am(t){return!!t&&t.b}function TKe(t){return!!t&&t.k}function _Ke(t){return!!t&&t.j}function Cl(t){In(t),this.a=t}function Gpt(t){return f2(t),t}function PT(t){rwt(t,t.length)}function Tg(t){Zo.call(this,t)}function od(t){Zo.call(this,t)}function set(t){Zo.call(this,t)}function B3(t){Zo.call(this,t)}function FT(t){Zo.call(this,t)}function Rr(t){Zo.call(this,t)}function aet(t){L2t.call(this,t,0)}function oet(){Bwt.call(this,12,3)}function Upt(){Upt=X,W8t=new xt}function qqt(){qqt=X,U8t=new C}function bR(){bR=X,sS=new Tt}function Hqt(){Hqt=X,wge=new mt}function Vqt(){throw nt(new Pr)}function Wpt(){throw nt(new Pr)}function Gqt(){throw nt(new Pr)}function CKe(){throw nt(new Pr)}function SKe(){throw nt(new Pr)}function AKe(){throw nt(new Pr)}function cet(){this.a=jr(Dr(Xa))}function y6(t){fd(),this.a=Dr(t)}function Uqt(t,e){t.Td(e),e.Sd(t)}function LKe(t,e){t.a.ec().Mc(e)}function MKe(t,e,n){t.c.lf(e,n)}function Kpt(t){Co.call(this,t)}function cd(t){Pn.call(this,t)}function _g(){f6.call(this,"")}function BT(){f6.call(this,"")}function Ap(){f6.call(this,"")}function Lm(){f6.call(this,"")}function Ypt(t){Co.call(this,t)}function Yk(t){T.call(this,t)}function uet(t){fj.call(this,t)}function Wqt(t){Yk.call(this,t)}function Kqt(){wT.call(this,null)}function Yqt(){wT.call(this,null)}function vR(){vR=X,k8()}function Xqt(){Xqt=X,Age=ldn()}function Qqt(t){return t.a?t.b:0}function DKe(t){return t.a?t.b:0}function IKe(t,e){return t.a-e.a}function OKe(t,e){return t.a-e.a}function NKe(t,e){return t.a-e.a}function wR(t,e){return Smt(t,e)}function ot(t,e){return vQt(t,e)}function PKe(t,e){return e in t.a}function Zqt(t,e){return t.f=e,t}function FKe(t,e){return t.b=e,t}function Jqt(t,e){return t.c=e,t}function BKe(t,e){return t.g=e,t}function Xpt(t,e){return t.a=e,t}function Qpt(t,e){return t.f=e,t}function RKe(t,e){return t.k=e,t}function Zpt(t,e){return t.a=e,t}function jKe(t,e){return t.e=e,t}function Jpt(t,e){return t.e=e,t}function $Ke(t,e){return t.f=e,t}function zKe(t,e){t.b=!0,t.d=e}function qKe(t,e){t.b=new So(e)}function HKe(t,e,n){e.td(t.a[n])}function VKe(t,e,n){e.we(t.a[n])}function GKe(t,e){return t.b-e.b}function UKe(t,e){return t.g-e.g}function WKe(t,e){return t.s-e.s}function KKe(t,e){return t?0:e-1}function tHt(t,e){return t?0:e-1}function YKe(t,e){return t?e-1:0}function XKe(t,e){return e.Yf(t)}function yv(t,e){return t.b=e,t}function mR(t,e){return t.a=e,t}function xv(t,e){return t.c=e,t}function kv(t,e){return t.d=e,t}function Ev(t,e){return t.e=e,t}function tbt(t,e){return t.f=e,t}function RT(t,e){return t.a=e,t}function Xk(t,e){return t.b=e,t}function Qk(t,e){return t.c=e,t}function Ze(t,e){return t.c=e,t}function yn(t,e){return t.b=e,t}function Je(t,e){return t.d=e,t}function tn(t,e){return t.e=e,t}function QKe(t,e){return t.f=e,t}function en(t,e){return t.g=e,t}function nn(t,e){return t.a=e,t}function rn(t,e){return t.i=e,t}function sn(t,e){return t.j=e,t}function eHt(t,e){return t.k=e,t}function ZKe(t,e){return t.j=e,t}function JKe(t,e){tb(),tc(e,t)}function tYe(t,e,n){Ktn(t.a,e,n)}function nHt(t){mXt.call(this,t)}function ebt(t){mXt.call(this,t)}function yR(t){wnt.call(this,t)}function rHt(t){vln.call(this,t)}function Lp(t){Kv.call(this,t)}function iHt(t){art.call(this,t)}function sHt(t){art.call(this,t)}function aHt(){a2t.call(this,"")}function Da(){this.a=0,this.b=0}function oHt(){this.b=0,this.a=0}function cHt(t,e){t.b=0,ty(t,e)}function eYe(t,e){t.c=e,t.b=!0}function uHt(t,e){return t.c._b(e)}function Wf(t){return t.e&&t.e()}function het(t){return t?t.d:null}function lHt(t,e){return Fre(t.b,e)}function nYe(t){return t?t.g:null}function rYe(t){return t?t.i:null}function Mp(t){return L0(t),t.o}function Tv(){Tv=X,C4e=x1n()}function hHt(){hHt=X,la=Odn()}function Zk(){Zk=X,XAt=E1n()}function fHt(){fHt=X,l5e=k1n()}function nbt(){nbt=X,kc=wgn()}function rbt(){rbt=X,Cb=j8()}function dHt(){throw nt(new Pr)}function gHt(){throw nt(new Pr)}function pHt(){throw nt(new Pr)}function bHt(){throw nt(new Pr)}function vHt(){throw nt(new Pr)}function wHt(){throw nt(new Pr)}function xR(t){this.a=new x6(t)}function ibt(t){dhe(),S5n(this,t)}function Dp(t){this.a=new jnt(t)}function R3(t,e){for(;t.ye(e););}function sbt(t,e){for(;t.sd(e););}function j3(t,e){return t.a+=e,t}function fet(t,e){return t.a+=e,t}function Cg(t,e){return t.a+=e,t}function _v(t,e){return t.a+=e,t}function jT(t){return qp(t),t.a}function kR(t){return t.b!=t.d.c}function mHt(t){return t.l|t.m<<22}function abt(t,e){return t.d[e.p]}function yHt(t,e){return ovn(t,e)}function obt(t,e,n){t.splice(e,n)}function xHt(t){t.c?iue(t):sue(t)}function ER(t){this.a=0,this.b=t}function kHt(){this.a=new dI(uCt)}function EHt(){this.b=new dI(Y_t)}function THt(){this.b=new dI(Hht)}function _Ht(){this.b=new dI(Hht)}function CHt(){throw nt(new Pr)}function SHt(){throw nt(new Pr)}function AHt(){throw nt(new Pr)}function LHt(){throw nt(new Pr)}function MHt(){throw nt(new Pr)}function DHt(){throw nt(new Pr)}function IHt(){throw nt(new Pr)}function OHt(){throw nt(new Pr)}function NHt(){throw nt(new Pr)}function PHt(){throw nt(new Pr)}function iYe(){throw nt(new vc)}function sYe(){throw nt(new vc)}function hM(t){this.a=new FHt(t)}function FHt(t){bon(this,t,bdn())}function fM(t){return!t||rXt(t)}function dM(t){return Y1[t]!=-1}function aYe(){zH!=0&&(zH=0),qH=-1}function BHt(){put==null&&(put=[])}function oYe(t,e){Gst(Kt(t.a),e)}function cYe(t,e){Gst(Kt(t.a),e)}function gM(t,e){K3.call(this,t,e)}function Jk(t,e){gM.call(this,t,e)}function cbt(t,e){this.b=t,this.c=e}function RHt(t,e){this.b=t,this.a=e}function jHt(t,e){this.a=t,this.b=e}function $Ht(t,e){this.a=t,this.b=e}function zHt(t,e){this.a=t,this.b=e}function qHt(t,e){this.a=t,this.b=e}function HHt(t,e){this.a=t,this.b=e}function VHt(t,e){this.a=t,this.b=e}function GHt(t,e){this.a=t,this.b=e}function UHt(t,e){this.a=t,this.b=e}function WHt(t,e){this.b=t,this.a=e}function KHt(t,e){this.b=t,this.a=e}function YHt(t,e){this.b=t,this.a=e}function XHt(t,e){this.b=t,this.a=e}function Kr(t,e){this.f=t,this.g=e}function t8(t,e){this.e=t,this.d=e}function Cv(t,e){this.g=t,this.i=e}function det(t,e){this.a=t,this.b=e}function QHt(t,e){this.a=t,this.f=e}function ZHt(t,e){this.b=t,this.c=e}function uYe(t,e){this.a=t,this.b=e}function JHt(t,e){this.a=t,this.b=e}function get(t,e){this.a=t,this.b=e}function tVt(t){w2t(t.dc()),this.c=t}function TR(t){this.b=u(Dr(t),83)}function eVt(t){this.a=u(Dr(t),83)}function Mm(t){this.a=u(Dr(t),15)}function nVt(t){this.a=u(Dr(t),15)}function _R(t){this.b=u(Dr(t),47)}function CR(){this.q=new b.Date}function qd(){qd=X,c7t=new Rt}function e8(){e8=X,X7=new Pt}function $T(t){return t.f.c+t.g.c}function pM(t,e){return t.b.Hc(e)}function rVt(t,e){return t.b.Ic(e)}function iVt(t,e){return t.b.Qc(e)}function sVt(t,e){return t.b.Hc(e)}function aVt(t,e){return t.c.uc(e)}function S0(t,e){return t.a._b(e)}function oVt(t,e){return Si(t.c,e)}function cVt(t,e){return Ml(t.b,e)}function uVt(t,e){return t>e&&e0}function bet(t,e){return _c(t,e)<0}function UT(t,e){return t.a.get(e)}function kYe(t,e){return e.split(t)}function AVt(t,e){return Ml(t.e,e)}function bbt(t){return In(t),!1}function FR(t){Tn.call(this,t,21)}function EYe(t,e){sQt.call(this,t,e)}function BR(t,e){Kr.call(this,t,e)}function vet(t,e){Kr.call(this,t,e)}function vbt(t){Znt(),aKt.call(this,t)}function wbt(t,e){uYt(t,t.length,e)}function yM(t,e){RYt(t,t.length,e)}function TYe(t,e,n){e.ud(t.a.Ge(n))}function _Ye(t,e,n){e.we(t.a.Fe(n))}function CYe(t,e,n){e.td(t.a.Kb(n))}function SYe(t,e,n){t.Mb(n)&&e.td(n)}function WT(t,e,n){t.splice(e,0,n)}function AYe(t,e){return zu(t.e,e)}function RR(t,e){this.d=t,this.e=e}function LVt(t,e){this.b=t,this.a=e}function MVt(t,e){this.b=t,this.a=e}function mbt(t,e){this.b=t,this.a=e}function DVt(t,e){this.a=t,this.b=e}function IVt(t,e){this.a=t,this.b=e}function OVt(t,e){this.a=t,this.b=e}function NVt(t,e){this.a=t,this.b=e}function E6(t,e){this.a=t,this.b=e}function ybt(t,e){this.b=t,this.a=e}function xbt(t,e){this.b=t,this.a=e}function jR(t,e){Kr.call(this,t,e)}function $R(t,e){Kr.call(this,t,e)}function kbt(t,e){Kr.call(this,t,e)}function Ebt(t,e){Kr.call(this,t,e)}function $3(t,e){Kr.call(this,t,e)}function wet(t,e){Kr.call(this,t,e)}function met(t,e){Kr.call(this,t,e)}function yet(t,e){Kr.call(this,t,e)}function zR(t,e){Kr.call(this,t,e)}function Tbt(t,e){Kr.call(this,t,e)}function xet(t,e){Kr.call(this,t,e)}function xM(t,e){Kr.call(this,t,e)}function qR(t,e){Kr.call(this,t,e)}function ket(t,e){Kr.call(this,t,e)}function KT(t,e){Kr.call(this,t,e)}function _bt(t,e){Kr.call(this,t,e)}function Ls(t,e){Kr.call(this,t,e)}function HR(t,e){Kr.call(this,t,e)}function PVt(t,e){this.a=t,this.b=e}function FVt(t,e){this.a=t,this.b=e}function BVt(t,e){this.a=t,this.b=e}function RVt(t,e){this.a=t,this.b=e}function jVt(t,e){this.a=t,this.b=e}function $Vt(t,e){this.a=t,this.b=e}function zVt(t,e){this.a=t,this.b=e}function qVt(t,e){this.a=t,this.b=e}function HVt(t,e){this.a=t,this.b=e}function Cbt(t,e){this.b=t,this.a=e}function VVt(t,e){this.b=t,this.a=e}function GVt(t,e){this.b=t,this.a=e}function UVt(t,e){this.b=t,this.a=e}function i8(t,e){this.c=t,this.d=e}function WVt(t,e){this.e=t,this.d=e}function KVt(t,e){this.a=t,this.b=e}function YVt(t,e){this.b=e,this.c=t}function VR(t,e){Kr.call(this,t,e)}function kM(t,e){Kr.call(this,t,e)}function Eet(t,e){Kr.call(this,t,e)}function YT(t,e){Kr.call(this,t,e)}function Sbt(t,e){Kr.call(this,t,e)}function Tet(t,e){Kr.call(this,t,e)}function _et(t,e){Kr.call(this,t,e)}function EM(t,e){Kr.call(this,t,e)}function Abt(t,e){Kr.call(this,t,e)}function Cet(t,e){Kr.call(this,t,e)}function XT(t,e){Kr.call(this,t,e)}function Lbt(t,e){Kr.call(this,t,e)}function QT(t,e){Kr.call(this,t,e)}function ZT(t,e){Kr.call(this,t,e)}function Im(t,e){Kr.call(this,t,e)}function Aet(t,e){Kr.call(this,t,e)}function Let(t,e){Kr.call(this,t,e)}function Mbt(t,e){Kr.call(this,t,e)}function JT(t,e){Kr.call(this,t,e)}function Met(t,e){Kr.call(this,t,e)}function GR(t,e){Kr.call(this,t,e)}function TM(t,e){Kr.call(this,t,e)}function _M(t,e){Kr.call(this,t,e)}function T6(t,e){Kr.call(this,t,e)}function Det(t,e){Kr.call(this,t,e)}function Dbt(t,e){Kr.call(this,t,e)}function Iet(t,e){Kr.call(this,t,e)}function Oet(t,e){Kr.call(this,t,e)}function Ibt(t,e){Kr.call(this,t,e)}function Net(t,e){Kr.call(this,t,e)}function Pet(t,e){Kr.call(this,t,e)}function Fet(t,e){Kr.call(this,t,e)}function Bet(t,e){Kr.call(this,t,e)}function Obt(t,e){Kr.call(this,t,e)}function XVt(t,e){this.b=t,this.a=e}function QVt(t,e){this.a=t,this.b=e}function ZVt(t,e){this.a=t,this.b=e}function JVt(t,e){this.a=t,this.b=e}function tGt(t,e){this.a=t,this.b=e}function Nbt(t,e){Kr.call(this,t,e)}function Pbt(t,e){Kr.call(this,t,e)}function eGt(t,e){this.b=t,this.d=e}function Fbt(t,e){Kr.call(this,t,e)}function Bbt(t,e){Kr.call(this,t,e)}function nGt(t,e){this.a=t,this.b=e}function rGt(t,e){this.a=t,this.b=e}function UR(t,e){Kr.call(this,t,e)}function t_(t,e){Kr.call(this,t,e)}function Rbt(t,e){Kr.call(this,t,e)}function jbt(t,e){Kr.call(this,t,e)}function $bt(t,e){Kr.call(this,t,e)}function Ret(t,e){Kr.call(this,t,e)}function zbt(t,e){Kr.call(this,t,e)}function jet(t,e){Kr.call(this,t,e)}function WR(t,e){Kr.call(this,t,e)}function $et(t,e){Kr.call(this,t,e)}function zet(t,e){Kr.call(this,t,e)}function CM(t,e){Kr.call(this,t,e)}function qet(t,e){Kr.call(this,t,e)}function qbt(t,e){Kr.call(this,t,e)}function SM(t,e){Kr.call(this,t,e)}function Hbt(t,e){Kr.call(this,t,e)}function LYe(t,e){return zu(t.c,e)}function MYe(t,e){return zu(e.b,t)}function DYe(t,e){return-t.b.Je(e)}function Vbt(t,e){return zu(t.g,e)}function AM(t,e){Kr.call(this,t,e)}function _6(t,e){Kr.call(this,t,e)}function iGt(t,e){this.a=t,this.b=e}function sGt(t,e){this.a=t,this.b=e}function Re(t,e){this.a=t,this.b=e}function e_(t,e){Kr.call(this,t,e)}function n_(t,e){Kr.call(this,t,e)}function LM(t,e){Kr.call(this,t,e)}function Het(t,e){Kr.call(this,t,e)}function KR(t,e){Kr.call(this,t,e)}function r_(t,e){Kr.call(this,t,e)}function Vet(t,e){Kr.call(this,t,e)}function YR(t,e){Kr.call(this,t,e)}function z3(t,e){Kr.call(this,t,e)}function MM(t,e){Kr.call(this,t,e)}function i_(t,e){Kr.call(this,t,e)}function s_(t,e){Kr.call(this,t,e)}function DM(t,e){Kr.call(this,t,e)}function XR(t,e){Kr.call(this,t,e)}function q3(t,e){Kr.call(this,t,e)}function QR(t,e){Kr.call(this,t,e)}function aGt(t,e){this.a=t,this.b=e}function oGt(t,e){this.a=t,this.b=e}function cGt(t,e){this.a=t,this.b=e}function uGt(t,e){this.a=t,this.b=e}function lGt(t,e){this.a=t,this.b=e}function hGt(t,e){this.a=t,this.b=e}function ya(t,e){this.a=t,this.b=e}function ZR(t,e){Kr.call(this,t,e)}function fGt(t,e){this.a=t,this.b=e}function dGt(t,e){this.a=t,this.b=e}function gGt(t,e){this.a=t,this.b=e}function pGt(t,e){this.a=t,this.b=e}function bGt(t,e){this.a=t,this.b=e}function vGt(t,e){this.a=t,this.b=e}function wGt(t,e){this.b=t,this.a=e}function mGt(t,e){this.b=t,this.a=e}function yGt(t,e){this.b=t,this.a=e}function xGt(t,e){this.b=t,this.a=e}function kGt(t,e){this.a=t,this.b=e}function EGt(t,e){this.a=t,this.b=e}function IYe(t,e){c2n(t.a,u(e,56))}function TGt(t,e){yan(t.a,u(e,11))}function OYe(t,e){return f8(),e!=t}function _Gt(){return Xqt(),new Age}function CGt(){vrt(),this.b=new Qs}function SGt(){hq(),this.a=new Qs}function AGt(){Fwt(),Gvt.call(this)}function C6(t,e){Kr.call(this,t,e)}function LGt(t,e){this.a=t,this.b=e}function MGt(t,e){this.a=t,this.b=e}function JR(t,e){this.a=t,this.b=e}function DGt(t,e){this.a=t,this.b=e}function IGt(t,e){this.a=t,this.b=e}function OGt(t,e){this.a=t,this.b=e}function NGt(t,e){this.d=t,this.b=e}function Gbt(t,e){this.d=t,this.e=e}function PGt(t,e){this.f=t,this.c=e}function IM(t,e){this.b=t,this.c=e}function Ubt(t,e){this.i=t,this.g=e}function FGt(t,e){this.e=t,this.a=e}function BGt(t,e){this.a=t,this.b=e}function Wbt(t,e){t.i=null,ez(t,e)}function NYe(t,e){t&&Ai(cN,t,e)}function RGt(t,e){return Yit(t.a,e)}function tj(t){return GD(t.c,t.b)}function cc(t){return t?t.dd():null}function Gt(t){return t??null}function Om(t){return typeof t===cx}function Nm(t){return typeof t===C6t}function ha(t){return typeof t===Pat}function Np(t,e){return t.Hd().Xb(e)}function ej(t,e){return Xon(t.Kc(),e)}function Av(t,e){return _c(t,e)==0}function PYe(t,e){return _c(t,e)>=0}function a_(t,e){return _c(t,e)!=0}function FYe(t){return""+(In(t),t)}function OM(t,e){return t.substr(e)}function jGt(t){return gl(t),t.d.gc()}function Get(t){return Ipn(t,t.c),t}function nj(t){return m_(t==null),t}function o_(t,e){return t.a+=""+e,t}function yo(t,e){return t.a+=""+e,t}function c_(t,e){return t.a+=""+e,t}function wc(t,e){return t.a+=""+e,t}function Yr(t,e){return t.a+=""+e,t}function Kbt(t,e){return t.a+=""+e,t}function $Gt(t,e){ks(t,e,t.a,t.a.a)}function Xb(t,e){ks(t,e,t.c.b,t.c)}function BYe(t,e,n){Yse(e,Rst(t,n))}function RYe(t,e,n){Yse(e,Rst(t,n))}function jYe(t,e){Dan(new nr(t),e)}function zGt(t,e){t.q.setTime(Gv(e))}function qGt(t,e){twt.call(this,t,e)}function HGt(t,e){twt.call(this,t,e)}function Uet(t,e){twt.call(this,t,e)}function VGt(t){nl(this),G_(this,t)}function Ybt(t){return Sn(t,0),null}function Kf(t){return t.a=0,t.b=0,t}function GGt(t,e){return t.a=e.g+1,t}function $Ye(t,e){return t.j[e.p]==2}function Xbt(t){return ken(u(t,79))}function UGt(){UGt=X,kpe=Qr(est())}function WGt(){WGt=X,jbe=Qr(Lce())}function KGt(){this.b=new x6(Qm(12))}function YGt(){this.b=0,this.a=!1}function XGt(){this.b=0,this.a=!1}function u_(t){this.a=t,fT.call(this)}function QGt(t){this.a=t,fT.call(this)}function vn(t,e){Hs.call(this,t,e)}function Wet(t,e){jm.call(this,t,e)}function H3(t,e){Ubt.call(this,t,e)}function Ket(t,e){V8.call(this,t,e)}function ZGt(t,e){NM.call(this,t,e)}function oi(t,e){NR(),Ai(nU,t,e)}function Yet(t,e){return Bl(t.a,0,e)}function JGt(t,e){return t.a.a.a.cc(e)}function tUt(t,e){return Gt(t)===Gt(e)}function zYe(t,e){return js(t.a,e.a)}function qYe(t,e){return mu(t.a,e.a)}function HYe(t,e){return PYt(t.a,e.a)}function ud(t,e){return t.indexOf(e)}function Lv(t,e){return t==e?0:t?1:-1}function rj(t){return t<10?"0"+t:""+t}function VYe(t){return Dr(t),new u_(t)}function eUt(t){return cu(t.l,t.m,t.h)}function s8(t){return Cs((In(t),t))}function GYe(t){return Cs((In(t),t))}function nUt(t,e){return mu(t.g,e.g)}function Vo(t){return typeof t===C6t}function UYe(t){return t==Cw||t==Iy}function WYe(t){return t==Cw||t==Dy}function Qbt(t){return Go(t.b.b,t,0)}function rUt(t){this.a=_Gt(),this.b=t}function iUt(t){this.a=_Gt(),this.b=t}function KYe(t,e){return ue(t.a,e),e}function YYe(t,e){return ue(t.c,e),t}function sUt(t,e){return Hl(t.a,e),t}function XYe(t,e){return df(),e.a+=t}function QYe(t,e){return df(),e.a+=t}function ZYe(t,e){return df(),e.c+=t}function Zbt(t,e){M8(t,0,t.length,e)}function A0(){Et.call(this,new i2)}function aUt(){Fj.call(this,0,0,0,0)}function S6(){ch.call(this,0,0,0,0)}function So(t){this.a=t.a,this.b=t.b}function Pp(t){return t==Hh||t==_f}function a8(t){return t==Z0||t==Q0}function oUt(t){return t==e5||t==t5}function V3(t){return t!=U1&&t!=kb}function Sl(t){return t.Lg()&&t.Mg()}function cUt(t){return Zj(u(t,118))}function ij(t){return Hl(new Zs,t)}function uUt(t,e){return new V8(e,t)}function JYe(t,e){return new V8(e,t)}function Jbt(t,e,n){W$(t,e),K$(t,n)}function sj(t,e,n){Qv(t,e),Xv(t,n)}function k1(t,e,n){Cu(t,e),Su(t,n)}function aj(t,e,n){N8(t,e),F8(t,n)}function oj(t,e,n){P8(t,e),B8(t,n)}function Xet(t,e){X8(t,e),R8(t,t.D)}function t2t(t){PGt.call(this,t,!0)}function lUt(t,e,n){H2t.call(this,t,e,n)}function Fp(t){eb(),tcn.call(this,t)}function hUt(){BR.call(this,"Head",1)}function fUt(){BR.call(this,"Tail",3)}function Qet(t){t.c=Nt(Qn,Me,1,0,5,1)}function dUt(t){t.a=Nt(Qn,Me,1,8,5,1)}function gUt(t){_u(t.xf(),new ur(t))}function G3(t){return t!=null?Ji(t):0}function tXe(t,e){return Zm(e,_1(t))}function eXe(t,e){return Zm(e,_1(t))}function nXe(t,e){return t[t.length]=e}function rXe(t,e){return t[t.length]=e}function e2t(t){return ntn(t.b.Kc(),t.a)}function iXe(t,e){return tz(Xnt(t.d),e)}function sXe(t,e){return tz(Xnt(t.g),e)}function aXe(t,e){return tz(Xnt(t.j),e)}function ao(t,e){Hs.call(this,t.b,e)}function Mv(t){Fj.call(this,t,t,t,t)}function n2t(t){return t.b&&wat(t),t.a}function r2t(t){return t.b&&wat(t),t.c}function oXe(t,e){z1||(t.b=e)}function Zet(t,e,n){return ls(t,e,n),n}function pUt(t,e,n){ls(t.c[e.g],e.g,n)}function cXe(t,e,n){u(t.c,69).Xh(e,n)}function uXe(t,e,n){k1(n,n.i+t,n.j+e)}function lXe(t,e){Or(Oc(t.a),LQt(e))}function hXe(t,e){Or(fl(t.a),MQt(e))}function l_(t){yi(),vv.call(this,t)}function fXe(t){return t==null?0:Ji(t)}function bUt(){bUt=X,kht=new eC(vft)}function Fr(){Fr=X,new vUt,new le}function vUt(){new Ar,new Ar,new Ar}function i2t(){i2t=X,kpt(),K8t=new Ar}function E1(){E1=X,b.Math.log(2)}function ah(){ah=X,f0=(EVt(),I4e)}function dXe(){throw nt(new Tg(rge))}function gXe(){throw nt(new Tg(rge))}function pXe(){throw nt(new Tg(ige))}function bXe(){throw nt(new Tg(ige))}function wUt(t){this.a=t,kvt.call(this,t)}function Jet(t){this.a=t,TR.call(this,t)}function tnt(t){this.a=t,TR.call(this,t)}function aa(t,e){Dnt(t.c,t.c.length,e)}function Jo(t){return t.ae?1:0}function yUt(t,e){return _c(t,e)>0?t:e}function cu(t,e,n){return{l:t,m:e,h:n}}function vXe(t,e){t.a!=null&&TGt(e,t.a)}function xUt(t){t.a=new Bt,t.c=new Bt}function cj(t){this.b=t,this.a=new le}function kUt(t){this.b=new As,this.a=t}function a2t(t){Z2t.call(this),this.a=t}function EUt(){BR.call(this,"Range",2)}function TUt(){t4t(),this.a=new dI(kEt)}function wXe(t,e){Dr(e),X3(t).Jc(new J)}function mXe(t,e){return Rl(),e.n.b+=t}function yXe(t,e,n){return Ai(t.g,n,e)}function xXe(t,e,n){return Ai(t.k,n,e)}function kXe(t,e){return Ai(t.a,e.a,e)}function U3(t,e,n){return y3t(e,n,t.c)}function o2t(t){return new Re(t.c,t.d)}function EXe(t){return new Re(t.c,t.d)}function uc(t){return new Re(t.a,t.b)}function _Ut(t,e){return U3n(t.a,e,null)}function TXe(t){Ba(t,null),pa(t,null)}function CUt(t){mrt(t,null),yrt(t,null)}function SUt(){NM.call(this,null,null)}function AUt(){bj.call(this,null,null)}function c2t(t){this.a=t,Ar.call(this)}function _Xe(t){this.b=(pn(),new z(t))}function uj(t){t.j=Nt(o7t,re,310,0,0,1)}function CXe(t,e,n){t.c.Vc(e,u(n,133))}function SXe(t,e,n){t.c.ji(e,u(n,133))}function LUt(t,e){Tr(t),t.Gc(u(e,15))}function h_(t,e){return c3n(t.c,t.b,e)}function AXe(t,e){return new QUt(t.Kc(),e)}function ent(t,e){return Scn(t.Kc(),e)!=-1}function u2t(t,e){return t.a.Bc(e)!=null}function lj(t){return t.Ob()?t.Pb():null}function MUt(t){return Ih(t,0,t.length)}function _t(t,e){return t!=null&&sst(t,e)}function LXe(t,e){t.q.setHours(e),yC(t,e)}function DUt(t,e){t.c&&(Ovt(e),rQt(e))}function MXe(t,e,n){u(t.Kb(n),164).Nb(e)}function DXe(t,e,n){return j3n(t,e,n),n}function IUt(t,e,n){t.a=e^1502,t.b=n^got}function nnt(t,e,n){return t.a[e.g][n.g]}function T1(t,e){return t.a[e.c.p][e.p]}function IXe(t,e){return t.e[e.c.p][e.p]}function OXe(t,e){return t.c[e.c.p][e.p]}function NXe(t,e){return t.j[e.p]=Hbn(e)}function PXe(t,e){return fmt(t.f,e.tg())}function FXe(t,e){return fmt(t.b,e.tg())}function BXe(t,e){return t.a0?e*e/t:e*e*100}function cQe(t,e){return t>0?e/(t*t):e*100}function uQe(t,e,n){return ue(e,eie(t,n))}function lQe(t,e,n){O$(),t.Xe(e)&&n.td(t)}function u8(t,e,n){var r;r=t.Zc(e),r.Rb(n)}function Fm(t,e,n){return t.a+=e,t.b+=n,t}function hQe(t,e,n){return t.a*=e,t.b*=n,t}function BM(t,e,n){return t.a-=e,t.b-=n,t}function O2t(t,e){return t.a=e.a,t.b=e.b,t}function mj(t){return t.a=-t.a,t.b=-t.b,t}function uWt(t){this.c=t,this.a=1,this.b=1}function lWt(t){this.c=t,Cu(t,0),Su(t,0)}function hWt(t){cs.call(this),z_(this,t)}function fWt(t){Oat(),Bzt(this),this.mf(t)}function dWt(t,e){GT(),NM.call(this,t,e)}function N2t(t,e){Sg(),bj.call(this,t,e)}function gWt(t,e){Sg(),bj.call(this,t,e)}function pWt(t,e){Sg(),N2t.call(this,t,e)}function Al(t,e,n){Il.call(this,t,e,n,2)}function unt(t,e){ah(),Pj.call(this,t,e)}function bWt(t,e){ah(),unt.call(this,t,e)}function P2t(t,e){ah(),unt.call(this,t,e)}function vWt(t,e){ah(),P2t.call(this,t,e)}function F2t(t,e){ah(),Pj.call(this,t,e)}function wWt(t,e){ah(),F2t.call(this,t,e)}function mWt(t,e){ah(),Pj.call(this,t,e)}function fQe(t,e){return t.c.Fc(u(e,133))}function B2t(t,e,n){return Eq(mD(t,e),n)}function dQe(t,e,n){return e.Qk(t.e,t.c,n)}function gQe(t,e,n){return e.Rk(t.e,t.c,n)}function lnt(t,e){return Xp(t.e,u(e,49))}function pQe(t,e,n){J_(fl(t.a),e,MQt(n))}function bQe(t,e,n){J_(Oc(t.a),e,LQt(n))}function R2t(t,e){e.$modCount=t.$modCount}function b_(){b_=X,$S=new ts("root")}function l8(){l8=X,lN=new pqt,new bqt}function yWt(){this.a=new Hv,this.b=new Hv}function j2t(){jee.call(this),this.Bb|=Qa}function xWt(){Kr.call(this,"GROW_TREE",0)}function vQe(t){return t==null?null:P4n(t)}function wQe(t){return t==null?null:H0n(t)}function mQe(t){return t==null?null:Wo(t)}function yQe(t){return t==null?null:Wo(t)}function L0(t){t.o==null&&vbn(t)}function Fe(t){return m_(t==null||Om(t)),t}function ve(t){return m_(t==null||Nm(t)),t}function jr(t){return m_(t==null||ha(t)),t}function $2t(t){this.q=new b.Date(Gv(t))}function RM(t,e){this.c=t,t8.call(this,t,e)}function yj(t,e){this.a=t,RM.call(this,t,e)}function xQe(t,e){this.d=t,Itt(this),this.b=e}function z2t(t,e){zrt.call(this,t),this.a=e}function q2t(t,e){zrt.call(this,t),this.a=e}function kQe(t){p3t.call(this,0,0),this.f=t}function H2t(t,e,n){D$.call(this,t,e,n,null)}function kWt(t,e,n){D$.call(this,t,e,n,null)}function EQe(t,e,n){return t.ue(e,n)<=0?n:e}function TQe(t,e,n){return t.ue(e,n)<=0?e:n}function _Qe(t,e){return u(Wv(t.b,e),149)}function CQe(t,e){return u(Wv(t.c,e),229)}function hnt(t){return u(Pe(t.a,t.b),287)}function EWt(t){return new Re(t.c,t.d+t.a)}function TWt(t){return Rl(),oUt(u(t,197))}function Bm(){Bm=X,Q7t=on((Nl(),W2))}function SQe(t,e){e.a?fvn(t,e):rnt(t.a,e.b)}function _Wt(t,e){z1||ue(t.a,e)}function AQe(t,e){return vM(),H8(e.d.i,t)}function LQe(t,e){return Y6(),new Sue(e,t)}function hd(t,e){return tD(e,U6t),t.f=e,t}function V2t(t,e,n){return n=Ul(t,e,3,n),n}function G2t(t,e,n){return n=Ul(t,e,6,n),n}function U2t(t,e,n){return n=Ul(t,e,9,n),n}function jM(t,e,n){++t.j,t.Ki(),jrt(t,e,n)}function CWt(t,e,n){++t.j,t.Hi(e,t.oi(e,n))}function SWt(t,e,n){var r;r=t.Zc(e),r.Rb(n)}function AWt(t,e,n){return a6t(t.c,t.b,e,n)}function W2t(t,e){return(e&Ti)%t.d.length}function Hs(t,e){ts.call(this,t),this.a=e}function K2t(t,e){ppt.call(this,t),this.a=e}function fnt(t,e){ppt.call(this,t),this.a=e}function LWt(t,e){this.c=t,Kv.call(this,e)}function MWt(t,e){this.a=t,Dzt.call(this,e)}function $M(t,e){this.a=t,Dzt.call(this,e)}function DWt(t){this.a=(ql(t,my),new Jc(t))}function IWt(t){this.a=(ql(t,my),new Jc(t))}function zM(t){return!t.a&&(t.a=new it),t.a}function OWt(t){return t>8?0:t+1}function MQe(t,e){return Fn(),t==e?0:t?1:-1}function Y2t(t,e,n){return O6(t,u(e,22),n)}function DQe(t,e,n){return t.apply(e,n)}function NWt(t,e,n){return t.a+=Ih(e,0,n),t}function X2t(t,e){var n;return n=t.e,t.e=e,n}function IQe(t,e){var n;n=t[dot],n.call(t,e)}function OQe(t,e){var n;n=t[dot],n.call(t,e)}function Rm(t,e){t.a.Vc(t.b,e),++t.b,t.c=-1}function PWt(t){nl(t.e),t.d.b=t.d,t.d.a=t.d}function qM(t){t.b?qM(t.b):t.f.c.zc(t.e,t.d)}function NQe(t,e,n){Yb(),mtt(t,e.Ce(t.a,n))}function PQe(t,e){return het(vie(t.a,e,!0))}function FQe(t,e){return het(wie(t.a,e,!0))}function ff(t,e){return wR(new Array(e),t)}function dnt(t){return String.fromCharCode(t)}function BQe(t){return t==null?null:t.message}function FWt(){this.a=new le,this.b=new le}function BWt(){this.a=new A9,this.b=new Uzt}function RWt(){this.b=new Da,this.c=new le}function Q2t(){this.d=new Da,this.e=new Da}function Z2t(){this.n=new Da,this.o=new Da}function xj(){this.n=new v6,this.i=new S6}function jWt(){this.a=new zJ,this.b=new HX}function $Wt(){this.a=new le,this.d=new le}function zWt(){this.b=new Qs,this.a=new Qs}function qWt(){this.b=new Ar,this.a=new Ar}function HWt(){this.b=new EHt,this.a=new FQ}function VWt(){xj.call(this),this.a=new Da}function v_(t){ccn.call(this,t,(P$(),Mut))}function J2t(t,e,n,r){Fj.call(this,t,e,n,r)}function RQe(t,e,n){n!=null&&Z$(e,bst(t,n))}function jQe(t,e,n){n!=null&&J$(e,bst(t,n))}function tvt(t,e,n){return n=Ul(t,e,11,n),n}function Fi(t,e){return t.a+=e.a,t.b+=e.b,t}function fa(t,e){return t.a-=e.a,t.b-=e.b,t}function $Qe(t,e){return t.n.a=(In(e),e+10)}function zQe(t,e){return t.n.a=(In(e),e+10)}function qQe(t,e){return e==t||l7(cq(e),t)}function GWt(t,e){return Ai(t.a,e,"")==null}function HQe(t,e){return vM(),!H8(e.d.i,t)}function VQe(t,e){Pp(t.f)?obn(t,e):Gdn(t,e)}function GQe(t,e){var n;return n=e.Hh(t.a),n}function jm(t,e){Co.call(this,XC+t+L2+e)}function M6(t,e,n,r){he.call(this,t,e,n,r)}function evt(t,e,n,r){he.call(this,t,e,n,r)}function UWt(t,e,n,r){evt.call(this,t,e,n,r)}function WWt(t,e,n,r){Uj.call(this,t,e,n,r)}function gnt(t,e,n,r){Uj.call(this,t,e,n,r)}function nvt(t,e,n,r){Uj.call(this,t,e,n,r)}function KWt(t,e,n,r){gnt.call(this,t,e,n,r)}function rvt(t,e,n,r){gnt.call(this,t,e,n,r)}function En(t,e,n,r){nvt.call(this,t,e,n,r)}function YWt(t,e,n,r){rvt.call(this,t,e,n,r)}function XWt(t,e,n,r){ewt.call(this,t,e,n,r)}function QWt(t,e,n){this.a=t,L2t.call(this,e,n)}function ZWt(t,e,n){this.c=e,this.b=n,this.a=t}function UQe(t,e,n){return t.d=u(e.Kb(n),164)}function ivt(t,e){return t.Aj().Nh().Kh(t,e)}function svt(t,e){return t.Aj().Nh().Ih(t,e)}function JWt(t,e){return In(t),Gt(t)===Gt(e)}function un(t,e){return In(t),Gt(t)===Gt(e)}function pnt(t,e){return het(vie(t.a,e,!1))}function bnt(t,e){return het(wie(t.a,e,!1))}function WQe(t,e){return t.b.sd(new IVt(t,e))}function KQe(t,e){return t.b.sd(new OVt(t,e))}function tKt(t,e){return t.b.sd(new NVt(t,e))}function avt(t,e,n){return t.lastIndexOf(e,n)}function YQe(t,e,n){return js(t[e.b],t[n.b])}function XQe(t,e){return ee(e,(xe(),CO),t)}function QQe(t,e){return mu(e.a.d.p,t.a.d.p)}function ZQe(t,e){return mu(t.a.d.p,e.a.d.p)}function JQe(t,e){return js(t.c-t.s,e.c-e.s)}function eKt(t){return t.c?Go(t.c.a,t,0):-1}function tZe(t){return t<100?null:new Lp(t)}function D6(t){return t==U2||t==h0||t==Kc}function nKt(t,e){return _t(e,15)&&cue(t.c,e)}function eZe(t,e){z1||e&&(t.d=e)}function vnt(t,e){var n;return n=e,!!Lyt(t,n)}function ovt(t,e){this.c=t,Vnt.call(this,t,e)}function rKt(t){this.c=t,Uet.call(this,Dq,0)}function iKt(t,e){atn.call(this,t,t.length,e)}function nZe(t,e,n){return u(t.c,69).lk(e,n)}function kj(t,e,n){return u(t.c,69).mk(e,n)}function rZe(t,e,n){return dQe(t,u(e,332),n)}function cvt(t,e,n){return gQe(t,u(e,332),n)}function iZe(t,e,n){return nae(t,u(e,332),n)}function sKt(t,e,n){return n0n(t,u(e,332),n)}function w_(t,e){return e==null?null:ny(t.b,e)}function uvt(t){return Nm(t)?(In(t),t):t.ke()}function Ej(t){return!isNaN(t)&&!isFinite(t)}function aKt(t){fd(),this.a=(pn(),new Yk(t))}function HM(t){f8(),this.d=t,this.a=new F3}function oh(t,e,n){this.a=t,this.b=e,this.c=n}function oKt(t,e,n){this.a=t,this.b=e,this.c=n}function cKt(t,e,n){this.d=t,this.b=n,this.a=e}function wnt(t){xUt(this),Mh(this),Ka(this,t)}function qu(t){Qet(this),Tvt(this.c,0,t.Pc())}function uKt(t){Dl(t.a),ate(t.c,t.b),t.b=null}function lKt(t){this.a=t,qd(),Au(Date.now())}function hKt(){hKt=X,A7t=new C,YH=new C}function mnt(){mnt=X,m7t=new vt,Lge=new Ot}function fKt(){fKt=X,B4e=Nt(Qn,Me,1,0,5,1)}function dKt(){dKt=X,e5e=Nt(Qn,Me,1,0,5,1)}function lvt(){lvt=X,n5e=Nt(Qn,Me,1,0,5,1)}function fd(){fd=X,new wpt((pn(),pn(),uo))}function sZe(t){return P$(),Xr((vte(),Ige),t)}function aZe(t){return N1(),Xr((FJt(),Rge),t)}function oZe(t){return Nz(),Xr((HZt(),Vge),t)}function cZe(t){return $$(),Xr((VZt(),Gge),t)}function uZe(t){return gq(),Xr((Mne(),Uge),t)}function lZe(t){return Zf(),Xr((OJt(),Yge),t)}function hZe(t){return rl(),Xr((NJt(),Qge),t)}function fZe(t){return Tu(),Xr((PJt(),Jge),t)}function dZe(t){return Lq(),Xr((UGt(),kpe),t)}function gZe(t){return tw(),Xr((mte(),Tpe),t)}function pZe(t){return ex(),Xr((yte(),Cpe),t)}function bZe(t){return sC(),Xr((xte(),Lpe),t)}function vZe(t){return AR(),Xr((xZt(),Mpe),t)}function wZe(t){return z$(),Xr((GZt(),Wpe),t)}function mZe(t){return j_(),Xr((BJt(),gbe),t)}function yZe(t){return Ya(),Xr((Qte(),wbe),t)}function xZe(t){return U8(),Xr((wte(),Ebe),t)}function kZe(t){return ew(),Xr((RJt(),Lbe),t)}function hvt(t,e){if(!t)throw nt(new Pn(e))}function EZe(t){return Gn(),Xr((wee(),Obe),t)}function fvt(t){Fj.call(this,t.d,t.c,t.a,t.b)}function ynt(t){Fj.call(this,t.d,t.c,t.a,t.b)}function dvt(t,e,n){this.b=t,this.c=e,this.a=n}function Tj(t,e,n){this.b=t,this.a=e,this.c=n}function gKt(t,e,n){this.a=t,this.b=e,this.c=n}function gvt(t,e,n){this.a=t,this.b=e,this.c=n}function pKt(t,e,n){this.a=t,this.b=e,this.c=n}function pvt(t,e,n){this.a=t,this.b=e,this.c=n}function bKt(t,e,n){this.b=t,this.a=e,this.c=n}function _j(t,e,n){this.e=e,this.b=t,this.d=n}function TZe(t,e,n){return Yb(),t.a.Od(e,n),e}function xnt(t){var e;return e=new Er,e.e=t,e}function bvt(t){var e;return e=new Jzt,e.b=t,e}function VM(){VM=X,cV=new AY,uV=new LY}function df(){df=X,Wbe=new wX,Kbe=new yF}function _Ze(t){return dz(),Xr((Ete(),qbe),t)}function CZe(t){return O1(),Xr((_te(),Qbe),t)}function SZe(t){return fq(),Xr((mne(),s2e),t)}function AZe(t){return rx(),Xr((xee(),a2e),t)}function LZe(t){return I$(),Xr((QZt(),o2e),t)}function MZe(t){return K6(),Xr((jJt(),c2e),t)}function DZe(t){return p4(),Xr((Ute(),Jbe),t)}function IZe(t){return Jv(),Xr((qJt(),i2e),t)}function OZe(t){return X$(),Xr(($Jt(),u2e),t)}function NZe(t){return m2(),Xr((Vte(),l2e),t)}function PZe(t){return TD(),Xr((WZt(),h2e),t)}function FZe(t){return h2(),Xr((zJt(),d2e),t)}function BZe(t){return nq(),Xr((_ee(),g2e),t)}function RZe(t){return bD(),Xr((KZt(),p2e),t)}function jZe(t){return nI(),Xr((Eee(),b2e),t)}function $Ze(t){return f7(),Xr((kee(),v2e),t)}function zZe(t){return go(),Xr((Gne(),w2e),t)}function qZe(t){return G8(),Xr((VJt(),m2e),t)}function HZe(t){return B0(),Xr((HJt(),x2e),t)}function VZe(t){return x$(),Xr((ZZt(),k2e),t)}function GZe(t){return ph(),Xr((Wte(),E2e),t)}function UZe(t){return Zz(),Xr((Tee(),Rwe),t)}function WZe(t){return Y_(),Xr((GJt(),jwe),t)}function KZe(t){return sy(),Xr((Cte(),$we),t)}function YZe(t){return ho(),Xr((KJt(),Uwe),t)}function XZe(t){return m4(),Xr((wne(),qwe),t)}function QZe(t){return j0(),Xr((WJt(),Hwe),t)}function ZZe(t){return yD(),Xr((XZt(),Vwe),t)}function JZe(t){return uz(),Xr((UJt(),Wwe),t)}function tJe(t){return aC(),Xr((Gte(),zwe),t)}function eJe(t){return lD(),Xr((YZt(),Kwe),t)}function nJe(t){return Z8(),Xr((XJt(),Ywe),t)}function rJe(t){return oz(),Xr((QJt(),Xwe),t)}function iJe(t){return gz(),Xr((YJt(),Qwe),t)}function sJe(t){return Zv(),Xr((ZJt(),lme),t)}function aJe(t){return B_(),Xr((tJt(),pme),t)}function oJe(t){return gd(),Xr((eJt(),kme),t)}function cJe(t){return C1(),Xr((nJt(),Tme),t)}function uJe(t){return Yf(),Xr((JZt(),jme),t)}function lJe(t){return qv(),Xr((rJt(),Ume),t)}function hJe(t){return o7(),Xr((kte(),Wme),t)}function fJe(t){return fC(),Xr((Cee(),Yme),t)}function dJe(t){return d$(),Xr((aJt(),uye),t)}function gJe(t){return iz(),Xr((sJt(),pye),t)}function pJe(t){return v$(),Xr((iJt(),lye),t)}function bJe(t){return _z(),Xr((JJt(),vye),t)}function vJe(t){return N$(),Xr((oJt(),wye),t)}function wJe(t){return RD(),Xr((tte(),mye),t)}function mJe(t){return Vz(),Xr((Tte(),Nye),t)}function yJe(t){return cz(),Xr((nte(),Pye),t)}function xJe(t){return Tz(),Xr((ete(),Fye),t)}function kJe(t){return w7(),Xr((Xte(),n3e),t)}function EJe(t){return VD(),Xr((rte(),r3e),t)}function TJe(t){return MR(),Xr((mZt(),i3e),t)}function _Je(t){return DR(),Xr((wZt(),a3e),t)}function CJe(t){return hD(),Xr((uJt(),o3e),t)}function SJe(t){return iI(),Xr((Kte(),c3e),t)}function AJe(t){return HT(),Xr((yZt(),T3e),t)}function LJe(t){return ND(),Xr((cJt(),_3e),t)}function MJe(t){return t1(),Xr((Yte(),D3e),t)}function DJe(t){return Hg(),Xr((yne(),O3e),t)}function IJe(t){return Qd(),Xr((yee(),N3e),t)}function OJe(t){return cy(),Xr((mee(),$3e),t)}function NJe(t){return co(),Xr((WGt(),jbe),t)}function PJe(t){return $8(),Xr((UZt(),Rbe),t)}function FJe(t){return fo(),Xr((Zte(),e4e),t)}function BJe(t){return D1(),Xr((ste(),n4e),t)}function RJe(t){return q0(),Xr((Lte(),r4e),t)}function jJe(t){return tq(),Xr((Aee(),i4e),t)}function $Je(t){return $0(),Xr((ite(),a4e),t)}function zJe(t){return Vl(),Xr((Ate(),c4e),t)}function qJe(t){return fy(),Xr((Lne(),u4e),t)}function HJe(t){return u4(),Xr((Jte(),l4e),t)}function VJe(t){return va(),Xr((gee(),h4e),t)}function GJe(t){return il(),Xr((See(),f4e),t)}function UJe(t){return Nl(),Xr((Dte(),w4e),t)}function WJe(t){return bl(),Xr((Une(),m4e),t)}function KJe(t){return be(),Xr((tee(),d4e),t)}function YJe(t){return Az(),Xr((Mte(),y4e),t)}function XJe(t){return Ol(),Xr((Ste(),E4e),t)}function QJe(t){return p7(),Xr((xne(),F4e),t)}function ZJe(t,e){return In(t),t+(In(e),e)}function JJe(t,e){return qd(),Or(Kt(t.a),e)}function ttn(t,e){return qd(),Or(Kt(t.a),e)}function knt(t,e){this.c=t,this.a=e,this.b=e-t}function vKt(t,e,n){this.a=t,this.b=e,this.c=n}function vvt(t,e,n){this.a=t,this.b=e,this.c=n}function wvt(t,e,n){this.a=t,this.b=e,this.c=n}function wKt(t,e,n){this.a=t,this.b=e,this.c=n}function mKt(t,e,n){this.a=t,this.b=e,this.c=n}function Lg(t,e,n){this.e=t,this.a=e,this.c=n}function yKt(t,e,n){ah(),Mwt.call(this,t,e,n)}function Ent(t,e,n){ah(),gwt.call(this,t,e,n)}function mvt(t,e,n){ah(),gwt.call(this,t,e,n)}function yvt(t,e,n){ah(),gwt.call(this,t,e,n)}function xKt(t,e,n){ah(),Ent.call(this,t,e,n)}function xvt(t,e,n){ah(),Ent.call(this,t,e,n)}function kKt(t,e,n){ah(),xvt.call(this,t,e,n)}function EKt(t,e,n){ah(),mvt.call(this,t,e,n)}function TKt(t,e,n){ah(),yvt.call(this,t,e,n)}function GM(t,e){return Dr(t),Dr(e),new GHt(t,e)}function I6(t,e){return Dr(t),Dr(e),new BKt(t,e)}function etn(t,e){return Dr(t),Dr(e),new RKt(t,e)}function ntn(t,e){return Dr(t),Dr(e),new WHt(t,e)}function u(t,e){return m_(t==null||sst(t,e)),t}function h8(t){var e;return e=new le,Zrt(e,t),e}function rtn(t){var e;return e=new Qs,Zrt(e,t),e}function _Kt(t){var e;return e=new Spt,fit(e,t),e}function UM(t){var e;return e=new cs,fit(e,t),e}function itn(t){return!t.e&&(t.e=new le),t.e}function stn(t){return!t.c&&(t.c=new xm),t.c}function ue(t,e){return t.c[t.c.length]=e,!0}function CKt(t,e){this.c=t,this.b=e,this.a=!1}function kvt(t){this.d=t,Itt(this),this.b=Qtn(t.d)}function SKt(){this.a=";,;",this.b="",this.c=""}function atn(t,e,n){AYt.call(this,e,n),this.a=t}function AKt(t,e,n){this.b=t,qGt.call(this,e,n)}function Evt(t,e,n){this.c=t,RR.call(this,e,n)}function Tvt(t,e,n){U4t(n,0,t,e,n.length,!1)}function Vd(t,e,n,r,s){t.b=e,t.c=n,t.d=r,t.a=s}function otn(t,e){e&&(t.b=e,t.a=(qp(e),e.a))}function _vt(t,e,n,r,s){t.d=e,t.c=n,t.a=r,t.b=s}function Cvt(t){var e,n;e=t.b,n=t.c,t.b=n,t.c=e}function Svt(t){var e,n;n=t.d,e=t.a,t.d=e,t.a=n}function Avt(t){return Wp(den(Vo(t)?Dh(t):t))}function ctn(t,e){return mu(VKt(t.d),VKt(e.d))}function utn(t,e){return e==(be(),Bn)?t.c:t.d}function f8(){f8=X,W_t=(be(),Bn),gG=Hn}function LKt(){this.b=Zt(ve(Ie((n1(),Wut))))}function MKt(t){return Yb(),Nt(Qn,Me,1,t,5,1)}function ltn(t){return new Re(t.c+t.b,t.d+t.a)}function htn(t,e){return LR(),mu(t.d.p,e.d.p)}function Tnt(t){return Zn(t.b!=0),fh(t,t.a.a)}function ftn(t){return Zn(t.b!=0),fh(t,t.c.b)}function Lvt(t,e){if(!t)throw nt(new jqt(e))}function Cj(t,e){if(!t)throw nt(new Pn(e))}function Mvt(t,e,n){i8.call(this,t,e),this.b=n}function WM(t,e,n){Gbt.call(this,t,e),this.c=n}function DKt(t,e,n){cee.call(this,e,n),this.d=t}function Dvt(t){lvt(),Tk.call(this),this.th(t)}function IKt(t,e,n){this.a=t,H3.call(this,e,n)}function OKt(t,e,n){this.a=t,H3.call(this,e,n)}function Sj(t,e,n){Gbt.call(this,t,e),this.c=n}function NKt(){S8(),Den.call(this,(Ip(),Xh))}function PKt(t){return t!=null&&!Git(t,iA,sA)}function dtn(t,e){return(Vre(t)<<4|Vre(e))&Ms}function gtn(t,e){return Qj(),dst(t,e),new cXt(t,e)}function Qb(t,e){var n;t.n&&(n=e,ue(t.f,n))}function d8(t,e,n){var r;r=new Hm(n),Qf(t,e,r)}function ptn(t,e){var n;return n=t.c,Ymt(t,e),n}function Ivt(t,e){return e<0?t.g=-1:t.g=e,t}function Aj(t,e){return Jan(t),t.a*=e,t.b*=e,t}function FKt(t,e,n,r,s){t.c=e,t.d=n,t.b=r,t.a=s}function ai(t,e){return ks(t,e,t.c.b,t.c),!0}function Ovt(t){t.a.b=t.b,t.b.a=t.a,t.a=t.b=null}function _nt(t){this.b=t,this.a=Pv(this.b.a).Ed()}function BKt(t,e){this.b=t,this.a=e,fT.call(this)}function RKt(t,e){this.a=t,this.b=e,fT.call(this)}function jKt(t,e){AYt.call(this,e,1040),this.a=t}function KM(t){return t==0||isNaN(t)?t:t<0?-1:1}function btn(t){return R6(),Zd(t)==hs(Zp(t))}function vtn(t){return R6(),Zp(t)==hs(Zd(t))}function Nv(t,e){return lC(t,new i8(e.a,e.b))}function wtn(t){return!Wa(t)&&t.c.i.c==t.d.i.c}function Lj(t){var e;return e=t.n,t.a.b+e.d+e.a}function $Kt(t){var e;return e=t.n,t.e.b+e.d+e.a}function Nvt(t){var e;return e=t.n,t.e.a+e.b+e.c}function zKt(t){return yi(),new Gd(0,t)}function mtn(t){return t.a?t.a:srt(t)}function m_(t){if(!t)throw nt(new Kk(null))}function qKt(){qKt=X,Dft=(pn(),new I(aut))}function Mj(){Mj=X,new D3t((Ztt(),wut),(Jtt(),vut))}function HKt(){HKt=X,n7t=Nt(Ha,re,19,256,0,1)}function Cnt(t,e,n,r){a3t.call(this,t,e,n,r,0,0)}function ytn(t,e,n){return Ai(t.b,u(n.b,17),e)}function xtn(t,e,n){return Ai(t.b,u(n.b,17),e)}function ktn(t,e){return ue(t,new Re(e.a,e.b))}function Etn(t,e){return t.c=e)throw nt(new Ept)}function sen(t,e,n){return ls(e,0,Rvt(e[0],n[0])),e}function aen(t,e,n){e.Ye(n,Zt(ve(tr(t.b,n)))*t.a)}function SYt(t,e,n){return x4(),z8(t,e)&&z8(t,n)}function T_(t){return il(),!t.Hc(tg)&&!t.Hc(Eb)}function Vj(t){return new Re(t.c+t.b/2,t.d+t.a/2)}function Rnt(t,e){return e.kh()?Xp(t.b,u(e,49)):e}function twt(t,e){this.e=t,this.d=e&64?e|vd:e}function AYt(t,e){this.c=0,this.d=t,this.b=e|64|vd}function Gj(t){this.b=new Jc(11),this.a=(Q3(),t)}function jnt(t){this.b=null,this.a=(Q3(),t||b7t)}function LYt(t){this.a=Zie(t.a),this.b=new qu(t.b)}function MYt(t){this.b=t,A6.call(this,t),OUt(this)}function DYt(t){this.b=t,PM.call(this,t),NUt(this)}function qm(t,e,n){this.a=t,M6.call(this,e,n,5,6)}function ewt(t,e,n,r){this.b=t,Bs.call(this,e,n,r)}function oa(t,e,n,r,s){Vrt.call(this,t,e,n,r,s,-1)}function __(t,e,n,r,s){gD.call(this,t,e,n,r,s,-1)}function he(t,e,n,r){Bs.call(this,t,e,n),this.b=r}function Uj(t,e,n,r){WM.call(this,t,e,n),this.b=r}function IYt(t){PGt.call(this,t,!1),this.a=!1}function OYt(t,e){this.b=t,ctt.call(this,t.b),this.a=e}function NYt(t,e){Vm(),uYe.call(this,t,yz(new Cl(e)))}function Wj(t,e){return yi(),new pwt(t,e,0)}function $nt(t,e){return yi(),new pwt(6,t,e)}function oen(t,e){return un(t.substr(0,e.length),e)}function Ml(t,e){return ha(e)?crt(t,e):!!Fo(t.f,e)}function Ea(t,e){for(In(e);t.Ob();)e.td(t.Pb())}function Y3(t,e,n){eb(),this.e=t,this.d=e,this.a=n}function Mg(t,e,n,r){var s;s=t.i,s.i=e,s.a=n,s.b=r}function nwt(t){var e;for(e=t;e.f;)e=e.f;return e}function P6(t){var e;return e=K_(t),Zn(e!=null),e}function cen(t){var e;return e=Wun(t),Zn(e!=null),e}function p8(t,e){var n;return n=t.a.gc(),dmt(e,n),n-e}function rwt(t,e){var n;for(n=0;n0?b.Math.log(t/e):-100}function PYt(t,e){return _c(t,e)<0?-1:_c(t,e)>0?1:0}function cwt(t,e,n){return Cle(t,u(e,46),u(n,167))}function FYt(t,e){return u(Zvt(Pv(t.a)).Xb(e),42).cd()}function ven(t,e){return $an(e,t.length),new jKt(t,e)}function Vnt(t,e){this.d=t,nr.call(this,t),this.e=e}function Fv(t){this.d=(In(t),t),this.a=0,this.c=Dq}function uwt(t,e){vv.call(this,1),this.a=t,this.b=e}function BYt(t,e){return t.c?BYt(t.c,e):ue(t.b,e),t}function wen(t,e,n){var r;return r=Xm(t,e),Art(t,e,n),r}function lwt(t,e){var n;return n=t.slice(0,e),Smt(n,t)}function RYt(t,e,n){var r;for(r=0;r=t.g}function Jnt(t,e,n){var r;return r=lit(t,e,n),R5t(t,r)}function F6(t,e){var n;n=t.a.length,Xm(t,n),Art(t,n,e)}function JYt(t,e){var n;n=console[t],n.call(console,e)}function tXt(t,e){var n;++t.j,n=t.Vi(),t.Ii(t.oi(n,e))}function Men(t,e,n){u(e.b,65),_u(e.a,new vvt(t,n,e))}function gwt(t,e,n){oR.call(this,e),this.a=t,this.b=n}function pwt(t,e,n){vv.call(this,t),this.a=e,this.b=n}function bwt(t,e,n){this.a=t,ppt.call(this,e),this.b=n}function eXt(t,e,n){this.a=t,Uwt.call(this,8,e,null,n)}function Den(t){this.a=(In(Zr),Zr),this.b=t,new Fpt}function nXt(t){this.c=t,this.b=this.c.a,this.a=this.c.e}function vwt(t){this.c=t,this.b=t.a.d.a,R2t(t.a.e,this)}function Dl(t){Pm(t.c!=-1),t.d.$c(t.c),t.b=t.c,t.c=-1}function A_(t){return b.Math.sqrt(t.a*t.a+t.b*t.b)}function Rv(t,e){return g8(e,t.a.c.length),Pe(t.a,e)}function dd(t,e){return Gt(t)===Gt(e)||t!=null&&Si(t,e)}function Ien(t){return 0>=t?new ubt:won(t-1)}function Oen(t){return n3?crt(n3,t):!1}function rXt(t){return t?t.dc():!t.Kc().Ob()}function $a(t){return!t.a&&t.c?t.c.b:t.a}function Nen(t){return!t.a&&(t.a=new Bs(Tb,t,4)),t.a}function jv(t){return!t.d&&(t.d=new Bs(wo,t,1)),t.d}function In(t){if(t==null)throw nt(new LT);return t}function L_(t){t.c?t.c.He():(t.d=!0,j2n(t))}function qp(t){t.c?qp(t.c):(p2(t),t.d=!0)}function iXt(t){xwt(t.a),t.b=Nt(Qn,Me,1,t.b.length,5,1)}function Pen(t,e){return mu(e.j.c.length,t.j.c.length)}function Fen(t,e){t.c<0||t.b.b=0?t.Bh(n):K4t(t,e)}function sXt(t){var e,n;return e=t.c.i.c,n=t.d.i.c,e==n}function Ren(t){if(t.p!=4)throw nt(new Ru);return t.e}function jen(t){if(t.p!=3)throw nt(new Ru);return t.e}function $en(t){if(t.p!=6)throw nt(new Ru);return t.f}function zen(t){if(t.p!=6)throw nt(new Ru);return t.k}function qen(t){if(t.p!=3)throw nt(new Ru);return t.j}function Hen(t){if(t.p!=4)throw nt(new Ru);return t.j}function wwt(t){return!t.b&&(t.b=new cR(new Qtt)),t.b}function $v(t){return t.c==-2&&Hk(t,o0n(t.g,t.b)),t.c}function w8(t,e){var n;return n=Knt("",t),n.n=e,n.i=1,n}function Ven(t,e){Ont(u(e.b,65),t),_u(e.a,new ri(t))}function Gen(t,e){Or((!t.a&&(t.a=new $M(t,t)),t.a),e)}function aXt(t,e){this.b=t,Vnt.call(this,t,e),OUt(this)}function oXt(t,e){this.b=t,ovt.call(this,t,e),NUt(this)}function mwt(t,e,n,r){Cv.call(this,t,e),this.d=n,this.a=r}function Xj(t,e,n,r){Cv.call(this,t,n),this.a=e,this.f=r}function cXt(t,e){_Xe.call(this,mon(Dr(t),Dr(e))),this.a=e}function uXt(){C4t.call(this,D2,(fHt(),l5e)),d3n(this)}function lXt(){C4t.call(this,jh,(Zk(),XAt)),kyn(this)}function hXt(){Kr.call(this,"DELAUNAY_TRIANGULATION",0)}function Uen(t){return String.fromCharCode.apply(null,t)}function Ai(t,e,n){return ha(e)?Ao(t,e,n):lu(t.f,e,n)}function ywt(t){return pn(),t?t.ve():(Q3(),Q3(),w7t)}function Wen(t,e,n){return X6(),n.pg(t,u(e.cd(),146))}function fXt(t,e){return Mj(),new D3t(new WUt(t),new UUt(e))}function Ken(t){return ql(t,jat),q$(Ra(Ra(5,t),t/10|0))}function Qj(){Qj=X,uge=new tet(ut(ot(I2,1),Iq,42,0,[]))}function dXt(t){return!t.d&&(t.d=new T(t.c.Cc())),t.d}function m8(t){return!t.a&&(t.a=new Wqt(t.c.vc())),t.a}function gXt(t){return!t.b&&(t.b=new Yk(t.c.ec())),t.b}function Wd(t,e){for(;e-- >0;)t=t<<1|(t<0?1:0);return t}function Rc(t,e){return Gt(t)===Gt(e)||t!=null&&Si(t,e)}function Yen(t,e){return Fn(),u(e.b,19).ar&&++r,r}function D0(t){var e,n;return n=(e=new wv,e),O8(n,t),n}function irt(t){var e,n;return n=(e=new wv,e),L4t(n,t),n}function lnn(t,e){var n;return n=tr(t.f,e),ayt(e,n),null}function srt(t){var e;return e=xon(t),e||null}function TXt(t){return!t.b&&(t.b=new he(ra,t,12,3)),t.b}function hnn(t){return t!=null&&pM(rU,t.toLowerCase())}function fnn(t,e){return js(Hu(t)*Ll(t),Hu(e)*Ll(e))}function dnn(t,e){return js(Hu(t)*Ll(t),Hu(e)*Ll(e))}function gnn(t,e){return js(t.d.c+t.d.b/2,e.d.c+e.d.b/2)}function pnn(t,e){return js(t.g.c+t.g.b/2,e.g.c+e.g.b/2)}function _Xt(t,e,n){n.a?Su(t,e.b-t.f/2):Cu(t,e.a-t.g/2)}function CXt(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function SXt(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function t2(t,e,n,r){this.e=t,this.a=e,this.c=n,this.d=r}function AXt(t,e,n,r){this.a=t,this.c=e,this.d=n,this.b=r}function LXt(t,e,n,r){ah(),xJt.call(this,e,n,r),this.a=t}function MXt(t,e,n,r){ah(),xJt.call(this,e,n,r),this.a=t}function DXt(t,e){this.a=t,xQe.call(this,t,u(t.d,15).Zc(e))}function art(t){this.f=t,this.c=this.f.e,t.f>0&&Hse(this)}function IXt(t,e,n,r){this.b=t,this.c=r,Uet.call(this,e,n)}function OXt(t){return Zn(t.b=0&&un(t.substr(n,e.length),e)}function Hp(t,e,n,r,s,o,h){return new Mrt(t.e,e,n,r,s,o,h)}function XXt(t,e,n,r,s,o){this.a=t,rit.call(this,e,n,r,s,o)}function QXt(t,e,n,r,s,o){this.a=t,rit.call(this,e,n,r,s,o)}function ZXt(t,e){this.g=t,this.d=ut(ot(o0,1),Gg,10,0,[e])}function Dg(t,e){this.e=t,this.a=Qn,this.b=xue(e),this.c=e}function JXt(t,e){xj.call(this),Pmt(this),this.a=t,this.c=e}function eD(t,e,n,r){ls(t.c[e.g],n.g,r),ls(t.c[n.g],e.g,r)}function hrt(t,e,n,r){ls(t.c[e.g],e.g,n),ls(t.b[e.g],e.g,r)}function Bnn(){return lD(),ut(ot(R_t,1),oe,376,0,[wht,IO])}function Rnn(){return bD(),ut(ot(M9t,1),oe,479,0,[L9t,FV])}function jnn(){return TD(),ut(ot(S9t,1),oe,419,0,[NV,C9t])}function $nn(){return I$(),ut(ot(m9t,1),oe,422,0,[w9t,mlt])}function znn(){return x$(),ut(ot(H9t,1),oe,420,0,[Nlt,q9t])}function qnn(){return yD(),ut(ot(N_t,1),oe,421,0,[pht,bht])}function Hnn(){return B_(),ut(ot(gme,1),oe,523,0,[NS,OS])}function Vnn(){return Yf(),ut(ot(Rme,1),oe,520,0,[Uy,vb])}function Gnn(){return gd(),ut(ot(xme,1),oe,516,0,[Rw,Zg])}function Unn(){return C1(),ut(ot(Eme,1),oe,515,0,[z2,V1])}function Wnn(){return qv(),ut(ot(Gme,1),oe,455,0,[wb,n5])}function Knn(){return v$(),ut(ot(cCt,1),oe,425,0,[Oht,oCt])}function Ynn(){return d$(),ut(ot(aCt,1),oe,480,0,[Iht,sCt])}function Xnn(){return iz(),ut(ot(uCt,1),oe,495,0,[TG,xE])}function Qnn(){return N$(),ut(ot(hCt,1),oe,426,0,[lCt,Bht])}function Znn(){return ND(),ut(ot(gSt,1),oe,429,0,[OG,dSt])}function Jnn(){return hD(),ut(ot(UCt,1),oe,430,0,[Uht,DG])}function trn(){return Nz(),ut(ot(D7t,1),oe,428,0,[Out,M7t])}function ern(){return $$(),ut(ot(O7t,1),oe,427,0,[I7t,Nut])}function nrn(){return z$(),ut(ot(oEt,1),oe,424,0,[Gut,rV])}function rrn(){return $8(),ut(ot(Bbe,1),oe,511,0,[pO,ilt])}function c$(t,e,n,r){return n>=0?t.jh(e,n,r):t.Sg(null,n,r)}function frt(t){return t.b.b==0?t.a.$e():Tnt(t.b)}function irn(t){if(t.p!=5)throw nt(new Ru);return Mr(t.f)}function srn(t){if(t.p!=5)throw nt(new Ru);return Mr(t.k)}function Lwt(t){return Gt(t.a)===Gt((dit(),Aft))&&a3n(t),t.a}function tQt(t){this.a=u(Dr(t),271),this.b=(pn(),new k2t(t))}function eQt(t,e){cpt(this,new Re(t.a,t.b)),XB(this,UM(e))}function qv(){qv=X,wb=new Bbt(fx,0),n5=new Bbt(dx,1)}function gd(){gd=X,Rw=new Pbt(dx,0),Zg=new Pbt(fx,1)}function Hv(){pKe.call(this,new x6(Qm(12))),w2t(!0),this.a=2}function drt(t,e,n){yi(),vv.call(this,t),this.b=e,this.a=n}function Mwt(t,e,n){ah(),oR.call(this,e),this.a=t,this.b=n}function nQt(t){xj.call(this),Pmt(this),this.a=t,this.c=!0}function rQt(t){var e;e=t.c.d.b,t.b=e,t.a=t.c.d,e.a=t.c.d.b=t}function u$(t){var e;fon(t.a),gUt(t.a),e=new er(t.a),s3t(e)}function arn(t,e){fue(t,!0),_u(t.e.wf(),new dvt(t,!0,e))}function l$(t,e){return FZt(e),uon(t,Nt(Sr,Jr,25,e,15,1),e)}function orn(t,e){return R6(),t==hs(Zd(e))||t==hs(Zp(e))}function jc(t,e){return e==null?cc(Fo(t.f,null)):UT(t.g,e)}function crn(t){return t.b==0?null:(Zn(t.b!=0),fh(t,t.a.a))}function Cs(t){return Math.max(Math.min(t,Ti),-2147483648)|0}function urn(t,e){var n=Eut[t.charCodeAt(0)];return n??t}function h$(t,e){return r$(t,"set1"),r$(e,"set2"),new JHt(t,e)}function lrn(t,e){var n;return n=ion(t.f,e),Fi(mj(n),t.f.d)}function D_(t,e){var n,r;return n=e,r=new Ve,the(t,n,r),r.d}function grt(t,e,n,r){var s;s=new VWt,e.a[n.g]=s,O6(t.b,r,s)}function Dwt(t,e,n){var r;r=t.Yg(e),r>=0?t.sh(r,n):y5t(t,e,n)}function Z3(t,e,n){g$(),t&&Ai(_ft,t,e),t&&Ai(cN,t,n)}function iQt(t,e,n){this.i=new le,this.b=t,this.g=e,this.a=n}function f$(t,e,n){this.c=new le,this.e=t,this.f=e,this.b=n}function Iwt(t,e,n){this.a=new le,this.e=t,this.f=e,this.c=n}function sQt(t,e){uj(this),this.f=e,this.g=t,n$(this),this._d()}function nD(t,e){var n;n=t.q.getHours(),t.q.setDate(e),yC(t,n)}function aQt(t,e){var n;for(Dr(e),n=t.a;n;n=n.c)e.Od(n.g,n.i)}function oQt(t){var e;return e=new xR(Qm(t.length)),Eyt(e,t),e}function hrn(t){function e(){}return e.prototype=t||{},new e}function frn(t,e){return Fne(t,e)?(Nee(t),!0):!1}function I0(t,e){if(e==null)throw nt(new LT);return uhn(t,e)}function drn(t){if(t.qe())return null;var e=t.n;return $H[e]}function rD(t){return t.Db>>16!=3?null:u(t.Cb,33)}function _1(t){return t.Db>>16!=9?null:u(t.Cb,33)}function cQt(t){return t.Db>>16!=6?null:u(t.Cb,79)}function uQt(t){return t.Db>>16!=7?null:u(t.Cb,235)}function lQt(t){return t.Db>>16!=7?null:u(t.Cb,160)}function hs(t){return t.Db>>16!=11?null:u(t.Cb,33)}function hQt(t,e){var n;return n=t.Yg(e),n>=0?t.lh(n):Hst(t,e)}function fQt(t,e){var n;return n=new Bvt(e),dae(n,t),new qu(n)}function Owt(t){var e;return e=t.d,e=t.si(t.f),Or(t,e),e.Ob()}function dQt(t,e){return t.b+=e.b,t.c+=e.c,t.d+=e.d,t.a+=e.a,t}function prt(t,e){return b.Math.abs(t)0}function gQt(){this.a=new A0,this.e=new Qs,this.g=0,this.i=0}function pQt(t){this.a=t,this.b=Nt(hme,re,1944,t.e.length,0,2)}function brt(t,e,n){var r;r=nre(t,e,n),t.b=new rz(r.c.length)}function C1(){C1=X,z2=new Nbt(kot,0),V1=new Nbt("UP",1)}function d$(){d$=X,Iht=new Rbt(L1e,0),sCt=new Rbt("FAN",1)}function g$(){g$=X,_ft=new Ar,cN=new Ar,NYe(Sge,new X9)}function prn(t){if(t.p!=0)throw nt(new Ru);return a_(t.f,0)}function brn(t){if(t.p!=0)throw nt(new Ru);return a_(t.k,0)}function bQt(t){return t.Db>>16!=3?null:u(t.Cb,147)}function E8(t){return t.Db>>16!=6?null:u(t.Cb,235)}function Gm(t){return t.Db>>16!=17?null:u(t.Cb,26)}function vQt(t,e){var n=t.a=t.a||[];return n[e]||(n[e]=t.le(e))}function vrn(t,e){var n;return n=t.a.get(e),n??new Array}function wrn(t,e){var n;n=t.q.getHours(),t.q.setMonth(e),yC(t,n)}function Ao(t,e,n){return e==null?lu(t.f,null,n):nw(t.g,e,n)}function I_(t,e,n,r,s,o){return new F0(t.e,e,t.aj(),n,r,s,o)}function iD(t,e,n){return t.a=Bl(t.a,0,e)+(""+n)+OM(t.a,e),t}function mrn(t,e,n){return ue(t.a,(Qj(),dst(e,n),new Cv(e,n))),t}function Nwt(t){return y2t(t.c),t.e=t.a=t.c,t.c=t.c.c,++t.d,t.a.f}function wQt(t){return y2t(t.e),t.c=t.a=t.e,t.e=t.e.e,--t.d,t.a.f}function pa(t,e){t.d&&Eu(t.d.e,t),t.d=e,t.d&&ue(t.d.e,t)}function Ba(t,e){t.c&&Eu(t.c.g,t),t.c=e,t.c&&ue(t.c.g,t)}function Lo(t,e){t.c&&Eu(t.c.a,t),t.c=e,t.c&&ue(t.c.a,t)}function tc(t,e){t.i&&Eu(t.i.j,t),t.i=e,t.i&&ue(t.i.j,t)}function mQt(t,e,n){this.a=e,this.c=t,this.b=(Dr(n),new qu(n))}function yQt(t,e,n){this.a=e,this.c=t,this.b=(Dr(n),new qu(n))}function xQt(t,e){this.a=t,this.c=uc(this.a),this.b=new o$(e)}function yrn(t){var e;return p2(t),e=new Qs,Wi(t,new Ge(e))}function Um(t,e){if(t<0||t>e)throw nt(new Co(j6t+t+$6t+e))}function Pwt(t,e){return hYt(t.a,e)?swt(t,u(e,22).g,null):null}function xrn(t){return Oit(),Fn(),u(t.a,81).d.e!=0}function kQt(){kQt=X,fge=Qr((dR(),ut(ot(hge,1),oe,538,0,[xut])))}function EQt(){EQt=X,Zwe=el(new Zs,(Ya(),jo),(co(),bO))}function Fwt(){Fwt=X,Jwe=el(new Zs,(Ya(),jo),(co(),bO))}function TQt(){TQt=X,eme=el(new Zs,(Ya(),jo),(co(),bO))}function _Qt(){_Qt=X,bme=Ei(new Zs,(Ya(),jo),(co(),fS))}function Rl(){Rl=X,mme=Ei(new Zs,(Ya(),jo),(co(),fS))}function CQt(){CQt=X,yme=Ei(new Zs,(Ya(),jo),(co(),fS))}function vrt(){vrt=X,_me=Ei(new Zs,(Ya(),jo),(co(),fS))}function SQt(){SQt=X,hye=el(new Zs,(o7(),FS),(fC(),Eht))}function n2(t,e,n,r){this.c=t,this.d=r,mrt(this,e),yrt(this,n)}function $6(t){this.c=new cs,this.b=t.b,this.d=t.c,this.a=t.a}function wrt(t){this.a=b.Math.cos(t),this.b=b.Math.sin(t)}function mrt(t,e){t.a&&Eu(t.a.k,t),t.a=e,t.a&&ue(t.a.k,t)}function yrt(t,e){t.b&&Eu(t.b.f,t),t.b=e,t.b&&ue(t.b.f,t)}function AQt(t,e){Men(t,t.b,t.c),u(t.b.b,65),e&&u(e.b,65).b}function krn(t,e){Zyt(t,e),_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),2)}function xrt(t,e){_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),4),tu(t,e)}function p$(t,e){_t(t.Cb,179)&&(u(t.Cb,179).tb=null),tu(t,e)}function $c(t,e){return so(),Qrt(e)?new Dj(e,t):new IM(e,t)}function Ern(t,e){var n,r;n=e.c,r=n!=null,r&&F6(t,new Hm(e.c))}function LQt(t){var e,n;return n=(Zk(),e=new wv,e),O8(n,t),n}function MQt(t){var e,n;return n=(Zk(),e=new wv,e),O8(n,t),n}function DQt(t,e){var n;return n=new Lh(t),e.c[e.c.length]=n,n}function IQt(t,e){var n;return n=u(ny(j6(t.a),e),14),n?n.gc():0}function OQt(t){var e;return p2(t),e=(Q3(),Q3(),v7t),V$(t,e)}function NQt(t){for(var e;;)if(e=t.Pb(),!t.Ob())return e}function Bwt(t,e){dKe.call(this,new x6(Qm(t))),ql(e,Whe),this.a=e}function Kd(t,e,n){zre(e,n,t.gc()),this.c=t,this.a=e,this.b=n-e}function PQt(t,e,n){var r;zre(e,n,t.c.length),r=n-e,obt(t.c,e,r)}function Trn(t,e){IUt(t,Mr(Gs(Rp(e,24),Pq)),Mr(Gs(e,Pq)))}function Sn(t,e){if(t<0||t>=e)throw nt(new Co(j6t+t+$6t+e))}function $r(t,e){if(t<0||t>=e)throw nt(new Ypt(j6t+t+$6t+e))}function Tn(t,e){this.b=(In(t),t),this.a=e&yy?e:e|64|vd}function FQt(t){dUt(this),Wzt(this.a,xyt(b.Math.max(8,t))<<1)}function S1(t){return nc(ut(ot(na,1),re,8,0,[t.i.n,t.n,t.a]))}function _rn(){return N1(),ut(ot(wl,1),oe,132,0,[S7t,Yl,Ly])}function Crn(){return Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])}function Srn(){return rl(),ut(ot(Xge,1),oe,461,0,[Ad,lb,kf])}function Arn(){return Tu(),ut(ot(Zge,1),oe,462,0,[s1,hb,Ef])}function Lrn(){return ew(),ut(ot(_Et,1),oe,423,0,[z4,TEt,elt])}function Mrn(){return j_(),ut(ot(xEt,1),oe,379,0,[Yut,Kut,Xut])}function Drn(){return Y_(),ut(ot(T_t,1),oe,378,0,[uht,E_t,uG])}function Irn(){return K6(),ut(ot(x9t,1),oe,314,0,[Cx,wO,y9t])}function Orn(){return X$(),ut(ot(E9t,1),oe,337,0,[k9t,OV,ylt])}function Nrn(){return h2(),ut(ot(f2e,1),oe,450,0,[Elt,oE,G4])}function Prn(){return Jv(),ut(ot(llt,1),oe,361,0,[Aw,db,Sw])}function Frn(){return B0(),ut(ot(y2e,1),oe,303,0,[yO,W4,Sx])}function Brn(){return G8(),ut(ot(Olt,1),oe,292,0,[Dlt,Ilt,mO])}function Rrn(){return ho(),ut(ot(Gwe,1),oe,452,0,[MS,al,su])}function jrn(){return j0(),ut(ot(O_t,1),oe,339,0,[bb,I_t,ght])}function $rn(){return uz(),ut(ot(B_t,1),oe,375,0,[P_t,vht,F_t])}function zrn(){return gz(),ut(ot(V_t,1),oe,377,0,[xht,mE,Gy])}function qrn(){return Z8(),ut(ot($_t,1),oe,336,0,[mht,j_t,DS])}function Hrn(){return oz(),ut(ot(H_t,1),oe,338,0,[q_t,yht,z_t])}function Vrn(){return Zv(),ut(ot(ume,1),oe,454,0,[OO,IS,dG])}function Grn(){return _z(),ut(ot(bye,1),oe,442,0,[Fht,Nht,Pht])}function Urn(){return RD(),ut(ot(gCt,1),oe,380,0,[_G,fCt,dCt])}function Wrn(){return Tz(),ut(ot(ICt,1),oe,381,0,[DCt,qht,MCt])}function Krn(){return cz(),ut(ot(ACt,1),oe,293,0,[zht,SCt,CCt])}function Yrn(){return VD(),ut(ot(Hht,1),oe,437,0,[AG,LG,MG])}function Xrn(){return $0(),ut(ot(xAt,1),oe,334,0,[HG,np,YS])}function Qrn(){return D1(),ut(ot(uAt,1),oe,272,0,[TE,Yy,_E])}function Zrn(t,e){return mbn(t,e,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function Jrn(t,e,n){var r;return r=EC(t,e,!1),r.b<=e&&r.a<=n}function BQt(t,e,n){var r;r=new SQ,r.b=e,r.a=n,++e.b,ue(t.d,r)}function tin(t,e){var n;return n=(In(t),t).g,I2t(!!n),In(e),n(e)}function Rwt(t,e){var n,r;return r=p8(t,e),n=t.a.Zc(r),new ZHt(t,n)}function ein(t){return t.Db>>16!=6?null:u(Ust(t),235)}function nin(t){if(t.p!=2)throw nt(new Ru);return Mr(t.f)&Ms}function rin(t){if(t.p!=2)throw nt(new Ru);return Mr(t.k)&Ms}function iin(t){return t.a==(S8(),oU)&&Att(t,Pbn(t.g,t.b)),t.a}function z6(t){return t.d==(S8(),oU)&&ET(t,Awn(t.g,t.b)),t.d}function Q(t){return Zn(t.ar?1:0}function RQt(t,e){var n,r;return n=Urt(e),r=n,u(tr(t.c,r),19).a}function jQt(t,e){var n;for(n=t+"";n.length0&&t.a[--t.d]==0;);t.a[t.d++]==0&&(t.e=0)}function iZt(t){return t.a?t.e.length==0?t.a.a:t.a.a+(""+t.e):t.c}function pin(t){return!!t.a&&fl(t.a.a).i!=0&&!(t.b&&lst(t.b))}function bin(t){return!!t.u&&Oc(t.u.a).i!=0&&!(t.n&&ust(t.n))}function sZt(t){return Ant(t.e.Hd().gc()*t.c.Hd().gc(),16,new a6(t))}function vin(t,e){return PYt(Au(t.q.getTime()),Au(e.q.getTime()))}function pd(t){return u(P1(t,Nt(nlt,Rot,17,t.c.length,0,1)),474)}function sD(t){return u(P1(t,Nt(o0,Gg,10,t.c.length,0,1)),193)}function win(t){return Rl(),!Wa(t)&&!(!Wa(t)&&t.c.i.c==t.d.i.c)}function aZt(t,e,n){var r;r=(Dr(t),new qu(t)),Kfn(new mQt(r,e,n))}function aD(t,e,n){var r;r=(Dr(t),new qu(t)),Yfn(new yQt(r,e,n))}function oZt(t,e){var n;return n=1-e,t.a[n]=nz(t.a[n],n),nz(t,e)}function cZt(t,e){var n;t.e=new qpt,n=gy(e),aa(n,t.c),eue(t,n,0)}function ba(t,e,n,r){var s;s=new WF,s.a=e,s.b=n,s.c=r,ai(t.a,s)}function we(t,e,n,r){var s;s=new WF,s.a=e,s.b=n,s.c=r,ai(t.b,s)}function pf(t){var e,n,r;return e=new qYt,n=hat(e,t),r4n(e),r=n,r}function Vwt(){var t,e,n;return e=(n=(t=new wv,t),n),ue(aLt,e),e}function w$(t){return t.j.c=Nt(Qn,Me,1,0,5,1),xwt(t.c),Zen(t.a),t}function J3(t){return qT(),_t(t.g,10)?u(t.g,10):null}function min(t){return X3(t).dc()?!1:(wXe(t,new ct),!0)}function yin(t){if(!("stack"in t))try{throw t}catch{}return t}function oD(t,e){if(t<0||t>=e)throw nt(new Co(Ogn(t,e)));return t}function uZt(t,e,n){if(t<0||en)throw nt(new Co(ign(t,e,n)))}function _rt(t,e){if(Vs(t.a,e),e.d)throw nt(new Zo(pfe));e.d=t}function Crt(t,e){if(e.$modCount!=t.$modCount)throw nt(new sh)}function lZt(t,e){return _t(e,42)?pst(t.a,u(e,42)):!1}function hZt(t,e){return _t(e,42)?pst(t.a,u(e,42)):!1}function fZt(t,e){return _t(e,42)?pst(t.a,u(e,42)):!1}function xin(t,e){return t.a<=t.b?(e.ud(t.a++),!0):!1}function Gv(t){var e;return Vo(t)?(e=t,e==-0?0:e):Man(t)}function m$(t){var e;return qp(t),e=new Ae,R3(t.a,new gn(e)),e}function dZt(t){var e;return qp(t),e=new Wn,R3(t.a,new pe(e)),e}function xa(t,e){this.a=t,h6.call(this,t),Um(e,t.gc()),this.b=e}function Gwt(t){this.e=t,this.b=this.e.a.entries(),this.a=new Array}function kin(t){return Ant(t.e.Hd().gc()*t.c.Hd().gc(),273,new VB(t))}function y$(t){return new Jc((ql(t,jat),q$(Ra(Ra(5,t),t/10|0))))}function gZt(t){return u(P1(t,Nt(Nbe,Ufe,11,t.c.length,0,1)),1943)}function Ein(t,e,n){return n.f.c.length>0?cwt(t.a,e,n):cwt(t.b,e,n)}function Tin(t,e,n){t.d&&Eu(t.d.e,t),t.d=e,t.d&&$m(t.d.e,n,t)}function Srt(t,e){v5n(e,t),Svt(t.d),Svt(u(K(t,(xe(),nG)),207))}function N_(t,e){b5n(e,t),Cvt(t.d),Cvt(u(K(t,(xe(),nG)),207))}function Uv(t,e){var n,r;return n=I0(t,e),r=null,n&&(r=n.fe()),r}function T8(t,e){var n,r;return n=Xm(t,e),r=null,n&&(r=n.ie()),r}function P_(t,e){var n,r;return n=I0(t,e),r=null,n&&(r=n.ie()),r}function O0(t,e){var n,r;return n=I0(t,e),r=null,n&&(r=F4t(n)),r}function _in(t,e,n){var r;return r=s7(n),vq(t.g,r,e),vq(t.i,e,n),e}function Cin(t,e,n){var r;r=thn();try{return DQe(t,e,n)}finally{Bin(r)}}function pZt(t){var e;e=t.Wg(),this.a=_t(e,69)?u(e,69).Zh():e.Kc()}function Zs(){Lqt.call(this),this.j.c=Nt(Qn,Me,1,0,5,1),this.a=-1}function Uwt(t,e,n,r){this.d=t,this.n=e,this.g=n,this.o=r,this.p=-1}function bZt(t,e,n,r){this.e=r,this.d=null,this.c=t,this.a=e,this.b=n}function Wwt(t,e,n){this.d=new sR(this),this.e=t,this.i=e,this.f=n}function x$(){x$=X,Nlt=new Mbt(I7,0),q9t=new Mbt("TOP_LEFT",1)}function vZt(){vZt=X,U_t=fXt(de(1),de(4)),G_t=fXt(de(1),de(2))}function wZt(){wZt=X,a3e=Qr((DR(),ut(ot(s3e,1),oe,551,0,[Ght])))}function mZt(){mZt=X,i3e=Qr((MR(),ut(ot(GCt,1),oe,482,0,[Vht])))}function yZt(){yZt=X,T3e=Qr((HT(),ut(ot(fSt,1),oe,530,0,[jO])))}function xZt(){xZt=X,Mpe=Qr((AR(),ut(ot(tEt,1),oe,481,0,[$ut])))}function Sin(){return tw(),ut(ot(Epe,1),oe,406,0,[aO,sO,Rut,jut])}function Ain(){return P$(),ut(ot(KH,1),oe,297,0,[Mut,E7t,T7t,_7t])}function Lin(){return sC(),ut(ot(Ape,1),oe,394,0,[hO,JH,tV,fO])}function Min(){return ex(),ut(ot(_pe,1),oe,323,0,[cO,oO,uO,lO])}function Din(){return U8(),ut(ot(kbe,1),oe,405,0,[Cw,Iy,Dy,$4])}function Iin(){return dz(),ut(ot(zbe,1),oe,360,0,[clt,CV,SV,vO])}function kZt(t,e,n,r){return _t(n,54)?new cWt(t,e,n,r):new Qvt(t,e,n,r)}function Oin(){return O1(),ut(ot(Xbe,1),oe,411,0,[_x,nE,rE,ult])}function Nin(t){var e;return t.j==(be(),yr)&&(e=Voe(t),zu(e,Hn))}function Pin(t,e){var n;n=e.a,Ba(n,e.c.d),pa(n,e.d.d),Jm(n.a,t.n)}function EZt(t,e){return u(Ov(qj(u(Pi(t.k,e),15).Oc(),q4)),113)}function TZt(t,e){return u(Ov(Hj(u(Pi(t.k,e),15).Oc(),q4)),113)}function Fin(t){return new Tn(Oon(u(t.a.dd(),14).gc(),t.a.cd()),16)}function _8(t){return _t(t,14)?u(t,14).dc():!t.Kc().Ob()}function q6(t){return qT(),_t(t.g,145)?u(t.g,145):null}function _Zt(t){if(t.e.g!=t.b)throw nt(new sh);return!!t.c&&t.d>0}function ii(t){return Zn(t.b!=t.d.c),t.c=t.b,t.b=t.b.a,++t.a,t.c.c}function Kwt(t,e){In(e),ls(t.a,t.c,e),t.c=t.c+1&t.a.length-1,Cse(t)}function Vp(t,e){In(e),t.b=t.b-1&t.a.length-1,ls(t.a,t.b,e),Cse(t)}function CZt(t,e){var n;for(n=t.j.c.length;n0&&Pc(t.g,0,e,0,t.i),e}function MZt(t,e){NR();var n;return n=u(tr(nU,t),55),!n||n.wj(e)}function Yin(t){if(t.p!=1)throw nt(new Ru);return Mr(t.f)<<24>>24}function Xin(t){if(t.p!=1)throw nt(new Ru);return Mr(t.k)<<24>>24}function Qin(t){if(t.p!=7)throw nt(new Ru);return Mr(t.k)<<16>>16}function Zin(t){if(t.p!=7)throw nt(new Ru);return Mr(t.f)<<16>>16}function N0(t){var e;for(e=0;t.Ob();)t.Pb(),e=Ra(e,1);return q$(e)}function DZt(t,e){var n;return n=new Lm,t.xd(n),n.a+="..",e.yd(n),n.a}function Jin(t,e,n){var r;r=u(tr(t.g,n),57),ue(t.a.c,new ya(e,r))}function tsn(t,e,n){return Bnt(ve(cc(Fo(t.f,e))),ve(cc(Fo(t.f,n))))}function k$(t,e,n){return mq(t,e,n,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function esn(t,e,n){return x7(t,e,n,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function nsn(t,e,n){return _bn(t,e,n,_t(e,99)&&(u(e,18).Bb&Qa)!=0)}function Qwt(t,e){return t==(Gn(),qs)&&e==qs?4:t==qs||e==qs?8:32}function IZt(t,e){return Gt(e)===Gt(t)?"(this Map)":e==null?Mu:Wo(e)}function rsn(t,e){return u(e==null?cc(Fo(t.f,null)):UT(t.g,e),281)}function OZt(t,e,n){var r;return r=s7(n),Ai(t.b,r,e),Ai(t.c,e,n),e}function NZt(t,e){var n;for(n=e;n;)Fm(t,n.i,n.j),n=hs(n);return t}function Zwt(t,e){var n;return n=JM(h8(new Wrt(t,e))),Oj(new Wrt(t,e)),n}function Yd(t,e){so();var n;return n=u(t,66).Mj(),B0n(n,e),n.Ok(e)}function isn(t,e,n,r,s){var o;o=Mbn(s,n,r),ue(e,Agn(s,o)),m0n(t,s,e)}function PZt(t,e,n){t.i=0,t.e=0,e!=n&&(are(t,e,n),sre(t,e,n))}function Jwt(t,e){var n;n=t.q.getHours(),t.q.setFullYear(e+ib),yC(t,n)}function ssn(t,e,n){if(n){var r=n.ee();t.a[e]=r(n)}else delete t.a[e]}function Art(t,e,n){if(n){var r=n.ee();n=r(n)}else n=void 0;t.a[e]=n}function FZt(t){if(t<0)throw nt(new zqt("Negative array size: "+t))}function Oc(t){return t.n||(hl(t),t.n=new pYt(t,wo,t),Po(t)),t.n}function F_(t){return Zn(t.a=0&&t.a[n]===e[n];n--);return n<0}function zZt(t,e){Q8();var n;return n=t.j.g-e.j.g,n!=0?n:0}function qZt(t,e){return In(e),t.a!=null?Vtn(e.Kb(t.a)):WH}function E$(t){var e;return t?new Bvt(t):(e=new A0,fit(e,t),e)}function $l(t,e){var n;return e.b.Kb(Nte(t,e.c.Ee(),(n=new Dn(e),n)))}function T$(t){y4t(),IUt(this,Mr(Gs(Rp(t,24),Pq)),Mr(Gs(t,Pq)))}function HZt(){HZt=X,Vge=Qr((Nz(),ut(ot(D7t,1),oe,428,0,[Out,M7t])))}function VZt(){VZt=X,Gge=Qr(($$(),ut(ot(O7t,1),oe,427,0,[I7t,Nut])))}function GZt(){GZt=X,Wpe=Qr((z$(),ut(ot(oEt,1),oe,424,0,[Gut,rV])))}function UZt(){UZt=X,Rbe=Qr(($8(),ut(ot(Bbe,1),oe,511,0,[pO,ilt])))}function WZt(){WZt=X,h2e=Qr((TD(),ut(ot(S9t,1),oe,419,0,[NV,C9t])))}function KZt(){KZt=X,p2e=Qr((bD(),ut(ot(M9t,1),oe,479,0,[L9t,FV])))}function YZt(){YZt=X,Kwe=Qr((lD(),ut(ot(R_t,1),oe,376,0,[wht,IO])))}function XZt(){XZt=X,Vwe=Qr((yD(),ut(ot(N_t,1),oe,421,0,[pht,bht])))}function QZt(){QZt=X,o2e=Qr((I$(),ut(ot(m9t,1),oe,422,0,[w9t,mlt])))}function ZZt(){ZZt=X,k2e=Qr((x$(),ut(ot(H9t,1),oe,420,0,[Nlt,q9t])))}function JZt(){JZt=X,jme=Qr((Yf(),ut(ot(Rme,1),oe,520,0,[Uy,vb])))}function tJt(){tJt=X,pme=Qr((B_(),ut(ot(gme,1),oe,523,0,[NS,OS])))}function eJt(){eJt=X,kme=Qr((gd(),ut(ot(xme,1),oe,516,0,[Rw,Zg])))}function nJt(){nJt=X,Tme=Qr((C1(),ut(ot(Eme,1),oe,515,0,[z2,V1])))}function rJt(){rJt=X,Ume=Qr((qv(),ut(ot(Gme,1),oe,455,0,[wb,n5])))}function iJt(){iJt=X,lye=Qr((v$(),ut(ot(cCt,1),oe,425,0,[Oht,oCt])))}function sJt(){sJt=X,pye=Qr((iz(),ut(ot(uCt,1),oe,495,0,[TG,xE])))}function aJt(){aJt=X,uye=Qr((d$(),ut(ot(aCt,1),oe,480,0,[Iht,sCt])))}function oJt(){oJt=X,wye=Qr((N$(),ut(ot(hCt,1),oe,426,0,[lCt,Bht])))}function cJt(){cJt=X,_3e=Qr((ND(),ut(ot(gSt,1),oe,429,0,[OG,dSt])))}function uJt(){uJt=X,o3e=Qr((hD(),ut(ot(UCt,1),oe,430,0,[Uht,DG])))}function B_(){B_=X,NS=new Obt("UPPER",0),OS=new Obt("LOWER",1)}function usn(t,e){var n;n=new w6,e2(n,"x",e.a),e2(n,"y",e.b),F6(t,n)}function lsn(t,e){var n;n=new w6,e2(n,"x",e.a),e2(n,"y",e.b),F6(t,n)}function hsn(t,e){var n,r;r=!1;do n=Qne(t,e),r=r|n;while(n);return r}function nmt(t,e){var n,r;for(n=e,r=0;n>0;)r+=t.a[n],n-=n&-n;return r}function lJt(t,e){var n;for(n=e;n;)Fm(t,-n.i,-n.j),n=hs(n);return t}function _a(t,e){var n,r;for(In(e),r=t.Kc();r.Ob();)n=r.Pb(),e.td(n)}function hJt(t,e){var n;return n=e.cd(),new Cv(n,t.e.pc(n,u(e.dd(),14)))}function ks(t,e,n,r){var s;s=new Bt,s.c=e,s.b=n,s.a=r,r.b=n.a=s,++t.b}function lh(t,e,n){var r;return r=(Sn(e,t.c.length),t.c[e]),t.c[e]=n,r}function fsn(t,e,n){return u(e==null?lu(t.f,null,n):nw(t.g,e,n),281)}function Irt(t){return t.c&&t.d?jwt(t.c)+"->"+jwt(t.d):"e_"+Dv(t)}function C8(t,e){return(p2(t),jT(new kn(t,new Cmt(e,t.a)))).sd(Q7)}function dsn(){return Ya(),ut(ot(kEt,1),oe,356,0,[Ld,fb,fu,Gc,jo])}function gsn(){return be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])}function psn(t){return vR(),function(){return Cin(t,this,arguments)}}function bsn(){return Date.now?Date.now():new Date().getTime()}function Wa(t){return!t.c||!t.d?!1:!!t.c.i&&t.c.i==t.d.i}function fJt(t){if(!t.c.Sb())throw nt(new vc);return t.a=!0,t.c.Ub()}function cD(t){t.i=0,yM(t.b,null),yM(t.c,null),t.a=null,t.e=null,++t.g}function rmt(t){EYe.call(this,t==null?Mu:Wo(t),_t(t,78)?u(t,78):null)}function dJt(t){Rhe(),Bzt(this),this.a=new cs,Myt(this,t),ai(this.a,t)}function gJt(){Qet(this),this.b=new Re(bs,bs),this.a=new Re(Ns,Ns)}function pJt(t,e){this.c=0,this.b=e,HGt.call(this,t,17493),this.a=this.c}function Ort(t){_$(),!z1&&(this.c=t,this.e=!0,this.a=new le)}function _$(){_$=X,z1=!0,Nge=!1,Pge=!1,Bge=!1,Fge=!1}function imt(t,e){return _t(e,149)?un(t.c,u(e,149).c):!1}function smt(t,e){var n;return n=0,t&&(n+=t.f.a/2),e&&(n+=e.f.a/2),n}function Nrt(t,e){var n;return n=u(Wv(t.d,e),23),n||u(Wv(t.e,e),23)}function bJt(t){this.b=t,nr.call(this,t),this.a=u(Mn(this.b.a,4),126)}function vJt(t){this.b=t,L6.call(this,t),this.a=u(Mn(this.b.a,4),126)}function hl(t){return t.t||(t.t=new Szt(t),J_(new $qt(t),0,t.t)),t.t}function vsn(){return fo(),ut(ot(WS,1),oe,103,0,[c0,_f,Hh,Q0,Z0])}function wsn(){return u4(),ut(ot(QS,1),oe,249,0,[xb,JO,kAt,XS,EAt])}function msn(){return t1(),ut(ot(ep,1),oe,175,0,[qn,ua,Id,q2,tp])}function ysn(){return iI(),ut(ot(XCt,1),oe,316,0,[WCt,Wht,YCt,Kht,KCt])}function xsn(){return aC(),ut(ot(C_t,1),oe,315,0,[__t,fht,dht,AS,LS])}function ksn(){return m2(),ut(ot(_9t,1),oe,335,0,[xlt,T9t,klt,pS,gS])}function Esn(){return w7(),ut(ot(e3e,1),oe,355,0,[r5,Bx,qS,zS,HS])}function Tsn(){return p4(),ut(ot(Zbe,1),oe,363,0,[LV,DV,IV,MV,AV])}function _sn(){return ph(),ut(ot(nTt,1),oe,163,0,[_O,yS,gb,xS,Fy])}function S8(){S8=X;var t,e;aU=(Zk(),e=new lR,e),oU=(t=new Ktt,t)}function wJt(t){var e;return t.c||(e=t.r,_t(e,88)&&(t.c=u(e,26))),t.c}function Csn(t){return t.e=3,t.d=t.Yb(),t.e!=2?(t.e=0,!0):!1}function Prt(t){var e,n,r;return e=t&vl,n=t>>22&vl,r=t<0?W0:0,cu(e,n,r)}function Ssn(t){var e,n,r,s;for(n=t,r=0,s=n.length;r0?bie(t,e):Rce(t,-e)}function amt(t,e){return e==0||t.e==0?t:e>0?Rce(t,e):bie(t,-e)}function Ir(t){if(Vr(t))return t.c=t.a,t.a.Pb();throw nt(new vc)}function yJt(t){var e,n;return e=t.c.i,n=t.d.i,e.k==(Gn(),Is)&&n.k==Is}function Frt(t){var e;return e=new zv,Bo(e,t),ee(e,(xe(),Oo),null),e}function Brt(t,e,n){var r;return r=t.Yg(e),r>=0?t._g(r,n,!0):lw(t,e,n)}function omt(t,e,n,r){var s;for(s=0;se)throw nt(new Co(H4t(t,e,"index")));return t}function Rrt(t,e,n,r){var s;return s=Nt(Sr,Jr,25,e,15,1),$dn(s,t,e,n,r),s}function Lsn(t,e){var n;n=t.q.getHours()+(e/60|0),t.q.setMinutes(e),yC(t,n)}function Msn(t,e){return b.Math.min(Gp(e.a,t.d.d.c),Gp(e.b,t.d.d.c))}function G6(t,e){return ha(e)?e==null?a5t(t.f,null):One(t.g,e):a5t(t.f,e)}function M1(t){this.c=t,this.a=new S(this.c.a),this.b=new S(this.c.b)}function C$(){this.e=new le,this.c=new le,this.d=new le,this.b=new le}function _Jt(){this.g=new _pt,this.b=new _pt,this.a=new le,this.k=new le}function CJt(t,e,n){this.a=t,this.c=e,this.d=n,ue(e.e,this),ue(n.b,this)}function SJt(t,e){qGt.call(this,e.rd(),e.qd()&-6),In(t),this.a=t,this.b=e}function AJt(t,e){HGt.call(this,e.rd(),e.qd()&-6),In(t),this.a=t,this.b=e}function gmt(t,e){Uet.call(this,e.rd(),e.qd()&-6),In(t),this.a=t,this.b=e}function S$(t,e,n){this.a=t,this.b=e,this.c=n,ue(t.t,this),ue(e.i,this)}function A$(){this.b=new cs,this.a=new cs,this.b=new cs,this.a=new cs}function L$(){L$=X,VS=new ts("org.eclipse.elk.labels.labelManager")}function LJt(){LJt=X,d9t=new Hs("separateLayerConnections",(dz(),clt))}function Yf(){Yf=X,Uy=new Fbt("REGULAR",0),vb=new Fbt("CRITICAL",1)}function lD(){lD=X,wht=new Ibt("STACKED",0),IO=new Ibt("SEQUENCED",1)}function hD(){hD=X,Uht=new qbt("FIXED",0),DG=new qbt("CENTER_NODE",1)}function Dsn(t,e){var n;return n=P3n(t,e),t.b=new rz(n.c.length),Wyn(t,n)}function Isn(t,e,n){var r;return++t.e,--t.f,r=u(t.d[e].$c(n),133),r.dd()}function MJt(t){var e;return t.a||(e=t.r,_t(e,148)&&(t.a=u(e,148))),t.a}function pmt(t){if(t.a){if(t.e)return pmt(t.e)}else return t;return null}function Osn(t,e){return t.pe.p?-1:0}function M$(t,e){return In(e),t.c=0,"Initial capacity must not be negative")}function OJt(){OJt=X,Yge=Qr((Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])))}function NJt(){NJt=X,Qge=Qr((rl(),ut(ot(Xge,1),oe,461,0,[Ad,lb,kf])))}function PJt(){PJt=X,Jge=Qr((Tu(),ut(ot(Zge,1),oe,462,0,[s1,hb,Ef])))}function FJt(){FJt=X,Rge=Qr((N1(),ut(ot(wl,1),oe,132,0,[S7t,Yl,Ly])))}function BJt(){BJt=X,gbe=Qr((j_(),ut(ot(xEt,1),oe,379,0,[Yut,Kut,Xut])))}function RJt(){RJt=X,Lbe=Qr((ew(),ut(ot(_Et,1),oe,423,0,[z4,TEt,elt])))}function jJt(){jJt=X,c2e=Qr((K6(),ut(ot(x9t,1),oe,314,0,[Cx,wO,y9t])))}function $Jt(){$Jt=X,u2e=Qr((X$(),ut(ot(E9t,1),oe,337,0,[k9t,OV,ylt])))}function zJt(){zJt=X,d2e=Qr((h2(),ut(ot(f2e,1),oe,450,0,[Elt,oE,G4])))}function qJt(){qJt=X,i2e=Qr((Jv(),ut(ot(llt,1),oe,361,0,[Aw,db,Sw])))}function HJt(){HJt=X,x2e=Qr((B0(),ut(ot(y2e,1),oe,303,0,[yO,W4,Sx])))}function VJt(){VJt=X,m2e=Qr((G8(),ut(ot(Olt,1),oe,292,0,[Dlt,Ilt,mO])))}function GJt(){GJt=X,jwe=Qr((Y_(),ut(ot(T_t,1),oe,378,0,[uht,E_t,uG])))}function UJt(){UJt=X,Wwe=Qr((uz(),ut(ot(B_t,1),oe,375,0,[P_t,vht,F_t])))}function WJt(){WJt=X,Hwe=Qr((j0(),ut(ot(O_t,1),oe,339,0,[bb,I_t,ght])))}function KJt(){KJt=X,Uwe=Qr((ho(),ut(ot(Gwe,1),oe,452,0,[MS,al,su])))}function YJt(){YJt=X,Qwe=Qr((gz(),ut(ot(V_t,1),oe,377,0,[xht,mE,Gy])))}function XJt(){XJt=X,Ywe=Qr((Z8(),ut(ot($_t,1),oe,336,0,[mht,j_t,DS])))}function QJt(){QJt=X,Xwe=Qr((oz(),ut(ot(H_t,1),oe,338,0,[q_t,yht,z_t])))}function ZJt(){ZJt=X,lme=Qr((Zv(),ut(ot(ume,1),oe,454,0,[OO,IS,dG])))}function JJt(){JJt=X,vye=Qr((_z(),ut(ot(bye,1),oe,442,0,[Fht,Nht,Pht])))}function tte(){tte=X,mye=Qr((RD(),ut(ot(gCt,1),oe,380,0,[_G,fCt,dCt])))}function ete(){ete=X,Fye=Qr((Tz(),ut(ot(ICt,1),oe,381,0,[DCt,qht,MCt])))}function nte(){nte=X,Pye=Qr((cz(),ut(ot(ACt,1),oe,293,0,[zht,SCt,CCt])))}function rte(){rte=X,r3e=Qr((VD(),ut(ot(Hht,1),oe,437,0,[AG,LG,MG])))}function ite(){ite=X,a4e=Qr(($0(),ut(ot(xAt,1),oe,334,0,[HG,np,YS])))}function ste(){ste=X,n4e=Qr((D1(),ut(ot(uAt,1),oe,272,0,[TE,Yy,_E])))}function $sn(){return va(),ut(ot(TAt,1),oe,98,0,[kb,U1,SE,U2,h0,Kc])}function s2(t,e){return!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),Yit(t.o,e)}function zsn(t){return!t.g&&(t.g=new kk),!t.g.d&&(t.g.d=new Tzt(t)),t.g.d}function qsn(t){return!t.g&&(t.g=new kk),!t.g.a&&(t.g.a=new _zt(t)),t.g.a}function Hsn(t){return!t.g&&(t.g=new kk),!t.g.b&&(t.g.b=new Ezt(t)),t.g.b}function fD(t){return!t.g&&(t.g=new kk),!t.g.c&&(t.g.c=new Czt(t)),t.g.c}function Vsn(t,e,n){var r,s;for(s=new V8(e,t),r=0;rn||e=0?t._g(n,!0,!0):lw(t,e,!0)}function oan(t,e){return js(Zt(ve(K(t,(ae(),Iw)))),Zt(ve(K(e,Iw))))}function fte(){fte=X,fye=aw(aw(OR(new Zs,(o7(),PS)),(fC(),wG)),Tht)}function can(t,e,n){var r;return r=nre(t,e,n),t.b=new rz(r.c.length),D5t(t,r)}function uan(t){if(t.b<=0)throw nt(new vc);return--t.b,t.a-=t.c.c,de(t.a)}function lan(t){var e;if(!t.a)throw nt(new bXt);return e=t.a,t.a=hs(t.a),e}function han(t){for(;!t.a;)if(!tKt(t.c,new je(t)))return!1;return!0}function W6(t){var e;return Dr(t),_t(t,198)?(e=u(t,198),e):new ott(t)}function fan(t){O$(),u(t.We((di(),Ky)),174).Fc((il(),tN)),t.Ye(dft,null)}function O$(){O$=X,A3e=new yZ,M3e=new xZ,L3e=Xcn((di(),dft),A3e,mb,M3e)}function N$(){N$=X,lCt=new zbt("LEAF_NUMBER",0),Bht=new zbt("NODE_SIZE",1)}function dan(t,e,n){t.a=e,t.c=n,t.b.a.$b(),Mh(t.d),t.e.a.c=Nt(Qn,Me,1,0,5,1)}function Grt(t){t.a=Nt(Sr,Jr,25,t.b+1,15,1),t.c=Nt(Sr,Jr,25,t.b,15,1),t.d=0}function gan(t,e){t.a.ue(e.d,t.b)>0&&(ue(t.c,new Mvt(e.c,e.d,t.d)),t.b=e.d)}function _mt(t,e){if(t.g==null||e>=t.i)throw nt(new Wet(e,t.i));return t.g[e]}function dte(t,e,n){if(Y8(t,n),n!=null&&!t.wj(n))throw nt(new Gtt);return n}function gte(t){var e;if(t.Ek())for(e=t.i-1;e>=0;--e)At(t,e);return Xwt(t)}function pan(t){var e,n;if(!t.b)return null;for(n=t.b;e=n.a[0];)n=e;return n}function ban(t,e){var n,r;return FZt(e),n=(r=t.slice(0,e),Smt(r,t)),n.length=e,n}function M8(t,e,n,r){var s;r=(Q3(),r||b7t),s=t.slice(e,n),V4t(s,t,e,n,-e,r)}function hh(t,e,n,r,s){return e<0?lw(t,n,r):u(n,66).Nj().Pj(t,t.yh(),e,r,s)}function van(t){return _t(t,172)?""+u(t,172).a:t==null?null:Wo(t)}function wan(t){return _t(t,172)?""+u(t,172).a:t==null?null:Wo(t)}function pte(t,e){if(e.a)throw nt(new Zo(pfe));Vs(t.a,e),e.a=t,!t.j&&(t.j=e)}function Cmt(t,e){Uet.call(this,e.rd(),e.qd()&-16449),In(t),this.a=t,this.c=e}function bte(t,e){var n,r;return r=e/t.c.Hd().gc()|0,n=e%t.c.Hd().gc(),U6(t,r,n)}function rl(){rl=X,Ad=new met(fx,0),lb=new met(I7,1),kf=new met(dx,2)}function P$(){P$=X,Mut=new BR("All",0),E7t=new hUt,T7t=new EUt,_7t=new fUt}function vte(){vte=X,Ige=Qr((P$(),ut(ot(KH,1),oe,297,0,[Mut,E7t,T7t,_7t])))}function wte(){wte=X,Ebe=Qr((U8(),ut(ot(kbe,1),oe,405,0,[Cw,Iy,Dy,$4])))}function mte(){mte=X,Tpe=Qr((tw(),ut(ot(Epe,1),oe,406,0,[aO,sO,Rut,jut])))}function yte(){yte=X,Cpe=Qr((ex(),ut(ot(_pe,1),oe,323,0,[cO,oO,uO,lO])))}function xte(){xte=X,Lpe=Qr((sC(),ut(ot(Ape,1),oe,394,0,[hO,JH,tV,fO])))}function kte(){kte=X,Wme=Qr((o7(),ut(ot(Y_t,1),oe,393,0,[vG,PS,PO,FS])))}function Ete(){Ete=X,qbe=Qr((dz(),ut(ot(zbe,1),oe,360,0,[clt,CV,SV,vO])))}function Tte(){Tte=X,Nye=Qr((Vz(),ut(ot(_Ct,1),oe,340,0,[$ht,ECt,TCt,kCt])))}function _te(){_te=X,Qbe=Qr((O1(),ut(ot(Xbe,1),oe,411,0,[_x,nE,rE,ult])))}function Cte(){Cte=X,$we=Qr((sy(),ut(ot(hht,1),oe,197,0,[lG,lht,e5,t5])))}function Ste(){Ste=X,E4e=Qr((Ol(),ut(ot(k4e,1),oe,396,0,[th,IAt,DAt,OAt])))}function Ate(){Ate=X,c4e=Qr((Vl(),ut(ot(o4e,1),oe,285,0,[ZO,u0,yb,QO])))}function Lte(){Lte=X,r4e=Qr((q0(),ut(ot(vft,1),oe,218,0,[bft,XO,CE,qx])))}function Mte(){Mte=X,y4e=Qr((Az(),ut(ot(MAt,1),oe,311,0,[yft,SAt,LAt,AAt])))}function Dte(){Dte=X,w4e=Qr((Nl(),ut(ot(tA,1),oe,374,0,[nN,W2,eN,Xy])))}function Ite(){Ite=X,yq(),gLt=bs,_5e=Ns,pLt=new O3(bs),C5e=new O3(Ns)}function bD(){bD=X,L9t=new Lbt(K0,0),FV=new Lbt("IMPROVE_STRAIGHTNESS",1)}function man(t,e){return f8(),ue(t,new ya(e,de(e.e.c.length+e.g.c.length)))}function yan(t,e){return f8(),ue(t,new ya(e,de(e.e.c.length+e.g.c.length)))}function Smt(t,e){return xD(e)!=10&&ut(dl(e),e.hm,e.__elementTypeId$,xD(e),t),t}function Eu(t,e){var n;return n=Go(t,e,0),n==-1?!1:(Ig(t,n),!0)}function Ote(t,e){var n;return n=u(G6(t.e,e),387),n?(Ovt(n),n.e):null}function D8(t){var e;return Vo(t)&&(e=0-t,!isNaN(e))?e:Wp(W8(t))}function Go(t,e,n){for(;n=0?jz(t,n,!0,!0):lw(t,e,!0)}function Imt(t,e){qT();var n,r;return n=q6(t),r=q6(e),!!n&&!!r&&!Yie(n.k,r.k)}function Ean(t,e){Cu(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function Tan(t,e){Su(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function _an(t,e){Qv(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function Can(t,e){Xv(t,e==null||Ej((In(e),e))||isNaN((In(e),e))?0:(In(e),e))}function Rte(t){(this.q?this.q:(pn(),pn(),a0)).Ac(t.q?t.q:(pn(),pn(),a0))}function San(t,e){return _t(e,99)&&u(e,18).Bb&Qa?new Ket(e,t):new V8(e,t)}function Aan(t,e){return _t(e,99)&&u(e,18).Bb&Qa?new Ket(e,t):new V8(e,t)}function jte(t,e){Z7t=new ma,Spe=e,cS=t,u(cS.b,65),wmt(cS,Z7t,null),Ile(cS)}function Xrt(t,e,n){var r;return r=t.g[e],f_(t,e,t.oi(e,n)),t.gi(e,n,r),t.ci(),r}function j$(t,e){var n;return n=t.Xc(e),n>=0?(t.$c(n),!0):!1}function Qrt(t){var e;return t.d!=t.r&&(e=Oh(t),t.e=!!e&&e.Cj()==y0e,t.d=e),t.e}function Zrt(t,e){var n;for(Dr(t),Dr(e),n=!1;e.Ob();)n=n|t.Fc(e.Pb());return n}function Wv(t,e){var n;return n=u(tr(t.e,e),387),n?(DUt(t,n),n.e):null}function $te(t){var e,n;return e=t/60|0,n=t%60,n==0?""+e:""+e+":"+(""+n)}function ec(t,e){var n,r;return p2(t),r=new gmt(e,t.a),n=new rKt(r),new kn(t,n)}function Xm(t,e){var n=t.a[e],r=(vit(),_ut)[typeof n];return r?r(n):Fyt(typeof n)}function Lan(t){switch(t.g){case 0:return Ti;case 1:return-1;default:return 0}}function Man(t){return J3t(t,(I8(),Q8t))<0?-UXe(W8(t)):t.l+t.m*hx+t.h*E2}function xD(t){return t.__elementTypeCategory$==null?10:t.__elementTypeCategory$}function Jrt(t){var e;return e=t.b.c.length==0?null:Pe(t.b,0),e!=null&&uit(t,0),e}function zte(t,e){for(;e[0]=0;)++e[0]}function kD(t,e){this.e=e,this.a=Nne(t),this.a<54?this.f=Gv(t):this.c=KD(t)}function qte(t,e,n,r){yi(),vv.call(this,26),this.c=t,this.a=e,this.d=n,this.b=r}function Xd(t,e,n){var r,s;for(r=10,s=0;st.a[r]&&(r=n);return r}function Fan(t,e){var n;return n=rw(t.e.c,e.e.c),n==0?js(t.e.d,e.e.d):n}function t4(t,e){return e.e==0||t.e==0?Y7:(g7(),tat(t,e))}function Ban(t,e){if(!t)throw nt(new Pn($2n("Enum constant undefined: %s",e)))}function $_(){$_=X,Cbe=new wg,Sbe=new cv,Tbe=new JK,_be=new qb,Abe=new tY}function $$(){$$=X,I7t=new Ebt("BY_SIZE",0),Nut=new Ebt("BY_SIZE_AND_SHAPE",1)}function z$(){z$=X,Gut=new Tbt("EADES",0),rV=new Tbt("FRUCHTERMAN_REINGOLD",1)}function TD(){TD=X,NV=new Abt("READING_DIRECTION",0),C9t=new Abt("ROTATION",1)}function Vte(){Vte=X,l2e=Qr((m2(),ut(ot(_9t,1),oe,335,0,[xlt,T9t,klt,pS,gS])))}function Gte(){Gte=X,zwe=Qr((aC(),ut(ot(C_t,1),oe,315,0,[__t,fht,dht,AS,LS])))}function Ute(){Ute=X,Jbe=Qr((p4(),ut(ot(Zbe,1),oe,363,0,[LV,DV,IV,MV,AV])))}function Wte(){Wte=X,E2e=Qr((ph(),ut(ot(nTt,1),oe,163,0,[_O,yS,gb,xS,Fy])))}function Kte(){Kte=X,c3e=Qr((iI(),ut(ot(XCt,1),oe,316,0,[WCt,Wht,YCt,Kht,KCt])))}function Yte(){Yte=X,D3e=Qr((t1(),ut(ot(ep,1),oe,175,0,[qn,ua,Id,q2,tp])))}function Xte(){Xte=X,n3e=Qr((w7(),ut(ot(e3e,1),oe,355,0,[r5,Bx,qS,zS,HS])))}function Qte(){Qte=X,wbe=Qr((Ya(),ut(ot(kEt,1),oe,356,0,[Ld,fb,fu,Gc,jo])))}function Zte(){Zte=X,e4e=Qr((fo(),ut(ot(WS,1),oe,103,0,[c0,_f,Hh,Q0,Z0])))}function Jte(){Jte=X,l4e=Qr((u4(),ut(ot(QS,1),oe,249,0,[xb,JO,kAt,XS,EAt])))}function tee(){tee=X,d4e=Qr((be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])))}function tit(t,e){var n;return n=u(tr(t.a,e),134),n||(n=new x3,Ai(t.a,e,n)),n}function eee(t){var e;return e=u(K(t,(ae(),Lw)),305),e?e.a==t:!1}function nee(t){var e;return e=u(K(t,(ae(),Lw)),305),e?e.i==t:!1}function ree(t,e){return In(e),Jvt(t),t.d.Ob()?(e.td(t.d.Pb()),!0):!1}function q$(t){return _c(t,Ti)>0?Ti:_c(t,Oa)<0?Oa:Mr(t)}function Qm(t){return t<3?(ql(t,Qhe),t+1):t=0&&e=-.01&&t.a<=R1&&(t.a=0),t.b>=-.01&&t.b<=R1&&(t.b=0),t}function see(t,e){return e==(mnt(),mnt(),Lge)?t.toLocaleLowerCase():t.toLowerCase()}function Nmt(t){return(t.i&2?"interface ":t.i&1?"":"class ")+(L0(t),t.o)}function Do(t){var e,n;n=(e=new Ytt,e),Or((!t.q&&(t.q=new he(Yh,t,11,10)),t.q),n)}function Ran(t,e){var n;return n=e>0?e-1:e,eHt(ZKe(Mee(Ivt(new Wk,n),t.n),t.j),t.k)}function jan(t,e,n,r){var s;t.j=-1,r5t(t,B4t(t,e,n),(so(),s=u(e,66).Mj(),s.Ok(r)))}function aee(t){this.g=t,this.f=new le,this.a=b.Math.min(this.g.c.c,this.g.d.c)}function oee(t){this.b=new le,this.a=new le,this.c=new le,this.d=new le,this.e=t}function cee(t,e){this.a=new Ar,this.e=new Ar,this.b=(Y_(),uG),this.c=t,this.b=e}function uee(t,e,n){xj.call(this),Pmt(this),this.a=t,this.c=n,this.b=e.d,this.f=e.e}function lee(t){this.d=t,this.c=t.c.vc().Kc(),this.b=null,this.a=null,this.e=(dR(),xut)}function Kv(t){if(t<0)throw nt(new Pn("Illegal Capacity: "+t));this.g=this.ri(t)}function $an(t,e){if(0>t||t>e)throw nt(new Kpt("fromIndex: 0, toIndex: "+t+F6t+e))}function zan(t){var e;if(t.a==t.b.a)throw nt(new vc);return e=t.a,t.c=e,t.a=t.a.e,e}function H$(t){var e;Pm(!!t.c),e=t.c.a,fh(t.d,t.c),t.b==t.c?t.b=e:--t.a,t.c=null}function V$(t,e){var n;return p2(t),n=new IXt(t,t.a.rd(),t.a.qd()|4,e),new kn(t,n)}function qan(t,e){var n,r;return n=u(ny(t.d,e),14),n?(r=e,t.e.pc(r,n)):null}function G$(t,e){var n,r;for(r=t.Kc();r.Ob();)n=u(r.Pb(),70),ee(n,(ae(),Dx),e)}function Han(t){var e;return e=Zt(ve(K(t,(xe(),Xg)))),e<0&&(e=0,ee(t,Xg,e)),e}function Van(t,e,n){var r;r=b.Math.max(0,t.b/2-.5),cC(n,r,1),ue(e,new FVt(n,r))}function Gan(t,e,n){var r;return r=t.a.e[u(e.a,10).p]-t.a.e[u(n.a,10).p],Cs(KM(r))}function hee(t,e,n,r,s,o){var h;h=Frt(r),Ba(h,s),pa(h,o),cn(t.a,r,new Tj(h,e,n.f))}function fee(t,e){var n;if(n=gI(t.Tg(),e),!n)throw nt(new Pn(cb+e+Rct));return n}function Zm(t,e){var n;for(n=t;hs(n);)if(n=hs(n),n==e)return!0;return!1}function Uan(t,e){var n,r,s;for(r=e.a.cd(),n=u(e.a.dd(),14).gc(),s=0;s0&&(t.a/=e,t.b/=e),t}function zl(t){var e;return t.w?t.w:(e=ein(t),e&&!e.kh()&&(t.w=e),e)}function ton(t){var e;return t==null?null:(e=u(t,190),e0n(e,e.length))}function At(t,e){if(t.g==null||e>=t.i)throw nt(new Wet(e,t.i));return t.li(e,t.g[e])}function eon(t){var e,n;for(e=t.a.d.j,n=t.c.d.j;e!=n;)wf(t.b,e),e=kz(e);wf(t.b,e)}function non(t){var e;for(e=0;e=14&&e<=16))),t}function bee(t,e,n){var r=function(){return t.apply(r,arguments)};return e.apply(r,n),r}function vee(t,e,n){var r,s;r=e;do s=Zt(t.p[r.p])+n,t.p[r.p]=s,r=t.a[r.p];while(r!=e)}function O8(t,e){var n,r;r=t.a,n=Fun(t,e,null),r!=e&&!t.e&&(n=T7(t,e,n)),n&&n.Fi()}function Fmt(t,e){return E1(),vf(rb),b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)}function Bmt(t,e){return E1(),vf(rb),b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)}function son(t,e){return tb(),mu(t.b.c.length-t.e.c.length,e.b.c.length-e.e.c.length)}function e4(t,e){return rYe(H_(t,e,Mr(Ia(e0,Wd(Mr(Ia(e==null?0:Ji(e),n0)),15)))))}function wee(){wee=X,Obe=Qr((Gn(),ut(ot(rlt,1),oe,267,0,[qs,ca,Is,Uc,Pl,q1])))}function mee(){mee=X,$3e=Qr((cy(),ut(ot(ift,1),oe,291,0,[rft,GO,VO,nft,qO,HO])))}function yee(){yee=X,N3e=Qr((Qd(),ut(ot(mSt,1),oe,248,0,[tft,$O,zO,FG,NG,PG])))}function xee(){xee=X,a2e=Qr((rx(),ut(ot(aE,1),oe,227,0,[sE,dS,iE,Oy,V4,H4])))}function kee(){kee=X,v2e=Qr((f7(),ut(ot(z9t,1),oe,275,0,[bS,B9t,$9t,j9t,R9t,F9t])))}function Eee(){Eee=X,b2e=Qr((nI(),ut(ot(P9t,1),oe,274,0,[BV,I9t,N9t,D9t,O9t,Llt])))}function Tee(){Tee=X,Rwe=Qr((Zz(),ut(ot(k_t,1),oe,313,0,[cht,y_t,oht,m_t,x_t,cG])))}function _ee(){_ee=X,g2e=Qr((nq(),ut(ot(A9t,1),oe,276,0,[_lt,Tlt,Slt,Clt,Alt,PV])))}function Cee(){Cee=X,Yme=Qr((fC(),ut(ot(Kme,1),oe,327,0,[wG,Tht,Cht,_ht,Sht,Eht])))}function See(){See=X,f4e=Qr((il(),ut(ot(VG,1),oe,273,0,[Eb,tg,tN,JS,ZS,Hx])))}function Aee(){Aee=X,i4e=Qr((tq(),ut(ot(pAt,1),oe,312,0,[wft,fAt,gAt,lAt,dAt,hAt])))}function aon(){return fy(),ut(ot(vo,1),oe,93,0,[Cf,J0,Sf,Lf,l0,Gh,Ql,Af,Vh])}function W$(t,e){var n;n=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,0,n,t.a))}function K$(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,1,n,t.b))}function N8(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,3,n,t.b))}function Xv(t,e){var n;n=t.f,t.f=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,3,n,t.f))}function Qv(t,e){var n;n=t.g,t.g=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,4,n,t.g))}function Cu(t,e){var n;n=t.i,t.i=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,5,n,t.i))}function Su(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,6,n,t.j))}function P8(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,1,n,t.j))}function F8(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,4,n,t.c))}function B8(t,e){var n;n=t.k,t.k=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Km(t,2,n,t.k))}function nit(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Lrt(t,2,n,t.d))}function Pg(t,e){var n;n=t.s,t.s=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Lrt(t,4,n,t.s))}function ty(t,e){var n;n=t.t,t.t=e,t.Db&4&&!(t.Db&1)&&Ci(t,new Lrt(t,5,n,t.t))}function R8(t,e){var n;n=t.F,t.F=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,5,n,e))}function _D(t,e){var n;return n=u(tr((NR(),nU),t),55),n?n.xj(e):Nt(Qn,Me,1,e,5,1)}function R0(t,e){var n,r;return n=e in t.a,n&&(r=I0(t,e).he(),r)?r.a:null}function oon(t,e){var n,r,s;return n=(r=(Tv(),s=new Y9,s),e&&_5t(r,e),r),Umt(n,t),n}function Lee(t,e,n){if(Y8(t,n),!t.Bk()&&n!=null&&!t.wj(n))throw nt(new Gtt);return n}function Mee(t,e){return t.n=e,t.n?(t.f=new le,t.e=new le):(t.f=null,t.e=null),t}function zr(t,e,n,r,s,o){var h;return h=Knt(t,e),Iee(n,h),h.i=s?8:0,h.f=r,h.e=s,h.g=o,h}function Rmt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=1,this.c=t,this.a=n}function jmt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=2,this.c=t,this.a=n}function $mt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=6,this.c=t,this.a=n}function zmt(t,e,n,r,s){this.d=e,this.k=r,this.f=s,this.o=-1,this.p=7,this.c=t,this.a=n}function qmt(t,e,n,r,s){this.d=e,this.j=r,this.e=s,this.o=-1,this.p=4,this.c=t,this.a=n}function Dee(t,e){var n,r,s,o;for(r=e,s=0,o=r.length;s=0),ohn(t.d,t.c)<0&&(t.a=t.a-1&t.d.a.length-1,t.b=t.d.c),t.c=-1}function Hmt(t){return t.a<54?t.f<0?-1:t.f>0?1:0:(!t.c&&(t.c=jD(t.f)),t.c).e}function vf(t){if(!(t>=0))throw nt(new Pn("tolerance ("+t+") must be >= 0"));return t}function j8(){return Zht||(Zht=new yue,a4(Zht,ut(ot(j4,1),Me,130,0,[new kp]))),Zht}function ho(){ho=X,MS=new Iet(OC,0),al=new Iet("INPUT",1),su=new Iet("OUTPUT",2)}function X$(){X$=X,k9t=new _et("ARD",0),OV=new _et("MSD",1),ylt=new _et("MANUAL",2)}function Zv(){Zv=X,OO=new Bet("BARYCENTER",0),IS=new Bet(i1e,1),dG=new Bet(s1e,2)}function CD(t,e){var n;if(n=t.gc(),e<0||e>n)throw nt(new jm(e,n));return new ovt(t,e)}function Pee(t,e){var n;return _t(e,42)?t.c.Mc(e):(n=Yit(t,e),Dz(t,e),n)}function ko(t,e,n){return g2(t,e),tu(t,n),Pg(t,0),ty(t,1),jg(t,!0),Rg(t,!0),t}function ql(t,e){if(t<0)throw nt(new Pn(e+" cannot be negative but was: "+t));return t}function Fee(t,e){var n,r;for(n=0,r=t.gc();n0?u(Pe(n.a,r-1),10):null}function q_(t,e){var n;n=t.k,t.k=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,2,n,t.k))}function Z$(t,e){var n;n=t.f,t.f=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,8,n,t.f))}function J$(t,e){var n;n=t.i,t.i=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,7,n,t.i))}function Umt(t,e){var n;n=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,8,n,t.a))}function Wmt(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,0,n,t.b))}function Kmt(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,0,n,t.b))}function Ymt(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,1,n,t.c))}function Xmt(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,1,n,t.c))}function iit(t,e){var n;n=t.c,t.c=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,4,n,t.c))}function Qmt(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,1,n,t.d))}function sit(t,e){var n;n=t.D,t.D=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,2,n,t.D))}function ait(t,e){t.r>0&&t.c0&&t.g!=0&&ait(t.i,e/t.r*t.i.d))}function bon(t,e,n){var r;t.b=e,t.a=n,r=(t.a&512)==512?new _qt:new GL,t.c=Ivn(r,t.b,t.a)}function Gee(t,e){return G0(t.e,e)?(so(),Qrt(e)?new Dj(e,t):new IM(e,t)):new BGt(e,t)}function tz(t,e){return nYe(V_(t.a,e,Mr(Ia(e0,Wd(Mr(Ia(e==null?0:Ji(e),n0)),15)))))}function von(t,e,n){return Ym(t,new fe(e),new Nn,new ge(n),ut(ot(wl,1),oe,132,0,[]))}function won(t){var e,n;return 0>t?new ubt:(e=t+1,n=new pJt(e,t),new q2t(null,n))}function mon(t,e){pn();var n;return n=new x6(1),ha(t)?Ao(n,t,e):lu(n.f,t,e),new z(n)}function yon(t,e){var n,r;return n=t.o+t.p,r=e.o+e.p,ne?(e<<=1,e>0?e:AC):e}function oit(t){switch(m2t(t.e!=3),t.e){case 2:return!1;case 0:return!0}return Csn(t)}function Wee(t,e){var n;return _t(e,8)?(n=u(e,8),t.a==n.a&&t.b==n.b):!1}function cit(t,e,n){var r,s,o;return o=e>>5,s=e&31,r=Gs(zm(t.n[n][o],Mr(M0(s,1))),3),r}function kon(t,e){var n,r;for(r=e.vc().Kc();r.Ob();)n=u(r.Pb(),42),Yz(t,n.cd(),n.dd())}function Eon(t,e){var n;n=new ma,u(e.b,65),u(e.b,65),u(e.b,65),_u(e.a,new wvt(t,n,e))}function Zmt(t,e){var n;n=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,21,n,t.b))}function Jmt(t,e){var n;n=t.d,t.d=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,11,n,t.d))}function ez(t,e){var n;n=t.j,t.j=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,13,n,t.j))}function Kee(t,e,n){var r,s,o;for(o=t.a.length-1,s=t.b,r=0;r>>31;r!=0&&(t[n]=r)}function Oon(t,e){pn();var n,r;for(r=new le,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),t.Qc(this.g))}function ps(t,e){Sj.call(this,i5e,t,e),this.b=this,this.a=hu(t.Tg(),wn(this.e.Tg(),this.c))}function G_(t,e){var n,r;for(In(e),r=e.vc().Kc();r.Ob();)n=u(r.Pb(),42),t.zc(n.cd(),n.dd())}function Hon(t,e,n){var r;for(r=n.Kc();r.Ob();)if(!k$(t,e,r.Pb()))return!1;return!0}function Von(t,e,n,r,s){var o;return n&&(o=es(e.Tg(),t.c),s=n.gh(e,-1-(o==-1?r:o),null,s)),s}function Gon(t,e,n,r,s){var o;return n&&(o=es(e.Tg(),t.c),s=n.ih(e,-1-(o==-1?r:o),null,s)),s}function dne(t){var e;if(t.b==-2){if(t.e==0)e=-1;else for(e=0;t.a[e]==0;e++);t.b=e}return t.b}function gne(t){switch(t.g){case 2:return be(),Bn;case 4:return be(),Hn;default:return t}}function pne(t){switch(t.g){case 1:return be(),yr;case 3:return be(),On;default:return t}}function Uon(t){var e,n,r;return t.j==(be(),On)&&(e=Voe(t),n=zu(e,Hn),r=zu(e,Bn),r||r&&n)}function Won(t){var e,n;return e=u(t.e&&t.e(),9),n=u(lwt(e,e.length),9),new oh(e,n,e.length)}function Kon(t,e){mr(e,r1e,1),s3t(gYe(new er((zT(),new nrt(t,!1,!1,new YP))))),or(e)}function SD(t,e){return Fn(),ha(t)?fmt(t,jr(e)):Nm(t)?Bnt(t,ve(e)):Om(t)?Ztn(t,Fe(e)):t.wd(e)}function syt(t,e){e.q=t,t.d=b.Math.max(t.d,e.r),t.b+=e.d+(t.a.c.length==0?0:t.c),ue(t.a,e)}function z8(t,e){var n,r,s,o;return s=t.c,n=t.c+t.b,o=t.d,r=t.d+t.a,e.a>s&&e.ao&&e.b1||t.Ob())return++t.a,t.g=0,e=t.i,t.Ob(),e;throw nt(new vc)}function acn(t){bUt();var e;return CVt(kht,t)||(e=new LQ,e.a=t,Y2t(kht,t,e)),u(xo(kht,t),635)}function Dh(t){var e,n,r,s;return s=t,r=0,s<0&&(s+=E2,r=W0),n=Cs(s/hx),e=Cs(s-n*hx),cu(e,n,r)}function AD(t){var e,n,r;for(r=0,n=new k6(t.a);n.a>22),s=t.h+e.h+(r>>22),cu(n&vl,r&vl,s&W0)}function Pne(t,e){var n,r,s;return n=t.l-e.l,r=t.m-e.m+(n>>22),s=t.h-e.h+(r>>22),cu(n&vl,r&vl,s&W0)}function ID(t){var e;return t<128?(e=(XKt(),e7t)[t],!e&&(e=e7t[t]=new tR(t)),e):new tR(t)}function rs(t){var e;return _t(t,78)?t:(e=t&&t.__java$exception,e||(e=new Tre(t),zzt(e)),e)}function OD(t){if(_t(t,186))return u(t,118);if(t)return null;throw nt(new m6(Mde))}function Fne(t,e){if(e==null)return!1;for(;t.a!=t.b;)if(Si(e,mz(t)))return!0;return!1}function hyt(t){return t.a.Ob()?!0:t.a!=t.d?!1:(t.a=new Gwt(t.e.f),t.a.Ob())}function Rs(t,e){var n,r;return n=e.Pc(),r=n.length,r==0?!1:(Tvt(t.c,t.c.length,n),!0)}function xcn(t,e,n){var r,s;for(s=e.vc().Kc();s.Ob();)r=u(s.Pb(),42),t.yc(r.cd(),r.dd(),n);return t}function Bne(t,e){var n,r;for(r=new S(t.b);r.a=0,"Negative initial capacity"),Cj(e>=0,"Non-positive load factor"),nl(this)}function wit(t,e,n){return t>=128?!1:t<64?a_(Gs(M0(1,t),n),0):a_(Gs(M0(1,t-64),e),0)}function Mcn(t,e){return!t||!e||t==e?!1:rw(t.b.c,e.b.c+e.b.b)<0&&rw(e.b.c,t.b.c+t.b.b)<0}function Yne(t){var e,n,r;return n=t.n,r=t.o,e=t.d,new ch(n.a-e.b,n.b-e.d,r.a+(e.b+e.c),r.b+(e.d+e.a))}function Dcn(t){var e,n,r,s;for(n=t.a,r=0,s=n.length;rr)throw nt(new jm(e,r));return t.hi()&&(n=fQt(t,n)),t.Vh(e,n)}function FD(t,e,n){return n==null?(!t.q&&(t.q=new Ar),G6(t.q,e)):(!t.q&&(t.q=new Ar),Ai(t.q,e,n)),t}function ee(t,e,n){return n==null?(!t.q&&(t.q=new Ar),G6(t.q,e)):(!t.q&&(t.q=new Ar),Ai(t.q,e,n)),t}function Xne(t){var e,n;return n=new C$,Bo(n,t),ee(n,(Up(),Tx),t),e=new Ar,Pmn(t,n,e),o4n(t,n,e),n}function Ncn(t){x4();var e,n,r;for(n=Nt(na,re,8,2,0,1),r=0,e=0;e<2;e++)r+=.5,n[e]=pfn(r,t);return n}function Qne(t,e){var n,r,s,o;for(n=!1,r=t.a[e].length,o=0;o>=1);return e}function Jne(t){var e,n;return n=lI(t.h),n==32?(e=lI(t.m),e==32?lI(t.l)+32:e+20-10):n-12}function K_(t){var e;return e=t.a[t.b],e==null?null:(ls(t.a,t.b,null),t.b=t.b+1&t.a.length-1,e)}function tre(t){var e,n;return e=t.t-t.k[t.o.p]*t.d+t.j[t.o.p]>t.f,n=t.u+t.e[t.o.p]*t.d>t.f*t.s*t.d,e||n}function pz(t,e,n){var r,s;return r=new qrt(e,n),s=new Ve,t.b=Gce(t,t.b,r,s),s.b||++t.c,t.b.b=!1,s.d}function ere(t,e,n){var r,s,o,h;for(h=Q_(e,n),o=0,s=h.Kc();s.Ob();)r=u(s.Pb(),11),Ai(t.c,r,de(o++))}function Kp(t){var e,n;for(n=new S(t.a.b);n.an&&(n=t[e]);return n}function nre(t,e,n){var r;return r=new le,A5t(t,e,r,(be(),Hn),!0,!1),A5t(t,n,r,Bn,!1,!1),r}function yit(t,e,n){var r,s,o,h;return o=null,h=e,s=Uv(h,"labels"),r=new kGt(t,n),o=(Jpn(r.a,r.b,s),s),o}function Fcn(t,e,n,r){var s;return s=p5t(t,e,n,r),!s&&(s=Bun(t,n,r),s&&!T4(t,e,s))?null:s}function Bcn(t,e,n,r){var s;return s=b5t(t,e,n,r),!s&&(s=Bit(t,n,r),s&&!T4(t,e,s))?null:s}function rre(t,e){var n;for(n=0;n1||e>=0&&t.b<3)}function BD(t){var e,n,r;for(e=new ju,r=si(t,0);r.b!=r.d.c;)n=u(ii(r),8),u8(e,0,new So(n));return e}function f2(t){var e,n;for(n=new S(t.a.b);n.ar?1:0}function Myt(t,e){return Sce(t,e)?(cn(t.b,u(K(e,(ae(),Ny)),21),e),ai(t.a,e),!0):!1}function Ycn(t){var e,n;e=u(K(t,(ae(),sl)),10),e&&(n=e.c,Eu(n.a,e),n.a.c.length==0&&Eu($a(e).b,n))}function ure(t){return z1?Nt(Oge,hfe,572,0,0,1):u(P1(t.a,Nt(Oge,hfe,572,t.a.c.length,0,1)),842)}function Xcn(t,e,n,r){return Qj(),new tet(ut(ot(I2,1),Iq,42,0,[(dst(t,e),new Cv(t,e)),(dst(n,r),new Cv(n,r))]))}function s4(t,e,n){var r,s;return s=(r=new Ytt,r),ko(s,e,n),Or((!t.q&&(t.q=new he(Yh,t,11,10)),t.q),s),s}function Tit(t){var e,n,r,s;for(s=kYe(O4e,t),n=s.length,r=Nt(Le,re,2,n,6,1),e=0;e=t.b.c.length||(Dyt(t,2*e+1),n=2*e+2,n=0&&t[r]===e[r];r--);return r<0?0:bet(Gs(t[r],po),Gs(e[r],po))?-1:1}function Qcn(t,e){var n,r;for(r=si(t,0);r.b!=r.d.c;)n=u(ii(r),214),n.e.length>0&&(e.td(n),n.i&&Gun(n))}function Cit(t,e){var n,r;return r=u(Mn(t.a,4),126),n=Nt(Cft,eut,415,e,0,1),r!=null&&Pc(r,0,n,0,r.length),n}function hre(t,e){var n;return n=new rat((t.f&256)!=0,t.i,t.a,t.d,(t.f&16)!=0,t.j,t.g,e),t.e!=null||(n.c=t),n}function Zcn(t,e){var n,r;for(r=t.Zb().Cc().Kc();r.Ob();)if(n=u(r.Pb(),14),n.Hc(e))return!0;return!1}function Sit(t,e,n,r,s){var o,h;for(h=n;h<=s;h++)for(o=e;o<=r;o++)if(h4(t,o,h))return!0;return!1}function fre(t,e,n){var r,s,o,h;for(In(n),h=!1,o=t.Zc(e),s=n.Kc();s.Ob();)r=s.Pb(),o.Rb(r),h=!0;return h}function Jcn(t,e){var n;return t===e?!0:_t(e,83)?(n=u(e,83),O4t(Pv(t),n.vc())):!1}function dre(t,e,n){var r,s;for(s=n.Kc();s.Ob();)if(r=u(s.Pb(),42),t.re(e,r.dd()))return!0;return!1}function gre(t,e,n){return t.d[e.p][n.p]||(Yhn(t,e,n),t.d[e.p][n.p]=!0,t.d[n.p][e.p]=!0),t.a[e.p][n.p]}function Y8(t,e){if(!t.ai()&&e==null)throw nt(new Pn("The 'no null' constraint is violated"));return e}function X8(t,e){t.D==null&&t.B!=null&&(t.D=t.B,t.B=null),sit(t,e==null?null:(In(e),e)),t.C&&t.yk(null)}function tun(t,e){var n;return!t||t==e||!ea(e,(ae(),Dw))?!1:(n=u(K(e,(ae(),Dw)),10),n!=t)}function Ait(t){switch(t.i){case 2:return!0;case 1:return!1;case-1:++t.c;default:return t.pl()}}function pre(t){switch(t.i){case-2:return!0;case-1:return!1;case 1:--t.c;default:return t.ql()}}function bre(t){sQt.call(this,"The given string does not match the expected format for individual spacings.",t)}function Ol(){Ol=X,th=new ZR("ELK",0),IAt=new ZR("JSON",1),DAt=new ZR("DOT",2),OAt=new ZR("SVG",3)}function RD(){RD=X,_G=new jet(K0,0),fCt=new jet("RADIAL_COMPACTION",1),dCt=new jet("WEDGE_COMPACTION",2)}function N1(){N1=X,S7t=new vet("CONCURRENT",0),Yl=new vet("IDENTITY_FINISH",1),Ly=new vet("UNORDERED",2)}function Lit(){Lit=X,nEt=(AR(),$ut),eEt=new vn(Q6t,nEt),Dpe=new ts(Z6t),Ipe=new ts(J6t),Ope=new ts(txt)}function Q8(){Q8=X,p9t=new G5,b9t=new HY,Gbe=new AL,Vbe=new VY,Hbe=new GY,g9t=(In(Hbe),new qe)}function Z8(){Z8=X,mht=new Net("CONSERVATIVE",0),j_t=new Net("CONSERVATIVE_SOFT",1),DS=new Net("SLOPPY",2)}function bz(){bz=X,yAt=new Mv(15),s4e=new ao((di(),V2),yAt),KS=$x,bAt=q3e,vAt=H2,mAt=o5,wAt=jG}function Mit(t,e,n){var r,s,o;for(r=new cs,o=si(n,0);o.b!=o.d.c;)s=u(ii(o),8),ai(r,new So(s));fre(t,e,r)}function eun(t){var e,n,r;for(e=0,r=Nt(na,re,8,t.b,0,1),n=si(t,0);n.b!=n.d.c;)r[e++]=u(ii(n),8);return r}function Oyt(t){var e;return e=(!t.a&&(t.a=new he(eg,t,9,5)),t.a),e.i!=0?mYe(u(At(e,0),678)):null}function nun(t,e){var n;return n=Ra(t,e),bet(krt(t,e),0)|PYe(krt(t,n),0)?n:Ra(Dq,krt(zm(n,63),1))}function run(t,e){var n;n=Ie((Wit(),oG))!=null&&e.wg()!=null?Zt(ve(e.wg()))/Zt(ve(Ie(oG))):1,Ai(t.b,e,n)}function iun(t,e){var n,r;return n=u(t.d.Bc(e),14),n?(r=t.e.hc(),r.Gc(n),t.e.d-=n.gc(),n.$b(),r):null}function Nyt(t,e){var n,r;if(r=t.c[e],r!=0)for(t.c[e]=0,t.d-=r,n=e+1;n0)return g8(e-1,t.a.c.length),Ig(t.a,e-1);throw nt(new Hzt)}function sun(t,e,n){if(e<0)throw nt(new Co($1e+e));ee)throw nt(new Pn(Fq+t+ffe+e));if(t<0||e>n)throw nt(new Kpt(Fq+t+R6t+e+F6t+n))}function mre(t){if(!t.a||!(t.a.i&8))throw nt(new Ho("Enumeration class expected for layout option "+t.f))}function ey(t){var e;++t.j,t.i==0?t.g=null:t.ihH?t-n>hH:n-t>hH}function Iit(t,e){return!t||e&&!t.j||_t(t,124)&&u(t,124).a.b==0?0:t.Re()}function wz(t,e){return!t||e&&!t.k||_t(t,124)&&u(t,124).a.a==0?0:t.Se()}function jD(t){return eb(),t<0?t!=-1?new L3t(-1,-t):Aut:t<=10?p7t[Cs(t)]:new L3t(1,t)}function Fyt(t){throw vit(),nt(new Fqt("Unexpected typeof result '"+t+"'; please report this bug to the GWT team"))}function Tre(t){qqt(),uj(this),n$(this),this.e=t,Bce(this,t),this.g=t==null?Mu:Wo(t),this.a="",this.b=t,this.a=""}function Byt(){this.a=new uZ,this.f=new D$t(this),this.b=new I$t(this),this.i=new O$t(this),this.e=new N$t(this)}function _re(){gKe.call(this,new ymt(Qm(16))),ql(2,Whe),this.b=2,this.a=new mwt(null,null,0,null),cM(this.a,this.a)}function Y_(){Y_=X,uht=new Met("DUMMY_NODE_OVER",0),E_t=new Met("DUMMY_NODE_UNDER",1),uG=new Met("EQUAL",2)}function Oit(){Oit=X,Zut=oQt(ut(ot(WS,1),oe,103,0,[(fo(),Hh),_f])),Jut=oQt(ut(ot(WS,1),oe,103,0,[Z0,Q0]))}function Nit(t){return(be(),Iu).Hc(t.j)?Zt(ve(K(t,(ae(),fE)))):nc(ut(ot(na,1),re,8,0,[t.i.n,t.n,t.a])).b}function lun(t){var e,n,r,s;for(r=t.b.a,n=r.a.ec().Kc();n.Ob();)e=u(n.Pb(),561),s=new vce(e,t.e,t.f),ue(t.g,s)}function g2(t,e){var n,r,s;r=t.nk(e,null),s=null,e&&(s=(Zk(),n=new wv,n),O8(s,t.r)),r=F1(t,s,r),r&&r.Fi()}function hun(t,e){var n,r;for(r=pl(t.d,1)!=0,n=!0;n;)n=!1,n=e.c.Tf(e.e,r),n=n|pI(t,e,r,!1),r=!r;eyt(t)}function Ryt(t,e){var n,r,s;return r=!1,n=e.q.d,e.ds&&(Qse(e.q,s),r=n!=e.q.d)),r}function Cre(t,e){var n,r,s,o,h,d,w,k;return w=e.i,k=e.j,r=t.f,s=r.i,o=r.j,h=w-s,d=k-o,n=b.Math.sqrt(h*h+d*d),n}function jyt(t,e){var n,r;return r=Iz(t),r||(n=(Cat(),Zae(e)),r=new Nzt(n),Or(r.Vk(),t)),r}function $D(t,e){var n,r;return n=u(t.c.Bc(e),14),n?(r=t.hc(),r.Gc(n),t.d-=n.gc(),n.$b(),t.mc(r)):t.jc()}function Sre(t,e){var n;for(n=0;n=t.c.b:t.a<=t.c.b))throw nt(new vc);return e=t.a,t.a+=t.c.c,++t.b,de(e)}function gun(t){var e;return e=new aee(t),aD(t.a,Abe,new Cl(ut(ot(gO,1),Me,369,0,[e]))),e.d&&ue(e.f,e.d),e.f}function Pit(t){var e;return e=new a2t(t.a),Bo(e,t),ee(e,(ae(),Ii),t),e.o.a=t.g,e.o.b=t.f,e.n.a=t.i,e.n.b=t.j,e}function pun(t,e,n,r){var s,o;for(o=t.Kc();o.Ob();)s=u(o.Pb(),70),s.n.a=e.a+(r.a-s.o.a)/2,s.n.b=e.b,e.b+=s.o.b+n}function bun(t,e,n){var r,s;for(s=e.a.a.ec().Kc();s.Ob();)if(r=u(s.Pb(),57),$Xt(t,r,n))return!0;return!1}function vun(t){var e,n;for(n=new S(t.r);n.a=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(s*=n,r-=1);return e<0?1/s:s}function xun(t,e){var n,r,s;for(s=1,n=t,r=e>=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(s*=n,r-=1);return e<0?1/s:s}function Nre(t){var e,n;if(t!=null)for(n=0;n0&&(n=u(Pe(t.a,t.a.c.length-1),570),Myt(n,e))||ue(t.a,new dJt(e))}function Cun(t){df();var e,n;e=t.d.c-t.e.c,n=u(t.g,145),_u(n.b,new _T(e)),_u(n.c,new Ub(e)),_a(n.i,new nR(e))}function Rre(t){var e;return e=new Ap,e.a+="VerticalSegment ",wc(e,t.e),e.a+=" ",Yr(e,b2t(new cet,new S(t.k))),e.a}function Sun(t){var e;return e=u(Wv(t.c.c,""),229),e||(e=new $6(Qk(Xk(new wm,""),"Other")),v2(t.c.c,"",e)),e}function X_(t){var e;return t.Db&64?mf(t):(e=new Ah(mf(t)),e.a+=" (name: ",yo(e,t.zb),e.a+=")",e.a)}function Vyt(t,e,n){var r,s;return s=t.sb,t.sb=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,4,s,e),n?n.Ei(r):n=r),n}function Fit(t,e){var n,r,s;for(n=0,s=rc(t,e).Kc();s.Ob();)r=u(s.Pb(),11),n+=K(r,(ae(),sl))!=null?1:0;return n}function o4(t,e,n){var r,s,o;for(r=0,o=si(t,0);o.b!=o.d.c&&(s=Zt(ve(ii(o))),!(s>n));)s>=e&&++r;return r}function Aun(t,e,n){var r,s;return r=new F0(t.e,3,13,null,(s=e.c,s||(ln(),K1)),$g(t,e),!1),n?n.Ei(r):n=r,n}function Lun(t,e,n){var r,s;return r=new F0(t.e,4,13,(s=e.c,s||(ln(),K1)),null,$g(t,e),!1),n?n.Ei(r):n=r,n}function Gyt(t,e,n){var r,s;return s=t.r,t.r=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,8,s,t.r),n?n.Ei(r):n=r),n}function Bg(t,e){var n,r;return n=u(e,676),r=n.vk(),!r&&n.wk(r=_t(e,88)?new NGt(t,u(e,26)):new eZt(t,u(e,148))),r}function zD(t,e,n){var r;t.qi(t.i+1),r=t.oi(e,n),e!=t.i&&Pc(t.g,e,t.g,e+1,t.i-e),ls(t.g,e,r),++t.i,t.bi(e,n),t.ci()}function Mun(t,e){var n;return e.a&&(n=e.a.a.length,t.a?Yr(t.a,t.b):t.a=new Fl(t.d),rZt(t.a,e.a,e.d.length,n)),t}function Dun(t,e){var n,r,s,o;if(e.vi(t.a),o=u(Mn(t.a,8),1936),o!=null)for(n=o,r=0,s=n.length;rn)throw nt(new Co(Fq+t+R6t+e+", size: "+n));if(t>e)throw nt(new Pn(Fq+t+ffe+e))}function gh(t,e,n){if(e<0)K4t(t,n);else{if(!n.Ij())throw nt(new Pn(cb+n.ne()+WC));u(n,66).Nj().Vj(t,t.yh(),e)}}function Nun(t,e,n,r,s,o,h,d){var w;for(w=n;o=r||e=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t>=48&&t<=57?t-48:0}function Gre(t){var e;return t.Db&64?mf(t):(e=new Ah(mf(t)),e.a+=" (source: ",yo(e,t.d),e.a+=")",e.a)}function Fun(t,e,n){var r,s;return s=t.a,t.a=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,5,s,t.a),n?g4t(n,r):n=r),n}function Rg(t,e){var n;n=(t.Bb&256)!=0,e?t.Bb|=256:t.Bb&=-257,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,2,n,e))}function Wyt(t,e){var n;n=(t.Bb&256)!=0,e?t.Bb|=256:t.Bb&=-257,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,8,n,e))}function xz(t,e){var n;n=(t.Bb&256)!=0,e?t.Bb|=256:t.Bb&=-257,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,8,n,e))}function jg(t,e){var n;n=(t.Bb&512)!=0,e?t.Bb|=512:t.Bb&=-513,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,3,n,e))}function Kyt(t,e){var n;n=(t.Bb&512)!=0,e?t.Bb|=512:t.Bb&=-513,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,9,n,e))}function Z_(t,e){var n;return t.b==-1&&t.a&&(n=t.a.Gj(),t.b=n?t.c.Xg(t.a.aj(),n):es(t.c.Tg(),t.a)),t.c.Og(t.b,e)}function de(t){var e,n;return t>-129&&t<128?(e=t+128,n=(HKt(),n7t)[e],!n&&(n=n7t[e]=new iM(t)),n):new iM(t)}function J8(t){var e,n;return t>-129&&t<128?(e=t+128,n=(YKt(),a7t)[e],!n&&(n=a7t[e]=new eR(t)),n):new eR(t)}function Yyt(t){var e,n;return e=t.k,e==(Gn(),Is)?(n=u(K(t,(ae(),gc)),61),n==(be(),On)||n==yr):!1}function Bun(t,e,n){var r,s,o;return o=(s=b7(t.b,e),s),o&&(r=u(Eq(mD(t,o),""),26),r)?p5t(t,r,e,n):null}function Bit(t,e,n){var r,s,o;return o=(s=b7(t.b,e),s),o&&(r=u(Eq(mD(t,o),""),26),r)?b5t(t,r,e,n):null}function Ure(t,e){var n,r;for(r=new nr(t);r.e!=r.i.gc();)if(n=u(dr(r),138),Gt(e)===Gt(n))return!0;return!1}function J_(t,e,n){var r;if(r=t.gc(),e>r)throw nt(new jm(e,r));if(t.hi()&&t.Hc(n))throw nt(new Pn(XI));t.Xh(e,n)}function Run(t,e){var n;if(n=e4(t.i,e),n==null)throw nt(new od("Node did not exist in input."));return ayt(e,n),null}function jun(t,e){var n;if(n=gI(t,e),_t(n,322))return u(n,34);throw nt(new Pn(cb+e+"' is not a valid attribute"))}function $un(t,e,n){var r,s;for(s=_t(e,99)&&u(e,18).Bb&Qa?new Ket(e,t):new V8(e,t),r=0;re?1:t==e?t==0?js(1/t,1/e):0:isNaN(t)?isNaN(e)?0:1:-1}function Yun(t,e){mr(e,"Sort end labels",1),ys(Wi(ec(new kn(null,new Tn(t.b,16)),new QP),new z5),new mY),or(e)}function tC(t,e,n){var r,s;return t.ej()?(s=t.fj(),r=Vst(t,e,n),t.$i(t.Zi(7,de(n),r,e,s)),r):Vst(t,e,n)}function Rit(t,e){var n,r,s;t.d==null?(++t.e,--t.f):(s=e.cd(),n=e.Sh(),r=(n&Ti)%t.d.length,Isn(t,r,lce(t,r,n,s)))}function t7(t,e){var n;n=(t.Bb&xf)!=0,e?t.Bb|=xf:t.Bb&=-1025,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,10,n,e))}function e7(t,e){var n;n=(t.Bb&yy)!=0,e?t.Bb|=yy:t.Bb&=-4097,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,12,n,e))}function n7(t,e){var n;n=(t.Bb&Ku)!=0,e?t.Bb|=Ku:t.Bb&=-8193,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,15,n,e))}function r7(t,e){var n;n=(t.Bb&Ay)!=0,e?t.Bb|=Ay:t.Bb&=-2049,t.Db&4&&!(t.Db&1)&&Ci(t,new bf(t,1,11,n,e))}function Xun(t,e){var n;return n=js(t.b.c,e.b.c),n!=0||(n=js(t.a.a,e.a.a),n!=0)?n:js(t.a.b,e.a.b)}function Qun(t,e){var n;if(n=tr(t.k,e),n==null)throw nt(new od("Port did not exist in input."));return ayt(e,n),null}function Zun(t){var e,n;for(n=pce(zl(t)).Kc();n.Ob();)if(e=jr(n.Pb()),mC(t,e))return asn((TVt(),G4e),e);return null}function Jun(t,e){var n,r,s,o,h;for(h=hu(t.e.Tg(),e),o=0,n=u(t.g,119),s=0;s>10)+OI&Ms,e[1]=(t&1023)+56320&Ms,Ih(e,0,e.length)}function Ez(t){var e,n;return n=u(K(t,(xe(),Xl)),103),n==(fo(),c0)?(e=Zt(ve(K(t,UV))),e>=1?_f:Q0):n}function nln(t){switch(u(K(t,(xe(),X0)),218).g){case 1:return new jX;case 3:return new VX;default:return new RX}}function p2(t){if(t.c)p2(t.c);else if(t.d)throw nt(new Ho("Stream already terminated, can't be modified or used"))}function zit(t){var e;return t.Db&64?mf(t):(e=new Ah(mf(t)),e.a+=" (identifier: ",yo(e,t.k),e.a+=")",e.a)}function Xre(t,e,n){var r,s;return r=(Tv(),s=new mp,s),W$(r,e),K$(r,n),t&&Or((!t.a&&(t.a=new Bs(Wh,t,5)),t.a),r),r}function qit(t,e,n,r){var s,o;return In(r),In(n),s=t.xc(e),o=s==null?n:hVt(u(s,15),u(n,14)),o==null?t.Bc(e):t.zc(e,o),o}function on(t){var e,n,r,s;return n=(e=u(Wf((r=t.gm,s=r.f,s==Ur?r:s)),9),new oh(e,u(ff(e,e.length),9),0)),wf(n,t),n}function rln(t,e,n){var r,s;for(s=t.a.ec().Kc();s.Ob();)if(r=u(s.Pb(),10),DD(n,u(Pe(e,r.p),14)))return r;return null}function iln(t,e,n){var r;try{Rcn(t,e,n)}catch(s){throw s=rs(s),_t(s,597)?(r=s,nt(new rmt(r))):nt(s)}return e}function Qp(t,e){var n;return Vo(t)&&Vo(e)&&(n=t-e,II>1,t.k=n-1>>1}function Hit(){y4t();var t,e,n;n=t6n+++Date.now(),t=Cs(b.Math.floor(n*PI))&Pq,e=Cs(n-t*P6t),this.a=t^1502,this.b=e^got}function z0(t){var e,n,r;for(e=new le,r=new S(t.j);r.a34028234663852886e22?bs:e<-34028234663852886e22?Ns:e}function Qre(t){return t-=t>>1&1431655765,t=(t>>2&858993459)+(t&858993459),t=(t>>4)+t&252645135,t+=t>>8,t+=t>>16,t&63}function Zre(t){var e,n,r,s;for(e=new IWt(t.Hd().gc()),s=0,r=W6(t.Hd().Kc());r.Ob();)n=r.Pb(),mrn(e,n,de(s++));return V0n(e.a)}function lln(t,e){var n,r,s;for(s=new Ar,r=e.vc().Kc();r.Ob();)n=u(r.Pb(),42),Ai(s,n.cd(),ecn(t,u(n.dd(),15)));return s}function e3t(t,e){t.n.c.length==0&&ue(t.n,new f$(t.s,t.t,t.i)),ue(t.b,e),B3t(u(Pe(t.n,t.n.c.length-1),211),e),cle(t,e)}function c4(t){return(t.c!=t.b.b||t.i!=t.g.b)&&(t.a.c=Nt(Qn,Me,1,0,5,1),Rs(t.a,t.b),Rs(t.a,t.g),t.c=t.b.b,t.i=t.g.b),t.a}function Vit(t,e){var n,r,s;for(s=0,r=u(e.Kb(t),20).Kc();r.Ob();)n=u(r.Pb(),17),Be(Fe(K(n,(ae(),H1))))||++s;return s}function hln(t,e){var n,r,s;r=J3(e),s=Zt(ve(iy(r,(xe(),Tf)))),n=b.Math.max(0,s/2-.5),cC(e,n,1),ue(t,new VVt(e,n))}function ph(){ph=X,_O=new _M(K0,0),yS=new _M("FIRST",1),gb=new _M(a1e,2),xS=new _M("LAST",3),Fy=new _M(o1e,4)}function q0(){q0=X,bft=new KR(OC,0),XO=new KR("POLYLINE",1),CE=new KR("ORTHOGONAL",2),qx=new KR("SPLINES",3)}function Tz(){Tz=X,DCt=new zet("ASPECT_RATIO_DRIVEN",0),qht=new zet("MAX_SCALE_DRIVEN",1),MCt=new zet("AREA_DRIVEN",2)}function VD(){VD=X,AG=new qet("P1_STRUCTURE",0),LG=new qet("P2_PROCESSING_ORDER",1),MG=new qet("P3_EXECUTION",2)}function _z(){_z=X,Fht=new Ret("OVERLAP_REMOVAL",0),Nht=new Ret("COMPACTION",1),Pht=new Ret("GRAPH_SIZE_CALCULATION",2)}function rw(t,e){return E1(),vf(rb),b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e))}function Jre(t,e){var n,r;for(n=si(t,0);n.b!=n.d.c;){if(r=lM(ve(ii(n))),r==e)return;if(r>e){Trt(n);break}}XM(n,e)}function an(t,e){var n,r,s,o,h;if(n=e.f,v2(t.c.d,n,e),e.g!=null)for(s=e.g,o=0,h=s.length;oe&&r.ue(t[o-1],t[o])>0;--o)h=t[o],ls(t,o,t[o-1]),ls(t,o-1,h)}function bh(t,e,n,r){if(e<0)y5t(t,n,r);else{if(!n.Ij())throw nt(new Pn(cb+n.ne()+WC));u(n,66).Nj().Tj(t,t.yh(),e,r)}}function Cz(t,e){if(e==t.d)return t.e;if(e==t.e)return t.d;throw nt(new Pn("Node "+e+" not part of edge "+t))}function dln(t,e){switch(e.g){case 2:return t.b;case 1:return t.c;case 4:return t.d;case 3:return t.a;default:return!1}}function tie(t,e){switch(e.g){case 2:return t.b;case 1:return t.c;case 4:return t.d;case 3:return t.a;default:return!1}}function n3t(t,e,n,r){switch(e){case 3:return t.f;case 4:return t.g;case 5:return t.i;case 6:return t.j}return Uyt(t,e,n,r)}function gln(t){return t.k!=(Gn(),qs)?!1:C8(new kn(null,new Fv(new ar(lr($s(t).a.Kc(),new H)))),new LF)}function pln(t){return t.e==null?t:(!t.c&&(t.c=new rat((t.f&256)!=0,t.i,t.a,t.d,(t.f&16)!=0,t.j,t.g,null)),t.c)}function bln(t,e){return t.h==DI&&t.m==0&&t.l==0?(e&&(ub=cu(0,0,0)),eUt((I8(),X8t))):(e&&(ub=cu(t.l,t.m,t.h)),cu(0,0,0))}function Wo(t){var e;return Array.isArray(t)&&t.im===Ft?Mp(dl(t))+"@"+(e=Ji(t)>>>0,e.toString(16)):t.toString()}function eC(t){var e;this.a=(e=u(t.e&&t.e(),9),new oh(e,u(ff(e,e.length),9),0)),this.b=Nt(Qn,Me,1,this.a.a.length,5,1)}function vln(t){var e,n,r;for(this.a=new A0,r=new S(t);r.a0&&($r(e-1,t.length),t.charCodeAt(e-1)==58)&&!Git(t,iA,sA))}function Git(t,e,n){var r,s;for(r=0,s=t.length;r=s)return e.c+n;return e.c+e.b.gc()}function kln(t,e){l8();var n,r,s,o;for(r=gte(t),s=e,M8(r,0,r.length,s),n=0;n0&&(r+=s,++n);return n>1&&(r+=t.d*(n-1)),r}function i3t(t){var e,n,r;for(r=new _g,r.a+="[",e=0,n=t.gc();e0&&this.b>0&&jvt(this.c,this.b,this.a)}function o3t(t){Wit(),this.c=L1(ut(ot(w6n,1),Me,831,0,[Fwe])),this.b=new Ar,this.a=t,Ai(this.b,oG,1),_u(Bwe,new H$t(this))}function eie(t,e){var n;return t.d?Ml(t.b,e)?u(tr(t.b,e),51):(n=e.Kf(),Ai(t.b,e,n),n):e.Kf()}function c3t(t,e){var n;return Gt(t)===Gt(e)?!0:_t(e,91)?(n=u(e,91),t.e==n.e&&t.d==n.d&&csn(t,n.a)):!1}function Z6(t){switch(be(),t.g){case 4:return On;case 1:return Hn;case 3:return yr;case 2:return Bn;default:return ac}}function u3t(t,e){switch(e){case 3:return t.f!=0;case 4:return t.g!=0;case 5:return t.i!=0;case 6:return t.j!=0}return cyt(t,e)}function Aln(t){switch(t.g){case 0:return new sZ;case 1:return new HF;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function nie(t){switch(t.g){case 0:return new qF;case 1:return new VF;default:throw nt(new Pn(jot+(t.f!=null?t.f:""+t.g)))}}function rie(t){switch(t.g){case 0:return new zpt;case 1:return new gqt;default:throw nt(new Pn(pH+(t.f!=null?t.f:""+t.g)))}}function Lln(t){switch(t.g){case 1:return new tZ;case 2:return new yWt;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function Mln(t){var e,n;if(t.b)return t.b;for(n=z1?null:t.d;n;){if(e=z1?null:n.b,e)return e;n=z1?null:n.d}return r8(),C7t}function Dln(t){var e,n,r;return t.e==0?0:(e=t.d<<5,n=t.a[t.d-1],t.e<0&&(r=dne(t),r==t.d-1&&(--n,n=n|0)),e-=lI(n),e)}function Iln(t){var e,n,r;return t>5,e=t&31,r=Nt(Sr,Jr,25,n+1,15,1),r[n]=1<3;)s*=10,--o;t=(t+(s>>1))/s|0}return r.i=t,!0}function Nln(t){return Oit(),Fn(),!!(tie(u(t.a,81).j,u(t.b,103))||u(t.a,81).d.e!=0&&tie(u(t.a,81).j,u(t.b,103)))}function Pln(t){O$(),u(t.We((di(),mb)),174).Hc((bl(),WG))&&(u(t.We(Ky),174).Fc((il(),Hx)),u(t.We(mb),174).Mc(WG))}function sie(t,e){var n,r;if(e){for(n=0;n=0;--r)for(e=n[r],s=0;s>1,this.k=e-1>>1}function zln(t,e){mr(e,"End label post-processing",1),ys(Wi(ec(new kn(null,new Tn(t.b,16)),new dY),new gY),new pY),or(e)}function qln(t,e,n){var r,s;return r=Zt(t.p[e.i.p])+Zt(t.d[e.i.p])+e.n.b+e.a.b,s=Zt(t.p[n.i.p])+Zt(t.d[n.i.p])+n.n.b+n.a.b,s-r}function Hln(t,e,n){var r,s;for(r=Gs(n,po),s=0;_c(r,0)!=0&&s0&&($r(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function Gln(t){var e;return t==null?null:new Fp((e=Hc(t,!0),e.length>0&&($r(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function b3t(t,e){var n;return t.i>0&&(e.lengtht.i&&ls(e,t.i,null),e}function eu(t,e,n){var r,s,o;return t.ej()?(r=t.i,o=t.fj(),zD(t,r,e),s=t.Zi(3,null,e,r,o),n?n.Ei(s):n=s):zD(t,t.i,e),n}function Uln(t,e,n){var r,s;return r=new F0(t.e,4,10,(s=e.c,_t(s,88)?u(s,26):(ln(),Qh)),null,$g(t,e),!1),n?n.Ei(r):n=r,n}function Wln(t,e,n){var r,s;return r=new F0(t.e,3,10,null,(s=e.c,_t(s,88)?u(s,26):(ln(),Qh)),$g(t,e),!1),n?n.Ei(r):n=r,n}function cie(t){Bm();var e;return e=new So(u(t.e.We((di(),o5)),8)),t.B.Hc((bl(),AE))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function uie(t){sy();var e;return(t.q?t.q:(pn(),pn(),a0))._b((xe(),Nw))?e=u(K(t,Nw),197):e=u(K($a(t),_S),197),e}function iy(t,e){var n,r;return r=null,ea(t,(xe(),sG))&&(n=u(K(t,sG),94),n.Xe(e)&&(r=n.We(e))),r==null&&(r=K($a(t),e)),r}function lie(t,e){var n,r,s;return _t(e,42)?(n=u(e,42),r=n.cd(),s=ny(t.Rc(),r),dd(s,n.dd())&&(s!=null||t.Rc()._b(r))):!1}function Yit(t,e){var n,r,s;return t.f>0?(t.qj(),r=e==null?0:Ji(e),s=(r&Ti)%t.d.length,n=lce(t,s,r,e),n!=-1):!1}function Jf(t,e){var n,r,s;return t.f>0&&(t.qj(),r=e==null?0:Ji(e),s=(r&Ti)%t.d.length,n=t5t(t,s,r,e),n)?n.dd():null}function GD(t,e){var n,r,s,o;for(o=hu(t.e.Tg(),e),n=u(t.g,119),s=0;s1?A1(M0(e.a[1],32),Gs(e.a[0],po)):Gs(e.a[0],po),Gv(Ia(e.e,n))))}function UD(t,e){var n;return Vo(t)&&Vo(e)&&(n=t%e,II>5,e&=31,s=t.d+n+(e==0?0:1),r=Nt(Sr,Jr,25,s,15,1),Kdn(r,t.a,n,e),o=new Y3(t.e,s,r),O_(o),o}function w3t(t,e,n){var r,s;r=u(jc(DE,e),117),s=u(jc(hA,e),117),n?(Ao(DE,t,r),Ao(hA,t,s)):(Ao(hA,t,r),Ao(DE,t,s))}function vie(t,e,n){var r,s,o;for(s=null,o=t.b;o;){if(r=t.a.ue(e,o.d),n&&r==0)return o;r>=0?o=o.a[1]:(s=o,o=o.a[0])}return s}function wie(t,e,n){var r,s,o;for(s=null,o=t.b;o;){if(r=t.a.ue(e,o.d),n&&r==0)return o;r<=0?o=o.a[0]:(s=o,o=o.a[1])}return s}function Zln(t,e,n,r){var s,o,h;return s=!1,O3n(t.f,n,r)&&(Ehn(t.f,t.a[e][n],t.a[e][r]),o=t.a[e],h=o[r],o[r]=o[n],o[n]=h,s=!0),s}function m3t(t,e,n,r,s){var o,h,d;for(h=s;e.b!=e.c;)o=u(P6(e),10),d=u(rc(o,r).Xb(0),11),t.d[d.p]=h++,n.c[n.c.length]=d;return h}function y3t(t,e,n){var r,s,o,h,d;return h=t.k,d=e.k,r=n[h.g][d.g],s=ve(iy(t,r)),o=ve(iy(e,r)),b.Math.max((In(s),s),(In(o),o))}function Jln(t,e,n){var r,s,o,h;for(r=n/t.c.length,s=0,h=new S(t);h.a2e3&&(pge=t,qH=b.setTimeout(aYe,10))),zH++==0?(Nan((Upt(),W8t)),!0):!1}function ehn(t,e){var n,r,s;for(r=new ar(lr($s(t).a.Kc(),new H));Vr(r);)if(n=u(Ir(r),17),s=n.d.i,s.c==e)return!1;return!0}function x3t(t,e){var n,r;if(_t(e,245)){r=u(e,245);try{return n=t.vd(r),n==0}catch(s){if(s=rs(s),!_t(s,205))throw nt(s)}}return!1}function nhn(){return Error.stackTraceLimit>0?(b.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function rhn(t,e){return E1(),E1(),vf(rb),(b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e)))>0}function k3t(t,e){return E1(),E1(),vf(rb),(b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e)))<0}function xie(t,e){return E1(),E1(),vf(rb),(b.Math.abs(t-e)<=rb||t==e||isNaN(t)&&isNaN(e)?0:te?1:Lv(isNaN(t),isNaN(e)))<=0}function Qit(t,e){for(var n=0;!e[n]||e[n]=="";)n++;for(var r=e[n++];nuot)return n.fh();if(r=n.Zg(),r||n==t)break}return r}function E3t(t){return g$(),_t(t,156)?u(tr(cN,Sge),288).vg(t):Ml(cN,dl(t))?u(tr(cN,dl(t)),288).vg(t):null}function shn(t){if(Oz($7,t))return Fn(),W7;if(Oz(Pct,t))return Fn(),O2;throw nt(new Pn("Expecting true or false"))}function ahn(t,e){if(e.c==t)return e.d;if(e.d==t)return e.c;throw nt(new Pn("Input edge is not connected to the input port."))}function Sie(t,e){return t.e>e.e?1:t.ee.d?t.e:t.d=48&&t<48+b.Math.min(10,10)?t-48:t>=97&&t<97?t-97+10:t>=65&&t<65?t-65+10:-1}function Lie(t,e){var n;return Gt(e)===Gt(t)?!0:!_t(e,21)||(n=u(e,21),n.gc()!=t.gc())?!1:t.Ic(n)}function ohn(t,e){var n,r,s,o;return r=t.a.length-1,n=e-t.b&r,o=t.c-e&r,s=t.c-t.b&r,sWt(n=o?(aun(t,e),-1):(oun(t,e),1)}function chn(t,e){var n,r;for(n=($r(e,t.length),t.charCodeAt(e)),r=e+1;re.e?1:t.fe.f?1:Ji(t)-Ji(e)}function Oz(t,e){return In(t),e==null?!1:un(t,e)?!0:t.length==e.length&&un(t.toLowerCase(),e.toLowerCase())}function vhn(t,e){var n,r,s,o;for(r=0,s=e.gc();r0&&_c(t,128)<0?(e=Mr(t)+128,n=(KKt(),r7t)[e],!n&&(n=r7t[e]=new _m(t)),n):new _m(t)}function Die(t,e){var n,r;return n=e.Hh(t.a),n&&(r=jr(Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),fi)),r!=null)?r:e.ne()}function whn(t,e){var n,r;return n=e.Hh(t.a),n&&(r=jr(Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),fi)),r!=null)?r:e.ne()}function mhn(t,e){vrt();var n,r;for(r=new ar(lr(z0(t).a.Kc(),new H));Vr(r);)if(n=u(Ir(r),17),n.d.i==e||n.c.i==e)return n;return null}function C3t(t,e,n){this.c=t,this.f=new le,this.e=new Da,this.j=new Pvt,this.n=new Pvt,this.b=e,this.g=new ch(e.c,e.d,e.b,e.a),this.a=n}function Zit(t){var e,n,r,s;for(this.a=new A0,this.d=new Qs,this.e=0,n=t,r=0,s=n.length;r0):!1}function Nie(t){var e;Gt(ze(t,(di(),i5)))===Gt(($0(),HG))&&(hs(t)?(e=u(ze(hs(t),i5),334),Eo(t,i5,e)):Eo(t,i5,YS))}function Ehn(t,e,n){var r,s;Ost(t.e,e,n,(be(),Bn)),Ost(t.i,e,n,Hn),t.a&&(s=u(K(e,(ae(),Ii)),11),r=u(K(n,Ii),11),Ert(t.g,s,r))}function Pie(t,e,n){var r,s,o;r=e.c.p,o=e.p,t.b[r][o]=new ZXt(t,e),n&&(t.a[r][o]=new Gk(e),s=u(K(e,(ae(),Dw)),10),s&&cn(t.d,s,e))}function Fie(t,e){var n,r,s;if(ue(nV,t),e.Fc(t),n=u(tr(Vut,t),21),n)for(s=n.Kc();s.Ob();)r=u(s.Pb(),33),Go(nV,r,0)!=-1||Fie(r,e)}function Thn(t,e,n){var r;(Nge?(Mln(t),!0):Pge||Bge?(r8(),!0):Fge&&(r8(),!1))&&(r=new lKt(e),r.b=n,S0n(t,r))}function Jit(t,e){var n;n=!t.A.Hc((Nl(),W2))||t.q==(va(),Kc),t.u.Hc((il(),tg))?n?U4n(t,e):fhe(t,e):t.u.Hc(Eb)&&(n?h4n(t,e):Che(t,e))}function a7(t,e){var n,r;if(++t.j,e!=null&&(n=(r=t.a.Cb,_t(r,97)?u(r,97).Jg():null),mpn(e,n))){J6(t.a,4,n);return}J6(t.a,4,u(e,126))}function Bie(t,e,n){return new ch(b.Math.min(t.a,e.a)-n/2,b.Math.min(t.b,e.b)-n/2,b.Math.abs(t.a-e.a)+n,b.Math.abs(t.b-e.b)+n)}function _hn(t,e){var n,r;return n=mu(t.a.c.p,e.a.c.p),n!=0?n:(r=mu(t.a.d.i.p,e.a.d.i.p),r!=0?r:mu(e.a.d.p,t.a.d.p))}function Chn(t,e,n){var r,s,o,h;return o=e.j,h=n.j,o!=h?o.g-h.g:(r=t.f[e.p],s=t.f[n.p],r==0&&s==0?0:r==0?-1:s==0?1:js(r,s))}function Rie(t,e,n){var r,s,o;if(!n[e.d])for(n[e.d]=!0,s=new S(c4(e));s.a=s)return s;for(e=e>0?e:0;er&&ls(e,r,null),e}function $ie(t,e){var n,r;for(r=t.a.length,e.lengthr&&ls(e,r,null),e}function v2(t,e,n){var r,s,o;return s=u(tr(t.e,e),387),s?(o=X2t(s,n),DUt(t,s),o):(r=new Evt(t,e,n),Ai(t.e,e,r),rQt(r),null)}function Lhn(t){var e;if(t==null)return null;if(e=Ebn(Hc(t,!0)),e==null)throw nt(new set("Invalid hexBinary value: '"+t+"'"));return e}function KD(t){return eb(),_c(t,0)<0?_c(t,-1)!=0?new h4t(-1,D8(t)):Aut:_c(t,10)<=0?p7t[Mr(t)]:new h4t(1,t)}function est(){return Lq(),ut(ot(xpe,1),oe,159,0,[mpe,wpe,ype,lpe,upe,hpe,gpe,dpe,fpe,vpe,bpe,ppe,ope,ape,cpe,ipe,rpe,spe,epe,tpe,npe,But])}function zie(t){var e;this.d=new le,this.j=new Da,this.g=new Da,e=t.g.b,this.f=u(K($a(e),(xe(),Xl)),103),this.e=Zt(ve(Fz(e,Vy)))}function qie(t){this.b=new le,this.e=new le,this.d=t,this.a=!jT(Wi(new kn(null,new Fv(new M1(t.b))),new te(new MF))).sd((Yb(),Q7))}function t1(){t1=X,qn=new AM("PARENTS",0),ua=new AM("NODES",1),Id=new AM("EDGES",2),q2=new AM("PORTS",3),tp=new AM("LABELS",4)}function u4(){u4=X,xb=new MM("DISTRIBUTED",0),JO=new MM("JUSTIFIED",1),kAt=new MM("BEGIN",2),XS=new MM(I7,3),EAt=new MM("END",4)}function Mhn(t){var e;switch(e=t.yi(null),e){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function nst(t){switch(t.g){case 1:return fo(),Z0;case 4:return fo(),Hh;case 2:return fo(),_f;case 3:return fo(),Q0}return fo(),c0}function Dhn(t,e,n){var r;switch(r=n.q.getFullYear()-ib+ib,r<0&&(r=-r),e){case 1:t.a+=r;break;case 2:Xd(t,r%100,2);break;default:Xd(t,r,e)}}function si(t,e){var n,r;if(Um(e,t.b),e>=t.b>>1)for(r=t.c,n=t.b;n>e;--n)r=r.b;else for(r=t.a.a,n=0;n=64&&e<128&&(s=A1(s,M0(1,e-64)));return s}function Fz(t,e){var n,r;return r=null,ea(t,(di(),zx))&&(n=u(K(t,zx),94),n.Xe(e)&&(r=n.We(e))),r==null&&$a(t)&&(r=K($a(t),e)),r}function Gie(t,e){var n,r,s;s=e.d.i,r=s.k,!(r==(Gn(),qs)||r==q1)&&(n=new ar(lr($s(s).a.Kc(),new H)),Vr(n)&&Ai(t.k,e,u(Ir(n),17)))}function rst(t,e){var n,r,s;return r=wn(t.Tg(),e),n=e-t.Ah(),n<0?(s=t.Yg(r),s>=0?t.lh(s):Hst(t,r)):n<0?Hst(t,r):u(r,66).Nj().Sj(t,t.yh(),n)}function Ie(t){var e;if(_t(t.a,4)){if(e=E3t(t.a),e==null)throw nt(new Ho(q1e+t.b+"'. "+z1e+(L0(uN),uN.k)+r8t));return e}else return t.a}function Nhn(t){var e;if(t==null)return null;if(e=t5n(Hc(t,!0)),e==null)throw nt(new set("Invalid base64Binary value: '"+t+"'"));return e}function dr(t){var e;try{return e=t.i.Xb(t.e),t.mj(),t.g=t.e++,e}catch(n){throw n=rs(n),_t(n,73)?(t.mj(),nt(new vc)):nt(n)}}function ist(t){var e;try{return e=t.c.ki(t.e),t.mj(),t.g=t.e++,e}catch(n){throw n=rs(n),_t(n,73)?(t.mj(),nt(new vc)):nt(n)}}function iC(){iC=X,sEt=(di(),eAt),qut=OSt,Npe=jx,iEt=V2,Rpe=(Kz(),B7t),Bpe=P7t,jpe=j7t,Fpe=N7t,Ppe=(Lit(),eEt),zut=Dpe,rEt=Ipe,eV=Ope}function Bz(t){switch(fbt(),this.c=new le,this.d=t,t.g){case 0:case 2:this.a=ywt(EEt),this.b=bs;break;case 3:case 1:this.a=EEt,this.b=Ns}}function Uie(t,e,n){var r,s;if(t.c)Cu(t.c,t.c.i+e),Su(t.c,t.c.j+n);else for(s=new S(t.b);s.a0&&(ue(t.b,new CKt(e.a,n)),r=e.a.length,0r&&(e.a+=MUt(Nt(Eh,wd,25,-r,15,1))))}function Wie(t,e){var n,r,s;for(n=t.o,s=u(u(Pi(t.r,e),21),84).Kc();s.Ob();)r=u(s.Pb(),111),r.e.a=Bfn(r,n.a),r.e.b=n.b*Zt(ve(r.b.We(ZH)))}function Fhn(t,e){var n,r,s,o;return s=t.k,n=Zt(ve(K(t,(ae(),Iw)))),o=e.k,r=Zt(ve(K(e,Iw))),o!=(Gn(),Is)?-1:s!=Is?1:n==r?0:n=0?t.hh(e,n,r):(t.eh()&&(r=(s=t.Vg(),s>=0?t.Qg(r):t.eh().ih(t,-1-s,null,r))),t.Sg(e,n,r))}function A3t(t,e){switch(e){case 7:!t.e&&(t.e=new En(ra,t,7,4)),Tr(t.e);return;case 8:!t.d&&(t.d=new En(ra,t,8,5)),Tr(t.d);return}g3t(t,e)}function e1(t,e){var n;n=t.Zc(e);try{return n.Pb()}catch(r){throw r=rs(r),_t(r,109)?nt(new Co("Can't get element "+e)):nt(r)}}function L3t(t,e){this.e=t,e=0&&(n.d=t.t);break;case 3:t.t>=0&&(n.a=t.t)}t.C&&(n.b=t.C.b,n.c=t.C.c)}function ex(){ex=X,cO=new $R(Rq,0),oO=new $R(Eot,1),uO=new $R(Tot,2),lO=new $R(_ot,3),cO.a=!1,oO.a=!0,uO.a=!1,lO.a=!0}function sC(){sC=X,hO=new jR(Rq,0),JH=new jR(Eot,1),tV=new jR(Tot,2),fO=new jR(_ot,3),hO.a=!1,JH.a=!0,tV.a=!1,fO.a=!0}function zhn(t){var e;e=t.a;do e=u(Ir(new ar(lr(Uo(e).a.Kc(),new H))),17).c.i,e.k==(Gn(),ca)&&t.b.Fc(e);while(e.k==(Gn(),ca));t.b=c2(t.b)}function qhn(t){var e,n,r;for(r=t.c.a,t.p=(Dr(r),new qu(r)),n=new S(r);n.an.b)return!0}return!1}function sst(t,e){return ha(t)?!!cge[e]:t.hm?!!t.hm[e]:Nm(t)?!!oge[e]:Om(t)?!!age[e]:!1}function Eo(t,e,n){return n==null?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),Dz(t.o,e)):(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),Yz(t.o,e,n)),t}function Uhn(t,e,n,r){var s,o;o=e.Xe((di(),a5))?u(e.We(a5),21):t.j,s=Pun(o),s!=(Lq(),But)&&(n&&!T3t(s)||N4t(Tbn(t,s,r),e))}function jz(t,e,n,r){var s,o,h;return o=wn(t.Tg(),e),s=e-t.Ah(),s<0?(h=t.Yg(o),h>=0?t._g(h,n,!0):lw(t,o,n)):u(o,66).Nj().Pj(t,t.yh(),s,n,r)}function Whn(t,e,n,r){var s,o,h;n.mh(e)&&(so(),Qrt(e)?(s=u(n.ah(e),153),vhn(t,s)):(o=(h=e,h?u(r,49).xh(h):null),o&&YWe(n.ah(e),o)))}function Khn(t){switch(t.g){case 1:return tw(),aO;case 3:return tw(),sO;case 2:return tw(),jut;case 4:return tw(),Rut;default:return null}}function M3t(t){switch(typeof t){case Pat:return zg(t);case C6t:return Cs(t);case cx:return Fn(),t?1231:1237;default:return t==null?0:Dv(t)}}function Yhn(t,e,n){if(t.e)switch(t.b){case 1:Tnn(t.c,e,n);break;case 0:_nn(t.c,e,n)}else PZt(t.c,e,n);t.a[e.p][n.p]=t.c.i,t.a[n.p][e.p]=t.c.e}function Zie(t){var e,n;if(t==null)return null;for(n=Nt(o0,re,193,t.length,0,2),e=0;e=0)return s;if(t.Fk()){for(r=0;r=s)throw nt(new jm(e,s));if(t.hi()&&(r=t.Xc(n),r>=0&&r!=e))throw nt(new Pn(XI));return t.mi(e,n)}function D3t(t,e){if(this.a=u(Dr(t),245),this.b=u(Dr(e),245),t.vd(e)>0||t==(Jtt(),vut)||e==(Ztt(),wut))throw nt(new Pn("Invalid range: "+DZt(t,e)))}function Jie(t){var e,n;for(this.b=new le,this.c=t,this.a=!1,n=new S(t.a);n.a0),(e&-e)==e)return Cs(e*pl(t,31)*4656612873077393e-25);do n=pl(t,31),r=n%e;while(n-r+(e-1)<0);return Cs(r)}function zg(t){hKt();var e,n,r;return n=":"+t,r=YH[n],r!=null?Cs((In(r),r)):(r=A7t[n],e=r==null?z2n(t):Cs((In(r),r)),bnn(),YH[n]=e,e)}function ese(t,e,n){mr(n,"Compound graph preprocessor",1),t.a=new Hv,ohe(t,e,null),Ayn(t,e),l2n(t),ee(e,(ae(),W9t),t.a),t.a=null,nl(t.b),or(n)}function Zhn(t,e,n){switch(n.g){case 1:t.a=e.a/2,t.b=0;break;case 2:t.a=e.a,t.b=e.b/2;break;case 3:t.a=e.a/2,t.b=e.b;break;case 4:t.a=0,t.b=e.b/2}}function Jhn(t){var e,n,r;for(r=u(Pi(t.a,(p4(),DV)),15).Kc();r.Ob();)n=u(r.Pb(),101),e=V3t(n),b8(t,n,e[0],(Jv(),Sw),0),b8(t,n,e[1],Aw,1)}function tfn(t){var e,n,r;for(r=u(Pi(t.a,(p4(),IV)),15).Kc();r.Ob();)n=u(r.Pb(),101),e=V3t(n),b8(t,n,e[0],(Jv(),Sw),0),b8(t,n,e[1],Aw,1)}function ast(t){switch(t.g){case 0:return null;case 1:return new ene;case 2:return new qpt;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function YD(t,e,n){var r,s;for(kcn(t,e-t.s,n-t.t),s=new S(t.n);s.a1&&(o=Qhn(t,e)),o}function ost(t){var e;return t.f&&t.f.kh()&&(e=u(t.f,49),t.f=u(Xp(t,e),82),t.f!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,8,e,t.f))),t.f}function cst(t){var e;return t.i&&t.i.kh()&&(e=u(t.i,49),t.i=u(Xp(t,e),82),t.i!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,7,e,t.i))),t.i}function oo(t){var e;return t.b&&t.b.Db&64&&(e=t.b,t.b=u(Xp(t,e),18),t.b!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,21,e,t.b))),t.b}function qz(t,e){var n,r,s;t.d==null?(++t.e,++t.f):(r=e.Sh(),v2n(t,t.f+1),s=(r&Ti)%t.d.length,n=t.d[s],!n&&(n=t.d[s]=t.uj()),n.Fc(e),++t.f)}function N3t(t,e,n){var r;return e.Kj()?!1:e.Zj()!=-2?(r=e.zj(),r==null?n==null:Si(r,n)):e.Hj()==t.e.Tg()&&n==null}function Hz(){var t;ql(16,Qhe),t=Uee(16),this.b=Nt(yut,LI,317,t,0,1),this.c=Nt(yut,LI,317,t,0,1),this.a=null,this.e=null,this.i=0,this.f=t-1,this.g=0}function H0(t){Z2t.call(this),this.k=(Gn(),qs),this.j=(ql(6,my),new Jc(6)),this.b=(ql(2,my),new Jc(2)),this.d=new Wtt,this.f=new Opt,this.a=t}function nfn(t){var e,n;t.c.length<=1||(e=Jce(t,(be(),yr)),zae(t,u(e.a,19).a,u(e.b,19).a),n=Jce(t,Bn),zae(t,u(n.a,19).a,u(n.b,19).a))}function aC(){aC=X,__t=new TM("SIMPLE",0),fht=new TM(zot,1),dht=new TM("LINEAR_SEGMENTS",2),AS=new TM("BRANDES_KOEPF",3),LS=new TM(E1e,4)}function P3t(t,e,n){D6(u(K(e,(xe(),ws)),98))||(Lmt(t,e,qg(e,n)),Lmt(t,e,qg(e,(be(),yr))),Lmt(t,e,qg(e,On)),pn(),aa(e.j,new aM(t)))}function nse(t,e,n,r){var s,o,h;for(s=u(Pi(r?t.a:t.b,e),21),h=s.Kc();h.Ob();)if(o=u(h.Pb(),33),dq(t,n,o))return!0;return!1}function ust(t){var e,n;for(n=new nr(t);n.e!=n.i.gc();)if(e=u(dr(n),87),e.e||(!e.d&&(e.d=new Bs(wo,e,1)),e.d).i!=0)return!0;return!1}function lst(t){var e,n;for(n=new nr(t);n.e!=n.i.gc();)if(e=u(dr(n),87),e.e||(!e.d&&(e.d=new Bs(wo,e,1)),e.d).i!=0)return!0;return!1}function rfn(t){var e,n,r;for(e=0,r=new S(t.c.a);r.a102?-1:t<=57?t-48:t<65?-1:t<=70?t-65+10:t<97?-1:t-97+10}function dst(t,e){if(t==null)throw nt(new m6("null key in entry: null="+e));if(e==null)throw nt(new m6("null value in entry: "+t+"=null"))}function ifn(t,e){for(var n,r;t.Ob();)if(!e.Ob()||(n=t.Pb(),r=e.Pb(),!(Gt(n)===Gt(r)||n!=null&&Si(n,r))))return!1;return!e.Ob()}function ise(t,e){var n;return n=ut(ot(ga,1),To,25,15,[Iit(t.a[0],e),Iit(t.a[1],e),Iit(t.a[2],e)]),t.d&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function sse(t,e){var n;return n=ut(ot(ga,1),To,25,15,[wz(t.a[0],e),wz(t.a[1],e),wz(t.a[2],e)]),t.d&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function m2(){m2=X,xlt=new EM("GREEDY",0),T9t=new EM(u1e,1),klt=new EM(zot,2),pS=new EM("MODEL_ORDER",3),gS=new EM("GREEDY_MODEL_ORDER",4)}function ase(t,e){var n,r,s;for(t.b[e.g]=1,r=si(e.d,0);r.b!=r.d.c;)n=u(ii(r),188),s=n.c,t.b[s.g]==1?ai(t.a,n):t.b[s.g]==2?t.b[s.g]=1:ase(t,s)}function sfn(t,e){var n,r,s;for(s=new Jc(e.gc()),r=e.Kc();r.Ob();)n=u(r.Pb(),286),n.c==n.f?d7(t,n,n.c):rgn(t,n)||(s.c[s.c.length]=n);return s}function afn(t,e,n){var r,s,o,h,d;for(d=t.r+e,t.r+=e,t.d+=n,r=n/t.n.c.length,s=0,h=new S(t.n);h.ao&&ls(e,o,null),e}function yfn(t,e){var n,r;if(r=t.gc(),e==null){for(n=0;n0&&(w+=s),k[_]=h,h+=d*(w+r)}function gse(t){var e,n,r;for(r=t.f,t.n=Nt(ga,To,25,r,15,1),t.d=Nt(ga,To,25,r,15,1),e=0;e0?t.c:0),++s;t.b=r,t.d=o}function Sfn(t,e){var n,r,s,o,h;for(r=0,s=0,n=0,h=new S(e);h.a0?t.g:0),++n;t.c=s,t.d=r}function mse(t,e){var n;return n=ut(ot(ga,1),To,25,15,[O3t(t,(Zf(),fc),e),O3t(t,iu,e),O3t(t,dc,e)]),t.f&&(n[0]=b.Math.max(n[0],n[2]),n[2]=n[0]),n}function Afn(t,e,n){var r;try{bq(t,e+t.j,n+t.k,!1,!0)}catch(s){throw s=rs(s),_t(s,73)?(r=s,nt(new Co(r.g+$q+e+Xa+n+")."))):nt(s)}}function Lfn(t,e,n){var r;try{bq(t,e+t.j,n+t.k,!0,!1)}catch(s){throw s=rs(s),_t(s,73)?(r=s,nt(new Co(r.g+$q+e+Xa+n+")."))):nt(s)}}function yse(t){var e;ea(t,(xe(),Ow))&&(e=u(K(t,Ow),21),e.Hc((fy(),Cf))?(e.Mc(Cf),e.Fc(Sf)):e.Hc(Sf)&&(e.Mc(Sf),e.Fc(Cf)))}function xse(t){var e;ea(t,(xe(),Ow))&&(e=u(K(t,Ow),21),e.Hc((fy(),Lf))?(e.Mc(Lf),e.Fc(Gh)):e.Hc(Gh)&&(e.Mc(Gh),e.Fc(Lf)))}function Mfn(t,e,n){mr(n,"Self-Loop ordering",1),ys(xu(Wi(Wi(ec(new kn(null,new Tn(e.b,16)),new cF),new KY),new YY),new XY),new Cm(t)),or(n)}function QD(t,e,n,r){var s,o;for(s=e;s0&&(s.b+=e),s}function Uz(t,e){var n,r,s;for(s=new Da,r=t.Kc();r.Ob();)n=u(r.Pb(),37),wC(n,0,s.b),s.b+=n.f.b+e,s.a=b.Math.max(s.a,n.f.a);return s.a>0&&(s.a+=e),s}function Ese(t){var e,n,r;for(r=Ti,n=new S(t.a);n.a>16==6?t.Cb.ih(t,5,o1,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||t.zh()),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Pfn(t){k8();var e=t.e;if(e&&e.stack){var n=e.stack,r=e+` +`;return n.substring(0,r.length)==r&&(n=n.substring(r.length)),n.split(` +`)}return[]}function Ffn(t){var e;return e=($ee(),yge),e[t>>>28]|e[t>>24&15]<<4|e[t>>20&15]<<8|e[t>>16&15]<<12|e[t>>12&15]<<16|e[t>>8&15]<<20|e[t>>4&15]<<24|e[t&15]<<28}function Cse(t){var e,n,r;t.b==t.c&&(r=t.a.length,n=xyt(b.Math.max(8,r))<<1,t.b!=0?(e=ff(t.a,n),Kee(t,e,r),t.a=e,t.b=0):Wzt(t.a,n),t.c=r)}function Bfn(t,e){var n;return n=t.b,n.Xe((di(),ml))?n.Hf()==(be(),Bn)?-n.rf().a-Zt(ve(n.We(ml))):e+Zt(ve(n.We(ml))):n.Hf()==(be(),Bn)?-n.rf().a:e}function ZD(t){var e;return t.b.c.length!=0&&u(Pe(t.b,0),70).a?u(Pe(t.b,0),70).a:(e=srt(t),e??""+(t.c?Go(t.c.a,t,0):-1))}function Wz(t){var e;return t.f.c.length!=0&&u(Pe(t.f,0),70).a?u(Pe(t.f,0),70).a:(e=srt(t),e??""+(t.i?Go(t.i.j,t,0):-1))}function Rfn(t,e){var n,r;if(e<0||e>=t.gc())return null;for(n=e;n0?t.c:0),s=b.Math.max(s,e.d),++r;t.e=o,t.b=s}function $fn(t){var e,n;if(!t.b)for(t.b=y$(u(t.f,118).Ag().i),n=new nr(u(t.f,118).Ag());n.e!=n.i.gc();)e=u(dr(n),137),ue(t.b,new iet(e));return t.b}function zfn(t,e){var n,r,s;if(e.dc())return l8(),l8(),lN;for(n=new LWt(t,e.gc()),s=new nr(t);s.e!=s.i.gc();)r=dr(s),e.Hc(r)&&Or(n,r);return n}function q3t(t,e,n,r){return e==0?r?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),t.o):(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),fD(t.o)):jz(t,e,n,r)}function xst(t){var e,n;if(t.rb)for(e=0,n=t.rb.i;e>22),s+=r>>22,s<0)?!1:(t.l=n&vl,t.m=r&vl,t.h=s&W0,!0)}function Gfn(t,e,n,r,s,o,h){var d,w;return!(e.Ae()&&(w=t.a.ue(n,r),w<0||!s&&w==0)||e.Be()&&(d=t.a.ue(n,o),d>0||!h&&d==0))}function Ufn(t,e){Q8();var n;if(n=t.j.g-e.j.g,n!=0)return 0;switch(t.j.g){case 2:return Vit(e,b9t)-Vit(t,b9t);case 4:return Vit(t,p9t)-Vit(e,p9t)}return 0}function Wfn(t){switch(t.g){case 0:return Tlt;case 1:return _lt;case 2:return Clt;case 3:return Slt;case 4:return PV;case 5:return Alt;default:return null}}function Io(t,e,n){var r,s;return r=(s=new Xtt,g2(s,e),tu(s,n),Or((!t.c&&(t.c=new he(zw,t,12,10)),t.c),s),s),Pg(r,0),ty(r,1),jg(r,!0),Rg(r,!0),r}function nx(t,e){var n,r;if(e>=t.i)throw nt(new Wet(e,t.i));return++t.j,n=t.g[e],r=t.i-e-1,r>0&&Pc(t.g,e+1,t.g,e,r),ls(t.g,--t.i,null),t.fi(e,n),t.ci(),n}function Sse(t,e){var n,r;return t.Db>>16==17?t.Cb.ih(t,21,Kh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||t.zh()),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Kfn(t){var e,n,r,s;for(pn(),aa(t.c,t.a),s=new S(t.c);s.an.a.c.length))throw nt(new Pn("index must be >= 0 and <= layer node count"));t.c&&Eu(t.c.a,t),t.c=n,n&&$m(n.a,e,t)}function Ise(t,e){var n,r,s;for(r=new ar(lr(z0(t).a.Kc(),new H));Vr(r);)return n=u(Ir(r),17),s=u(e.Kb(n),10),new Bk(Dr(s.n.b+s.o.b/2));return DT(),DT(),but}function Ose(t,e){this.c=new Ar,this.a=t,this.b=e,this.d=u(K(t,(ae(),X4)),304),Gt(K(t,(xe(),e_t)))===Gt((bD(),FV))?this.e=new lqt:this.e=new uqt}function t1n(t,e){var n,r,s,o;for(o=0,r=new S(t);r.a>16==6?t.Cb.ih(t,6,ra,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),YG)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function K3t(t,e){var n,r;return t.Db>>16==7?t.Cb.ih(t,1,sN,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),PAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Y3t(t,e){var n,r;return t.Db>>16==9?t.Cb.ih(t,9,ds,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),BAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Pse(t,e){var n,r;return t.Db>>16==5?t.Cb.ih(t,9,iU,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),ip)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function X3t(t,e){var n,r;return t.Db>>16==3?t.Cb.ih(t,0,oN,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),rp)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Fse(t,e){var n,r;return t.Db>>16==7?t.Cb.ih(t,6,o1,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),ap)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Bse(){this.a=new XF,this.g=new Hz,this.j=new Hz,this.b=new Ar,this.d=new Hz,this.i=new Hz,this.k=new Ar,this.c=new Ar,this.e=new Ar,this.f=new Ar}function i1n(t,e,n){var r,s,o;for(n<0&&(n=0),o=t.i,s=n;suot)return c7(t,r);if(r==t)return!0}}return!1}function a1n(t){switch(gj(),t.q.g){case 5:xoe(t,(be(),On)),xoe(t,yr);break;case 4:bce(t,(be(),On)),bce(t,yr);break;default:bhe(t,(be(),On)),bhe(t,yr)}}function o1n(t){switch(gj(),t.q.g){case 5:Foe(t,(be(),Hn)),Foe(t,Bn);break;case 4:Wie(t,(be(),Hn)),Wie(t,Bn);break;default:vhe(t,(be(),Hn)),vhe(t,Bn)}}function c1n(t){var e,n;e=u(K(t,(n1(),ebe)),19),e?(n=e.a,n==0?ee(t,(Up(),aV),new Hit):ee(t,(Up(),aV),new T$(n))):ee(t,(Up(),aV),new T$(1))}function u1n(t,e){var n;switch(n=t.i,e.g){case 1:return-(t.n.b+t.o.b);case 2:return t.n.a-n.o.a;case 3:return t.n.b-n.o.b;case 4:return-(t.n.a+t.o.a)}return 0}function l1n(t,e){switch(t.g){case 0:return e==(ph(),gb)?CV:SV;case 1:return e==(ph(),gb)?CV:vO;case 2:return e==(ph(),gb)?vO:SV;default:return vO}}function tI(t,e){var n,r,s;for(Eu(t.a,e),t.e-=e.r+(t.a.c.length==0?0:t.c),s=Fkt,r=new S(t.a);r.a>16==3?t.Cb.ih(t,12,ds,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),NAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Z3t(t,e){var n,r;return t.Db>>16==11?t.Cb.ih(t,10,ds,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(nu(),FAt)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Rse(t,e){var n,r;return t.Db>>16==10?t.Cb.ih(t,11,Kh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),sp)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function jse(t,e){var n,r;return t.Db>>16==10?t.Cb.ih(t,12,Yh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||(ln(),e3)),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Oh(t){var e;return!(t.Bb&1)&&t.r&&t.r.kh()&&(e=u(t.r,49),t.r=u(Xp(t,e),138),t.r!=e&&t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,9,8,e,t.r))),t.r}function Est(t,e,n){var r;return r=ut(ot(ga,1),To,25,15,[E4t(t,(Zf(),fc),e,n),E4t(t,iu,e,n),E4t(t,dc,e,n)]),t.f&&(r[0]=b.Math.max(r[0],r[2]),r[2]=r[0]),r}function h1n(t,e){var n,r,s;if(s=sfn(t,e),s.c.length!=0)for(aa(s,new RY),n=s.c.length,r=0;r>19,k=e.h>>19,w!=k?k-w:(s=t.h,d=e.h,s!=d?s-d:(r=t.m,h=e.m,r!=h?r-h:(n=t.l,o=e.l,n-o)))}function Kz(){Kz=X,$7t=(gq(),Put),j7t=new vn(z6t,$7t),R7t=($$(),Nut),B7t=new vn(q6t,R7t),F7t=(Nz(),Out),P7t=new vn(H6t,F7t),N7t=new vn(V6t,(Fn(),!0))}function cC(t,e,n){var r,s;r=e*n,_t(t.g,145)?(s=q6(t),s.f.d?s.f.a||(t.d.a+=r+R1):(t.d.d-=r+R1,t.d.a+=r+R1)):_t(t.g,10)&&(t.d.d-=r,t.d.a+=2*r)}function $se(t,e,n){var r,s,o,h,d;for(s=t[n.g],d=new S(e.d);d.a0?t.g:0),++n;e.b=r,e.e=s}function zse(t){var e,n,r;if(r=t.b,uVt(t.i,r.length)){for(n=r.length*2,t.b=Nt(yut,LI,317,n,0,1),t.c=Nt(yut,LI,317,n,0,1),t.f=n-1,t.i=0,e=t.a;e;e=e.c)oI(t,e,e);++t.g}}function m1n(t,e,n,r){var s,o,h,d;for(s=0;sh&&(d=h/r),s>o&&(w=o/s),ld(t,b.Math.min(d,w)),t}function x1n(){yq();var t,e;try{if(e=u(u4t((Ip(),Xh),q7),2014),e)return e}catch(n){if(n=rs(n),_t(n,102))t=n,Xvt((Fr(),t));else throw nt(n)}return new Z5}function k1n(){Ite();var t,e;try{if(e=u(u4t((Ip(),Xh),D2),2024),e)return e}catch(n){if(n=rs(n),_t(n,102))t=n,Xvt((Fr(),t));else throw nt(n)}return new Em}function E1n(){yq();var t,e;try{if(e=u(u4t((Ip(),Xh),jh),1941),e)return e}catch(n){if(n=rs(n),_t(n,102))t=n,Xvt((Fr(),t));else throw nt(n)}return new QZ}function T1n(t,e,n){var r,s;return s=t.e,t.e=e,t.Db&4&&!(t.Db&1)&&(r=new oa(t,1,4,s,e),n?n.Ei(r):n=r),s!=e&&(e?n=T7(t,oq(t,e),n):n=T7(t,t.a,n)),n}function qse(){CR.call(this),this.e=-1,this.a=!1,this.p=Oa,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=Oa}function _1n(t,e){var n,r,s;if(r=t.b.d.d,t.a||(r+=t.b.d.a),s=e.b.d.d,e.a||(s+=e.b.d.a),n=js(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function C1n(t,e){var n,r,s;if(r=t.b.b.d,t.a||(r+=t.b.b.a),s=e.b.b.d,e.a||(s+=e.b.b.a),n=js(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function S1n(t,e){var n,r,s;if(r=t.b.g.d,t.a||(r+=t.b.g.a),s=e.b.g.d,e.a||(s+=e.b.g.a),n=js(r,s),n==0){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}function t4t(){t4t=X,pbe=el(Ei(Ei(Ei(new Zs,(Ya(),Gc),(co(),e9t)),Gc,n9t),jo,r9t),jo,VEt),vbe=Ei(Ei(new Zs,Gc,BEt),Gc,GEt),bbe=el(new Zs,jo,WEt)}function A1n(t){var e,n,r,s,o;for(e=u(K(t,(ae(),mS)),83),o=t.n,r=e.Cc().Kc();r.Ob();)n=u(r.Pb(),306),s=n.i,s.c+=o.a,s.d+=o.b,n.c?iue(n):sue(n);ee(t,mS,null)}function L1n(t,e,n){var r,s;switch(s=t.b,r=s.d,e.g){case 1:return-r.d-n;case 2:return s.o.a+r.c+n;case 3:return s.o.b+r.a+n;case 4:return-r.b-n;default:return-1}}function M1n(t){var e,n,r,s,o;if(r=0,s=N7,t.b)for(e=0;e<360;e++)n=e*.017453292519943295,V5t(t,t.d,0,0,I4,n),o=t.b.ig(t.d),o0&&(h=(o&Ti)%t.d.length,s=t5t(t,h,o,e),s)?(d=s.ed(n),d):(r=t.tj(o,e,n),t.c.Fc(r),null)}function r4t(t,e){var n,r,s,o;switch(Bg(t,e)._k()){case 3:case 2:{for(n=E4(e),s=0,o=n.i;s=0;r--)if(un(t[r].d,e)||un(t[r].d,n)){t.length>=r+1&&t.splice(0,r+1);break}return t}function eI(t,e){var n;return Vo(t)&&Vo(e)&&(n=t/e,II0&&(t.b+=2,t.a+=r):(t.b+=1,t.a+=b.Math.min(r,s))}function Yse(t,e){var n,r;if(r=!1,ha(e)&&(r=!0,F6(t,new Hm(jr(e)))),r||_t(e,236)&&(r=!0,F6(t,(n=uvt(u(e,236)),new yT(n)))),!r)throw nt(new net(w8t))}function K1n(t,e,n,r){var s,o,h;return s=new F0(t.e,1,10,(h=e.c,_t(h,88)?u(h,26):(ln(),Qh)),(o=n.c,_t(o,88)?u(o,26):(ln(),Qh)),$g(t,e),!1),r?r.Ei(s):r=s,r}function a4t(t){var e,n;switch(u(K($a(t),(xe(),WTt)),420).g){case 0:return e=t.n,n=t.o,new Re(e.a+n.a/2,e.b+n.b/2);case 1:return new So(t.n);default:return null}}function nI(){nI=X,BV=new QT(K0,0),I9t=new QT("LEFTUP",1),N9t=new QT("RIGHTUP",2),D9t=new QT("LEFTDOWN",3),O9t=new QT("RIGHTDOWN",4),Llt=new QT("BALANCED",5)}function Y1n(t,e,n){var r,s,o;if(r=js(t.a[e.p],t.a[n.p]),r==0){if(s=u(K(e,(ae(),Mx)),15),o=u(K(n,Mx),15),s.Hc(n))return-1;if(o.Hc(e))return 1}return r}function X1n(t){switch(t.g){case 1:return new nZ;case 2:return new rZ;case 3:return new eZ;case 0:return null;default:throw nt(new Pn(Ect+(t.f!=null?t.f:""+t.g)))}}function o4t(t,e,n){switch(e){case 1:!t.n&&(t.n=new he(Yo,t,1,7)),Tr(t.n),!t.n&&(t.n=new he(Yo,t,1,7)),gs(t.n,u(n,14));return;case 2:q_(t,jr(n));return}Syt(t,e,n)}function c4t(t,e,n){switch(e){case 3:Xv(t,Zt(ve(n)));return;case 4:Qv(t,Zt(ve(n)));return;case 5:Cu(t,Zt(ve(n)));return;case 6:Su(t,Zt(ve(n)));return}o4t(t,e,n)}function Xz(t,e,n){var r,s,o;o=(r=new Xtt,r),s=F1(o,e,null),s&&s.Fi(),tu(o,n),Or((!t.c&&(t.c=new he(zw,t,12,10)),t.c),o),Pg(o,0),ty(o,1),jg(o,!0),Rg(o,!0)}function u4t(t,e){var n,r,s;return n=UT(t.g,e),_t(n,235)?(s=u(n,235),s.Qh()==null,s.Nh()):_t(n,498)?(r=u(n,1938),s=r.b,s):null}function Q1n(t,e,n,r){var s,o;return Dr(e),Dr(n),o=u(w_(t.d,e),19),Bte(!!o,"Row %s not in %s",e,t.e),s=u(w_(t.b,n),19),Bte(!!s,"Column %s not in %s",n,t.c),qne(t,o.a,s.a,r)}function Xse(t,e,n,r,s,o,h){var d,w,k,_,M;if(_=s[o],k=o==h-1,d=k?r:0,M=vse(d,_),r!=10&&ut(ot(t,h-o),e[o],n[o],d,M),!k)for(++o,w=0;w<_;++w)M[w]=Xse(t,e,n,r,s,o,h);return M}function uC(t){if(t.g==-1)throw nt(new Ru);t.mj();try{t.i.$c(t.g),t.f=t.i.j,t.g1||d==-1?(o=u(w,15),s.Wb(ihn(t,o))):s.Wb(hat(t,u(w,56)))))}function idn(t,e,n,r){BHt();var s=put;function o(){for(var h=0;hyct)return n;s>-1e-6&&++n}return n}function f4t(t,e){var n;e!=t.b?(n=null,t.b&&(n=c$(t.b,t,-4,n)),e&&(n=tx(e,t,-4,n)),n=Ire(t,e,n),n&&n.Fi()):t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,e,e))}function Jse(t,e){var n;e!=t.f?(n=null,t.f&&(n=c$(t.f,t,-1,n)),e&&(n=tx(e,t,-1,n)),n=Ore(t,e,n),n&&n.Fi()):t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,0,e,e))}function tae(t){var e,n,r;if(t==null)return null;if(n=u(t,15),n.dc())return"";for(r=new _g,e=n.Kc();e.Ob();)yo(r,($i(),jr(e.Pb()))),r.a+=" ";return Yet(r,r.a.length-1)}function eae(t){var e,n,r;if(t==null)return null;if(n=u(t,15),n.dc())return"";for(r=new _g,e=n.Kc();e.Ob();)yo(r,($i(),jr(e.Pb()))),r.a+=" ";return Yet(r,r.a.length-1)}function fdn(t,e,n){var r,s;return r=t.c[e.c.p][e.p],s=t.c[n.c.p][n.p],r.a!=null&&s.a!=null?Bnt(r.a,s.a):r.a!=null?-1:s.a!=null?1:0}function ddn(t,e){var n,r,s,o,h,d;if(e)for(o=e.a.length,n=new Jb(o),d=(n.b-n.a)*n.c<0?(Op(),Mb):new Bp(n);d.Ob();)h=u(d.Pb(),19),s=T8(e,h.a),r=new nzt(t),nnn(r.a,s)}function gdn(t,e){var n,r,s,o,h,d;if(e)for(o=e.a.length,n=new Jb(o),d=(n.b-n.a)*n.c<0?(Op(),Mb):new Bp(n);d.Ob();)h=u(d.Pb(),19),s=T8(e,h.a),r=new W$t(t),enn(r.a,s)}function pdn(t){var e;if(t!=null&&t.length>0&&Ta(t,t.length-1)==33)try{return e=Zae(Bl(t,0,t.length-1)),e.e==null}catch(n){if(n=rs(n),!_t(n,32))throw nt(n)}return!1}function nae(t,e,n){var r,s,o;return r=e.ak(),o=e.dd(),s=r.$j()?Hp(t,3,r,null,o,x7(t,r,o,_t(r,99)&&(u(r,18).Bb&Qa)!=0),!0):Hp(t,1,r,r.zj(),o,-1,!0),n?n.Ei(s):n=s,n}function bdn(){var t,e,n;for(e=0,t=0;t<1;t++){if(n=i5t(($r(t,1),"X".charCodeAt(t))),n==0)throw nt(new Rr("Unknown Option: "+"X".substr(t)));e|=n}return e}function vdn(t,e,n){var r,s,o;switch(r=$a(e),s=Ez(r),o=new Nc,tc(o,e),n.g){case 1:Us(o,HD(Z6(s)));break;case 2:Us(o,Z6(s))}return ee(o,(xe(),zy),ve(K(t,zy))),o}function d4t(t){var e,n;return e=u(Ir(new ar(lr(Uo(t.a).a.Kc(),new H))),17),n=u(Ir(new ar(lr($s(t.a).a.Kc(),new H))),17),Be(Fe(K(e,(ae(),H1))))||Be(Fe(K(n,H1)))}function p4(){p4=X,LV=new kM("ONE_SIDE",0),DV=new kM("TWO_SIDES_CORNER",1),IV=new kM("TWO_SIDES_OPPOSING",2),MV=new kM("THREE_SIDES",3),AV=new kM("FOUR_SIDES",4)}function Sst(t,e,n,r,s){var o,h;o=u($l(Wi(e.Oc(),new PX),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),h=u(u2(t.b,n,r),15),s==0?h.Wc(0,o):h.Gc(o)}function wdn(t,e){var n,r,s,o,h;for(o=new S(e.a);o.a0&&Ase(this,this.c-1,(be(),Hn)),this.c0&&t[0].length>0&&(this.c=Be(Fe(K($a(t[0][0]),(ae(),Y9t))))),this.a=Nt(sme,re,2018,t.length,0,2),this.b=Nt(ame,re,2019,t.length,0,2),this.d=new _re}function Edn(t){return t.c.length==0?!1:(Sn(0,t.c.length),u(t.c[0],17)).c.i.k==(Gn(),ca)?!0:C8(xu(new kn(null,new Tn(t,16)),new lQ),new hQ)}function Tdn(t,e,n){return mr(n,"Tree layout",1),w$(t.b),Ud(t.b,(o7(),vG),vG),Ud(t.b,PS,PS),Ud(t.b,PO,PO),Ud(t.b,FS,FS),t.a=Tq(t.b,e),J2n(t,e,zc(n,1)),or(n),e}function iae(t,e){var n,r,s,o,h,d,w;for(d=gy(e),o=e.f,w=e.g,h=b.Math.sqrt(o*o+w*w),s=0,r=new S(d);r.a=0?(n=eI(t,Nq),r=UD(t,Nq)):(e=zm(t,1),n=eI(e,5e8),r=UD(e,5e8),r=Ra(M0(r,1),Gs(t,1))),A1(M0(r,32),Gs(n,po))}function oae(t,e,n){var r,s;switch(r=(Zn(e.b!=0),u(fh(e,e.a.a),8)),n.g){case 0:r.b=0;break;case 2:r.b=t.f;break;case 3:r.a=0;break;default:r.a=t.g}return s=si(e,0),XM(s,r),e}function cae(t,e,n,r){var s,o,h,d,w;switch(w=t.b,o=e.d,h=o.j,d=S3t(h,w.d[h.g],n),s=Fi(uc(o.n),o.a),o.j.g){case 1:case 3:d.a+=s.a;break;case 2:case 4:d.b+=s.b}ks(r,d,r.c.b,r.c)}function Fdn(t,e,n){var r,s,o,h;for(h=Go(t.e,e,0),o=new Dpt,o.b=n,r=new xa(t.e,h);r.b1;e>>=1)e&1&&(r=t4(r,n)),n.d==1?n=t4(n,n):n=new Iie(zue(n.a,n.d,Nt(Sr,Jr,25,n.d<<1,15,1)));return r=t4(r,n),r}function y4t(){y4t=X;var t,e,n,r;for(x7t=Nt(ga,To,25,25,15,1),k7t=Nt(ga,To,25,33,15,1),r=152587890625e-16,e=32;e>=0;e--)k7t[e]=r,r*=.5;for(n=1,t=24;t>=0;t--)x7t[t]=n,n*=.5}function qdn(t){var e,n;if(Be(Fe(ze(t,(xe(),$y))))){for(n=new ar(lr(V0(t).a.Kc(),new H));Vr(n);)if(e=u(Ir(n),79),uw(e)&&Be(Fe(ze(e,B2))))return!0}return!1}function uae(t,e){var n,r,s;Vs(t.f,e)&&(e.b=t,r=e.c,Go(t.j,r,0)!=-1||ue(t.j,r),s=e.d,Go(t.j,s,0)!=-1||ue(t.j,s),n=e.a.b,n.c.length!=0&&(!t.i&&(t.i=new zie(t)),icn(t.i,n)))}function Hdn(t){var e,n,r,s,o;return n=t.c.d,r=n.j,s=t.d.d,o=s.j,r==o?n.p=0&&un(t.substr(e,3),"GMT")||e>=0&&un(t.substr(e,3),"UTC"))&&(n[0]=e+3),W5t(t,n,r)}function Gdn(t,e){var n,r,s,o,h;for(o=t.g.a,h=t.g.b,r=new S(t.d);r.an;o--)t[o]|=e[o-n-1]>>>h,t[o-1]=e[o-n-1]<=t.f)break;o.c[o.c.length]=n}return o}function k4t(t){var e,n,r,s;for(e=null,s=new S(t.wf());s.a0&&Pc(t.g,e,t.g,e+r,d),h=n.Kc(),t.i+=r,s=0;so&&oen(k,see(n[d],m7t))&&(s=d,o=w);return s>=0&&(r[0]=e+o),s}function Zdn(t,e){var n;if(n=nUt(t.b.Hf(),e.b.Hf()),n!=0)return n;switch(t.b.Hf().g){case 1:case 2:return mu(t.b.sf(),e.b.sf());case 3:case 4:return mu(e.b.sf(),t.b.sf())}return 0}function Jdn(t){var e,n,r;for(r=t.e.c.length,t.a=Zb(Sr,[re,Jr],[48,25],15,[r,r],2),n=new S(t.c);n.a>4&15,o=t[r]&15,h[s++]=RAt[n],h[s++]=RAt[o];return Ih(h,0,h.length)}function n0n(t,e,n){var r,s,o;return r=e.ak(),o=e.dd(),s=r.$j()?Hp(t,4,r,o,null,x7(t,r,o,_t(r,99)&&(u(r,18).Bb&Qa)!=0),!0):Hp(t,r.Kj()?2:1,r,o,r.zj(),-1,!0),n?n.Ei(s):n=s,n}function Lu(t){var e,n;return t>=Qa?(e=OI+(t-Qa>>10&1023)&Ms,n=56320+(t-Qa&1023)&Ms,String.fromCharCode(e)+(""+String.fromCharCode(n))):String.fromCharCode(t&Ms)}function r0n(t,e){Bm();var n,r,s,o;return s=u(u(Pi(t.r,e),21),84),s.gc()>=2?(r=u(s.Kc().Pb(),111),n=t.u.Hc((il(),JS)),o=t.u.Hc(Hx),!r.a&&!n&&(s.gc()==2||o)):!1}function fae(t,e,n,r,s){var o,h,d;for(o=Yce(t,e,n,r,s),d=!1;!o;)sq(t,s,!0),d=!0,o=Yce(t,e,n,r,s);d&&sq(t,s,!1),h=bit(s),h.c.length!=0&&(t.d&&t.d.lg(h),fae(t,s,n,r,h))}function tq(){tq=X,wft=new r_(K0,0),fAt=new r_("DIRECTED",1),gAt=new r_("UNDIRECTED",2),lAt=new r_("ASSOCIATION",3),dAt=new r_("GENERALIZATION",4),hAt=new r_("DEPENDENCY",5)}function i0n(t,e){var n;if(!_1(t))throw nt(new Ho(ode));switch(n=_1(t),e.g){case 1:return-(t.j+t.f);case 2:return t.i-n.g;case 3:return t.j-n.f;case 4:return-(t.i+t.g)}return 0}function h7(t,e){var n,r;for(In(e),r=t.b.c.length,ue(t.b,e);r>0;){if(n=r,r=(r-1)/2|0,t.a.ue(Pe(t.b,r),e)<=0)return lh(t.b,n,e),!0;lh(t.b,n,Pe(t.b,r))}return lh(t.b,r,e),!0}function E4t(t,e,n,r){var s,o;if(s=0,n)s=wz(t.a[n.g][e.g],r);else for(o=0;o=d)}function T4t(t,e,n,r){var s;if(s=!1,ha(r)&&(s=!0,d8(e,n,jr(r))),s||Om(r)&&(s=!0,T4t(t,e,n,r)),s||_t(r,236)&&(s=!0,e2(e,n,u(r,236))),!s)throw nt(new net(w8t))}function a0n(t,e){var n,r,s;if(n=e.Hh(t.a),n&&(s=Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),Rh),s!=null)){for(r=1;r<(Gu(),cLt).length;++r)if(un(cLt[r],s))return r}return 0}function o0n(t,e){var n,r,s;if(n=e.Hh(t.a),n&&(s=Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),Rh),s!=null)){for(r=1;r<(Gu(),uLt).length;++r)if(un(uLt[r],s))return r}return 0}function dae(t,e){var n,r,s,o;if(In(e),o=t.a.gc(),o0?1:0;o.a[s]!=n;)o=o.a[s],s=t.a.ue(n.d,o.d)>0?1:0;o.a[s]=r,r.b=n.b,r.a[0]=n.a[0],r.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function l0n(t){il();var e,n;return e=Ki(tg,ut(ot(VG,1),oe,273,0,[Eb])),!(AD(h$(e,t))>1||(n=Ki(JS,ut(ot(VG,1),oe,273,0,[ZS,Hx])),AD(h$(n,t))>1))}function C4t(t,e){var n;n=jc((Ip(),Xh),t),_t(n,498)?Ao(Xh,t,new IGt(this,e)):Ao(Xh,t,this),Nst(this,e),e==(Zk(),XAt)?(this.wb=u(this,1939),u(e,1941)):this.wb=(zp(),An)}function h0n(t){var e,n,r;if(t==null)return null;for(e=null,n=0;n=Vg?"error":r>=900?"warn":r>=800?"info":"log"),JYt(n,t.a),t.b&&C5t(e,n,t.b,"Exception: ",!0))}function K(t,e){var n,r;return r=(!t.q&&(t.q=new Ar),tr(t.q,e)),r??(n=e.wg(),_t(n,4)&&(n==null?(!t.q&&(t.q=new Ar),G6(t.q,e)):(!t.q&&(t.q=new Ar),Ai(t.q,e,n))),n)}function Ya(){Ya=X,Ld=new xM("P1_CYCLE_BREAKING",0),fb=new xM("P2_LAYERING",1),fu=new xM("P3_NODE_ORDERING",2),Gc=new xM("P4_NODE_PLACEMENT",3),jo=new xM("P5_EDGE_ROUTING",4)}function vae(t,e){var n,r,s,o,h;for(s=e==1?Jut:Zut,r=s.a.ec().Kc();r.Ob();)for(n=u(r.Pb(),103),h=u(Pi(t.f.c,n),21).Kc();h.Ob();)o=u(h.Pb(),46),Eu(t.b.b,o.b),Eu(t.b.a,u(o.b,81).d)}function f0n(t,e){$_();var n;if(t.c==e.c){if(t.b==e.b||Bon(t.b,e.b)){if(n=UYe(t.b)?1:-1,t.a&&!e.a)return n;if(!t.a&&e.a)return-n}return mu(t.b.g,e.b.g)}else return js(t.c,e.c)}function d0n(t,e){var n;mr(e,"Hierarchical port position processing",1),n=t.b,n.c.length>0&&Fue((Sn(0,n.c.length),u(n.c[0],29)),t),n.c.length>1&&Fue(u(Pe(n,n.c.length-1),29),t),or(e)}function wae(t,e){var n,r,s;if(A4t(t,e))return!0;for(r=new S(e);r.a=s||e<0)throw nt(new Co(Yct+e+L2+s));if(n>=s||n<0)throw nt(new Co(Xct+n+L2+s));return e!=n?r=(o=t.Ti(n),t.Hi(e,o),o):r=t.Oi(n),r}function xae(t){var e,n,r;if(r=t,t)for(e=0,n=t.Ug();n;n=n.Ug()){if(++e>uot)return xae(n);if(r=n,n==t)throw nt(new Ho("There is a cycle in the containment hierarchy of "+t))}return r}function Jp(t){var e,n,r;for(r=new l2(Xa,"[","]"),n=t.Kc();n.Ob();)e=n.Pb(),P0(r,Gt(e)===Gt(t)?"(this Collection)":e==null?Mu:Wo(e));return r.a?r.e.length==0?r.a.a:r.a.a+(""+r.e):r.c}function A4t(t,e){var n,r;if(r=!1,e.gc()<2)return!1;for(n=0;nr&&($r(e-1,t.length),t.charCodeAt(e-1)<=32);)--e;return r>0||e1&&(t.j.b+=t.e)):(t.j.a+=n.a,t.j.b=b.Math.max(t.j.b,n.b),t.d.c.length>1&&(t.j.a+=t.e))}function tb(){tb=X,e2e=ut(ot(Za,1),Cc,61,0,[(be(),On),Hn,yr]),t2e=ut(ot(Za,1),Cc,61,0,[Hn,yr,Bn]),n2e=ut(ot(Za,1),Cc,61,0,[yr,Bn,On]),r2e=ut(ot(Za,1),Cc,61,0,[Bn,On,Hn])}function p0n(t,e,n,r){var s,o,h,d,w,k,_;if(h=t.c.d,d=t.d.d,h.j!=d.j)for(_=t.b,s=h.j,w=null;s!=d.j;)w=e==0?kz(s):Qyt(s),o=S3t(s,_.d[s.g],n),k=S3t(w,_.d[w.g],n),ai(r,Fi(o,k)),s=w}function b0n(t,e,n,r){var s,o,h,d,w;return h=Lse(t.a,e,n),d=u(h.a,19).a,o=u(h.b,19).a,r&&(w=u(K(e,(ae(),sl)),10),s=u(K(n,sl),10),w&&s&&(PZt(t.b,w,s),d+=t.b.i,o+=t.b.e)),d>o}function Eae(t){var e,n,r,s,o,h,d,w,k;for(this.a=Zie(t),this.b=new le,n=t,r=0,s=n.length;rhnt(t.d).c?(t.i+=t.g.c,Xit(t.d)):hnt(t.d).c>hnt(t.g).c?(t.e+=t.d.c,Xit(t.g)):(t.i+=tYt(t.g),t.e+=tYt(t.d),Xit(t.g),Xit(t.d))}function m0n(t,e,n){var r,s,o,h;for(o=e.q,h=e.r,new n2((Yf(),vb),e,o,1),new n2(vb,o,h,1),s=new S(n);s.ad&&(w=d/r),s>o&&(k=o/s),h=b.Math.min(w,k),t.a+=h*(e.a-t.a),t.b+=h*(e.b-t.b)}function E0n(t,e,n,r,s){var o,h;for(h=!1,o=u(Pe(n.b,0),33);Rmn(t,e,o,r,s)&&(h=!0,ndn(n,o),n.b.c.length!=0);)o=u(Pe(n.b,0),33);return n.b.c.length==0&&tI(n.j,n),h&&Gz(e.q),h}function T0n(t,e){x4();var n,r,s,o;if(e.b<2)return!1;for(o=si(e,0),n=u(ii(o),8),r=n;o.b!=o.d.c;){if(s=u(ii(o),8),Jst(t,r,s))return!0;r=s}return!!Jst(t,r,n)}function M4t(t,e,n,r){var s,o;return n==0?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),kj(t.o,e,r)):(o=u(wn((s=u(Mn(t,16),26),s||t.zh()),n),66),o.Nj().Rj(t,uu(t),n-Jn(t.zh()),e,r))}function Nst(t,e){var n;e!=t.sb?(n=null,t.sb&&(n=u(t.sb,49).ih(t,1,nA,n)),e&&(n=u(e,49).gh(t,1,nA,n)),n=Vyt(t,e,n),n&&n.Fi()):t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,4,e,e))}function _0n(t,e){var n,r,s,o;if(e)s=R0(e,"x"),n=new J$t(t),N8(n.a,(In(s),s)),o=R0(e,"y"),r=new tzt(t),F8(r.a,(In(o),o));else throw nt(new od("All edge sections need an end point."))}function C0n(t,e){var n,r,s,o;if(e)s=R0(e,"x"),n=new X$t(t),P8(n.a,(In(s),s)),o=R0(e,"y"),r=new Q$t(t),B8(r.a,(In(o),o));else throw nt(new od("All edge sections need a start point."))}function S0n(t,e){var n,r,s,o,h,d,w;for(r=ure(t),o=0,d=r.length;o>22-e,s=t.h<>22-e):e<44?(n=0,r=t.l<>44-e):(n=0,r=0,s=t.l<t)throw nt(new Pn("k must be smaller than n"));return e==0||e==t?1:t==0?0:i4t(t)/(i4t(e)*i4t(t-e))}function D4t(t,e){var n,r,s,o;for(n=new t2t(t);n.g==null&&!n.c?Owt(n):n.g==null||n.i!=0&&u(n.g[n.i-1],47).Ob();)if(o=u(aq(n),56),_t(o,160))for(r=u(o,160),s=0;s>4],e[n*2+1]=uU[o&15];return Ih(e,0,e.length)}function V0n(t){Qj();var e,n,r;switch(r=t.c.length,r){case 0:return uge;case 1:return e=u(doe(new S(t)),42),gtn(e.cd(),e.dd());default:return n=u(P1(t,Nt(I2,Iq,42,t.c.length,0,1)),165),new tet(n)}}function G0n(t){var e,n,r,s,o,h;for(e=new F3,n=new F3,Vp(e,t),Vp(n,t);n.b!=n.c;)for(s=u(P6(n),37),h=new S(s.a);h.a0&&vI(t,n,e),s):Spn(t,e,n)}function Dae(t,e,n){var r,s,o,h;if(e.b!=0){for(r=new cs,h=si(e,0);h.b!=h.d.c;)o=u(ii(h),86),Ka(r,dyt(o)),s=o.e,s.a=u(K(o,(mc(),Dht)),19).a,s.b=u(K(o,Q_t),19).a;Dae(t,r,zc(n,r.b/t.a|0))}}function Iae(t,e){var n,r,s,o,h;if(t.e<=e||Jrn(t,t.g,e))return t.g;for(o=t.r,r=t.g,h=t.r,s=(o-r)/2+r;r+11&&(t.e.b+=t.a)):(t.e.a+=n.a,t.e.b=b.Math.max(t.e.b,n.b),t.d.c.length>1&&(t.e.a+=t.a))}function X0n(t){var e,n,r,s;switch(s=t.i,e=s.b,r=s.j,n=s.g,s.a.g){case 0:n.a=(t.g.b.o.a-r.a)/2;break;case 1:n.a=e.d.n.a+e.d.a.a;break;case 2:n.a=e.d.n.a+e.d.a.a-r.a;break;case 3:n.b=e.d.n.b+e.d.a.b}}function Oae(t,e,n,r,s){if(rr&&(t.a=r),t.bs&&(t.b=s),t}function Q0n(t){if(_t(t,149))return C2n(u(t,149));if(_t(t,229))return Eln(u(t,229));if(_t(t,23))return M0n(u(t,23));throw nt(new Pn(m8t+Jp(new Cl(ut(ot(Qn,1),Me,1,5,[t])))))}function Z0n(t,e,n,r,s){var o,h,d;for(o=!0,h=0;h>>s|n[h+r+1]<>>s,++h}return o}function P4t(t,e,n,r){var s,o,h;if(e.k==(Gn(),ca)){for(o=new ar(lr(Uo(e).a.Kc(),new H));Vr(o);)if(s=u(Ir(o),17),h=s.c.i.k,h==ca&&t.c.a[s.c.i.c.p]==r&&t.c.a[e.c.p]==n)return!0}return!1}function J0n(t,e){var n,r,s,o;return e&=63,n=t.h&W0,e<22?(o=n>>>e,s=t.m>>e|n<<22-e,r=t.l>>e|t.m<<22-e):e<44?(o=0,s=n>>>e-22,r=t.m>>e-22|t.h<<44-e):(o=0,s=0,r=n>>>e-44),cu(r&vl,s&vl,o&W0)}function Nae(t,e,n,r){var s;this.b=r,this.e=t==(Zv(),IS),s=e[n],this.d=Zb(xl,[re,i0],[177,25],16,[s.length,s.length],2),this.a=Zb(Sr,[re,Jr],[48,25],15,[s.length,s.length],2),this.c=new v4t(e,n)}function tgn(t){var e,n,r;for(t.k=new Bwt((be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])).length,t.j.c.length),r=new S(t.j);r.a=n)return d7(t,e,r.p),!0;return!1}function Fae(t){var e;return t.Db&64?Pst(t):(e=new Fl(c8t),!t.a||Yr(Yr((e.a+=' "',e),t.a),'"'),Yr(_v(Yr(_v(Yr(_v(Yr(_v((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function Bae(t,e,n){var r,s,o,h,d;for(d=hu(t.e.Tg(),e),s=u(t.g,119),r=0,h=0;hn?H4t(t,n,"start index"):e<0||e>n?H4t(e,n,"end index"):vC("end index (%s) must not be less than start index (%s)",ut(ot(Qn,1),Me,1,5,[de(e),de(t)]))}function jae(t,e){var n,r,s,o;for(r=0,s=t.length;r0&&$ae(t,o,n));e.p=0}function Xe(t){var e;this.c=new cs,this.f=t.e,this.e=t.d,this.i=t.g,this.d=t.c,this.b=t.b,this.k=t.j,this.a=t.a,t.i?this.j=t.i:this.j=(e=u(Wf(ep),9),new oh(e,u(ff(e,e.length),9),0)),this.g=t.f}function agn(t){var e,n,r,s;for(e=$p(Yr(new Fl("Predicates."),"and"),40),n=!0,s=new h6(t);s.b0?d[h-1]:Nt(o0,Gg,10,0,0,1),s=d[h],k=h=0?t.Bh(s):K4t(t,r);else throw nt(new Pn(cb+r.ne()+WC));else throw nt(new Pn(wde+e+mde));else gh(t,n,r)}function F4t(t){var e,n;if(n=null,e=!1,_t(t,204)&&(e=!0,n=u(t,204).a),e||_t(t,258)&&(e=!0,n=""+u(t,258).a),e||_t(t,483)&&(e=!0,n=""+u(t,483).a),!e)throw nt(new net(w8t));return n}function Vae(t,e){var n,r;if(t.f){for(;e.Ob();)if(n=u(e.Pb(),72),r=n.ak(),_t(r,99)&&u(r,18).Bb&yc&&(!t.e||r.Gj()!=LE||r.aj()!=0)&&n.dd()!=null)return e.Ub(),!0;return!1}else return e.Ob()}function Gae(t,e){var n,r;if(t.f){for(;e.Sb();)if(n=u(e.Ub(),72),r=n.ak(),_t(r,99)&&u(r,18).Bb&yc&&(!t.e||r.Gj()!=LE||r.aj()!=0)&&n.dd()!=null)return e.Pb(),!0;return!1}else return e.Sb()}function B4t(t,e,n){var r,s,o,h,d,w;for(w=hu(t.e.Tg(),e),r=0,d=t.i,s=u(t.g,119),h=0;h1&&(e.c[e.c.length]=o))}function lgn(t){var e,n,r,s;for(n=new cs,Ka(n,t.o),r=new Ipt;n.b!=0;)e=u(n.b==0?null:(Zn(n.b!=0),fh(n,n.a.a)),508),s=The(t,e,!0),s&&ue(r.a,e);for(;r.a.c.length!=0;)e=u(vre(r),508),The(t,e,!1)}function Hg(){Hg=X,bSt=new _6(OC,0),Pa=new _6("BOOLEAN",1),xc=new _6("INT",2),kE=new _6("STRING",3),$o=new _6("DOUBLE",4),ms=new _6("ENUM",5),Rx=new _6("ENUMSET",6),G1=new _6("OBJECT",7)}function hC(t,e){var n,r,s,o,h;r=b.Math.min(t.c,e.c),o=b.Math.min(t.d,e.d),s=b.Math.max(t.c+t.b,e.c+e.b),h=b.Math.max(t.d+t.a,e.d+e.a),s=(s/2|0))for(this.e=r?r.c:null,this.d=s;n++0;)Nwt(this);this.b=e,this.a=null}function dgn(t,e){var n,r;e.a?F2n(t,e):(n=u(bnt(t.b,e.b),57),n&&n==t.a[e.b.f]&&n.a&&n.a!=e.b.a&&n.c.Fc(e.b),r=u(pnt(t.b,e.b),57),r&&t.a[r.f]==e.b&&r.a&&r.a!=e.b.a&&e.b.c.Fc(r),rnt(t.b,e.b))}function Wae(t,e){var n,r;if(n=u(xo(t.b,e),124),u(u(Pi(t.r,e),21),84).dc()){n.n.b=0,n.n.c=0;return}n.n.b=t.C.b,n.n.c=t.C.c,t.A.Hc((Nl(),W2))&&vue(t,e),r=Hhn(t,e),eat(t,e)==(u4(),xb)&&(r+=2*t.w),n.a.a=r}function Kae(t,e){var n,r;if(n=u(xo(t.b,e),124),u(u(Pi(t.r,e),21),84).dc()){n.n.d=0,n.n.a=0;return}n.n.d=t.C.d,n.n.a=t.C.a,t.A.Hc((Nl(),W2))&&wue(t,e),r=Vhn(t,e),eat(t,e)==(u4(),xb)&&(r+=2*t.w),n.a.b=r}function ggn(t,e){var n,r,s,o;for(o=new le,r=new S(e);r.an.a&&(r.Hc((cy(),qO))?s=(e.a-n.a)/2:r.Hc(HO)&&(s=e.a-n.a)),e.b>n.b&&(r.Hc((cy(),GO))?o=(e.b-n.b)/2:r.Hc(VO)&&(o=e.b-n.b)),_4t(t,s,o)}function noe(t,e,n,r,s,o,h,d,w,k,_,M,B){_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),4),tu(t,n),t.f=h,e7(t,d),r7(t,w),t7(t,k),n7(t,_),jg(t,M),i7(t,B),Rg(t,!0),Pg(t,s),t.ok(o),g2(t,e),r!=null&&(t.i=null,ez(t,r))}function roe(t){var e,n;if(t.f){for(;t.n>0;){if(e=u(t.k.Xb(t.n-1),72),n=e.ak(),_t(n,99)&&u(n,18).Bb&yc&&(!t.e||n.Gj()!=LE||n.aj()!=0)&&e.dd()!=null)return!0;--t.n}return!1}else return t.n>0}function H4t(t,e,n){if(t<0)return vC(zhe,ut(ot(Qn,1),Me,1,5,[n,de(t)]));if(e<0)throw nt(new Pn(qhe+e));return vC("%s (%s) must not be greater than size (%s)",ut(ot(Qn,1),Me,1,5,[n,de(t),de(e)]))}function V4t(t,e,n,r,s,o){var h,d,w,k;if(h=r-n,h<7){fln(e,n,r,o);return}if(w=n+s,d=r+s,k=w+(d-w>>1),V4t(e,t,w,k,-s,o),V4t(e,t,k,d,-s,o),o.ue(t[k-1],t[k])<=0){for(;n=0?t.sh(o,n):y5t(t,s,n);else throw nt(new Pn(cb+s.ne()+WC));else throw nt(new Pn(wde+e+mde));else bh(t,r,s,n)}function ioe(t){var e,n,r,s;if(n=u(t,49).qh(),n)try{if(r=null,e=b7((Ip(),Xh),$ue(pln(n))),e&&(s=e.rh(),s&&(r=s.Wk(EKe(n.e)))),r&&r!=t)return ioe(r)}catch(o){if(o=rs(o),!_t(o,60))throw nt(o)}return t}function lu(t,e,n){var r,s,o,h;if(h=e==null?0:t.b.se(e),s=(r=t.a.get(h),r??new Array),s.length==0)t.a.set(h,s);else if(o=yre(t,e,s),o)return o.ed(n);return ls(s,s.length,new RR(e,n)),++t.c,a$(t.b),null}function soe(t,e){var n,r;return w$(t.a),Ud(t.a,(iz(),TG),TG),Ud(t.a,xE,xE),r=new Zs,Ei(r,xE,(_z(),Fht)),Gt(ze(e,(ay(),jht)))!==Gt((RD(),_G))&&Ei(r,xE,Nht),Ei(r,xE,Pht),sUt(t.a,r),n=Tq(t.a,e),n}function aoe(t){if(!t)return Hqt(),wge;var e=t.valueOf?t.valueOf():t;if(e!==t){var n=_ut[typeof e];return n?n(e):Fyt(typeof e)}else return t instanceof Array||t instanceof b.Array?new u6(t):new zk(t)}function ooe(t,e,n){var r,s,o;switch(o=t.o,r=u(xo(t.p,n),244),s=r.i,s.b=uI(r),s.a=cI(r),s.b=b.Math.max(s.b,o.a),s.b>o.a&&!e&&(s.b=o.a),s.c=-(s.b-o.a)/2,n.g){case 1:s.d=-s.a;break;case 3:s.d=o.b}gat(r),pat(r)}function coe(t,e,n){var r,s,o;switch(o=t.o,r=u(xo(t.p,n),244),s=r.i,s.b=uI(r),s.a=cI(r),s.a=b.Math.max(s.a,o.b),s.a>o.b&&!e&&(s.a=o.b),s.d=-(s.a-o.b)/2,n.g){case 4:s.c=-s.b;break;case 2:s.c=o.a}gat(r),pat(r)}function Lgn(t,e){var n,r,s,o,h;if(!e.dc()){if(s=u(e.Xb(0),128),e.gc()==1){Pce(t,s,s,1,0,e);return}for(n=1;n0)try{s=Gl(e,Oa,Ti)}catch(o){throw o=rs(o),_t(o,127)?(r=o,nt(new F$(r))):nt(o)}return n=(!t.a&&(t.a=new Htt(t)),t.a),s=0?u(At(n,s),56):null}function Ogn(t,e){if(t<0)return vC(zhe,ut(ot(Qn,1),Me,1,5,["index",de(t)]));if(e<0)throw nt(new Pn(qhe+e));return vC("%s (%s) must be less than size (%s)",ut(ot(Qn,1),Me,1,5,["index",de(t),de(e)]))}function Ngn(t){var e,n,r,s,o;if(t==null)return Mu;for(o=new l2(Xa,"[","]"),n=t,r=0,s=n.length;r0)for(h=t.c.d,d=t.d.d,s=ld(fa(new Re(d.a,d.b),h),1/(r+1)),o=new Re(h.a,h.b),n=new S(t.a);n.a=0?t._g(n,!0,!0):lw(t,s,!0),153)),u(r,215).ol(e);else throw nt(new Pn(cb+e.ne()+WC))}function Y4t(t){var e,n;return t>-0x800000000000&&t<0x800000000000?t==0?0:(e=t<0,e&&(t=-t),n=Cs(b.Math.floor(b.Math.log(t)/.6931471805599453)),(!e||t!=b.Math.pow(2,n))&&++n,n):Nne(Au(t))}function Wgn(t){var e,n,r,s,o,h,d;for(o=new A0,n=new S(t);n.a2&&d.e.b+d.j.b<=2&&(s=d,r=h),o.a.zc(s,o),s.q=r);return o}function boe(t,e){var n,r,s;return r=new H0(t),Bo(r,e),ee(r,(ae(),VV),e),ee(r,(xe(),ws),(va(),Kc)),ee(r,Md,(Qd(),PG)),C0(r,(Gn(),Is)),n=new Nc,tc(n,r),Us(n,(be(),Bn)),s=new Nc,tc(s,r),Us(s,Hn),r}function voe(t){switch(t.g){case 0:return new ret((Zv(),OO));case 1:return new OB;case 2:return new ett;default:throw nt(new Pn("No implementation is available for the crossing minimizer "+(t.f!=null?t.f:""+t.g)))}}function woe(t,e){var n,r,s,o,h;for(t.c[e.p]=!0,ue(t.a,e),h=new S(e.j);h.a=o)h.$b();else for(s=h.Kc(),r=0;r0?Wpt():h<0&&koe(t,e,-h),!0):!1}function cI(t){var e,n,r,s,o,h,d;if(d=0,t.b==0){for(h=ise(t,!0),e=0,r=h,s=0,o=r.length;s0&&(d+=n,++e);e>1&&(d+=t.c*(e-1))}else d=Qqt(cne(Jj(Wi(qnt(t.a),new fm),new T0)));return d>0?d+t.n.d+t.n.a:0}function uI(t){var e,n,r,s,o,h,d;if(d=0,t.b==0)d=Qqt(cne(Jj(Wi(qnt(t.a),new Mc),new bp)));else{for(h=sse(t,!0),e=0,r=h,s=0,o=r.length;s0&&(d+=n,++e);e>1&&(d+=t.c*(e-1))}return d>0?d+t.n.b+t.n.c:0}function epn(t,e){var n,r,s,o;for(o=u(xo(t.b,e),124),n=o.a,s=u(u(Pi(t.r,e),21),84).Kc();s.Ob();)r=u(s.Pb(),111),r.c&&(n.a=b.Math.max(n.a,Nvt(r.c)));if(n.a>0)switch(e.g){case 2:o.n.c=t.s;break;case 4:o.n.b=t.s}}function npn(t,e){var n,r,s;return n=u(K(e,(n1(),Z7)),19).a-u(K(t,Z7),19).a,n==0?(r=fa(uc(u(K(t,(Up(),dO)),8)),u(K(t,lS),8)),s=fa(uc(u(K(e,dO),8)),u(K(e,lS),8)),js(r.a*r.b,s.a*s.b)):n}function rpn(t,e){var n,r,s;return n=u(K(e,(hw(),EG)),19).a-u(K(t,EG),19).a,n==0?(r=fa(uc(u(K(t,(mc(),FO)),8)),u(K(t,BS),8)),s=fa(uc(u(K(e,FO),8)),u(K(e,BS),8)),js(r.a*r.b,s.a*s.b)):n}function Eoe(t){var e,n;return n=new Ap,n.a+="e_",e=fcn(t),e!=null&&(n.a+=""+e),t.c&&t.d&&(Yr((n.a+=" ",n),Wz(t.c)),Yr(wc((n.a+="[",n),t.c.i),"]"),Yr((n.a+=Bot,n),Wz(t.d)),Yr(wc((n.a+="[",n),t.d.i),"]")),n.a}function Toe(t){switch(t.g){case 0:return new WL;case 1:return new JJ;case 2:return new ZJ;case 3:return new NB;default:throw nt(new Pn("No implementation is available for the layout phase "+(t.f!=null?t.f:""+t.g)))}}function Q4t(t,e,n,r,s){var o;switch(o=0,s.g){case 1:o=b.Math.max(0,e.b+t.b-(n.b+r));break;case 3:o=b.Math.max(0,-t.b-r);break;case 2:o=b.Math.max(0,-t.a-r);break;case 4:o=b.Math.max(0,e.a+t.a-(n.a+r))}return o}function ipn(t,e,n){var r,s,o,h,d;if(n)for(s=n.a.length,r=new Jb(s),d=(r.b-r.a)*r.c<0?(Op(),Mb):new Bp(r);d.Ob();)h=u(d.Pb(),19),o=T8(n,h.a),f8t in o.a||Wct in o.a?pwn(t,o,e):x5n(t,o,e),qXe(u(tr(t.b,s7(o)),79))}function Z4t(t){var e,n;switch(t.b){case-1:return!0;case 0:return n=t.t,n>1||n==-1?(t.b=-1,!0):(e=Oh(t),e&&(so(),e.Cj()==y0e)?(t.b=-1,!0):(t.b=1,!1));default:case 1:return!1}}function spn(t,e){var n,r,s,o,h;for(r=(!e.s&&(e.s=new he(Nu,e,21,17)),e.s),o=null,s=0,h=r.i;s=0&&r=0?t._g(n,!0,!0):lw(t,s,!0),153)),u(r,215).ll(e);throw nt(new Pn(cb+e.ne()+Rct))}function lpn(){gbt();var t;return s5e?u(b7((Ip(),Xh),jh),1939):(oi(I2,new qf),G3n(),t=u(_t(jc((Ip(),Xh),jh),547)?jc(Xh,jh):new lXt,547),s5e=!0,z5n(t),U5n(t),Ai((dbt(),YAt),t,new ZZ),Ao(Xh,jh,t),t)}function hpn(t,e){var n,r,s,o;t.j=-1,Sl(t.e)?(n=t.i,o=t.i!=0,uD(t,e),r=new F0(t.e,3,t.c,null,e,n,o),s=e.Qk(t.e,t.c,null),s=nae(t,e,s),s?(s.Ei(r),s.Fi()):Ci(t.e,r)):(uD(t,e),s=e.Qk(t.e,t.c,null),s&&s.Fi())}function rq(t,e){var n,r,s;if(s=0,r=e[0],r>=t.length)return-1;for(n=($r(r,t.length),t.charCodeAt(r));n>=48&&n<=57&&(s=s*10+(n-48),++r,!(r>=t.length));)n=($r(r,t.length),t.charCodeAt(r));return r>e[0]?e[0]=r:s=-1,s}function fpn(t){var e,n,r,s,o;return s=u(t.a,19).a,o=u(t.b,19).a,n=s,r=o,e=b.Math.max(b.Math.abs(s),b.Math.abs(o)),s<=0&&s==o?(n=0,r=o-1):s==-e&&o!=e?(n=o,r=s,o>=0&&++n):(n=-o,r=s),new ya(de(n),de(r))}function dpn(t,e,n,r){var s,o,h,d,w,k;for(s=0;s=0&&k>=0&&w=t.i)throw nt(new Co(Yct+e+L2+t.i));if(n>=t.i)throw nt(new Co(Xct+n+L2+t.i));return r=t.g[n],e!=n&&(e>16),e=r>>16&16,n=16-e,t=t>>e,r=t-256,e=r>>16&8,n+=e,t<<=e,r=t-yy,e=r>>16&4,n+=e,t<<=e,r=t-vd,e=r>>16&2,n+=e,t<<=e,r=t>>14,e=r&~(r>>1),n+2-e)}function ppn(t){R6();var e,n,r,s;for(nV=new le,Vut=new Ar,Hut=new le,e=(!t.a&&(t.a=new he(ds,t,10,11)),t.a),W4n(e),s=new nr(e);s.e!=s.i.gc();)r=u(dr(s),33),Go(nV,r,0)==-1&&(n=new le,ue(Hut,n),Fie(r,n));return Hut}function bpn(t,e,n){var r,s,o,h;t.a=n.b.d,_t(e,352)?(s=y4(u(e,79),!1,!1),o=sI(s),r=new La(t),_a(o,r),yI(o,s),e.We((di(),s5))!=null&&_a(u(e.We(s5),74),r)):(h=u(e,470),h.Hg(h.Dg()+t.a.a),h.Ig(h.Eg()+t.a.b))}function Coe(t,e){var n,r,s,o,h,d,w,k;for(k=Zt(ve(K(e,(xe(),CS)))),w=t[0].n.a+t[0].o.a+t[0].d.c+k,d=1;d=0?n:(d=A_(fa(new Re(h.c+h.b/2,h.d+h.a/2),new Re(o.c+o.b/2,o.d+o.a/2))),-(Kue(o,h)-1)*d)}function wpn(t,e,n){var r;ys(new kn(null,(!n.a&&(n.a=new he(us,n,6,6)),new Tn(n.a,16))),new lGt(t,e)),ys(new kn(null,(!n.n&&(n.n=new he(Yo,n,1,7)),new Tn(n.n,16))),new hGt(t,e)),r=u(ze(n,(di(),s5)),74),r&&ryt(r,t,e)}function lw(t,e,n){var r,s,o;if(o=T4((Gu(),Sa),t.Tg(),e),o)return so(),u(o,66).Oj()||(o=z6(Mo(Sa,o))),s=(r=t.Yg(o),u(r>=0?t._g(r,!0,!0):lw(t,o,!0),153)),u(s,215).hl(e,n);throw nt(new Pn(cb+e.ne()+Rct))}function t5t(t,e,n,r){var s,o,h,d,w;if(s=t.d[e],s){if(o=s.g,w=s.i,r!=null){for(d=0;d=n&&(r=e,k=(w.c+w.a)/2,h=k-n,w.c<=k-n&&(s=new knt(w.c,h),$m(t,r++,s)),d=k+n,d<=w.a&&(o=new knt(d,w.a),Um(r,t.c.length),WT(t.c,r,o)))}function e5t(t){var e;if(!t.c&&t.g==null)t.d=t.si(t.f),Or(t,t.d),e=t.d;else{if(t.g==null)return!0;if(t.i==0)return!1;e=u(t.g[t.i-1],47)}return e==t.b&&null.km>=null.jm()?(aq(t),e5t(t)):e.Ob()}function kpn(t,e,n){var r,s,o,h,d;if(d=n,!d&&(d=Ivt(new Wk,0)),mr(d,Hfe,1),Kle(t.c,e),h=F3n(t.a,e),h.gc()==1)Mle(u(h.Xb(0),37),d);else for(o=1/h.gc(),s=h.Kc();s.Ob();)r=u(s.Pb(),37),Mle(r,zc(d,o));MKe(t.a,h,e),Fvn(e),or(d)}function Loe(t){if(this.a=t,t.c.i.k==(Gn(),Is))this.c=t.c,this.d=u(K(t.c.i,(ae(),gc)),61);else if(t.d.i.k==Is)this.c=t.d,this.d=u(K(t.d.i,(ae(),gc)),61);else throw nt(new Pn("Edge "+t+" is not an external edge."))}function Moe(t,e){var n,r,s;s=t.b,t.b=e,t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,s,t.b)),e?e!=t&&(tu(t,e.zb),nit(t,e.d),n=(r=e.c,r??e.zb),iit(t,n==null||un(n,e.zb)?null:n)):(tu(t,null),nit(t,0),iit(t,null))}function Doe(t){var e,n;if(t.f){for(;t.n=h)throw nt(new jm(e,h));return s=n[e],h==1?r=null:(r=Nt(Cft,eut,415,h-1,0,1),Pc(n,0,r,0,e),o=h-e-1,o>0&&Pc(n,e+1,r,e,o)),a7(t,r),toe(t,e,s),s}function sx(){sx=X,Ux=u(At(Kt((nbt(),kc).qb),6),34),Gx=u(At(Kt(kc.qb),3),34),Ift=u(At(Kt(kc.qb),4),34),Oft=u(At(Kt(kc.qb),5),18),Qz(Ux),Qz(Gx),Qz(Ift),Qz(Oft),u5e=new Cl(ut(ot(Nu,1),F4,170,0,[Ux,Gx]))}function Poe(t,e){var n;this.d=new MT,this.b=e,this.e=new So(e.qf()),n=t.u.Hc((il(),tN)),t.u.Hc(tg)?t.D?this.a=n&&!e.If():this.a=!0:t.u.Hc(Eb)?n?this.a=!(e.zf().Kc().Ob()||e.Bf().Kc().Ob()):this.a=!1:this.a=!1}function Foe(t,e){var n,r,s,o;for(n=t.o.a,o=u(u(Pi(t.r,e),21),84).Kc();o.Ob();)s=u(o.Pb(),111),s.e.a=(r=s.b,r.Xe((di(),ml))?r.Hf()==(be(),Bn)?-r.rf().a-Zt(ve(r.We(ml))):n+Zt(ve(r.We(ml))):r.Hf()==(be(),Bn)?-r.rf().a:n)}function Boe(t,e){var n,r,s,o;n=u(K(t,(xe(),Xl)),103),o=u(ze(e,pE),61),s=u(K(t,ws),98),s!=(va(),U1)&&s!=kb?o==(be(),ac)&&(o=J5t(e,n),o==ac&&(o=Z6(n))):(r=Lle(e),r>0?o=Z6(n):o=HD(Z6(n))),Eo(e,pE,o)}function Cpn(t,e){var n,r,s,o,h;for(h=t.j,e.a!=e.b&&aa(h,new W5),s=h.c.length/2|0,r=0;r0&&vI(t,n,e),o):r.a!=null?(vI(t,e,n),-1):s.a!=null?(vI(t,n,e),1):0}function Roe(t,e){var n,r,s,o;t.ej()?(n=t.Vi(),o=t.fj(),++t.j,t.Hi(n,t.oi(n,e)),r=t.Zi(3,null,e,n,o),t.bj()?(s=t.cj(e,null),s?(s.Ei(r),s.Fi()):t.$i(r)):t.$i(r)):(tXt(t,e),t.bj()&&(s=t.cj(e,null),s&&s.Fi()))}function iq(t,e){var n,r,s,o,h;for(h=hu(t.e.Tg(),e),s=new J5,n=u(t.g,119),o=t.i;--o>=0;)r=n[o],h.rl(r.ak())&&Or(s,r);!She(t,s)&&Sl(t.e)&&Uk(t,e.$j()?Hp(t,6,e,(pn(),uo),null,-1,!1):Hp(t,e.Kj()?2:1,e,null,null,-1,!1))}function g7(){g7=X;var t,e;for(Ex=Nt(R4,re,91,32,0,1),oS=Nt(R4,re,91,32,0,1),t=1,e=0;e<=18;e++)Ex[e]=KD(t),oS[e]=KD(M0(t,e)),t=Ia(t,5);for(;eh)||e.q&&(r=e.C,h=r.c.c.a-r.o.a/2,s=r.n.a-n,s>h)))}function Lpn(t,e){var n;mr(e,"Partition preprocessing",1),n=u($l(Wi(ec(Wi(new kn(null,new Tn(t.a,16)),new qY),new aF),new V5),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),ys(n.Oc(),new oF),or(e)}function joe(t){vrt();var e,n,r,s,o,h,d;for(n=new i2,s=new S(t.e.b);s.a1?t.e*=Zt(t.a):t.f/=Zt(t.a),lun(t),phn(t),Qvn(t),ee(t.b,(iC(),eV),t.g)}function Hoe(t,e,n){var r,s,o,h,d,w;for(r=0,w=n,e||(r=n*(t.c.length-1),w*=-1),o=new S(t);o.a=0?(e||(e=new BT,r>0&&yo(e,t.substr(0,r))),e.a+="\\",v8(e,n&Ms)):e&&v8(e,n&Ms);return e?e.a:t}function Rpn(t){var e;if(!t.a)throw nt(new Ho("IDataType class expected for layout option "+t.f));if(e=Uin(t.a),e==null)throw nt(new Ho("Couldn't create new instance of property '"+t.f+"'. "+z1e+(L0(uN),uN.k)+r8t));return u(e,414)}function Ust(t){var e,n,r,s,o;return o=t.eh(),o&&o.kh()&&(s=Xp(t,o),s!=o)?(n=t.Vg(),r=(e=t.Vg(),e>=0?t.Qg(null):t.eh().ih(t,-1-e,null,null)),t.Rg(u(s,49),n),r&&r.Fi(),t.Lg()&&t.Mg()&&n>-1&&Ci(t,new oa(t,9,n,o,s)),s):o}function Koe(t){var e,n,r,s,o,h,d,w;for(h=0,o=t.f.e,r=0;r>5,s>=t.d)return t.e<0;if(n=t.a[s],e=1<<(e&31),t.e<0){if(r=dne(t),s>16)),15).Xc(o),d0&&(!(Pp(t.a.c)&&e.n.d)&&!(a8(t.a.c)&&e.n.b)&&(e.g.d+=b.Math.max(0,r/2-.5)),!(Pp(t.a.c)&&e.n.a)&&!(a8(t.a.c)&&e.n.c)&&(e.g.a-=r-1))}function Qoe(t){var e,n,r,s,o;if(s=new le,o=Vue(t,s),e=u(K(t,(ae(),sl)),10),e)for(r=new S(e.j);r.a>e,o=t.m>>e|n<<22-e,s=t.l>>e|t.m<<22-e):e<44?(h=r?W0:0,o=n>>e-22,s=t.m>>e-22|n<<44-e):(h=r?W0:0,o=r?vl:0,s=n>>e-44),cu(s&vl,o&vl,h&W0)}function Wst(t){var e,n,r,s,o,h;for(this.c=new le,this.d=t,r=bs,s=bs,e=Ns,n=Ns,h=si(t,0);h.b!=h.d.c;)o=u(ii(h),8),r=b.Math.min(r,o.a),s=b.Math.min(s,o.b),e=b.Math.max(e,o.a),n=b.Math.max(n,o.b);this.a=new ch(r,s,e-r,n-s)}function tce(t,e){var n,r,s,o,h,d;for(o=new S(t.b);o.a0&&_t(e,42)&&(t.a.qj(),k=u(e,42),w=k.cd(),o=w==null?0:Ji(w),h=W2t(t.a,o),n=t.a.d[h],n)){for(r=u(n.g,367),_=n.i,d=0;d<_;++d)if(s=r[d],s.Sh()==o&&s.Fb(k))return ece(t,k),!0}return!1}function Gpn(t){var e,n,r,s;for(s=u(Pi(t.a,(p4(),MV)),15).Kc();s.Ob();)r=u(s.Pb(),101),n=(e=N6(r.k),e.Hc((be(),On))?e.Hc(Hn)?e.Hc(yr)?e.Hc(Bn)?null:e2e:r2e:n2e:t2e),b8(t,r,n[0],(Jv(),Sw),0),b8(t,r,n[1],db,1),b8(t,r,n[2],Aw,1)}function Upn(t,e){var n,r;n=ywn(e),wvn(t,e,n),aae(t.a,u(K($a(e.b),(ae(),Ix)),230)),Gwn(t),mdn(t,e),r=Nt(Sr,Jr,25,e.b.j.c.length,15,1),Lat(t,e,(be(),On),r,n),Lat(t,e,Hn,r,n),Lat(t,e,yr,r,n),Lat(t,e,Bn,r,n),t.a=null,t.c=null,t.b=null}function l5t(){l5t=X,OCt=(Tz(),qht),qye=new vn(Vkt,OCt),$ye=new vn(Gkt,(Fn(),!0)),de(-1),Bye=new vn(Ukt,de(-1)),de(-1),Rye=new vn(Wkt,de(-1)),zye=new vn(Kkt,!1),Hye=new vn(Ykt,!0),jye=new vn(Sct,!1),Vye=new vn(Xkt,-1)}function h5t(t,e,n){switch(e){case 7:!t.e&&(t.e=new En(ra,t,7,4)),Tr(t.e),!t.e&&(t.e=new En(ra,t,7,4)),gs(t.e,u(n,14));return;case 8:!t.d&&(t.d=new En(ra,t,8,5)),Tr(t.d),!t.d&&(t.d=new En(ra,t,8,5)),gs(t.d,u(n,14));return}c4t(t,e,n)}function f5t(t,e){var n,r,s,o,h;if(Gt(e)===Gt(t))return!0;if(!_t(e,15)||(h=u(e,15),t.gc()!=h.gc()))return!1;for(o=h.Kc(),r=t.Kc();r.Ob();)if(n=r.Pb(),s=o.Pb(),!(Gt(n)===Gt(s)||n!=null&&Si(n,s)))return!1;return!0}function Wpn(t,e){var n,r,s,o;for(o=u($l(ec(ec(new kn(null,new Tn(e.b,16)),new kL),new JP),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),o.Jc(new EL),n=0,s=o.Kc();s.Ob();)r=u(s.Pb(),11),r.p==-1&&g5t(t,r,n++)}function nce(t){switch(t.g){case 0:return new pT;case 1:return new XJ;case 2:return new YJ;case 3:return new CGt;case 4:return new dYt;default:throw nt(new Pn("No implementation is available for the node placer "+(t.f!=null?t.f:""+t.g)))}}function rce(t){switch(t.g){case 0:return new Gvt;case 1:return new QJ;case 2:return new HJ;case 3:return new VJ;case 4:return new AGt;default:throw nt(new Pn("No implementation is available for the cycle breaker "+(t.f!=null?t.f:""+t.g)))}}function d5t(){d5t=X,Eye=new vn(Rkt,de(0)),Tye=new vn(jkt,0),pCt=(RD(),_G),xye=new vn(Tct,pCt),de(0),yye=new vn(_ct,de(1)),vCt=(cz(),zht),_ye=new vn($kt,vCt),wCt=(N$(),Bht),Cye=new vn(zkt,wCt),bCt=(Vz(),$ht),kye=new vn(qkt,bCt)}function Kpn(t,e,n){var r;r=null,e&&(r=e.d),lC(t,new i8(e.n.a-r.b+n.a,e.n.b-r.d+n.b)),lC(t,new i8(e.n.a-r.b+n.a,e.n.b+e.o.b+r.a+n.b)),lC(t,new i8(e.n.a+e.o.a+r.c+n.a,e.n.b-r.d+n.b)),lC(t,new i8(e.n.a+e.o.a+r.c+n.a,e.n.b+e.o.b+r.a+n.b))}function g5t(t,e,n){var r,s,o;for(e.p=n,o=jp(I1(ut(ot($1,1),Me,20,0,[new sa(e),new Cr(e)])));Vr(o);)r=u(Ir(o),11),r.p==-1&&g5t(t,r,n);if(e.i.k==(Gn(),ca))for(s=new S(e.i.j);s.a=2)for(n=s.Kc(),e=ve(n.Pb());n.Ob();)o=e,e=ve(n.Pb()),r=b.Math.min(r,(In(e),e-(In(o),o)));return r}function Ypn(t,e){var n,r,s,o,h;r=new cs,ks(r,e,r.c.b,r.c);do for(n=(Zn(r.b!=0),u(fh(r,r.a.a),86)),t.b[n.g]=1,o=si(n.d,0);o.b!=o.d.c;)s=u(ii(o),188),h=s.c,t.b[h.g]==1?ai(t.a,s):t.b[h.g]==2?t.b[h.g]=1:ks(r,h,r.c.b,r.c);while(r.b!=0)}function Xpn(t,e){var n,r,s;if(Gt(e)===Gt(Dr(t)))return!0;if(!_t(e,15)||(r=u(e,15),s=t.gc(),s!=r.gc()))return!1;if(_t(r,54)){for(n=0;n0&&(s=n),h=new S(t.f.e);h.a0?(e-=1,n-=1):r>=0&&s<0?(e+=1,n+=1):r>0&&s>=0?(e-=1,n+=1):(e+=1,n-=1),new ya(de(e),de(n))}function gbn(t,e){return t.ce.c?1:t.be.b?1:t.a!=e.a?Ji(t.a)-Ji(e.a):t.d==(B_(),NS)&&e.d==OS?-1:t.d==OS&&e.d==NS?1:0}function oce(t,e){var n,r,s,o,h;return o=e.a,o.c.i==e.b?h=o.d:h=o.c,o.c.i==e.b?r=o.c:r=o.d,s=qln(t.a,h,r),s>0&&s0):s<0&&-s0):!1}function pbn(t,e,n,r){var s,o,h,d,w,k,_,M;for(s=(e-t.d)/t.c.c.length,o=0,t.a+=n,t.d=e,M=new S(t.c);M.a>24;return h}function vbn(t){if(t.pe()){var e=t.c;e.qe()?t.o="["+e.n:e.pe()?t.o="["+e.ne():t.o="[L"+e.ne()+";",t.b=e.me()+"[]",t.k=e.oe()+"[]";return}var n=t.j,r=t.d;r=r.split("/"),t.o=Qit(".",[n,Qit("$",r)]),t.b=Qit(".",[n,Qit(".",r)]),t.k=r[r.length-1]}function wbn(t,e){var n,r,s,o,h;for(h=null,o=new S(t.e.a);o.a=0;e-=2)for(n=0;n<=e;n+=2)(t.b[n]>t.b[n+2]||t.b[n]===t.b[n+2]&&t.b[n+1]>t.b[n+3])&&(r=t.b[n+2],t.b[n+2]=t.b[n],t.b[n]=r,r=t.b[n+3],t.b[n+3]=t.b[n+1],t.b[n+1]=r);t.c=!0}}function cce(t,e){var n,r,s,o,h,d,w,k;for(h=e==1?Jut:Zut,o=h.a.ec().Kc();o.Ob();)for(s=u(o.Pb(),103),w=u(Pi(t.f.c,s),21).Kc();w.Ob();)switch(d=u(w.Pb(),46),r=u(d.b,81),k=u(d.a,189),n=k.c,s.g){case 2:case 1:r.g.d+=n;break;case 4:case 3:r.g.c+=n}}function xbn(t,e){var n,r,s,o,h,d,w,k,_;for(k=-1,_=0,h=t,d=0,w=h.length;d0&&++_;++k}return _}function mf(t){var e,n;return n=new Fl(Mp(t.gm)),n.a+="@",Yr(n,(e=Ji(t)>>>0,e.toString(16))),t.kh()?(n.a+=" (eProxyURI: ",wc(n,t.qh()),t.$g()&&(n.a+=" eClass: ",wc(n,t.$g())),n.a+=")"):t.$g()&&(n.a+=" (eClass: ",wc(n,t.$g()),n.a+=")"),n.a}function pC(t){var e,n,r,s;if(t.e)throw nt(new Ho((L0(Iut),wot+Iut.k+mot)));for(t.d==(fo(),c0)&&Cq(t,Hh),n=new S(t.a.a);n.a>24}return n}function Tbn(t,e,n){var r,s,o;if(s=u(xo(t.i,e),306),!s)if(s=new uee(t.d,e,n),O6(t.i,e,s),T3t(e))$Xe(t.a,e.c,e.b,s);else switch(o=hgn(e),r=u(xo(t.p,o),244),o.g){case 1:case 3:s.j=!0,eet(r,e.b,s);break;case 4:case 2:s.k=!0,eet(r,e.c,s)}return s}function _bn(t,e,n,r){var s,o,h,d,w,k;if(d=new J5,w=hu(t.e.Tg(),e),s=u(t.g,119),so(),u(e,66).Oj())for(h=0;h=0)return s;for(o=1,d=new S(e.j);d.a0&&e.ue((Sn(s-1,t.c.length),u(t.c[s-1],10)),o)>0;)lh(t,s,(Sn(s-1,t.c.length),u(t.c[s-1],10))),--s;Sn(s,t.c.length),t.c[s]=o}n.a=new Ar,n.b=new Ar}function Cbn(t,e,n){var r,s,o,h,d,w,k,_;for(_=(r=u(e.e&&e.e(),9),new oh(r,u(ff(r,r.length),9),0)),w=py(n,"[\\[\\]\\s,]+"),o=w,h=0,d=o.length;h0&&(!(Pp(t.a.c)&&e.n.d)&&!(a8(t.a.c)&&e.n.b)&&(e.g.d-=b.Math.max(0,r/2-.5)),!(Pp(t.a.c)&&e.n.a)&&!(a8(t.a.c)&&e.n.c)&&(e.g.a+=b.Math.max(0,r-1)))}function dce(t,e,n){var r,s;if((t.c-t.b&t.a.length-1)==2)e==(be(),On)||e==Hn?(G$(u(K_(t),15),(Vl(),u0)),G$(u(K_(t),15),yb)):(G$(u(K_(t),15),(Vl(),yb)),G$(u(K_(t),15),u0));else for(s=new M_(t);s.a!=s.b;)r=u(mz(s),15),G$(r,n)}function Abn(t,e){var n,r,s,o,h,d,w;for(s=h8(new gpt(t)),d=new xa(s,s.c.length),o=h8(new gpt(e)),w=new xa(o,o.c.length),h=null;d.b>0&&w.b>0&&(n=(Zn(d.b>0),u(d.a.Xb(d.c=--d.b),33)),r=(Zn(w.b>0),u(w.a.Xb(w.c=--w.b),33)),n==r);)h=n;return h}function pl(t,e){var n,r,s,o,h,d;return o=t.a*got+t.b*1502,d=t.b*got+11,n=b.Math.floor(d*PI),o+=n,d-=n*P6t,o%=P6t,t.a=o,t.b=d,e<=24?b.Math.floor(t.a*x7t[e]):(s=t.a*(1<=2147483648&&(r-=lot),r)}function gce(t,e,n){var r,s,o,h;RQt(t,e)>RQt(t,n)?(r=rc(n,(be(),Hn)),t.d=r.dc()?0:Snt(u(r.Xb(0),11)),h=rc(e,Bn),t.b=h.dc()?0:Snt(u(h.Xb(0),11))):(s=rc(n,(be(),Bn)),t.d=s.dc()?0:Snt(u(s.Xb(0),11)),o=rc(e,Hn),t.b=o.dc()?0:Snt(u(o.Xb(0),11)))}function pce(t){var e,n,r,s,o,h,d;if(t&&(e=t.Hh(jh),e&&(h=jr(Jf((!e.b&&(e.b=new Al((ln(),Ja),pc,e)),e.b),"conversionDelegates")),h!=null))){for(d=new le,r=py(h,"\\w+"),s=0,o=r.length;st.c));h++)s.a>=t.s&&(o<0&&(o=h),d=h);return w=(t.s+t.c)/2,o>=0&&(r=hwn(t,e,o,d),w=yYe((Sn(r,e.c.length),u(e.c[r],329))),xpn(e,r,n)),w}function Xst(){Xst=X,Gye=new ao((di(),jx),1.3),PCt=PSt,qCt=new Mv(15),Zye=new ao(V2,qCt),t3e=new ao(G2,15),Uye=BG,Yye=H2,Xye=o5,Qye=mb,Kye=a5,jCt=YO,Jye=Ky,zCt=(l5t(),qye),RCt=$ye,$Ct=zye,HCt=Hye,FCt=jye,BCt=RG,Wye=BSt,RO=Rye,NCt=Bye,VCt=Vye}function Nr(t,e,n){var r,s,o,h,d,w,k;for(h=(o=new JF,o),Qmt(h,(In(e),e)),k=(!h.b&&(h.b=new Al((ln(),Ja),pc,h)),h.b),w=1;w0&&i3n(this,s)}function v5t(t,e,n,r,s,o){var h,d,w;if(!s[e.b]){for(s[e.b]=!0,h=r,!h&&(h=new C$),ue(h.e,e),w=o[e.b].Kc();w.Ob();)d=u(w.Pb(),282),!(d.d==n||d.c==n)&&(d.c!=e&&v5t(t,d.c,e,h,s,o),d.d!=e&&v5t(t,d.d,e,h,s,o),ue(h.c,d),Rs(h.d,d.b));return h}return null}function Dbn(t){var e,n,r,s,o,h,d;for(e=0,s=new S(t.e);s.a=2}function Ibn(t,e){var n,r,s,o;for(mr(e,"Self-Loop pre-processing",1),r=new S(t.a);r.a1||(e=Ki(Cf,ut(ot(vo,1),oe,93,0,[J0,Sf])),AD(h$(e,t))>1)||(r=Ki(Lf,ut(ot(vo,1),oe,93,0,[l0,Gh])),AD(h$(r,t))>1))}function Pbn(t,e){var n,r,s;return n=e.Hh(t.a),n&&(s=jr(Jf((!n.b&&(n.b=new Al((ln(),Ja),pc,n)),n.b),"affiliation")),s!=null)?(r=dj(s,Lu(35)),r==-1?Bit(t,k_(t,zl(e.Hj())),s):r==0?Bit(t,null,s.substr(1)):Bit(t,s.substr(0,r),s.substr(r+1))):null}function Fbn(t){var e,n,r;try{return t==null?Mu:Wo(t)}catch(s){if(s=rs(s),_t(s,102))return e=s,r=Mp(dl(t))+"@"+(n=(qd(),M3t(t)>>>0),n.toString(16)),Thn(Ecn(),(r8(),"Exception during lenientFormat for "+r),e),"<"+r+" threw "+Mp(e.gm)+">";throw nt(s)}}function wce(t){switch(t.g){case 0:return new UJ;case 1:return new DB;case 2:return new yVt;case 3:return new IL;case 4:return new zWt;case 5:return new WJ;default:throw nt(new Pn("No implementation is available for the layerer "+(t.f!=null?t.f:""+t.g)))}}function w5t(t,e,n){var r,s,o;for(o=new S(t.t);o.a0&&(r.b.n-=r.c,r.b.n<=0&&r.b.u>0&&ai(e,r.b));for(s=new S(t.i);s.a0&&(r.a.u-=r.c,r.a.u<=0&&r.a.n>0&&ai(n,r.a))}function aq(t){var e,n,r,s,o;if(t.g==null&&(t.d=t.si(t.f),Or(t,t.d),t.c))return o=t.f,o;if(e=u(t.g[t.i-1],47),s=e.Pb(),t.e=e,n=t.si(s),n.Ob())t.d=n,Or(t,n);else for(t.d=null;!e.Ob()&&(ls(t.g,--t.i,null),t.i!=0);)r=u(t.g[t.i-1],47),e=r;return s}function Bbn(t,e){var n,r,s,o,h,d;if(r=e,s=r.ak(),G0(t.e,s)){if(s.hi()&&k$(t,s,r.dd()))return!1}else for(d=hu(t.e.Tg(),s),n=u(t.g,119),o=0;o1||n>1)return 2;return e+n==1?2:0}function yce(t,e,n){var r,s,o,h,d;for(mr(n,"ELK Force",1),Be(Fe(ze(e,(n1(),lEt))))||u$((r=new rr((Dm(),new Sm(e))),r)),d=Xne(e),c1n(d),zcn(t,u(K(d,uEt),424)),h=ule(t.a,d),o=h.Kc();o.Ob();)s=u(o.Pb(),231),Ewn(t.b,s,zc(n,1/h.gc()));d=khe(h),mhe(d),or(n)}function Vbn(t,e){var n,r,s,o,h;if(mr(e,"Breaking Point Processor",1),l4n(t),Be(Fe(K(t,(xe(),v_t))))){for(s=new S(t.b);s.a=0?t._g(r,!0,!0):lw(t,o,!0),153)),u(s,215).ml(e,n)}else throw nt(new Pn(cb+e.ne()+WC))}function Kbn(t,e){var n,r,s,o,h;for(n=new le,s=ec(new kn(null,new Tn(t,16)),new HQ),o=ec(new kn(null,new Tn(t,16)),new VQ),h=xan(Fsn(Jj(S2n(ut(ot(r6n,1),Me,833,0,[s,o])),new GQ))),r=1;r=2*e&&ue(n,new knt(h[r-1]+e,h[r]-e));return n}function Ybn(t,e,n){mr(n,"Eades radial",1),n.n&&e&&gf(n,pf(e),(Ol(),th)),t.d=u(ze(e,(b_(),$S)),33),t.c=Zt(ve(ze(e,(ay(),SG)))),t.e=ast(u(ze(e,BO),293)),t.a=Aln(u(ze(e,xCt),426)),t.b=X1n(u(ze(e,yCt),340)),M1n(t),n.n&&e&&gf(n,pf(e),(Ol(),th))}function Xbn(t,e,n){var r,s,o,h,d,w,k,_;if(n)for(o=n.a.length,r=new Jb(o),d=(r.b-r.a)*r.c<0?(Op(),Mb):new Bp(r);d.Ob();)h=u(d.Pb(),19),s=T8(n,h.a),s&&(w=Kin(t,(k=(Tv(),_=new Ppt,_),e&&x5t(k,e),k),s),q_(w,O0(s,Cd)),Jz(s,w),G4t(s,w),yit(t,s,w))}function cq(t){var e,n,r,s,o,h;if(!t.j){if(h=new Q9,e=aA,o=e.a.zc(t,e),o==null){for(r=new nr(Po(t));r.e!=r.i.gc();)n=u(dr(r),26),s=cq(n),gs(h,s),Or(h,n);e.a.Bc(t)!=null}ey(h),t.j=new H3((u(At(Kt((zp(),An).o),11),18),h.i),h.g),hl(t).b&=-33}return t.j}function Qbn(t){var e,n,r,s;if(t==null)return null;if(r=Hc(t,!0),s=nO.length,un(r.substr(r.length-s,s),nO)){if(n=r.length,n==4){if(e=($r(0,r.length),r.charCodeAt(0)),e==43)return pLt;if(e==45)return C5e}else if(n==3)return pLt}return new Tpt(r)}function Zbn(t){var e,n,r;return n=t.l,n&n-1||(r=t.m,r&r-1)||(e=t.h,e&e-1)||e==0&&r==0&&n==0?-1:e==0&&r==0&&n!=0?Vmt(n):e==0&&r!=0&&n==0?Vmt(r)+22:e!=0&&r==0&&n==0?Vmt(e)+44:-1}function Jbn(t,e){var n,r,s,o,h;for(mr(e,"Edge joining",1),n=Be(Fe(K(t,(xe(),iht)))),s=new S(t.b);s.a1)for(s=new S(t.a);s.a0),o.a.Xb(o.c=--o.b),Rm(o,s),Zn(o.b3&&Xd(t,0,e-3))}function r2n(t){var e,n,r,s;return Gt(K(t,(xe(),jy)))===Gt(($0(),np))?!t.e&&Gt(K(t,CO))!==Gt((G8(),mO)):(r=u(K(t,Ult),292),s=Be(Fe(K(t,Wlt)))||Gt(K(t,ES))===Gt((K6(),wO)),e=u(K(t,NTt),19).a,n=t.a.c.length,!s&&r!=(G8(),mO)&&(e==0||e>n))}function i2n(t){var e,n;for(n=0;n0);n++);if(n>0&&n0);e++);return e>0&&n>16!=6&&e){if(c7(t,e))throw nt(new Pn(KC+$oe(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?W3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,6,r)),r=G2t(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,6,e,e))}function x5t(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=9&&e){if(c7(t,e))throw nt(new Pn(KC+kue(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Y3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,9,r)),r=U2t(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,9,e,e))}function Zst(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(c7(t,e))throw nt(new Pn(KC+xle(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Q3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,12,r)),r=V2t(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,e,e))}function v7(t){var e,n,r,s,o;if(r=Oh(t),o=t.j,o==null&&r)return t.$j()?null:r.zj();if(_t(r,148)){if(n=r.Aj(),n&&(s=n.Nh(),s!=t.i)){if(e=u(r,148),e.Ej())try{t.g=s.Kh(e,o)}catch(h){if(h=rs(h),_t(h,78))t.g=null;else throw nt(h)}t.i=s}return t.g}return null}function Ece(t){var e;return e=new le,ue(e,new E6(new Re(t.c,t.d),new Re(t.c+t.b,t.d))),ue(e,new E6(new Re(t.c,t.d),new Re(t.c,t.d+t.a))),ue(e,new E6(new Re(t.c+t.b,t.d+t.a),new Re(t.c+t.b,t.d))),ue(e,new E6(new Re(t.c+t.b,t.d+t.a),new Re(t.c,t.d+t.a))),e}function Tce(t,e,n,r){var s,o,h;if(h=s4t(e,n),r.c[r.c.length]=e,t.j[h.p]==-1||t.j[h.p]==2||t.a[e.p])return r;for(t.j[h.p]=-1,o=new ar(lr(z0(h).a.Kc(),new H));Vr(o);)if(s=u(Ir(o),17),!(!(!Wa(s)&&!(!Wa(s)&&s.c.i.c==s.d.i.c))||s==e))return Tce(t,s,h,r);return r}function s2n(t,e,n){var r,s,o;for(o=e.a.ec().Kc();o.Ob();)s=u(o.Pb(),79),r=u(tr(t.b,s),266),!r&&(hs(Zd(s))==hs(Zp(s))?yvn(t,s,n):Zd(s)==hs(Zp(s))?tr(t.c,s)==null&&tr(t.b,Zp(s))!=null&&rhe(t,s,n,!1):tr(t.d,s)==null&&tr(t.b,Zd(s))!=null&&rhe(t,s,n,!0))}function a2n(t,e){var n,r,s,o,h,d,w;for(s=t.Kc();s.Ob();)for(r=u(s.Pb(),10),d=new Nc,tc(d,r),Us(d,(be(),Hn)),ee(d,(ae(),GV),(Fn(),!0)),h=e.Kc();h.Ob();)o=u(h.Pb(),10),w=new Nc,tc(w,o),Us(w,Bn),ee(w,GV,!0),n=new zv,ee(n,GV,!0),Ba(n,d),pa(n,w)}function o2n(t,e,n,r){var s,o,h,d;s=mie(t,e,n),o=mie(t,n,e),h=u(tr(t.c,e),112),d=u(tr(t.c,n),112),sr.b.g&&(o.c[o.c.length]=r);return o}function w7(){w7=X,r5=new CM("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),Bx=new CM("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),qS=new CM("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),zS=new CM("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),HS=new CM("WHOLE_DRAWING",4)}function c2n(t,e){if(_t(e,239))return Run(t,u(e,33));if(_t(e,186))return Qun(t,u(e,118));if(_t(e,354))return lnn(t,u(e,137));if(_t(e,352))return Nmn(t,u(e,79));if(e)return null;throw nt(new Pn(m8t+Jp(new Cl(ut(ot(Qn,1),Me,1,5,[e])))))}function u2n(t){var e,n,r,s,o,h,d;for(o=new cs,s=new S(t.d.a);s.a1)for(e=Iv((n=new Kb,++t.b,n),t.d),d=si(o,0);d.b!=d.d.c;)h=u(ii(d),121),yf(lf(uf(hf(cf(new Sh,1),0),e),h))}function k5t(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=11&&e){if(c7(t,e))throw nt(new Pn(KC+$5t(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?Z3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=tx(e,t,10,r)),r=tvt(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,11,e,e))}function l2n(t){var e,n,r,s;for(r=new d2(new kg(t.b).a);r.b;)n=Yv(r),s=u(n.cd(),11),e=u(n.dd(),10),ee(e,(ae(),Ii),s),ee(s,sl,e),ee(s,kO,(Fn(),!0)),Us(s,u(K(e,gc),61)),K(e,gc),ee(s.i,(xe(),ws),(va(),SE)),u(K($a(s.i),Wc),21).Fc((go(),lE))}function h2n(t,e,n){var r,s,o,h,d,w;if(o=0,h=0,t.c)for(w=new S(t.d.i.j);w.ao.a?-1:s.aw){for(_=t.d,t.d=Nt($At,A8t,63,2*w+4,0,1),o=0;o=9223372036854776e3?(I8(),Y8t):(s=!1,t<0&&(s=!0,t=-t),r=0,t>=E2&&(r=Cs(t/E2),t-=r*E2),n=0,t>=hx&&(n=Cs(t/hx),t-=n*hx),e=Cs(t),o=cu(e,n,r),s&&mit(o),o)}function x2n(t,e){var n,r,s,o;for(n=!e||!t.u.Hc((il(),tg)),o=0,s=new S(t.e.Cf());s.a=-e&&r==e?new ya(de(n-1),de(r)):new ya(de(n),de(r-1))}function Lce(){return co(),ut(ot(h6n,1),oe,77,0,[HEt,$Et,hS,slt,c9t,gV,TV,eE,a9t,QEt,i9t,tE,o9t,KEt,u9t,NEt,wV,alt,fV,xV,h9t,yV,PEt,s9t,f9t,kV,l9t,dV,GEt,n9t,e9t,_V,REt,hV,bV,BEt,J7,JEt,YEt,r9t,fS,zEt,jEt,t9t,XEt,vV,EV,FEt,mV,ZEt,pV,UEt,VEt,bO,lV,WEt,qEt])}function _2n(t,e,n){t.d=0,t.b=0,e.k==(Gn(),Uc)&&n.k==Uc&&u(K(e,(ae(),Ii)),10)==u(K(n,Ii),10)&&(Urt(e).j==(be(),On)?gce(t,e,n):gce(t,n,e)),e.k==Uc&&n.k==ca?Urt(e).j==(be(),On)?t.d=1:t.b=1:n.k==Uc&&e.k==ca&&(Urt(n).j==(be(),On)?t.b=1:t.d=1),ffn(t,e,n)}function C2n(t){var e,n,r,s,o,h,d,w,k,_,M;return M=x4t(t),e=t.a,w=e!=null,w&&d8(M,"category",t.a),s=fM(new Tm(t.d)),h=!s,h&&(k=new yg,Qf(M,"knownOptions",k),n=new vzt(k),_a(new Tm(t.d),n)),o=fM(t.g),d=!o,d&&(_=new yg,Qf(M,"supportedFeatures",_),r=new wzt(_),_a(t.g,r)),M}function S2n(t){var e,n,r,s,o,h,d,w,k;for(r=!1,e=336,n=0,o=new DWt(t.length),d=t,w=0,k=d.length;w>16!=7&&e){if(c7(t,e))throw nt(new Pn(KC+Fae(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?K3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=u(e,49).gh(t,1,sN,r)),r=Uvt(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,7,e,e))}function Mce(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(c7(t,e))throw nt(new Pn(KC+Gre(t)));r=null,t.Cb&&(r=(n=t.Db>>16,n>=0?X3t(t,r):t.Cb.ih(t,-1-n,null,r))),e&&(r=u(e,49).gh(t,0,oN,r)),r=Wvt(t,e,r),r&&r.Fi()}else t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,3,e,e))}function tat(t,e){g7();var n,r,s,o,h,d,w,k,_;return e.d>t.d&&(d=t,t=e,e=d),e.d<63?vvn(t,e):(h=(t.d&-2)<<4,k=amt(t,h),_=amt(e,h),r=bat(t,H6(k,h)),s=bat(e,H6(_,h)),w=tat(k,_),n=tat(r,s),o=tat(bat(k,r),bat(s,_)),o=Tat(Tat(o,w),n),o=H6(o,h),w=H6(w,h<<1),Tat(Tat(w,o),n))}function L2n(t,e,n){var r,s,o,h,d;for(h=Q_(t,n),d=Nt(o0,Gg,10,e.length,0,1),r=0,o=h.Kc();o.Ob();)s=u(o.Pb(),11),Be(Fe(K(s,(ae(),kO))))&&(d[r++]=u(K(s,sl),10));if(r=0;o+=n?1:-1)h=h|e.c.Sf(w,o,n,r&&!Be(Fe(K(e.j,(ae(),Mw))))&&!Be(Fe(K(e.j,(ae(),Y4))))),h=h|e.q._f(w,o,n),h=h|pue(t,w[o],n,r);return Vs(t.c,e),h}function lq(t,e,n){var r,s,o,h,d,w,k,_,M,B;for(_=gZt(t.j),M=0,B=_.length;M1&&(t.a=!0),Gtn(u(n.b,65),Fi(uc(u(e.b,65).c),ld(fa(uc(u(n.b,65).a),u(e.b,65).a),s))),AQt(t,e),Dce(t,n)}function Ice(t){var e,n,r,s,o,h,d;for(o=new S(t.a.a);o.a0&&o>0?h.p=e++:r>0?h.p=n++:o>0?h.p=s++:h.p=n++}pn(),aa(t.j,new CL)}function N2n(t){var e,n;n=null,e=u(Pe(t.g,0),17);do{if(n=e.d.i,ea(n,(ae(),qh)))return u(K(n,qh),11).i;if(n.k!=(Gn(),qs)&&Vr(new ar(lr($s(n).a.Kc(),new H))))e=u(Ir(new ar(lr($s(n).a.Kc(),new H))),17);else if(n.k!=qs)return null}while(n&&n.k!=(Gn(),qs));return n}function P2n(t,e){var n,r,s,o,h,d,w,k,_;for(d=e.j,h=e.g,w=u(Pe(d,d.c.length-1),113),_=(Sn(0,d.c.length),u(d.c[0],113)),k=mst(t,h,w,_),o=1;ok&&(w=n,_=s,k=r);e.a=_,e.c=w}function F2n(t,e){var n,r;if(r=YM(t.b,e.b),!r)throw nt(new Ho("Invalid hitboxes for scanline constraint calculation."));(jne(e.b,u(FQe(t.b,e.b),57))||jne(e.b,u(PQe(t.b,e.b),57)))&&(qd(),e.b+""),t.a[e.b.f]=u(bnt(t.b,e.b),57),n=u(pnt(t.b,e.b),57),n&&(t.a[n.f]=e.b)}function yf(t){if(!t.a.d||!t.a.e)throw nt(new Ho((L0(Wge),Wge.k+" must have a source and target "+(L0(X7t),X7t.k)+" specified.")));if(t.a.d==t.a.e)throw nt(new Ho("Network simplex does not support self-loops: "+t.a+" "+t.a.d+" "+t.a.e));return pj(t.a.d.g,t.a),pj(t.a.e.b,t.a),t.a}function B2n(t,e,n){var r,s,o,h,d,w,k;for(k=new Dp(new b$t(t)),h=ut(ot(Nbe,1),Ufe,11,0,[e,n]),d=0,w=h.length;dw-t.b&&dw-t.a&&d0&&++q;++B}return q}function W2n(t,e){var n,r,s,o,h;for(h=u(K(e,(hw(),rCt)),425),o=si(e.b,0);o.b!=o.d.c;)if(s=u(ii(o),86),t.b[s.g]==0){switch(h.g){case 0:ase(t,s);break;case 1:Ypn(t,s)}t.b[s.g]=2}for(r=si(t.a,0);r.b!=r.d.c;)n=u(ii(r),188),ry(n.b.d,n,!0),ry(n.c.b,n,!0);ee(e,(mc(),X_t),t.a)}function hu(t,e){so();var n,r,s,o;return e?e==($i(),T5e)||(e==f5e||e==K2||e==h5e)&&t!=dLt?new w6t(t,e):(r=u(e,677),n=r.pk(),n||(y8(Mo((Gu(),Sa),e)),n=r.pk()),o=(!n.i&&(n.i=new Ar),n.i),s=u(cc(Fo(o.f,t)),1942),!s&&Ai(o,t,s=new w6t(t,e)),s):c5e}function K2n(t,e){var n,r,s,o,h,d,w,k,_;for(w=u(K(t,(ae(),Ii)),11),k=nc(ut(ot(na,1),re,8,0,[w.i.n,w.n,w.a])).a,_=t.i.n.b,n=pd(t.e),s=n,o=0,h=s.length;o0?o.a?(d=o.b.rf().a,n>d&&(s=(n-d)/2,o.d.b=s,o.d.c=s)):o.d.c=t.s+n:T_(t.u)&&(r=k4t(o.b),r.c<0&&(o.d.b=-r.c),r.c+r.b>o.b.rf().a&&(o.d.c=r.c+r.b-o.b.rf().a))}function Z2n(t,e){var n,r,s,o;for(mr(e,"Semi-Interactive Crossing Minimization Processor",1),n=!1,s=new S(t.b);s.a=0){if(e==n)return new ya(de(-e-1),de(-e-1));if(e==-n)return new ya(de(-e),de(n+1))}return b.Math.abs(e)>b.Math.abs(n)?e<0?new ya(de(-e),de(n)):new ya(de(-e),de(n+1)):new ya(de(e+1),de(n))}function evn(t){var e,n;n=u(K(t,(xe(),du)),163),e=u(K(t,(ae(),P2)),303),n==(ph(),gb)?(ee(t,du,_O),ee(t,P2,(B0(),W4))):n==Fy?(ee(t,du,_O),ee(t,P2,(B0(),Sx))):e==(B0(),W4)?(ee(t,du,gb),ee(t,P2,yO)):e==Sx&&(ee(t,du,Fy),ee(t,P2,yO))}function hq(){hq=X,NO=new MQ,Ome=Ei(new Zs,(Ya(),fu),(co(),fV)),Fme=el(Ei(new Zs,fu,yV),jo,mV),Bme=aw(aw(OR(el(Ei(new Zs,Ld,TV),jo,EV),Gc),kV),_V),Nme=el(Ei(Ei(Ei(new Zs,fb,gV),Gc,bV),Gc,J7),jo,pV),Pme=el(Ei(Ei(new Zs,Gc,J7),Gc,hV),jo,lV)}function bC(){bC=X,$me=Ei(el(new Zs,(Ya(),jo),(co(),UEt)),fu,fV),Vme=aw(aw(OR(el(Ei(new Zs,Ld,TV),jo,EV),Gc),kV),_V),zme=el(Ei(Ei(Ei(new Zs,fb,gV),Gc,bV),Gc,J7),jo,pV),Hme=Ei(Ei(new Zs,fu,yV),jo,mV),qme=el(Ei(Ei(new Zs,Gc,J7),Gc,hV),jo,lV)}function nvn(t,e,n,r,s){var o,h;(!Wa(e)&&e.c.i.c==e.d.i.c||!Wee(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])),n))&&!Wa(e)&&(e.c==s?u8(e.a,0,new So(n)):ai(e.a,new So(n)),r&&!S0(t.a,n)&&(h=u(K(e,(xe(),Oo)),74),h||(h=new ju,ee(e,Oo,h)),o=new So(n),ks(h,o,h.c.b,h.c),Vs(t.a,o)))}function rvn(t){var e,n;for(n=new ar(lr(Uo(t).a.Kc(),new H));Vr(n);)if(e=u(Ir(n),17),e.c.i.k!=(Gn(),Pl))throw nt(new B3($ot+ZD(t)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function ivn(t,e,n){var r,s,o,h,d,w,k;if(s=Qre(t.Db&254),s==0)t.Eb=n;else{if(s==1)d=Nt(Qn,Me,1,2,5,1),o=wst(t,e),o==0?(d[0]=n,d[1]=t.Eb):(d[0]=t.Eb,d[1]=n);else for(d=Nt(Qn,Me,1,s+1,5,1),h=o2(t.Eb),r=2,w=0,k=0;r<=128;r<<=1)r==e?d[k++]=n:t.Db&r&&(d[k++]=h[w++]);t.Eb=d}t.Db|=e}function Nce(t,e,n){var r,s,o,h;for(this.b=new le,s=0,r=0,h=new S(t);h.a0&&(o=u(Pe(this.b,0),167),s+=o.o,r+=o.p),s*=2,r*=2,e>1?s=Cs(b.Math.ceil(s*e)):r=Cs(b.Math.ceil(r/e)),this.a=new p3t(s,r)}function Pce(t,e,n,r,s,o){var h,d,w,k,_,M,B,q,G,W,Z,bt;for(_=r,e.j&&e.o?(q=u(tr(t.f,e.A),57),W=q.d.c+q.d.b,--_):W=e.a.c+e.a.b,M=s,n.q&&n.o?(q=u(tr(t.f,n.C),57),k=q.d.c,++M):k=n.a.c,Z=k-W,w=b.Math.max(2,M-_),d=Z/w,G=W+d,B=_;B=0;h+=s?1:-1){for(d=e[h],w=r==(be(),Hn)?s?rc(d,r):c2(rc(d,r)):s?c2(rc(d,r)):rc(d,r),o&&(t.c[d.p]=w.gc()),M=w.Kc();M.Ob();)_=u(M.Pb(),11),t.d[_.p]=k++;Rs(n,w)}}function Fce(t,e,n){var r,s,o,h,d,w,k,_;for(o=Zt(ve(t.b.Kc().Pb())),k=Zt(ve(dcn(e.b))),r=ld(uc(t.a),k-n),s=ld(uc(e.a),n-o),_=Fi(r,s),ld(_,1/(k-o)),this.a=_,this.b=new le,d=!0,h=t.b.Kc(),h.Pb();h.Ob();)w=Zt(ve(h.Pb())),d&&w-n>yct&&(this.b.Fc(n),d=!1),this.b.Fc(w);d&&this.b.Fc(n)}function svn(t){var e,n,r,s;if(bwn(t,t.n),t.d.c.length>0){for(PT(t.c);o5t(t,u(Q(new S(t.e.a)),121))>5,e&=31,r>=t.d)return t.e<0?(eb(),Aut):(eb(),Y7);if(o=t.d-r,s=Nt(Sr,Jr,25,o+1,15,1),Z0n(s,o,t.a,r,e),t.e<0){for(n=0;n0&&t.a[n]<<32-e){for(n=0;n=0?!1:(n=T4((Gu(),Sa),s,e),n?(r=n.Zj(),(r>1||r==-1)&&$v(Mo(Sa,n))!=3):!0)):!1}function uvn(t,e,n,r){var s,o,h,d,w;return d=Ro(u(At((!e.b&&(e.b=new En(vr,e,4,7)),e.b),0),82)),w=Ro(u(At((!e.c&&(e.c=new En(vr,e,5,8)),e.c),0),82)),hs(d)==hs(w)||Zm(w,d)?null:(h=rD(e),h==n?r:(o=u(tr(t.a,h),10),o&&(s=o.e,s)?s:null))}function lvn(t,e){var n;switch(n=u(K(t,(xe(),ZV)),276),mr(e,"Label side selection ("+n+")",1),n.g){case 0:tce(t,(Vl(),u0));break;case 1:tce(t,(Vl(),yb));break;case 2:ple(t,(Vl(),u0));break;case 3:ple(t,(Vl(),yb));break;case 4:Xce(t,(Vl(),u0));break;case 5:Xce(t,(Vl(),yb))}or(e)}function L5t(t,e,n){var r,s,o,h,d,w;if(r=YKe(n,t.length),h=t[r],h[0].k==(Gn(),Is))for(o=tHt(n,h.length),w=e.j,s=0;s0&&(n[0]+=t.d,h-=n[0]),n[2]>0&&(n[2]+=t.d,h-=n[2]),o=b.Math.max(0,h),n[1]=b.Math.max(n[1],h),cmt(t,iu,s.c+r.b+n[0]-(n[1]-h)/2,n),e==iu&&(t.c.b=o,t.c.c=s.c+r.b+(o-h)/2)}function Wce(){this.c=Nt(ga,To,25,(be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])).length,15,1),this.b=Nt(ga,To,25,ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn]).length,15,1),this.a=Nt(ga,To,25,ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn]).length,15,1),wbt(this.c,bs),wbt(this.b,Ns),wbt(this.a,Ns)}function qc(t,e,n){var r,s,o,h;if(e<=n?(s=e,o=n):(s=n,o=e),r=0,t.b==null)t.b=Nt(Sr,Jr,25,2,15,1),t.b[0]=s,t.b[1]=o,t.c=!0;else{if(r=t.b.length,t.b[r-1]+1==s){t.b[r-1]=o;return}h=Nt(Sr,Jr,25,r+2,15,1),Pc(t.b,0,h,0,r),t.b=h,t.b[r-1]>=s&&(t.c=!1,t.a=!1),t.b[r++]=s,t.b[r]=o,t.c||v4(t)}}function wvn(t,e,n){var r,s,o,h,d,w,k;for(k=e.d,t.a=new Jc(k.c.length),t.c=new Ar,d=new S(k);d.a=0?t._g(k,!1,!0):lw(t,n,!1),58));t:for(o=M.Kc();o.Ob();){for(s=u(o.Pb(),56),_=0;_1;)dy(s,s.i-1);return r}function Evn(t,e){var n,r,s,o,h,d,w;for(mr(e,"Comment post-processing",1),o=new S(t.b);o.at.d[h.p]&&(n+=nmt(t.b,o),Vp(t.a,de(o)));for(;!NT(t.a);)Omt(t.b,u(P6(t.a),19).a)}return n}function Qce(t,e,n){var r,s,o,h;for(o=(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i,s=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));s.e!=s.i.gc();)r=u(dr(s),33),(!r.a&&(r.a=new he(ds,r,10,11)),r.a).i==0||(o+=Qce(t,r,!1));if(n)for(h=hs(e);h;)o+=(!h.a&&(h.a=new he(ds,h,10,11)),h.a).i,h=hs(h);return o}function dy(t,e){var n,r,s,o;return t.ej()?(r=null,s=t.fj(),t.ij()&&(r=t.kj(t.pi(e),null)),n=t.Zi(4,o=nx(t,e),null,e,s),t.bj()&&o!=null&&(r=t.dj(o,r)),r?(r.Ei(n),r.Fi()):t.$i(n),o):(o=nx(t,e),t.bj()&&o!=null&&(r=t.dj(o,null),r&&r.Fi()),o)}function _vn(t){var e,n,r,s,o,h,d,w,k,_;for(k=t.a,e=new Qs,w=0,r=new S(t.d);r.ad.d&&(_=d.d+d.a+k));n.c.d=_,e.a.zc(n,e),w=b.Math.max(w,n.c.d+n.c.a)}return w}function go(){go=X,RV=new Im("COMMENTS",0),yh=new Im("EXTERNAL_PORTS",1),vS=new Im("HYPEREDGES",2),jV=new Im("HYPERNODES",3),lE=new Im("NON_FREE_PORTS",4),U4=new Im("NORTH_SOUTH_PORTS",5),wS=new Im(h1e,6),cE=new Im("CENTER_LABELS",7),uE=new Im("END_LABELS",8),$V=new Im("PARTITIONS",9)}function gy(t){var e,n,r,s,o;for(s=new le,e=new y_((!t.a&&(t.a=new he(ds,t,10,11)),t.a)),r=new ar(lr(V0(t).a.Kc(),new H));Vr(r);)n=u(Ir(r),79),_t(At((!n.b&&(n.b=new En(vr,n,4,7)),n.b),0),186)||(o=Ro(u(At((!n.c&&(n.c=new En(vr,n,5,8)),n.c),0),82)),e.a._b(o)||(s.c[s.c.length]=o));return s}function Cvn(t){var e,n,r,s,o,h;for(o=new Qs,e=new y_((!t.a&&(t.a=new he(ds,t,10,11)),t.a)),s=new ar(lr(V0(t).a.Kc(),new H));Vr(s);)r=u(Ir(s),79),_t(At((!r.b&&(r.b=new En(vr,r,4,7)),r.b),0),186)||(h=Ro(u(At((!r.c&&(r.c=new En(vr,r,5,8)),r.c),0),82)),e.a._b(h)||(n=o.a.zc(h,o),n==null));return o}function Svn(t,e,n,r,s){return r<0?(r=b4(t,s,ut(ot(Le,1),re,2,6,[qat,Hat,Vat,Gat,ux,Uat,Wat,Kat,Yat,Xat,Qat,Zat]),e),r<0&&(r=b4(t,s,ut(ot(Le,1),re,2,6,["Jan","Feb","Mar","Apr",ux,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),r<0?!1:(n.k=r,!0)):r>0?(n.k=r-1,!0):!1}function Avn(t,e,n,r,s){return r<0?(r=b4(t,s,ut(ot(Le,1),re,2,6,[qat,Hat,Vat,Gat,ux,Uat,Wat,Kat,Yat,Xat,Qat,Zat]),e),r<0&&(r=b4(t,s,ut(ot(Le,1),re,2,6,["Jan","Feb","Mar","Apr",ux,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),r<0?!1:(n.k=r,!0)):r>0?(n.k=r-1,!0):!1}function Lvn(t,e,n,r,s,o){var h,d,w,k;if(d=32,r<0){if(e[0]>=t.length||(d=Ta(t,e[0]),d!=43&&d!=45)||(++e[0],r=rq(t,e),r<0))return!1;d==45&&(r=-r)}return d==32&&e[0]-n==2&&s.b==2&&(w=new CR,k=w.q.getFullYear()-ib+ib-80,h=k%100,o.a=r==h,r+=(k/100|0)*100+(r=k&&(w=r);w&&(_=b.Math.max(_,w.a.o.a)),_>B&&(M=k,B=_)}return M}function Ivn(t,e,n){var r,s,o;if(t.e=n,t.d=0,t.b=0,t.f=1,t.i=e,(t.e&16)==16&&(t.i=wwn(t.i)),t.j=t.i.length,mi(t),o=sw(t),t.d!=t.j)throw nt(new Rr(Gr((Fr(),Ode))));if(t.g){for(r=0;rN1e?aa(w,t.b):r<=N1e&&r>P1e?aa(w,t.d):r<=P1e&&r>F1e?aa(w,t.c):r<=F1e&&aa(w,t.a),o=eue(t,w,o);return s}function eb(){eb=X;var t;for(VH=new Og(1,1),Lut=new Og(1,10),Y7=new Og(0,0),Aut=new Og(-1,1),p7t=ut(ot(R4,1),re,91,0,[Y7,VH,new Og(1,2),new Og(1,3),new Og(1,4),new Og(1,5),new Og(1,6),new Og(1,7),new Og(1,8),new Og(1,9),Lut]),GH=Nt(R4,re,91,32,0,1),t=0;t1,d&&(r=new Re(s,n.b),ai(e.a,r)),z_(e.a,ut(ot(na,1),re,8,0,[B,M]))}function aue(t){Sv(t,new y2(Ev(yv(kv(xv(new mg,vH),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new HZ))),we(t,vH,ww,_At),we(t,vH,ky,15),we(t,vH,Hq,de(0)),we(t,vH,px,P7)}function I5t(){I5t=X;var t,e,n,r,s,o;for(lA=Nt(Xu,P4,25,255,15,1),uU=Nt(Eh,wd,25,16,15,1),e=0;e<255;e++)lA[e]=-1;for(n=57;n>=48;n--)lA[n]=n-48<<24>>24;for(r=70;r>=65;r--)lA[r]=r-65+10<<24>>24;for(s=102;s>=97;s--)lA[s]=s-97+10<<24>>24;for(o=0;o<10;o++)uU[o]=48+o&Ms;for(t=10;t<=15;t++)uU[t]=65+t-10&Ms}function dq(t,e,n){var r,s,o,h,d,w,k,_;return d=e.i-t.g/2,w=n.i-t.g/2,k=e.j-t.g/2,_=n.j-t.g/2,o=e.g+t.g/2,h=n.g+t.g/2,r=e.f+t.g/2,s=n.f+t.g/2,d>19)return"-"+oue(W8(t));for(n=t,r="";!(n.l==0&&n.m==0&&n.h==0);){if(s=Prt(Nq),n=l6t(n,s,!0),e=""+mHt(ub),!(n.l==0&&n.m==0&&n.h==0))for(o=9-e.length;o>0;o--)e="0"+e;r=e+r}return r}function Rvn(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var t="__proto__",e=Object.create(null);if(e[t]!==void 0)return!1;var n=Object.getOwnPropertyNames(e);return!(n.length!=0||(e[t]=42,e[t]!==42)||Object.getOwnPropertyNames(e).length==0)}function jvn(t){var e,n,r,s,o,h,d;for(e=!1,n=0,s=new S(t.d.b);s.a=t.a||!m4t(e,n))return-1;if(_8(u(r.Kb(e),20)))return 1;for(s=0,h=u(r.Kb(e),20).Kc();h.Ob();)if(o=u(h.Pb(),17),w=o.c.i==e?o.d.i:o.c.i,d=N5t(t,w,n,r),d==-1||(s=b.Math.max(s,d),s>t.c-1))return-1;return s+1}function cue(t,e){var n,r,s,o,h,d;if(Gt(e)===Gt(t))return!0;if(!_t(e,15)||(r=u(e,15),d=t.gc(),r.gc()!=d))return!1;if(h=r.Kc(),t.ni()){for(n=0;n0){if(t.qj(),e!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return t-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return t-65+10<<24>>24;default:throw nt(new cd("Invalid hexadecimal"))}}function Hvn(t,e,n){var r,s,o,h;for(mr(n,"Processor order nodes",2),t.a=Zt(ve(K(e,(hw(),iCt)))),s=new cs,h=si(e.b,0);h.b!=h.d.c;)o=u(ii(h),86),Be(Fe(K(o,(mc(),Wy))))&&ks(s,o,s.c.b,s.c);r=(Zn(s.b!=0),u(s.a.a.c,86)),Ale(t,r),!n.b&&ait(n,1),j5t(t,r,0-Zt(ve(K(r,(mc(),xG))))/2,0),!n.b&&ait(n,1),or(n)}function gq(){gq=X,K7t=new $3("SPIRAL",0),V7t=new $3("LINE_BY_LINE",1),G7t=new $3("MANHATTAN",2),H7t=new $3("JITTER",3),Put=new $3("QUADRANTS_LINE_BY_LINE",4),W7t=new $3("QUADRANTS_MANHATTAN",5),U7t=new $3("QUADRANTS_JITTER",6),q7t=new $3("COMBINE_LINE_BY_LINE_MANHATTAN",7),z7t=new $3("COMBINE_JITTER_MANHATTAN",8)}function lue(t,e,n,r){var s,o,h,d,w,k;for(w=Tst(t,n),k=Tst(e,n),s=!1;w&&k&&(r||jfn(w,k,n));)h=Tst(w,n),d=Tst(k,n),vD(e),vD(t),o=w.c,Aat(w,!1),Aat(k,!1),n?(oy(e,k.p,o),e.p=k.p,oy(t,w.p+1,o),t.p=w.p):(oy(t,w.p,o),t.p=w.p,oy(e,k.p+1,o),e.p=k.p),Lo(w,null),Lo(k,null),w=h,k=d,s=!0;return s}function Vvn(t,e,n,r){var s,o,h,d,w;for(s=!1,o=!1,d=new S(r.j);d.a=e.length)throw nt(new Co("Greedy SwitchDecider: Free layer not in graph."));this.c=e[t],this.e=new HM(r),lit(this.e,this.c,(be(),Bn)),this.i=new HM(r),lit(this.i,this.c,Hn),this.f=new cYt(this.c),this.a=!o&&s.i&&!s.s&&this.c[0].k==(Gn(),Is),this.a&&ogn(this,t,e.length)}function fue(t,e){var n,r,s,o,h,d;o=!t.B.Hc((bl(),rN)),h=t.B.Hc(mft),t.a=new oie(h,o,t.c),t.n&&Twt(t.a.n,t.n),eet(t.g,(Zf(),iu),t.a),e||(r=new rC(1,o,t.c),r.n.a=t.k,O6(t.p,(be(),On),r),s=new rC(1,o,t.c),s.n.d=t.k,O6(t.p,yr,s),d=new rC(0,o,t.c),d.n.c=t.k,O6(t.p,Bn,d),n=new rC(0,o,t.c),n.n.b=t.k,O6(t.p,Hn,n))}function Uvn(t){var e,n,r;switch(e=u(K(t.d,(xe(),X0)),218),e.g){case 2:n=k5n(t);break;case 3:n=(r=new le,ys(Wi(xu(ec(ec(new kn(null,new Tn(t.d.b,16)),new SX),new AX),new $9),new vX),new Btt(r)),r);break;default:throw nt(new Ho("Compaction not supported for "+e+" edges."))}Vyn(t,n),_a(new Tm(t.g),new Ptt(t))}function Wvn(t,e){var n;return n=new x3,e&&Bo(n,u(tr(t.a,sN),94)),_t(e,470)&&Bo(n,u(tr(t.a,aN),94)),_t(e,354)?(Bo(n,u(tr(t.a,Yo),94)),n):(_t(e,82)&&Bo(n,u(tr(t.a,vr),94)),_t(e,239)?(Bo(n,u(tr(t.a,ds),94)),n):_t(e,186)?(Bo(n,u(tr(t.a,yl),94)),n):(_t(e,352)&&Bo(n,u(tr(t.a,ra),94)),n))}function n1(){n1=X,Z7=new ao((di(),zG),de(1)),sV=new ao(G2,80),rbe=new ao(nAt,5),Kpe=new ao(jx,P7),ebe=new ao(gft,de(1)),nbe=new ao(pft,(Fn(),!0)),hEt=new Mv(50),Jpe=new ao(V2,hEt),cEt=RG,fEt=US,Ype=new ao(sft,!1),lEt=YO,Zpe=mb,Qpe=H2,Xpe=a5,tbe=Ky,uEt=(I4t(),zpe),Wut=Gpe,iV=$pe,Uut=qpe,dEt=Vpe}function Kvn(t){var e,n,r,s,o,h,d,w;for(w=new gJt,d=new S(t.a);d.a0&&e=0)return!1;if(e.p=n.b,ue(n.e,e),s==(Gn(),ca)||s==Uc){for(h=new S(e.j);h.a1||h==-1)&&(o|=16),s.Bb&yc&&(o|=64)),n.Bb&Qa&&(o|=Ay),o|=xf):_t(e,457)?o|=512:(r=e.Bj(),r&&r.i&1&&(o|=256)),t.Bb&512&&(o|=128),o}function vC(t,e){var n,r,s,o,h;for(t=t==null?Mu:(In(t),t),s=0;st.d[d.p]&&(n+=nmt(t.b,o),Vp(t.a,de(o)))):++h;for(n+=t.b.d*h;!NT(t.a);)Omt(t.b,u(P6(t.a),19).a)}return n}function rwn(t,e){var n;return t.f==Dft?(n=$v(Mo((Gu(),Sa),e)),t.e?n==4&&e!=(sx(),Ux)&&e!=(sx(),Gx)&&e!=(sx(),Ift)&&e!=(sx(),Oft):n==2):t.d&&(t.d.Hc(e)||t.d.Hc(z6(Mo((Gu(),Sa),e)))||t.d.Hc(T4((Gu(),Sa),t.b,e)))?!0:t.f&&E5t((Gu(),t.f),ZM(Mo(Sa,e)))?(n=$v(Mo(Sa,e)),t.e?n==4:n==2):!1}function iwn(t,e,n,r){var s,o,h,d,w,k,_,M;return h=u(ze(n,(di(),$x)),8),w=h.a,_=h.b+t,s=b.Math.atan2(_,w),s<0&&(s+=I4),s+=e,s>I4&&(s-=I4),d=u(ze(r,$x),8),k=d.a,M=d.b+t,o=b.Math.atan2(M,k),o<0&&(o+=I4),o+=e,o>I4&&(o-=I4),E1(),vf(1e-10),b.Math.abs(s-o)<=1e-10||s==o||isNaN(s)&&isNaN(o)?0:so?1:Lv(isNaN(s),isNaN(o))}function sat(t){var e,n,r,s,o,h,d;for(d=new Ar,r=new S(t.a.b);r.a=t.o)throw nt(new Ept);d=e>>5,h=e&31,o=M0(1,Mr(M0(h,1))),s?t.n[n][d]=A1(t.n[n][d],o):t.n[n][d]=Gs(t.n[n][d],Avt(o)),o=M0(o,1),r?t.n[n][d]=A1(t.n[n][d],o):t.n[n][d]=Gs(t.n[n][d],Avt(o))}catch(w){throw w=rs(w),_t(w,320)?nt(new Co(Cot+t.o+"*"+t.p+Sot+e+Xa+n+Aot)):nt(w)}}function j5t(t,e,n,r){var s,o,h;e&&(o=Zt(ve(K(e,(mc(),Jg))))+r,h=n+Zt(ve(K(e,xG)))/2,ee(e,Dht,de(Mr(Au(b.Math.round(o))))),ee(e,Q_t,de(Mr(Au(b.Math.round(h))))),e.d.b==0||j5t(t,u(lj((s=si(new Sp(e).a.d,0),new p6(s))),86),n+Zt(ve(K(e,xG)))+t.a,r+Zt(ve(K(e,yE)))),K(e,Mht)!=null&&j5t(t,u(K(e,Mht),86),n,r))}function awn(t,e){var n,r,s,o,h,d,w,k,_,M,B;for(w=$a(e.a),s=Zt(ve(K(w,(xe(),$2))))*2,_=Zt(ve(K(w,J4))),k=b.Math.max(s,_),o=Nt(ga,To,25,e.f-e.c+1,15,1),r=-k,n=0,d=e.b.Kc();d.Ob();)h=u(d.Pb(),10),r+=t.a[h.c.p]+k,o[n++]=r;for(r+=t.a[e.a.c.p]+k,o[n++]=r,B=new S(e.e);B.a0&&(r=(!t.n&&(t.n=new he(Yo,t,1,7)),u(At(t.n,0),137)).a,!r||Yr(Yr((e.a+=' "',e),r),'"'))),Yr(_v(Yr(_v(Yr(_v(Yr(_v((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function kue(t){var e,n,r;return t.Db&64?Pst(t):(e=new Fl(l8t),n=t.k,n?Yr(Yr((e.a+=' "',e),n),'"'):(!t.n&&(t.n=new he(Yo,t,1,7)),t.n.i>0&&(r=(!t.n&&(t.n=new he(Yo,t,1,7)),u(At(t.n,0),137)).a,!r||Yr(Yr((e.a+=' "',e),r),'"'))),Yr(_v(Yr(_v(Yr(_v(Yr(_v((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function oat(t,e){var n,r,s,o,h,d,w;if(e==null||e.length==0)return null;if(s=u(jc(t.a,e),149),!s){for(r=(d=new m1(t.b).a.vc().Kc(),new y1(d));r.a.Ob();)if(n=(o=u(r.a.Pb(),42),u(o.dd(),149)),h=n.c,w=e.length,un(h.substr(h.length-w,w),e)&&(e.length==h.length||Ta(h,h.length-e.length-1)==46)){if(s)return null;s=n}s&&Ao(t.a,e,s)}return s}function uwn(t,e){var n,r,s,o;return n=new Tl,r=u($l(xu(new kn(null,new Tn(t.f,16)),n),Ym(new Yt,new Mi,new bi,new dn,ut(ot(wl,1),oe,132,0,[(N1(),Ly),Yl]))),21),s=r.gc(),r=u($l(xu(new kn(null,new Tn(e.f,16)),n),Ym(new Yt,new Mi,new bi,new dn,ut(ot(wl,1),oe,132,0,[Ly,Yl]))),21),o=r.gc(),ss.p?(Us(o,yr),o.d&&(d=o.o.b,e=o.a.b,o.a.b=d-e)):o.j==yr&&s.p>t.p&&(Us(o,On),o.d&&(d=o.o.b,e=o.a.b,o.a.b=-(d-e)));break}return s}function hwn(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G;if(o=n,n1,d&&(r=new Re(s,n.b),ai(e.a,r)),z_(e.a,ut(ot(na,1),re,8,0,[B,M]))}function cat(t,e,n){var r,s,o,h,d,w;if(e)if(n<=-1){if(r=wn(e.Tg(),-1-n),_t(r,99))return u(r,18);for(h=u(e.ah(r),153),d=0,w=h.gc();d0){for(s=w.length;s>0&&w[s-1]=="";)--s;s=40,h&&kmn(t),Cyn(t),svn(t),n=Wre(t),r=0;n&&r0&&ai(t.f,o)):(t.c[h]-=k+1,t.c[h]<=0&&t.a[h]>0&&ai(t.e,o))))}function Bwn(t){var e,n,r,s,o,h,d,w,k;for(d=new Dp(u(Dr(new zo),62)),k=Ns,n=new S(t.d);n.a=0&&wn?e:n;k<=M;++k)k==n?d=r++:(o=s[k],_=G.rl(o.ak()),k==e&&(w=k==M&&!_?r-1:r),_&&++r);return B=u(tC(t,e,n),72),d!=w&&Uk(t,new gD(t.e,7,h,de(d),q.dd(),w)),B}}else return u(Vst(t,e,n),72);return u(tC(t,e,n),72)}function zwn(t,e){var n,r,s,o,h,d,w;for(mr(e,"Port order processing",1),w=u(K(t,(xe(),c_t)),421),r=new S(t.b);r.a=0&&(d=Vfn(t,h),!(d&&(k<22?w.l|=1<>>1,h.m=_>>>1|(M&1)<<21,h.l=B>>>1|(_&1)<<21,--k;return n&&mit(w),o&&(r?(ub=W8(t),s&&(ub=Pne(ub,(I8(),X8t)))):ub=cu(t.l,t.m,t.h)),w}function Vwn(t,e){var n,r,s,o,h,d,w,k,_,M;for(k=t.e[e.c.p][e.p]+1,w=e.c.a.c.length+1,d=new S(t.a);d.a0&&($r(0,t.length),t.charCodeAt(0)==45||($r(0,t.length),t.charCodeAt(0)==43))?1:0,r=h;rn)throw nt(new cd(vw+t+'"'));return d}function Gwn(t){var e,n,r,s,o,h,d;for(h=new cs,o=new S(t.a);o.a1)&&e==1&&u(t.a[t.b],10).k==(Gn(),Pl)?ox(u(t.a[t.b],10),(Vl(),u0)):r&&(!n||(t.c-t.b&t.a.length-1)>1)&&e==1&&u(t.a[t.c-1&t.a.length-1],10).k==(Gn(),Pl)?ox(u(t.a[t.c-1&t.a.length-1],10),(Vl(),yb)):(t.c-t.b&t.a.length-1)==2?(ox(u(K_(t),10),(Vl(),u0)),ox(u(K_(t),10),yb)):jbn(t,s),tmt(t)}function Kwn(t,e,n){var r,s,o,h,d;for(o=0,s=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));s.e!=s.i.gc();)r=u(dr(s),33),h="",(!r.n&&(r.n=new he(Yo,r,1,7)),r.n).i==0||(h=u(At((!r.n&&(r.n=new he(Yo,r,1,7)),r.n),0),137).a),d=new kit(o++,e,h),Bo(d,r),ee(d,(mc(),jS),r),d.e.b=r.j+r.f/2,d.f.a=b.Math.max(r.g,1),d.e.a=r.i+r.g/2,d.f.b=b.Math.max(r.f,1),ai(e.b,d),lu(n.f,r,d)}function Ywn(t){var e,n,r,s,o;r=u(K(t,(ae(),Ii)),33),o=u(ze(r,(xe(),R2)),174).Hc((Nl(),W2)),t.e||(s=u(K(t,Wc),21),e=new Re(t.f.a+t.d.b+t.d.c,t.f.b+t.d.d+t.d.a),s.Hc((go(),yh))?(Eo(r,ws,(va(),Kc)),gw(r,e.a,e.b,!1,!0)):Be(Fe(ze(r,tht)))||gw(r,e.a,e.b,!0,!0)),o?Eo(r,R2,on(W2)):Eo(r,R2,(n=u(Wf(tA),9),new oh(n,u(ff(n,n.length),9),0)))}function W5t(t,e,n){var r,s,o,h;if(e[0]>=t.length)return n.o=0,!0;switch(Ta(t,e[0])){case 43:s=1;break;case 45:s=-1;break;default:return n.o=0,!0}if(++e[0],o=e[0],h=rq(t,e),h==0&&e[0]==o)return!1;if(e[0]=0&&d!=n&&(o=new oa(t,1,d,h,null),r?r.Ei(o):r=o),n>=0&&(o=new oa(t,1,n,d==n?h:null,e),r?r.Ei(o):r=o)),r}function $ue(t){var e,n,r;if(t.b==null){if(r=new _g,t.i!=null&&(yo(r,t.i),r.a+=":"),t.f&256){for(t.f&256&&t.a!=null&&(hnn(t.i)||(r.a+="//"),yo(r,t.a)),t.d!=null&&(r.a+="/",yo(r,t.d)),t.f&16&&(r.a+="/"),e=0,n=t.j.length;eB?!1:(M=(w=EC(r,B,!1),w.a),_+d+M<=e.b&&(dD(n,o-n.s),n.c=!0,dD(r,o-n.s),YD(r,n.s,n.t+n.d+d),r.k=!0,syt(n.q,r),q=!0,s&&(Y$(e,r),r.j=e,t.c.length>h&&(tI((Sn(h,t.c.length),u(t.c[h],200)),r),(Sn(h,t.c.length),u(t.c[h],200)).a.c.length==0&&Ig(t,h)))),q)}function rmn(t,e){var n,r,s,o,h,d;if(mr(e,"Partition midprocessing",1),s=new Hv,ys(Wi(new kn(null,new Tn(t.a,16)),new $Y),new bv(s)),s.d!=0){for(d=u($l(OQt((o=s.i,new kn(null,(o||(s.i=new K3(s,s.c))).Nc()))),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),r=d.Kc(),n=u(r.Pb(),19);r.Ob();)h=u(r.Pb(),19),a2n(u(Pi(s,n),21),u(Pi(s,h),21)),n=h;or(e)}}function Hue(t,e,n){var r,s,o,h,d,w,k,_;if(e.p==0){for(e.p=1,h=n,h||(s=new le,o=(r=u(Wf(Za),9),new oh(r,u(ff(r,r.length),9),0)),h=new ya(s,o)),u(h.a,15).Fc(e),e.k==(Gn(),Is)&&u(h.b,21).Fc(u(K(e,(ae(),gc)),61)),w=new S(e.j);w.a0){if(s=u(t.Ab.g,1934),e==null){for(o=0;o1)for(r=new S(s);r.an.s&&dd&&(d=s,_.c=Nt(Qn,Me,1,0,5,1)),s==d&&ue(_,new ya(n.c.i,n)));pn(),aa(_,t.c),$m(t.b,w.p,_)}}function umn(t,e){var n,r,s,o,h,d,w,k,_;for(h=new S(e.b);h.ad&&(d=s,_.c=Nt(Qn,Me,1,0,5,1)),s==d&&ue(_,new ya(n.d.i,n)));pn(),aa(_,t.c),$m(t.f,w.p,_)}}function Gue(t){Sv(t,new y2(Ev(yv(kv(xv(new mg,xw),"ELK Box"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges."),new OZ))),we(t,xw,ww,TSt),we(t,xw,ky,15),we(t,xw,jI,de(0)),we(t,xw,gH,Ie(xSt)),we(t,xw,M4,Ie(F3e)),we(t,xw,bx,Ie(B3e)),we(t,xw,px,H1e),we(t,xw,$I,Ie(kSt)),we(t,xw,vx,Ie(ESt)),we(t,xw,i8t,Ie(eft)),we(t,xw,cH,Ie(P3e))}function Uue(t,e){var n,r,s,o,h,d,w,k,_;if(s=t.i,h=s.o.a,o=s.o.b,h<=0&&o<=0)return be(),ac;switch(k=t.n.a,_=t.n.b,d=t.o.a,n=t.o.b,e.g){case 2:case 1:if(k<0)return be(),Bn;if(k+d>h)return be(),Hn;break;case 4:case 3:if(_<0)return be(),On;if(_+n>o)return be(),yr}return w=(k+d/2)/h,r=(_+n/2)/o,w+r<=1&&w-r<=0?(be(),Bn):w+r>=1&&w-r>=0?(be(),Hn):r<.5?(be(),On):(be(),yr)}function lmn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(n=!1,_=Zt(ve(K(e,(xe(),Bw)))),G=rb*_,s=new S(e.b);s.aw+G&&(W=M.g+B.g,B.a=(B.g*B.a+M.g*M.a)/W,B.g=W,M.f=B,n=!0)),o=d,M=B;return n}function Wue(t,e,n,r,s,o,h){var d,w,k,_,M,B;for(B=new S6,k=e.Kc();k.Ob();)for(d=u(k.Pb(),839),M=new S(d.wf());M.a0?d.a?(k=d.b.rf().b,s>k&&(t.v||d.c.d.c.length==1?(h=(s-k)/2,d.d.d=h,d.d.a=h):(n=u(Pe(d.c.d,0),181).rf().b,r=(n-k)/2,d.d.d=b.Math.max(0,r),d.d.a=s-r-k))):d.d.a=t.t+s:T_(t.u)&&(o=k4t(d.b),o.d<0&&(d.d.d=-o.d),o.d+o.a>d.b.rf().b&&(d.d.a=o.d+o.a-d.b.rf().b))}function dmn(t,e){var n;switch(xD(t)){case 6:return ha(e);case 7:return Nm(e);case 8:return Om(e);case 3:return Array.isArray(e)&&(n=xD(e),!(n>=14&&n<=16));case 11:return e!=null&&typeof e===Fat;case 12:return e!=null&&(typeof e===_I||typeof e==Fat);case 0:return sst(e,t.__elementTypeId$);case 2:return Hnt(e)&&e.im!==Ft;case 1:return Hnt(e)&&e.im!==Ft||sst(e,t.__elementTypeId$);default:return!0}}function Kue(t,e){var n,r,s,o;return r=b.Math.min(b.Math.abs(t.c-(e.c+e.b)),b.Math.abs(t.c+t.b-e.c)),o=b.Math.min(b.Math.abs(t.d-(e.d+e.a)),b.Math.abs(t.d+t.a-e.d)),n=b.Math.abs(t.c+t.b/2-(e.c+e.b/2)),n>t.b/2+e.b/2||(s=b.Math.abs(t.d+t.a/2-(e.d+e.a/2)),s>t.a/2+e.a/2)?1:n==0&&s==0?0:n==0?o/s+1:s==0?r/n+1:b.Math.min(r/n,o/s)+1}function Yue(t,e){var n,r,s,o,h,d;return s=Hmt(t),d=Hmt(e),s==d?t.e==e.e&&t.a<54&&e.a<54?t.fe.f?1:0:(r=t.e-e.e,n=(t.d>0?t.d:b.Math.floor((t.a-1)*afe)+1)-(e.d>0?e.d:b.Math.floor((e.a-1)*afe)+1),n>r+1?s:n0&&(h=t4(h,vle(r))),Sie(o,h))):s0&&t.d!=(j_(),Xut)&&(d+=h*(r.d.a+t.a[e.b][r.b]*(e.d.a-r.d.a)/n)),n>0&&t.d!=(j_(),Kut)&&(w+=h*(r.d.b+t.a[e.b][r.b]*(e.d.b-r.d.b)/n)));switch(t.d.g){case 1:return new Re(d/o,e.d.b);case 2:return new Re(e.d.a,w/o);default:return new Re(d/o,w/o)}}function Xue(t,e){Q8();var n,r,s,o,h;if(h=u(K(t.i,(xe(),ws)),98),o=t.j.g-e.j.g,o!=0||!(h==(va(),U2)||h==h0||h==Kc))return 0;if(h==(va(),U2)&&(n=u(K(t,Qg),19),r=u(K(e,Qg),19),n&&r&&(s=n.a-r.a,s!=0)))return s;switch(t.j.g){case 1:return js(t.n.a,e.n.a);case 2:return js(t.n.b,e.n.b);case 3:return js(e.n.a,t.n.a);case 4:return js(e.n.b,t.n.b);default:throw nt(new Ho(dxt))}}function Que(t){var e,n,r,s,o,h;for(n=(!t.a&&(t.a=new Bs(Wh,t,5)),t.a).i+2,h=new Jc(n),ue(h,new Re(t.j,t.k)),ys(new kn(null,(!t.a&&(t.a=new Bs(Wh,t,5)),new Tn(t.a,16))),new G$t(h)),ue(h,new Re(t.b,t.c)),e=1;e0&&(PD(w,!1,(fo(),Hh)),PD(w,!0,_f)),_u(e.g,new qVt(t,n)),Ai(t.g,e,n)}function Jue(){Jue=X;var t;for(i7t=ut(ot(Sr,1),Jr,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),Cut=Nt(Sr,Jr,25,37,15,1),xge=ut(ot(Sr,1),Jr,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),s7t=Nt(Db,cot,25,37,14,1),t=2;t<=36;t++)Cut[t]=Cs(b.Math.pow(t,i7t[t])),s7t[t]=eI(Dq,Cut[t])}function pmn(t){var e;if((!t.a&&(t.a=new he(us,t,6,6)),t.a).i!=1)throw nt(new Pn(cde+(!t.a&&(t.a=new he(us,t,6,6)),t.a).i));return e=new ju,OD(u(At((!t.b&&(t.b=new En(vr,t,4,7)),t.b),0),82))&&Ka(e,Phe(t,OD(u(At((!t.b&&(t.b=new En(vr,t,4,7)),t.b),0),82)),!1)),OD(u(At((!t.c&&(t.c=new En(vr,t,5,8)),t.c),0),82))&&Ka(e,Phe(t,OD(u(At((!t.c&&(t.c=new En(vr,t,5,8)),t.c),0),82)),!0)),e}function tle(t,e){var n,r,s,o,h;for(e.d?s=t.a.c==(gd(),Rw)?Uo(e.b):$s(e.b):s=t.a.c==(gd(),Zg)?Uo(e.b):$s(e.b),o=!1,r=new ar(lr(s.a.Kc(),new H));Vr(r);)if(n=u(Ir(r),17),h=Be(t.a.f[t.a.g[e.b.p].p]),!(!h&&!Wa(n)&&n.c.i.c==n.d.i.c)&&!(Be(t.a.n[t.a.g[e.b.p].p])||Be(t.a.n[t.a.g[e.b.p].p]))&&(o=!0,S0(t.b,t.a.g[_fn(n,e.b).p])))return e.c=!0,e.a=n,e;return e.c=o,e.a=null,e}function bmn(t,e,n,r,s){var o,h,d,w,k,_,M;for(pn(),aa(t,new zZ),d=new xa(t,0),M=new le,o=0;d.bo*2?(_=new U$(M),k=Hu(h)/Ll(h),w=Iat(_,e,new v6,n,r,s,k),Fi(Kf(_.e),w),M.c=Nt(Qn,Me,1,0,5,1),o=0,M.c[M.c.length]=_,M.c[M.c.length]=h,o=Hu(_)*Ll(_)+Hu(h)*Ll(h)):(M.c[M.c.length]=h,o+=Hu(h)*Ll(h));return M}function Y5t(t,e,n){var r,s,o,h,d,w,k;if(r=n.gc(),r==0)return!1;if(t.ej())if(w=t.fj(),l3t(t,e,n),h=r==1?t.Zi(3,null,n.Kc().Pb(),e,w):t.Zi(5,null,n,e,w),t.bj()){for(d=r<100?null:new Lp(r),o=e+r,s=e;s0){for(h=0;h>16==-15&&t.Cb.nh()&&Krt(new Vrt(t.Cb,9,13,n,t.c,$g(fl(u(t.Cb,59)),t))):_t(t.Cb,88)&&t.Db>>16==-23&&t.Cb.nh()&&(e=t.c,_t(e,88)||(e=(ln(),Qh)),_t(n,88)||(n=(ln(),Qh)),Krt(new Vrt(t.Cb,9,10,n,e,$g(Oc(u(t.Cb,26)),t)))))),t.c}function vmn(t,e){var n,r,s,o,h,d,w,k,_,M;for(mr(e,"Hypernodes processing",1),s=new S(t.b);s.an);return s}function nle(t,e){var n,r,s;r=pl(t.d,1)!=0,!Be(Fe(K(e.j,(ae(),Mw))))&&!Be(Fe(K(e.j,Y4)))||Gt(K(e.j,(xe(),pb)))===Gt((j0(),bb))?e.c.Tf(e.e,r):r=Be(Fe(K(e.j,Mw))),pI(t,e,r,!0),Be(Fe(K(e.j,Y4)))&&ee(e.j,Y4,(Fn(),!1)),Be(Fe(K(e.j,Mw)))&&(ee(e.j,Mw,(Fn(),!1)),ee(e.j,Y4,!0)),n=$st(t,e);do{if(eyt(t),n==0)return 0;r=!r,s=n,pI(t,e,r,!1),n=$st(t,e)}while(s>n);return s}function rle(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G;if(e==n)return!0;if(e=s5t(t,e),n=s5t(t,n),r=fst(e),r){if(_=fst(n),_!=r)return _?(w=r.Dj(),G=_.Dj(),w==G&&w!=null):!1;if(h=(!e.d&&(e.d=new Bs(wo,e,1)),e.d),o=h.i,B=(!n.d&&(n.d=new Bs(wo,n,1)),n.d),o==B.i){for(k=0;k0,d=Cz(e,o),C2t(n?d.b:d.g,e),c4(d).c.length==1&&ks(r,d,r.c.b,r.c),s=new ya(o,e),Vp(t.o,s),Eu(t.e.a,o))}function ole(t,e){var n,r,s,o,h,d,w;return r=b.Math.abs(Vj(t.b).a-Vj(e.b).a),d=b.Math.abs(Vj(t.b).b-Vj(e.b).b),s=0,w=0,n=1,h=1,r>t.b.b/2+e.b.b/2&&(s=b.Math.min(b.Math.abs(t.b.c-(e.b.c+e.b.b)),b.Math.abs(t.b.c+t.b.b-e.b.c)),n=1-s/r),d>t.b.a/2+e.b.a/2&&(w=b.Math.min(b.Math.abs(t.b.d-(e.b.d+e.b.a)),b.Math.abs(t.b.d+t.b.a-e.b.d)),h=1-w/d),o=b.Math.min(n,h),(1-o)*b.Math.sqrt(r*r+d*d)}function Emn(t){var e,n,r,s;for(Dat(t,t.e,t.f,(qv(),wb),!0,t.c,t.i),Dat(t,t.e,t.f,wb,!1,t.c,t.i),Dat(t,t.e,t.f,n5,!0,t.c,t.i),Dat(t,t.e,t.f,n5,!1,t.c,t.i),_mn(t,t.c,t.e,t.f,t.i),r=new xa(t.i,0);r.b=65;n--)Y1[n]=n-65<<24>>24;for(r=122;r>=97;r--)Y1[r]=r-97+26<<24>>24;for(s=57;s>=48;s--)Y1[s]=s-48+52<<24>>24;for(Y1[43]=62,Y1[47]=63,o=0;o<=25;o++)op[o]=65+o&Ms;for(h=26,w=0;h<=51;++h,w++)op[h]=97+w&Ms;for(t=52,d=0;t<=61;++t,d++)op[t]=48+d&Ms;op[62]=43,op[63]=47}function Tmn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q;if(t.dc())return new Da;for(k=0,M=0,s=t.Kc();s.Ob();)r=u(s.Pb(),37),o=r.f,k=b.Math.max(k,o.a),M+=o.a*o.b;for(k=b.Math.max(k,b.Math.sqrt(M)*Zt(ve(K(u(t.Kc().Pb(),37),(xe(),UV))))),B=0,q=0,w=0,n=e,d=t.Kc();d.Ob();)h=u(d.Pb(),37),_=h.f,B+_.a>k&&(B=0,q+=w+e,w=0),wC(h,B,q),n=b.Math.max(n,B+_.a),w=b.Math.max(w,_.b),B+=_.a+e;return new Re(n+e,q+w+e)}function _mn(t,e,n,r,s){var o,h,d,w,k,_,M;for(h=new S(e);h.ao)return be(),Hn;break;case 4:case 3:if(w<0)return be(),On;if(w+t.f>s)return be(),yr}return h=(d+t.g/2)/o,n=(w+t.f/2)/s,h+n<=1&&h-n<=0?(be(),Bn):h+n>=1&&h-n>=0?(be(),Hn):n<.5?(be(),On):(be(),yr)}function Cmn(t,e,n,r,s){var o,h;if(o=Ra(Gs(e[0],po),Gs(r[0],po)),t[0]=Mr(o),o=Rp(o,32),n>=s){for(h=1;h0&&(s.b[h++]=0,s.b[h++]=o.b[0]-1),e=1;e0&&(nM(w,w.d-s.d),s.c==(Yf(),vb)&&apt(w,w.a-s.d),w.d<=0&&w.i>0&&ks(e,w,e.c.b,e.c)));for(o=new S(t.f);o.a0&&(xT(d,d.i-s.d),s.c==(Yf(),vb)&&gv(d,d.b-s.d),d.i<=0&&d.d>0&&ks(n,d,n.c.b,n.c)))}function Smn(t,e,n){var r,s,o,h,d,w,k,_;for(mr(n,"Processor compute fanout",1),nl(t.b),nl(t.a),d=null,o=si(e.b,0);!d&&o.b!=o.d.c;)k=u(ii(o),86),Be(Fe(K(k,(mc(),Wy))))&&(d=k);for(w=new cs,ks(w,d,w.c.b,w.c),whe(t,w),_=si(e.b,0);_.b!=_.d.c;)k=u(ii(_),86),h=jr(K(k,(mc(),RS))),s=jc(t.b,h)!=null?u(jc(t.b,h),19).a:0,ee(k,mG,de(s)),r=1+(jc(t.a,h)!=null?u(jc(t.a,h),19).a:0),ee(k,Xme,de(r));or(n)}function Amn(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G;for(B=hdn(t,n),w=0;w0),r.a.Xb(r.c=--r.b),M>B+w&&Dl(r);for(h=new S(q);h.a0),r.a.Xb(r.c=--r.b)}}function Lmn(){yi();var t,e,n,r,s,o;if(Pft)return Pft;for(t=new jl(4),vy(t,nb(dut,!0)),CC(t,nb("M",!0)),CC(t,nb("C",!0)),o=new jl(4),r=0;r<11;r++)qc(o,r,r);return e=new jl(4),vy(e,nb("M",!0)),qc(e,4448,4607),qc(e,65438,65439),s=new l_(2),x2(s,t),x2(s,fA),n=new l_(2),n.$l(Bj(o,nb("L",!0))),n.$l(e),n=new Wm(3,n),n=new uwt(s,n),Pft=n,Pft}function Mmn(t){var e,n;if(e=jr(ze(t,(di(),GS))),!Ene(e,t)&&!s2(t,EE)&&((!t.a&&(t.a=new he(ds,t,10,11)),t.a).i!=0||Be(Fe(ze(t,WO)))))if(e==null||uy(e).length==0){if(!Ene(Un,t))throw n=Yr(Yr(new Fl("Unable to load default layout algorithm "),Un)," for unconfigured node "),_q(t,n),nt(new B3(n.a))}else throw n=Yr(Yr(new Fl("Layout algorithm '"),e),"' not found for "),_q(t,n),nt(new B3(n.a))}function gat(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;if(n=t.i,e=t.n,t.b==0)for(q=n.c+e.b,B=n.b-e.b-e.c,h=t.a,w=0,_=h.length;w<_;++w)s=h[w],jj(s,q,B);else r=sse(t,!1),jj(t.a[0],n.c+e.b,r[0]),jj(t.a[2],n.c+n.b-e.c-r[2],r[2]),M=n.b-e.b-e.c,r[0]>0&&(M-=r[0]+t.c,r[0]+=t.c),r[2]>0&&(M-=r[2]+t.c),r[1]=b.Math.max(r[1],M),jj(t.a[1],n.c+e.b+r[0]-(r[1]-M)/2,r[1]);for(o=t.a,d=0,k=o.length;d0?(t.n.c.length-1)*t.i:0,r=new S(t.n);r.a1)for(r=si(s,0);r.b!=r.d.c;)for(n=u(ii(r),231),o=0,w=new S(n.e);w.a0&&(e[0]+=t.c,M-=e[0]),e[2]>0&&(M-=e[2]+t.c),e[1]=b.Math.max(e[1],M),$j(t.a[1],r.d+n.d+e[0]-(e[1]-M)/2,e[1]);else for(G=r.d+n.d,q=r.a-n.d-n.a,h=t.a,w=0,_=h.length;w<_;++w)s=h[w],$j(s,G,q);for(o=t.a,d=0,k=o.length;d=0&&o!=n))throw nt(new Pn(XI));for(s=0,w=0;w0||rw(s.b.d,t.b.d+t.b.a)==0&&r.b<0||rw(s.b.d+s.b.a,t.b.d)==0&&r.b>0){d=0;break}}else d=b.Math.min(d,hoe(t,s,r));d=b.Math.min(d,hle(t,o,d,r))}return d}function yI(t,e){var n,r,s,o,h,d,w;if(t.b<2)throw nt(new Pn("The vector chain must contain at least a source and a target point."));for(s=(Zn(t.b!=0),u(t.a.a.c,8)),oj(e,s.a,s.b),w=new A6((!e.a&&(e.a=new Bs(Wh,e,5)),e.a)),h=si(t,1);h.aZt(T1(h.g,h.d[0]).a)?(Zn(w.b>0),w.a.Xb(w.c=--w.b),Rm(w,h),s=!0):d.e&&d.e.gc()>0&&(o=(!d.e&&(d.e=new le),d.e).Mc(e),k=(!d.e&&(d.e=new le),d.e).Mc(n),(o||k)&&((!d.e&&(d.e=new le),d.e).Fc(h),++h.c));s||(r.c[r.c.length]=h)}function gle(t){var e,n,r;if(V3(u(K(t,(xe(),ws)),98)))for(n=new S(t.j);n.a>>0,"0"+e.toString(16)),r="\\x"+Bl(n,n.length-2,n.length)):t>=Qa?(n=(e=t>>>0,"0"+e.toString(16)),r="\\v"+Bl(n,n.length-6,n.length)):r=""+String.fromCharCode(t&Ms)}return r}function bat(t,e){var n,r,s,o,h,d,w,k,_,M;if(h=t.e,w=e.e,w==0)return t;if(h==0)return e.e==0?e:new Y3(-e.e,e.d,e.a);if(o=t.d,d=e.d,o+d==2)return n=Gs(t.a[0],po),r=Gs(e.a[0],po),h<0&&(n=D8(n)),w<0&&(r=D8(r)),KD(Qp(n,r));if(s=o!=d?o>d?1:-1:Iyt(t.a,e.a,o),s==-1)M=-w,_=h==w?Rrt(e.a,d,t.a,o):$rt(e.a,d,t.a,o);else if(M=h,h==w){if(s==0)return eb(),Y7;_=Rrt(t.a,o,e.a,d)}else _=$rt(t.a,o,e.a,d);return k=new Y3(M,_.length,_),O_(k),k}function n6t(t){var e,n,r,s,o,h;for(this.e=new le,this.a=new le,n=t.b-1;n<3;n++)u8(t,0,u(e1(t,0),8));if(t.b<4)throw nt(new Pn("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,kbn(this,t.b+this.b-1),h=new le,o=new S(this.e),e=0;e=e.o&&n.f<=e.f||e.a*.5<=n.f&&e.a*1.5>=n.f){if(h=u(Pe(e.n,e.n.c.length-1),211),h.e+h.d+n.g+s<=r&&(o=u(Pe(e.n,e.n.c.length-1),211),o.f-t.f+n.f<=t.b||t.a.c.length==1))return e3t(e,n),!0;if(e.s+n.g<=r&&(e.t+e.d+n.f+s<=t.b||t.a.c.length==1))return ue(e.b,n),d=u(Pe(e.n,e.n.c.length-1),211),ue(e.n,new f$(e.s,d.f+d.a+e.i,e.i)),B3t(u(Pe(e.n,e.n.c.length-1),211),n),cle(e,n),!0}return!1}function ble(t,e,n){var r,s,o,h;return t.ej()?(s=null,o=t.fj(),r=t.Zi(1,h=Xrt(t,e,n),n,e,o),t.bj()&&!(t.ni()&&h!=null?Si(h,n):Gt(h)===Gt(n))?(h!=null&&(s=t.dj(h,s)),s=t.cj(n,s),t.ij()&&(s=t.lj(h,n,s)),s?(s.Ei(r),s.Fi()):t.$i(r)):(t.ij()&&(s=t.lj(h,n,s)),s?(s.Ei(r),s.Fi()):t.$i(r)),h):(h=Xrt(t,e,n),t.bj()&&!(t.ni()&&h!=null?Si(h,n):Gt(h)===Gt(n))&&(s=null,h!=null&&(s=t.dj(h,null)),s=t.cj(n,s),s&&s.Fi()),h)}function yC(t,e){var n,r,s,o,h,d,w,k;e%=24,t.q.getHours()!=e&&(r=new b.Date(t.q.getTime()),r.setDate(r.getDate()+1),d=t.q.getTimezoneOffset()-r.getTimezoneOffset(),d>0&&(w=d/60|0,k=d%60,s=t.q.getDate(),n=t.q.getHours(),n+w>=24&&++s,o=new b.Date(t.q.getFullYear(),t.q.getMonth(),s,e+w,t.q.getMinutes()+k,t.q.getSeconds(),t.q.getMilliseconds()),t.q.setTime(o.getTime()))),h=t.q.getTime(),t.q.setTime(h+36e5),t.q.getHours()!=e&&t.q.setTime(h)}function jmn(t,e){var n,r,s,o,h;if(mr(e,"Path-Like Graph Wrapping",1),t.b.c.length==0){or(e);return}if(s=new u5t(t),h=(s.i==null&&(s.i=nyt(s,new OF)),Zt(s.i)*s.f),n=h/(s.i==null&&(s.i=nyt(s,new OF)),Zt(s.i)),s.b>n){or(e);return}switch(u(K(t,(xe(),sht)),337).g){case 2:o=new PF;break;case 0:o=new IF;break;default:o=new FF}if(r=o.Vf(t,s),!o.Wf())switch(u(K(t,aG),338).g){case 2:r=foe(s,r);break;case 1:r=hae(s,r)}Fyn(t,s,r),or(e)}function $mn(t,e){var n,r,s,o;if(Trn(t.d,t.e),t.c.a.$b(),Zt(ve(K(e.j,(xe(),YV))))!=0||Zt(ve(K(e.j,YV)))!=0)for(n=N7,Gt(K(e.j,pb))!==Gt((j0(),bb))&&ee(e.j,(ae(),Mw),(Fn(),!0)),o=u(K(e.j,SS),19).a,s=0;ss&&++k,ue(h,(Sn(d+k,e.c.length),u(e.c[d+k],19))),w+=(Sn(d+k,e.c.length),u(e.c[d+k],19)).a-r,++n;n1&&(w>Hu(d)*Ll(d)/2||h.b==0)&&(M=new U$(B),_=Hu(d)/Ll(d),k=Iat(M,e,new v6,n,r,s,_),Fi(Kf(M.e),k),d=M,q.c[q.c.length]=M,w=0,B.c=Nt(Qn,Me,1,0,5,1)));return Rs(q,B),q}function Hmn(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W;if(n.mh(e)&&(_=(q=e,q?u(r,49).xh(q):null),_))if(W=n.bh(e,t.a),G=e.t,G>1||G==-1)if(M=u(W,69),B=u(_,69),M.dc())B.$b();else for(h=!!oo(e),o=0,d=t.a?M.Kc():M.Zh();d.Ob();)k=u(d.Pb(),56),s=u(Wv(t,k),56),s?(h?(w=B.Xc(s),w==-1?B.Xh(o,s):o!=w&&B.ji(o,s)):B.Xh(o,s),++o):t.b&&!h&&(B.Xh(o,k),++o);else W==null?_.Wb(null):(s=Wv(t,W),s==null?t.b&&!oo(e)&&_.Wb(W):_.Wb(s))}function Vmn(t,e){var n,r,s,o,h,d,w,k;for(n=new SY,s=new ar(lr(Uo(e).a.Kc(),new H));Vr(s);)if(r=u(Ir(s),17),!Wa(r)&&(d=r.c.i,m4t(d,uV))){if(k=N5t(t,d,uV,cV),k==-1)continue;n.b=b.Math.max(n.b,k),!n.a&&(n.a=new le),ue(n.a,d)}for(h=new ar(lr($s(e).a.Kc(),new H));Vr(h);)if(o=u(Ir(h),17),!Wa(o)&&(w=o.d.i,m4t(w,cV))){if(k=N5t(t,w,cV,uV),k==-1)continue;n.d=b.Math.max(n.d,k),!n.c&&(n.c=new le),ue(n.c,w)}return n}function vle(t){g7();var e,n,r,s;if(e=Cs(t),t1e6)throw nt(new pR("power of ten too big"));if(t<=Ti)return H6(hI(Ex[1],e),e);for(r=hI(Ex[1],Ti),s=r,n=Au(t-Ti),e=Cs(t%Ti);_c(n,Ti)>0;)s=t4(s,r),n=Qp(n,Ti);for(s=t4(s,hI(Ex[1],e)),s=H6(s,Ti),n=Au(t-Ti);_c(n,Ti)>0;)s=H6(s,Ti),n=Qp(n,Ti);return s=H6(s,e),s}function Gmn(t,e){var n,r,s,o,h,d,w,k,_;for(mr(e,"Hierarchical port dummy size processing",1),w=new le,_=new le,r=Zt(ve(K(t,(xe(),Z4)))),n=r*2,o=new S(t.b);o.ak&&r>k)_=d,k=Zt(e.p[d.p])+Zt(e.d[d.p])+d.o.b+d.d.a;else{s=!1,n.n&&Qb(n,"bk node placement breaks on "+d+" which should have been after "+_);break}if(!s)break}return n.n&&Qb(n,e+" is feasible: "+s),s}function Xmn(t,e,n,r){var s,o,h,d,w,k,_;for(d=-1,_=new S(t);_.a<_.c.c.length;)k=u(Q(_),112),k.g=d--,s=Mr(m$(t$(Wi(new kn(null,new Tn(k.f,16)),new DQ),new IQ)).d),o=Mr(m$(t$(Wi(new kn(null,new Tn(k.k,16)),new OQ),new Y5)).d),h=s,w=o,r||(h=Mr(m$(t$(new kn(null,new Tn(k.f,16)),new NQ)).d),w=Mr(m$(t$(new kn(null,new Tn(k.k,16)),new PQ)).d)),k.d=h,k.a=s,k.i=w,k.b=o,w==0?ks(n,k,n.c.b,n.c):h==0&&ks(e,k,e.c.b,e.c)}function Qmn(t,e,n,r){var s,o,h,d,w,k,_;if(n.d.i!=e.i){for(s=new H0(t),C0(s,(Gn(),ca)),ee(s,(ae(),Ii),n),ee(s,(xe(),ws),(va(),Kc)),r.c[r.c.length]=s,h=new Nc,tc(h,s),Us(h,(be(),Bn)),d=new Nc,tc(d,s),Us(d,Hn),_=n.d,pa(n,h),o=new zv,Bo(o,n),ee(o,Oo,null),Ba(o,d),pa(o,_),k=new xa(n.b,0);k.b=Z&&t.e[w.p]>G*t.b||St>=n*Z)&&(B.c[B.c.length]=d,d=new le,Ka(h,o),o.a.$b(),k-=_,q=b.Math.max(q,k*t.b+W),k+=St,Mt=St,St=0,_=0,W=0);return new ya(q,B)}function tyn(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;for(n=(k=new m1(t.c.b).a.vc().Kc(),new y1(k));n.a.Ob();)e=(d=u(n.a.Pb(),42),u(d.dd(),149)),s=e.a,s==null&&(s=""),r=CQe(t.c,s),!r&&s.length==0&&(r=Sun(t)),r&&!ry(r.c,e,!1)&&ai(r.c,e);for(h=si(t.a,0);h.b!=h.d.c;)o=u(ii(h),478),_=Nrt(t.c,o.a),q=Nrt(t.c,o.b),_&&q&&ai(_.c,new ya(q,o.c));for(Mh(t.a),B=si(t.b,0);B.b!=B.d.c;)M=u(ii(B),478),e=_Qe(t.c,M.a),w=Nrt(t.c,M.b),e&&w&&pYe(e,w,M.c);Mh(t.b)}function eyn(t,e,n){var r,s,o,h,d,w,k,_,M,B,q;o=new zk(t),h=new Bse,s=(cD(h.g),cD(h.j),nl(h.b),cD(h.d),cD(h.i),nl(h.k),nl(h.c),nl(h.e),q=yoe(h,o,null),uce(h,o),q),e&&(k=new zk(e),d=hyn(k),D4t(s,ut(ot(pSt,1),Me,527,0,[d]))),B=!1,M=!1,n&&(k=new zk(n),xH in k.a&&(B=I0(k,xH).ge().a),Ide in k.a&&(M=I0(k,Ide).ge().a)),_=eHt(Mee(new Wk,B),M),K0n(new bZ,s,_),xH in o.a&&Qf(o,xH,null),(B||M)&&(w=new w6,dle(_,w,B,M),Qf(o,xH,w)),r=new czt(h),qcn(new t2t(s),r)}function nyn(t,e,n){var r,s,o,h,d,w,k,_,M;for(h=new qse,k=ut(ot(Sr,1),Jr,25,15,[0]),s=-1,o=0,r=0,w=0;w0){if(s<0&&_.a&&(s=w,o=k[0],r=0),s>=0){if(d=_.b,w==s&&(d-=r++,d==0))return 0;if(!yhe(e,k,_,d,h)){w=s-1,k[0]=o;continue}}else if(s=-1,!yhe(e,k,_,0,h))return 0}else{if(s=-1,Ta(_.c,0)==32){if(M=k[0],zte(e,k),k[0]>M)continue}else if(Fnn(e,_.c,k[0])){k[0]+=_.c.length;continue}return 0}return F4n(h,n)?k[0]:0}function kC(t){var e,n,r,s,o,h,d,w;if(!t.f){if(w=new _0,d=new _0,e=aA,h=e.a.zc(t,e),h==null){for(o=new nr(Po(t));o.e!=o.i.gc();)s=u(dr(o),26),gs(w,kC(s));e.a.Bc(t)!=null,e.a.gc()==0}for(r=(!t.s&&(t.s=new he(Nu,t,21,17)),new nr(t.s));r.e!=r.i.gc();)n=u(dr(r),170),_t(n,99)&&Or(d,u(n,18));ey(d),t.r=new OKt(t,(u(At(Kt((zp(),An).o),6),18),d.i),d.g),gs(w,t.r),ey(w),t.f=new H3((u(At(Kt(An.o),5),18),w.i),w.g),hl(t).b&=-3}return t.f}function ryn(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G;for(h=t.o,r=Nt(Sr,Jr,25,h,15,1),s=Nt(Sr,Jr,25,h,15,1),n=t.p,e=Nt(Sr,Jr,25,n,15,1),o=Nt(Sr,Jr,25,n,15,1),k=0;k=0&&!h4(t,_,M);)--M;s[_]=M}for(q=0;q=0&&!h4(t,d,G);)--d;o[G]=d}for(w=0;we[B]&&Br[w]&&bq(t,w,B,!1,!0)}function r6t(t){var e,n,r,s,o,h,d,w;n=Be(Fe(K(t,(n1(),Ype)))),o=t.a.c.d,d=t.a.d.d,n?(h=ld(fa(new Re(d.a,d.b),o),.5),w=ld(uc(t.e),.5),e=fa(Fi(new Re(o.a,o.b),h),w),O2t(t.d,e)):(s=Zt(ve(K(t.a,rbe))),r=t.d,o.a>=d.a?o.b>=d.b?(r.a=d.a+(o.a-d.a)/2+s,r.b=d.b+(o.b-d.b)/2-s-t.e.b):(r.a=d.a+(o.a-d.a)/2+s,r.b=o.b+(d.b-o.b)/2+s):o.b>=d.b?(r.a=o.a+(d.a-o.a)/2+s,r.b=d.b+(o.b-d.b)/2+s):(r.a=o.a+(d.a-o.a)/2+s,r.b=o.b+(d.b-o.b)/2-s-t.e.b))}function Hc(t,e){var n,r,s,o,h,d,w;if(t==null)return null;if(o=t.length,o==0)return"";for(w=Nt(Eh,wd,25,o,15,1),mmt(0,o,t.length),mmt(0,o,w.length),jYt(t,0,o,w,0),n=null,d=e,s=0,h=0;s0?Bl(n.a,0,o-1):""):t.substr(0,o-1):n?n.a:t}function yle(t){Sv(t,new y2(Ev(yv(kv(xv(new mg,C2),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new me))),we(t,C2,Mot,Ie(sEt)),we(t,C2,Dot,Ie(qut)),we(t,C2,px,Ie(Npe)),we(t,C2,ww,Ie(iEt)),we(t,C2,q6t,Ie(Rpe)),we(t,C2,H6t,Ie(Bpe)),we(t,C2,z6t,Ie(jpe)),we(t,C2,V6t,Ie(Fpe)),we(t,C2,Q6t,Ie(Ppe)),we(t,C2,Z6t,Ie(zut)),we(t,C2,J6t,Ie(rEt)),we(t,C2,txt,Ie(eV))}function i6t(t,e,n,r){var s,o,h,d,w,k,_,M,B;if(o=new H0(t),C0(o,(Gn(),Uc)),ee(o,(xe(),ws),(va(),Kc)),s=0,e){for(h=new Nc,ee(h,(ae(),Ii),e),ee(o,Ii,e.i),Us(h,(be(),Bn)),tc(h,o),B=pd(e.e),k=B,_=0,M=k.length;_0)if(n-=r.length-e,n>=0){for(s.a+="0.";n>N2.length;n-=N2.length)ZKt(s,N2);NWt(s,N2,Cs(n)),Yr(s,r.substr(e))}else n=e-n,Yr(s,Bl(r,e,Cs(n))),s.a+=".",Yr(s,OM(r,Cs(n)));else{for(Yr(s,r.substr(e));n<-N2.length;n+=N2.length)ZKt(s,N2);NWt(s,N2,Cs(-n))}return s.a}function s6t(t,e,n,r){var s,o,h,d,w,k,_,M,B;return w=fa(new Re(n.a,n.b),t),k=w.a*e.b-w.b*e.a,_=e.a*r.b-e.b*r.a,M=(w.a*r.b-w.b*r.a)/_,B=k/_,_==0?k==0?(s=Fi(new Re(n.a,n.b),ld(new Re(r.a,r.b),.5)),o=Gp(t,s),h=Gp(Fi(new Re(t.a,t.b),e),s),d=b.Math.sqrt(r.a*r.a+r.b*r.b)*.5,o=0&&M<=1&&B>=0&&B<=1?Fi(new Re(t.a,t.b),ld(new Re(e.a,e.b),M)):null}function syn(t,e,n){var r,s,o,h,d;if(r=u(K(t,(xe(),Glt)),21),n.a>e.a&&(r.Hc((cy(),qO))?t.c.a+=(n.a-e.a)/2:r.Hc(HO)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((cy(),GO))?t.c.b+=(n.b-e.b)/2:r.Hc(VO)&&(t.c.b+=n.b-e.b)),u(K(t,(ae(),Wc)),21).Hc((go(),yh))&&(n.a>e.a||n.b>e.b))for(d=new S(t.a);d.ae.a&&(r.Hc((cy(),qO))?t.c.a+=(n.a-e.a)/2:r.Hc(HO)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((cy(),GO))?t.c.b+=(n.b-e.b)/2:r.Hc(VO)&&(t.c.b+=n.b-e.b)),u(K(t,(ae(),Wc)),21).Hc((go(),yh))&&(n.a>e.a||n.b>e.b))for(h=new S(t.a);h.ae&&(s=0,o+=_.b+n,M.c[M.c.length]=_,_=new qwt(o,n),r=new Eit(0,_.f,_,n),Y$(_,r),s=0),r.b.c.length==0||w.f>=r.o&&w.f<=r.f||r.a*.5<=w.f&&r.a*1.5>=w.f?e3t(r,w):(h=new Eit(r.s+r.r+n,_.f,_,n),Y$(_,h),e3t(h,w)),s=w.i+w.g;return M.c[M.c.length]=_,M}function E4(t){var e,n,r,s,o,h,d,w;if(!t.a){if(t.o=null,w=new Azt(t),e=new xp,n=aA,d=n.a.zc(t,n),d==null){for(h=new nr(Po(t));h.e!=h.i.gc();)o=u(dr(h),26),gs(w,E4(o));n.a.Bc(t)!=null,n.a.gc()==0}for(s=(!t.s&&(t.s=new he(Nu,t,21,17)),new nr(t.s));s.e!=s.i.gc();)r=u(dr(s),170),_t(r,322)&&Or(e,u(r,34));ey(e),t.k=new IKt(t,(u(At(Kt((zp(),An).o),7),18),e.i),e.g),gs(w,t.k),ey(w),t.a=new H3((u(At(Kt(An.o),4),18),w.i),w.g),hl(t).b&=-2}return t.a}function uyn(t,e,n,r,s,o,h){var d,w,k,_,M,B;return M=!1,w=Ace(n.q,e.f+e.b-n.q.f),B=s-(n.q.e+w-h),B=(Sn(o,t.c.length),u(t.c[o],200)).e,_=(d=EC(r,B,!1),d.a),_>e.b&&!k)?!1:((k||_<=e.b)&&(k&&_>e.b?(n.d=_,dD(n,Iae(n,_))):(Qse(n.q,w),n.c=!0),dD(r,s-(n.s+n.r)),YD(r,n.q.e+n.q.d,e.f),Y$(e,r),t.c.length>o&&(tI((Sn(o,t.c.length),u(t.c[o],200)),r),(Sn(o,t.c.length),u(t.c[o],200)).a.c.length==0&&Ig(t,o)),M=!0),M)}function a6t(t,e,n,r){var s,o,h,d,w,k,_;if(_=hu(t.e.Tg(),e),s=0,o=u(t.g,119),w=null,so(),u(e,66).Oj()){for(d=0;dt.o.a&&(_=(w-t.o.a)/2,d.b=b.Math.max(d.b,_),d.c=b.Math.max(d.c,_))}}function hyn(t){var e,n,r,s,o,h,d,w;for(o=new JQt,YYe(o,(X6(),C3e)),r=(s=hit(t,Nt(Le,re,2,0,6,1)),new h6(new Cl(new get(t,s).b)));r.b0?t.i:0)>e&&w>0&&(o=0,h+=w+t.i,s=b.Math.max(s,B),r+=w+t.i,w=0,B=0,n&&(++M,ue(t.n,new f$(t.s,h,t.i))),d=0),B+=k.g+(d>0?t.i:0),w=b.Math.max(w,k.f),n&&B3t(u(Pe(t.n,M),211),k),o+=k.g+(d>0?t.i:0),++d;return s=b.Math.max(s,B),r+=w,n&&(t.r=s,t.d=r,z3t(t.j)),new ch(t.s,t.t,s,r)}function Pc(t,e,n,r,s){qd();var o,h,d,w,k,_,M,B,q;if(awt(t,"src"),awt(n,"dest"),B=dl(t),w=dl(n),Lvt((B.i&4)!=0,"srcType is not an array"),Lvt((w.i&4)!=0,"destType is not an array"),M=B.c,h=w.c,Lvt(M.i&1?M==h:(h.i&1)==0,"Array types don't match"),q=t.length,k=n.length,e<0||r<0||s<0||e+s>q||r+s>k)throw nt(new xpt);if(!(M.i&1)&&B!=w)if(_=o2(t),o=o2(n),Gt(t)===Gt(n)&&er;)ls(o,d,_[--e]);else for(d=r+s;r0&&U4t(t,e,n,r,s,!0)}function yat(){yat=X,Ege=ut(ot(Sr,1),Jr,25,15,[Oa,1162261467,AC,1220703125,362797056,1977326743,AC,387420489,Nq,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,AC,1291467969,1544804416,1838265625,60466176]),Tge=ut(ot(Sr,1),Jr,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function fyn(t){var e,n,r,s,o,h,d,w;for(s=new S(t.b);s.a=t.b.length?(o[s++]=h.b[r++],o[s++]=h.b[r++]):r>=h.b.length?(o[s++]=t.b[n++],o[s++]=t.b[n++]):h.b[r]0?t.i:0)),++e;for(Tln(t.n,w),t.d=n,t.r=r,t.g=0,t.f=0,t.e=0,t.o=bs,t.p=bs,o=new S(t.b);o.a0&&(s=(!t.n&&(t.n=new he(Yo,t,1,7)),u(At(t.n,0),137)).a,!s||Yr(Yr((e.a+=' "',e),s),'"'))),n=(!t.b&&(t.b=new En(vr,t,4,7)),!(t.b.i<=1&&(!t.c&&(t.c=new En(vr,t,5,8)),t.c.i<=1))),n?e.a+=" [":e.a+=" ",Yr(e,b2t(new cet,new nr(t.b))),n&&(e.a+="]"),e.a+=Bot,n&&(e.a+="["),Yr(e,b2t(new cet,new nr(t.c))),n&&(e.a+="]"),e.a)}function xat(t,e){var n,r,s,o,h,d,w;if(t.a){if(d=t.a.ne(),w=null,d!=null?e.a+=""+d:(h=t.a.Dj(),h!=null&&(o=ud(h,Lu(91)),o!=-1?(w=h.substr(o),e.a+=""+Bl(h==null?Mu:(In(h),h),0,o)):e.a+=""+h)),t.d&&t.d.i!=0){for(s=!0,e.a+="<",r=new nr(t.d);r.e!=r.i.gc();)n=u(dr(r),87),s?s=!1:e.a+=Xa,xat(n,e);e.a+=">"}w!=null&&(e.a+=""+w)}else t.e?(d=t.e.zb,d!=null&&(e.a+=""+d)):(e.a+="?",t.b?(e.a+=" super ",xat(t.b,e)):t.f&&(e.a+=" extends ",xat(t.f,e)))}function pyn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn;for(Qt=t.c,ce=e.c,n=Go(Qt.a,t,0),r=Go(ce.a,e,0),St=u(iw(t,(ho(),al)).Kc().Pb(),11),Qe=u(iw(t,su).Kc().Pb(),11),jt=u(iw(e,al).Kc().Pb(),11),Rn=u(iw(e,su).Kc().Pb(),11),bt=pd(St.e),_e=pd(Qe.g),Mt=pd(jt.e),We=pd(Rn.g),oy(t,r,ce),h=Mt,_=0,G=h.length;__?new n2((Yf(),Uy),n,e,k-_):k>0&&_>0&&(new n2((Yf(),Uy),e,n,0),new n2(Uy,n,e,0))),h)}function Ele(t,e){var n,r,s,o,h,d;for(h=new d2(new kg(t.f.b).a);h.b;){if(o=Yv(h),s=u(o.cd(),594),e==1){if(s.gf()!=(fo(),Z0)&&s.gf()!=Q0)continue}else if(s.gf()!=(fo(),Hh)&&s.gf()!=_f)continue;switch(r=u(u(o.dd(),46).b,81),d=u(u(o.dd(),46).a,189),n=d.c,s.gf().g){case 2:r.g.c=t.e.a,r.g.b=b.Math.max(1,r.g.b+n);break;case 1:r.g.c=r.g.c+n,r.g.b=b.Math.max(1,r.g.b-n);break;case 4:r.g.d=t.e.b,r.g.a=b.Math.max(1,r.g.a+n);break;case 3:r.g.d=r.g.d+n,r.g.a=b.Math.max(1,r.g.a-n)}}}function byn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(d=Nt(Sr,Jr,25,e.b.c.length,15,1),k=Nt(rlt,oe,267,e.b.c.length,0,1),w=Nt(o0,Gg,10,e.b.c.length,0,1),M=t.a,B=0,q=M.length;B0&&w[r]&&(G=U3(t.b,w[r],s)),W=b.Math.max(W,s.c.c.b+G);for(o=new S(_.e);o.a1)throw nt(new Pn(eO));w||(o=Yd(e,r.Kc().Pb()),h.Fc(o))}return vyt(t,B4t(t,e,n),h)}function myn(t,e){var n,r,s,o;for(non(e.b.j),ys(xu(new kn(null,new Tn(e.d,16)),new zX),new qX),o=new S(e.d);o.at.o.b||(n=rc(t,Hn),d=e.d+e.a+(n.gc()-1)*h,d>t.o.b)))}function Tat(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;if(h=t.e,w=e.e,h==0)return e;if(w==0)return t;if(o=t.d,d=e.d,o+d==2)return n=Gs(t.a[0],po),r=Gs(e.a[0],po),h==w?(_=Ra(n,r),G=Mr(_),q=Mr(zm(_,32)),q==0?new Og(h,G):new Y3(h,2,ut(ot(Sr,1),Jr,25,15,[G,q]))):KD(h<0?Qp(r,n):Qp(n,r));if(h==w)B=h,M=o>=d?$rt(t.a,o,e.a,d):$rt(e.a,d,t.a,o);else{if(s=o!=d?o>d?1:-1:Iyt(t.a,e.a,o),s==0)return eb(),Y7;s==1?(B=h,M=Rrt(t.a,o,e.a,d)):(B=w,M=Rrt(e.a,d,t.a,o))}return k=new Y3(B,M.length,M),O_(k),k}function _at(t,e,n,r,s,o,h){var d,w,k,_,M,B,q;return M=Be(Fe(K(e,(xe(),t_t)))),B=null,o==(ho(),al)&&r.c.i==n?B=r.c:o==su&&r.d.i==n&&(B=r.d),k=h,!k||!M||B?(_=(be(),ac),B?_=B.j:V3(u(K(n,ws),98))&&(_=o==al?Bn:Hn),w=Eyn(t,e,n,o,_,r),d=Frt(($a(n),r)),o==al?(Ba(d,u(Pe(w.j,0),11)),pa(d,s)):(Ba(d,s),pa(d,u(Pe(w.j,0),11))),k=new qre(r,d,w,u(K(w,(ae(),Ii)),11),o,!B)):(ue(k.e,r),q=b.Math.max(Zt(ve(K(k.d,Xg))),Zt(ve(K(r,Xg)))),ee(k.d,Xg,q)),cn(t.a,r,new Tj(k.d,e,o)),k}function Eq(t,e){var n,r,s,o,h,d,w,k,_,M;if(_=null,t.d&&(_=u(jc(t.d,e),138)),!_){if(o=t.a.Mh(),M=o.i,!t.d||$T(t.d)!=M){for(w=new Ar,t.d&&G_(w,t.d),k=w.f.c+w.g.c,d=k;d0?(q=(G-1)*n,d&&(q+=r),_&&(q+=r),q=t.b[s+1])s+=2;else if(n0)for(r=new qu(u(Pi(t.a,o),21)),pn(),aa(r,new Ni(e)),s=new xa(o.b,0);s.bQt)?(w=2,h=Ti):w==0?(w=1,h=_e):(w=0,h=_e)):(q=_e>=h||h-_e0?1:Lv(isNaN(r),isNaN(0)))>=0^(vf(Td),(b.Math.abs(d)<=Td||d==0||isNaN(d)&&isNaN(0)?0:d<0?-1:d>0?1:Lv(isNaN(d),isNaN(0)))>=0)?b.Math.max(d,r):(vf(Td),(b.Math.abs(r)<=Td||r==0||isNaN(r)&&isNaN(0)?0:r<0?-1:r>0?1:Lv(isNaN(r),isNaN(0)))>0?b.Math.sqrt(d*d+r*r):-b.Math.sqrt(d*d+r*r))}function x2(t,e){var n,r,s,o,h,d;if(e){if(!t.a&&(t.a=new fR),t.e==2){hR(t.a,e);return}if(e.e==1){for(s=0;s=Qa?yo(n,t3t(r)):v8(n,r&Ms),h=new drt(10,null,0),len(t.a,h,d-1)):(n=(h.bm().length+o,new BT),yo(n,h.bm())),e.e==0?(r=e._l(),r>=Qa?yo(n,t3t(r)):v8(n,r&Ms)):yo(n,e.bm()),u(h,521).b=n.a}}function Dle(t){var e,n,r,s,o;return t.g!=null?t.g:t.a<32?(t.g=K4n(Au(t.f),Cs(t.e)),t.g):(s=Nat((!t.c&&(t.c=jD(t.f)),t.c),0),t.e==0?s:(e=(!t.c&&(t.c=jD(t.f)),t.c).e<0?2:1,n=s.length,r=-t.e+n-e,o=new Ap,o.a+=""+s,t.e>0&&r>=-6?r>=0?iD(o,n-Cs(t.e),String.fromCharCode(46)):(o.a=Bl(o.a,0,e-1)+"0."+OM(o.a,e-1),iD(o,e+1,Ih(N2,0,-Cs(r)-1))):(n-e>=1&&(iD(o,e,String.fromCharCode(46)),++n),iD(o,n,String.fromCharCode(69)),r>0&&iD(o,++n,String.fromCharCode(43)),iD(o,++n,""+E_(Au(r)))),t.g=o.a,t.g))}function Fyn(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!n.dc()){for(d=0,B=0,r=n.Kc(),G=u(r.Pb(),19).a;d1&&(w=k.mg(w,t.a,d));return w.c.length==1?u(Pe(w,w.c.length-1),220):w.c.length==2?_yn((Sn(0,w.c.length),u(w.c[0],220)),(Sn(1,w.c.length),u(w.c[1],220)),h,o):null}function Ile(t){var e,n,r,s,o,h;for(_u(t.a,new zb),n=new S(t.a);n.a=b.Math.abs(r.b)?(r.b=0,o.d+o.a>h.d&&o.dh.c&&o.c0){if(e=new Ubt(t.i,t.g),n=t.i,o=n<100?null:new Lp(n),t.ij())for(r=0;r0){for(d=t.g,k=t.i,R_(t),o=k<100?null:new Lp(k),r=0;r>13|(t.m&15)<<9,s=t.m>>4&8191,o=t.m>>17|(t.h&255)<<5,h=(t.h&1048320)>>8,d=e.l&8191,w=e.l>>13|(e.m&15)<<9,k=e.m>>4&8191,_=e.m>>17|(e.h&255)<<5,M=(e.h&1048320)>>8,We=n*d,Qe=r*d,Rn=s*d,zn=o*d,hr=h*d,w!=0&&(Qe+=n*w,Rn+=r*w,zn+=s*w,hr+=o*w),k!=0&&(Rn+=n*k,zn+=r*k,hr+=s*k),_!=0&&(zn+=n*_,hr+=r*_),M!=0&&(hr+=n*M),q=We&vl,G=(Qe&511)<<13,B=q+G,Z=We>>22,bt=Qe>>9,Mt=(Rn&262143)<<4,St=(zn&31)<<17,W=Z+bt+Mt+St,Qt=Rn>>18,ce=zn>>5,_e=(hr&4095)<<8,jt=Qt+ce+_e,W+=B>>22,B&=vl,jt+=W>>22,W&=vl,jt&=W0,cu(B,W,jt)}function Ole(t){var e,n,r,s,o,h,d;if(d=u(Pe(t.j,0),11),d.g.c.length!=0&&d.e.c.length!=0)throw nt(new Ho("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(d.g.c.length!=0){for(o=bs,n=new S(d.g);n.a4)if(t.wj(e)){if(t.rk()){if(s=u(e,49),r=s.Ug(),w=r==t.e&&(t.Dk()?s.Og(s.Vg(),t.zk())==t.Ak():-1-s.Vg()==t.aj()),t.Ek()&&!w&&!r&&s.Zg()){for(o=0;o0&&(k=t.n.a/o);break;case 2:case 4:s=t.i.o.b,s>0&&(k=t.n.b/s)}ee(t,(ae(),Iw),k)}if(w=t.o,h=t.a,r)h.a=r.a,h.b=r.b,t.d=!0;else if(e!=U1&&e!=kb&&d!=ac)switch(d.g){case 1:h.a=w.a/2;break;case 2:h.a=w.a,h.b=w.b/2;break;case 3:h.a=w.a/2,h.b=w.b;break;case 4:h.b=w.b/2}else h.a=w.a/2,h.b=w.b/2}function _C(t){var e,n,r,s,o,h,d,w,k,_;if(t.ej())if(_=t.Vi(),w=t.fj(),_>0)if(e=new iyt(t.Gi()),n=_,o=n<100?null:new Lp(n),jM(t,n,e.g),s=n==1?t.Zi(4,At(e,0),null,0,w):t.Zi(6,e,null,-1,w),t.bj()){for(r=new nr(e);r.e!=r.i.gc();)o=t.dj(dr(r),o);o?(o.Ei(s),o.Fi()):t.$i(s)}else o?(o.Ei(s),o.Fi()):t.$i(s);else jM(t,t.Vi(),t.Wi()),t.$i(t.Zi(6,(pn(),uo),null,-1,w));else if(t.bj())if(_=t.Vi(),_>0){for(d=t.Wi(),k=_,jM(t,_,d),o=k<100?null:new Lp(k),r=0;rt.d[h.p]&&(n+=nmt(t.b,o)*u(w.b,19).a,Vp(t.a,de(o)));for(;!NT(t.a);)Omt(t.b,u(P6(t.a),19).a)}return n}function Kyn(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;for(M=new So(u(ze(t,(eq(),ESt)),8)),M.a=b.Math.max(M.a-n.b-n.c,0),M.b=b.Math.max(M.b-n.d-n.a,0),s=ve(ze(t,ySt)),(s==null||(In(s),s<=0))&&(s=1.3),d=new le,G=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));G.e!=G.i.gc();)q=u(dr(G),33),h=new lWt(q),d.c[d.c.length]=h;switch(B=u(ze(t,eft),311),B.g){case 3:Z=bmn(d,e,M.a,M.b,(k=r,In(s),k));break;case 1:Z=qmn(d,e,M.a,M.b,(_=r,In(s),_));break;default:Z=Qyn(d,e,M.a,M.b,(w=r,In(s),w))}o=new U$(Z),W=Iat(o,e,n,M.a,M.b,r,(In(s),s)),gw(t,W.a,W.b,!1,!0)}function Yyn(t,e){var n,r,s,o;n=e.b,o=new qu(n.j),s=0,r=n.j,r.c=Nt(Qn,Me,1,0,5,1),Bv(u(u2(t.b,(be(),On),(Jv(),Aw)),15),n),s=QD(o,s,new MX,r),Bv(u(u2(t.b,On,db),15),n),s=QD(o,s,new z9,r),Bv(u(u2(t.b,On,Sw),15),n),Bv(u(u2(t.b,Hn,Aw),15),n),Bv(u(u2(t.b,Hn,db),15),n),s=QD(o,s,new EF,r),Bv(u(u2(t.b,Hn,Sw),15),n),Bv(u(u2(t.b,yr,Aw),15),n),s=QD(o,s,new TF,r),Bv(u(u2(t.b,yr,db),15),n),s=QD(o,s,new _F,r),Bv(u(u2(t.b,yr,Sw),15),n),Bv(u(u2(t.b,Bn,Aw),15),n),s=QD(o,s,new OX,r),Bv(u(u2(t.b,Bn,db),15),n),Bv(u(u2(t.b,Bn,Sw),15),n)}function Xyn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(mr(e,"Layer size calculation",1),_=bs,k=Ns,s=!1,d=new S(t.b);d.a.5?bt-=h*2*(G-.5):G<.5&&(bt+=o*2*(.5-G)),s=d.d.b,btZ.a-W-_&&(bt=Z.a-W-_),d.n.a=e+bt}}function Qyn(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z;for(d=Nt(ga,To,25,t.c.length,15,1),B=new Gj(new KF),G3t(B,t),k=0,W=new le;B.b.c.length!=0;)if(h=u(B.b.c.length==0?null:Pe(B.b,0),157),k>1&&Hu(h)*Ll(h)/2>d[0]){for(o=0;od[o];)++o;G=new Kd(W,0,o+1),M=new U$(G),_=Hu(h)/Ll(h),w=Iat(M,e,new v6,n,r,s,_),Fi(Kf(M.e),w),A8(h7(B,M)),q=new Kd(W,o+1,W.c.length),G3t(B,q),W.c=Nt(Qn,Me,1,0,5,1),k=0,uYt(d,d.length,0)}else Z=B.b.c.length==0?null:Pe(B.b,0),Z!=null&&uit(B,0),k>0&&(d[k]=d[k-1]),d[k]+=Hu(h)*Ll(h),++k,W.c[W.c.length]=h;return W}function Zyn(t){var e,n,r,s,o;if(r=u(K(t,(xe(),du)),163),r==(ph(),gb)){for(n=new ar(lr(Uo(t).a.Kc(),new H));Vr(n);)if(e=u(Ir(n),17),!yJt(e))throw nt(new B3($ot+ZD(t)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(r==Fy){for(o=new ar(lr($s(t).a.Kc(),new H));Vr(o);)if(s=u(Ir(o),17),!yJt(s))throw nt(new B3($ot+ZD(t)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function Jyn(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;for(mr(e,"Label dummy removal",1),r=Zt(ve(K(t,(xe(),Fx)))),s=Zt(ve(K(t,Vy))),k=u(K(t,Xl),103),w=new S(t.b);w.a0&&$ae(t,d,M);for(s=new S(M);s.a>19&&(e=W8(e),w=!w),h=Zbn(e),o=!1,s=!1,r=!1,t.h==DI&&t.m==0&&t.l==0)if(s=!0,o=!0,h==-1)t=eUt((I8(),Y8t)),r=!0,w=!w;else return d=c5t(t,h),w&&mit(d),n&&(ub=cu(0,0,0)),d;else t.h>>19&&(o=!0,t=W8(t),r=!0,w=!w);return h!=-1?jcn(t,h,w,o,n):J3t(t,e)<0?(n&&(o?ub=W8(t):ub=cu(t.l,t.m,t.h)),cu(0,0,0)):Hwn(r?t:cu(t.l,t.m,t.h),e,w,o,s,n)}function Tq(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;if(t.e&&t.c.ce.f||e.g>t.f)){for(n=0,r=0,h=t.w.a.ec().Kc();h.Ob();)s=u(h.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,e.g,e.f)&&++n;for(d=t.r.a.ec().Kc();d.Ob();)s=u(d.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,e.g,e.f)&&--n;for(w=e.w.a.ec().Kc();w.Ob();)s=u(w.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,t.g,t.f)&&++r;for(o=e.r.a.ec().Kc();o.Ob();)s=u(o.Pb(),11),Dit(nc(ut(ot(na,1),re,8,0,[s.i.n,s.n,s.a])).b,t.g,t.f)&&--r;n=0)return s=cln(t,e.substr(1,h-1)),_=e.substr(h+1,w-(h+1)),r5n(t,_,s)}else{if(n=-1,t7t==null&&(t7t=new RegExp("\\d")),t7t.test(String.fromCharCode(d))&&(n=avt(e,Lu(46),w-1),n>=0)){r=u(Brt(t,fee(t,e.substr(1,n-1)),!1),58),k=0;try{k=Gl(e.substr(n+1),Oa,Ti)}catch(B){throw B=rs(B),_t(B,127)?(o=B,nt(new F$(o))):nt(B)}if(k=0)return n;switch($v(Mo(t,n))){case 2:{if(un("",Bg(t,n.Hj()).ne())){if(w=ZM(Mo(t,n)),d=y8(Mo(t,n)),_=p5t(t,e,w,d),_)return _;for(s=q5t(t,e),h=0,M=s.gc();h1)throw nt(new Pn(eO));for(_=hu(t.e.Tg(),e),r=u(t.g,119),h=0;h1,k=new M1(B.b);Jo(k.a)||Jo(k.b);)w=u(Jo(k.a)?Q(k.a):Q(k.b),17),M=w.c==B?w.d:w.c,b.Math.abs(nc(ut(ot(na,1),re,8,0,[M.i.n,M.n,M.a])).b-h.b)>1&&nvn(t,w,h,o,B)}}function h3n(t){var e,n,r,s,o,h;if(s=new xa(t.e,0),r=new xa(t.a,0),t.d)for(n=0;nyct;){for(o=e,h=0;b.Math.abs(e-o)0),s.a.Xb(s.c=--s.b),Amn(t,t.b-h,o,r,s),Zn(s.b0),r.a.Xb(r.c=--r.b)}if(!t.d)for(n=0;n0?(t.f[_.p]=q/(_.e.c.length+_.g.c.length),t.c=b.Math.min(t.c,t.f[_.p]),t.b=b.Math.max(t.b,t.f[_.p])):d&&(t.f[_.p]=q)}}function d3n(t){t.b=null,t.bb=null,t.fb=null,t.qb=null,t.a=null,t.c=null,t.d=null,t.e=null,t.f=null,t.n=null,t.M=null,t.L=null,t.Q=null,t.R=null,t.K=null,t.db=null,t.eb=null,t.g=null,t.i=null,t.j=null,t.k=null,t.gb=null,t.o=null,t.p=null,t.q=null,t.r=null,t.$=null,t.ib=null,t.S=null,t.T=null,t.t=null,t.s=null,t.u=null,t.v=null,t.w=null,t.B=null,t.A=null,t.C=null,t.D=null,t.F=null,t.G=null,t.H=null,t.I=null,t.J=null,t.P=null,t.Z=null,t.U=null,t.V=null,t.W=null,t.X=null,t.Y=null,t._=null,t.ab=null,t.cb=null,t.hb=null,t.nb=null,t.lb=null,t.mb=null,t.ob=null,t.pb=null,t.jb=null,t.kb=null,t.N=!1,t.O=!1}function g3n(t,e,n){var r,s,o,h;for(mr(n,"Graph transformation ("+t.a+")",1),h=Vv(e.a),o=new S(e.b);o.a0&&(t.a=w+(q-1)*o,e.c.b+=t.a,e.f.b+=t.a)),G.a.gc()!=0&&(B=new Unt(1,o),q=g6t(B,e,G,W,e.f.b+w-e.c.b),q>0&&(e.f.b+=w+(q-1)*o))}function E7(t,e){var n,r,s,o;o=t.F,e==null?(t.F=null,X8(t,null)):(t.F=(In(e),e),r=ud(e,Lu(60)),r!=-1?(s=e.substr(0,r),ud(e,Lu(46))==-1&&!un(s,cx)&&!un(s,QC)&&!un(s,TH)&&!un(s,ZC)&&!un(s,JC)&&!un(s,tS)&&!un(s,eS)&&!un(s,nS)&&(s=x0e),n=dj(e,Lu(62)),n!=-1&&(s+=""+e.substr(n+1)),X8(t,s)):(s=e,ud(e,Lu(46))==-1&&(r=ud(e,Lu(91)),r!=-1&&(s=e.substr(0,r)),!un(s,cx)&&!un(s,QC)&&!un(s,TH)&&!un(s,ZC)&&!un(s,JC)&&!un(s,tS)&&!un(s,eS)&&!un(s,nS)?(s=x0e,r!=-1&&(s+=""+e.substr(r))):s=e),X8(t,s),s==e&&(t.F=t.D))),t.Db&4&&!(t.Db&1)&&Ci(t,new oa(t,1,5,o,e))}function b3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;if(W=e.b.c.length,!(W<3)){for(q=Nt(Sr,Jr,25,W,15,1),M=0,_=new S(e.b);_.a<_.c.c.length;)k=u(Q(_),29),q[M++]=k.a.c.length;for(B=new xa(e.b,2),r=1;rh)&&Vs(t.b,u(Z.b,17));++d}o=h}}}function h6t(t,e){var n;if(e==null||un(e,Mu)||e.length==0&&t.k!=(Hg(),Rx))return null;switch(t.k.g){case 1:return Oz(e,$7)?(Fn(),W7):Oz(e,Pct)?(Fn(),O2):null;case 2:try{return de(Gl(e,Oa,Ti))}catch(r){if(r=rs(r),_t(r,127))return null;throw nt(r)}case 4:try{return ly(e)}catch(r){if(r=rs(r),_t(r,127))return null;throw nt(r)}case 3:return e;case 5:return mre(t),_oe(t,e);case 6:return mre(t),Cbn(t,t.a,e);case 7:try{return n=Rpn(t),n.Jf(e),n}catch(r){if(r=rs(r),_t(r,32))return null;throw nt(r)}default:throw nt(new Ho("Invalid type set for this layout option."))}}function v3n(t){$_();var e,n,r,s,o,h,d;for(d=new Xzt,n=new S(t);n.a=d.b.c)&&(d.b=e),(!d.c||e.c<=d.c.c)&&(d.d=d.c,d.c=e),(!d.e||e.d>=d.e.d)&&(d.e=e),(!d.f||e.d<=d.f.d)&&(d.f=e);return r=new Bz((U8(),Cw)),aD(t,Sbe,new Cl(ut(ot(gO,1),Me,369,0,[r]))),h=new Bz(Iy),aD(t,Cbe,new Cl(ut(ot(gO,1),Me,369,0,[h]))),s=new Bz(Dy),aD(t,_be,new Cl(ut(ot(gO,1),Me,369,0,[s]))),o=new Bz($4),aD(t,Tbe,new Cl(ut(ot(gO,1),Me,369,0,[o]))),Qst(r.c,Cw),Qst(s.c,Dy),Qst(o.c,$4),Qst(h.c,Iy),d.a.c=Nt(Qn,Me,1,0,5,1),Rs(d.a,r.c),Rs(d.a,c2(s.c)),Rs(d.a,o.c),Rs(d.a,c2(h.c)),d}function f6t(t){var e;switch(t.d){case 1:{if(t.hj())return t.o!=-2;break}case 2:{if(t.hj())return t.o==-2;break}case 3:case 5:case 4:case 6:case 7:return t.o>-2;default:return!1}switch(e=t.gj(),t.p){case 0:return e!=null&&Be(Fe(e))!=a_(t.k,0);case 1:return e!=null&&u(e,217).a!=Mr(t.k)<<24>>24;case 2:return e!=null&&u(e,172).a!=(Mr(t.k)&Ms);case 6:return e!=null&&a_(u(e,162).a,t.k);case 5:return e!=null&&u(e,19).a!=Mr(t.k);case 7:return e!=null&&u(e,184).a!=Mr(t.k)<<16>>16;case 3:return e!=null&&Zt(ve(e))!=t.j;case 4:return e!=null&&u(e,155).a!=t.j;default:return e==null?t.n!=null:!Si(e,t.n)}}function EI(t,e,n){var r,s,o,h;return t.Fk()&&t.Ek()&&(h=Rnt(t,u(n,56)),Gt(h)!==Gt(n))?(t.Oi(e),t.Ui(e,dte(t,e,h)),t.rk()&&(o=(s=u(n,49),t.Dk()?t.Bk()?s.ih(t.b,oo(u(wn(ku(t.b),t.aj()),18)).n,u(wn(ku(t.b),t.aj()).Yj(),26).Bj(),null):s.ih(t.b,es(s.Tg(),oo(u(wn(ku(t.b),t.aj()),18))),null,null):s.ih(t.b,-1-t.aj(),null,null)),!u(h,49).eh()&&(o=(r=u(h,49),t.Dk()?t.Bk()?r.gh(t.b,oo(u(wn(ku(t.b),t.aj()),18)).n,u(wn(ku(t.b),t.aj()).Yj(),26).Bj(),o):r.gh(t.b,es(r.Tg(),oo(u(wn(ku(t.b),t.aj()),18))),null,o):r.gh(t.b,-1-t.aj(),null,o))),o&&o.Fi()),Sl(t.b)&&t.$i(t.Zi(9,n,h,e,!1)),h):n}function Ble(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;for(_=Zt(ve(K(t,(xe(),Fw)))),r=Zt(ve(K(t,h_t))),B=new tl,ee(B,Fw,_+r),k=e,bt=k.d,W=k.c.i,Mt=k.d.i,Z=Qbt(W.c),St=Qbt(Mt.c),s=new le,M=Z;M<=St;M++)d=new H0(t),C0(d,(Gn(),ca)),ee(d,(ae(),Ii),k),ee(d,ws,(va(),Kc)),ee(d,sG,B),q=u(Pe(t.b,M),29),M==Z?oy(d,q.a.c.length-n,q):Lo(d,q),jt=Zt(ve(K(k,Xg))),jt<0&&(jt=0,ee(k,Xg,jt)),d.o.b=jt,G=b.Math.floor(jt/2),h=new Nc,Us(h,(be(),Bn)),tc(h,d),h.n.b=G,w=new Nc,Us(w,Hn),tc(w,d),w.n.b=G,pa(k,h),o=new zv,Bo(o,k),ee(o,Oo,null),Ba(o,w),pa(o,bt),y1n(d,k,o),s.c[s.c.length]=o,k=o;return s}function Aat(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;for(w=u(qg(t,(be(),Bn)).Kc().Pb(),11).e,q=u(qg(t,Hn).Kc().Pb(),11).g,d=w.c.length,St=S1(u(Pe(t.j,0),11));d-- >0;){for(W=(Sn(0,w.c.length),u(w.c[0],17)),s=(Sn(0,q.c.length),u(q.c[0],17)),Mt=s.d.e,o=Go(Mt,s,0),Tin(W,s.d,o),Ba(s,null),pa(s,null),G=W.a,e&&ai(G,new So(St)),r=si(s.a,0);r.b!=r.d.c;)n=u(ii(r),8),ai(G,new So(n));for(bt=W.b,B=new S(s.b);B.a0&&(h=b.Math.max(h,hne(t.C.b+r.d.b,s))),_=r,M=s,B=o;t.C&&t.C.c>0&&(q=B+t.C.c,k&&(q+=_.d.c),h=b.Math.max(h,(E1(),vf(R1),b.Math.abs(M-1)<=R1||M==1||isNaN(M)&&isNaN(1)?0:q/(1-M)))),n.n.b=0,n.a.a=h}function jle(t,e){var n,r,s,o,h,d,w,k,_,M,B,q;if(n=u(xo(t.b,e),124),w=u(u(Pi(t.r,e),21),84),w.dc()){n.n.d=0,n.n.a=0;return}for(k=t.u.Hc((il(),tg)),h=0,t.A.Hc((Nl(),W2))&&wue(t,e),d=w.Kc(),_=null,B=0,M=0;d.Ob();)r=u(d.Pb(),111),o=Zt(ve(r.b.We((gj(),ZH)))),s=r.b.rf().b,_?(q=M+_.d.a+t.w+r.d.d,h=b.Math.max(h,(E1(),vf(R1),b.Math.abs(B-o)<=R1||B==o||isNaN(B)&&isNaN(o)?0:q/(o-B)))):t.C&&t.C.d>0&&(h=b.Math.max(h,hne(t.C.d+r.d.d,o))),_=r,B=o,M=s;t.C&&t.C.a>0&&(q=M+t.C.a,k&&(q+=_.d.a),h=b.Math.max(h,(E1(),vf(R1),b.Math.abs(B-1)<=R1||B==1||isNaN(B)&&isNaN(1)?0:q/(1-B)))),n.n.d=0,n.a.b=h}function $le(t,e,n){var r,s,o,h,d,w;for(this.g=t,d=e.d.length,w=n.d.length,this.d=Nt(o0,Gg,10,d+w,0,1),h=0;h0?eit(this,this.f/this.a):T1(e.g,e.d[0]).a!=null&&T1(n.g,n.d[0]).a!=null?eit(this,(Zt(T1(e.g,e.d[0]).a)+Zt(T1(n.g,n.d[0]).a))/2):T1(e.g,e.d[0]).a!=null?eit(this,T1(e.g,e.d[0]).a):T1(n.g,n.d[0]).a!=null&&eit(this,T1(n.g,n.d[0]).a)}function w3n(t,e){var n,r,s,o,h,d,w,k,_,M;for(t.a=new KYt(Won(WS)),r=new S(e.a);r.a=1&&(Z-h>0&&M>=0?(w.n.a+=W,w.n.b+=o*h):Z-h<0&&_>=0&&(w.n.a+=W*Z,w.n.b+=o));t.o.a=e.a,t.o.b=e.b,ee(t,(xe(),R2),(Nl(),r=u(Wf(tA),9),new oh(r,u(ff(r,r.length),9),0)))}function k3n(t,e,n,r,s,o){var h;if(!(e==null||!Git(e,UAt,WAt)))throw nt(new Pn("invalid scheme: "+e));if(!t&&!(n!=null&&ud(n,Lu(35))==-1&&n.length>0&&($r(0,n.length),n.charCodeAt(0)!=47)))throw nt(new Pn("invalid opaquePart: "+n));if(t&&!(e!=null&&pM(rU,e.toLowerCase()))&&!(n==null||!Git(n,iA,sA)))throw nt(new Pn(c0e+n));if(t&&e!=null&&pM(rU,e.toLowerCase())&&!pdn(n))throw nt(new Pn(c0e+n));if(!mln(r))throw nt(new Pn("invalid device: "+r));if(!fun(s))throw h=s==null?"invalid segments: null":"invalid segment: "+cun(s),nt(new Pn(h));if(!(o==null||ud(o,Lu(35))==-1))throw nt(new Pn("invalid query: "+o))}function E3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(mr(e,"Calculate Graph Size",1),e.n&&t&&gf(e,pf(t),(Ol(),th)),d=N7,w=N7,o=Fkt,h=Fkt,M=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));M.e!=M.i.gc();)k=u(dr(M),33),G=k.i,W=k.j,bt=k.g,r=k.f,s=u(ze(k,(di(),KO)),142),d=b.Math.min(d,G-s.b),w=b.Math.min(w,W-s.d),o=b.Math.max(o,G+bt+s.c),h=b.Math.max(h,W+r+s.a);for(q=u(ze(t,(di(),V2)),116),B=new Re(d-q.b,w-q.d),_=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));_.e!=_.i.gc();)k=u(dr(_),33),Cu(k,k.i-B.a),Su(k,k.j-B.b);Z=o-d+(q.b+q.c),n=h-w+(q.d+q.a),Qv(t,Z),Xv(t,n),e.n&&t&&gf(e,pf(t),(Ol(),th))}function Hle(t){var e,n,r,s,o,h,d,w,k,_;for(r=new le,h=new S(t.e.a);h.a0){Rz(t,n,0),n.a+=String.fromCharCode(r),s=chn(e,o),Rz(t,n,s),o+=s-1;continue}r==39?o+11)for(W=Nt(Sr,Jr,25,t.b.b.c.length,15,1),M=0,k=new S(t.b.b);k.a=d&&s<=w)d<=s&&o<=w?(n[_++]=s,n[_++]=o,r+=2):d<=s?(n[_++]=s,n[_++]=w,t.b[r]=w+1,h+=2):o<=w?(n[_++]=d,n[_++]=o,r+=2):(n[_++]=d,n[_++]=w,t.b[r]=w+1);else if(wrb)&&d<10);Jpt(t.c,new E3),Vle(t),fen(t.c),y3n(t.f)}function S3n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(Be(Fe(K(n,(xe(),$y)))))for(d=new S(n.j);d.a=2){for(w=si(n,0),h=u(ii(w),8),d=u(ii(w),8);d.a0&&PD(k,!0,(fo(),_f)),d.k==(Gn(),Is)&&vXt(k),Ai(t.f,d,e)}}function D3n(t,e,n){var r,s,o,h,d,w,k,_,M,B;switch(mr(n,"Node promotion heuristic",1),t.g=e,B4n(t),t.q=u(K(e,(xe(),Zlt)),260),_=u(K(t.g,QTt),19).a,o=new iF,t.q.g){case 2:case 1:k7(t,o);break;case 3:for(t.q=(m4(),fG),k7(t,o),w=0,d=new S(t.a);d.at.j&&(t.q=MO,k7(t,o));break;case 4:for(t.q=(m4(),fG),k7(t,o),k=0,s=new S(t.b);s.at.k&&(t.q=DO,k7(t,o));break;case 6:B=Cs(b.Math.ceil(t.f.length*_/100)),k7(t,new Tp(B));break;case 5:M=Cs(b.Math.ceil(t.d*_/100)),k7(t,new Uf(M));break;default:k7(t,o)}Tvn(t,e),or(n)}function Ule(t,e,n){var r,s,o,h;this.j=t,this.e=b4t(t),this.o=this.j.e,this.i=!!this.o,this.p=this.i?u(Pe(n,$a(this.o).p),214):null,s=u(K(t,(ae(),Wc)),21),this.g=s.Hc((go(),yh)),this.b=new le,this.d=new gie(this.e),h=u(K(this.j,Ix),230),this.q=ucn(e,h,this.e),this.k=new pQt(this),o=L1(ut(ot(Ybe,1),Me,225,0,[this,this.d,this.k,this.q])),e==(Zv(),OO)&&!Be(Fe(K(t,(xe(),By))))?(r=new w4t(this.e),o.c[o.c.length]=r,this.c=new Wwt(r,h,u(this.q,402))):e==OO&&Be(Fe(K(t,(xe(),By))))?(r=new w4t(this.e),o.c[o.c.length]=r,this.c=new Qee(r,h,u(this.q,402))):this.c=new YVt(e,this),ue(o,this.c),Sle(o,this.e),this.s=d5n(this.k)}function I3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;for(M=u(lj((h=si(new Sp(e).a.d,0),new p6(h))),86),G=M?u(K(M,(mc(),Lht)),86):null,s=1;M&&G;){for(w=0,jt=0,n=M,r=G,d=0;d=t.i?(++t.i,ue(t.a,de(1)),ue(t.b,_)):(r=t.c[e.p][1],lh(t.a,k,de(u(Pe(t.a,k),19).a+1-r)),lh(t.b,k,Zt(ve(Pe(t.b,k)))+_-r*t.e)),(t.q==(m4(),MO)&&(u(Pe(t.a,k),19).a>t.j||u(Pe(t.a,k-1),19).a>t.j)||t.q==DO&&(Zt(ve(Pe(t.b,k)))>t.k||Zt(ve(Pe(t.b,k-1)))>t.k))&&(w=!1),h=new ar(lr(Uo(e).a.Kc(),new H));Vr(h);)o=u(Ir(h),17),d=o.c.i,t.f[d.p]==k&&(M=Wle(t,d),s=s+u(M.a,19).a,w=w&&Be(Fe(M.b)));return t.f[e.p]=k,s=s+t.c[e.p][0],new ya(de(s),(Fn(),!!w))}function g6t(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(M=new Ar,h=new le,poe(t,n,t.d.fg(),h,M),poe(t,r,t.d.gg(),h,M),t.b=.2*(W=ice(ec(new kn(null,new Tn(h,16)),new UQ)),Z=ice(ec(new kn(null,new Tn(h,16)),new WQ)),b.Math.min(W,Z)),o=0,d=0;d=2&&(bt=Cce(h,!0,B),!t.e&&(t.e=new M$t(t)),lhn(t.e,bt,h,t.b)),aae(h,B),K3n(h),q=-1,_=new S(h);_.a<_.c.c.length;)k=u(Q(_),112),!(b.Math.abs(k.s-k.c)d)}function N3n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W;for(n=u(K(t,(xe(),ws)),98),h=t.f,o=t.d,d=h.a+o.b+o.c,w=0-o.d-t.c.b,_=h.b+o.d+o.a-t.c.b,k=new le,M=new le,s=new S(e);s.a0),u(_.a.Xb(_.c=--_.b),17));o!=r&&_.b>0;)t.a[o.p]=!0,t.a[r.p]=!0,o=(Zn(_.b>0),u(_.a.Xb(_.c=--_.b),17));_.b>0&&Dl(_)}}function Qle(t,e,n){var r,s,o,h,d,w,k,_,M;if(t.a!=e.Aj())throw nt(new Pn(z7+e.ne()+kw));if(r=Bg((Gu(),Sa),e).$k(),r)return r.Aj().Nh().Ih(r,n);if(h=Bg(Sa,e).al(),h){if(n==null)return null;if(d=u(n,15),d.dc())return"";for(M=new _g,o=d.Kc();o.Ob();)s=o.Pb(),yo(M,h.Aj().Nh().Ih(h,s)),M.a+=" ";return Yet(M,M.a.length-1)}if(_=Bg(Sa,e).bl(),!_.dc()){for(k=_.Kc();k.Ob();)if(w=u(k.Pb(),148),w.wj(n))try{if(M=w.Aj().Nh().Ih(w,n),M!=null)return M}catch(B){if(B=rs(B),!_t(B,102))throw nt(B)}throw nt(new Pn("Invalid value: '"+n+"' for datatype :"+e.ne()))}return u(e,834).Fj(),n==null?null:_t(n,172)?""+u(n,172).a:dl(n)==HH?_Ut(rA[0],u(n,199)):Wo(n)}function $3n(t){var e,n,r,s,o,h,d,w,k,_;for(k=new cs,d=new cs,o=new S(t);o.a-1){for(s=si(d,0);s.b!=s.d.c;)r=u(ii(s),128),r.v=h;for(;d.b!=0;)for(r=u(kst(d,0),128),n=new S(r.i);n.a0&&(n+=w.n.a+w.o.a/2,++M),G=new S(w.j);G.a0&&(n/=M),bt=Nt(ga,To,25,r.a.c.length,15,1),d=0,k=new S(r.a);k.a=d&&s<=w)d<=s&&o<=w?r+=2:d<=s?(t.b[r]=w+1,h+=2):o<=w?(n[_++]=s,n[_++]=d-1,r+=2):(n[_++]=s,n[_++]=d-1,t.b[r]=w+1,h+=2);else if(w0?s-=864e5:s+=864e5,w=new $2t(Ra(Au(e.q.getTime()),s))),_=new Lm,k=t.a.length,o=0;o=97&&r<=122||r>=65&&r<=90){for(h=o+1;h=k)throw nt(new Pn("Missing trailing '"));h+10&&n.c==0&&(!e&&(e=new le),e.c[e.c.length]=n);if(e)for(;e.c.length!=0;){if(n=u(Ig(e,0),233),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new le),new S(n.b));o.aGo(t,n,0))return new ya(s,n)}else if(Zt(T1(s.g,s.d[0]).a)>Zt(T1(n.g,n.d[0]).a))return new ya(s,n)}for(d=(!n.e&&(n.e=new le),n.e).Kc();d.Ob();)h=u(d.Pb(),233),w=(!h.b&&(h.b=new le),h.b),Um(0,w.c.length),WT(w.c,0,n),h.c==w.c.length&&(e.c[e.c.length]=h)}return null}function nhe(t,e){var n,r,s,o,h,d,w,k,_;if(t==null)return Mu;if(w=e.a.zc(t,e),w!=null)return"[...]";for(n=new l2(Xa,"[","]"),s=t,o=0,h=s.length;o=14&&_<=16))?e.a._b(r)?(n.a?Yr(n.a,n.b):n.a=new Fl(n.d),c_(n.a,"[...]")):(d=o2(r),k=new y_(e),P0(n,nhe(d,k))):_t(r,177)?P0(n,Bgn(u(r,177))):_t(r,190)?P0(n,Cdn(u(r,190))):_t(r,195)?P0(n,F0n(u(r,195))):_t(r,2012)?P0(n,Sdn(u(r,2012))):_t(r,48)?P0(n,Fgn(u(r,48))):_t(r,364)?P0(n,Xgn(u(r,364))):_t(r,832)?P0(n,Pgn(u(r,832))):_t(r,104)&&P0(n,Ngn(u(r,104))):P0(n,r==null?Mu:Wo(r));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function rhe(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;for(d=y4(e,!1,!1),bt=sI(d),r&&(bt=BD(bt)),St=Zt(ve(ze(e,(iC(),qut)))),Z=(Zn(bt.b!=0),u(bt.a.a.c,8)),M=u(e1(bt,1),8),bt.b>2?(_=new le,Rs(_,new Kd(bt,1,bt.b)),o=Fhe(_,St+t.a),Mt=new Wst(o),Bo(Mt,e),n.c[n.c.length]=Mt):r?Mt=u(tr(t.b,Zd(e)),266):Mt=u(tr(t.b,Zp(e)),266),w=Zd(e),r&&(w=Zp(e)),h=ngn(Z,w),k=St+t.a,h.a?(k+=b.Math.abs(Z.b-M.b),W=new Re(M.a,(M.b+Z.b)/2)):(k+=b.Math.abs(Z.a-M.a),W=new Re((M.a+Z.a)/2,M.b)),r?Ai(t.d,e,new j3t(Mt,h,W,k)):Ai(t.c,e,new j3t(Mt,h,W,k)),Ai(t.b,e,Mt),G=(!e.n&&(e.n=new he(Yo,e,1,7)),e.n),q=new nr(G);q.e!=q.i.gc();)B=u(dr(q),137),s=bI(t,B,!0,0,0),n.c[n.c.length]=s}function K3n(t){var e,n,r,s,o,h,d,w,k,_;for(k=new le,d=new le,h=new S(t);h.a-1){for(o=new S(d);o.a0)&&(YB(w,b.Math.min(w.o,s.o-1)),xT(w,w.i-1),w.i==0&&(d.c[d.c.length]=w))}}function T7(t,e,n){var r,s,o,h,d,w,k;if(k=t.c,!e&&(e=QAt),t.c=e,t.Db&4&&!(t.Db&1)&&(w=new oa(t,1,2,k,t.c),n?n.Ei(w):n=w),k!=e){if(_t(t.Cb,284))t.Db>>16==-10?n=u(t.Cb,284).nk(e,n):t.Db>>16==-15&&(!e&&(e=(ln(),K1)),!k&&(k=(ln(),K1)),t.Cb.nh()&&(w=new F0(t.Cb,1,13,k,e,$g(fl(u(t.Cb,59)),t),!1),n?n.Ei(w):n=w));else if(_t(t.Cb,88))t.Db>>16==-23&&(_t(e,88)||(e=(ln(),Qh)),_t(k,88)||(k=(ln(),Qh)),t.Cb.nh()&&(w=new F0(t.Cb,1,10,k,e,$g(Oc(u(t.Cb,26)),t),!1),n?n.Ei(w):n=w));else if(_t(t.Cb,444))for(d=u(t.Cb,836),h=(!d.b&&(d.b=new cR(new Qtt)),d.b),o=(r=new d2(new kg(h.a).a),new uR(r));o.a.b;)s=u(Yv(o.a).cd(),87),n=T7(s,oq(s,d),n)}return n}function Y3n(t,e){var n,r,s,o,h,d,w,k,_,M,B;for(h=Be(Fe(ze(t,(xe(),$y)))),B=u(ze(t,qy),21),w=!1,k=!1,M=new nr((!t.c&&(t.c=new he(yl,t,9,9)),t.c));M.e!=M.i.gc()&&(!w||!k);){for(o=u(dr(M),118),d=0,s=jp(I1(ut(ot($1,1),Me,20,0,[(!o.d&&(o.d=new En(ra,o,8,5)),o.d),(!o.e&&(o.e=new En(ra,o,7,4)),o.e)])));Vr(s)&&(r=u(Ir(s),79),_=h&&uw(r)&&Be(Fe(ze(r,B2))),n=Nle((!r.b&&(r.b=new En(vr,r,4,7)),r.b),o)?t==hs(Ro(u(At((!r.c&&(r.c=new En(vr,r,5,8)),r.c),0),82))):t==hs(Ro(u(At((!r.b&&(r.b=new En(vr,r,4,7)),r.b),0),82))),!((_||n)&&(++d,d>1))););(d>0||B.Hc((il(),tg))&&(!o.n&&(o.n=new he(Yo,o,1,7)),o.n).i>0)&&(w=!0),d>1&&(k=!0)}w&&e.Fc((go(),yh)),k&&e.Fc((go(),vS))}function ihe(t){var e,n,r,s,o,h,d,w,k,_,M,B;if(B=u(ze(t,(di(),H2)),21),B.dc())return null;if(d=0,h=0,B.Hc((Nl(),nN))){for(_=u(ze(t,US),98),r=2,n=2,s=2,o=2,e=hs(t)?u(ze(hs(t),jw),103):u(ze(t,jw),103),k=new nr((!t.c&&(t.c=new he(yl,t,9,9)),t.c));k.e!=k.i.gc();)if(w=u(dr(k),118),M=u(ze(w,c5),61),M==(be(),ac)&&(M=J5t(w,e),Eo(w,c5,M)),_==(va(),Kc))switch(M.g){case 1:r=b.Math.max(r,w.i+w.g);break;case 2:n=b.Math.max(n,w.j+w.f);break;case 3:s=b.Math.max(s,w.i+w.g);break;case 4:o=b.Math.max(o,w.j+w.f)}else switch(M.g){case 1:r+=w.g+2;break;case 2:n+=w.f+2;break;case 3:s+=w.g+2;break;case 4:o+=w.f+2}d=b.Math.max(r,s),h=b.Math.max(n,o)}return gw(t,d,h,!0,!0)}function Lat(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;for(Mt=u($l(V$(Wi(new kn(null,new Tn(e.d,16)),new Vk(n)),new sM(n)),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),M=Ti,_=Oa,w=new S(e.b.j);w.a0,k?k&&(B=bt.p,h?++B:--B,M=u(Pe(bt.c.a,B),10),r=Yne(M),q=!(Jst(r,ce,n[0])||SYt(r,ce,n[0]))):q=!0),G=!1,Qt=e.D.i,Qt&&Qt.c&&d.e&&(_=h&&Qt.p>0||!h&&Qt.p0&&(e.a+=Xa),_q(u(dr(d),160),e);for(e.a+=Bot,w=new A6((!r.c&&(r.c=new En(vr,r,5,8)),r.c));w.e!=w.i.gc();)w.e>0&&(e.a+=Xa),_q(u(dr(w),160),e);e.a+=")"}}function e4n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q;if(o=u(K(t,(ae(),Ii)),79),!!o){for(r=t.a,s=new So(n),Fi(s,G1n(t)),H8(t.d.i,t.c.i)?(B=t.c,M=nc(ut(ot(na,1),re,8,0,[B.n,B.a])),fa(M,n)):M=S1(t.c),ks(r,M,r.a,r.a.a),q=S1(t.d),K(t,qlt)!=null&&Fi(q,u(K(t,qlt),8)),ks(r,q,r.c.b,r.c),Jm(r,s),h=y4(o,!0,!0),Z$(h,u(At((!o.b&&(o.b=new En(vr,o,4,7)),o.b),0),82)),J$(h,u(At((!o.c&&(o.c=new En(vr,o,5,8)),o.c),0),82)),yI(r,h),_=new S(t.b);_.a<_.c.c.length;)k=u(Q(_),70),d=u(K(k,Ii),137),Qv(d,k.o.a),Xv(d,k.o.b),k1(d,k.n.a+s.a,k.n.b+s.b),Eo(d,(Y6(),olt),Fe(K(k,olt)));w=u(K(t,(xe(),Oo)),74),w?(Jm(w,s),Eo(o,Oo,w)):Eo(o,Oo,null),e==(q0(),qx)?Eo(o,X0,qx):Eo(o,X0,null)}}function n4n(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt;for(q=e.c.length,B=0,M=new S(t.b);M.a=0){for(w=null,d=new xa(_.a,k+1);d.bh?1:Lv(isNaN(0),isNaN(h)))<0&&(vf(Td),(b.Math.abs(h-1)<=Td||h==1||isNaN(h)&&isNaN(1)?0:h<1?-1:h>1?1:Lv(isNaN(h),isNaN(1)))<0)&&(vf(Td),(b.Math.abs(0-d)<=Td||d==0||isNaN(0)&&isNaN(d)?0:0d?1:Lv(isNaN(0),isNaN(d)))<0)&&(vf(Td),(b.Math.abs(d-1)<=Td||d==1||isNaN(d)&&isNaN(1)?0:d<1?-1:d>1?1:Lv(isNaN(d),isNaN(1)))<0)),o)}function r4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce;for(M=new vwt(new Dt(t));M.b!=M.c.a.d;)for(_=ute(M),d=u(_.d,56),e=u(_.e,56),h=d.Tg(),W=0,jt=(h.i==null&&bd(h),h.i).length;W=0&&W=k.c.c.length?_=Qwt((Gn(),qs),ca):_=Qwt((Gn(),ca),ca),_*=2,o=n.a.g,n.a.g=b.Math.max(o,o+(_-o)),h=n.b.g,n.b.g=b.Math.max(h,h+(_-h)),s=e}}function a4n(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(Qt=_Kt(t),_=new le,d=t.c.length,M=d-1,B=d+1;Qt.a.c!=0;){for(;n.b!=0;)St=(Zn(n.b!=0),u(fh(n,n.a.a),112)),D_(Qt.a,St)!=null,St.g=M--,t6t(St,e,n,r);for(;e.b!=0;)jt=(Zn(e.b!=0),u(fh(e,e.a.a),112)),D_(Qt.a,jt)!=null,jt.g=B++,t6t(jt,e,n,r);for(k=Oa,bt=(h=new v_(new g_(new y(Qt.a).a).b),new g(h));mM(bt.a.a);){if(Z=(o=wj(bt.a),u(o.cd(),112)),!r&&Z.b>0&&Z.a<=0){_.c=Nt(Qn,Me,1,0,5,1),_.c[_.c.length]=Z;break}W=Z.i-Z.d,W>=k&&(W>k&&(_.c=Nt(Qn,Me,1,0,5,1),k=W),_.c[_.c.length]=Z)}_.c.length!=0&&(w=u(Pe(_,zz(s,_.c.length)),112),D_(Qt.a,w)!=null,w.g=B++,t6t(w,e,n,r),_.c=Nt(Qn,Me,1,0,5,1))}for(Mt=t.c.length+1,G=new S(t);G.a0&&(B.d+=_.n.d,B.d+=_.d),B.a>0&&(B.a+=_.n.a,B.a+=_.d),B.b>0&&(B.b+=_.n.b,B.b+=_.d),B.c>0&&(B.c+=_.n.c,B.c+=_.d),B}function ahe(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G;for(B=n.d,M=n.c,o=new Re(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),h=o.b,k=new S(t.a);k.a0&&(t.c[e.c.p][e.p].d+=pl(t.i,24)*PI*.07000000029802322-.03500000014901161,t.c[e.c.p][e.p].a=t.c[e.c.p][e.p].d/t.c[e.c.p][e.p].b)}}function g4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;for(G=new S(t);G.ar.d,r.d=b.Math.max(r.d,e),d&&n&&(r.d=b.Math.max(r.d,r.a),r.a=r.d+s);break;case 3:n=e>r.a,r.a=b.Math.max(r.a,e),d&&n&&(r.a=b.Math.max(r.a,r.d),r.d=r.a+s);break;case 2:n=e>r.c,r.c=b.Math.max(r.c,e),d&&n&&(r.c=b.Math.max(r.b,r.c),r.b=r.c+s);break;case 4:n=e>r.b,r.b=b.Math.max(r.b,e),d&&n&&(r.b=b.Math.max(r.b,r.c),r.c=r.b+s)}}}function w4n(t){var e,n,r,s,o,h,d,w,k,_,M;for(k=new S(t);k.a0||_.j==Bn&&_.e.c.length-_.g.c.length<0)){e=!1;break}for(s=new S(_.g);s.a=k&&Qt>=Z&&(B+=G.n.b+W.n.b+W.a.b-jt,++d));if(n)for(h=new S(Mt.e);h.a=k&&Qt>=Z&&(B+=G.n.b+W.n.b+W.a.b-jt,++d))}d>0&&(ce+=B/d,++q)}q>0?(e.a=s*ce/q,e.g=q):(e.a=0,e.g=0)}function y4n(t,e){var n,r,s,o,h,d,w,k,_,M,B;for(s=new S(t.a.b);s.aNs||e.o==z2&&_0&&Cu(bt,jt*ce),Qt>0&&Su(bt,Qt*_e);for(U_(t.b,new gm),e=new le,d=new d2(new kg(t.c).a);d.b;)h=Yv(d),r=u(h.cd(),79),n=u(h.dd(),395).a,s=y4(r,!1,!1),M=oae(Zd(r),sI(s),n),yI(M,s),St=mae(r),St&&Go(e,St,0)==-1&&(e.c[e.c.length]=St,_Xt(St,(Zn(M.b!=0),u(M.a.a.c,8)),n));for(Z=new d2(new kg(t.d).a);Z.b;)W=Yv(Z),r=u(W.cd(),79),n=u(W.dd(),395).a,s=y4(r,!1,!1),M=oae(Zp(r),BD(sI(s)),n),M=BD(M),yI(M,s),St=yae(r),St&&Go(e,St,0)==-1&&(e.c[e.c.length]=St,_Xt(St,(Zn(M.b!=0),u(M.c.b.c,8)),n))}function uhe(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e;if(n.c.length!=0){for(q=new le,B=new S(n);B.a1)for(q=new c6t(G,St,r),_a(St,new nGt(t,q)),h.c[h.c.length]=q,M=St.a.ec().Kc();M.Ob();)_=u(M.Pb(),46),Eu(o,_.b);if(d.a.gc()>1)for(q=new c6t(G,d,r),_a(d,new rGt(t,q)),h.c[h.c.length]=q,M=d.a.ec().Kc();M.Ob();)_=u(M.Pb(),46),Eu(o,_.b)}}function hhe(t){Sv(t,new y2(mR(Ev(yv(kv(xv(new mg,_d),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new iZ),_d))),we(t,_d,uH,Ie(Iye)),we(t,_d,ky,Ie(Oye)),we(t,_d,M4,Ie(Aye)),we(t,_d,vx,Ie(Lye)),we(t,_d,bx,Ie(Mye)),we(t,_d,F7,Ie(Sye)),we(t,_d,FC,Ie(mCt)),we(t,_d,B7,Ie(Dye)),we(t,_d,_ct,Ie(Rht)),we(t,_d,Tct,Ie(jht)),we(t,_d,qkt,Ie(yCt)),we(t,_d,Rkt,Ie(CG)),we(t,_d,jkt,Ie(SG)),we(t,_d,$kt,Ie(BO)),we(t,_d,zkt,Ie(xCt))}function v6t(t){var e;if(this.r=rnn(new Fd,new No),this.b=new eC(u(Dr(Za),290)),this.p=new eC(u(Dr(Za),290)),this.i=new eC(u(Dr(xpe),290)),this.e=t,this.o=new So(t.rf()),this.D=t.Df()||Be(Fe(t.We((di(),WO)))),this.A=u(t.We((di(),H2)),21),this.B=u(t.We(mb),21),this.q=u(t.We(US),98),this.u=u(t.We(Ky),21),!l0n(this.u))throw nt(new B3("Invalid port label placement: "+this.u));if(this.v=Be(Fe(t.We(JSt))),this.j=u(t.We(a5),21),!Nbn(this.j))throw nt(new B3("Invalid node label placement: "+this.j));this.n=u(oC(t,$St),116),this.k=Zt(ve(oC(t,qG))),this.d=Zt(ve(oC(t,rAt))),this.w=Zt(ve(oC(t,cAt))),this.s=Zt(ve(oC(t,iAt))),this.t=Zt(ve(oC(t,sAt))),this.C=u(oC(t,aAt),142),this.c=2*this.d,e=!this.B.Hc((bl(),rN)),this.f=new rC(0,e,0),this.g=new rC(1,e,0),eet(this.f,(Zf(),iu),this.g)}function L4n(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn;for(St=0,G=0,q=0,B=1,Mt=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));Mt.e!=Mt.i.gc();)Z=u(dr(Mt),33),B+=N0(new ar(lr(V0(Z).a.Kc(),new H))),We=Z.g,G=b.Math.max(G,We),M=Z.f,q=b.Math.max(q,M),St+=We*M;for(W=(!t.a&&(t.a=new he(ds,t,10,11)),t.a).i,h=St+2*r*r*B*W,o=b.Math.sqrt(h),w=b.Math.max(o*n,G),d=b.Math.max(o/n,q),bt=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));bt.e!=bt.i.gc();)Z=u(dr(bt),33),Qe=s.b+(pl(e,26)*LC+pl(e,27)*MC)*(w-Z.g),Rn=s.b+(pl(e,26)*LC+pl(e,27)*MC)*(d-Z.f),Cu(Z,Qe),Su(Z,Rn);for(_e=w+(s.b+s.c),ce=d+(s.d+s.a),Qt=new nr((!t.a&&(t.a=new he(ds,t,10,11)),t.a));Qt.e!=Qt.i.gc();)for(jt=u(dr(Qt),33),_=new ar(lr(V0(jt).a.Kc(),new H));Vr(_);)k=u(Ir(_),79),gC(k)||M5n(k,e,_e,ce);_e+=s.b+s.c,ce+=s.d+s.a,gw(t,_e,ce,!1,!0)}function Sq(t){var e,n,r,s,o,h,d,w,k,_,M;if(t==null)throw nt(new cd(Mu));if(k=t,o=t.length,w=!1,o>0&&(e=($r(0,t.length),t.charCodeAt(0)),(e==45||e==43)&&(t=t.substr(1),--o,w=e==45)),o==0)throw nt(new cd(vw+k+'"'));for(;t.length>0&&($r(0,t.length),t.charCodeAt(0)==48);)t=t.substr(1),--o;if(o>(Jue(),xge)[10])throw nt(new cd(vw+k+'"'));for(s=0;s0&&(M=-parseInt(t.substr(0,r),10),t=t.substr(r),o-=r,n=!1);o>=h;){if(r=parseInt(t.substr(0,h),10),t=t.substr(h),o-=h,n)n=!1;else{if(_c(M,d)<0)throw nt(new cd(vw+k+'"'));M=Ia(M,_)}M=Qp(M,r)}if(_c(M,0)>0)throw nt(new cd(vw+k+'"'));if(!w&&(M=D8(M),_c(M,0)<0))throw nt(new cd(vw+k+'"'));return M}function w6t(t,e){qKt();var n,r,s,o,h,d,w;if(this.a=new c2t(this),this.b=t,this.c=e,this.f=znt(Mo((Gu(),Sa),e)),this.f.dc())if((d=r4t(Sa,t))==e)for(this.e=!0,this.d=new le,this.f=new Ek,this.f.Fc(D2),u(Eq(mD(Sa,zl(t)),""),26)==t&&this.f.Fc(k_(Sa,zl(t))),s=uat(Sa,t).Kc();s.Ob();)switch(r=u(s.Pb(),170),$v(Mo(Sa,r))){case 4:{this.d.Fc(r);break}case 5:{this.f.Gc(znt(Mo(Sa,r)));break}}else if(so(),u(e,66).Oj())for(this.e=!0,this.f=null,this.d=new le,h=0,w=(t.i==null&&bd(t),t.i).length;h=0&&h0&&(u(xo(t.b,e),124).a.b=n)}function M4n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(mr(e,"Comment pre-processing",1),n=0,w=new S(t.a);w.a0&&(w=($r(0,e.length),e.charCodeAt(0)),w!=64)){if(w==37&&(M=e.lastIndexOf("%"),k=!1,M!=0&&(M==B-1||(k=($r(M+1,e.length),e.charCodeAt(M+1)==46))))){if(h=e.substr(1,M-1),St=un("%",h)?null:y6t(h),r=0,k)try{r=Gl(e.substr(M+2),Oa,Ti)}catch(jt){throw jt=rs(jt),_t(jt,127)?(d=jt,nt(new F$(d))):nt(jt)}for(Z=tyt(t.Wg());Z.Ob();)if(G=hz(Z),_t(G,510)&&(s=u(G,590),Mt=s.d,(St==null?Mt==null:un(St,Mt))&&r--==0))return s;return null}if(_=e.lastIndexOf("."),q=_==-1?e:e.substr(0,_),n=0,_!=-1)try{n=Gl(e.substr(_+1),Oa,Ti)}catch(jt){if(jt=rs(jt),_t(jt,127))q=e;else throw nt(jt)}for(q=un("%",q)?null:y6t(q),W=tyt(t.Wg());W.Ob();)if(G=hz(W),_t(G,191)&&(o=u(G,191),bt=o.ne(),(q==null?bt==null:un(q,bt))&&n--==0))return o;return null}return Fle(t,e)}function O4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn;for(ce=new le,G=new S(t.b);G.a=e.length)return{done:!0};var s=e[r++];return{value:[s,n.get(s)],done:!1}}}},Rvn()||(t.prototype.createObject=function(){return{}},t.prototype.get=function(e){return this.obj[":"+e]},t.prototype.set=function(e,n){this.obj[":"+e]=n},t.prototype[dot]=function(e){delete this.obj[":"+e]},t.prototype.keys=function(){var e=[];for(var n in this.obj)n.charCodeAt(0)==58&&e.push(n.substring(1));return e}),t}function P4n(t){Z5t();var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(t==null)return null;if(M=t.length*8,M==0)return"";for(d=M%24,q=M/24|0,B=d!=0?q+1:q,o=null,o=Nt(Eh,wd,25,B*4,15,1),k=0,_=0,e=0,n=0,r=0,h=0,s=0,w=0;w>24,k=(e&3)<<24>>24,G=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,W=n&-128?(n>>4^240)<<24>>24:n>>4<<24>>24,Z=r&-128?(r>>6^252)<<24>>24:r>>6<<24>>24,o[h++]=op[G],o[h++]=op[W|k<<4],o[h++]=op[_<<2|Z],o[h++]=op[r&63];return d==8?(e=t[s],k=(e&3)<<24>>24,G=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,o[h++]=op[G],o[h++]=op[k<<4],o[h++]=61,o[h++]=61):d==16&&(e=t[s],n=t[s+1],_=(n&15)<<24>>24,k=(e&3)<<24>>24,G=e&-128?(e>>2^192)<<24>>24:e>>2<<24>>24,W=n&-128?(n>>4^240)<<24>>24:n>>4<<24>>24,o[h++]=op[G],o[h++]=op[W|k<<4],o[h++]=op[_<<2],o[h++]=61),Ih(o,0,o.length)}function F4n(t,e){var n,r,s,o,h,d,w;if(t.e==0&&t.p>0&&(t.p=-(t.p-1)),t.p>Oa&&Jwt(e,t.p-ib),h=e.q.getDate(),nD(e,1),t.k>=0&&wrn(e,t.k),t.c>=0?nD(e,t.c):t.k>=0?(w=new yyt(e.q.getFullYear()-ib,e.q.getMonth(),35),r=35-w.q.getDate(),nD(e,b.Math.min(r,h))):nD(e,h),t.f<0&&(t.f=e.q.getHours()),t.b>0&&t.f<12&&(t.f+=12),LXe(e,t.f==24&&t.g?0:t.f),t.j>=0&&Lsn(e,t.j),t.n>=0&&Wsn(e,t.n),t.i>=0&&zGt(e,Ra(Ia(eI(Au(e.q.getTime()),Vg),Vg),t.i)),t.a&&(s=new CR,Jwt(s,s.q.getFullYear()-ib-80),bet(Au(e.q.getTime()),Au(s.q.getTime()))&&Jwt(e,s.q.getFullYear()-ib+100)),t.d>=0){if(t.c==-1)n=(7+t.d-e.q.getDay())%7,n>3&&(n-=7),d=e.q.getMonth(),nD(e,e.q.getDate()+n),e.q.getMonth()!=d&&nD(e,e.q.getDate()+(n>0?-7:7));else if(e.q.getDay()!=t.d)return!1}return t.o>Oa&&(o=e.q.getTimezoneOffset(),zGt(e,Ra(Au(e.q.getTime()),(t.o-o)*60*Vg))),!0}function ghe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;if(s=K(e,(ae(),Ii)),!!_t(s,239)){for(G=u(s,33),W=e.e,B=new So(e.c),o=e.d,B.a+=o.b,B.b+=o.d,jt=u(ze(G,(xe(),iG)),174),zu(jt,(bl(),GG))&&(q=u(ze(G,r_t),116),Zgt(q,o.a),xtt(q,o.d),Jgt(q,o.b),ipt(q,o.c)),n=new le,_=new S(e.a);_.a<_.c.c.length;)for(w=u(Q(_),10),_t(K(w,Ii),239)?q4n(w,B):_t(K(w,Ii),186)&&!W&&(r=u(K(w,Ii),118),Mt=sle(e,w,r.g,r.f),k1(r,Mt.a,Mt.b)),bt=new S(w.j);bt.a0&&ue(t.p,_),ue(t.o,_);e-=r,q=w+e,k+=e*t.e,lh(t.a,d,de(q)),lh(t.b,d,k),t.j=b.Math.max(t.j,q),t.k=b.Math.max(t.k,k),t.d+=e,e+=W}}function be(){be=X;var t;ac=new DM(OC,0),On=new DM(Rq,1),Hn=new DM(Eot,2),yr=new DM(Tot,3),Bn=new DM(_ot,4),W1=(pn(),new Yk((t=u(Wf(Za),9),new oh(t,u(ff(t,t.length),9),0)))),Mf=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[]))),xh=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[]))),Zl=Fg(Ki(yr,ut(ot(Za,1),Cc,61,0,[]))),Uh=Fg(Ki(Bn,ut(ot(Za,1),Cc,61,0,[]))),Iu=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[yr]))),gu=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[Bn]))),Df=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Bn]))),ol=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn]))),Jl=Fg(Ki(yr,ut(ot(Za,1),Cc,61,0,[Bn]))),kh=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[yr]))),cl=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn,Bn]))),Du=Fg(Ki(Hn,ut(ot(Za,1),Cc,61,0,[yr,Bn]))),Ou=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[yr,Bn]))),Yu=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn,yr]))),Yc=Fg(Ki(On,ut(ot(Za,1),Cc,61,0,[Hn,yr,Bn])))}function whe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;if(e.b!=0){for(q=new cs,d=null,G=null,r=Cs(b.Math.floor(b.Math.log(e.b)*b.Math.LOG10E)+1),w=0,St=si(e,0);St.b!=St.d.c;)for(bt=u(ii(St),86),Gt(G)!==Gt(K(bt,(mc(),RS)))&&(G=jr(K(bt,RS)),w=0),G!=null?d=G+jQt(w++,r):d=jQt(w++,r),ee(bt,RS,d),Z=(s=si(new Sp(bt).a.d,0),new p6(s));kR(Z.a);)W=u(ii(Z.a),188).c,ks(q,W,q.c.b,q.c),ee(W,RS,d);for(B=new Ar,h=0;h=w){Zn(bt.b>0),bt.a.Xb(bt.c=--bt.b);break}else W.a>k&&(s?(Rs(s.b,W.b),s.a=b.Math.max(s.a,W.a),Dl(bt)):(ue(W.b,M),W.c=b.Math.min(W.c,k),W.a=b.Math.max(W.a,w),s=W));s||(s=new rqt,s.c=k,s.a=w,Rm(bt,s),ue(s.b,M))}for(d=e.b,_=0,Z=new S(r);Z.ad?1:0:(t.b&&(t.b._b(o)&&(s=u(t.b.xc(o),19).a),t.b._b(w)&&(d=u(t.b.xc(w),19).a)),sd?1:0)):e.e.c.length!=0&&n.g.c.length!=0?1:-1}function $4n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e;for(mr(e,c1e,1),W=new le,ce=new le,k=new S(t.b);k.a0&&(St-=q),u6t(h,St),_=0,B=new S(h.a);B.a0),d.a.Xb(d.c=--d.b)),w=.4*r*_,!o&&d.be.d.c){if(q=t.c[e.a.d],Z=t.c[M.a.d],q==Z)continue;yf(lf(uf(hf(cf(new Sh,1),100),q),Z))}}}}}function y6t(t){Cat();var e,n,r,s,o,h,d,w;if(t==null)return null;if(s=ud(t,Lu(37)),s<0)return t;for(w=new Fl(t.substr(0,s)),e=Nt(Xu,P4,25,4,15,1),d=0,r=0,h=t.length;ss+2&&wit(($r(s+1,t.length),t.charCodeAt(s+1)),VAt,GAt)&&wit(($r(s+2,t.length),t.charCodeAt(s+2)),VAt,GAt))if(n=dtn(($r(s+1,t.length),t.charCodeAt(s+1)),($r(s+2,t.length),t.charCodeAt(s+2))),s+=2,r>0?(n&192)==128?e[d++]=n<<24>>24:r=0:n>=128&&((n&224)==192?(e[d++]=n<<24>>24,r=2):(n&240)==224?(e[d++]=n<<24>>24,r=3):(n&248)==240&&(e[d++]=n<<24>>24,r=4)),r>0){if(d==r){switch(d){case 2:{$p(w,((e[0]&31)<<6|e[1]&63)&Ms);break}case 3:{$p(w,((e[0]&15)<<12|(e[1]&63)<<6|e[2]&63)&Ms);break}}d=0,r=0}}else{for(o=0;o0){if(h+r>t.length)return!1;d=rq(t.substr(0,h+r),e)}else d=rq(t,e);switch(o){case 71:return d=b4(t,h,ut(ot(Le,1),re,2,6,[tfe,efe]),e),s.e=d,!0;case 77:return Svn(t,e,s,d,h);case 76:return Avn(t,e,s,d,h);case 69:return mgn(t,e,h,s);case 99:return ygn(t,e,h,s);case 97:return d=b4(t,h,ut(ot(Le,1),re,2,6,["AM","PM"]),e),s.b=d,!0;case 121:return Lvn(t,e,h,d,n,s);case 100:return d<=0?!1:(s.c=d,!0);case 83:return d<0?!1:Oln(d,h,e[0],s);case 104:d==12&&(d=0);case 75:case 72:return d<0?!1:(s.f=d,s.g=!1,!0);case 107:return d<0?!1:(s.f=d,s.g=!0,!0);case 109:return d<0?!1:(s.j=d,!0);case 115:return d<0?!1:(s.n=d,!0);case 90:if(hce&&(G.c=ce-G.b),ue(h.d,new Nnt(G,Xyt(h,G))),Mt=e==On?b.Math.max(Mt,W.b+k.b.rf().b):b.Math.min(Mt,W.b));for(Mt+=e==On?t.t:-t.t,St=f3t((h.e=Mt,h)),St>0&&(u(xo(t.b,e),124).a.b=St),_=B.Kc();_.Ob();)k=u(_.Pb(),111),!(!k.c||k.c.d.c.length<=0)&&(G=k.c.i,G.c-=k.e.a,G.d-=k.e.b)}function W4n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;for(e=new Ar,w=new nr(t);w.e!=w.i.gc();){for(d=u(dr(w),33),n=new Qs,Ai(Vut,d,n),q=new bg,s=u($l(new kn(null,new Fv(new ar(lr(fI(d).a.Kc(),new H)))),lYt(q,a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)])))),83),Oee(n,u(s.xc((Fn(),!0)),14),new Oe),r=u($l(Wi(u(s.xc(!1),15).Lc(),new af),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[Yl]))),15),h=r.Kc();h.Ob();)o=u(h.Pb(),79),B=mae(o),B&&(k=u(cc(Fo(e.f,B)),21),k||(k=jce(B),lu(e.f,B,k)),Ka(n,k));for(s=u($l(new kn(null,new Fv(new ar(lr(V0(d).a.Kc(),new H)))),lYt(q,a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[Yl])))),83),Oee(n,u(s.xc(!0),14),new fk),r=u($l(Wi(u(s.xc(!1),15).Lc(),new k3),a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[Yl]))),15),M=r.Kc();M.Ob();)_=u(M.Pb(),79),B=yae(_),B&&(k=u(cc(Fo(e.f,B)),21),k||(k=jce(B),lu(e.f,B,k)),Ka(n,k))}}function K4n(t,e){yat();var n,r,s,o,h,d,w,k,_,M,B,q,G,W;if(w=_c(t,0)<0,w&&(t=D8(t)),_c(t,0)==0)switch(e){case 0:return"0";case 1:return M7;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return q=new Ap,e<0?q.a+="0E+":q.a+="0E",q.a+=e==Oa?"2147483648":""+-e,q.a}_=18,M=Nt(Eh,wd,25,_+1,15,1),n=_,W=t;do k=W,W=eI(W,10),M[--n]=Mr(Ra(48,Qp(k,Ia(W,10))))&Ms;while(_c(W,0)!=0);if(s=Qp(Qp(Qp(_,n),e),1),e==0)return w&&(M[--n]=45),Ih(M,n,_-n);if(e>0&&_c(s,-6)>=0){if(_c(s,0)>=0){for(o=n+Mr(s),d=_-1;d>=o;d--)M[d+1]=M[d];return M[++o]=46,w&&(M[--n]=45),Ih(M,n,_-n+1)}for(h=2;bet(h,Ra(D8(s),1));h++)M[--n]=48;return M[--n]=46,M[--n]=48,w&&(M[--n]=45),Ih(M,n,_-n)}return G=n+1,r=_,B=new Lm,w&&(B.a+="-"),r-G>=1?($p(B,M[n]),B.a+=".",B.a+=Ih(M,n+1,_-n-1)):B.a+=Ih(M,n,_-n),B.a+="E",_c(s,0)>0&&(B.a+="+"),B.a+=""+E_(s),B.a}function Y4n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q;if(t.e.a.$b(),t.f.a.$b(),t.c.c=Nt(Qn,Me,1,0,5,1),t.i.c=Nt(Qn,Me,1,0,5,1),t.g.a.$b(),e)for(h=new S(e.a);h.a=1&&(Qt-k>0&&G>=0?(Cu(M,M.i+jt),Su(M,M.j+w*k)):Qt-k<0&&q>=0&&(Cu(M,M.i+jt*Qt),Su(M,M.j+w)));return Eo(t,(di(),H2),(Nl(),o=u(Wf(tA),9),new oh(o,u(ff(o,o.length),9),0))),new Re(ce,_)}function xhe(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G;if(q=hs(Ro(u(At((!t.b&&(t.b=new En(vr,t,4,7)),t.b),0),82))),G=hs(Ro(u(At((!t.c&&(t.c=new En(vr,t,5,8)),t.c),0),82))),M=q==G,d=new Da,e=u(ze(t,(bz(),bAt)),74),e&&e.b>=2){if((!t.a&&(t.a=new he(us,t,6,6)),t.a).i==0)n=(Tv(),s=new id,s),Or((!t.a&&(t.a=new he(us,t,6,6)),t.a),n);else if((!t.a&&(t.a=new he(us,t,6,6)),t.a).i>1)for(B=new A6((!t.a&&(t.a=new he(us,t,6,6)),t.a));B.e!=B.i.gc();)uC(B);yI(e,u(At((!t.a&&(t.a=new he(us,t,6,6)),t.a),0),202))}if(M)for(r=new nr((!t.a&&(t.a=new he(us,t,6,6)),t.a));r.e!=r.i.gc();)for(n=u(dr(r),202),k=new nr((!n.a&&(n.a=new Bs(Wh,n,5)),n.a));k.e!=k.i.gc();)w=u(dr(k),469),d.a=b.Math.max(d.a,w.a),d.b=b.Math.max(d.b,w.b);for(h=new nr((!t.n&&(t.n=new he(Yo,t,1,7)),t.n));h.e!=h.i.gc();)o=u(dr(h),137),_=u(ze(o,KS),8),_&&k1(o,_.a,_.b),M&&(d.a=b.Math.max(d.a,o.i+o.g),d.b=b.Math.max(d.b,o.j+o.f));return d}function X4n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We;for(St=e.c.length,s=new k4(t.a,n,null,null),We=Nt(ga,To,25,St,15,1),W=Nt(ga,To,25,St,15,1),G=Nt(ga,To,25,St,15,1),Z=0,d=0;dWe[w]&&(Z=w),M=new S(t.a.b);M.aq&&(o&&(Xb(ce,B),Xb(We,de(k.b-1))),xi=n.b,Ks+=B+e,B=0,_=b.Math.max(_,n.b+n.c+hr)),Cu(d,xi),Su(d,Ks),_=b.Math.max(_,xi+hr+n.c),B=b.Math.max(B,M),xi+=hr+e;if(_=b.Math.max(_,r),zn=Ks+B+n.a,znxd,Qe=b.Math.abs(B.b-G.b)>xd,(!n&&We&&Qe||n&&(We||Qe))&&ai(Z.a,jt)),Ka(Z.a,r),r.b==0?B=jt:B=(Zn(r.b!=0),u(r.c.b.c,8)),gcn(q,M,W),lne(s)==_e&&($a(_e.i)!=s.a&&(W=new Da,R4t(W,$a(_e.i),Mt)),ee(Z,qlt,W)),R0n(q,Z,Mt),_.a.zc(q,_);Ba(Z,Qt),pa(Z,_e)}for(k=_.a.ec().Kc();k.Ob();)w=u(k.Pb(),17),Ba(w,null),pa(w,null);or(e)}function khe(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;if(t.gc()==1)return u(t.Xb(0),231);if(t.gc()<=0)return new C$;for(s=t.Kc();s.Ob();){for(n=u(s.Pb(),231),G=0,_=Ti,M=Ti,w=Oa,k=Oa,q=new S(n.e);q.ad&&(St=0,jt+=h+bt,h=0),Fwn(W,n,St,jt),e=b.Math.max(e,St+Z.a),h=b.Math.max(h,Z.b),St+=Z.a+bt;return W}function Ehe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G;switch(_=new ju,t.a.g){case 3:B=u(K(e.e,(ae(),F2)),15),q=u(K(e.j,F2),15),G=u(K(e.f,F2),15),n=u(K(e.e,Q4),15),r=u(K(e.j,Q4),15),s=u(K(e.f,Q4),15),h=new le,Rs(h,B),q.Jc(new JX),Rs(h,_t(q,152)?V6(u(q,152)):_t(q,131)?u(q,131).a:_t(q,54)?new mv(q):new Mm(q)),Rs(h,G),o=new le,Rs(o,n),Rs(o,_t(r,152)?V6(u(r,152)):_t(r,131)?u(r,131).a:_t(r,54)?new mv(r):new Mm(r)),Rs(o,s),ee(e.f,F2,h),ee(e.f,Q4,o),ee(e.f,eTt,e.f),ee(e.e,F2,null),ee(e.e,Q4,null),ee(e.j,F2,null),ee(e.j,Q4,null);break;case 1:Ka(_,e.e.a),ai(_,e.i.n),Ka(_,c2(e.j.a)),ai(_,e.a.n),Ka(_,e.f.a);break;default:Ka(_,e.e.a),Ka(_,c2(e.j.a)),Ka(_,e.f.a)}Mh(e.f.a),Ka(e.f.a,_),Ba(e.f,e.e.c),d=u(K(e.e,(xe(),Oo)),74),k=u(K(e.j,Oo),74),w=u(K(e.f,Oo),74),(d||k||w)&&(M=new ju,owt(M,w),owt(M,k),owt(M,d),ee(e.f,Oo,M)),Ba(e.j,null),pa(e.j,null),Ba(e.e,null),pa(e.e,null),Lo(e.a,null),Lo(e.i,null),e.g&&Ehe(t,e.g)}function t5n(t){Z5t();var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;if(t==null||(o=R$(t),G=zun(o),G%4!=0))return null;if(W=G/4|0,W==0)return Nt(Xu,P4,25,0,15,1);for(M=null,e=0,n=0,r=0,s=0,h=0,d=0,w=0,k=0,q=0,B=0,_=0,M=Nt(Xu,P4,25,W*3,15,1);q>4)<<24>>24,M[B++]=((n&15)<<4|r>>2&15)<<24>>24,M[B++]=(r<<6|s)<<24>>24}return!dM(h=o[_++])||!dM(d=o[_++])?null:(e=Y1[h],n=Y1[d],w=o[_++],k=o[_++],Y1[w]==-1||Y1[k]==-1?w==61&&k==61?n&15?null:(Z=Nt(Xu,P4,25,q*3+1,15,1),Pc(M,0,Z,0,q*3),Z[B]=(e<<2|n>>4)<<24>>24,Z):w!=61&&k==61?(r=Y1[w],r&3?null:(Z=Nt(Xu,P4,25,q*3+2,15,1),Pc(M,0,Z,0,q*3),Z[B++]=(e<<2|n>>4)<<24>>24,Z[B]=((n&15)<<4|r>>2&15)<<24>>24,Z)):null:(r=Y1[w],s=Y1[k],M[B++]=(e<<2|n>>4)<<24>>24,M[B++]=((n&15)<<4|r>>2&15)<<24>>24,M[B++]=(r<<6|s)<<24>>24,M))}function e5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(mr(e,c1e,1),G=u(K(t,(xe(),X0)),218),s=new S(t.b);s.a=2){for(W=!0,B=new S(o.j),n=u(Q(B),11),q=null;B.a0&&(s=u(Pe(Z.c.a,ce-1),10),h=t.i[s.p],We=b.Math.ceil(U3(t.n,s,Z)),o=Qt.a.e-Z.d.d-(h.a.e+s.o.b+s.d.a)-We),k=bs,ce0&&_e.a.e.e-_e.a.a-(_e.b.e.e-_e.b.a)<0,G=St.a.e.e-St.a.a-(St.b.e.e-St.b.a)<0&&_e.a.e.e-_e.a.a-(_e.b.e.e-_e.b.a)>0,q=St.a.e.e+St.b.a<_e.b.e.e+_e.a.a,B=St.a.e.e+St.b.a>_e.b.e.e+_e.a.a,jt=0,!W&&!G&&(B?o+M>0?jt=M:k-r>0&&(jt=r):q&&(o+d>0?jt=d:k-Mt>0&&(jt=Mt))),Qt.a.e+=jt,Qt.b&&(Qt.d.e+=jt),!1))}function _he(t,e,n){var r,s,o,h,d,w,k,_,M,B;if(r=new ch(e.qf().a,e.qf().b,e.rf().a,e.rf().b),s=new S6,t.c)for(h=new S(e.wf());h.ak&&(r.a+=MUt(Nt(Eh,wd,25,-k,15,1))),r.a+="Is",ud(w,Lu(32))>=0)for(s=0;s=r.o.b/2}else Mt=!M;Mt?(bt=u(K(r,(ae(),Ox)),15),bt?B?o=bt:(s=u(K(r,Ax),15),s?bt.gc()<=s.gc()?o=bt:o=s:(o=new le,ee(r,Ax,o))):(o=new le,ee(r,Ox,o))):(s=u(K(r,(ae(),Ax)),15),s?M?o=s:(bt=u(K(r,Ox),15),bt?s.gc()<=bt.gc()?o=s:o=bt:(o=new le,ee(r,Ox,o))):(o=new le,ee(r,Ax,o))),o.Fc(t),ee(t,(ae(),zV),n),e.d==n?(pa(e,null),n.e.c.length+n.g.c.length==0&&tc(n,null),Ycn(n)):(Ba(e,null),n.e.c.length+n.g.c.length==0&&tc(n,null)),Mh(e.a)}function s5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi;for(Mt=new xa(t.b,0),_=e.Kc(),G=0,k=u(_.Pb(),19).a,Qt=0,n=new Qs,_e=new A0;Mt.b=t.a&&(r=Vmn(t,Mt),_=b.Math.max(_,r.b),jt=b.Math.max(jt,r.d),ue(d,new ya(Mt,r)));for(We=new le,k=0;k<_;++k)$m(We,0,(Zn(Z.b>0),Z.a.Xb(Z.c=--Z.b),Qe=new Lh(t.b),Rm(Z,Qe),Zn(Z.b0?(k=0,Z&&(k+=d),k+=(Qe-1)*h,St&&(k+=d),We&&St&&(k=b.Math.max(k,H2n(St,h,Mt,_e))),k0){for(B=_<100?null:new Lp(_),k=new iyt(e),G=k.g,bt=Nt(Sr,Jr,25,_,15,1),r=0,jt=new Kv(_),s=0;s=0;)if(q!=null?Si(q,G[w]):Gt(q)===Gt(G[w])){bt.length<=r&&(Z=bt,bt=Nt(Sr,Jr,25,2*bt.length,15,1),Pc(Z,0,bt,0,r)),bt[r++]=s,Or(jt,G[w]);break t}if(q=q,Gt(q)===Gt(d))break}}if(k=jt,G=jt.g,_=r,r>bt.length&&(Z=bt,bt=Nt(Sr,Jr,25,r,15,1),Pc(Z,0,bt,0,r)),r>0){for(St=!0,o=0;o=0;)nx(t,bt[h]);if(r!=_){for(s=_;--s>=r;)nx(k,s);Z=bt,bt=Nt(Sr,Jr,25,r,15,1),Pc(Z,0,bt,0,r)}e=k}}}else for(e=zfn(t,e),s=t.i;--s>=0;)e.Hc(t.g[s])&&(nx(t,s),St=!0);if(St){if(bt!=null){for(n=e.gc(),M=n==1?I_(t,4,e.Kc().Pb(),null,bt[0],W):I_(t,6,e,bt,bt[0],W),B=n<100?null:new Lp(n),s=e.Kc();s.Ob();)q=s.Pb(),B=cvt(t,u(q,72),B);B?(B.Ei(M),B.Fi()):Ci(t.e,M)}else{for(B=tZe(e.gc()),s=e.Kc();s.Ob();)q=s.Pb(),B=cvt(t,u(q,72),B);B&&B.Fi()}return!0}else return!1}function l5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St;for(n=new Jie(e),n.a||Wwn(e),k=Kvn(e),w=new Hv,Z=new Wce,W=new S(e.a);W.a0||n.o==V1&&s0?(M=u(Pe(B.c.a,h-1),10),We=U3(t.b,B,M),Z=B.n.b-B.d.d-(M.n.b+M.o.b+M.d.a+We)):Z=B.n.b-B.d.d,k=b.Math.min(Z,k),hh?m7(t,e,n):m7(t,n,e),sh?1:0}return r=u(K(e,(ae(),Lc)),19).a,o=u(K(n,Lc),19).a,r>o?m7(t,e,n):m7(t,n,e),ro?1:0}function x6t(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt;if(Be(Fe(ze(e,(di(),$G)))))return pn(),pn(),uo;if(k=(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i!=0,M=Zgn(e),_=!M.dc(),k||_){if(s=u(ze(e,EE),149),!s)throw nt(new B3("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(Mt=Vbt(s,(p7(),JG)),Nie(e),!k&&_&&!Mt)return pn(),pn(),uo;if(w=new le,Gt(ze(e,i5))===Gt(($0(),np))&&(Vbt(s,QG)||Vbt(s,XG)))for(q=bue(t,e),G=new cs,Ka(G,(!e.a&&(e.a=new he(ds,e,10,11)),e.a));G.b!=0;)B=u(G.b==0?null:(Zn(G.b!=0),fh(G,G.a.a)),33),Nie(B),bt=Gt(ze(B,i5))===Gt(YS),bt||s2(B,GS)&&!imt(s,ze(B,EE))?(d=x6t(t,B,n,r),Rs(w,d),Eo(B,i5,YS),Oue(B)):Ka(G,(!B.a&&(B.a=new he(ds,B,10,11)),B.a));else for(q=(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i,h=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));h.e!=h.i.gc();)o=u(dr(h),33),d=x6t(t,o,n,r),Rs(w,d),Oue(o);for(Z=new S(w);Z.a=0?q=Z6(d):q=HD(Z6(d)),t.Ye(pE,q)),k=new Da,B=!1,t.Xe(Pw)?(O2t(k,u(t.We(Pw),8)),B=!0):jXe(k,h.a/2,h.b/2),q.g){case 4:ee(_,du,(ph(),gb)),ee(_,HV,(h2(),G4)),_.o.b=h.b,W<0&&(_.o.a=-W),Us(M,(be(),Hn)),B||(k.a=h.a),k.a-=h.a;break;case 2:ee(_,du,(ph(),Fy)),ee(_,HV,(h2(),oE)),_.o.b=h.b,W<0&&(_.o.a=-W),Us(M,(be(),Bn)),B||(k.a=0);break;case 1:ee(_,P2,(B0(),W4)),_.o.a=h.a,W<0&&(_.o.b=-W),Us(M,(be(),yr)),B||(k.b=h.b),k.b-=h.b;break;case 3:ee(_,P2,(B0(),Sx)),_.o.a=h.a,W<0&&(_.o.b=-W),Us(M,(be(),On)),B||(k.b=0)}if(O2t(M.n,k),ee(_,Pw,k),e==U2||e==h0||e==Kc){if(G=0,e==U2&&t.Xe(Qg))switch(q.g){case 1:case 2:G=u(t.We(Qg),19).a;break;case 3:case 4:G=-u(t.We(Qg),19).a}else switch(q.g){case 4:case 2:G=o.b,e==h0&&(G/=s.b);break;case 1:case 3:G=o.a,e==h0&&(G/=s.a)}ee(_,Iw,G)}return ee(_,gc,q),_}function d5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe;if(n=Zt(ve(K(t.a.j,(xe(),PTt)))),n<-1||!t.a.i||D6(u(K(t.a.o,ws),98))||rc(t.a.o,(be(),Hn)).gc()<2&&rc(t.a.o,Bn).gc()<2)return!0;if(t.a.c.Rf())return!1;for(Qt=0,jt=0,St=new le,w=t.a.e,k=0,_=w.length;k<_;++k){for(d=w[k],B=d,q=0,W=B.length;q=n}function g5n(){rbt();function t(r){var s=this;this.dispatch=function(o){var h=o.data;switch(h.cmd){case"algorithms":var d=h3t((pn(),new T(new m1(Cb.b))));r.postMessage({id:h.id,data:d});break;case"categories":var w=h3t((pn(),new T(new m1(Cb.c))));r.postMessage({id:h.id,data:w});break;case"options":var k=h3t((pn(),new T(new m1(Cb.d))));r.postMessage({id:h.id,data:k});break;case"register":x3n(h.algorithms),r.postMessage({id:h.id});break;case"layout":eyn(h.graph,h.layoutOptions||{},h.options||{}),r.postMessage({id:h.id,data:h.graph});break}},this.saveDispatch=function(o){try{s.dispatch(o)}catch(h){r.postMessage({id:o.data.id,error:h})}}}function e(r){var s=this;this.dispatcher=new t({postMessage:function(o){s.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){s.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===vot&&typeof self!==vot){var n=new t(self);self.onmessage=n.saveDispatch}else typeof p!==vot&&p.exports&&(Object.defineProperty(v,"__esModule",{value:!0}),p.exports={default:e,Worker:e})}function p5n(t){t.N||(t.N=!0,t.b=hc(t,0),fs(t.b,0),fs(t.b,1),fs(t.b,2),t.bb=hc(t,1),fs(t.bb,0),fs(t.bb,1),t.fb=hc(t,2),fs(t.fb,3),fs(t.fb,4),Gi(t.fb,5),t.qb=hc(t,3),fs(t.qb,0),Gi(t.qb,1),Gi(t.qb,2),fs(t.qb,3),fs(t.qb,4),Gi(t.qb,5),fs(t.qb,6),t.a=hi(t,4),t.c=hi(t,5),t.d=hi(t,6),t.e=hi(t,7),t.f=hi(t,8),t.g=hi(t,9),t.i=hi(t,10),t.j=hi(t,11),t.k=hi(t,12),t.n=hi(t,13),t.o=hi(t,14),t.p=hi(t,15),t.q=hi(t,16),t.s=hi(t,17),t.r=hi(t,18),t.t=hi(t,19),t.u=hi(t,20),t.v=hi(t,21),t.w=hi(t,22),t.B=hi(t,23),t.A=hi(t,24),t.C=hi(t,25),t.D=hi(t,26),t.F=hi(t,27),t.G=hi(t,28),t.H=hi(t,29),t.J=hi(t,30),t.I=hi(t,31),t.K=hi(t,32),t.M=hi(t,33),t.L=hi(t,34),t.P=hi(t,35),t.Q=hi(t,36),t.R=hi(t,37),t.S=hi(t,38),t.T=hi(t,39),t.U=hi(t,40),t.V=hi(t,41),t.X=hi(t,42),t.W=hi(t,43),t.Y=hi(t,44),t.Z=hi(t,45),t.$=hi(t,46),t._=hi(t,47),t.ab=hi(t,48),t.cb=hi(t,49),t.db=hi(t,50),t.eb=hi(t,51),t.gb=hi(t,52),t.hb=hi(t,53),t.ib=hi(t,54),t.jb=hi(t,55),t.kb=hi(t,56),t.lb=hi(t,57),t.mb=hi(t,58),t.nb=hi(t,59),t.ob=hi(t,60),t.pb=hi(t,61))}function b5n(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt;if(Mt=0,e.f.a==0)for(Z=new S(t);Z.ak&&(Sn(k,e.c.length),u(e.c[k],200)).a.c.length==0;)Eu(e,(Sn(k,e.c.length),e.c[k]));if(!w){--o;continue}if(nmn(e,_,s,w,B,n,k,r)){M=!0;continue}if(B){if(uyn(e,_,s,w,n,k,r)){M=!0;continue}else if(Ryt(_,s)){s.c=!0,M=!0;continue}}else if(Ryt(_,s)){s.c=!0,M=!0;continue}if(M)continue}if(Ryt(_,s)){s.c=!0,M=!0,w&&(w.k=!1);continue}else Gz(s.q)}return M}function Iat(t,e,n,r,s,o,h){var d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks;for(W=0,Rn=0,k=new S(t.b);k.aW&&(o&&(Xb(ce,q),Xb(We,de(_.b-1)),ue(t.d,G),d.c=Nt(Qn,Me,1,0,5,1)),xi=n.b,Ks+=q+e,q=0,M=b.Math.max(M,n.b+n.c+hr)),d.c[d.c.length]=w,Uie(w,xi,Ks),M=b.Math.max(M,xi+hr+n.c),q=b.Math.max(q,B),xi+=hr+e,G=w;if(Rs(t.a,d),ue(t.d,u(Pe(d,d.c.length-1),157)),M=b.Math.max(M,r),zn=Ks+q+n.a,zn1&&(h=b.Math.min(h,b.Math.abs(u(e1(d.a,1),8).b-_.b)))));else for(W=new S(e.j);W.as&&(o=B.a-s,h=Ti,r.c=Nt(Qn,Me,1,0,5,1),s=B.a),B.a>=s&&(r.c[r.c.length]=d,d.a.b>1&&(h=b.Math.min(h,b.Math.abs(u(e1(d.a,d.a.b-2),8).b-B.b)))));if(r.c.length!=0&&o>e.o.a/2&&h>e.o.b/2){for(q=new Nc,tc(q,e),Us(q,(be(),On)),q.n.a=e.o.a/2,bt=new Nc,tc(bt,e),Us(bt,yr),bt.n.a=e.o.a/2,bt.n.b=e.o.b,w=new S(r);w.a=k.b?Ba(d,bt):Ba(d,q)):(k=u(ftn(d.a),8),Z=d.a.b==0?S1(d.c):u(vj(d.a),8),Z.b>=k.b?pa(d,bt):pa(d,q)),M=u(K(d,(xe(),Oo)),74),M&&ry(M,k,!0);e.n.a=s-e.o.a/2}}function x5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks,eh,Zh;if(Rn=null,hr=e,zn=OZt(t,LZt(n),hr),q_(zn,O0(hr,Cd)),xi=u(e4(t.g,ix(I0(hr,zct))),33),B=I0(hr,"sourcePort"),r=null,B&&(r=ix(B)),Ks=u(e4(t.j,r),118),!xi)throw d=s7(hr),G="An edge must have a source node (edge id: '"+d,W=G+H7,nt(new od(W));if(Ks&&!dd(_1(Ks),xi))throw w=O0(hr,Cd),Z="The source port of an edge must be a port of the edge's source node (edge id: '"+w,bt=Z+H7,nt(new od(bt));if(We=(!zn.b&&(zn.b=new En(vr,zn,4,7)),zn.b),o=null,Ks?o=Ks:o=xi,Or(We,o),eh=u(e4(t.g,ix(I0(hr,y8t))),33),q=I0(hr,"targetPort"),s=null,q&&(s=ix(q)),Zh=u(e4(t.j,s),118),!eh)throw M=s7(hr),Mt="An edge must have a target node (edge id: '"+M,St=Mt+H7,nt(new od(St));if(Zh&&!dd(_1(Zh),eh))throw k=O0(hr,Cd),jt="The target port of an edge must be a port of the edge's target node (edge id: '"+k,Qt=jt+H7,nt(new od(Qt));if(Qe=(!zn.c&&(zn.c=new En(vr,zn,5,8)),zn.c),h=null,Zh?h=Zh:h=eh,Or(Qe,h),(!zn.b&&(zn.b=new En(vr,zn,4,7)),zn.b).i==0||(!zn.c&&(zn.c=new En(vr,zn,5,8)),zn.c).i==0)throw _=O0(hr,Cd),ce=_de+_,_e=ce+H7,nt(new od(_e));return Jz(hr,zn),hbn(hr,zn),Rn=yit(t,hr,zn),Rn}function Mhe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn;return M=Tmn(yu(t,(be(),W1)),e),G=f4(yu(t,Mf),e),jt=f4(yu(t,Zl),e),We=Uz(yu(t,Uh),e),B=Uz(yu(t,xh),e),Mt=f4(yu(t,Df),e),W=f4(yu(t,ol),e),ce=f4(yu(t,Jl),e),Qt=f4(yu(t,kh),e),Qe=Uz(yu(t,gu),e),bt=f4(yu(t,Iu),e),St=f4(yu(t,cl),e),_e=f4(yu(t,Du),e),Rn=Uz(yu(t,Ou),e),q=Uz(yu(t,Yu),e),Z=f4(yu(t,Yc),e),n=i4(ut(ot(ga,1),To,25,15,[Mt.a,We.a,ce.a,Rn.a])),r=i4(ut(ot(ga,1),To,25,15,[G.a,M.a,jt.a,Z.a])),s=bt.a,o=i4(ut(ot(ga,1),To,25,15,[W.a,B.a,Qt.a,q.a])),k=i4(ut(ot(ga,1),To,25,15,[Mt.b,G.b,W.b,St.b])),w=i4(ut(ot(ga,1),To,25,15,[We.b,M.b,B.b,Z.b])),_=Qe.b,d=i4(ut(ot(ga,1),To,25,15,[ce.b,jt.b,Qt.b,_e.b])),Ng(yu(t,W1),n+s,k+_),Ng(yu(t,Yc),n+s,k+_),Ng(yu(t,Mf),n+s,0),Ng(yu(t,Zl),n+s,k+_+w),Ng(yu(t,Uh),0,k+_),Ng(yu(t,xh),n+s+r,k+_),Ng(yu(t,ol),n+s+r,0),Ng(yu(t,Jl),0,k+_+w),Ng(yu(t,kh),n+s+r,k+_+w),Ng(yu(t,gu),0,k),Ng(yu(t,Iu),n,0),Ng(yu(t,Du),0,k+_+w),Ng(yu(t,Yu),n+s+r,0),h=new Da,h.a=i4(ut(ot(ga,1),To,25,15,[n+r+s+o,Qe.a,St.a,_e.a])),h.b=i4(ut(ot(ga,1),To,25,15,[k+w+_+d,bt.b,Rn.b,q.b])),h}function k5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;for(W=new le,B=new S(t.d.b);B.as.d.d+s.d.a?_.f.d=!0:(_.f.d=!0,_.f.a=!0))),r.b!=r.d.c&&(e=n);_&&(o=u(tr(t.f,h.d.i),57),e.bo.d.d+o.d.a?_.f.d=!0:(_.f.d=!0,_.f.a=!0))}for(d=new ar(lr(Uo(q).a.Kc(),new H));Vr(d);)h=u(Ir(d),17),h.a.b!=0&&(e=u(vj(h.a),8),h.d.j==(be(),On)&&(Z=new xC(e,new Re(e.a,s.d.d),s,h),Z.f.a=!0,Z.a=h.d,W.c[W.c.length]=Z),h.d.j==yr&&(Z=new xC(e,new Re(e.a,s.d.d+s.d.a),s,h),Z.f.d=!0,Z.a=h.d,W.c[W.c.length]=Z))}return W}function E5n(t,e,n){var r,s,o,h,d,w,k,_,M;if(mr(n,"Network simplex node placement",1),t.e=e,t.n=u(K(e,(ae(),X4)),304),$yn(t),ydn(t),ys(ec(new kn(null,new Tn(t.e.b,16)),new gQ),new E$t(t)),ys(Wi(ec(Wi(ec(new kn(null,new Tn(t.e.b,16)),new V9),new TQ),new _Q),new CQ),new k$t(t)),Be(Fe(K(t.e,(xe(),TS))))&&(h=zc(n,1),mr(h,"Straight Edges Pre-Processing",1),s4n(t),or(h)),efn(t.f),o=u(K(e,SS),19).a*t.f.a.c.length,lat(Xpt(Qpt(xnt(t.f),o),!1),zc(n,1)),t.d.a.gc()!=0){for(h=zc(n,1),mr(h,"Flexible Where Space Processing",1),d=u(Ov(Hj(xu(new kn(null,new Tn(t.f.a,16)),new pQ),new cQ)),19).a,w=u(Ov(qj(xu(new kn(null,new Tn(t.f.a,16)),new bQ),new uQ)),19).a,k=w-d,_=Iv(new Kb,t.f),M=Iv(new Kb,t.f),yf(lf(uf(cf(hf(new Sh,2e4),k),_),M)),ys(Wi(Wi(qnt(t.i),new vQ),new wQ),new yXt(d,_,k,M)),s=t.d.a.ec().Kc();s.Ob();)r=u(s.Pb(),213),r.g=1;lat(Xpt(Qpt(xnt(t.f),o),!1),zc(h,1)),or(h)}Be(Fe(K(e,TS)))&&(h=zc(n,1),mr(h,"Straight Edges Post-Processing",1),lgn(t),or(h)),H3n(t),t.e=null,t.f=null,t.i=null,t.c=null,nl(t.k),t.j=null,t.a=null,t.o=null,t.d.a.$b(),or(n)}function T5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(d=new S(t.a.b);d.a0)if(r=M.gc(),k=Cs(b.Math.floor((r+1)/2))-1,s=Cs(b.Math.ceil((r+1)/2))-1,e.o==V1)for(_=s;_>=k;_--)e.a[jt.p]==jt&&(W=u(M.Xb(_),46),G=u(W.a,10),!S0(n,W.b)&&q>t.b.e[G.p]&&(e.a[G.p]=jt,e.g[jt.p]=e.g[G.p],e.a[jt.p]=e.g[jt.p],e.f[e.g[jt.p].p]=(Fn(),!!(Be(e.f[e.g[jt.p].p])&jt.k==(Gn(),ca))),q=t.b.e[G.p]));else for(_=k;_<=s;_++)e.a[jt.p]==jt&&(bt=u(M.Xb(_),46),Z=u(bt.a,10),!S0(n,bt.b)&&q=G&&(Mt>G&&(q.c=Nt(Qn,Me,1,0,5,1),G=Mt),q.c[q.c.length]=h);q.c.length!=0&&(B=u(Pe(q,zz(e,q.c.length)),128),zn.a.Bc(B)!=null,B.s=W++,w5t(B,Qe,ce),q.c=Nt(Qn,Me,1,0,5,1))}for(jt=t.c.length+1,d=new S(t);d.aRn.s&&(Dl(n),Eu(Rn.i,r),r.c>0&&(r.a=Rn,ue(Rn.t,r),r.b=_e,ue(_e.i,r)))}function k6t(t){var e,n,r,s,o;switch(e=t.c,e){case 11:return t.Ml();case 12:return t.Ol();case 14:return t.Ql();case 15:return t.Tl();case 16:return t.Rl();case 17:return t.Ul();case 21:return mi(t),yi(),yi(),fA;case 10:switch(t.a){case 65:return t.yl();case 90:return t.Dl();case 122:return t.Kl();case 98:return t.El();case 66:return t.zl();case 60:return t.Jl();case 62:return t.Hl()}}switch(o=m5n(t),e=t.c,e){case 3:return t.Zl(o);case 4:return t.Xl(o);case 5:return t.Yl(o);case 0:if(t.a==123&&t.d=48&&e<=57){for(r=e-48;s=48&&e<=57;)if(r=r*10+e-48,r<0)throw nt(new Rr(Gr((Fr(),C8t))))}else throw nt(new Rr(Gr((Fr(),Jde))));if(n=r,e==44){if(s>=t.j)throw nt(new Rr(Gr((Fr(),e0e))));if((e=Ta(t.i,s++))>=48&&e<=57){for(n=e-48;s=48&&e<=57;)if(n=n*10+e-48,n<0)throw nt(new Rr(Gr((Fr(),C8t))));if(r>n)throw nt(new Rr(Gr((Fr(),n0e))))}else n=-1}if(e!=125)throw nt(new Rr(Gr((Fr(),t0e))));t.sl(s)?(o=(yi(),yi(),new Wm(9,o)),t.d=s+1):(o=(yi(),yi(),new Wm(3,o)),t.d=s),o.dm(r),o.cm(n),mi(t)}}return o}function Dhe(t,e,n,r,s){var o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn;for(W=new Jc(e.b),jt=new Jc(e.b),B=new Jc(e.b),We=new Jc(e.b),Z=new Jc(e.b),_e=si(e,0);_e.b!=_e.d.c;)for(Qt=u(ii(_e),11),d=new S(Qt.g);d.a0,bt=Qt.g.c.length>0,k&&bt?B.c[B.c.length]=Qt:k?W.c[W.c.length]=Qt:bt&&(jt.c[jt.c.length]=Qt);for(G=new S(W);G.a1)for(G=new A6((!t.a&&(t.a=new he(us,t,6,6)),t.a));G.e!=G.i.gc();)uC(G);for(h=u(At((!t.a&&(t.a=new he(us,t,6,6)),t.a),0),202),Z=xi,xi>Qt+jt?Z=Qt+jt:xice+W?bt=ce+W:KsQt-jt&&Zce-W&&btxi+hr?We=xi+hr:QtKs+_e?Qe=Ks+_e:cexi-hr&&WeKs-_e&&Qen&&(B=n-1),q=bN+pl(e,24)*PI*M-M/2,q<0?q=1:q>r&&(q=r-1),s=(Tv(),w=new mp,w),W$(s,B),K$(s,q),Or((!h.a&&(h.a=new Bs(Wh,h,5)),h.a),s)}function xe(){xe=X,eht=(di(),X3e),l_t=Q3e,AO=eAt,Tf=Z3e,Fx=nAt,Fw=J3e,Vy=rAt,vE=iAt,wE=sAt,nht=qG,Bw=G2,rht=t4e,CS=cAt,sG=zx,SO=(_6t(),Wve),Z4=Kve,$2=Yve,J4=Xve,Owe=new ao(zG,de(0)),bE=Vve,u_t=Gve,Px=Uve,w_t=wwe,h_t=Jve,f_t=nwe,sht=uwe,d_t=swe,g_t=owe,aG=kwe,aht=mwe,b_t=gwe,p_t=fwe,v_t=bwe,Nw=Rve,_S=jve,Xlt=nve,zTt=ive,i_t=new Mv(12),r_t=new ao(V2,i_t),RTt=(q0(),CE),X0=new ao(DSt,RTt),zy=new ao(ml,0),Nwe=new ao(gft,de(1)),UV=new ao(jx,P7),j2=$G,ws=US,pE=c5,Cwe=UO,Md=z3e,jy=i5,Pwe=new ao(pft,(Fn(),!0)),$y=WO,B2=oft,R2=H2,iG=mb,tht=jG,BTt=(fo(),c0),Xl=new ao(jw,BTt),Ow=a5,nG=$St,qy=Ky,Iwe=dft,o_t=JSt,a_t=(u4(),JO),new ao(KSt,a_t),Lwe=uft,Mwe=lft,Dwe=hft,Awe=cft,iht=Zve,ZTt=Cve,Zlt=_ve,SS=Qve,du=wve,Ry=K2e,ES=W2e,By=N2e,NTt=P2e,Ult=j2e,CO=F2e,Wlt=G2e,JTt=Sve,t_t=Ave,WTt=fve,rG=qve,Jlt=Dve,Qlt=ove,n_t=Fve,$Tt=tve,Ylt=eve,Glt=BG,e_t=Lve,KV=S2e,DTt=C2e,WV=_2e,VTt=lve,HTt=uve,GTt=hve,dE=o5,Oo=s5,Xg=OSt,Dd=aft,Klt=sft,PTt=z2e,Qg=fft,kS=V3e,JV=G3e,Pw=XSt,s_t=U3e,gE=W3e,YTt=yve,XTt=kve,Hy=$x,Hlt=T2e,QTt=Tve,ZV=Q2e,QV=X2e,eG=KO,KTt=pve,TS=Ove,LO=aAt,FTt=Y2e,c_t=Hve,jTt=Z2e,Swe=vve,_we=H2e,UTt=BSt,tG=mve,XV=V2e,pb=O2e,OTt=D2e,YV=L2e,ITt=M2e,Vlt=I2e,Nx=A2e,qTt=cve}function Nat(t,e){yat();var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi;if(We=t.e,G=t.d,s=t.a,We==0)switch(e){case 0:return"0";case 1:return M7;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return ce=new Ap,e<0?ce.a+="0E+":ce.a+="0E",ce.a+=-e,ce.a}if(St=G*10+1+7,jt=Nt(Eh,wd,25,St+1,15,1),n=St,G==1)if(d=s[0],d<0){xi=Gs(d,po);do W=xi,xi=eI(xi,10),jt[--n]=48+Mr(Qp(W,Ia(xi,10)))&Ms;while(_c(xi,0)!=0)}else{xi=d;do W=xi,xi=xi/10|0,jt[--n]=48+(W-xi*10)&Ms;while(xi!=0)}else{Rn=Nt(Sr,Jr,25,G,15,1),hr=G,Pc(s,0,Rn,0,hr);t:for(;;){for(_e=0,k=hr-1;k>=0;k--)zn=Ra(M0(_e,32),Gs(Rn[k],po)),bt=Pdn(zn),Rn[k]=Mr(bt),_e=Mr(Rp(bt,32));Mt=Mr(_e),Z=n;do jt[--n]=48+Mt%10&Ms;while((Mt=Mt/10|0)!=0&&n!=0);for(r=9-Z+n,w=0;w0;w++)jt[--n]=48;for(M=hr-1;Rn[M]==0;M--)if(M==0)break t;hr=M+1}for(;jt[n]==48;)++n}if(q=We<0,h=St-n-e-1,e==0)return q&&(jt[--n]=45),Ih(jt,n,St-n);if(e>0&&h>=-6){if(h>=0){for(_=n+h,B=St-1;B>=_;B--)jt[B+1]=jt[B];return jt[++_]=46,q&&(jt[--n]=45),Ih(jt,n,St-n+1)}for(M=2;M<-h+1;M++)jt[--n]=48;return jt[--n]=46,jt[--n]=48,q&&(jt[--n]=45),Ih(jt,n,St-n)}return Qe=n+1,o=St,Qt=new Lm,q&&(Qt.a+="-"),o-Qe>=1?($p(Qt,jt[n]),Qt.a+=".",Qt.a+=Ih(jt,n+1,St-n-1)):Qt.a+=Ih(jt,n,St-n),Qt.a+="E",h>0&&(Qt.a+="+"),Qt.a+=""+h,Qt.a}function Nhe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce;switch(t.c=e,t.g=new Ar,n=(Dm(),new Sm(t.c)),r=new er(n),s3t(r),St=jr(ze(t.c,(rI(),tSt))),w=u(ze(t.c,Xht),316),Qt=u(ze(t.c,Qht),429),h=u(ze(t.c,QCt),482),jt=u(ze(t.c,Yht),430),t.j=Zt(ve(ze(t.c,h3e))),d=t.a,w.g){case 0:d=t.a;break;case 1:d=t.b;break;case 2:d=t.i;break;case 3:d=t.e;break;case 4:d=t.f;break;default:throw nt(new Pn(pH+(w.f!=null?w.f:""+w.g)))}if(t.d=new iQt(d,Qt,h),ee(t.d,(q8(),uS),Fe(ze(t.c,u3e))),t.d.c=Be(Fe(ze(t.c,ZCt))),i$(t.c).i==0)return t.d;for(M=new nr(i$(t.c));M.e!=M.i.gc();){for(_=u(dr(M),33),q=_.g/2,B=_.f/2,ce=new Re(_.i+q,_.j+B);Ml(t.g,ce);)Fm(ce,(b.Math.random()-.5)*xd,(b.Math.random()-.5)*xd);W=u(ze(_,(di(),KO)),142),Z=new xQt(ce,new ch(ce.a-q-t.j/2-W.b,ce.b-B-t.j/2-W.d,_.g+t.j+(W.b+W.c),_.f+t.j+(W.d+W.a))),ue(t.d.i,Z),Ai(t.g,ce,new ya(Z,_))}switch(jt.g){case 0:if(St==null)t.d.d=u(Pe(t.d.i,0),65);else for(Mt=new S(t.d.i);Mt.a1&&ks(_,bt,_.c.b,_.c),H$(s)));bt=Mt}return _}function D5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks,eh,Zh,X1;for(mr(n,"Greedy cycle removal",1),St=e.a,X1=St.c.length,t.a=Nt(Sr,Jr,25,X1,15,1),t.c=Nt(Sr,Jr,25,X1,15,1),t.b=Nt(Sr,Jr,25,X1,15,1),k=0,bt=new S(St);bt.a0?hr+1:1);for(h=new S(ce.g);h.a0?hr+1:1)}t.c[k]==0?ai(t.e,W):t.a[k]==0&&ai(t.f,W),++k}for(G=-1,q=1,M=new le,t.d=u(K(e,(ae(),Ix)),230);X1>0;){for(;t.e.b!=0;)Ks=u(Tnt(t.e),10),t.b[Ks.p]=G--,G5t(t,Ks),--X1;for(;t.f.b!=0;)eh=u(Tnt(t.f),10),t.b[eh.p]=q++,G5t(t,eh),--X1;if(X1>0){for(B=Oa,Mt=new S(St);Mt.a=B&&(jt>B&&(M.c=Nt(Qn,Me,1,0,5,1),B=jt),M.c[M.c.length]=W));_=t.Zf(M),t.b[_.p]=q++,G5t(t,_),--X1}}for(xi=St.c.length+1,k=0;kt.b[Zh]&&(dw(r,!0),ee(e,xO,(Fn(),!0)));t.a=null,t.c=null,t.b=null,Mh(t.f),Mh(t.e),or(n)}function Fhe(t,e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;for(r=new le,d=new le,Z=e/2,q=t.gc(),s=u(t.Xb(0),8),bt=u(t.Xb(1),8),G=Kst(s.a,s.b,bt.a,bt.b,Z),ue(r,(Sn(0,G.c.length),u(G.c[0],8))),ue(d,(Sn(1,G.c.length),u(G.c[1],8))),k=2;k=0;w--)ai(n,(Sn(w,h.c.length),u(h.c[w],8)));return n}function I5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q;if(h=!0,M=null,r=null,s=null,e=!1,q=q4e,k=null,o=null,d=0,w=tst(t,d,UAt,WAt),w=0&&un(t.substr(d,2),"//")?(d+=2,w=tst(t,d,iA,sA),r=t.substr(d,w-d),d=w):M!=null&&(d==t.length||($r(d,t.length),t.charCodeAt(d)!=47))&&(h=!1,w=E2t(t,Lu(35),d),w==-1&&(w=t.length),r=t.substr(d,w-d),d=w);if(!n&&d0&&Ta(_,_.length-1)==58&&(s=_,d=w)),d=t.j){t.a=-1,t.c=1;return}if(e=Ta(t.i,t.d++),t.a=e,t.b==1){switch(e){case 92:if(r=10,t.d>=t.j)throw nt(new Rr(Gr((Fr(),kH))));t.a=Ta(t.i,t.d++);break;case 45:(t.e&512)==512&&t.d=t.j||Ta(t.i,t.d)!=63)break;if(++t.d>=t.j)throw nt(new Rr(Gr((Fr(),Zct))));switch(e=Ta(t.i,t.d++),e){case 58:r=13;break;case 61:r=14;break;case 33:r=15;break;case 91:r=19;break;case 62:r=18;break;case 60:if(t.d>=t.j)throw nt(new Rr(Gr((Fr(),Zct))));if(e=Ta(t.i,t.d++),e==61)r=16;else if(e==33)r=17;else throw nt(new Rr(Gr((Fr(),Pde))));break;case 35:for(;t.d=t.j)throw nt(new Rr(Gr((Fr(),kH))));t.a=Ta(t.i,t.d++);break;default:r=0}t.c=r}function N5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr;if(_e=u(K(t,(xe(),ws)),98),_e!=(va(),U1)&&_e!=kb){for(G=t.b,q=G.c.length,_=new Jc((ql(q+2,jat),q$(Ra(Ra(5,q+2),(q+2)/10|0)))),W=new Jc((ql(q+2,jat),q$(Ra(Ra(5,q+2),(q+2)/10|0)))),ue(_,new Ar),ue(_,new Ar),ue(W,new le),ue(W,new le),ce=new le,e=0;e=Qt||!ehn(bt,r))&&(r=DQt(e,_)),Lo(bt,r),o=new ar(lr(Uo(bt).a.Kc(),new H));Vr(o);)s=u(Ir(o),17),!t.a[s.p]&&(W=s.c.i,--t.e[W.p],t.e[W.p]==0&&A8(h7(q,W)));for(k=_.c.length-1;k>=0;--k)ue(e.b,(Sn(k,_.c.length),u(_.c[k],29)));e.a.c=Nt(Qn,Me,1,0,5,1),or(n)}function Bhe(t){var e,n,r,s,o,h,d,w,k;for(t.b=1,mi(t),e=null,t.c==0&&t.a==94?(mi(t),e=(yi(),yi(),new jl(4)),qc(e,0,G7),d=new jl(4)):d=(yi(),yi(),new jl(4)),s=!0;(k=t.c)!=1;){if(k==0&&t.a==93&&!s){e&&(CC(e,d),d=e);break}if(n=t.a,r=!1,k==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:vy(d,y7(n)),r=!0;break;case 105:case 73:case 99:case 67:n=(vy(d,y7(n)),-1),n<0&&(r=!0);break;case 112:case 80:if(w=J4t(t,n),!w)throw nt(new Rr(Gr((Fr(),Jct))));vy(d,w),r=!0;break;default:n=O5t(t)}else if(k==24&&!s){if(e&&(CC(e,d),d=e),o=Bhe(t),CC(d,o),t.c!=0||t.a!=93)throw nt(new Rr(Gr((Fr(),Gde))));break}if(mi(t),!r){if(k==0){if(n==91)throw nt(new Rr(Gr((Fr(),T8t))));if(n==93)throw nt(new Rr(Gr((Fr(),_8t))));if(n==45&&!s&&t.a!=93)throw nt(new Rr(Gr((Fr(),tut))))}if(t.c!=0||t.a!=45||n==45&&s)qc(d,n,n);else{if(mi(t),(k=t.c)==1)throw nt(new Rr(Gr((Fr(),EH))));if(k==0&&t.a==93)qc(d,n,n),qc(d,45,45);else{if(k==0&&t.a==93||k==24)throw nt(new Rr(Gr((Fr(),tut))));if(h=t.a,k==0){if(h==91)throw nt(new Rr(Gr((Fr(),T8t))));if(h==93)throw nt(new Rr(Gr((Fr(),_8t))));if(h==45)throw nt(new Rr(Gr((Fr(),tut))))}else k==10&&(h=O5t(t));if(mi(t),n>h)throw nt(new Rr(Gr((Fr(),Kde))));qc(d,n,h)}}}s=!1}if(t.c==1)throw nt(new Rr(Gr((Fr(),EH))));return v4(d),TC(d),t.b=0,mi(t),d}function F5n(t){Nr(t.c,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#decimal"])),Nr(t.d,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#integer"])),Nr(t.e,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#boolean"])),Nr(t.f,Zr,ut(ot(Le,1),re,2,6,[Na,"EBoolean",fi,"EBoolean:Object"])),Nr(t.i,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#byte"])),Nr(t.g,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#hexBinary"])),Nr(t.j,Zr,ut(ot(Le,1),re,2,6,[Na,"EByte",fi,"EByte:Object"])),Nr(t.n,Zr,ut(ot(Le,1),re,2,6,[Na,"EChar",fi,"EChar:Object"])),Nr(t.t,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#double"])),Nr(t.u,Zr,ut(ot(Le,1),re,2,6,[Na,"EDouble",fi,"EDouble:Object"])),Nr(t.F,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#float"])),Nr(t.G,Zr,ut(ot(Le,1),re,2,6,[Na,"EFloat",fi,"EFloat:Object"])),Nr(t.I,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#int"])),Nr(t.J,Zr,ut(ot(Le,1),re,2,6,[Na,"EInt",fi,"EInt:Object"])),Nr(t.N,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#long"])),Nr(t.O,Zr,ut(ot(Le,1),re,2,6,[Na,"ELong",fi,"ELong:Object"])),Nr(t.Z,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#short"])),Nr(t.$,Zr,ut(ot(Le,1),re,2,6,[Na,"EShort",fi,"EShort:Object"])),Nr(t._,Zr,ut(ot(Le,1),re,2,6,[Na,"http://www.w3.org/2001/XMLSchema#string"]))}function B5n(t){var e,n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr;if(t.c.length==1)return Sn(0,t.c.length),u(t.c[0],135);if(t.c.length<=0)return new A$;for(w=new S(t);w.aM&&(zn=0,hr+=_+_e,_=0),Wbn(Qt,h,zn,hr),e=b.Math.max(e,zn+ce.a),_=b.Math.max(_,ce.b),zn+=ce.a+_e;for(jt=new Ar,n=new Ar,Qe=new S(t);Qe.aYst(o))&&(M=o);for(!M&&(M=(Sn(0,Z.c.length),u(Z.c[0],180))),W=new S(e.b);W.a=-1900?1:0,n>=4?Yr(t,ut(ot(Le,1),re,2,6,[tfe,efe])[d]):Yr(t,ut(ot(Le,1),re,2,6,["BC","AD"])[d]);break;case 121:Dhn(t,n,r);break;case 77:Pwn(t,n,r);break;case 107:w=s.q.getHours(),w==0?Xd(t,24,n):Xd(t,w,n);break;case 83:n2n(t,n,s);break;case 69:_=r.q.getDay(),n==5?Yr(t,ut(ot(Le,1),re,2,6,["S","M","T","W","T","F","S"])[_]):n==4?Yr(t,ut(ot(Le,1),re,2,6,[Jat,tot,eot,not,rot,iot,sot])[_]):Yr(t,ut(ot(Le,1),re,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[_]);break;case 97:s.q.getHours()>=12&&s.q.getHours()<24?Yr(t,ut(ot(Le,1),re,2,6,["AM","PM"])[1]):Yr(t,ut(ot(Le,1),re,2,6,["AM","PM"])[0]);break;case 104:M=s.q.getHours()%12,M==0?Xd(t,12,n):Xd(t,M,n);break;case 75:B=s.q.getHours()%12,Xd(t,B,n);break;case 72:q=s.q.getHours(),Xd(t,q,n);break;case 99:G=r.q.getDay(),n==5?Yr(t,ut(ot(Le,1),re,2,6,["S","M","T","W","T","F","S"])[G]):n==4?Yr(t,ut(ot(Le,1),re,2,6,[Jat,tot,eot,not,rot,iot,sot])[G]):n==3?Yr(t,ut(ot(Le,1),re,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[G]):Xd(t,G,1);break;case 76:W=r.q.getMonth(),n==5?Yr(t,ut(ot(Le,1),re,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[W]):n==4?Yr(t,ut(ot(Le,1),re,2,6,[qat,Hat,Vat,Gat,ux,Uat,Wat,Kat,Yat,Xat,Qat,Zat])[W]):n==3?Yr(t,ut(ot(Le,1),re,2,6,["Jan","Feb","Mar","Apr",ux,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[W]):Xd(t,W+1,n);break;case 81:Z=r.q.getMonth()/3|0,n<4?Yr(t,ut(ot(Le,1),re,2,6,["Q1","Q2","Q3","Q4"])[Z]):Yr(t,ut(ot(Le,1),re,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[Z]);break;case 100:bt=r.q.getDate(),Xd(t,bt,n);break;case 109:k=s.q.getMinutes(),Xd(t,k,n);break;case 115:h=s.q.getSeconds(),Xd(t,h,n);break;case 122:n<4?Yr(t,o.c[0]):Yr(t,o.c[1]);break;case 118:Yr(t,o.b);break;case 90:n<3?Yr(t,Ggn(o)):n==3?Yr(t,Kgn(o)):Yr(t,Ygn(o.a));break;default:return!1}return!0}function T6t(t,e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi;if(Tue(e),w=u(At((!e.b&&(e.b=new En(vr,e,4,7)),e.b),0),82),_=u(At((!e.c&&(e.c=new En(vr,e,5,8)),e.c),0),82),d=Ro(w),k=Ro(_),h=(!e.a&&(e.a=new he(us,e,6,6)),e.a).i==0?null:u(At((!e.a&&(e.a=new he(us,e,6,6)),e.a),0),202),_e=u(tr(t.a,d),10),zn=u(tr(t.a,k),10),We=null,hr=null,_t(w,186)&&(ce=u(tr(t.a,w),299),_t(ce,11)?We=u(ce,11):_t(ce,10)&&(_e=u(ce,10),We=u(Pe(_e.j,0),11))),_t(_,186)&&(Rn=u(tr(t.a,_),299),_t(Rn,11)?hr=u(Rn,11):_t(Rn,10)&&(zn=u(Rn,10),hr=u(Pe(zn.j,0),11))),!_e||!zn)throw nt(new FT("The source or the target of edge "+e+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(W=new zv,Bo(W,e),ee(W,(ae(),Ii),e),ee(W,(xe(),Oo),null),q=u(K(r,Wc),21),_e==zn&&q.Fc((go(),wS)),We||(Qt=(ho(),su),Qe=null,h&&V3(u(K(_e,ws),98))&&(Qe=new Re(h.j,h.k),NZt(Qe,rD(e)),lJt(Qe,n),Zm(k,d)&&(Qt=al,Fi(Qe,_e.n))),We=kle(_e,Qe,Qt,r)),hr||(Qt=(ho(),al),xi=null,h&&V3(u(K(zn,ws),98))&&(xi=new Re(h.b,h.c),NZt(xi,rD(e)),lJt(xi,n)),hr=kle(zn,xi,Qt,$a(zn))),Ba(W,We),pa(W,hr),(We.e.c.length>1||We.g.c.length>1||hr.e.c.length>1||hr.g.c.length>1)&&q.Fc((go(),vS)),B=new nr((!e.n&&(e.n=new he(Yo,e,1,7)),e.n));B.e!=B.i.gc();)if(M=u(dr(B),137),!Be(Fe(ze(M,j2)))&&M.a)switch(Z=Pit(M),ue(W.b,Z),u(K(Z,Dd),272).g){case 1:case 2:q.Fc((go(),uE));break;case 0:q.Fc((go(),cE)),ee(Z,Dd,(D1(),TE))}if(o=u(K(r,ES),314),bt=u(K(r,rG),315),s=o==(K6(),wO)||bt==(aC(),fht),h&&(!h.a&&(h.a=new Bs(Wh,h,5)),h.a).i!=0&&s){for(Mt=sI(h),G=new ju,jt=si(Mt,0);jt.b!=jt.d.c;)St=u(ii(jt),8),ai(G,new So(St));ee(W,X9t,G)}return W}function z5n(t){t.gb||(t.gb=!0,t.b=hc(t,0),fs(t.b,18),Gi(t.b,19),t.a=hc(t,1),fs(t.a,1),Gi(t.a,2),Gi(t.a,3),Gi(t.a,4),Gi(t.a,5),t.o=hc(t,2),fs(t.o,8),fs(t.o,9),Gi(t.o,10),Gi(t.o,11),Gi(t.o,12),Gi(t.o,13),Gi(t.o,14),Gi(t.o,15),Gi(t.o,16),Gi(t.o,17),Gi(t.o,18),Gi(t.o,19),Gi(t.o,20),Gi(t.o,21),Gi(t.o,22),Gi(t.o,23),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),Do(t.o),t.p=hc(t,3),fs(t.p,2),fs(t.p,3),fs(t.p,4),fs(t.p,5),Gi(t.p,6),Gi(t.p,7),Do(t.p),Do(t.p),t.q=hc(t,4),fs(t.q,8),t.v=hc(t,5),Gi(t.v,9),Do(t.v),Do(t.v),Do(t.v),t.w=hc(t,6),fs(t.w,2),fs(t.w,3),fs(t.w,4),Gi(t.w,5),t.B=hc(t,7),Gi(t.B,1),Do(t.B),Do(t.B),Do(t.B),t.Q=hc(t,8),Gi(t.Q,0),Do(t.Q),t.R=hc(t,9),fs(t.R,1),t.S=hc(t,10),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),Do(t.S),t.T=hc(t,11),Gi(t.T,10),Gi(t.T,11),Gi(t.T,12),Gi(t.T,13),Gi(t.T,14),Do(t.T),Do(t.T),t.U=hc(t,12),fs(t.U,2),fs(t.U,3),Gi(t.U,4),Gi(t.U,5),Gi(t.U,6),Gi(t.U,7),Do(t.U),t.V=hc(t,13),Gi(t.V,10),t.W=hc(t,14),fs(t.W,18),fs(t.W,19),fs(t.W,20),Gi(t.W,21),Gi(t.W,22),Gi(t.W,23),t.bb=hc(t,15),fs(t.bb,10),fs(t.bb,11),fs(t.bb,12),fs(t.bb,13),fs(t.bb,14),fs(t.bb,15),fs(t.bb,16),Gi(t.bb,17),Do(t.bb),Do(t.bb),t.eb=hc(t,16),fs(t.eb,2),fs(t.eb,3),fs(t.eb,4),fs(t.eb,5),fs(t.eb,6),fs(t.eb,7),Gi(t.eb,8),Gi(t.eb,9),t.ab=hc(t,17),fs(t.ab,0),fs(t.ab,1),t.H=hc(t,18),Gi(t.H,0),Gi(t.H,1),Gi(t.H,2),Gi(t.H,3),Gi(t.H,4),Gi(t.H,5),Do(t.H),t.db=hc(t,19),Gi(t.db,2),t.c=hi(t,20),t.d=hi(t,21),t.e=hi(t,22),t.f=hi(t,23),t.i=hi(t,24),t.g=hi(t,25),t.j=hi(t,26),t.k=hi(t,27),t.n=hi(t,28),t.r=hi(t,29),t.s=hi(t,30),t.t=hi(t,31),t.u=hi(t,32),t.fb=hi(t,33),t.A=hi(t,34),t.C=hi(t,35),t.D=hi(t,36),t.F=hi(t,37),t.G=hi(t,38),t.I=hi(t,39),t.J=hi(t,40),t.L=hi(t,41),t.M=hi(t,42),t.N=hi(t,43),t.O=hi(t,44),t.P=hi(t,45),t.X=hi(t,46),t.Y=hi(t,47),t.Z=hi(t,48),t.$=hi(t,49),t._=hi(t,50),t.cb=hi(t,51),t.K=hi(t,52))}function di(){di=X;var t,e;GS=new ts(V1e),EE=new ts(G1e),CSt=(Qd(),tft),z3e=new vn(hkt,CSt),jx=new vn(px,null),q3e=new ts(s8t),ASt=(cy(),Ki(rft,ut(ot(ift,1),oe,291,0,[nft]))),BG=new vn(cH,ASt),UO=new vn(KI,(Fn(),!1)),LSt=(fo(),c0),jw=new vn(gkt,LSt),ISt=(q0(),bft),DSt=new vn(UI,ISt),PSt=new vn(gH,!1),FSt=($0(),HG),i5=new vn(oH,FSt),USt=new Mv(12),V2=new vn(ww,USt),RG=new vn($I,!1),BSt=new vn(vct,!1),YO=new vn(FC,!1),QSt=(va(),kb),US=new vn(Fot,QSt),$x=new ts(uH),zG=new ts(jI),gft=new ts(Hq),pft=new ts(PC),RSt=new ju,s5=new vn(Ekt,RSt),V3e=new vn(Ckt,!1),G3e=new vn(Skt,!1),jSt=new MT,KO=new vn(Lkt,jSt),$G=new vn(ukt,!1),Y3e=new vn(U1e,1),new vn(W1e,!0),de(0),new vn(K1e,de(100)),new vn(Y1e,!1),de(0),new vn(X1e,de(4e3)),de(0),new vn(Q1e,de(400)),new vn(Z1e,!1),new vn(J1e,!1),new vn(tde,!0),new vn(ede,!1),SSt=(Az(),yft),H3e=new vn(i8t,SSt),X3e=new vn(Qxt,10),Q3e=new vn(Zxt,10),eAt=new vn(Mot,20),Z3e=new vn(Jxt,10),nAt=new vn(Pot,2),J3e=new vn(tkt,10),rAt=new vn(ekt,0),qG=new vn(ikt,5),iAt=new vn(nkt,1),sAt=new vn(rkt,1),G2=new vn(ky,20),t4e=new vn(skt,10),cAt=new vn(akt,10),zx=new ts(okt),oAt=new aUt,aAt=new vn(Mkt,oAt),W3e=new ts(bct),WSt=!1,U3e=new vn(pct,WSt),zSt=new Mv(5),$St=new vn(pkt,zSt),qSt=(fy(),e=u(Wf(vo),9),new oh(e,u(ff(e,e.length),9),0)),a5=new vn(F7,qSt),YSt=(u4(),xb),KSt=new vn(wkt,YSt),uft=new ts(mkt),lft=new ts(ykt),hft=new ts(xkt),cft=new ts(kkt),HSt=(t=u(Wf(tA),9),new oh(t,u(ff(t,t.length),9),0)),H2=new vn(M4,HSt),GSt=on((bl(),AE)),mb=new vn(bx,GSt),VSt=new Re(0,0),o5=new vn(vx,VSt),jG=new vn(gct,!1),MSt=(D1(),TE),aft=new vn(Tkt,MSt),sft=new vn(Vq,!1),de(1),new vn(nde,null),XSt=new ts(Akt),fft=new ts(_kt),tAt=(be(),ac),c5=new vn(lkt,tAt),ml=new ts(ckt),ZSt=(il(),on(Eb)),Ky=new vn(B7,ZSt),dft=new vn(bkt,!1),JSt=new vn(vkt,!0),WO=new vn(fkt,!1),oft=new vn(dkt,!1),OSt=new vn(Dot,1),NSt=(tq(),wft),new vn(rde,NSt),K3e=!0}function ae(){ae=X;var t,e;Ii=new ts(oxt),U9t=new ts("coordinateOrigin"),$lt=new ts("processors"),G9t=new Hs("compoundNode",(Fn(),!1)),kO=new Hs("insideConnections",!1),X9t=new ts("originalBendpoints"),Q9t=new ts("originalDummyNodePosition"),Z9t=new ts("originalLabelEdge"),TO=new ts("representedLabels"),mS=new ts("endLabels"),Lx=new ts("endLabel.origin"),Dx=new Hs("labelSide",(Vl(),ZO)),K4=new Hs("maxEdgeThickness",0),H1=new Hs("reversed",!1),Ix=new ts(jfe),a1=new Hs("longEdgeSource",null),qh=new Hs("longEdgeTarget",null),Py=new Hs("longEdgeHasLabelDummies",!1),EO=new Hs("longEdgeBeforeLabelDummy",!1),HV=new Hs("edgeConstraint",(h2(),Elt)),Dw=new ts("inLayerLayoutUnit"),P2=new Hs("inLayerConstraint",(B0(),yO)),Mx=new Hs("inLayerSuccessorConstraint",new le),Y9t=new Hs("inLayerSuccessorConstraintBetweenNonDummies",!1),sl=new ts("portDummy"),qV=new Hs("crossingHint",de(0)),Wc=new Hs("graphProperties",(e=u(Wf(Mlt),9),new oh(e,u(ff(e,e.length),9),0))),gc=new Hs("externalPortSide",(be(),ac)),K9t=new Hs("externalPortSize",new Da),Plt=new ts("externalPortReplacedDummies"),VV=new ts("externalPortReplacedDummy"),Ny=new Hs("externalPortConnections",(t=u(Wf(Za),9),new oh(t,u(ff(t,t.length),9),0))),Iw=new Hs(Dfe,0),V9t=new ts("barycenterAssociates"),Ox=new ts("TopSideComments"),Ax=new ts("BottomSideComments"),zV=new ts("CommentConnectionPort"),Blt=new Hs("inputCollect",!1),jlt=new Hs("outputCollect",!1),xO=new Hs("cyclic",!1),W9t=new ts("crossHierarchyMap"),qlt=new ts("targetOffset"),new Hs("splineLabelSize",new Da),X4=new ts("spacings"),GV=new Hs("partitionConstraint",!1),Lw=new ts("breakingPoint.info"),eTt=new ts("splines.survivingEdge"),F2=new ts("splines.route.start"),Q4=new ts("splines.edgeChain"),tTt=new ts("originalPortConstraints"),hE=new ts("selfLoopHolder"),fE=new ts("splines.nsPortY"),Lc=new ts("modelOrder"),Rlt=new ts("longEdgeTargetNode"),Mw=new Hs(f1e,!1),Y4=new Hs(f1e,!1),Flt=new ts("layerConstraints.hiddenNodes"),J9t=new ts("layerConstraints.opposidePort"),zlt=new ts("targetNode.modelOrder")}function _6t(){_6t=X,fTt=(TD(),NV),Y2e=new vn(pxt,fTt),ove=new vn(bxt,(Fn(),!1)),wTt=(x$(),Nlt),fve=new vn(Kq,wTt),Sve=new vn(vxt,!1),Ave=new vn(wxt,!0),T2e=new vn(mxt,!1),CTt=(yD(),pht),Hve=new vn(yxt,CTt),de(1),Qve=new vn(xxt,de(7)),Zve=new vn(kxt,!1),cve=new vn(Ext,!1),hTt=(m2(),xlt),K2e=new vn(qot,hTt),xTt=(Zz(),cht),Cve=new vn(VI,xTt),mTt=(ph(),_O),wve=new vn(Txt,mTt),de(-1),vve=new vn(_xt,de(-1)),de(-1),mve=new vn(Cxt,de(-1)),de(-1),yve=new vn(Hot,de(4)),de(-1),kve=new vn(Vot,de(2)),yTt=(m4(),hG),_ve=new vn(Got,yTt),de(0),Tve=new vn(Uot,de(0)),pve=new vn(Wot,de(Ti)),lTt=(K6(),Cx),W2e=new vn($C,lTt),N2e=new vn(Sxt,!1),z2e=new vn(Kot,.1),G2e=new vn(Yot,!1),de(-1),H2e=new vn(Axt,de(-1)),de(-1),V2e=new vn(Lxt,de(-1)),de(0),P2e=new vn(Mxt,de(40)),uTt=(G8(),Ilt),j2e=new vn(Xot,uTt),cTt=mO,F2e=new vn(Yq,cTt),_Tt=(aC(),AS),qve=new vn(D4,_Tt),Ove=new ts(Xq),kTt=(bD(),FV),Lve=new vn(Qot,kTt),ETt=(nI(),BV),Dve=new vn(Zot,ETt),Fve=new vn(Jot,.3),Rve=new ts(tct),TTt=(sy(),lG),jve=new vn(ect,TTt),pTt=(uz(),vht),tve=new vn(Dxt,pTt),bTt=(lD(),wht),eve=new vn(Ixt,bTt),vTt=(Z8(),DS),nve=new vn(Qq,vTt),ive=new vn(Zq,.2),Z2e=new vn(nct,2),Wve=new vn(Oxt,null),Yve=new vn(Nxt,10),Kve=new vn(Pxt,10),Xve=new vn(Fxt,20),de(0),Vve=new vn(Bxt,de(0)),de(0),Gve=new vn(Rxt,de(0)),de(0),Uve=new vn(jxt,de(0)),_2e=new vn(rct,!1),iTt=(f7(),bS),S2e=new vn($xt,iTt),rTt=(I$(),mlt),C2e=new vn(zxt,rTt),lve=new vn(Jq,!1),de(0),uve=new vn(ict,de(16)),de(0),hve=new vn(sct,de(5)),LTt=(gz(),xht),wwe=new vn(Y0,LTt),Jve=new vn(tH,10),nwe=new vn(eH,1),ATt=(X$(),OV),uwe=new vn(zC,ATt),swe=new ts(act),STt=de(1),de(0),owe=new vn(oct,STt),MTt=(oz(),yht),kwe=new vn(nH,MTt),mwe=new ts(rH),gwe=new vn(iH,!0),fwe=new vn(sH,2),bwe=new vn(cct,!0),gTt=(nq(),PV),Q2e=new vn(qxt,gTt),dTt=(rx(),sE),X2e=new vn(Hxt,dTt),oTt=(j0(),bb),O2e=new vn(aH,oTt),I2e=new vn(Vxt,!1),sTt=(ew(),z4),A2e=new vn(uct,sTt),aTt=(Y_(),uht),D2e=new vn(Gxt,aTt),L2e=new vn(lct,0),M2e=new vn(hct,0),gve=klt,dve=wO,xve=cG,Eve=cG,bve=oht,q2e=($0(),np),U2e=Cx,$2e=Cx,B2e=Cx,R2e=np,Nve=LS,Pve=AS,Mve=AS,Ive=AS,Bve=dht,zve=LS,$ve=LS,rve=(q0(),qx),sve=qx,ave=DS,J2e=XO,twe=mE,ewe=Gy,rwe=mE,iwe=Gy,lwe=mE,hwe=Gy,awe=ylt,cwe=OV,Ewe=mE,Twe=Gy,ywe=mE,xwe=Gy,pwe=Gy,dwe=Gy,vwe=Gy}function co(){co=X,HEt=new Ls("DIRECTION_PREPROCESSOR",0),$Et=new Ls("COMMENT_PREPROCESSOR",1),hS=new Ls("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),slt=new Ls("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),c9t=new Ls("PARTITION_PREPROCESSOR",4),gV=new Ls("LABEL_DUMMY_INSERTER",5),TV=new Ls("SELF_LOOP_PREPROCESSOR",6),eE=new Ls("LAYER_CONSTRAINT_PREPROCESSOR",7),a9t=new Ls("PARTITION_MIDPROCESSOR",8),QEt=new Ls("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),i9t=new Ls("NODE_PROMOTION",10),tE=new Ls("LAYER_CONSTRAINT_POSTPROCESSOR",11),o9t=new Ls("PARTITION_POSTPROCESSOR",12),KEt=new Ls("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),u9t=new Ls("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),NEt=new Ls("BREAKING_POINT_INSERTER",15),wV=new Ls("LONG_EDGE_SPLITTER",16),alt=new Ls("PORT_SIDE_PROCESSOR",17),fV=new Ls("INVERTED_PORT_PROCESSOR",18),xV=new Ls("PORT_LIST_SORTER",19),h9t=new Ls("SORT_BY_INPUT_ORDER_OF_MODEL",20),yV=new Ls("NORTH_SOUTH_PORT_PREPROCESSOR",21),PEt=new Ls("BREAKING_POINT_PROCESSOR",22),s9t=new Ls(i1e,23),f9t=new Ls(s1e,24),kV=new Ls("SELF_LOOP_PORT_RESTORER",25),l9t=new Ls("SINGLE_EDGE_GRAPH_WRAPPER",26),dV=new Ls("IN_LAYER_CONSTRAINT_PROCESSOR",27),GEt=new Ls("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),n9t=new Ls("LABEL_AND_NODE_SIZE_PROCESSOR",29),e9t=new Ls("INNERMOST_NODE_MARGIN_CALCULATOR",30),_V=new Ls("SELF_LOOP_ROUTER",31),REt=new Ls("COMMENT_NODE_MARGIN_CALCULATOR",32),hV=new Ls("END_LABEL_PREPROCESSOR",33),bV=new Ls("LABEL_DUMMY_SWITCHER",34),BEt=new Ls("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),J7=new Ls("LABEL_SIDE_SELECTOR",36),JEt=new Ls("HYPEREDGE_DUMMY_MERGER",37),YEt=new Ls("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),r9t=new Ls("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),fS=new Ls("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),zEt=new Ls("CONSTRAINTS_POSTPROCESSOR",41),jEt=new Ls("COMMENT_POSTPROCESSOR",42),t9t=new Ls("HYPERNODE_PROCESSOR",43),XEt=new Ls("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),vV=new Ls("LONG_EDGE_JOINER",45),EV=new Ls("SELF_LOOP_POSTPROCESSOR",46),FEt=new Ls("BREAKING_POINT_REMOVER",47),mV=new Ls("NORTH_SOUTH_PORT_POSTPROCESSOR",48),ZEt=new Ls("HORIZONTAL_COMPACTOR",49),pV=new Ls("LABEL_DUMMY_REMOVER",50),UEt=new Ls("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),VEt=new Ls("END_LABEL_SORTER",52),bO=new Ls("REVERSED_EDGE_RESTORER",53),lV=new Ls("END_LABEL_POSTPROCESSOR",54),WEt=new Ls("HIERARCHICAL_NODE_RESIZER",55),qEt=new Ls("DIRECTION_POSTPROCESSOR",56)}function q5n(t,e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe,Rn,zn,hr,xi,Ks,eh,Zh,X1,hU,bN,dA,vN,OE,Fft,j5e,Bft,cp,Gw,NE,wN,mN,Kx,Rft,gA,$5e,SLt,Uw,pA,jft,Yx,bA,i3,vA,$ft,z5e;for(SLt=0,xi=e,Zh=0,bN=xi.length;Zh0&&(t.a[cp.p]=SLt++)}for(bA=0,Ks=n,X1=0,dA=Ks.length;X10;){for(cp=(Zn(mN.b>0),u(mN.a.Xb(mN.c=--mN.b),11)),wN=0,d=new S(cp.e);d.a0&&(cp.j==(be(),On)?(t.a[cp.p]=bA,++bA):(t.a[cp.p]=bA+vN+Fft,++Fft))}bA+=Fft}for(NE=new Ar,G=new A0,hr=e,eh=0,hU=hr.length;ehk.b&&(k.b=Kx)):cp.i.c==$5e&&(Kxk.c&&(k.c=Kx));for(M8(W,0,W.length,null),Yx=Nt(Sr,Jr,25,W.length,15,1),r=Nt(Sr,Jr,25,bA+1,15,1),bt=0;bt0;)_e%2>0&&(s+=$ft[_e+1]),_e=(_e-1)/2|0,++$ft[_e];for(Qe=Nt(dme,Me,362,W.length*2,0,1),jt=0;jt'?":un(Pde,t)?"'(?<' or '(? toIndex: ",R6t=", toIndex: ",j6t="Index: ",$6t=", Size: ",D7="org.eclipse.elk.alg.common",qi={62:1},dfe="org.eclipse.elk.alg.common.compaction",gfe="Scanline/EventHandler",r0="org.eclipse.elk.alg.common.compaction.oned",pfe="CNode belongs to another CGroup.",bfe="ISpacingsHandler/1",wot="The ",mot=" instance has been finished already.",vfe="The direction ",wfe=" is not supported by the CGraph instance.",mfe="OneDimensionalCompactor",yfe="OneDimensionalCompactor/lambda$0$Type",xfe="Quadruplet",kfe="ScanlineConstraintCalculator",Efe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",Tfe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",_fe="ScanlineConstraintCalculator/Timestamp",Cfe="ScanlineConstraintCalculator/lambda$0$Type",md={169:1,45:1},yot="org.eclipse.elk.alg.common.compaction.options",sc="org.eclipse.elk.core.data",z6t="org.eclipse.elk.polyomino.traversalStrategy",q6t="org.eclipse.elk.polyomino.lowLevelSort",H6t="org.eclipse.elk.polyomino.highLevelSort",V6t="org.eclipse.elk.polyomino.fill",Ph={130:1},xot="polyomino",IC="org.eclipse.elk.alg.common.networksimplex",i0={177:1,3:1,4:1},Sfe="org.eclipse.elk.alg.common.nodespacing",T2="org.eclipse.elk.alg.common.nodespacing.cellsystem",I7="CENTER",Afe={212:1,326:1},G6t={3:1,4:1,5:1,595:1},fx="LEFT",dx="RIGHT",U6t="Vertical alignment cannot be null",W6t="BOTTOM",Bq="org.eclipse.elk.alg.common.nodespacing.internal",OC="UNDEFINED",R1=.01,FI="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",Lfe="LabelPlacer/lambda$0$Type",Mfe="LabelPlacer/lambda$1$Type",Dfe="portRatioOrPosition",O7="org.eclipse.elk.alg.common.overlaps",kot="DOWN",yd="org.eclipse.elk.alg.common.polyomino",Rq="NORTH",Eot="EAST",Tot="SOUTH",_ot="WEST",jq="org.eclipse.elk.alg.common.polyomino.structures",K6t="Direction",Cot="Grid is only of size ",Sot=". Requested point (",Aot=") is out of bounds.",$q=" Given center based coordinates were (",BI="org.eclipse.elk.graph.properties",Ife="IPropertyHolder",Y6t={3:1,94:1,134:1},gx="org.eclipse.elk.alg.common.spore",Ofe="org.eclipse.elk.alg.common.utils",_2={209:1},A4="org.eclipse.elk.core",Nfe="Connected Components Compaction",Pfe="org.eclipse.elk.alg.disco",zq="org.eclipse.elk.alg.disco.graph",Lot="org.eclipse.elk.alg.disco.options",X6t="CompactionStrategy",Q6t="org.eclipse.elk.disco.componentCompaction.strategy",Z6t="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",J6t="org.eclipse.elk.disco.debug.discoGraph",txt="org.eclipse.elk.disco.debug.discoPolys",Ffe="componentCompaction",C2="org.eclipse.elk.disco",Mot="org.eclipse.elk.spacing.componentComponent",Dot="org.eclipse.elk.edge.thickness",px="org.eclipse.elk.aspectRatio",ww="org.eclipse.elk.padding",L4="org.eclipse.elk.alg.disco.transform",Iot=1.5707963267948966,N7=17976931348623157e292,xy={3:1,4:1,5:1,192:1},ext={3:1,6:1,4:1,5:1,106:1,120:1},nxt="org.eclipse.elk.alg.force",rxt="ComponentsProcessor",Bfe="ComponentsProcessor/1",RI="org.eclipse.elk.alg.force.graph",Rfe="Component Layout",ixt="org.eclipse.elk.alg.force.model",qq="org.eclipse.elk.force.model",sxt="org.eclipse.elk.force.iterations",axt="org.eclipse.elk.force.repulsivePower",Oot="org.eclipse.elk.force.temperature",xd=.001,Not="org.eclipse.elk.force.repulsion",NC="org.eclipse.elk.alg.force.options",P7=1.600000023841858,Wl="org.eclipse.elk.force",jI="org.eclipse.elk.priority",ky="org.eclipse.elk.spacing.nodeNode",Pot="org.eclipse.elk.spacing.edgeLabel",Hq="org.eclipse.elk.randomSeed",PC="org.eclipse.elk.separateConnectedComponents",$I="org.eclipse.elk.interactive",Fot="org.eclipse.elk.portConstraints",Vq="org.eclipse.elk.edgeLabels.inline",FC="org.eclipse.elk.omitNodeMicroLayout",bx="org.eclipse.elk.nodeSize.options",M4="org.eclipse.elk.nodeSize.constraints",F7="org.eclipse.elk.nodeLabels.placement",B7="org.eclipse.elk.portLabels.placement",oxt="origin",jfe="random",$fe="boundingBox.upLeft",zfe="boundingBox.lowRight",cxt="org.eclipse.elk.stress.fixed",uxt="org.eclipse.elk.stress.desiredEdgeLength",lxt="org.eclipse.elk.stress.dimension",hxt="org.eclipse.elk.stress.epsilon",fxt="org.eclipse.elk.stress.iterationLimit",sb="org.eclipse.elk.stress",qfe="ELK Stress",vx="org.eclipse.elk.nodeSize.minimum",Gq="org.eclipse.elk.alg.force.stress",Hfe="Layered layout",wx="org.eclipse.elk.alg.layered",zI="org.eclipse.elk.alg.layered.compaction.components",BC="org.eclipse.elk.alg.layered.compaction.oned",Uq="org.eclipse.elk.alg.layered.compaction.oned.algs",S2="org.eclipse.elk.alg.layered.compaction.recthull",kd="org.eclipse.elk.alg.layered.components",K0="NONE",Cc={3:1,6:1,4:1,9:1,5:1,122:1},Vfe={3:1,6:1,4:1,5:1,141:1,106:1,120:1},Wq="org.eclipse.elk.alg.layered.compound",vs={51:1},ru="org.eclipse.elk.alg.layered.graph",Bot=" -> ",Gfe="Not supported by LGraph",dxt="Port side is undefined",Rot={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},Gg={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},Ufe={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},Wfe=`([{"' \r +`,Kfe=`)]}"' \r +`,Yfe="The given string contains parts that cannot be parsed as numbers.",qI="org.eclipse.elk.core.math",Xfe={3:1,4:1,142:1,207:1,414:1},Qfe={3:1,4:1,116:1,207:1,414:1},Un="org.eclipse.elk.layered",Ug="org.eclipse.elk.alg.layered.graph.transform",Zfe="ElkGraphImporter",Jfe="ElkGraphImporter/lambda$0$Type",t1e="ElkGraphImporter/lambda$1$Type",e1e="ElkGraphImporter/lambda$2$Type",n1e="ElkGraphImporter/lambda$4$Type",r1e="Node margin calculation",$n="org.eclipse.elk.alg.layered.intermediate",i1e="ONE_SIDED_GREEDY_SWITCH",s1e="TWO_SIDED_GREEDY_SWITCH",jot="No implementation is available for the layout processor ",gxt="IntermediateProcessorStrategy",$ot="Node '",a1e="FIRST_SEPARATE",o1e="LAST_SEPARATE",c1e="Odd port side processing",Ps="org.eclipse.elk.alg.layered.intermediate.compaction",RC="org.eclipse.elk.alg.layered.intermediate.greedyswitch",s0="org.eclipse.elk.alg.layered.p3order.counting",HI={225:1},mx="org.eclipse.elk.alg.layered.intermediate.loops",Kl="org.eclipse.elk.alg.layered.intermediate.loops.ordering",ab="org.eclipse.elk.alg.layered.intermediate.loops.routing",jC="org.eclipse.elk.alg.layered.intermediate.preserveorder",Ed="org.eclipse.elk.alg.layered.intermediate.wrapping",Sc="org.eclipse.elk.alg.layered.options",zot="INTERACTIVE",u1e="DEPTH_FIRST",l1e="EDGE_LENGTH",h1e="SELF_LOOPS",f1e="firstTryWithInitialOrder",pxt="org.eclipse.elk.layered.directionCongruency",bxt="org.eclipse.elk.layered.feedbackEdges",Kq="org.eclipse.elk.layered.interactiveReferencePoint",vxt="org.eclipse.elk.layered.mergeEdges",wxt="org.eclipse.elk.layered.mergeHierarchyEdges",mxt="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",yxt="org.eclipse.elk.layered.portSortingStrategy",xxt="org.eclipse.elk.layered.thoroughness",kxt="org.eclipse.elk.layered.unnecessaryBendpoints",Ext="org.eclipse.elk.layered.generatePositionAndLayerIds",qot="org.eclipse.elk.layered.cycleBreaking.strategy",VI="org.eclipse.elk.layered.layering.strategy",Txt="org.eclipse.elk.layered.layering.layerConstraint",_xt="org.eclipse.elk.layered.layering.layerChoiceConstraint",Cxt="org.eclipse.elk.layered.layering.layerId",Hot="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Vot="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Got="org.eclipse.elk.layered.layering.nodePromotion.strategy",Uot="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",Wot="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",$C="org.eclipse.elk.layered.crossingMinimization.strategy",Sxt="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Kot="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",Yot="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Axt="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",Lxt="org.eclipse.elk.layered.crossingMinimization.positionId",Mxt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Xot="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",Yq="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",D4="org.eclipse.elk.layered.nodePlacement.strategy",Xq="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Qot="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Zot="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Jot="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",tct="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",ect="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",Dxt="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Ixt="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",Qq="org.eclipse.elk.layered.edgeRouting.splines.mode",Zq="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",nct="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",Oxt="org.eclipse.elk.layered.spacing.baseValue",Nxt="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Pxt="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Fxt="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",Bxt="org.eclipse.elk.layered.priority.direction",Rxt="org.eclipse.elk.layered.priority.shortness",jxt="org.eclipse.elk.layered.priority.straightness",rct="org.eclipse.elk.layered.compaction.connectedComponents",$xt="org.eclipse.elk.layered.compaction.postCompaction.strategy",zxt="org.eclipse.elk.layered.compaction.postCompaction.constraints",Jq="org.eclipse.elk.layered.highDegreeNodes.treatment",ict="org.eclipse.elk.layered.highDegreeNodes.threshold",sct="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Y0="org.eclipse.elk.layered.wrapping.strategy",tH="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",eH="org.eclipse.elk.layered.wrapping.correctionFactor",zC="org.eclipse.elk.layered.wrapping.cutting.strategy",act="org.eclipse.elk.layered.wrapping.cutting.cuts",oct="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",nH="org.eclipse.elk.layered.wrapping.validify.strategy",rH="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",iH="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",sH="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",cct="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",qxt="org.eclipse.elk.layered.edgeLabels.sideSelection",Hxt="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",aH="org.eclipse.elk.layered.considerModelOrder.strategy",Vxt="org.eclipse.elk.layered.considerModelOrder.noModelOrder",uct="org.eclipse.elk.layered.considerModelOrder.components",Gxt="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",lct="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",hct="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",fct="layering",d1e="layering.minWidth",g1e="layering.nodePromotion",GI="crossingMinimization",oH="org.eclipse.elk.hierarchyHandling",p1e="crossingMinimization.greedySwitch",b1e="nodePlacement",v1e="nodePlacement.bk",w1e="edgeRouting",UI="org.eclipse.elk.edgeRouting",j1="spacing",Uxt="priority",Wxt="compaction",m1e="compaction.postCompaction",y1e="Specifies whether and how post-process compaction is applied.",Kxt="highDegreeNodes",Yxt="wrapping",x1e="wrapping.cutting",k1e="wrapping.validify",Xxt="wrapping.multiEdge",dct="edgeLabels",WI="considerModelOrder",Qxt="org.eclipse.elk.spacing.commentComment",Zxt="org.eclipse.elk.spacing.commentNode",Jxt="org.eclipse.elk.spacing.edgeEdge",tkt="org.eclipse.elk.spacing.edgeNode",ekt="org.eclipse.elk.spacing.labelLabel",nkt="org.eclipse.elk.spacing.labelPortHorizontal",rkt="org.eclipse.elk.spacing.labelPortVertical",ikt="org.eclipse.elk.spacing.labelNode",skt="org.eclipse.elk.spacing.nodeSelfLoop",akt="org.eclipse.elk.spacing.portPort",okt="org.eclipse.elk.spacing.individual",ckt="org.eclipse.elk.port.borderOffset",ukt="org.eclipse.elk.noLayout",lkt="org.eclipse.elk.port.side",KI="org.eclipse.elk.debugMode",hkt="org.eclipse.elk.alignment",fkt="org.eclipse.elk.insideSelfLoops.activate",dkt="org.eclipse.elk.insideSelfLoops.yo",gct="org.eclipse.elk.nodeSize.fixedGraphSize",gkt="org.eclipse.elk.direction",pkt="org.eclipse.elk.nodeLabels.padding",bkt="org.eclipse.elk.portLabels.nextToPortIfPossible",vkt="org.eclipse.elk.portLabels.treatAsGroup",wkt="org.eclipse.elk.portAlignment.default",mkt="org.eclipse.elk.portAlignment.north",ykt="org.eclipse.elk.portAlignment.south",xkt="org.eclipse.elk.portAlignment.west",kkt="org.eclipse.elk.portAlignment.east",cH="org.eclipse.elk.contentAlignment",Ekt="org.eclipse.elk.junctionPoints",Tkt="org.eclipse.elk.edgeLabels.placement",_kt="org.eclipse.elk.port.index",Ckt="org.eclipse.elk.commentBox",Skt="org.eclipse.elk.hypernode",Akt="org.eclipse.elk.port.anchor",pct="org.eclipse.elk.partitioning.activate",bct="org.eclipse.elk.partitioning.partition",uH="org.eclipse.elk.position",Lkt="org.eclipse.elk.margins",Mkt="org.eclipse.elk.spacing.portsSurrounding",vct="org.eclipse.elk.interactiveLayout",Ac="org.eclipse.elk.core.util",Dkt={3:1,4:1,5:1,593:1},E1e="NETWORK_SIMPLEX",Vc={123:1,51:1},lH="org.eclipse.elk.alg.layered.p1cycles",Ey="org.eclipse.elk.alg.layered.p2layers",Ikt={402:1,225:1},T1e={832:1,3:1,4:1},Wu="org.eclipse.elk.alg.layered.p3order",bo="org.eclipse.elk.alg.layered.p4nodes",_1e={3:1,4:1,5:1,840:1},Td=1e-5,ob="org.eclipse.elk.alg.layered.p4nodes.bk",wct="org.eclipse.elk.alg.layered.p5edges",r1="org.eclipse.elk.alg.layered.p5edges.orthogonal",mct="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",yct=1e-6,Ty="org.eclipse.elk.alg.layered.p5edges.splines",xct=.09999999999999998,hH=1e-8,C1e=4.71238898038469,S1e=3.141592653589793,qC="org.eclipse.elk.alg.mrtree",HC="org.eclipse.elk.alg.mrtree.graph",yx="org.eclipse.elk.alg.mrtree.intermediate",A1e="Set neighbors in level",L1e="DESCENDANTS",Okt="org.eclipse.elk.mrtree.weighting",Nkt="org.eclipse.elk.mrtree.searchOrder",fH="org.eclipse.elk.alg.mrtree.options",Wg="org.eclipse.elk.mrtree",M1e="org.eclipse.elk.tree",Pkt="org.eclipse.elk.alg.radial",I4=6.283185307179586,Fkt=5e-324,D1e="org.eclipse.elk.alg.radial.intermediate",kct="org.eclipse.elk.alg.radial.intermediate.compaction",I1e={3:1,4:1,5:1,106:1},Bkt="org.eclipse.elk.alg.radial.intermediate.optimization",Ect="No implementation is available for the layout option ",VC="org.eclipse.elk.alg.radial.options",Rkt="org.eclipse.elk.radial.orderId",jkt="org.eclipse.elk.radial.radius",Tct="org.eclipse.elk.radial.compactor",_ct="org.eclipse.elk.radial.compactionStepSize",$kt="org.eclipse.elk.radial.sorter",zkt="org.eclipse.elk.radial.wedgeCriteria",qkt="org.eclipse.elk.radial.optimizationCriteria",_d="org.eclipse.elk.radial",O1e="org.eclipse.elk.alg.radial.p1position.wedge",Hkt="org.eclipse.elk.alg.radial.sorting",N1e=5.497787143782138,P1e=3.9269908169872414,F1e=2.356194490192345,B1e="org.eclipse.elk.alg.rectpacking",dH="org.eclipse.elk.alg.rectpacking.firstiteration",Cct="org.eclipse.elk.alg.rectpacking.options",Vkt="org.eclipse.elk.rectpacking.optimizationGoal",Gkt="org.eclipse.elk.rectpacking.lastPlaceShift",Ukt="org.eclipse.elk.rectpacking.currentPosition",Wkt="org.eclipse.elk.rectpacking.desiredPosition",Kkt="org.eclipse.elk.rectpacking.onlyFirstIteration",Ykt="org.eclipse.elk.rectpacking.rowCompaction",Sct="org.eclipse.elk.rectpacking.expandToAspectRatio",Xkt="org.eclipse.elk.rectpacking.targetWidth",gH="org.eclipse.elk.expandNodes",Fh="org.eclipse.elk.rectpacking",YI="org.eclipse.elk.alg.rectpacking.util",pH="No implementation available for ",_y="org.eclipse.elk.alg.spore",Cy="org.eclipse.elk.alg.spore.options",mw="org.eclipse.elk.sporeCompaction",Act="org.eclipse.elk.underlyingLayoutAlgorithm",Qkt="org.eclipse.elk.processingOrder.treeConstruction",Zkt="org.eclipse.elk.processingOrder.spanningTreeCostFunction",Lct="org.eclipse.elk.processingOrder.preferredRoot",Mct="org.eclipse.elk.processingOrder.rootSelection",Dct="org.eclipse.elk.structure.structureExtractionStrategy",Jkt="org.eclipse.elk.compaction.compactionStrategy",t8t="org.eclipse.elk.compaction.orthogonal",e8t="org.eclipse.elk.overlapRemoval.maxIterations",n8t="org.eclipse.elk.overlapRemoval.runScanline",Ict="processingOrder",R1e="overlapRemoval",R7="org.eclipse.elk.sporeOverlap",j1e="org.eclipse.elk.alg.spore.p1structure",Oct="org.eclipse.elk.alg.spore.p2processingorder",Nct="org.eclipse.elk.alg.spore.p3execution",$1e="Invalid index: ",j7="org.eclipse.elk.core.alg",O4={331:1},Sy={288:1},z1e="Make sure its type is registered with the ",r8t=" utility class.",$7="true",Pct="false",q1e="Couldn't clone property '",yw=.05,Bh="org.eclipse.elk.core.options",H1e=1.2999999523162842,xw="org.eclipse.elk.box",i8t="org.eclipse.elk.box.packingMode",V1e="org.eclipse.elk.algorithm",G1e="org.eclipse.elk.resolvedAlgorithm",s8t="org.eclipse.elk.bendPoints",W5n="org.eclipse.elk.labelManager",U1e="org.eclipse.elk.scaleFactor",W1e="org.eclipse.elk.animate",K1e="org.eclipse.elk.animTimeFactor",Y1e="org.eclipse.elk.layoutAncestors",X1e="org.eclipse.elk.maxAnimTime",Q1e="org.eclipse.elk.minAnimTime",Z1e="org.eclipse.elk.progressBar",J1e="org.eclipse.elk.validateGraph",tde="org.eclipse.elk.validateOptions",ede="org.eclipse.elk.zoomToFit",K5n="org.eclipse.elk.font.name",nde="org.eclipse.elk.font.size",rde="org.eclipse.elk.edge.type",ide="partitioning",sde="nodeLabels",bH="portAlignment",Fct="nodeSize",Bct="port",a8t="portLabels",ade="insideSelfLoops",GC="org.eclipse.elk.fixed",vH="org.eclipse.elk.random",ode="port must have a parent node to calculate the port side",cde="The edge needs to have exactly one edge section. Found: ",UC="org.eclipse.elk.core.util.adapters",vh="org.eclipse.emf.ecore",N4="org.eclipse.elk.graph",ude="EMapPropertyHolder",lde="ElkBendPoint",hde="ElkGraphElement",fde="ElkConnectableShape",o8t="ElkEdge",dde="ElkEdgeSection",gde="EModelElement",pde="ENamedElement",c8t="ElkLabel",u8t="ElkNode",l8t="ElkPort",bde={92:1,90:1},xx="org.eclipse.emf.common.notify.impl",cb="The feature '",WC="' is not a valid changeable feature",vde="Expecting null",Rct="' is not a valid feature",wde="The feature ID",mde=" is not a valid feature ID",yc=32768,yde={105:1,92:1,90:1,56:1,49:1,97:1},Ln="org.eclipse.emf.ecore.impl",A2="org.eclipse.elk.graph.impl",KC="Recursive containment not allowed for ",z7="The datatype '",kw="' is not a valid classifier",jct="The value '",P4={190:1,3:1,4:1},$ct="The class '",q7="http://www.eclipse.org/elk/ElkGraph",xf=1024,h8t="property",YC="value",zct="source",xde="properties",kde="identifier",qct="height",Hct="width",Vct="parent",Gct="text",Uct="children",Ede="hierarchical",f8t="sources",Wct="targets",d8t="sections",wH="bendPoints",g8t="outgoingShape",p8t="incomingShape",b8t="outgoingSections",v8t="incomingSections",qa="org.eclipse.emf.common.util",w8t="Severe implementation error in the Json to ElkGraph importer.",Cd="id",Ca="org.eclipse.elk.graph.json",m8t="Unhandled parameter types: ",Tde="startPoint",_de="An edge must have at least one source and one target (edge id: '",H7="').",Cde="Referenced edge section does not exist: ",Sde=" (edge id: '",y8t="target",Ade="sourcePoint",Lde="targetPoint",mH="group",fi="name",Mde="connectableShape cannot be null",Dde="edge cannot be null",Kct="Passed edge is not 'simple'.",yH="org.eclipse.elk.graph.util",XI="The 'no duplicates' constraint is violated",Yct="targetIndex=",L2=", size=",Xct="sourceIndex=",Sd={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},Qct={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},xH="logging",Ide="measureExecutionTime",Ode="parser.parse.1",Nde="parser.parse.2",kH="parser.next.1",Zct="parser.next.2",Pde="parser.next.3",Fde="parser.next.4",M2="parser.factor.1",x8t="parser.factor.2",Bde="parser.factor.3",Rde="parser.factor.4",jde="parser.factor.5",$de="parser.factor.6",zde="parser.atom.1",qde="parser.atom.2",Hde="parser.atom.3",k8t="parser.atom.4",Jct="parser.atom.5",E8t="parser.cc.1",EH="parser.cc.2",Vde="parser.cc.3",Gde="parser.cc.5",T8t="parser.cc.6",_8t="parser.cc.7",tut="parser.cc.8",Ude="parser.ope.1",Wde="parser.ope.2",Kde="parser.ope.3",Kg="parser.descape.1",Yde="parser.descape.2",Xde="parser.descape.3",Qde="parser.descape.4",Zde="parser.descape.5",wh="parser.process.1",Jde="parser.quantifier.1",t0e="parser.quantifier.2",e0e="parser.quantifier.3",n0e="parser.quantifier.4",C8t="parser.quantifier.5",r0e="org.eclipse.emf.common.notify",S8t={415:1,672:1},i0e={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},QI={366:1,143:1},XC="index=",eut={3:1,4:1,5:1,126:1},s0e={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},A8t={3:1,6:1,4:1,5:1,192:1},a0e={3:1,4:1,5:1,165:1,367:1},o0e=";/?:@&=+$,",c0e="invalid authority: ",u0e="EAnnotation",l0e="ETypedElement",h0e="EStructuralFeature",f0e="EAttribute",d0e="EClassifier",g0e="EEnumLiteral",p0e="EGenericType",b0e="EOperation",v0e="EParameter",w0e="EReference",m0e="ETypeParameter",Yi="org.eclipse.emf.ecore.util",nut={76:1},L8t={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},y0e="org.eclipse.emf.ecore.util.FeatureMap$Entry",Ku=8192,Ay=2048,QC="byte",TH="char",ZC="double",JC="float",tS="int",eS="long",nS="short",x0e="java.lang.Object",F4={3:1,4:1,5:1,247:1},M8t={3:1,4:1,5:1,673:1},k0e={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},Ko={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},ZI="mixed",Zr="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",Rh="kind",E0e={3:1,4:1,5:1,674:1},D8t={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},_H={20:1,28:1,52:1,14:1,15:1,58:1,69:1},CH={47:1,125:1,279:1},SH={72:1,332:1},AH="The value of type '",LH="' must be of type '",B4=1316,jh="http://www.eclipse.org/emf/2002/Ecore",MH=-32768,Ew="constraints",Na="baseType",T0e="getEStructuralFeature",_0e="getFeatureID",rS="feature",C0e="getOperationID",I8t="operation",S0e="defaultValue",A0e="eTypeParameters",L0e="isInstance",M0e="getEEnumLiteral",D0e="eContainingClass",ci={55:1},I0e={3:1,4:1,5:1,119:1},O0e="org.eclipse.emf.ecore.resource",N0e={92:1,90:1,591:1,1935:1},rut="org.eclipse.emf.ecore.resource.impl",O8t="unspecified",JI="simple",DH="attribute",P0e="attributeWildcard",IH="element",iut="elementWildcard",i1="collapse",sut="itemType",OH="namespace",tO="##targetNamespace",$h="whiteSpace",N8t="wildcards",D2="http://www.eclipse.org/emf/2003/XMLType",aut="##any",V7="uninitialized",eO="The multiplicity constraint is violated",NH="org.eclipse.emf.ecore.xml.type",F0e="ProcessingInstruction",B0e="SimpleAnyType",R0e="XMLTypeDocumentRoot",Ds="org.eclipse.emf.ecore.xml.type.impl",nO="INF",j0e="processing",$0e="ENTITIES_._base",P8t="minLength",F8t="ENTITY",PH="NCName",z0e="IDREFS_._base",B8t="integer",out="token",cut="pattern",q0e="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",R8t="\\i\\c*",H0e="[\\i-[:]][\\c-[:]]*",V0e="nonPositiveInteger",rO="maxInclusive",j8t="NMTOKEN",G0e="NMTOKENS_._base",$8t="nonNegativeInteger",iO="minInclusive",U0e="normalizedString",W0e="unsignedByte",K0e="unsignedInt",Y0e="18446744073709551615",X0e="unsignedShort",Q0e="processingInstruction",Yg="org.eclipse.emf.ecore.xml.type.internal",G7=1114111,Z0e="Internal Error: shorthands: \\u",iS="xml:isDigit",uut="xml:isWord",lut="xml:isSpace",hut="xml:isNameChar",fut="xml:isInitialNameChar",J0e="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",tge="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",ege="Private Use",dut="ASSIGNED",gut="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",z8t="UNASSIGNED",U7={3:1,117:1},nge="org.eclipse.emf.ecore.xml.type.util",FH={3:1,4:1,5:1,368:1},q8t="org.eclipse.xtext.xbase.lib",rge="Cannot add elements to a Range",ige="Cannot set elements in a Range",sge="Cannot remove elements from a Range",BH="locale",RH="default",jH="user.agent",l,$H,put;b.goog=b.goog||{},b.goog.global=b.goog.global||b,y0n(),D(1,null,{},C),l.Fb=function(e){return tUt(this,e)},l.Gb=function(){return this.gm},l.Hb=function(){return Dv(this)},l.Ib=function(){var e;return Mp(dl(this))+"@"+(e=Ji(this)>>>0,e.toString(16))},l.equals=function(t){return this.Fb(t)},l.hashCode=function(){return this.Hb()},l.toString=function(){return this.Ib()};var age,oge,cge;D(290,1,{290:1,2026:1},myt),l.le=function(e){var n;return n=new myt,n.i=4,e>1?n.c=vQt(this,e-1):n.c=this,n},l.me=function(){return L0(this),this.b},l.ne=function(){return Mp(this)},l.oe=function(){return L0(this),this.k},l.pe=function(){return(this.i&4)!=0},l.qe=function(){return(this.i&1)!=0},l.Ib=function(){return Nmt(this)},l.i=0;var Qn=N(ic,"Object",1),H8t=N(ic,"Class",290);D(1998,1,CI),N(SI,"Optional",1998),D(1170,1998,CI,A),l.Fb=function(e){return e===this},l.Hb=function(){return 2040732332},l.Ib=function(){return"Optional.absent()"},l.Jb=function(e){return Dr(e),DT(),but};var but;N(SI,"Absent",1170),D(628,1,{},cet),N(SI,"Joiner",628);var Y5n=as(SI,"Predicate");D(582,1,{169:1,582:1,3:1,45:1},bT),l.Mb=function(e){return rre(this,e)},l.Lb=function(e){return rre(this,e)},l.Fb=function(e){var n;return _t(e,582)?(n=u(e,582),f5t(this.a,n.a)):!1},l.Hb=function(){return Tyt(this.a)+306654252},l.Ib=function(){return agn(this.a)},N(SI,"Predicates/AndPredicate",582),D(408,1998,{408:1,3:1},Bk),l.Fb=function(e){var n;return _t(e,408)?(n=u(e,408),Si(this.a,n.a)):!1},l.Hb=function(){return 1502476572+Ji(this.a)},l.Ib=function(){return Hhe+this.a+")"},l.Jb=function(e){return new Bk(r$(e.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},N(SI,"Present",408),D(198,1,_7),l.Nb=function(e){Ea(this,e)},l.Qb=function(){Vqt()},N(Ye,"UnmodifiableIterator",198),D(1978,198,C7),l.Qb=function(){Vqt()},l.Rb=function(e){throw nt(new Pr)},l.Wb=function(e){throw nt(new Pr)},N(Ye,"UnmodifiableListIterator",1978),D(386,1978,C7),l.Ob=function(){return this.c0},l.Pb=function(){if(this.c>=this.d)throw nt(new vc);return this.Xb(this.c++)},l.Tb=function(){return this.c},l.Ub=function(){if(this.c<=0)throw nt(new vc);return this.Xb(--this.c)},l.Vb=function(){return this.c-1},l.c=0,l.d=0,N(Ye,"AbstractIndexedListIterator",386),D(699,198,_7),l.Ob=function(){return oit(this)},l.Pb=function(){return Amt(this)},l.e=1,N(Ye,"AbstractIterator",699),D(1986,1,{224:1}),l.Zb=function(){var e;return e=this.f,e||(this.f=this.ac())},l.Fb=function(e){return _it(this,e)},l.Hb=function(){return Ji(this.Zb())},l.dc=function(){return this.gc()==0},l.ec=function(){return N6(this)},l.Ib=function(){return Wo(this.Zb())},N(Ye,"AbstractMultimap",1986),D(726,1986,k2),l.$b=function(){Q$(this)},l._b=function(e){return uHt(this,e)},l.ac=function(){return new t8(this,this.c)},l.ic=function(e){return this.hc()},l.bc=function(){return new K3(this,this.c)},l.jc=function(){return this.mc(this.hc())},l.kc=function(){return new Sqt(this)},l.lc=function(){return Ist(this.c.vc().Nc(),new F,64,this.d)},l.cc=function(e){return Pi(this,e)},l.fc=function(e){return $D(this,e)},l.gc=function(){return this.d},l.mc=function(e){return pn(),new T(e)},l.nc=function(){return new Cqt(this)},l.oc=function(){return Ist(this.c.Cc().Nc(),new P,64,this.d)},l.pc=function(e,n){return new D$(this,e,n,null)},l.d=0,N(Ye,"AbstractMapBasedMultimap",726),D(1631,726,k2),l.hc=function(){return new Jc(this.a)},l.jc=function(){return pn(),pn(),uo},l.cc=function(e){return u(Pi(this,e),15)},l.fc=function(e){return u($D(this,e),15)},l.Zb=function(){return j6(this)},l.Fb=function(e){return _it(this,e)},l.qc=function(e){return u(Pi(this,e),15)},l.rc=function(e){return u($D(this,e),15)},l.mc=function(e){return JM(u(e,15))},l.pc=function(e,n){return kZt(this,e,u(n,15),null)},N(Ye,"AbstractListMultimap",1631),D(732,1,da),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.c.Ob()||this.e.Ob()},l.Pb=function(){var e;return this.e.Ob()||(e=u(this.c.Pb(),42),this.b=e.cd(),this.a=u(e.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},l.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d},N(Ye,"AbstractMapBasedMultimap/Itr",732),D(1099,732,da,Cqt),l.sc=function(e,n){return n},N(Ye,"AbstractMapBasedMultimap/1",1099),D(1100,1,{},P),l.Kb=function(e){return u(e,14).Nc()},N(Ye,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100),D(1101,732,da,Sqt),l.sc=function(e,n){return new Cv(e,n)},N(Ye,"AbstractMapBasedMultimap/2",1101);var V8t=as(br,"Map");D(1967,1,bw),l.wc=function(e){U_(this,e)},l.yc=function(e,n,r){return qit(this,e,n,r)},l.$b=function(){this.vc().$b()},l.tc=function(e){return pst(this,e)},l._b=function(e){return!!p4t(this,e,!1)},l.uc=function(e){var n,r,s;for(r=this.vc().Kc();r.Ob();)if(n=u(r.Pb(),42),s=n.dd(),Gt(e)===Gt(s)||e!=null&&Si(e,s))return!0;return!1},l.Fb=function(e){var n,r,s;if(e===this)return!0;if(!_t(e,83)||(s=u(e,83),this.gc()!=s.gc()))return!1;for(r=s.vc().Kc();r.Ob();)if(n=u(r.Pb(),42),!this.tc(n))return!1;return!0},l.xc=function(e){return cc(p4t(this,e,!1))},l.Hb=function(){return gyt(this.vc())},l.dc=function(){return this.gc()==0},l.ec=function(){return new Tm(this)},l.zc=function(e,n){throw nt(new Tg("Put not supported on this map"))},l.Ac=function(e){G_(this,e)},l.Bc=function(e){return cc(p4t(this,e,!0))},l.gc=function(){return this.vc().gc()},l.Ib=function(){return sae(this)},l.Cc=function(){return new m1(this)},N(br,"AbstractMap",1967),D(1987,1967,bw),l.bc=function(){return new TR(this)},l.vc=function(){return xYt(this)},l.ec=function(){var e;return e=this.g,e||(this.g=this.bc())},l.Cc=function(){var e;return e=this.i,e||(this.i=new eVt(this))},N(Ye,"Maps/ViewCachingAbstractMap",1987),D(389,1987,bw,t8),l.xc=function(e){return qan(this,e)},l.Bc=function(e){return iun(this,e)},l.$b=function(){this.d==this.e.c?this.e.$b():Oj(new Fvt(this))},l._b=function(e){return Fre(this.d,e)},l.Ec=function(){return new Rk(this)},l.Dc=function(){return this.Ec()},l.Fb=function(e){return this===e||Si(this.d,e)},l.Hb=function(){return Ji(this.d)},l.ec=function(){return this.e.ec()},l.gc=function(){return this.d.gc()},l.Ib=function(){return Wo(this.d)},N(Ye,"AbstractMapBasedMultimap/AsMap",389);var $1=as(ic,"Iterable");D(28,1,wy),l.Jc=function(e){_a(this,e)},l.Lc=function(){return this.Oc()},l.Nc=function(){return new Tn(this,0)},l.Oc=function(){return new kn(null,this.Nc())},l.Fc=function(e){throw nt(new Tg("Add not supported on this collection"))},l.Gc=function(e){return Ka(this,e)},l.$b=function(){xwt(this)},l.Hc=function(e){return ry(this,e,!1)},l.Ic=function(e){return DD(this,e)},l.dc=function(){return this.gc()==0},l.Mc=function(e){return ry(this,e,!0)},l.Pc=function(){return Yvt(this)},l.Qc=function(e){return XD(this,e)},l.Ib=function(){return Jp(this)},N(br,"AbstractCollection",28);var zh=as(br,"Set");D(B1,28,Uu),l.Nc=function(){return new Tn(this,1)},l.Fb=function(e){return Lie(this,e)},l.Hb=function(){return gyt(this)},N(br,"AbstractSet",B1),D(1970,B1,Uu),N(Ye,"Sets/ImprovedAbstractSet",1970),D(1971,1970,Uu),l.$b=function(){this.Rc().$b()},l.Hc=function(e){return lie(this,e)},l.dc=function(){return this.Rc().dc()},l.Mc=function(e){var n;return this.Hc(e)?(n=u(e,42),this.Rc().ec().Mc(n.cd())):!1},l.gc=function(){return this.Rc().gc()},N(Ye,"Maps/EntrySet",1971),D(1097,1971,Uu,Rk),l.Hc=function(e){return Hyt(this.a.d.vc(),e)},l.Kc=function(){return new Fvt(this.a)},l.Rc=function(){return this.a},l.Mc=function(e){var n;return Hyt(this.a.d.vc(),e)?(n=u(e,42),Asn(this.a.e,n.cd()),!0):!1},l.Nc=function(){return GM(this.a.d.vc().Nc(),new GB(this.a))},N(Ye,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097),D(1098,1,{},GB),l.Kb=function(e){return hJt(this.a,u(e,42))},N(Ye,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098),D(730,1,da,Fvt),l.Nb=function(e){Ea(this,e)},l.Pb=function(){var e;return e=u(this.b.Pb(),42),this.a=u(e.dd(),14),hJt(this.c,e)},l.Ob=function(){return this.b.Ob()},l.Qb=function(){r4(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},N(Ye,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730),D(532,1970,Uu,TR),l.$b=function(){this.b.$b()},l.Hc=function(e){return this.b._b(e)},l.Jc=function(e){Dr(e),this.b.wc(new btt(e))},l.dc=function(){return this.b.dc()},l.Kc=function(){return new IT(this.b.vc().Kc())},l.Mc=function(e){return this.b._b(e)?(this.b.Bc(e),!0):!1},l.gc=function(){return this.b.gc()},N(Ye,"Maps/KeySet",532),D(318,532,Uu,K3),l.$b=function(){var e;Oj((e=this.b.vc().Kc(),new cbt(this,e)))},l.Ic=function(e){return this.b.ec().Ic(e)},l.Fb=function(e){return this===e||Si(this.b.ec(),e)},l.Hb=function(){return Ji(this.b.ec())},l.Kc=function(){var e;return e=this.b.vc().Kc(),new cbt(this,e)},l.Mc=function(e){var n,r;return r=0,n=u(this.b.Bc(e),14),n&&(r=n.gc(),n.$b(),this.a.d-=r),r>0},l.Nc=function(){return this.b.ec().Nc()},N(Ye,"AbstractMapBasedMultimap/KeySet",318),D(731,1,da,cbt),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.c.Ob()},l.Pb=function(){return this.a=u(this.c.Pb(),42),this.a.cd()},l.Qb=function(){var e;r4(!!this.a),e=u(this.a.dd(),14),this.c.Qb(),this.b.a.d-=e.gc(),e.$b(),this.a=null},N(Ye,"AbstractMapBasedMultimap/KeySet/1",731),D(491,389,{83:1,161:1},RM),l.bc=function(){return this.Sc()},l.ec=function(){return this.Tc()},l.Sc=function(){return new gM(this.c,this.Uc())},l.Tc=function(){var e;return e=this.b,e||(this.b=this.Sc())},l.Uc=function(){return u(this.d,161)},N(Ye,"AbstractMapBasedMultimap/SortedAsMap",491),D(542,491,Vhe,yj),l.bc=function(){return new Jk(this.a,u(u(this.d,161),171))},l.Sc=function(){return new Jk(this.a,u(u(this.d,161),171))},l.ec=function(){var e;return e=this.b,u(e||(this.b=new Jk(this.a,u(u(this.d,161),171))),271)},l.Tc=function(){var e;return e=this.b,u(e||(this.b=new Jk(this.a,u(u(this.d,161),171))),271)},l.Uc=function(){return u(u(this.d,161),171)},N(Ye,"AbstractMapBasedMultimap/NavigableAsMap",542),D(490,318,Ghe,gM),l.Nc=function(){return this.b.ec().Nc()},N(Ye,"AbstractMapBasedMultimap/SortedKeySet",490),D(388,490,S6t,Jk),N(Ye,"AbstractMapBasedMultimap/NavigableKeySet",388),D(541,28,wy,D$),l.Fc=function(e){var n,r;return gl(this),r=this.d.dc(),n=this.d.Fc(e),n&&(++this.f.d,r&&qM(this)),n},l.Gc=function(e){var n,r,s;return e.dc()?!1:(s=(gl(this),this.d.gc()),n=this.d.Gc(e),n&&(r=this.d.gc(),this.f.d+=r-s,s==0&&qM(this)),n)},l.$b=function(){var e;e=(gl(this),this.d.gc()),e!=0&&(this.d.$b(),this.f.d-=e,Rj(this))},l.Hc=function(e){return gl(this),this.d.Hc(e)},l.Ic=function(e){return gl(this),this.d.Ic(e)},l.Fb=function(e){return e===this?!0:(gl(this),Si(this.d,e))},l.Hb=function(){return gl(this),Ji(this.d)},l.Kc=function(){return gl(this),new kvt(this)},l.Mc=function(e){var n;return gl(this),n=this.d.Mc(e),n&&(--this.f.d,Rj(this)),n},l.gc=function(){return jGt(this)},l.Nc=function(){return gl(this),this.d.Nc()},l.Ib=function(){return gl(this),Wo(this.d)},N(Ye,"AbstractMapBasedMultimap/WrappedCollection",541);var mh=as(br,"List");D(728,541,{20:1,28:1,14:1,15:1},Qvt),l.ad=function(e){n4(this,e)},l.Nc=function(){return gl(this),this.d.Nc()},l.Vc=function(e,n){var r;gl(this),r=this.d.dc(),u(this.d,15).Vc(e,n),++this.a.d,r&&qM(this)},l.Wc=function(e,n){var r,s,o;return n.dc()?!1:(o=(gl(this),this.d.gc()),r=u(this.d,15).Wc(e,n),r&&(s=this.d.gc(),this.a.d+=s-o,o==0&&qM(this)),r)},l.Xb=function(e){return gl(this),u(this.d,15).Xb(e)},l.Xc=function(e){return gl(this),u(this.d,15).Xc(e)},l.Yc=function(){return gl(this),new wUt(this)},l.Zc=function(e){return gl(this),new DXt(this,e)},l.$c=function(e){var n;return gl(this),n=u(this.d,15).$c(e),--this.a.d,Rj(this),n},l._c=function(e,n){return gl(this),u(this.d,15)._c(e,n)},l.bd=function(e,n){return gl(this),kZt(this.a,this.e,u(this.d,15).bd(e,n),this.b?this.b:this)},N(Ye,"AbstractMapBasedMultimap/WrappedList",728),D(1096,728,{20:1,28:1,14:1,15:1,54:1},cWt),N(Ye,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096),D(620,1,da,kvt),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return x8(this),this.b.Ob()},l.Pb=function(){return x8(this),this.b.Pb()},l.Qb=function(){GUt(this)},N(Ye,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620),D(729,620,Jd,wUt,DXt),l.Qb=function(){GUt(this)},l.Rb=function(e){var n;n=jGt(this.a)==0,(x8(this),u(this.b,125)).Rb(e),++this.a.a.d,n&&qM(this.a)},l.Sb=function(){return(x8(this),u(this.b,125)).Sb()},l.Tb=function(){return(x8(this),u(this.b,125)).Tb()},l.Ub=function(){return(x8(this),u(this.b,125)).Ub()},l.Vb=function(){return(x8(this),u(this.b,125)).Vb()},l.Wb=function(e){(x8(this),u(this.b,125)).Wb(e)},N(Ye,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729),D(727,541,Ghe,H2t),l.Nc=function(){return gl(this),this.d.Nc()},N(Ye,"AbstractMapBasedMultimap/WrappedSortedSet",727),D(1095,727,S6t,lUt),N(Ye,"AbstractMapBasedMultimap/WrappedNavigableSet",1095),D(1094,541,Uu,kWt),l.Nc=function(){return gl(this),this.d.Nc()},N(Ye,"AbstractMapBasedMultimap/WrappedSet",1094),D(1103,1,{},F),l.Kb=function(e){return Nsn(u(e,42))},N(Ye,"AbstractMapBasedMultimap/lambda$1$Type",1103),D(1102,1,{},rtt),l.Kb=function(e){return new Cv(this.a,e)},N(Ye,"AbstractMapBasedMultimap/lambda$2$Type",1102);var I2=as(br,"Map/Entry");D(345,1,Mq),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),dd(this.cd(),n.cd())&&dd(this.dd(),n.dd())):!1},l.Hb=function(){var e,n;return e=this.cd(),n=this.dd(),(e==null?0:Ji(e))^(n==null?0:Ji(n))},l.ed=function(e){throw nt(new Pr)},l.Ib=function(){return this.cd()+"="+this.dd()},N(Ye,Uhe,345),D(1988,28,wy),l.$b=function(){this.fd().$b()},l.Hc=function(e){var n;return _t(e,42)?(n=u(e,42),gin(this.fd(),n.cd(),n.dd())):!1},l.Mc=function(e){var n;return _t(e,42)?(n=u(e,42),nZt(this.fd(),n.cd(),n.dd())):!1},l.gc=function(){return this.fd().d},N(Ye,"Multimaps/Entries",1988),D(733,1988,wy,QL),l.Kc=function(){return this.a.kc()},l.fd=function(){return this.a},l.Nc=function(){return this.a.lc()},N(Ye,"AbstractMultimap/Entries",733),D(734,733,Uu,Rpt),l.Nc=function(){return this.a.lc()},l.Fb=function(e){return O4t(this,e)},l.Hb=function(){return rne(this)},N(Ye,"AbstractMultimap/EntrySet",734),D(735,28,wy,D3),l.$b=function(){this.a.$b()},l.Hc=function(e){return Zcn(this.a,e)},l.Kc=function(){return this.a.nc()},l.gc=function(){return this.a.d},l.Nc=function(){return this.a.oc()},N(Ye,"AbstractMultimap/Values",735),D(1989,28,{835:1,20:1,28:1,14:1}),l.Jc=function(e){Dr(e),X3(this).Jc(new ptt(e))},l.Nc=function(){var e;return e=X3(this).Nc(),Ist(e,new yt,64|e.qd()&1296,this.a.d)},l.Fc=function(e){return Wpt(),!0},l.Gc=function(e){return Dr(this),Dr(e),_t(e,543)?min(u(e,835)):!e.dc()&&Zrt(this,e.Kc())},l.Hc=function(e){var n;return n=u(ny(j6(this.a),e),14),(n?n.gc():0)>0},l.Fb=function(e){return fbn(this,e)},l.Hb=function(){return Ji(X3(this))},l.dc=function(){return X3(this).dc()},l.Mc=function(e){return koe(this,e,1)>0},l.Ib=function(){return Wo(X3(this))},N(Ye,"AbstractMultiset",1989),D(1991,1970,Uu),l.$b=function(){Q$(this.a.a)},l.Hc=function(e){var n,r;return _t(e,492)?(r=u(e,416),u(r.a.dd(),14).gc()<=0?!1:(n=IQt(this.a,r.a.cd()),n==u(r.a.dd(),14).gc())):!1},l.Mc=function(e){var n,r,s,o;return _t(e,492)&&(r=u(e,416),n=r.a.cd(),s=u(r.a.dd(),14).gc(),s!=0)?(o=this.a,tpn(o,n,s)):!1},N(Ye,"Multisets/EntrySet",1991),D(1109,1991,Uu,ZL),l.Kc=function(){return new Pqt(xYt(j6(this.a.a)).Kc())},l.gc=function(){return j6(this.a.a).gc()},N(Ye,"AbstractMultiset/EntrySet",1109),D(619,726,k2),l.hc=function(){return this.gd()},l.jc=function(){return this.hd()},l.cc=function(e){return this.jd(e)},l.fc=function(e){return this.kd(e)},l.Zb=function(){var e;return e=this.f,e||(this.f=this.ac())},l.hd=function(){return pn(),pn(),UH},l.Fb=function(e){return _it(this,e)},l.jd=function(e){return u(Pi(this,e),21)},l.kd=function(e){return u($D(this,e),21)},l.mc=function(e){return pn(),new Yk(u(e,21))},l.pc=function(e,n){return new kWt(this,e,u(n,21))},N(Ye,"AbstractSetMultimap",619),D(1657,619,k2),l.hc=function(){return new Dp(this.b)},l.gd=function(){return new Dp(this.b)},l.jc=function(){return fwt(new Dp(this.b))},l.hd=function(){return fwt(new Dp(this.b))},l.cc=function(e){return u(u(Pi(this,e),21),84)},l.jd=function(e){return u(u(Pi(this,e),21),84)},l.fc=function(e){return u(u($D(this,e),21),84)},l.kd=function(e){return u(u($D(this,e),21),84)},l.mc=function(e){return _t(e,271)?fwt(u(e,271)):(pn(),new k2t(u(e,84)))},l.Zb=function(){var e;return e=this.f,e||(this.f=_t(this.c,171)?new yj(this,u(this.c,171)):_t(this.c,161)?new RM(this,u(this.c,161)):new t8(this,this.c))},l.pc=function(e,n){return _t(n,271)?new lUt(this,e,u(n,271)):new H2t(this,e,u(n,84))},N(Ye,"AbstractSortedSetMultimap",1657),D(1658,1657,k2),l.Zb=function(){var e;return e=this.f,u(u(e||(this.f=_t(this.c,171)?new yj(this,u(this.c,171)):_t(this.c,161)?new RM(this,u(this.c,161)):new t8(this,this.c)),161),171)},l.ec=function(){var e;return e=this.i,u(u(e||(this.i=_t(this.c,171)?new Jk(this,u(this.c,171)):_t(this.c,161)?new gM(this,u(this.c,161)):new K3(this,this.c)),84),271)},l.bc=function(){return _t(this.c,171)?new Jk(this,u(this.c,171)):_t(this.c,161)?new gM(this,u(this.c,161)):new K3(this,this.c)},N(Ye,"AbstractSortedKeySortedSetMultimap",1658),D(2010,1,{1947:1}),l.Fb=function(e){return H1n(this,e)},l.Hb=function(){var e;return gyt((e=this.g,e||(this.g=new vT(this))))},l.Ib=function(){var e;return sae((e=this.f,e||(this.f=new g2t(this))))},N(Ye,"AbstractTable",2010),D(665,B1,Uu,vT),l.$b=function(){Gqt()},l.Hc=function(e){var n,r;return _t(e,468)?(n=u(e,682),r=u(ny(VYt(this.a),Np(n.c.e,n.b)),83),!!r&&Hyt(r.vc(),new Cv(Np(n.c.c,n.a),U6(n.c,n.b,n.a)))):!1},l.Kc=function(){return Snn(this.a)},l.Mc=function(e){var n,r;return _t(e,468)?(n=u(e,682),r=u(ny(VYt(this.a),Np(n.c.e,n.b)),83),!!r&&_un(r.vc(),new Cv(Np(n.c.c,n.a),U6(n.c,n.b,n.a)))):!1},l.gc=function(){return nYt(this.a)},l.Nc=function(){return kin(this.a)},N(Ye,"AbstractTable/CellSet",665),D(1928,28,wy,itt),l.$b=function(){Gqt()},l.Hc=function(e){return Ndn(this.a,e)},l.Kc=function(){return Ann(this.a)},l.gc=function(){return nYt(this.a)},l.Nc=function(){return sZt(this.a)},N(Ye,"AbstractTable/Values",1928),D(1632,1631,k2),N(Ye,"ArrayListMultimapGwtSerializationDependencies",1632),D(513,1632,k2,oet,Bwt),l.hc=function(){return new Jc(this.a)},l.a=0,N(Ye,"ArrayListMultimap",513),D(664,2010,{664:1,1947:1,3:1},Ioe),N(Ye,"ArrayTable",664),D(1924,386,C7,jUt),l.Xb=function(e){return new wyt(this.a,e)},N(Ye,"ArrayTable/1",1924),D(1925,1,{},VB),l.ld=function(e){return new wyt(this.a,e)},N(Ye,"ArrayTable/1methodref$getCell$Type",1925),D(2011,1,{682:1}),l.Fb=function(e){var n;return e===this?!0:_t(e,468)?(n=u(e,682),dd(Np(this.c.e,this.b),Np(n.c.e,n.b))&&dd(Np(this.c.c,this.a),Np(n.c.c,n.a))&&dd(U6(this.c,this.b,this.a),U6(n.c,n.b,n.a))):!1},l.Hb=function(){return vz(ut(ot(Qn,1),Me,1,5,[Np(this.c.e,this.b),Np(this.c.c,this.a),U6(this.c,this.b,this.a)]))},l.Ib=function(){return"("+Np(this.c.e,this.b)+","+Np(this.c.c,this.a)+")="+U6(this.c,this.b,this.a)},N(Ye,"Tables/AbstractCell",2011),D(468,2011,{468:1,682:1},wyt),l.a=0,l.b=0,l.d=0,N(Ye,"ArrayTable/2",468),D(1927,1,{},a6),l.ld=function(e){return bte(this.a,e)},N(Ye,"ArrayTable/2methodref$getValue$Type",1927),D(1926,386,C7,$Ut),l.Xb=function(e){return bte(this.a,e)},N(Ye,"ArrayTable/3",1926),D(1979,1967,bw),l.$b=function(){Oj(this.kc())},l.vc=function(){return new c6(this)},l.lc=function(){return new wXt(this.kc(),this.gc())},N(Ye,"Maps/IteratorBasedAbstractMap",1979),D(828,1979,bw),l.$b=function(){throw nt(new Pr)},l._b=function(e){return lHt(this.c,e)},l.kc=function(){return new zUt(this,this.c.b.c.gc())},l.lc=function(){return Ant(this.c.b.c.gc(),16,new dv(this))},l.xc=function(e){var n;return n=u(w_(this.c,e),19),n?this.nd(n.a):null},l.dc=function(){return this.c.b.c.dc()},l.ec=function(){return Fnt(this.c)},l.zc=function(e,n){var r;if(r=u(w_(this.c,e),19),!r)throw nt(new Pn(this.md()+" "+e+" not in "+Fnt(this.c)));return this.od(r.a,n)},l.Bc=function(e){throw nt(new Pr)},l.gc=function(){return this.c.b.c.gc()},N(Ye,"ArrayTable/ArrayMap",828),D(1923,1,{},dv),l.ld=function(e){return UYt(this.a,e)},N(Ye,"ArrayTable/ArrayMap/0methodref$getEntry$Type",1923),D(1921,345,Mq,VHt),l.cd=function(){return HXe(this.a,this.b)},l.dd=function(){return this.a.nd(this.b)},l.ed=function(e){return this.a.od(this.b,e)},l.b=0,N(Ye,"ArrayTable/ArrayMap/1",1921),D(1922,386,C7,zUt),l.Xb=function(e){return UYt(this.a,e)},N(Ye,"ArrayTable/ArrayMap/2",1922),D(1920,828,bw,OYt),l.md=function(){return"Column"},l.nd=function(e){return U6(this.b,this.a,e)},l.od=function(e,n){return qne(this.b,this.a,e,n)},l.a=0,N(Ye,"ArrayTable/Row",1920),D(829,828,bw,g2t),l.nd=function(e){return new OYt(this.a,e)},l.zc=function(e,n){return u(n,83),CKe()},l.od=function(e,n){return u(n,83),SKe()},l.md=function(){return"Row"},N(Ye,"ArrayTable/RowMap",829),D(1120,1,Nh,GHt),l.qd=function(){return this.a.qd()&-262},l.rd=function(){return this.a.rd()},l.Nb=function(e){this.a.Nb(new $Ht(e,this.b))},l.sd=function(e){return this.a.sd(new jHt(e,this.b))},N(Ye,"CollectSpliterators/1",1120),D(1121,1,Kn,jHt),l.td=function(e){this.a.td(this.b.Kb(e))},N(Ye,"CollectSpliterators/1/lambda$0$Type",1121),D(1122,1,Kn,$Ht),l.td=function(e){this.a.td(this.b.Kb(e))},N(Ye,"CollectSpliterators/1/lambda$1$Type",1122),D(1123,1,Nh,bZt),l.qd=function(){return this.a},l.rd=function(){return this.d&&(this.b=yUt(this.b,this.d.rd())),yUt(this.b,0)},l.Nb=function(e){this.d&&(this.d.Nb(e),this.d=null),this.c.Nb(new RHt(this.e,e)),this.b=0},l.sd=function(e){for(;;){if(this.d&&this.d.sd(e))return a_(this.b,Dq)&&(this.b=Qp(this.b,1)),!0;if(this.d=null,!this.c.sd(new zHt(this,this.e)))return!1}},l.a=0,l.b=0,N(Ye,"CollectSpliterators/1FlatMapSpliterator",1123),D(1124,1,Kn,zHt),l.td=function(e){UQe(this.a,this.b,e)},N(Ye,"CollectSpliterators/1FlatMapSpliterator/lambda$0$Type",1124),D(1125,1,Kn,RHt),l.td=function(e){MXe(this.b,this.a,e)},N(Ye,"CollectSpliterators/1FlatMapSpliterator/lambda$1$Type",1125),D(1117,1,Nh,ZWt),l.qd=function(){return 16464|this.b},l.rd=function(){return this.a.rd()},l.Nb=function(e){this.a.xe(new HHt(e,this.c))},l.sd=function(e){return this.a.ye(new qHt(e,this.c))},l.b=0,N(Ye,"CollectSpliterators/1WithCharacteristics",1117),D(1118,1,AI,qHt),l.ud=function(e){this.a.td(this.b.ld(e))},N(Ye,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1118),D(1119,1,AI,HHt),l.ud=function(e){this.a.td(this.b.ld(e))},N(Ye,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1119),D(245,1,Bat),l.wd=function(e){return this.vd(u(e,245))},l.vd=function(e){var n;return e==(Ztt(),wut)?1:e==(Jtt(),vut)?-1:(n=(Mj(),SD(this.a,e.a)),n!=0?n:_t(this,519)==_t(e,519)?0:_t(this,519)?1:-1)},l.zd=function(){return this.a},l.Fb=function(e){return x3t(this,e)},N(Ye,"Cut",245),D(1761,245,Bat,Kqt),l.vd=function(e){return e==this?0:1},l.xd=function(e){throw nt(new ypt)},l.yd=function(e){e.a+="+∞)"},l.zd=function(){throw nt(new Ho(Khe))},l.Hb=function(){return qd(),M3t(this)},l.Ad=function(e){return!1},l.Ib=function(){return"+∞"};var vut;N(Ye,"Cut/AboveAll",1761),D(519,245,{245:1,519:1,3:1,35:1},UUt),l.xd=function(e){wc((e.a+="(",e),this.a)},l.yd=function(e){$p(wc(e,this.a),93)},l.Hb=function(){return~Ji(this.a)},l.Ad=function(e){return Mj(),SD(this.a,e)<0},l.Ib=function(){return"/"+this.a+"\\"},N(Ye,"Cut/AboveValue",519),D(1760,245,Bat,Yqt),l.vd=function(e){return e==this?0:-1},l.xd=function(e){e.a+="(-∞"},l.yd=function(e){throw nt(new ypt)},l.zd=function(){throw nt(new Ho(Khe))},l.Hb=function(){return qd(),M3t(this)},l.Ad=function(e){return!0},l.Ib=function(){return"-∞"};var wut;N(Ye,"Cut/BelowAll",1760),D(1762,245,Bat,WUt),l.xd=function(e){wc((e.a+="[",e),this.a)},l.yd=function(e){$p(wc(e,this.a),41)},l.Hb=function(){return Ji(this.a)},l.Ad=function(e){return Mj(),SD(this.a,e)<=0},l.Ib=function(){return"\\"+this.a+"/"},N(Ye,"Cut/BelowValue",1762),D(537,1,t0),l.Jc=function(e){_a(this,e)},l.Ib=function(){return eln(u(r$(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},N(Ye,"FluentIterable",537),D(433,537,t0,u_),l.Kc=function(){return new ar(lr(this.a.Kc(),new H))},N(Ye,"FluentIterable/2",433),D(1046,537,t0,QGt),l.Kc=function(){return jp(this)},N(Ye,"FluentIterable/3",1046),D(708,386,C7,p2t),l.Xb=function(e){return this.a[e].Kc()},N(Ye,"FluentIterable/3/1",708),D(1972,1,{}),l.Ib=function(){return Wo(this.Bd().b)},N(Ye,"ForwardingObject",1972),D(1973,1972,Yhe),l.Bd=function(){return this.Cd()},l.Jc=function(e){_a(this,e)},l.Lc=function(){return this.Oc()},l.Nc=function(){return new Tn(this,0)},l.Oc=function(){return new kn(null,this.Nc())},l.Fc=function(e){return this.Cd(),gHt()},l.Gc=function(e){return this.Cd(),pHt()},l.$b=function(){this.Cd(),bHt()},l.Hc=function(e){return this.Cd().Hc(e)},l.Ic=function(e){return this.Cd().Ic(e)},l.dc=function(){return this.Cd().b.dc()},l.Kc=function(){return this.Cd().Kc()},l.Mc=function(e){return this.Cd(),vHt()},l.gc=function(){return this.Cd().b.gc()},l.Pc=function(){return this.Cd().Pc()},l.Qc=function(e){return this.Cd().Qc(e)},N(Ye,"ForwardingCollection",1973),D(1980,28,A6t),l.Kc=function(){return this.Ed()},l.Fc=function(e){throw nt(new Pr)},l.Gc=function(e){throw nt(new Pr)},l.$b=function(){throw nt(new Pr)},l.Hc=function(e){return e!=null&&ry(this,e,!1)},l.Dd=function(){switch(this.gc()){case 0:return Vm(),Vm(),mut;case 1:return Vm(),new Lnt(Dr(this.Ed().Pb()));default:return new NYt(this,this.Pc())}},l.Mc=function(e){throw nt(new Pr)},N(Ye,"ImmutableCollection",1980),D(712,1980,A6t,wpt),l.Kc=function(){return W6(this.a.Kc())},l.Hc=function(e){return e!=null&&this.a.Hc(e)},l.Ic=function(e){return this.a.Ic(e)},l.dc=function(){return this.a.dc()},l.Ed=function(){return W6(this.a.Kc())},l.gc=function(){return this.a.gc()},l.Pc=function(){return this.a.Pc()},l.Qc=function(e){return this.a.Qc(e)},l.Ib=function(){return Wo(this.a)},N(Ye,"ForwardingImmutableCollection",712),D(152,1980,SC),l.Kc=function(){return this.Ed()},l.Yc=function(){return this.Fd(0)},l.Zc=function(e){return this.Fd(e)},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.bd=function(e,n){return this.Gd(e,n)},l.Vc=function(e,n){throw nt(new Pr)},l.Wc=function(e,n){throw nt(new Pr)},l.Fb=function(e){return Xpn(this,e)},l.Hb=function(){return ocn(this)},l.Xc=function(e){return e==null?-1:yfn(this,e)},l.Ed=function(){return this.Fd(0)},l.Fd=function(e){return M2t(this,e)},l.$c=function(e){throw nt(new Pr)},l._c=function(e,n){throw nt(new Pr)},l.Gd=function(e,n){var r;return yz((r=new nVt(this),new Kd(r,e,n)))};var mut;N(Ye,"ImmutableList",152),D(2006,152,SC),l.Kc=function(){return W6(this.Hd().Kc())},l.bd=function(e,n){return yz(this.Hd().bd(e,n))},l.Hc=function(e){return e!=null&&this.Hd().Hc(e)},l.Ic=function(e){return this.Hd().Ic(e)},l.Fb=function(e){return Si(this.Hd(),e)},l.Xb=function(e){return Np(this,e)},l.Hb=function(){return Ji(this.Hd())},l.Xc=function(e){return this.Hd().Xc(e)},l.dc=function(){return this.Hd().dc()},l.Ed=function(){return W6(this.Hd().Kc())},l.gc=function(){return this.Hd().gc()},l.Gd=function(e,n){return yz(this.Hd().bd(e,n))},l.Pc=function(){return this.Hd().Qc(Nt(Qn,Me,1,this.Hd().gc(),5,1))},l.Qc=function(e){return this.Hd().Qc(e)},l.Ib=function(){return Wo(this.Hd())},N(Ye,"ForwardingImmutableList",2006),D(714,1,S7),l.vc=function(){return Pv(this)},l.wc=function(e){U_(this,e)},l.ec=function(){return Fnt(this)},l.yc=function(e,n,r){return qit(this,e,n,r)},l.Cc=function(){return this.Ld()},l.$b=function(){throw nt(new Pr)},l._b=function(e){return this.xc(e)!=null},l.uc=function(e){return this.Ld().Hc(e)},l.Jd=function(){return new jzt(this)},l.Kd=function(){return new $zt(this)},l.Fb=function(e){return Jcn(this,e)},l.Hb=function(){return Pv(this).Hb()},l.dc=function(){return this.gc()==0},l.zc=function(e,n){return AKe()},l.Bc=function(e){throw nt(new Pr)},l.Ib=function(){return D0n(this)},l.Ld=function(){return this.e?this.e:this.e=this.Kd()},l.c=null,l.d=null,l.e=null;var uge;N(Ye,"ImmutableMap",714),D(715,714,S7),l._b=function(e){return lHt(this,e)},l.uc=function(e){return aVt(this.b,e)},l.Id=function(){return Pre(new mT(this))},l.Jd=function(){return Pre(gXt(this.b))},l.Kd=function(){return fd(),new wpt(dXt(this.b))},l.Fb=function(e){return oVt(this.b,e)},l.xc=function(e){return w_(this,e)},l.Hb=function(){return Ji(this.b.c)},l.dc=function(){return this.b.c.dc()},l.gc=function(){return this.b.c.gc()},l.Ib=function(){return Wo(this.b.c)},N(Ye,"ForwardingImmutableMap",715),D(1974,1973,Rat),l.Bd=function(){return this.Md()},l.Cd=function(){return this.Md()},l.Nc=function(){return new Tn(this,1)},l.Fb=function(e){return e===this||this.Md().Fb(e)},l.Hb=function(){return this.Md().Hb()},N(Ye,"ForwardingSet",1974),D(1069,1974,Rat,mT),l.Bd=function(){return m8(this.a.b)},l.Cd=function(){return m8(this.a.b)},l.Hc=function(e){if(_t(e,42)&&u(e,42).cd()==null)return!1;try{return sVt(m8(this.a.b),e)}catch(n){if(n=rs(n),_t(n,205))return!1;throw nt(n)}},l.Md=function(){return m8(this.a.b)},l.Qc=function(e){var n;return n=YXt(m8(this.a.b),e),m8(this.a.b).b.gc()=0?"+":"")+(r/60|0),n=rj(b.Math.abs(r)%60),(pae(),_ge)[this.q.getDay()]+" "+Cge[this.q.getMonth()]+" "+rj(this.q.getDate())+" "+rj(this.q.getHours())+":"+rj(this.q.getMinutes())+":"+rj(this.q.getSeconds())+" GMT"+e+n+" "+this.q.getFullYear()};var HH=N(br,"Date",199);D(1915,199,ife,qse),l.a=!1,l.b=0,l.c=0,l.d=0,l.e=0,l.f=0,l.g=!1,l.i=0,l.j=0,l.k=0,l.n=0,l.o=0,l.p=0,N("com.google.gwt.i18n.shared.impl","DateRecord",1915),D(1966,1,{}),l.fe=function(){return null},l.ge=function(){return null},l.he=function(){return null},l.ie=function(){return null},l.je=function(){return null},N(lx,"JSONValue",1966),D(216,1966,{216:1},yg,u6),l.Fb=function(e){return _t(e,216)?$wt(this.a,u(e,216).a):!1},l.ee=function(){return XWe},l.Hb=function(){return Swt(this.a)},l.fe=function(){return this},l.Ib=function(){var e,n,r;for(r=new Fl("["),n=0,e=this.a.length;n0&&(r.a+=","),wc(r,Xm(this,n));return r.a+="]",r.a},N(lx,"JSONArray",216),D(483,1966,{483:1},$k),l.ee=function(){return QWe},l.ge=function(){return this},l.Ib=function(){return Fn(),""+this.a},l.a=!1;var bge,vge;N(lx,"JSONBoolean",483),D(985,60,U0,Fqt),N(lx,"JSONException",985),D(1023,1966,{},mt),l.ee=function(){return nKe},l.Ib=function(){return Mu};var wge;N(lx,"JSONNull",1023),D(258,1966,{258:1},yT),l.Fb=function(e){return _t(e,258)?this.a==u(e,258).a:!1},l.ee=function(){return ZWe},l.Hb=function(){return s8(this.a)},l.he=function(){return this},l.Ib=function(){return this.a+""},l.a=0,N(lx,"JSONNumber",258),D(183,1966,{183:1},w6,zk),l.Fb=function(e){return _t(e,183)?$wt(this.a,u(e,183).a):!1},l.ee=function(){return JWe},l.Hb=function(){return Swt(this.a)},l.ie=function(){return this},l.Ib=function(){var e,n,r,s,o,h,d;for(d=new Fl("{"),e=!0,h=hit(this,Nt(Le,re,2,0,6,1)),r=h,s=0,o=r.length;s=0?":"+this.c:"")+")"},l.c=0;var o7t=N(ic,"StackTraceElement",310);cge={3:1,475:1,35:1,2:1};var Le=N(ic,L6t,2);D(107,418,{475:1},_g,BT,Ah),N(ic,"StringBuffer",107),D(100,418,{475:1},Ap,Lm,Fl),N(ic,"StringBuilder",100),D(687,73,oot,Ypt),N(ic,"StringIndexOutOfBoundsException",687),D(2043,1,{});var c7t;D(844,1,{},Vt),l.Kb=function(e){return u(e,78).e},N(ic,"Throwable/lambda$0$Type",844),D(41,60,{3:1,102:1,60:1,78:1,41:1},Pr,Tg),N(ic,"UnsupportedOperationException",41),D(240,236,{3:1,35:1,236:1,240:1},kD,ibt),l.wd=function(e){return Yue(this,u(e,240))},l.ke=function(){return ly(Dle(this))},l.Fb=function(e){var n;return this===e?!0:_t(e,240)?(n=u(e,240),this.e==n.e&&Yue(this,n)==0):!1},l.Hb=function(){var e;return this.b!=0?this.b:this.a<54?(e=Au(this.f),this.b=Mr(Gs(e,-1)),this.b=33*this.b+Mr(Gs(Rp(e,32),-1)),this.b=17*this.b+Cs(this.e),this.b):(this.b=17*Lre(this.c)+Cs(this.e),this.b)},l.Ib=function(){return Dle(this)},l.a=0,l.b=0,l.d=0,l.e=0,l.f=0;var kge,N2,u7t,l7t,h7t,f7t,d7t,g7t,Sut=N("java.math","BigDecimal",240);D(91,236,{3:1,35:1,236:1,91:1},L3t,Og,Y3,h4t,Iie,Fp),l.wd=function(e){return Sie(this,u(e,91))},l.ke=function(){return ly(Nat(this,0))},l.Fb=function(e){return c3t(this,e)},l.Hb=function(){return Lre(this)},l.Ib=function(){return Nat(this,0)},l.b=-2,l.c=0,l.d=0,l.e=0;var Aut,VH,p7t,Lut,GH,Y7,R4=N("java.math","BigInteger",91),Ege,Tge,Ex,oS;D(488,1967,bw),l.$b=function(){nl(this)},l._b=function(e){return Ml(this,e)},l.uc=function(e){return dre(this,e,this.g)||dre(this,e,this.f)},l.vc=function(){return new kg(this)},l.xc=function(e){return tr(this,e)},l.zc=function(e,n){return Ai(this,e,n)},l.Bc=function(e){return G6(this,e)},l.gc=function(){return $T(this)},N(br,"AbstractHashMap",488),D(261,B1,Uu,kg),l.$b=function(){this.a.$b()},l.Hc=function(e){return hZt(this,e)},l.Kc=function(){return new d2(this.a)},l.Mc=function(e){var n;return hZt(this,e)?(n=u(e,42).cd(),this.a.Bc(n),!0):!1},l.gc=function(){return this.a.gc()},N(br,"AbstractHashMap/EntrySet",261),D(262,1,da,d2),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return Yv(this)},l.Ob=function(){return this.b},l.Qb=function(){cte(this)},l.b=!1,N(br,"AbstractHashMap/EntrySetIterator",262),D(417,1,da,h6),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return mM(this)},l.Pb=function(){return OXt(this)},l.Qb=function(){Dl(this)},l.b=0,l.c=-1,N(br,"AbstractList/IteratorImpl",417),D(96,417,Jd,xa),l.Qb=function(){Dl(this)},l.Rb=function(e){Rm(this,e)},l.Sb=function(){return this.b>0},l.Tb=function(){return this.b},l.Ub=function(){return Zn(this.b>0),this.a.Xb(this.c=--this.b)},l.Vb=function(){return this.b-1},l.Wb=function(e){Pm(this.c!=-1),this.a._c(this.c,e)},N(br,"AbstractList/ListIteratorImpl",96),D(219,52,L7,Kd),l.Vc=function(e,n){Um(e,this.b),this.c.Vc(this.a+e,n),++this.b},l.Xb=function(e){return Sn(e,this.b),this.c.Xb(this.a+e)},l.$c=function(e){var n;return Sn(e,this.b),n=this.c.$c(this.a+e),--this.b,n},l._c=function(e,n){return Sn(e,this.b),this.c._c(this.a+e,n)},l.gc=function(){return this.b},l.a=0,l.b=0,N(br,"AbstractList/SubList",219),D(384,B1,Uu,Tm),l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a._b(e)},l.Kc=function(){var e;return e=this.a.vc().Kc(),new rM(e)},l.Mc=function(e){return this.a._b(e)?(this.a.Bc(e),!0):!1},l.gc=function(){return this.a.gc()},N(br,"AbstractMap/1",384),D(691,1,da,rM),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.a.Ob()},l.Pb=function(){var e;return e=u(this.a.Pb(),42),e.cd()},l.Qb=function(){this.a.Qb()},N(br,"AbstractMap/1/1",691),D(226,28,wy,m1),l.$b=function(){this.a.$b()},l.Hc=function(e){return this.a.uc(e)},l.Kc=function(){var e;return e=this.a.vc().Kc(),new y1(e)},l.gc=function(){return this.a.gc()},N(br,"AbstractMap/2",226),D(294,1,da,y1),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.a.Ob()},l.Pb=function(){var e;return e=u(this.a.Pb(),42),e.dd()},l.Qb=function(){this.a.Qb()},N(br,"AbstractMap/2/1",294),D(484,1,{484:1,42:1}),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),Rc(this.d,n.cd())&&Rc(this.e,n.dd())):!1},l.cd=function(){return this.d},l.dd=function(){return this.e},l.Hb=function(){return G3(this.d)^G3(this.e)},l.ed=function(e){return X2t(this,e)},l.Ib=function(){return this.d+"="+this.e},N(br,"AbstractMap/AbstractEntry",484),D(383,484,{484:1,383:1,42:1},RR),N(br,"AbstractMap/SimpleEntry",383),D(1984,1,hot),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),Rc(this.cd(),n.cd())&&Rc(this.dd(),n.dd())):!1},l.Hb=function(){return G3(this.cd())^G3(this.dd())},l.Ib=function(){return this.cd()+"="+this.dd()},N(br,Uhe,1984),D(1992,1967,Vhe),l.tc=function(e){return mJt(this,e)},l._b=function(e){return vnt(this,e)},l.vc=function(){return new x(this)},l.xc=function(e){var n;return n=e,cc(Lyt(this,n))},l.ec=function(){return new y(this)},N(br,"AbstractNavigableMap",1992),D(739,B1,Uu,x),l.Hc=function(e){return _t(e,42)&&mJt(this.b,u(e,42))},l.Kc=function(){return new v_(this.b)},l.Mc=function(e){var n;return _t(e,42)?(n=u(e,42),ate(this.b,n)):!1},l.gc=function(){return this.b.c},N(br,"AbstractNavigableMap/EntrySet",739),D(493,B1,S6t,y),l.Nc=function(){return new FR(this)},l.$b=function(){OT(this.a)},l.Hc=function(e){return vnt(this.a,e)},l.Kc=function(){var e;return e=new v_(new g_(this.a).b),new g(e)},l.Mc=function(e){return vnt(this.a,e)?(D_(this.a,e),!0):!1},l.gc=function(){return this.a.c},N(br,"AbstractNavigableMap/NavigableKeySet",493),D(494,1,da,g),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return mM(this.a.a)},l.Pb=function(){var e;return e=wj(this.a),e.cd()},l.Qb=function(){uKt(this.a)},N(br,"AbstractNavigableMap/NavigableKeySet/1",494),D(2004,28,wy),l.Fc=function(e){return A8(h7(this,e)),!0},l.Gc=function(e){return In(e),Cj(e!=this,"Can't add a queue to itself"),Ka(this,e)},l.$b=function(){for(;Jrt(this)!=null;);},N(br,"AbstractQueue",2004),D(302,28,{4:1,20:1,28:1,14:1},F3,FQt),l.Fc=function(e){return Kwt(this,e),!0},l.$b=function(){tmt(this)},l.Hc=function(e){return Fne(new M_(this),e)},l.dc=function(){return NT(this)},l.Kc=function(){return new M_(this)},l.Mc=function(e){return frn(new M_(this),e)},l.gc=function(){return this.c-this.b&this.a.length-1},l.Nc=function(){return new Tn(this,272)},l.Qc=function(e){var n;return n=this.c-this.b&this.a.length-1,e.lengthn&&ls(e,n,null),e},l.b=0,l.c=0,N(br,"ArrayDeque",302),D(446,1,da,M_),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.a!=this.b},l.Pb=function(){return mz(this)},l.Qb=function(){Nee(this)},l.a=0,l.b=0,l.c=-1,N(br,"ArrayDeque/IteratorImpl",446),D(12,52,ofe,le,Jc,qu),l.Vc=function(e,n){$m(this,e,n)},l.Fc=function(e){return ue(this,e)},l.Wc=function(e,n){return Pyt(this,e,n)},l.Gc=function(e){return Rs(this,e)},l.$b=function(){this.c=Nt(Qn,Me,1,0,5,1)},l.Hc=function(e){return Go(this,e,0)!=-1},l.Jc=function(e){_u(this,e)},l.Xb=function(e){return Pe(this,e)},l.Xc=function(e){return Go(this,e,0)},l.dc=function(){return this.c.length==0},l.Kc=function(){return new S(this)},l.$c=function(e){return Ig(this,e)},l.Mc=function(e){return Eu(this,e)},l.Ud=function(e,n){PQt(this,e,n)},l._c=function(e,n){return lh(this,e,n)},l.gc=function(){return this.c.length},l.ad=function(e){aa(this,e)},l.Pc=function(){return ant(this)},l.Qc=function(e){return P1(this,e)};var X5n=N(br,"ArrayList",12);D(7,1,da,S),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return Jo(this)},l.Pb=function(){return Q(this)},l.Qb=function(){C_(this)},l.a=0,l.b=-1,N(br,"ArrayList/1",7),D(2013,b.Function,{},dt),l.te=function(e,n){return js(e,n)},D(154,52,cfe,Cl),l.Hc=function(e){return Fee(this,e)!=-1},l.Jc=function(e){var n,r,s,o;for(In(e),r=this.a,s=0,o=r.length;s>>0,e.toString(16)))},l.f=0,l.i=Ns;var XH=N(r0,"CNode",57);D(814,1,{},Lpt),N(r0,"CNode/CNodeBuilder",814);var $ge;D(1525,1,{},_r),l.Oe=function(e,n){return 0},l.Pe=function(e,n){return 0},N(r0,bfe,1525),D(1790,1,{},qr),l.Le=function(e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z;for(_=bs,s=new S(e.a.b);s.as.d.c||s.d.c==h.d.c&&s.d.b0?e+this.n.d+this.n.a:0},l.Se=function(){var e,n,r,s,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].Se());else if(this.g)o=r3t(this,Est(this,null,!0));else for(n=(Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])),r=0,s=n.length;r0?o+this.n.b+this.n.c:0},l.Te=function(){var e,n,r,s,o;if(this.g)for(e=Est(this,null,!1),r=(Zf(),ut(ot(My,1),oe,232,0,[fc,iu,dc])),s=0,o=r.length;s0&&(s[0]+=this.d,r-=s[0]),s[2]>0&&(s[2]+=this.d,r-=s[2]),this.c.a=b.Math.max(0,r),this.c.d=n.d+e.d+(this.c.a-r)/2,s[1]=b.Math.max(s[1],r),omt(this,iu,n.d+e.d+s[0]-(s[1]-r)/2,s)},l.b=null,l.d=0,l.e=!1,l.f=!1,l.g=!1;var Fut=0,QH=0;N(T2,"GridContainerCell",1473),D(461,22,{3:1,35:1,22:1,461:1},met);var lb,Ad,kf,Xge=zr(T2,"HorizontalLabelAlignment",461,Ur,Srn,hZe),Qge;D(306,212,{212:1,306:1},nQt,uee,JXt),l.Re=function(){return $Kt(this)},l.Se=function(){return Nvt(this)},l.a=0,l.c=!1;var a6n=N(T2,"LabelCell",306);D(244,326,{212:1,326:1,244:1},rC),l.Re=function(){return cI(this)},l.Se=function(){return uI(this)},l.Te=function(){gat(this)},l.Ue=function(){pat(this)},l.b=0,l.c=0,l.d=!1,N(T2,"StripContainerCell",244),D(1626,1,gi,Mc),l.Mb=function(e){return TKe(u(e,212))},N(T2,"StripContainerCell/lambda$0$Type",1626),D(1627,1,{},bp),l.Fe=function(e){return u(e,212).Se()},N(T2,"StripContainerCell/lambda$1$Type",1627),D(1628,1,gi,fm),l.Mb=function(e){return _Ke(u(e,212))},N(T2,"StripContainerCell/lambda$2$Type",1628),D(1629,1,{},T0),l.Fe=function(e){return u(e,212).Re()},N(T2,"StripContainerCell/lambda$3$Type",1629),D(462,22,{3:1,35:1,22:1,462:1},yet);var Ef,hb,s1,Zge=zr(T2,"VerticalLabelAlignment",462,Ur,Arn,fZe),Jge;D(789,1,{},v6t),l.c=0,l.d=0,l.k=0,l.s=0,l.t=0,l.v=!1,l.w=0,l.D=!1,N(Bq,"NodeContext",789),D(1471,1,qi,Fd),l.ue=function(e,n){return nUt(u(e,61),u(n,61))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Bq,"NodeContext/0methodref$comparePortSides$Type",1471),D(1472,1,qi,No),l.ue=function(e,n){return Zdn(u(e,111),u(n,111))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Bq,"NodeContext/1methodref$comparePortContexts$Type",1472),D(159,22,{3:1,35:1,22:1,159:1},dh);var tpe,epe,npe,rpe,ipe,spe,ape,ope,cpe,upe,lpe,hpe,fpe,dpe,gpe,ppe,bpe,vpe,wpe,mpe,ype,But,xpe=zr(Bq,"NodeLabelLocation",159,Ur,est,dZe),kpe;D(111,1,{111:1},Poe),l.a=!1,N(Bq,"PortContext",111),D(1476,1,Kn,ta),l.td=function(e){xHt(u(e,306))},N(FI,Lfe,1476),D(1477,1,gi,bu),l.Mb=function(e){return!!u(e,111).c},N(FI,Mfe,1477),D(1478,1,Kn,Pu),l.td=function(e){xHt(u(e,111).c)},N(FI,"LabelPlacer/lambda$2$Type",1478);var Q7t;D(1475,1,Kn,mo),l.td=function(e){Bm(),iKe(u(e,111))},N(FI,"NodeLabelAndSizeUtilities/lambda$0$Type",1475),D(790,1,Kn,dvt),l.td=function(e){bYe(this.b,this.c,this.a,u(e,181))},l.a=!1,l.c=!1,N(FI,"NodeLabelCellCreator/lambda$0$Type",790),D(1474,1,Kn,bn),l.td=function(e){oKe(this.a,u(e,181))},N(FI,"PortContextCreator/lambda$0$Type",1474);var ZH;D(1829,1,{},Os),N(O7,"GreedyRectangleStripOverlapRemover",1829),D(1830,1,qi,lo),l.ue=function(e,n){return KXe(u(e,222),u(n,222))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(O7,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830),D(1786,1,{},Jzt),l.a=5,l.e=0,N(O7,"RectangleStripOverlapRemover",1786),D(1787,1,qi,Fu),l.ue=function(e,n){return YXe(u(e,222),u(n,222))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(O7,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787),D(1789,1,qi,zo),l.ue=function(e,n){return men(u(e,222),u(n,222))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(O7,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789),D(406,22,{3:1,35:1,22:1,406:1},zR);var sO,Rut,jut,aO,Epe=zr(O7,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,Ur,Sin,gZe),Tpe;D(222,1,{222:1},Nnt),N(O7,"RectangleStripOverlapRemover/RectangleNode",222),D(1788,1,Kn,pr),l.td=function(e){Efn(this.a,u(e,222))},N(O7,"RectangleStripOverlapRemover/lambda$1$Type",1788),D(1304,1,qi,nd),l.ue=function(e,n){return Lyn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1304),D(1307,1,{},sf),l.Kb=function(e){return u(e,324).a},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1307),D(1308,1,gi,ll),l.Mb=function(e){return u(e,323).a},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1308),D(1309,1,gi,Vi),l.Mb=function(e){return u(e,323).a},N(yd,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1309),D(1302,1,qi,Ke),l.ue=function(e,n){return uwn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1302),D(1305,1,{},Tl),l.Kb=function(e){return u(e,324).a},N(yd,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1305),D(767,1,qi,kr),l.ue=function(e,n){return hcn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinNumOfExtensionsComparator",767),D(1300,1,qi,ni),l.ue=function(e,n){return yon(u(e,321),u(n,321))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinPerimeterComparator",1300),D(1301,1,qi,eo),l.ue=function(e,n){return Xhn(u(e,321),u(n,321))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/MinPerimeterComparatorWithShape",1301),D(1303,1,qi,Dc),l.ue=function(e,n){return Iwn(u(e,167),u(n,167))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(yd,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1303),D(1306,1,{},Ju),l.Kb=function(e){return u(e,324).a},N(yd,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1306),D(777,1,{},ybt),l.Ce=function(e,n){return Ein(this,u(e,46),u(n,167))},N(yd,"SuccessorCombination",777),D(644,1,{},Qo),l.Ce=function(e,n){var r;return fpn((r=u(e,46),u(n,167),r))},N(yd,"SuccessorJitter",644),D(643,1,{},jf),l.Ce=function(e,n){var r;return tvn((r=u(e,46),u(n,167),r))},N(yd,"SuccessorLineByLine",643),D(568,1,{},rh),l.Ce=function(e,n){var r;return dbn((r=u(e,46),u(n,167),r))},N(yd,"SuccessorManhattan",568),D(1356,1,{},dm),l.Ce=function(e,n){var r;return T2n((r=u(e,46),u(n,167),r))},N(yd,"SuccessorMaxNormWindingInMathPosSense",1356),D(400,1,{},fr),l.Ce=function(e,n){return cwt(this,e,n)},l.c=!1,l.d=!1,l.e=!1,l.f=!1,N(yd,"SuccessorQuadrantsGeneric",400),D(1357,1,{},S9),l.Kb=function(e){return u(e,324).a},N(yd,"SuccessorQuadrantsGeneric/lambda$0$Type",1357),D(323,22,{3:1,35:1,22:1,323:1},$R),l.a=!1;var oO,cO,uO,lO,_pe=zr(jq,K6t,323,Ur,Min,pZe),Cpe;D(1298,1,{}),l.Ib=function(){var e,n,r,s,o,h;for(r=" ",e=de(0),o=0;o=0?"b"+e+"["+Irt(this.a)+"]":"b["+Irt(this.a)+"]"):"b_"+Dv(this)},N(RI,"FBendpoint",559),D(282,134,{3:1,282:1,94:1,134:1},FWt),l.Ib=function(){return Irt(this)},N(RI,"FEdge",282),D(231,134,{3:1,231:1,94:1,134:1},C$);var c6n=N(RI,"FGraph",231);D(447,357,{3:1,447:1,357:1,94:1,134:1},jZt),l.Ib=function(){return this.b==null||this.b.length==0?"l["+Irt(this.a)+"]":"l_"+this.b},N(RI,"FLabel",447),D(144,357,{3:1,144:1,357:1,94:1,134:1},YYt),l.Ib=function(){return jwt(this)},l.b=0,N(RI,"FNode",144),D(2003,1,{}),l.bf=function(e){X5t(this,e)},l.cf=function(){wse(this)},l.d=0,N(ixt,"AbstractForceModel",2003),D(631,2003,{631:1},Ane),l.af=function(e,n){var r,s,o,h,d;return goe(this.f,e,n),o=fa(uc(n.d),e.d),d=b.Math.sqrt(o.a*o.a+o.b*o.b),s=b.Math.max(0,d-A_(e.e)/2-A_(n.e)/2),r=ire(this.e,e,n),r>0?h=-ben(s,this.c)*r:h=cQe(s,this.b)*u(K(e,(n1(),Z7)),19).a,ld(o,h/d),o},l.bf=function(e){X5t(this,e),this.a=u(K(e,(n1(),iV)),19).a,this.c=Zt(ve(K(e,sV))),this.b=Zt(ve(K(e,Uut)))},l.df=function(e){return e0&&(h-=yKe(s,this.a)*r),ld(o,h*this.b/d),o},l.bf=function(e){var n,r,s,o,h,d,w;for(X5t(this,e),this.b=Zt(ve(K(e,(n1(),Wut)))),this.c=this.b/u(K(e,iV),19).a,s=e.e.c.length,h=0,o=0,w=new S(e.e);w.a0},l.a=0,l.b=0,l.c=0,N(ixt,"FruchtermanReingoldModel",632),D(849,1,Ph,NJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,qq),""),"Force Model"),"Determines the model for force calculation."),aEt),(Hg(),ms)),oEt),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,sxt),""),"Iterations"),"The number of iterations on the force model."),de(300)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,axt),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Oot),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),xd),$o),wa),on(qn)))),ba(e,Oot,qq,Upe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Not),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),$o),wa),on(qn)))),ba(e,Not,qq,Hpe),phe((new dT,e))};var $pe,zpe,aEt,qpe,Hpe,Vpe,Gpe,Upe;N(NC,"ForceMetaDataProvider",849),D(424,22,{3:1,35:1,22:1,424:1},Tbt);var Gut,rV,oEt=zr(NC,"ForceModelStrategy",424,Ur,nrn,wZe),Wpe;D(988,1,Ph,dT),l.Qe=function(e){phe(e)};var Kpe,Ype,cEt,iV,uEt,Xpe,Qpe,Zpe,lEt,Jpe,hEt,fEt,tbe,Z7,ebe,Uut,dEt,nbe,rbe,sV,Wut;N(NC,"ForceOptions",988),D(989,1,{},vg),l.$e=function(){var e;return e=new Cpt,e},l._e=function(e){},N(NC,"ForceOptions/ForceFactory",989);var dO,lS,Tx,aV;D(850,1,Ph,PJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cxt),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Fn(),!1)),(Hg(),Pa)),Ws),on((t1(),ua))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,uxt),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),$o),wa),Ki(qn,ut(ot(ep,1),oe,175,0,[Id]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,lxt),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),gEt),ms),xEt),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hxt),""),"Stress Epsilon"),"Termination criterion for the iterative process."),xd),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,fxt),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),de(Ti)),xc),Ha),on(qn)))),Jle((new FJ,e))};var ibe,sbe,gEt,abe,obe,cbe;N(NC,"StressMetaDataProvider",850),D(992,1,Ph,FJ),l.Qe=function(e){Jle(e)};var oV,pEt,bEt,vEt,wEt,mEt,ube,lbe,hbe,fbe,yEt,dbe;N(NC,"StressOptions",992),D(993,1,{},dk),l.$e=function(){var e;return e=new BWt,e},l._e=function(e){},N(NC,"StressOptions/StressFactory",993),D(1128,209,_2,BWt),l.Ze=function(e,n){var r,s,o,h,d;for(mr(n,qfe,1),Be(Fe(ze(e,(JD(),wEt))))?Be(Fe(ze(e,yEt)))||u$((r=new rr((Dm(),new Sm(e))),r)):yce(new Cpt,e,zc(n,1)),o=Xne(e),s=ule(this.a,o),d=s.Kc();d.Ob();)h=u(d.Pb(),231),!(h.e.c.length<=1)&&(Syn(this.b,h),sbn(this.b),_u(h.d,new vp));o=khe(s),mhe(o),or(n)},N(Gq,"StressLayoutProvider",1128),D(1129,1,Kn,vp),l.td=function(e){r6t(u(e,447))},N(Gq,"StressLayoutProvider/lambda$0$Type",1129),D(990,1,{},Uzt),l.c=0,l.e=0,l.g=0,N(Gq,"StressMajorization",990),D(379,22,{3:1,35:1,22:1,379:1},xet);var Kut,Yut,Xut,xEt=zr(Gq,"StressMajorization/Dimension",379,Ur,Mrn,mZe),gbe;D(991,1,qi,Di),l.ue=function(e,n){return YQe(this.a,u(e,144),u(n,144))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Gq,"StressMajorization/lambda$0$Type",991),D(1229,1,{},ZQt),N(wx,"ElkLayered",1229),D(1230,1,Kn,L9),l.td=function(e){apn(u(e,37))},N(wx,"ElkLayered/lambda$0$Type",1230),D(1231,1,Kn,wi),l.td=function(e){XQe(this.a,u(e,37))},N(wx,"ElkLayered/lambda$1$Type",1231),D(1263,1,{},TUt);var pbe,bbe,vbe;N(wx,"GraphConfigurator",1263),D(759,1,Kn,_s),l.td=function(e){Cae(this.a,u(e,10))},N(wx,"GraphConfigurator/lambda$0$Type",759),D(760,1,{},M9),l.Kb=function(e){return t4t(),new kn(null,new Tn(u(e,29).a,16))},N(wx,"GraphConfigurator/lambda$1$Type",760),D(761,1,Kn,Zi),l.td=function(e){Cae(this.a,u(e,10))},N(wx,"GraphConfigurator/lambda$2$Type",761),D(1127,209,_2,Yzt),l.Ze=function(e,n){var r;r=Kmn(new eqt,e),Gt(ze(e,(xe(),jy)))===Gt(($0(),np))?Cln(this.a,r,n):kpn(this.a,r,n),ghe(new RJ,r)},N(wx,"LayeredLayoutProvider",1127),D(356,22,{3:1,35:1,22:1,356:1},xM);var Ld,fb,fu,Gc,jo,kEt=zr(wx,"LayeredPhases",356,Ur,dsn,yZe),wbe;D(1651,1,{},Bee),l.i=0;var mbe;N(zI,"ComponentsToCGraphTransformer",1651);var ybe;D(1652,1,{},$f),l.ef=function(e,n){return b.Math.min(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},l.ff=function(e,n){return b.Math.min(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},N(zI,"ComponentsToCGraphTransformer/1",1652),D(81,1,{81:1}),l.i=0,l.k=!0,l.o=Ns;var Qut=N(BC,"CNode",81);D(460,81,{460:1,81:1},_2t,C3t),l.Ib=function(){return""},N(zI,"ComponentsToCGraphTransformer/CRectNode",460),D(1623,1,{},ov);var Zut,Jut;N(zI,"OneDimensionalComponentsCompaction",1623),D(1624,1,{},Bd),l.Kb=function(e){return xrn(u(e,46))},l.Fb=function(e){return this===e},N(zI,"OneDimensionalComponentsCompaction/lambda$0$Type",1624),D(1625,1,{},E3),l.Kb=function(e){return Nln(u(e,46))},l.Fb=function(e){return this===e},N(zI,"OneDimensionalComponentsCompaction/lambda$1$Type",1625),D(1654,1,{},KYt),N(BC,"CGraph",1654),D(189,1,{189:1},Zit),l.b=0,l.c=0,l.e=0,l.g=!0,l.i=Ns,N(BC,"CGroup",189),D(1653,1,{},R5),l.ef=function(e,n){return b.Math.max(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},l.ff=function(e,n){return b.Math.max(e.a!=null?Zt(e.a):e.c.i,n.a!=null?Zt(n.a):n.c.i)},N(BC,bfe,1653),D(1655,1,{},Soe),l.d=!1;var xbe,tlt=N(BC,mfe,1655);D(1656,1,{},ou),l.Kb=function(e){return hbt(),Fn(),u(u(e,46).a,81).d.e!=0},l.Fb=function(e){return this===e},N(BC,yfe,1656),D(823,1,{},Pvt),l.a=!1,l.b=!1,l.c=!1,l.d=!1,N(BC,xfe,823),D(1825,1,{},fYt),N(Uq,kfe,1825);var gO=as(S2,gfe);D(1826,1,{369:1},HXt),l.Ke=function(e){pvn(this,u(e,466))},N(Uq,Efe,1826),D(1827,1,qi,j5),l.ue=function(e,n){return pnn(u(e,81),u(n,81))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Uq,Tfe,1827),D(466,1,{466:1},Cbt),l.a=!1,N(Uq,_fe,466),D(1828,1,qi,no),l.ue=function(e,n){return S1n(u(e,466),u(n,466))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Uq,Cfe,1828),D(140,1,{140:1},i8,Mvt),l.Fb=function(e){var n;return e==null||u6n!=dl(e)?!1:(n=u(e,140),Rc(this.c,n.c)&&Rc(this.d,n.d))},l.Hb=function(){return vz(ut(ot(Qn,1),Me,1,5,[this.c,this.d]))},l.Ib=function(){return"("+this.c+Xa+this.d+(this.a?"cx":"")+this.b+")"},l.a=!0,l.c=0,l.d=0;var u6n=N(S2,"Point",140);D(405,22,{3:1,35:1,22:1,405:1},qR);var Cw,Dy,$4,Iy,kbe=zr(S2,"Point/Quadrant",405,Ur,Din,xZe),Ebe;D(1642,1,{},Xzt),l.b=null,l.c=null,l.d=null,l.e=null,l.f=null;var Tbe,_be,Cbe,Sbe,Abe;N(S2,"RectilinearConvexHull",1642),D(574,1,{369:1},Bz),l.Ke=function(e){gan(this,u(e,140))},l.b=0;var EEt;N(S2,"RectilinearConvexHull/MaximalElementsEventHandler",574),D(1644,1,qi,uv),l.ue=function(e,n){return inn(ve(e),ve(n))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644),D(1643,1,{369:1},aee),l.Ke=function(e){A2n(this,u(e,140))},l.a=0,l.b=null,l.c=null,l.d=null,l.e=null,N(S2,"RectilinearConvexHull/RectangleEventHandler",1643),D(1645,1,qi,wg),l.ue=function(e,n){return oin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$0$Type",1645),D(1646,1,qi,cv),l.ue=function(e,n){return cin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$1$Type",1646),D(1647,1,qi,JK),l.ue=function(e,n){return lin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$2$Type",1647),D(1648,1,qi,qb),l.ue=function(e,n){return uin(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$3$Type",1648),D(1649,1,qi,tY),l.ue=function(e,n){return f0n(u(e,140),u(n,140))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(S2,"RectilinearConvexHull/lambda$4$Type",1649),D(1650,1,{},yQt),N(S2,"Scanline",1650),D(2005,1,{}),N(kd,"AbstractGraphPlacer",2005),D(325,1,{325:1},fWt),l.mf=function(e){return this.nf(e)?(cn(this.b,u(K(e,(ae(),Ny)),21),e),!0):!1},l.nf=function(e){var n,r,s,o;for(n=u(K(e,(ae(),Ny)),21),o=u(Pi(Hi,n),21),s=o.Kc();s.Ob();)if(r=u(s.Pb(),21),!u(Pi(this.b,r),15).dc())return!1;return!0};var Hi;N(kd,"ComponentGroup",325),D(765,2005,{},Mpt),l.of=function(e){var n,r;for(r=new S(this.a);r.aG&&(ce=0,_e+=q+o,q=0),bt=d.c,wC(d,ce+bt.a,_e+bt.b),Kf(bt),r=b.Math.max(r,ce+St.a),q=b.Math.max(q,St.b),ce+=St.a+o;if(n.f.a=r,n.f.b=_e+q,Be(Fe(K(h,WV)))){for(s=new D9,E6t(s,e,o),B=e.Kc();B.Ob();)M=u(B.Pb(),37),Fi(Kf(M.c),s.e);Fi(Kf(n.f),s.a)}Emt(n,e)},N(kd,"SimpleRowGraphPlacer",1291),D(1292,1,qi,zf),l.ue=function(e,n){return lcn(u(e,37),u(n,37))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(kd,"SimpleRowGraphPlacer/1",1292);var Mbe;D(1262,1,md,pm),l.Lb=function(e){var n;return n=u(K(u(e,243).b,(xe(),Oo)),74),!!n&&n.b!=0},l.Fb=function(e){return this===e},l.Mb=function(e){var n;return n=u(K(u(e,243).b,(xe(),Oo)),74),!!n&&n.b!=0},N(Wq,"CompoundGraphPostprocessor/1",1262),D(1261,1,vs,nqt),l.pf=function(e,n){ese(this,u(e,37),n)},N(Wq,"CompoundGraphPreprocessor",1261),D(441,1,{441:1},qre),l.c=!1,N(Wq,"CompoundGraphPreprocessor/ExternalPort",441),D(243,1,{243:1},Tj),l.Ib=function(){return ont(this.c)+":"+Eoe(this.b)},N(Wq,"CrossHierarchyEdge",243),D(763,1,qi,Ni),l.ue=function(e,n){return Jfn(this,u(e,243),u(n,243))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Wq,"CrossHierarchyEdgeComparator",763),D(299,134,{3:1,299:1,94:1,134:1}),l.p=0,N(ru,"LGraphElement",299),D(17,299,{3:1,17:1,299:1,94:1,134:1},zv),l.Ib=function(){return Eoe(this)};var nlt=N(ru,"LEdge",17);D(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},Gmt),l.Jc=function(e){_a(this,e)},l.Kc=function(){return new S(this.b)},l.Ib=function(){return this.b.c.length==0?"G-unlayered"+Jp(this.a):this.a.c.length==0?"G-layered"+Jp(this.b):"G[layerless"+Jp(this.a)+", layers"+Jp(this.b)+"]"};var Dbe=N(ru,"LGraph",37),Ibe;D(657,1,{}),l.qf=function(){return this.e.n},l.We=function(e){return K(this.e,e)},l.rf=function(){return this.e.o},l.sf=function(){return this.e.p},l.Xe=function(e){return ea(this.e,e)},l.tf=function(e){this.e.n.a=e.a,this.e.n.b=e.b},l.uf=function(e){this.e.o.a=e.a,this.e.o.b=e.b},l.vf=function(e){this.e.p=e},N(ru,"LGraphAdapters/AbstractLShapeAdapter",657),D(577,1,{839:1},ns),l.wf=function(){var e,n;if(!this.b)for(this.b=Hd(this.a.b.c.length),n=new S(this.a.b);n.a0&&Are(($r(n-1,e.length),e.charCodeAt(n-1)),Kfe);)--n;if(h> ",e),Wz(r)),Yr(wc((e.a+="[",e),r.i),"]")),e.a},l.c=!0,l.d=!1;var AEt,LEt,MEt,DEt,IEt,OEt,Nbe=N(ru,"LPort",11);D(397,1,t0,sa),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=new S(this.a.e),new Xs(e)},N(ru,"LPort/1",397),D(1290,1,da,Xs),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(Q(this.a),17).c},l.Ob=function(){return Jo(this.a)},l.Qb=function(){C_(this.a)},N(ru,"LPort/1/1",1290),D(359,1,t0,Cr),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=new S(this.a.g),new Jt(e)},N(ru,"LPort/2",359),D(762,1,da,Jt),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(Q(this.a),17).d},l.Ob=function(){return Jo(this.a)},l.Qb=function(){C_(this.a)},N(ru,"LPort/2/1",762),D(1283,1,t0,HVt),l.Jc=function(e){_a(this,e)},l.Kc=function(){return new M1(this)},N(ru,"LPort/CombineIter",1283),D(201,1,da,M1),l.Nb=function(e){Ea(this,e)},l.Qb=function(){dHt()},l.Ob=function(){return p_(this)},l.Pb=function(){return Jo(this.a)?Q(this.a):Q(this.b)},N(ru,"LPort/CombineIter/1",201),D(1285,1,md,wp),l.Lb=function(e){return TYt(e)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).e.c.length!=0},N(ru,"LPort/lambda$0$Type",1285),D(1284,1,md,bm),l.Lb=function(e){return _Yt(e)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).g.c.length!=0},N(ru,"LPort/lambda$1$Type",1284),D(1286,1,md,nY),l.Lb=function(e){return Vu(),u(e,11).j==(be(),On)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),On)},N(ru,"LPort/lambda$2$Type",1286),D(1287,1,md,Hb),l.Lb=function(e){return Vu(),u(e,11).j==(be(),Hn)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),Hn)},N(ru,"LPort/lambda$3$Type",1287),D(1288,1,md,rY),l.Lb=function(e){return Vu(),u(e,11).j==(be(),yr)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),yr)},N(ru,"LPort/lambda$4$Type",1288),D(1289,1,md,iY),l.Lb=function(e){return Vu(),u(e,11).j==(be(),Bn)},l.Fb=function(e){return this===e},l.Mb=function(e){return Vu(),u(e,11).j==(be(),Bn)},N(ru,"LPort/lambda$5$Type",1289),D(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},Lh),l.Jc=function(e){_a(this,e)},l.Kc=function(){return new S(this.a)},l.Ib=function(){return"L_"+Go(this.b.b,this,0)+Jp(this.a)},N(ru,"Layer",29),D(1342,1,{},eqt),N(Ug,Zfe,1342),D(1346,1,{},$5),l.Kb=function(e){return Ro(u(e,82))},N(Ug,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346),D(1349,1,{},I9),l.Kb=function(e){return Ro(u(e,82))},N(Ug,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349),D(1343,1,Kn,jn),l.td=function(e){Boe(this.a,u(e,118))},N(Ug,Jfe,1343),D(1344,1,Kn,Lr),l.td=function(e){Boe(this.a,u(e,118))},N(Ug,t1e,1344),D(1345,1,{},XP),l.Kb=function(e){return new kn(null,new Tn(Jen(u(e,79)),16))},N(Ug,e1e,1345),D(1347,1,gi,ir),l.Mb=function(e){return tXe(this.a,u(e,33))},N(Ug,n1e,1347),D(1348,1,{},gk),l.Kb=function(e){return new kn(null,new Tn(tnn(u(e,79)),16))},N(Ug,"ElkGraphImporter/lambda$5$Type",1348),D(1350,1,gi,sr),l.Mb=function(e){return eXe(this.a,u(e,33))},N(Ug,"ElkGraphImporter/lambda$7$Type",1350),D(1351,1,gi,sY),l.Mb=function(e){return vnn(u(e,79))},N(Ug,"ElkGraphImporter/lambda$8$Type",1351),D(1278,1,{},RJ);var Pbe;N(Ug,"ElkGraphLayoutTransferrer",1278),D(1279,1,gi,Fa),l.Mb=function(e){return HQe(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$0$Type",1279),D(1280,1,Kn,Hr),l.td=function(e){vM(),ue(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$1$Type",1280),D(1281,1,gi,ss),l.Mb=function(e){return AQe(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$2$Type",1281),D(1282,1,Kn,qo),l.td=function(e){vM(),ue(this.a,u(e,17))},N(Ug,"ElkGraphLayoutTransferrer/lambda$3$Type",1282),D(1485,1,vs,pk),l.pf=function(e,n){Mon(u(e,37),n)},N($n,"CommentNodeMarginCalculator",1485),D(1486,1,{},aY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"CommentNodeMarginCalculator/lambda$0$Type",1486),D(1487,1,Kn,oY),l.td=function(e){lyn(u(e,10))},N($n,"CommentNodeMarginCalculator/lambda$1$Type",1487),D(1488,1,vs,cY),l.pf=function(e,n){Evn(u(e,37),n)},N($n,"CommentPostprocessor",1488),D(1489,1,vs,uY),l.pf=function(e,n){M4n(u(e,37),n)},N($n,"CommentPreprocessor",1489),D(1490,1,vs,lY),l.pf=function(e,n){Ubn(u(e,37),n)},N($n,"ConstraintsPostprocessor",1490),D(1491,1,vs,hY),l.pf=function(e,n){Jon(u(e,37),n)},N($n,"EdgeAndLayerConstraintEdgeReverser",1491),D(1492,1,vs,fY),l.pf=function(e,n){zln(u(e,37),n)},N($n,"EndLabelPostprocessor",1492),D(1493,1,{},dY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"EndLabelPostprocessor/lambda$0$Type",1493),D(1494,1,gi,gY),l.Mb=function(e){return Pnn(u(e,10))},N($n,"EndLabelPostprocessor/lambda$1$Type",1494),D(1495,1,Kn,pY),l.td=function(e){A1n(u(e,10))},N($n,"EndLabelPostprocessor/lambda$2$Type",1495),D(1496,1,vs,bY),l.pf=function(e,n){vgn(u(e,37),n)},N($n,"EndLabelPreprocessor",1496),D(1497,1,{},yL),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"EndLabelPreprocessor/lambda$0$Type",1497),D(1498,1,Kn,pKt),l.td=function(e){vYe(this.a,this.b,this.c,u(e,10))},l.a=0,l.b=0,l.c=!1,N($n,"EndLabelPreprocessor/lambda$1$Type",1498),D(1499,1,gi,vY),l.Mb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),_E))},N($n,"EndLabelPreprocessor/lambda$2$Type",1499),D(1500,1,Kn,Bc),l.td=function(e){ai(this.a,u(e,70))},N($n,"EndLabelPreprocessor/lambda$3$Type",1500),D(1501,1,gi,wY),l.Mb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),Yy))},N($n,"EndLabelPreprocessor/lambda$4$Type",1501),D(1502,1,Kn,ro),l.td=function(e){ai(this.a,u(e,70))},N($n,"EndLabelPreprocessor/lambda$5$Type",1502),D(1551,1,vs,BJ),l.pf=function(e,n){Yun(u(e,37),n)};var Fbe;N($n,"EndLabelSorter",1551),D(1552,1,qi,O9),l.ue=function(e,n){return _hn(u(e,456),u(n,456))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"EndLabelSorter/1",1552),D(456,1,{456:1},PXt),N($n,"EndLabelSorter/LabelGroup",456),D(1553,1,{},QP),l.Kb=function(e){return wM(),new kn(null,new Tn(u(e,29).a,16))},N($n,"EndLabelSorter/lambda$0$Type",1553),D(1554,1,gi,z5),l.Mb=function(e){return wM(),u(e,10).k==(Gn(),qs)},N($n,"EndLabelSorter/lambda$1$Type",1554),D(1555,1,Kn,mY),l.td=function(e){A0n(u(e,10))},N($n,"EndLabelSorter/lambda$2$Type",1555),D(1556,1,gi,yY),l.Mb=function(e){return wM(),Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),Yy))},N($n,"EndLabelSorter/lambda$3$Type",1556),D(1557,1,gi,xY),l.Mb=function(e){return wM(),Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),_E))},N($n,"EndLabelSorter/lambda$4$Type",1557),D(1503,1,vs,kY),l.pf=function(e,n){xyn(this,u(e,37))},l.b=0,l.c=0,N($n,"FinalSplineBendpointsCalculator",1503),D(1504,1,{},EY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"FinalSplineBendpointsCalculator/lambda$0$Type",1504),D(1505,1,{},N9),l.Kb=function(e){return new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N($n,"FinalSplineBendpointsCalculator/lambda$1$Type",1505),D(1506,1,gi,xL),l.Mb=function(e){return!Wa(u(e,17))},N($n,"FinalSplineBendpointsCalculator/lambda$2$Type",1506),D(1507,1,gi,ZP),l.Mb=function(e){return ea(u(e,17),(ae(),F2))},N($n,"FinalSplineBendpointsCalculator/lambda$3$Type",1507),D(1508,1,Kn,Tc),l.td=function(e){Nwn(this.a,u(e,128))},N($n,"FinalSplineBendpointsCalculator/lambda$4$Type",1508),D(1509,1,Kn,T3),l.td=function(e){jst(u(e,17).a)},N($n,"FinalSplineBendpointsCalculator/lambda$5$Type",1509),D(792,1,vs,Ma),l.pf=function(e,n){g3n(this,u(e,37),n)},N($n,"GraphTransformer",792),D(511,22,{3:1,35:1,22:1,511:1},_bt);var ilt,pO,Bbe=zr($n,"GraphTransformer/Mode",511,Ur,rrn,PJe),Rbe;D(1510,1,vs,_3),l.pf=function(e,n){V2n(u(e,37),n)},N($n,"HierarchicalNodeResizingProcessor",1510),D(1511,1,vs,TY),l.pf=function(e,n){_on(u(e,37),n)},N($n,"HierarchicalPortConstraintProcessor",1511),D(1512,1,qi,of),l.ue=function(e,n){return Fhn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"HierarchicalPortConstraintProcessor/NodeComparator",1512),D(1513,1,vs,q5),l.pf=function(e,n){Gmn(u(e,37),n)},N($n,"HierarchicalPortDummySizeProcessor",1513),D(1514,1,vs,_Y),l.pf=function(e,n){qvn(this,u(e,37),n)},l.a=0,N($n,"HierarchicalPortOrthogonalEdgeRouter",1514),D(1515,1,qi,bk),l.ue=function(e,n){return WXe(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"HierarchicalPortOrthogonalEdgeRouter/1",1515),D(1516,1,qi,Rd),l.ue=function(e,n){return oan(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"HierarchicalPortOrthogonalEdgeRouter/2",1516),D(1517,1,vs,CY),l.pf=function(e,n){d0n(u(e,37),n)},N($n,"HierarchicalPortPositionProcessor",1517),D(1518,1,vs,jJ),l.pf=function(e,n){c5n(this,u(e,37))},l.a=0,l.c=0;var cV,uV;N($n,"HighDegreeNodeLayeringProcessor",1518),D(571,1,{571:1},SY),l.b=-1,l.d=-1,N($n,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",571),D(1519,1,{},AY),l.Kb=function(e){return VM(),Uo(u(e,10))},l.Fb=function(e){return this===e},N($n,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1519),D(1520,1,{},LY),l.Kb=function(e){return VM(),$s(u(e,10))},l.Fb=function(e){return this===e},N($n,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1520),D(1526,1,vs,P9),l.pf=function(e,n){mmn(this,u(e,37),n)},N($n,"HyperedgeDummyMerger",1526),D(793,1,{},pvt),l.a=!1,l.b=!1,l.c=!1,N($n,"HyperedgeDummyMerger/MergeState",793),D(1527,1,{},kL),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"HyperedgeDummyMerger/lambda$0$Type",1527),D(1528,1,{},JP),l.Kb=function(e){return new kn(null,new Tn(u(e,10).j,16))},N($n,"HyperedgeDummyMerger/lambda$1$Type",1528),D(1529,1,Kn,EL),l.td=function(e){u(e,11).p=-1},N($n,"HyperedgeDummyMerger/lambda$2$Type",1529),D(1530,1,vs,H5),l.pf=function(e,n){vmn(u(e,37),n)},N($n,"HypernodesProcessor",1530),D(1531,1,vs,MY),l.pf=function(e,n){wmn(u(e,37),n)},N($n,"InLayerConstraintProcessor",1531),D(1532,1,vs,tF),l.pf=function(e,n){Kon(u(e,37),n)},N($n,"InnermostNodeMarginCalculator",1532),D(1533,1,vs,eF),l.pf=function(e,n){_4n(this,u(e,37))},l.a=Ns,l.b=Ns,l.c=bs,l.d=bs;var l6n=N($n,"InteractiveExternalPortPositioner",1533);D(1534,1,{},DY),l.Kb=function(e){return u(e,17).d.i},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$0$Type",1534),D(1535,1,{},io),l.Kb=function(e){return XXe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$1$Type",1535),D(1536,1,{},IY),l.Kb=function(e){return u(e,17).c.i},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$2$Type",1536),D(1537,1,{},_l),l.Kb=function(e){return QXe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$3$Type",1537),D(1538,1,{},Gf),l.Kb=function(e){return $Qe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$4$Type",1538),D(1539,1,{},Ep),l.Kb=function(e){return zQe(this.a,ve(e))},l.Fb=function(e){return this===e},N($n,"InteractiveExternalPortPositioner/lambda$5$Type",1539),D(77,22,{3:1,35:1,22:1,77:1,234:1},Ls),l.Kf=function(){switch(this.g){case 15:return new KX;case 22:return new YX;case 47:return new ZX;case 28:case 35:return new C3;case 32:return new pk;case 42:return new cY;case 1:return new uY;case 41:return new lY;case 56:return new Ma(($8(),pO));case 0:return new Ma(($8(),ilt));case 2:return new hY;case 54:return new fY;case 33:return new bY;case 51:return new kY;case 55:return new _3;case 13:return new TY;case 38:return new q5;case 44:return new _Y;case 40:return new CY;case 9:return new jJ;case 49:return new eWt;case 37:return new P9;case 43:return new H5;case 27:return new MY;case 30:return new tF;case 3:return new eF;case 18:return new NY;case 29:return new PY;case 5:return new MB;case 50:return new OY;case 34:return new $J;case 36:return new vk;case 52:return new BJ;case 11:return new vm;case 7:return new qJ;case 39:return new wk;case 45:return new jY;case 16:return new F9;case 10:return new rd;case 48:return new _L;case 21:return new mk;case 23:return new ret((Zv(),IS));case 8:return new sF;case 12:return new SL;case 4:return new zY;case 19:return new gT;case 17:return new UY;case 53:return new WY;case 6:return new fF;case 25:return new sqt;case 46:return new QY;case 31:return new jWt;case 14:return new LL;case 26:return new eQ;case 20:return new sX;case 24:return new ret((Zv(),dG));default:throw nt(new Pn(jot+(this.f!=null?this.f:""+this.g)))}};var NEt,PEt,FEt,BEt,REt,jEt,$Et,zEt,qEt,HEt,hS,lV,hV,VEt,GEt,UEt,WEt,KEt,YEt,XEt,fS,QEt,ZEt,JEt,t9t,e9t,slt,fV,dV,n9t,gV,pV,bV,J7,tE,eE,r9t,vV,wV,i9t,mV,yV,s9t,a9t,o9t,c9t,xV,alt,bO,kV,EV,TV,_V,u9t,l9t,h9t,f9t,h6n=zr($n,gxt,77,Ur,Lce,NJe),jbe;D(1540,1,vs,NY),l.pf=function(e,n){S4n(u(e,37),n)},N($n,"InvertedPortProcessor",1540),D(1541,1,vs,PY),l.pf=function(e,n){Swn(u(e,37),n)},N($n,"LabelAndNodeSizeProcessor",1541),D(1542,1,gi,FY),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"LabelAndNodeSizeProcessor/lambda$0$Type",1542),D(1543,1,gi,jd),l.Mb=function(e){return u(e,10).k==(Gn(),Is)},N($n,"LabelAndNodeSizeProcessor/lambda$1$Type",1543),D(1544,1,Kn,bKt),l.td=function(e){wYe(this.b,this.a,this.c,u(e,10))},l.a=!1,l.c=!1,N($n,"LabelAndNodeSizeProcessor/lambda$2$Type",1544),D(1545,1,vs,MB),l.pf=function(e,n){Q3n(u(e,37),n)};var $be;N($n,"LabelDummyInserter",1545),D(1546,1,md,lv),l.Lb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),TE))},l.Fb=function(e){return this===e},l.Mb=function(e){return Gt(K(u(e,70),(xe(),Dd)))===Gt((D1(),TE))},N($n,"LabelDummyInserter/1",1546),D(1547,1,vs,OY),l.pf=function(e,n){Jyn(u(e,37),n)},N($n,"LabelDummyRemover",1547),D(1548,1,gi,BY),l.Mb=function(e){return Be(Fe(K(u(e,70),(xe(),Klt))))},N($n,"LabelDummyRemover/lambda$0$Type",1548),D(1359,1,vs,$J),l.pf=function(e,n){A3n(this,u(e,37),n)},l.a=null;var olt;N($n,"LabelDummySwitcher",1359),D(286,1,{286:1},Sue),l.c=0,l.d=null,l.f=0,N($n,"LabelDummySwitcher/LabelDummyInfo",286),D(1360,1,{},nF),l.Kb=function(e){return Y6(),new kn(null,new Tn(u(e,29).a,16))},N($n,"LabelDummySwitcher/lambda$0$Type",1360),D(1361,1,gi,rF),l.Mb=function(e){return Y6(),u(e,10).k==(Gn(),Pl)},N($n,"LabelDummySwitcher/lambda$1$Type",1361),D(1362,1,{},Eg),l.Kb=function(e){return LQe(this.a,u(e,10))},N($n,"LabelDummySwitcher/lambda$2$Type",1362),D(1363,1,Kn,ad),l.td=function(e){Aen(this.a,u(e,286))},N($n,"LabelDummySwitcher/lambda$3$Type",1363),D(1364,1,qi,RY),l.ue=function(e,n){return nen(u(e,286),u(n,286))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"LabelDummySwitcher/lambda$4$Type",1364),D(791,1,vs,C3),l.pf=function(e,n){jsn(u(e,37),n)},N($n,"LabelManagementProcessor",791),D(1549,1,vs,vk),l.pf=function(e,n){lvn(u(e,37),n)},N($n,"LabelSideSelector",1549),D(1550,1,gi,TL),l.Mb=function(e){return Be(Fe(K(u(e,70),(xe(),Klt))))},N($n,"LabelSideSelector/lambda$0$Type",1550),D(1558,1,vs,vm),l.pf=function(e,n){Umn(u(e,37),n)},N($n,"LayerConstraintPostprocessor",1558),D(1559,1,vs,qJ),l.pf=function(e,n){abn(u(e,37),n)};var d9t;N($n,"LayerConstraintPreprocessor",1559),D(360,22,{3:1,35:1,22:1,360:1},HR);var vO,CV,SV,clt,zbe=zr($n,"LayerConstraintPreprocessor/HiddenNodeConnections",360,Ur,Iin,_Ze),qbe;D(1560,1,vs,wk),l.pf=function(e,n){Xyn(u(e,37),n)},N($n,"LayerSizeAndGraphHeightCalculator",1560),D(1561,1,vs,jY),l.pf=function(e,n){Jbn(u(e,37),n)},N($n,"LongEdgeJoiner",1561),D(1562,1,vs,F9),l.pf=function(e,n){Dyn(u(e,37),n)},N($n,"LongEdgeSplitter",1562),D(1563,1,vs,rd),l.pf=function(e,n){D3n(this,u(e,37),n)},l.d=0,l.e=0,l.i=0,l.j=0,l.k=0,l.n=0,N($n,"NodePromotion",1563),D(1564,1,{},iF),l.Kb=function(e){return u(e,46),Fn(),!0},l.Fb=function(e){return this===e},N($n,"NodePromotion/lambda$0$Type",1564),D(1565,1,{},Tp),l.Kb=function(e){return Yen(this.a,u(e,46))},l.Fb=function(e){return this===e},l.a=0,N($n,"NodePromotion/lambda$1$Type",1565),D(1566,1,{},Uf),l.Kb=function(e){return Xen(this.a,u(e,46))},l.Fb=function(e){return this===e},l.a=0,N($n,"NodePromotion/lambda$2$Type",1566),D(1567,1,vs,_L),l.pf=function(e,n){e5n(u(e,37),n)},N($n,"NorthSouthPortPostprocessor",1567),D(1568,1,vs,mk),l.pf=function(e,n){$4n(u(e,37),n)},N($n,"NorthSouthPortPreprocessor",1568),D(1569,1,qi,CL),l.ue=function(e,n){return pcn(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"NorthSouthPortPreprocessor/lambda$0$Type",1569),D(1570,1,vs,sF),l.pf=function(e,n){rmn(u(e,37),n)},N($n,"PartitionMidprocessor",1570),D(1571,1,gi,$Y),l.Mb=function(e){return ea(u(e,10),(xe(),gE))},N($n,"PartitionMidprocessor/lambda$0$Type",1571),D(1572,1,Kn,bv),l.td=function(e){wnn(this.a,u(e,10))},N($n,"PartitionMidprocessor/lambda$1$Type",1572),D(1573,1,vs,SL),l.pf=function(e,n){m2n(u(e,37),n)},N($n,"PartitionPostprocessor",1573),D(1574,1,vs,zY),l.pf=function(e,n){Lpn(u(e,37),n)},N($n,"PartitionPreprocessor",1574),D(1575,1,gi,qY),l.Mb=function(e){return ea(u(e,10),(xe(),gE))},N($n,"PartitionPreprocessor/lambda$0$Type",1575),D(1576,1,{},aF),l.Kb=function(e){return new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N($n,"PartitionPreprocessor/lambda$1$Type",1576),D(1577,1,gi,V5),l.Mb=function(e){return khn(u(e,17))},N($n,"PartitionPreprocessor/lambda$2$Type",1577),D(1578,1,Kn,oF),l.td=function(e){_cn(u(e,17))},N($n,"PartitionPreprocessor/lambda$3$Type",1578),D(1579,1,vs,gT),l.pf=function(e,n){zwn(u(e,37),n)};var g9t,Hbe,Vbe,Gbe,p9t,b9t;N($n,"PortListSorter",1579),D(1580,1,{},G5),l.Kb=function(e){return Q8(),u(e,11).e},N($n,"PortListSorter/lambda$0$Type",1580),D(1581,1,{},HY),l.Kb=function(e){return Q8(),u(e,11).g},N($n,"PortListSorter/lambda$1$Type",1581),D(1582,1,qi,AL),l.ue=function(e,n){return zZt(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"PortListSorter/lambda$2$Type",1582),D(1583,1,qi,VY),l.ue=function(e,n){return Ufn(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"PortListSorter/lambda$3$Type",1583),D(1584,1,qi,GY),l.ue=function(e,n){return Xue(u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"PortListSorter/lambda$4$Type",1584),D(1585,1,vs,UY),l.pf=function(e,n){tbn(u(e,37),n)},N($n,"PortSideProcessor",1585),D(1586,1,vs,WY),l.pf=function(e,n){ewn(u(e,37),n)},N($n,"ReversedEdgeRestorer",1586),D(1591,1,vs,sqt),l.pf=function(e,n){Mfn(this,u(e,37),n)},N($n,"SelfLoopPortRestorer",1591),D(1592,1,{},cF),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"SelfLoopPortRestorer/lambda$0$Type",1592),D(1593,1,gi,KY),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SelfLoopPortRestorer/lambda$1$Type",1593),D(1594,1,gi,YY),l.Mb=function(e){return ea(u(e,10),(ae(),hE))},N($n,"SelfLoopPortRestorer/lambda$2$Type",1594),D(1595,1,{},XY),l.Kb=function(e){return u(K(u(e,10),(ae(),hE)),403)},N($n,"SelfLoopPortRestorer/lambda$3$Type",1595),D(1596,1,Kn,Cm),l.td=function(e){j0n(this.a,u(e,403))},N($n,"SelfLoopPortRestorer/lambda$4$Type",1596),D(794,1,Kn,uF),l.td=function(e){tgn(u(e,101))},N($n,"SelfLoopPortRestorer/lambda$5$Type",794),D(1597,1,vs,QY),l.pf=function(e,n){jhn(u(e,37),n)},N($n,"SelfLoopPostProcessor",1597),D(1598,1,{},ZY),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"SelfLoopPostProcessor/lambda$0$Type",1598),D(1599,1,gi,JY),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SelfLoopPostProcessor/lambda$1$Type",1599),D(1600,1,gi,lF),l.Mb=function(e){return ea(u(e,10),(ae(),hE))},N($n,"SelfLoopPostProcessor/lambda$2$Type",1600),D(1601,1,Kn,tX),l.td=function(e){U1n(u(e,10))},N($n,"SelfLoopPostProcessor/lambda$3$Type",1601),D(1602,1,{},eX),l.Kb=function(e){return new kn(null,new Tn(u(e,101).f,1))},N($n,"SelfLoopPostProcessor/lambda$4$Type",1602),D(1603,1,Kn,d6),l.td=function(e){Pin(this.a,u(e,409))},N($n,"SelfLoopPostProcessor/lambda$5$Type",1603),D(1604,1,gi,hF),l.Mb=function(e){return!!u(e,101).i},N($n,"SelfLoopPostProcessor/lambda$6$Type",1604),D(1605,1,Kn,N3),l.td=function(e){mKe(this.a,u(e,101))},N($n,"SelfLoopPostProcessor/lambda$7$Type",1605),D(1587,1,vs,fF),l.pf=function(e,n){Ibn(u(e,37),n)},N($n,"SelfLoopPreProcessor",1587),D(1588,1,{},dF),l.Kb=function(e){return new kn(null,new Tn(u(e,101).f,1))},N($n,"SelfLoopPreProcessor/lambda$0$Type",1588),D(1589,1,{},nX),l.Kb=function(e){return u(e,409).a},N($n,"SelfLoopPreProcessor/lambda$1$Type",1589),D(1590,1,Kn,rX),l.td=function(e){TXe(u(e,17))},N($n,"SelfLoopPreProcessor/lambda$2$Type",1590),D(1606,1,vs,jWt),l.pf=function(e,n){L0n(this,u(e,37),n)},N($n,"SelfLoopRouter",1606),D(1607,1,{},yk),l.Kb=function(e){return new kn(null,new Tn(u(e,29).a,16))},N($n,"SelfLoopRouter/lambda$0$Type",1607),D(1608,1,gi,U5),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SelfLoopRouter/lambda$1$Type",1608),D(1609,1,gi,B9),l.Mb=function(e){return ea(u(e,10),(ae(),hE))},N($n,"SelfLoopRouter/lambda$2$Type",1609),D(1610,1,{},iX),l.Kb=function(e){return u(K(u(e,10),(ae(),hE)),403)},N($n,"SelfLoopRouter/lambda$3$Type",1610),D(1611,1,Kn,PVt),l.td=function(e){unn(this.a,this.b,u(e,403))},N($n,"SelfLoopRouter/lambda$4$Type",1611),D(1612,1,vs,LL),l.pf=function(e,n){Z2n(u(e,37),n)},N($n,"SemiInteractiveCrossMinProcessor",1612),D(1613,1,gi,R9),l.Mb=function(e){return u(e,10).k==(Gn(),qs)},N($n,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1613),D(1614,1,gi,ML),l.Mb=function(e){return eYt(u(e,10))._b((xe(),Hy))},N($n,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1614),D(1615,1,qi,gF),l.ue=function(e,n){return Son(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N($n,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1615),D(1616,1,{},pF),l.Ce=function(e,n){return Cnn(u(e,10),u(n,10))},N($n,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1616),D(1618,1,vs,sX),l.pf=function(e,n){Wmn(u(e,37),n)},N($n,"SortByInputModelProcessor",1618),D(1619,1,gi,aX),l.Mb=function(e){return u(e,11).g.c.length!=0},N($n,"SortByInputModelProcessor/lambda$0$Type",1619),D(1620,1,Kn,g6),l.td=function(e){sgn(this.a,u(e,11))},N($n,"SortByInputModelProcessor/lambda$1$Type",1620),D(1693,803,{},Xee),l.Me=function(e){var n,r,s,o;switch(this.c=e,this.a.g){case 2:n=new le,ys(Wi(new kn(null,new Tn(this.c.a.b,16)),new mF),new $Vt(this,n)),aI(this,new vF),_u(n,new cX),n.c=Nt(Qn,Me,1,0,5,1),ys(Wi(new kn(null,new Tn(this.c.a.b,16)),new uX),new P3(n)),aI(this,new lX),_u(n,new hX),n.c=Nt(Qn,Me,1,0,5,1),r=mUt(une(Jj(new kn(null,new Tn(this.c.a.b,16)),new $d(this))),new fX),ys(new kn(null,new Tn(this.c.a.a,16)),new BVt(r,n)),aI(this,new dX),_u(n,new oX),n.c=Nt(Qn,Me,1,0,5,1);break;case 3:s=new le,aI(this,new bF),o=mUt(une(Jj(new kn(null,new Tn(this.c.a.b,16)),new TT(this))),new wF),ys(Wi(new kn(null,new Tn(this.c.a.b,16)),new gX),new jVt(o,s)),aI(this,new pX),_u(s,new bX),s.c=Nt(Qn,Me,1,0,5,1);break;default:throw nt(new Vzt)}},l.b=0,N(Ps,"EdgeAwareScanlineConstraintCalculation",1693),D(1694,1,md,bF),l.Lb=function(e){return _t(u(e,57).g,145)},l.Fb=function(e){return this===e},l.Mb=function(e){return _t(u(e,57).g,145)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1694),D(1695,1,{},TT),l.Fe=function(e){return Rgn(this.a,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1695),D(1703,1,Oq,FVt),l.Vd=function(){cC(this.a,this.b,-1)},l.b=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1703),D(1705,1,md,vF),l.Lb=function(e){return _t(u(e,57).g,145)},l.Fb=function(e){return this===e},l.Mb=function(e){return _t(u(e,57).g,145)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1705),D(1706,1,Kn,cX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1706),D(1707,1,gi,uX),l.Mb=function(e){return _t(u(e,57).g,10)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1707),D(1709,1,Kn,P3),l.td=function(e){hln(this.a,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1709),D(1708,1,Oq,VVt),l.Vd=function(){cC(this.b,this.a,-1)},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1708),D(1710,1,md,lX),l.Lb=function(e){return _t(u(e,57).g,10)},l.Fb=function(e){return this===e},l.Mb=function(e){return _t(u(e,57).g,10)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1710),D(1711,1,Kn,hX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1711),D(1712,1,{},$d),l.Fe=function(e){return jgn(this.a,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1712),D(1713,1,{},fX),l.De=function(){return 0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1713),D(1696,1,{},wF),l.De=function(){return 0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1696),D(1715,1,Kn,BVt),l.td=function(e){Utn(this.a,this.b,u(e,307))},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1715),D(1714,1,Oq,RVt),l.Vd=function(){ace(this.a,this.b,-1)},l.b=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1714),D(1716,1,md,dX),l.Lb=function(e){return u(e,57),!0},l.Fb=function(e){return this===e},l.Mb=function(e){return u(e,57),!0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1716),D(1717,1,Kn,oX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1717),D(1697,1,gi,gX),l.Mb=function(e){return _t(u(e,57).g,10)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1697),D(1699,1,Kn,jVt),l.td=function(e){Wtn(this.a,this.b,u(e,57))},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1699),D(1698,1,Oq,GVt),l.Vd=function(){cC(this.b,this.a,-1)},l.a=0,N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1698),D(1700,1,md,pX),l.Lb=function(e){return u(e,57),!0},l.Fb=function(e){return this===e},l.Mb=function(e){return u(e,57),!0},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1700),D(1701,1,Kn,bX),l.td=function(e){u(e,365).Vd()},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1701),D(1702,1,gi,mF),l.Mb=function(e){return _t(u(e,57).g,145)},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1702),D(1704,1,Kn,$Vt),l.td=function(e){Van(this.a,this.b,u(e,57))},N(Ps,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1704),D(1521,1,vs,eWt),l.pf=function(e,n){Ryn(this,u(e,37),n)};var Ube;N(Ps,"HorizontalGraphCompactor",1521),D(1522,1,{},x1),l.Oe=function(e,n){var r,s,o;return Imt(e,n)||(r=J3(e),s=J3(n),r&&r.k==(Gn(),Is)||s&&s.k==(Gn(),Is))?0:(o=u(K(this.a.a,(ae(),X4)),304),ZXe(o,r?r.k:(Gn(),ca),s?s.k:(Gn(),ca)))},l.Pe=function(e,n){var r,s,o;return Imt(e,n)?1:(r=J3(e),s=J3(n),o=u(K(this.a.a,(ae(),X4)),304),S2t(o,r?r.k:(Gn(),ca),s?s.k:(Gn(),ca)))},N(Ps,"HorizontalGraphCompactor/1",1522),D(1523,1,{},j9),l.Ne=function(e,n){return qT(),e.a.i==0},N(Ps,"HorizontalGraphCompactor/lambda$0$Type",1523),D(1524,1,{},zd),l.Ne=function(e,n){return knn(this.a,e,n)},N(Ps,"HorizontalGraphCompactor/lambda$1$Type",1524),D(1664,1,{},Pte);var Wbe,Kbe;N(Ps,"LGraphToCGraphTransformer",1664),D(1672,1,gi,vX),l.Mb=function(e){return e!=null},N(Ps,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1672),D(1665,1,{},wX),l.Kb=function(e){return df(),Wo(K(u(u(e,57).g,10),(ae(),Ii)))},N(Ps,"LGraphToCGraphTransformer/lambda$0$Type",1665),D(1666,1,{},yF),l.Kb=function(e){return df(),Rre(u(u(e,57).g,145))},N(Ps,"LGraphToCGraphTransformer/lambda$1$Type",1666),D(1675,1,gi,mX),l.Mb=function(e){return df(),_t(u(e,57).g,10)},N(Ps,"LGraphToCGraphTransformer/lambda$10$Type",1675),D(1676,1,Kn,yX),l.td=function(e){xnn(u(e,57))},N(Ps,"LGraphToCGraphTransformer/lambda$11$Type",1676),D(1677,1,gi,xX),l.Mb=function(e){return df(),_t(u(e,57).g,145)},N(Ps,"LGraphToCGraphTransformer/lambda$12$Type",1677),D(1681,1,Kn,kX),l.td=function(e){Cun(u(e,57))},N(Ps,"LGraphToCGraphTransformer/lambda$13$Type",1681),D(1678,1,Kn,_T),l.td=function(e){XYe(this.a,u(e,8))},l.a=0,N(Ps,"LGraphToCGraphTransformer/lambda$14$Type",1678),D(1679,1,Kn,Ub),l.td=function(e){ZYe(this.a,u(e,110))},l.a=0,N(Ps,"LGraphToCGraphTransformer/lambda$15$Type",1679),D(1680,1,Kn,nR),l.td=function(e){QYe(this.a,u(e,8))},l.a=0,N(Ps,"LGraphToCGraphTransformer/lambda$16$Type",1680),D(1682,1,{},EX),l.Kb=function(e){return df(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(Ps,"LGraphToCGraphTransformer/lambda$17$Type",1682),D(1683,1,gi,TX),l.Mb=function(e){return df(),Wa(u(e,17))},N(Ps,"LGraphToCGraphTransformer/lambda$18$Type",1683),D(1684,1,Kn,Ntt),l.td=function(e){Ian(this.a,u(e,17))},N(Ps,"LGraphToCGraphTransformer/lambda$19$Type",1684),D(1668,1,Kn,Ptt),l.td=function(e){fin(this.a,u(e,145))},N(Ps,"LGraphToCGraphTransformer/lambda$2$Type",1668),D(1685,1,{},xF),l.Kb=function(e){return df(),new kn(null,new Tn(u(e,29).a,16))},N(Ps,"LGraphToCGraphTransformer/lambda$20$Type",1685),D(1686,1,{},_X),l.Kb=function(e){return df(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(Ps,"LGraphToCGraphTransformer/lambda$21$Type",1686),D(1687,1,{},kF),l.Kb=function(e){return df(),u(K(u(e,17),(ae(),F2)),15)},N(Ps,"LGraphToCGraphTransformer/lambda$22$Type",1687),D(1688,1,gi,CX),l.Mb=function(e){return tQe(u(e,15))},N(Ps,"LGraphToCGraphTransformer/lambda$23$Type",1688),D(1689,1,Kn,Ftt),l.td=function(e){Lgn(this.a,u(e,15))},N(Ps,"LGraphToCGraphTransformer/lambda$24$Type",1689),D(1667,1,Kn,zVt),l.td=function(e){Jin(this.a,this.b,u(e,145))},N(Ps,"LGraphToCGraphTransformer/lambda$3$Type",1667),D(1669,1,{},SX),l.Kb=function(e){return df(),new kn(null,new Tn(u(e,29).a,16))},N(Ps,"LGraphToCGraphTransformer/lambda$4$Type",1669),D(1670,1,{},AX),l.Kb=function(e){return df(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(Ps,"LGraphToCGraphTransformer/lambda$5$Type",1670),D(1671,1,{},$9),l.Kb=function(e){return df(),u(K(u(e,17),(ae(),F2)),15)},N(Ps,"LGraphToCGraphTransformer/lambda$6$Type",1671),D(1673,1,Kn,Btt),l.td=function(e){opn(this.a,u(e,15))},N(Ps,"LGraphToCGraphTransformer/lambda$8$Type",1673),D(1674,1,Kn,qVt),l.td=function(e){yXe(this.a,this.b,u(e,145))},N(Ps,"LGraphToCGraphTransformer/lambda$9$Type",1674),D(1663,1,{},LX),l.Le=function(e){var n,r,s,o,h;for(this.a=e,this.d=new Utt,this.c=Nt(X7t,Me,121,this.a.a.a.c.length,0,1),this.b=0,r=new S(this.a.a.a);r.a=Z&&(ue(h,de(M)),St=b.Math.max(St,jt[M-1]-B),w+=W,bt+=jt[M-1]-bt,B=jt[M-1],W=k[M]),W=b.Math.max(W,k[M]),++M;w+=W}G=b.Math.min(1/St,1/n.b/w),G>s&&(s=G,r=h)}return r},l.Wf=function(){return!1},N(Ed,"MSDCutIndexHeuristic",802),D(1617,1,vs,eQ),l.pf=function(e,n){jmn(u(e,37),n)},N(Ed,"SingleEdgeGraphWrapper",1617),D(227,22,{3:1,35:1,22:1,227:1},YT);var H4,iE,sE,Oy,dS,V4,aE=zr(Sc,"CenterEdgeLabelPlacementStrategy",227,Ur,Xsn,AZe),a2e;D(422,22,{3:1,35:1,22:1,422:1},Sbt);var w9t,mlt,m9t=zr(Sc,"ConstraintCalculationStrategy",422,Ur,$nn,LZe),o2e;D(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},Tet),l.Kf=function(){return voe(this)},l.Xf=function(){return voe(this)};var wO,Cx,y9t,x9t=zr(Sc,"CrossingMinimizationStrategy",314,Ur,Irn,MZe),c2e;D(337,22,{3:1,35:1,22:1,337:1},_et);var k9t,ylt,OV,E9t=zr(Sc,"CuttingStrategy",337,Ur,Orn,OZe),u2e;D(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},EM),l.Kf=function(){return rce(this)},l.Xf=function(){return rce(this)};var T9t,xlt,gS,klt,pS,_9t=zr(Sc,"CycleBreakingStrategy",335,Ur,ksn,NZe),l2e;D(419,22,{3:1,35:1,22:1,419:1},Abt);var NV,C9t,S9t=zr(Sc,"DirectionCongruency",419,Ur,jnn,PZe),h2e;D(450,22,{3:1,35:1,22:1,450:1},Cet);var oE,Elt,G4,f2e=zr(Sc,"EdgeConstraint",450,Ur,Nrn,FZe),d2e;D(276,22,{3:1,35:1,22:1,276:1},XT);var Tlt,_lt,Clt,Slt,PV,Alt,A9t=zr(Sc,"EdgeLabelSideSelection",276,Ur,tan,BZe),g2e;D(479,22,{3:1,35:1,22:1,479:1},Lbt);var FV,L9t,M9t=zr(Sc,"EdgeStraighteningStrategy",479,Ur,Rnn,RZe),p2e;D(274,22,{3:1,35:1,22:1,274:1},QT);var Llt,D9t,I9t,BV,O9t,N9t,P9t=zr(Sc,"FixedAlignment",274,Ur,Zsn,jZe),b2e;D(275,22,{3:1,35:1,22:1,275:1},ZT);var F9t,B9t,R9t,j9t,bS,$9t,z9t=zr(Sc,"GraphCompactionStrategy",275,Ur,Qsn,$Ze),v2e;D(256,22,{3:1,35:1,22:1,256:1},Im);var cE,RV,uE,yh,vS,jV,lE,U4,$V,wS,Mlt=zr(Sc,"GraphProperties",256,Ur,jon,zZe),w2e;D(292,22,{3:1,35:1,22:1,292:1},Aet);var mO,Dlt,Ilt,Olt=zr(Sc,"GreedySwitchType",292,Ur,Brn,qZe),m2e;D(303,22,{3:1,35:1,22:1,303:1},Let);var Sx,yO,W4,y2e=zr(Sc,"InLayerConstraint",303,Ur,Frn,HZe),x2e;D(420,22,{3:1,35:1,22:1,420:1},Mbt);var Nlt,q9t,H9t=zr(Sc,"InteractiveReferencePoint",420,Ur,znn,VZe),k2e,V9t,Ax,Lw,zV,G9t,U9t,qV,W9t,xO,HV,mS,Lx,Ny,Plt,VV,gc,K9t,Mw,Wc,Flt,Blt,kO,P2,Dw,Mx,Y9t,Dx,EO,Py,a1,qh,Rlt,K4,Lc,Ii,X9t,Q9t,Z9t,J9t,tTt,jlt,GV,sl,Iw,$lt,Ix,TO,H1,Y4,hE,X4,Q4,fE,F2,eTt,zlt,qlt,Ox;D(163,22,{3:1,35:1,22:1,163:1},_M);var yS,gb,xS,Fy,_O,nTt=zr(Sc,"LayerConstraint",163,Ur,_sn,GZe),E2e;D(848,1,Ph,KJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,pxt),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),fTt),(Hg(),ms)),S9t),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,bxt),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Fn(),!1)),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Kq),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),wTt),ms),H9t),on(qn)))),ba(e,Kq,qot,gve),ba(e,Kq,$C,dve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vxt),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,wxt),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),Pa),Ws),on(qn)))),an(e,new Xe(QKe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,mxt),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),Pa),Ws),on(q2)),ut(ot(Le,1),re,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,yxt),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),CTt),ms),N_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,xxt),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),de(7)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,kxt),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ext),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,qot),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),hTt),ms),_9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,VI),fct),"Node Layering Strategy"),"Strategy for node layering."),xTt),ms),k_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Txt),fct),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),mTt),ms),nTt),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,_xt),fct),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Cxt),fct),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Hot),d1e),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),de(4)),xc),Ha),on(qn)))),ba(e,Hot,VI,xve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Vot),d1e),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),de(2)),xc),Ha),on(qn)))),ba(e,Vot,VI,Eve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Got),g1e),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),yTt),ms),D_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Uot),g1e),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),de(0)),xc),Ha),on(qn)))),ba(e,Uot,Got,null),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Wot),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),de(Ti)),xc),Ha),on(qn)))),ba(e,Wot,VI,bve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,$C),GI),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),lTt),ms),x9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Sxt),GI),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Kot),GI),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),$o),wa),on(qn)))),ba(e,Kot,oH,q2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Yot),GI),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),Pa),Ws),on(qn)))),ba(e,Yot,$C,U2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Axt),GI),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Lxt),GI),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),de(-1)),xc),Ha),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Mxt),p1e),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),de(40)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Xot),p1e),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),uTt),ms),Olt),on(qn)))),ba(e,Xot,$C,$2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Yq),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),cTt),ms),Olt),on(qn)))),ba(e,Yq,$C,B2e),ba(e,Yq,oH,R2e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,D4),b1e),"Node Placement Strategy"),"Strategy for node placement."),_Tt),ms),C_t),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Xq),b1e),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),Pa),Ws),on(qn)))),ba(e,Xq,D4,Nve),ba(e,Xq,D4,Pve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Qot),v1e),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),kTt),ms),M9t),on(qn)))),ba(e,Qot,D4,Mve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Zot),v1e),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),ETt),ms),P9t),on(qn)))),ba(e,Zot,D4,Ive),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Jot),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),$o),wa),on(qn)))),ba(e,Jot,D4,Bve),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,tct),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),ms),hht),on(ua)))),ba(e,tct,D4,zve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ect),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),TTt),ms),hht),on(qn)))),ba(e,ect,D4,$ve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Dxt),w1e),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),pTt),ms),B_t),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ixt),w1e),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),bTt),ms),R_t),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Qq),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),vTt),ms),$_t),on(qn)))),ba(e,Qq,UI,rve),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Zq),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),$o),wa),on(qn)))),ba(e,Zq,UI,sve),ba(e,Zq,Qq,ave),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,nct),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),$o),wa),on(qn)))),ba(e,nct,UI,J2e),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Oxt),j1),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Nxt),j1),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Pxt),j1),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Fxt),j1),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Bxt),Uxt),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Rxt),Uxt),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,jxt),Uxt),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),de(0)),xc),Ha),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,rct),Wxt),Nfe),"Tries to further compact components (disconnected sub-graphs)."),!1),Pa),Ws),on(qn)))),ba(e,rct,PC,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,$xt),m1e),"Post Compaction Strategy"),y1e),iTt),ms),z9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,zxt),m1e),"Post Compaction Constraint Calculation"),y1e),rTt),ms),m9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Jq),Kxt),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ict),Kxt),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),de(16)),xc),Ha),on(qn)))),ba(e,ict,Jq,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,sct),Kxt),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),de(5)),xc),Ha),on(qn)))),ba(e,sct,Jq,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Y0),Yxt),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),LTt),ms),V_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,tH),Yxt),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),$o),wa),on(qn)))),ba(e,tH,Y0,twe),ba(e,tH,Y0,ewe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,eH),Yxt),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),$o),wa),on(qn)))),ba(e,eH,Y0,rwe),ba(e,eH,Y0,iwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,zC),x1e),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),ATt),ms),E9t),on(qn)))),ba(e,zC,Y0,lwe),ba(e,zC,Y0,hwe),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,act),x1e),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),G1),mh),on(qn)))),ba(e,act,zC,awe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,oct),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),STt),xc),Ha),on(qn)))),ba(e,oct,zC,cwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,nH),k1e),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),MTt),ms),H_t),on(qn)))),ba(e,nH,Y0,Ewe),ba(e,nH,Y0,Twe),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,rH),k1e),"Valid Indices for Wrapping"),null),G1),mh),on(qn)))),ba(e,rH,Y0,ywe),ba(e,rH,Y0,xwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,iH),Xxt),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),Pa),Ws),on(qn)))),ba(e,iH,Y0,pwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,sH),Xxt),"Distance Penalty When Improving Cuts"),null),2),$o),wa),on(qn)))),ba(e,sH,Y0,dwe),ba(e,sH,iH,!0),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cct),Xxt),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),Pa),Ws),on(qn)))),ba(e,cct,Y0,vwe),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,qxt),dct),"Edge Label Side Selection"),"Method to decide on edge label sides."),gTt),ms),A9t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Hxt),dct),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),dTt),ms),aE),Ki(qn,ut(ot(ep,1),oe,175,0,[tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,aH),WI),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),oTt),ms),O_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Vxt),WI),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,uct),WI),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),sTt),ms),_Et),on(qn)))),ba(e,uct,PC,null),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Gxt),WI),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),aTt),ms),T_t),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,lct),WI),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),$o),wa),on(qn)))),ba(e,lct,aH,null),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hct),WI),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),$o),wa),on(qn)))),ba(e,hct,aH,null),jhe((new IB,e))};var T2e,_2e,C2e,rTt,S2e,iTt,A2e,sTt,L2e,M2e,D2e,aTt,I2e,O2e,oTt,N2e,P2e,F2e,cTt,B2e,R2e,j2e,uTt,$2e,z2e,q2e,H2e,V2e,G2e,U2e,W2e,lTt,K2e,hTt,Y2e,fTt,X2e,dTt,Q2e,gTt,Z2e,J2e,tve,pTt,eve,bTt,nve,vTt,rve,ive,sve,ave,ove,cve,uve,lve,hve,fve,wTt,dve,gve,pve,bve,vve,wve,mTt,mve,yve,xve,kve,Eve,Tve,_ve,yTt,Cve,xTt,Sve,Ave,Lve,kTt,Mve,Dve,ETt,Ive,Ove,Nve,Pve,Fve,Bve,Rve,jve,TTt,$ve,zve,qve,_Tt,Hve,CTt,Vve,Gve,Uve,Wve,Kve,Yve,Xve,Qve,Zve,Jve,twe,ewe,nwe,rwe,iwe,swe,awe,owe,STt,cwe,uwe,ATt,lwe,hwe,fwe,dwe,gwe,pwe,bwe,vwe,wwe,LTt,mwe,ywe,xwe,kwe,MTt,Ewe,Twe;N(Sc,"LayeredMetaDataProvider",848),D(986,1,Ph,IB),l.Qe=function(e){jhe(e)};var Md,Hlt,UV,kS,WV,DTt,KV,Nx,YV,ITt,OTt,Vlt,pb,Glt,By,NTt,CO,Ult,PTt,_we,XV,Wlt,ES,Ry,Cwe,Xl,FTt,BTt,QV,Klt,Dd,ZV,X0,RTt,jTt,$Tt,Ylt,Xlt,zTt,Xg,Qlt,qTt,jy,HTt,VTt,GTt,JV,$y,B2,UTt,WTt,Oo,KTt,Swe,du,tG,YTt,XTt,QTt,Zlt,ZTt,eG,JTt,t_t,nG,Ow,e_t,Jlt,TS,n_t,Nw,_S,rG,R2,tht,dE,iG,j2,r_t,i_t,s_t,gE,a_t,Awe,Lwe,Mwe,Dwe,Pw,zy,ws,Qg,Iwe,qy,o_t,pE,c_t,Hy,Owe,bE,u_t,Px,Nwe,Pwe,SO,eht,l_t,AO,Tf,Z4,Fx,Fw,$2,sG,Vy,nht,vE,wE,Bw,J4,rht,LO,CS,SS,iht,h_t,f_t,d_t,g_t,sht,p_t,b_t,v_t,w_t,aht,aG;N(Sc,"LayeredOptions",986),D(987,1,{},rQ),l.$e=function(){var e;return e=new Yzt,e},l._e=function(e){},N(Sc,"LayeredOptions/LayeredFactory",987),D(1372,1,{}),l.a=0;var Fwe;N(Ac,"ElkSpacings/AbstractSpacingsBuilder",1372),D(779,1372,{},o3t);var oG,Bwe;N(Sc,"LayeredSpacings/LayeredSpacingsBuilder",779),D(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},JT),l.Kf=function(){return wce(this)},l.Xf=function(){return wce(this)};var oht,m_t,y_t,cG,cht,x_t,k_t=zr(Sc,"LayeringStrategy",313,Ur,Jsn,UZe),Rwe;D(378,22,{3:1,35:1,22:1,378:1},Met);var uht,E_t,uG,T_t=zr(Sc,"LongEdgeOrderingStrategy",378,Ur,Drn,WZe),jwe;D(197,22,{3:1,35:1,22:1,197:1},GR);var t5,e5,lG,lht,hht=zr(Sc,"NodeFlexibility",197,Ur,Rin,KZe),$we;D(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},TM),l.Kf=function(){return nce(this)},l.Xf=function(){return nce(this)};var AS,fht,dht,LS,__t,C_t=zr(Sc,"NodePlacementStrategy",315,Ur,xsn,tJe),zwe;D(260,22,{3:1,35:1,22:1,260:1},T6);var S_t,MO,A_t,L_t,DO,M_t,hG,fG,D_t=zr(Sc,"NodePromotionStrategy",260,Ur,Zan,XZe),qwe;D(339,22,{3:1,35:1,22:1,339:1},Det);var I_t,bb,ght,O_t=zr(Sc,"OrderingStrategy",339,Ur,jrn,QZe),Hwe;D(421,22,{3:1,35:1,22:1,421:1},Dbt);var pht,bht,N_t=zr(Sc,"PortSortingStrategy",421,Ur,qnn,ZZe),Vwe;D(452,22,{3:1,35:1,22:1,452:1},Iet);var al,su,MS,Gwe=zr(Sc,"PortType",452,Ur,Rrn,YZe),Uwe;D(375,22,{3:1,35:1,22:1,375:1},Oet);var P_t,vht,F_t,B_t=zr(Sc,"SelfLoopDistributionStrategy",375,Ur,$rn,JZe),Wwe;D(376,22,{3:1,35:1,22:1,376:1},Ibt);var IO,wht,R_t=zr(Sc,"SelfLoopOrderingStrategy",376,Ur,Bnn,eJe),Kwe;D(304,1,{304:1},zle),N(Sc,"Spacings",304),D(336,22,{3:1,35:1,22:1,336:1},Net);var mht,j_t,DS,$_t=zr(Sc,"SplineRoutingMode",336,Ur,qrn,nJe),Ywe;D(338,22,{3:1,35:1,22:1,338:1},Pet);var yht,z_t,q_t,H_t=zr(Sc,"ValidifyStrategy",338,Ur,Hrn,rJe),Xwe;D(377,22,{3:1,35:1,22:1,377:1},Fet);var Gy,xht,mE,V_t=zr(Sc,"WrappingStrategy",377,Ur,zrn,iJe),Qwe;D(1383,1,Vc,QJ),l.Yf=function(e){return u(e,37),Zwe},l.pf=function(e,n){Oyn(this,u(e,37),n)};var Zwe;N(lH,"DepthFirstCycleBreaker",1383),D(782,1,Vc,Gvt),l.Yf=function(e){return u(e,37),Jwe},l.pf=function(e,n){D5n(this,u(e,37),n)},l.Zf=function(e){return u(Pe(e,zz(this.d,e.c.length)),10)};var Jwe;N(lH,"GreedyCycleBreaker",782),D(1386,782,Vc,AGt),l.Zf=function(e){var n,r,s,o;for(o=null,n=Ti,s=new S(e);s.a1&&(Be(Fe(K($a((Sn(0,e.c.length),u(e.c[0],10))),(xe(),By))))?fce(e,this.d,u(this,660)):(pn(),aa(e,this.d)),Ine(this.e,e))},l.Sf=function(e,n,r,s){var o,h,d,w,k,_,M;for(n!=rYt(r,e.length)&&(h=e[n-(r?1:-1)],bmt(this.f,h,r?(ho(),su):(ho(),al))),o=e[n][0],M=!s||o.k==(Gn(),Is),_=L1(e[n]),this.ag(_,M,!1,r),d=0,k=new S(_);k.a"),e0?brt(this.a,e[n-1],e[n]):!r&&n1&&(Be(Fe(K($a((Sn(0,e.c.length),u(e.c[0],10))),(xe(),By))))?fce(e,this.d,this):(pn(),aa(e,this.d)),Be(Fe(K($a((Sn(0,e.c.length),u(e.c[0],10))),By)))||Ine(this.e,e))},N(Wu,"ModelOrderBarycenterHeuristic",660),D(1803,1,qi,f$t),l.ue=function(e,n){return W0n(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Wu,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803),D(1403,1,Vc,ett),l.Yf=function(e){var n;return u(e,37),n=ij(fme),Ei(n,(Ya(),fu),(co(),xV)),n},l.pf=function(e,n){Inn((u(e,37),n))};var fme;N(Wu,"NoCrossingMinimizer",1403),D(796,402,Ikt,ebt),l.$f=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G;switch(B=this.g,r.g){case 1:{for(o=0,h=0,M=new S(e.j);M.a1&&(o.j==(be(),Hn)?this.b[e]=!0:o.j==Bn&&e>0&&(this.b[e-1]=!0))},l.f=0,N(s0,"AllCrossingsCounter",1798),D(587,1,{},rz),l.b=0,l.d=0,N(s0,"BinaryIndexedTree",587),D(524,1,{},HM);var W_t,gG;N(s0,"CrossingsCounter",524),D(1906,1,qi,d$t),l.ue=function(e,n){return Ptn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$0$Type",1906),D(1907,1,qi,g$t),l.ue=function(e,n){return Ftn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$1$Type",1907),D(1908,1,qi,p$t),l.ue=function(e,n){return Btn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$2$Type",1908),D(1909,1,qi,b$t),l.ue=function(e,n){return Rtn(this.a,u(e,11),u(n,11))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(s0,"CrossingsCounter/lambda$3$Type",1909),D(1910,1,Kn,v$t),l.td=function(e){man(this.a,u(e,11))},N(s0,"CrossingsCounter/lambda$4$Type",1910),D(1911,1,gi,w$t),l.Mb=function(e){return OYe(this.a,u(e,11))},N(s0,"CrossingsCounter/lambda$5$Type",1911),D(1912,1,Kn,m$t),l.td=function(e){TGt(this,e)},N(s0,"CrossingsCounter/lambda$6$Type",1912),D(1913,1,Kn,XVt),l.td=function(e){var n;f8(),Vp(this.b,(n=this.a,u(e,11),n))},N(s0,"CrossingsCounter/lambda$7$Type",1913),D(826,1,md,BF),l.Lb=function(e){return f8(),ea(u(e,11),(ae(),sl))},l.Fb=function(e){return this===e},l.Mb=function(e){return f8(),ea(u(e,11),(ae(),sl))},N(s0,"CrossingsCounter/lambda$8$Type",826),D(1905,1,{},y$t),N(s0,"HyperedgeCrossingsCounter",1905),D(467,1,{35:1,467:1},$Wt),l.wd=function(e){return bhn(this,u(e,467))},l.b=0,l.c=0,l.e=0,l.f=0;var f6n=N(s0,"HyperedgeCrossingsCounter/Hyperedge",467);D(362,1,{35:1,362:1},e$),l.wd=function(e){return gbn(this,u(e,362))},l.b=0,l.c=0;var dme=N(s0,"HyperedgeCrossingsCounter/HyperedgeCorner",362);D(523,22,{3:1,35:1,22:1,523:1},Obt);var OS,NS,gme=zr(s0,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,Ur,Hnn,aJe),pme;D(1405,1,Vc,XJ),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?bme:null},l.pf=function(e,n){P1n(this,u(e,37),n)};var bme;N(bo,"InteractiveNodePlacer",1405),D(1406,1,Vc,YJ),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?vme:null},l.pf=function(e,n){mfn(this,u(e,37),n)};var vme,pG,bG;N(bo,"LinearSegmentsNodePlacer",1406),D(257,1,{35:1,257:1},Dpt),l.wd=function(e){return GKe(this,u(e,257))},l.Fb=function(e){var n;return _t(e,257)?(n=u(e,257),this.b==n.b):!1},l.Hb=function(){return this.b},l.Ib=function(){return"ls"+Jp(this.e)},l.a=0,l.b=0,l.c=-1,l.d=-1,l.g=0;var wme=N(bo,"LinearSegmentsNodePlacer/LinearSegment",257);D(1408,1,Vc,dYt),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?mme:null},l.pf=function(e,n){E5n(this,u(e,37),n)},l.b=0,l.g=0;var mme;N(bo,"NetworkSimplexPlacer",1408),D(1427,1,qi,cQ),l.ue=function(e,n){return mu(u(e,19).a,u(n,19).a)},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(bo,"NetworkSimplexPlacer/0methodref$compare$Type",1427),D(1429,1,qi,uQ),l.ue=function(e,n){return mu(u(e,19).a,u(n,19).a)},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(bo,"NetworkSimplexPlacer/1methodref$compare$Type",1429),D(649,1,{649:1},QVt);var d6n=N(bo,"NetworkSimplexPlacer/EdgeRep",649);D(401,1,{401:1},Ewt),l.b=!1;var g6n=N(bo,"NetworkSimplexPlacer/NodeRep",401);D(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},aqt),N(bo,"NetworkSimplexPlacer/Path",508),D(1409,1,{},lQ),l.Kb=function(e){return u(e,17).d.i.k},N(bo,"NetworkSimplexPlacer/Path/lambda$0$Type",1409),D(1410,1,gi,hQ),l.Mb=function(e){return u(e,267)==(Gn(),ca)},N(bo,"NetworkSimplexPlacer/Path/lambda$1$Type",1410),D(1411,1,{},fQ),l.Kb=function(e){return u(e,17).d.i},N(bo,"NetworkSimplexPlacer/Path/lambda$2$Type",1411),D(1412,1,gi,x$t),l.Mb=function(e){return TWt(uie(u(e,10)))},N(bo,"NetworkSimplexPlacer/Path/lambda$3$Type",1412),D(1413,1,gi,dQ),l.Mb=function(e){return Ttn(u(e,11))},N(bo,"NetworkSimplexPlacer/lambda$0$Type",1413),D(1414,1,Kn,ZVt),l.td=function(e){xXe(this.a,this.b,u(e,11))},N(bo,"NetworkSimplexPlacer/lambda$1$Type",1414),D(1423,1,Kn,k$t),l.td=function(e){zgn(this.a,u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$10$Type",1423),D(1424,1,{},gQ),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$11$Type",1424),D(1425,1,Kn,E$t),l.td=function(e){Bvn(this.a,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$12$Type",1425),D(1426,1,{},pQ),l.Kb=function(e){return Rl(),de(u(e,121).e)},N(bo,"NetworkSimplexPlacer/lambda$13$Type",1426),D(1428,1,{},bQ),l.Kb=function(e){return Rl(),de(u(e,121).e)},N(bo,"NetworkSimplexPlacer/lambda$15$Type",1428),D(1430,1,gi,vQ),l.Mb=function(e){return Rl(),u(e,401).c.k==(Gn(),qs)},N(bo,"NetworkSimplexPlacer/lambda$17$Type",1430),D(1431,1,gi,wQ),l.Mb=function(e){return Rl(),u(e,401).c.j.c.length>1},N(bo,"NetworkSimplexPlacer/lambda$18$Type",1431),D(1432,1,Kn,yXt),l.td=function(e){Sln(this.c,this.b,this.d,this.a,u(e,401))},l.c=0,l.d=0,N(bo,"NetworkSimplexPlacer/lambda$19$Type",1432),D(1415,1,{},mQ),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$2$Type",1415),D(1433,1,Kn,T$t),l.td=function(e){mXe(this.a,u(e,11))},l.a=0,N(bo,"NetworkSimplexPlacer/lambda$20$Type",1433),D(1434,1,{},K5),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$21$Type",1434),D(1435,1,Kn,_$t),l.td=function(e){NXe(this.a,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$22$Type",1435),D(1436,1,gi,RF),l.Mb=function(e){return TWt(e)},N(bo,"NetworkSimplexPlacer/lambda$23$Type",1436),D(1437,1,{},yQ),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$24$Type",1437),D(1438,1,gi,C$t),l.Mb=function(e){return $Ye(this.a,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$25$Type",1438),D(1439,1,Kn,JVt),l.td=function(e){ugn(this.a,this.b,u(e,10))},N(bo,"NetworkSimplexPlacer/lambda$26$Type",1439),D(1440,1,gi,xQ),l.Mb=function(e){return Rl(),!Wa(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$27$Type",1440),D(1441,1,gi,kQ),l.Mb=function(e){return Rl(),!Wa(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$28$Type",1441),D(1442,1,{},S$t),l.Ce=function(e,n){return DXe(this.a,u(e,29),u(n,29))},N(bo,"NetworkSimplexPlacer/lambda$29$Type",1442),D(1416,1,{},jF),l.Kb=function(e){return Rl(),new kn(null,new Fv(new ar(lr($s(u(e,10)).a.Kc(),new H))))},N(bo,"NetworkSimplexPlacer/lambda$3$Type",1416),D(1417,1,gi,EQ),l.Mb=function(e){return Rl(),win(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$4$Type",1417),D(1418,1,Kn,A$t),l.td=function(e){Fmn(this.a,u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$5$Type",1418),D(1419,1,{},V9),l.Kb=function(e){return Rl(),new kn(null,new Tn(u(e,29).a,16))},N(bo,"NetworkSimplexPlacer/lambda$6$Type",1419),D(1420,1,gi,TQ),l.Mb=function(e){return Rl(),u(e,10).k==(Gn(),qs)},N(bo,"NetworkSimplexPlacer/lambda$7$Type",1420),D(1421,1,{},_Q),l.Kb=function(e){return Rl(),new kn(null,new Fv(new ar(lr(z0(u(e,10)).a.Kc(),new H))))},N(bo,"NetworkSimplexPlacer/lambda$8$Type",1421),D(1422,1,gi,CQ),l.Mb=function(e){return Rl(),wtn(u(e,17))},N(bo,"NetworkSimplexPlacer/lambda$9$Type",1422),D(1404,1,Vc,pT),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?yme:null},l.pf=function(e,n){vyn(u(e,37),n)};var yme;N(bo,"SimpleNodePlacer",1404),D(180,1,{180:1},k4),l.Ib=function(){var e;return e="",this.c==(gd(),Rw)?e+=dx:this.c==Zg&&(e+=fx),this.o==(C1(),z2)?e+=kot:this.o==V1?e+="UP":e+="BALANCED",e},N(ob,"BKAlignedLayout",180),D(516,22,{3:1,35:1,22:1,516:1},Pbt);var Zg,Rw,xme=zr(ob,"BKAlignedLayout/HDirection",516,Ur,Gnn,oJe),kme;D(515,22,{3:1,35:1,22:1,515:1},Nbt);var z2,V1,Eme=zr(ob,"BKAlignedLayout/VDirection",515,Ur,Unn,cJe),Tme;D(1634,1,{},tGt),N(ob,"BKAligner",1634),D(1637,1,{},Ose),N(ob,"BKCompactor",1637),D(654,1,{654:1},SQ),l.a=0,N(ob,"BKCompactor/ClassEdge",654),D(458,1,{458:1},iqt),l.a=null,l.b=0,N(ob,"BKCompactor/ClassNode",458),D(1407,1,Vc,CGt),l.Yf=function(e){return u(K(u(e,37),(ae(),Wc)),21).Hc((go(),yh))?_me:null},l.pf=function(e,n){R5n(this,u(e,37),n)},l.d=!1;var _me;N(ob,"BKNodePlacer",1407),D(1635,1,{},AQ),l.d=0,N(ob,"NeighborhoodInformation",1635),D(1636,1,qi,L$t),l.ue=function(e,n){return Gan(this,u(e,46),u(n,46))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(ob,"NeighborhoodInformation/NeighborComparator",1636),D(808,1,{}),N(ob,"ThresholdStrategy",808),D(1763,808,{},uqt),l.bg=function(e,n,r){return this.a.o==(C1(),V1)?bs:Ns},l.cg=function(){},N(ob,"ThresholdStrategy/NullThresholdStrategy",1763),D(579,1,{579:1},eGt),l.c=!1,l.d=!1,N(ob,"ThresholdStrategy/Postprocessable",579),D(1764,808,{},lqt),l.bg=function(e,n,r){var s,o,h;return o=n==r,s=this.a.a[r.p]==n,o||s?(h=e,this.a.c==(gd(),Rw)?(o&&(h=kat(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=kat(this,r,!1))):(o&&(h=kat(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=kat(this,r,!1))),h):e},l.cg=function(){for(var e,n,r,s,o;this.d.b!=0;)o=u(crn(this.d),579),s=tle(this,o),s.a&&(e=s.a,r=Be(this.a.f[this.a.g[o.b.p].p]),!(!r&&!Wa(e)&&e.c.i.c==e.d.i.c)&&(n=oce(this,o),n||KYe(this.e,o)));for(;this.e.a.c.length!=0;)oce(this,u(vre(this.e),579))},N(ob,"ThresholdStrategy/SimpleThresholdStrategy",1764),D(635,1,{635:1,246:1,234:1},LQ),l.Kf=function(){return Sne(this)},l.Xf=function(){return Sne(this)};var kht;N(wct,"EdgeRouterFactory",635),D(1458,1,Vc,sd),l.Yf=function(e){return bvn(u(e,37))},l.pf=function(e,n){Tyn(u(e,37),n)};var Cme,Sme,Ame,Lme,Mme,K_t,Dme,Ime;N(wct,"OrthogonalEdgeRouter",1458),D(1451,1,Vc,SGt),l.Yf=function(e){return $1n(u(e,37))},l.pf=function(e,n){V4n(this,u(e,37),n)};var Ome,Nme,Pme,Fme,NO,Bme;N(wct,"PolylineEdgeRouter",1451),D(1452,1,md,MQ),l.Lb=function(e){return lyt(u(e,10))},l.Fb=function(e){return this===e},l.Mb=function(e){return lyt(u(e,10))},N(wct,"PolylineEdgeRouter/1",1452),D(1809,1,gi,DQ),l.Mb=function(e){return u(e,129).c==(Yf(),vb)},N(r1,"HyperEdgeCycleDetector/lambda$0$Type",1809),D(1810,1,{},IQ),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$1$Type",1810),D(1811,1,gi,OQ),l.Mb=function(e){return u(e,129).c==(Yf(),vb)},N(r1,"HyperEdgeCycleDetector/lambda$2$Type",1811),D(1812,1,{},Y5),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$3$Type",1812),D(1813,1,{},NQ),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$4$Type",1813),D(1814,1,{},PQ),l.Ge=function(e){return u(e,129).d},N(r1,"HyperEdgeCycleDetector/lambda$5$Type",1814),D(112,1,{35:1,112:1},LD),l.wd=function(e){return UKe(this,u(e,112))},l.Fb=function(e){var n;return _t(e,112)?(n=u(e,112),this.g==n.g):!1},l.Hb=function(){return this.g},l.Ib=function(){var e,n,r,s;for(e=new Fl("{"),s=new S(this.n);s.a"+this.b+" ("+rQe(this.c)+")"},l.d=0,N(r1,"HyperEdgeSegmentDependency",129),D(520,22,{3:1,35:1,22:1,520:1},Fbt);var vb,Uy,Rme=zr(r1,"HyperEdgeSegmentDependency/DependencyType",520,Ur,Vnn,uJe),jme;D(1815,1,{},M$t),N(r1,"HyperEdgeSegmentSplitter",1815),D(1816,1,{},oHt),l.a=0,l.b=0,N(r1,"HyperEdgeSegmentSplitter/AreaRating",1816),D(329,1,{329:1},knt),l.a=0,l.b=0,l.c=0,N(r1,"HyperEdgeSegmentSplitter/FreeArea",329),D(1817,1,qi,qQ),l.ue=function(e,n){return JQe(u(e,112),u(n,112))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(r1,"HyperEdgeSegmentSplitter/lambda$0$Type",1817),D(1818,1,Kn,xXt),l.td=function(e){isn(this.a,this.d,this.c,this.b,u(e,112))},l.b=0,N(r1,"HyperEdgeSegmentSplitter/lambda$1$Type",1818),D(1819,1,{},HQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).e,16))},N(r1,"HyperEdgeSegmentSplitter/lambda$2$Type",1819),D(1820,1,{},VQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).j,16))},N(r1,"HyperEdgeSegmentSplitter/lambda$3$Type",1820),D(1821,1,{},GQ),l.Fe=function(e){return Zt(ve(e))},N(r1,"HyperEdgeSegmentSplitter/lambda$4$Type",1821),D(655,1,{},Unt),l.a=0,l.b=0,l.c=0,N(r1,"OrthogonalRoutingGenerator",655),D(1638,1,{},UQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).e,16))},N(r1,"OrthogonalRoutingGenerator/lambda$0$Type",1638),D(1639,1,{},WQ),l.Kb=function(e){return new kn(null,new Tn(u(e,112).j,16))},N(r1,"OrthogonalRoutingGenerator/lambda$1$Type",1639),D(661,1,{}),N(mct,"BaseRoutingDirectionStrategy",661),D(1807,661,{},hqt),l.dg=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!(e.r&&!e.q))for(M=n+e.o*r,_=new S(e.n);_.a<_.c.c.length;)for(k=u(Q(_),11),B=nc(ut(ot(na,1),re,8,0,[k.i.n,k.n,k.a])).a,w=new S(k.g);w.axd&&(h=M,o=e,s=new Re(B,h),ai(d.a,s),fw(this,d,o,s,!1),q=e.r,q&&(G=Zt(ve(e1(q.e,0))),s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1),h=n+q.o*r,o=q,s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1)),s=new Re(Z,h),ai(d.a,s),fw(this,d,o,s,!1)))},l.eg=function(e){return e.i.n.a+e.n.a+e.a.a},l.fg=function(){return be(),yr},l.gg=function(){return be(),On},N(mct,"NorthToSouthRoutingStrategy",1807),D(1808,661,{},fqt),l.dg=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!(e.r&&!e.q))for(M=n-e.o*r,_=new S(e.n);_.a<_.c.c.length;)for(k=u(Q(_),11),B=nc(ut(ot(na,1),re,8,0,[k.i.n,k.n,k.a])).a,w=new S(k.g);w.axd&&(h=M,o=e,s=new Re(B,h),ai(d.a,s),fw(this,d,o,s,!1),q=e.r,q&&(G=Zt(ve(e1(q.e,0))),s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1),h=n-q.o*r,o=q,s=new Re(G,h),ai(d.a,s),fw(this,d,o,s,!1)),s=new Re(Z,h),ai(d.a,s),fw(this,d,o,s,!1)))},l.eg=function(e){return e.i.n.a+e.n.a+e.a.a},l.fg=function(){return be(),On},l.gg=function(){return be(),yr},N(mct,"SouthToNorthRoutingStrategy",1808),D(1806,661,{},dqt),l.dg=function(e,n,r){var s,o,h,d,w,k,_,M,B,q,G,W,Z;if(!(e.r&&!e.q))for(M=n+e.o*r,_=new S(e.n);_.a<_.c.c.length;)for(k=u(Q(_),11),B=nc(ut(ot(na,1),re,8,0,[k.i.n,k.n,k.a])).b,w=new S(k.g);w.axd&&(h=M,o=e,s=new Re(h,B),ai(d.a,s),fw(this,d,o,s,!0),q=e.r,q&&(G=Zt(ve(e1(q.e,0))),s=new Re(h,G),ai(d.a,s),fw(this,d,o,s,!0),h=n+q.o*r,o=q,s=new Re(h,G),ai(d.a,s),fw(this,d,o,s,!0)),s=new Re(h,Z),ai(d.a,s),fw(this,d,o,s,!0)))},l.eg=function(e){return e.i.n.b+e.n.b+e.a.b},l.fg=function(){return be(),Hn},l.gg=function(){return be(),Bn},N(mct,"WestToEastRoutingStrategy",1806),D(813,1,{},n6t),l.Ib=function(){return Jp(this.a)},l.b=0,l.c=!1,l.d=!1,l.f=0,N(Ty,"NubSpline",813),D(407,1,{407:1},Fce,eQt),N(Ty,"NubSpline/PolarCP",407),D(1453,1,Vc,_se),l.Yf=function(e){return Ldn(u(e,37))},l.pf=function(e,n){u5n(this,u(e,37),n)};var $me,zme,qme,Hme,Vme;N(Ty,"SplineEdgeRouter",1453),D(268,1,{268:1},S$),l.Ib=function(){return this.a+" ->("+this.c+") "+this.b},l.c=0,N(Ty,"SplineEdgeRouter/Dependency",268),D(455,22,{3:1,35:1,22:1,455:1},Bbt);var wb,n5,Gme=zr(Ty,"SplineEdgeRouter/SideToProcess",455,Ur,Wnn,lJe),Ume;D(1454,1,gi,zQ),l.Mb=function(e){return bC(),!u(e,128).o},N(Ty,"SplineEdgeRouter/lambda$0$Type",1454),D(1455,1,{},$Q),l.Ge=function(e){return bC(),u(e,128).v+1},N(Ty,"SplineEdgeRouter/lambda$1$Type",1455),D(1456,1,Kn,nGt),l.td=function(e){ytn(this.a,this.b,u(e,46))},N(Ty,"SplineEdgeRouter/lambda$2$Type",1456),D(1457,1,Kn,rGt),l.td=function(e){xtn(this.a,this.b,u(e,46))},N(Ty,"SplineEdgeRouter/lambda$3$Type",1457),D(128,1,{35:1,128:1},Jae,c6t),l.wd=function(e){return WKe(this,u(e,128))},l.b=0,l.e=!1,l.f=0,l.g=0,l.j=!1,l.k=!1,l.n=0,l.o=!1,l.p=!1,l.q=!1,l.s=0,l.u=0,l.v=0,l.F=0,N(Ty,"SplineSegment",128),D(459,1,{459:1},G9),l.a=0,l.b=!1,l.c=!1,l.d=!1,l.e=!1,l.f=0,N(Ty,"SplineSegment/EdgeInformation",459),D(1234,1,{},FQ),N(qC,rxt,1234),D(1235,1,qi,BQ),l.ue=function(e,n){return rpn(u(e,135),u(n,135))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(qC,Bfe,1235),D(1233,1,{},EHt),N(qC,"MrTree",1233),D(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},UR),l.Kf=function(){return Toe(this)},l.Xf=function(){return Toe(this)};var vG,PS,PO,FS,Y_t=zr(qC,"TreeLayoutPhases",393,Ur,jin,hJe),Wme;D(1130,209,_2,HWt),l.Ze=function(e,n){var r,s,o,h,d,w,k;for(Be(Fe(ze(e,(hw(),eCt))))||u$((r=new rr((Dm(),new Sm(e))),r)),d=(w=new A$,Bo(w,e),ee(w,(mc(),jS),e),k=new Ar,Kwn(e,w,k),hmn(e,w,k),w),h=imn(this.a,d),o=new S(h);o.a"+b$(this.c):"e_"+Ji(this)},N(HC,"TEdge",188),D(135,134,{3:1,135:1,94:1,134:1},A$),l.Ib=function(){var e,n,r,s,o;for(o=null,s=si(this.b,0);s.b!=s.d.c;)r=u(ii(s),86),o+=(r.c==null||r.c.length==0?"n_"+r.g:"n_"+r.c)+` +`;for(n=si(this.a,0);n.b!=n.d.c;)e=u(ii(n),188),o+=(e.b&&e.c?b$(e.b)+"->"+b$(e.c):"e_"+Ji(e))+` +`;return o};var p6n=N(HC,"TGraph",135);D(633,502,{3:1,502:1,633:1,94:1,134:1}),N(HC,"TShape",633),D(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},kit),l.Ib=function(){return b$(this)};var b6n=N(HC,"TNode",86);D(255,1,t0,Sp),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=si(this.a.d,0),new p6(e)},N(HC,"TNode/2",255),D(358,1,da,p6),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(ii(this.a),188).c},l.Ob=function(){return kR(this.a)},l.Qb=function(){H$(this.a)},N(HC,"TNode/2/1",358),D(1840,1,vs,qWt),l.pf=function(e,n){Smn(this,u(e,135),n)},N(yx,"FanProcessor",1840),D(327,22,{3:1,35:1,22:1,327:1,234:1},t_),l.Kf=function(){switch(this.g){case 0:return new Aqt;case 1:return new qWt;case 2:return new X5;case 3:return new KQ;case 4:return new XQ;case 5:return new OL;default:throw nt(new Pn(jot+(this.f!=null?this.f:""+this.g)))}};var Eht,Tht,_ht,Cht,Sht,wG,Kme=zr(yx,gxt,327,Ur,ean,fJe),Yme;D(1843,1,vs,KQ),l.pf=function(e,n){ubn(this,u(e,135),n)},l.a=0,N(yx,"LevelHeightProcessor",1843),D(1844,1,t0,YQ),l.Jc=function(e){_a(this,e)},l.Kc=function(){return pn(),e8(),X7},N(yx,"LevelHeightProcessor/1",1844),D(1841,1,vs,X5),l.pf=function(e,n){bgn(this,u(e,135),n)},l.a=0,N(yx,"NeighborsProcessor",1841),D(1842,1,t0,$F),l.Jc=function(e){_a(this,e)},l.Kc=function(){return pn(),e8(),X7},N(yx,"NeighborsProcessor/1",1842),D(1845,1,vs,XQ),l.pf=function(e,n){cbn(this,u(e,135),n)},l.a=0,N(yx,"NodePositionProcessor",1845),D(1839,1,vs,Aqt),l.pf=function(e,n){Nyn(this,u(e,135))},N(yx,"RootProcessor",1839),D(1846,1,vs,OL),l.pf=function(e,n){Hun(u(e,135))},N(yx,"Untreeifyer",1846);var FO,BS,Xme,Aht,mG,RS,Lht,yG,xG,yE,jS,kG,Jg,X_t,Qme,Mht,Wy,Dht,Q_t;D(851,1,Ph,M3),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Okt),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),J_t),(Hg(),ms)),aCt),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Nkt),""),"Search Order"),"Which search order to use when computing a spanning tree."),Z_t),ms),cCt),on(qn)))),Xle((new KL,e))};var Zme,Z_t,Jme,J_t;N(fH,"MrTreeMetaDataProvider",851),D(994,1,Ph,KL),l.Qe=function(e){Xle(e)};var tye,tCt,eye,nye,rye,iye,eCt,sye,nCt,aye,EG,rCt,oye,iCt,cye;N(fH,"MrTreeOptions",994),D(995,1,{},QQ),l.$e=function(){var e;return e=new HWt,e},l._e=function(e){},N(fH,"MrTreeOptions/MrtreeFactory",995),D(480,22,{3:1,35:1,22:1,480:1},Rbt);var Iht,sCt,aCt=zr(fH,"OrderWeighting",480,Ur,Ynn,dJe),uye;D(425,22,{3:1,35:1,22:1,425:1},jbt);var oCt,Oht,cCt=zr(fH,"TreeifyingOrder",425,Ur,Knn,pJe),lye;D(1459,1,Vc,WL),l.Yf=function(e){return u(e,135),hye},l.pf=function(e,n){qon(this,u(e,135),n)};var hye;N("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),D(1460,1,Vc,JJ),l.Yf=function(e){return u(e,135),fye},l.pf=function(e,n){Cgn(this,u(e,135),n)};var fye;N("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),D(1461,1,Vc,ZJ),l.Yf=function(e){return u(e,135),dye},l.pf=function(e,n){Hvn(this,u(e,135),n)},l.a=0;var dye;N("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),D(1462,1,Vc,NB),l.Yf=function(e){return u(e,135),gye},l.pf=function(e,n){p1n(u(e,135),n)};var gye;N("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var $S;D(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},$bt),l.Kf=function(){return nie(this)},l.Xf=function(){return nie(this)};var TG,xE,uCt=zr(Pkt,"RadialLayoutPhases",495,Ur,Xnn,gJe),pye;D(1131,209,_2,kHt),l.Ze=function(e,n){var r,s,o,h,d,w;if(r=soe(this,e),mr(n,"Radial layout",r.c.length),Be(Fe(ze(e,(ay(),mCt))))||u$((s=new rr((Dm(),new Sm(e))),s)),w=Idn(e),Eo(e,(b_(),$S),w),!w)throw nt(new Pn("The given graph is not a tree!"));for(o=Zt(ve(ze(e,SG))),o==0&&(o=moe(e)),Eo(e,SG,o),d=new S(soe(this,e));d.a0&&Sre(($r(n-1,e.length),e.charCodeAt(n-1)),Kfe);)--n;if(s>=n)throw nt(new Pn("The given string does not contain any numbers."));if(o=py(e.substr(s,n-s),`,|;|\r| +`),o.length!=2)throw nt(new Pn("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=ly(uy(o[0])),this.b=ly(uy(o[1]))}catch(h){throw h=rs(h),_t(h,127)?(r=h,nt(new Pn(Yfe+r))):nt(h)}},l.Ib=function(){return"("+this.a+","+this.b+")"},l.a=0,l.b=0;var na=N(qI,"KVector",8);D(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ju,yR,hWt),l.Pc=function(){return eun(this)},l.Jf=function(e){var n,r,s,o,h,d;s=py(e,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | +`),Mh(this);try{for(r=0,h=0,o=0,d=0;r0&&(h%2==0?o=ly(s[r]):d=ly(s[r]),h>0&&h%2!=0&&ai(this,new Re(o,d)),++h),++r}catch(w){throw w=rs(w),_t(w,127)?(n=w,nt(new Pn("The given string does not match the expected format for vectors."+n))):nt(w)}},l.Ib=function(){var e,n,r;for(e=new Fl("("),n=si(this,0);n.b!=n.d.c;)r=u(ii(n),8),Yr(e,r.a+","+r.b),n.b!=n.d.c&&(e.a+="; ");return(e.a+=")",e).a};var wSt=N(qI,"KVectorChain",74);D(248,22,{3:1,35:1,22:1,248:1},e_);var tft,NG,PG,$O,zO,FG,mSt=zr(Bh,"Alignment",248,Ur,Ysn,IJe),N3e;D(979,1,Ph,ntt),l.Qe=function(e){Gue(e)};var ySt,eft,P3e,xSt,kSt,F3e,ESt,B3e,R3e,TSt,_St,j3e;N(Bh,"BoxLayouterOptions",979),D(980,1,{},OZ),l.$e=function(){var e;return e=new jZ,e},l._e=function(e){},N(Bh,"BoxLayouterOptions/BoxFactory",980),D(291,22,{3:1,35:1,22:1,291:1},n_);var qO,nft,HO,VO,GO,rft,ift=zr(Bh,"ContentAlignment",291,Ur,Ksn,OJe),$3e;D(684,1,Ph,kp),l.Qe=function(e){an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,V1e),""),"Layout Algorithm"),"Select a specific layout algorithm."),(Hg(),kE)),Le),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,G1e),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),G1),m6n),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hkt),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),CSt),ms),mSt),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,px),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,s8t),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),G1),wSt),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cH),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),ASt),Rx),ift),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,KI),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Fn(),!1)),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gkt),""),K6t),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),LSt),ms),WS),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,UI),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),ISt),ms),vft),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gH),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,oH),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),FSt),ms),xAt),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ww),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),USt),G1),SEt),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,$I),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vct),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,FC),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Fot),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),QSt),ms),TAt),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,uH),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),G1),na),Ki(ua,ut(ot(ep,1),oe,175,0,[q2,tp]))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,jI),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),xc),Ha),Ki(ua,ut(ot(ep,1),oe,175,0,[Id]))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Hq),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,PC),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ekt),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),RSt),G1),wSt),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Ckt),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Skt),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,W5n),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),G1),T6n),Ki(qn,ut(ot(ep,1),oe,175,0,[tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Lkt),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),jSt),G1),CEt),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ukt),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),Pa),Ws),Ki(ua,ut(ot(ep,1),oe,175,0,[Id,q2,tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,U1e),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),$o),wa),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,W1e),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,K1e),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),de(100)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Y1e),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,X1e),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),de(4e3)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Q1e),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),de(400)),xc),Ha),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Z1e),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,J1e),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,tde),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ede),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,i8t),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),SSt),ms),MAt),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Qxt),j1),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Zxt),j1),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Mot),j1),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Jxt),j1),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Pot),j1),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,tkt),j1),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ekt),j1),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ikt),j1),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,nkt),j1),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,rkt),j1),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ky),j1),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,skt),j1),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,akt),j1),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),$o),wa),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,okt),j1),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),G1),x4e),Ki(ua,ut(ot(ep,1),oe,175,0,[Id,q2,tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Mkt),j1),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),oAt),G1),CEt),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,bct),ide),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),xc),Ha),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),ba(e,bct,pct,K3e),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,pct),ide),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),WSt),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,pkt),sde),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),zSt),G1),SEt),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,F7),sde),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),qSt),Rx),vo),Ki(ua,ut(ot(ep,1),oe,175,0,[tp]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,wkt),bH),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),YSt),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,mkt),bH),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,ykt),bH),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,xkt),bH),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,kkt),bH),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),ms),QS),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,M4),Fct),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),HSt),Rx),tA),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,bx),Fct),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),GSt),Rx),CAt),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vx),Fct),"Node Size Minimum"),"The minimal size to which a node can be reduced."),VSt),G1),na),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gct),Fct),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Tkt),dct),"Edge Label Placement"),"Gives a hint on where to put edge labels."),MSt),ms),uAt),on(tp)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Vq),dct),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),Pa),Ws),on(tp)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,K5n),"font"),"Font Name"),"Font name used for a label."),kE),Le),on(tp)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,nde),"font"),"Font Size"),"Font size used for a label."),xc),Ha),on(tp)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Akt),Bct),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),G1),na),on(q2)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,_kt),Bct),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),xc),Ha),on(q2)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,lkt),Bct),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),tAt),ms),Za),on(q2)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,ckt),Bct),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),$o),wa),on(q2)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,B7),a8t),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),ZSt),Rx),VG),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,bkt),a8t),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,vkt),a8t),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,fkt),ade),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),Pa),Ws),on(ua)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,dkt),ade),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),Pa),Ws),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Dot),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),$o),wa),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,rde),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),NSt),ms),pAt),on(Id)))),VT(e,new $6(RT(Qk(Xk(new wm,Un),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),VT(e,new $6(RT(Qk(Xk(new wm,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),VT(e,new $6(RT(Qk(Xk(new wm,Wl),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),VT(e,new $6(RT(Qk(Xk(new wm,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),VT(e,new $6(RT(Qk(Xk(new wm,M1e),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),VT(e,new $6(RT(Qk(Xk(new wm,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),VT(e,new $6(RT(Qk(Xk(new wm,_d),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),Mue((new $B,e)),Gue((new ntt,e)),aue((new zB,e))};var GS,z3e,CSt,jx,q3e,H3e,SSt,V3e,BG,ASt,UO,jw,LSt,sft,aft,MSt,DSt,ISt,OSt,NSt,PSt,i5,FSt,G3e,WO,oft,RG,BSt,s5,RSt,KO,jSt,$St,zSt,a5,qSt,H2,HSt,jG,o5,VSt,mb,GSt,$G,YO,V2,USt,U3e,WSt,W3e,K3e,KSt,YSt,cft,uft,lft,hft,XSt,ml,US,QSt,fft,dft,Ky,ZSt,JSt,c5,tAt,$x,zG,gft,EE,Y3e,pft,X3e,Q3e,eAt,Z3e,nAt,J3e,zx,rAt,qG,iAt,sAt,G2,t4e,aAt,oAt,cAt;N(Bh,"CoreOptions",684),D(103,22,{3:1,35:1,22:1,103:1},LM);var Q0,Hh,_f,c0,Z0,WS=zr(Bh,K6t,103,Ur,vsn,FJe),e4e;D(272,22,{3:1,35:1,22:1,272:1},Het);var TE,Yy,_E,uAt=zr(Bh,"EdgeLabelPlacement",272,Ur,Qrn,BJe),n4e;D(218,22,{3:1,35:1,22:1,218:1},KR);var CE,XO,qx,bft,vft=zr(Bh,"EdgeRouting",218,Ur,Hin,RJe),r4e;D(312,22,{3:1,35:1,22:1,312:1},r_);var lAt,hAt,fAt,dAt,wft,gAt,pAt=zr(Bh,"EdgeType",312,Ur,ran,jJe),i4e;D(977,1,Ph,$B),l.Qe=function(e){Mue(e)};var bAt,vAt,wAt,mAt,s4e,yAt,KS;N(Bh,"FixedLayouterOptions",977),D(978,1,{},BL),l.$e=function(){var e;return e=new BZ,e},l._e=function(e){},N(Bh,"FixedLayouterOptions/FixedFactory",978),D(334,22,{3:1,35:1,22:1,334:1},Vet);var np,HG,YS,xAt=zr(Bh,"HierarchyHandling",334,Ur,Xrn,$Je),a4e;D(285,22,{3:1,35:1,22:1,285:1},YR);var u0,yb,QO,ZO,o4e=zr(Bh,"LabelSide",285,Ur,qin,zJe),c4e;D(93,22,{3:1,35:1,22:1,93:1},z3);var J0,Cf,Vh,Sf,Ql,Af,Gh,l0,Lf,vo=zr(Bh,"NodeLabelPlacement",93,Ur,aon,qJe),u4e;D(249,22,{3:1,35:1,22:1,249:1},MM);var kAt,XS,xb,EAt,JO,QS=zr(Bh,"PortAlignment",249,Ur,wsn,HJe),l4e;D(98,22,{3:1,35:1,22:1,98:1},i_);var U2,Kc,h0,SE,U1,kb,TAt=zr(Bh,"PortConstraints",98,Ur,$sn,VJe),h4e;D(273,22,{3:1,35:1,22:1,273:1},s_);var ZS,JS,tg,tN,Eb,Hx,VG=zr(Bh,"PortLabelPlacement",273,Ur,nan,GJe),f4e;D(61,22,{3:1,35:1,22:1,61:1},DM);var Hn,On,xh,kh,Du,gu,W1,Mf,ol,Yu,Yc,cl,Iu,Ou,Df,Zl,Jl,Uh,yr,ac,Bn,Za=zr(Bh,"PortSide",61,Ur,gsn,KJe),d4e;D(981,1,Ph,zB),l.Qe=function(e){aue(e)};var g4e,p4e,_At,b4e,v4e;N(Bh,"RandomLayouterOptions",981),D(982,1,{},HZ),l.$e=function(){var e;return e=new GZ,e},l._e=function(e){},N(Bh,"RandomLayouterOptions/RandomFactory",982),D(374,22,{3:1,35:1,22:1,374:1},XR);var Xy,eN,nN,W2,tA=zr(Bh,"SizeConstraint",374,Ur,zin,UJe),w4e;D(259,22,{3:1,35:1,22:1,259:1},q3);var rN,GG,AE,mft,iN,eA,UG,WG,KG,CAt=zr(Bh,"SizeOptions",259,Ur,don,WJe),m4e;D(370,1,{1949:1},Wk),l.b=!1,l.c=0,l.d=-1,l.e=null,l.f=null,l.g=-1,l.j=!1,l.k=!1,l.n=!1,l.o=0,l.q=0,l.r=0,N(Ac,"BasicProgressMonitor",370),D(972,209,_2,jZ),l.Ze=function(e,n){var r,s,o,h,d,w,k,_,M;switch(mr(n,"Box layout",2),o=lM(ve(ze(e,(eq(),j3e)))),h=u(ze(e,R3e),116),r=Be(Fe(ze(e,xSt))),s=Be(Fe(ze(e,kSt))),u(ze(e,eft),311).g){case 0:d=(w=new qu((!e.a&&(e.a=new he(ds,e,10,11)),e.a)),pn(),aa(w,new q$t(s)),w),k=z4t(e),_=ve(ze(e,ySt)),(_==null||(In(_),_<=0))&&(_=1.3),M=Z4n(d,o,h,k.a,k.b,r,(In(_),_)),gw(e,M.a,M.b,!1,!0);break;default:Kyn(e,o,h,r)}or(n)},N(Ac,"BoxLayoutProvider",972),D(973,1,qi,q$t),l.ue=function(e,n){return b2n(this,u(e,33),u(n,33))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},l.a=!1,N(Ac,"BoxLayoutProvider/1",973),D(157,1,{157:1},U$,lWt),l.Ib=function(){return this.c?$5t(this.c):Jp(this.b)},N(Ac,"BoxLayoutProvider/Group",157),D(311,22,{3:1,35:1,22:1,311:1},QR);var SAt,AAt,LAt,yft,MAt=zr(Ac,"BoxLayoutProvider/PackingMode",311,Ur,Vin,YJe),y4e;D(974,1,qi,$Z),l.ue=function(e,n){return mnn(u(e,157),u(n,157))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Ac,"BoxLayoutProvider/lambda$0$Type",974),D(975,1,qi,KF),l.ue=function(e,n){return fnn(u(e,157),u(n,157))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Ac,"BoxLayoutProvider/lambda$1$Type",975),D(976,1,qi,zZ),l.ue=function(e,n){return dnn(u(e,157),u(n,157))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(Ac,"BoxLayoutProvider/lambda$2$Type",976),D(1365,1,{831:1},qZ),l.qg=function(e,n){return IR(),!_t(n,160)||yHt((X6(),u(e,160)),n)},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1365),D(1366,1,Kn,H$t),l.td=function(e){run(this.a,u(e,146))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1366),D(1367,1,Kn,RZ),l.td=function(e){u(e,94),IR()},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1367),D(1371,1,Kn,V$t),l.td=function(e){Aon(this.a,u(e,94))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1371),D(1369,1,gi,aGt),l.Mb=function(e){return Hcn(this.a,this.b,u(e,146))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1369),D(1368,1,gi,oGt),l.Mb=function(e){return aQe(this.a,this.b,u(e,831))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1368),D(1370,1,Kn,cGt),l.td=function(e){aen(this.a,this.b,u(e,146))},N(Ac,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1370),D(935,1,{},FZ),l.Kb=function(e){return cUt(e)},l.Fb=function(e){return this===e},N(Ac,"ElkUtil/lambda$0$Type",935),D(936,1,Kn,uGt),l.td=function(e){wpn(this.a,this.b,u(e,79))},l.a=0,l.b=0,N(Ac,"ElkUtil/lambda$1$Type",936),D(937,1,Kn,lGt),l.td=function(e){wKe(this.a,this.b,u(e,202))},l.a=0,l.b=0,N(Ac,"ElkUtil/lambda$2$Type",937),D(938,1,Kn,hGt),l.td=function(e){uXe(this.a,this.b,u(e,137))},l.a=0,l.b=0,N(Ac,"ElkUtil/lambda$3$Type",938),D(939,1,Kn,G$t),l.td=function(e){ktn(this.a,u(e,469))},N(Ac,"ElkUtil/lambda$4$Type",939),D(342,1,{35:1,342:1},KWe),l.wd=function(e){return BXe(this,u(e,236))},l.Fb=function(e){var n;return _t(e,342)?(n=u(e,342),this.a==n.a):!1},l.Hb=function(){return Cs(this.a)},l.Ib=function(){return this.a+" (exclusive)"},l.a=0,N(Ac,"ExclusiveBounds/ExclusiveLowerBound",342),D(1138,209,_2,BZ),l.Ze=function(e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt,ce,_e,We,Qe;for(mr(n,"Fixed Layout",1),h=u(ze(e,(di(),DSt)),218),B=0,q=0,St=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));St.e!=St.i.gc();){for(bt=u(dr(St),33),Qe=u(ze(bt,(bz(),KS)),8),Qe&&(k1(bt,Qe.a,Qe.b),u(ze(bt,vAt),174).Hc((Nl(),Xy))&&(G=u(ze(bt,mAt),8),G.a>0&&G.b>0&&gw(bt,G.a,G.b,!0,!0))),B=b.Math.max(B,bt.i+bt.g),q=b.Math.max(q,bt.j+bt.f),_=new nr((!bt.n&&(bt.n=new he(Yo,bt,1,7)),bt.n));_.e!=_.i.gc();)w=u(dr(_),137),Qe=u(ze(w,KS),8),Qe&&k1(w,Qe.a,Qe.b),B=b.Math.max(B,bt.i+w.i+w.g),q=b.Math.max(q,bt.j+w.j+w.f);for(ce=new nr((!bt.c&&(bt.c=new he(yl,bt,9,9)),bt.c));ce.e!=ce.i.gc();)for(Qt=u(dr(ce),118),Qe=u(ze(Qt,KS),8),Qe&&k1(Qt,Qe.a,Qe.b),_e=bt.i+Qt.i,We=bt.j+Qt.j,B=b.Math.max(B,_e+Qt.g),q=b.Math.max(q,We+Qt.f),k=new nr((!Qt.n&&(Qt.n=new he(Yo,Qt,1,7)),Qt.n));k.e!=k.i.gc();)w=u(dr(k),137),Qe=u(ze(w,KS),8),Qe&&k1(w,Qe.a,Qe.b),B=b.Math.max(B,_e+w.i+w.g),q=b.Math.max(q,We+w.j+w.f);for(o=new ar(lr(V0(bt).a.Kc(),new H));Vr(o);)r=u(Ir(o),79),M=xhe(r),B=b.Math.max(B,M.a),q=b.Math.max(q,M.b);for(s=new ar(lr(fI(bt).a.Kc(),new H));Vr(s);)r=u(Ir(s),79),hs(Zd(r))!=e&&(M=xhe(r),B=b.Math.max(B,M.a),q=b.Math.max(q,M.b))}if(h==(q0(),CE))for(Mt=new nr((!e.a&&(e.a=new he(ds,e,10,11)),e.a));Mt.e!=Mt.i.gc();)for(bt=u(dr(Mt),33),s=new ar(lr(V0(bt).a.Kc(),new H));Vr(s);)r=u(Ir(s),79),d=pmn(r),d.b==0?Eo(r,s5,null):Eo(r,s5,d);Be(Fe(ze(e,(bz(),wAt))))||(jt=u(ze(e,s4e),116),Z=B+jt.b+jt.c,W=q+jt.d+jt.a,gw(e,Z,W,!0,!0)),or(n)},N(Ac,"FixedLayoutProvider",1138),D(373,134,{3:1,414:1,373:1,94:1,134:1},tl,Rte),l.Jf=function(e){var n,r,s,o,h,d,w,k,_;if(e)try{for(k=py(e,";,;"),h=k,d=0,w=h.length;d>16&Ms|n^s<<16},l.Kc=function(){return new U$t(this)},l.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+Wo(this.b)+")":this.b==null?"pair("+Wo(this.a)+",null)":"pair("+Wo(this.a)+","+Wo(this.b)+")"},N(Ac,"Pair",46),D(983,1,da,U$t),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},l.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw nt(new vc)},l.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),nt(new Ru)},l.b=!1,l.c=!1,N(Ac,"Pair/1",983),D(448,1,{448:1},kXt),l.Fb=function(e){return Rc(this.a,u(e,448).a)&&Rc(this.c,u(e,448).c)&&Rc(this.d,u(e,448).d)&&Rc(this.b,u(e,448).b)},l.Hb=function(){return vz(ut(ot(Qn,1),Me,1,5,[this.a,this.c,this.d,this.b]))},l.Ib=function(){return"("+this.a+Xa+this.c+Xa+this.d+Xa+this.b+")"},N(Ac,"Quadruple",448),D(1126,209,_2,GZ),l.Ze=function(e,n){var r,s,o,h,d;if(mr(n,"Random Layout",1),(!e.a&&(e.a=new he(ds,e,10,11)),e.a).i==0){or(n);return}h=u(ze(e,(v3t(),b4e)),19),h&&h.a!=0?o=new T$(h.a):o=new Hit,r=lM(ve(ze(e,g4e))),d=lM(ve(ze(e,v4e))),s=u(ze(e,p4e),116),L4n(e,o,r,d,s),or(n)},N(Ac,"RandomLayoutProvider",1126);var T4e;D(553,1,{}),l.qf=function(){return new Re(this.f.i,this.f.j)},l.We=function(e){return KXt(e,(di(),ml))?ze(this.f,_4e):ze(this.f,e)},l.rf=function(){return new Re(this.f.g,this.f.f)},l.sf=function(){return this.g},l.Xe=function(e){return s2(this.f,e)},l.tf=function(e){Cu(this.f,e.a),Su(this.f,e.b)},l.uf=function(e){Qv(this.f,e.a),Xv(this.f,e.b)},l.vf=function(e){this.g=e},l.g=0;var _4e;N(UC,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553),D(554,1,{839:1},aR),l.wf=function(){var e,n;if(!this.b)for(this.b=y$(Zj(this.a).i),n=new nr(Zj(this.a));n.e!=n.i.gc();)e=u(dr(n),137),ue(this.b,new iet(e));return this.b},l.b=null,N(UC,"ElkGraphAdapters/ElkEdgeAdapter",554),D(301,553,{},Sm),l.xf=function(){return kse(this)},l.a=null,N(UC,"ElkGraphAdapters/ElkGraphAdapter",301),D(630,553,{181:1},iet),N(UC,"ElkGraphAdapters/ElkLabelAdapter",630),D(629,553,{680:1},snt),l.wf=function(){return Dfn(this)},l.Af=function(){var e;return e=u(ze(this.f,(di(),KO)),142),!e&&(e=new MT),e},l.Cf=function(){return Ifn(this)},l.Ef=function(e){var n;n=new ynt(e),Eo(this.f,(di(),KO),n)},l.Ff=function(e){Eo(this.f,(di(),V2),new fvt(e))},l.yf=function(){return this.d},l.zf=function(){var e,n;if(!this.a)for(this.a=new le,n=new ar(lr(fI(u(this.f,33)).a.Kc(),new H));Vr(n);)e=u(Ir(n),79),ue(this.a,new aR(e));return this.a},l.Bf=function(){var e,n;if(!this.c)for(this.c=new le,n=new ar(lr(V0(u(this.f,33)).a.Kc(),new H));Vr(n);)e=u(Ir(n),79),ue(this.c,new aR(e));return this.c},l.Df=function(){return i$(u(this.f,33)).i!=0||Be(Fe(u(this.f,33).We((di(),WO))))},l.Gf=function(){kan(this,(Dm(),T4e))},l.a=null,l.b=null,l.c=null,l.d=null,l.e=null,N(UC,"ElkGraphAdapters/ElkNodeAdapter",629),D(1266,553,{838:1},xzt),l.wf=function(){return $fn(this)},l.zf=function(){var e,n;if(!this.a)for(this.a=Hd(u(this.f,118).xg().i),n=new nr(u(this.f,118).xg());n.e!=n.i.gc();)e=u(dr(n),79),ue(this.a,new aR(e));return this.a},l.Bf=function(){var e,n;if(!this.c)for(this.c=Hd(u(this.f,118).yg().i),n=new nr(u(this.f,118).yg());n.e!=n.i.gc();)e=u(dr(n),79),ue(this.c,new aR(e));return this.c},l.Hf=function(){return u(u(this.f,118).We((di(),c5)),61)},l.If=function(){var e,n,r,s,o,h,d,w;for(s=_1(u(this.f,118)),r=new nr(u(this.f,118).yg());r.e!=r.i.gc();)for(e=u(dr(r),79),w=new nr((!e.c&&(e.c=new En(vr,e,5,8)),e.c));w.e!=w.i.gc();){if(d=u(dr(w),82),Zm(Ro(d),s))return!0;if(Ro(d)==s&&Be(Fe(ze(e,(di(),oft)))))return!0}for(n=new nr(u(this.f,118).xg());n.e!=n.i.gc();)for(e=u(dr(n),79),h=new nr((!e.b&&(e.b=new En(vr,e,4,7)),e.b));h.e!=h.i.gc();)if(o=u(dr(h),82),Zm(Ro(o),s))return!0;return!1},l.a=null,l.b=null,l.c=null,N(UC,"ElkGraphAdapters/ElkPortAdapter",1266),D(1267,1,qi,UZ),l.ue=function(e,n){return cwn(u(e,118),u(n,118))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(UC,"ElkGraphAdapters/PortComparator",1267);var Tb=as(vh,"EObject"),LE=as(N4,ude),Wh=as(N4,lde),sN=as(N4,hde),aN=as(N4,"ElkShape"),vr=as(N4,fde),ra=as(N4,o8t),us=as(N4,dde),oN=as(vh,gde),nA=as(vh,"EFactory"),C4e,xft=as(vh,pde),o1=as(vh,"EPackage"),la,S4e,A4e,NAt,YG,L4e,PAt,FAt,BAt,_b,M4e,D4e,Yo=as(N4,c8t),ds=as(N4,u8t),yl=as(N4,l8t);D(90,1,bde),l.Jg=function(){return this.Kg(),null},l.Kg=function(){return null},l.Lg=function(){return this.Kg(),!1},l.Mg=function(){return!1},l.Ng=function(e){Ci(this,e)},N(xx,"BasicNotifierImpl",90),D(97,90,yde),l.nh=function(){return Sl(this)},l.Og=function(e,n){return e},l.Pg=function(){throw nt(new Pr)},l.Qg=function(e){var n;return n=oo(u(wn(this.Tg(),this.Vg()),18)),this.eh().ih(this,n.n,n.f,e)},l.Rg=function(e,n){throw nt(new Pr)},l.Sg=function(e,n,r){return Ul(this,e,n,r)},l.Tg=function(){var e;return this.Pg()&&(e=this.Pg().ck(),e)?e:this.zh()},l.Ug=function(){return Ust(this)},l.Vg=function(){throw nt(new Pr)},l.Wg=function(){var e,n;return n=this.ph().dk(),!n&&this.Pg().ik(n=(GT(),e=Lwt(bd(this.Tg())),e==null?Lft:new NM(this,e))),n},l.Xg=function(e,n){return e},l.Yg=function(e){var n;return n=e.Gj(),n?e.aj():es(this.Tg(),e)},l.Zg=function(){var e;return e=this.Pg(),e?e.fk():null},l.$g=function(){return this.Pg()?this.Pg().ck():null},l._g=function(e,n,r){return jz(this,e,n,r)},l.ah=function(e){return L8(this,e)},l.bh=function(e,n){return Brt(this,e,n)},l.dh=function(){var e;return e=this.Pg(),!!e&&e.gk()},l.eh=function(){throw nt(new Pr)},l.fh=function(){return Iz(this)},l.gh=function(e,n,r,s){return tx(this,e,n,s)},l.hh=function(e,n,r){var s;return s=u(wn(this.Tg(),n),66),s.Nj().Qj(this,this.yh(),n-this.Ah(),e,r)},l.ih=function(e,n,r,s){return c$(this,e,n,s)},l.jh=function(e,n,r){var s;return s=u(wn(this.Tg(),n),66),s.Nj().Rj(this,this.yh(),n-this.Ah(),e,r)},l.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},l.lh=function(e){return rst(this,e)},l.mh=function(e){return hQt(this,e)},l.oh=function(e){return Fle(this,e)},l.ph=function(){throw nt(new Pr)},l.qh=function(){return this.Pg()?this.Pg().ek():null},l.rh=function(){return Iz(this)},l.sh=function(e,n){zst(this,e,n)},l.th=function(e){this.ph().hk(e)},l.uh=function(e){this.ph().kk(e)},l.vh=function(e){this.ph().jk(e)},l.wh=function(e,n){var r,s,o,h;return h=this.Zg(),h&&e&&(n=za(h.Vk(),this,n),h.Zk(this)),s=this.eh(),s&&(cat(this,this.eh(),this.Vg()).Bb&Qa?(o=s.fh(),o&&(e?!h&&o.Zk(this):o.Yk(this))):(n=(r=this.Vg(),r>=0?this.Qg(n):this.eh().ih(this,-1-r,null,n)),n=this.Sg(null,-1,n))),this.uh(e),n},l.xh=function(e){var n,r,s,o,h,d,w,k;if(r=this.Tg(),h=es(r,e),n=this.Ah(),h>=n)return u(e,66).Nj().Uj(this,this.yh(),h-n);if(h<=-1)if(d=T4((Gu(),Sa),r,e),d){if(so(),u(d,66).Oj()||(d=z6(Mo(Sa,d))),o=(s=this.Yg(d),u(s>=0?this._g(s,!0,!0):lw(this,d,!0),153)),k=d.Zj(),k>1||k==-1)return u(u(o,215).hl(e,!1),76)}else throw nt(new Pn(cb+e.ne()+Rct));else if(e.$j())return s=this.Yg(e),u(s>=0?this._g(s,!1,!0):lw(this,e,!1),76);return w=new DGt(this,e),w},l.yh=function(){return Mmt(this)},l.zh=function(){return(zp(),An).S},l.Ah=function(){return Jn(this.zh())},l.Bh=function(e){Fst(this,e)},l.Ib=function(){return mf(this)},N(Ln,"BasicEObjectImpl",97);var I4e;D(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),l.Ch=function(e){var n;return n=Dmt(this),n[e]},l.Dh=function(e,n){var r;r=Dmt(this),ls(r,e,n)},l.Eh=function(e){var n;n=Dmt(this),ls(n,e,null)},l.Jg=function(){return u(Mn(this,4),126)},l.Kg=function(){throw nt(new Pr)},l.Lg=function(){return(this.Db&4)!=0},l.Pg=function(){throw nt(new Pr)},l.Fh=function(e){J6(this,2,e)},l.Rg=function(e,n){this.Db=n<<16|this.Db&255,this.Fh(e)},l.Tg=function(){return ku(this)},l.Vg=function(){return this.Db>>16},l.Wg=function(){var e,n;return GT(),n=Lwt(bd((e=u(Mn(this,16),26),e||this.zh()))),n==null?Lft:new NM(this,n)},l.Mg=function(){return(this.Db&1)==0},l.Zg=function(){return u(Mn(this,128),1935)},l.$g=function(){return u(Mn(this,16),26)},l.dh=function(){return(this.Db&32)!=0},l.eh=function(){return u(Mn(this,2),49)},l.kh=function(){return(this.Db&64)!=0},l.ph=function(){throw nt(new Pr)},l.qh=function(){return u(Mn(this,64),281)},l.th=function(e){J6(this,16,e)},l.uh=function(e){J6(this,128,e)},l.vh=function(e){J6(this,64,e)},l.yh=function(){return uu(this)},l.Db=0,N(Ln,"MinimalEObjectImpl",114),D(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l.Fh=function(e){this.Cb=e},l.eh=function(){return this.Cb},N(Ln,"MinimalEObjectImpl/Container",115),D(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return q3t(this,e,n,r)},l.jh=function(e,n,r){return M4t(this,e,n,r)},l.lh=function(e){return zwt(this,e)},l.sh=function(e,n){Syt(this,e,n)},l.zh=function(){return nu(),D4e},l.Bh=function(e){byt(this,e)},l.Ve=function(){return Hie(this)},l.We=function(e){return ze(this,e)},l.Xe=function(e){return s2(this,e)},l.Ye=function(e,n){return Eo(this,e,n)},N(A2,"EMapPropertyHolderImpl",1985),D(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},mp),l._g=function(e,n,r){switch(e){case 0:return this.a;case 1:return this.b}return jz(this,e,n,r)},l.lh=function(e){switch(e){case 0:return this.a!=0;case 1:return this.b!=0}return rst(this,e)},l.sh=function(e,n){switch(e){case 0:W$(this,Zt(ve(n)));return;case 1:K$(this,Zt(ve(n)));return}zst(this,e,n)},l.zh=function(){return nu(),S4e},l.Bh=function(e){switch(e){case 0:W$(this,0);return;case 1:K$(this,0);return}Fst(this,e)},l.Ib=function(){var e;return this.Db&64?mf(this):(e=new Ah(mf(this)),e.a+=" (x: ",j3(e,this.a),e.a+=", y: ",j3(e,this.b),e.a+=")",e.a)},l.a=0,l.b=0,N(A2,"ElkBendPointImpl",567),D(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return Uyt(this,e,n,r)},l.hh=function(e,n,r){return Mst(this,e,n,r)},l.jh=function(e,n,r){return git(this,e,n,r)},l.lh=function(e){return cyt(this,e)},l.sh=function(e,n){o4t(this,e,n)},l.zh=function(){return nu(),L4e},l.Bh=function(e){qyt(this,e)},l.zg=function(){return this.k},l.Ag=function(){return Zj(this)},l.Ib=function(){return zit(this)},l.k=null,N(A2,"ElkGraphElementImpl",723),D(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return n3t(this,e,n,r)},l.lh=function(e){return u3t(this,e)},l.sh=function(e,n){c4t(this,e,n)},l.zh=function(){return nu(),M4e},l.Bh=function(e){g3t(this,e)},l.Bg=function(){return this.f},l.Cg=function(){return this.g},l.Dg=function(){return this.i},l.Eg=function(){return this.j},l.Fg=function(e,n){sj(this,e,n)},l.Gg=function(e,n){k1(this,e,n)},l.Hg=function(e){Cu(this,e)},l.Ig=function(e){Su(this,e)},l.Ib=function(){return Pst(this)},l.f=0,l.g=0,l.i=0,l.j=0,N(A2,"ElkShapeImpl",724),D(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),l._g=function(e,n,r){return F3t(this,e,n,r)},l.hh=function(e,n,r){return e4t(this,e,n,r)},l.jh=function(e,n,r){return n4t(this,e,n,r)},l.lh=function(e){return _yt(this,e)},l.sh=function(e,n){h5t(this,e,n)},l.zh=function(){return nu(),A4e},l.Bh=function(e){A3t(this,e)},l.xg=function(){return!this.d&&(this.d=new En(ra,this,8,5)),this.d},l.yg=function(){return!this.e&&(this.e=new En(ra,this,7,4)),this.e},N(A2,"ElkConnectableShapeImpl",725),D(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},fv),l.Qg=function(e){return Q3t(this,e)},l._g=function(e,n,r){switch(e){case 3:return rD(this);case 4:return!this.b&&(this.b=new En(vr,this,4,7)),this.b;case 5:return!this.c&&(this.c=new En(vr,this,5,8)),this.c;case 6:return!this.a&&(this.a=new he(us,this,6,6)),this.a;case 7:return Fn(),!this.b&&(this.b=new En(vr,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i<=1));case 8:return Fn(),!!gC(this);case 9:return Fn(),!!uw(this);case 10:return Fn(),!this.b&&(this.b=new En(vr,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i!=0)}return Uyt(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 3:return this.Cb&&(r=(s=this.Db>>16,s>=0?Q3t(this,r):this.Cb.ih(this,-1-s,null,r))),V2t(this,u(e,33),r);case 4:return!this.b&&(this.b=new En(vr,this,4,7)),eu(this.b,e,r);case 5:return!this.c&&(this.c=new En(vr,this,5,8)),eu(this.c,e,r);case 6:return!this.a&&(this.a=new he(us,this,6,6)),eu(this.a,e,r)}return Mst(this,e,n,r)},l.jh=function(e,n,r){switch(n){case 3:return V2t(this,null,r);case 4:return!this.b&&(this.b=new En(vr,this,4,7)),za(this.b,e,r);case 5:return!this.c&&(this.c=new En(vr,this,5,8)),za(this.c,e,r);case 6:return!this.a&&(this.a=new he(us,this,6,6)),za(this.a,e,r)}return git(this,e,n,r)},l.lh=function(e){switch(e){case 3:return!!rD(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new En(vr,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i<=1));case 8:return gC(this);case 9:return uw(this);case 10:return!this.b&&(this.b=new En(vr,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new En(vr,this,5,8)),this.c.i!=0)}return cyt(this,e)},l.sh=function(e,n){switch(e){case 3:Zst(this,u(n,33));return;case 4:!this.b&&(this.b=new En(vr,this,4,7)),Tr(this.b),!this.b&&(this.b=new En(vr,this,4,7)),gs(this.b,u(n,14));return;case 5:!this.c&&(this.c=new En(vr,this,5,8)),Tr(this.c),!this.c&&(this.c=new En(vr,this,5,8)),gs(this.c,u(n,14));return;case 6:!this.a&&(this.a=new he(us,this,6,6)),Tr(this.a),!this.a&&(this.a=new he(us,this,6,6)),gs(this.a,u(n,14));return}o4t(this,e,n)},l.zh=function(){return nu(),NAt},l.Bh=function(e){switch(e){case 3:Zst(this,null);return;case 4:!this.b&&(this.b=new En(vr,this,4,7)),Tr(this.b);return;case 5:!this.c&&(this.c=new En(vr,this,5,8)),Tr(this.c);return;case 6:!this.a&&(this.a=new he(us,this,6,6)),Tr(this.a);return}qyt(this,e)},l.Ib=function(){return xle(this)},N(A2,"ElkEdgeImpl",352),D(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},id),l.Qg=function(e){return W3t(this,e)},l._g=function(e,n,r){switch(e){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new Bs(Wh,this,5)),this.a;case 6:return cQt(this);case 7:return n?cst(this):this.i;case 8:return n?ost(this):this.f;case 9:return!this.g&&(this.g=new En(us,this,9,10)),this.g;case 10:return!this.e&&(this.e=new En(us,this,10,9)),this.e;case 11:return this.d}return q3t(this,e,n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?W3t(this,r):this.Cb.ih(this,-1-o,null,r))),G2t(this,u(e,79),r);case 9:return!this.g&&(this.g=new En(us,this,9,10)),eu(this.g,e,r);case 10:return!this.e&&(this.e=new En(us,this,10,9)),eu(this.e,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(nu(),YG)),n),66),h.Nj().Qj(this,uu(this),n-Jn((nu(),YG)),e,r)},l.jh=function(e,n,r){switch(n){case 5:return!this.a&&(this.a=new Bs(Wh,this,5)),za(this.a,e,r);case 6:return G2t(this,null,r);case 9:return!this.g&&(this.g=new En(us,this,9,10)),za(this.g,e,r);case 10:return!this.e&&(this.e=new En(us,this,10,9)),za(this.e,e,r)}return M4t(this,e,n,r)},l.lh=function(e){switch(e){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!cQt(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return zwt(this,e)},l.sh=function(e,n){switch(e){case 1:P8(this,Zt(ve(n)));return;case 2:B8(this,Zt(ve(n)));return;case 3:N8(this,Zt(ve(n)));return;case 4:F8(this,Zt(ve(n)));return;case 5:!this.a&&(this.a=new Bs(Wh,this,5)),Tr(this.a),!this.a&&(this.a=new Bs(Wh,this,5)),gs(this.a,u(n,14));return;case 6:kce(this,u(n,79));return;case 7:J$(this,u(n,82));return;case 8:Z$(this,u(n,82));return;case 9:!this.g&&(this.g=new En(us,this,9,10)),Tr(this.g),!this.g&&(this.g=new En(us,this,9,10)),gs(this.g,u(n,14));return;case 10:!this.e&&(this.e=new En(us,this,10,9)),Tr(this.e),!this.e&&(this.e=new En(us,this,10,9)),gs(this.e,u(n,14));return;case 11:Jmt(this,jr(n));return}Syt(this,e,n)},l.zh=function(){return nu(),YG},l.Bh=function(e){switch(e){case 1:P8(this,0);return;case 2:B8(this,0);return;case 3:N8(this,0);return;case 4:F8(this,0);return;case 5:!this.a&&(this.a=new Bs(Wh,this,5)),Tr(this.a);return;case 6:kce(this,null);return;case 7:J$(this,null);return;case 8:Z$(this,null);return;case 9:!this.g&&(this.g=new En(us,this,9,10)),Tr(this.g);return;case 10:!this.e&&(this.e=new En(us,this,10,9)),Tr(this.e);return;case 11:Jmt(this,null);return}byt(this,e)},l.Ib=function(){return $oe(this)},l.b=0,l.c=0,l.d=null,l.j=0,l.k=0,N(A2,"ElkEdgeSectionImpl",439),D(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),l._g=function(e,n,r){var s;return e==0?(!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab):hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.hh=function(e,n,r){var s,o;return n==0?(!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r)):(o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Qj(this,uu(this),n-Jn(this.zh()),e,r))},l.jh=function(e,n,r){var s,o;return n==0?(!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r)):(o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r))},l.lh=function(e){var n;return e==0?!!this.Ab&&this.Ab.i!=0:uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.oh=function(e){return m6t(this,e)},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.uh=function(e){J6(this,128,e)},l.zh=function(){return ln(),X4e},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.Gh=function(){this.Bb|=1},l.Hh=function(e){return mC(this,e)},l.Bb=0,N(Ln,"EModelElementImpl",150),D(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},qB),l.Ih=function(e,n){return Qle(this,e,n)},l.Jh=function(e){var n,r,s,o,h;if(this.a!=zl(e)||e.Bb&256)throw nt(new Pn($ct+e.zb+kw));for(s=Po(e);Oc(s.a).i!=0;){if(r=u(EI(s,0,(n=u(At(Oc(s.a),0),87),h=n.c,_t(h,88)?u(h,26):(ln(),Qh))),26),cw(r))return o=zl(r).Nh().Jh(r),u(o,49).th(e),o;s=Po(r)}return(e.D!=null?e.D:e.B)=="java.util.Map$Entry"?new UKt(e):new Dvt(e)},l.Kh=function(e,n){return pw(this,e,n)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.a}return hh(this,e-Jn((ln(),Lb)),wn((s=u(Mn(this,16),26),s||Lb),e),n,r)},l.hh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 1:return this.a&&(r=u(this.a,49).ih(this,4,o1,r)),$yt(this,u(e,235),r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Lb)),n),66),o.Nj().Qj(this,uu(this),n-Jn((ln(),Lb)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 1:return $yt(this,null,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Lb)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Lb)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return uh(this,e-Jn((ln(),Lb)),wn((n=u(Mn(this,16),26),n||Lb),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:kae(this,u(n,235));return}bh(this,e-Jn((ln(),Lb)),wn((r=u(Mn(this,16),26),r||Lb),e),n)},l.zh=function(){return ln(),Lb},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:kae(this,null);return}gh(this,e-Jn((ln(),Lb)),wn((n=u(Mn(this,16),26),n||Lb),e))};var rA,RAt,O4e;N(Ln,"EFactoryImpl",704),D(xf,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},Z5),l.Ih=function(e,n){switch(e.yj()){case 12:return u(n,146).tg();case 13:return Wo(n);default:throw nt(new Pn(z7+e.ne()+kw))}},l.Jh=function(e){var n,r,s,o,h,d,w,k;switch(e.G==-1&&(e.G=(n=zl(e),n?$g(n.Mh(),e):-1)),e.G){case 4:return h=new Y9,h;case 6:return d=new Npt,d;case 7:return w=new Ppt,w;case 8:return s=new fv,s;case 9:return r=new mp,r;case 10:return o=new id,o;case 11:return k=new YF,k;default:throw nt(new Pn($ct+e.zb+kw))}},l.Kh=function(e,n){switch(e.yj()){case 13:case 12:return null;default:throw nt(new Pn(z7+e.ne()+kw))}},N(A2,"ElkGraphFactoryImpl",xf),D(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),l.Wg=function(){var e,n;return n=(e=u(Mn(this,16),26),Lwt(bd(e||this.zh()))),n==null?(GT(),GT(),Lft):new dWt(this,n)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.ne()}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:this.Lh(jr(n));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),Q4e},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:this.Lh(null);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.ne=function(){return this.zb},l.Lh=function(e){tu(this,e)},l.Ib=function(){return X_(this)},l.zb=null,N(Ln,"ENamedElementImpl",438),D(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},WXt),l.Qg=function(e){return Fse(this,e)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new qm(this,c1,this)),this.rb;case 6:return!this.vb&&(this.vb=new M6(o1,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?u(this.Cb,235):null:uQt(this)}return hh(this,e-Jn((ln(),ap)),wn((s=u(Mn(this,16),26),s||ap),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 4:return this.sb&&(r=u(this.sb,49).ih(this,1,nA,r)),Vyt(this,u(e,471),r);case 5:return!this.rb&&(this.rb=new qm(this,c1,this)),eu(this.rb,e,r);case 6:return!this.vb&&(this.vb=new M6(o1,this,6,7)),eu(this.vb,e,r);case 7:return this.Cb&&(r=(o=this.Db>>16,o>=0?Fse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,7,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),ap)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),ap)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 4:return Vyt(this,null,r);case 5:return!this.rb&&(this.rb=new qm(this,c1,this)),za(this.rb,e,r);case 6:return!this.vb&&(this.vb=new M6(o1,this,6,7)),za(this.vb,e,r);case 7:return Ul(this,null,7,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),ap)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),ap)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!uQt(this)}return uh(this,e-Jn((ln(),ap)),wn((n=u(Mn(this,16),26),n||ap),e))},l.oh=function(e){var n;return n=M2n(this,e),n||m6t(this,e)},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:az(this,jr(n));return;case 3:sz(this,jr(n));return;case 4:Nst(this,u(n,471));return;case 5:!this.rb&&(this.rb=new qm(this,c1,this)),Tr(this.rb),!this.rb&&(this.rb=new qm(this,c1,this)),gs(this.rb,u(n,14));return;case 6:!this.vb&&(this.vb=new M6(o1,this,6,7)),Tr(this.vb),!this.vb&&(this.vb=new M6(o1,this,6,7)),gs(this.vb,u(n,14));return}bh(this,e-Jn((ln(),ap)),wn((r=u(Mn(this,16),26),r||ap),e),n)},l.vh=function(e){var n,r;if(e&&this.rb)for(r=new nr(this.rb);r.e!=r.i.gc();)n=dr(r),_t(n,351)&&(u(n,351).w=null);J6(this,64,e)},l.zh=function(){return ln(),ap},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:az(this,null);return;case 3:sz(this,null);return;case 4:Nst(this,null);return;case 5:!this.rb&&(this.rb=new qm(this,c1,this)),Tr(this.rb);return;case 6:!this.vb&&(this.vb=new M6(o1,this,6,7)),Tr(this.vb);return}gh(this,e-Jn((ln(),ap)),wn((n=u(Mn(this,16),26),n||ap),e))},l.Gh=function(){xst(this)},l.Mh=function(){return!this.rb&&(this.rb=new qm(this,c1,this)),this.rb},l.Nh=function(){return this.sb},l.Oh=function(){return this.ub},l.Ph=function(){return this.xb},l.Qh=function(){return this.yb},l.Rh=function(e){this.ub=e},l.Ib=function(){var e;return this.Db&64?X_(this):(e=new Ah(X_(this)),e.a+=" (nsURI: ",yo(e,this.yb),e.a+=", nsPrefix: ",yo(e,this.xb),e.a+=")",e.a)},l.xb=null,l.yb=null,N(Ln,"EPackageImpl",179),D(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},Yoe),l.q=!1,l.r=!1;var N4e=!1;N(A2,"ElkGraphPackageImpl",555),D(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Y9),l.Qg=function(e){return K3t(this,e)},l._g=function(e,n,r){switch(e){case 7:return lQt(this);case 8:return this.a}return n3t(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 7:return this.Cb&&(r=(s=this.Db>>16,s>=0?K3t(this,r):this.Cb.ih(this,-1-s,null,r))),Uvt(this,u(e,160),r)}return Mst(this,e,n,r)},l.jh=function(e,n,r){return n==7?Uvt(this,null,r):git(this,e,n,r)},l.lh=function(e){switch(e){case 7:return!!lQt(this);case 8:return!un("",this.a)}return u3t(this,e)},l.sh=function(e,n){switch(e){case 7:_5t(this,u(n,160));return;case 8:Umt(this,jr(n));return}c4t(this,e,n)},l.zh=function(){return nu(),PAt},l.Bh=function(e){switch(e){case 7:_5t(this,null);return;case 8:Umt(this,"");return}g3t(this,e)},l.Ib=function(){return Fae(this)},l.a="",N(A2,"ElkLabelImpl",354),D(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Npt),l.Qg=function(e){return Z3t(this,e)},l._g=function(e,n,r){switch(e){case 9:return!this.c&&(this.c=new he(yl,this,9,9)),this.c;case 10:return!this.a&&(this.a=new he(ds,this,10,11)),this.a;case 11:return hs(this);case 12:return!this.b&&(this.b=new he(ra,this,12,3)),this.b;case 13:return Fn(),!this.a&&(this.a=new he(ds,this,10,11)),this.a.i>0}return F3t(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 9:return!this.c&&(this.c=new he(yl,this,9,9)),eu(this.c,e,r);case 10:return!this.a&&(this.a=new he(ds,this,10,11)),eu(this.a,e,r);case 11:return this.Cb&&(r=(s=this.Db>>16,s>=0?Z3t(this,r):this.Cb.ih(this,-1-s,null,r))),tvt(this,u(e,33),r);case 12:return!this.b&&(this.b=new he(ra,this,12,3)),eu(this.b,e,r)}return e4t(this,e,n,r)},l.jh=function(e,n,r){switch(n){case 9:return!this.c&&(this.c=new he(yl,this,9,9)),za(this.c,e,r);case 10:return!this.a&&(this.a=new he(ds,this,10,11)),za(this.a,e,r);case 11:return tvt(this,null,r);case 12:return!this.b&&(this.b=new he(ra,this,12,3)),za(this.b,e,r)}return n4t(this,e,n,r)},l.lh=function(e){switch(e){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!hs(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new he(ds,this,10,11)),this.a.i>0}return _yt(this,e)},l.sh=function(e,n){switch(e){case 9:!this.c&&(this.c=new he(yl,this,9,9)),Tr(this.c),!this.c&&(this.c=new he(yl,this,9,9)),gs(this.c,u(n,14));return;case 10:!this.a&&(this.a=new he(ds,this,10,11)),Tr(this.a),!this.a&&(this.a=new he(ds,this,10,11)),gs(this.a,u(n,14));return;case 11:k5t(this,u(n,33));return;case 12:!this.b&&(this.b=new he(ra,this,12,3)),Tr(this.b),!this.b&&(this.b=new he(ra,this,12,3)),gs(this.b,u(n,14));return}h5t(this,e,n)},l.zh=function(){return nu(),FAt},l.Bh=function(e){switch(e){case 9:!this.c&&(this.c=new he(yl,this,9,9)),Tr(this.c);return;case 10:!this.a&&(this.a=new he(ds,this,10,11)),Tr(this.a);return;case 11:k5t(this,null);return;case 12:!this.b&&(this.b=new he(ra,this,12,3)),Tr(this.b);return}A3t(this,e)},l.Ib=function(){return $5t(this)},N(A2,"ElkNodeImpl",239),D(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Ppt),l.Qg=function(e){return Y3t(this,e)},l._g=function(e,n,r){return e==9?_1(this):F3t(this,e,n,r)},l.hh=function(e,n,r){var s;switch(n){case 9:return this.Cb&&(r=(s=this.Db>>16,s>=0?Y3t(this,r):this.Cb.ih(this,-1-s,null,r))),U2t(this,u(e,33),r)}return e4t(this,e,n,r)},l.jh=function(e,n,r){return n==9?U2t(this,null,r):n4t(this,e,n,r)},l.lh=function(e){return e==9?!!_1(this):_yt(this,e)},l.sh=function(e,n){switch(e){case 9:x5t(this,u(n,33));return}h5t(this,e,n)},l.zh=function(){return nu(),BAt},l.Bh=function(e){switch(e){case 9:x5t(this,null);return}A3t(this,e)},l.Ib=function(){return kue(this)},N(A2,"ElkPortImpl",186);var P4e=as(qa,"BasicEMap/Entry");D(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},YF),l.Fb=function(e){return this===e},l.cd=function(){return this.b},l.Hb=function(){return Dv(this)},l.Uh=function(e){Wmt(this,u(e,146))},l._g=function(e,n,r){switch(e){case 0:return this.b;case 1:return this.c}return jz(this,e,n,r)},l.lh=function(e){switch(e){case 0:return!!this.b;case 1:return this.c!=null}return rst(this,e)},l.sh=function(e,n){switch(e){case 0:Wmt(this,u(n,146));return;case 1:Xmt(this,n);return}zst(this,e,n)},l.zh=function(){return nu(),_b},l.Bh=function(e){switch(e){case 0:Wmt(this,null);return;case 1:Xmt(this,null);return}Fst(this,e)},l.Sh=function(){var e;return this.a==-1&&(e=this.b,this.a=e?Ji(e):0),this.a},l.dd=function(){return this.c},l.Th=function(e){this.a=e},l.ed=function(e){var n;return n=this.c,Xmt(this,e),n},l.Ib=function(){var e;return this.Db&64?mf(this):(e=new Ap,Yr(Yr(Yr(e,this.b?this.b.tg():Mu),Bot),d_(this.c)),e.a)},l.a=-1,l.c=null;var $w=N(A2,"ElkPropertyToValueMapEntryImpl",1092);D(984,1,{},XF),N(Ca,"JsonAdapter",984),D(210,60,U0,od),N(Ca,"JsonImportException",210),D(857,1,{},Bse),N(Ca,"JsonImporter",857),D(891,1,{},fGt),N(Ca,"JsonImporter/lambda$0$Type",891),D(892,1,{},dGt),N(Ca,"JsonImporter/lambda$1$Type",892),D(900,1,{},W$t),N(Ca,"JsonImporter/lambda$10$Type",900),D(902,1,{},gGt),N(Ca,"JsonImporter/lambda$11$Type",902),D(903,1,{},pGt),N(Ca,"JsonImporter/lambda$12$Type",903),D(909,1,{},SXt),N(Ca,"JsonImporter/lambda$13$Type",909),D(908,1,{},CXt),N(Ca,"JsonImporter/lambda$14$Type",908),D(904,1,{},bGt),N(Ca,"JsonImporter/lambda$15$Type",904),D(905,1,{},vGt),N(Ca,"JsonImporter/lambda$16$Type",905),D(906,1,{},wGt),N(Ca,"JsonImporter/lambda$17$Type",906),D(907,1,{},mGt),N(Ca,"JsonImporter/lambda$18$Type",907),D(912,1,{},K$t),N(Ca,"JsonImporter/lambda$19$Type",912),D(893,1,{},Y$t),N(Ca,"JsonImporter/lambda$2$Type",893),D(910,1,{},X$t),N(Ca,"JsonImporter/lambda$20$Type",910),D(911,1,{},Q$t),N(Ca,"JsonImporter/lambda$21$Type",911),D(915,1,{},Z$t),N(Ca,"JsonImporter/lambda$22$Type",915),D(913,1,{},J$t),N(Ca,"JsonImporter/lambda$23$Type",913),D(914,1,{},tzt),N(Ca,"JsonImporter/lambda$24$Type",914),D(917,1,{},ezt),N(Ca,"JsonImporter/lambda$25$Type",917),D(916,1,{},nzt),N(Ca,"JsonImporter/lambda$26$Type",916),D(918,1,Kn,yGt),l.td=function(e){san(this.b,this.a,jr(e))},N(Ca,"JsonImporter/lambda$27$Type",918),D(919,1,Kn,xGt),l.td=function(e){aan(this.b,this.a,jr(e))},N(Ca,"JsonImporter/lambda$28$Type",919),D(920,1,{},kGt),N(Ca,"JsonImporter/lambda$29$Type",920),D(896,1,{},rzt),N(Ca,"JsonImporter/lambda$3$Type",896),D(921,1,{},EGt),N(Ca,"JsonImporter/lambda$30$Type",921),D(922,1,{},izt),N(Ca,"JsonImporter/lambda$31$Type",922),D(923,1,{},szt),N(Ca,"JsonImporter/lambda$32$Type",923),D(924,1,{},azt),N(Ca,"JsonImporter/lambda$33$Type",924),D(925,1,{},ozt),N(Ca,"JsonImporter/lambda$34$Type",925),D(859,1,{},czt),N(Ca,"JsonImporter/lambda$35$Type",859),D(929,1,{},wKt),N(Ca,"JsonImporter/lambda$36$Type",929),D(926,1,Kn,uzt),l.td=function(e){usn(this.a,u(e,469))},N(Ca,"JsonImporter/lambda$37$Type",926),D(927,1,Kn,LGt),l.td=function(e){BYe(this.a,this.b,u(e,202))},N(Ca,"JsonImporter/lambda$38$Type",927),D(928,1,Kn,MGt),l.td=function(e){RYe(this.a,this.b,u(e,202))},N(Ca,"JsonImporter/lambda$39$Type",928),D(894,1,{},lzt),N(Ca,"JsonImporter/lambda$4$Type",894),D(930,1,Kn,hzt),l.td=function(e){lsn(this.a,u(e,8))},N(Ca,"JsonImporter/lambda$40$Type",930),D(895,1,{},fzt),N(Ca,"JsonImporter/lambda$5$Type",895),D(899,1,{},dzt),N(Ca,"JsonImporter/lambda$6$Type",899),D(897,1,{},gzt),N(Ca,"JsonImporter/lambda$7$Type",897),D(898,1,{},pzt),N(Ca,"JsonImporter/lambda$8$Type",898),D(901,1,{},bzt),N(Ca,"JsonImporter/lambda$9$Type",901),D(948,1,Kn,vzt),l.td=function(e){F6(this.a,new Hm(jr(e)))},N(Ca,"JsonMetaDataConverter/lambda$0$Type",948),D(949,1,Kn,wzt),l.td=function(e){Cen(this.a,u(e,237))},N(Ca,"JsonMetaDataConverter/lambda$1$Type",949),D(950,1,Kn,mzt),l.td=function(e){Ern(this.a,u(e,149))},N(Ca,"JsonMetaDataConverter/lambda$2$Type",950),D(951,1,Kn,yzt),l.td=function(e){Sen(this.a,u(e,175))},N(Ca,"JsonMetaDataConverter/lambda$3$Type",951),D(237,22,{3:1,35:1,22:1,237:1},C6);var XG,QG,kft,ZG,JG,tU,Eft,Tft,eU=zr(BI,"GraphFeature",237,Ur,Yan,QJe),F4e;D(13,1,{35:1,146:1},ts,Hs,vn,ao),l.wd=function(e){return FXe(this,u(e,146))},l.Fb=function(e){return KXt(this,e)},l.wg=function(){return Ie(this)},l.tg=function(){return this.b},l.Hb=function(){return zg(this.b)},l.Ib=function(){return this.b},N(BI,"Property",13),D(818,1,qi,dpt),l.ue=function(e,n){return tln(this,u(e,94),u(n,94))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(BI,"PropertyHolderComparator",818),D(695,1,da,gpt),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return lan(this)},l.Qb=function(){dHt()},l.Ob=function(){return!!this.a},N(yH,"ElkGraphUtil/AncestorIterator",695);var jAt=as(qa,"EList");D(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),l.Vc=function(e,n){J_(this,e,n)},l.Fc=function(e){return Or(this,e)},l.Wc=function(e,n){return vyt(this,e,n)},l.Gc=function(e){return gs(this,e)},l.Zh=function(){return new L6(this)},l.$h=function(){return new PM(this)},l._h=function(e){return CD(this,e)},l.ai=function(){return!0},l.bi=function(e,n){},l.ci=function(){},l.di=function(e,n){jrt(this,e,n)},l.ei=function(e,n,r){},l.fi=function(e,n){},l.gi=function(e,n,r){},l.Fb=function(e){return cue(this,e)},l.Hb=function(){return fyt(this)},l.hi=function(){return!1},l.Kc=function(){return new nr(this)},l.Yc=function(){return new A6(this)},l.Zc=function(e){var n;if(n=this.gc(),e<0||e>n)throw nt(new jm(e,n));return new Vnt(this,e)},l.ji=function(e,n){this.ii(e,this.Xc(n))},l.Mc=function(e){return j$(this,e)},l.li=function(e,n){return n},l._c=function(e,n){return l4(this,e,n)},l.Ib=function(){return i3t(this)},l.ni=function(){return!0},l.oi=function(e,n){return Y8(this,n)},N(qa,"AbstractEList",67),D(63,67,Sd,J5,Kv,iyt),l.Vh=function(e,n){return Dst(this,e,n)},l.Wh=function(e){return lse(this,e)},l.Xh=function(e,n){zD(this,e,n)},l.Yh=function(e){uD(this,e)},l.pi=function(e){return _mt(this,e)},l.$b=function(){R_(this)},l.Hc=function(e){return l7(this,e)},l.Xb=function(e){return At(this,e)},l.qi=function(e){var n,r,s;++this.j,r=this.g==null?0:this.g.length,e>r&&(s=this.g,n=r+(r/2|0)+4,n=0?(this.$c(n),!0):!1},l.mi=function(e,n){return this.Ui(e,this.oi(e,n))},l.gc=function(){return this.Vi()},l.Pc=function(){return this.Wi()},l.Qc=function(e){return this.Xi(e)},l.Ib=function(){return this.Yi()},N(qa,"DelegatingEList",1995),D(1996,1995,i0e),l.Vh=function(e,n){return Y5t(this,e,n)},l.Wh=function(e){return this.Vh(this.Vi(),e)},l.Xh=function(e,n){Woe(this,e,n)},l.Yh=function(e){Roe(this,e)},l.ai=function(){return!this.bj()},l.$b=function(){_C(this)},l.Zi=function(e,n,r,s,o){return new XXt(this,e,n,r,s,o)},l.$i=function(e){Ci(this.Ai(),e)},l._i=function(){return null},l.aj=function(){return-1},l.Ai=function(){return null},l.bj=function(){return!1},l.cj=function(e,n){return n},l.dj=function(e,n){return n},l.ej=function(){return!1},l.fj=function(){return!this.Ri()},l.ii=function(e,n){var r,s;return this.ej()?(s=this.fj(),r=S4t(this,e,n),this.$i(this.Zi(7,de(n),r,e,s)),r):S4t(this,e,n)},l.$c=function(e){var n,r,s,o;return this.ej()?(r=null,s=this.fj(),n=this.Zi(4,o=Ij(this,e),null,e,s),this.bj()&&o?(r=this.dj(o,r),r?(r.Ei(n),r.Fi()):this.$i(n)):r?(r.Ei(n),r.Fi()):this.$i(n),o):(o=Ij(this,e),this.bj()&&o&&(r=this.dj(o,null),r&&r.Fi()),o)},l.mi=function(e,n){return ele(this,e,n)},N(xx,"DelegatingNotifyingListImpl",1996),D(143,1,QI),l.Ei=function(e){return g4t(this,e)},l.Fi=function(){Krt(this)},l.xi=function(){return this.d},l._i=function(){return null},l.gj=function(){return null},l.yi=function(e){return-1},l.zi=function(){return zce(this)},l.Ai=function(){return null},l.Bi=function(){return M5t(this)},l.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},l.hj=function(){return!1},l.Di=function(e){var n,r,s,o,h,d,w,k,_,M,B;switch(this.d){case 1:case 2:switch(o=e.xi(),o){case 1:case 2:if(h=e.Ai(),Gt(h)===Gt(this.Ai())&&this.yi(null)==e.yi(null))return this.g=e.zi(),e.xi()==1&&(this.d=1),!0}case 4:{switch(o=e.xi(),o){case 4:{if(h=e.Ai(),Gt(h)===Gt(this.Ai())&&this.yi(null)==e.yi(null))return _=f6t(this),k=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,d=e.Ci(),this.d=6,B=new Kv(2),k<=d?(Or(B,this.n),Or(B,e.Bi()),this.g=ut(ot(Sr,1),Jr,25,15,[this.o=k,d+1])):(Or(B,e.Bi()),Or(B,this.n),this.g=ut(ot(Sr,1),Jr,25,15,[this.o=d,k])),this.n=B,_||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=e.xi(),o){case 4:{if(h=e.Ai(),Gt(h)===Gt(this.Ai())&&this.yi(null)==e.yi(null)){for(_=f6t(this),d=e.Ci(),M=u(this.g,48),s=Nt(Sr,Jr,25,M.length+1,15,1),n=0;n>>0,n.toString(16))),s.a+=" (eventType: ",this.d){case 1:{s.a+="SET";break}case 2:{s.a+="UNSET";break}case 3:{s.a+="ADD";break}case 5:{s.a+="ADD_MANY";break}case 4:{s.a+="REMOVE";break}case 6:{s.a+="REMOVE_MANY";break}case 7:{s.a+="MOVE";break}case 8:{s.a+="REMOVING_ADAPTER";break}case 9:{s.a+="RESOLVE";break}default:{fet(s,this.d);break}}if(Lue(this)&&(s.a+=", touch: true"),s.a+=", position: ",fet(s,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),s.a+=", notifier: ",o_(s,this.Ai()),s.a+=", feature: ",o_(s,this._i()),s.a+=", oldValue: ",o_(s,M5t(this)),s.a+=", newValue: ",this.d==6&&_t(this.g,48)){for(r=u(this.g,48),s.a+="[",e=0;e10?((!this.b||this.c.j!=this.a)&&(this.b=new y_(this),this.a=this.j),S0(this.b,e)):l7(this,e)},l.ni=function(){return!0},l.a=0,N(qa,"AbstractEList/1",953),D(295,73,oot,jm),N(qa,"AbstractEList/BasicIndexOutOfBoundsException",295),D(40,1,da,nr),l.Nb=function(e){Ea(this,e)},l.mj=function(){if(this.i.j!=this.f)throw nt(new sh)},l.nj=function(){return dr(this)},l.Ob=function(){return this.e!=this.i.gc()},l.Pb=function(){return this.nj()},l.Qb=function(){uC(this)},l.e=0,l.f=0,l.g=-1,N(qa,"AbstractEList/EIterator",40),D(278,40,Jd,A6,Vnt),l.Qb=function(){uC(this)},l.Rb=function(e){fie(this,e)},l.oj=function(){var e;try{return e=this.d.Xb(--this.e),this.mj(),this.g=this.e,e}catch(n){throw n=rs(n),_t(n,73)?(this.mj(),nt(new vc)):nt(n)}},l.pj=function(e){dse(this,e)},l.Sb=function(){return this.e!=0},l.Tb=function(){return this.e},l.Ub=function(){return this.oj()},l.Vb=function(){return this.e-1},l.Wb=function(e){this.pj(e)},N(qa,"AbstractEList/EListIterator",278),D(341,40,da,L6),l.nj=function(){return ist(this)},l.Qb=function(){throw nt(new Pr)},N(qa,"AbstractEList/NonResolvingEIterator",341),D(385,278,Jd,PM,ovt),l.Rb=function(e){throw nt(new Pr)},l.nj=function(){var e;try{return e=this.c.ki(this.e),this.mj(),this.g=this.e++,e}catch(n){throw n=rs(n),_t(n,73)?(this.mj(),nt(new vc)):nt(n)}},l.oj=function(){var e;try{return e=this.c.ki(--this.e),this.mj(),this.g=this.e,e}catch(n){throw n=rs(n),_t(n,73)?(this.mj(),nt(new vc)):nt(n)}},l.Qb=function(){throw nt(new Pr)},l.Wb=function(e){throw nt(new Pr)},N(qa,"AbstractEList/NonResolvingEListIterator",385),D(1982,67,s0e),l.Vh=function(e,n){var r,s,o,h,d,w,k,_,M,B,q;if(o=n.gc(),o!=0){for(_=u(Mn(this.a,4),126),M=_==null?0:_.length,q=M+o,s=Cit(this,q),B=M-e,B>0&&Pc(_,e,s,e+o,B),k=n.Kc(),d=0;dr)throw nt(new jm(e,r));return new oXt(this,e)},l.$b=function(){var e,n;++this.j,e=u(Mn(this.a,4),126),n=e==null?0:e.length,a7(this,null),jrt(this,n,e)},l.Hc=function(e){var n,r,s,o,h;if(n=u(Mn(this.a,4),126),n!=null){if(e!=null){for(s=n,o=0,h=s.length;o=r)throw nt(new jm(e,r));return n[e]},l.Xc=function(e){var n,r,s;if(n=u(Mn(this.a,4),126),n!=null){if(e!=null){for(r=0,s=n.length;rr)throw nt(new jm(e,r));return new aXt(this,e)},l.ii=function(e,n){var r,s,o;if(r=yie(this),o=r==null?0:r.length,e>=o)throw nt(new Co(Yct+e+L2+o));if(n>=o)throw nt(new Co(Xct+n+L2+o));return s=r[n],e!=n&&(e0&&Pc(e,0,n,0,r),n},l.Qc=function(e){var n,r,s;return n=u(Mn(this.a,4),126),s=n==null?0:n.length,s>0&&(e.lengths&&ls(e,s,null),e};var B4e;N(qa,"ArrayDelegatingEList",1982),D(1038,40,da,bJt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},l.Qb=function(){uC(this),this.a=u(Mn(this.b.a,4),126)},N(qa,"ArrayDelegatingEList/EIterator",1038),D(706,278,Jd,MYt,aXt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},l.pj=function(e){dse(this,e),this.a=u(Mn(this.b.a,4),126)},l.Qb=function(){uC(this),this.a=u(Mn(this.b.a,4),126)},N(qa,"ArrayDelegatingEList/EListIterator",706),D(1039,341,da,vJt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},N(qa,"ArrayDelegatingEList/NonResolvingEIterator",1039),D(707,385,Jd,DYt,oXt),l.mj=function(){if(this.b.j!=this.f||Gt(u(Mn(this.b.a,4),126))!==Gt(this.a))throw nt(new sh)},N(qa,"ArrayDelegatingEList/NonResolvingEListIterator",707),D(606,295,oot,Wet),N(qa,"BasicEList/BasicIndexOutOfBoundsException",606),D(696,63,Sd,Ubt),l.Vc=function(e,n){throw nt(new Pr)},l.Fc=function(e){throw nt(new Pr)},l.Wc=function(e,n){throw nt(new Pr)},l.Gc=function(e){throw nt(new Pr)},l.$b=function(){throw nt(new Pr)},l.qi=function(e){throw nt(new Pr)},l.Kc=function(){return this.Zh()},l.Yc=function(){return this.$h()},l.Zc=function(e){return this._h(e)},l.ii=function(e,n){throw nt(new Pr)},l.ji=function(e,n){throw nt(new Pr)},l.$c=function(e){throw nt(new Pr)},l.Mc=function(e){throw nt(new Pr)},l._c=function(e,n){throw nt(new Pr)},N(qa,"BasicEList/UnmodifiableEList",696),D(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),l.Vc=function(e,n){CXe(this,e,u(n,42))},l.Fc=function(e){return fQe(this,u(e,42))},l.Jc=function(e){_a(this,e)},l.Xb=function(e){return u(At(this.c,e),133)},l.ii=function(e,n){return u(this.c.ii(e,n),42)},l.ji=function(e,n){SXe(this,e,u(n,42))},l.Lc=function(){return new kn(null,new Tn(this,16))},l.$c=function(e){return u(this.c.$c(e),42)},l._c=function(e,n){return yen(this,e,u(n,42))},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.Oc=function(){return new kn(null,new Tn(this,16))},l.Wc=function(e,n){return this.c.Wc(e,n)},l.Gc=function(e){return this.c.Gc(e)},l.$b=function(){this.c.$b()},l.Hc=function(e){return this.c.Hc(e)},l.Ic=function(e){return DD(this.c,e)},l.qj=function(){var e,n,r;if(this.d==null){for(this.d=Nt($At,A8t,63,2*this.f+1,0,1),r=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)e=u(n.nj(),133),qz(this,e);this.e=r}},l.Fb=function(e){return nKt(this,e)},l.Hb=function(){return fyt(this.c)},l.Xc=function(e){return this.c.Xc(e)},l.rj=function(){this.c=new kzt(this)},l.dc=function(){return this.f==0},l.Kc=function(){return this.c.Kc()},l.Yc=function(){return this.c.Yc()},l.Zc=function(e){return this.c.Zc(e)},l.sj=function(){return fD(this)},l.tj=function(e,n,r){return new mKt(e,n,r)},l.uj=function(){return new yp},l.Mc=function(e){return Pee(this,e)},l.gc=function(){return this.f},l.bd=function(e,n){return new Kd(this.c,e,n)},l.Pc=function(){return this.c.Pc()},l.Qc=function(e){return this.c.Qc(e)},l.Ib=function(){return i3t(this.c)},l.e=0,l.f=0,N(qa,"BasicEMap",705),D(1033,63,Sd,kzt),l.bi=function(e,n){uKe(this,u(n,133))},l.ei=function(e,n,r){var s;++(s=this,u(n,133),s).a.e},l.fi=function(e,n){lKe(this,u(n,133))},l.gi=function(e,n,r){JXe(this,u(n,133),u(r,133))},l.di=function(e,n){_ne(this.a)},N(qa,"BasicEMap/1",1033),D(1034,63,Sd,yp),l.ri=function(e){return Nt(x6n,a0e,612,e,0,1)},N(qa,"BasicEMap/2",1034),D(1035,B1,Uu,Ezt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){return Yit(this.a,e)},l.Kc=function(){return this.a.f==0?(l8(),lN.a):new iHt(this.a)},l.Mc=function(e){var n;return n=this.a.f,Dz(this.a,e),this.a.f!=n},l.gc=function(){return this.a.f},N(qa,"BasicEMap/3",1035),D(1036,28,wy,Tzt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){return uue(this.a,e)},l.Kc=function(){return this.a.f==0?(l8(),lN.a):new sHt(this.a)},l.gc=function(){return this.a.f},N(qa,"BasicEMap/4",1036),D(1037,B1,Uu,_zt),l.$b=function(){this.a.c.$b()},l.Hc=function(e){var n,r,s,o,h,d,w,k,_;if(this.a.f>0&&_t(e,42)&&(this.a.qj(),k=u(e,42),w=k.cd(),o=w==null?0:Ji(w),h=W2t(this.a,o),n=this.a.d[h],n)){for(r=u(n.g,367),_=n.i,d=0;d<_;++d)if(s=r[d],s.Sh()==o&&s.Fb(k))return!0}return!1},l.Kc=function(){return this.a.f==0?(l8(),lN.a):new art(this.a)},l.Mc=function(e){return ece(this,e)},l.gc=function(){return this.a.f},N(qa,"BasicEMap/5",1037),D(613,1,da,art),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return this.b!=-1},l.Pb=function(){var e;if(this.f.e!=this.c)throw nt(new sh);if(this.b==-1)throw nt(new vc);return this.d=this.a,this.e=this.b,Hse(this),e=u(this.f.d[this.d].g[this.e],133),this.vj(e)},l.Qb=function(){if(this.f.e!=this.c)throw nt(new sh);if(this.e==-1)throw nt(new Ru);this.f.c.Mc(At(this.f.d[this.d],this.e)),this.c=this.f.e,this.e=-1,this.a==this.d&&this.b!=-1&&--this.b},l.vj=function(e){return e},l.a=0,l.b=-1,l.c=0,l.d=0,l.e=0,N(qa,"BasicEMap/BasicEMapIterator",613),D(1031,613,da,iHt),l.vj=function(e){return e.cd()},N(qa,"BasicEMap/BasicEMapKeyIterator",1031),D(1032,613,da,sHt),l.vj=function(e){return e.dd()},N(qa,"BasicEMap/BasicEMapValueIterator",1032),D(1030,1,bw,Czt),l.wc=function(e){U_(this,e)},l.yc=function(e,n,r){return qit(this,e,n,r)},l.$b=function(){this.a.c.$b()},l._b=function(e){return RGt(this,e)},l.uc=function(e){return uue(this.a,e)},l.vc=function(){return qsn(this.a)},l.Fb=function(e){return nKt(this.a,e)},l.xc=function(e){return Jf(this.a,e)},l.Hb=function(){return fyt(this.a.c)},l.dc=function(){return this.a.f==0},l.ec=function(){return Hsn(this.a)},l.zc=function(e,n){return Yz(this.a,e,n)},l.Bc=function(e){return Dz(this.a,e)},l.gc=function(){return this.a.f},l.Ib=function(){return i3t(this.a.c)},l.Cc=function(){return zsn(this.a)},N(qa,"BasicEMap/DelegatingMap",1030),D(612,1,{42:1,133:1,612:1},mKt),l.Fb=function(e){var n;return _t(e,42)?(n=u(e,42),(this.b!=null?Si(this.b,n.cd()):Gt(this.b)===Gt(n.cd()))&&(this.c!=null?Si(this.c,n.dd()):Gt(this.c)===Gt(n.dd()))):!1},l.Sh=function(){return this.a},l.cd=function(){return this.b},l.dd=function(){return this.c},l.Hb=function(){return this.a^(this.c==null?0:Ji(this.c))},l.Th=function(e){this.a=e},l.Uh=function(e){throw nt(new Wb)},l.ed=function(e){var n;return n=this.c,this.c=e,n},l.Ib=function(){return this.b+"->"+this.c},l.a=0;var x6n=N(qa,"BasicEMap/EntryImpl",612);D(536,1,{},kk),N(qa,"BasicEMap/View",536);var lN;D(768,1,{}),l.Fb=function(e){return f5t((pn(),uo),e)},l.Hb=function(){return Tyt((pn(),uo))},l.Ib=function(){return Jp((pn(),uo))},N(qa,"ECollections/BasicEmptyUnmodifiableEList",768),D(1312,1,Jd,QF),l.Nb=function(e){Ea(this,e)},l.Rb=function(e){throw nt(new Pr)},l.Ob=function(){return!1},l.Sb=function(){return!1},l.Pb=function(){throw nt(new vc)},l.Tb=function(){return 0},l.Ub=function(){throw nt(new vc)},l.Vb=function(){return-1},l.Qb=function(){throw nt(new Pr)},l.Wb=function(e){throw nt(new Pr)},N(qa,"ECollections/BasicEmptyUnmodifiableEList/1",1312),D(1310,768,{20:1,14:1,15:1,58:1},pqt),l.Vc=function(e,n){CHt()},l.Fc=function(e){return SHt()},l.Wc=function(e,n){return AHt()},l.Gc=function(e){return LHt()},l.$b=function(){MHt()},l.Hc=function(e){return!1},l.Ic=function(e){return!1},l.Jc=function(e){_a(this,e)},l.Xb=function(e){return Ybt((pn(),e)),null},l.Xc=function(e){return-1},l.dc=function(){return!0},l.Kc=function(){return this.a},l.Yc=function(){return this.a},l.Zc=function(e){return this.a},l.ii=function(e,n){return DHt()},l.ji=function(e,n){IHt()},l.Lc=function(){return new kn(null,new Tn(this,16))},l.$c=function(e){return OHt()},l.Mc=function(e){return NHt()},l._c=function(e,n){return PHt()},l.gc=function(){return 0},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.Oc=function(){return new kn(null,new Tn(this,16))},l.bd=function(e,n){return pn(),new Kd(uo,e,n)},l.Pc=function(){return Yvt((pn(),uo))},l.Qc=function(e){return pn(),XD(uo,e)},N(qa,"ECollections/EmptyUnmodifiableEList",1310),D(1311,768,{20:1,14:1,15:1,58:1,589:1},bqt),l.Vc=function(e,n){CHt()},l.Fc=function(e){return SHt()},l.Wc=function(e,n){return AHt()},l.Gc=function(e){return LHt()},l.$b=function(){MHt()},l.Hc=function(e){return!1},l.Ic=function(e){return!1},l.Jc=function(e){_a(this,e)},l.Xb=function(e){return Ybt((pn(),e)),null},l.Xc=function(e){return-1},l.dc=function(){return!0},l.Kc=function(){return this.a},l.Yc=function(){return this.a},l.Zc=function(e){return this.a},l.ii=function(e,n){return DHt()},l.ji=function(e,n){IHt()},l.Lc=function(){return new kn(null,new Tn(this,16))},l.$c=function(e){return OHt()},l.Mc=function(e){return NHt()},l._c=function(e,n){return PHt()},l.gc=function(){return 0},l.ad=function(e){n4(this,e)},l.Nc=function(){return new Tn(this,16)},l.Oc=function(){return new kn(null,new Tn(this,16))},l.bd=function(e,n){return pn(),new Kd(uo,e,n)},l.Pc=function(){return Yvt((pn(),uo))},l.Qc=function(e){return pn(),XD(uo,e)},l.sj=function(){return pn(),pn(),a0},N(qa,"ECollections/EmptyUnmodifiableEMap",1311);var qAt=as(qa,"Enumerator"),nU;D(281,1,{281:1},rat),l.Fb=function(e){var n;return this===e?!0:_t(e,281)?(n=u(e,281),this.f==n.f&&ztn(this.i,n.i)&&Mnt(this.a,this.f&256?n.f&256?n.a:null:n.f&256?null:n.a)&&Mnt(this.d,n.d)&&Mnt(this.g,n.g)&&Mnt(this.e,n.e)&&Phn(this,n)):!1},l.Hb=function(){return this.f},l.Ib=function(){return $ue(this)},l.f=0;var R4e=0,j4e=0,$4e=0,z4e=0,HAt=0,VAt=0,GAt=0,UAt=0,WAt=0,q4e,iA=0,sA=0,H4e=0,V4e=0,rU,KAt;N(qa,"URI",281),D(1091,43,S4,vqt),l.zc=function(e,n){return u(Ao(this,jr(e),u(n,281)),281)},N(qa,"URI/URICache",1091),D(497,63,Sd,Ek,Nj),l.hi=function(){return!0},N(qa,"UniqueEList",497),D(581,60,U0,F$),N(qa,"WrappedException",581);var ei=as(vh,u0e),Qy=as(vh,l0e),Nu=as(vh,h0e),Zy=as(vh,f0e),c1=as(vh,d0e),Kh=as(vh,"EClass"),Sft=as(vh,"EDataType"),G4e;D(1183,43,S4,wqt),l.xc=function(e){return ha(e)?jc(this,e):cc(Fo(this.f,e))},N(vh,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1183);var iU=as(vh,"EEnum"),eg=as(vh,g0e),wo=as(vh,p0e),Yh=as(vh,b0e),Xh,zw=as(vh,v0e),Jy=as(vh,w0e);D(1029,1,{},WZ),l.Ib=function(){return"NIL"},N(vh,"EStructuralFeature/Internal/DynamicValueHolder/1",1029);var U4e;D(1028,43,S4,mqt),l.xc=function(e){return ha(e)?jc(this,e):cc(Fo(this.f,e))},N(vh,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1028);var pu=as(vh,m0e),Vx=as(vh,"EValidator/PatternMatcher"),YAt,XAt,An,rp,t3,Sb,W4e,K4e,Y4e,Ab,ip,Lb,qw,K1,X4e,Q4e,Qh,sp,Z4e,ap,e3,u5,Ja,J4e,t5e,Hw,sU=as(Yi,"FeatureMap/Entry");D(535,1,{72:1},JR),l.ak=function(){return this.a},l.dd=function(){return this.b},N(Ln,"BasicEObjectImpl/1",535),D(1027,1,nut,DGt),l.Wj=function(e){return Brt(this.a,this.b,e)},l.fj=function(){return hQt(this.a,this.b)},l.Wb=function(e){Dwt(this.a,this.b,e)},l.Xj=function(){Ben(this.a,this.b)},N(Ln,"BasicEObjectImpl/4",1027),D(1983,1,{108:1}),l.bk=function(e){this.e=e==0?e5e:Nt(Qn,Me,1,e,5,1)},l.Ch=function(e){return this.e[e]},l.Dh=function(e,n){this.e[e]=n},l.Eh=function(e){this.e[e]=null},l.ck=function(){return this.c},l.dk=function(){throw nt(new Pr)},l.ek=function(){throw nt(new Pr)},l.fk=function(){return this.d},l.gk=function(){return this.e!=null},l.hk=function(e){this.c=e},l.ik=function(e){throw nt(new Pr)},l.jk=function(e){throw nt(new Pr)},l.kk=function(e){this.d=e};var e5e;N(Ln,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983),D(185,1983,{108:1},ih),l.dk=function(){return this.a},l.ek=function(){return this.b},l.ik=function(e){this.a=e},l.jk=function(e){this.b=e},N(Ln,"BasicEObjectImpl/EPropertiesHolderImpl",185),D(506,97,yde,Tk),l.Kg=function(){return this.f},l.Pg=function(){return this.k},l.Rg=function(e,n){this.g=e,this.i=n},l.Tg=function(){return this.j&2?this.ph().ck():this.zh()},l.Vg=function(){return this.i},l.Mg=function(){return(this.j&1)!=0},l.eh=function(){return this.g},l.kh=function(){return(this.j&4)!=0},l.ph=function(){return!this.k&&(this.k=new ih),this.k},l.th=function(e){this.ph().hk(e),e?this.j|=2:this.j&=-3},l.vh=function(e){this.ph().jk(e),e?this.j|=4:this.j&=-5},l.zh=function(){return(zp(),An).S},l.i=0,l.j=1,N(Ln,"EObjectImpl",506),D(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},Dvt),l.Ch=function(e){return this.e[e]},l.Dh=function(e,n){this.e[e]=n},l.Eh=function(e){this.e[e]=null},l.Tg=function(){return this.d},l.Yg=function(e){return es(this.d,e)},l.$g=function(){return this.d},l.dh=function(){return this.e!=null},l.ph=function(){return!this.k&&(this.k=new ZF),this.k},l.th=function(e){this.d=e},l.yh=function(){var e;return this.e==null&&(e=Jn(this.d),this.e=e==0?n5e:Nt(Qn,Me,1,e,5,1)),this},l.Ah=function(){return 0};var n5e;N(Ln,"DynamicEObjectImpl",780),D(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},UKt),l.Fb=function(e){return this===e},l.Hb=function(){return Dv(this)},l.th=function(e){this.d=e,this.b=gI(e,"key"),this.c=gI(e,YC)},l.Sh=function(){var e;return this.a==-1&&(e=Yrt(this,this.b),this.a=e==null?0:Ji(e)),this.a},l.cd=function(){return Yrt(this,this.b)},l.dd=function(){return Yrt(this,this.c)},l.Th=function(e){this.a=e},l.Uh=function(e){Dwt(this,this.b,e)},l.ed=function(e){var n;return n=Yrt(this,this.c),Dwt(this,this.c,e),n},l.a=0,N(Ln,"DynamicEObjectImpl/BasicEMapEntry",1376),D(1377,1,{108:1},ZF),l.bk=function(e){throw nt(new Pr)},l.Ch=function(e){throw nt(new Pr)},l.Dh=function(e,n){throw nt(new Pr)},l.Eh=function(e){throw nt(new Pr)},l.ck=function(){throw nt(new Pr)},l.dk=function(){return this.a},l.ek=function(){return this.b},l.fk=function(){return this.c},l.gk=function(){throw nt(new Pr)},l.hk=function(e){throw nt(new Pr)},l.ik=function(e){this.a=e},l.jk=function(e){this.b=e},l.kk=function(e){this.c=e},N(Ln,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377),D(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},JF),l.Qg=function(e){return X3t(this,e)},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.d;case 2:return r?(!this.b&&(this.b=new Al((ln(),Ja),pc,this)),this.b):(!this.b&&(this.b=new Al((ln(),Ja),pc,this)),fD(this.b));case 3:return bQt(this);case 4:return!this.a&&(this.a=new Bs(Tb,this,4)),this.a;case 5:return!this.c&&(this.c=new W3(Tb,this,5)),this.c}return hh(this,e-Jn((ln(),rp)),wn((s=u(Mn(this,16),26),s||rp),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 3:return this.Cb&&(r=(o=this.Db>>16,o>=0?X3t(this,r):this.Cb.ih(this,-1-o,null,r))),Wvt(this,u(e,147),r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),rp)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),rp)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 2:return!this.b&&(this.b=new Al((ln(),Ja),pc,this)),kj(this.b,e,r);case 3:return Wvt(this,null,r);case 4:return!this.a&&(this.a=new Bs(Tb,this,4)),za(this.a,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),rp)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),rp)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!bQt(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return uh(this,e-Jn((ln(),rp)),wn((n=u(Mn(this,16),26),n||rp),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:Ctn(this,jr(n));return;case 2:!this.b&&(this.b=new Al((ln(),Ja),pc,this)),lz(this.b,n);return;case 3:Mce(this,u(n,147));return;case 4:!this.a&&(this.a=new Bs(Tb,this,4)),Tr(this.a),!this.a&&(this.a=new Bs(Tb,this,4)),gs(this.a,u(n,14));return;case 5:!this.c&&(this.c=new W3(Tb,this,5)),Tr(this.c),!this.c&&(this.c=new W3(Tb,this,5)),gs(this.c,u(n,14));return}bh(this,e-Jn((ln(),rp)),wn((r=u(Mn(this,16),26),r||rp),e),n)},l.zh=function(){return ln(),rp},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:Qmt(this,null);return;case 2:!this.b&&(this.b=new Al((ln(),Ja),pc,this)),this.b.c.$b();return;case 3:Mce(this,null);return;case 4:!this.a&&(this.a=new Bs(Tb,this,4)),Tr(this.a);return;case 5:!this.c&&(this.c=new W3(Tb,this,5)),Tr(this.c);return}gh(this,e-Jn((ln(),rp)),wn((n=u(Mn(this,16),26),n||rp),e))},l.Ib=function(){return Gre(this)},l.d=null,N(Ln,"EAnnotationImpl",510),D(151,705,L8t,Il),l.Xh=function(e,n){cXe(this,e,u(n,42))},l.lk=function(e,n){return nZe(this,u(e,42),n)},l.pi=function(e){return u(u(this.c,69).pi(e),133)},l.Zh=function(){return u(this.c,69).Zh()},l.$h=function(){return u(this.c,69).$h()},l._h=function(e){return u(this.c,69)._h(e)},l.mk=function(e,n){return kj(this,e,n)},l.Wj=function(e){return u(this.c,76).Wj(e)},l.rj=function(){},l.fj=function(){return u(this.c,76).fj()},l.tj=function(e,n,r){var s;return s=u(zl(this.b).Nh().Jh(this.b),133),s.Th(e),s.Uh(n),s.ed(r),s},l.uj=function(){return new bpt(this)},l.Wb=function(e){lz(this,e)},l.Xj=function(){u(this.c,76).Xj()},N(Yi,"EcoreEMap",151),D(158,151,L8t,Al),l.qj=function(){var e,n,r,s,o,h;if(this.d==null){for(h=Nt($At,A8t,63,2*this.f+1,0,1),r=this.c.Kc();r.e!=r.i.gc();)n=u(r.nj(),133),s=n.Sh(),o=(s&Ti)%h.length,e=h[o],!e&&(e=h[o]=new bpt(this)),e.Fc(n);this.d=h}},N(Ln,"EAnnotationImpl/1",158),D(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),l._g=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),!!this.$j();case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r)}return o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r)},l.lh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0)}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:this.Lh(jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:this.ok(u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),t5e},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:this.Lh(null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:this.ok(1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.Gh=function(){Oh(this),this.Bb|=1},l.Yj=function(){return Oh(this)},l.Zj=function(){return this.t},l.$j=function(){var e;return e=this.t,e>1||e==-1},l.hi=function(){return(this.Bb&512)!=0},l.nk=function(e,n){return Gyt(this,e,n)},l.ok=function(e){ty(this,e)},l.Ib=function(){return n5t(this)},l.s=0,l.t=1,N(Ln,"ETypedElementImpl",284),D(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),l.Qg=function(e){return Sse(this,e)},l._g=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),!!this.$j();case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return Fn(),!!(this.Bb&xf);case 11:return Fn(),!!(this.Bb&Ay);case 12:return Fn(),!!(this.Bb&yy);case 13:return this.j;case 14:return v7(this);case 15:return Fn(),!!(this.Bb&Ku);case 16:return Fn(),!!(this.Bb&vd);case 17:return Gm(this)}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 17:return this.Cb&&(r=(o=this.Db>>16,o>=0?Sse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,17,r)}return h=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),h.Nj().Qj(this,uu(this),n-Jn(this.zh()),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r);case 17:return Ul(this,null,17,r)}return o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r)},l.lh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return(this.Bb&xf)==0;case 11:return(this.Bb&Ay)!=0;case 12:return(this.Bb&yy)!=0;case 13:return this.j!=null;case 14:return v7(this)!=null;case 15:return(this.Bb&Ku)!=0;case 16:return(this.Bb&vd)!=0;case 17:return!!Gm(this)}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:xrt(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:this.ok(u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 10:t7(this,Be(Fe(n)));return;case 11:r7(this,Be(Fe(n)));return;case 12:e7(this,Be(Fe(n)));return;case 13:Wbt(this,jr(n));return;case 15:n7(this,Be(Fe(n)));return;case 16:i7(this,Be(Fe(n)));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),J4e},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),4),tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:this.ok(1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 10:t7(this,!0);return;case 11:r7(this,!1);return;case 12:e7(this,!1);return;case 13:this.i=null,ez(this,null);return;case 15:n7(this,!1);return;case 16:i7(this,!1);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.Gh=function(){y8(Mo((Gu(),Sa),this)),Oh(this),this.Bb|=1},l.Gj=function(){return this.f},l.zj=function(){return v7(this)},l.Hj=function(){return Gm(this)},l.Lj=function(){return null},l.pk=function(){return this.k},l.aj=function(){return this.n},l.Mj=function(){return Qz(this)},l.Nj=function(){var e,n,r,s,o,h,d,w,k;return this.p||(r=Gm(this),(r.i==null&&bd(r),r.i).length,s=this.Lj(),s&&Jn(Gm(s)),o=Oh(this),d=o.Bj(),e=d?d.i&1?d==xl?Ws:d==Sr?Ha:d==r3?K7:d==ga?wa:d==Db?Tw:d==d5?_w:d==Xu?kx:aS:d:null,n=v7(this),w=o.zj(),aln(this),this.Bb&vd&&((h=r4t((Gu(),Sa),r))&&h!=this||(h=z6(Mo(Sa,this))))?this.p=new OGt(this,h):this.$j()?this.rk()?s?this.Bb&Ku?e?this.sk()?this.p=new t2(47,e,this,s):this.p=new t2(5,e,this,s):this.sk()?this.p=new r2(46,this,s):this.p=new r2(4,this,s):e?this.sk()?this.p=new t2(49,e,this,s):this.p=new t2(7,e,this,s):this.sk()?this.p=new r2(48,this,s):this.p=new r2(6,this,s):this.Bb&Ku?e?e==I2?this.p=new Lg(50,P4e,this):this.sk()?this.p=new Lg(43,e,this):this.p=new Lg(1,e,this):this.sk()?this.p=new Dg(42,this):this.p=new Dg(0,this):e?e==I2?this.p=new Lg(41,P4e,this):this.sk()?this.p=new Lg(45,e,this):this.p=new Lg(3,e,this):this.sk()?this.p=new Dg(44,this):this.p=new Dg(2,this):_t(o,148)?e==sU?this.p=new Dg(40,this):this.Bb&512?this.Bb&Ku?e?this.p=new Lg(9,e,this):this.p=new Dg(8,this):e?this.p=new Lg(11,e,this):this.p=new Dg(10,this):this.Bb&Ku?e?this.p=new Lg(13,e,this):this.p=new Dg(12,this):e?this.p=new Lg(15,e,this):this.p=new Dg(14,this):s?(k=s.t,k>1||k==-1?this.sk()?this.Bb&Ku?e?this.p=new t2(25,e,this,s):this.p=new r2(24,this,s):e?this.p=new t2(27,e,this,s):this.p=new r2(26,this,s):this.Bb&Ku?e?this.p=new t2(29,e,this,s):this.p=new r2(28,this,s):e?this.p=new t2(31,e,this,s):this.p=new r2(30,this,s):this.sk()?this.Bb&Ku?e?this.p=new t2(33,e,this,s):this.p=new r2(32,this,s):e?this.p=new t2(35,e,this,s):this.p=new r2(34,this,s):this.Bb&Ku?e?this.p=new t2(37,e,this,s):this.p=new r2(36,this,s):e?this.p=new t2(39,e,this,s):this.p=new r2(38,this,s)):this.sk()?this.Bb&Ku?e?this.p=new Lg(17,e,this):this.p=new Dg(16,this):e?this.p=new Lg(19,e,this):this.p=new Dg(18,this):this.Bb&Ku?e?this.p=new Lg(21,e,this):this.p=new Dg(20,this):e?this.p=new Lg(23,e,this):this.p=new Dg(22,this):this.qk()?this.sk()?this.p=new yKt(u(o,26),this,s):this.p=new Mwt(u(o,26),this,s):_t(o,148)?e==sU?this.p=new Dg(40,this):this.Bb&Ku?e?this.p=new wYt(n,w,this,(Kit(),d==Sr?rLt:d==xl?ZAt:d==Db?iLt:d==r3?nLt:d==ga?eLt:d==d5?sLt:d==Xu?JAt:d==Eh?tLt:Mft)):this.p=new MXt(u(o,148),n,w,this):e?this.p=new vYt(n,w,this,(Kit(),d==Sr?rLt:d==xl?ZAt:d==Db?iLt:d==r3?nLt:d==ga?eLt:d==d5?sLt:d==Xu?JAt:d==Eh?tLt:Mft)):this.p=new LXt(u(o,148),n,w,this):this.rk()?s?this.Bb&Ku?this.sk()?this.p=new kKt(u(o,26),this,s):this.p=new xvt(u(o,26),this,s):this.sk()?this.p=new xKt(u(o,26),this,s):this.p=new Ent(u(o,26),this,s):this.Bb&Ku?this.sk()?this.p=new vWt(u(o,26),this):this.p=new P2t(u(o,26),this):this.sk()?this.p=new bWt(u(o,26),this):this.p=new unt(u(o,26),this):this.sk()?s?this.Bb&Ku?this.p=new EKt(u(o,26),this,s):this.p=new mvt(u(o,26),this,s):this.Bb&Ku?this.p=new wWt(u(o,26),this):this.p=new F2t(u(o,26),this):s?this.Bb&Ku?this.p=new TKt(u(o,26),this,s):this.p=new yvt(u(o,26),this,s):this.Bb&Ku?this.p=new mWt(u(o,26),this):this.p=new Pj(u(o,26),this)),this.p},l.Ij=function(){return(this.Bb&xf)!=0},l.qk=function(){return!1},l.rk=function(){return!1},l.Jj=function(){return(this.Bb&vd)!=0},l.Oj=function(){return Qrt(this)},l.sk=function(){return!1},l.Kj=function(){return(this.Bb&Ku)!=0},l.tk=function(e){this.k=e},l.Lh=function(e){xrt(this,e)},l.Ib=function(){return pq(this)},l.e=!1,l.n=0,N(Ln,"EStructuralFeatureImpl",449),D(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},Ktt),l._g=function(e,n,r){var s,o;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),!!Z4t(this);case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return Fn(),!!(this.Bb&xf);case 11:return Fn(),!!(this.Bb&Ay);case 12:return Fn(),!!(this.Bb&yy);case 13:return this.j;case 14:return v7(this);case 15:return Fn(),!!(this.Bb&Ku);case 16:return Fn(),!!(this.Bb&vd);case 17:return Gm(this);case 18:return Fn(),!!(this.Bb&yc);case 19:return n?pit(this):MJt(this)}return hh(this,e-Jn((ln(),t3)),wn((s=u(Mn(this,16),26),s||t3),e),n,r)},l.lh=function(e){var n,r;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return Z4t(this);case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return(this.Bb&xf)==0;case 11:return(this.Bb&Ay)!=0;case 12:return(this.Bb&yy)!=0;case 13:return this.j!=null;case 14:return v7(this)!=null;case 15:return(this.Bb&Ku)!=0;case 16:return(this.Bb&vd)!=0;case 17:return!!Gm(this);case 18:return(this.Bb&yc)!=0;case 19:return!!MJt(this)}return uh(this,e-Jn((ln(),t3)),wn((n=u(Mn(this,16),26),n||t3),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:xrt(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:cHt(this,u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 10:t7(this,Be(Fe(n)));return;case 11:r7(this,Be(Fe(n)));return;case 12:e7(this,Be(Fe(n)));return;case 13:Wbt(this,jr(n));return;case 15:n7(this,Be(Fe(n)));return;case 16:i7(this,Be(Fe(n)));return;case 18:$it(this,Be(Fe(n)));return}bh(this,e-Jn((ln(),t3)),wn((r=u(Mn(this,16),26),r||t3),e),n)},l.zh=function(){return ln(),t3},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),4),tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:this.b=0,ty(this,1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 10:t7(this,!0);return;case 11:r7(this,!1);return;case 12:e7(this,!1);return;case 13:this.i=null,ez(this,null);return;case 15:n7(this,!1);return;case 16:i7(this,!1);return;case 18:$it(this,!1);return}gh(this,e-Jn((ln(),t3)),wn((n=u(Mn(this,16),26),n||t3),e))},l.Gh=function(){pit(this),y8(Mo((Gu(),Sa),this)),Oh(this),this.Bb|=1},l.$j=function(){return Z4t(this)},l.nk=function(e,n){return this.b=0,this.a=null,Gyt(this,e,n)},l.ok=function(e){cHt(this,e)},l.Ib=function(){var e;return this.Db&64?pq(this):(e=new Ah(pq(this)),e.a+=" (iD: ",Cg(e,(this.Bb&yc)!=0),e.a+=")",e.a)},l.b=0,N(Ln,"EAttributeImpl",322),D(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),l.uk=function(e){return e.Tg()==this},l.Qg=function(e){return yst(this,e)},l.Rg=function(e,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=e},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return cw(this);case 4:return this.zj();case 5:return this.F;case 6:return n?zl(this):E8(this);case 7:return!this.A&&(this.A=new $u(pu,this,7)),this.A}return hh(this,e-Jn(this.zh()),wn((s=u(Mn(this,16),26),s||this.zh()),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?yst(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,6,r)}return h=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),h.Nj().Qj(this,uu(this),n-Jn(this.zh()),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 6:return Ul(this,null,6,r);case 7:return!this.A&&(this.A=new $u(pu,this,7)),za(this.A,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||this.zh()),n),66),o.Nj().Rj(this,uu(this),n-Jn(this.zh()),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!cw(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!E8(this);case 7:return!!this.A&&this.A.i!=0}return uh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:p$(this,jr(n));return;case 2:Xet(this,jr(n));return;case 5:E7(this,jr(n));return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A),!this.A&&(this.A=new $u(pu,this,7)),gs(this.A,u(n,14));return}bh(this,e-Jn(this.zh()),wn((r=u(Mn(this,16),26),r||this.zh()),e),n)},l.zh=function(){return ln(),W4e},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,179)&&(u(this.Cb,179).tb=null),tu(this,null);return;case 2:X8(this,null),R8(this,this.D);return;case 5:E7(this,null);return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A);return}gh(this,e-Jn(this.zh()),wn((n=u(Mn(this,16),26),n||this.zh()),e))},l.yj=function(){var e;return this.G==-1&&(this.G=(e=zl(this),e?$g(e.Mh(),this):-1)),this.G},l.zj=function(){return null},l.Aj=function(){return zl(this)},l.vk=function(){return this.v},l.Bj=function(){return cw(this)},l.Cj=function(){return this.D!=null?this.D:this.B},l.Dj=function(){return this.F},l.wj=function(e){return fat(this,e)},l.wk=function(e){this.v=e},l.xk=function(e){ane(this,e)},l.yk=function(e){this.C=e},l.Lh=function(e){p$(this,e)},l.Ib=function(){return Sz(this)},l.C=null,l.D=null,l.G=-1,N(Ln,"EClassifierImpl",351),D(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},XL),l.uk=function(e){return qQe(this,e.Tg())},l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return cw(this);case 4:return null;case 5:return this.F;case 6:return n?zl(this):E8(this);case 7:return!this.A&&(this.A=new $u(pu,this,7)),this.A;case 8:return Fn(),!!(this.Bb&256);case 9:return Fn(),!!(this.Bb&512);case 10:return Po(this);case 11:return!this.q&&(this.q=new he(Yh,this,11,10)),this.q;case 12:return E4(this);case 13:return kC(this);case 14:return kC(this),this.r;case 15:return E4(this),this.k;case 16:return q4t(this);case 17:return vat(this);case 18:return bd(this);case 19:return cq(this);case 20:return E4(this),this.o;case 21:return!this.s&&(this.s=new he(Nu,this,21,17)),this.s;case 22:return Oc(this);case 23:return nat(this)}return hh(this,e-Jn((ln(),Sb)),wn((s=u(Mn(this,16),26),s||Sb),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 6:return this.Cb&&(r=(o=this.Db>>16,o>=0?yst(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,6,r);case 11:return!this.q&&(this.q=new he(Yh,this,11,10)),eu(this.q,e,r);case 21:return!this.s&&(this.s=new he(Nu,this,21,17)),eu(this.s,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),Sb)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),Sb)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 6:return Ul(this,null,6,r);case 7:return!this.A&&(this.A=new $u(pu,this,7)),za(this.A,e,r);case 11:return!this.q&&(this.q=new he(Yh,this,11,10)),za(this.q,e,r);case 21:return!this.s&&(this.s=new he(Nu,this,21,17)),za(this.s,e,r);case 22:return za(Oc(this),e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Sb)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Sb)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!cw(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!E8(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&Oc(this.u.a).i!=0&&!(this.n&&ust(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return E4(this).i!=0;case 13:return kC(this).i!=0;case 14:return kC(this),this.r.i!=0;case 15:return E4(this),this.k.i!=0;case 16:return q4t(this).i!=0;case 17:return vat(this).i!=0;case 18:return bd(this).i!=0;case 19:return cq(this).i!=0;case 20:return E4(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&ust(this.n);case 23:return nat(this).i!=0}return uh(this,e-Jn((ln(),Sb)),wn((n=u(Mn(this,16),26),n||Sb),e))},l.oh=function(e){var n;return n=this.i==null||this.q&&this.q.i!=0?null:gI(this,e),n||m6t(this,e)},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:p$(this,jr(n));return;case 2:Xet(this,jr(n));return;case 5:E7(this,jr(n));return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A),!this.A&&(this.A=new $u(pu,this,7)),gs(this.A,u(n,14));return;case 8:Wyt(this,Be(Fe(n)));return;case 9:Kyt(this,Be(Fe(n)));return;case 10:_C(Po(this)),gs(Po(this),u(n,14));return;case 11:!this.q&&(this.q=new he(Yh,this,11,10)),Tr(this.q),!this.q&&(this.q=new he(Yh,this,11,10)),gs(this.q,u(n,14));return;case 21:!this.s&&(this.s=new he(Nu,this,21,17)),Tr(this.s),!this.s&&(this.s=new he(Nu,this,21,17)),gs(this.s,u(n,14));return;case 22:Tr(Oc(this)),gs(Oc(this),u(n,14));return}bh(this,e-Jn((ln(),Sb)),wn((r=u(Mn(this,16),26),r||Sb),e),n)},l.zh=function(){return ln(),Sb},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,179)&&(u(this.Cb,179).tb=null),tu(this,null);return;case 2:X8(this,null),R8(this,this.D);return;case 5:E7(this,null);return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A);return;case 8:Wyt(this,!1);return;case 9:Kyt(this,!1);return;case 10:this.u&&_C(this.u);return;case 11:!this.q&&(this.q=new he(Yh,this,11,10)),Tr(this.q);return;case 21:!this.s&&(this.s=new he(Nu,this,21,17)),Tr(this.s);return;case 22:this.n&&Tr(this.n);return}gh(this,e-Jn((ln(),Sb)),wn((n=u(Mn(this,16),26),n||Sb),e))},l.Gh=function(){var e,n;if(E4(this),kC(this),q4t(this),vat(this),bd(this),cq(this),nat(this),R_(stn(hl(this))),this.s)for(e=0,n=this.s.i;e=0;--n)At(this,n);return b3t(this,e)},l.Xj=function(){Tr(this)},l.oi=function(e,n){return Lee(this,e,n)},N(Yi,"EcoreEList",622),D(496,622,Ko,WM),l.ai=function(){return!1},l.aj=function(){return this.c},l.bj=function(){return!1},l.Fk=function(){return!0},l.hi=function(){return!0},l.li=function(e,n){return n},l.ni=function(){return!1},l.c=0,N(Yi,"EObjectEList",496),D(85,496,Ko,Bs),l.bj=function(){return!0},l.Dk=function(){return!1},l.rk=function(){return!0},N(Yi,"EObjectContainmentEList",85),D(545,85,Ko,hj),l.ci=function(){this.b=!0},l.fj=function(){return this.b},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.b,this.b=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.b=!1},l.b=!1,N(Yi,"EObjectContainmentEList/Unsettable",545),D(1140,545,Ko,pYt),l.ii=function(e,n){var r,s;return r=u(tC(this,e,n),87),Sl(this.e)&&Uk(this,new gD(this.a,7,(ln(),K4e),de(n),(s=r.c,_t(s,88)?u(s,26):Qh),e)),r},l.jj=function(e,n){return Wln(this,u(e,87),n)},l.kj=function(e,n){return Uln(this,u(e,87),n)},l.lj=function(e,n,r){return K1n(this,u(e,87),u(n,87),r)},l.Zi=function(e,n,r,s,o){switch(e){case 3:return I_(this,e,n,r,s,this.i>1);case 5:return I_(this,e,n,r,s,this.i-u(r,15).gc()>0);default:return new F0(this.e,e,this.c,n,r,s,!0)}},l.ij=function(){return!0},l.fj=function(){return ust(this)},l.Xj=function(){Tr(this)},N(Ln,"EClassImpl/1",1140),D(1154,1153,S8t),l.ui=function(e){var n,r,s,o,h,d,w;if(r=e.xi(),r!=8){if(s=Mhn(e),s==0)switch(r){case 1:case 9:{w=e.Bi(),w!=null&&(n=hl(u(w,473)),!n.c&&(n.c=new xm),j$(n.c,e.Ai())),d=e.zi(),d!=null&&(o=u(d,473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),Or(n.c,u(e.Ai(),26))));break}case 3:{d=e.zi(),d!=null&&(o=u(d,473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),Or(n.c,u(e.Ai(),26))));break}case 5:{if(d=e.zi(),d!=null)for(h=u(d,14).Kc();h.Ob();)o=u(h.Pb(),473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),Or(n.c,u(e.Ai(),26)));break}case 4:{w=e.Bi(),w!=null&&(o=u(w,473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),j$(n.c,e.Ai())));break}case 6:{if(w=e.Bi(),w!=null)for(h=u(w,14).Kc();h.Ob();)o=u(h.Pb(),473),o.Bb&1||(n=hl(o),!n.c&&(n.c=new xm),j$(n.c,e.Ai()));break}}this.Hk(s)}},l.Hk=function(e){gue(this,e)},l.b=63,N(Ln,"ESuperAdapter",1154),D(1155,1154,S8t,Szt),l.Hk=function(e){hy(this,e)},N(Ln,"EClassImpl/10",1155),D(1144,696,Ko),l.Vh=function(e,n){return Dst(this,e,n)},l.Wh=function(e){return lse(this,e)},l.Xh=function(e,n){zD(this,e,n)},l.Yh=function(e){uD(this,e)},l.pi=function(e){return _mt(this,e)},l.mi=function(e,n){return Xrt(this,e,n)},l.lk=function(e,n){throw nt(new Pr)},l.Zh=function(){return new L6(this)},l.$h=function(){return new PM(this)},l._h=function(e){return CD(this,e)},l.mk=function(e,n){throw nt(new Pr)},l.Wj=function(e){return this},l.fj=function(){return this.i!=0},l.Wb=function(e){throw nt(new Pr)},l.Xj=function(){throw nt(new Pr)},N(Yi,"EcoreEList/UnmodifiableEList",1144),D(319,1144,Ko,H3),l.ni=function(){return!1},N(Yi,"EcoreEList/UnmodifiableEList/FastCompare",319),D(1147,319,Ko,Zne),l.Xc=function(e){var n,r,s;if(_t(e,170)&&(n=u(e,170),r=n.aj(),r!=-1)){for(s=this.i;r4)if(this.wj(e)){if(this.rk()){if(s=u(e,49),r=s.Ug(),w=r==this.b&&(this.Dk()?s.Og(s.Vg(),u(wn(ku(this.b),this.aj()).Yj(),26).Bj())==oo(u(wn(ku(this.b),this.aj()),18)).n:-1-s.Vg()==this.aj()),this.Ek()&&!w&&!r&&s.Zg()){for(o=0;o1||s==-1)):!1},l.Dk=function(){var e,n,r;return n=wn(ku(this.b),this.aj()),_t(n,99)?(e=u(n,18),r=oo(e),!!r):!1},l.Ek=function(){var e,n;return n=wn(ku(this.b),this.aj()),_t(n,99)?(e=u(n,18),(e.Bb&Qa)!=0):!1},l.Xc=function(e){var n,r,s,o;if(s=this.Qi(e),s>=0)return s;if(this.Fk()){for(r=0,o=this.Vi();r=0;--e)EI(this,e,this.Oi(e));return this.Wi()},l.Qc=function(e){var n;if(this.Ek())for(n=this.Vi()-1;n>=0;--n)EI(this,n,this.Oi(n));return this.Xi(e)},l.Xj=function(){_C(this)},l.oi=function(e,n){return dte(this,e,n)},N(Yi,"DelegatingEcoreEList",742),D(1150,742,D8t,MWt),l.Hi=function(e,n){bQe(this,e,u(n,26))},l.Ii=function(e){lXe(this,u(e,26))},l.Oi=function(e){var n,r;return n=u(At(Oc(this.a),e),87),r=n.c,_t(r,88)?u(r,26):(ln(),Qh)},l.Ti=function(e){var n,r;return n=u(dy(Oc(this.a),e),87),r=n.c,_t(r,88)?u(r,26):(ln(),Qh)},l.Ui=function(e,n){return vfn(this,e,u(n,26))},l.ai=function(){return!1},l.Zi=function(e,n,r,s,o){return null},l.Ji=function(){return new Lzt(this)},l.Ki=function(){Tr(Oc(this.a))},l.Li=function(e){return Hre(this,e)},l.Mi=function(e){var n,r;for(r=e.Kc();r.Ob();)if(n=r.Pb(),!Hre(this,n))return!1;return!0},l.Ni=function(e){var n,r,s;if(_t(e,15)&&(s=u(e,15),s.gc()==Oc(this.a).i)){for(n=s.Kc(),r=new nr(this);n.Ob();)if(Gt(n.Pb())!==Gt(dr(r)))return!1;return!0}return!1},l.Pi=function(){var e,n,r,s,o;for(r=1,n=new nr(Oc(this.a));n.e!=n.i.gc();)e=u(dr(n),87),s=(o=e.c,_t(o,88)?u(o,26):(ln(),Qh)),r=31*r+(s?Dv(s):0);return r},l.Qi=function(e){var n,r,s,o;for(s=0,r=new nr(Oc(this.a));r.e!=r.i.gc();){if(n=u(dr(r),87),Gt(e)===Gt((o=n.c,_t(o,88)?u(o,26):(ln(),Qh))))return s;++s}return-1},l.Ri=function(){return Oc(this.a).i==0},l.Si=function(){return null},l.Vi=function(){return Oc(this.a).i},l.Wi=function(){var e,n,r,s,o,h;for(h=Oc(this.a).i,o=Nt(Qn,Me,1,h,5,1),r=0,n=new nr(Oc(this.a));n.e!=n.i.gc();)e=u(dr(n),87),o[r++]=(s=e.c,_t(s,88)?u(s,26):(ln(),Qh));return o},l.Xi=function(e){var n,r,s,o,h,d,w;for(w=Oc(this.a).i,e.lengthw&&ls(e,w,null),s=0,r=new nr(Oc(this.a));r.e!=r.i.gc();)n=u(dr(r),87),h=(d=n.c,_t(d,88)?u(d,26):(ln(),Qh)),ls(e,s++,h);return e},l.Yi=function(){var e,n,r,s,o;for(o=new _g,o.a+="[",e=Oc(this.a),n=0,s=Oc(this.a).i;n>16,o>=0?yst(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,6,r);case 9:return!this.a&&(this.a=new he(eg,this,9,5)),eu(this.a,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),Ab)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),Ab)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 6:return Ul(this,null,6,r);case 7:return!this.A&&(this.A=new $u(pu,this,7)),za(this.A,e,r);case 9:return!this.a&&(this.a=new he(eg,this,9,5)),za(this.a,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Ab)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Ab)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!cw(this);case 4:return!!Oyt(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!E8(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return uh(this,e-Jn((ln(),Ab)),wn((n=u(Mn(this,16),26),n||Ab),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:p$(this,jr(n));return;case 2:Xet(this,jr(n));return;case 5:E7(this,jr(n));return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A),!this.A&&(this.A=new $u(pu,this,7)),gs(this.A,u(n,14));return;case 8:xz(this,Be(Fe(n)));return;case 9:!this.a&&(this.a=new he(eg,this,9,5)),Tr(this.a),!this.a&&(this.a=new he(eg,this,9,5)),gs(this.a,u(n,14));return}bh(this,e-Jn((ln(),Ab)),wn((r=u(Mn(this,16),26),r||Ab),e),n)},l.zh=function(){return ln(),Ab},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,179)&&(u(this.Cb,179).tb=null),tu(this,null);return;case 2:X8(this,null),R8(this,this.D);return;case 5:E7(this,null);return;case 7:!this.A&&(this.A=new $u(pu,this,7)),Tr(this.A);return;case 8:xz(this,!0);return;case 9:!this.a&&(this.a=new he(eg,this,9,5)),Tr(this.a);return}gh(this,e-Jn((ln(),Ab)),wn((n=u(Mn(this,16),26),n||Ab),e))},l.Gh=function(){var e,n;if(this.a)for(e=0,n=this.a.i;e>16==5?u(this.Cb,671):null}return hh(this,e-Jn((ln(),ip)),wn((s=u(Mn(this,16),26),s||ip),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 5:return this.Cb&&(r=(o=this.Db>>16,o>=0?Pse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,5,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),ip)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),ip)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 5:return Ul(this,null,5,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),ip)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),ip)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&u(this.Cb,671))}return uh(this,e-Jn((ln(),ip)),wn((n=u(Mn(this,16),26),n||ip),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:nit(this,u(n,19).a);return;case 3:Moe(this,u(n,1940));return;case 4:iit(this,jr(n));return}bh(this,e-Jn((ln(),ip)),wn((r=u(Mn(this,16),26),r||ip),e),n)},l.zh=function(){return ln(),ip},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:nit(this,0);return;case 3:Moe(this,null);return;case 4:iit(this,null);return}gh(this,e-Jn((ln(),ip)),wn((n=u(Mn(this,16),26),n||ip),e))},l.Ib=function(){var e;return e=this.c,e??this.zb},l.b=null,l.c=null,l.d=0,N(Ln,"EEnumLiteralImpl",573);var k6n=as(Ln,"EFactoryImpl/InternalEDateTimeFormat");D(489,1,{2015:1},oM),N(Ln,"EFactoryImpl/1ClientInternalEDateTimeFormat",489),D(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},wv),l.Sg=function(e,n,r){var s;return r=Ul(this,e,n,r),this.e&&_t(e,170)&&(s=oq(this,this.e),s!=this.c&&(r=T7(this,s,r))),r},l._g=function(e,n,r){var s;switch(e){case 0:return this.f;case 1:return!this.d&&(this.d=new Bs(wo,this,1)),this.d;case 2:return n?wq(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?fst(this):this.a}return hh(this,e-Jn((ln(),qw)),wn((s=u(Mn(this,16),26),s||qw),e),n,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return Ore(this,null,r);case 1:return!this.d&&(this.d=new Bs(wo,this,1)),za(this.d,e,r);case 3:return Ire(this,null,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),qw)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),qw)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return uh(this,e-Jn((ln(),qw)),wn((n=u(Mn(this,16),26),n||qw),e))},l.sh=function(e,n){var r;switch(e){case 0:Jse(this,u(n,87));return;case 1:!this.d&&(this.d=new Bs(wo,this,1)),Tr(this.d),!this.d&&(this.d=new Bs(wo,this,1)),gs(this.d,u(n,14));return;case 3:f4t(this,u(n,87));return;case 4:L4t(this,u(n,836));return;case 5:O8(this,u(n,138));return}bh(this,e-Jn((ln(),qw)),wn((r=u(Mn(this,16),26),r||qw),e),n)},l.zh=function(){return ln(),qw},l.Bh=function(e){var n;switch(e){case 0:Jse(this,null);return;case 1:!this.d&&(this.d=new Bs(wo,this,1)),Tr(this.d);return;case 3:f4t(this,null);return;case 4:L4t(this,null);return;case 5:O8(this,null);return}gh(this,e-Jn((ln(),qw)),wn((n=u(Mn(this,16),26),n||qw),e))},l.Ib=function(){var e;return e=new Fl(mf(this)),e.a+=" (expression: ",xat(this,e),e.a+=")",e.a};var QAt;N(Ln,"EGenericTypeImpl",241),D(1969,1964,_H),l.Xh=function(e,n){SWt(this,e,n)},l.lk=function(e,n){return SWt(this,this.gc(),e),n},l.pi=function(e){return e1(this.Gi(),e)},l.Zh=function(){return this.$h()},l.Gi=function(){return new Ozt(this)},l.$h=function(){return this._h(0)},l._h=function(e){return this.Gi().Zc(e)},l.mk=function(e,n){return ry(this,e,!0),n},l.ii=function(e,n){var r,s;return s=kst(this,n),r=this.Zc(e),r.Rb(s),s},l.ji=function(e,n){var r;ry(this,n,!0),r=this.Zc(e),r.Rb(n)},N(Yi,"AbstractSequentialInternalEList",1969),D(486,1969,_H,NM),l.pi=function(e){return e1(this.Gi(),e)},l.Zh=function(){return this.b==null?(Sg(),Sg(),hN):this.Jk()},l.Gi=function(){return new ZGt(this.a,this.b)},l.$h=function(){return this.b==null?(Sg(),Sg(),hN):this.Jk()},l._h=function(e){var n,r;if(this.b==null){if(e<0||e>1)throw nt(new Co(XC+e+", size=0"));return Sg(),Sg(),hN}for(r=this.Jk(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.Gj()!=LE||n.aj()!=0)&&(!this.Mk()||this.b.mh(n))){if(h=this.b.bh(n,this.Lk()),this.f=(so(),u(n,66).Oj()),this.f||n.$j()){if(this.Lk()?(s=u(h,15),this.k=s):(s=u(h,69),this.k=this.j=s),_t(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?Gae(this,this.p):roe(this))return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(e=u(o,72),e.ak(),r=e.dd(),this.i=r):(r=o,this.i=r),this.g=-3,!0}else if(h!=null)return this.k=null,this.p=null,r=h,this.i=r,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(e=u(o,72),e.ak(),r=e.dd(),this.i=r):(r=o,this.i=r),this.g=-3,!0}},l.Pb=function(){return hz(this)},l.Tb=function(){return this.a},l.Ub=function(){var e;if(this.g<-1||this.Sb())return--this.a,this.g=0,e=this.i,this.Sb(),e;throw nt(new vc)},l.Vb=function(){return this.a-1},l.Qb=function(){throw nt(new Pr)},l.Lk=function(){return!1},l.Wb=function(e){throw nt(new Pr)},l.Mk=function(){return!0},l.a=0,l.d=0,l.f=!1,l.g=0,l.n=0,l.o=0;var hN;N(Yi,"EContentsEList/FeatureIteratorImpl",279),D(697,279,CH,N2t),l.Lk=function(){return!0},N(Yi,"EContentsEList/ResolvingFeatureIteratorImpl",697),D(1157,697,CH,pWt),l.Mk=function(){return!1},N(Ln,"ENamedElementImpl/1/1",1157),D(1158,279,CH,gWt),l.Mk=function(){return!1},N(Ln,"ENamedElementImpl/1/2",1158),D(36,143,QI,Km,Lrt,oa,Vrt,F0,bf,Rmt,HQt,jmt,VQt,umt,GQt,qmt,UQt,lmt,WQt,$mt,KQt,__,gD,ort,zmt,YQt,hmt,XQt),l._i=function(){return kmt(this)},l.gj=function(){var e;return e=kmt(this),e?e.zj():null},l.yi=function(e){return this.b==-1&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,e)},l.Ai=function(){return this.c},l.hj=function(){var e;return e=kmt(this),e?e.Kj():!1},l.b=-1,N(Ln,"ENotificationImpl",36),D(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},Ytt),l.Qg=function(e){return Rse(this,e)},l._g=function(e,n,r){var s,o,h;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),h=this.t,h>1||h==-1;case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?u(this.Cb,26):null;case 11:return!this.d&&(this.d=new $u(pu,this,11)),this.d;case 12:return!this.c&&(this.c=new he(zw,this,12,10)),this.c;case 13:return!this.a&&(this.a=new $M(this,this)),this.a;case 14:return fl(this)}return hh(this,e-Jn((ln(),sp)),wn((s=u(Mn(this,16),26),s||sp),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 10:return this.Cb&&(r=(o=this.Db>>16,o>=0?Rse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,10,r);case 12:return!this.c&&(this.c=new he(zw,this,12,10)),eu(this.c,e,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),sp)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),sp)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r);case 10:return Ul(this,null,10,r);case 11:return!this.d&&(this.d=new $u(pu,this,11)),za(this.d,e,r);case 12:return!this.c&&(this.c=new he(zw,this,12,10)),za(this.c,e,r);case 14:return za(fl(this),e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),sp)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),sp)),e,r)},l.lh=function(e){var n,r,s;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return s=this.t,s>1||s==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return!!(this.Db>>16==10&&u(this.Cb,26));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&fl(this.a.a).i!=0&&!(this.b&&lst(this.b));case 14:return!!this.b&&lst(this.b)}return uh(this,e-Jn((ln(),sp)),wn((n=u(Mn(this,16),26),n||sp),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:ty(this,u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 11:!this.d&&(this.d=new $u(pu,this,11)),Tr(this.d),!this.d&&(this.d=new $u(pu,this,11)),gs(this.d,u(n,14));return;case 12:!this.c&&(this.c=new he(zw,this,12,10)),Tr(this.c),!this.c&&(this.c=new he(zw,this,12,10)),gs(this.c,u(n,14));return;case 13:!this.a&&(this.a=new $M(this,this)),_C(this.a),!this.a&&(this.a=new $M(this,this)),gs(this.a,u(n,14));return;case 14:Tr(fl(this)),gs(fl(this),u(n,14));return}bh(this,e-Jn((ln(),sp)),wn((r=u(Mn(this,16),26),r||sp),e),n)},l.zh=function(){return ln(),sp},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:ty(this,1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 11:!this.d&&(this.d=new $u(pu,this,11)),Tr(this.d);return;case 12:!this.c&&(this.c=new he(zw,this,12,10)),Tr(this.c);return;case 13:this.a&&_C(this.a);return;case 14:this.b&&Tr(this.b);return}gh(this,e-Jn((ln(),sp)),wn((n=u(Mn(this,16),26),n||sp),e))},l.Gh=function(){var e,n;if(this.c)for(e=0,n=this.c.i;ew&&ls(e,w,null),s=0,r=new nr(fl(this.a));r.e!=r.i.gc();)n=u(dr(r),87),h=(d=n.c,d||(ln(),K1)),ls(e,s++,h);return e},l.Yi=function(){var e,n,r,s,o;for(o=new _g,o.a+="[",e=fl(this.a),n=0,s=fl(this.a).i;n1);case 5:return I_(this,e,n,r,s,this.i-u(r,15).gc()>0);default:return new F0(this.e,e,this.c,n,r,s,!0)}},l.ij=function(){return!0},l.fj=function(){return lst(this)},l.Xj=function(){Tr(this)},N(Ln,"EOperationImpl/2",1341),D(498,1,{1938:1,498:1},IGt),N(Ln,"EPackageImpl/1",498),D(16,85,Ko,he),l.zk=function(){return this.d},l.Ak=function(){return this.b},l.Dk=function(){return!0},l.b=0,N(Yi,"EObjectContainmentWithInverseEList",16),D(353,16,Ko,M6),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentWithInverseEList/Resolving",353),D(298,353,Ko,qm),l.ci=function(){this.a.tb=null},N(Ln,"EPackageImpl/2",298),D(1228,1,{},tB),N(Ln,"EPackageImpl/3",1228),D(718,43,S4,Fpt),l._b=function(e){return ha(e)?crt(this,e):!!Fo(this.f,e)},N(Ln,"EPackageRegistryImpl",718),D(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},Xtt),l.Qg=function(e){return jse(this,e)},l._g=function(e,n,r){var s,o,h;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),h=this.t,h>1||h==-1;case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?u(this.Cb,59):null}return hh(this,e-Jn((ln(),e3)),wn((s=u(Mn(this,16),26),s||e3),e),n,r)},l.hh=function(e,n,r){var s,o,h;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),eu(this.Ab,e,r);case 10:return this.Cb&&(r=(o=this.Db>>16,o>=0?jse(this,r):this.Cb.ih(this,-1-o,null,r))),Ul(this,e,10,r)}return h=u(wn((s=u(Mn(this,16),26),s||(ln(),e3)),n),66),h.Nj().Qj(this,uu(this),n-Jn((ln(),e3)),e,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 9:return Wnt(this,r);case 10:return Ul(this,null,10,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),e3)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),e3)),e,r)},l.lh=function(e){var n,r,s;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return s=this.t,s>1||s==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return!!(this.Db>>16==10&&u(this.Cb,59))}return uh(this,e-Jn((ln(),e3)),wn((n=u(Mn(this,16),26),n||e3),e))},l.zh=function(){return ln(),e3},N(Ln,"EParameterImpl",509),D(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},j2t),l._g=function(e,n,r){var s,o,h,d;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Fn(),!!(this.Bb&256);case 3:return Fn(),!!(this.Bb&512);case 4:return de(this.s);case 5:return de(this.t);case 6:return Fn(),d=this.t,d>1||d==-1;case 7:return Fn(),o=this.s,o>=1;case 8:return n?Oh(this):this.r;case 9:return this.q;case 10:return Fn(),!!(this.Bb&xf);case 11:return Fn(),!!(this.Bb&Ay);case 12:return Fn(),!!(this.Bb&yy);case 13:return this.j;case 14:return v7(this);case 15:return Fn(),!!(this.Bb&Ku);case 16:return Fn(),!!(this.Bb&vd);case 17:return Gm(this);case 18:return Fn(),!!(this.Bb&yc);case 19:return Fn(),h=oo(this),!!(h&&h.Bb&yc);case 20:return Fn(),!!(this.Bb&Qa);case 21:return n?oo(this):this.b;case 22:return n?kyt(this):wJt(this);case 23:return!this.a&&(this.a=new W3(Zy,this,23)),this.a}return hh(this,e-Jn((ln(),u5)),wn((s=u(Mn(this,16),26),s||u5),e),n,r)},l.lh=function(e){var n,r,s,o;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return r=this.s,r>=1;case 8:return!!this.r&&!this.q.e&&jv(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&jv(this.q).i==0);case 10:return(this.Bb&xf)==0;case 11:return(this.Bb&Ay)!=0;case 12:return(this.Bb&yy)!=0;case 13:return this.j!=null;case 14:return v7(this)!=null;case 15:return(this.Bb&Ku)!=0;case 16:return(this.Bb&vd)!=0;case 17:return!!Gm(this);case 18:return(this.Bb&yc)!=0;case 19:return s=oo(this),!!s&&(s.Bb&yc)!=0;case 20:return(this.Bb&Qa)==0;case 21:return!!this.b;case 22:return!!wJt(this);case 23:return!!this.a&&this.a.i!=0}return uh(this,e-Jn((ln(),u5)),wn((n=u(Mn(this,16),26),n||u5),e))},l.sh=function(e,n){var r,s;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:xrt(this,jr(n));return;case 2:Rg(this,Be(Fe(n)));return;case 3:jg(this,Be(Fe(n)));return;case 4:Pg(this,u(n,19).a);return;case 5:ty(this,u(n,19).a);return;case 8:g2(this,u(n,138));return;case 9:s=F1(this,u(n,87),null),s&&s.Fi();return;case 10:t7(this,Be(Fe(n)));return;case 11:r7(this,Be(Fe(n)));return;case 12:e7(this,Be(Fe(n)));return;case 13:Wbt(this,jr(n));return;case 15:n7(this,Be(Fe(n)));return;case 16:i7(this,Be(Fe(n)));return;case 18:krn(this,Be(Fe(n)));return;case 20:Jyt(this,Be(Fe(n)));return;case 21:Zmt(this,u(n,18));return;case 23:!this.a&&(this.a=new W3(Zy,this,23)),Tr(this.a),!this.a&&(this.a=new W3(Zy,this,23)),gs(this.a,u(n,14));return}bh(this,e-Jn((ln(),u5)),wn((r=u(Mn(this,16),26),r||u5),e),n)},l.zh=function(){return ln(),u5},l.Bh=function(e){var n,r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),4),tu(this,null);return;case 2:Rg(this,!0);return;case 3:jg(this,!0);return;case 4:Pg(this,0);return;case 5:ty(this,1);return;case 8:g2(this,null);return;case 9:r=F1(this,null,null),r&&r.Fi();return;case 10:t7(this,!0);return;case 11:r7(this,!1);return;case 12:e7(this,!1);return;case 13:this.i=null,ez(this,null);return;case 15:n7(this,!1);return;case 16:i7(this,!1);return;case 18:Zyt(this,!1),_t(this.Cb,88)&&hy(hl(u(this.Cb,88)),2);return;case 20:Jyt(this,!0);return;case 21:Zmt(this,null);return;case 23:!this.a&&(this.a=new W3(Zy,this,23)),Tr(this.a);return}gh(this,e-Jn((ln(),u5)),wn((n=u(Mn(this,16),26),n||u5),e))},l.Gh=function(){kyt(this),y8(Mo((Gu(),Sa),this)),Oh(this),this.Bb|=1},l.Lj=function(){return oo(this)},l.qk=function(){var e;return e=oo(this),!!e&&(e.Bb&yc)!=0},l.rk=function(){return(this.Bb&yc)!=0},l.sk=function(){return(this.Bb&Qa)!=0},l.nk=function(e,n){return this.c=null,Gyt(this,e,n)},l.Ib=function(){var e;return this.Db&64?pq(this):(e=new Ah(pq(this)),e.a+=" (containment: ",Cg(e,(this.Bb&yc)!=0),e.a+=", resolveProxies: ",Cg(e,(this.Bb&Qa)!=0),e.a+=")",e.a)},N(Ln,"EReferenceImpl",99),D(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},YZ),l.Fb=function(e){return this===e},l.cd=function(){return this.b},l.dd=function(){return this.c},l.Hb=function(){return Dv(this)},l.Uh=function(e){Stn(this,jr(e))},l.ed=function(e){return ptn(this,jr(e))},l._g=function(e,n,r){var s;switch(e){case 0:return this.b;case 1:return this.c}return hh(this,e-Jn((ln(),Ja)),wn((s=u(Mn(this,16),26),s||Ja),e),n,r)},l.lh=function(e){var n;switch(e){case 0:return this.b!=null;case 1:return this.c!=null}return uh(this,e-Jn((ln(),Ja)),wn((n=u(Mn(this,16),26),n||Ja),e))},l.sh=function(e,n){var r;switch(e){case 0:Atn(this,jr(n));return;case 1:Ymt(this,jr(n));return}bh(this,e-Jn((ln(),Ja)),wn((r=u(Mn(this,16),26),r||Ja),e),n)},l.zh=function(){return ln(),Ja},l.Bh=function(e){var n;switch(e){case 0:Kmt(this,null);return;case 1:Ymt(this,null);return}gh(this,e-Jn((ln(),Ja)),wn((n=u(Mn(this,16),26),n||Ja),e))},l.Sh=function(){var e;return this.a==-1&&(e=this.b,this.a=e==null?0:zg(e)),this.a},l.Th=function(e){this.a=e},l.Ib=function(){var e;return this.Db&64?mf(this):(e=new Ah(mf(this)),e.a+=" (key: ",yo(e,this.b),e.a+=", value: ",yo(e,this.c),e.a+=")",e.a)},l.a=-1,l.b=null,l.c=null;var pc=N(Ln,"EStringToStringMapEntryImpl",548),i5e=as(Yi,"FeatureMap/Entry/Internal");D(565,1,SH),l.Ok=function(e){return this.Pk(u(e,49))},l.Pk=function(e){return this.Ok(e)},l.Fb=function(e){var n,r;return this===e?!0:_t(e,72)?(n=u(e,72),n.ak()==this.c?(r=this.dd(),r==null?n.dd()==null:Si(r,n.dd())):!1):!1},l.ak=function(){return this.c},l.Hb=function(){var e;return e=this.dd(),Ji(this.c)^(e==null?0:Ji(e))},l.Ib=function(){var e,n;return e=this.c,n=zl(e.Hj()).Ph(),e.ne(),(n!=null&&n.length!=0?n+":"+e.ne():e.ne())+"="+this.dd()},N(Ln,"EStructuralFeatureImpl/BasicFeatureMapEntry",565),D(776,565,SH,K2t),l.Pk=function(e){return new K2t(this.c,e)},l.dd=function(){return this.a},l.Qk=function(e,n,r){return Von(this,e,this.a,n,r)},l.Rk=function(e,n,r){return Gon(this,e,this.a,n,r)},N(Ln,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776),D(1314,1,{},OGt),l.Pj=function(e,n,r,s,o){var h;return h=u(L8(e,this.b),215),h.nl(this.a).Wj(s)},l.Qj=function(e,n,r,s,o){var h;return h=u(L8(e,this.b),215),h.el(this.a,s,o)},l.Rj=function(e,n,r,s,o){var h;return h=u(L8(e,this.b),215),h.fl(this.a,s,o)},l.Sj=function(e,n,r){var s;return s=u(L8(e,this.b),215),s.nl(this.a).fj()},l.Tj=function(e,n,r,s){var o;o=u(L8(e,this.b),215),o.nl(this.a).Wb(s)},l.Uj=function(e,n,r){return u(L8(e,this.b),215).nl(this.a)},l.Vj=function(e,n,r){var s;s=u(L8(e,this.b),215),s.nl(this.a).Xj()},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314),D(89,1,{},Lg,t2,Dg,r2),l.Pj=function(e,n,r,s,o){var h;if(h=n.Ch(r),h==null&&n.Dh(r,h=Aq(this,e)),!o)switch(this.e){case 50:case 41:return u(h,589).sj();case 40:return u(h,215).kl()}return h},l.Qj=function(e,n,r,s,o){var h,d;return d=n.Ch(r),d==null&&n.Dh(r,d=Aq(this,e)),h=u(d,69).lk(s,o),h},l.Rj=function(e,n,r,s,o){var h;return h=n.Ch(r),h!=null&&(o=u(h,69).mk(s,o)),o},l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null&&u(s,76).fj()},l.Tj=function(e,n,r,s){var o;o=u(n.Ch(r),76),!o&&n.Dh(r,o=Aq(this,e)),o.Wb(s)},l.Uj=function(e,n,r){var s,o;return o=n.Ch(r),o==null&&n.Dh(r,o=Aq(this,e)),_t(o,76)?u(o,76):(s=u(n.Ch(r),15),new Izt(s))},l.Vj=function(e,n,r){var s;s=u(n.Ch(r),76),!s&&n.Dh(r,s=Aq(this,e)),s.Xj()},l.b=0,l.e=0,N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateMany",89),D(504,1,{}),l.Qj=function(e,n,r,s,o){throw nt(new Pr)},l.Rj=function(e,n,r,s,o){throw nt(new Pr)},l.Uj=function(e,n,r){return new AXt(this,e,n,r)};var f0;N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504),D(1331,1,nut,AXt),l.Wj=function(e){return this.a.Pj(this.c,this.d,this.b,e,!0)},l.fj=function(){return this.a.Sj(this.c,this.d,this.b)},l.Wb=function(e){this.a.Tj(this.c,this.d,this.b,e)},l.Xj=function(){this.a.Vj(this.c,this.d,this.b)},l.b=0,N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331),D(769,504,{},Mwt),l.Pj=function(e,n,r,s,o){return cat(e,e.eh(),e.Vg())==this.b?this.sk()&&s?Ust(e):e.eh():null},l.Qj=function(e,n,r,s,o){var h,d;return e.eh()&&(o=(h=e.Vg(),h>=0?e.Qg(o):e.eh().ih(e,-1-h,null,o))),d=es(e.Tg(),this.e),e.Sg(s,d,o)},l.Rj=function(e,n,r,s,o){var h;return h=es(e.Tg(),this.e),e.Sg(null,h,o)},l.Sj=function(e,n,r){var s;return s=es(e.Tg(),this.e),!!e.eh()&&e.Vg()==s},l.Tj=function(e,n,r,s){var o,h,d,w,k;if(s!=null&&!fat(this.a,s))throw nt(new Kk(AH+(_t(s,56)?l4t(u(s,56).Tg()):Nmt(dl(s)))+LH+this.a+"'"));if(o=e.eh(),d=es(e.Tg(),this.e),Gt(s)!==Gt(o)||e.Vg()!=d&&s!=null){if(c7(e,u(s,56)))throw nt(new Pn(KC+e.Ib()));k=null,o&&(k=(h=e.Vg(),h>=0?e.Qg(k):e.eh().ih(e,-1-h,null,k))),w=u(s,49),w&&(k=w.gh(e,es(w.Tg(),this.b),null,k)),k=e.Sg(w,d,k),k&&k.Fi()}else e.Lg()&&e.Mg()&&Ci(e,new oa(e,1,d,s,s))},l.Vj=function(e,n,r){var s,o,h,d;s=e.eh(),s?(d=(o=e.Vg(),o>=0?e.Qg(null):e.eh().ih(e,-1-o,null,null)),h=es(e.Tg(),this.e),d=e.Sg(null,h,d),d&&d.Fi()):e.Lg()&&e.Mg()&&Ci(e,new __(e,1,this.e,null,null))},l.sk=function(){return!1},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769),D(1315,769,{},yKt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315),D(563,504,{}),l.Pj=function(e,n,r,s,o){var h;return h=n.Ch(r),h==null?this.b:Gt(h)===Gt(f0)?null:h},l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null&&(Gt(s)===Gt(f0)||!Si(s,this.b))},l.Tj=function(e,n,r,s){var o,h;e.Lg()&&e.Mg()?(o=(h=n.Ch(r),h==null?this.b:Gt(h)===Gt(f0)?null:h),s==null?this.c!=null?(n.Dh(r,null),s=this.b):this.b!=null?n.Dh(r,f0):n.Dh(r,null):(this.Sk(s),n.Dh(r,s)),Ci(e,this.d.Tk(e,1,this.e,o,s))):s==null?this.c!=null?n.Dh(r,null):this.b!=null?n.Dh(r,f0):n.Dh(r,null):(this.Sk(s),n.Dh(r,s))},l.Vj=function(e,n,r){var s,o;e.Lg()&&e.Mg()?(s=(o=n.Ch(r),o==null?this.b:Gt(o)===Gt(f0)?null:o),n.Eh(r),Ci(e,this.d.Tk(e,1,this.e,s,this.b))):n.Eh(r)},l.Sk=function(e){throw nt(new qzt)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563),D(B4,1,{},eB),l.Tk=function(e,n,r,s,o){return new __(e,n,r,s,o)},l.Uk=function(e,n,r,s,o,h){return new ort(e,n,r,s,o,h)};var ZAt,JAt,tLt,eLt,nLt,rLt,iLt,Mft,sLt;N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",B4),D(1332,B4,{},nB),l.Tk=function(e,n,r,s,o){return new hmt(e,n,r,Be(Fe(s)),Be(Fe(o)))},l.Uk=function(e,n,r,s,o,h){return new XQt(e,n,r,Be(Fe(s)),Be(Fe(o)),h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332),D(1333,B4,{},rB),l.Tk=function(e,n,r,s,o){return new Rmt(e,n,r,u(s,217).a,u(o,217).a)},l.Uk=function(e,n,r,s,o,h){return new HQt(e,n,r,u(s,217).a,u(o,217).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333),D(1334,B4,{},Ck),l.Tk=function(e,n,r,s,o){return new jmt(e,n,r,u(s,172).a,u(o,172).a)},l.Uk=function(e,n,r,s,o,h){return new VQt(e,n,r,u(s,172).a,u(o,172).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334),D(1335,B4,{},iB),l.Tk=function(e,n,r,s,o){return new umt(e,n,r,Zt(ve(s)),Zt(ve(o)))},l.Uk=function(e,n,r,s,o,h){return new GQt(e,n,r,Zt(ve(s)),Zt(ve(o)),h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335),D(1336,B4,{},sB),l.Tk=function(e,n,r,s,o){return new qmt(e,n,r,u(s,155).a,u(o,155).a)},l.Uk=function(e,n,r,s,o,h){return new UQt(e,n,r,u(s,155).a,u(o,155).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336),D(1337,B4,{},XZ),l.Tk=function(e,n,r,s,o){return new lmt(e,n,r,u(s,19).a,u(o,19).a)},l.Uk=function(e,n,r,s,o,h){return new WQt(e,n,r,u(s,19).a,u(o,19).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337),D(1338,B4,{},Sk),l.Tk=function(e,n,r,s,o){return new $mt(e,n,r,u(s,162).a,u(o,162).a)},l.Uk=function(e,n,r,s,o,h){return new KQt(e,n,r,u(s,162).a,u(o,162).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338),D(1339,B4,{},Ak),l.Tk=function(e,n,r,s,o){return new zmt(e,n,r,u(s,184).a,u(o,184).a)},l.Uk=function(e,n,r,s,o,h){return new YQt(e,n,r,u(s,184).a,u(o,184).a,h)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339),D(1317,563,{},LXt),l.Sk=function(e){if(!this.a.wj(e))throw nt(new Kk(AH+dl(e)+LH+this.a+"'"))},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317),D(1318,563,{},vYt),l.Sk=function(e){},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318),D(770,563,{}),l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null},l.Tj=function(e,n,r,s){var o,h;e.Lg()&&e.Mg()?(o=!0,h=n.Ch(r),h==null?(o=!1,h=this.b):Gt(h)===Gt(f0)&&(h=null),s==null?this.c!=null?(n.Dh(r,null),s=this.b):n.Dh(r,f0):(this.Sk(s),n.Dh(r,s)),Ci(e,this.d.Uk(e,1,this.e,h,s,!o))):s==null?this.c!=null?n.Dh(r,null):n.Dh(r,f0):(this.Sk(s),n.Dh(r,s))},l.Vj=function(e,n,r){var s,o;e.Lg()&&e.Mg()?(s=!0,o=n.Ch(r),o==null?(s=!1,o=this.b):Gt(o)===Gt(f0)&&(o=null),n.Eh(r),Ci(e,this.d.Uk(e,2,this.e,o,this.b,s))):n.Eh(r)},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770),D(1319,770,{},MXt),l.Sk=function(e){if(!this.a.wj(e))throw nt(new Kk(AH+dl(e)+LH+this.a+"'"))},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319),D(1320,770,{},wYt),l.Sk=function(e){},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320),D(398,504,{},Pj),l.Pj=function(e,n,r,s,o){var h,d,w,k,_;if(_=n.Ch(r),this.Kj()&&Gt(_)===Gt(f0))return null;if(this.sk()&&s&&_!=null){if(w=u(_,49),w.kh()&&(k=Xp(e,w),w!=k)){if(!fat(this.a,k))throw nt(new Kk(AH+dl(k)+LH+this.a+"'"));n.Dh(r,_=k),this.rk()&&(h=u(k,49),d=w.ih(e,this.b?es(w.Tg(),this.b):-1-es(e.Tg(),this.e),null,null),!h.eh()&&(d=h.gh(e,this.b?es(h.Tg(),this.b):-1-es(e.Tg(),this.e),null,d)),d&&d.Fi()),e.Lg()&&e.Mg()&&Ci(e,new __(e,9,this.e,w,k))}return _}else return _},l.Qj=function(e,n,r,s,o){var h,d;return d=n.Ch(r),Gt(d)===Gt(f0)&&(d=null),n.Dh(r,s),this.bj()?Gt(d)!==Gt(s)&&d!=null&&(h=u(d,49),o=h.ih(e,es(h.Tg(),this.b),null,o)):this.rk()&&d!=null&&(o=u(d,49).ih(e,-1-es(e.Tg(),this.e),null,o)),e.Lg()&&e.Mg()&&(!o&&(o=new Lp(4)),o.Ei(new __(e,1,this.e,d,s))),o},l.Rj=function(e,n,r,s,o){var h;return h=n.Ch(r),Gt(h)===Gt(f0)&&(h=null),n.Eh(r),e.Lg()&&e.Mg()&&(!o&&(o=new Lp(4)),this.Kj()?o.Ei(new __(e,2,this.e,h,null)):o.Ei(new __(e,1,this.e,h,null))),o},l.Sj=function(e,n,r){var s;return s=n.Ch(r),s!=null},l.Tj=function(e,n,r,s){var o,h,d,w,k;if(s!=null&&!fat(this.a,s))throw nt(new Kk(AH+(_t(s,56)?l4t(u(s,56).Tg()):Nmt(dl(s)))+LH+this.a+"'"));k=n.Ch(r),w=k!=null,this.Kj()&&Gt(k)===Gt(f0)&&(k=null),d=null,this.bj()?Gt(k)!==Gt(s)&&(k!=null&&(o=u(k,49),d=o.ih(e,es(o.Tg(),this.b),null,d)),s!=null&&(o=u(s,49),d=o.gh(e,es(o.Tg(),this.b),null,d))):this.rk()&&Gt(k)!==Gt(s)&&(k!=null&&(d=u(k,49).ih(e,-1-es(e.Tg(),this.e),null,d)),s!=null&&(d=u(s,49).gh(e,-1-es(e.Tg(),this.e),null,d))),s==null&&this.Kj()?n.Dh(r,f0):n.Dh(r,s),e.Lg()&&e.Mg()?(h=new ort(e,1,this.e,k,s,this.Kj()&&!w),d?(d.Ei(h),d.Fi()):Ci(e,h)):d&&d.Fi()},l.Vj=function(e,n,r){var s,o,h,d,w;w=n.Ch(r),d=w!=null,this.Kj()&&Gt(w)===Gt(f0)&&(w=null),h=null,w!=null&&(this.bj()?(s=u(w,49),h=s.ih(e,es(s.Tg(),this.b),null,h)):this.rk()&&(h=u(w,49).ih(e,-1-es(e.Tg(),this.e),null,h))),n.Eh(r),e.Lg()&&e.Mg()?(o=new ort(e,this.Kj()?2:1,this.e,w,null,d),h?(h.Ei(o),h.Fi()):Ci(e,o)):h&&h.Fi()},l.bj=function(){return!1},l.rk=function(){return!1},l.sk=function(){return!1},l.Kj=function(){return!1},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398),D(564,398,{},unt),l.rk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564),D(1323,564,{},bWt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323),D(772,564,{},P2t),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772),D(1325,772,{},vWt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325),D(640,564,{},Ent),l.bj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640),D(1324,640,{},xKt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324),D(773,640,{},xvt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773),D(1326,773,{},kKt),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326),D(641,398,{},F2t),l.sk=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641),D(1327,641,{},wWt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327),D(774,641,{},mvt),l.bj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774),D(1328,774,{},EKt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328),D(1321,398,{},mWt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321),D(771,398,{},yvt),l.bj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771),D(1322,771,{},TKt),l.Kj=function(){return!0},N(Ln,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322),D(775,565,SH,bwt),l.Pk=function(e){return new bwt(this.a,this.c,e)},l.dd=function(){return this.b},l.Qk=function(e,n,r){return Gsn(this,e,this.b,r)},l.Rk=function(e,n,r){return Usn(this,e,this.b,r)},N(Ln,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775),D(1329,1,nut,Izt),l.Wj=function(e){return this.a},l.fj=function(){return _t(this.a,95)?u(this.a,95).fj():!this.a.dc()},l.Wb=function(e){this.a.$b(),this.a.Gc(u(e,15))},l.Xj=function(){_t(this.a,95)?u(this.a,95).Xj():this.a.$b()},N(Ln,"EStructuralFeatureImpl/SettingMany",1329),D(1330,565,SH,RZt),l.Ok=function(e){return new fnt(($i(),uA),this.b.Ih(this.a,e))},l.dd=function(){return null},l.Qk=function(e,n,r){return r},l.Rk=function(e,n,r){return r},N(Ln,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330),D(642,565,SH,fnt),l.Ok=function(e){return new fnt(this.c,e)},l.dd=function(){return this.a},l.Qk=function(e,n,r){return r},l.Rk=function(e,n,r){return r},N(Ln,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642),D(391,497,Sd,xm),l.ri=function(e){return Nt(Kh,Me,26,e,0,1)},l.ni=function(){return!1},N(Ln,"ESuperAdapter/1",391),D(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},RL),l._g=function(e,n,r){var s;switch(e){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new x_(this,wo,this)),this.a}return hh(this,e-Jn((ln(),Hw)),wn((s=u(Mn(this,16),26),s||Hw),e),n,r)},l.jh=function(e,n,r){var s,o;switch(n){case 0:return!this.Ab&&(this.Ab=new he(ei,this,0,3)),za(this.Ab,e,r);case 2:return!this.a&&(this.a=new x_(this,wo,this)),za(this.a,e,r)}return o=u(wn((s=u(Mn(this,16),26),s||(ln(),Hw)),n),66),o.Nj().Rj(this,uu(this),n-Jn((ln(),Hw)),e,r)},l.lh=function(e){var n;switch(e){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return uh(this,e-Jn((ln(),Hw)),wn((n=u(Mn(this,16),26),n||Hw),e))},l.sh=function(e,n){var r;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab),!this.Ab&&(this.Ab=new he(ei,this,0,3)),gs(this.Ab,u(n,14));return;case 1:tu(this,jr(n));return;case 2:!this.a&&(this.a=new x_(this,wo,this)),Tr(this.a),!this.a&&(this.a=new x_(this,wo,this)),gs(this.a,u(n,14));return}bh(this,e-Jn((ln(),Hw)),wn((r=u(Mn(this,16),26),r||Hw),e),n)},l.zh=function(){return ln(),Hw},l.Bh=function(e){var n;switch(e){case 0:!this.Ab&&(this.Ab=new he(ei,this,0,3)),Tr(this.Ab);return;case 1:tu(this,null);return;case 2:!this.a&&(this.a=new x_(this,wo,this)),Tr(this.a);return}gh(this,e-Jn((ln(),Hw)),wn((n=u(Mn(this,16),26),n||Hw),e))},N(Ln,"ETypeParameterImpl",444),D(445,85,Ko,x_),l.cj=function(e,n){return Udn(this,u(e,87),n)},l.dj=function(e,n){return Wdn(this,u(e,87),n)},N(Ln,"ETypeParameterImpl/1",445),D(634,43,S4,Qtt),l.ec=function(){return new cR(this)},N(Ln,"ETypeParameterImpl/2",634),D(556,B1,Uu,cR),l.Fc=function(e){return GWt(this,u(e,87))},l.Gc=function(e){var n,r,s;for(s=!1,r=e.Kc();r.Ob();)n=u(r.Pb(),87),Ai(this.a,n,"")==null&&(s=!0);return s},l.$b=function(){nl(this.a)},l.Hc=function(e){return Ml(this.a,e)},l.Kc=function(){var e;return e=new d2(new kg(this.a).a),new uR(e)},l.Mc=function(e){return DJt(this,e)},l.gc=function(){return $T(this.a)},N(Ln,"ETypeParameterImpl/2/1",556),D(557,1,da,uR),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(Yv(this.a).cd(),87)},l.Ob=function(){return this.a.b},l.Qb=function(){cte(this.a)},N(Ln,"ETypeParameterImpl/2/1/1",557),D(1276,43,S4,kqt),l._b=function(e){return ha(e)?crt(this,e):!!Fo(this.f,e)},l.xc=function(e){var n,r;return n=ha(e)?jc(this,e):cc(Fo(this.f,e)),_t(n,837)?(r=u(n,837),n=r._j(),Ai(this,u(e,235),n),n):n??(e==null?(pet(),a5e):null)},N(Ln,"EValidatorRegistryImpl",1276),D(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},QZ),l.Ih=function(e,n){switch(e.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:Wo(n);case 25:return ton(n);case 27:return van(n);case 28:return wan(n);case 29:return n==null?null:_Ut(rA[0],u(n,199));case 41:return n==null?"":Mp(u(n,290));case 42:return Wo(n);case 50:return jr(n);default:throw nt(new Pn(z7+e.ne()+kw))}},l.Jh=function(e){var n,r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt;switch(e.G==-1&&(e.G=(q=zl(e),q?$g(q.Mh(),e):-1)),e.G){case 0:return r=new Ktt,r;case 1:return n=new JF,n;case 2:return s=new XL,s;case 4:return o=new lR,o;case 5:return h=new xqt,h;case 6:return d=new Gzt,d;case 7:return w=new qB,w;case 10:return _=new Tk,_;case 11:return M=new Ytt,M;case 12:return B=new WXt,B;case 13:return G=new Xtt,G;case 14:return W=new j2t,W;case 17:return Z=new YZ,Z;case 18:return k=new wv,k;case 19:return bt=new RL,bt;default:throw nt(new Pn($ct+e.zb+kw))}},l.Kh=function(e,n){switch(e.yj()){case 20:return n==null?null:new ibt(n);case 21:return n==null?null:new Fp(n);case 23:case 22:return n==null?null:shn(n);case 26:case 24:return n==null?null:ED(Gl(n,-128,127)<<24>>24);case 25:return bbn(n);case 27:return qfn(n);case 28:return Hfn(n);case 29:return h0n(n);case 32:case 31:return n==null?null:ly(n);case 38:case 37:return n==null?null:new Tpt(n);case 40:case 39:return n==null?null:de(Gl(n,Oa,Ti));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:b2(Sq(n));case 49:case 48:return n==null?null:J8(Gl(n,MH,32767)<<16>>16);case 50:return n;default:throw nt(new Pn(z7+e.ne()+kw))}},N(Ln,"EcoreFactoryImpl",1313),D(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},lXt),l.gb=!1,l.hb=!1;var aLt,s5e=!1;N(Ln,"EcorePackageImpl",547),D(1184,1,{837:1},ZZ),l._j=function(){return YUt(),o5e},N(Ln,"EcorePackageImpl/1",1184),D(1193,1,ci,JZ),l.wj=function(e){return _t(e,147)},l.xj=function(e){return Nt(oN,Me,147,e,0,1)},N(Ln,"EcorePackageImpl/10",1193),D(1194,1,ci,tJ),l.wj=function(e){return _t(e,191)},l.xj=function(e){return Nt(xft,Me,191,e,0,1)},N(Ln,"EcorePackageImpl/11",1194),D(1195,1,ci,eJ),l.wj=function(e){return _t(e,56)},l.xj=function(e){return Nt(Tb,Me,56,e,0,1)},N(Ln,"EcorePackageImpl/12",1195),D(1196,1,ci,nJ),l.wj=function(e){return _t(e,399)},l.xj=function(e){return Nt(Yh,M8t,59,e,0,1)},N(Ln,"EcorePackageImpl/13",1196),D(1197,1,ci,rJ),l.wj=function(e){return _t(e,235)},l.xj=function(e){return Nt(o1,Me,235,e,0,1)},N(Ln,"EcorePackageImpl/14",1197),D(1198,1,ci,iJ),l.wj=function(e){return _t(e,509)},l.xj=function(e){return Nt(zw,Me,2017,e,0,1)},N(Ln,"EcorePackageImpl/15",1198),D(1199,1,ci,aB),l.wj=function(e){return _t(e,99)},l.xj=function(e){return Nt(Jy,F4,18,e,0,1)},N(Ln,"EcorePackageImpl/16",1199),D(1200,1,ci,sJ),l.wj=function(e){return _t(e,170)},l.xj=function(e){return Nt(Nu,F4,170,e,0,1)},N(Ln,"EcorePackageImpl/17",1200),D(1201,1,ci,aJ),l.wj=function(e){return _t(e,472)},l.xj=function(e){return Nt(Qy,Me,472,e,0,1)},N(Ln,"EcorePackageImpl/18",1201),D(1202,1,ci,oJ),l.wj=function(e){return _t(e,548)},l.xj=function(e){return Nt(pc,a0e,548,e,0,1)},N(Ln,"EcorePackageImpl/19",1202),D(1185,1,ci,oB),l.wj=function(e){return _t(e,322)},l.xj=function(e){return Nt(Zy,F4,34,e,0,1)},N(Ln,"EcorePackageImpl/2",1185),D(1203,1,ci,Lk),l.wj=function(e){return _t(e,241)},l.xj=function(e){return Nt(wo,E0e,87,e,0,1)},N(Ln,"EcorePackageImpl/20",1203),D(1204,1,ci,Z9),l.wj=function(e){return _t(e,444)},l.xj=function(e){return Nt(pu,Me,836,e,0,1)},N(Ln,"EcorePackageImpl/21",1204),D(1205,1,ci,cB),l.wj=function(e){return Om(e)},l.xj=function(e){return Nt(Ws,re,476,e,8,1)},N(Ln,"EcorePackageImpl/22",1205),D(1206,1,ci,cJ),l.wj=function(e){return _t(e,190)},l.xj=function(e){return Nt(Xu,re,190,e,0,2)},N(Ln,"EcorePackageImpl/23",1206),D(1207,1,ci,uB),l.wj=function(e){return _t(e,217)},l.xj=function(e){return Nt(kx,re,217,e,0,1)},N(Ln,"EcorePackageImpl/24",1207),D(1208,1,ci,lB),l.wj=function(e){return _t(e,172)},l.xj=function(e){return Nt(aS,re,172,e,0,1)},N(Ln,"EcorePackageImpl/25",1208),D(1209,1,ci,uJ),l.wj=function(e){return _t(e,199)},l.xj=function(e){return Nt(HH,re,199,e,0,1)},N(Ln,"EcorePackageImpl/26",1209),D(1210,1,ci,J9),l.wj=function(e){return!1},l.xj=function(e){return Nt(TLt,Me,2110,e,0,1)},N(Ln,"EcorePackageImpl/27",1210),D(1211,1,ci,km),l.wj=function(e){return Nm(e)},l.xj=function(e){return Nt(wa,re,333,e,7,1)},N(Ln,"EcorePackageImpl/28",1211),D(1212,1,ci,hB),l.wj=function(e){return _t(e,58)},l.xj=function(e){return Nt(jAt,xy,58,e,0,1)},N(Ln,"EcorePackageImpl/29",1212),D(1186,1,ci,fB),l.wj=function(e){return _t(e,510)},l.xj=function(e){return Nt(ei,{3:1,4:1,5:1,1934:1},590,e,0,1)},N(Ln,"EcorePackageImpl/3",1186),D(1213,1,ci,lJ),l.wj=function(e){return _t(e,573)},l.xj=function(e){return Nt(qAt,Me,1940,e,0,1)},N(Ln,"EcorePackageImpl/30",1213),D(1214,1,ci,hJ),l.wj=function(e){return _t(e,153)},l.xj=function(e){return Nt(hLt,xy,153,e,0,1)},N(Ln,"EcorePackageImpl/31",1214),D(1215,1,ci,tT),l.wj=function(e){return _t(e,72)},l.xj=function(e){return Nt(sU,I0e,72,e,0,1)},N(Ln,"EcorePackageImpl/32",1215),D(1216,1,ci,dB),l.wj=function(e){return _t(e,155)},l.xj=function(e){return Nt(K7,re,155,e,0,1)},N(Ln,"EcorePackageImpl/33",1216),D(1217,1,ci,gB),l.wj=function(e){return _t(e,19)},l.xj=function(e){return Nt(Ha,re,19,e,0,1)},N(Ln,"EcorePackageImpl/34",1217),D(1218,1,ci,bc),l.wj=function(e){return _t(e,290)},l.xj=function(e){return Nt(H8t,Me,290,e,0,1)},N(Ln,"EcorePackageImpl/35",1218),D(1219,1,ci,fJ),l.wj=function(e){return _t(e,162)},l.xj=function(e){return Nt(Tw,re,162,e,0,1)},N(Ln,"EcorePackageImpl/36",1219),D(1220,1,ci,pB),l.wj=function(e){return _t(e,83)},l.xj=function(e){return Nt(V8t,Me,83,e,0,1)},N(Ln,"EcorePackageImpl/37",1220),D(1221,1,ci,eT),l.wj=function(e){return _t(e,591)},l.xj=function(e){return Nt(oLt,Me,591,e,0,1)},N(Ln,"EcorePackageImpl/38",1221),D(1222,1,ci,dJ),l.wj=function(e){return!1},l.xj=function(e){return Nt(_Lt,Me,2111,e,0,1)},N(Ln,"EcorePackageImpl/39",1222),D(1187,1,ci,gJ),l.wj=function(e){return _t(e,88)},l.xj=function(e){return Nt(Kh,Me,26,e,0,1)},N(Ln,"EcorePackageImpl/4",1187),D(1223,1,ci,nT),l.wj=function(e){return _t(e,184)},l.xj=function(e){return Nt(_w,re,184,e,0,1)},N(Ln,"EcorePackageImpl/40",1223),D(1224,1,ci,bB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ln,"EcorePackageImpl/41",1224),D(1225,1,ci,rT),l.wj=function(e){return _t(e,588)},l.xj=function(e){return Nt(zAt,Me,588,e,0,1)},N(Ln,"EcorePackageImpl/42",1225),D(1226,1,ci,iT),l.wj=function(e){return!1},l.xj=function(e){return Nt(CLt,re,2112,e,0,1)},N(Ln,"EcorePackageImpl/43",1226),D(1227,1,ci,qf),l.wj=function(e){return _t(e,42)},l.xj=function(e){return Nt(I2,Iq,42,e,0,1)},N(Ln,"EcorePackageImpl/44",1227),D(1188,1,ci,jL),l.wj=function(e){return _t(e,138)},l.xj=function(e){return Nt(c1,Me,138,e,0,1)},N(Ln,"EcorePackageImpl/5",1188),D(1189,1,ci,$L),l.wj=function(e){return _t(e,148)},l.xj=function(e){return Nt(Sft,Me,148,e,0,1)},N(Ln,"EcorePackageImpl/6",1189),D(1190,1,ci,n6),l.wj=function(e){return _t(e,457)},l.xj=function(e){return Nt(iU,Me,671,e,0,1)},N(Ln,"EcorePackageImpl/7",1190),D(1191,1,ci,pJ),l.wj=function(e){return _t(e,573)},l.xj=function(e){return Nt(eg,Me,678,e,0,1)},N(Ln,"EcorePackageImpl/8",1191),D(1192,1,ci,bJ),l.wj=function(e){return _t(e,471)},l.xj=function(e){return Nt(nA,Me,471,e,0,1)},N(Ln,"EcorePackageImpl/9",1192),D(1025,1982,s0e,$qt),l.bi=function(e,n){Dun(this,u(n,415))},l.fi=function(e,n){toe(this,e,u(n,415))},N(Ln,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1025),D(1026,143,QI,eXt),l.Ai=function(){return this.a.a},N(Ln,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1026),D(1053,1052,{},vUt),N("org.eclipse.emf.ecore.plugin","EcorePlugin",1053);var oLt=as(O0e,"Resource");D(781,1378,N0e),l.Yk=function(e){},l.Zk=function(e){},l.Vk=function(){return!this.a&&(this.a=new Htt(this)),this.a},l.Wk=function(e){var n,r,s,o,h;if(s=e.length,s>0)if($r(0,e.length),e.charCodeAt(0)==47){for(h=new Jc(4),o=1,n=1;n0&&(e=e.substr(0,r)));return Jgn(this,e)},l.Xk=function(){return this.c},l.Ib=function(){var e;return Mp(this.gm)+"@"+(e=Ji(this)>>>0,e.toString(16))+" uri='"+this.d+"'"},l.b=!1,N(rut,"ResourceImpl",781),D(1379,781,N0e,Nzt),N(rut,"BinaryResourceImpl",1379),D(1169,694,Qct),l.si=function(e){return _t(e,56)?Nnn(this,u(e,56)):_t(e,591)?new nr(u(e,591).Vk()):Gt(e)===Gt(this.f)?u(e,14).Kc():(l8(),lN.a)},l.Ob=function(){return e5t(this)},l.a=!1,N(Yi,"EcoreUtil/ContentTreeIterator",1169),D(1380,1169,Qct,IYt),l.si=function(e){return Gt(e)===Gt(this.f)?u(e,15).Kc():new pZt(u(e,56))},N(rut,"ResourceImpl/5",1380),D(648,1994,k0e,Htt),l.Hc=function(e){return this.i<=4?l7(this,e):_t(e,49)&&u(e,49).Zg()==this.a},l.bi=function(e,n){e==this.i-1&&(this.a.b||(this.a.b=!0))},l.di=function(e,n){e==0?this.a.b||(this.a.b=!0):jrt(this,e,n)},l.fi=function(e,n){},l.gi=function(e,n,r){},l.aj=function(){return 2},l.Ai=function(){return this.a},l.bj=function(){return!0},l.cj=function(e,n){var r;return r=u(e,49),n=r.wh(this.a,n),n},l.dj=function(e,n){var r;return r=u(e,49),r.wh(null,n)},l.ej=function(){return!1},l.hi=function(){return!0},l.ri=function(e){return Nt(Tb,Me,56,e,0,1)},l.ni=function(){return!1},N(rut,"ResourceImpl/ContentsEList",648),D(957,1964,L7,Ozt),l.Zc=function(e){return this.a._h(e)},l.gc=function(){return this.a.gc()},N(Yi,"AbstractSequentialInternalEList/1",957);var cLt,uLt,Sa,lLt;D(624,1,{},NKt);var aU,oU;N(Yi,"BasicExtendedMetaData",624),D(1160,1,{},NGt),l.$k=function(){return null},l._k=function(){return this.a==-2&&xg(this,a0n(this.d,this.b)),this.a},l.al=function(){return null},l.bl=function(){return pn(),pn(),uo},l.ne=function(){return this.c==V7&&I3(this,Die(this.d,this.b)),this.c},l.cl=function(){return 0},l.a=-2,l.c=V7,N(Yi,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160),D(1161,1,{},eZt),l.$k=function(){return this.a==(S8(),aU)&&lpt(this,k2n(this.f,this.b)),this.a},l._k=function(){return 0},l.al=function(){return this.c==(S8(),aU)&&Ctt(this,E2n(this.f,this.b)),this.c},l.bl=function(){return!this.d&&Stt(this,kwn(this.f,this.b)),this.d},l.ne=function(){return this.e==V7&&QB(this,Die(this.f,this.b)),this.e},l.cl=function(){return this.g==-2&&ZB(this,_dn(this.f,this.b)),this.g},l.e=V7,l.g=-2,N(Yi,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1161),D(1159,1,{},FGt),l.b=!1,l.c=!1,N(Yi,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1159),D(1162,1,{},tZt),l.c=-2,l.e=V7,l.f=V7,N(Yi,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1162),D(585,622,Ko,Sj),l.aj=function(){return this.c},l.Fk=function(){return!1},l.li=function(e,n){return n},l.c=0,N(Yi,"EDataTypeEList",585);var hLt=as(Yi,"FeatureMap");D(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},ps),l.Vc=function(e,n){w2n(this,e,u(n,72))},l.Fc=function(e){return Bbn(this,u(e,72))},l.Yh=function(e){Een(this,u(e,72))},l.cj=function(e,n){return rZe(this,u(e,72),n)},l.dj=function(e,n){return cvt(this,u(e,72),n)},l.ii=function(e,n){return $wn(this,e,n)},l.li=function(e,n){return m3n(this,e,u(n,72))},l._c=function(e,n){return cvn(this,e,u(n,72))},l.jj=function(e,n){return iZe(this,u(e,72),n)},l.kj=function(e,n){return sKt(this,u(e,72),n)},l.lj=function(e,n,r){return cdn(this,u(e,72),u(n,72),r)},l.oi=function(e,n){return Lst(this,e,u(n,72))},l.dl=function(e,n){return H5t(this,e,n)},l.Wc=function(e,n){var r,s,o,h,d,w,k,_,M;for(_=new Kv(n.gc()),o=n.Kc();o.Ob();)if(s=u(o.Pb(),72),h=s.ak(),G0(this.e,h))(!h.hi()||!k$(this,h,s.dd())&&!l7(_,s))&&Or(_,s);else{for(M=hu(this.e.Tg(),h),r=u(this.g,119),d=!0,w=0;w=0;)if(n=e[this.c],this.k.rl(n.ak()))return this.j=this.f?n:n.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},N(Yi,"BasicFeatureMap/FeatureEIterator",410),D(662,410,Jd,Ket),l.Lk=function(){return!0},N(Yi,"BasicFeatureMap/ResolvingFeatureEIterator",662),D(955,486,_H,SUt),l.Gi=function(){return this},N(Yi,"EContentsEList/1",955),D(956,486,_H,ZGt),l.Lk=function(){return!1},N(Yi,"EContentsEList/2",956),D(954,279,CH,AUt),l.Nk=function(e){},l.Ob=function(){return!1},l.Sb=function(){return!1},N(Yi,"EContentsEList/FeatureIteratorImpl/1",954),D(825,585,Ko,d2t),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EDataTypeEList/Unsettable",825),D(1849,585,Ko,FUt),l.hi=function(){return!0},N(Yi,"EDataTypeUniqueEList",1849),D(1850,825,Ko,BUt),l.hi=function(){return!0},N(Yi,"EDataTypeUniqueEList/Unsettable",1850),D(139,85,Ko,$u),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentEList/Resolving",139),D(1163,545,Ko,PUt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentEList/Unsettable/Resolving",1163),D(748,16,Ko,evt),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EObjectContainmentWithInverseEList/Unsettable",748),D(1173,748,Ko,UWt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173),D(743,496,Ko,f2t),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EObjectEList/Unsettable",743),D(328,496,Ko,W3),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectResolvingEList",328),D(1641,743,Ko,RUt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectResolvingEList/Unsettable",1641),D(1381,1,{},vJ);var a5e;N(Yi,"EObjectValidator",1381),D(546,496,Ko,Uj),l.zk=function(){return this.d},l.Ak=function(){return this.b},l.bj=function(){return!0},l.Dk=function(){return!0},l.b=0,N(Yi,"EObjectWithInverseEList",546),D(1176,546,Ko,WWt),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseEList/ManyInverse",1176),D(625,546,Ko,gnt),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EObjectWithInverseEList/Unsettable",625),D(1175,625,Ko,KWt),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseEList/Unsettable/ManyInverse",1175),D(749,546,Ko,nvt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectWithInverseResolvingEList",749),D(31,749,Ko,En),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseResolvingEList/ManyInverse",31),D(750,625,Ko,rvt),l.Ek=function(){return!0},l.li=function(e,n){return ax(this,e,u(n,56))},N(Yi,"EObjectWithInverseResolvingEList/Unsettable",750),D(1174,750,Ko,YWt),l.Ck=function(){return!0},N(Yi,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174),D(1164,622,Ko),l.ai=function(){return(this.b&1792)==0},l.ci=function(){this.b|=1},l.Bk=function(){return(this.b&4)!=0},l.bj=function(){return(this.b&40)!=0},l.Ck=function(){return(this.b&16)!=0},l.Dk=function(){return(this.b&8)!=0},l.Ek=function(){return(this.b&Ay)!=0},l.rk=function(){return(this.b&32)!=0},l.Fk=function(){return(this.b&xf)!=0},l.wj=function(e){return this.d?MZt(this.d,e):this.ak().Yj().wj(e)},l.fj=function(){return this.b&2?(this.b&1)!=0:this.i!=0},l.hi=function(){return(this.b&128)!=0},l.Xj=function(){var e;Tr(this),this.b&2&&(Sl(this.e)?(e=(this.b&1)!=0,this.b&=-2,Uk(this,new bf(this.e,2,es(this.e.Tg(),this.ak()),e,!1))):this.b&=-2)},l.ni=function(){return(this.b&1536)==0},l.b=0,N(Yi,"EcoreEList/Generic",1164),D(1165,1164,Ko,jXt),l.ak=function(){return this.a},N(Yi,"EcoreEList/Dynamic",1165),D(747,63,Sd,bpt),l.ri=function(e){return _D(this.a.a,e)},N(Yi,"EcoreEMap/1",747),D(746,85,Ko,ewt),l.bi=function(e,n){qz(this.b,u(n,133))},l.di=function(e,n){_ne(this.b)},l.ei=function(e,n,r){var s;++(s=this.b,u(n,133),s).e},l.fi=function(e,n){Rit(this.b,u(n,133))},l.gi=function(e,n,r){Rit(this.b,u(r,133)),Gt(r)===Gt(n)&&u(r,133).Th(fXe(u(n,133).cd())),qz(this.b,u(n,133))},N(Yi,"EcoreEMap/DelegateEObjectContainmentEList",746),D(1171,151,L8t,Ree),N(Yi,"EcoreEMap/Unsettable",1171),D(1172,746,Ko,XWt),l.ci=function(){this.a=!0},l.fj=function(){return this.a},l.Xj=function(){var e;Tr(this),Sl(this.e)?(e=this.a,this.a=!1,Ci(this.e,new bf(this.e,2,this.c,e,!1))):this.a=!1},l.a=!1,N(Yi,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172),D(1168,228,S4,qYt),l.a=!1,l.b=!1,N(Yi,"EcoreUtil/Copier",1168),D(745,1,da,pZt),l.Nb=function(e){Ea(this,e)},l.Ob=function(){return hie(this)},l.Pb=function(){var e;return hie(this),e=this.b,this.b=null,e},l.Qb=function(){this.a.Qb()},N(Yi,"EcoreUtil/ProperContentIterator",745),D(1382,1381,{},HB);var o5e;N(Yi,"EcoreValidator",1382);var c5e;as(Yi,"FeatureMapUtil/Validator"),D(1260,1,{1942:1},wJ),l.rl=function(e){return!0},N(Yi,"FeatureMapUtil/1",1260),D(757,1,{1942:1},w6t),l.rl=function(e){var n;return this.c==e?!0:(n=Fe(tr(this.a,e)),n==null?rwn(this,e)?(EJt(this.a,e,(Fn(),W7)),!0):(EJt(this.a,e,(Fn(),O2)),!1):n==(Fn(),W7))},l.e=!1;var Dft;N(Yi,"FeatureMapUtil/BasicValidator",757),D(758,43,S4,c2t),N(Yi,"FeatureMapUtil/BasicValidator/Cache",758),D(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},IM),l.Vc=function(e,n){$ce(this.c,this.b,e,n)},l.Fc=function(e){return H5t(this.c,this.b,e)},l.Wc=function(e,n){return wyn(this.c,this.b,e,n)},l.Gc=function(e){return h_(this,e)},l.Xh=function(e,n){jan(this.c,this.b,e,n)},l.lk=function(e,n){return B5t(this.c,this.b,e,n)},l.pi=function(e){return xq(this.c,this.b,e,!1)},l.Zh=function(){return uUt(this.c,this.b)},l.$h=function(){return JYe(this.c,this.b)},l._h=function(e){return Vsn(this.c,this.b,e)},l.mk=function(e,n){return AWt(this,e,n)},l.$b=function(){b6(this)},l.Hc=function(e){return k$(this.c,this.b,e)},l.Ic=function(e){return Hon(this.c,this.b,e)},l.Xb=function(e){return xq(this.c,this.b,e,!0)},l.Wj=function(e){return this},l.Xc=function(e){return esn(this.c,this.b,e)},l.dc=function(){return tj(this)},l.fj=function(){return!GD(this.c,this.b)},l.Kc=function(){return San(this.c,this.b)},l.Yc=function(){return Aan(this.c,this.b)},l.Zc=function(e){return $un(this.c,this.b,e)},l.ii=function(e,n){return ile(this.c,this.b,e,n)},l.ji=function(e,n){Rsn(this.c,this.b,e,n)},l.$c=function(e){return Bae(this.c,this.b,e)},l.Mc=function(e){return Twn(this.c,this.b,e)},l._c=function(e,n){return lle(this.c,this.b,e,n)},l.Wb=function(e){iq(this.c,this.b),h_(this,u(e,15))},l.gc=function(){return Jun(this.c,this.b)},l.Pc=function(){return Zrn(this.c,this.b)},l.Qc=function(e){return nsn(this.c,this.b,e)},l.Ib=function(){var e,n;for(n=new _g,n.a+="[",e=uUt(this.c,this.b);Ait(e);)yo(n,d_($z(e))),Ait(e)&&(n.a+=Xa);return n.a+="]",n.a},l.Xj=function(){iq(this.c,this.b)},N(Yi,"FeatureMapUtil/FeatureEList",501),D(627,36,QI,Mrt),l.yi=function(e){return Z_(this,e)},l.Di=function(e){var n,r,s,o,h,d,w;switch(this.d){case 1:case 2:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.g=e.zi(),e.xi()==1&&(this.d=1),!0;break}case 3:{switch(o=e.xi(),o){case 3:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.d=5,n=new Kv(2),Or(n,this.g),Or(n,e.zi()),this.g=n,!0;break}}break}case 5:{switch(o=e.xi(),o){case 3:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return r=u(this.g,14),r.Fc(e.zi()),!0;break}}break}case 4:{switch(o=e.xi(),o){case 3:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.d=1,this.g=e.zi(),!0;break}case 4:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return this.d=6,w=new Kv(2),Or(w,this.n),Or(w,e.Bi()),this.n=w,d=ut(ot(Sr,1),Jr,25,15,[this.o,e.Ci()]),this.g=d,!0;break}}break}case 6:{switch(o=e.xi(),o){case 4:{if(h=e.Ai(),Gt(h)===Gt(this.c)&&Z_(this,null)==e.yi(null))return r=u(this.n,14),r.Fc(e.Bi()),d=u(this.g,48),s=Nt(Sr,Jr,25,d.length+1,15,1),Pc(d,0,s,0,d.length),s[d.length]=e.Ci(),this.g=s,!0;break}}break}}return!1},N(Yi,"FeatureMapUtil/FeatureENotificationImpl",627),D(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},Dj),l.dl=function(e,n){return H5t(this.c,e,n)},l.el=function(e,n,r){return B5t(this.c,e,n,r)},l.fl=function(e,n,r){return a6t(this.c,e,n,r)},l.gl=function(){return this},l.hl=function(e,n){return kI(this.c,e,n)},l.il=function(e){return u(xq(this.c,this.b,e,!1),72).ak()},l.jl=function(e){return u(xq(this.c,this.b,e,!1),72).dd()},l.kl=function(){return this.a},l.ll=function(e){return!GD(this.c,e)},l.ml=function(e,n){kq(this.c,e,n)},l.nl=function(e){return Gee(this.c,e)},l.ol=function(e){pse(this.c,e)},N(Yi,"FeatureMapUtil/FeatureFeatureMap",552),D(1259,1,nut,BGt),l.Wj=function(e){return xq(this.b,this.a,-1,e)},l.fj=function(){return!GD(this.b,this.a)},l.Wb=function(e){kq(this.b,this.a,e)},l.Xj=function(){iq(this.b,this.a)},N(Yi,"FeatureMapUtil/FeatureValue",1259);var Gx,Ift,Oft,Ux,u5e,fN=as(NH,"AnyType");D(666,60,U0,set),N(NH,"InvalidDatatypeValueException",666);var cU=as(NH,F0e),dN=as(NH,B0e),fLt=as(NH,R0e),l5e,kc,dLt,K2,h5e,f5e,d5e,g5e,p5e,b5e,v5e,w5e,m5e,y5e,x5e,l5,k5e,h5,oA,E5e,Vw,gN,pN,T5e,cA,uA;D(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},Bpt),l._g=function(e,n,r){switch(e){case 0:return r?(!this.c&&(this.c=new ps(this,0)),this.c):(!this.c&&(this.c=new ps(this,0)),this.c.b);case 1:return r?(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)):(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).kl();case 2:return r?(!this.b&&(this.b=new ps(this,2)),this.b):(!this.b&&(this.b=new ps(this,2)),this.b.b)}return hh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e),n,r)},l.jh=function(e,n,r){var s;switch(n){case 0:return!this.c&&(this.c=new ps(this,0)),wI(this.c,e,r);case 1:return(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),69)).mk(e,r);case 2:return!this.b&&(this.b=new ps(this,2)),wI(this.b,e,r)}return s=u(wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),n),66),s.Nj().Rj(this,Mmt(this),n-Jn(this.zh()),e,r)},l.lh=function(e){switch(e){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).dc();case 2:return!!this.b&&this.b.i!=0}return uh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e))},l.sh=function(e,n){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),QM(this.c,n);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new ps(this,2)),QM(this.b,n);return}bh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e),n)},l.zh=function(){return $i(),dLt},l.Bh=function(e){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),Tr(this.c);return;case 1:(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).$b();return;case 2:!this.b&&(this.b=new ps(this,2)),Tr(this.b);return}gh(this,e-Jn(this.zh()),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():this.zh(),e))},l.Ib=function(){var e;return this.j&4?mf(this):(e=new Ah(mf(this)),e.a+=" (mixed: ",o_(e,this.c),e.a+=", anyAttribute: ",o_(e,this.b),e.a+=")",e.a)},N(Ds,"AnyTypeImpl",830),D(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},vB),l._g=function(e,n,r){switch(e){case 0:return this.a;case 1:return this.b}return hh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e),n,r)},l.lh=function(e){switch(e){case 0:return this.a!=null;case 1:return this.b!=null}return uh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e))},l.sh=function(e,n){switch(e){case 0:Dtt(this,jr(n));return;case 1:fpt(this,jr(n));return}bh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e),n)},l.zh=function(){return $i(),l5},l.Bh=function(e){switch(e){case 0:this.a=null;return;case 1:this.b=null;return}gh(this,e-Jn(($i(),l5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():l5,e))},l.Ib=function(){var e;return this.j&4?mf(this):(e=new Ah(mf(this)),e.a+=" (data: ",yo(e,this.a),e.a+=", target: ",yo(e,this.b),e.a+=")",e.a)},l.a=null,l.b=null,N(Ds,"ProcessingInstructionImpl",667),D(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},Tqt),l._g=function(e,n,r){switch(e){case 0:return r?(!this.c&&(this.c=new ps(this,0)),this.c):(!this.c&&(this.c=new ps(this,0)),this.c.b);case 1:return r?(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)):(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).kl();case 2:return r?(!this.b&&(this.b=new ps(this,2)),this.b):(!this.b&&(this.b=new ps(this,2)),this.b.b);case 3:return!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0));case 4:return ivt(this.a,(!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0))));case 5:return this.a}return hh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e),n,r)},l.lh=function(e){switch(e){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0))!=null;case 4:return ivt(this.a,(!this.c&&(this.c=new ps(this,0)),jr(kI(this.c,($i(),oA),!0))))!=null;case 5:return!!this.a}return uh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e))},l.sh=function(e,n){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),QM(this.c,n);return;case 1:(!this.c&&(this.c=new ps(this,0)),u(u($c(this.c,($i(),K2)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new ps(this,2)),QM(this.b,n);return;case 3:Hwt(this,jr(n));return;case 4:Hwt(this,svt(this.a,n));return;case 5:Ec(this,u(n,148));return}bh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e),n)},l.zh=function(){return $i(),h5},l.Bh=function(e){switch(e){case 0:!this.c&&(this.c=new ps(this,0)),Tr(this.c);return;case 1:(!this.c&&(this.c=new ps(this,0)),u($c(this.c,($i(),K2)),153)).$b();return;case 2:!this.b&&(this.b=new ps(this,2)),Tr(this.b);return;case 3:!this.c&&(this.c=new ps(this,0)),kq(this.c,($i(),oA),null);return;case 4:Hwt(this,svt(this.a,null));return;case 5:this.a=null;return}gh(this,e-Jn(($i(),h5)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():h5,e))},N(Ds,"SimpleAnyTypeImpl",668),D(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},Eqt),l._g=function(e,n,r){switch(e){case 0:return r?(!this.a&&(this.a=new ps(this,0)),this.a):(!this.a&&(this.a=new ps(this,0)),this.a.b);case 1:return r?(!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),this.b):(!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),fD(this.b));case 2:return r?(!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),this.c):(!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),fD(this.c));case 3:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),gN));case 4:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),pN));case 5:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),cA));case 6:return!this.a&&(this.a=new ps(this,0)),$c(this.a,($i(),uA))}return hh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e),n,r)},l.jh=function(e,n,r){var s;switch(n){case 0:return!this.a&&(this.a=new ps(this,0)),wI(this.a,e,r);case 1:return!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),kj(this.b,e,r);case 2:return!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),kj(this.c,e,r);case 5:return!this.a&&(this.a=new ps(this,0)),AWt($c(this.a,($i(),cA)),e,r)}return s=u(wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():($i(),Vw),n),66),s.Nj().Rj(this,Mmt(this),n-Jn(($i(),Vw)),e,r)},l.lh=function(e){switch(e){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),gN)));case 4:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),pN)));case 5:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),cA)));case 6:return!this.a&&(this.a=new ps(this,0)),!tj($c(this.a,($i(),uA)))}return uh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e))},l.sh=function(e,n){switch(e){case 0:!this.a&&(this.a=new ps(this,0)),QM(this.a,n);return;case 1:!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),lz(this.b,n);return;case 2:!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),lz(this.c,n);return;case 3:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),gN))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,gN),u(n,14));return;case 4:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),pN))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,pN),u(n,14));return;case 5:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),cA))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,cA),u(n,14));return;case 6:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),uA))),!this.a&&(this.a=new ps(this,0)),h_($c(this.a,uA),u(n,14));return}bh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e),n)},l.zh=function(){return $i(),Vw},l.Bh=function(e){switch(e){case 0:!this.a&&(this.a=new ps(this,0)),Tr(this.a);return;case 1:!this.b&&(this.b=new Il((ln(),Ja),pc,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new Il((ln(),Ja),pc,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),gN)));return;case 4:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),pN)));return;case 5:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),cA)));return;case 6:!this.a&&(this.a=new ps(this,0)),b6($c(this.a,($i(),uA)));return}gh(this,e-Jn(($i(),Vw)),wn(this.j&2?(!this.k&&(this.k=new ih),this.k).ck():Vw,e))},l.Ib=function(){var e;return this.j&4?mf(this):(e=new Ah(mf(this)),e.a+=" (mixed: ",o_(e,this.a),e.a+=")",e.a)},N(Ds,"XMLTypeDocumentRootImpl",669),D(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},Em),l.Ih=function(e,n){switch(e.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:Wo(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return jr(n);case 6:return vQe(u(n,190));case 12:case 47:case 49:case 11:return Qle(this,e,n);case 13:return n==null?null:iyn(u(n,240));case 15:case 14:return n==null?null:gen(Zt(ve(n)));case 17:return tae(($i(),n));case 18:return tae(n);case 21:case 20:return n==null?null:pen(u(n,155).a);case 27:return wQe(u(n,190));case 30:return bse(($i(),u(n,15)));case 31:return bse(u(n,15));case 40:return yQe(($i(),n));case 42:return eae(($i(),n));case 43:return eae(n);case 59:case 48:return mQe(($i(),n));default:throw nt(new Pn(z7+e.ne()+kw))}},l.Jh=function(e){var n,r,s,o,h;switch(e.G==-1&&(e.G=(r=zl(e),r?$g(r.Mh(),e):-1)),e.G){case 0:return n=new Bpt,n;case 1:return s=new vB,s;case 2:return o=new Tqt,o;case 3:return h=new Eqt,h;default:throw nt(new Pn($ct+e.zb+kw))}},l.Kh=function(e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt;switch(e.yj()){case 5:case 52:case 4:return n;case 6:return Nhn(n);case 8:case 7:return n==null?null:xdn(n);case 9:return n==null?null:ED(Gl((s=Hc(n,!0),s.length>0&&($r(0,s.length),s.charCodeAt(0)==43)?s.substr(1):s),-128,127)<<24>>24);case 10:return n==null?null:ED(Gl((o=Hc(n,!0),o.length>0&&($r(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o),-128,127)<<24>>24);case 11:return jr(pw(this,($i(),d5e),n));case 12:return jr(pw(this,($i(),g5e),n));case 13:return n==null?null:new ibt(Hc(n,!0));case 15:case 14:return qbn(n);case 16:return jr(pw(this,($i(),p5e),n));case 17:return kie(($i(),n));case 18:return kie(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Hc(n,!0);case 21:case 20:return Qbn(n);case 22:return jr(pw(this,($i(),b5e),n));case 23:return jr(pw(this,($i(),v5e),n));case 24:return jr(pw(this,($i(),w5e),n));case 25:return jr(pw(this,($i(),m5e),n));case 26:return jr(pw(this,($i(),y5e),n));case 27:return Lhn(n);case 30:return Eie(($i(),n));case 31:return Eie(n);case 32:return n==null?null:de(Gl((M=Hc(n,!0),M.length>0&&($r(0,M.length),M.charCodeAt(0)==43)?M.substr(1):M),Oa,Ti));case 33:return n==null?null:new Fp((B=Hc(n,!0),B.length>0&&($r(0,B.length),B.charCodeAt(0)==43)?B.substr(1):B));case 34:return n==null?null:de(Gl((q=Hc(n,!0),q.length>0&&($r(0,q.length),q.charCodeAt(0)==43)?q.substr(1):q),Oa,Ti));case 36:return n==null?null:b2(Sq((G=Hc(n,!0),G.length>0&&($r(0,G.length),G.charCodeAt(0)==43)?G.substr(1):G)));case 37:return n==null?null:b2(Sq((W=Hc(n,!0),W.length>0&&($r(0,W.length),W.charCodeAt(0)==43)?W.substr(1):W)));case 40:return Gln(($i(),n));case 42:return Tie(($i(),n));case 43:return Tie(n);case 44:return n==null?null:new Fp((Z=Hc(n,!0),Z.length>0&&($r(0,Z.length),Z.charCodeAt(0)==43)?Z.substr(1):Z));case 45:return n==null?null:new Fp((bt=Hc(n,!0),bt.length>0&&($r(0,bt.length),bt.charCodeAt(0)==43)?bt.substr(1):bt));case 46:return Hc(n,!1);case 47:return jr(pw(this,($i(),x5e),n));case 59:case 48:return Vln(($i(),n));case 49:return jr(pw(this,($i(),k5e),n));case 50:return n==null?null:J8(Gl((Mt=Hc(n,!0),Mt.length>0&&($r(0,Mt.length),Mt.charCodeAt(0)==43)?Mt.substr(1):Mt),MH,32767)<<16>>16);case 51:return n==null?null:J8(Gl((h=Hc(n,!0),h.length>0&&($r(0,h.length),h.charCodeAt(0)==43)?h.substr(1):h),MH,32767)<<16>>16);case 53:return jr(pw(this,($i(),E5e),n));case 55:return n==null?null:J8(Gl((d=Hc(n,!0),d.length>0&&($r(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d),MH,32767)<<16>>16);case 56:return n==null?null:J8(Gl((w=Hc(n,!0),w.length>0&&($r(0,w.length),w.charCodeAt(0)==43)?w.substr(1):w),MH,32767)<<16>>16);case 57:return n==null?null:b2(Sq((k=Hc(n,!0),k.length>0&&($r(0,k.length),k.charCodeAt(0)==43)?k.substr(1):k)));case 58:return n==null?null:b2(Sq((_=Hc(n,!0),_.length>0&&($r(0,_.length),_.charCodeAt(0)==43)?_.substr(1):_)));case 60:return n==null?null:de(Gl((r=Hc(n,!0),r.length>0&&($r(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),Oa,Ti));case 61:return n==null?null:de(Gl(Hc(n,!0),Oa,Ti));default:throw nt(new Pn(z7+e.ne()+kw))}};var _5e,gLt,C5e,pLt;N(Ds,"XMLTypeFactoryImpl",1919),D(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},uXt),l.N=!1,l.O=!1;var S5e=!1;N(Ds,"XMLTypePackageImpl",586),D(1852,1,{837:1},r6),l._j=function(){return Q5t(),F5e},N(Ds,"XMLTypePackageImpl/1",1852),D(1861,1,ci,g1),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/10",1861),D(1862,1,ci,wB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/11",1862),D(1863,1,ci,mB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/12",1863),D(1864,1,ci,yB),l.wj=function(e){return Nm(e)},l.xj=function(e){return Nt(wa,re,333,e,7,1)},N(Ds,"XMLTypePackageImpl/13",1864),D(1865,1,ci,xB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/14",1865),D(1866,1,ci,kB),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/15",1866),D(1867,1,ci,EB),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/16",1867),D(1868,1,ci,Hf),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/17",1868),D(1869,1,ci,vu),l.wj=function(e){return _t(e,155)},l.xj=function(e){return Nt(K7,re,155,e,0,1)},N(Ds,"XMLTypePackageImpl/18",1869),D(1870,1,ci,mJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/19",1870),D(1853,1,ci,yJ),l.wj=function(e){return _t(e,843)},l.xj=function(e){return Nt(fN,Me,843,e,0,1)},N(Ds,"XMLTypePackageImpl/2",1853),D(1871,1,ci,xJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/20",1871),D(1872,1,ci,wu),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/21",1872),D(1873,1,ci,sT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/22",1873),D(1874,1,ci,TB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/23",1874),D(1875,1,ci,_B),l.wj=function(e){return _t(e,190)},l.xj=function(e){return Nt(Xu,re,190,e,0,2)},N(Ds,"XMLTypePackageImpl/24",1875),D(1876,1,ci,i6),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/25",1876),D(1877,1,ci,kJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/26",1877),D(1878,1,ci,Mk),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/27",1878),D(1879,1,ci,EJ),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/28",1879),D(1880,1,ci,CB),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/29",1880),D(1854,1,ci,TJ),l.wj=function(e){return _t(e,667)},l.xj=function(e){return Nt(cU,Me,2021,e,0,1)},N(Ds,"XMLTypePackageImpl/3",1854),D(1881,1,ci,_J),l.wj=function(e){return _t(e,19)},l.xj=function(e){return Nt(Ha,re,19,e,0,1)},N(Ds,"XMLTypePackageImpl/30",1881),D(1882,1,ci,aT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/31",1882),D(1883,1,ci,SB),l.wj=function(e){return _t(e,162)},l.xj=function(e){return Nt(Tw,re,162,e,0,1)},N(Ds,"XMLTypePackageImpl/32",1883),D(1884,1,ci,zL),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/33",1884),D(1885,1,ci,oT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/34",1885),D(1886,1,ci,CJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/35",1886),D(1887,1,ci,SJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/36",1887),D(1888,1,ci,qL),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/37",1888),D(1889,1,ci,cT),l.wj=function(e){return _t(e,15)},l.xj=function(e){return Nt(mh,xy,15,e,0,1)},N(Ds,"XMLTypePackageImpl/38",1889),D(1890,1,ci,p1),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/39",1890),D(1855,1,ci,Dk),l.wj=function(e){return _t(e,668)},l.xj=function(e){return Nt(dN,Me,2022,e,0,1)},N(Ds,"XMLTypePackageImpl/4",1855),D(1891,1,ci,AJ),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/40",1891),D(1892,1,ci,Ik),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/41",1892),D(1893,1,ci,HL),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/42",1893),D(1894,1,ci,Gb),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/43",1894),D(1895,1,ci,uT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/44",1895),D(1896,1,ci,VL),l.wj=function(e){return _t(e,184)},l.xj=function(e){return Nt(_w,re,184,e,0,1)},N(Ds,"XMLTypePackageImpl/45",1896),D(1897,1,ci,Vf),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/46",1897),D(1898,1,ci,lT),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/47",1898),D(1899,1,ci,b1),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/48",1899),D(ib,1,ci,v1),l.wj=function(e){return _t(e,184)},l.xj=function(e){return Nt(_w,re,184,e,0,1)},N(Ds,"XMLTypePackageImpl/49",ib),D(1856,1,ci,LJ),l.wj=function(e){return _t(e,669)},l.xj=function(e){return Nt(fLt,Me,2023,e,0,1)},N(Ds,"XMLTypePackageImpl/5",1856),D(1901,1,ci,MJ),l.wj=function(e){return _t(e,162)},l.xj=function(e){return Nt(Tw,re,162,e,0,1)},N(Ds,"XMLTypePackageImpl/50",1901),D(1902,1,ci,L3),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/51",1902),D(1903,1,ci,Ok),l.wj=function(e){return _t(e,19)},l.xj=function(e){return Nt(Ha,re,19,e,0,1)},N(Ds,"XMLTypePackageImpl/52",1903),D(1857,1,ci,Nk),l.wj=function(e){return ha(e)},l.xj=function(e){return Nt(Le,re,2,e,6,1)},N(Ds,"XMLTypePackageImpl/6",1857),D(1858,1,ci,hT),l.wj=function(e){return _t(e,190)},l.xj=function(e){return Nt(Xu,re,190,e,0,2)},N(Ds,"XMLTypePackageImpl/7",1858),D(1859,1,ci,DJ),l.wj=function(e){return Om(e)},l.xj=function(e){return Nt(Ws,re,476,e,8,1)},N(Ds,"XMLTypePackageImpl/8",1859),D(1860,1,ci,s6),l.wj=function(e){return _t(e,217)},l.xj=function(e){return Nt(kx,re,217,e,0,1)},N(Ds,"XMLTypePackageImpl/9",1860);var Y1,op,lA,uU,wt;D(50,60,U0,Rr),N(Yg,"RegEx/ParseException",50),D(820,1,{},GL),l.sl=function(e){return er*16)throw nt(new Rr(Gr((Fr(),Yde))));r=r*16+o}while(!0);if(this.a!=125)throw nt(new Rr(Gr((Fr(),Xde))));if(r>G7)throw nt(new Rr(Gr((Fr(),Qde))));e=r}else{if(o=0,this.c!=0||(o=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(r=o,mi(this),this.c!=0||(o=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));r=r*16+o,e=r}break;case 117:if(s=0,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));n=n*16+s,e=n;break;case 118:if(mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,mi(this),this.c!=0||(s=w2(this.a))<0)throw nt(new Rr(Gr((Fr(),Kg))));if(n=n*16+s,n>G7)throw nt(new Rr(Gr((Fr(),"parser.descappe.4"))));e=n;break;case 65:case 90:case 122:throw nt(new Rr(Gr((Fr(),Zde))))}return e},l.ul=function(e){var n,r;switch(e){case 100:r=(this.e&32)==32?nb("Nd",!0):(yi(),lU);break;case 68:r=(this.e&32)==32?nb("Nd",!1):(yi(),xLt);break;case 119:r=(this.e&32)==32?nb("IsWord",!0):(yi(),IE);break;case 87:r=(this.e&32)==32?nb("IsWord",!1):(yi(),ELt);break;case 115:r=(this.e&32)==32?nb("IsSpace",!0):(yi(),Wx);break;case 83:r=(this.e&32)==32?nb("IsSpace",!1):(yi(),kLt);break;default:throw nt(new Zo((n=e,Z0e+n.toString(16))))}return r},l.vl=function(e){var n,r,s,o,h,d,w,k,_,M,B,q;for(this.b=1,mi(this),n=null,this.c==0&&this.a==94?(mi(this),e?M=(yi(),yi(),new jl(5)):(n=(yi(),yi(),new jl(4)),qc(n,0,G7),M=new jl(4))):M=(yi(),yi(),new jl(4)),o=!0;(q=this.c)!=1&&!(q==0&&this.a==93&&!o);){if(o=!1,r=this.a,s=!1,q==10)switch(r){case 100:case 68:case 119:case 87:case 115:case 83:vy(M,this.ul(r)),s=!0;break;case 105:case 73:case 99:case 67:r=this.Ll(M,r),r<0&&(s=!0);break;case 112:case 80:if(B=J4t(this,r),!B)throw nt(new Rr(Gr((Fr(),Jct))));vy(M,B),s=!0;break;default:r=this.tl()}else if(q==20){if(d=c8(this.i,58,this.d),d<0)throw nt(new Rr(Gr((Fr(),E8t))));if(w=!0,Ta(this.i,this.d)==94&&(++this.d,w=!1),h=Bl(this.i,this.d,d),k=lte(h,w,(this.e&512)==512),!k)throw nt(new Rr(Gr((Fr(),Vde))));if(vy(M,k),s=!0,d+1>=this.j||Ta(this.i,d+1)!=93)throw nt(new Rr(Gr((Fr(),E8t))));this.d=d+2}if(mi(this),!s)if(this.c!=0||this.a!=45)qc(M,r,r);else{if(mi(this),(q=this.c)==1)throw nt(new Rr(Gr((Fr(),EH))));q==0&&this.a==93?(qc(M,r,r),qc(M,45,45)):(_=this.a,q==10&&(_=this.tl()),mi(this),qc(M,r,_))}(this.e&xf)==xf&&this.c==0&&this.a==44&&mi(this)}if(this.c==1)throw nt(new Rr(Gr((Fr(),EH))));return n&&(CC(n,M),M=n),v4(M),TC(M),this.b=0,mi(this),M},l.wl=function(){var e,n,r,s;for(r=this.vl(!1);(s=this.c)!=7;)if(e=this.a,s==0&&(e==45||e==38)||s==4){if(mi(this),this.c!=9)throw nt(new Rr(Gr((Fr(),Ude))));if(n=this.vl(!1),s==4)vy(r,n);else if(e==45)CC(r,n);else if(e==38)Gle(r,n);else throw nt(new Zo("ASSERT"))}else throw nt(new Rr(Gr((Fr(),Wde))));return mi(this),r},l.xl=function(){var e,n;return e=this.a-48,n=(yi(),yi(),new drt(12,null,e)),!this.g&&(this.g=new fR),hR(this.g,new vpt(e)),mi(this),n},l.yl=function(){return mi(this),yi(),M5e},l.zl=function(){return mi(this),yi(),L5e},l.Al=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Bl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Cl=function(){return mi(this),Ucn()},l.Dl=function(){return mi(this),yi(),I5e},l.El=function(){return mi(this),yi(),N5e},l.Fl=function(){var e;if(this.d>=this.j||((e=Ta(this.i,this.d++))&65504)!=64)throw nt(new Rr(Gr((Fr(),zde))));return mi(this),yi(),yi(),new Gd(0,e-64)},l.Gl=function(){return mi(this),Lmn()},l.Hl=function(){return mi(this),yi(),P5e},l.Il=function(){var e;return e=(yi(),yi(),new Gd(0,105)),mi(this),e},l.Jl=function(){return mi(this),yi(),O5e},l.Kl=function(){return mi(this),yi(),D5e},l.Ll=function(e,n){return this.tl()},l.Ml=function(){return mi(this),yi(),mLt},l.Nl=function(){var e,n,r,s,o;if(this.d+1>=this.j)throw nt(new Rr(Gr((Fr(),Rde))));if(s=-1,n=null,e=Ta(this.i,this.d),49<=e&&e<=57){if(s=e-48,!this.g&&(this.g=new fR),hR(this.g,new vpt(s)),++this.d,Ta(this.i,this.d)!=41)throw nt(new Rr(Gr((Fr(),M2))));++this.d}else switch(e==63&&--this.d,mi(this),n=k6t(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));break;default:throw nt(new Rr(Gr((Fr(),jde))))}if(mi(this),o=sw(this),r=null,o.e==2){if(o.em()!=2)throw nt(new Rr(Gr((Fr(),$de))));r=o.am(1),o=o.am(0)}if(this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),yi(),yi(),new qte(s,n,o,r)},l.Ol=function(){return mi(this),yi(),yLt},l.Pl=function(){var e;if(mi(this),e=Wj(24,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Ql=function(){var e;if(mi(this),e=Wj(20,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Rl=function(){var e;if(mi(this),e=Wj(22,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Sl=function(){var e,n,r,s,o;for(e=0,r=0,n=-1;this.d=this.j)throw nt(new Rr(Gr((Fr(),x8t))));if(n==45){for(++this.d;this.d=this.j)throw nt(new Rr(Gr((Fr(),x8t))))}if(n==58){if(++this.d,mi(this),s=WYt(sw(this),e,r),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));mi(this)}else if(n==41)++this.d,mi(this),s=WYt(sw(this),e,r);else throw nt(new Rr(Gr((Fr(),Bde))));return s},l.Tl=function(){var e;if(mi(this),e=Wj(21,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Ul=function(){var e;if(mi(this),e=Wj(23,sw(this)),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Vl=function(){var e,n;if(mi(this),e=this.f++,n=$nt(sw(this),e),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),n},l.Wl=function(){var e;if(mi(this),e=$nt(sw(this),0),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Xl=function(e){return mi(this),this.c==5?(mi(this),Bj(e,(yi(),yi(),new Wm(9,e)))):Bj(e,(yi(),yi(),new Wm(3,e)))},l.Yl=function(e){var n;return mi(this),n=(yi(),yi(),new l_(2)),this.c==5?(mi(this),x2(n,fA),x2(n,e)):(x2(n,e),x2(n,fA)),n},l.Zl=function(e){return mi(this),this.c==5?(mi(this),yi(),yi(),new Wm(9,e)):(yi(),yi(),new Wm(3,e))},l.a=0,l.b=0,l.c=0,l.d=0,l.e=0,l.f=1,l.g=null,l.j=0,N(Yg,"RegEx/RegexParser",820),D(1824,820,{},_qt),l.sl=function(e){return!1},l.tl=function(){return O5t(this)},l.ul=function(e){return y7(e)},l.vl=function(e){return Bhe(this)},l.wl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.xl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.yl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.zl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Al=function(){return mi(this),y7(67)},l.Bl=function(){return mi(this),y7(73)},l.Cl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Dl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.El=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Fl=function(){return mi(this),y7(99)},l.Gl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Hl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Il=function(){return mi(this),y7(105)},l.Jl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Kl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ll=function(e,n){return vy(e,y7(n)),-1},l.Ml=function(){return mi(this),yi(),yi(),new Gd(0,94)},l.Nl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ol=function(){return mi(this),yi(),yi(),new Gd(0,36)},l.Pl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ql=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Rl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Sl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Tl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Ul=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Vl=function(){var e;if(mi(this),e=$nt(sw(this),0),this.c!=7)throw nt(new Rr(Gr((Fr(),M2))));return mi(this),e},l.Wl=function(){throw nt(new Rr(Gr((Fr(),wh))))},l.Xl=function(e){return mi(this),Bj(e,(yi(),yi(),new Wm(3,e)))},l.Yl=function(e){var n;return mi(this),n=(yi(),yi(),new l_(2)),x2(n,e),x2(n,fA),n},l.Zl=function(e){return mi(this),yi(),yi(),new Wm(3,e)};var f5=null,ME=null;N(Yg,"RegEx/ParserForXMLSchema",1824),D(117,1,U7,vv),l.$l=function(e){throw nt(new Zo("Not supported."))},l._l=function(){return-1},l.am=function(e){return null},l.bm=function(){return null},l.cm=function(e){},l.dm=function(e){},l.em=function(){return 0},l.Ib=function(){return this.fm(0)},l.fm=function(e){return this.e==11?".":""},l.e=0;var bLt,DE,hA,A5e,vLt,n3=null,lU,Nft=null,wLt,fA,Pft=null,mLt,yLt,xLt,kLt,ELt,L5e,Wx,M5e,D5e,I5e,O5e,IE,N5e,P5e,E6n=N(Yg,"RegEx/Token",117);D(136,117,{3:1,136:1,117:1},jl),l.fm=function(e){var n,r,s;if(this.e==4)if(this==wLt)r=".";else if(this==lU)r="\\d";else if(this==IE)r="\\w";else if(this==Wx)r="\\s";else{for(s=new _g,s.a+="[",n=0;n0&&(s.a+=","),this.b[n]===this.b[n+1]?yo(s,xI(this.b[n])):(yo(s,xI(this.b[n])),s.a+="-",yo(s,xI(this.b[n+1])));s.a+="]",r=s.a}else if(this==xLt)r="\\D";else if(this==ELt)r="\\W";else if(this==kLt)r="\\S";else{for(s=new _g,s.a+="[^",n=0;n0&&(s.a+=","),this.b[n]===this.b[n+1]?yo(s,xI(this.b[n])):(yo(s,xI(this.b[n])),s.a+="-",yo(s,xI(this.b[n+1])));s.a+="]",r=s.a}return r},l.a=!1,l.c=!1,N(Yg,"RegEx/RangeToken",136),D(584,1,{584:1},vpt),l.a=0,N(Yg,"RegEx/RegexParser/ReferencePosition",584),D(583,1,{3:1,583:1},FHt),l.Fb=function(e){var n;return e==null||!_t(e,583)?!1:(n=u(e,583),un(this.b,n.b)&&this.a==n.a)},l.Hb=function(){return zg(this.b+"/"+S5t(this.a))},l.Ib=function(){return this.c.fm(this.a)},l.a=0,N(Yg,"RegEx/RegularExpression",583),D(223,117,U7,Gd),l._l=function(){return this.a},l.fm=function(e){var n,r,s;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:s="\\"+dnt(this.a&Ms);break;case 12:s="\\f";break;case 10:s="\\n";break;case 13:s="\\r";break;case 9:s="\\t";break;case 27:s="\\e";break;default:this.a>=Qa?(r=(n=this.a>>>0,"0"+n.toString(16)),s="\\v"+Bl(r,r.length-6,r.length)):s=""+dnt(this.a&Ms)}break;case 8:this==mLt||this==yLt?s=""+dnt(this.a&Ms):s="\\"+dnt(this.a&Ms);break;default:s=null}return s},l.a=0,N(Yg,"RegEx/Token/CharToken",223),D(309,117,U7,Wm),l.am=function(e){return this.a},l.cm=function(e){this.b=e},l.dm=function(e){this.c=e},l.em=function(){return 1},l.fm=function(e){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.fm(e)+"*";else if(this.c==this.b)n=this.a.fm(e)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.fm(e)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.fm(e)+"{"+this.c+",}";else throw nt(new Zo("Token#toString(): CLOSURE "+this.c+Xa+this.b));else if(this.c<0&&this.b<0)n=this.a.fm(e)+"*?";else if(this.c==this.b)n=this.a.fm(e)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.fm(e)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.fm(e)+"{"+this.c+",}?";else throw nt(new Zo("Token#toString(): NONGREEDYCLOSURE "+this.c+Xa+this.b));return n},l.b=0,l.c=0,N(Yg,"RegEx/Token/ClosureToken",309),D(821,117,U7,uwt),l.am=function(e){return e==0?this.a:this.b},l.em=function(){return 2},l.fm=function(e){var n;return this.b.e==3&&this.b.am(0)==this.a?n=this.a.fm(e)+"+":this.b.e==9&&this.b.am(0)==this.a?n=this.a.fm(e)+"+?":n=this.a.fm(e)+(""+this.b.fm(e)),n},N(Yg,"RegEx/Token/ConcatToken",821),D(1822,117,U7,qte),l.am=function(e){if(e==0)return this.d;if(e==1)return this.b;throw nt(new Zo("Internal Error: "+e))},l.em=function(){return this.b?2:1},l.fm=function(e){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},l.c=0,N(Yg,"RegEx/Token/ConditionToken",1822),D(1823,117,U7,qQt),l.am=function(e){return this.b},l.em=function(){return 1},l.fm=function(e){return"(?"+(this.a==0?"":S5t(this.a))+(this.c==0?"":S5t(this.c))+":"+this.b.fm(e)+")"},l.a=0,l.c=0,N(Yg,"RegEx/Token/ModifierToken",1823),D(822,117,U7,pwt),l.am=function(e){return this.a},l.em=function(){return 1},l.fm=function(e){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.fm(e)+")":n="("+this.a.fm(e)+")";break;case 20:n="(?="+this.a.fm(e)+")";break;case 21:n="(?!"+this.a.fm(e)+")";break;case 22:n="(?<="+this.a.fm(e)+")";break;case 23:n="(?"+this.a.fm(e)+")"}return n},l.b=0,N(Yg,"RegEx/Token/ParenToken",822),D(521,117,{3:1,117:1,521:1},drt),l.bm=function(){return this.b},l.fm=function(e){return this.e==12?"\\"+this.a:Bpn(this.b)},l.a=0,N(Yg,"RegEx/Token/StringToken",521),D(465,117,U7,l_),l.$l=function(e){x2(this,e)},l.am=function(e){return u(Rv(this.a,e),117)},l.em=function(){return this.a?this.a.a.c.length:0},l.fm=function(e){var n,r,s,o,h;if(this.e==1){if(this.a.a.c.length==2)n=u(Rv(this.a,0),117),r=u(Rv(this.a,1),117),r.e==3&&r.am(0)==n?o=n.fm(e)+"+":r.e==9&&r.am(0)==n?o=n.fm(e)+"+?":o=n.fm(e)+(""+r.fm(e));else{for(h=new _g,s=0;s=this.c.b:this.a<=this.c.b},l.Sb=function(){return this.b>0},l.Tb=function(){return this.b},l.Vb=function(){return this.b-1},l.Qb=function(){throw nt(new Tg(sge))},l.a=0,l.b=0,N(q8t,"ExclusiveRange/RangeIterator",254);var Eh=w8(TH,"C"),Sr=w8(tS,"I"),xl=w8(cx,"Z"),Db=w8(eS,"J"),Xu=w8(QC,"B"),ga=w8(ZC,"D"),r3=w8(JC,"F"),d5=w8(nS,"S"),T6n=as("org.eclipse.elk.core.labels","ILabelManager"),TLt=as(qa,"DiagnosticChain"),_Lt=as(O0e,"ResourceSet"),CLt=N(qa,"InvocationTargetException",null),B5e=(vR(),psn),R5e=R5e=idn;lon(rKe),Fon("permProps",[[[BH,RH],[jH,"gecko1_8"]],[[BH,RH],[jH,"ie10"]],[[BH,RH],[jH,"ie8"]],[[BH,RH],[jH,"ie9"]],[[BH,RH],[jH,"safari"]]]),R5e(null,"elk",null)}).call(this)}).call(this,typeof d0<"u"?d0:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(f,p,v){function m(P,F){if(!(P instanceof F))throw new TypeError("Cannot call a class as a function")}function b(P,F){if(!P)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return F&&(typeof F=="object"||typeof F=="function")?F:P}function E(P,F){if(typeof F!="function"&&F!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof F);P.prototype=Object.create(F&&F.prototype,{constructor:{value:P,enumerable:!1,writable:!0,configurable:!0}}),F&&(Object.setPrototypeOf?Object.setPrototypeOf(P,F):P.__proto__=F)}var C=f("./elk-api.js").default,A=function(P){E(F,P);function F(){var j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};m(this,F);var R=Object.assign({},j),H=!1;try{f.resolve("web-worker"),H=!0}catch{}if(j.workerUrl)if(H){var Y=f("web-worker");R.workerFactory=function(it){return new Y(it)}}else console.warn(`Web worker requested but 'web-worker' package not installed. +Consider installing the package or pass your own 'workerFactory' to ELK's constructor. +... Falling back to non-web worker version.`);if(!R.workerFactory){var rt=f("./elk-worker.min.js"),J=rt.Worker;R.workerFactory=function(it){return new J(it)}}return b(this,(F.__proto__||Object.getPrototypeOf(F)).call(this,R))}return F}(C);Object.defineProperty(p.exports,"__esModule",{value:!0}),p.exports=A,A.default=A},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(f,p,v){p.exports=Worker},{}]},{},[3])(3)})})(mjt);var cUe=mjt.exports;const uUe=PE(cUe),yjt=new uUe;let sv={};const lUe={};let B5={};const hUe=async function(i,a,f,p,v,m,b){const C=f.select(`[id="${a}"]`).insert("g").attr("class","nodes"),A=Object.keys(i);return await Promise.all(A.map(async function(P){const F=i[P];let j="default";F.classes.length>0&&(j=F.classes.join(" ")),j=j+" flowchart-label";const R=em(F.styles);let H=F.text!==void 0?F.text:F.id;const Y={width:0,height:0},rt=[{id:F.id+"-west",layoutOptions:{"port.side":"WEST"}},{id:F.id+"-east",layoutOptions:{"port.side":"EAST"}},{id:F.id+"-south",layoutOptions:{"port.side":"SOUTH"}},{id:F.id+"-north",layoutOptions:{"port.side":"NORTH"}}];let J=0,it="",ft={};switch(F.type){case"round":J=5,it="rect";break;case"square":it="rect";break;case"diamond":it="question",ft={portConstraints:"FIXED_SIDE"};break;case"hexagon":it="hexagon";break;case"odd":it="rect_left_inv_arrow";break;case"lean_right":it="lean_right";break;case"lean_left":it="lean_left";break;case"trapezoid":it="trapezoid";break;case"inv_trapezoid":it="inv_trapezoid";break;case"odd_right":it="rect_left_inv_arrow";break;case"circle":it="circle";break;case"ellipse":it="ellipse";break;case"stadium":it="stadium";break;case"subroutine":it="subroutine";break;case"cylinder":it="cylinder";break;case"group":it="rect";break;case"doublecircle":it="doublecircle";break;default:it="rect"}const Tt={labelStyle:R.labelStyle,shape:it,labelText:H,labelType:F.labelType,rx:J,ry:J,class:j,style:R.style,id:F.id,link:F.link,linkTarget:F.linkTarget,tooltip:v.db.getTooltip(F.id)||"",domId:v.db.lookUpDomId(F.id),haveCallback:F.haveCallback,width:F.type==="group"?500:void 0,dir:F.dir,type:F.type,props:F.props,padding:De().flowchart.padding};let kt,mt;if(Tt.type!=="group")mt=await _Bt(C,Tt,F.dir),kt=mt.node().getBBox();else{p.createElementNS("http://www.w3.org/2000/svg","text");const{shapeSvg:yt,bbox:st}=await Od(C,Tt,void 0,!0);Y.width=st.width,Y.wrappingWidth=De().flowchart.wrappingWidth,Y.height=st.height,Y.labelNode=yt.node(),Tt.labelData=Y}const ct={id:F.id,ports:F.type==="diamond"?rt:[],layoutOptions:ft,labelText:H,labelData:Y,domId:v.db.lookUpDomId(F.id),width:kt==null?void 0:kt.width,height:kt==null?void 0:kt.height,type:F.type,el:mt,parent:m.parentById[F.id]};B5[Tt.id]=ct})),b},xjt=(i,a,f)=>{const p={TB:{in:{north:"north"},out:{south:"west",west:"east",east:"south"}},LR:{in:{west:"west"},out:{east:"south",south:"north",north:"east"}},RL:{in:{east:"east"},out:{west:"north",north:"south",south:"west"}},BT:{in:{south:"south"},out:{north:"east",east:"west",west:"north"}}};return p.TD=p.TB,Wt.info("abc88",f,a,i),p[f][a][i]},kjt=(i,a,f)=>{if(Wt.info("getNextPort abc88",{node:i,edgeDirection:a,graphDirection:f}),!sv[i])switch(f){case"TB":case"TD":sv[i]={inPosition:"north",outPosition:"south"};break;case"BT":sv[i]={inPosition:"south",outPosition:"north"};break;case"RL":sv[i]={inPosition:"east",outPosition:"west"};break;case"LR":sv[i]={inPosition:"west",outPosition:"east"};break}const p=a==="in"?sv[i].inPosition:sv[i].outPosition;return a==="in"?sv[i].inPosition=xjt(sv[i].inPosition,a,f):sv[i].outPosition=xjt(sv[i].outPosition,a,f),p},fUe=(i,a)=>{let f=i.start,p=i.end;const v=f,m=p,b=B5[f],E=B5[p];return!b||!E?{source:f,target:p}:(b.type==="diamond"&&(f=`${f}-${kjt(f,"out",a)}`),E.type==="diamond"&&(p=`${p}-${kjt(p,"in",a)}`),{source:f,target:p,sourceId:v,targetId:m})},dUe=function(i,a,f,p){Wt.info("abc78 edges = ",i);const v=p.insert("g").attr("class","edgeLabels");let m={},b=a.db.getDirection(),E,C;if(i.defaultStyle!==void 0){const A=em(i.defaultStyle);E=A.style,C=A.labelStyle}return i.forEach(function(A){const P="L-"+A.start+"-"+A.end;m[P]===void 0?(m[P]=0,Wt.info("abc78 new entry",P,m[P])):(m[P]++,Wt.info("abc78 new entry",P,m[P]));let F=P+"-"+m[P];Wt.info("abc78 new link id to be used is",P,F,m[P]);const j="LS-"+A.start,R="LE-"+A.end,H={style:"",labelStyle:""};switch(H.minlen=A.length||1,A.type==="arrow_open"?H.arrowhead="none":H.arrowhead="normal",H.arrowTypeStart="arrow_open",H.arrowTypeEnd="arrow_open",A.type){case"double_arrow_cross":H.arrowTypeStart="arrow_cross";case"arrow_cross":H.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":H.arrowTypeStart="arrow_point";case"arrow_point":H.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":H.arrowTypeStart="arrow_circle";case"arrow_circle":H.arrowTypeEnd="arrow_circle";break}let Y="",rt="";switch(A.stroke){case"normal":Y="fill:none;",E!==void 0&&(Y=E),C!==void 0&&(rt=C),H.thickness="normal",H.pattern="solid";break;case"dotted":H.thickness="normal",H.pattern="dotted",H.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":H.thickness="thick",H.pattern="solid",H.style="stroke-width: 3.5px;fill:none;";break}if(A.style!==void 0){const mt=em(A.style);Y=mt.style,rt=mt.labelStyle}H.style=H.style+=Y,H.labelStyle=H.labelStyle+=rt,A.interpolate!==void 0?H.curve=Z2(A.interpolate,ig):i.defaultInterpolate!==void 0?H.curve=Z2(i.defaultInterpolate,ig):H.curve=Z2(lUe.curve,ig),A.text===void 0?A.style!==void 0&&(H.arrowheadStyle="fill: #333"):(H.arrowheadStyle="fill: #333",H.labelpos="c"),H.labelType=A.labelType,H.label=A.text.replace(ui.lineBreakRegex,` +`),A.style===void 0&&(H.style=H.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),H.labelStyle=H.labelStyle.replace("color:","fill:"),H.id=F,H.classes="flowchart-link "+j+" "+R;const J=ABt(v,H),{source:it,target:ft,sourceId:Tt,targetId:kt}=fUe(A,b);Wt.debug("abc78 source and target",it,ft),f.edges.push({id:"e"+A.start+A.end,sources:[it],targets:[ft],sourceId:Tt,targetId:kt,labelEl:J,labels:[{width:H.width,height:H.height,orgWidth:H.width,orgHeight:H.height,text:H.label,layoutOptions:{"edgeLabels.inline":"true","edgeLabels.placement":"CENTER"}}],edgeData:H})}),f},gUe=function(i,a,f,p){let v="";switch(p&&(v=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,v=v.replace(/\(/g,"\\("),v=v.replace(/\)/g,"\\)")),a.arrowTypeStart){case"arrow_cross":i.attr("marker-start","url("+v+"#"+f+"-crossStart)");break;case"arrow_point":i.attr("marker-start","url("+v+"#"+f+"-pointStart)");break;case"arrow_barb":i.attr("marker-start","url("+v+"#"+f+"-barbStart)");break;case"arrow_circle":i.attr("marker-start","url("+v+"#"+f+"-circleStart)");break;case"aggregation":i.attr("marker-start","url("+v+"#"+f+"-aggregationStart)");break;case"extension":i.attr("marker-start","url("+v+"#"+f+"-extensionStart)");break;case"composition":i.attr("marker-start","url("+v+"#"+f+"-compositionStart)");break;case"dependency":i.attr("marker-start","url("+v+"#"+f+"-dependencyStart)");break;case"lollipop":i.attr("marker-start","url("+v+"#"+f+"-lollipopStart)");break}switch(a.arrowTypeEnd){case"arrow_cross":i.attr("marker-end","url("+v+"#"+f+"-crossEnd)");break;case"arrow_point":i.attr("marker-end","url("+v+"#"+f+"-pointEnd)");break;case"arrow_barb":i.attr("marker-end","url("+v+"#"+f+"-barbEnd)");break;case"arrow_circle":i.attr("marker-end","url("+v+"#"+f+"-circleEnd)");break;case"aggregation":i.attr("marker-end","url("+v+"#"+f+"-aggregationEnd)");break;case"extension":i.attr("marker-end","url("+v+"#"+f+"-extensionEnd)");break;case"composition":i.attr("marker-end","url("+v+"#"+f+"-compositionEnd)");break;case"dependency":i.attr("marker-end","url("+v+"#"+f+"-dependencyEnd)");break;case"lollipop":i.attr("marker-end","url("+v+"#"+f+"-lollipopEnd)");break}},pUe=function(i,a){return Wt.info("Extracting classes"),a.db.getClasses()},bUe=function(i){const a={parentById:{},childrenById:{}},f=i.getSubGraphs();return Wt.info("Subgraphs - ",f),f.forEach(function(p){p.nodes.forEach(function(v){a.parentById[v]=p.id,a.childrenById[p.id]===void 0&&(a.childrenById[p.id]=[]),a.childrenById[p.id].push(v)})}),f.forEach(function(p){p.id,a.parentById[p.id]!==void 0&&a.parentById[p.id]}),a},vUe=function(i,a,f){const p=oUe(i,a,f);if(p===void 0||p==="root")return{x:0,y:0};const v=B5[p].offset;return{x:v.posX,y:v.posY}},wUe=function(i,a,f,p,v){const m=vUe(a.sourceId,a.targetId,v),b=a.sections[0].startPoint,E=a.sections[0].endPoint,A=(a.sections[0].bendPoints?a.sections[0].bendPoints:[]).map(rt=>[rt.x+m.x,rt.y+m.y]),P=[[b.x+m.x,b.y+m.y],...A,[E.x+m.x,E.y+m.y]],F=YE().curve(ig),j=i.insert("path").attr("d",F(P)).attr("class","path "+f.classes).attr("fill","none"),R=i.insert("g").attr("class","edgeLabel"),H=xr(R.node().appendChild(a.labelEl)),Y=H.node().firstChild.getBoundingClientRect();H.attr("width",Y.width),H.attr("height",Y.height),R.attr("transform",`translate(${a.labels[0].x+m.x}, ${a.labels[0].y+m.y})`),gUe(j,f,p.type,p.arrowMarkerAbsolute)},Ejt=(i,a)=>{i.forEach(f=>{f.children||(f.children=[]);const p=a.childrenById[f.id];p&&p.forEach(v=>{f.children.push(B5[v])}),Ejt(f.children,a)})},mUe=async function(i,a,f,p){var ct;B5={},sv={};const v=xr("body").append("div").attr("style","height:400px").attr("id","cy");let m={id:"root",layoutOptions:{"elk.hierarchyHandling":"INCLUDE_CHILDREN","org.eclipse.elk.padding":"[top=100, left=100, bottom=110, right=110]","elk.layered.spacing.edgeNodeBetweenLayers":"30","elk.direction":"DOWN"},children:[],edges:[]};switch(Wt.info("Drawing flowchart using v3 renderer",yjt),p.db.getDirection()){case"BT":m.layoutOptions["elk.direction"]="UP";break;case"TB":m.layoutOptions["elk.direction"]="DOWN";break;case"LR":m.layoutOptions["elk.direction"]="RIGHT";break;case"RL":m.layoutOptions["elk.direction"]="LEFT";break}const{securityLevel:E,flowchart:C}=De();let A;E==="sandbox"&&(A=xr("#i"+a));const P=xr(E==="sandbox"?A.nodes()[0].contentDocument.body:"body"),F=E==="sandbox"?A.nodes()[0].contentDocument:document,j=P.select(`[id="${a}"]`);DFt(j,["point","circle","cross"],p.type,p.arrowMarkerAbsolute);const H=p.db.getVertices();let Y;const rt=p.db.getSubGraphs();Wt.info("Subgraphs - ",rt);for(let yt=rt.length-1;yt>=0;yt--)Y=rt[yt],p.db.addVertex(Y.id,{text:Y.title,type:Y.labelType},"group",void 0,Y.classes,Y.dir);const J=j.insert("g").attr("class","subgraphs"),it=bUe(p.db);m=await hUe(H,a,P,F,p,it,m);const ft=j.insert("g").attr("class","edges edgePath"),Tt=p.db.getEdges();m=dUe(Tt,p,m,j),Object.keys(B5).forEach(yt=>{const st=B5[yt];st.parent||m.children.push(st),it.childrenById[yt]!==void 0&&(st.labels=[{text:st.labelText,layoutOptions:{"nodeLabels.placement":"[H_CENTER, V_TOP, INSIDE]"},width:st.labelData.width,height:st.labelData.height}],delete st.x,delete st.y,delete st.width,delete st.height)}),Ejt(m.children,it),Wt.info("after layout",JSON.stringify(m,null,2));const mt=await yjt.layout(m);Tjt(0,0,mt.children,j,J,p,0),Wt.info("after layout",mt),(ct=mt.edges)==null||ct.map(yt=>{wUe(ft,yt,yt.edgeData,p,it)}),s9({},j,C.diagramPadding,C.useMaxWidth),v.remove()},Tjt=(i,a,f,p,v,m,b)=>{f.forEach(function(E){if(E)if(B5[E.id].offset={posX:E.x+i,posY:E.y+a,x:i,y:a,depth:b,width:E.width,height:E.height},E.type==="group"){const C=v.insert("g").attr("class","subgraph");C.insert("rect").attr("class","subgraph subgraph-lvl-"+b%5+" node").attr("x",E.x+i).attr("y",E.y+a).attr("width",E.width).attr("height",E.height);const A=C.insert("g").attr("class","label"),P=De().flowchart.htmlLabels?E.labelData.width/2:0;A.attr("transform",`translate(${E.labels[0].x+i+E.x+P}, ${E.labels[0].y+a+E.y+3})`),A.node().appendChild(E.labelData.labelNode),Wt.info("Id (UGH)= ",E.type,E.labels)}else Wt.info("Id (UGH)= ",E.id),E.el.attr("transform",`translate(${E.x+i+E.width/2}, ${E.y+a+E.height/2})`)}),f.forEach(function(E){E&&E.type==="group"&&Tjt(i+E.x,a+E.y,E.children,p,v,m,b+1)})},yUe={getClasses:pUe,draw:mUe},xUe=i=>{let a="";for(let f=0;f<5;f++)a+=` + .subgraph-lvl-${f} { + fill: ${i[`surface${f}`]}; + stroke: ${i[`surfacePeer${f}`]}; + } + `;return a},kUe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:DDe,renderer:yUe,parser:Fdt,styles:i=>`.label { + font-family: ${i.fontFamily}; + color: ${i.nodeTextColor||i.textColor}; + } + .cluster-label text { + fill: ${i.titleColor}; + } + .cluster-label span { + color: ${i.titleColor}; + } + + .label text,span { + fill: ${i.nodeTextColor||i.textColor}; + color: ${i.nodeTextColor||i.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${i.mainBkg}; + stroke: ${i.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${i.arrowheadColor}; + } + + .edgePath .path { + stroke: ${i.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${i.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${i.edgeLabelBackground}; + rect { + opacity: 0.85; + background-color: ${i.edgeLabelBackground}; + fill: ${i.edgeLabelBackground}; + } + text-align: center; + } + + .cluster rect { + fill: ${i.clusterBkg}; + stroke: ${i.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${i.titleColor}; + } + + .cluster span { + color: ${i.titleColor}; + } + /* .cluster div { + color: ${i.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${i.fontFamily}; + font-size: 12px; + background: ${i.tertiaryColor}; + border: 1px solid ${i.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${i.textColor}; + } + .subgraph { + stroke-width:2; + rx:3; + } + // .subgraph-lvl-1 { + // fill:#ccc; + // // stroke:black; + // } + + .flowchart-label text { + text-anchor: middle; + } + + ${xUe(i)} +`}},Symbol.toStringTag,{value:"Module"}));var Fgt=function(){var i=function(rt,J,it,ft){for(it=it||{},ft=rt.length;ft--;it[rt[ft]]=J);return it},a=[1,2],f=[1,5],p=[6,9,11,17,18,20,22,23,26,27,28],v=[1,15],m=[1,16],b=[1,17],E=[1,18],C=[1,19],A=[1,23],P=[1,24],F=[1,27],j=[4,6,9,11,17,18,20,22,23,26,27,28],R={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,period_statement:24,event_statement:25,period:26,event:27,open_directive:28,type_directive:29,arg_directive:30,close_directive:31,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",26:"period",27:"event",28:"open_directive",29:"type_directive",30:"arg_directive",31:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[24,1],[25,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(J,it,ft,Tt,kt,mt,ct){var yt=mt.length-1;switch(kt){case 1:return mt[yt-1];case 3:this.$=[];break;case 4:mt[yt-1].push(mt[yt]),this.$=mt[yt-1];break;case 5:case 6:this.$=mt[yt];break;case 7:case 8:this.$=[];break;case 11:Tt.getCommonDb().setDiagramTitle(mt[yt].substr(6)),this.$=mt[yt].substr(6);break;case 12:this.$=mt[yt].trim(),Tt.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=mt[yt].trim(),Tt.getCommonDb().setAccDescription(this.$);break;case 15:Tt.addSection(mt[yt].substr(8)),this.$=mt[yt].substr(8);break;case 19:Tt.addTask(mt[yt],0,""),this.$=mt[yt];break;case 20:Tt.addEvent(mt[yt].substr(2)),this.$=mt[yt];break;case 21:Tt.parseDirective("%%{","open_directive");break;case 22:Tt.parseDirective(mt[yt],"type_directive");break;case 23:mt[yt]=mt[yt].trim().replace(/'/g,'"'),Tt.parseDirective(mt[yt],"arg_directive");break;case 24:Tt.parseDirective("}%%","close_directive","timeline");break}},table:[{3:1,4:a,7:3,12:4,28:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,28:f},{13:8,29:[1,9]},{29:[2,21]},{6:[1,10],7:22,8:11,9:[1,12],10:13,11:[1,14],12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:A,27:P,28:f},{1:[2,2]},{14:25,15:[1,26],31:F},i([15,31],[2,22]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:22,10:28,12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:A,27:P,28:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),{19:[1,29]},{21:[1,30]},i(p,[2,14]),i(p,[2,15]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(p,[2,19]),i(p,[2,20]),{11:[1,31]},{16:32,30:[1,33]},{11:[2,24]},i(p,[2,5]),i(p,[2,12]),i(p,[2,13]),i(j,[2,9]),{14:34,31:F},{31:[2,23]},{11:[1,35]},i(j,[2,10])],defaultActions:{5:[2,21],7:[2,2],27:[2,24],33:[2,23]},parseError:function(J,it){if(it.recoverable)this.trace(J);else{var ft=new Error(J);throw ft.hash=it,ft}},parse:function(J){var it=this,ft=[0],Tt=[],kt=[null],mt=[],ct=this.table,yt="",st=0,xt=0,ht=2,dt=1,Ct=mt.slice.call(arguments,1),tt=Object.create(this.lexer),Pt={yy:{}};for(var pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,pt)&&(Pt.yy[pt]=this.yy[pt]);tt.setInput(J,Pt.yy),Pt.yy.lexer=tt,Pt.yy.parser=this,typeof tt.yylloc>"u"&&(tt.yylloc={});var Ft=tt.yylloc;mt.push(Ft);var X=tt.options&&tt.options.ranges;typeof Pt.yy.parseError=="function"?this.parseError=Pt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Rt(){var ke;return ke=Tt.pop()||tt.lex()||dt,typeof ke!="number"&&(ke instanceof Array&&(Tt=ke,ke=Tt.pop()),ke=it.symbols_[ke]||ke),ke}for(var Bt,vt,Ot,Vt,qe={},_n,Te,Wn,Ae;;){if(vt=ft[ft.length-1],this.defaultActions[vt]?Ot=this.defaultActions[vt]:((Bt===null||typeof Bt>"u")&&(Bt=Rt()),Ot=ct[vt]&&ct[vt][Bt]),typeof Ot>"u"||!Ot.length||!Ot[0]){var ne="";Ae=[];for(_n in ct[vt])this.terminals_[_n]&&_n>ht&&Ae.push("'"+this.terminals_[_n]+"'");tt.showPosition?ne="Parse error on line "+(st+1)+`: +`+tt.showPosition()+` +Expecting `+Ae.join(", ")+", got '"+(this.terminals_[Bt]||Bt)+"'":ne="Parse error on line "+(st+1)+": Unexpected "+(Bt==dt?"end of input":"'"+(this.terminals_[Bt]||Bt)+"'"),this.parseError(ne,{text:tt.match,token:this.terminals_[Bt]||Bt,line:tt.yylineno,loc:Ft,expected:Ae})}if(Ot[0]instanceof Array&&Ot.length>1)throw new Error("Parse Error: multiple actions possible at state: "+vt+", token: "+Bt);switch(Ot[0]){case 1:ft.push(Bt),kt.push(tt.yytext),mt.push(tt.yylloc),ft.push(Ot[1]),Bt=null,xt=tt.yyleng,yt=tt.yytext,st=tt.yylineno,Ft=tt.yylloc;break;case 2:if(Te=this.productions_[Ot[1]][1],qe.$=kt[kt.length-Te],qe._$={first_line:mt[mt.length-(Te||1)].first_line,last_line:mt[mt.length-1].last_line,first_column:mt[mt.length-(Te||1)].first_column,last_column:mt[mt.length-1].last_column},X&&(qe._$.range=[mt[mt.length-(Te||1)].range[0],mt[mt.length-1].range[1]]),Vt=this.performAction.apply(qe,[yt,xt,st,Pt.yy,Ot[1],kt,mt].concat(Ct)),typeof Vt<"u")return Vt;Te&&(ft=ft.slice(0,-1*Te*2),kt=kt.slice(0,-1*Te),mt=mt.slice(0,-1*Te)),ft.push(this.productions_[Ot[1]][0]),kt.push(qe.$),mt.push(qe._$),Wn=ct[ft[ft.length-2]][ft[ft.length-1]],ft.push(Wn);break;case 3:return!0}}return!0}},H=function(){var rt={EOF:1,parseError:function(it,ft){if(this.yy.parser)this.yy.parser.parseError(it,ft);else throw new Error(it)},setInput:function(J,it){return this.yy=it||this.yy||{},this._input=J,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var J=this._input[0];this.yytext+=J,this.yyleng++,this.offset++,this.match+=J,this.matched+=J;var it=J.match(/(?:\r\n?|\n).*/g);return it?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),J},unput:function(J){var it=J.length,ft=J.split(/(?:\r\n?|\n)/g);this._input=J+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-it),this.offset-=it;var Tt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ft.length-1&&(this.yylineno-=ft.length-1);var kt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ft?(ft.length===Tt.length?this.yylloc.first_column:0)+Tt[Tt.length-ft.length].length-ft[0].length:this.yylloc.first_column-it},this.options.ranges&&(this.yylloc.range=[kt[0],kt[0]+this.yyleng-it]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(J){this.unput(this.match.slice(J))},pastInput:function(){var J=this.matched.substr(0,this.matched.length-this.match.length);return(J.length>20?"...":"")+J.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var J=this.match;return J.length<20&&(J+=this._input.substr(0,20-J.length)),(J.substr(0,20)+(J.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var J=this.pastInput(),it=new Array(J.length+1).join("-");return J+this.upcomingInput()+` +`+it+"^"},test_match:function(J,it){var ft,Tt,kt;if(this.options.backtrack_lexer&&(kt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(kt.yylloc.range=this.yylloc.range.slice(0))),Tt=J[0].match(/(?:\r\n?|\n).*/g),Tt&&(this.yylineno+=Tt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Tt?Tt[Tt.length-1].length-Tt[Tt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+J[0].length},this.yytext+=J[0],this.match+=J[0],this.matches=J,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(J[0].length),this.matched+=J[0],ft=this.performAction.call(this,this.yy,this,it,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ft)return ft;if(this._backtrack){for(var mt in kt)this[mt]=kt[mt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var J,it,ft,Tt;this._more||(this.yytext="",this.match="");for(var kt=this._currentRules(),mt=0;mtit[0].length)){if(it=ft,Tt=mt,this.options.backtrack_lexer){if(J=this.test_match(ft,kt[mt]),J!==!1)return J;if(this._backtrack){it=!1;continue}else return!1}else if(!this.options.flex)break}return it?(J=this.test_match(it,kt[Tt]),J!==!1?J:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var it=this.next();return it||this.lex()},begin:function(it){this.conditionStack.push(it)},popState:function(){var it=this.conditionStack.length-1;return it>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(it){return it=this.conditionStack.length-1-Math.abs(it||0),it>=0?this.conditionStack[it]:"INITIAL"},pushState:function(it){this.begin(it)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(it,ft,Tt,kt){switch(Tt){case 0:return this.begin("open_directive"),28;case 1:return this.begin("type_directive"),29;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),31;case 4:return 30;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 27;case 21:return 26;case 22:return 6;case 23:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?::\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23],inclusive:!0}}};return rt}();R.lexer=H;function Y(){this.yy={}}return Y.prototype=R,R.Parser=Y,new Y}();Fgt.parser=Fgt;const EUe=Fgt;let bL="",_jt=0;const Bgt=[],UK=[],vL=[],Cjt=()=>COt,Sjt=(i,a,f)=>{FW(globalThis,i,a,f)},Ajt=function(){Bgt.length=0,UK.length=0,bL="",vL.length=0,cg()},Ljt=function(i){bL=i,Bgt.push(i)},Mjt=function(){return Bgt},Djt=function(){let i=Pjt();const a=100;let f=0;for(;!i&&ff.id===_jt-1).events.push(i)},Njt=function(i){const a={section:bL,type:bL,description:i,task:i,classes:[]};UK.push(a)},Pjt=function(){const i=function(f){return vL[f].processed};let a=!0;for(const[f,p]of vL.entries())i(f),a=a&&p.processed;return a},TUe=Object.freeze(Object.defineProperty({__proto__:null,addEvent:Ojt,addSection:Ljt,addTask:Ijt,addTaskOrg:Njt,clear:Ajt,default:{clear:Ajt,getCommonDb:Cjt,addSection:Ljt,getSections:Mjt,getTasks:Djt,addTask:Ijt,addTaskOrg:Njt,addEvent:Ojt,parseDirective:Sjt},getCommonDb:Cjt,getSections:Mjt,getTasks:Djt,parseDirective:Sjt},Symbol.toStringTag,{value:"Module"})),_Ue=12,WK=function(i,a){const f=i.append("rect");return f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),f.attr("rx",a.rx),f.attr("ry",a.ry),a.class!==void 0&&f.attr("class",a.class),f},CUe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function m(C){const A=LA().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(C){const A=LA().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(C){C.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?m(v):a.score<3?b(v):E(v),p},SUe=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},Fjt=function(i,a){const f=a.text.replace(//gi," "),p=i.append("text");p.attr("x",a.x),p.attr("y",a.y),p.attr("class","legend"),p.style("text-anchor",a.anchor),a.class!==void 0&&p.attr("class",a.class);const v=p.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.text(f),p},AUe=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");p.attr("points",f(a.x,a.y,50,20,7)),p.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,Fjt(i,a)},LUe=function(i,a,f){const p=i.append("g"),v=Rgt();v.x=a.x,v.y=a.y,v.fill=a.fill,v.width=f.width,v.height=f.height,v.class="journey-section section-type-"+a.num,v.rx=3,v.ry=3,WK(p,v),Rjt(f)(a.text,p,v.x,v.y,v.width,v.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let Bjt=-1;const MUe=function(i,a,f){const p=a.x+f.width/2,v=i.append("g");Bjt++;const m=300+5*30;v.append("line").attr("id","task"+Bjt).attr("x1",p).attr("y1",a.y).attr("x2",p).attr("y2",m).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),CUe(v,{cx:p,cy:300+(5-a.score)*30,score:a.score});const b=Rgt();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,WK(v,b),a.x+14,Rjt(f)(a.task,v,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},DUe=function(i,a){WK(i,{x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,class:"rect"}).lower()},IUe=function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},Rgt=function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},Rjt=function(){function i(v,m,b,E,C,A,P,F){const j=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("font-color",F).style("text-anchor","middle").text(v);p(j,P)}function a(v,m,b,E,C,A,P,F,j){const{taskFontSize:R,taskFontFamily:H}=F,Y=v.split(//gi);for(let rt=0;rt)/).reverse(),v,m=[],b=1.1,E=f.attr("y"),C=parseFloat(f.attr("dy")),A=f.text(null).append("tspan").attr("x",0).attr("y",E).attr("dy",C+"em");for(let P=0;Pa||v==="
")&&(m.pop(),A.text(m.join(" ").trim()),v==="
"?m=[""]:m=[v],A=f.append("tspan").attr("x",0).attr("y",E).attr("dy",b+"em").text(v))})}const NUe=function(i,a,f,p){const v=f%_Ue-1,m=i.append("g");a.section=v,m.attr("class",(a.class?a.class+" ":"")+"timeline-node "+("section-"+v));const b=m.append("g"),E=m.append("g"),A=E.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(jjt,a.width).node().getBBox(),P=p.fontSize&&p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;return a.height=A.height+P*1.1*.5+a.padding,a.height=Math.max(a.height,a.maxHeight),a.width=a.width+2*a.padding,E.attr("transform","translate("+a.width/2+", "+a.padding/2+")"),FUe(b,a,v),a},PUe=function(i,a,f){const p=i.append("g"),m=p.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(jjt,a.width).node().getBBox(),b=f.fontSize&&f.fontSize.replace?f.fontSize.replace("px",""):f.fontSize;return p.remove(),m.height+b*1.1*.5+a.padding},FUe=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+a.type).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},T9={drawRect:WK,drawCircle:SUe,drawSection:LUe,drawText:Fjt,drawLabel:AUe,drawTask:MUe,drawBackgroundRect:DUe,getTextObj:IUe,getNoteRect:Rgt,initGraphics:OUe,drawNode:NUe,getVirtualNodeHeight:PUe},BUe=function(i,a,f,p){var st,xt;const v=De(),m=v.leftMargin??50;Wt.debug("timeline",p.db);const b=v.securityLevel;let E;b==="sandbox"&&(E=xr("#i"+a));const A=xr(b==="sandbox"?E.nodes()[0].contentDocument.body:"body").select("#"+a);A.append("g");const P=p.db.getTasks(),F=p.db.getCommonDb().getDiagramTitle();Wt.debug("task",P),T9.initGraphics(A);const j=p.db.getSections();Wt.debug("sections",j);let R=0,H=0,Y=0,rt=0,J=50+m,it=50;rt=50;let ft=0,Tt=!0;j.forEach(function(ht){const dt={number:ft,descr:ht,section:ft,width:150,padding:20,maxHeight:R},Ct=T9.getVirtualNodeHeight(A,dt,v);Wt.debug("sectionHeight before draw",Ct),R=Math.max(R,Ct+20)});let kt=0,mt=0;Wt.debug("tasks.length",P.length);for(const[ht,dt]of P.entries()){const Ct={number:ht,descr:dt,section:dt.section,width:150,padding:20,maxHeight:H},tt=T9.getVirtualNodeHeight(A,Ct,v);Wt.debug("taskHeight before draw",tt),H=Math.max(H,tt+20),kt=Math.max(kt,dt.events.length);let Pt=0;for(let pt=0;pt0?j.forEach(ht=>{const dt=P.filter(pt=>pt.section===ht),Ct={number:ft,descr:ht,section:ft,width:200*Math.max(dt.length,1)-50,padding:20,maxHeight:R};Wt.debug("sectionNode",Ct);const tt=A.append("g"),Pt=T9.drawNode(tt,Ct,ft,v);Wt.debug("sectionNode output",Pt),tt.attr("transform",`translate(${J}, ${rt})`),it+=R+50,dt.length>0&&$jt(A,dt,ft,J,it,H,v,kt,mt,R,!1),J+=200*Math.max(dt.length,1),it=rt,ft++}):(Tt=!1,$jt(A,P,ft,J,it,H,v,kt,mt,R,!0));const ct=A.node().getBBox();Wt.debug("bounds",ct),F&&A.append("text").text(F).attr("x",ct.width/2-m).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),Y=Tt?R+H+150:H+100,A.append("g").attr("class","lineWrapper").append("line").attr("x1",m).attr("y1",Y).attr("x2",ct.width+3*m).attr("y2",Y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),s9(void 0,A,((st=v.timeline)==null?void 0:st.padding)??50,((xt=v.timeline)==null?void 0:xt.useMaxWidth)??!1)},$jt=function(i,a,f,p,v,m,b,E,C,A,P){var F;for(const j of a){const R={descr:j.task,section:f,number:f,width:150,padding:20,maxHeight:m};Wt.debug("taskNode",R);const H=i.append("g").attr("class","taskWrapper"),rt=T9.drawNode(H,R,f,b).height;if(Wt.debug("taskHeight after draw",rt),H.attr("transform",`translate(${p}, ${v})`),m=Math.max(m,rt),j.events){const J=i.append("g").attr("class","lineWrapper");let it=m;v+=100,it=it+RUe(i,j.events,f,p,v,b),v-=100,J.append("line").attr("x1",p+190/2).attr("y1",v+m).attr("x2",p+190/2).attr("y2",v+m+(P?m:A)+C+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}p=p+200,P&&!((F=b.timeline)!=null&&F.disableMulticolor)&&f++}v=v-10},RUe=function(i,a,f,p,v,m){let b=0;const E=v;v=v+100;for(const C of a){const A={descr:C,section:f,number:f,width:150,padding:20,maxHeight:50};Wt.debug("eventNode",A);const P=i.append("g").attr("class","eventWrapper"),j=T9.drawNode(P,A,f,m).height;b=b+j,P.attr("transform",`translate(${p}, ${v})`),v=v+10+j}return v=E,b},jUe={setConf:()=>{},draw:BUe},$Ue=i=>{let a="";for(let f=0;f` + .edge { + stroke-width: 3; + } + ${$Ue(i)} + .section-root rect, .section-root path, .section-root circle { + fill: ${i.git0}; + } + .section-root text { + fill: ${i.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .eventWrapper { + filter: brightness(120%); + } +`}},Symbol.toStringTag,{value:"Module"}));var jgt=function(){var i=function(Tt,kt,mt,ct){for(mt=mt||{},ct=Tt.length;ct--;mt[Tt[ct]]=kt);return mt},a=[1,4],f=[1,13],p=[1,12],v=[1,15],m=[1,16],b=[1,20],E=[1,19],C=[6,7,8],A=[1,26],P=[1,24],F=[1,25],j=[6,7,11],R=[1,6,13,15,16,19,22],H=[1,33],Y=[1,34],rt=[1,6,7,11,13,15,16,19,22],J={trace:function(){},yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:function(kt,mt,ct,yt,st,xt,ht){var dt=xt.length-1;switch(st){case 6:case 7:return yt;case 8:yt.getLogger().trace("Stop NL ");break;case 9:yt.getLogger().trace("Stop EOF ");break;case 11:yt.getLogger().trace("Stop NL2 ");break;case 12:yt.getLogger().trace("Stop EOF2 ");break;case 15:yt.getLogger().info("Node: ",xt[dt].id),yt.addNode(xt[dt-1].length,xt[dt].id,xt[dt].descr,xt[dt].type);break;case 16:yt.getLogger().trace("Icon: ",xt[dt]),yt.decorateNode({icon:xt[dt]});break;case 17:case 21:yt.decorateNode({class:xt[dt]});break;case 18:yt.getLogger().trace("SPACELIST");break;case 19:yt.getLogger().trace("Node: ",xt[dt].id),yt.addNode(0,xt[dt].id,xt[dt].descr,xt[dt].type);break;case 20:yt.decorateNode({icon:xt[dt]});break;case 25:yt.getLogger().trace("node found ..",xt[dt-2]),this.$={id:xt[dt-1],descr:xt[dt-1],type:yt.getType(xt[dt-2],xt[dt])};break;case 26:this.$={id:xt[dt],descr:xt[dt],type:yt.nodeType.DEFAULT};break;case 27:yt.getLogger().trace("node found ..",xt[dt-3]),this.$={id:xt[dt-3],descr:xt[dt-1],type:yt.getType(xt[dt-2],xt[dt])};break}},table:[{3:1,4:2,5:3,6:[1,5],8:a},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:a},{6:f,7:[1,10],9:9,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(C,[2,3]),{1:[2,2]},i(C,[2,4]),i(C,[2,5]),{1:[2,6],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:f,9:22,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:A,7:P,10:23,11:F},i(j,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:b,22:E}),i(j,[2,18]),i(j,[2,19]),i(j,[2,20]),i(j,[2,21]),i(j,[2,23]),i(j,[2,24]),i(j,[2,26],{19:[1,30]}),{20:[1,31]},{6:A,7:P,10:32,11:F},{1:[2,7],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(R,[2,14],{7:H,11:Y}),i(rt,[2,8]),i(rt,[2,9]),i(rt,[2,10]),i(j,[2,15]),i(j,[2,16]),i(j,[2,17]),{20:[1,35]},{21:[1,36]},i(R,[2,13],{7:H,11:Y}),i(rt,[2,11]),i(rt,[2,12]),{21:[1,37]},i(j,[2,25]),i(j,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:function(kt,mt){if(mt.recoverable)this.trace(kt);else{var ct=new Error(kt);throw ct.hash=mt,ct}},parse:function(kt){var mt=this,ct=[0],yt=[],st=[null],xt=[],ht=this.table,dt="",Ct=0,tt=0,Pt=2,pt=1,Ft=xt.slice.call(arguments,1),X=Object.create(this.lexer),Rt={yy:{}};for(var Bt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Bt)&&(Rt.yy[Bt]=this.yy[Bt]);X.setInput(kt,Rt.yy),Rt.yy.lexer=X,Rt.yy.parser=this,typeof X.yylloc>"u"&&(X.yylloc={});var vt=X.yylloc;xt.push(vt);var Ot=X.options&&X.options.ranges;typeof Rt.yy.parseError=="function"?this.parseError=Rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Vt(){var Ce;return Ce=yt.pop()||X.lex()||pt,typeof Ce!="number"&&(Ce instanceof Array&&(yt=Ce,Ce=yt.pop()),Ce=mt.symbols_[Ce]||Ce),Ce}for(var qe,_n,Te,Wn,Ae={},ne,ke,Ve,Ee;;){if(_n=ct[ct.length-1],this.defaultActions[_n]?Te=this.defaultActions[_n]:((qe===null||typeof qe>"u")&&(qe=Vt()),Te=ht[_n]&&ht[_n][qe]),typeof Te>"u"||!Te.length||!Te[0]){var He="";Ee=[];for(ne in ht[_n])this.terminals_[ne]&&ne>Pt&&Ee.push("'"+this.terminals_[ne]+"'");X.showPosition?He="Parse error on line "+(Ct+1)+`: +`+X.showPosition()+` +Expecting `+Ee.join(", ")+", got '"+(this.terminals_[qe]||qe)+"'":He="Parse error on line "+(Ct+1)+": Unexpected "+(qe==pt?"end of input":"'"+(this.terminals_[qe]||qe)+"'"),this.parseError(He,{text:X.match,token:this.terminals_[qe]||qe,line:X.yylineno,loc:vt,expected:Ee})}if(Te[0]instanceof Array&&Te.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_n+", token: "+qe);switch(Te[0]){case 1:ct.push(qe),st.push(X.yytext),xt.push(X.yylloc),ct.push(Te[1]),qe=null,tt=X.yyleng,dt=X.yytext,Ct=X.yylineno,vt=X.yylloc;break;case 2:if(ke=this.productions_[Te[1]][1],Ae.$=st[st.length-ke],Ae._$={first_line:xt[xt.length-(ke||1)].first_line,last_line:xt[xt.length-1].last_line,first_column:xt[xt.length-(ke||1)].first_column,last_column:xt[xt.length-1].last_column},Ot&&(Ae._$.range=[xt[xt.length-(ke||1)].range[0],xt[xt.length-1].range[1]]),Wn=this.performAction.apply(Ae,[dt,tt,Ct,Rt.yy,Te[1],st,xt].concat(Ft)),typeof Wn<"u")return Wn;ke&&(ct=ct.slice(0,-1*ke*2),st=st.slice(0,-1*ke),xt=xt.slice(0,-1*ke)),ct.push(this.productions_[Te[1]][0]),st.push(Ae.$),xt.push(Ae._$),Ve=ht[ct[ct.length-2]][ct[ct.length-1]],ct.push(Ve);break;case 3:return!0}}return!0}},it=function(){var Tt={EOF:1,parseError:function(mt,ct){if(this.yy.parser)this.yy.parser.parseError(mt,ct);else throw new Error(mt)},setInput:function(kt,mt){return this.yy=mt||this.yy||{},this._input=kt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var kt=this._input[0];this.yytext+=kt,this.yyleng++,this.offset++,this.match+=kt,this.matched+=kt;var mt=kt.match(/(?:\r\n?|\n).*/g);return mt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),kt},unput:function(kt){var mt=kt.length,ct=kt.split(/(?:\r\n?|\n)/g);this._input=kt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-mt),this.offset-=mt;var yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ct.length-1&&(this.yylineno-=ct.length-1);var st=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ct?(ct.length===yt.length?this.yylloc.first_column:0)+yt[yt.length-ct.length].length-ct[0].length:this.yylloc.first_column-mt},this.options.ranges&&(this.yylloc.range=[st[0],st[0]+this.yyleng-mt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(kt){this.unput(this.match.slice(kt))},pastInput:function(){var kt=this.matched.substr(0,this.matched.length-this.match.length);return(kt.length>20?"...":"")+kt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var kt=this.match;return kt.length<20&&(kt+=this._input.substr(0,20-kt.length)),(kt.substr(0,20)+(kt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var kt=this.pastInput(),mt=new Array(kt.length+1).join("-");return kt+this.upcomingInput()+` +`+mt+"^"},test_match:function(kt,mt){var ct,yt,st;if(this.options.backtrack_lexer&&(st={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(st.yylloc.range=this.yylloc.range.slice(0))),yt=kt[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+kt[0].length},this.yytext+=kt[0],this.match+=kt[0],this.matches=kt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(kt[0].length),this.matched+=kt[0],ct=this.performAction.call(this,this.yy,this,mt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ct)return ct;if(this._backtrack){for(var xt in st)this[xt]=st[xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var kt,mt,ct,yt;this._more||(this.yytext="",this.match="");for(var st=this._currentRules(),xt=0;xtmt[0].length)){if(mt=ct,yt=xt,this.options.backtrack_lexer){if(kt=this.test_match(ct,st[xt]),kt!==!1)return kt;if(this._backtrack){mt=!1;continue}else return!1}else if(!this.options.flex)break}return mt?(kt=this.test_match(mt,st[yt]),kt!==!1?kt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var mt=this.next();return mt||this.lex()},begin:function(mt){this.conditionStack.push(mt)},popState:function(){var mt=this.conditionStack.length-1;return mt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(mt){return mt=this.conditionStack.length-1-Math.abs(mt||0),mt>=0?this.conditionStack[mt]:"INITIAL"},pushState:function(mt){this.begin(mt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(mt,ct,yt,st){switch(yt){case 0:return mt.getLogger().trace("Found comment",ct.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:this.popState();break;case 5:mt.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return mt.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:mt.getLogger().trace("end icon"),this.popState();break;case 10:return mt.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return mt.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return mt.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return mt.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:return this.begin("NODE"),19;case 15:return this.begin("NODE"),19;case 16:return this.begin("NODE"),19;case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:mt.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return mt.getLogger().trace("description:",ct.yytext),"NODE_DESCR";case 26:this.popState();break;case 27:return this.popState(),mt.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),mt.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),mt.getLogger().trace("node end ...",ct.yytext),"NODE_DEND";case 30:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 31:return this.popState(),mt.getLogger().trace("node end (-"),"NODE_DEND";case 32:return this.popState(),mt.getLogger().trace("node end (-"),"NODE_DEND";case 33:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 34:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 35:return mt.getLogger().trace("Long description:",ct.yytext),20;case 36:return mt.getLogger().trace("Long description:",ct.yytext),20}},rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return Tt}();J.lexer=it;function ft(){this.yy={}}return ft.prototype=J,J.Parser=ft,new ft}();jgt.parser=jgt;const qUe=jgt,WP=i=>v0(i,De());let av=[],zjt=0,$gt={};const HUe=()=>{av=[],zjt=0,$gt={}},VUe=function(i){for(let a=av.length-1;a>=0;a--)if(av[a].levelav.length>0?av[0]:null,UUe=(i,a,f,p)=>{Wt.info("addNode",i,a,f,p);const v=De(),m={id:zjt++,nodeId:WP(a),level:i,descr:WP(f),type:p,children:[],width:De().mindmap.maxNodeWidth};switch(m.type){case Zu.ROUNDED_RECT:m.padding=2*v.mindmap.padding;break;case Zu.RECT:m.padding=2*v.mindmap.padding;break;case Zu.HEXAGON:m.padding=2*v.mindmap.padding;break;default:m.padding=v.mindmap.padding}const b=VUe(i);if(b)b.children.push(m),av.push(m);else if(av.length===0)av.push(m);else{let E=new Error('There can be only one root. No parent could be found for ("'+m.descr+'")');throw E.hash={text:"branch "+name,token:"branch "+name,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+name+'"']},E}},Zu={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},WUe=(i,a)=>{switch(Wt.debug("In get type",i,a),i){case"[":return Zu.RECT;case"(":return a===")"?Zu.ROUNDED_RECT:Zu.CLOUD;case"((":return Zu.CIRCLE;case")":return Zu.CLOUD;case"))":return Zu.BANG;case"{{":return Zu.HEXAGON;default:return Zu.DEFAULT}},qjt=(i,a)=>{$gt[i]=a},KUe=i=>{const a=av[av.length-1];i&&i.icon&&(a.icon=WP(i.icon)),i&&i.class&&(a.class=WP(i.class))},_9=i=>{switch(i){case Zu.DEFAULT:return"no-border";case Zu.RECT:return"rect";case Zu.ROUNDED_RECT:return"rounded-rect";case Zu.CIRCLE:return"circle";case Zu.CLOUD:return"cloud";case Zu.BANG:return"bang";case Zu.HEXAGON:return"hexgon";default:return"no-border"}};let Hjt;const YUe=i=>{Hjt=i},XUe=()=>Wt,QUe=i=>av[i],zgt=i=>$gt[i],ZUe=Object.freeze(Object.defineProperty({__proto__:null,addNode:UUe,clear:HUe,decorateNode:KUe,getElementById:zgt,getLogger:XUe,getMindmap:GUe,getNodeById:QUe,getType:WUe,nodeType:Zu,get parseError(){return Hjt},sanitizeText:WP,setElementForId:qjt,setErrorHandler:YUe,type2Str:_9},Symbol.toStringTag,{value:"Module"})),Vjt=12,JUe=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},tWe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("height",a.height).attr("width",a.width)},eWe=function(i,a){const f=a.width,p=a.height,v=.15*f,m=.25*f,b=.35*f,E=.2*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 0 a${v},${v} 0 0,1 ${f*.25},${-1*f*.1} + a${b},${b} 1 0,1 ${f*.4},${-1*f*.1} + a${m},${m} 1 0,1 ${f*.35},${1*f*.2} + + a${v},${v} 1 0,1 ${f*.15},${1*p*.35} + a${E},${E} 1 0,1 ${-1*f*.15},${1*p*.65} + + a${m},${v} 1 0,1 ${-1*f*.25},${f*.15} + a${b},${b} 1 0,1 ${-1*f*.5},0 + a${v},${v} 1 0,1 ${-1*f*.25},${-1*f*.15} + + a${v},${v} 1 0,1 ${-1*f*.1},${-1*p*.35} + a${E},${E} 1 0,1 ${f*.1},${-1*p*.65} + + H0 V0 Z`)},nWe=function(i,a){const f=a.width,p=a.height,v=.15*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 0 a${v},${v} 1 0,0 ${f*.25},${-1*p*.1} + a${v},${v} 1 0,0 ${f*.25},0 + a${v},${v} 1 0,0 ${f*.25},0 + a${v},${v} 1 0,0 ${f*.25},${1*p*.1} + + a${v},${v} 1 0,0 ${f*.15},${1*p*.33} + a${v*.8},${v*.8} 1 0,0 0,${1*p*.34} + a${v},${v} 1 0,0 ${-1*f*.15},${1*p*.33} + + a${v},${v} 1 0,0 ${-1*f*.25},${p*.15} + a${v},${v} 1 0,0 ${-1*f*.25},0 + a${v},${v} 1 0,0 ${-1*f*.25},0 + a${v},${v} 1 0,0 ${-1*f*.25},${-1*p*.15} + + a${v},${v} 1 0,0 ${-1*f*.1},${-1*p*.33} + a${v*.8},${v*.8} 1 0,0 0,${-1*p*.34} + a${v},${v} 1 0,0 ${f*.1},${-1*p*.33} + + H0 V0 Z`)},rWe=function(i,a){i.append("circle").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("r",a.width/2)};function iWe(i,a,f,p,v){return i.insert("polygon",":first-child").attr("points",p.map(function(m){return m.x+","+m.y}).join(" ")).attr("transform","translate("+(v.width-a)/2+", "+f+")")}const sWe=function(i,a){const f=a.height,v=f/4,m=a.width-a.padding+2*v,b=[{x:v,y:0},{x:m-v,y:0},{x:m,y:-f/2},{x:m-v,y:-f},{x:v,y:-f},{x:0,y:-f/2}];iWe(i,m,f,b,a)},aWe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("height",a.height).attr("rx",a.padding).attr("ry",a.padding).attr("width",a.width)},Gjt={drawNode:function(i,a,f,p){const v=p.htmlLabels,m=f%(Vjt-1),b=i.append("g");a.section=m;let E="section-"+m;m<0&&(E+=" section-root"),b.attr("class",(a.class?a.class+" ":"")+"mindmap-node "+E);const C=b.append("g"),A=b.append("g"),P=a.descr.replace(/()/g,` +`);vK(A,P,{useHtmlLabels:v,width:a.width,classes:"mindmap-node-label"}),v||A.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const F=A.node().getBBox(),j=p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;if(a.height=F.height+j*1.1*.5+a.padding,a.width=F.width+2*a.padding,a.icon)if(a.type===Zu.CIRCLE)a.height+=50,a.width+=50,b.append("foreignObject").attr("height","50px").attr("width",a.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),A.attr("transform","translate("+a.width/2+", "+(a.height/2-1.5*a.padding)+")");else{a.width+=50;const R=a.height;a.height=Math.max(R,60);const H=Math.abs(a.height-R);b.append("foreignObject").attr("width","60px").attr("height",a.height).attr("style","text-align: center;margin-top:"+H/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),A.attr("transform","translate("+(25+a.width/2)+", "+(H/2+a.padding/2)+")")}else if(v){const R=(a.width-F.width)/2,H=(a.height-F.height)/2;A.attr("transform","translate("+R+", "+H+")")}else{const R=a.width/2,H=a.padding/2;A.attr("transform","translate("+R+", "+H+")")}switch(a.type){case Zu.DEFAULT:JUe(C,a,m);break;case Zu.ROUNDED_RECT:aWe(C,a);break;case Zu.RECT:tWe(C,a);break;case Zu.CIRCLE:C.attr("transform","translate("+a.width/2+", "+ +a.height/2+")"),rWe(C,a);break;case Zu.CLOUD:eWe(C,a);break;case Zu.BANG:nWe(C,a);break;case Zu.HEXAGON:sWe(C,a);break}return qjt(a.id,b),a.height},positionNode:function(i){const a=zgt(i.id),f=i.x||0,p=i.y||0;a.attr("transform","translate("+f+","+p+")")},drawEdge:function(a,f,p,v,m){const b=m%(Vjt-1),E=p.x+p.width/2,C=p.y+p.height/2,A=f.x+f.width/2,P=f.y+f.height/2,F=A>E?E+Math.abs(E-A)/2:E-Math.abs(E-A)/2,j=P>C?C+Math.abs(C-P)/2:C-Math.abs(C-P)/2,R=A>E?Math.abs(E-F)/2+E:-Math.abs(E-F)/2+E,H=P>C?Math.abs(C-j)/2+C:-Math.abs(C-j)/2+C;a.append("path").attr("d",p.direction==="TB"||p.direction==="BT"?`M${E},${C} Q${E},${H} ${F},${j} T${A},${P}`:`M${E},${C} Q${R},${C} ${F},${j} T${A},${P}`).attr("class","edge section-edge-"+b+" edge-depth-"+v)}};var Ujt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){function f(y){return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(g){return typeof g}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g},f(y)}function p(y,g){if(!(y instanceof g))throw new TypeError("Cannot call a class as a function")}function v(y,g){for(var x=0;xy.length)&&(g=y.length);for(var x=0,T=new Array(g);x"u"?null:window,H=R?R.navigator:null;R&&R.document;var Y=f(""),rt=f({}),J=f(function(){}),it=typeof HTMLElement>"u"?"undefined":f(HTMLElement),ft=function(g){return g&&g.instanceString&&kt(g.instanceString)?g.instanceString():null},Tt=function(g){return g!=null&&f(g)==Y},kt=function(g){return g!=null&&f(g)===J},mt=function(g){return!dt(g)&&(Array.isArray?Array.isArray(g):g!=null&&g instanceof Array)},ct=function(g){return g!=null&&f(g)===rt&&!mt(g)&&g.constructor===Object},yt=function(g){return g!=null&&f(g)===rt},st=function(g){return g!=null&&f(g)===f(1)&&!isNaN(g)},xt=function(g){return st(g)&&Math.floor(g)===g},ht=function(g){if(it!=="undefined")return g!=null&&g instanceof HTMLElement},dt=function(g){return Ct(g)||tt(g)},Ct=function(g){return ft(g)==="collection"&&g._private.single},tt=function(g){return ft(g)==="collection"&&!g._private.single},Pt=function(g){return ft(g)==="core"},pt=function(g){return ft(g)==="stylesheet"},Ft=function(g){return ft(g)==="event"},X=function(g){return g==null?!0:!!(g===""||g.match(/^\s+$/))},Rt=function(g){return typeof HTMLElement>"u"?!1:g instanceof HTMLElement},Bt=function(g){return ct(g)&&st(g.x1)&&st(g.x2)&&st(g.y1)&&st(g.y2)},vt=function(g){return yt(g)&&kt(g.then)},Ot=function(){return H&&H.userAgent.match(/msie|trident|edge/i)},Vt=function(g,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var I=[],O=0;Ox?1:0},ye=function(g,x){return-1*$e(g,x)},fn=Object.assign!=null?Object.assign.bind(Object):function(y){for(var g=arguments,x=1;x1&&(Lt-=1),Lt<1/6?lt+(gt-lt)*6*Lt:Lt<1/2?gt:Lt<2/3?lt+(gt-lt)*(2/3-Lt)*6:lt}var U=new RegExp("^"+Ve+"$").exec(g);if(U){if(T=parseInt(U[1]),T<0?T=(360- -1*T%360)%360:T>360&&(T=T%360),T/=360,L=parseFloat(U[2]),L<0||L>100||(L=L/100,I=parseFloat(U[3]),I<0||I>100)||(I=I/100,O=U[4],O!==void 0&&(O=parseFloat(O),O<0||O>1)))return;if(L===0)$=z=S=Math.round(I*255);else{var et=I<.5?I*(1+L):I+L-I*L,at=2*I-et;$=Math.round(255*V(at,et,T+1/3)),z=Math.round(255*V(at,et,T)),S=Math.round(255*V(at,et,T-1/3))}x=[$,z,S,O]}return x},qt=function(g){var x,T=new RegExp("^"+ne+"$").exec(g);if(T){x=[];for(var L=[],I=1;I<=3;I++){var O=T[I];if(O[O.length-1]==="%"&&(L[I]=!0),O=parseFloat(O),L[I]&&(O=O/100*255),O<0||O>255)return;x.push(Math.floor(O))}var $=L[1]||L[2]||L[3],z=L[1]&&L[2]&&L[3];if($&&!z)return;var S=T[4];if(S!==void 0){if(S=parseFloat(S),S<0||S>1)return;x.push(S)}}return x},zi=function(g){return ki[g.toLowerCase()]},Se=function(g){return(mt(g)?g:null)||zi(g)||Yt(g)||qt(g)||Mi(g)},ki={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Ri=function(g){for(var x=g.map,T=g.keys,L=T.length,I=0;I=g||Ht<0||U&&ie>=I}function Et(){var Xt=_r();if(Lt(Xt))return Dt(Xt);$=setTimeout(Et,gt(Xt))}function Dt(Xt){return $=void 0,et&&T?at(Xt):(T=L=void 0,O)}function It(){$!==void 0&&clearTimeout($),S=0,T=z=L=$=void 0}function zt(){return $===void 0?O:Dt(_r())}function te(){var Xt=_r(),Ht=Lt(Xt);if(T=arguments,L=this,z=Xt,Ht){if($===void 0)return lt(z);if(U)return clearTimeout($),$=setTimeout(Et,g),at(z)}return $===void 0&&($=setTimeout(Et,g)),O}return te.cancel=It,te.flush=zt,te}var os=zb,As=R?R.performance:null,ma=As&&As.now?function(){return As.now()}:function(){return Date.now()},vi=function(){if(R){if(R.requestAnimationFrame)return function(y){R.requestAnimationFrame(y)};if(R.mozRequestAnimationFrame)return function(y){R.mozRequestAnimationFrame(y)};if(R.webkitRequestAnimationFrame)return function(y){R.webkitRequestAnimationFrame(y)};if(R.msRequestAnimationFrame)return function(y){R.msRequestAnimationFrame(y)}}return function(y){y&&setTimeout(function(){y(ma())},1e3/60)}}(),Qc=function(g){return vi(g)},me=ma,bg=9261,Oe=65599,af=5381,fk=function(g){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bg,T=x,L;L=g.next(),!L.done;)T=T*Oe+L.value|0;return T},k3=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bg;return x*Oe+g|0},gm=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:af;return(x<<5)+x+g|0},A9=function(g,x){return g*2097152+x},au=function(g){return g[0]*2097152+g[1]},vg=function(g,x){return[k3(g[0],x[0]),gm(g[1],x[1])]},dk=function(g,x){var T={value:0,done:!1},L=0,I=g.length,O={next:function(){return L=0&&!(g[L]===x&&(g.splice(L,1),T));L--);},mL=function(g){g.splice(0,g.length)},YP=function(g,x){for(var T=0;T"u"?"undefined":f(Set))!==rY?Set:iY,I9=function(g,x){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(g===void 0||x===void 0||!Pt(g)){ou("An element must have a core reference and parameters set");return}var L=x.group;if(L==null&&(x.data&&x.data.source!=null&&x.data.target!=null?L="edges":L="nodes"),L!=="nodes"&&L!=="edges"){ou("An element must be of type `nodes` or `edges`; you specified `"+L+"`");return}this.length=1,this[0]=this;var I=this._private={cy:g,single:!0,data:x.data||{},position:x.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:L,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!x.selected,selectable:x.selectable===void 0?!0:!!x.selectable,locked:!!x.locked,grabbed:!1,grabbable:x.grabbable===void 0?!0:!!x.grabbable,pannable:x.pannable===void 0?L==="edges":!!x.pannable,active:!1,classes:new $5,animation:{current:[],queue:[]},rscratch:{},scratch:x.scratch||{},edges:[],children:[],parent:x.parent&&x.parent.isNode()?x.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(I.position.x==null&&(I.position.x=0),I.position.y==null&&(I.position.y=0),x.renderedPosition){var O=x.renderedPosition,$=g.pan(),z=g.zoom();I.position={x:(O.x-$.x)/z,y:(O.y-$.y)/z}}var S=[];mt(x.classes)?S=x.classes:Tt(x.classes)&&(S=x.classes.split(/\s+/));for(var V=0,U=S.length;VDt?1:0},V=function(Et,Dt,It,zt,te){var Xt;if(It==null&&(It=0),te==null&&(te=T),It<0)throw new Error("lo must be non-negative");for(zt==null&&(zt=Et.length);Itfe;0<=fe?Ut++:Ut--)ie.push(Ut);return ie}.apply(this).reverse(),Ht=[],zt=0,te=Xt.length;ztge;0<=ge?++ie:--ie)se.push(O(Et,It));return se},gt=function(Et,Dt,It,zt){var te,Xt,Ht;for(zt==null&&(zt=T),te=Et[It];It>Dt;){if(Ht=It-1>>1,Xt=Et[Ht],zt(te,Xt)<0){Et[It]=Xt,It=Ht;continue}break}return Et[It]=te},Lt=function(Et,Dt,It){var zt,te,Xt,Ht,ie;for(It==null&&(It=T),te=Et.length,ie=Dt,Xt=Et[Dt],zt=2*Dt+1;zt0;){var Xt=Dt.pop(),Ht=Lt(Xt),ie=Xt.id();if(et[ie]=Ht,Ht!==1/0)for(var Ut=Xt.neighborhood().intersect(lt),fe=0;fe0)for(xn.unshift(Ge);U[Xn];){var Cn=U[Xn];xn.unshift(Cn.edge),xn.unshift(Cn.node),Dn=Cn.node,Xn=Dn.id()}return $.spawn(xn)}}}},cY={kruskal:function(g){g=g||function(It){return 1};for(var x=this.byGroup(),T=x.nodes,L=x.edges,I=T.length,O=new Array(I),$=T,z=function(zt){for(var te=0;te0;){if(te(),Ht++,zt===V){for(var ie=[],Ut=I,fe=V,ge=Et[fe];ie.unshift(Ut),ge!=null&&ie.unshift(ge),Ut=Lt[fe],Ut!=null;)fe=Ut.id(),ge=Et[fe];return{found:!0,distance:U[zt],path:this.spawn(ie),steps:Ht}}at[zt]=!0;for(var se=It._private.edges,Ne=0;Nege&&(lt[fe]=ge,Dt[fe]=Ut,It[fe]=te),!I){var se=Ut*V+ie;!I&<[se]>ge&&(lt[se]=ge,Dt[se]=ie,It[se]=te)}}}for(var Ne=0;Ne1&&arguments[1]!==void 0?arguments[1]:O,Ua=It(Ni),sa=[],Xs=Ua;;){if(Xs==null)return x.spawn();var Cr=Dt(Xs),Jt=Cr.edge,jn=Cr.pred;if(sa.unshift(Xs[0]),Xs.same(ns)&&sa.length>0)break;Jt!=null&&sa.unshift(Jt),Xs=jn}return z.spawn(sa)},Xt=0;Xt=0;V--){var U=S[V],et=U[1],at=U[2];(x[et]===$&&x[at]===z||x[et]===z&&x[at]===$)&&S.splice(V,1)}for(var lt=0;ltL;){var I=Math.floor(Math.random()*x.length);x=bY(I,g,x),T--}return x},vY={kargerStein:function(){var g=this,x=this.byGroup(),T=x.nodes,L=x.edges;L.unmergeBy(function(xn){return xn.isLoop()});var I=T.length,O=L.length,$=Math.ceil(Math.pow(Math.log(I)/Math.LN2,2)),z=Math.floor(I/pY);if(I<2){ou("At least 2 nodes are required for Karger-Stein algorithm");return}for(var S=[],V=0;V1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=1/0,I=x;I1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=-1/0,I=x;I1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=0,I=0,O=x;O1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,I=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,O=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;L?g=g.slice(x,T):(T0&&g.splice(0,x));for(var $=0,z=g.length-1;z>=0;z--){var S=g[z];O?isFinite(S)||(g[z]=-1/0,$++):g.splice(z,1)}I&&g.sort(function(et,at){return et-at});var V=g.length,U=Math.floor(V/2);return V%2!==0?g[U+1+$]:(g[U-1+$]+g[U+$])/2},EY=function(g){return Math.PI*g/180},N9=function(g,x){return Math.atan2(x,g)-Math.PI/2},xL=Math.log2||function(y){return Math.log(y)/Math.log(2)},ZP=function(g){return g>0?1:g<0?-1:0},T3=function(g,x){return Math.sqrt(_3(g,x))},_3=function(g,x){var T=x.x-g.x,L=x.y-g.y;return T*T+L*L},TY=function(g){for(var x=g.length,T=0,L=0;L=g.x1&&g.y2>=g.y1)return{x1:g.x1,y1:g.y1,x2:g.x2,y2:g.y2,w:g.x2-g.x1,h:g.y2-g.y1};if(g.w!=null&&g.h!=null&&g.w>=0&&g.h>=0)return{x1:g.x1,y1:g.y1,x2:g.x1+g.w,y2:g.y1+g.h,w:g.w,h:g.h}}},CY=function(g){return{x1:g.x1,x2:g.x2,w:g.w,y1:g.y1,y2:g.y2,h:g.h}},SY=function(g){g.x1=1/0,g.y1=1/0,g.x2=-1/0,g.y2=-1/0,g.w=0,g.h=0},AY=function(g,x){g.x1=Math.min(g.x1,x.x1),g.x2=Math.max(g.x2,x.x2),g.w=g.x2-g.x1,g.y1=Math.min(g.y1,x.y1),g.y2=Math.max(g.y2,x.y2),g.h=g.y2-g.y1},LY=function(g,x,T){g.x1=Math.min(g.x1,x),g.x2=Math.max(g.x2,x),g.w=g.x2-g.x1,g.y1=Math.min(g.y1,T),g.y2=Math.max(g.y2,T),g.h=g.y2-g.y1},P9=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return g.x1-=x,g.x2+=x,g.y1-=x,g.y2+=x,g.w=g.x2-g.x1,g.h=g.y2-g.y1,g},kL=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],T,L,I,O;if(x.length===1)T=L=I=O=x[0];else if(x.length===2)T=I=x[0],O=L=x[1];else if(x.length===4){var $=E(x,4);T=$[0],L=$[1],I=$[2],O=$[3]}return g.x1-=O,g.x2+=L,g.y1-=T,g.y2+=I,g.w=g.x2-g.x1,g.h=g.y2-g.y1,g},JP=function(g,x){g.x1=x.x1,g.y1=x.y1,g.x2=x.x2,g.y2=x.y2,g.w=g.x2-g.x1,g.h=g.y2-g.y1},EL=function(g,x){return!(g.x1>x.x2||x.x1>g.x2||g.x2x.y2||x.y1>g.y2)},H5=function(g,x,T){return g.x1<=x&&x<=g.x2&&g.y1<=T&&T<=g.y2},MY=function(g,x){return H5(g,x.x,x.y)},tF=function(g,x){return H5(g,x.x1,x.y1)&&H5(g,x.x2,x.y2)},eF=function(g,x,T,L,I,O,$){var z=mk(I,O),S=I/2,V=O/2,U;{var et=T-S+z-$,at=L-V-$,lt=T+S-z+$,gt=at;if(U=vm(g,x,T,L,et,at,lt,gt,!1),U.length>0)return U}{var Lt=T+S+$,Et=L-V+z-$,Dt=Lt,It=L+V-z+$;if(U=vm(g,x,T,L,Lt,Et,Dt,It,!1),U.length>0)return U}{var zt=T-S+z-$,te=L+V+$,Xt=T+S-z+$,Ht=te;if(U=vm(g,x,T,L,zt,te,Xt,Ht,!1),U.length>0)return U}{var ie=T-S-$,Ut=L-V+z-$,fe=ie,ge=L+V-z+$;if(U=vm(g,x,T,L,ie,Ut,fe,ge,!1),U.length>0)return U}var se;{var Ne=T-S+z,pe=L-V+z;if(se=vk(g,x,T,L,Ne,pe,z+$),se.length>0&&se[0]<=Ne&&se[1]<=pe)return[se[0],se[1]]}{var gn=T+S-z,je=L-V+z;if(se=vk(g,x,T,L,gn,je,z+$),se.length>0&&se[0]>=gn&&se[1]<=je)return[se[0],se[1]]}{var Ge=T+S-z,xn=L+V-z;if(se=vk(g,x,T,L,Ge,xn,z+$),se.length>0&&se[0]>=Ge&&se[1]>=xn)return[se[0],se[1]]}{var Dn=T-S+z,Xn=L+V-z;if(se=vk(g,x,T,L,Dn,Xn,z+$),se.length>0&&se[0]<=Dn&&se[1]>=Xn)return[se[0],se[1]]}return[]},DY=function(g,x,T,L,I,O,$){var z=$,S=Math.min(T,I),V=Math.max(T,I),U=Math.min(L,O),et=Math.max(L,O);return S-z<=g&&g<=V+z&&U-z<=x&&x<=et+z},IY=function(g,x,T,L,I,O,$,z,S){var V={x1:Math.min(T,$,I)-S,x2:Math.max(T,$,I)+S,y1:Math.min(L,z,O)-S,y2:Math.max(L,z,O)+S};return!(gV.x2||xV.y2)},OY=function(g,x,T,L){T-=L;var I=x*x-4*g*T;if(I<0)return[];var O=Math.sqrt(I),$=2*g,z=(-x+O)/$,S=(-x-O)/$;return[z,S]},NY=function(g,x,T,L,I){var O=1e-5;g===0&&(g=O),x/=g,T/=g,L/=g;var $,z,S,V,U,et,at,lt;if(z=(3*T-x*x)/9,S=-(27*L)+x*(9*T-2*(x*x)),S/=54,$=z*z*z+S*S,I[1]=0,at=x/3,$>0){U=S+Math.sqrt($),U=U<0?-Math.pow(-U,1/3):Math.pow(U,1/3),et=S-Math.sqrt($),et=et<0?-Math.pow(-et,1/3):Math.pow(et,1/3),I[0]=-at+U+et,at+=(U+et)/2,I[4]=I[2]=-at,at=Math.sqrt(3)*(-et+U)/2,I[3]=at,I[5]=-at;return}if(I[5]=I[3]=0,$===0){lt=S<0?-Math.pow(-S,1/3):Math.pow(S,1/3),I[0]=-at+2*lt,I[4]=I[2]=-(lt+at);return}z=-z,V=z*z*z,V=Math.acos(S/Math.sqrt(V)),lt=2*Math.sqrt(z),I[0]=-at+lt*Math.cos(V/3),I[2]=-at+lt*Math.cos((V+2*Math.PI)/3),I[4]=-at+lt*Math.cos((V+4*Math.PI)/3)},PY=function(g,x,T,L,I,O,$,z){var S=1*T*T-4*T*I+2*T*$+4*I*I-4*I*$+$*$+L*L-4*L*O+2*L*z+4*O*O-4*O*z+z*z,V=1*9*T*I-3*T*T-3*T*$-6*I*I+3*I*$+9*L*O-3*L*L-3*L*z-6*O*O+3*O*z,U=1*3*T*T-6*T*I+T*$-T*g+2*I*I+2*I*g-$*g+3*L*L-6*L*O+L*z-L*x+2*O*O+2*O*x-z*x,et=1*T*I-T*T+T*g-I*g+L*O-L*L+L*x-O*x,at=[];NY(S,V,U,et,at);for(var lt=1e-7,gt=[],Lt=0;Lt<6;Lt+=2)Math.abs(at[Lt+1])=0&&at[Lt]<=1&>.push(at[Lt]);gt.push(1),gt.push(0);for(var Et=-1,Dt,It,zt,te=0;te=0?ztS?(g-I)*(g-I)+(x-O)*(x-O):V-et},jd=function(g,x,T){for(var L,I,O,$,z,S=0,V=0;V=g&&g>=O||L<=g&&g<=O)z=(g-L)/(O-L)*($-I)+I,z>x&&S++;else continue;return S%2!==0},lv=function(g,x,T,L,I,O,$,z,S){var V=new Array(T.length),U;z[0]!=null?(U=Math.atan(z[1]/z[0]),z[0]<0?U=U+Math.PI/2:U=-U-Math.PI/2):U=z;for(var et=Math.cos(-U),at=Math.sin(-U),lt=0;lt0){var Lt=rF(V,-S);gt=nF(Lt)}else gt=V;return jd(g,x,gt)},BY=function(g,x,T,L,I,O,$){for(var z=new Array(T.length),S=O/2,V=$/2,U=CL(O,$),et=U*U,at=0;at=0&&Lt<=1&&Dt.push(Lt),Et>=0&&Et<=1&&Dt.push(Et),Dt.length===0)return[];var It=Dt[0]*z[0]+g,zt=Dt[0]*z[1]+x;if(Dt.length>1){if(Dt[0]==Dt[1])return[It,zt];var te=Dt[1]*z[0]+g,Xt=Dt[1]*z[1]+x;return[It,zt,te,Xt]}else return[It,zt]},TL=function(g,x,T){return x<=g&&g<=T||T<=g&&g<=x?g:g<=x&&x<=T||T<=x&&x<=g?x:T},vm=function(g,x,T,L,I,O,$,z,S){var V=g-I,U=T-g,et=$-I,at=x-O,lt=L-x,gt=z-O,Lt=et*at-gt*V,Et=U*at-lt*V,Dt=gt*U-et*lt;if(Dt!==0){var It=Lt/Dt,zt=Et/Dt,te=.001,Xt=0-te,Ht=1+te;return Xt<=It&&It<=Ht&&Xt<=zt&&zt<=Ht?[g+It*U,x+It*lt]:S?[g+It*U,x+It*lt]:[]}else return Lt===0||Et===0?TL(g,T,$)===$?[$,z]:TL(g,T,I)===I?[I,O]:TL(I,$,T)===T?[T,L]:[]:[]},wk=function(g,x,T,L,I,O,$,z){var S=[],V,U=new Array(T.length),et=!0;O==null&&(et=!1);var at;if(et){for(var lt=0;lt0){var gt=rF(U,-z);at=nF(gt)}else at=U}else at=T;for(var Lt,Et,Dt,It,zt=0;zt2){for(var je=[S[0],S[1]],Ge=Math.pow(je[0]-g,2)+Math.pow(je[1]-x,2),xn=1;xnV&&(V=zt)},get:function(It){return S[It]}},et=0;et<$.length;et++){var at=$[et],lt=at.id();T?z[lt]=at.outgoers().nodes():z[lt]=at.openNeighborhood().nodes(),U.set(lt,0)}for(var gt=function(It){for(var zt=$[It].id(),te=[],Xt={},Ht={},ie={},Ut=new pk(function(ur,er){return ie[ur]-ie[er]}),fe=0;fe<$.length;fe++){var ge=$[fe].id();Xt[ge]=[],Ht[ge]=0,ie[ge]=1/0}for(Ht[zt]=1,ie[zt]=0,Ut.push(zt);!Ut.empty();){var se=Ut.pop();if(te.push(se),I)for(var Ne=0;Ne0?je=gn.edgesTo(pe)[0]:je=pe.edgesTo(gn)[0];var Ge=L(je);pe=pe.id(),ie[pe]>ie[se]+Ge&&(ie[pe]=ie[se]+Ge,Ut.nodes.indexOf(pe)<0?Ut.push(pe):Ut.updateItem(pe),Ht[pe]=0,Xt[pe]=[]),ie[pe]==ie[se]+Ge&&(Ht[pe]=Ht[pe]+Ht[se],Xt[pe].push(se))}else for(var xn=0;xn0;){for(var Yn=te.pop(),rr=0;rr0&&$.push(T[z]);$.length!==0&&I.push(L.collection($))}return I},ZY=function(g,x){for(var T=0;T5&&arguments[5]!==void 0?arguments[5]:eX,$=L,z,S,V=0;V=2?yk(g,x,T,0,dF,nX):yk(g,x,T,0,fF)},squaredEuclidean:function(g,x,T){return yk(g,x,T,0,dF)},manhattan:function(g,x,T){return yk(g,x,T,0,fF)},max:function(g,x,T){return yk(g,x,T,-1/0,rX)}};U5["squared-euclidean"]=U5.squaredEuclidean,U5.squaredeuclidean=U5.squaredEuclidean;function B9(y,g,x,T,L,I){var O;return kt(y)?O=y:O=U5[y]||U5.euclidean,g===0&&kt(y)?O(L,I):O(g,x,T,L,I)}var iX=zf({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),LL=function(g){return iX(g)},R9=function(g,x,T,L,I){var O=I!=="kMedoids",$=O?function(U){return T[U]}:function(U){return L[U](T)},z=function(et){return L[et](x)},S=T,V=x;return B9(g,L.length,$,z,S,V)},ML=function(g,x,T){for(var L=T.length,I=new Array(L),O=new Array(L),$=new Array(x),z=null,S=0;ST)return!1}return!0},oX=function(g,x,T){for(var L=0;L$&&($=x[S][V],z=V);I[z].push(g[S])}for(var U=0;U=I.threshold||I.mode==="dendrogram"&&g.length===1)return!1;var lt=x[O],gt=x[L[O]],Lt;I.mode==="dendrogram"?Lt={left:lt,right:gt,key:lt.key}:Lt={value:lt.value.concat(gt.value),key:lt.key},g[lt.index]=Lt,g.splice(gt.index,1),x[lt.key]=Lt;for(var Et=0;EtT[gt.key][Dt.key]&&(z=T[gt.key][Dt.key])):I.linkage==="max"?(z=T[lt.key][Dt.key],T[lt.key][Dt.key]0&&L.push(I);return L},xF=function(g,x,T){for(var L=[],I=0;I$&&(O=S,$=x[I*g+S])}O>0&&L.push(O)}for(var V=0;VS&&(z=V,S=U)}T[I]=O[z]}return L=xF(g,x,T),L},kF=function(g){for(var x=this.cy(),T=this.nodes(),L=xX(g),I={},O=0;O=ge?(se=ge,ge=pe,Ne=gn):pe>se&&(se=pe);for(var je=0;je<$;je++)U[fe*$+je]=(1-L.damping)*(S[fe*$+je]-ge)+L.damping*It[je];U[fe*$+Ne]=(1-L.damping)*(S[fe*$+Ne]-se)+L.damping*It[Ne]}for(var Ge=0;Ge<$;Ge++){for(var xn=0,Dn=0;Dn<$;Dn++)It[Dn]=et[Dn*$+Ge],zt[Dn]=Math.max(0,U[Dn*$+Ge]),xn+=zt[Dn];xn-=zt[Ge],zt[Ge]=U[Ge*$+Ge],xn+=zt[Ge];for(var Xn=0;Xn<$;Xn++)et[Xn*$+Ge]=(1-L.damping)*Math.min(0,xn-zt[Xn])+L.damping*It[Xn];et[Ge*$+Ge]=(1-L.damping)*(xn-zt[Ge])+L.damping*It[Ge]}for(var Cn=0,Yn=0;Yn<$;Yn++){var rr=et[Yn*$+Yn]+U[Yn*$+Yn]>0?1:0;Ht[Ut%L.minIterations*$+Yn]=rr,Cn+=rr}if(Cn>0&&(Ut>=L.minIterations-1||Ut==L.maxIterations-1)){for(var wr=0,ur=0;ur<$;ur++){te[ur]=0;for(var er=0;er1||Xt>1)&&($=!0),U[It]=[],Dt.outgoers().forEach(function(ie){ie.isEdge()&&U[It].push(ie.id())})}else et[It]=[void 0,Dt.target().id()]}):O.forEach(function(Dt){var It=Dt.id();if(Dt.isNode()){var zt=Dt.degree(!0);zt%2&&(z?S?$=!0:S=It:z=It),U[It]=[],Dt.connectedEdges().forEach(function(te){return U[It].push(te.id())})}else et[It]=[Dt.source().id(),Dt.target().id()]});var at={found:!1,trail:void 0};if($)return at;if(S&&z)if(I){if(V&&S!=V)return at;V=S}else{if(V&&S!=V&&z!=V)return at;V||(V=S)}else V||(V=O[0].id());var lt=function(It){for(var zt=It,te=[It],Xt,Ht,ie;U[zt].length;)Xt=U[zt].shift(),Ht=et[Xt][0],ie=et[Xt][1],zt!=ie?(U[ie]=U[ie].filter(function(Ut){return Ut!=Xt}),zt=ie):!I&&zt!=Ht&&(U[Ht]=U[Ht].filter(function(Ut){return Ut!=Xt}),zt=Ht),te.unshift(Xt),te.unshift(zt);return te},gt=[],Lt=[];for(Lt=lt(V);Lt.length!=1;)U[Lt[0]].length==0?(gt.unshift(O.getElementById(Lt.shift())),gt.unshift(O.getElementById(Lt.shift()))):Lt=lt(Lt.shift()).concat(Lt);gt.unshift(O.getElementById(Lt.shift()));for(var Et in U)if(U[Et].length)return at;return at.found=!0,at.trail=this.spawn(gt,!0),at}},$9=function(){var g=this,x={},T=0,L=0,I=[],O=[],$={},z=function(et,at){for(var lt=O.length-1,gt=[],Lt=g.spawn();O[lt].x!=et||O[lt].y!=at;)gt.push(O.pop().edge),lt--;gt.push(O.pop().edge),gt.forEach(function(Et){var Dt=Et.connectedNodes().intersection(g);Lt.merge(Et),Dt.forEach(function(It){var zt=It.id(),te=It.connectedEdges().intersection(g);Lt.merge(It),x[zt].cutVertex?Lt.merge(te.filter(function(Xt){return Xt.isLoop()})):Lt.merge(te)})}),I.push(Lt)},S=function U(et,at,lt){et===lt&&(L+=1),x[at]={id:T,low:T++,cutVertex:!1};var gt=g.getElementById(at).connectedEdges().intersection(g);if(gt.size()===0)I.push(g.spawn(g.getElementById(at)));else{var Lt,Et,Dt,It;gt.forEach(function(zt){Lt=zt.source().id(),Et=zt.target().id(),Dt=Lt===at?Et:Lt,Dt!==lt&&(It=zt.id(),$[It]||($[It]=!0,O.push({x:at,y:Dt,edge:zt})),Dt in x?x[at].low=Math.min(x[at].low,x[Dt].id):(U(et,Dt,at),x[at].low=Math.min(x[at].low,x[Dt].low),x[at].id<=x[Dt].low&&(x[at].cutVertex=!0,z(at,Dt))))})}};g.forEach(function(U){if(U.isNode()){var et=U.id();et in x||(L=0,S(et,et),x[et].cutVertex=L>1)}});var V=Object.keys(x).filter(function(U){return x[U].cutVertex}).map(function(U){return g.getElementById(U)});return{cut:g.spawn(V),components:I}},LX={hopcroftTarjanBiconnected:$9,htbc:$9,htb:$9,hopcroftTarjanBiconnectedComponents:$9},z9=function(){var g=this,x={},T=0,L=[],I=[],O=g.spawn(g),$=function z(S){I.push(S),x[S]={index:T,low:T++,explored:!1};var V=g.getElementById(S).connectedEdges().intersection(g);if(V.forEach(function(gt){var Lt=gt.target().id();Lt!==S&&(Lt in x||z(Lt),x[Lt].explored||(x[S].low=Math.min(x[S].low,x[Lt].low)))}),x[S].index===x[S].low){for(var U=g.spawn();;){var et=I.pop();if(U.merge(g.getElementById(et)),x[et].low=x[S].index,x[et].explored=!0,et===S)break}var at=U.edgesWith(U),lt=U.merge(at);L.push(lt),O=O.difference(lt)}};return g.forEach(function(z){if(z.isNode()){var S=z.id();S in x||$(S)}}),{cut:O,components:L}},MX={tarjanStronglyConnected:z9,tsc:z9,tscc:z9,tarjanStronglyConnectedComponents:z9},EF={};[gk,oY,cY,lY,fY,gY,vY,qY,V5,G5,AL,tX,dX,mX,CX,AX,LX,MX].forEach(function(y){fn(EF,y)});/*! +Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable +Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) +Licensed under The MIT License (http://opensource.org/licenses/MIT) +*/var TF=0,_F=1,CF=2,hv=function y(g){if(!(this instanceof y))return new y(g);this.id="Thenable/1.0.7",this.state=TF,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof g=="function"&&g.call(this,this.fulfill.bind(this),this.reject.bind(this))};hv.prototype={fulfill:function(g){return SF(this,_F,"fulfillValue",g)},reject:function(g){return SF(this,CF,"rejectReason",g)},then:function(g,x){var T=this,L=new hv;return T.onFulfilled.push(MF(g,L,"fulfill")),T.onRejected.push(MF(x,L,"reject")),AF(T),L.proxy}};var SF=function(g,x,T,L){return g.state===TF&&(g.state=x,g[T]=L,AF(g)),g},AF=function(g){g.state===_F?LF(g,"onFulfilled",g.fulfillValue):g.state===CF&&LF(g,"onRejected",g.rejectReason)},LF=function(g,x,T){if(g[x].length!==0){var L=g[x];g[x]=[];var I=function(){for(var $=0;$0}},clearQueue:function(){return function(){var x=this,T=x.length!==void 0,L=T?x:[x],I=this._private.cy||this;if(!I.styleEnabled())return this;for(var O=0;O-1}var DQ=MQ;function IQ(y,g){var x=this.__data__,T=V9(x,y);return T<0?(++this.size,x.push([y,g])):x[T][1]=g,this}var OQ=IQ;function Y5(y){var g=-1,x=y==null?0:y.length;for(this.clear();++g-1&&y%1==0&&y0&&this.spawn(L).updateStyle().emit("class"),x},addClass:function(g){return this.toggleClass(g,!0)},hasClass:function(g){var x=this[0];return x!=null&&x._private.classes.has(g)},toggleClass:function(g,x){mt(g)||(g=g.match(/\S+/g)||[]);for(var T=this,L=x===void 0,I=[],O=0,$=T.length;O<$;O++)for(var z=T[O],S=z._private.classes,V=!1,U=0;U0&&this.spawn(I).updateStyle().emit("class"),T},removeClass:function(g){return this.toggleClass(g,!1)},flashClass:function(g,x){var T=this;if(x==null)x=250;else if(x===0)return T;return T.addClass(g),setTimeout(function(){T.removeClass(g)},x),T}};K9.className=K9.classNames=K9.classes;var oc={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Ae,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};oc.variable="(?:[\\w-.]|(?:\\\\"+oc.metaChar+"))+",oc.className="(?:[\\w-]|(?:\\\\"+oc.metaChar+"))+",oc.value=oc.string+"|"+oc.number,oc.id=oc.variable,function(){var y,g,x;for(y=oc.comparatorOp.split("|"),x=0;x=0)&&g!=="="&&(oc.comparatorOp+="|\\!"+g)}();var Zc=function(){return{checks:[]}},Qi={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},FL=[{selector:":selected",matches:function(g){return g.selected()}},{selector:":unselected",matches:function(g){return!g.selected()}},{selector:":selectable",matches:function(g){return g.selectable()}},{selector:":unselectable",matches:function(g){return!g.selectable()}},{selector:":locked",matches:function(g){return g.locked()}},{selector:":unlocked",matches:function(g){return!g.locked()}},{selector:":visible",matches:function(g){return g.visible()}},{selector:":hidden",matches:function(g){return!g.visible()}},{selector:":transparent",matches:function(g){return g.transparent()}},{selector:":grabbed",matches:function(g){return g.grabbed()}},{selector:":free",matches:function(g){return!g.grabbed()}},{selector:":removed",matches:function(g){return g.removed()}},{selector:":inside",matches:function(g){return!g.removed()}},{selector:":grabbable",matches:function(g){return g.grabbable()}},{selector:":ungrabbable",matches:function(g){return!g.grabbable()}},{selector:":animated",matches:function(g){return g.animated()}},{selector:":unanimated",matches:function(g){return!g.animated()}},{selector:":parent",matches:function(g){return g.isParent()}},{selector:":childless",matches:function(g){return g.isChildless()}},{selector:":child",matches:function(g){return g.isChild()}},{selector:":orphan",matches:function(g){return g.isOrphan()}},{selector:":nonorphan",matches:function(g){return g.isChild()}},{selector:":compound",matches:function(g){return g.isNode()?g.isParent():g.source().isParent()||g.target().isParent()}},{selector:":loop",matches:function(g){return g.isLoop()}},{selector:":simple",matches:function(g){return g.isSimple()}},{selector:":active",matches:function(g){return g.active()}},{selector:":inactive",matches:function(g){return!g.active()}},{selector:":backgrounding",matches:function(g){return g.backgrounding()}},{selector:":nonbackgrounding",matches:function(g){return!g.backgrounding()}}].sort(function(y,g){return ye(y.selector,g.selector)}),OZ=function(){for(var y={},g,x=0;x0&&V.edgeCount>0)return no("The selector `"+g+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(V.edgeCount>1)return no("The selector `"+g+"` is invalid because it uses multiple edge selectors"),!1;V.edgeCount===1&&no("The selector `"+g+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},jZ=function(){if(this.toStringCache!=null)return this.toStringCache;for(var g=function(V){return V??""},x=function(V){return Tt(V)?'"'+V+'"':g(V)},T=function(V){return" "+V+" "},L=function(V,U){var et=V.type,at=V.value;switch(et){case Qi.GROUP:{var lt=g(at);return lt.substring(0,lt.length-1)}case Qi.DATA_COMPARE:{var gt=V.field,Lt=V.operator;return"["+gt+T(g(Lt))+x(at)+"]"}case Qi.DATA_BOOL:{var Et=V.operator,Dt=V.field;return"["+g(Et)+Dt+"]"}case Qi.DATA_EXIST:{var It=V.field;return"["+It+"]"}case Qi.META_COMPARE:{var zt=V.operator,te=V.field;return"[["+te+T(g(zt))+x(at)+"]]"}case Qi.STATE:return at;case Qi.ID:return"#"+at;case Qi.CLASS:return"."+at;case Qi.PARENT:case Qi.CHILD:return I(V.parent,U)+T(">")+I(V.child,U);case Qi.ANCESTOR:case Qi.DESCENDANT:return I(V.ancestor,U)+" "+I(V.descendant,U);case Qi.COMPOUND_SPLIT:{var Xt=I(V.left,U),Ht=I(V.subject,U),ie=I(V.right,U);return Xt+(Xt.length>0?" ":"")+Ht+ie}case Qi.TRUE:return""}},I=function(V,U){return V.checks.reduce(function(et,at,lt){return et+(U===V&<===0?"$":"")+L(at,U)},"")},O="",$=0;$1&&$=0&&(x=x.replace("!",""),U=!0),x.indexOf("@")>=0&&(x=x.replace("@",""),V=!0),(I||$||V)&&(z=!I&&!O?"":""+g,S=""+T),V&&(g=z=z.toLowerCase(),T=S=S.toLowerCase()),x){case"*=":L=z.indexOf(S)>=0;break;case"$=":L=z.indexOf(S,z.length-S.length)>=0;break;case"^=":L=z.indexOf(S)===0;break;case"=":L=g===T;break;case">":et=!0,L=g>T;break;case">=":et=!0,L=g>=T;break;case"<":et=!0,L=g0;){var V=L.shift();g(V),I.add(V.id()),$&&T(L,I,V)}return y}function kk(y,g,x){if(x.isParent())for(var T=x._private.children,L=0;L1&&arguments[1]!==void 0?arguments[1]:!0;return Y9(this,y,g,kk)};function YF(y,g,x){if(x.isChild()){var T=x._private.parent;g.has(T.id())||y.push(T)}}Z5.forEachUp=function(y){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return Y9(this,y,g,YF)};function WZ(y,g,x){YF(y,g,x),kk(y,g,x)}Z5.forEachUpAndDown=function(y){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return Y9(this,y,g,WZ)},Z5.ancestors=Z5.parents;var Ek,XF;Ek=XF={data:Ic.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Ic.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Ic.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Ic.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Ic.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Ic.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var g=this[0];if(g)return g._private.data.id}},Ek.attr=Ek.data,Ek.removeAttr=Ek.removeData;var KZ=XF,X9={};function J5(y){return function(g){var x=this;if(g===void 0&&(g=!0),x.length!==0)if(x.isNode()&&!x.removed()){for(var T=0,L=x[0],I=L._private.edges,O=0;Og}),minIndegree:t6("indegree",function(y,g){return yg}),minOutdegree:t6("outdegree",function(y,g){return yg})}),fn(X9,{totalDegree:function(g){for(var x=0,T=this.nodes(),L=0;L0,et=U;U&&(V=V[0]);var at=et?V.position():{x:0,y:0};x!==void 0?S.position(g,x+at[g]):I!==void 0&&S.position({x:I.x+at.x,y:I.y+at.y})}else{var lt=T.position(),gt=$?T.parent():null,Lt=gt&>.length>0,Et=Lt;Lt&&(gt=gt[0]);var Dt=Et?gt.position():{x:0,y:0};return I={x:lt.x-Dt.x,y:lt.y-Dt.y},g===void 0?I:I[g]}else if(!O)return;return this}},yp.modelPosition=yp.point=yp.position,yp.modelPositions=yp.points=yp.positions,yp.renderedPoint=yp.renderedPosition,yp.relativePoint=yp.relativePosition;var JF=QF,e6,Vb;e6=Vb={},Vb.renderedBoundingBox=function(y){var g=this.boundingBox(y),x=this.cy(),T=x.zoom(),L=x.pan(),I=g.x1*T+L.x,O=g.x2*T+L.x,$=g.y1*T+L.y,z=g.y2*T+L.y;return{x1:I,x2:O,y1:$,y2:z,w:O-I,h:z-$}},Vb.dirtyCompoundBoundsCache=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,g=this.cy();return!g.styleEnabled()||!g.hasCompoundNodes()?this:(this.forEachUp(function(x){if(x.isParent()){var T=x._private;T.compoundBoundsClean=!1,T.bbCache=null,y||x.emitAndNotify("bounds")}}),this)},Vb.updateCompoundBounds=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,g=this.cy();if(!g.styleEnabled()||!g.hasCompoundNodes())return this;if(!y&&g.batching())return this;function x(O){if(!O.isParent())return;var $=O._private,z=O.children(),S=O.pstyle("compound-sizing-wrt-labels").value==="include",V={width:{val:O.pstyle("min-width").pfValue,left:O.pstyle("min-width-bias-left"),right:O.pstyle("min-width-bias-right")},height:{val:O.pstyle("min-height").pfValue,top:O.pstyle("min-height-bias-top"),bottom:O.pstyle("min-height-bias-bottom")}},U=z.boundingBox({includeLabels:S,includeOverlays:!1,useCache:!1}),et=$.position;(U.w===0||U.h===0)&&(U={w:O.pstyle("width").pfValue,h:O.pstyle("height").pfValue},U.x1=et.x-U.w/2,U.x2=et.x+U.w/2,U.y1=et.y-U.h/2,U.y2=et.y+U.h/2);function at(Ut,fe,ge){var se=0,Ne=0,pe=fe+ge;return Ut>0&&pe>0&&(se=fe/pe*Ut,Ne=ge/pe*Ut),{biasDiff:se,biasComplementDiff:Ne}}function lt(Ut,fe,ge,se){if(ge.units==="%")switch(se){case"width":return Ut>0?ge.pfValue*Ut:0;case"height":return fe>0?ge.pfValue*fe:0;case"average":return Ut>0&&fe>0?ge.pfValue*(Ut+fe)/2:0;case"min":return Ut>0&&fe>0?Ut>fe?ge.pfValue*fe:ge.pfValue*Ut:0;case"max":return Ut>0&&fe>0?Ut>fe?ge.pfValue*Ut:ge.pfValue*fe:0;default:return 0}else return ge.units==="px"?ge.pfValue:0}var gt=V.width.left.value;V.width.left.units==="px"&&V.width.val>0&&(gt=gt*100/V.width.val);var Lt=V.width.right.value;V.width.right.units==="px"&&V.width.val>0&&(Lt=Lt*100/V.width.val);var Et=V.height.top.value;V.height.top.units==="px"&&V.height.val>0&&(Et=Et*100/V.height.val);var Dt=V.height.bottom.value;V.height.bottom.units==="px"&&V.height.val>0&&(Dt=Dt*100/V.height.val);var It=at(V.width.val-U.w,gt,Lt),zt=It.biasDiff,te=It.biasComplementDiff,Xt=at(V.height.val-U.h,Et,Dt),Ht=Xt.biasDiff,ie=Xt.biasComplementDiff;$.autoPadding=lt(U.w,U.h,O.pstyle("padding"),O.pstyle("padding-relative-to").value),$.autoWidth=Math.max(U.w,V.width.val),et.x=(-zt+U.x1+U.x2+te)/2,$.autoHeight=Math.max(U.h,V.height.val),et.y=(-Ht+U.y1+U.y2+ie)/2}for(var T=0;Tg.x2?L:g.x2,g.y1=Tg.y2?I:g.y2,g.w=g.x2-g.x1,g.h=g.y2-g.y1)},A3=function(g,x){return x==null?g:xp(g,x.x1,x.y1,x.x2,x.y2)},_k=function(g,x,T){return wp(g,x,T)},Q9=function(g,x,T){if(!x.cy().headless()){var L=x._private,I=L.rstyle,O=I.arrowWidth/2,$=x.pstyle(T+"-arrow-shape").value,z,S;if($!=="none"){T==="source"?(z=I.srcX,S=I.srcY):T==="target"?(z=I.tgtX,S=I.tgtY):(z=I.midX,S=I.midY);var V=L.arrowBounds=L.arrowBounds||{},U=V[T]=V[T]||{};U.x1=z-O,U.y1=S-O,U.x2=z+O,U.y2=S+O,U.w=U.x2-U.x1,U.h=U.y2-U.y1,P9(U,1),xp(g,U.x1,U.y1,U.x2,U.y2)}}},tB=function(g,x,T){if(!x.cy().headless()){var L;T?L=T+"-":L="";var I=x._private,O=I.rstyle,$=x.pstyle(L+"label").strValue;if($){var z=x.pstyle("text-halign"),S=x.pstyle("text-valign"),V=_k(O,"labelWidth",T),U=_k(O,"labelHeight",T),et=_k(O,"labelX",T),at=_k(O,"labelY",T),lt=x.pstyle(L+"text-margin-x").pfValue,gt=x.pstyle(L+"text-margin-y").pfValue,Lt=x.isEdge(),Et=x.pstyle(L+"text-rotation"),Dt=x.pstyle("text-outline-width").pfValue,It=x.pstyle("text-border-width").pfValue,zt=It/2,te=x.pstyle("text-background-padding").pfValue,Xt=2,Ht=U,ie=V,Ut=ie/2,fe=Ht/2,ge,se,Ne,pe;if(Lt)ge=et-Ut,se=et+Ut,Ne=at-fe,pe=at+fe;else{switch(z.value){case"left":ge=et-ie,se=et;break;case"center":ge=et-Ut,se=et+Ut;break;case"right":ge=et,se=et+ie;break}switch(S.value){case"top":Ne=at-Ht,pe=at;break;case"center":Ne=at-fe,pe=at+fe;break;case"bottom":Ne=at,pe=at+Ht;break}}ge+=lt-Math.max(Dt,zt)-te-Xt,se+=lt+Math.max(Dt,zt)+te+Xt,Ne+=gt-Math.max(Dt,zt)-te-Xt,pe+=gt+Math.max(Dt,zt)+te+Xt;var gn=T||"main",je=I.labelBounds,Ge=je[gn]=je[gn]||{};Ge.x1=ge,Ge.y1=Ne,Ge.x2=se,Ge.y2=pe,Ge.w=se-ge,Ge.h=pe-Ne;var xn=Lt&&Et.strValue==="autorotate",Dn=Et.pfValue!=null&&Et.pfValue!==0;if(xn||Dn){var Xn=xn?_k(I.rstyle,"labelAngle",T):Et.pfValue,Cn=Math.cos(Xn),Yn=Math.sin(Xn),rr=(ge+se)/2,wr=(Ne+pe)/2;if(!Lt){switch(z.value){case"left":rr=se;break;case"right":rr=ge;break}switch(S.value){case"top":wr=pe;break;case"bottom":wr=Ne;break}}var ur=function(La,Di){return La=La-rr,Di=Di-wr,{x:La*Cn-Di*Yn+rr,y:La*Yn+Di*Cn+wr}},er=ur(ge,Ne),bn=ur(ge,pe),pr=ur(se,Ne),fr=ur(se,pe);ge=Math.min(er.x,bn.x,pr.x,fr.x),se=Math.max(er.x,bn.x,pr.x,fr.x),Ne=Math.min(er.y,bn.y,pr.y,fr.y),pe=Math.max(er.y,bn.y,pr.y,fr.y)}var ri=gn+"Rot",_i=je[ri]=je[ri]||{};_i.x1=ge,_i.y1=Ne,_i.x2=se,_i.y2=pe,_i.w=se-ge,_i.h=pe-Ne,xp(g,ge,Ne,se,pe),xp(I.labelBounds.all,ge,Ne,se,pe)}return g}},YZ=function(g,x){var T=g._private.cy,L=T.styleEnabled(),I=T.headless(),O=Rd(),$=g._private,z=g.isNode(),S=g.isEdge(),V,U,et,at,lt,gt,Lt=$.rstyle,Et=z&&L?g.pstyle("bounds-expansion").pfValue:[0],Dt=function(_s){return _s.pstyle("display").value!=="none"},It=!L||Dt(g)&&(!S||Dt(g.source())&&Dt(g.target()));if(It){var zt=0,te=0;L&&x.includeOverlays&&(zt=g.pstyle("overlay-opacity").value,zt!==0&&(te=g.pstyle("overlay-padding").value));var Xt=0,Ht=0;L&&x.includeUnderlays&&(Xt=g.pstyle("underlay-opacity").value,Xt!==0&&(Ht=g.pstyle("underlay-padding").value));var ie=Math.max(te,Ht),Ut=0,fe=0;if(L&&(Ut=g.pstyle("width").pfValue,fe=Ut/2),z&&x.includeNodes){var ge=g.position();lt=ge.x,gt=ge.y;var se=g.outerWidth(),Ne=se/2,pe=g.outerHeight(),gn=pe/2;V=lt-Ne,U=lt+Ne,et=gt-gn,at=gt+gn,xp(O,V,et,U,at)}else if(S&&x.includeEdges)if(L&&!I){var je=g.pstyle("curve-style").strValue;if(V=Math.min(Lt.srcX,Lt.midX,Lt.tgtX),U=Math.max(Lt.srcX,Lt.midX,Lt.tgtX),et=Math.min(Lt.srcY,Lt.midY,Lt.tgtY),at=Math.max(Lt.srcY,Lt.midY,Lt.tgtY),V-=fe,U+=fe,et-=fe,at+=fe,xp(O,V,et,U,at),je==="haystack"){var Ge=Lt.haystackPts;if(Ge&&Ge.length===2){if(V=Ge[0].x,et=Ge[0].y,U=Ge[1].x,at=Ge[1].y,V>U){var xn=V;V=U,U=xn}if(et>at){var Dn=et;et=at,at=Dn}xp(O,V-fe,et-fe,U+fe,at+fe)}}else if(je==="bezier"||je==="unbundled-bezier"||je==="segments"||je==="taxi"){var Xn;switch(je){case"bezier":case"unbundled-bezier":Xn=Lt.bezierPts;break;case"segments":case"taxi":Xn=Lt.linePts;break}if(Xn!=null)for(var Cn=0;CnU){var bn=V;V=U,U=bn}if(et>at){var pr=et;et=at,at=pr}V-=fe,U+=fe,et-=fe,at+=fe,xp(O,V,et,U,at)}if(L&&x.includeEdges&&S&&(Q9(O,g,"mid-source"),Q9(O,g,"mid-target"),Q9(O,g,"source"),Q9(O,g,"target")),L){var fr=g.pstyle("ghost").value==="yes";if(fr){var ri=g.pstyle("ghost-offset-x").pfValue,_i=g.pstyle("ghost-offset-y").pfValue;xp(O,O.x1+ri,O.y1+_i,O.x2+ri,O.y2+_i)}}var ia=$.bodyBounds=$.bodyBounds||{};JP(ia,O),kL(ia,Et),P9(ia,1),L&&(V=O.x1,U=O.x2,et=O.y1,at=O.y2,xp(O,V-ie,et-ie,U+ie,at+ie));var La=$.overlayBounds=$.overlayBounds||{};JP(La,O),kL(La,Et),P9(La,1);var Di=$.labelBounds=$.labelBounds||{};Di.all!=null?SY(Di.all):Di.all=Rd(),L&&x.includeLabels&&(x.includeMainLabels&&tB(O,g,null),S&&(x.includeSourceLabels&&tB(O,g,"source"),x.includeTargetLabels&&tB(O,g,"target")))}return O.x1=_0(O.x1),O.y1=_0(O.y1),O.x2=_0(O.x2),O.y2=_0(O.y2),O.w=_0(O.x2-O.x1),O.h=_0(O.y2-O.y1),O.w>0&&O.h>0&&It&&(kL(O,Et),P9(O,1)),O},eB=function(g){var x=0,T=function(O){return(O?1:0)<0&&arguments[0]!==void 0?arguments[0]:uJ,g=arguments.length>1?arguments[1]:void 0,x=0;x=0;$--)O($);return this},km.removeAllListeners=function(){return this.removeListener("*")},km.emit=km.trigger=function(y,g,x){var T=this.listeners,L=T.length;return this.emitting++,mt(g)||(g=[g]),lJ(this,function(I,O){x!=null&&(T=[{event:O.event,type:O.type,namespace:O.namespace,callback:x}],L=T.length);for(var $=function(V){var U=T[V];if(U.type===O.type&&(!U.namespace||U.namespace===O.namespace||U.namespace===cJ)&&I.eventMatches(I.context,U,O)){var et=[O];g!=null&&YP(et,g),I.beforeEmit(I.context,U,O),U.conf&&U.conf.one&&(I.listeners=I.listeners.filter(function(gt){return gt!==U}));var at=I.callbackContext(I.context,U,O),lt=U.callback.apply(at,et);I.afterEmit(I.context,U,O),lt===!1&&(O.stopPropagation(),O.preventDefault())}},z=0;z1&&!O){var $=this.length-1,z=this[$],S=z._private.data.id;this[$]=void 0,this[g]=z,I.set(S,{ele:z,index:g})}return this.length--,this},unmergeOne:function(g){g=g[0];var x=this._private,T=g._private.data.id,L=x.map,I=L.get(T);if(!I)return this;var O=I.index;return this.unmergeAt(O),this},unmerge:function(g){var x=this._private.cy;if(!g)return this;if(g&&Tt(g)){var T=g;g=x.mutableElements().filter(T)}for(var L=0;L=0;x--){var T=this[x];g(T)&&this.unmergeAt(x)}return this},map:function(g,x){for(var T=[],L=this,I=0;IT&&(T=z,L=$)}return{value:T,ele:L}},min:function(g,x){for(var T=1/0,L,I=this,O=0;O=0&&I"u"?"undefined":f(Symbol))!=g&&f(Symbol.iterator)!=g;x&&(eT[Symbol.iterator]=function(){var T=this,L={value:void 0,done:!1},I=0,O=this.length;return b({next:function(){return I1&&arguments[1]!==void 0?arguments[1]:!0,T=this[0],L=T.cy();if(L.styleEnabled()&&T){this.cleanStyle();var I=T._private.style[g];return I??(x?L.style().getDefaultProperty(g):null)}},numericStyle:function(g){var x=this[0];if(x.cy().styleEnabled()&&x){var T=x.pstyle(g);return T.pfValue!==void 0?T.pfValue:T.value}},numericStyleUnits:function(g){var x=this[0];if(x.cy().styleEnabled()&&x)return x.pstyle(g).units},renderedStyle:function(g){var x=this.cy();if(!x.styleEnabled())return this;var T=this[0];if(T)return x.style().getRenderedStyle(T,g)},style:function(g,x){var T=this.cy();if(!T.styleEnabled())return this;var L=!1,I=T.style();if(ct(g)){var O=g;I.applyBypass(this,O,L),this.emitAndNotify("style")}else if(Tt(g))if(x===void 0){var $=this[0];return $?I.getStylePropertyValue($,g):void 0}else I.applyBypass(this,g,x,L),this.emitAndNotify("style");else if(g===void 0){var z=this[0];return z?I.getRawStyle(z):void 0}return this},removeStyle:function(g){var x=this.cy();if(!x.styleEnabled())return this;var T=!1,L=x.style(),I=this;if(g===void 0)for(var O=0;O0&&g.push(V[0]),g.push($[0])}return this.spawn(g,!0).filter(y)},"neighborhood"),closedNeighborhood:function(g){return this.neighborhood().add(this).filter(g)},openNeighborhood:function(g){return this.neighborhood(g)}}),g1.neighbourhood=g1.neighborhood,g1.closedNeighbourhood=g1.closedNeighborhood,g1.openNeighbourhood=g1.openNeighborhood,fn(g1,{source:id(function(g){var x=this[0],T;return x&&(T=x._private.source||x.cy().collection()),T&&g?T.filter(g):T},"source"),target:id(function(g){var x=this[0],T;return x&&(T=x._private.target||x.cy().collection()),T&&g?T.filter(g):T},"target"),sources:xB({attr:"source"}),targets:xB({attr:"target"})});function xB(y){return function(x){for(var T=[],L=0;L0);return O},component:function(){var g=this[0];return g.cy().mutableElements().components(g)[0]}}),g1.componentsOf=g1.components;var Hf=function(g,x){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(g===void 0){ou("A collection must have a reference to the core");return}var I=new Hb,O=!1;if(!x)x=[];else if(x.length>0&&ct(x[0])&&!Ct(x[0])){O=!0;for(var $=[],z=new $5,S=0,V=x.length;S0&&arguments[0]!==void 0?arguments[0]:!0,g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,T=x.cy(),L=T._private,I=[],O=[],$,z=0,S=x.length;z0){for(var Dn=$.length===x.length?x:new Hf(T,$),Xn=0;Xn0&&arguments[0]!==void 0?arguments[0]:!0,g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,T=[],L={},I=x._private.cy;function O(pe){for(var gn=pe._private.edges,je=0;je0&&(y?ge.emitAndNotify("remove"):g&&ge.emit("remove"));for(var se=0;se0?se=pe:ge=pe;while(Math.abs(Ne)>O&&++gn<$);return pe}function te(fe){for(var ge=0,se=1,Ne=z-1;se!==Ne&&et[se]<=fe;++se)ge+=S;--se;var pe=(fe-et[se])/(et[se+1]-et[se]),gn=ge+pe*S,je=Et(gn,y,x);return je>=I?Dt(fe,gn):je===0?gn:zt(fe,ge,ge+S)}var Xt=!1;function Ht(){Xt=!0,(y!==g||x!==T)&&It()}var ie=function(ge){return Xt||Ht(),y===g&&x===T?ge:ge===0?0:ge===1?1:Lt(te(ge),g,T)};ie.getControlPoints=function(){return[{x:y,y:g},{x,y:T}]};var Ut="generateBezier("+[y,g,x,T]+")";return ie.toString=function(){return Ut},ie}/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */var xJ=function(){function y(T){return-T.tension*T.x-T.friction*T.v}function g(T,L,I){var O={x:T.x+I.dx*L,v:T.v+I.dv*L,tension:T.tension,friction:T.friction};return{dx:O.v,dv:y(O)}}function x(T,L){var I={dx:T.v,dv:y(T)},O=g(T,L*.5,I),$=g(T,L*.5,O),z=g(T,L,$),S=1/6*(I.dx+2*(O.dx+$.dx)+z.dx),V=1/6*(I.dv+2*(O.dv+$.dv)+z.dv);return T.x=T.x+S*L,T.v=T.v+V*L,T}return function T(L,I,O){var $={x:-1,v:0,tension:null,friction:null},z=[0],S=0,V=1/1e4,U=16/1e3,et,at,lt;for(L=parseFloat(L)||500,I=parseFloat(I)||20,O=O||null,$.tension=L,$.friction=I,et=O!==null,et?(S=T(L,I),at=S/O*U):at=U;lt=x(lt||$,at),z.push(1+lt.x),S+=16,Math.abs(lt.x)>V&&Math.abs(lt.v)>V;);return et?function(gt){return z[gt*(z.length-1)|0]}:S}}(),wu=function(g,x,T,L){var I=yJ(g,x,T,L);return function(O,$,z){return O+($-O)*I(z)}},sT={linear:function(g,x,T){return g+(x-g)*T},ease:wu(.25,.1,.25,1),"ease-in":wu(.42,0,1,1),"ease-out":wu(0,0,.58,1),"ease-in-out":wu(.42,0,.58,1),"ease-in-sine":wu(.47,0,.745,.715),"ease-out-sine":wu(.39,.575,.565,1),"ease-in-out-sine":wu(.445,.05,.55,.95),"ease-in-quad":wu(.55,.085,.68,.53),"ease-out-quad":wu(.25,.46,.45,.94),"ease-in-out-quad":wu(.455,.03,.515,.955),"ease-in-cubic":wu(.55,.055,.675,.19),"ease-out-cubic":wu(.215,.61,.355,1),"ease-in-out-cubic":wu(.645,.045,.355,1),"ease-in-quart":wu(.895,.03,.685,.22),"ease-out-quart":wu(.165,.84,.44,1),"ease-in-out-quart":wu(.77,0,.175,1),"ease-in-quint":wu(.755,.05,.855,.06),"ease-out-quint":wu(.23,1,.32,1),"ease-in-out-quint":wu(.86,0,.07,1),"ease-in-expo":wu(.95,.05,.795,.035),"ease-out-expo":wu(.19,1,.22,1),"ease-in-out-expo":wu(1,0,0,1),"ease-in-circ":wu(.6,.04,.98,.335),"ease-out-circ":wu(.075,.82,.165,1),"ease-in-out-circ":wu(.785,.135,.15,.86),spring:function(g,x,T){if(T===0)return sT.linear;var L=xJ(g,x,T);return function(I,O,$){return I+(O-I)*L($)}},"cubic-bezier":wu};function TB(y,g,x,T,L){if(T===1||g===x)return x;var I=L(g,x,T);return y==null||((y.roundValue||y.color)&&(I=Math.round(I)),y.min!==void 0&&(I=Math.max(I,y.min)),y.max!==void 0&&(I=Math.min(I,y.max))),I}function _B(y,g){return y.pfValue!=null||y.value!=null?y.pfValue!=null&&(g==null||g.type.units!=="%")?y.pfValue:y.value:y}function i6(y,g,x,T,L){var I=L!=null?L.type:null;x<0?x=0:x>1&&(x=1);var O=_B(y,L),$=_B(g,L);if(st(O)&&st($))return TB(I,O,$,x,T);if(mt(O)&&mt($)){for(var z=[],S=0;S<$.length;S++){var V=O[S],U=$[S];if(V!=null&&U!=null){var et=TB(I,V,U,x,T);z.push(et)}else z.push(U)}return z}}function kJ(y,g,x,T){var L=!T,I=y._private,O=g._private,$=O.easing,z=O.startTime,S=T?y:y.cy(),V=S.style();if(!O.easingImpl)if($==null)O.easingImpl=sT.linear;else{var U;if(Tt($)){var et=V.parse("transition-timing-function",$);U=et.value}else U=$;var at,lt;Tt(U)?(at=U,lt=[]):(at=U[1],lt=U.slice(2).map(function(Dn){return+Dn})),lt.length>0?(at==="spring"&<.push(O.duration),O.easingImpl=sT[at].apply(null,lt)):O.easingImpl=sT[at]}var gt=O.easingImpl,Lt;if(O.duration===0?Lt=1:Lt=(x-z)/O.duration,O.applying&&(Lt=O.progress),Lt<0?Lt=0:Lt>1&&(Lt=1),O.delay==null){var Et=O.startPosition,Dt=O.position;if(Dt&&L&&!y.locked()){var It={};Mk(Et.x,Dt.x)&&(It.x=i6(Et.x,Dt.x,Lt,gt)),Mk(Et.y,Dt.y)&&(It.y=i6(Et.y,Dt.y,Lt,gt)),y.position(It)}var zt=O.startPan,te=O.pan,Xt=I.pan,Ht=te!=null&&T;Ht&&(Mk(zt.x,te.x)&&(Xt.x=i6(zt.x,te.x,Lt,gt)),Mk(zt.y,te.y)&&(Xt.y=i6(zt.y,te.y,Lt,gt)),y.emit("pan"));var ie=O.startZoom,Ut=O.zoom,fe=Ut!=null&&T;fe&&(Mk(ie,Ut)&&(I.zoom=bk(I.minZoom,i6(ie,Ut,Lt,gt),I.maxZoom)),y.emit("zoom")),(Ht||fe)&&y.emit("viewport");var ge=O.style;if(ge&&ge.length>0&&L){for(var se=0;se=0;Ht--){var ie=Xt[Ht];ie()}Xt.splice(0,Xt.length)},Dt=at.length-1;Dt>=0;Dt--){var It=at[Dt],zt=It._private;if(zt.stopped){at.splice(Dt,1),zt.hooked=!1,zt.playing=!1,zt.started=!1,Et(zt.frames);continue}!zt.playing&&!zt.applying||(zt.playing&&zt.applying&&(zt.applying=!1),zt.started||EJ(V,It,y),kJ(V,It,y,U),zt.applying&&(zt.applying=!1),Et(zt.frames),zt.step!=null&&zt.step(y),It.completed()&&(at.splice(Dt,1),zt.hooked=!1,zt.playing=!1,zt.started=!1,Et(zt.completes)),gt=!0)}return!U&&at.length===0&<.length===0&&T.push(V),gt}for(var I=!1,O=0;O0?g.notify("draw",x):g.notify("draw")),x.unmerge(T),g.emit("step")}var TJ={animate:Ic.animate(),animation:Ic.animation(),animated:Ic.animated(),clearQueue:Ic.clearQueue(),delay:Ic.delay(),delayAnimation:Ic.delayAnimation(),stop:Ic.stop(),addToAnimationPool:function(g){var x=this;x.styleEnabled()&&x._private.aniEles.merge(g)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var g=this;if(g._private.animationsRunning=!0,!g.styleEnabled())return;function x(){g._private.animationsRunning&&Qc(function(I){CB(I,g),x()})}var T=g.renderer();T&&T.beforeRender?T.beforeRender(function(I,O){CB(O,g)},T.beforeRenderPriorities.animations):x()}},_J={qualifierCompare:function(g,x){return g==null||x==null?g==null&&x==null:g.sameText(x)},eventMatches:function(g,x,T){var L=x.qualifier;return L!=null?g!==T.target&&Ct(T.target)&&L.matches(T.target):!0},addEventFields:function(g,x){x.cy=g,x.target=g},callbackContext:function(g,x,T){return x.qualifier!=null?T.target:g}},aT=function(g){return Tt(g)?new ym(g):g},SB={createEmitter:function(){var g=this._private;return g.emitter||(g.emitter=new J9(_J,this)),this},emitter:function(){return this._private.emitter},on:function(g,x,T){return this.emitter().on(g,aT(x),T),this},removeListener:function(g,x,T){return this.emitter().removeListener(g,aT(x),T),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(g,x,T){return this.emitter().one(g,aT(x),T),this},once:function(g,x,T){return this.emitter().one(g,aT(x),T),this},emit:function(g,x){return this.emitter().emit(g,x),this},emitAndNotify:function(g,x){return this.emit(g),this.notify(g,x),this}};Ic.eventAliasesOn(SB);var zL={png:function(g){var x=this._private.renderer;return g=g||{},x.png(g)},jpg:function(g){var x=this._private.renderer;return g=g||{},g.bg=g.bg||"#fff",x.jpg(g)}};zL.jpeg=zL.jpg;var oT={layout:function(g){var x=this;if(g==null){ou("Layout options must be specified to make a layout");return}if(g.name==null){ou("A `name` must be specified to make a layout");return}var T=g.name,L=x.extension("layout",T);if(L==null){ou("No such layout `"+T+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var I;Tt(g.eles)?I=x.$(g.eles):I=g.eles!=null?g.eles:x.$();var O=new L(fn({},g,{cy:x,eles:I}));return O}};oT.createLayout=oT.makeLayout=oT.layout;var CJ={notify:function(g,x){var T=this._private;if(this.batching()){T.batchNotifications=T.batchNotifications||{};var L=T.batchNotifications[g]=T.batchNotifications[g]||this.collection();x!=null&&L.merge(x);return}if(T.notificationsEnabled){var I=this.renderer();this.destroyed()||!I||I.notify(g,x)}},notifications:function(g){var x=this._private;return g===void 0?x.notificationsEnabled:(x.notificationsEnabled=!!g,this)},noNotifications:function(g){this.notifications(!1),g(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var g=this._private;return g.batchCount==null&&(g.batchCount=0),g.batchCount===0&&(g.batchStyleEles=this.collection(),g.batchNotifications={}),g.batchCount++,this},endBatch:function(){var g=this._private;if(g.batchCount===0)return this;if(g.batchCount--,g.batchCount===0){g.batchStyleEles.updateStyle();var x=this.renderer();Object.keys(g.batchNotifications).forEach(function(T){var L=g.batchNotifications[T];L.empty()?x.notify(T):x.notify(T,L)})}return this},batch:function(g){return this.startBatch(),g(),this.endBatch(),this},batchData:function(g){var x=this;return this.batch(function(){for(var T=Object.keys(g),L=0;L0;)x.removeChild(x.childNodes[0]);g._private.renderer=null,g.mutableElements().forEach(function(T){var L=T._private;L.rscratch={},L.rstyle={},L.animation.current=[],L.animation.queue=[]})},onRender:function(g){return this.on("render",g)},offRender:function(g){return this.off("render",g)}};qL.invalidateDimensions=qL.resize;var cT={collection:function(g,x){return Tt(g)?this.$(g):dt(g)?g.collection():mt(g)?(x||(x={}),new Hf(this,g,x.unique,x.removed)):new Hf(this)},nodes:function(g){var x=this.$(function(T){return T.isNode()});return g?x.filter(g):x},edges:function(g){var x=this.$(function(T){return T.isEdge()});return g?x.filter(g):x},$:function(g){var x=this._private.elements;return g?x.filter(g):x.spawnSelf()},mutableElements:function(){return this._private.elements}};cT.elements=cT.filter=cT.$;var p1={},Dk="t",AJ="f";p1.apply=function(y){for(var g=this,x=g._private,T=x.cy,L=T.collection(),I=0;I0;if(et||U&&at){var lt=void 0;et&&at||et?lt=S.properties:at&&(lt=S.mappedProperties);for(var gt=0;gt1&&(zt=1),$.color){var Xt=T.valueMin[0],Ht=T.valueMax[0],ie=T.valueMin[1],Ut=T.valueMax[1],fe=T.valueMin[2],ge=T.valueMax[2],se=T.valueMin[3]==null?1:T.valueMin[3],Ne=T.valueMax[3]==null?1:T.valueMax[3],pe=[Math.round(Xt+(Ht-Xt)*zt),Math.round(ie+(Ut-ie)*zt),Math.round(fe+(ge-fe)*zt),Math.round(se+(Ne-se)*zt)];I={bypass:T.bypass,name:T.name,value:pe,strValue:"rgb("+pe[0]+", "+pe[1]+", "+pe[2]+")"}}else if($.number){var gn=T.valueMin+(T.valueMax-T.valueMin)*zt;I=this.parse(T.name,gn,T.bypass,et)}else return!1;if(!I)return gt(),!1;I.mapping=T,T=I;break}case O.data:{for(var je=T.field.split("."),Ge=U.data,xn=0;xn0&&I>0){for(var $={},z=!1,S=0;S0?y.delayAnimation(O).play().promise().then(It):It()}).then(function(){return y.animation({style:$,duration:I,easing:y.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){x.removeBypasses(y,L),y.emitAndNotify("style"),T.transitioning=!1})}else T.transitioning&&(this.removeBypasses(y,L),y.emitAndNotify("style"),T.transitioning=!1)},p1.checkTrigger=function(y,g,x,T,L,I){var O=this.properties[g],$=L(O);$!=null&&$(x,T)&&I(O)},p1.checkZOrderTrigger=function(y,g,x,T){var L=this;this.checkTrigger(y,g,x,T,function(I){return I.triggersZOrder},function(){L._private.cy.notify("zorder",y)})},p1.checkBoundsTrigger=function(y,g,x,T){this.checkTrigger(y,g,x,T,function(L){return L.triggersBounds},function(L){y.dirtyCompoundBoundsCache(),y.dirtyBoundingBoxCache(),L.triggersBoundsOfParallelBeziers&&(g==="curve-style"&&(x==="bezier"||T==="bezier")||g==="display"&&(x==="none"||T==="none"))&&y.parallelEdges().forEach(function(I){I.isBundledBezier()&&I.dirtyBoundingBoxCache()})})},p1.checkTriggers=function(y,g,x,T){y.dirtyStyleCache(),this.checkZOrderTrigger(y,g,x,T),this.checkBoundsTrigger(y,g,x,T)};var Ik={};Ik.applyBypass=function(y,g,x,T){var L=this,I=[],O=!0;if(g==="*"||g==="**"){if(x!==void 0)for(var $=0;$L.length?T=T.substr(L.length):T=""}function z(){I.length>O.length?I=I.substr(O.length):I=""}for(;;){var S=T.match(/^\s*$/);if(S)break;var V=T.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!V){no("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+T);break}L=V[0];var U=V[1];if(U!=="core"){var et=new ym(U);if(et.invalid){no("Skipping parsing of block: Invalid selector found in string stylesheet: "+U),$();continue}}var at=V[2],lt=!1;I=at;for(var gt=[];;){var Lt=I.match(/^\s*$/);if(Lt)break;var Et=I.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!Et){no("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+at),lt=!0;break}O=Et[0];var Dt=Et[1],It=Et[2],zt=g.properties[Dt];if(!zt){no("Skipping property: Invalid property name in: "+O),z();continue}var te=x.parse(Dt,It);if(!te){no("Skipping property: Invalid property definition in: "+O),z();continue}gt.push({name:Dt,val:It}),z()}if(lt){$();break}x.selector(U);for(var Xt=0;Xt=7&&g[0]==="d"&&(V=new RegExp($.data.regex).exec(g))){if(x)return!1;var et=$.data;return{name:y,value:V,strValue:""+g,mapped:et,field:V[1],bypass:x}}else if(g.length>=10&&g[0]==="m"&&(U=new RegExp($.mapData.regex).exec(g))){if(x||S.multiple)return!1;var at=$.mapData;if(!(S.color||S.number))return!1;var lt=this.parse(y,U[4]);if(!lt||lt.mapped)return!1;var gt=this.parse(y,U[5]);if(!gt||gt.mapped)return!1;if(lt.pfValue===gt.pfValue||lt.strValue===gt.strValue)return no("`"+y+": "+g+"` is not a valid mapper because the output range is zero; converting to `"+y+": "+lt.strValue+"`"),this.parse(y,lt.strValue);if(S.color){var Lt=lt.value,Et=gt.value,Dt=Lt[0]===Et[0]&&Lt[1]===Et[1]&&Lt[2]===Et[2]&&(Lt[3]===Et[3]||(Lt[3]==null||Lt[3]===1)&&(Et[3]==null||Et[3]===1));if(Dt)return!1}return{name:y,value:U,strValue:""+g,mapped:at,field:U[1],fieldMin:parseFloat(U[2]),fieldMax:parseFloat(U[3]),valueMin:lt.value,valueMax:gt.value,bypass:x}}}if(S.multiple&&T!=="multiple"){var It;if(z?It=g.split(/\s+/):mt(g)?It=g:It=[g],S.evenMultiple&&It.length%2!==0)return null;for(var zt=[],te=[],Xt=[],Ht="",ie=!1,Ut=0;Ut0?" ":"")+fe.strValue}return S.validate&&!S.validate(zt,te)?null:S.singleEnum&&ie?zt.length===1&&Tt(zt[0])?{name:y,value:zt[0],strValue:zt[0],bypass:x}:null:{name:y,value:zt,pfValue:Xt,strValue:Ht,bypass:x,units:te}}var ge=function(){for(var fr=0;frS.max||S.strictMax&&g===S.max))return null;var je={name:y,value:g,strValue:""+g+(se||""),units:se,bypass:x};return S.unitless||se!=="px"&&se!=="em"?je.pfValue=g:je.pfValue=se==="px"||!se?g:this.getEmSizeInPixels()*g,(se==="ms"||se==="s")&&(je.pfValue=se==="ms"?g:1e3*g),(se==="deg"||se==="rad")&&(je.pfValue=se==="rad"?g:EY(g)),se==="%"&&(je.pfValue=g/100),je}else if(S.propList){var Ge=[],xn=""+g;if(xn!=="none"){for(var Dn=xn.split(/\s*,\s*|\s+/),Xn=0;Xn0&&$>0&&!isNaN(T.w)&&!isNaN(T.h)&&T.w>0&&T.h>0){z=Math.min((O-2*x)/T.w,($-2*x)/T.h),z=z>this._private.maxZoom?this._private.maxZoom:z,z=z=T.minZoom&&(T.maxZoom=x),this},minZoom:function(g){return g===void 0?this._private.minZoom:this.zoomRange({min:g})},maxZoom:function(g){return g===void 0?this._private.maxZoom:this.zoomRange({max:g})},getZoomedViewport:function(g){var x=this._private,T=x.pan,L=x.zoom,I,O,$=!1;if(x.zoomingEnabled||($=!0),st(g)?O=g:ct(g)&&(O=g.level,g.position!=null?I=O9(g.position,L,T):g.renderedPosition!=null&&(I=g.renderedPosition),I!=null&&!x.panningEnabled&&($=!0)),O=O>x.maxZoom?x.maxZoom:O,O=Ox.maxZoom||!x.zoomingEnabled?O=!0:(x.zoom=z,I.push("zoom"))}if(L&&(!O||!g.cancelOnFailedZoom)&&x.panningEnabled){var S=g.pan;st(S.x)&&(x.pan.x=S.x,$=!1),st(S.y)&&(x.pan.y=S.y,$=!1),$||I.push("pan")}return I.length>0&&(I.push("viewport"),this.emit(I.join(" ")),this.notify("viewport")),this},center:function(g){var x=this.getCenterPan(g);return x&&(this._private.pan=x,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(g,x){if(this._private.panningEnabled){if(Tt(g)){var T=g;g=this.mutableElements().filter(T)}else dt(g)||(g=this.mutableElements());if(g.length!==0){var L=g.boundingBox(),I=this.width(),O=this.height();x=x===void 0?this._private.zoom:x;var $={x:(I-x*(L.x1+L.x2))/2,y:(O-x*(L.y1+L.y2))/2};return $}}},reset:function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},invalidateSize:function(){this._private.sizeCache=null},size:function(){var g=this._private,x=g.container;return g.sizeCache=g.sizeCache||(x?function(){var T=R.getComputedStyle(x),L=function(O){return parseFloat(T.getPropertyValue(O))};return{width:x.clientWidth-L("padding-left")-L("padding-right"),height:x.clientHeight-L("padding-top")-L("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var g=this._private.pan,x=this._private.zoom,T=this.renderedExtent(),L={x1:(T.x1-g.x)/x,x2:(T.x2-g.x)/x,y1:(T.y1-g.y)/x,y2:(T.y2-g.y)/x};return L.w=L.x2-L.x1,L.h=L.y2-L.y1,L},renderedExtent:function(){var g=this.width(),x=this.height();return{x1:0,y1:0,x2:g,y2:x,w:g,h:x}},multiClickDebounceTime:function(g){if(g)this._private.multiClickDebounceTime=g;else return this._private.multiClickDebounceTime;return this}};L3.centre=L3.center,L3.autolockNodes=L3.autolock,L3.autoungrabifyNodes=L3.autoungrabify;var Ok={data:Ic.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Ic.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Ic.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Ic.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Ok.attr=Ok.data,Ok.removeAttr=Ok.removeData;var Nk=function(g){var x=this;g=fn({},g);var T=g.container;T&&!ht(T)&&ht(T[0])&&(T=T[0]);var L=T?T._cyreg:null;L=L||{},L&&L.cy&&(L.cy.destroy(),L={});var I=L.readies=L.readies||[];T&&(T._cyreg=L),L.cy=x;var O=R!==void 0&&T!==void 0&&!g.headless,$=g;$.layout=fn({name:O?"grid":"null"},$.layout),$.renderer=fn({name:O?"canvas":"null"},$.renderer);var z=function(lt,gt,Lt){return gt!==void 0?gt:Lt!==void 0?Lt:lt},S=this._private={container:T,ready:!1,options:$,elements:new Hf(this),listeners:[],aniEles:new Hf(this),data:$.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:z(!0,$.zoomingEnabled),userZoomingEnabled:z(!0,$.userZoomingEnabled),panningEnabled:z(!0,$.panningEnabled),userPanningEnabled:z(!0,$.userPanningEnabled),boxSelectionEnabled:z(!0,$.boxSelectionEnabled),autolock:z(!1,$.autolock,$.autolockNodes),autoungrabify:z(!1,$.autoungrabify,$.autoungrabifyNodes),autounselectify:z(!1,$.autounselectify),styleEnabled:$.styleEnabled===void 0?O:$.styleEnabled,zoom:st($.zoom)?$.zoom:1,pan:{x:ct($.pan)&&st($.pan.x)?$.pan.x:0,y:ct($.pan)&&st($.pan.y)?$.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:z(250,$.multiClickDebounceTime)};this.createEmitter(),this.selectionType($.selectionType),this.zoomRange({min:$.minZoom,max:$.maxZoom});var V=function(lt,gt){var Lt=lt.some(vt);if(Lt)return W5.all(lt).then(gt);gt(lt)};S.styleEnabled&&x.setStyle([]);var U=fn({},$,$.renderer);x.initRenderer(U);var et=function(lt,gt,Lt){x.notifications(!1);var Et=x.mutableElements();Et.length>0&&Et.remove(),lt!=null&&(ct(lt)||mt(lt))&&x.add(lt),x.one("layoutready",function(It){x.notifications(!0),x.emit(It),x.one("load",gt),x.emitAndNotify("load")}).one("layoutstop",function(){x.one("done",Lt),x.emit("done")});var Dt=fn({},x._private.options.layout);Dt.eles=x.elements(),x.layout(Dt).run()};V([$.style,$.elements],function(at){var lt=at[0],gt=at[1];S.styleEnabled&&x.style().append(lt),et(gt,function(){x.startAnimationLoop(),S.ready=!0,kt($.ready)&&x.on("ready",$.ready);for(var Lt=0;Lt0,z=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),S;if(dt(g.roots))S=g.roots;else if(mt(g.roots)){for(var V=[],U=0;U0;){var gn=pe(),je=fe(gn,se);if(je)gn.outgoers().filter(function(Di){return Di.isNode()&&T.has(Di)}).forEach(Ne);else if(je===null){no("Detected double maximal shift for node `"+gn.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}Ut();var Ge=0;if(g.avoidOverlap)for(var xn=0;xn0&&Et[0].length<=3?Xs/2:0),jn=2*Math.PI/Et[Zi].length*Ni;return Zi===0&&Et[0].length===1&&(Jt=1),{x:_i.x+Jt*Math.cos(jn),y:_i.y+Jt*Math.sin(jn)}}else{var Cr={x:_i.x+(Ni+1-(ns+1)/2)*Ua,y:(Zi+1)*sa};return Cr}};return T.nodes().layoutPositions(this,g,La),this};var IJ={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function fT(y){this.options=fn({},IJ,y)}fT.prototype.run=function(){var y=this.options,g=y,x=y.cy,T=g.eles,L=g.counterclockwise!==void 0?!g.counterclockwise:g.clockwise,I=T.nodes().not(":parent");g.sort&&(I=I.sort(g.sort));for(var O=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),$={x:O.x1+O.w/2,y:O.y1+O.h/2},z=g.sweep===void 0?2*Math.PI-2*Math.PI/I.length:g.sweep,S=z/Math.max(1,I.length-1),V,U=0,et=0;et1&&g.avoidOverlap){U*=1.75;var Et=Math.cos(S)-Math.cos(0),Dt=Math.sin(S)-Math.sin(0),It=Math.sqrt(U*U/(Et*Et+Dt*Dt));V=Math.max(It,V)}var zt=function(Xt,Ht){var ie=g.startAngle+Ht*S*(L?1:-1),Ut=V*Math.cos(ie),fe=V*Math.sin(ie),ge={x:$.x+Ut,y:$.y+fe};return ge};return T.nodes().layoutPositions(this,g,zt),this};var OJ={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(g){return g.degree()},levelWidth:function(g){return g.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function LB(y){this.options=fn({},OJ,y)}LB.prototype.run=function(){for(var y=this.options,g=y,x=g.counterclockwise!==void 0?!g.counterclockwise:g.clockwise,T=y.cy,L=g.eles,I=L.nodes().not(":parent"),O=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:T.width(),h:T.height()}),$={x:O.x1+O.w/2,y:O.y1+O.h/2},z=[],S=0,V=0;V0){var te=Math.abs(Dt[0].value-zt.value);te>=Lt&&(Dt=[],Et.push(Dt))}Dt.push(zt)}var Xt=S+g.minNodeSpacing;if(!g.avoidOverlap){var Ht=Et.length>0&&Et[0].length>1,ie=Math.min(O.w,O.h)/2-Xt,Ut=ie/(Et.length+Ht?1:0);Xt=Math.min(Xt,Ut)}for(var fe=0,ge=0;ge1&&g.avoidOverlap){var gn=Math.cos(pe)-Math.cos(0),je=Math.sin(pe)-Math.sin(0),Ge=Math.sqrt(Xt*Xt/(gn*gn+je*je));fe=Math.max(Ge,fe)}se.r=fe,fe+=Xt}if(g.equidistant){for(var xn=0,Dn=0,Xn=0;Xn=y.numIter||(zJ(T,y),T.temperature=T.temperature*y.coolingFactor,T.temperature=y.animationThreshold&&I(),Qc(U)}};V()}else{for(;S;)S=O(z),z++;IB(T,y),$()}return this},dT.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},dT.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var PJ=function(g,x,T){for(var L=T.eles.edges(),I=T.eles.nodes(),O={isCompound:g.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:I.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:L.size(),temperature:T.initialTemp,clientWidth:g.width(),clientHeight:g.width(),boundingBox:Rd(T.boundingBox?T.boundingBox:{x1:0,y1:0,w:g.width(),h:g.height()})},$=T.eles.components(),z={},S=0;S<$.length;S++)for(var V=$[S],U=0;U0){O.graphSet.push(Ht);for(var S=0;SL.count?0:L.graph},BJ=function y(g,x,T,L){var I=L.graphSet[T];if(-10)var U=L.nodeOverlap*V,et=Math.sqrt($*$+z*z),at=U*$/et,lt=U*z/et;else var gt=gT(g,$,z),Lt=gT(x,-1*$,-1*z),Et=Lt.x-gt.x,Dt=Lt.y-gt.y,It=Et*Et+Dt*Dt,et=Math.sqrt(It),U=(g.nodeRepulsion+x.nodeRepulsion)/It,at=U*Et/et,lt=U*Dt/et;g.isLocked||(g.offsetX-=at,g.offsetY-=lt),x.isLocked||(x.offsetX+=at,x.offsetY+=lt)}},VJ=function(g,x,T,L){if(T>0)var I=g.maxX-x.minX;else var I=x.maxX-g.minX;if(L>0)var O=g.maxY-x.minY;else var O=x.maxY-g.minY;return I>=0&&O>=0?Math.sqrt(I*I+O*O):0},gT=function(g,x,T){var L=g.positionX,I=g.positionY,O=g.height||1,$=g.width||1,z=T/x,S=O/$,V={};return x===0&&0T?(V.x=L,V.y=I+O/2,V):0x&&-1*S<=z&&z<=S?(V.x=L-$/2,V.y=I-$*T/2/x,V):0=S)?(V.x=L+O*x/2/T,V.y=I+O/2,V):(0>T&&(z<=-1*S||z>=S)&&(V.x=L-O*x/2/T,V.y=I-O/2),V)},GJ=function(g,x){for(var T=0;TT){var Lt=x.gravity*at/gt,Et=x.gravity*lt/gt;et.offsetX+=Lt,et.offsetY+=Et}}}}},WJ=function(g,x){var T=[],L=0,I=-1;for(T.push.apply(T,g.graphSet[0]),I+=g.graphSet[0].length;L<=I;){var O=T[L++],$=g.idToIndex[O],z=g.layoutNodes[$],S=z.children;if(0T)var I={x:T*g/L,y:T*x/L};else var I={x:g,y:x};return I},XJ=function y(g,x){var T=g.parentId;if(T!=null){var L=x.layoutNodes[x.idToIndex[T]],I=!1;if((L.maxX==null||g.maxX+L.padRight>L.maxX)&&(L.maxX=g.maxX+L.padRight,I=!0),(L.minX==null||g.minX-L.padLeftL.maxY)&&(L.maxY=g.maxY+L.padBottom,I=!0),(L.minY==null||g.minY-L.padTopEt&&(lt+=Lt+x.componentSpacing,at=0,gt=0,Lt=0)}}},QJ={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(g){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function OB(y){this.options=fn({},QJ,y)}OB.prototype.run=function(){var y=this.options,g=y,x=y.cy,T=g.eles,L=T.nodes().not(":parent");g.sort&&(L=L.sort(g.sort));var I=Rd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()});if(I.h===0||I.w===0)T.nodes().layoutPositions(this,g,function(rr){return{x:I.x1,y:I.y1}});else{var O=L.size(),$=Math.sqrt(O*I.h/I.w),z=Math.round($),S=Math.round(I.w/I.h*$),V=function(wr){if(wr==null)return Math.min(z,S);var ur=Math.min(z,S);ur==z?z=wr:S=wr},U=function(wr){if(wr==null)return Math.max(z,S);var ur=Math.max(z,S);ur==z?z=wr:S=wr},et=g.rows,at=g.cols!=null?g.cols:g.columns;if(et!=null&&at!=null)z=et,S=at;else if(et!=null&&at==null)z=et,S=Math.ceil(O/z);else if(et==null&&at!=null)S=at,z=Math.ceil(O/S);else if(S*z>O){var lt=V(),gt=U();(lt-1)*gt>=O?V(lt-1):(gt-1)*lt>=O&&U(gt-1)}else for(;S*z=O?U(Et+1):V(Lt+1)}var Dt=I.w/S,It=I.h/z;if(g.condense&&(Dt=0,It=0),g.avoidOverlap)for(var zt=0;zt=S&&(gn=0,pe++)},Ge={},xn=0;xn(gn=FY(y,g,je[Ge],je[Ge+1],je[Ge+2],je[Ge+3])))return Lt(Ht,gn),!0}else if(Ut.edgeType==="bezier"||Ut.edgeType==="multibezier"||Ut.edgeType==="self"||Ut.edgeType==="compound"){for(var je=Ut.allpts,Ge=0;Ge+5(gn=PY(y,g,je[Ge],je[Ge+1],je[Ge+2],je[Ge+3],je[Ge+4],je[Ge+5])))return Lt(Ht,gn),!0}for(var xn=xn||ie.source,Dn=Dn||ie.target,Xn=L.getArrowWidth(fe,ge),Cn=[{name:"source",x:Ut.arrowStartX,y:Ut.arrowStartY,angle:Ut.srcArrowAngle},{name:"target",x:Ut.arrowEndX,y:Ut.arrowEndY,angle:Ut.tgtArrowAngle},{name:"mid-source",x:Ut.midX,y:Ut.midY,angle:Ut.midsrcArrowAngle},{name:"mid-target",x:Ut.midX,y:Ut.midY,angle:Ut.midtgtArrowAngle}],Ge=0;Ge0&&(Et(xn),Et(Dn))}function It(Ht,ie,Ut){return wp(Ht,ie,Ut)}function zt(Ht,ie){var Ut=Ht._private,fe=et,ge;ie?ge=ie+"-":ge="",Ht.boundingBox();var se=Ut.labelBounds[ie||"main"],Ne=Ht.pstyle(ge+"label").value,pe=Ht.pstyle("text-events").strValue==="yes";if(!(!pe||!Ne)){var gn=It(Ut.rscratch,"labelX",ie),je=It(Ut.rscratch,"labelY",ie),Ge=It(Ut.rscratch,"labelAngle",ie),xn=Ht.pstyle(ge+"text-margin-x").pfValue,Dn=Ht.pstyle(ge+"text-margin-y").pfValue,Xn=se.x1-fe-xn,Cn=se.x2+fe-xn,Yn=se.y1-fe-Dn,rr=se.y2+fe-Dn;if(Ge){var wr=Math.cos(Ge),ur=Math.sin(Ge),er=function(La,Di){return La=La-gn,Di=Di-je,{x:La*wr-Di*ur+gn,y:La*ur+Di*wr+je}},bn=er(Xn,Yn),pr=er(Xn,rr),fr=er(Cn,Yn),ri=er(Cn,rr),_i=[bn.x+xn,bn.y+Dn,fr.x+xn,fr.y+Dn,ri.x+xn,ri.y+Dn,pr.x+xn,pr.y+Dn];if(jd(y,g,_i))return Lt(Ht),!0}else if(H5(se,y,g))return Lt(Ht),!0}}for(var te=O.length-1;te>=0;te--){var Xt=O[te];Xt.isNode()?Et(Xt)||zt(Xt):Dt(Xt)||zt(Xt)||zt(Xt,"source")||zt(Xt,"target")}return $},M3.getAllInBox=function(y,g,x,T){var L=this.getCachedZSortedEles().interactive,I=[],O=Math.min(y,x),$=Math.max(y,x),z=Math.min(g,T),S=Math.max(g,T);y=O,x=$,g=z,T=S;for(var V=Rd({x1:y,y1:g,x2:x,y2:T}),U=0;U0?Math.max(ss-qo,0):Math.min(ss+qo,0)},Ne=se(fe,ie),pe=se(ge,Ut),gn=!1;Dt===S?Et=Math.abs(Ne)>Math.abs(pe)?L:T:Dt===z||Dt===$?(Et=T,gn=!0):(Dt===I||Dt===O)&&(Et=L,gn=!0);var je=Et===T,Ge=je?pe:Ne,xn=je?ge:fe,Dn=ZP(xn),Xn=!1;!(gn&&(zt||Xt))&&(Dt===$&&xn<0||Dt===z&&xn>0||Dt===I&&xn>0||Dt===O&&xn<0)&&(Dn*=-1,Ge=Dn*Math.abs(Ge),Xn=!0);var Cn;if(zt){var Yn=te<0?1+te:te;Cn=Yn*Ge}else{var rr=te<0?Ge:0;Cn=rr+te*Dn}var wr=function(ss){return Math.abs(ss)=Math.abs(Ge)},ur=wr(Cn),er=wr(Math.abs(Ge)-Math.abs(Cn)),bn=ur||er;if(bn&&!Xn)if(je){var pr=Math.abs(xn)<=et/2,fr=Math.abs(fe)<=at/2;if(pr){var ri=(V.x1+V.x2)/2,_i=V.y1,ia=V.y2;x.segpts=[ri,_i,ri,ia]}else if(fr){var La=(V.y1+V.y2)/2,Di=V.x1,wi=V.x2;x.segpts=[Di,La,wi,La]}else x.segpts=[V.x1,V.y2]}else{var _s=Math.abs(xn)<=U/2,Zi=Math.abs(ge)<=lt/2;if(_s){var Ni=(V.y1+V.y2)/2,ns=V.x1,Ua=V.x2;x.segpts=[ns,Ni,Ua,Ni]}else if(Zi){var sa=(V.x1+V.x2)/2,Xs=V.y1,Cr=V.y2;x.segpts=[sa,Xs,sa,Cr]}else x.segpts=[V.x2,V.y1]}else if(je){var Jt=V.y1+Cn+(Lt?et/2*Dn:0),jn=V.x1,Lr=V.x2;x.segpts=[jn,Jt,Lr,Jt]}else{var ir=V.x1+Cn+(Lt?U/2*Dn:0),sr=V.y1,Fa=V.y2;x.segpts=[ir,sr,ir,Fa]}},sd.tryToCorrectInvalidPoints=function(y,g){var x=y._private.rscratch;if(x.edgeType==="bezier"){var T=g.srcPos,L=g.tgtPos,I=g.srcW,O=g.srcH,$=g.tgtW,z=g.tgtH,S=g.srcShape,V=g.tgtShape,U=!st(x.startX)||!st(x.startY),et=!st(x.arrowStartX)||!st(x.arrowStartY),at=!st(x.endX)||!st(x.endY),lt=!st(x.arrowEndX)||!st(x.arrowEndY),gt=3,Lt=this.getArrowWidth(y.pstyle("width").pfValue,y.pstyle("arrow-scale").value)*this.arrowShapeWidth,Et=gt*Lt,Dt=T3({x:x.ctrlpts[0],y:x.ctrlpts[1]},{x:x.startX,y:x.startY}),It=Dtpe.poolIndex()){var gn=Ne;Ne=pe,pe=gn}var je=Ut.srcPos=Ne.position(),Ge=Ut.tgtPos=pe.position(),xn=Ut.srcW=Ne.outerWidth(),Dn=Ut.srcH=Ne.outerHeight(),Xn=Ut.tgtW=pe.outerWidth(),Cn=Ut.tgtH=pe.outerHeight(),Yn=Ut.srcShape=x.nodeShapes[g.getNodeShape(Ne)],rr=Ut.tgtShape=x.nodeShapes[g.getNodeShape(pe)];Ut.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var wr=0;wr0){var pr=I,fr=_3(pr,z5(x)),ri=_3(pr,z5(bn)),_i=fr;if(ri2){var ia=_3(pr,{x:bn[2],y:bn[3]});ia<_i&&(x=[bn[2],bn[3]])}}}var La=F9(x,fe,g.arrowShapes[$].spacing(y)+S),Di=F9(x,fe,g.arrowShapes[$].gap(y)+S);if(et.endX=Di[0],et.endY=Di[1],et.arrowEndX=La[0],et.arrowEndY=La[1],Ht==="inside-to-node")x=[I.x,I.y];else if(Xt.units)x=this.manualEndptToPx(T,Xt);else if(Ht==="outside-to-line")x=et.srcIntn;else if(Ht==="outside-to-node"||Ht==="outside-to-node-or-label"?Ne=ge:(Ht==="outside-to-line"||Ht==="outside-to-line-or-label")&&(Ne=[O.x,O.y]),x=g.nodeShapes[this.getNodeShape(T)].intersectLine(I.x,I.y,T.outerWidth(),T.outerHeight(),Ne[0],Ne[1],0),Ht==="outside-to-node-or-label"||Ht==="outside-to-line-or-label"){var wi=T._private.rscratch,_s=wi.labelWidth,Zi=wi.labelHeight,Ni=wi.labelX,ns=wi.labelY,Ua=_s/2,sa=Zi/2,Xs=T.pstyle("text-valign").value;Xs==="top"?ns-=sa:Xs==="bottom"&&(ns+=sa);var Cr=T.pstyle("text-halign").value;Cr==="left"?Ni-=Ua:Cr==="right"&&(Ni+=Ua);var Jt=wk(Ne[0],Ne[1],[Ni-Ua,ns-sa,Ni+Ua,ns-sa,Ni+Ua,ns+sa,Ni-Ua,ns+sa],I.x,I.y);if(Jt.length>0){var jn=O,Lr=_3(jn,z5(x)),ir=_3(jn,z5(Jt)),sr=Lr;if(ir2){var Fa=_3(jn,{x:Jt[2],y:Jt[3]});Fa=lt||Ht){Lt={cp:zt,segment:Xt};break}}if(Lt)break}var ie=Lt.cp,Ut=Lt.segment,fe=(lt-Et)/Ut.length,ge=Ut.t1-Ut.t0,se=at?Ut.t0+ge*fe:Ut.t1-ge*fe;se=bk(0,se,1),g=q5(ie.p0,ie.p1,ie.p2,se),et=qB(ie.p0,ie.p1,ie.p2,se);break}case"straight":case"segments":case"haystack":{for(var Ne=0,pe,gn,je,Ge,xn=T.allpts.length,Dn=0;Dn+3=lt));Dn+=2);var Xn=lt-gn,Cn=Xn/pe;Cn=bk(0,Cn,1),g=_Y(je,Ge,Cn),et=zB(je,Ge);break}}O("labelX",U,g.x),O("labelY",U,g.y),O("labelAutoAngle",U,et)}};S("source"),S("target"),this.applyLabelDimensions(y)}},kp.applyLabelDimensions=function(y){this.applyPrefixedLabelDimensions(y),y.isEdge()&&(this.applyPrefixedLabelDimensions(y,"source"),this.applyPrefixedLabelDimensions(y,"target"))},kp.applyPrefixedLabelDimensions=function(y,g){var x=y._private,T=this.getLabelText(y,g),L=this.calculateLabelDimensions(y,T),I=y.pstyle("line-height").pfValue,O=y.pstyle("text-wrap").strValue,$=wp(x.rscratch,"labelWrapCachedLines",g)||[],z=O!=="wrap"?1:Math.max($.length,1),S=L.height/z,V=S*I,U=L.width,et=L.height+(z-1)*(I-1)*S;bm(x.rstyle,"labelWidth",g,U),bm(x.rscratch,"labelWidth",g,U),bm(x.rstyle,"labelHeight",g,et),bm(x.rscratch,"labelHeight",g,et),bm(x.rscratch,"labelLineHeight",g,V)},kp.getLabelText=function(y,g){var x=y._private,T=g?g+"-":"",L=y.pstyle(T+"label").strValue,I=y.pstyle("text-transform").value,O=function(Xn,Cn){return Cn?(bm(x.rscratch,Xn,g,Cn),Cn):wp(x.rscratch,Xn,g)};if(!L)return"";I=="none"||(I=="uppercase"?L=L.toUpperCase():I=="lowercase"&&(L=L.toLowerCase()));var $=y.pstyle("text-wrap").value;if($==="wrap"){var z=O("labelKey");if(z!=null&&O("labelWrapKey")===z)return O("labelWrapCachedText");for(var S="​",V=L.split(` +`),U=y.pstyle("text-max-width").pfValue,et=y.pstyle("text-overflow-wrap").value,at=et==="anywhere",lt=[],gt=/[\s\u200b]+/,Lt=at?"":" ",Et=0;EtU){for(var Xt=Dt.split(gt),Ht="",ie=0;ieNe)break;pe+=L[Ge],Ge===L.length-1&&(je=!0)}return je||(pe+=gn),pe}return L},kp.getLabelJustification=function(y){var g=y.pstyle("text-justification").strValue,x=y.pstyle("text-halign").strValue;if(g==="auto")if(y.isNode())switch(x){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return g},kp.calculateLabelDimensions=function(y,g){var x=this,T=vp(g,y._private.labelDimsKey),L=x.labelDimCache||(x.labelDimCache=[]),I=L[T];if(I!=null)return I;var O=0,$=y.pstyle("font-style").strValue,z=y.pstyle("font-size").pfValue,S=y.pstyle("font-family").strValue,V=y.pstyle("font-weight").strValue,U=this.labelCalcCanvas,et=this.labelCalcCanvasContext;if(!U){U=this.labelCalcCanvas=document.createElement("canvas"),et=this.labelCalcCanvasContext=U.getContext("2d");var at=U.style;at.position="absolute",at.left="-9999px",at.top="-9999px",at.zIndex="-1",at.visibility="hidden",at.pointerEvents="none"}et.font="".concat($," ").concat(V," ").concat(z,"px ").concat(S);for(var lt=0,gt=0,Lt=g.split(` +`),Et=0;Et1&&arguments[1]!==void 0?arguments[1]:!0;if(g.merge(O),$)for(var z=0;z=y.desktopTapThreshold2}var bv=T(Jt);Gf&&(y.hoverData.tapholdCancelled=!0);var Cm=function(){var Ub=y.hoverData.dragDelta=y.hoverData.dragDelta||[];Ub.length===0?(Ub.push(io[0]),Ub.push(io[1])):(Ub[0]+=io[0],Ub[1]+=io[1])};Lr=!0,x(ro,["mousemove","vmousemove","tapdrag"],Jt,{x:Hr[0],y:Hr[1]});var d6=function(){y.data.bgActivePosistion=void 0,y.hoverData.selecting||ir.emit({originalEvent:Jt,type:"boxstart",position:{x:Hr[0],y:Hr[1]}}),Bc[4]=1,y.hoverData.selecting=!0,y.redrawHint("select",!0),y.redraw()};if(y.hoverData.which===3){if(Gf){var N3={originalEvent:Jt,type:"cxtdrag",position:{x:Hr[0],y:Hr[1]}};Ma?Ma.emit(N3):ir.emit(N3),y.hoverData.cxtDragged=!0,(!y.hoverData.cxtOver||ro!==y.hoverData.cxtOver)&&(y.hoverData.cxtOver&&y.hoverData.cxtOver.emit({originalEvent:Jt,type:"cxtdragout",position:{x:Hr[0],y:Hr[1]}}),y.hoverData.cxtOver=ro,ro&&ro.emit({originalEvent:Jt,type:"cxtdragover",position:{x:Hr[0],y:Hr[1]}}))}}else if(y.hoverData.dragging){if(Lr=!0,ir.panningEnabled()&&ir.userPanningEnabled()){var g6;if(y.hoverData.justStartedPan){var TT=y.hoverData.mdownPos;g6={x:(Hr[0]-TT[0])*sr,y:(Hr[1]-TT[1])*sr},y.hoverData.justStartedPan=!1}else g6={x:io[0]*sr,y:io[1]*sr};ir.panBy(g6),ir.emit("dragpan"),y.hoverData.dragged=!0}Hr=y.projectIntoViewport(Jt.clientX,Jt.clientY)}else if(Bc[4]==1&&(Ma==null||Ma.pannable())){if(Gf){if(!y.hoverData.dragging&&ir.boxSelectionEnabled()&&(bv||!ir.panningEnabled()||!ir.userPanningEnabled()))d6();else if(!y.hoverData.selecting&&ir.panningEnabled()&&ir.userPanningEnabled()){var P3=L(Ma,y.hoverData.downs);P3&&(y.hoverData.dragging=!0,y.hoverData.justStartedPan=!0,Bc[4]=0,y.data.bgActivePosistion=z5(ss),y.redrawHint("select",!0),y.redraw())}Ma&&Ma.pannable()&&Ma.active()&&Ma.unactivate()}}else{if(Ma&&Ma.pannable()&&Ma.active()&&Ma.unactivate(),(!Ma||!Ma.grabbed())&&ro!=Tc&&(Tc&&x(Tc,["mouseout","tapdragout"],Jt,{x:Hr[0],y:Hr[1]}),ro&&x(ro,["mouseover","tapdragover"],Jt,{x:Hr[0],y:Hr[1]}),y.hoverData.last=ro),Ma)if(Gf){if(ir.boxSelectionEnabled()&&bv)Ma&&Ma.grabbed()&&(gt(_l),Ma.emit("freeon"),_l.emit("free"),y.dragData.didDrag&&(Ma.emit("dragfreeon"),_l.emit("dragfree"))),d6();else if(Ma&&Ma.grabbed()&&y.nodeIsDraggable(Ma)){var $d=!y.dragData.didDrag;$d&&y.redrawHint("eles",!0),y.dragData.didDrag=!0,y.hoverData.draggingEles||at(_l,{inDragLayer:!0});var x1={x:0,y:0};if(st(io[0])&&st(io[1])&&(x1.x+=io[0],x1.y+=io[1],$d)){var zd=y.hoverData.dragDelta;zd&&st(zd[0])&&st(zd[1])&&(x1.x+=zd[0],x1.y+=zd[1])}y.hoverData.draggingEles=!0,_l.silentShift(x1).emit("position drag"),y.redrawHint("drag",!0),y.redraw()}}else Cm();Lr=!0}if(Bc[2]=Hr[0],Bc[3]=Hr[1],Lr)return Jt.stopPropagation&&Jt.stopPropagation(),Jt.preventDefault&&Jt.preventDefault(),!1}},!1);var Ut,fe,ge;y.registerBinding(window,"mouseup",function(Jt){var jn=y.hoverData.capture;if(jn){y.hoverData.capture=!1;var Lr=y.cy,ir=y.projectIntoViewport(Jt.clientX,Jt.clientY),sr=y.selection,Fa=y.findNearestElement(ir[0],ir[1],!0,!1),Hr=y.dragData.possibleDragElements,ss=y.hoverData.down,qo=T(Jt);if(y.data.bgActivePosistion&&(y.redrawHint("select",!0),y.redraw()),y.hoverData.tapholdCancelled=!0,y.data.bgActivePosistion=void 0,ss&&ss.unactivate(),y.hoverData.which===3){var Bc={originalEvent:Jt,type:"cxttapend",position:{x:ir[0],y:ir[1]}};if(ss?ss.emit(Bc):Lr.emit(Bc),!y.hoverData.cxtDragged){var ro={originalEvent:Jt,type:"cxttap",position:{x:ir[0],y:ir[1]}};ss?ss.emit(ro):Lr.emit(ro)}y.hoverData.cxtDragged=!1,y.hoverData.which=null}else if(y.hoverData.which===1){if(x(Fa,["mouseup","tapend","vmouseup"],Jt,{x:ir[0],y:ir[1]}),!y.dragData.didDrag&&!y.hoverData.dragged&&!y.hoverData.selecting&&!y.hoverData.isOverThresholdDrag&&(x(ss,["click","tap","vclick"],Jt,{x:ir[0],y:ir[1]}),fe=!1,Jt.timeStamp-ge<=Lr.multiClickDebounceTime()?(Ut&&clearTimeout(Ut),fe=!0,ge=null,x(ss,["dblclick","dbltap","vdblclick"],Jt,{x:ir[0],y:ir[1]})):(Ut=setTimeout(function(){fe||x(ss,["oneclick","onetap","voneclick"],Jt,{x:ir[0],y:ir[1]})},Lr.multiClickDebounceTime()),ge=Jt.timeStamp)),ss==null&&!y.dragData.didDrag&&!y.hoverData.selecting&&!y.hoverData.dragged&&!T(Jt)&&(Lr.$(g).unselect(["tapunselect"]),Hr.length>0&&y.redrawHint("eles",!0),y.dragData.possibleDragElements=Hr=Lr.collection()),Fa==ss&&!y.dragData.didDrag&&!y.hoverData.selecting&&Fa!=null&&Fa._private.selectable&&(y.hoverData.dragging||(Lr.selectionType()==="additive"||qo?Fa.selected()?Fa.unselect(["tapunselect"]):Fa.select(["tapselect"]):qo||(Lr.$(g).unmerge(Fa).unselect(["tapunselect"]),Fa.select(["tapselect"]))),y.redrawHint("eles",!0)),y.hoverData.selecting){var Tc=Lr.collection(y.getAllInBox(sr[0],sr[1],sr[2],sr[3]));y.redrawHint("select",!0),Tc.length>0&&y.redrawHint("eles",!0),Lr.emit({type:"boxend",originalEvent:Jt,position:{x:ir[0],y:ir[1]}});var Ma=function(Gf){return Gf.selectable()&&!Gf.selected()};Lr.selectionType()==="additive"||qo||Lr.$(g).unmerge(Tc).unselect(),Tc.emit("box").stdFilter(Ma).select().emit("boxselect"),y.redraw()}if(y.hoverData.dragging&&(y.hoverData.dragging=!1,y.redrawHint("select",!0),y.redrawHint("eles",!0),y.redraw()),!sr[4]){y.redrawHint("drag",!0),y.redrawHint("eles",!0);var io=ss&&ss.grabbed();gt(Hr),io&&(ss.emit("freeon"),Hr.emit("free"),y.dragData.didDrag&&(ss.emit("dragfreeon"),Hr.emit("dragfree")))}}sr[4]=0,y.hoverData.down=null,y.hoverData.cxtStarted=!1,y.hoverData.draggingEles=!1,y.hoverData.selecting=!1,y.hoverData.isOverThresholdDrag=!1,y.dragData.didDrag=!1,y.hoverData.dragged=!1,y.hoverData.dragDelta=[],y.hoverData.mdownPos=null,y.hoverData.mdownGPos=null}},!1);var se=function(Jt){if(!y.scrollingPage){var jn=y.cy,Lr=jn.zoom(),ir=jn.pan(),sr=y.projectIntoViewport(Jt.clientX,Jt.clientY),Fa=[sr[0]*Lr+ir.x,sr[1]*Lr+ir.y];if(y.hoverData.draggingEles||y.hoverData.dragging||y.hoverData.cxtStarted||Ht()){Jt.preventDefault();return}if(jn.panningEnabled()&&jn.userPanningEnabled()&&jn.zoomingEnabled()&&jn.userZoomingEnabled()){Jt.preventDefault(),y.data.wheelZooming=!0,clearTimeout(y.data.wheelTimeout),y.data.wheelTimeout=setTimeout(function(){y.data.wheelZooming=!1,y.redrawHint("eles",!0),y.redraw()},150);var Hr;Jt.deltaY!=null?Hr=Jt.deltaY/-250:Jt.wheelDeltaY!=null?Hr=Jt.wheelDeltaY/1e3:Hr=Jt.wheelDelta/1e3,Hr=Hr*y.wheelSensitivity;var ss=Jt.deltaMode===1;ss&&(Hr*=33);var qo=jn.zoom()*Math.pow(10,Hr);Jt.type==="gesturechange"&&(qo=y.gestureStartZoom*Jt.scale),jn.zoom({level:qo,renderedPosition:{x:Fa[0],y:Fa[1]}}),jn.emit(Jt.type==="gesturechange"?"pinchzoom":"scrollzoom")}}};y.registerBinding(y.container,"wheel",se,!0),y.registerBinding(window,"scroll",function(Jt){y.scrollingPage=!0,clearTimeout(y.scrollingPageTimeout),y.scrollingPageTimeout=setTimeout(function(){y.scrollingPage=!1},250)},!0),y.registerBinding(y.container,"gesturestart",function(Jt){y.gestureStartZoom=y.cy.zoom(),y.hasTouchStarted||Jt.preventDefault()},!0),y.registerBinding(y.container,"gesturechange",function(Cr){y.hasTouchStarted||se(Cr)},!0),y.registerBinding(y.container,"mouseout",function(Jt){var jn=y.projectIntoViewport(Jt.clientX,Jt.clientY);y.cy.emit({originalEvent:Jt,type:"mouseout",position:{x:jn[0],y:jn[1]}})},!1),y.registerBinding(y.container,"mouseover",function(Jt){var jn=y.projectIntoViewport(Jt.clientX,Jt.clientY);y.cy.emit({originalEvent:Jt,type:"mouseover",position:{x:jn[0],y:jn[1]}})},!1);var Ne,pe,gn,je,Ge,xn,Dn,Xn,Cn,Yn,rr,wr,ur,er=function(Jt,jn,Lr,ir){return Math.sqrt((Lr-Jt)*(Lr-Jt)+(ir-jn)*(ir-jn))},bn=function(Jt,jn,Lr,ir){return(Lr-Jt)*(Lr-Jt)+(ir-jn)*(ir-jn)},pr;y.registerBinding(y.container,"touchstart",pr=function(Jt){if(y.hasTouchStarted=!0,!!ie(Jt)){Et(),y.touchData.capture=!0,y.data.bgActivePosistion=void 0;var jn=y.cy,Lr=y.touchData.now,ir=y.touchData.earlier;if(Jt.touches[0]){var sr=y.projectIntoViewport(Jt.touches[0].clientX,Jt.touches[0].clientY);Lr[0]=sr[0],Lr[1]=sr[1]}if(Jt.touches[1]){var sr=y.projectIntoViewport(Jt.touches[1].clientX,Jt.touches[1].clientY);Lr[2]=sr[0],Lr[3]=sr[1]}if(Jt.touches[2]){var sr=y.projectIntoViewport(Jt.touches[2].clientX,Jt.touches[2].clientY);Lr[4]=sr[0],Lr[5]=sr[1]}if(Jt.touches[1]){y.touchData.singleTouchMoved=!0,gt(y.dragData.touchDragEles);var Fa=y.findContainerClientCoords();Cn=Fa[0],Yn=Fa[1],rr=Fa[2],wr=Fa[3],Ne=Jt.touches[0].clientX-Cn,pe=Jt.touches[0].clientY-Yn,gn=Jt.touches[1].clientX-Cn,je=Jt.touches[1].clientY-Yn,ur=0<=Ne&&Ne<=rr&&0<=gn&&gn<=rr&&0<=pe&&pe<=wr&&0<=je&&je<=wr;var Hr=jn.pan(),ss=jn.zoom();Ge=er(Ne,pe,gn,je),xn=bn(Ne,pe,gn,je),Dn=[(Ne+gn)/2,(pe+je)/2],Xn=[(Dn[0]-Hr.x)/ss,(Dn[1]-Hr.y)/ss];var qo=200,Bc=qo*qo;if(xn=1){for(var Tp=y.touchData.startPosition=[],Uf=0;Uf=y.touchTapThreshold2}if(jn&&y.touchData.cxt){Jt.preventDefault();var Tp=Jt.touches[0].clientX-Cn,Uf=Jt.touches[0].clientY-Yn,Eg=Jt.touches[1].clientX-Cn,ad=Jt.touches[1].clientY-Yn,bv=bn(Tp,Uf,Eg,ad),Cm=bv/xn,d6=150,N3=d6*d6,g6=1.5,TT=g6*g6;if(Cm>=TT||bv>=N3){y.touchData.cxt=!1,y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var P3={originalEvent:Jt,type:"cxttapend",position:{x:sr[0],y:sr[1]}};y.touchData.start?(y.touchData.start.unactivate().emit(P3),y.touchData.start=null):ir.emit(P3)}}if(jn&&y.touchData.cxt){var P3={originalEvent:Jt,type:"cxtdrag",position:{x:sr[0],y:sr[1]}};y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.touchData.start?y.touchData.start.emit(P3):ir.emit(P3),y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxtDragged=!0;var $d=y.findNearestElement(sr[0],sr[1],!0,!0);(!y.touchData.cxtOver||$d!==y.touchData.cxtOver)&&(y.touchData.cxtOver&&y.touchData.cxtOver.emit({originalEvent:Jt,type:"cxtdragout",position:{x:sr[0],y:sr[1]}}),y.touchData.cxtOver=$d,$d&&$d.emit({originalEvent:Jt,type:"cxtdragover",position:{x:sr[0],y:sr[1]}}))}else if(jn&&Jt.touches[2]&&ir.boxSelectionEnabled())Jt.preventDefault(),y.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,y.touchData.selecting||ir.emit({originalEvent:Jt,type:"boxstart",position:{x:sr[0],y:sr[1]}}),y.touchData.selecting=!0,y.touchData.didSelect=!0,Lr[4]=1,!Lr||Lr.length===0||Lr[0]===void 0?(Lr[0]=(sr[0]+sr[2]+sr[4])/3,Lr[1]=(sr[1]+sr[3]+sr[5])/3,Lr[2]=(sr[0]+sr[2]+sr[4])/3+1,Lr[3]=(sr[1]+sr[3]+sr[5])/3+1):(Lr[2]=(sr[0]+sr[2]+sr[4])/3,Lr[3]=(sr[1]+sr[3]+sr[5])/3),y.redrawHint("select",!0),y.redraw();else if(jn&&Jt.touches[1]&&!y.touchData.didSelect&&ir.zoomingEnabled()&&ir.panningEnabled()&&ir.userZoomingEnabled()&&ir.userPanningEnabled()){Jt.preventDefault(),y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var x1=y.dragData.touchDragEles;if(x1){y.redrawHint("drag",!0);for(var zd=0;zd0&&!y.hoverData.draggingEles&&!y.swipePanning&&y.data.bgActivePosistion!=null&&(y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.redraw())}},!1);var ri;y.registerBinding(window,"touchcancel",ri=function(Jt){var jn=y.touchData.start;y.touchData.capture=!1,jn&&jn.unactivate()});var _i,ia,La,Di;if(y.registerBinding(window,"touchend",_i=function(Jt){var jn=y.touchData.start,Lr=y.touchData.capture;if(Lr)Jt.touches.length===0&&(y.touchData.capture=!1),Jt.preventDefault();else return;var ir=y.selection;y.swipePanning=!1,y.hoverData.draggingEles=!1;var sr=y.cy,Fa=sr.zoom(),Hr=y.touchData.now,ss=y.touchData.earlier;if(Jt.touches[0]){var qo=y.projectIntoViewport(Jt.touches[0].clientX,Jt.touches[0].clientY);Hr[0]=qo[0],Hr[1]=qo[1]}if(Jt.touches[1]){var qo=y.projectIntoViewport(Jt.touches[1].clientX,Jt.touches[1].clientY);Hr[2]=qo[0],Hr[3]=qo[1]}if(Jt.touches[2]){var qo=y.projectIntoViewport(Jt.touches[2].clientX,Jt.touches[2].clientY);Hr[4]=qo[0],Hr[5]=qo[1]}jn&&jn.unactivate();var Bc;if(y.touchData.cxt){if(Bc={originalEvent:Jt,type:"cxttapend",position:{x:Hr[0],y:Hr[1]}},jn?jn.emit(Bc):sr.emit(Bc),!y.touchData.cxtDragged){var ro={originalEvent:Jt,type:"cxttap",position:{x:Hr[0],y:Hr[1]}};jn?jn.emit(ro):sr.emit(ro)}y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxt=!1,y.touchData.start=null,y.redraw();return}if(!Jt.touches[2]&&sr.boxSelectionEnabled()&&y.touchData.selecting){y.touchData.selecting=!1;var Tc=sr.collection(y.getAllInBox(ir[0],ir[1],ir[2],ir[3]));ir[0]=void 0,ir[1]=void 0,ir[2]=void 0,ir[3]=void 0,ir[4]=0,y.redrawHint("select",!0),sr.emit({type:"boxend",originalEvent:Jt,position:{x:Hr[0],y:Hr[1]}});var Ma=function(N3){return N3.selectable()&&!N3.selected()};Tc.emit("box").stdFilter(Ma).select().emit("boxselect"),Tc.nonempty()&&y.redrawHint("eles",!0),y.redraw()}if(jn!=null&&jn.unactivate(),Jt.touches[2])y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);else if(!Jt.touches[1]){if(!Jt.touches[0]){if(!Jt.touches[0]){y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var io=y.dragData.touchDragEles;if(jn!=null){var _l=jn._private.grabbed;gt(io),y.redrawHint("drag",!0),y.redrawHint("eles",!0),_l&&(jn.emit("freeon"),io.emit("free"),y.dragData.didDrag&&(jn.emit("dragfreeon"),io.emit("dragfree"))),x(jn,["touchend","tapend","vmouseup","tapdragout"],Jt,{x:Hr[0],y:Hr[1]}),jn.unactivate(),y.touchData.start=null}else{var Gf=y.findNearestElement(Hr[0],Hr[1],!0,!0);x(Gf,["touchend","tapend","vmouseup","tapdragout"],Jt,{x:Hr[0],y:Hr[1]})}var Ep=y.touchData.startPosition[0]-Hr[0],Tp=Ep*Ep,Uf=y.touchData.startPosition[1]-Hr[1],Eg=Uf*Uf,ad=Tp+Eg,bv=ad*Fa*Fa;y.touchData.singleTouchMoved||(jn||sr.$(":selected").unselect(["tapunselect"]),x(jn,["tap","vclick"],Jt,{x:Hr[0],y:Hr[1]}),ia=!1,Jt.timeStamp-Di<=sr.multiClickDebounceTime()?(La&&clearTimeout(La),ia=!0,Di=null,x(jn,["dbltap","vdblclick"],Jt,{x:Hr[0],y:Hr[1]})):(La=setTimeout(function(){ia||x(jn,["onetap","voneclick"],Jt,{x:Hr[0],y:Hr[1]})},sr.multiClickDebounceTime()),Di=Jt.timeStamp)),jn!=null&&!y.dragData.didDrag&&jn._private.selectable&&bv"u"){var wi=[],_s=function(Jt){return{clientX:Jt.clientX,clientY:Jt.clientY,force:1,identifier:Jt.pointerId,pageX:Jt.pageX,pageY:Jt.pageY,radiusX:Jt.width/2,radiusY:Jt.height/2,screenX:Jt.screenX,screenY:Jt.screenY,target:Jt.target}},Zi=function(Jt){return{event:Jt,touch:_s(Jt)}},Ni=function(Jt){wi.push(Zi(Jt))},ns=function(Jt){for(var jn=0;jn0)return Cn[0]}return null},at=Object.keys(U),lt=0;lt0?et:eF(I,O,g,x,T,L,$)},checkPoint:function(g,x,T,L,I,O,$){var z=mk(L,I),S=2*z;if(lv(g,x,this.points,O,$,L,I-S,[0,-1],T)||lv(g,x,this.points,O,$,L-S,I,[0,-1],T))return!0;var V=L/2+2*T,U=I/2+2*T,et=[O-V,$-U,O-V,$,O+V,$,O+V,$-U];return!!(jd(g,x,et)||C3(g,x,S,S,O+L/2-z,$+I/2-z,T)||C3(g,x,S,S,O-L/2+z,$+I/2-z,T))}}},dv.registerNodeShapes=function(){var y=this.nodeShapes={},g=this;this.generateEllipse(),this.generatePolygon("triangle",rd(3,0)),this.generateRoundPolygon("round-triangle",rd(3,0)),this.generatePolygon("rectangle",rd(4,0)),y.square=y.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var x=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",x),this.generateRoundPolygon("round-diamond",x)}this.generatePolygon("pentagon",rd(5,0)),this.generateRoundPolygon("round-pentagon",rd(5,0)),this.generatePolygon("hexagon",rd(6,0)),this.generateRoundPolygon("round-hexagon",rd(6,0)),this.generatePolygon("heptagon",rd(7,0)),this.generateRoundPolygon("round-heptagon",rd(7,0)),this.generatePolygon("octagon",rd(8,0)),this.generateRoundPolygon("round-octagon",rd(8,0));var T=new Array(20);{var L=_L(5,0),I=_L(5,Math.PI/5),O=.5*(3-Math.sqrt(5));O*=1.57;for(var $=0;$=g.deqFastCost*zt)break}else if(S){if(Dt>=g.deqCost*at||Dt>=g.deqAvgCost*et)break}else if(It>=g.deqNoDrawCost*ZL)break;var te=g.deq(T,Lt,gt);if(te.length>0)for(var Xt=0;Xt0&&(g.onDeqd(T,lt),!S&&g.shouldRedraw(T,lt,Lt,gt)&&I())},$=g.priority||R5;L.beforeRender(O,$(T))}}}},itt=function(){function y(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:uv;p(this,y),this.idsByKey=new Hb,this.keyForId=new Hb,this.cachesByLvl=new Hb,this.lvls=[],this.getKey=g,this.doesEleInvalidateKey=x}return m(y,[{key:"getIdsFor",value:function(x){x==null&&ou("Can not get id list for null key");var T=this.idsByKey,L=this.idsByKey.get(x);return L||(L=new $5,T.set(x,L)),L}},{key:"addIdForKey",value:function(x,T){x!=null&&this.getIdsFor(x).add(T)}},{key:"deleteIdForKey",value:function(x,T){x!=null&&this.getIdsFor(x).delete(T)}},{key:"getNumberOfIdsForKey",value:function(x){return x==null?0:this.getIdsFor(x).size}},{key:"updateKeyMappingFor",value:function(x){var T=x.id(),L=this.keyForId.get(T),I=this.getKey(x);this.deleteIdForKey(L,T),this.addIdForKey(I,T),this.keyForId.set(T,I)}},{key:"deleteKeyMappingFor",value:function(x){var T=x.id(),L=this.keyForId.get(T);this.deleteIdForKey(L,T),this.keyForId.delete(T)}},{key:"keyHasChangedFor",value:function(x){var T=x.id(),L=this.keyForId.get(T),I=this.getKey(x);return L!==I}},{key:"isInvalid",value:function(x){return this.keyHasChangedFor(x)||this.doesEleInvalidateKey(x)}},{key:"getCachesAt",value:function(x){var T=this.cachesByLvl,L=this.lvls,I=T.get(x);return I||(I=new Hb,T.set(x,I),L.push(x)),I}},{key:"getCache",value:function(x,T){return this.getCachesAt(T).get(x)}},{key:"get",value:function(x,T){var L=this.getKey(x),I=this.getCache(L,T);return I!=null&&this.updateKeyMappingFor(x),I}},{key:"getForCachedKey",value:function(x,T){var L=this.keyForId.get(x.id()),I=this.getCache(L,T);return I}},{key:"hasCache",value:function(x,T){return this.getCachesAt(T).has(x)}},{key:"has",value:function(x,T){var L=this.getKey(x);return this.hasCache(L,T)}},{key:"setCache",value:function(x,T,L){L.key=x,this.getCachesAt(T).set(x,L)}},{key:"set",value:function(x,T,L){var I=this.getKey(x);this.setCache(I,T,L),this.updateKeyMappingFor(x)}},{key:"deleteCache",value:function(x,T){this.getCachesAt(T).delete(x)}},{key:"delete",value:function(x,T){var L=this.getKey(x);this.deleteCache(L,T)}},{key:"invalidateKey",value:function(x){var T=this;this.lvls.forEach(function(L){return T.deleteCache(x,L)})}},{key:"invalidate",value:function(x){var T=x.id(),L=this.keyForId.get(T);this.deleteKeyMappingFor(x);var I=this.doesEleInvalidateKey(x);return I&&this.invalidateKey(L),I||this.getNumberOfIdsForKey(L)===0}}]),y}(),wT=25,mT=50,o6=-4,JL=3,tM=7.99,stt=8,att=1024,ott=1024,UB=1024,ctt=.2,utt=.8,ltt=10,htt=.15,ftt=.1,dtt=.9,gtt=.9,ptt=100,btt=1,c6={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},vtt=zf({getKey:null,doesEleInvalidateKey:uv,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:cv,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),jk=function(g,x){var T=this;T.renderer=g,T.onDequeues=[];var L=vtt(x);fn(T,L),T.lookup=new itt(L.getKey,L.doesEleInvalidateKey),T.setupDequeueing()},Ch=jk.prototype;Ch.reasons=c6,Ch.getTextureQueue=function(y){var g=this;return g.eleImgCaches=g.eleImgCaches||{},g.eleImgCaches[y]=g.eleImgCaches[y]||[]},Ch.getRetiredTextureQueue=function(y){var g=this,x=g.eleImgCaches.retired=g.eleImgCaches.retired||{},T=x[y]=x[y]||[];return T},Ch.getElementQueue=function(){var y=this,g=y.eleCacheQueue=y.eleCacheQueue||new pk(function(x,T){return T.reqs-x.reqs});return g},Ch.getElementKeyToQueue=function(){var y=this,g=y.eleKeyToCacheQueue=y.eleKeyToCacheQueue||{};return g},Ch.getElement=function(y,g,x,T,L){var I=this,O=this.renderer,$=O.cy.zoom(),z=this.lookup;if(!g||g.w===0||g.h===0||isNaN(g.w)||isNaN(g.h)||!y.visible()||y.removed()||!I.allowEdgeTxrCaching&&y.isEdge()||!I.allowParentTxrCaching&&y.isParent())return null;if(T==null&&(T=Math.ceil(xL($*x))),T=tM||T>JL)return null;var S=Math.pow(2,T),V=g.h*S,U=g.w*S,et=O.eleTextBiggerThanMin(y,S);if(!this.isVisible(y,et))return null;var at=z.get(y,T);if(at&&at.invalidated&&(at.invalidated=!1,at.texture.invalidatedWidth-=at.width),at)return at;var lt;if(V<=wT?lt=wT:V<=mT?lt=mT:lt=Math.ceil(V/mT)*mT,V>UB||U>ott)return null;var gt=I.getTextureQueue(lt),Lt=gt[gt.length-2],Et=function(){return I.recycleTexture(lt,U)||I.addTexture(lt,U)};Lt||(Lt=gt[gt.length-1]),Lt||(Lt=Et()),Lt.width-Lt.usedWidthT;ge--)Ut=I.getElement(y,g,x,ge,c6.downscale);fe()}else return I.queueElement(y,Xt.level-1),Xt;else{var se;if(!It&&!zt&&!te)for(var Ne=T-1;Ne>=o6;Ne--){var pe=z.get(y,Ne);if(pe){se=pe;break}}if(Dt(se))return I.queueElement(y,T),se;Lt.context.translate(Lt.usedWidth,0),Lt.context.scale(S,S),this.drawElement(Lt.context,y,g,et,!1),Lt.context.scale(1/S,1/S),Lt.context.translate(-Lt.usedWidth,0)}return at={x:Lt.usedWidth,texture:Lt,level:T,scale:S,width:U,height:V,scaledLabelShown:et},Lt.usedWidth+=Math.ceil(U+stt),Lt.eleCaches.push(at),z.set(y,T,at),I.checkTextureFullness(Lt),at},Ch.invalidateElements=function(y){for(var g=0;g=ctt*y.width&&this.retireTexture(y)},Ch.checkTextureFullness=function(y){var g=this,x=g.getTextureQueue(y.height);y.usedWidth/y.width>utt&&y.fullnessChecks>=ltt?pm(x,y):y.fullnessChecks++},Ch.retireTexture=function(y){var g=this,x=y.height,T=g.getTextureQueue(x),L=this.lookup;pm(T,y),y.retired=!0;for(var I=y.eleCaches,O=0;O=g)return O.retired=!1,O.usedWidth=0,O.invalidatedWidth=0,O.fullnessChecks=0,mL(O.eleCaches),O.context.setTransform(1,0,0,1,0,0),O.context.clearRect(0,0,O.width,O.height),pm(L,O),T.push(O),O}},Ch.queueElement=function(y,g){var x=this,T=x.getElementQueue(),L=x.getElementKeyToQueue(),I=this.getKey(y),O=L[I];if(O)O.level=Math.max(O.level,g),O.eles.merge(y),O.reqs++,T.updateItem(O);else{var $={eles:y.spawn().merge(y),level:g,reqs:1,key:I};T.push($),L[I]=$}},Ch.dequeue=function(y){for(var g=this,x=g.getElementQueue(),T=g.getElementKeyToQueue(),L=[],I=g.lookup,O=0;O0;O++){var $=x.pop(),z=$.key,S=$.eles[0],V=I.hasCache(S,$.level);if(T[z]=null,V)continue;L.push($);var U=g.getBoundingBox(S);g.getElement(S,U,y,$.level,c6.dequeue)}return L},Ch.removeFromQueue=function(y){var g=this,x=g.getElementQueue(),T=g.getElementKeyToQueue(),L=this.getKey(y),I=T[L];I!=null&&(I.eles.length===1?(I.reqs=E3,x.updateItem(I),x.pop(),T[L]=null):I.eles.unmerge(y))},Ch.onDequeue=function(y){this.onDequeues.push(y)},Ch.offDequeue=function(y){pm(this.onDequeues,y)},Ch.setupDequeueing=vT.setupDequeueing({deqRedrawThreshold:ptt,deqCost:htt,deqAvgCost:ftt,deqNoDrawCost:dtt,deqFastCost:gtt,deq:function(g,x,T){return g.dequeue(x,T)},onDeqd:function(g,x){for(var T=0;T=yT||x>$k)return null}T.validateLayersElesOrdering(x,y);var z=T.layersByLevel,S=Math.pow(2,x),V=z[x]=z[x]||[],U,et=T.levelIsComplete(x,y),at,lt=function(){var fe=function(gn){if(T.validateLayersElesOrdering(gn,y),T.levelIsComplete(gn,y))return at=z[gn],!0},ge=function(gn){if(!at)for(var je=x+gn;u6<=je&&je<=$k&&!fe(je);je+=gn);};ge(1),ge(-1);for(var se=V.length-1;se>=0;se--){var Ne=V[se];Ne.invalid&&pm(V,Ne)}};if(!et)lt();else return V;var gt=function(){if(!U){U=Rd();for(var fe=0;fenpt)return null;var Ne=T.makeLayer(U,x);if(ge!=null){var pe=V.indexOf(ge)+1;V.splice(pe,0,Ne)}else(fe.insert===void 0||fe.insert)&&V.unshift(Ne);return Ne};if(T.skipping&&!$)return null;for(var Et=null,Dt=y.length/wtt,It=!$,zt=0;zt=Dt||!tF(Et.bb,te.boundingBox()))&&(Et=Lt({insert:!0,after:Et}),!Et))return null;at||It?T.queueLayer(Et,te):T.drawEleInLayer(Et,te,x,g),Et.eles.push(te),Ht[x]=Et}return at||(It?null:V)},w1.getEleLevelForLayerLevel=function(y,g){return y},w1.drawEleInLayer=function(y,g,x,T){var L=this,I=this.renderer,O=y.context,$=g.boundingBox();$.w===0||$.h===0||!g.visible()||(x=L.getEleLevelForLayerLevel(x,T),I.setImgSmoothing(O,!1),I.drawCachedElement(O,g,null,null,x,rpt),I.setImgSmoothing(O,!0))},w1.levelIsComplete=function(y,g){var x=this,T=x.layersByLevel[y];if(!T||T.length===0)return!1;for(var L=0,I=0;I0||O.invalid)return!1;L+=O.eles.length}return L===g.length},w1.validateLayersElesOrdering=function(y,g){var x=this.layersByLevel[y];if(x)for(var T=0;T0){g=!0;break}}return g},w1.invalidateElements=function(y){var g=this;y.length!==0&&(g.lastInvalidationTime=me(),!(y.length===0||!g.haveLayers())&&g.updateElementsInLayers(y,function(T,L,I){g.invalidateLayer(T)}))},w1.invalidateLayer=function(y){if(this.lastInvalidationTime=me(),!y.invalid){var g=y.level,x=y.eles,T=this.layersByLevel[g];pm(T,y),y.elesQueue=[],y.invalid=!0,y.replacement&&(y.replacement.invalid=!0);for(var L=0;L3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,O=this,$=g._private.rscratch;if(!(I&&!g.visible())&&!($.badLine||$.allpts==null||isNaN($.allpts[0]))){var z;x&&(z=x,y.translate(-z.x1,-z.y1));var S=I?g.pstyle("opacity").value:1,V=I?g.pstyle("line-opacity").value:1,U=g.pstyle("curve-style").value,et=g.pstyle("line-style").value,at=g.pstyle("width").pfValue,lt=g.pstyle("line-cap").value,gt=S*V,Lt=S*V,Et=function(){var se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:gt;U==="straight-triangle"?(O.eleStrokeStyle(y,g,se),O.drawEdgeTrianglePath(g,y,$.allpts)):(y.lineWidth=at,y.lineCap=lt,O.eleStrokeStyle(y,g,se),O.drawEdgePath(g,y,$.allpts,et),y.lineCap="butt")},Dt=function(){L&&O.drawEdgeOverlay(y,g)},It=function(){L&&O.drawEdgeUnderlay(y,g)},zt=function(){var se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Lt;O.drawArrowheads(y,g,se)},te=function(){O.drawElementText(y,g,null,T)};y.lineJoin="round";var Xt=g.pstyle("ghost").value==="yes";if(Xt){var Ht=g.pstyle("ghost-offset-x").pfValue,ie=g.pstyle("ghost-offset-y").pfValue,Ut=g.pstyle("ghost-opacity").value,fe=gt*Ut;y.translate(Ht,ie),Et(fe),zt(fe),y.translate(-Ht,-ie)}It(),Et(),zt(),Dt(),te(),x&&y.translate(z.x1,z.y1)}};var Ttt=function(g){if(!["overlay","underlay"].includes(g))throw new Error("Invalid state");return function(x,T){if(T.visible()){var L=T.pstyle("".concat(g,"-opacity")).value;if(L!==0){var I=this,O=I.usePaths(),$=T._private.rscratch,z=T.pstyle("".concat(g,"-padding")).pfValue,S=2*z,V=T.pstyle("".concat(g,"-color")).value;x.lineWidth=S,$.edgeType==="self"&&!O?x.lineCap="butt":x.lineCap="round",I.colorStrokeStyle(x,V[0],V[1],V[2],L),I.drawEdgePath(T,x,$.allpts,"solid")}}}};pv.drawEdgeOverlay=Ttt("overlay"),pv.drawEdgeUnderlay=Ttt("underlay"),pv.drawEdgePath=function(y,g,x,T){var L=y._private.rscratch,I=g,O,$=!1,z=this.usePaths(),S=y.pstyle("line-dash-pattern").pfValue,V=y.pstyle("line-dash-offset").pfValue;if(z){var U=x.join("$"),et=L.pathCacheKey&&L.pathCacheKey===U;et?(O=g=L.pathCache,$=!0):(O=g=new Path2D,L.pathCacheKey=U,L.pathCache=O)}if(I.setLineDash)switch(T){case"dotted":I.setLineDash([1,1]);break;case"dashed":I.setLineDash(S),I.lineDashOffset=V;break;case"solid":I.setLineDash([]);break}if(!$&&!L.badLine)switch(g.beginPath&&g.beginPath(),g.moveTo(x[0],x[1]),L.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var at=2;at+35&&arguments[5]!==void 0?arguments[5]:!0,O=this;if(T==null){if(I&&!O.eleTextBiggerThanMin(g))return}else if(T===!1)return;if(g.isNode()){var $=g.pstyle("label");if(!$||!$.value)return;var z=O.getLabelJustification(g);y.textAlign=z,y.textBaseline="bottom"}else{var S=g.element()._private.rscratch.badLine,V=g.pstyle("label"),U=g.pstyle("source-label"),et=g.pstyle("target-label");if(S||(!V||!V.value)&&(!U||!U.value)&&(!et||!et.value))return;y.textAlign="center",y.textBaseline="bottom"}var at=!x,lt;x&&(lt=x,y.translate(-lt.x1,-lt.y1)),L==null?(O.drawText(y,g,null,at,I),g.isEdge()&&(O.drawText(y,g,"source",at,I),O.drawText(y,g,"target",at,I))):O.drawText(y,g,L,at,I),x&&y.translate(lt.x1,lt.y1)},l6.getFontCache=function(y){var g;this.fontCaches=this.fontCaches||[];for(var x=0;x2&&arguments[2]!==void 0?arguments[2]:!0,T=g.pstyle("font-style").strValue,L=g.pstyle("font-size").pfValue+"px",I=g.pstyle("font-family").strValue,O=g.pstyle("font-weight").strValue,$=x?g.effectiveOpacity()*g.pstyle("text-opacity").value:1,z=g.pstyle("text-outline-opacity").value*$,S=g.pstyle("color").value,V=g.pstyle("text-outline-color").value;y.font=T+" "+O+" "+L+" "+I,y.lineJoin="round",this.colorFillStyle(y,S[0],S[1],S[2],$),this.colorStrokeStyle(y,V[0],V[1],V[2],z)};function upt(y,g,x,T,L){var I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5;y.beginPath(),y.moveTo(g+I,x),y.lineTo(g+T-I,x),y.quadraticCurveTo(g+T,x,g+T,x+I),y.lineTo(g+T,x+L-I),y.quadraticCurveTo(g+T,x+L,g+T-I,x+L),y.lineTo(g+I,x+L),y.quadraticCurveTo(g,x+L,g,x+L-I),y.lineTo(g,x+I),y.quadraticCurveTo(g,x,g+I,x),y.closePath(),y.fill()}l6.getTextAngle=function(y,g){var x,T=y._private,L=T.rscratch,I=g?g+"-":"",O=y.pstyle(I+"text-rotation"),$=wp(L,"labelAngle",g);return O.strValue==="autorotate"?x=y.isEdge()?$:0:O.strValue==="none"?x=0:x=O.pfValue,x},l6.drawText=function(y,g,x){var T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=g._private,O=I.rscratch,$=L?g.effectiveOpacity():1;if(!(L&&($===0||g.pstyle("text-opacity").value===0))){x==="main"&&(x=null);var z=wp(O,"labelX",x),S=wp(O,"labelY",x),V,U,et=this.getLabelText(g,x);if(et!=null&&et!==""&&!isNaN(z)&&!isNaN(S)){this.setupTextStyle(y,g,L);var at=x?x+"-":"",lt=wp(O,"labelWidth",x),gt=wp(O,"labelHeight",x),Lt=g.pstyle(at+"text-margin-x").pfValue,Et=g.pstyle(at+"text-margin-y").pfValue,Dt=g.isEdge(),It=g.pstyle("text-halign").value,zt=g.pstyle("text-valign").value;Dt&&(It="center",zt="center"),z+=Lt,S+=Et;var te;switch(T?te=this.getTextAngle(g,x):te=0,te!==0&&(V=z,U=S,y.translate(V,U),y.rotate(te),z=0,S=0),zt){case"top":break;case"center":S+=gt/2;break;case"bottom":S+=gt;break}var Xt=g.pstyle("text-background-opacity").value,Ht=g.pstyle("text-border-opacity").value,ie=g.pstyle("text-border-width").pfValue,Ut=g.pstyle("text-background-padding").pfValue;if(Xt>0||ie>0&&Ht>0){var fe=z-Ut;switch(It){case"left":fe-=lt;break;case"center":fe-=lt/2;break}var ge=S-gt-Ut,se=lt+2*Ut,Ne=gt+2*Ut;if(Xt>0){var pe=y.fillStyle,gn=g.pstyle("text-background-color").value;y.fillStyle="rgba("+gn[0]+","+gn[1]+","+gn[2]+","+Xt*$+")";var je=g.pstyle("text-background-shape").strValue;je.indexOf("round")===0?upt(y,fe,ge,se,Ne,2):y.fillRect(fe,ge,se,Ne),y.fillStyle=pe}if(ie>0&&Ht>0){var Ge=y.strokeStyle,xn=y.lineWidth,Dn=g.pstyle("text-border-color").value,Xn=g.pstyle("text-border-style").value;if(y.strokeStyle="rgba("+Dn[0]+","+Dn[1]+","+Dn[2]+","+Ht*$+")",y.lineWidth=ie,y.setLineDash)switch(Xn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"double":y.lineWidth=ie/4,y.setLineDash([]);break;case"solid":y.setLineDash([]);break}if(y.strokeRect(fe,ge,se,Ne),Xn==="double"){var Cn=ie/2;y.strokeRect(fe+Cn,ge+Cn,se-Cn*2,Ne-Cn*2)}y.setLineDash&&y.setLineDash([]),y.lineWidth=xn,y.strokeStyle=Ge}}var Yn=2*g.pstyle("text-outline-width").pfValue;if(Yn>0&&(y.lineWidth=Yn),g.pstyle("text-wrap").value==="wrap"){var rr=wp(O,"labelWrapCachedLines",x),wr=wp(O,"labelLineHeight",x),ur=lt/2,er=this.getLabelJustification(g);switch(er==="auto"||(It==="left"?er==="left"?z+=-lt:er==="center"&&(z+=-ur):It==="center"?er==="left"?z+=-ur:er==="right"&&(z+=ur):It==="right"&&(er==="center"?z+=ur:er==="right"&&(z+=lt))),zt){case"top":S-=(rr.length-1)*wr;break;case"center":case"bottom":S-=(rr.length-1)*wr;break}for(var bn=0;bn0&&y.strokeText(rr[bn],z,S),y.fillText(rr[bn],z,S),S+=wr}else Yn>0&&y.strokeText(et,z,S),y.fillText(et,z,S);te!==0&&(y.rotate(-te),y.translate(-V,-U))}}};var qk={};qk.drawNode=function(y,g,x){var T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,L=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,O=this,$,z,S=g._private,V=S.rscratch,U=g.position();if(!(!st(U.x)||!st(U.y))&&!(I&&!g.visible())){var et=I?g.effectiveOpacity():1,at=O.usePaths(),lt,gt=!1,Lt=g.padding();$=g.width()+2*Lt,z=g.height()+2*Lt;var Et;x&&(Et=x,y.translate(-Et.x1,-Et.y1));for(var Dt=g.pstyle("background-image"),It=Dt.value,zt=new Array(It.length),te=new Array(It.length),Xt=0,Ht=0;Ht0&&arguments[0]!==void 0?arguments[0]:Ne;O.eleFillStyle(y,g,Ni)},xn=function(){var Ni=arguments.length>0&&arguments[0]!==void 0?arguments[0]:je;O.colorStrokeStyle(y,pe[0],pe[1],pe[2],Ni)},Dn=g.pstyle("shape").strValue,Xn=g.pstyle("shape-polygon-points").pfValue;if(at){y.translate(U.x,U.y);var Cn=O.nodePathCache=O.nodePathCache||[],Yn=L9(Dn==="polygon"?Dn+","+Xn.join(","):Dn,""+z,""+$),rr=Cn[Yn];rr!=null?(lt=rr,gt=!0,V.pathCache=lt):(lt=new Path2D,Cn[Yn]=V.pathCache=lt)}var wr=function(){if(!gt){var Ni=U;at&&(Ni={x:0,y:0}),O.nodeShapes[O.getNodeShape(g)].draw(lt||y,Ni.x,Ni.y,$,z)}at?y.fill(lt):y.fill()},ur=function(){for(var Ni=arguments.length>0&&arguments[0]!==void 0?arguments[0]:et,ns=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Ua=S.backgrounding,sa=0,Xs=0;Xs0&&arguments[0]!==void 0?arguments[0]:!1,ns=arguments.length>1&&arguments[1]!==void 0?arguments[1]:et;O.hasPie(g)&&(O.drawPie(y,g,ns),Ni&&(at||O.nodeShapes[O.getNodeShape(g)].draw(y,U.x,U.y,$,z)))},bn=function(){var Ni=arguments.length>0&&arguments[0]!==void 0?arguments[0]:et,ns=(ge>0?ge:-ge)*Ni,Ua=ge>0?0:255;ge!==0&&(O.colorFillStyle(y,Ua,Ua,Ua,ns),at?y.fill(lt):y.fill())},pr=function(){if(se>0){if(y.lineWidth=se,y.lineCap="butt",y.setLineDash)switch(gn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"solid":case"double":y.setLineDash([]);break}if(at?y.stroke(lt):y.stroke(),gn==="double"){y.lineWidth=se/3;var Ni=y.globalCompositeOperation;y.globalCompositeOperation="destination-out",at?y.stroke(lt):y.stroke(),y.globalCompositeOperation=Ni}y.setLineDash&&y.setLineDash([])}},fr=function(){L&&O.drawNodeOverlay(y,g,U,$,z)},ri=function(){L&&O.drawNodeUnderlay(y,g,U,$,z)},_i=function(){O.drawElementText(y,g,null,T)},ia=g.pstyle("ghost").value==="yes";if(ia){var La=g.pstyle("ghost-offset-x").pfValue,Di=g.pstyle("ghost-offset-y").pfValue,wi=g.pstyle("ghost-opacity").value,_s=wi*et;y.translate(La,Di),Ge(wi*Ne),wr(),ur(_s,!0),xn(wi*je),pr(),er(ge!==0||se!==0),ur(_s,!1),bn(_s),y.translate(-La,-Di)}at&&y.translate(-U.x,-U.y),ri(),at&&y.translate(U.x,U.y),Ge(),wr(),ur(et,!0),xn(),pr(),er(ge!==0||se!==0),ur(et,!1),bn(),at&&y.translate(-U.x,-U.y),_i(),fr(),x&&y.translate(Et.x1,Et.y1)}};var _tt=function(g){if(!["overlay","underlay"].includes(g))throw new Error("Invalid state");return function(x,T,L,I,O){var $=this;if(T.visible()){var z=T.pstyle("".concat(g,"-padding")).pfValue,S=T.pstyle("".concat(g,"-opacity")).value,V=T.pstyle("".concat(g,"-color")).value,U=T.pstyle("".concat(g,"-shape")).value;if(S>0){if(L=L||T.position(),I==null||O==null){var et=T.padding();I=T.width()+2*et,O=T.height()+2*et}$.colorFillStyle(x,V[0],V[1],V[2],S),$.nodeShapes[U].draw(x,L.x,L.y,I+z*2,O+z*2),x.fill()}}}};qk.drawNodeOverlay=_tt("overlay"),qk.drawNodeUnderlay=_tt("underlay"),qk.hasPie=function(y){return y=y[0],y._private.hasPie},qk.drawPie=function(y,g,x,T){g=g[0],T=T||g.position();var L=g.cy().style(),I=g.pstyle("pie-size"),O=T.x,$=T.y,z=g.width(),S=g.height(),V=Math.min(z,S)/2,U=0,et=this.usePaths();et&&(O=0,$=0),I.units==="%"?V=V*I.pfValue:I.pfValue!==void 0&&(V=I.pfValue/2);for(var at=1;at<=L.pieBackgroundN;at++){var lt=g.pstyle("pie-"+at+"-background-size").value,gt=g.pstyle("pie-"+at+"-background-color").value,Lt=g.pstyle("pie-"+at+"-background-opacity").value*x,Et=lt/100;Et+U>1&&(Et=1-U);var Dt=1.5*Math.PI+2*Math.PI*U,It=2*Math.PI*Et,zt=Dt+It;lt===0||U>=1||U+Et>1||(y.beginPath(),y.moveTo(O,$),y.arc(O,$,V,Dt,zt),y.closePath(),this.colorFillStyle(y,gt[0],gt[1],gt[2],Lt),y.fill(),U+=Et)}};var xg={},lpt=100;xg.getPixelRatio=function(){var y=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var g=y.backingStorePixelRatio||y.webkitBackingStorePixelRatio||y.mozBackingStorePixelRatio||y.msBackingStorePixelRatio||y.oBackingStorePixelRatio||y.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/g},xg.paintCache=function(y){for(var g=this.paintCaches=this.paintCaches||[],x=!0,T,L=0;LO.minMbLowQualFrames&&(O.motionBlurPxRatio=O.mbPxRBlurry)),O.clearingMotionBlur&&(O.motionBlurPxRatio=1),O.textureDrawLastFrame&&!U&&(V[O.NODE]=!0,V[O.SELECT_BOX]=!0);var Dt=z.style(),It=z.zoom(),zt=L!==void 0?L:It,te=z.pan(),Xt={x:te.x,y:te.y},Ht={zoom:It,pan:{x:te.x,y:te.y}},ie=O.prevViewport,Ut=ie===void 0||Ht.zoom!==ie.zoom||Ht.pan.x!==ie.pan.x||Ht.pan.y!==ie.pan.y;!Ut&&!(gt&&!lt)&&(O.motionBlurPxRatio=1),I&&(Xt=I),zt*=$,Xt.x*=$,Xt.y*=$;var fe=O.getCachedZSortedEles();function ge(Di,wi,_s,Zi,Ni){var ns=Di.globalCompositeOperation;Di.globalCompositeOperation="destination-out",O.colorFillStyle(Di,255,255,255,O.motionBlurTransparency),Di.fillRect(wi,_s,Zi,Ni),Di.globalCompositeOperation=ns}function se(Di,wi){var _s,Zi,Ni,ns;!O.clearingMotionBlur&&(Di===S.bufferContexts[O.MOTIONBLUR_BUFFER_NODE]||Di===S.bufferContexts[O.MOTIONBLUR_BUFFER_DRAG])?(_s={x:te.x*at,y:te.y*at},Zi=It*at,Ni=O.canvasWidth*at,ns=O.canvasHeight*at):(_s=Xt,Zi=zt,Ni=O.canvasWidth,ns=O.canvasHeight),Di.setTransform(1,0,0,1,0,0),wi==="motionBlur"?ge(Di,0,0,Ni,ns):!g&&(wi===void 0||wi)&&Di.clearRect(0,0,Ni,ns),x||(Di.translate(_s.x,_s.y),Di.scale(Zi,Zi)),I&&Di.translate(I.x,I.y),L&&Di.scale(L,L)}if(U||(O.textureDrawLastFrame=!1),U){if(O.textureDrawLastFrame=!0,!O.textureCache){O.textureCache={},O.textureCache.bb=z.mutableElements().boundingBox(),O.textureCache.texture=O.data.bufferCanvases[O.TEXTURE_BUFFER];var Ne=O.data.bufferContexts[O.TEXTURE_BUFFER];Ne.setTransform(1,0,0,1,0,0),Ne.clearRect(0,0,O.canvasWidth*O.textureMult,O.canvasHeight*O.textureMult),O.render({forcedContext:Ne,drawOnlyNodeLayer:!0,forcedPxRatio:$*O.textureMult});var Ht=O.textureCache.viewport={zoom:z.zoom(),pan:z.pan(),width:O.canvasWidth,height:O.canvasHeight};Ht.mpan={x:(0-Ht.pan.x)/Ht.zoom,y:(0-Ht.pan.y)/Ht.zoom}}V[O.DRAG]=!1,V[O.NODE]=!1;var pe=S.contexts[O.NODE],gn=O.textureCache.texture,Ht=O.textureCache.viewport;pe.setTransform(1,0,0,1,0,0),et?ge(pe,0,0,Ht.width,Ht.height):pe.clearRect(0,0,Ht.width,Ht.height);var je=Dt.core("outside-texture-bg-color").value,Ge=Dt.core("outside-texture-bg-opacity").value;O.colorFillStyle(pe,je[0],je[1],je[2],Ge),pe.fillRect(0,0,Ht.width,Ht.height);var It=z.zoom();se(pe,!1),pe.clearRect(Ht.mpan.x,Ht.mpan.y,Ht.width/Ht.zoom/$,Ht.height/Ht.zoom/$),pe.drawImage(gn,Ht.mpan.x,Ht.mpan.y,Ht.width/Ht.zoom/$,Ht.height/Ht.zoom/$)}else O.textureOnViewport&&!g&&(O.textureCache=null);var xn=z.extent(),Dn=O.pinching||O.hoverData.dragging||O.swipePanning||O.data.wheelZooming||O.hoverData.draggingEles||O.cy.animated(),Xn=O.hideEdgesOnViewport&&Dn,Cn=[];if(Cn[O.NODE]=!V[O.NODE]&&et&&!O.clearedForMotionBlur[O.NODE]||O.clearingMotionBlur,Cn[O.NODE]&&(O.clearedForMotionBlur[O.NODE]=!0),Cn[O.DRAG]=!V[O.DRAG]&&et&&!O.clearedForMotionBlur[O.DRAG]||O.clearingMotionBlur,Cn[O.DRAG]&&(O.clearedForMotionBlur[O.DRAG]=!0),V[O.NODE]||x||T||Cn[O.NODE]){var Yn=et&&!Cn[O.NODE]&&at!==1,pe=g||(Yn?O.data.bufferContexts[O.MOTIONBLUR_BUFFER_NODE]:S.contexts[O.NODE]),rr=et&&!Yn?"motionBlur":void 0;se(pe,rr),Xn?O.drawCachedNodes(pe,fe.nondrag,$,xn):O.drawLayeredElements(pe,fe.nondrag,$,xn),O.debug&&O.drawDebugPoints(pe,fe.nondrag),!x&&!et&&(V[O.NODE]=!1)}if(!T&&(V[O.DRAG]||x||Cn[O.DRAG])){var Yn=et&&!Cn[O.DRAG]&&at!==1,pe=g||(Yn?O.data.bufferContexts[O.MOTIONBLUR_BUFFER_DRAG]:S.contexts[O.DRAG]);se(pe,et&&!Yn?"motionBlur":void 0),Xn?O.drawCachedNodes(pe,fe.drag,$,xn):O.drawCachedElements(pe,fe.drag,$,xn),O.debug&&O.drawDebugPoints(pe,fe.drag),!x&&!et&&(V[O.DRAG]=!1)}if(O.showFps||!T&&V[O.SELECT_BOX]&&!x){var pe=g||S.contexts[O.SELECT_BOX];if(se(pe),O.selection[4]==1&&(O.hoverData.selecting||O.touchData.selecting)){var It=O.cy.zoom(),wr=Dt.core("selection-box-border-width").value/It;pe.lineWidth=wr,pe.fillStyle="rgba("+Dt.core("selection-box-color").value[0]+","+Dt.core("selection-box-color").value[1]+","+Dt.core("selection-box-color").value[2]+","+Dt.core("selection-box-opacity").value+")",pe.fillRect(O.selection[0],O.selection[1],O.selection[2]-O.selection[0],O.selection[3]-O.selection[1]),wr>0&&(pe.strokeStyle="rgba("+Dt.core("selection-box-border-color").value[0]+","+Dt.core("selection-box-border-color").value[1]+","+Dt.core("selection-box-border-color").value[2]+","+Dt.core("selection-box-opacity").value+")",pe.strokeRect(O.selection[0],O.selection[1],O.selection[2]-O.selection[0],O.selection[3]-O.selection[1]))}if(S.bgActivePosistion&&!O.hoverData.selecting){var It=O.cy.zoom(),ur=S.bgActivePosistion;pe.fillStyle="rgba("+Dt.core("active-bg-color").value[0]+","+Dt.core("active-bg-color").value[1]+","+Dt.core("active-bg-color").value[2]+","+Dt.core("active-bg-opacity").value+")",pe.beginPath(),pe.arc(ur.x,ur.y,Dt.core("active-bg-size").pfValue/It,0,2*Math.PI),pe.fill()}var er=O.lastRedrawTime;if(O.showFps&&er){er=Math.round(er);var bn=Math.round(1e3/er);pe.setTransform(1,0,0,1,0,0),pe.fillStyle="rgba(255, 0, 0, 0.75)",pe.strokeStyle="rgba(255, 0, 0, 0.75)",pe.lineWidth=1,pe.fillText("1 frame = "+er+" ms = "+bn+" fps",0,20);var pr=60;pe.strokeRect(0,30,250,20),pe.fillRect(0,30,250*Math.min(bn/pr,1),20)}x||(V[O.SELECT_BOX]=!1)}if(et&&at!==1){var fr=S.contexts[O.NODE],ri=O.data.bufferCanvases[O.MOTIONBLUR_BUFFER_NODE],_i=S.contexts[O.DRAG],ia=O.data.bufferCanvases[O.MOTIONBLUR_BUFFER_DRAG],La=function(wi,_s,Zi){wi.setTransform(1,0,0,1,0,0),Zi||!Et?wi.clearRect(0,0,O.canvasWidth,O.canvasHeight):ge(wi,0,0,O.canvasWidth,O.canvasHeight);var Ni=at;wi.drawImage(_s,0,0,O.canvasWidth*Ni,O.canvasHeight*Ni,0,0,O.canvasWidth,O.canvasHeight)};(V[O.NODE]||Cn[O.NODE])&&(La(fr,ri,Cn[O.NODE]),V[O.NODE]=!1),(V[O.DRAG]||Cn[O.DRAG])&&(La(_i,ia,Cn[O.DRAG]),V[O.DRAG]=!1)}O.prevViewport=Ht,O.clearingMotionBlur&&(O.clearingMotionBlur=!1,O.motionBlurCleared=!0,O.motionBlur=!0),et&&(O.motionBlurTimeout=setTimeout(function(){O.motionBlurTimeout=null,O.clearedForMotionBlur[O.NODE]=!1,O.clearedForMotionBlur[O.DRAG]=!1,O.motionBlur=!1,O.clearingMotionBlur=!U,O.mbFrames=0,V[O.NODE]=!0,V[O.DRAG]=!0,O.redraw()},lpt)),g||z.emit("render")};var I3={};I3.drawPolygonPath=function(y,g,x,T,L,I){var O=T/2,$=L/2;y.beginPath&&y.beginPath(),y.moveTo(g+O*I[0],x+$*I[1]);for(var z=1;z0&&O>0){at.clearRect(0,0,I,O),at.globalCompositeOperation="source-over";var lt=this.getCachedZSortedEles();if(y.full)at.translate(-T.x1*S,-T.y1*S),at.scale(S,S),this.drawElements(at,lt),at.scale(1/S,1/S),at.translate(T.x1*S,T.y1*S);else{var gt=g.pan(),Lt={x:gt.x*S,y:gt.y*S};S*=g.zoom(),at.translate(Lt.x,Lt.y),at.scale(S,S),this.drawElements(at,lt),at.scale(1/S,1/S),at.translate(-Lt.x,-Lt.y)}y.bg&&(at.globalCompositeOperation="destination-over",at.fillStyle=y.bg,at.rect(0,0,I,O),at.fill())}return et};function hpt(y,g){for(var x=atob(y),T=new ArrayBuffer(x.length),L=new Uint8Array(T),I=0;I"u"?"undefined":f(OffscreenCanvas))!=="undefined"?x=new OffscreenCanvas(y,g):(x=document.createElement("canvas"),x.width=y,x.height=g),x},[C0,gv,pv,kT,l6,qk,xg,I3,ET,Dtt].forEach(function(y){fn(Ec,y)});var h6=[{name:"null",impl:FB},{name:"base",impl:QL},{name:"canvas",impl:fpt}],kg=[{type:"layout",extensions:ett},{type:"renderer",extensions:h6}],Tm={},rM={};function m1(y,g,x){var T=x,L=function(ie){no("Can not register `"+g+"` for `"+y+"` since `"+ie+"` already exists in the prototype and can not be overridden")};if(y==="core"){if(Nk.prototype[g])return L(g);Nk.prototype[g]=x}else if(y==="collection"){if(Hf.prototype[g])return L(g);Hf.prototype[g]=x}else if(y==="layout"){for(var I=function(ie){this.options=ie,x.call(this,ie),ct(this._private)||(this._private={}),this._private.cy=ie.cy,this._private.listeners=[],this.createEmitter()},O=I.prototype=Object.create(x.prototype),$=[],z=0;z<$.length;z++){var S=$[z];O[S]=O[S]||function(){return this}}O.start&&!O.run?O.run=function(){return this.start(),this}:!O.start&&O.run&&(O.start=function(){return this.run(),this});var V=x.prototype.stop;O.stop=function(){var Ht=this.options;if(Ht&&Ht.animate){var ie=this.animations;if(ie)for(var Ut=0;UtH&&(this.rect.x-=(this.labelWidth-H)/2,this.setWidth(this.labelWidth)),this.labelHeight>Y&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-Y)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-Y),this.setHeight(this.labelHeight))}}},F.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==b.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},F.prototype.transform=function(R){var H=this.rect.x;H>C.WORLD_BOUNDARY?H=C.WORLD_BOUNDARY:H<-C.WORLD_BOUNDARY&&(H=-C.WORLD_BOUNDARY);var Y=this.rect.y;Y>C.WORLD_BOUNDARY?Y=C.WORLD_BOUNDARY:Y<-C.WORLD_BOUNDARY&&(Y=-C.WORLD_BOUNDARY);var rt=new P(H,Y),J=R.inverseTransformPoint(rt);this.setLocation(J.x,J.y)},F.prototype.getLeft=function(){return this.rect.x},F.prototype.getRight=function(){return this.rect.x+this.rect.width},F.prototype.getTop=function(){return this.rect.y},F.prototype.getBottom=function(){return this.rect.y+this.rect.height},F.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},f.exports=F},function(f,p,v){function m(b,E){b==null&&E==null?(this.x=0,this.y=0):(this.x=b,this.y=E)}m.prototype.getX=function(){return this.x},m.prototype.getY=function(){return this.y},m.prototype.setX=function(b){this.x=b},m.prototype.setY=function(b){this.y=b},m.prototype.getDifference=function(b){return new DimensionD(this.x-b.x,this.y-b.y)},m.prototype.getCopy=function(){return new m(this.x,this.y)},m.prototype.translate=function(b){return this.x+=b.width,this.y+=b.height,this},f.exports=m},function(f,p,v){var m=v(2),b=v(10),E=v(0),C=v(6),A=v(3),P=v(1),F=v(13),j=v(12),R=v(11);function H(rt,J,it){m.call(this,it),this.estimatedSize=b.MIN_VALUE,this.margin=E.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=rt,J!=null&&J instanceof C?this.graphManager=J:J!=null&&J instanceof Layout&&(this.graphManager=J.graphManager)}H.prototype=Object.create(m.prototype);for(var Y in m)H[Y]=m[Y];H.prototype.getNodes=function(){return this.nodes},H.prototype.getEdges=function(){return this.edges},H.prototype.getGraphManager=function(){return this.graphManager},H.prototype.getParent=function(){return this.parent},H.prototype.getLeft=function(){return this.left},H.prototype.getRight=function(){return this.right},H.prototype.getTop=function(){return this.top},H.prototype.getBottom=function(){return this.bottom},H.prototype.isConnected=function(){return this.isConnected},H.prototype.add=function(rt,J,it){if(J==null&&it==null){var ft=rt;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(ft)>-1)throw"Node already in graph!";return ft.owner=this,this.getNodes().push(ft),ft}else{var Tt=rt;if(!(this.getNodes().indexOf(J)>-1&&this.getNodes().indexOf(it)>-1))throw"Source or target not in graph!";if(!(J.owner==it.owner&&J.owner==this))throw"Both owners must be this graph!";return J.owner!=it.owner?null:(Tt.source=J,Tt.target=it,Tt.isInterGraph=!1,this.getEdges().push(Tt),J.edges.push(Tt),it!=J&&it.edges.push(Tt),Tt)}},H.prototype.remove=function(rt){var J=rt;if(rt instanceof A){if(J==null)throw"Node is null!";if(!(J.owner!=null&&J.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var it=J.edges.slice(),ft,Tt=it.length,kt=0;kt-1&&yt>-1))throw"Source and/or target doesn't know this edge!";ft.source.edges.splice(ct,1),ft.target!=ft.source&&ft.target.edges.splice(yt,1);var mt=ft.source.owner.getEdges().indexOf(ft);if(mt==-1)throw"Not in owner's edge list!";ft.source.owner.getEdges().splice(mt,1)}},H.prototype.updateLeftTop=function(){for(var rt=b.MAX_VALUE,J=b.MAX_VALUE,it,ft,Tt,kt=this.getNodes(),mt=kt.length,ct=0;ctit&&(rt=it),J>ft&&(J=ft)}return rt==b.MAX_VALUE?null:(kt[0].getParent().paddingLeft!=null?Tt=kt[0].getParent().paddingLeft:Tt=this.margin,this.left=J-Tt,this.top=rt-Tt,new j(this.left,this.top))},H.prototype.updateBounds=function(rt){for(var J=b.MAX_VALUE,it=-b.MAX_VALUE,ft=b.MAX_VALUE,Tt=-b.MAX_VALUE,kt,mt,ct,yt,st,xt=this.nodes,ht=xt.length,dt=0;dtkt&&(J=kt),itct&&(ft=ct),Ttkt&&(J=kt),itct&&(ft=ct),Tt=this.nodes.length){var ht=0;it.forEach(function(dt){dt.owner==rt&&ht++}),ht==this.nodes.length&&(this.isConnected=!0)}},f.exports=H},function(f,p,v){var m,b=v(1);function E(C){m=v(5),this.layout=C,this.graphs=[],this.edges=[]}E.prototype.addRoot=function(){var C=this.layout.newGraph(),A=this.layout.newNode(null),P=this.add(C,A);return this.setRootGraph(P),this.rootGraph},E.prototype.add=function(C,A,P,F,j){if(P==null&&F==null&&j==null){if(C==null)throw"Graph is null!";if(A==null)throw"Parent node is null!";if(this.graphs.indexOf(C)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(C),C.parent!=null)throw"Already has a parent!";if(A.child!=null)throw"Already has a child!";return C.parent=A,A.child=C,C}else{j=P,F=A,P=C;var R=F.getOwner(),H=j.getOwner();if(!(R!=null&&R.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(H!=null&&H.getGraphManager()==this))throw"Target not in this graph mgr!";if(R==H)return P.isInterGraph=!1,R.add(P,F,j);if(P.isInterGraph=!0,P.source=F,P.target=j,this.edges.indexOf(P)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(P),!(P.source!=null&&P.target!=null))throw"Edge source and/or target is null!";if(!(P.source.edges.indexOf(P)==-1&&P.target.edges.indexOf(P)==-1))throw"Edge already in source and/or target incidency list!";return P.source.edges.push(P),P.target.edges.push(P),P}},E.prototype.remove=function(C){if(C instanceof m){var A=C;if(A.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(A==this.rootGraph||A.parent!=null&&A.parent.graphManager==this))throw"Invalid parent node!";var P=[];P=P.concat(A.getEdges());for(var F,j=P.length,R=0;R=C.getRight()?A[0]+=Math.min(C.getX()-E.getX(),E.getRight()-C.getRight()):C.getX()<=E.getX()&&C.getRight()>=E.getRight()&&(A[0]+=Math.min(E.getX()-C.getX(),C.getRight()-E.getRight())),E.getY()<=C.getY()&&E.getBottom()>=C.getBottom()?A[1]+=Math.min(C.getY()-E.getY(),E.getBottom()-C.getBottom()):C.getY()<=E.getY()&&C.getBottom()>=E.getBottom()&&(A[1]+=Math.min(E.getY()-C.getY(),C.getBottom()-E.getBottom()));var j=Math.abs((C.getCenterY()-E.getCenterY())/(C.getCenterX()-E.getCenterX()));C.getCenterY()===E.getCenterY()&&C.getCenterX()===E.getCenterX()&&(j=1);var R=j*A[0],H=A[1]/j;A[0]R)return A[0]=P,A[1]=Y,A[2]=j,A[3]=xt,!1;if(Fj)return A[0]=H,A[1]=F,A[2]=yt,A[3]=R,!1;if(Pj?(A[0]=J,A[1]=it,tt=!0):(A[0]=rt,A[1]=Y,tt=!0):pt===X&&(P>j?(A[0]=H,A[1]=Y,tt=!0):(A[0]=ft,A[1]=it,tt=!0)),-Ft===X?j>P?(A[2]=st,A[3]=xt,Pt=!0):(A[2]=yt,A[3]=ct,Pt=!0):Ft===X&&(j>P?(A[2]=mt,A[3]=ct,Pt=!0):(A[2]=ht,A[3]=xt,Pt=!0)),tt&&Pt)return!1;if(P>j?F>R?(Rt=this.getCardinalDirection(pt,X,4),Bt=this.getCardinalDirection(Ft,X,2)):(Rt=this.getCardinalDirection(-pt,X,3),Bt=this.getCardinalDirection(-Ft,X,1)):F>R?(Rt=this.getCardinalDirection(-pt,X,1),Bt=this.getCardinalDirection(-Ft,X,3)):(Rt=this.getCardinalDirection(pt,X,2),Bt=this.getCardinalDirection(Ft,X,4)),!tt)switch(Rt){case 1:Ot=Y,vt=P+-kt/X,A[0]=vt,A[1]=Ot;break;case 2:vt=ft,Ot=F+Tt*X,A[0]=vt,A[1]=Ot;break;case 3:Ot=it,vt=P+kt/X,A[0]=vt,A[1]=Ot;break;case 4:vt=J,Ot=F+-Tt*X,A[0]=vt,A[1]=Ot;break}if(!Pt)switch(Bt){case 1:qe=ct,Vt=j+-Ct/X,A[2]=Vt,A[3]=qe;break;case 2:Vt=ht,qe=R+dt*X,A[2]=Vt,A[3]=qe;break;case 3:qe=xt,Vt=j+Ct/X,A[2]=Vt,A[3]=qe;break;case 4:Vt=st,qe=R+-dt*X,A[2]=Vt,A[3]=qe;break}}return!1},b.getCardinalDirection=function(E,C,A){return E>C?A:1+A%4},b.getIntersection=function(E,C,A,P){if(P==null)return this.getIntersection2(E,C,A);var F=E.x,j=E.y,R=C.x,H=C.y,Y=A.x,rt=A.y,J=P.x,it=P.y,ft=void 0,Tt=void 0,kt=void 0,mt=void 0,ct=void 0,yt=void 0,st=void 0,xt=void 0,ht=void 0;return kt=H-j,ct=F-R,st=R*j-F*H,mt=it-rt,yt=Y-J,xt=J*rt-Y*it,ht=kt*yt-mt*ct,ht===0?null:(ft=(ct*xt-yt*st)/ht,Tt=(mt*st-kt*xt)/ht,new m(ft,Tt))},b.angleOfVector=function(E,C,A,P){var F=void 0;return E!==A?(F=Math.atan((P-C)/(A-E)),A0?1:b<0?-1:0},m.floor=function(b){return b<0?Math.ceil(b):Math.floor(b)},m.ceil=function(b){return b<0?Math.floor(b):Math.ceil(b)},f.exports=m},function(f,p,v){function m(){}m.MAX_VALUE=2147483647,m.MIN_VALUE=-2147483648,f.exports=m},function(f,p,v){var m=function(){function F(j,R){for(var H=0;H"u"?"undefined":m(E);return E==null||C!="object"&&C!="function"},f.exports=b},function(f,p,v){function m(Y){if(Array.isArray(Y)){for(var rt=0,J=Array(Y.length);rt0&&rt;){for(kt.push(ct[0]);kt.length>0&&rt;){var yt=kt[0];kt.splice(0,1),Tt.add(yt);for(var st=yt.getEdges(),ft=0;ft-1&&ct.splice(Ct,1)}Tt=new Set,mt=new Map}}return Y},H.prototype.createDummyNodesForBendpoints=function(Y){for(var rt=[],J=Y.source,it=this.graphManager.calcLowestCommonAncestor(Y.source,Y.target),ft=0;ft0){for(var it=this.edgeToDummyNodes.get(J),ft=0;ft=0&&rt.splice(xt,1);var ht=mt.getNeighborsList();ht.forEach(function(tt){if(J.indexOf(tt)<0){var Pt=it.get(tt),pt=Pt-1;pt==1&&yt.push(tt),it.set(tt,pt)}})}J=J.concat(yt),(rt.length==1||rt.length==2)&&(ft=!0,Tt=rt[0])}return Tt},H.prototype.setGraphManager=function(Y){this.graphManager=Y},f.exports=H},function(f,p,v){function m(){}m.seed=1,m.x=0,m.nextDouble=function(){return m.x=Math.sin(m.seed++)*1e4,m.x-Math.floor(m.x)},f.exports=m},function(f,p,v){var m=v(4);function b(E,C){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}b.prototype.getWorldOrgX=function(){return this.lworldOrgX},b.prototype.setWorldOrgX=function(E){this.lworldOrgX=E},b.prototype.getWorldOrgY=function(){return this.lworldOrgY},b.prototype.setWorldOrgY=function(E){this.lworldOrgY=E},b.prototype.getWorldExtX=function(){return this.lworldExtX},b.prototype.setWorldExtX=function(E){this.lworldExtX=E},b.prototype.getWorldExtY=function(){return this.lworldExtY},b.prototype.setWorldExtY=function(E){this.lworldExtY=E},b.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},b.prototype.setDeviceOrgX=function(E){this.ldeviceOrgX=E},b.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},b.prototype.setDeviceOrgY=function(E){this.ldeviceOrgY=E},b.prototype.getDeviceExtX=function(){return this.ldeviceExtX},b.prototype.setDeviceExtX=function(E){this.ldeviceExtX=E},b.prototype.getDeviceExtY=function(){return this.ldeviceExtY},b.prototype.setDeviceExtY=function(E){this.ldeviceExtY=E},b.prototype.transformX=function(E){var C=0,A=this.lworldExtX;return A!=0&&(C=this.ldeviceOrgX+(E-this.lworldOrgX)*this.ldeviceExtX/A),C},b.prototype.transformY=function(E){var C=0,A=this.lworldExtY;return A!=0&&(C=this.ldeviceOrgY+(E-this.lworldOrgY)*this.ldeviceExtY/A),C},b.prototype.inverseTransformX=function(E){var C=0,A=this.ldeviceExtX;return A!=0&&(C=this.lworldOrgX+(E-this.ldeviceOrgX)*this.lworldExtX/A),C},b.prototype.inverseTransformY=function(E){var C=0,A=this.ldeviceExtY;return A!=0&&(C=this.lworldOrgY+(E-this.ldeviceOrgY)*this.lworldExtY/A),C},b.prototype.inverseTransformPoint=function(E){var C=new m(this.inverseTransformX(E.x),this.inverseTransformY(E.y));return C},f.exports=b},function(f,p,v){function m(R){if(Array.isArray(R)){for(var H=0,Y=Array(R.length);HE.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*E.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(R-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-E.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT_INCREMENTAL):(R>E.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(E.COOLING_ADAPTATION_FACTOR,1-(R-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*(1-E.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},F.prototype.calcSpringForces=function(){for(var R=this.getAllEdges(),H,Y=0;Y0&&arguments[0]!==void 0?arguments[0]:!0,H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Y,rt,J,it,ft=this.getAllNodes(),Tt;if(this.useFRGridVariant)for(this.totalIterations%E.GRID_CALCULATION_CHECK_PERIOD==1&&R&&this.updateGrid(),Tt=new Set,Y=0;Ykt||Tt>kt)&&(R.gravitationForceX=-this.gravityConstant*J,R.gravitationForceY=-this.gravityConstant*it)):(kt=H.getEstimatedSize()*this.compoundGravityRangeFactor,(ft>kt||Tt>kt)&&(R.gravitationForceX=-this.gravityConstant*J*this.compoundGravityConstant,R.gravitationForceY=-this.gravityConstant*it*this.compoundGravityConstant))},F.prototype.isConverged=function(){var R,H=!1;return this.totalIterations>this.maxIterations/3&&(H=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),R=this.totalDisplacement=ft.length||kt>=ft[0].length)){for(var mt=0;mtF}}]),A}();f.exports=C},function(f,p,v){var m=function(){function C(A,P){for(var F=0;F2&&arguments[2]!==void 0?arguments[2]:1,j=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,R=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;b(this,C),this.sequence1=A,this.sequence2=P,this.match_score=F,this.mismatch_penalty=j,this.gap_penalty=R,this.iMax=A.length+1,this.jMax=P.length+1,this.grid=new Array(this.iMax);for(var H=0;H=0;A--){var P=this.listeners[A];P.event===E&&P.callback===C&&this.listeners.splice(A,1)}},b.emit=function(E,C){for(var A=0;AP.coolingFactor*P.maxNodeDisplacement&&(this.displacementX=P.coolingFactor*P.maxNodeDisplacement*E.sign(this.displacementX)),Math.abs(this.displacementY)>P.coolingFactor*P.maxNodeDisplacement&&(this.displacementY=P.coolingFactor*P.maxNodeDisplacement*E.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),P.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},C.prototype.propogateDisplacementToChildren=function(P,F){for(var j=this.getChild().getNodes(),R,H=0;H0)this.positionNodesRadially(ct);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var yt=new Set(this.getAllNodes()),st=this.nodesWithGravity.filter(function(xt){return yt.has(xt)});this.graphManager.setAllNodesToApplyGravitation(st),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},kt.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%j.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var ct=new Set(this.getAllNodes()),yt=this.nodesWithGravity.filter(function(ht){return ct.has(ht)});this.graphManager.setAllNodesToApplyGravitation(yt),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=j.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=j.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var st=!this.isTreeGrowing&&!this.isGrowthFinished,xt=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(st,xt),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},kt.prototype.getPositionsData=function(){for(var ct=this.graphManager.getAllNodes(),yt={},st=0;st1){var tt;for(tt=0;ttxt&&(xt=Math.floor(Ct.y)),dt=Math.floor(Ct.x+F.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Y(R.WORLD_CENTER_X-Ct.x/2,R.WORLD_CENTER_Y-Ct.y/2))},kt.radialLayout=function(ct,yt,st){var xt=Math.max(this.maxDiagonalInTree(ct),F.DEFAULT_RADIAL_SEPARATION);kt.branchRadialLayout(yt,null,0,359,0,xt);var ht=ft.calculateBounds(ct),dt=new Tt;dt.setDeviceOrgX(ht.getMinX()),dt.setDeviceOrgY(ht.getMinY()),dt.setWorldOrgX(st.x),dt.setWorldOrgY(st.y);for(var Ct=0;Ct1;){var qe=Vt[0];Vt.splice(0,1);var _n=X.indexOf(qe);_n>=0&&X.splice(_n,1),vt--,Rt--}yt!=null?Ot=(X.indexOf(Vt[0])+1)%vt:Ot=0;for(var Te=Math.abs(xt-st)/Rt,Wn=Ot;Bt!=Rt;Wn=++Wn%vt){var Ae=X[Wn].getOtherEnd(ct);if(Ae!=yt){var ne=(st+Bt*Te)%360,ke=(ne+Te)%360;kt.branchRadialLayout(Ae,ct,ne,ke,ht+dt,dt),Bt++}}},kt.maxDiagonalInTree=function(ct){for(var yt=J.MIN_VALUE,st=0;styt&&(yt=ht)}return yt},kt.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},kt.prototype.groupZeroDegreeMembers=function(){var ct=this,yt={};this.memberGroups={},this.idToDummyNode={};for(var st=[],xt=this.graphManager.getAllNodes(),ht=0;ht"u"&&(yt[tt]=[]),yt[tt]=yt[tt].concat(dt)}Object.keys(yt).forEach(function(Pt){if(yt[Pt].length>1){var pt="DummyCompound_"+Pt;ct.memberGroups[pt]=yt[Pt];var Ft=yt[Pt][0].getParent(),X=new A(ct.graphManager);X.id=pt,X.paddingLeft=Ft.paddingLeft||0,X.paddingRight=Ft.paddingRight||0,X.paddingBottom=Ft.paddingBottom||0,X.paddingTop=Ft.paddingTop||0,ct.idToDummyNode[pt]=X;var Rt=ct.getGraphManager().add(ct.newGraph(),X),Bt=Ft.getChild();Bt.add(X);for(var vt=0;vt=0;ct--){var yt=this.compoundOrder[ct],st=yt.id,xt=yt.paddingLeft,ht=yt.paddingTop;this.adjustLocations(this.tiledMemberPack[st],yt.rect.x,yt.rect.y,xt,ht)}},kt.prototype.repopulateZeroDegreeMembers=function(){var ct=this,yt=this.tiledZeroDegreePack;Object.keys(yt).forEach(function(st){var xt=ct.idToDummyNode[st],ht=xt.paddingLeft,dt=xt.paddingTop;ct.adjustLocations(yt[st],xt.rect.x,xt.rect.y,ht,dt)})},kt.prototype.getToBeTiled=function(ct){var yt=ct.id;if(this.toBeTiled[yt]!=null)return this.toBeTiled[yt];var st=ct.getChild();if(st==null)return this.toBeTiled[yt]=!1,!1;for(var xt=st.getNodes(),ht=0;ht0)return this.toBeTiled[yt]=!1,!1;if(dt.getChild()==null){this.toBeTiled[dt.id]=!1;continue}if(!this.getToBeTiled(dt))return this.toBeTiled[yt]=!1,!1}return this.toBeTiled[yt]=!0,!0},kt.prototype.getNodeDegree=function(ct){ct.id;for(var yt=ct.getEdges(),st=0,xt=0;xtPt&&(Pt=Ft.rect.height)}st+=Pt+ct.verticalPadding}},kt.prototype.tileCompoundMembers=function(ct,yt){var st=this;this.tiledMemberPack=[],Object.keys(ct).forEach(function(xt){var ht=yt[xt];st.tiledMemberPack[xt]=st.tileNodes(ct[xt],ht.paddingLeft+ht.paddingRight),ht.rect.width=st.tiledMemberPack[xt].width,ht.rect.height=st.tiledMemberPack[xt].height})},kt.prototype.tileNodes=function(ct,yt){var st=F.TILING_PADDING_VERTICAL,xt=F.TILING_PADDING_HORIZONTAL,ht={rows:[],rowWidth:[],rowHeight:[],width:0,height:yt,verticalPadding:st,horizontalPadding:xt};ct.sort(function(tt,Pt){return tt.rect.width*tt.rect.height>Pt.rect.width*Pt.rect.height?-1:tt.rect.width*tt.rect.height0&&(Ct+=ct.horizontalPadding),ct.rowWidth[st]=Ct,ct.width0&&(tt+=ct.verticalPadding);var Pt=0;tt>ct.rowHeight[st]&&(Pt=ct.rowHeight[st],ct.rowHeight[st]=tt,Pt=ct.rowHeight[st]-Pt),ct.height+=Pt,ct.rows[st].push(yt)},kt.prototype.getShortestRowIndex=function(ct){for(var yt=-1,st=Number.MAX_VALUE,xt=0;xtst&&(yt=xt,st=ct.rowWidth[xt]);return yt},kt.prototype.canAddHorizontal=function(ct,yt,st){var xt=this.getShortestRowIndex(ct);if(xt<0)return!0;var ht=ct.rowWidth[xt];if(ht+ct.horizontalPadding+yt<=ct.width)return!0;var dt=0;ct.rowHeight[xt]0&&(dt=st+ct.verticalPadding-ct.rowHeight[xt]);var Ct;ct.width-ht>=yt+ct.horizontalPadding?Ct=(ct.height+dt)/(ht+yt+ct.horizontalPadding):Ct=(ct.height+dt)/ct.width,dt=st+ct.verticalPadding;var tt;return ct.widthdt&&yt!=st){xt.splice(-1,1),ct.rows[st].push(ht),ct.rowWidth[yt]=ct.rowWidth[yt]-dt,ct.rowWidth[st]=ct.rowWidth[st]+dt,ct.width=ct.rowWidth[instance.getLongestRowIndex(ct)];for(var Ct=Number.MIN_VALUE,tt=0;ttCt&&(Ct=xt[tt].height);yt>0&&(Ct+=ct.verticalPadding);var Pt=ct.rowHeight[yt]+ct.rowHeight[st];ct.rowHeight[yt]=Ct,ct.rowHeight[st]0)for(var Bt=ht;Bt<=dt;Bt++)Rt[0]+=this.grid[Bt][Ct-1].length+this.grid[Bt][Ct].length-1;if(dt0)for(var Bt=Ct;Bt<=tt;Bt++)Rt[3]+=this.grid[ht-1][Bt].length+this.grid[ht][Bt].length-1;for(var vt=J.MAX_VALUE,Ot,Vt,qe=0;qe0){var tt;tt=Tt.getGraphManager().add(Tt.newGraph(),st),this.processChildrenList(tt,yt,Tt)}}},Y.prototype.stop=function(){return this.stopped=!0,this};var J=function(ft){ft("layout","cose-bilkent",Y)};typeof cytoscape<"u"&&J(cytoscape),p.exports=J}])})})(Kjt);var lWe=Kjt.exports;const hWe=PE(lWe);Wjt.use(hWe);function Qjt(i,a,f,p){Gjt.drawNode(i,a,f,p),a.children&&a.children.forEach((v,m)=>{Qjt(i,v,f<0?m:f,p)})}function fWe(i,a){a.edges().map((f,p)=>{const v=f.data();if(f[0]._private.bodyBounds){const m=f[0]._private.rscratch;Wt.trace("Edge: ",p,v),i.insert("path").attr("d",`M ${m.startX},${m.startY} L ${m.midX},${m.midY} L${m.endX},${m.endY} `).attr("class","edge section-edge-"+v.section+" edge-depth-"+v.depth)}})}function Zjt(i,a,f,p){a.add({group:"nodes",data:{id:i.id,labelText:i.descr,height:i.height,width:i.width,level:p,nodeId:i.id,padding:i.padding,type:i.type},position:{x:i.x,y:i.y}}),i.children&&i.children.forEach(v=>{Zjt(v,a,f,p+1),a.add({group:"edges",data:{id:`${i.id}_${v.id}`,source:i.id,target:v.id,depth:p,section:v.section}})})}function dWe(i,a){return new Promise(f=>{const p=xr("body").append("div").attr("id","cy").attr("style","display:none"),v=Wjt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});p.remove(),Zjt(i,v,a,0),v.nodes().forEach(function(m){m.layoutDimensions=()=>{const b=m.data();return{w:b.width,h:b.height}}}),v.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),v.ready(m=>{Wt.info("Ready",m),f(v)})})}function gWe(i){i.nodes().map((a,f)=>{const p=a.data();p.x=a.position().x,p.y=a.position().y,Gjt.positionNode(p);const v=zgt(p.nodeId);Wt.info("Id:",f,"Position: (",a.position().x,", ",a.position().y,")",p),v.attr("transform",`translate(${a.position().x-p.width/2}, ${a.position().y-p.height/2})`),v.attr("attr",`apa-${f})`)})}const pWe={draw:async(i,a,f,p)=>{const v=De();v.htmlLabels=!1,Wt.debug(`Rendering mindmap diagram +`+i,p.parser);const m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const C=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body").select("#"+a);C.append("g");const A=p.db.getMindmap(),P=C.append("g");P.attr("class","mindmap-edges");const F=C.append("g");F.attr("class","mindmap-nodes"),Qjt(F,A,-1,v);const j=await dWe(A,v);fWe(P,j),gWe(j),s9(void 0,C,v.mindmap.padding,v.mindmap.useMaxWidth)}},bWe=i=>{let a="";for(let f=0;f` + .edge { + stroke-width: 3; + } + ${bWe(i)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${i.git0}; + } + .section-root text { + fill: ${i.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .mindmap-node-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`}},Symbol.toStringTag,{value:"Module"}));var Vgt=function(){var i=function(E,C,A,P){for(A=A||{},P=E.length;P--;A[E[P]]=C);return A},a=[1,9],f=[1,10],p=[1,5,10,12],v={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(C,A,P,F,j,R,H){var Y=R.length-1;switch(j){case 7:const rt=F.findOrCreateNode(R[Y-4].trim().replaceAll('""','"')),J=F.findOrCreateNode(R[Y-2].trim().replaceAll('""','"')),it=parseFloat(R[Y].trim());F.addLink(rt,J,it);break;case 8:case 9:case 11:this.$=R[Y];break;case 10:this.$=R[Y-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:a,20:f},{1:[2,6],7:11,10:[1,12]},i(f,[2,4],{9:13,5:[1,14]}),{12:[1,15]},i(p,[2,8]),i(p,[2,9]),{19:[1,16]},i(p,[2,11]),{1:[2,1]},{1:[2,5]},i(f,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:a,20:f},{15:18,16:7,17:8,18:a,20:f},{18:[1,19]},i(f,[2,3]),{12:[1,20]},i(p,[2,10]),{15:21,16:7,17:8,18:a,20:f},i([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(C,A){if(A.recoverable)this.trace(C);else{var P=new Error(C);throw P.hash=A,P}},parse:function(C){var A=this,P=[0],F=[],j=[null],R=[],H=this.table,Y="",rt=0,J=0,it=2,ft=1,Tt=R.slice.call(arguments,1),kt=Object.create(this.lexer),mt={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(mt.yy[ct]=this.yy[ct]);kt.setInput(C,mt.yy),mt.yy.lexer=kt,mt.yy.parser=this,typeof kt.yylloc>"u"&&(kt.yylloc={});var yt=kt.yylloc;R.push(yt);var st=kt.options&&kt.options.ranges;typeof mt.yy.parseError=="function"?this.parseError=mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(){var vt;return vt=F.pop()||kt.lex()||ft,typeof vt!="number"&&(vt instanceof Array&&(F=vt,vt=F.pop()),vt=A.symbols_[vt]||vt),vt}for(var ht,dt,Ct,tt,Pt={},pt,Ft,X,Rt;;){if(dt=P[P.length-1],this.defaultActions[dt]?Ct=this.defaultActions[dt]:((ht===null||typeof ht>"u")&&(ht=xt()),Ct=H[dt]&&H[dt][ht]),typeof Ct>"u"||!Ct.length||!Ct[0]){var Bt="";Rt=[];for(pt in H[dt])this.terminals_[pt]&&pt>it&&Rt.push("'"+this.terminals_[pt]+"'");kt.showPosition?Bt="Parse error on line "+(rt+1)+`: +`+kt.showPosition()+` +Expecting `+Rt.join(", ")+", got '"+(this.terminals_[ht]||ht)+"'":Bt="Parse error on line "+(rt+1)+": Unexpected "+(ht==ft?"end of input":"'"+(this.terminals_[ht]||ht)+"'"),this.parseError(Bt,{text:kt.match,token:this.terminals_[ht]||ht,line:kt.yylineno,loc:yt,expected:Rt})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+dt+", token: "+ht);switch(Ct[0]){case 1:P.push(ht),j.push(kt.yytext),R.push(kt.yylloc),P.push(Ct[1]),ht=null,J=kt.yyleng,Y=kt.yytext,rt=kt.yylineno,yt=kt.yylloc;break;case 2:if(Ft=this.productions_[Ct[1]][1],Pt.$=j[j.length-Ft],Pt._$={first_line:R[R.length-(Ft||1)].first_line,last_line:R[R.length-1].last_line,first_column:R[R.length-(Ft||1)].first_column,last_column:R[R.length-1].last_column},st&&(Pt._$.range=[R[R.length-(Ft||1)].range[0],R[R.length-1].range[1]]),tt=this.performAction.apply(Pt,[Y,J,rt,mt.yy,Ct[1],j,R].concat(Tt)),typeof tt<"u")return tt;Ft&&(P=P.slice(0,-1*Ft*2),j=j.slice(0,-1*Ft),R=R.slice(0,-1*Ft)),P.push(this.productions_[Ct[1]][0]),j.push(Pt.$),R.push(Pt._$),X=H[P[P.length-2]][P[P.length-1]],P.push(X);break;case 3:return!0}}return!0}},m=function(){var E={EOF:1,parseError:function(A,P){if(this.yy.parser)this.yy.parser.parseError(A,P);else throw new Error(A)},setInput:function(C,A){return this.yy=A||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var A=C.match(/(?:\r\n?|\n).*/g);return A?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},unput:function(C){var A=C.length,P=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-A),this.offset-=A;var F=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),P.length-1&&(this.yylineno-=P.length-1);var j=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:P?(P.length===F.length?this.yylloc.first_column:0)+F[F.length-P.length].length-P[0].length:this.yylloc.first_column-A},this.options.ranges&&(this.yylloc.range=[j[0],j[0]+this.yyleng-A]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(C){this.unput(this.match.slice(C))},pastInput:function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var C=this.pastInput(),A=new Array(C.length+1).join("-");return C+this.upcomingInput()+` +`+A+"^"},test_match:function(C,A){var P,F,j;if(this.options.backtrack_lexer&&(j={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(j.yylloc.range=this.yylloc.range.slice(0))),F=C[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],P=this.performAction.call(this,this.yy,this,A,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),P)return P;if(this._backtrack){for(var R in j)this[R]=j[R];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,A,P,F;this._more||(this.yytext="",this.match="");for(var j=this._currentRules(),R=0;RA[0].length)){if(A=P,F=R,this.options.backtrack_lexer){if(C=this.test_match(P,j[R]),C!==!1)return C;if(this._backtrack){A=!1;continue}else return!1}else if(!this.options.flex)break}return A?(C=this.test_match(A,j[F]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var A=this.next();return A||this.lex()},begin:function(A){this.conditionStack.push(A)},popState:function(){var A=this.conditionStack.length-1;return A>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(A){return A=this.conditionStack.length-1-Math.abs(A||0),A>=0?this.conditionStack[A]:"INITIAL"},pushState:function(A){this.begin(A)},stateStackSize:function(){return this.conditionStack.length},options:{easy_keword_rules:!0},performAction:function(A,P,F,j){switch(F){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}},rules:[/^(?:sankey-beta\b)/,/^(?:$)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:(\u002C))/,/^(?:(\u0022))/,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/,/^(?:(\u0022)(?!(\u0022)))/,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return E}();v.lexer=m;function b(){this.yy={}}return b.prototype=v,v.Parser=b,new b}();Vgt.parser=Vgt;const KK=Vgt;let YK=[],XK=[],wL={};const wWe=()=>{YK=[],XK=[],wL={},cg()};class mWe{constructor(a,f,p=0){this.source=a,this.target=f,this.value=p}}const yWe=(i,a,f)=>{YK.push(new mWe(i,a,f))};class xWe{constructor(a){this.ID=a}}const kWe={nodesMap:wL,getConfig:()=>De().sankey,getNodes:()=>XK,getLinks:()=>YK,getGraph:()=>({nodes:XK.map(i=>({id:i.ID})),links:YK.map(i=>({source:i.source.ID,target:i.target.ID,value:i.value}))}),addLink:yWe,findOrCreateNode:i=>(i=ui.sanitizeText(i,De()),wL[i]||(wL[i]=new xWe(i),XK.push(wL[i])),wL[i]),getAccTitle:ug,setAccTitle:m0,getAccDescription:hg,setAccDescription:lg,getDiagramTitle:hp,setDiagramTitle:Nb,clear:wWe};function Jjt(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f=v)&&(f=v)}return f}function t$t(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f>p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f>v||f===void 0&&v>=v)&&(f=v)}return f}function Ggt(i,a){let f=0;if(a===void 0)for(let p of i)(p=+p)&&(f+=p);else{let p=-1;for(let v of i)(v=+a(v,++p,i))&&(f+=v)}return f}function EWe(i){return i.target.depth}function TWe(i){return i.depth}function _We(i,a){return a-1-i.height}function e$t(i,a){return i.sourceLinks.length?i.depth:a-1}function CWe(i){return i.targetLinks.length?i.depth:i.sourceLinks.length?t$t(i.sourceLinks,EWe)-1:0}function QK(i){return function(){return i}}function n$t(i,a){return ZK(i.source,a.source)||i.index-a.index}function r$t(i,a){return ZK(i.target,a.target)||i.index-a.index}function ZK(i,a){return i.y0-a.y0}function Ugt(i){return i.value}function SWe(i){return i.index}function AWe(i){return i.nodes}function LWe(i){return i.links}function i$t(i,a){const f=i.get(a);if(!f)throw new Error("missing: "+a);return f}function s$t({nodes:i}){for(const a of i){let f=a.y0,p=f;for(const v of a.sourceLinks)v.y0=f+v.width/2,f+=v.width;for(const v of a.targetLinks)v.y1=p+v.width/2,p+=v.width}}function MWe(){let i=0,a=0,f=1,p=1,v=24,m=8,b,E=SWe,C=e$t,A,P,F=AWe,j=LWe,R=6;function H(){const Pt={nodes:F.apply(null,arguments),links:j.apply(null,arguments)};return Y(Pt),rt(Pt),J(Pt),it(Pt),kt(Pt),s$t(Pt),Pt}H.update=function(Pt){return s$t(Pt),Pt},H.nodeId=function(Pt){return arguments.length?(E=typeof Pt=="function"?Pt:QK(Pt),H):E},H.nodeAlign=function(Pt){return arguments.length?(C=typeof Pt=="function"?Pt:QK(Pt),H):C},H.nodeSort=function(Pt){return arguments.length?(A=Pt,H):A},H.nodeWidth=function(Pt){return arguments.length?(v=+Pt,H):v},H.nodePadding=function(Pt){return arguments.length?(m=b=+Pt,H):m},H.nodes=function(Pt){return arguments.length?(F=typeof Pt=="function"?Pt:QK(Pt),H):F},H.links=function(Pt){return arguments.length?(j=typeof Pt=="function"?Pt:QK(Pt),H):j},H.linkSort=function(Pt){return arguments.length?(P=Pt,H):P},H.size=function(Pt){return arguments.length?(i=a=0,f=+Pt[0],p=+Pt[1],H):[f-i,p-a]},H.extent=function(Pt){return arguments.length?(i=+Pt[0][0],f=+Pt[1][0],a=+Pt[0][1],p=+Pt[1][1],H):[[i,a],[f,p]]},H.iterations=function(Pt){return arguments.length?(R=+Pt,H):R};function Y({nodes:Pt,links:pt}){for(const[X,Rt]of Pt.entries())Rt.index=X,Rt.sourceLinks=[],Rt.targetLinks=[];const Ft=new Map(Pt.map((X,Rt)=>[E(X,Rt,Pt),X]));for(const[X,Rt]of pt.entries()){Rt.index=X;let{source:Bt,target:vt}=Rt;typeof Bt!="object"&&(Bt=Rt.source=i$t(Ft,Bt)),typeof vt!="object"&&(vt=Rt.target=i$t(Ft,vt)),Bt.sourceLinks.push(Rt),vt.targetLinks.push(Rt)}if(P!=null)for(const{sourceLinks:X,targetLinks:Rt}of Pt)X.sort(P),Rt.sort(P)}function rt({nodes:Pt}){for(const pt of Pt)pt.value=pt.fixedValue===void 0?Math.max(Ggt(pt.sourceLinks,Ugt),Ggt(pt.targetLinks,Ugt)):pt.fixedValue}function J({nodes:Pt}){const pt=Pt.length;let Ft=new Set(Pt),X=new Set,Rt=0;for(;Ft.size;){for(const Bt of Ft){Bt.depth=Rt;for(const{target:vt}of Bt.sourceLinks)X.add(vt)}if(++Rt>pt)throw new Error("circular link");Ft=X,X=new Set}}function it({nodes:Pt}){const pt=Pt.length;let Ft=new Set(Pt),X=new Set,Rt=0;for(;Ft.size;){for(const Bt of Ft){Bt.height=Rt;for(const{source:vt}of Bt.targetLinks)X.add(vt)}if(++Rt>pt)throw new Error("circular link");Ft=X,X=new Set}}function ft({nodes:Pt}){const pt=Jjt(Pt,Rt=>Rt.depth)+1,Ft=(f-i-v)/(pt-1),X=new Array(pt);for(const Rt of Pt){const Bt=Math.max(0,Math.min(pt-1,Math.floor(C.call(null,Rt,pt))));Rt.layer=Bt,Rt.x0=i+Bt*Ft,Rt.x1=Rt.x0+v,X[Bt]?X[Bt].push(Rt):X[Bt]=[Rt]}if(A)for(const Rt of X)Rt.sort(A);return X}function Tt(Pt){const pt=t$t(Pt,Ft=>(p-a-(Ft.length-1)*b)/Ggt(Ft,Ugt));for(const Ft of Pt){let X=a;for(const Rt of Ft){Rt.y0=X,Rt.y1=X+Rt.value*pt,X=Rt.y1+b;for(const Bt of Rt.sourceLinks)Bt.width=Bt.value*pt}X=(p-X+b)/(Ft.length+1);for(let Rt=0;RtFt.length)-1)),Tt(pt);for(let Ft=0;Ft0))continue;let qe=(Ot/Vt-vt.y0)*pt;vt.y0+=qe,vt.y1+=qe,ht(vt)}A===void 0&&Bt.sort(ZK),yt(Bt,Ft)}}function ct(Pt,pt,Ft){for(let X=Pt.length,Rt=X-2;Rt>=0;--Rt){const Bt=Pt[Rt];for(const vt of Bt){let Ot=0,Vt=0;for(const{target:_n,value:Te}of vt.sourceLinks){let Wn=Te*(_n.layer-vt.layer);Ot+=tt(vt,_n)*Wn,Vt+=Wn}if(!(Vt>0))continue;let qe=(Ot/Vt-vt.y0)*pt;vt.y0+=qe,vt.y1+=qe,ht(vt)}A===void 0&&Bt.sort(ZK),yt(Bt,Ft)}}function yt(Pt,pt){const Ft=Pt.length>>1,X=Pt[Ft];xt(Pt,X.y0-b,Ft-1,pt),st(Pt,X.y1+b,Ft+1,pt),xt(Pt,p,Pt.length-1,pt),st(Pt,a,0,pt)}function st(Pt,pt,Ft,X){for(;Ft1e-6&&(Rt.y0+=Bt,Rt.y1+=Bt),pt=Rt.y1+b}}function xt(Pt,pt,Ft,X){for(;Ft>=0;--Ft){const Rt=Pt[Ft],Bt=(Rt.y1-pt)*X;Bt>1e-6&&(Rt.y0-=Bt,Rt.y1-=Bt),pt=Rt.y0-b}}function ht({sourceLinks:Pt,targetLinks:pt}){if(P===void 0){for(const{source:{sourceLinks:Ft}}of pt)Ft.sort(r$t);for(const{target:{targetLinks:Ft}}of Pt)Ft.sort(n$t)}}function dt(Pt){if(P===void 0)for(const{sourceLinks:pt,targetLinks:Ft}of Pt)pt.sort(r$t),Ft.sort(n$t)}function Ct(Pt,pt){let Ft=Pt.y0-(Pt.sourceLinks.length-1)*b/2;for(const{target:X,width:Rt}of Pt.sourceLinks){if(X===pt)break;Ft+=Rt+b}for(const{source:X,width:Rt}of pt.targetLinks){if(X===Pt)break;Ft-=Rt}return Ft}function tt(Pt,pt){let Ft=pt.y0-(pt.targetLinks.length-1)*b/2;for(const{source:X,width:Rt}of pt.targetLinks){if(X===Pt)break;Ft+=Rt+b}for(const{target:X,width:Rt}of Pt.sourceLinks){if(X===pt)break;Ft-=Rt}return Ft}return H}var Wgt=Math.PI,Kgt=2*Wgt,C9=1e-6,DWe=Kgt-C9;function Ygt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function a$t(){return new Ygt}Ygt.prototype=a$t.prototype={constructor:Ygt,moveTo:function(i,a){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(i,a){this._+="L"+(this._x1=+i)+","+(this._y1=+a)},quadraticCurveTo:function(i,a,f,p){this._+="Q"+ +i+","+ +a+","+(this._x1=+f)+","+(this._y1=+p)},bezierCurveTo:function(i,a,f,p,v,m){this._+="C"+ +i+","+ +a+","+ +f+","+ +p+","+(this._x1=+v)+","+(this._y1=+m)},arcTo:function(i,a,f,p,v){i=+i,a=+a,f=+f,p=+p,v=+v;var m=this._x1,b=this._y1,E=f-i,C=p-a,A=m-i,P=b-a,F=A*A+P*P;if(v<0)throw new Error("negative radius: "+v);if(this._x1===null)this._+="M"+(this._x1=i)+","+(this._y1=a);else if(F>C9)if(!(Math.abs(P*E-C*A)>C9)||!v)this._+="L"+(this._x1=i)+","+(this._y1=a);else{var j=f-m,R=p-b,H=E*E+C*C,Y=j*j+R*R,rt=Math.sqrt(H),J=Math.sqrt(F),it=v*Math.tan((Wgt-Math.acos((H+F-Y)/(2*rt*J)))/2),ft=it/J,Tt=it/rt;Math.abs(ft-1)>C9&&(this._+="L"+(i+ft*A)+","+(a+ft*P)),this._+="A"+v+","+v+",0,0,"+ +(P*j>A*R)+","+(this._x1=i+Tt*E)+","+(this._y1=a+Tt*C)}},arc:function(i,a,f,p,v,m){i=+i,a=+a,f=+f,m=!!m;var b=f*Math.cos(p),E=f*Math.sin(p),C=i+b,A=a+E,P=1^m,F=m?p-v:v-p;if(f<0)throw new Error("negative radius: "+f);this._x1===null?this._+="M"+C+","+A:(Math.abs(this._x1-C)>C9||Math.abs(this._y1-A)>C9)&&(this._+="L"+C+","+A),f&&(F<0&&(F=F%Kgt+Kgt),F>DWe?this._+="A"+f+","+f+",0,1,"+P+","+(i-b)+","+(a-E)+"A"+f+","+f+",0,1,"+P+","+(this._x1=C)+","+(this._y1=A):F>C9&&(this._+="A"+f+","+f+",0,"+ +(F>=Wgt)+","+P+","+(this._x1=i+f*Math.cos(v))+","+(this._y1=a+f*Math.sin(v))))},rect:function(i,a,f,p){this._+="M"+(this._x0=this._x1=+i)+","+(this._y0=this._y1=+a)+"h"+ +f+"v"+ +p+"h"+-f+"Z"},toString:function(){return this._}};function o$t(i){return function(){return i}}function IWe(i){return i[0]}function OWe(i){return i[1]}var NWe=Array.prototype.slice;function PWe(i){return i.source}function FWe(i){return i.target}function BWe(i){var a=PWe,f=FWe,p=IWe,v=OWe,m=null;function b(){var E,C=NWe.call(arguments),A=a.apply(this,C),P=f.apply(this,C);if(m||(m=E=a$t()),i(m,+p.apply(this,(C[0]=A,C)),+v.apply(this,C),+p.apply(this,(C[0]=P,C)),+v.apply(this,C)),E)return m=null,E+""||null}return b.source=function(E){return arguments.length?(a=E,b):a},b.target=function(E){return arguments.length?(f=E,b):f},b.x=function(E){return arguments.length?(p=typeof E=="function"?E:o$t(+E),b):p},b.y=function(E){return arguments.length?(v=typeof E=="function"?E:o$t(+E),b):v},b.context=function(E){return arguments.length?(m=E??null,b):m},b}function RWe(i,a,f,p,v){i.moveTo(a,f),i.bezierCurveTo(a=(a+p)/2,f,a,v,p,v)}function jWe(){return BWe(RWe)}function $We(i){return[i.source.x1,i.y0]}function zWe(i){return[i.target.x0,i.y1]}function qWe(){return jWe().source($We).target(zWe)}const Xgt=class{static next(i){return new Xgt(i+ ++Xgt.count)}constructor(i){this.id=i,this.href=`#${i}`}toString(){return"url("+this.href+")"}};let Qgt=Xgt;Qgt.count=0;const HWe={left:TWe,right:_We,center:CWe,justify:e$t},VWe={draw:function(i,a,f,p){const{securityLevel:v,sankey:m}=De(),b=i9.sankey;let E;v==="sandbox"&&(E=xr("#i"+a));const C=xr(v==="sandbox"?E.nodes()[0].contentDocument.body:"body"),A=v==="sandbox"?C.select(`[id="${a}"]`):xr(`[id="${a}"]`),P=(m==null?void 0:m.width)??b.width,F=(m==null?void 0:m.height)??b.width,j=(m==null?void 0:m.useMaxWidth)??b.useMaxWidth,R=(m==null?void 0:m.nodeAlignment)??b.nodeAlignment,H=(m==null?void 0:m.prefix)??b.prefix,Y=(m==null?void 0:m.suffix)??b.suffix,rt=(m==null?void 0:m.showValues)??b.showValues;og(A,F,P,j);const J=p.db.getGraph(),it=HWe[R],ft=10;MWe().nodeId(xt=>xt.id).nodeWidth(ft).nodePadding(10+(rt?15:0)).nodeAlign(it).extent([[0,0],[P,F]])(J);const kt=E1t(CEe);A.append("g").attr("class","nodes").selectAll(".node").data(J.nodes).join("g").attr("class","node").attr("id",xt=>(xt.uid=Qgt.next("node-")).id).attr("transform",function(xt){return"translate("+xt.x0+","+xt.y0+")"}).attr("x",xt=>xt.x0).attr("y",xt=>xt.y0).append("rect").attr("height",xt=>xt.y1-xt.y0).attr("width",xt=>xt.x1-xt.x0).attr("fill",xt=>kt(xt.id));const mt=({id:xt,value:ht})=>rt?`${xt} +${H}${Math.round(ht*100)/100}${Y}`:xt;A.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(J.nodes).join("text").attr("x",xt=>xt.x0

(xt.y1+xt.y0)/2).attr("dy",`${rt?"0":"0.35"}em`).attr("text-anchor",xt=>xt.x0

(ht.uid=Qgt.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",ht=>ht.source.x1).attr("x2",ht=>ht.target.x0);xt.append("stop").attr("offset","0%").attr("stop-color",ht=>kt(ht.source.id)),xt.append("stop").attr("offset","100%").attr("stop-color",ht=>kt(ht.target.id))}let st;switch(yt){case"gradient":st=xt=>xt.uid;break;case"source":st=xt=>kt(xt.source.id);break;case"target":st=xt=>kt(xt.target.id);break;default:st=yt}ct.append("path").attr("d",qWe()).attr("stroke",st).attr("stroke-width",xt=>Math.max(1,xt.width))}},GWe=i=>i.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),UWe=KK.parse.bind(KK);KK.parse=i=>UWe(GWe(i));const WWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:KK,db:kWe,renderer:VWe}},Symbol.toStringTag,{value:"Module"}));return Pb}); diff --git a/v1.5.24/print.html b/v1.5.24/print.html new file mode 100644 index 000000000..d936e6df2 --- /dev/null +++ b/v1.5.24/print.html @@ -0,0 +1,2403 @@ + + + + + + Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Claircore

+

Claircore is the engine behind the Clair v4 container security solution. +The Claircore package exports our domain models, interfaces necessary to plug into our business logic, and a default set of implementations. +This default set of implementations define our support matrix and consists of the following distributions and languages:

+
    +
  • Ubuntu
  • +
  • Debian
  • +
  • RHEL
  • +
  • Red Hat Container First content
  • +
  • SUSE
  • +
  • Oracle
  • +
  • Alpine
  • +
  • AWS Linux
  • +
  • VMWare Photon
  • +
  • Python
  • +
  • Java
  • +
  • Go
  • +
  • Ruby
  • +
+

Claircore relies on PostgreSQL for its persistence and the library will handle migrations if configured to do so.

+

The diagram below is a high level overview of Claircore's architecture.

+
+graph LR
+subgraph Indexer
+im[Image Manifest]
+libindex[Libindex]
+iir[IndexReport]
+im --> libindex --> iir
+end
+iir -.-> db[(Database)]
+
+
+graph LR
+subgraph Matcher
+mir[IndexReport]
+libvuln[Libvuln]
+vr[VulnerabilityReport]
+mir --> libvuln --> vr
+end
+db[(Database)] -.-> mir
+
+

When a claircore.Manifest is submitted to Libindex, the library will index its constituent parts and create a report with its findings.

+

When a claircore.IndexReport is provided to Libvuln, the library will discover vulnerabilities affecting it and generate a claircore.VulnerabilityReport.

+

Getting Started

+

The following documentation helps a beginner learn to use Claircore.

+ +

Libindex Usage

+

Libindex is the Go package responsible for fetching container image layers, +identifying packages, distributions, and repositories within these layers, and +computing a final coalesced Index Report.

+

An Index Report is primarily used as input to Libvuln's vulnerability matching +process.

+

Usage

+

Libindex is runtime constructed via the libindex.New method. New requires an libindex.Opts struct.

+

Options

+
package libindex // import "github.com/quay/claircore/libindex"
+
+type Options struct {
+	// Store is the interface used to persist and retrieve results of indexing.
+	Store indexer.Store
+	// Locker provides system-wide locks. If the indexing work is distributed the
+	// lock should be backed by a distributed store.
+	Locker LockSource
+	// FetchArena is an interface tied to the lifecycle of LibIndex to enable management
+	// of the filesystem while separate processes are dealing with layers, for example:
+	// you can reference count downloaded layer files to avoid racing.
+	FetchArena indexer.FetchArena
+	// ScanLockRetry specifies how often we should try to acquire a lock for scanning a
+	// given manifest if lock is taken.
+	ScanLockRetry time.Duration
+	// LayerScanConcurrency specifies the number of layers to be scanned in parallel.
+	LayerScanConcurrency int
+	// LayerFetchOpt is unused and kept here for backwards compatibility.
+	LayerFetchOpt interface{}
+	// NoLayerValidation controls whether layers are checked to actually be
+	// content-addressed. With this option toggled off, callers can trigger
+	// layers to be indexed repeatedly by changing the identifier in the
+	// manifest.
+	NoLayerValidation bool
+	// ControllerFactory provides an alternative method for creating a scanner during libindex runtime
+	// if nil the default factory will be used. useful for testing purposes
+	ControllerFactory ControllerFactory
+	// Ecosystems a list of ecosystems to use which define which package databases and coalescing methods we use
+	Ecosystems []*indexer.Ecosystem
+	// ScannerConfig holds functions that can be passed into configurable
+	// scanners. They're broken out by kind, and only used if a scanner
+	// implements the appropriate interface.
+	//
+	// Providing a function for a scanner that's not expecting it is not a fatal
+	// error.
+	ScannerConfig struct {
+		Package, Dist, Repo, File map[string]func(interface{}) error
+	}
+	Resolvers []indexer.Resolver
+}
+    Options are dependencies and options for constructing an instance of
+    libindex
+
+

The above outlines the relevant bits of the Options structure.

+

Store is required needs to be an object that satisfies the indexer.Store interface.

+

Locker is required and needs to satisfy the LockSource interface.

+

FetchArena is required and needs to satify the FetchArena interface.

+

Providing a nil "Ecosystems" slice will supply the default set, instructing +Libindex to index for all supported content in a layer, and is typically +desired.

+

Construction

+

Constructing Libindex is straight forward.

+
	opts := new(libindex.Options)
+	// Populate with desired settings...
+	lib, err := libindex.New(ctx, opts, http.DefaultClient)
+	if err != nil {
+		panic(err)
+	}
+	defer lib.Close(ctx) // Remember to cleanup when done.
+
+

The constructing code should provide a valid Context tied to some lifetime.

+

Indexing

+

Indexing is the process of submitting a manifest to Libindex, fetching the +manifest's layers, indexing their contents, and coalescing a final Index +Report.

+

Coalescing is the act of computing a final set of contents (packages, +distributions, repos) from a set of layers. Since layers maybe shared between +many manifests, the final contents of a manifest must be computed.

+

To perform an Index you must provide a claircore.Manifest data struture to the +Index method. The Manifest data structure describes an image manifest's layers +and where they can be fetched from.

+
	m := new(claircore.Manifest)
+	// Populate somehow ...
+	ir, err := lib.Index(ctx, m)
+	if err != nil {
+		panic(err)
+	}
+
+

The Index method will block until an claircore.IndexReport is returned. The +context should be bound to some valid lifetime such as a request.

+

As the Indexer works on the manifest it will update its database throughout the +process. You may view the status of an index report via the "IndexReport" +method.

+
	ir, ok, err := lib.IndexReport(ctx, m.Hash)
+	if err != nil {
+		panic(err)
+	}
+
+

Libindex performs its work incrementally and saves state as it goes along. If +Libindex encounters an intermittent error during the index (for example, due to +network failure while fetching a layer), when the manifest is resubmitted only +the layers not yet indexed will be fetched and processed.

+

State

+

Libindex treats layers as content addressable. Once a layer identified by a +particular hash is indexed its contents are definitively known. A request to +re-index a known layer results in returning the previous successful response.

+

This comes in handy when dealing with base layers. The Ubuntu base layer is +seen very often across container registries. Treating this layer as content +addressable precludes the need to fetch and index the layer every time Libindex +encounters it in a manifest.

+

There are times where re-indexing the same layer is necessary however. At the +point where Libindex realizes a new version of a component has not indexed a +layer being submitted it will perform the indexing operation.

+

A client must notice that Libindex has updated one of its components and +subsequently resubmit Manifests. The State endpoint is implemented for this +reason.

+

Clients may query the State endpoint to receive an opaque string acting as a +cookie, identifying a unique state of Libindex. When a client sees this cookie +change it should re-submit manifests to Libindex to obtain a new index report.

+
	state, err := lib.State(ctx)
+	if err != nil {
+		panic(err)
+	}
+	if state == prevState {
+		// Nothing to do.
+		return
+	}
+	// Otherwise, re-index manifest.
+
+

AffectedManifests

+

Libindex is capable of providing a client with all manifests affected by a set +of vulnerabilities. This functionality is designed for use with a notification +mechanism.

+
	var vulns []claircore.Vulnerability
+	affected, err := lib.AffectedManifests(ctx, vulns)
+	if err != nil {
+		panic(err)
+	}
+	for manifest, vulns := range affected.VulnerableManifests {
+		for _, vuln := range vulns {
+			fmt.Printf("vuln affecting manifest %s: %+v", manifest, vuln)
+		}
+	}
+
+

The slice of vulnerabilities returned for each manifest hash will be sorted by +claircore.NormalizedSeverity in "most severe" descending order.

+

Libvuln Usage

+

Libvuln is the Go package responsible for keeping the database of +vulnerabilities consistent, matching container image contents with +vulnerabilities, and reporting diffs between updates of the same security +database.

+

Usage

+

Libvuln is runtime constructed via the libvuln.New method. New requires a +libvuln.Opts struct.

+

Options

+
package libvuln // import "github.com/quay/claircore/libvuln"
+
+type Options struct {
+	// Store is the interface used to persist and retrieve vulnerabilites
+	// for of matching.
+	Store datastore.MatcherStore
+	// Locker provides system-wide locks for the updater subsystem. If the
+	// matching work is distributed the lock should be backed by a distributed
+	// store.
+	Locker LockSource
+	// An interval on which Libvuln will check for new security database
+	// updates.
+	//
+	// This duration will have jitter added to it, to help with smearing load on
+	// installations.
+	UpdateInterval time.Duration
+	// A slice of strings representing which updaters libvuln will create.
+	//
+	// If nil all default UpdaterSets will be used.
+	//
+	// The following sets are supported:
+	// "alpine"
+	// "aws"
+	// "debian"
+	// "oracle"
+	// "photon"
+	// "pyupio"
+	// "rhel"
+	// "suse"
+	// "ubuntu"
+	UpdaterSets []string
+	// A list of out-of-tree updaters to run.
+	//
+	// This list will be merged with any defined UpdaterSets.
+	//
+	// If you desire no updaters to run do not add an updater
+	// into this slice.
+	Updaters []driver.Updater
+	// A slice of strings representing which
+	// matchers will be used.
+	//
+	// If nil all default Matchers will be used
+	//
+	// The following names are supported by default:
+	// "alpine"
+	// "aws"
+	// "debian"
+	// "oracle"
+	// "photon"
+	// "python"
+	// "rhel"
+	// "suse"
+	// "ubuntu"
+	MatcherNames []string
+
+	// Config holds configuration blocks for MatcherFactories and Matchers,
+	// keyed by name.
+	MatcherConfigs map[string]driver.MatcherConfigUnmarshaler
+
+	// A list of out-of-tree matchers you'd like libvuln to
+	// use.
+	//
+	// This list will me merged with the default matchers.
+	Matchers []driver.Matcher
+
+	// Enrichers is a slice of enrichers to use with all VulnerabilityReport
+	// requests.
+	Enrichers []driver.Enricher
+
+	// UpdateWorkers controls the number of update workers running concurrently.
+	// If less than or equal to zero, a sensible default will be used.
+	UpdateWorkers int
+
+	// UpdateRetention controls the number of updates to retain between
+	// garbage collection periods.
+	//
+	// The lowest possible value is 2 in order to compare updates for notification
+	// purposes.
+	UpdateRetention int
+
+	// If set to true, there will not be a goroutine launched to periodically
+	// run updaters.
+	DisableBackgroundUpdates bool
+
+	// UpdaterConfigs is a map of functions for configuration of Updaters.
+	UpdaterConfigs map[string]driver.ConfigUnmarshaler
+
+	// Client is an http.Client for use by all updaters.
+	//
+	// Must be set.
+	Client *http.Client
+}
+
+

The above outlines the relevant bits of the Opts structure.

+

Construction

+

Constructing Libvuln is straight forward.

+
	opts := new(libvuln.Options)
+	// Populate with desired settings...
+	lib, err := libvuln.New(ctx, opts)
+	if err != nil {
+		panic(err)
+	}
+	defer lib.Close(ctx)
+
+

The constructing code should provide a valid Context tied to some lifetime.

+

On construction, New will block until the security databases are initialized. +Expect some delay before this method returns.

+

Scanning

+

Scanning is the process of taking a claircore.IndexReport comprised of a +Manifest's content and determining which vulnerabilities affect the Manifest. A +claircore.VulnerabilityReport will be returned with these details.

+
	m := new(claircore.Manifest)
+	// Populate somehow ...
+	ir, err := indexer.Index(ctx, m)
+	if err != nil {
+		panic(err)
+	}
+	vr, err := lib.Scan(ctx, ir)
+	if err != nil {
+		panic(err)
+	}
+
+

In the above example, Libindex is used to generate a claircore.IndexReport. +The index report is then provided to Libvuln and a subsequent vulnerability +report identifying any vulnerabilities affecting the manifest is returned.

+

Updates API

+

By default, Libvuln manages a set of long running updaters responsible for +periodically fetching and loading new advisory contents into its database. The +Updates API allows a client to view and manipulate aspects of the update +operations that updaters perform.

+

In this getting started guide, we will only cover the two methods most +interesting to new users.

+

UpdateOperations

+

This API provides a list of recent update operations performed by implemented updaters. +The UpdateOperation slice returned will be sorted by latest timestamp descending.

+
	ops, err := lib.UpdateOperations(ctx, `updater`)
+	if err != nil {
+		panic(err)
+	}
+	for updater, ops := range ops {
+		fmt.Printf("ops for updater %s, %+v", updater, ops)
+	}
+
+

UpdateDiff

+

Mostly used by the Clair v4 notification subsystem, this endpoint will provide the +caller with any removed or added vulnerabilities between two update operations. +Typically a diff takes places against two versions of the same data source. This +is useful to inform downstream applications what new vulnerabilities have +entered the system.

+
	ops, err := lib.UpdateOperations(ctx, `updater`)
+	if err != nil {
+		panic(err)
+	}
+	for upd, ops := range ops {
+		fmt.Printf("updater: %v", upd)
+		diff, err := lib.UpdateDiff(ctx, ops[1].Ref, ops[0].Ref)
+		if err != nil {
+			panic(err)
+		}
+		for _, vuln := range diff.Added {
+			fmt.Printf("vuln %+v added in %v", vuln, diff.Cur.Ref)
+		}
+	}
+
+

Concepts

+

The following sections give a conceptual overview of how Claircore works internally.

+ +

Vulnerability Matching

+

The following describes a successful scan.

+
    +
  1. Updaters have ran either in the background on an interval or an offline loader has been ran.
  2. +
  3. A Manifest is provided to Libindex. Libindex fetches all the layers, runs all scanner types on each layer, persists all artifacts found in each layer, and computes an IndexReport.
  4. +
  5. A IndexReport is provided to Libvuln.
  6. +
  7. Libvuln creates a stream of IndexRecord structs from the IndexReport and concurrently streams these structs to each configured Matcher.
  8. +
  9. Libvuln computes a VulnerabilityReport aggregating all vulnerabilities discovered by all configured Matcher implementations.
  10. +
  11. Sometime later the security advisory database is updated and a new request to Libvuln will present updated vulnerability data.
  12. +
+

Indexer

+

claircore/indexer

+

The Indexer package performs Libindex's heavy lifting. It is responsible for retreiving Manifest layers, parsing the contents of each layer, and computing an IndexReport.

+

To perform this action in incremental steps the Indexer is implemented as a finite state machine. At each state transition the Indexer persists an updated IndexReport to its datastore.

+

States

+

The following diagram expresses the possible states of the Indexer:

+
+stateDiagram-v2
+	state if_indexed <<choice>>
+	[*] --> CheckManifest
+	CheckManifest --> if_indexed
+	if_indexed --> [*]: Indexed
+	if_indexed --> FetchLayers: Unindexed
+	FetchLayers --> ScanLayers
+	ScanLayers --> Coalesce
+	Coalesce --> IndexManifest
+	IndexManifest --> IndexFinished
+	IndexFinished --> [*]
+%% These notes make the diagram unreadable :/
+%% note left of CheckManifest: Determine if this manifest has been indexed previously.
+%% note right of FetchLayers: Determine which layers need to be indexed and fetch them.
+%% note right of ScanLayers: Concurrently run needed Indexers on layers.
+%% note right of Coalesce: Compute the final contents of the container image.
+%% note right of IndexManifest: Associate all the discoved data.
+%% note right of IndexFinished: Persist the results.
+
+

Data Model

+

The Indexer data model focuses on content addressable hashes as primary keys, the deduplication of package/distribution/repostitory information, and the recording of scan artifacts. +Scan artifacts are unique artifacts found within a layer which point to a deduplicated general package/distribution/repository record.

+

The following diagram outlines the current Indexer data model.

+
+%%{init: {"er":{"layoutDirection":"RL"}} }%%
+erDiagram
+	ManifestLayer many to 1 Manifest: ""
+	ManifestLayer many to 1 Layer: ""
+	ScannedLayer many to 1 Layer: ""
+	ScannedLayer many to 1 Scanner: ""
+	ScannedManifest many to 1 Manifest: ""
+	ScannedManifest many to 1 Scanner: ""
+
+	TYPE_ScanArtifact 1 to 1 Layer: ""
+	TYPE_ScanArtifact 1 to 1 Scanner: ""
+	TYPE_ScanArtifact 1 to 1 TYPE: ""
+
+	ManifestIndex many to 1 Manifest: ""
+	ManifestIndex 1 to zero or one TYPE: ""
+
+	IndexReport 1 to 1 Manifest: "cached result"
+
+

Note that TYPE stands in for each of the Indexer types (i.e. Package, Repository, etc.).

+

HTTP Resources

+

Indexers as currently built may make network requests. +This is an outstanding issue. +The following are the URLs used.

+
    +
  • https://search.maven.org/solrsearch/select
  • +
  • https://catalog.redhat.com/api/containers/
  • +
  • https://access.redhat.com/security/data/metrics/repository-to-cpe.json
  • +
  • https://access.redhat.com/security/data/metrics/container-name-repos-map.json
  • +
+

Matcher Architecture

+

claircore/internal/matcher +claircore/libvuln/driver

+

The Matcher architecture is based on a data flow application.

+
+graph TD
+	start[Libvuln.Scan]
+	finish[Merge into VulnerabilityReport]
+	start ---> RemoteMatcher & Matcher ---> finish
+	subgraph RemoteMatcher
+		ra[Filter interested packages]
+		api[Make API calls]
+		rv[Decide vulnerability]
+		ra --> api --> rv
+	end
+	subgraph Matcher
+		dbv[Check versions in-database]
+		ma[Filter interested packages]
+		adv[Retrive vulnerabilty information]
+		mv[Deicide vulnerability]
+		ma --> adv --> mv
+		adv -.-> dbv -.-> mv
+	end
+
+

When Libvuln's Scan method is called with an IndexReport it will begin the process of matching container contents with vulnerabilities.

+

Each configured Matcher will be instantiated concurrently. Depending on the interfaces the Matcher implements, one of the possible data flows will occur in the diagram above.

+

The provided IndexReport will be unpacked into a stream of IndexRecord structs. Each Matcher will evaluate each record in the stream and determine if the IndexRecord is vulnerable to a security advisory in their responsible databases.

+

Once each Matcher returns the set of vulnerabities, Libvuln will merge the results into a VulnerabilityReport and return this to the client.

+

HTTP Resources

+

NOTE: Remote matchers are being considered for removal.

+

"Remote matchers" may make HTTP requests during the matcher flow. +These requests are time-bound and errors are not reported. +The following are the URLs used.

+

Severity Mapping

+

Claircore will normalize a security databases's severity string to a set of defined values. +Clients may use the NormalizedSeverity field on a claircore.Vulnerability to react to vulnerability severities without needing to know each security database's severity strings. +All strings used in the mapping tables are identical to the strings found within the relevant security database.

+

Claircore Severity Strings

+

The following are severity strings Claircore will normalize others to. +Clients can guarantee one of these strings will be associated with a claircore.Vulnerability.

+
    +
  • Unknown
  • +
  • Negligible
  • +
  • Low
  • +
  • Medium
  • +
  • High
  • +
  • Critical
  • +
+ +

Alpine Mapping

+

The Alpine SecDB database does not provide severity information. +All vulnerability severities will be Unknown.

+
+ +
Alpine SeverityClaircore Severity
*Unknown
+
+

AWS Mapping

+

The AWS UpdateInfo database provides severity information.

+
+ + + + +
AWS SeverityClaircore Severity
lowLow
mediumMedium
importantHigh
criticalCritical
+
+

Debian Mapping

+

The Debian security tracker data provides severity information.

+
+ + + + + +
Debian SeverityClaircore Severity
unimportantLow
lowMedium
mediumHigh
highCritical
*Unknown
+
+

Oracle Mapping

+

The Oracle OVAL database provides severity information.

+
+ + + + + +
Oracle SeverityClaircore Severity
N/AUnknown
LOWLow
MODERATEMedium
IMPORTANTHigh
CRITICALCritical
+
+

RHEL Mapping

+

The RHEL OVAL database provides severity information.

+
+ + + + + +
RHEL SeverityClaircore Severity
NoneUnknown
LowLow
ModerateMedium
ImportantHigh
CriticalCritical
+
+

SUSE Mapping

+

The SUSE OVAL database provides severity information.

+
+ + + + + +
SUSE SeverityClaircore Severity
NoneUnknown
LowLow
ModerateMedium
ImportantHigh
CriticalCritical
+
+

Ubuntu Mapping

+

The Ubuntu OVAL database provides severity information.

+
+ + + + + + +
Ubuntu SeverityClaircore Severity
UntriagedUnknown
NegligibleNegligible
LowLow
MediumMedium
HighHigh
CriticalCritical
+
+

Photon Mapping

+

The Photon OVAL database provides severity information.

+
+ + + + +
Photon SeverityClaircore Severity
LowLow
ModerateMedium
ImportantHigh
CriticalCritical
+
+

OSV Mapping

+

OSV provides severity information via CVSS vectors, when applicable. +These are normalized according to the NVD qualitative rating scale. +If both v3 and v2 vectors are present, v3 is preferred.

+

CVSSv3

+
+ + + + + +
Base ScoreClaircore Severity
0.0Negligible
0.1-3.9Low
4.0-6.9Medium
7.0-8.9High
9.0-10.0Critical
+
+

CVSSv2

+
+ + + +
Base ScoreClaircore Severity
0.0-3.9Low
4.0-6.9Medium
7.0-10.0High
+

Updaters and Defaults

+

The default updaters are tracked in updater/defaults/defaults.go.

+

HTTP Resources

+

The following are the HTTP hosts and paths that Clair will attempt to +talk to in a default configuration. This list is non-exhaustive, as +some servers will issue redirects and some request URLs are constructed +dynamically.

+
    +
  • https://secdb.alpinelinux.org/
  • +
  • http://repo.us-west-2.amazonaws.com/2018.03/updates/x86_64/mirror.list
  • +
  • https://cdn.amazonlinux.com/2/core/latest/x86_64/mirror.list
  • +
  • https://cdn.amazonlinux.com/al2023/core/mirrors/latest/x86_64/mirror.list
  • +
  • https://deb.debian.org/
  • +
  • https://security-tracker.debian.org/tracker/data/json
  • +
  • https://nvd.nist.gov/feeds/json/cve/1.1/
  • +
  • https://linux.oracle.com/security/oval/com.oracle.elsa-*.xml.bz2
  • +
  • https://packages.vmware.com/photon/photon_oval_definitions/
  • +
  • https://access.redhat.com/security/data/metrics/cvemap.xml
  • +
  • https://access.redhat.com/security/cve/
  • +
  • https://access.redhat.com/security/data/oval/v2/PULP_MANIFEST
  • +
  • https://support.novell.com/security/oval/
  • +
  • https://api.launchpad.net/1.0/
  • +
  • https://security-metadata.canonical.com/oval/com.ubuntu.*.cve.oval.xml
  • +
  • https://osv-vulnerabilities.storage.googleapis.com/
  • +
+

How Tos

+

The following sections provide instructions on accomplish specific goals in Claircore.

+ +

Adding Distribution And Language Support

+

Note: If terms in this document sound foreign check out Getting Started to acquaint yourself with "indexing", "scanning", and "matching"

+

The claircore team is always open to adding more distributions and languages to the library.

+

Generally, distributions or languages must provide a security tracker.

+

All officially supported distributions and languages provide a database of security vulnerabilities.

+

These databases are maintained by the distribution or language developers and reflect up-to-date CVE and advisory data for their packages.

+

If your distribution or language does not provide a security tracker or piggy-backs off another distribution's start an issue in our Github issue tracker to discuss further.

+

Implementing an Updater

+

The first step to adding your distribution or language to claircore is getting your security tracker's data ingested by Libvuln.

+

The Updater interfaces are responsible for this task.

+

An implementer must consider several design points:

+
    +
  • Does the security database provide enough information to parse each entry into a claircore.Vulnerability? +
      +
    • Each entry must parse into a claircore.Vulnerability.
    • +
    • Each Vulnerability must contain a package and a repository or distribution field.
    • +
    +
  • +
  • Will the Updater need to be configured at runtime? +
      +
    • Your updater may implement the Configurable interface. Your matcher will have its "Configuration" method called before use, giving you an opportunity for run time configuration.
    • +
    +
  • +
  • What fields in a parsed claircore.Vulnerability will be present when indexing layer artifacts. +
      +
    • When implementing an updater you must keep in mind how packages/distributions/repositories will be parsed during index. +When indexing a layer a common data model must exist between the possible package/distribution/repository and the parsed Vulnerabilitie's package/distribution/repository fields.
    • +
    +
  • +
+

If you are having trouble figuring out these requirements do not hesitate to reach out to us for help.

+

After you have taken the design points into consideration, you are ready to implement your updater.

+

Typically you will create a new package named after the source you are adding support for.

+

Inside this package you can begin implementing the Updater and Updater Set Factory interfaces.

+

Optionally you may implement the Configurable interface if you need runtime configuration.

+

It will undoubtly be helpful to look at the examples in the "ubuntu", "rhel", and "debian" packages to get yourself started.

+

Implementing a Package Scanner

+

At this point you hopefully have your Updater working, writing vulnerability data into Libvuln's database.

+

We can now move our attention to package scanning.

+

A package scanner is responsible for taking a claircore.Layer and parsing the contents for a particular package database or set of files inside the provided tar archive. +Once the target files are located the package scanner should parse these files into claircore.Packages and return a slice of these data structures.

+

Package scanning is context free, meaning no distribution classification has happened yet. +This is because manifests are made up of layers, and a layer which holds a package database may not hold distribution information such as an os-release file. +A package scanner need only parse a target package database and return claircore.Packages.

+

You need to implement the Package Scanner interface to achieve this.

+

Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.

+

Keep in mind that its very common for distributions to utilize an existing package manager such as RPM.

+

If this is the case there's a high likelihood that you can utilize the existing "rpm" or "dpkg" package scanner implementations.

+

Implementing a Distribution Scanner

+

Once the package scanner is implemented, tested, and working you can begin implementing a Distribution Scanner.

+

Implementing a distribution scanner is a design choice. +Distributions and repositories are the way claircore matches packages to vulnerabilities.

+

If your implemented Updater parses vulnerabilities with distribution information you will likely need to implement a distribution scanner. +Likewise, if your Updater parses vulnerabilities with repository information (typical with language vulnerabilities) you will likely need to implement a repository scanner.

+

A distribution scanner, like a package scanner, is provided a claircore.Layer.

+

The distribution scanner will parse the provided tar archive exhaustively searching for any clue that this layer was derived from your distribution. +If you identify that it is, you should return a common distribution used by your Updater implementation. +This ensures that claircore can match the output of your distribution scanner with your parsed vulnerabilities.

+

Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.

+

Implementing a Repository Scanner

+

As mentioned above, implementing a repository scanner is a design choice, often times applicable for language package managers.

+

If your Updater parses vulnerabilities with a repository field you will likely want to implement a repository scanner.

+

A repository scanner is used just like a distribution scanner however you will search for any clues that a layer contains your repository and if so return a common data model identifying the repository.

+

Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.

+

Implementing a Coalescer

+

As you may have noticed, the process of scanning a layer for packages, distribution, and repository information is distinct and separate.

+

At some point, claircore will need to take all the context-free information returned from layer scanners and create a complete view of the manifest. +A coalescer performs this computation.

+

It's unlikely you will need to implement your own coalescer. +Claircore provides a default "linux" coalescer which will work if your package database is rewritten when modified. +For example, if a Dockerfile's RUN command causes a change to to dpkg's /var/lib/dpkg/status database, the resulting manifest will have a copy placed in the associated layer.

+

However, if your package database does not fit into this model, implementing a coalescer may be necessary.

+

To implement a coalescer, several details must be understood:

+
    +
  • Each layer only provides a "piece" of the final manifest. +
      +
    • Because manifests are comprised of multiple copy-on-write layers, some layers may contain package information, distribution information, repository information, any combination of those, or no information at all.
    • +
    +
  • +
  • An OS may have a "dist-upgrade" performed and the implications of this on the package management system is distribution or language dependent. +
      +
    • The coalescer must deal with distribution upgrades in a sane way. +If your distribution or language does a dist-upgrade, are all packages bumped? +Are they simply left alone? +The coalescer must understand what happens and compute the final manifest's content correctly.
    • +
    +
  • +
  • Packages may be removed and added between layers. +
      +
    • When the package database is a regular file on disk, this case is simpler: the database file found in the most recent layer holds the ultimate set of packages for all previous layers. +However, in the case where the package database is realized by adding and removing files on disk it becomes trickier. +Claircore has no special handling of whiteout files, currently. +We will address this in upcoming releases.
    • +
    +
  • +
+

If your distribution or language cannot utilize a default coalescer, you will need to implement the Coalescer interface

+

Implementing or Adding To An Ecosystem

+

An Ecosystem provides a set of coalescers, package scanners, distribution scanners, and repository scanners to Libindex at the time of indexing.

+

Libindex will take the Ecosystem and scan each layer with all provided scanners. +When Libindex is ready to coalesce the results of each scanner into an IndexReport the provided coalescer is given the output of the configured scanners.

+

This allows Libindex to segment the input to the coalescing step to particular scanners that a coalescer understands.

+

For instance, if we only wanted a (fictitious) Haskell coalescer to evaluate artifacts returned from a (fictitious) Haskell package and repository scanner we would create an ecosystem similar to:

+
// HaskellScanner returns a configured PackageScanner.
+func haskellScanner() indexer.PackageScanner { return nil }
+
+// HaskellCoalescer returns a configured Coalescer.
+func haskellCoalescer() indexer.Coalescer { return nil }
+
+// NewEcosystem provides the set of scanners and coalescers for the haskell
+// ecosystem.
+func NewEcosystem(ctx context.Context) *indexer.Ecosystem {
+	return &indexer.Ecosystem{
+		PackageScanners: func(ctx context.Context) ([]indexer.PackageScanner, error) {
+			return []indexer.PackageScanner{haskellScanner()}, nil
+		},
+		DistributionScanners: func(ctx context.Context) ([]indexer.DistributionScanner, error) {
+			return []indexer.DistributionScanner{}, nil
+		},
+		RepositoryScanners: func(ctx context.Context) ([]indexer.RepositoryScanner, error) {
+			return []indexer.RepositoryScanner{}, nil
+		},
+		Coalescer: func(ctx context.Context) (indexer.Coalescer, error) {
+			return haskellCoalescer(), nil
+		},
+	}
+}
+
+
+

This ensures that Libindex will only provide Haskell artifacts to the Haskell coalescer and avoid calling the coalescer with rpm packages for example.

+

If your distribution uses an already implemented package manager such as "rpm" or "dpkg", it's likely you will simply add your scanners to the existing ecosystem in one of those packages.

+

Alternative Implementations

+

This how-to guide is a "perfect world" scenario.

+

Working on claircore has made us realize that this domain is a bit messy. +Security trackers are not developed with package managers in mind, security databases do not follow correct specs, distribution maintainers spin their own tools, etc.

+

We understand that supporting your distribution or language may take some bending of claircore's architecture and business logic. +If this is the case, start a conversation with us. +We are open to design discussions.

+

Getting Help

+

At this point, you have implemented all the necessary components to integrate your distribution or language with claircore.

+

If you struggle with the design phase or are getting stuck at the implementation phases do not hesitate to reach out to us. +Here are some links:

+ +

Reference

+

The follow sections provide a reference for developing with Claircore. +Important interfaces and structs are outlined.

+ +

Coalescer

+

A coalescer must compute the final contents of a manifest given the artifacts +found at each layer.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Coalescer interface {
+	Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)
+}
+    Coalescer takes a set of layers and creates coalesced IndexReport.
+
+    A coalesced IndexReport should provide only the packages present in the
+    final container image once all layers were applied.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Coalescer interface {
+	Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)
+}
+    Coalescer takes a set of layers and creates coalesced IndexReport.
+
+    A coalesced IndexReport should provide only the packages present in the
+    final container image once all layers were applied.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type LayerArtifacts struct { +Hash claircore.Digest +Pkgs []*claircore.Package +Dist []*claircore.Distribution // each layer can only have a single distribution +Repos []*claircore.Repository +Files []claircore.File +} +LayerArifact aggregates the artifacts found within a layer.

+

+A `Coalsecer` implementation is free to determine this computation given the
+artifacts found in a layer. A `Coalescer` is called with a slice of
+`LayerArtifacts` structs. The manifest's layer ordering is preserved in the
+provided slice.
+
+

ConfigurableScanner

+

A ConfigurableSanner is an optional interface a Scanner interface may +implement. When implemented, the scanner's Configure method will be called +with a ConfigDeserializer function. The Scanner may pass its config as an +argument to the ConfigDeserializer function to populate the struct.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type ConfigDeserializer func(interface{}) error
+    ConfigDeserializer can be thought of as an Unmarshal function with the byte
+    slice provided.
+
+    This will typically be something like (*json.Decoder).Decode.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type ConfigDeserializer func(interface{}) error
+    ConfigDeserializer can be thought of as an Unmarshal function with the byte
+    slice provided.
+
+    This will typically be something like (*json.Decoder).Decode.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type ConfigurableScanner interface { +Configure(context.Context, ConfigDeserializer) error +} +ConfigurableScanner is an interface scanners can implement to receive +configuration.

+
+

Distribution Scanner

+

A Distribution Scanner should identify any operating system distribution +associated with the provided layer. It is OK for no distribution information to +be discovered.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type DistributionScanner interface {
+	VersionedScanner
+	Scan(context.Context, *claircore.Layer) ([]*claircore.Distribution, error)
+}
+    DistributionScanner reports the Distributions found in a given layer.
+
+

Ecosystem

+

An Ecosystem groups together scanners and coalescers which are often used +together. Ecosystems are usually defined in a go package that corresponds to a +package manager, such as dpkg. See dpkg/ecosystem.go for an example.

+

The Indexer will retrieve artifacts from the provided scanners and provide these +scan artifacts to the coalescer in the Ecosystem.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Ecosystem struct {
+	PackageScanners      func(ctx context.Context) ([]PackageScanner, error)
+	DistributionScanners func(ctx context.Context) ([]DistributionScanner, error)
+	RepositoryScanners   func(ctx context.Context) ([]RepositoryScanner, error)
+	FileScanners         func(ctx context.Context) ([]FileScanner, error)
+	Coalescer            func(ctx context.Context) (Coalescer, error)
+	Name                 string
+}
+    Ecosystems group together scanners and a Coalescer which are commonly used
+    together.
+
+    A typical ecosystem is "dpkg" which will use the "dpkg" package indexer,
+    the "os-release" distribution scanner and the "apt" repository scanner.
+
+    A Controller will scan layers with all scanners present in its configured
+    ecosystems.
+
+

Index Report

+

An Index Report defines the contents of a manifest. An Index Report can be +unpacked into a slice of Index Records, each of which defines a package, +distribution, repository tuple.

+
package claircore // import "github.com/quay/claircore"
+
+type IndexReport struct {
+	// the manifest hash this IndexReport is describing
+	Hash Digest `json:"manifest_hash"`
+	// the current state of the index operation
+	State string `json:"state"`
+	// all discovered packages in this manifest key'd by package id
+	Packages map[string]*Package `json:"packages"`
+	// all discovered distributions in this manifest key'd by distribution id
+	Distributions map[string]*Distribution `json:"distributions"`
+	// all discovered repositories in this manifest key'd by repository id
+	Repositories map[string]*Repository `json:"repository"`
+	// a list of environment details a package was discovered in key'd by package id
+	Environments map[string][]*Environment `json:"environments"`
+	// whether the index operation finished successfully
+	Success bool `json:"success"`
+	// an error string in the case the index did not succeed
+	Err string `json:"err"`
+	// Files doesn't end up in the json report but needs to be available at post-coalesce
+	Files map[string]File `json:"-"`
+}
+    IndexReport provides a database for discovered artifacts in an image.
+
+    IndexReports make heavy usage of lookup maps to associate information
+    without repetition.
+
+func (report *IndexReport) IndexRecords() []*IndexRecord
+
+
package claircore // import "github.com/quay/claircore"
+
+type IndexReport struct {
+	// the manifest hash this IndexReport is describing
+	Hash Digest `json:"manifest_hash"`
+	// the current state of the index operation
+	State string `json:"state"`
+	// all discovered packages in this manifest key'd by package id
+	Packages map[string]*Package `json:"packages"`
+	// all discovered distributions in this manifest key'd by distribution id
+	Distributions map[string]*Distribution `json:"distributions"`
+	// all discovered repositories in this manifest key'd by repository id
+	Repositories map[string]*Repository `json:"repository"`
+	// a list of environment details a package was discovered in key'd by package id
+	Environments map[string][]*Environment `json:"environments"`
+	// whether the index operation finished successfully
+	Success bool `json:"success"`
+	// an error string in the case the index did not succeed
+	Err string `json:"err"`
+	// Files doesn't end up in the json report but needs to be available at post-coalesce
+	Files map[string]File `json:"-"`
+}
+    IndexReport provides a database for discovered artifacts in an image.
+
+    IndexReports make heavy usage of lookup maps to associate information
+    without repetition.
+
+func (report *IndexReport) IndexRecords() []*IndexRecord
+
+

package claircore // import "github.com/quay/claircore"

+

type IndexRecord struct { +Package *Package +Distribution *Distribution +Repository *Repository +} +IndexRecord is an entry in the IndexReport.

+
IndexRecords provide full access to contextual package structures such as
+Distribution and Repository.
+
+A list of these can be thought of as an "unpacked" IndexReport
+
+
+

Indexer Store

+

The indexer.Store interface defines all necessary persistence methods for +Libindex to provide its functionality.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Store interface {
+	Setter
+	Querier
+	Indexer
+	// Close frees any resources associated with the Store.
+	Close(context.Context) error
+}
+    Store is an interface for dealing with objects libindex needs to persist.
+    Stores may be implemented per storage backend.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Store interface {
+	Setter
+	Querier
+	Indexer
+	// Close frees any resources associated with the Store.
+	Close(context.Context) error
+}
+    Store is an interface for dealing with objects libindex needs to persist.
+    Stores may be implemented per storage backend.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Setter interface { +// PersistManifest must store the presence of a manifest and it's layers into the system. +// +// Typically this will write into identity tables so later methods have a foreign key +// to reference and data integrity is applied. +PersistManifest(ctx context.Context, manifest claircore.Manifest) error +// DeleteManifests removes the manifests indicated by the passed digests +// from the backing store. +DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error)

+
// SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.
+//
+// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.
+SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error
+// RegisterPackageScanners registers the provided scanners with the persistence layer.
+RegisterScanners(ctx context.Context, scnrs VersionedScanners) error
+// SetIndexReport persists the current state of the IndexReport.
+//
+// IndexReports maybe in intermediate states to provide feedback for clients. this method should be
+// used to communicate scanning state updates. to signal the scan has completely successfully
+// see SetIndexFinished.
+SetIndexReport(context.Context, *claircore.IndexReport) error
+// SetIndexFinished marks a scan successfully completed.
+//
+// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport
+// must return true.
+//
+// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport
+// in finished state.
+SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error
+
+

} +Setter interface provides the method set for required marking events, +or registering components, associated with an Index operation.

+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Store interface { +Setter +Querier +Indexer +// Close frees any resources associated with the Store. +Close(context.Context) error +} +Store is an interface for dealing with objects libindex needs to persist. +Stores may be implemented per storage backend.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Setter interface {
+	// PersistManifest must store the presence of a manifest and it's layers into the system.
+	//
+	// Typically this will write into identity tables so later methods have a foreign key
+	// to reference and data integrity is applied.
+	PersistManifest(ctx context.Context, manifest claircore.Manifest) error
+	// DeleteManifests removes the manifests indicated by the passed digests
+	// from the backing store.
+	DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error)
+
+	// SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.
+	//
+	// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.
+	SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error
+	// RegisterPackageScanners registers the provided scanners with the persistence layer.
+	RegisterScanners(ctx context.Context, scnrs VersionedScanners) error
+	// SetIndexReport persists the current state of the IndexReport.
+	//
+	// IndexReports maybe in intermediate states to provide feedback for clients. this method should be
+	// used to communicate scanning state updates. to signal the scan has completely successfully
+	// see SetIndexFinished.
+	SetIndexReport(context.Context, *claircore.IndexReport) error
+	// SetIndexFinished marks a scan successfully completed.
+	//
+	// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport
+	// must return true.
+	//
+	// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport
+	// in finished state.
+	SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error
+}
+    Setter interface provides the method set for required marking events,
+    or registering components, associated with an Index operation.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Querier interface { +// ManifestScanned returns whether the given manifest was scanned by the provided scanners. +ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) +// LayerScanned returns whether the given layer was scanned by the provided scanner. +LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) +// PackagesByLayer gets all the packages found in a layer limited by the provided scanners. +PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) +// DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. +DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) +// RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. +RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) +// FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. +FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) +// IndexReport attempts to retrieve a persisted IndexReport. +IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) +// AffectedManifests returns a list of manifest digests which the target vulnerability +// affects. +AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) +} +Querier interface provides the method set to ascertain indexed artifacts and +query whether a layer or manifest has been scanned.

+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Store interface { +Setter +Querier +Indexer +// Close frees any resources associated with the Store. +Close(context.Context) error +} +Store is an interface for dealing with objects libindex needs to persist. +Stores may be implemented per storage backend.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Setter interface {
+	// PersistManifest must store the presence of a manifest and it's layers into the system.
+	//
+	// Typically this will write into identity tables so later methods have a foreign key
+	// to reference and data integrity is applied.
+	PersistManifest(ctx context.Context, manifest claircore.Manifest) error
+	// DeleteManifests removes the manifests indicated by the passed digests
+	// from the backing store.
+	DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error)
+
+	// SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.
+	//
+	// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.
+	SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error
+	// RegisterPackageScanners registers the provided scanners with the persistence layer.
+	RegisterScanners(ctx context.Context, scnrs VersionedScanners) error
+	// SetIndexReport persists the current state of the IndexReport.
+	//
+	// IndexReports maybe in intermediate states to provide feedback for clients. this method should be
+	// used to communicate scanning state updates. to signal the scan has completely successfully
+	// see SetIndexFinished.
+	SetIndexReport(context.Context, *claircore.IndexReport) error
+	// SetIndexFinished marks a scan successfully completed.
+	//
+	// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport
+	// must return true.
+	//
+	// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport
+	// in finished state.
+	SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error
+}
+    Setter interface provides the method set for required marking events,
+    or registering components, associated with an Index operation.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Querier interface { +// ManifestScanned returns whether the given manifest was scanned by the provided scanners. +ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) +// LayerScanned returns whether the given layer was scanned by the provided scanner. +LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) +// PackagesByLayer gets all the packages found in a layer limited by the provided scanners. +PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) +// DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. +DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) +// RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. +RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) +// FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. +FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) +// IndexReport attempts to retrieve a persisted IndexReport. +IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) +// AffectedManifests returns a list of manifest digests which the target vulnerability +// affects. +AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) +} +Querier interface provides the method set to ascertain indexed artifacts and +query whether a layer or manifest has been scanned.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Indexer interface {
+	// IndexPackages indexes a package into the persistence layer.
+	IndexPackages(ctx context.Context, pkgs []*claircore.Package, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexDistributions indexes distributions into the persistence layer.
+	IndexDistributions(ctx context.Context, dists []*claircore.Distribution, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexRepositories indexes repositories into the persistence layer.
+	IndexRepositories(ctx context.Context, repos []*claircore.Repository, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexFiles indexes the interesting files into the persistence layer.
+	IndexFiles(ctx context.Context, files []claircore.File, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexManifest should index the coalesced manifest's content given an IndexReport.
+	IndexManifest(ctx context.Context, ir *claircore.IndexReport) error
+}
+    Indexer interface provide the method set required for indexing layer and
+    manifest contents into a persistent store.
+```
+
+

Matcher Store

+

The datastore.MatcherStore interface defines all necessary persistence methods for Libvuln +to provide its functionality.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type MatcherStore interface {
+	Updater
+	Vulnerability
+	Enrichment
+}
+    MatcherStore aggregates all interface types
+
+
package datastore // import "github.com/quay/claircore/datastore"
+
+type MatcherStore interface {
+	Updater
+	Vulnerability
+	Enrichment
+}
+    MatcherStore aggregates all interface types
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type Updater interface { +EnrichmentUpdater

+
// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+// vulnerabilities, and ensures vulnerabilities from previous updates are
+// not queried by clients.
+UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+// vulnerability names which should no longer be available to query.
+DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+// GetUpdateOperations returns a list of UpdateOperations in date descending
+// order for the given updaters.
+//
+// The returned map is keyed by Updater implementation's unique names.
+//
+// If no updaters are specified, all UpdateOperations are returned.
+GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRefs reports the latest update reference for every known
+// updater.
+GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRef reports the latest update reference of any known
+// updater.
+GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+// DeleteUpdateOperations removes an UpdateOperation.
+// A call to GC must be run after this to garbage collect vulnerabilities associated
+// with the UpdateOperation.
+//
+// The number of UpdateOperations deleted is returned.
+DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+// Operations.
+//
+// In diff(1) terms, this is like
+//
+//	diff prev cur
+//
+GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+// GC will delete any update operations for an updater which exceeds the provided keep
+// value.
+//
+// Implementations may throttle the GC process for datastore efficiency reasons.
+//
+// The returned int64 value indicates the remaining number of update operations needing GC.
+// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+GC(ctx context.Context, keep int) (int64, error)
+// Initialized reports whether the vulnstore contains vulnerabilities.
+Initialized(context.Context) (bool, error)
+// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+
+

} +Updater is an interface exporting the necessary methods for updating a +vulnerability database.

+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type MatcherStore interface { +Updater +Vulnerability +Enrichment +} +MatcherStore aggregates all interface types

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Updater interface {
+	EnrichmentUpdater
+
+	// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+	// vulnerabilities, and ensures vulnerabilities from previous updates are
+	// not queried by clients.
+	UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+	// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+	// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+	// vulnerability names which should no longer be available to query.
+	DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+	// GetUpdateOperations returns a list of UpdateOperations in date descending
+	// order for the given updaters.
+	//
+	// The returned map is keyed by Updater implementation's unique names.
+	//
+	// If no updaters are specified, all UpdateOperations are returned.
+	GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRefs reports the latest update reference for every known
+	// updater.
+	GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRef reports the latest update reference of any known
+	// updater.
+	GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+	// DeleteUpdateOperations removes an UpdateOperation.
+	// A call to GC must be run after this to garbage collect vulnerabilities associated
+	// with the UpdateOperation.
+	//
+	// The number of UpdateOperations deleted is returned.
+	DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+	// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+	// Operations.
+	//
+	// In diff(1) terms, this is like
+	//
+	//	diff prev cur
+	//
+	GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+	// GC will delete any update operations for an updater which exceeds the provided keep
+	// value.
+	//
+	// Implementations may throttle the GC process for datastore efficiency reasons.
+	//
+	// The returned int64 value indicates the remaining number of update operations needing GC.
+	// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+	GC(ctx context.Context, keep int) (int64, error)
+	// Initialized reports whether the vulnstore contains vulnerabilities.
+	Initialized(context.Context) (bool, error)
+	// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+	RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+	// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+	RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+}
+    Updater is an interface exporting the necessary methods for updating a
+    vulnerability database.
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type EnrichmentUpdater interface { +// UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided +// EnrichmentRecord(s), and ensures enrichments from previous updates are not +// queries by clients. +UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) +} +EnrichmentUpdater is an interface exporting the necessary methods for +storing and querying Enrichments.

+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type MatcherStore interface { +Updater +Vulnerability +Enrichment +} +MatcherStore aggregates all interface types

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Updater interface {
+	EnrichmentUpdater
+
+	// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+	// vulnerabilities, and ensures vulnerabilities from previous updates are
+	// not queried by clients.
+	UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+	// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+	// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+	// vulnerability names which should no longer be available to query.
+	DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+	// GetUpdateOperations returns a list of UpdateOperations in date descending
+	// order for the given updaters.
+	//
+	// The returned map is keyed by Updater implementation's unique names.
+	//
+	// If no updaters are specified, all UpdateOperations are returned.
+	GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRefs reports the latest update reference for every known
+	// updater.
+	GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRef reports the latest update reference of any known
+	// updater.
+	GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+	// DeleteUpdateOperations removes an UpdateOperation.
+	// A call to GC must be run after this to garbage collect vulnerabilities associated
+	// with the UpdateOperation.
+	//
+	// The number of UpdateOperations deleted is returned.
+	DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+	// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+	// Operations.
+	//
+	// In diff(1) terms, this is like
+	//
+	//	diff prev cur
+	//
+	GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+	// GC will delete any update operations for an updater which exceeds the provided keep
+	// value.
+	//
+	// Implementations may throttle the GC process for datastore efficiency reasons.
+	//
+	// The returned int64 value indicates the remaining number of update operations needing GC.
+	// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+	GC(ctx context.Context, keep int) (int64, error)
+	// Initialized reports whether the vulnstore contains vulnerabilities.
+	Initialized(context.Context) (bool, error)
+	// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+	RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+	// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+	RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+}
+    Updater is an interface exporting the necessary methods for updating a
+    vulnerability database.
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type EnrichmentUpdater interface { +// UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided +// EnrichmentRecord(s), and ensures enrichments from previous updates are not +// queries by clients. +UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) +} +EnrichmentUpdater is an interface exporting the necessary methods for +storing and querying Enrichments.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Vulnerability interface {
+	// Get finds the vulnerabilities which match each package provided in the
+	// [IndexRecord]s. This may be a one-to-many relationship. A map of Package
+	// ID to Vulnerabilities is returned.
+	Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error)
+}
+    Vulnerability is the interface for querying stored Vulnerabilities.
+```
+```
+package datastore // import "github.com/quay/claircore/datastore"
+
+type MatcherStore interface {
+	Updater
+	Vulnerability
+	Enrichment
+}
+    MatcherStore aggregates all interface types
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type Updater interface { +EnrichmentUpdater

+
// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+// vulnerabilities, and ensures vulnerabilities from previous updates are
+// not queried by clients.
+UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+// vulnerability names which should no longer be available to query.
+DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+// GetUpdateOperations returns a list of UpdateOperations in date descending
+// order for the given updaters.
+//
+// The returned map is keyed by Updater implementation's unique names.
+//
+// If no updaters are specified, all UpdateOperations are returned.
+GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRefs reports the latest update reference for every known
+// updater.
+GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRef reports the latest update reference of any known
+// updater.
+GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+// DeleteUpdateOperations removes an UpdateOperation.
+// A call to GC must be run after this to garbage collect vulnerabilities associated
+// with the UpdateOperation.
+//
+// The number of UpdateOperations deleted is returned.
+DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+// Operations.
+//
+// In diff(1) terms, this is like
+//
+//	diff prev cur
+//
+GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+// GC will delete any update operations for an updater which exceeds the provided keep
+// value.
+//
+// Implementations may throttle the GC process for datastore efficiency reasons.
+//
+// The returned int64 value indicates the remaining number of update operations needing GC.
+// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+GC(ctx context.Context, keep int) (int64, error)
+// Initialized reports whether the vulnstore contains vulnerabilities.
+Initialized(context.Context) (bool, error)
+// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+
+

} +Updater is an interface exporting the necessary methods for updating a +vulnerability database.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type EnrichmentUpdater interface {
+	// UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided
+	// EnrichmentRecord(s), and ensures enrichments from previous updates are not
+	// queries by clients.
+	UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error)
+}
+    EnrichmentUpdater is an interface exporting the necessary methods for
+    storing and querying Enrichments.
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type Vulnerability interface { +// Get finds the vulnerabilities which match each package provided in the +// [IndexRecord]s. This may be a one-to-many relationship. A map of Package +// ID to Vulnerabilities is returned. +Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error) +} +Vulnerability is the interface for querying stored Vulnerabilities.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Enrichment interface {
+	GetEnrichment(ctx context.Context, kind string, tags []string) ([]driver.EnrichmentRecord, error)
+}
+    Enrichment is an interface for querying enrichments from the store.
+```
+
+

Manifest

+

A Manifest is analogous to an OCI Image Manifest: +it defines the order of layers and how to retrieve the them.

+
package claircore // import "github.com/quay/claircore"
+
+type Manifest struct {
+	// content addressable hash. should be able to be computed via
+	// the hashes of all included layers
+	Hash Digest `json:"hash"`
+	// an array of filesystem layers indexed in the same order as the cooresponding image
+	Layers []*Layer `json:"layers"`
+}
+    Manifest represents a docker image. Layers array MUST be indexed in the
+    order that image layers are stacked.
+
+

Matcher

+

A Matcher performs the heavy lifting of matching manifest contents to relevant +vulnerabilities. These implementations provide the smarts for understanding if a +particular artifact in a layer is vulnerable to a particular advisory in the +database.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Matcher interface {
+	// a unique name for the matcher
+	Name() string
+	// Filter informs the Controller if the implemented Matcher is interested in the provided IndexRecord.
+	Filter(record *claircore.IndexRecord) bool
+	// Query informs the Controller how it should match packages with vulnerabilities.
+	// All conditions are logical AND'd together.
+	Query() []MatchConstraint
+	// Vulnerable informs the Controller if the given package is affected by the given vulnerability.
+	// for example checking the "FixedInVersion" field.
+	Vulnerable(ctx context.Context, record *claircore.IndexRecord, vuln *claircore.Vulnerability) (bool, error)
+}
+    Matcher is an interface which a Controller uses to query the vulnstore for
+    vulnerabilities.
+
+

The Filter method is used to inform Libvuln the provided artifact is +interesting. +The Query method tells Libvuln how to query the security advisory database. +The Vulnerable method reports whether the provided package is vulnerable to +the provided vulnerability. Typically, this would perform a version check +between the artifact and the vulnerability in question.

+

Package Scanner

+

A Package Scanner should discover any packages found within the given layer. +It is OK for to discover no packages within a layer.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type PackageScanner interface {
+	VersionedScanner
+	// Scan performs a package scan on the given layer and returns all
+	// the found packages
+	Scan(context.Context, *claircore.Layer) ([]*claircore.Package, error)
+}
+    PackageScanner provides an interface for unique identification or a
+    PackageScanner and a Scan method for extracting installed packages from an
+    individual container layer
+
+func NewPackageScannerMock(name, version, kind string) PackageScanner
+
+

RemoteMatcher

+

RemoteMatcher is an additional interface a Matcher may implement to skip the +database for matching results and use an external API.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type RemoteMatcher interface {
+	QueryRemoteMatcher(ctx context.Context, records []*claircore.IndexRecord) (map[string][]*claircore.Vulnerability, error)
+}
+    RemoteMatcher is an additional interface that a Matcher can implement.
+
+    When called the interface can invoke the remote matcher using an HTTP API to
+    fetch new vulnerabilities associated with the given IndexRecords.
+
+    The information retrieved from this interface won't be persisted into the
+    claircore database.
+
+

Repository Scanner

+

A RepositoryScanner should identify any repositories discovered in the provided layer. +It is OK for the scanner to identify no repositories.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type RepositoryScanner interface {
+	VersionedScanner
+	Scan(context.Context, *claircore.Layer) ([]*claircore.Repository, error)
+}
+
+

Resolver

+

A Resolver is used to analyze and modify the post-coalesced index report. This is useful for operations that need all context from an index report.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Resolver interface {
+	Resolve(context.Context, *claircore.IndexReport, []*claircore.Layer) *claircore.IndexReport
+}
+    Resolver is used for any reasoning that needs to be done with all the layers
+    in context.
+
+    Resolvers are called at the end of the coalesce step when reports from
+    separate scanners are merged.
+
+

Any Resolvers' Resolve() methods are called (in no set order) at the end of the coalesce step after reports from separate scanners are merged.

+

RPCScanner

+

RPCScanner is an optional interface a Scanner may implement. +When implemented, the scanner's Configure method will be called with a +ConfigDeserializer function and an HTTP client. +The Scanner may pass its config as an argument to the ConfigDeserializer +function to populate the struct and use the HTTP client for any remote access +necessary during the scanning process.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type RPCScanner interface {
+	Configure(context.Context, ConfigDeserializer, *http.Client) error
+}
+    RPCScanner is an interface scanners can implement to receive configuration
+    and denote that they expect to be able to talk to the network at run time.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type RPCScanner interface {
+	Configure(context.Context, ConfigDeserializer, *http.Client) error
+}
+    RPCScanner is an interface scanners can implement to receive configuration
+    and denote that they expect to be able to talk to the network at run time.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type ConfigDeserializer func(interface{}) error +ConfigDeserializer can be thought of as an Unmarshal function with the byte +slice provided.

+
This will typically be something like (*json.Decoder).Decode.
+
+
+

Updater

+

An Updater is responsible for performing run-time fetching and parsing of a security database. +The returned vulnerabilities will be written to claircore's database and used in vulnerability matching.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fetcher interface { +Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) +} +Fetcher is an interface which is embedded into the Updater interface.

+
When called the interface should determine if new security advisory data
+is available. Fingerprint may be passed into in order for the Fetcher to
+determine if the contents has changed
+
+If there is new content Fetcher should return a io.ReadCloser where the new
+content can be read. Optionally a fingerprint can be returned which uniquely
+identifies the new content.
+
+If the conent has not change an Unchanged error should be returned.
+
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Updater interface { +Name() string +Fetcher +Parser +} +Updater is an aggregate interface combining the method set of a Fetcher and +a Parser and forces a Name() to be provided

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Fetcher interface {
+	Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)
+}
+    Fetcher is an interface which is embedded into the Updater interface.
+
+    When called the interface should determine if new security advisory data
+    is available. Fingerprint may be passed into in order for the Fetcher to
+    determine if the contents has changed
+
+    If there is new content Fetcher should return a io.ReadCloser where the new
+    content can be read. Optionally a fingerprint can be returned which uniquely
+    identifies the new content.
+
+    If the conent has not change an Unchanged error should be returned.
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Parser interface { +// Parse should take an io.ReadCloser, read the contents, parse the contents +// into a list of claircore.Vulnerability structs and then return +// the list. Parse should assume contents are uncompressed and ready for parsing. +Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) +} +Parser is an interface which is embedded into the Updater interface.

+
Parse should be called with an io.ReadCloser struct where the contents
+of a security advisory database can be read and parsed into an array of
+*claircore.Vulnerability
+
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Updater interface { +Name() string +Fetcher +Parser +} +Updater is an aggregate interface combining the method set of a Fetcher and +a Parser and forces a Name() to be provided

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Fetcher interface {
+	Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)
+}
+    Fetcher is an interface which is embedded into the Updater interface.
+
+    When called the interface should determine if new security advisory data
+    is available. Fingerprint may be passed into in order for the Fetcher to
+    determine if the contents has changed
+
+    If there is new content Fetcher should return a io.ReadCloser where the new
+    content can be read. Optionally a fingerprint can be returned which uniquely
+    identifies the new content.
+
+    If the conent has not change an Unchanged error should be returned.
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Parser interface { +// Parse should take an io.ReadCloser, read the contents, parse the contents +// into a list of claircore.Vulnerability structs and then return +// the list. Parse should assume contents are uncompressed and ready for parsing. +Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) +} +Parser is an interface which is embedded into the Updater interface.

+
Parse should be called with an io.ReadCloser struct where the contents
+of a security advisory database can be read and parsed into an array of
+*claircore.Vulnerability
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Fingerprint string
+    Fingerprint is some identifying information about a vulnerability database.
+```
+```
+package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fetcher interface { +Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) +} +Fetcher is an interface which is embedded into the Updater interface.

+
When called the interface should determine if new security advisory data
+is available. Fingerprint may be passed into in order for the Fetcher to
+determine if the contents has changed
+
+If there is new content Fetcher should return a io.ReadCloser where the new
+content can be read. Optionally a fingerprint can be returned which uniquely
+identifies the new content.
+
+If the conent has not change an Unchanged error should be returned.
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Parser interface {
+	// Parse should take an io.ReadCloser, read the contents, parse the contents
+	// into a list of claircore.Vulnerability structs and then return
+	// the list. Parse should assume contents are uncompressed and ready for parsing.
+	Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)
+}
+    Parser is an interface which is embedded into the Updater interface.
+
+    Parse should be called with an io.ReadCloser struct where the contents
+    of a security advisory database can be read and parsed into an array of
+    *claircore.Vulnerability
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fingerprint string +Fingerprint is some identifying information about a vulnerability database.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Configurable interface {
+	Configure(context.Context, ConfigUnmarshaler, *http.Client) error
+}
+    Configurable is an interface that Updaters can implement to opt-in to having
+    their configuration provided dynamically.
+```
+```
+package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fetcher interface { +Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) +} +Fetcher is an interface which is embedded into the Updater interface.

+
When called the interface should determine if new security advisory data
+is available. Fingerprint may be passed into in order for the Fetcher to
+determine if the contents has changed
+
+If there is new content Fetcher should return a io.ReadCloser where the new
+content can be read. Optionally a fingerprint can be returned which uniquely
+identifies the new content.
+
+If the conent has not change an Unchanged error should be returned.
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Parser interface {
+	// Parse should take an io.ReadCloser, read the contents, parse the contents
+	// into a list of claircore.Vulnerability structs and then return
+	// the list. Parse should assume contents are uncompressed and ready for parsing.
+	Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)
+}
+    Parser is an interface which is embedded into the Updater interface.
+
+    Parse should be called with an io.ReadCloser struct where the contents
+    of a security advisory database can be read and parsed into an array of
+    *claircore.Vulnerability
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fingerprint string +Fingerprint is some identifying information about a vulnerability database.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Configurable interface {
+	Configure(context.Context, ConfigUnmarshaler, *http.Client) error
+}
+    Configurable is an interface that Updaters can implement to opt-in to having
+    their configuration provided dynamically.
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type ConfigUnmarshaler func(interface{}) error +ConfigUnmarshaler can be thought of as an Unmarshal function with the byte +slice provided, or a Decode function.

+
The function should populate a passed struct with any configuration
+information.
+
+
+

UpdaterSetFactory

+

An UpdaterSetFactory is a factory for runtime construction and configuration for Updaters.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type UpdaterSetFactory interface {
+	UpdaterSet(context.Context) (UpdaterSet, error)
+}
+    UpdaterSetFactory is used to construct updaters at run-time.
+
+func StaticSet(s UpdaterSet) UpdaterSetFactory
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type UpdaterSetFactory interface {
+	UpdaterSet(context.Context) (UpdaterSet, error)
+}
+    UpdaterSetFactory is used to construct updaters at run-time.
+
+func StaticSet(s UpdaterSet) UpdaterSetFactory
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type UpdaterSet struct { +// Has unexported fields. +} +UpdaterSet holds a deduplicated set of updaters.

+

func NewUpdaterSet() UpdaterSet +func (s *UpdaterSet) Add(u Updater) error +func (s *UpdaterSet) Merge(set UpdaterSet) error +func (s *UpdaterSet) RegexFilter(regex string) error +func (s *UpdaterSet) Updaters() []Updater

+
+

VersionFilter

+

VersionFilter is an additional interface a Matcher may implement. +If implemented, Libvuln will attempt to use the database and the normalized +version field of a package to filter vulnerabilities in the database. +This is an opt-in optimization for when a package manager's version scheme can +be normalized into a claircore.Version.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type VersionFilter interface {
+	VersionFilter()
+	// VersionAuthoritative reports whether the Matcher trusts the database-side
+	// filtering to be authoritative.
+	//
+	// A Matcher may return false if it's using a versioning scheme that can't
+	// be completely normalized into a claircore.Version.
+	VersionAuthoritative() bool
+}
+    VersionFilter is an additional interface that a Matcher can implement to
+    opt-in to using normalized version information in database queries.
+
+

Versioned Scanner

+

A versioned scanner is typically embedded into other scanner types. +It drives claircore's ability to register and understand when updaters have been changed. +Functions that want to work with a generic scanner type should use a VersionedScanner.

+

Implementers of this interface must provide a unique name. +Making changes to a scanner's implementation must return a new value from Version. +Implementers must return the correct kind: one of "package", "distribution", or "repository"

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type VersionedScanner interface {
+	// unique name of the distribution scanner.
+	Name() string
+	// version of this scanner. this information will be persisted with the scan.
+	Version() string
+	// the kind of scanner. currently only package is implemented
+	Kind() string
+}
+    VersionedScanner can be embedded into specific scanner types. This allows
+    for methods and functions which only need to compare names and versions of
+    scanners not to require each scanner type as an argument.
+
+

Vulnerability Report

+

A Vulnerability Report is a structure describing a specific manifest, its +contents, and the vulnerabilities affecting its contents.

+
package claircore // import "github.com/quay/claircore"
+
+type VulnerabilityReport struct {
+	// the manifest hash this vulnerability report is describing
+	Hash Digest `json:"manifest_hash"`
+	// all discovered packages in this manifest keyed by package id
+	Packages map[string]*Package `json:"packages"`
+	// all discovered distributions in this manifest keyed by distribution id
+	Distributions map[string]*Distribution `json:"distributions"`
+	// all discovered repositories in this manifest keyed by repository id
+	Repositories map[string]*Repository `json:"repository"`
+	// a list of environment details a package was discovered in keyed by package id
+	Environments map[string][]*Environment `json:"environments"`
+	// all discovered vulnerabilities affecting this manifest
+	Vulnerabilities map[string]*Vulnerability `json:"vulnerabilities"`
+	// a lookup table associating package ids with 1 or more vulnerability ids. keyed by package id
+	PackageVulnerabilities map[string][]string `json:"package_vulnerabilities"`
+	// a map of enrichments keyed by a type.
+	Enrichments map[string][]json.RawMessage `json:"enrichments"`
+}
+    VulnerabilityReport provides a report of packages and their associated
+    vulnerabilities.
+
+

A Vulnerability Report is package focused.

+

Unpacking a report is done by mapping the keys in the PackageVulnerabilities +field to the data structures in other lookup maps.

+

For example:

+
	for pkgID, vulnIDS := range report.PackageVulnerabilities {
+		// get package data structure
+		pkg := report.Packages[pkgID]
+
+		for _, vulnID := range vulnIDS {
+			vuln := report.Vulnerabilities[vulnID]
+			fmt.Printf("package %+v affected by vuln %+v", pkg, vuln)
+		}
+	}
+
+

Contributors

+

These topics cover helpful tips for contributing to Claircore.

+ +

How to contribute

+

The preferred workflow is to fork the quay/claircore repository, push a feature branch to the new fork, then open a pull request. +All pull requests should be targeted to the main branch outside of exceptional circumstances.

+

Testing

+

As many tests as possible should run with the standard go test invocations. +Adding the special tag integration (e.g. go test -tags integration ./...) will also run "integration" tests. +The project interprets "integration" tests to mean any test that would need external resources, such as:

+
    +
  • External web servers
  • +
  • External network access
  • +
  • Out-of-process databases
  • +
  • Large test fixtures
  • +
+

After at least one run with the integration tag, the tests should cache needed resources and run as many tests as possible. +See also the test/integration package.

+

Pull Requests

+

The Pull Request (PR) is the unit of code review. +Claircore's review flow treats a feature branch as a stack of patches to be applied. +That is to say, the feature branch should be rebased onto the target branch and have well-organized commits. +Merge commits are disallowed. +If the author would prefer to not rewrite commit history while working through reviews, fixup commits are the suggested way to achieve that. +As many requirements as possible are enforced by CI, like:

+
    +
  • Commits being signed off
  • +
  • Commit messages having a properly formed subject
  • +
  • Go modules being tidied
  • +
+

Please use the "draft" option if the branch is not ready. +Please enable the "allow edits by maintainers" option.

+

The maintainers may rebase, push, and merge contributors' branches. +This may necessitate doing a git reset <remote>/<branch> to update a local branch.

+

Conventions

+

Git commits should be formatted like "subject: summary" and avoid going over 80 characters per line. +The "subject" is usually the package affected by the commit (like jar or rhel -- the relative path isn't needed) but sometimes a broader category (like docs, all, or cicd) is OK.

+

All the helper scripts should handle the "normal" convention (origin is quay/claircore and fork is one's personal fork) and the "British" convention (origin is one's personal fork and upstream is quay/claircore).

+

More detailed contributor documentation can be found in the project documentation.

+

The claircore project has switched from a git log based changelog to a +git notes based changelog.

+

This has the benefit of making the changelog more human-friendly, as it can have +prose describing changes now, but makes adding entries a bit more involved. A +full understanding of git notes is helpful for working with the changelog, but +not required. If the reader has worked with the notes feature before, the +changelog entries are stored under the changelog ref. For other users, there +are some helper scripts in .github/scripts.

+

Basics of git notes

+

Git notes is a mechanism for storing additional information alongside commits +without modifying the commits. It does this by creating a ref full of files +named after the commits, with their contents being the notes. This scheme +requires some special care and tooling -- see the documentation for +more information.

+

Helper scripts

+

The primary helper script is changelog-edit. It allows a user to sync down +notes, edit an entry, or both. See the output of the h flag for more +information.

+

The other script of interest is changelog-render, which can be used to render +out the changelog on demand, assuming the changelog notes have been pulled +locally.

+

The changelog-update script uses changelog-render to add to the +CHANGELOG.md file in the repository root.

+

Formatting

+

Broadly, changelog entries should be formatted like commit messages without any +trailers. Entries are turned into list items, with the subject being the bullet +point and the body of the entry being the "body" of the item, or hidden behind +details elements when using HTML-enabled output.

+

The entries are almost always rendered as markdown, so using minimal markdown is +OK. Anything requiring excessive markdown is probably better served as +documentation proper, rather than a changelog entry.

+

Local Development

+

A local development environment is implemented via docker-compose.

+

Usage

+

Several make targets are defined for working with the local development environment.

+
claircore-db-up - creates just the claircore database useful for running integration tests without test servers
+claircore-db-restart - destroys and recreates a fresh database. localhost:5434
+
+

Tests

+

Several make targets are defined for working with tests.

+
integration - run the integration test suite. requires the claircore-db to be up. run `make clair-db-up` before this target
+unit - run the unit test suite.
+bench -  runs the benchmarks
+integration-v - runs the integration test suite with verbose
+unit-v - runs the unit test suite with verbose
+
+

Logging

+

All the logging in claircore is done with zerolog via context.Context +values. The zlog package takes OpenTelemetry labels and attaches them to +zerolog events.

+

This allows for claircore's logging to be used consistently throughout all the +packages without having unintended prints to stderr.

+

How to Log

+

Adding Context

+

In a function, use zlog to add key-value pairs of any relevant context:

+
	ctx = zlog.ContextWithValues(ctx,
+		"component", "Example.Logger")
+
+

Alternatively, the go.opentelemetry.io/otel/baggage package can be used for +more explicit control around the baggage values.

+

Logging style

+

Constant Messages

+

Zerolog emits lines when the Msg or Msgf methods are called. Project style +is to not use Msgf. Any variable data should be set as key-value pairs on +the Event object.

+

For example, don't do this:

+
	zlog.Info(ctx).Msgf("done at: %v", time.Now())
+
+

Do this instead:

+
	zlog.Info(ctx).
+		Time("time", time.Now()).
+		Msgf("done")
+
+

Grammar

+

When noting the change during a chunk of work, make sure that the +log messages scan as visually similar. Usually, this means formatting messages +into "${process} ${event}". For example:

+
frob start
+frob initialized
+frob ready
+frob success
+frob done
+
+

Is much easier to scan than:

+
starting to frob
+initialized frobber
+ready for frobbing
+did frob
+done with frobing
+
+

Don't log and return

+

When handling an error, code should only log it if it does not propagate it. The +code that ultimately handles the error is responsible for deciding what to do +with it. Logging and returning ends up with the same message repeated multiple +times in the logs.

+

Levels

+

Claircore attempts to have consistent leveled logging. The rules for figuring +out what level to use is:

+
    +
  • +

    Panic

    +

    There's some occurrence that means the process won't work correctly.

    +
  • +
  • +

    Fatal

    +

    Unused, because it prevents defers from running.

    +
  • +
  • +

    Error

    +

    Something unexpected occurred and the process can continue, but a +human needs to be notified. An error will be returned for this request.

    +
  • +
  • +

    Warn

    +

    Something unexpected occurred and the process can continue. An error will be +returned for this request.

    +
  • +
  • +

    Info

    +

    Some information that may be useful to an operator. Examples include +a timer-based process starting and ending, a user request starting and +ending, or a summary of work done.

    +
  • +
  • +

    Debug

    +

    Some information that may be useful to a developer. Examples include entering +and exiting functions, stepping through a function, or specific file paths +used while work is being done.

    +
  • +
+

Here's various codebase conventions that don't have dedicated pages:

+
    +
  • URLs +URLs in code should be annotated with a //doc:url directive comment. See +the the internal/cmd/mdbook-injecturls command for documentation on how the +preprocessor works. The list of keywords isn't an allowlist, so an invocation +like the following should list the ones actually used in the documentation +using a command like git grep injecturls -- :/docs/*.md.
  • +
+

Tests

+

Tests in the claircore module may use various helpers underneath the test directory. +Using these packages outside of testing code is disallowed. +Assert packages are disallowed; +the go-cmp package is the only external package helper allowed.

+

Tests that use external resources or generate test fixtures should be annotated according to the integration package.

+

Caching

+

Tests using the integration package cache generated and downloaded assets into a directory named clair-testing inside the directory reported by os.UserCacheDir. +For example, on a Linux system, the cache directory will be (in sh notation) ${XDG_CACHE_HOME-$HOME/.cache}/clair-testing.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference.html b/v1.5.24/reference.html new file mode 100644 index 000000000..cb0ac118f --- /dev/null +++ b/v1.5.24/reference.html @@ -0,0 +1,255 @@ + + + + + + Reference - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Reference

+

The follow sections provide a reference for developing with Claircore. +Important interfaces and structs are outlined.

+ + +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/coalescer.html b/v1.5.24/reference/coalescer.html new file mode 100644 index 000000000..d1a64db84 --- /dev/null +++ b/v1.5.24/reference/coalescer.html @@ -0,0 +1,274 @@ + + + + + + Coalescer - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Coalescer

+

A coalescer must compute the final contents of a manifest given the artifacts +found at each layer.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Coalescer interface {
+	Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)
+}
+    Coalescer takes a set of layers and creates coalesced IndexReport.
+
+    A coalesced IndexReport should provide only the packages present in the
+    final container image once all layers were applied.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Coalescer interface {
+	Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)
+}
+    Coalescer takes a set of layers and creates coalesced IndexReport.
+
+    A coalesced IndexReport should provide only the packages present in the
+    final container image once all layers were applied.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type LayerArtifacts struct { +Hash claircore.Digest +Pkgs []*claircore.Package +Dist []*claircore.Distribution // each layer can only have a single distribution +Repos []*claircore.Repository +Files []claircore.File +} +LayerArifact aggregates the artifacts found within a layer.

+

+A `Coalsecer` implementation is free to determine this computation given the
+artifacts found in a layer. A `Coalescer` is called with a slice of
+`LayerArtifacts` structs. The manifest's layer ordering is preserved in the
+provided slice.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/configurable_scanner.html b/v1.5.24/reference/configurable_scanner.html new file mode 100644 index 000000000..712566b6a --- /dev/null +++ b/v1.5.24/reference/configurable_scanner.html @@ -0,0 +1,264 @@ + + + + + + Configurable Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

ConfigurableScanner

+

A ConfigurableSanner is an optional interface a Scanner interface may +implement. When implemented, the scanner's Configure method will be called +with a ConfigDeserializer function. The Scanner may pass its config as an +argument to the ConfigDeserializer function to populate the struct.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type ConfigDeserializer func(interface{}) error
+    ConfigDeserializer can be thought of as an Unmarshal function with the byte
+    slice provided.
+
+    This will typically be something like (*json.Decoder).Decode.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type ConfigDeserializer func(interface{}) error
+    ConfigDeserializer can be thought of as an Unmarshal function with the byte
+    slice provided.
+
+    This will typically be something like (*json.Decoder).Decode.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type ConfigurableScanner interface { +Configure(context.Context, ConfigDeserializer) error +} +ConfigurableScanner is an interface scanners can implement to receive +configuration.

+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/distribution_scanner.html b/v1.5.24/reference/distribution_scanner.html new file mode 100644 index 000000000..2b3c32682 --- /dev/null +++ b/v1.5.24/reference/distribution_scanner.html @@ -0,0 +1,248 @@ + + + + + + Distribution Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Distribution Scanner

+

A Distribution Scanner should identify any operating system distribution +associated with the provided layer. It is OK for no distribution information to +be discovered.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type DistributionScanner interface {
+	VersionedScanner
+	Scan(context.Context, *claircore.Layer) ([]*claircore.Distribution, error)
+}
+    DistributionScanner reports the Distributions found in a given layer.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/ecosystem.html b/v1.5.24/reference/ecosystem.html new file mode 100644 index 000000000..87c9bcee4 --- /dev/null +++ b/v1.5.24/reference/ecosystem.html @@ -0,0 +1,261 @@ + + + + + + Ecosystem - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Ecosystem

+

An Ecosystem groups together scanners and coalescers which are often used +together. Ecosystems are usually defined in a go package that corresponds to a +package manager, such as dpkg. See dpkg/ecosystem.go for an example.

+

The Indexer will retrieve artifacts from the provided scanners and provide these +scan artifacts to the coalescer in the Ecosystem.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Ecosystem struct {
+	PackageScanners      func(ctx context.Context) ([]PackageScanner, error)
+	DistributionScanners func(ctx context.Context) ([]DistributionScanner, error)
+	RepositoryScanners   func(ctx context.Context) ([]RepositoryScanner, error)
+	FileScanners         func(ctx context.Context) ([]FileScanner, error)
+	Coalescer            func(ctx context.Context) (Coalescer, error)
+	Name                 string
+}
+    Ecosystems group together scanners and a Coalescer which are commonly used
+    together.
+
+    A typical ecosystem is "dpkg" which will use the "dpkg" package indexer,
+    the "os-release" distribution scanner and the "apt" repository scanner.
+
+    A Controller will scan layers with all scanners present in its configured
+    ecosystems.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/index_report.html b/v1.5.24/reference/index_report.html new file mode 100644 index 000000000..40b9c0286 --- /dev/null +++ b/v1.5.24/reference/index_report.html @@ -0,0 +1,311 @@ + + + + + + Index Report - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Index Report

+

An Index Report defines the contents of a manifest. An Index Report can be +unpacked into a slice of Index Records, each of which defines a package, +distribution, repository tuple.

+
package claircore // import "github.com/quay/claircore"
+
+type IndexReport struct {
+	// the manifest hash this IndexReport is describing
+	Hash Digest `json:"manifest_hash"`
+	// the current state of the index operation
+	State string `json:"state"`
+	// all discovered packages in this manifest key'd by package id
+	Packages map[string]*Package `json:"packages"`
+	// all discovered distributions in this manifest key'd by distribution id
+	Distributions map[string]*Distribution `json:"distributions"`
+	// all discovered repositories in this manifest key'd by repository id
+	Repositories map[string]*Repository `json:"repository"`
+	// a list of environment details a package was discovered in key'd by package id
+	Environments map[string][]*Environment `json:"environments"`
+	// whether the index operation finished successfully
+	Success bool `json:"success"`
+	// an error string in the case the index did not succeed
+	Err string `json:"err"`
+	// Files doesn't end up in the json report but needs to be available at post-coalesce
+	Files map[string]File `json:"-"`
+}
+    IndexReport provides a database for discovered artifacts in an image.
+
+    IndexReports make heavy usage of lookup maps to associate information
+    without repetition.
+
+func (report *IndexReport) IndexRecords() []*IndexRecord
+
+
package claircore // import "github.com/quay/claircore"
+
+type IndexReport struct {
+	// the manifest hash this IndexReport is describing
+	Hash Digest `json:"manifest_hash"`
+	// the current state of the index operation
+	State string `json:"state"`
+	// all discovered packages in this manifest key'd by package id
+	Packages map[string]*Package `json:"packages"`
+	// all discovered distributions in this manifest key'd by distribution id
+	Distributions map[string]*Distribution `json:"distributions"`
+	// all discovered repositories in this manifest key'd by repository id
+	Repositories map[string]*Repository `json:"repository"`
+	// a list of environment details a package was discovered in key'd by package id
+	Environments map[string][]*Environment `json:"environments"`
+	// whether the index operation finished successfully
+	Success bool `json:"success"`
+	// an error string in the case the index did not succeed
+	Err string `json:"err"`
+	// Files doesn't end up in the json report but needs to be available at post-coalesce
+	Files map[string]File `json:"-"`
+}
+    IndexReport provides a database for discovered artifacts in an image.
+
+    IndexReports make heavy usage of lookup maps to associate information
+    without repetition.
+
+func (report *IndexReport) IndexRecords() []*IndexRecord
+
+

package claircore // import "github.com/quay/claircore"

+

type IndexRecord struct { +Package *Package +Distribution *Distribution +Repository *Repository +} +IndexRecord is an entry in the IndexReport.

+
IndexRecords provide full access to contextual package structures such as
+Distribution and Repository.
+
+A list of these can be thought of as an "unpacked" IndexReport
+
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/indexer_store.html b/v1.5.24/reference/indexer_store.html new file mode 100644 index 000000000..a97497121 --- /dev/null +++ b/v1.5.24/reference/indexer_store.html @@ -0,0 +1,453 @@ + + + + + + Indexer Store - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Indexer Store

+

The indexer.Store interface defines all necessary persistence methods for +Libindex to provide its functionality.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Store interface {
+	Setter
+	Querier
+	Indexer
+	// Close frees any resources associated with the Store.
+	Close(context.Context) error
+}
+    Store is an interface for dealing with objects libindex needs to persist.
+    Stores may be implemented per storage backend.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Store interface {
+	Setter
+	Querier
+	Indexer
+	// Close frees any resources associated with the Store.
+	Close(context.Context) error
+}
+    Store is an interface for dealing with objects libindex needs to persist.
+    Stores may be implemented per storage backend.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Setter interface { +// PersistManifest must store the presence of a manifest and it's layers into the system. +// +// Typically this will write into identity tables so later methods have a foreign key +// to reference and data integrity is applied. +PersistManifest(ctx context.Context, manifest claircore.Manifest) error +// DeleteManifests removes the manifests indicated by the passed digests +// from the backing store. +DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error)

+
// SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.
+//
+// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.
+SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error
+// RegisterPackageScanners registers the provided scanners with the persistence layer.
+RegisterScanners(ctx context.Context, scnrs VersionedScanners) error
+// SetIndexReport persists the current state of the IndexReport.
+//
+// IndexReports maybe in intermediate states to provide feedback for clients. this method should be
+// used to communicate scanning state updates. to signal the scan has completely successfully
+// see SetIndexFinished.
+SetIndexReport(context.Context, *claircore.IndexReport) error
+// SetIndexFinished marks a scan successfully completed.
+//
+// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport
+// must return true.
+//
+// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport
+// in finished state.
+SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error
+
+

} +Setter interface provides the method set for required marking events, +or registering components, associated with an Index operation.

+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Store interface { +Setter +Querier +Indexer +// Close frees any resources associated with the Store. +Close(context.Context) error +} +Store is an interface for dealing with objects libindex needs to persist. +Stores may be implemented per storage backend.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Setter interface {
+	// PersistManifest must store the presence of a manifest and it's layers into the system.
+	//
+	// Typically this will write into identity tables so later methods have a foreign key
+	// to reference and data integrity is applied.
+	PersistManifest(ctx context.Context, manifest claircore.Manifest) error
+	// DeleteManifests removes the manifests indicated by the passed digests
+	// from the backing store.
+	DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error)
+
+	// SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.
+	//
+	// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.
+	SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error
+	// RegisterPackageScanners registers the provided scanners with the persistence layer.
+	RegisterScanners(ctx context.Context, scnrs VersionedScanners) error
+	// SetIndexReport persists the current state of the IndexReport.
+	//
+	// IndexReports maybe in intermediate states to provide feedback for clients. this method should be
+	// used to communicate scanning state updates. to signal the scan has completely successfully
+	// see SetIndexFinished.
+	SetIndexReport(context.Context, *claircore.IndexReport) error
+	// SetIndexFinished marks a scan successfully completed.
+	//
+	// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport
+	// must return true.
+	//
+	// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport
+	// in finished state.
+	SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error
+}
+    Setter interface provides the method set for required marking events,
+    or registering components, associated with an Index operation.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Querier interface { +// ManifestScanned returns whether the given manifest was scanned by the provided scanners. +ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) +// LayerScanned returns whether the given layer was scanned by the provided scanner. +LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) +// PackagesByLayer gets all the packages found in a layer limited by the provided scanners. +PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) +// DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. +DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) +// RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. +RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) +// FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. +FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) +// IndexReport attempts to retrieve a persisted IndexReport. +IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) +// AffectedManifests returns a list of manifest digests which the target vulnerability +// affects. +AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) +} +Querier interface provides the method set to ascertain indexed artifacts and +query whether a layer or manifest has been scanned.

+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Store interface { +Setter +Querier +Indexer +// Close frees any resources associated with the Store. +Close(context.Context) error +} +Store is an interface for dealing with objects libindex needs to persist. +Stores may be implemented per storage backend.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Setter interface {
+	// PersistManifest must store the presence of a manifest and it's layers into the system.
+	//
+	// Typically this will write into identity tables so later methods have a foreign key
+	// to reference and data integrity is applied.
+	PersistManifest(ctx context.Context, manifest claircore.Manifest) error
+	// DeleteManifests removes the manifests indicated by the passed digests
+	// from the backing store.
+	DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error)
+
+	// SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.
+	//
+	// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.
+	SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error
+	// RegisterPackageScanners registers the provided scanners with the persistence layer.
+	RegisterScanners(ctx context.Context, scnrs VersionedScanners) error
+	// SetIndexReport persists the current state of the IndexReport.
+	//
+	// IndexReports maybe in intermediate states to provide feedback for clients. this method should be
+	// used to communicate scanning state updates. to signal the scan has completely successfully
+	// see SetIndexFinished.
+	SetIndexReport(context.Context, *claircore.IndexReport) error
+	// SetIndexFinished marks a scan successfully completed.
+	//
+	// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport
+	// must return true.
+	//
+	// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport
+	// in finished state.
+	SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error
+}
+    Setter interface provides the method set for required marking events,
+    or registering components, associated with an Index operation.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type Querier interface { +// ManifestScanned returns whether the given manifest was scanned by the provided scanners. +ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) +// LayerScanned returns whether the given layer was scanned by the provided scanner. +LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) +// PackagesByLayer gets all the packages found in a layer limited by the provided scanners. +PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) +// DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. +DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) +// RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. +RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) +// FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. +FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) +// IndexReport attempts to retrieve a persisted IndexReport. +IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) +// AffectedManifests returns a list of manifest digests which the target vulnerability +// affects. +AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) +} +Querier interface provides the method set to ascertain indexed artifacts and +query whether a layer or manifest has been scanned.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Indexer interface {
+	// IndexPackages indexes a package into the persistence layer.
+	IndexPackages(ctx context.Context, pkgs []*claircore.Package, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexDistributions indexes distributions into the persistence layer.
+	IndexDistributions(ctx context.Context, dists []*claircore.Distribution, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexRepositories indexes repositories into the persistence layer.
+	IndexRepositories(ctx context.Context, repos []*claircore.Repository, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexFiles indexes the interesting files into the persistence layer.
+	IndexFiles(ctx context.Context, files []claircore.File, layer *claircore.Layer, scnr VersionedScanner) error
+	// IndexManifest should index the coalesced manifest's content given an IndexReport.
+	IndexManifest(ctx context.Context, ir *claircore.IndexReport) error
+}
+    Indexer interface provide the method set required for indexing layer and
+    manifest contents into a persistent store.
+```
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/manifest.html b/v1.5.24/reference/manifest.html new file mode 100644 index 000000000..7662af766 --- /dev/null +++ b/v1.5.24/reference/manifest.html @@ -0,0 +1,251 @@ + + + + + + Manifest - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Manifest

+

A Manifest is analogous to an OCI Image Manifest: +it defines the order of layers and how to retrieve the them.

+
package claircore // import "github.com/quay/claircore"
+
+type Manifest struct {
+	// content addressable hash. should be able to be computed via
+	// the hashes of all included layers
+	Hash Digest `json:"hash"`
+	// an array of filesystem layers indexed in the same order as the cooresponding image
+	Layers []*Layer `json:"layers"`
+}
+    Manifest represents a docker image. Layers array MUST be indexed in the
+    order that image layers are stacked.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/matcher.html b/v1.5.24/reference/matcher.html new file mode 100644 index 000000000..1a5de440d --- /dev/null +++ b/v1.5.24/reference/matcher.html @@ -0,0 +1,264 @@ + + + + + + Matcher - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Matcher

+

A Matcher performs the heavy lifting of matching manifest contents to relevant +vulnerabilities. These implementations provide the smarts for understanding if a +particular artifact in a layer is vulnerable to a particular advisory in the +database.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Matcher interface {
+	// a unique name for the matcher
+	Name() string
+	// Filter informs the Controller if the implemented Matcher is interested in the provided IndexRecord.
+	Filter(record *claircore.IndexRecord) bool
+	// Query informs the Controller how it should match packages with vulnerabilities.
+	// All conditions are logical AND'd together.
+	Query() []MatchConstraint
+	// Vulnerable informs the Controller if the given package is affected by the given vulnerability.
+	// for example checking the "FixedInVersion" field.
+	Vulnerable(ctx context.Context, record *claircore.IndexRecord, vuln *claircore.Vulnerability) (bool, error)
+}
+    Matcher is an interface which a Controller uses to query the vulnstore for
+    vulnerabilities.
+
+

The Filter method is used to inform Libvuln the provided artifact is +interesting. +The Query method tells Libvuln how to query the security advisory database. +The Vulnerable method reports whether the provided package is vulnerable to +the provided vulnerability. Typically, this would perform a version check +between the artifact and the vulnerability in question.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/matcher_store.html b/v1.5.24/reference/matcher_store.html new file mode 100644 index 000000000..90d71387b --- /dev/null +++ b/v1.5.24/reference/matcher_store.html @@ -0,0 +1,566 @@ + + + + + + Matcher Store - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Matcher Store

+

The datastore.MatcherStore interface defines all necessary persistence methods for Libvuln +to provide its functionality.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type MatcherStore interface {
+	Updater
+	Vulnerability
+	Enrichment
+}
+    MatcherStore aggregates all interface types
+
+
package datastore // import "github.com/quay/claircore/datastore"
+
+type MatcherStore interface {
+	Updater
+	Vulnerability
+	Enrichment
+}
+    MatcherStore aggregates all interface types
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type Updater interface { +EnrichmentUpdater

+
// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+// vulnerabilities, and ensures vulnerabilities from previous updates are
+// not queried by clients.
+UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+// vulnerability names which should no longer be available to query.
+DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+// GetUpdateOperations returns a list of UpdateOperations in date descending
+// order for the given updaters.
+//
+// The returned map is keyed by Updater implementation's unique names.
+//
+// If no updaters are specified, all UpdateOperations are returned.
+GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRefs reports the latest update reference for every known
+// updater.
+GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRef reports the latest update reference of any known
+// updater.
+GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+// DeleteUpdateOperations removes an UpdateOperation.
+// A call to GC must be run after this to garbage collect vulnerabilities associated
+// with the UpdateOperation.
+//
+// The number of UpdateOperations deleted is returned.
+DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+// Operations.
+//
+// In diff(1) terms, this is like
+//
+//	diff prev cur
+//
+GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+// GC will delete any update operations for an updater which exceeds the provided keep
+// value.
+//
+// Implementations may throttle the GC process for datastore efficiency reasons.
+//
+// The returned int64 value indicates the remaining number of update operations needing GC.
+// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+GC(ctx context.Context, keep int) (int64, error)
+// Initialized reports whether the vulnstore contains vulnerabilities.
+Initialized(context.Context) (bool, error)
+// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+
+

} +Updater is an interface exporting the necessary methods for updating a +vulnerability database.

+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type MatcherStore interface { +Updater +Vulnerability +Enrichment +} +MatcherStore aggregates all interface types

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Updater interface {
+	EnrichmentUpdater
+
+	// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+	// vulnerabilities, and ensures vulnerabilities from previous updates are
+	// not queried by clients.
+	UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+	// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+	// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+	// vulnerability names which should no longer be available to query.
+	DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+	// GetUpdateOperations returns a list of UpdateOperations in date descending
+	// order for the given updaters.
+	//
+	// The returned map is keyed by Updater implementation's unique names.
+	//
+	// If no updaters are specified, all UpdateOperations are returned.
+	GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRefs reports the latest update reference for every known
+	// updater.
+	GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRef reports the latest update reference of any known
+	// updater.
+	GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+	// DeleteUpdateOperations removes an UpdateOperation.
+	// A call to GC must be run after this to garbage collect vulnerabilities associated
+	// with the UpdateOperation.
+	//
+	// The number of UpdateOperations deleted is returned.
+	DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+	// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+	// Operations.
+	//
+	// In diff(1) terms, this is like
+	//
+	//	diff prev cur
+	//
+	GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+	// GC will delete any update operations for an updater which exceeds the provided keep
+	// value.
+	//
+	// Implementations may throttle the GC process for datastore efficiency reasons.
+	//
+	// The returned int64 value indicates the remaining number of update operations needing GC.
+	// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+	GC(ctx context.Context, keep int) (int64, error)
+	// Initialized reports whether the vulnstore contains vulnerabilities.
+	Initialized(context.Context) (bool, error)
+	// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+	RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+	// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+	RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+}
+    Updater is an interface exporting the necessary methods for updating a
+    vulnerability database.
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type EnrichmentUpdater interface { +// UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided +// EnrichmentRecord(s), and ensures enrichments from previous updates are not +// queries by clients. +UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) +} +EnrichmentUpdater is an interface exporting the necessary methods for +storing and querying Enrichments.

+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type MatcherStore interface { +Updater +Vulnerability +Enrichment +} +MatcherStore aggregates all interface types

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Updater interface {
+	EnrichmentUpdater
+
+	// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+	// vulnerabilities, and ensures vulnerabilities from previous updates are
+	// not queried by clients.
+	UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+	// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+	// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+	// vulnerability names which should no longer be available to query.
+	DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+	// GetUpdateOperations returns a list of UpdateOperations in date descending
+	// order for the given updaters.
+	//
+	// The returned map is keyed by Updater implementation's unique names.
+	//
+	// If no updaters are specified, all UpdateOperations are returned.
+	GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRefs reports the latest update reference for every known
+	// updater.
+	GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+	// GetLatestUpdateRef reports the latest update reference of any known
+	// updater.
+	GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+	// DeleteUpdateOperations removes an UpdateOperation.
+	// A call to GC must be run after this to garbage collect vulnerabilities associated
+	// with the UpdateOperation.
+	//
+	// The number of UpdateOperations deleted is returned.
+	DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+	// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+	// Operations.
+	//
+	// In diff(1) terms, this is like
+	//
+	//	diff prev cur
+	//
+	GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+	// GC will delete any update operations for an updater which exceeds the provided keep
+	// value.
+	//
+	// Implementations may throttle the GC process for datastore efficiency reasons.
+	//
+	// The returned int64 value indicates the remaining number of update operations needing GC.
+	// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+	GC(ctx context.Context, keep int) (int64, error)
+	// Initialized reports whether the vulnstore contains vulnerabilities.
+	Initialized(context.Context) (bool, error)
+	// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+	RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+	// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+	RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+}
+    Updater is an interface exporting the necessary methods for updating a
+    vulnerability database.
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type EnrichmentUpdater interface { +// UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided +// EnrichmentRecord(s), and ensures enrichments from previous updates are not +// queries by clients. +UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) +} +EnrichmentUpdater is an interface exporting the necessary methods for +storing and querying Enrichments.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Vulnerability interface {
+	// Get finds the vulnerabilities which match each package provided in the
+	// [IndexRecord]s. This may be a one-to-many relationship. A map of Package
+	// ID to Vulnerabilities is returned.
+	Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error)
+}
+    Vulnerability is the interface for querying stored Vulnerabilities.
+```
+```
+package datastore // import "github.com/quay/claircore/datastore"
+
+type MatcherStore interface {
+	Updater
+	Vulnerability
+	Enrichment
+}
+    MatcherStore aggregates all interface types
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type Updater interface { +EnrichmentUpdater

+
// UpdateVulnerabilities creates a new UpdateOperation, inserts the provided
+// vulnerabilities, and ensures vulnerabilities from previous updates are
+// not queried by clients.
+UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)
+// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing
+// vulnerabilities and new vulnerabilities. It also takes an array of deleted
+// vulnerability names which should no longer be available to query.
+DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)
+// GetUpdateOperations returns a list of UpdateOperations in date descending
+// order for the given updaters.
+//
+// The returned map is keyed by Updater implementation's unique names.
+//
+// If no updaters are specified, all UpdateOperations are returned.
+GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRefs reports the latest update reference for every known
+// updater.
+GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)
+// GetLatestUpdateRef reports the latest update reference of any known
+// updater.
+GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)
+// DeleteUpdateOperations removes an UpdateOperation.
+// A call to GC must be run after this to garbage collect vulnerabilities associated
+// with the UpdateOperation.
+//
+// The number of UpdateOperations deleted is returned.
+DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)
+// GetUpdateOperationDiff reports the UpdateDiff of the two referenced
+// Operations.
+//
+// In diff(1) terms, this is like
+//
+//	diff prev cur
+//
+GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)
+// GC will delete any update operations for an updater which exceeds the provided keep
+// value.
+//
+// Implementations may throttle the GC process for datastore efficiency reasons.
+//
+// The returned int64 value indicates the remaining number of update operations needing GC.
+// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.
+GC(ctx context.Context, keep int) (int64, error)
+// Initialized reports whether the vulnstore contains vulnerabilities.
+Initialized(context.Context) (bool, error)
+// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time
+RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error
+// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time
+RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error
+
+

} +Updater is an interface exporting the necessary methods for updating a +vulnerability database.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type EnrichmentUpdater interface {
+	// UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided
+	// EnrichmentRecord(s), and ensures enrichments from previous updates are not
+	// queries by clients.
+	UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error)
+}
+    EnrichmentUpdater is an interface exporting the necessary methods for
+    storing and querying Enrichments.
+
+

package datastore // import "github.com/quay/claircore/datastore"

+

type Vulnerability interface { +// Get finds the vulnerabilities which match each package provided in the +// [IndexRecord]s. This may be a one-to-many relationship. A map of Package +// ID to Vulnerabilities is returned. +Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error) +} +Vulnerability is the interface for querying stored Vulnerabilities.

+
package datastore // import "github.com/quay/claircore/datastore"
+
+type Enrichment interface {
+	GetEnrichment(ctx context.Context, kind string, tags []string) ([]driver.EnrichmentRecord, error)
+}
+    Enrichment is an interface for querying enrichments from the store.
+```
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/package_scanner.html b/v1.5.24/reference/package_scanner.html new file mode 100644 index 000000000..f53861507 --- /dev/null +++ b/v1.5.24/reference/package_scanner.html @@ -0,0 +1,253 @@ + + + + + + Package Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Package Scanner

+

A Package Scanner should discover any packages found within the given layer. +It is OK for to discover no packages within a layer.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type PackageScanner interface {
+	VersionedScanner
+	// Scan performs a package scan on the given layer and returns all
+	// the found packages
+	Scan(context.Context, *claircore.Layer) ([]*claircore.Package, error)
+}
+    PackageScanner provides an interface for unique identification or a
+    PackageScanner and a Scan method for extracting installed packages from an
+    individual container layer
+
+func NewPackageScannerMock(name, version, kind string) PackageScanner
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/remote_matcher.html b/v1.5.24/reference/remote_matcher.html new file mode 100644 index 000000000..dbd5aa97b --- /dev/null +++ b/v1.5.24/reference/remote_matcher.html @@ -0,0 +1,252 @@ + + + + + + Remote Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

RemoteMatcher

+

RemoteMatcher is an additional interface a Matcher may implement to skip the +database for matching results and use an external API.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type RemoteMatcher interface {
+	QueryRemoteMatcher(ctx context.Context, records []*claircore.IndexRecord) (map[string][]*claircore.Vulnerability, error)
+}
+    RemoteMatcher is an additional interface that a Matcher can implement.
+
+    When called the interface can invoke the remote matcher using an HTTP API to
+    fetch new vulnerabilities associated with the given IndexRecords.
+
+    The information retrieved from this interface won't be persisted into the
+    claircore database.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/repository_scanner.html b/v1.5.24/reference/repository_scanner.html new file mode 100644 index 000000000..aff79504d --- /dev/null +++ b/v1.5.24/reference/repository_scanner.html @@ -0,0 +1,246 @@ + + + + + + Repository Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Repository Scanner

+

A RepositoryScanner should identify any repositories discovered in the provided layer. +It is OK for the scanner to identify no repositories.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type RepositoryScanner interface {
+	VersionedScanner
+	Scan(context.Context, *claircore.Layer) ([]*claircore.Repository, error)
+}
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/resolver.html b/v1.5.24/reference/resolver.html new file mode 100644 index 000000000..53fd3067d --- /dev/null +++ b/v1.5.24/reference/resolver.html @@ -0,0 +1,250 @@ + + + + + + Resolver - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Resolver

+

A Resolver is used to analyze and modify the post-coalesced index report. This is useful for operations that need all context from an index report.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type Resolver interface {
+	Resolve(context.Context, *claircore.IndexReport, []*claircore.Layer) *claircore.IndexReport
+}
+    Resolver is used for any reasoning that needs to be done with all the layers
+    in context.
+
+    Resolvers are called at the end of the coalesce step when reports from
+    separate scanners are merged.
+
+

Any Resolvers' Resolve() methods are called (in no set order) at the end of the coalesce step after reports from separate scanners are merged.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/rpcscanner.html b/v1.5.24/reference/rpcscanner.html new file mode 100644 index 000000000..0b370b886 --- /dev/null +++ b/v1.5.24/reference/rpcscanner.html @@ -0,0 +1,266 @@ + + + + + + RPC Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

RPCScanner

+

RPCScanner is an optional interface a Scanner may implement. +When implemented, the scanner's Configure method will be called with a +ConfigDeserializer function and an HTTP client. +The Scanner may pass its config as an argument to the ConfigDeserializer +function to populate the struct and use the HTTP client for any remote access +necessary during the scanning process.

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type RPCScanner interface {
+	Configure(context.Context, ConfigDeserializer, *http.Client) error
+}
+    RPCScanner is an interface scanners can implement to receive configuration
+    and denote that they expect to be able to talk to the network at run time.
+
+
package indexer // import "github.com/quay/claircore/indexer"
+
+type RPCScanner interface {
+	Configure(context.Context, ConfigDeserializer, *http.Client) error
+}
+    RPCScanner is an interface scanners can implement to receive configuration
+    and denote that they expect to be able to talk to the network at run time.
+
+

package indexer // import "github.com/quay/claircore/indexer"

+

type ConfigDeserializer func(interface{}) error +ConfigDeserializer can be thought of as an Unmarshal function with the byte +slice provided.

+
This will typically be something like (*json.Decoder).Decode.
+
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/updater.html b/v1.5.24/reference/updater.html new file mode 100644 index 000000000..928e55e93 --- /dev/null +++ b/v1.5.24/reference/updater.html @@ -0,0 +1,465 @@ + + + + + + Updater - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Updater

+

An Updater is responsible for performing run-time fetching and parsing of a security database. +The returned vulnerabilities will be written to claircore's database and used in vulnerability matching.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fetcher interface { +Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) +} +Fetcher is an interface which is embedded into the Updater interface.

+
When called the interface should determine if new security advisory data
+is available. Fingerprint may be passed into in order for the Fetcher to
+determine if the contents has changed
+
+If there is new content Fetcher should return a io.ReadCloser where the new
+content can be read. Optionally a fingerprint can be returned which uniquely
+identifies the new content.
+
+If the conent has not change an Unchanged error should be returned.
+
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Updater interface { +Name() string +Fetcher +Parser +} +Updater is an aggregate interface combining the method set of a Fetcher and +a Parser and forces a Name() to be provided

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Fetcher interface {
+	Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)
+}
+    Fetcher is an interface which is embedded into the Updater interface.
+
+    When called the interface should determine if new security advisory data
+    is available. Fingerprint may be passed into in order for the Fetcher to
+    determine if the contents has changed
+
+    If there is new content Fetcher should return a io.ReadCloser where the new
+    content can be read. Optionally a fingerprint can be returned which uniquely
+    identifies the new content.
+
+    If the conent has not change an Unchanged error should be returned.
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Parser interface { +// Parse should take an io.ReadCloser, read the contents, parse the contents +// into a list of claircore.Vulnerability structs and then return +// the list. Parse should assume contents are uncompressed and ready for parsing. +Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) +} +Parser is an interface which is embedded into the Updater interface.

+
Parse should be called with an io.ReadCloser struct where the contents
+of a security advisory database can be read and parsed into an array of
+*claircore.Vulnerability
+
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Updater interface { +Name() string +Fetcher +Parser +} +Updater is an aggregate interface combining the method set of a Fetcher and +a Parser and forces a Name() to be provided

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Fetcher interface {
+	Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)
+}
+    Fetcher is an interface which is embedded into the Updater interface.
+
+    When called the interface should determine if new security advisory data
+    is available. Fingerprint may be passed into in order for the Fetcher to
+    determine if the contents has changed
+
+    If there is new content Fetcher should return a io.ReadCloser where the new
+    content can be read. Optionally a fingerprint can be returned which uniquely
+    identifies the new content.
+
+    If the conent has not change an Unchanged error should be returned.
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Parser interface { +// Parse should take an io.ReadCloser, read the contents, parse the contents +// into a list of claircore.Vulnerability structs and then return +// the list. Parse should assume contents are uncompressed and ready for parsing. +Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) +} +Parser is an interface which is embedded into the Updater interface.

+
Parse should be called with an io.ReadCloser struct where the contents
+of a security advisory database can be read and parsed into an array of
+*claircore.Vulnerability
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Fingerprint string
+    Fingerprint is some identifying information about a vulnerability database.
+```
+```
+package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fetcher interface { +Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) +} +Fetcher is an interface which is embedded into the Updater interface.

+
When called the interface should determine if new security advisory data
+is available. Fingerprint may be passed into in order for the Fetcher to
+determine if the contents has changed
+
+If there is new content Fetcher should return a io.ReadCloser where the new
+content can be read. Optionally a fingerprint can be returned which uniquely
+identifies the new content.
+
+If the conent has not change an Unchanged error should be returned.
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Parser interface {
+	// Parse should take an io.ReadCloser, read the contents, parse the contents
+	// into a list of claircore.Vulnerability structs and then return
+	// the list. Parse should assume contents are uncompressed and ready for parsing.
+	Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)
+}
+    Parser is an interface which is embedded into the Updater interface.
+
+    Parse should be called with an io.ReadCloser struct where the contents
+    of a security advisory database can be read and parsed into an array of
+    *claircore.Vulnerability
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fingerprint string +Fingerprint is some identifying information about a vulnerability database.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Configurable interface {
+	Configure(context.Context, ConfigUnmarshaler, *http.Client) error
+}
+    Configurable is an interface that Updaters can implement to opt-in to having
+    their configuration provided dynamically.
+```
+```
+package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Updater interface {
+	Name() string
+	Fetcher
+	Parser
+}
+    Updater is an aggregate interface combining the method set of a Fetcher and
+    a Parser and forces a Name() to be provided
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fetcher interface { +Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) +} +Fetcher is an interface which is embedded into the Updater interface.

+
When called the interface should determine if new security advisory data
+is available. Fingerprint may be passed into in order for the Fetcher to
+determine if the contents has changed
+
+If there is new content Fetcher should return a io.ReadCloser where the new
+content can be read. Optionally a fingerprint can be returned which uniquely
+identifies the new content.
+
+If the conent has not change an Unchanged error should be returned.
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Parser interface {
+	// Parse should take an io.ReadCloser, read the contents, parse the contents
+	// into a list of claircore.Vulnerability structs and then return
+	// the list. Parse should assume contents are uncompressed and ready for parsing.
+	Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)
+}
+    Parser is an interface which is embedded into the Updater interface.
+
+    Parse should be called with an io.ReadCloser struct where the contents
+    of a security advisory database can be read and parsed into an array of
+    *claircore.Vulnerability
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type Fingerprint string +Fingerprint is some identifying information about a vulnerability database.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type Configurable interface {
+	Configure(context.Context, ConfigUnmarshaler, *http.Client) error
+}
+    Configurable is an interface that Updaters can implement to opt-in to having
+    their configuration provided dynamically.
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type ConfigUnmarshaler func(interface{}) error +ConfigUnmarshaler can be thought of as an Unmarshal function with the byte +slice provided, or a Decode function.

+
The function should populate a passed struct with any configuration
+information.
+
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/updatersetfactory.html b/v1.5.24/reference/updatersetfactory.html new file mode 100644 index 000000000..1d3d1b5ab --- /dev/null +++ b/v1.5.24/reference/updatersetfactory.html @@ -0,0 +1,267 @@ + + + + + + Updater Set Factory - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

UpdaterSetFactory

+

An UpdaterSetFactory is a factory for runtime construction and configuration for Updaters.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type UpdaterSetFactory interface {
+	UpdaterSet(context.Context) (UpdaterSet, error)
+}
+    UpdaterSetFactory is used to construct updaters at run-time.
+
+func StaticSet(s UpdaterSet) UpdaterSetFactory
+
+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type UpdaterSetFactory interface {
+	UpdaterSet(context.Context) (UpdaterSet, error)
+}
+    UpdaterSetFactory is used to construct updaters at run-time.
+
+func StaticSet(s UpdaterSet) UpdaterSetFactory
+
+

package driver // import "github.com/quay/claircore/libvuln/driver"

+

type UpdaterSet struct { +// Has unexported fields. +} +UpdaterSet holds a deduplicated set of updaters.

+

func NewUpdaterSet() UpdaterSet +func (s *UpdaterSet) Add(u Updater) error +func (s *UpdaterSet) Merge(set UpdaterSet) error +func (s *UpdaterSet) RegexFilter(regex string) error +func (s *UpdaterSet) Updaters() []Updater

+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/version_filter.html b/v1.5.24/reference/version_filter.html new file mode 100644 index 000000000..0b1f15a60 --- /dev/null +++ b/v1.5.24/reference/version_filter.html @@ -0,0 +1,256 @@ + + + + + + Version Filter - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

VersionFilter

+

VersionFilter is an additional interface a Matcher may implement. +If implemented, Libvuln will attempt to use the database and the normalized +version field of a package to filter vulnerabilities in the database. +This is an opt-in optimization for when a package manager's version scheme can +be normalized into a claircore.Version.

+
package driver // import "github.com/quay/claircore/libvuln/driver"
+
+type VersionFilter interface {
+	VersionFilter()
+	// VersionAuthoritative reports whether the Matcher trusts the database-side
+	// filtering to be authoritative.
+	//
+	// A Matcher may return false if it's using a versioning scheme that can't
+	// be completely normalized into a claircore.Version.
+	VersionAuthoritative() bool
+}
+    VersionFilter is an additional interface that a Matcher can implement to
+    opt-in to using normalized version information in database queries.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/versioned_scanner.html b/v1.5.24/reference/versioned_scanner.html new file mode 100644 index 000000000..9f2b942f4 --- /dev/null +++ b/v1.5.24/reference/versioned_scanner.html @@ -0,0 +1,257 @@ + + + + + + Versioned Scanner - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Versioned Scanner

+

A versioned scanner is typically embedded into other scanner types. +It drives claircore's ability to register and understand when updaters have been changed. +Functions that want to work with a generic scanner type should use a VersionedScanner.

+

Implementers of this interface must provide a unique name. +Making changes to a scanner's implementation must return a new value from Version. +Implementers must return the correct kind: one of "package", "distribution", or "repository"

+
package indexer // import "github.com/quay/claircore/indexer"
+
+type VersionedScanner interface {
+	// unique name of the distribution scanner.
+	Name() string
+	// version of this scanner. this information will be persisted with the scan.
+	Version() string
+	// the kind of scanner. currently only package is implemented
+	Kind() string
+}
+    VersionedScanner can be embedded into specific scanner types. This allows
+    for methods and functions which only need to compare names and versions of
+    scanners not to require each scanner type as an argument.
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/reference/vulnerability_report.html b/v1.5.24/reference/vulnerability_report.html new file mode 100644 index 000000000..a2d9eb1ce --- /dev/null +++ b/v1.5.24/reference/vulnerability_report.html @@ -0,0 +1,276 @@ + + + + + + Vulnerability Report - Claircore Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Vulnerability Report

+

A Vulnerability Report is a structure describing a specific manifest, its +contents, and the vulnerabilities affecting its contents.

+
package claircore // import "github.com/quay/claircore"
+
+type VulnerabilityReport struct {
+	// the manifest hash this vulnerability report is describing
+	Hash Digest `json:"manifest_hash"`
+	// all discovered packages in this manifest keyed by package id
+	Packages map[string]*Package `json:"packages"`
+	// all discovered distributions in this manifest keyed by distribution id
+	Distributions map[string]*Distribution `json:"distributions"`
+	// all discovered repositories in this manifest keyed by repository id
+	Repositories map[string]*Repository `json:"repository"`
+	// a list of environment details a package was discovered in keyed by package id
+	Environments map[string][]*Environment `json:"environments"`
+	// all discovered vulnerabilities affecting this manifest
+	Vulnerabilities map[string]*Vulnerability `json:"vulnerabilities"`
+	// a lookup table associating package ids with 1 or more vulnerability ids. keyed by package id
+	PackageVulnerabilities map[string][]string `json:"package_vulnerabilities"`
+	// a map of enrichments keyed by a type.
+	Enrichments map[string][]json.RawMessage `json:"enrichments"`
+}
+    VulnerabilityReport provides a report of packages and their associated
+    vulnerabilities.
+
+

A Vulnerability Report is package focused.

+

Unpacking a report is done by mapping the keys in the PackageVulnerabilities +field to the data structures in other lookup maps.

+

For example:

+
	for pkgID, vulnIDS := range report.PackageVulnerabilities {
+		// get package data structure
+		pkg := report.Packages[pkgID]
+
+		for _, vulnID := range vulnIDS {
+			vuln := report.Vulnerabilities[vulnID]
+			fmt.Printf("package %+v affected by vuln %+v", pkg, vuln)
+		}
+	}
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/v1.5.24/searcher.js b/v1.5.24/searcher.js new file mode 100644 index 000000000..dc03e0a02 --- /dev/null +++ b/v1.5.24/searcher.js @@ -0,0 +1,483 @@ +"use strict"; +window.search = window.search || {}; +(function search(search) { + // Search functionality + // + // You can use !hasFocus() to prevent keyhandling in your key + // event handlers while the user is typing their search. + + if (!Mark || !elasticlunr) { + return; + } + + //IE 11 Compatibility from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith + if (!String.prototype.startsWith) { + String.prototype.startsWith = function(search, pos) { + return this.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; + }; + } + + var search_wrap = document.getElementById('search-wrapper'), + searchbar = document.getElementById('searchbar'), + searchbar_outer = document.getElementById('searchbar-outer'), + searchresults = document.getElementById('searchresults'), + searchresults_outer = document.getElementById('searchresults-outer'), + searchresults_header = document.getElementById('searchresults-header'), + searchicon = document.getElementById('search-toggle'), + content = document.getElementById('content'), + + searchindex = null, + doc_urls = [], + results_options = { + teaser_word_count: 30, + limit_results: 30, + }, + search_options = { + bool: "AND", + expand: true, + fields: { + title: {boost: 1}, + body: {boost: 1}, + breadcrumbs: {boost: 0} + } + }, + mark_exclude = [], + marker = new Mark(content), + current_searchterm = "", + URL_SEARCH_PARAM = 'search', + URL_MARK_PARAM = 'highlight', + teaser_count = 0, + + SEARCH_HOTKEY_KEYCODE = 83, + ESCAPE_KEYCODE = 27, + DOWN_KEYCODE = 40, + UP_KEYCODE = 38, + SELECT_KEYCODE = 13; + + function hasFocus() { + return searchbar === document.activeElement; + } + + function removeChildren(elem) { + while (elem.firstChild) { + elem.removeChild(elem.firstChild); + } + } + + // Helper to parse a url into its building blocks. + function parseURL(url) { + var a = document.createElement('a'); + a.href = url; + return { + source: url, + protocol: a.protocol.replace(':',''), + host: a.hostname, + port: a.port, + params: (function(){ + var ret = {}; + var seg = a.search.replace(/^\?/,'').split('&'); + var len = seg.length, i = 0, s; + for (;i': '>', + '"': '"', + "'": ''' + }; + var repl = function(c) { return MAP[c]; }; + return function(s) { + return s.replace(/[&<>'"]/g, repl); + }; + })(); + + function formatSearchMetric(count, searchterm) { + if (count == 1) { + return count + " search result for '" + searchterm + "':"; + } else if (count == 0) { + return "No search results for '" + searchterm + "'."; + } else { + return count + " search results for '" + searchterm + "':"; + } + } + + function formatSearchResult(result, searchterms) { + var teaser = makeTeaser(escapeHTML(result.doc.body), searchterms); + teaser_count++; + + // The ?URL_MARK_PARAM= parameter belongs inbetween the page and the #heading-anchor + var url = doc_urls[result.ref].split("#"); + if (url.length == 1) { // no anchor found + url.push(""); + } + + // encodeURIComponent escapes all chars that could allow an XSS except + // for '. Due to that we also manually replace ' with its url-encoded + // representation (%27). + var searchterms = encodeURIComponent(searchterms.join(" ")).replace(/\'/g, "%27"); + + return '' + result.doc.breadcrumbs + '' + + '' + + teaser + ''; + } + + function makeTeaser(body, searchterms) { + // The strategy is as follows: + // First, assign a value to each word in the document: + // Words that correspond to search terms (stemmer aware): 40 + // Normal words: 2 + // First word in a sentence: 8 + // Then use a sliding window with a constant number of words and count the + // sum of the values of the words within the window. Then use the window that got the + // maximum sum. If there are multiple maximas, then get the last one. + // Enclose the terms in . + var stemmed_searchterms = searchterms.map(function(w) { + return elasticlunr.stemmer(w.toLowerCase()); + }); + var searchterm_weight = 40; + var weighted = []; // contains elements of ["word", weight, index_in_document] + // split in sentences, then words + var sentences = body.toLowerCase().split('. '); + var index = 0; + var value = 0; + var searchterm_found = false; + for (var sentenceindex in sentences) { + var words = sentences[sentenceindex].split(' '); + value = 8; + for (var wordindex in words) { + var word = words[wordindex]; + if (word.length > 0) { + for (var searchtermindex in stemmed_searchterms) { + if (elasticlunr.stemmer(word).startsWith(stemmed_searchterms[searchtermindex])) { + value = searchterm_weight; + searchterm_found = true; + } + }; + weighted.push([word, value, index]); + value = 2; + } + index += word.length; + index += 1; // ' ' or '.' if last word in sentence + }; + index += 1; // because we split at a two-char boundary '. ' + }; + + if (weighted.length == 0) { + return body; + } + + var window_weight = []; + var window_size = Math.min(weighted.length, results_options.teaser_word_count); + + var cur_sum = 0; + for (var wordindex = 0; wordindex < window_size; wordindex++) { + cur_sum += weighted[wordindex][1]; + }; + window_weight.push(cur_sum); + for (var wordindex = 0; wordindex < weighted.length - window_size; wordindex++) { + cur_sum -= weighted[wordindex][1]; + cur_sum += weighted[wordindex + window_size][1]; + window_weight.push(cur_sum); + }; + + if (searchterm_found) { + var max_sum = 0; + var max_sum_window_index = 0; + // backwards + for (var i = window_weight.length - 1; i >= 0; i--) { + if (window_weight[i] > max_sum) { + max_sum = window_weight[i]; + max_sum_window_index = i; + } + }; + } else { + max_sum_window_index = 0; + } + + // add around searchterms + var teaser_split = []; + var index = weighted[max_sum_window_index][2]; + for (var i = max_sum_window_index; i < max_sum_window_index+window_size; i++) { + var word = weighted[i]; + if (index < word[2]) { + // missing text from index to start of `word` + teaser_split.push(body.substring(index, word[2])); + index = word[2]; + } + if (word[1] == searchterm_weight) { + teaser_split.push("") + } + index = word[2] + word[0].length; + teaser_split.push(body.substring(word[2], index)); + if (word[1] == searchterm_weight) { + teaser_split.push("") + } + }; + + return teaser_split.join(''); + } + + function init(config) { + results_options = config.results_options; + search_options = config.search_options; + searchbar_outer = config.searchbar_outer; + doc_urls = config.doc_urls; + searchindex = elasticlunr.Index.load(config.index); + + // Set up events + searchicon.addEventListener('click', function(e) { searchIconClickHandler(); }, false); + searchbar.addEventListener('keyup', function(e) { searchbarKeyUpHandler(); }, false); + document.addEventListener('keydown', function(e) { globalKeyHandler(e); }, false); + // If the user uses the browser buttons, do the same as if a reload happened + window.onpopstate = function(e) { doSearchOrMarkFromUrl(); }; + // Suppress "submit" events so the page doesn't reload when the user presses Enter + document.addEventListener('submit', function(e) { e.preventDefault(); }, false); + + // If reloaded, do the search or mark again, depending on the current url parameters + doSearchOrMarkFromUrl(); + } + + function unfocusSearchbar() { + // hacky, but just focusing a div only works once + var tmp = document.createElement('input'); + tmp.setAttribute('style', 'position: absolute; opacity: 0;'); + searchicon.appendChild(tmp); + tmp.focus(); + tmp.remove(); + } + + // On reload or browser history backwards/forwards events, parse the url and do search or mark + function doSearchOrMarkFromUrl() { + // Check current URL for search request + var url = parseURL(window.location.href); + if (url.params.hasOwnProperty(URL_SEARCH_PARAM) + && url.params[URL_SEARCH_PARAM] != "") { + showSearch(true); + searchbar.value = decodeURIComponent( + (url.params[URL_SEARCH_PARAM]+'').replace(/\+/g, '%20')); + searchbarKeyUpHandler(); // -> doSearch() + } else { + showSearch(false); + } + + if (url.params.hasOwnProperty(URL_MARK_PARAM)) { + var words = decodeURIComponent(url.params[URL_MARK_PARAM]).split(' '); + marker.mark(words, { + exclude: mark_exclude + }); + + var markers = document.querySelectorAll("mark"); + function hide() { + for (var i = 0; i < markers.length; i++) { + markers[i].classList.add("fade-out"); + window.setTimeout(function(e) { marker.unmark(); }, 300); + } + } + for (var i = 0; i < markers.length; i++) { + markers[i].addEventListener('click', hide); + } + } + } + + // Eventhandler for keyevents on `document` + function globalKeyHandler(e) { + if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || e.target.type === 'textarea' || e.target.type === 'text' || !hasFocus() && /^(?:input|select|textarea)$/i.test(e.target.nodeName)) { return; } + + if (e.keyCode === ESCAPE_KEYCODE) { + e.preventDefault(); + searchbar.classList.remove("active"); + setSearchUrlParameters("", + (searchbar.value.trim() !== "") ? "push" : "replace"); + if (hasFocus()) { + unfocusSearchbar(); + } + showSearch(false); + marker.unmark(); + } else if (!hasFocus() && e.keyCode === SEARCH_HOTKEY_KEYCODE) { + e.preventDefault(); + showSearch(true); + window.scrollTo(0, 0); + searchbar.select(); + } else if (hasFocus() && e.keyCode === DOWN_KEYCODE) { + e.preventDefault(); + unfocusSearchbar(); + searchresults.firstElementChild.classList.add("focus"); + } else if (!hasFocus() && (e.keyCode === DOWN_KEYCODE + || e.keyCode === UP_KEYCODE + || e.keyCode === SELECT_KEYCODE)) { + // not `:focus` because browser does annoying scrolling + var focused = searchresults.querySelector("li.focus"); + if (!focused) return; + e.preventDefault(); + if (e.keyCode === DOWN_KEYCODE) { + var next = focused.nextElementSibling; + if (next) { + focused.classList.remove("focus"); + next.classList.add("focus"); + } + } else if (e.keyCode === UP_KEYCODE) { + focused.classList.remove("focus"); + var prev = focused.previousElementSibling; + if (prev) { + prev.classList.add("focus"); + } else { + searchbar.select(); + } + } else { // SELECT_KEYCODE + window.location.assign(focused.querySelector('a')); + } + } + } + + function showSearch(yes) { + if (yes) { + search_wrap.classList.remove('hidden'); + searchicon.setAttribute('aria-expanded', 'true'); + } else { + search_wrap.classList.add('hidden'); + searchicon.setAttribute('aria-expanded', 'false'); + var results = searchresults.children; + for (var i = 0; i < results.length; i++) { + results[i].classList.remove("focus"); + } + } + } + + function showResults(yes) { + if (yes) { + searchresults_outer.classList.remove('hidden'); + } else { + searchresults_outer.classList.add('hidden'); + } + } + + // Eventhandler for search icon + function searchIconClickHandler() { + if (search_wrap.classList.contains('hidden')) { + showSearch(true); + window.scrollTo(0, 0); + searchbar.select(); + } else { + showSearch(false); + } + } + + // Eventhandler for keyevents while the searchbar is focused + function searchbarKeyUpHandler() { + var searchterm = searchbar.value.trim(); + if (searchterm != "") { + searchbar.classList.add("active"); + doSearch(searchterm); + } else { + searchbar.classList.remove("active"); + showResults(false); + removeChildren(searchresults); + } + + setSearchUrlParameters(searchterm, "push_if_new_search_else_replace"); + + // Remove marks + marker.unmark(); + } + + // Update current url with ?URL_SEARCH_PARAM= parameter, remove ?URL_MARK_PARAM and #heading-anchor . + // `action` can be one of "push", "replace", "push_if_new_search_else_replace" + // and replaces or pushes a new browser history item. + // "push_if_new_search_else_replace" pushes if there is no `?URL_SEARCH_PARAM=abc` yet. + function setSearchUrlParameters(searchterm, action) { + var url = parseURL(window.location.href); + var first_search = ! url.params.hasOwnProperty(URL_SEARCH_PARAM); + if (searchterm != "" || action == "push_if_new_search_else_replace") { + url.params[URL_SEARCH_PARAM] = searchterm; + delete url.params[URL_MARK_PARAM]; + url.hash = ""; + } else { + delete url.params[URL_MARK_PARAM]; + delete url.params[URL_SEARCH_PARAM]; + } + // A new search will also add a new history item, so the user can go back + // to the page prior to searching. A updated search term will only replace + // the url. + if (action == "push" || (action == "push_if_new_search_else_replace" && first_search) ) { + history.pushState({}, document.title, renderURL(url)); + } else if (action == "replace" || (action == "push_if_new_search_else_replace" && !first_search) ) { + history.replaceState({}, document.title, renderURL(url)); + } + } + + function doSearch(searchterm) { + + // Don't search the same twice + if (current_searchterm == searchterm) { return; } + else { current_searchterm = searchterm; } + + if (searchindex == null) { return; } + + // Do the actual search + var results = searchindex.search(searchterm, search_options); + var resultcount = Math.min(results.length, results_options.limit_results); + + // Display search metrics + searchresults_header.innerText = formatSearchMetric(resultcount, searchterm); + + // Clear and insert results + var searchterms = searchterm.split(' '); + removeChildren(searchresults); + for(var i = 0; i < resultcount ; i++){ + var resultElem = document.createElement('li'); + resultElem.innerHTML = formatSearchResult(results[i], searchterms); + searchresults.appendChild(resultElem); + } + + // Display results + showResults(true); + } + + fetch(path_to_root + 'searchindex.json') + .then(response => response.json()) + .then(json => init(json)) + .catch(error => { // Try to load searchindex.js if fetch failed + var script = document.createElement('script'); + script.src = path_to_root + 'searchindex.js'; + script.onload = () => init(window.search); + document.head.appendChild(script); + }); + + // Exported functions + search.hasFocus = hasFocus; +})(window.search); diff --git a/v1.5.24/searchindex.js b/v1.5.24/searchindex.js new file mode 100644 index 000000000..f461fed5c --- /dev/null +++ b/v1.5.24/searchindex.js @@ -0,0 +1 @@ +Object.assign(window.search, {"doc_urls":["introduction.html#claircore","getting_started.html#getting-started","getting_started/libindex_usage.html#libindex-usage","getting_started/libindex_usage.html#usage","getting_started/libindex_usage.html#options","getting_started/libindex_usage.html#construction","getting_started/libindex_usage.html#indexing","getting_started/libindex_usage.html#state","getting_started/libindex_usage.html#affectedmanifests","getting_started/libvuln_usage.html#libvuln-usage","getting_started/libvuln_usage.html#usage","getting_started/libvuln_usage.html#options","getting_started/libvuln_usage.html#construction","getting_started/libvuln_usage.html#scanning","getting_started/libvuln_usage.html#updates-api","concepts.html#concepts","concepts/vulnerability_matching.html#vulnerability-matching","concepts/indexer_architecture.html#indexer","concepts/indexer_architecture.html#states","concepts/indexer_architecture.html#data-model","concepts/indexer_architecture.html#http-resources","concepts/matcher_architecture.html#matcher-architecture","concepts/matcher_architecture.html#http-resources","concepts/severity_mapping.html#severity-mapping","concepts/severity_mapping.html#claircore-severity-strings","concepts/severity_mapping.html#alpine-mapping","concepts/severity_mapping.html#aws-mapping","concepts/severity_mapping.html#debian-mapping","concepts/severity_mapping.html#oracle-mapping","concepts/severity_mapping.html#rhel-mapping","concepts/severity_mapping.html#suse-mapping","concepts/severity_mapping.html#ubuntu-mapping","concepts/severity_mapping.html#photon-mapping","concepts/severity_mapping.html#osv-mapping","concepts/severity_mapping.html#cvssv3","concepts/severity_mapping.html#cvssv2","concepts/updater_defaults.html#updaters-and-defaults","concepts/updater_defaults.html#http-resources","howto.html#how-tos","howto/add_dist.html#adding-distribution-and-language-support","howto/add_dist.html#implementing-an-updater","howto/add_dist.html#implementing-a-package-scanner","howto/add_dist.html#implementing-a-distribution-scanner","howto/add_dist.html#implementing-a-repository-scanner","howto/add_dist.html#implementing-a-coalescer","howto/add_dist.html#implementing-or-adding-to-an-ecosystem","howto/add_dist.html#alternative-implementations","howto/add_dist.html#getting-help","reference.html#reference","reference/coalescer.html#coalescer","reference/configurable_scanner.html#configurablescanner","reference/distribution_scanner.html#distribution-scanner","reference/ecosystem.html#ecosystem","reference/index_report.html#index-report","reference/indexer_store.html#indexer-store","reference/matcher_store.html#matcher-store","reference/manifest.html#manifest","reference/matcher.html#matcher","reference/package_scanner.html#package-scanner","reference/remote_matcher.html#remotematcher","reference/repository_scanner.html#repository-scanner","reference/resolver.html#resolver","reference/rpcscanner.html#rpcscanner","reference/updater.html#updater","reference/updatersetfactory.html#updatersetfactory","reference/version_filter.html#versionfilter","reference/versioned_scanner.html#versioned-scanner","reference/vulnerability_report.html#vulnerability-report","contributor.html#contributors","CONTRIBUTING.html#how-to-contribute","CONTRIBUTING.html#testing","CONTRIBUTING.html#pull-requests","CONTRIBUTING.html#conventions","contributor/changelog.html#basics-of-git-notes","contributor/changelog.html#helper-scripts","contributor/changelog.html#formatting","contributor/local-dev.html#local-development","contributor/local-dev.html#usage","contributor/local-dev.html#tests","contributor/logging.html#logging","contributor/logging.html#how-to-log","contributor/logging.html#adding-context","contributor/logging.html#logging-style","contributor/misc.html","contributor/tests.html#tests","contributor/tests.html#caching"],"index":{"documentStore":{"docInfo":{"0":{"body":117,"breadcrumbs":2,"title":1},"1":{"body":11,"breadcrumbs":4,"title":2},"10":{"body":10,"breadcrumbs":5,"title":1},"11":{"body":208,"breadcrumbs":5,"title":1},"12":{"body":37,"breadcrumbs":5,"title":1},"13":{"body":50,"breadcrumbs":5,"title":1},"14":{"body":136,"breadcrumbs":6,"title":2},"15":{"body":16,"breadcrumbs":2,"title":1},"16":{"body":66,"breadcrumbs":5,"title":2},"17":{"body":34,"breadcrumbs":4,"title":1},"18":{"body":83,"breadcrumbs":4,"title":1},"19":{"body":98,"breadcrumbs":5,"title":2},"2":{"body":28,"breadcrumbs":6,"title":2},"20":{"body":19,"breadcrumbs":5,"title":2},"21":{"body":118,"breadcrumbs":5,"title":2},"22":{"body":22,"breadcrumbs":5,"title":2},"23":{"body":36,"breadcrumbs":5,"title":2},"24":{"body":18,"breadcrumbs":6,"title":3},"25":{"body":14,"breadcrumbs":5,"title":2},"26":{"body":18,"breadcrumbs":5,"title":2},"27":{"body":20,"breadcrumbs":5,"title":2},"28":{"body":20,"breadcrumbs":5,"title":2},"29":{"body":20,"breadcrumbs":5,"title":2},"3":{"body":10,"breadcrumbs":5,"title":1},"30":{"body":20,"breadcrumbs":5,"title":2},"31":{"body":22,"breadcrumbs":5,"title":2},"32":{"body":18,"breadcrumbs":5,"title":2},"33":{"body":21,"breadcrumbs":5,"title":2},"34":{"body":18,"breadcrumbs":4,"title":1},"35":{"body":13,"breadcrumbs":4,"title":1},"36":{"body":4,"breadcrumbs":5,"title":2},"37":{"body":41,"breadcrumbs":5,"title":2},"38":{"body":12,"breadcrumbs":2,"title":1},"39":{"body":65,"breadcrumbs":9,"title":4},"4":{"body":208,"breadcrumbs":5,"title":1},"40":{"body":138,"breadcrumbs":7,"title":2},"41":{"body":114,"breadcrumbs":8,"title":3},"42":{"body":89,"breadcrumbs":8,"title":3},"43":{"body":48,"breadcrumbs":8,"title":3},"44":{"body":177,"breadcrumbs":7,"title":2},"45":{"body":154,"breadcrumbs":8,"title":3},"46":{"body":43,"breadcrumbs":7,"title":2},"47":{"body":26,"breadcrumbs":7,"title":2},"48":{"body":35,"breadcrumbs":2,"title":1},"49":{"body":119,"breadcrumbs":3,"title":1},"5":{"body":29,"breadcrumbs":5,"title":1},"50":{"body":73,"breadcrumbs":4,"title":1},"51":{"body":31,"breadcrumbs":5,"title":2},"52":{"body":93,"breadcrumbs":3,"title":1},"53":{"body":265,"breadcrumbs":5,"title":2},"54":{"body":962,"breadcrumbs":5,"title":2},"55":{"body":1231,"breadcrumbs":5,"title":2},"56":{"body":49,"breadcrumbs":3,"title":1},"57":{"body":115,"breadcrumbs":3,"title":1},"58":{"body":54,"breadcrumbs":5,"title":2},"59":{"body":51,"breadcrumbs":4,"title":1},"6":{"body":122,"breadcrumbs":5,"title":1},"60":{"body":22,"breadcrumbs":5,"title":2},"61":{"body":54,"breadcrumbs":3,"title":1},"62":{"body":95,"breadcrumbs":4,"title":1},"63":{"body":700,"breadcrumbs":3,"title":1},"64":{"body":86,"breadcrumbs":5,"title":1},"65":{"body":67,"breadcrumbs":4,"title":1},"66":{"body":87,"breadcrumbs":5,"title":2},"67":{"body":136,"breadcrumbs":5,"title":2},"68":{"body":11,"breadcrumbs":2,"title":1},"69":{"body":21,"breadcrumbs":3,"title":1},"7":{"body":120,"breadcrumbs":5,"title":1},"70":{"body":57,"breadcrumbs":3,"title":1},"71":{"body":84,"breadcrumbs":4,"title":2},"72":{"body":55,"breadcrumbs":3,"title":1},"73":{"body":79,"breadcrumbs":5,"title":3},"74":{"body":44,"breadcrumbs":4,"title":2},"75":{"body":48,"breadcrumbs":3,"title":1},"76":{"body":7,"breadcrumbs":5,"title":2},"77":{"body":29,"breadcrumbs":4,"title":1},"78":{"body":44,"breadcrumbs":4,"title":1},"79":{"body":27,"breadcrumbs":3,"title":1},"8":{"body":49,"breadcrumbs":5,"title":1},"80":{"body":0,"breadcrumbs":3,"title":1},"81":{"body":23,"breadcrumbs":4,"title":2},"82":{"body":179,"breadcrumbs":4,"title":2},"83":{"body":38,"breadcrumbs":2,"title":1},"84":{"body":36,"breadcrumbs":3,"title":1},"85":{"body":26,"breadcrumbs":3,"title":1},"9":{"body":20,"breadcrumbs":6,"title":2}},"docs":{"0":{"body":"Claircore is the engine behind the Clair v4 container security solution. The Claircore package exports our domain models, interfaces necessary to plug into our business logic, and a default set of implementations. This default set of implementations define our support matrix and consists of the following distributions and languages: Ubuntu Debian RHEL Red Hat Container First content SUSE Oracle Alpine AWS Linux VMWare Photon Python Java Go Ruby Claircore relies on PostgreSQL for its persistence and the library will handle migrations if configured to do so. The diagram below is a high level overview of Claircore's architecture. graph LR\nsubgraph Indexer\nim[Image Manifest]\nlibindex[Libindex]\niir[IndexReport]\nim --> libindex --> iir\nend\niir -.-> db[(Database)] graph LR\nsubgraph Matcher\nmir[IndexReport]\nlibvuln[Libvuln]\nvr[VulnerabilityReport]\nmir --> libvuln --> vr\nend\ndb[(Database)] -.-> mir When a claircore.Manifest is submitted to Libindex, the library will index its constituent parts and create a report with its findings. When a claircore.IndexReport is provided to Libvuln, the library will discover vulnerabilities affecting it and generate a claircore.VulnerabilityReport.","breadcrumbs":"Introduction » Claircore","id":"0","title":"Claircore"},"1":{"body":"The following documentation helps a beginner learn to use Claircore. Libindex Usage Libvuln Usage","breadcrumbs":"Getting Started » Getting Started","id":"1","title":"Getting Started"},"10":{"body":"Libvuln is runtime constructed via the libvuln.New method. New requires a libvuln.Opts struct.","breadcrumbs":"Getting Started » Libvuln Usage » Usage","id":"10","title":"Usage"},"11":{"body":"package libvuln // import \"github.com/quay/claircore/libvuln\" type Options struct { // Store is the interface used to persist and retrieve vulnerabilites // for of matching. Store datastore.MatcherStore // Locker provides system-wide locks for the updater subsystem. If the // matching work is distributed the lock should be backed by a distributed // store. Locker LockSource // An interval on which Libvuln will check for new security database // updates. // // This duration will have jitter added to it, to help with smearing load on // installations. UpdateInterval time.Duration // A slice of strings representing which updaters libvuln will create. // // If nil all default UpdaterSets will be used. // // The following sets are supported: // \"alpine\" // \"aws\" // \"debian\" // \"oracle\" // \"photon\" // \"pyupio\" // \"rhel\" // \"suse\" // \"ubuntu\" UpdaterSets []string // A list of out-of-tree updaters to run. // // This list will be merged with any defined UpdaterSets. // // If you desire no updaters to run do not add an updater // into this slice. Updaters []driver.Updater // A slice of strings representing which // matchers will be used. // // If nil all default Matchers will be used // // The following names are supported by default: // \"alpine\" // \"aws\" // \"debian\" // \"oracle\" // \"photon\" // \"python\" // \"rhel\" // \"suse\" // \"ubuntu\" MatcherNames []string // Config holds configuration blocks for MatcherFactories and Matchers, // keyed by name. MatcherConfigs map[string]driver.MatcherConfigUnmarshaler // A list of out-of-tree matchers you'd like libvuln to // use. // // This list will me merged with the default matchers. Matchers []driver.Matcher // Enrichers is a slice of enrichers to use with all VulnerabilityReport // requests. Enrichers []driver.Enricher // UpdateWorkers controls the number of update workers running concurrently. // If less than or equal to zero, a sensible default will be used. UpdateWorkers int // UpdateRetention controls the number of updates to retain between // garbage collection periods. // // The lowest possible value is 2 in order to compare updates for notification // purposes. UpdateRetention int // If set to true, there will not be a goroutine launched to periodically // run updaters. DisableBackgroundUpdates bool // UpdaterConfigs is a map of functions for configuration of Updaters. UpdaterConfigs map[string]driver.ConfigUnmarshaler // Client is an http.Client for use by all updaters. // // Must be set. Client *http.Client\n} The above outlines the relevant bits of the Opts structure.","breadcrumbs":"Getting Started » Libvuln Usage » Options","id":"11","title":"Options"},"12":{"body":"Constructing Libvuln is straight forward. opts := new(libvuln.Options) // Populate with desired settings... lib, err := libvuln.New(ctx, opts) if err != nil { panic(err) } defer lib.Close(ctx) The constructing code should provide a valid Context tied to some lifetime. On construction, New will block until the security databases are initialized. Expect some delay before this method returns.","breadcrumbs":"Getting Started » Libvuln Usage » Construction","id":"12","title":"Construction"},"13":{"body":"Scanning is the process of taking a claircore.IndexReport comprised of a Manifest's content and determining which vulnerabilities affect the Manifest. A claircore.VulnerabilityReport will be returned with these details. m := new(claircore.Manifest) // Populate somehow ... ir, err := indexer.Index(ctx, m) if err != nil { panic(err) } vr, err := lib.Scan(ctx, ir) if err != nil { panic(err) } In the above example, Libindex is used to generate a claircore.IndexReport. The index report is then provided to Libvuln and a subsequent vulnerability report identifying any vulnerabilities affecting the manifest is returned.","breadcrumbs":"Getting Started » Libvuln Usage » Scanning","id":"13","title":"Scanning"},"14":{"body":"By default, Libvuln manages a set of long running updaters responsible for periodically fetching and loading new advisory contents into its database. The Updates API allows a client to view and manipulate aspects of the update operations that updaters perform. In this getting started guide, we will only cover the two methods most interesting to new users. UpdateOperations This API provides a list of recent update operations performed by implemented updaters. The UpdateOperation slice returned will be sorted by latest timestamp descending. ops, err := lib.UpdateOperations(ctx, `updater`) if err != nil { panic(err) } for updater, ops := range ops { fmt.Printf(\"ops for updater %s, %+v\", updater, ops) } UpdateDiff Mostly used by the Clair v4 notification subsystem, this endpoint will provide the caller with any removed or added vulnerabilities between two update operations. Typically a diff takes places against two versions of the same data source. This is useful to inform downstream applications what new vulnerabilities have entered the system. ops, err := lib.UpdateOperations(ctx, `updater`) if err != nil { panic(err) } for upd, ops := range ops { fmt.Printf(\"updater: %v\", upd) diff, err := lib.UpdateDiff(ctx, ops[1].Ref, ops[0].Ref) if err != nil { panic(err) } for _, vuln := range diff.Added { fmt.Printf(\"vuln %+v added in %v\", vuln, diff.Cur.Ref) } }","breadcrumbs":"Getting Started » Libvuln Usage » Updates API","id":"14","title":"Updates API"},"15":{"body":"The following sections give a conceptual overview of how Claircore works internally. Vulnerability Matching Indexer Architecture Matching Architecture Severity Mapping","breadcrumbs":"Concepts » Concepts","id":"15","title":"Concepts"},"16":{"body":"The following describes a successful scan. Updaters have ran either in the background on an interval or an offline loader has been ran. A Manifest is provided to Libindex. Libindex fetches all the layers, runs all scanner types on each layer, persists all artifacts found in each layer, and computes an IndexReport. A IndexReport is provided to Libvuln. Libvuln creates a stream of IndexRecord structs from the IndexReport and concurrently streams these structs to each configured Matcher. Libvuln computes a VulnerabilityReport aggregating all vulnerabilities discovered by all configured Matcher implementations. Sometime later the security advisory database is updated and a new request to Libvuln will present updated vulnerability data.","breadcrumbs":"Concepts » Vulnerability Matching » Vulnerability Matching","id":"16","title":"Vulnerability Matching"},"17":{"body":"claircore/indexer The Indexer package performs Libindex's heavy lifting. It is responsible for retreiving Manifest layers, parsing the contents of each layer, and computing an IndexReport. To perform this action in incremental steps the Indexer is implemented as a finite state machine. At each state transition the Indexer persists an updated IndexReport to its datastore.","breadcrumbs":"Concepts » Indexer Architecture » Indexer","id":"17","title":"Indexer"},"18":{"body":"The following diagram expresses the possible states of the Indexer: stateDiagram-v2 state if_indexed <<choice>> [*] --> CheckManifest CheckManifest --> if_indexed if_indexed --> [*]: Indexed if_indexed --> FetchLayers: Unindexed FetchLayers --> ScanLayers ScanLayers --> Coalesce Coalesce --> IndexManifest IndexManifest --> IndexFinished IndexFinished --> [*]\n%% These notes make the diagram unreadable :/\n%% note left of CheckManifest: Determine if this manifest has been indexed previously.\n%% note right of FetchLayers: Determine which layers need to be indexed and fetch them.\n%% note right of ScanLayers: Concurrently run needed Indexers on layers.\n%% note right of Coalesce: Compute the final contents of the container image.\n%% note right of IndexManifest: Associate all the discoved data.\n%% note right of IndexFinished: Persist the results.","breadcrumbs":"Concepts » Indexer Architecture » States","id":"18","title":"States"},"19":{"body":"The Indexer data model focuses on content addressable hashes as primary keys, the deduplication of package/distribution/repostitory information, and the recording of scan artifacts. Scan artifacts are unique artifacts found within a layer which point to a deduplicated general package/distribution/repository record. The following diagram outlines the current Indexer data model. %%{init: {\"er\":{\"layoutDirection\":\"RL\"}} }%%\nerDiagram ManifestLayer many to 1 Manifest: \"\" ManifestLayer many to 1 Layer: \"\" ScannedLayer many to 1 Layer: \"\" ScannedLayer many to 1 Scanner: \"\" ScannedManifest many to 1 Manifest: \"\" ScannedManifest many to 1 Scanner: \"\" TYPE_ScanArtifact 1 to 1 Layer: \"\" TYPE_ScanArtifact 1 to 1 Scanner: \"\" TYPE_ScanArtifact 1 to 1 TYPE: \"\" ManifestIndex many to 1 Manifest: \"\" ManifestIndex 1 to zero or one TYPE: \"\" IndexReport 1 to 1 Manifest: \"cached result\" Note that TYPE stands in for each of the Indexer types (i.e. Package, Repository, etc.).","breadcrumbs":"Concepts » Indexer Architecture » Data Model","id":"19","title":"Data Model"},"2":{"body":"Libindex is the Go package responsible for fetching container image layers, identifying packages, distributions, and repositories within these layers, and computing a final coalesced Index Report. An Index Report is primarily used as input to Libvuln's vulnerability matching process.","breadcrumbs":"Getting Started » Libindex Usage » Libindex Usage","id":"2","title":"Libindex Usage"},"20":{"body":"Indexers as currently built may make network requests. This is an outstanding issue. The following are the URLs used. https://search.maven.org/solrsearch/select\nhttps://catalog.redhat.com/api/containers/\nhttps://access.redhat.com/security/data/metrics/repository-to-cpe.json\nhttps://access.redhat.com/security/data/metrics/container-name-repos-map.json","breadcrumbs":"Concepts » Indexer Architecture » HTTP Resources","id":"20","title":"HTTP Resources"},"21":{"body":"claircore/internal/matcher claircore/libvuln/driver The Matcher architecture is based on a data flow application. graph TD start[Libvuln.Scan] finish[Merge into VulnerabilityReport] start ---> RemoteMatcher & Matcher ---> finish subgraph RemoteMatcher ra[Filter interested packages] api[Make API calls] rv[Decide vulnerability] ra --> api --> rv end subgraph Matcher dbv[Check versions in-database] ma[Filter interested packages] adv[Retrive vulnerabilty information] mv[Deicide vulnerability] ma --> adv --> mv adv -.-> dbv -.-> mv end When Libvuln's Scan method is called with an IndexReport it will begin the process of matching container contents with vulnerabilities. Each configured Matcher will be instantiated concurrently. Depending on the interfaces the Matcher implements, one of the possible data flows will occur in the diagram above. The provided IndexReport will be unpacked into a stream of IndexRecord structs. Each Matcher will evaluate each record in the stream and determine if the IndexRecord is vulnerable to a security advisory in their responsible databases. Once each Matcher returns the set of vulnerabities, Libvuln will merge the results into a VulnerabilityReport and return this to the client.","breadcrumbs":"Concepts » Matching Architecture » Matcher Architecture","id":"21","title":"Matcher Architecture"},"22":{"body":"NOTE : Remote matchers are being considered for removal. \"Remote matchers\" may make HTTP requests during the matcher flow. These requests are time-bound and errors are not reported. The following are the URLs used.","breadcrumbs":"Concepts » Matching Architecture » HTTP Resources","id":"22","title":"HTTP Resources"},"23":{"body":"Claircore will normalize a security databases's severity string to a set of defined values. Clients may use the NormalizedSeverity field on a claircore.Vulnerability to react to vulnerability severities without needing to know each security database's severity strings. All strings used in the mapping tables are identical to the strings found within the relevant security database.","breadcrumbs":"Concepts » Severity Mapping » Severity Mapping","id":"23","title":"Severity Mapping"},"24":{"body":"The following are severity strings Claircore will normalize others to. Clients can guarantee one of these strings will be associated with a claircore.Vulnerability. Unknown Negligible Low Medium High Critical","breadcrumbs":"Concepts » Severity Mapping » Claircore Severity Strings","id":"24","title":"Claircore Severity Strings"},"25":{"body":"The Alpine SecDB database does not provide severity information. All vulnerability severities will be Unknown. Alpine Severity Claircore Severity * Unknown","breadcrumbs":"Concepts » Severity Mapping » Alpine Mapping","id":"25","title":"Alpine Mapping"},"26":{"body":"The AWS UpdateInfo database provides severity information. AWS Severity Claircore Severity low Low medium Medium important High critical Critical","breadcrumbs":"Concepts » Severity Mapping » AWS Mapping","id":"26","title":"AWS Mapping"},"27":{"body":"The Debian security tracker data provides severity information. Debian Severity Claircore Severity unimportant Low low Medium medium High high Critical * Unknown","breadcrumbs":"Concepts » Severity Mapping » Debian Mapping","id":"27","title":"Debian Mapping"},"28":{"body":"The Oracle OVAL database provides severity information. Oracle Severity Claircore Severity N/A Unknown LOW Low MODERATE Medium IMPORTANT High CRITICAL Critical","breadcrumbs":"Concepts » Severity Mapping » Oracle Mapping","id":"28","title":"Oracle Mapping"},"29":{"body":"The RHEL OVAL database provides severity information. RHEL Severity Claircore Severity None Unknown Low Low Moderate Medium Important High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » RHEL Mapping","id":"29","title":"RHEL Mapping"},"3":{"body":"Libindex is runtime constructed via the libindex.New method. New requires an libindex.Opts struct.","breadcrumbs":"Getting Started » Libindex Usage » Usage","id":"3","title":"Usage"},"30":{"body":"The SUSE OVAL database provides severity information. SUSE Severity Claircore Severity None Unknown Low Low Moderate Medium Important High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » SUSE Mapping","id":"30","title":"SUSE Mapping"},"31":{"body":"The Ubuntu OVAL database provides severity information. Ubuntu Severity Claircore Severity Untriaged Unknown Negligible Negligible Low Low Medium Medium High High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » Ubuntu Mapping","id":"31","title":"Ubuntu Mapping"},"32":{"body":"The Photon OVAL database provides severity information. Photon Severity Claircore Severity Low Low Moderate Medium Important High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » Photon Mapping","id":"32","title":"Photon Mapping"},"33":{"body":"OSV provides severity information via CVSS vectors, when applicable. These are normalized according to the NVD qualitative rating scale . If both v3 and v2 vectors are present, v3 is preferred.","breadcrumbs":"Concepts » Severity Mapping » OSV Mapping","id":"33","title":"OSV Mapping"},"34":{"body":"Base Score Claircore Severity 0.0 Negligible 0.1-3.9 Low 4.0-6.9 Medium 7.0-8.9 High 9.0-10.0 Critical","breadcrumbs":"Concepts » Severity Mapping » CVSSv3","id":"34","title":"CVSSv3"},"35":{"body":"Base Score Claircore Severity 0.0-3.9 Low 4.0-6.9 Medium 7.0-10.0 High","breadcrumbs":"Concepts » Severity Mapping » CVSSv2","id":"35","title":"CVSSv2"},"36":{"body":"The default updaters are tracked in updater/defaults/defaults.go.","breadcrumbs":"Concepts » Updater Defaults » Updaters and Defaults","id":"36","title":"Updaters and Defaults"},"37":{"body":"The following are the HTTP hosts and paths that Clair will attempt to talk to in a default configuration. This list is non-exhaustive, as some servers will issue redirects and some request URLs are constructed dynamically. https://secdb.alpinelinux.org/\nhttp://repo.us-west-2.amazonaws.com/2018.03/updates/x86_64/mirror.list\nhttps://cdn.amazonlinux.com/2/core/latest/x86_64/mirror.list\nhttps://cdn.amazonlinux.com/al2023/core/mirrors/latest/x86_64/mirror.list\nhttps://deb.debian.org/\nhttps://security-tracker.debian.org/tracker/data/json\nhttps://nvd.nist.gov/feeds/json/cve/1.1/\nhttps://linux.oracle.com/security/oval/com.oracle.elsa-*.xml.bz2\nhttps://packages.vmware.com/photon/photon_oval_definitions/\nhttps://access.redhat.com/security/data/metrics/cvemap.xml\nhttps://access.redhat.com/security/cve/\nhttps://access.redhat.com/security/data/oval/v2/PULP_MANIFEST\nhttps://support.novell.com/security/oval/\nhttps://api.launchpad.net/1.0/\nhttps://security-metadata.canonical.com/oval/com.ubuntu.*.cve.oval.xml\nhttps://osv-vulnerabilities.storage.googleapis.com/","breadcrumbs":"Concepts » Updater Defaults » HTTP Resources","id":"37","title":"HTTP Resources"},"38":{"body":"The following sections provide instructions on accomplish specific goals in Claircore. Adding Distribution Or Language Support","breadcrumbs":"How Tos » How Tos","id":"38","title":"How Tos"},"39":{"body":"Note: If terms in this document sound foreign check out Getting Started to acquaint yourself with \"indexing\", \"scanning\", and \"matching\" The claircore team is always open to adding more distributions and languages to the library. Generally, distributions or languages must provide a security tracker. All officially supported distributions and languages provide a database of security vulnerabilities. These databases are maintained by the distribution or language developers and reflect up-to-date CVE and advisory data for their packages. If your distribution or language does not provide a security tracker or piggy-backs off another distribution's start an issue in our Github issue tracker to discuss further.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Adding Distribution And Language Support","id":"39","title":"Adding Distribution And Language Support"},"4":{"body":"package libindex // import \"github.com/quay/claircore/libindex\" type Options struct { // Store is the interface used to persist and retrieve results of indexing. Store indexer.Store // Locker provides system-wide locks. If the indexing work is distributed the // lock should be backed by a distributed store. Locker LockSource // FetchArena is an interface tied to the lifecycle of LibIndex to enable management // of the filesystem while separate processes are dealing with layers, for example: // you can reference count downloaded layer files to avoid racing. FetchArena indexer.FetchArena // ScanLockRetry specifies how often we should try to acquire a lock for scanning a // given manifest if lock is taken. ScanLockRetry time.Duration // LayerScanConcurrency specifies the number of layers to be scanned in parallel. LayerScanConcurrency int // LayerFetchOpt is unused and kept here for backwards compatibility. LayerFetchOpt interface{} // NoLayerValidation controls whether layers are checked to actually be // content-addressed. With this option toggled off, callers can trigger // layers to be indexed repeatedly by changing the identifier in the // manifest. NoLayerValidation bool // ControllerFactory provides an alternative method for creating a scanner during libindex runtime // if nil the default factory will be used. useful for testing purposes ControllerFactory ControllerFactory // Ecosystems a list of ecosystems to use which define which package databases and coalescing methods we use Ecosystems []*indexer.Ecosystem // ScannerConfig holds functions that can be passed into configurable // scanners. They're broken out by kind, and only used if a scanner // implements the appropriate interface. // // Providing a function for a scanner that's not expecting it is not a fatal // error. ScannerConfig struct { Package, Dist, Repo, File map[string]func(interface{}) error } Resolvers []indexer.Resolver\n} Options are dependencies and options for constructing an instance of libindex The above outlines the relevant bits of the Options structure. Store is required needs to be an object that satisfies the indexer.Store interface. Locker is required and needs to satisfy the LockSource interface. FetchArena is required and needs to satify the FetchArena interface. Providing a nil \"Ecosystems\" slice will supply the default set, instructing Libindex to index for all supported content in a layer, and is typically desired.","breadcrumbs":"Getting Started » Libindex Usage » Options","id":"4","title":"Options"},"40":{"body":"The first step to adding your distribution or language to claircore is getting your security tracker's data ingested by Libvuln. The Updater interfaces are responsible for this task. An implementer must consider several design points: Does the security database provide enough information to parse each entry into a claircore.Vulnerability? Each entry must parse into a claircore.Vulnerability. Each Vulnerability must contain a package and a repository or distribution field. Will the Updater need to be configured at runtime? Your updater may implement the Configurable interface. Your matcher will have its \"Configuration\" method called before use, giving you an opportunity for run time configuration. What fields in a parsed claircore.Vulnerability will be present when indexing layer artifacts. When implementing an updater you must keep in mind how packages/distributions/repositories will be parsed during index. When indexing a layer a common data model must exist between the possible package/distribution/repository and the parsed Vulnerabilitie's package/distribution/repository fields. If you are having trouble figuring out these requirements do not hesitate to reach out to us for help. After you have taken the design points into consideration, you are ready to implement your updater. Typically you will create a new package named after the source you are adding support for. Inside this package you can begin implementing the Updater and Updater Set Factory interfaces. Optionally you may implement the Configurable interface if you need runtime configuration. It will undoubtly be helpful to look at the examples in the \"ubuntu\", \"rhel\", and \"debian\" packages to get yourself started.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing an Updater","id":"40","title":"Implementing an Updater"},"41":{"body":"At this point you hopefully have your Updater working, writing vulnerability data into Libvuln's database. We can now move our attention to package scanning. A package scanner is responsible for taking a claircore.Layer and parsing the contents for a particular package database or set of files inside the provided tar archive. Once the target files are located the package scanner should parse these files into claircore.Packages and return a slice of these data structures. Package scanning is context free, meaning no distribution classification has happened yet. This is because manifests are made up of layers, and a layer which holds a package database may not hold distribution information such as an os-release file. A package scanner need only parse a target package database and return claircore.Packages. You need to implement the Package Scanner interface to achieve this. Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use. Keep in mind that its very common for distributions to utilize an existing package manager such as RPM. If this is the case there's a high likelihood that you can utilize the existing \"rpm\" or \"dpkg\" package scanner implementations.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Package Scanner","id":"41","title":"Implementing a Package Scanner"},"42":{"body":"Once the package scanner is implemented, tested, and working you can begin implementing a Distribution Scanner. Implementing a distribution scanner is a design choice. Distributions and repositories are the way claircore matches packages to vulnerabilities. If your implemented Updater parses vulnerabilities with distribution information you will likely need to implement a distribution scanner. Likewise, if your Updater parses vulnerabilities with repository information (typical with language vulnerabilities) you will likely need to implement a repository scanner. A distribution scanner, like a package scanner, is provided a claircore.Layer. The distribution scanner will parse the provided tar archive exhaustively searching for any clue that this layer was derived from your distribution. If you identify that it is, you should return a common distribution used by your Updater implementation. This ensures that claircore can match the output of your distribution scanner with your parsed vulnerabilities. Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Distribution Scanner","id":"42","title":"Implementing a Distribution Scanner"},"43":{"body":"As mentioned above, implementing a repository scanner is a design choice, often times applicable for language package managers. If your Updater parses vulnerabilities with a repository field you will likely want to implement a repository scanner. A repository scanner is used just like a distribution scanner however you will search for any clues that a layer contains your repository and if so return a common data model identifying the repository. Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Repository Scanner","id":"43","title":"Implementing a Repository Scanner"},"44":{"body":"As you may have noticed, the process of scanning a layer for packages, distribution, and repository information is distinct and separate. At some point, claircore will need to take all the context-free information returned from layer scanners and create a complete view of the manifest. A coalescer performs this computation. It's unlikely you will need to implement your own coalescer. Claircore provides a default \"linux\" coalescer which will work if your package database is rewritten when modified. For example, if a Dockerfile's RUN command causes a change to to dpkg's /var/lib/dpkg/status database, the resulting manifest will have a copy placed in the associated layer. However, if your package database does not fit into this model, implementing a coalescer may be necessary. To implement a coalescer, several details must be understood: Each layer only provides a \"piece\" of the final manifest. Because manifests are comprised of multiple copy-on-write layers, some layers may contain package information, distribution information, repository information, any combination of those, or no information at all. An OS may have a \"dist-upgrade\" performed and the implications of this on the package management system is distribution or language dependent. The coalescer must deal with distribution upgrades in a sane way. If your distribution or language does a dist-upgrade, are all packages bumped? Are they simply left alone? The coalescer must understand what happens and compute the final manifest's content correctly. Packages may be removed and added between layers. When the package database is a regular file on disk, this case is simpler: the database file found in the most recent layer holds the ultimate set of packages for all previous layers. However, in the case where the package database is realized by adding and removing files on disk it becomes trickier. Claircore has no special handling of whiteout files, currently. We will address this in upcoming releases. If your distribution or language cannot utilize a default coalescer, you will need to implement the Coalescer interface","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Coalescer","id":"44","title":"Implementing a Coalescer"},"45":{"body":"An Ecosystem provides a set of coalescers, package scanners, distribution scanners, and repository scanners to Libindex at the time of indexing. Libindex will take the Ecosystem and scan each layer with all provided scanners. When Libindex is ready to coalesce the results of each scanner into an IndexReport the provided coalescer is given the output of the configured scanners. This allows Libindex to segment the input to the coalescing step to particular scanners that a coalescer understands. For instance, if we only wanted a (fictitious) Haskell coalescer to evaluate artifacts returned from a (fictitious) Haskell package and repository scanner we would create an ecosystem similar to: // HaskellScanner returns a configured PackageScanner.\nfunc haskellScanner() indexer.PackageScanner { return nil } // HaskellCoalescer returns a configured Coalescer.\nfunc haskellCoalescer() indexer.Coalescer { return nil } // NewEcosystem provides the set of scanners and coalescers for the haskell\n// ecosystem.\nfunc NewEcosystem(ctx context.Context) *indexer.Ecosystem { return &indexer.Ecosystem{ PackageScanners: func(ctx context.Context) ([]indexer.PackageScanner, error) { return []indexer.PackageScanner{haskellScanner()}, nil }, DistributionScanners: func(ctx context.Context) ([]indexer.DistributionScanner, error) { return []indexer.DistributionScanner{}, nil }, RepositoryScanners: func(ctx context.Context) ([]indexer.RepositoryScanner, error) { return []indexer.RepositoryScanner{}, nil }, Coalescer: func(ctx context.Context) (indexer.Coalescer, error) { return haskellCoalescer(), nil }, }\n} This ensures that Libindex will only provide Haskell artifacts to the Haskell coalescer and avoid calling the coalescer with rpm packages for example. If your distribution uses an already implemented package manager such as \"rpm\" or \"dpkg\", it's likely you will simply add your scanners to the existing ecosystem in one of those packages.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing or Adding To An Ecosystem","id":"45","title":"Implementing or Adding To An Ecosystem"},"46":{"body":"This how-to guide is a \"perfect world\" scenario. Working on claircore has made us realize that this domain is a bit messy. Security trackers are not developed with package managers in mind, security databases do not follow correct specs, distribution maintainers spin their own tools, etc. We understand that supporting your distribution or language may take some bending of claircore's architecture and business logic. If this is the case, start a conversation with us. We are open to design discussions.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Alternative Implementations","id":"46","title":"Alternative Implementations"},"47":{"body":"At this point, you have implemented all the necessary components to integrate your distribution or language with claircore. If you struggle with the design phase or are getting stuck at the implementation phases do not hesitate to reach out to us. Here are some links: Clair SIG Github Issues RedHat Issues","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Getting Help","id":"47","title":"Getting Help"},"48":{"body":"The follow sections provide a reference for developing with Claircore. Important interfaces and structs are outlined. Coalescer Configurable Scanner Distribution Scanner Ecosystem Libindex Store Matcher Package Scanner Remote Scanner Repository Scanner RPC Scanner Updater Set Factory Version Filter Versioned Scanner Resolver","breadcrumbs":"Reference » Reference","id":"48","title":"Reference"},"49":{"body":"A coalescer must compute the final contents of a manifest given the artifacts found at each layer. package indexer // import \"github.com/quay/claircore/indexer\" type Coalescer interface { Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)\n} Coalescer takes a set of layers and creates coalesced IndexReport. A coalesced IndexReport should provide only the packages present in the final container image once all layers were applied. package indexer // import \"github.com/quay/claircore/indexer\" type Coalescer interface { Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)\n} Coalescer takes a set of layers and creates coalesced IndexReport. A coalesced IndexReport should provide only the packages present in the final container image once all layers were applied. package indexer // import \"github.com/quay/claircore/indexer\" type LayerArtifacts struct { Hash claircore.Digest Pkgs []*claircore.Package Dist []*claircore.Distribution // each layer can only have a single distribution Repos []*claircore.Repository Files []claircore.File } LayerArifact aggregates the artifacts found within a layer. A `Coalsecer` implementation is free to determine this computation given the\nartifacts found in a layer. A `Coalescer` is called with a slice of\n`LayerArtifacts` structs. The manifest's layer ordering is preserved in the\nprovided slice.","breadcrumbs":"Reference » Coalescer » Coalescer","id":"49","title":"Coalescer"},"5":{"body":"Constructing Libindex is straight forward. opts := new(libindex.Options) // Populate with desired settings... lib, err := libindex.New(ctx, opts, http.DefaultClient) if err != nil { panic(err) } defer lib.Close(ctx) // Remember to cleanup when done. The constructing code should provide a valid Context tied to some lifetime.","breadcrumbs":"Getting Started » Libindex Usage » Construction","id":"5","title":"Construction"},"50":{"body":"A ConfigurableSanner is an optional interface a Scanner interface may implement. When implemented, the scanner's Configure method will be called with a ConfigDeserializer function. The Scanner may pass its config as an argument to the ConfigDeserializer function to populate the struct. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigDeserializer func(interface{}) error ConfigDeserializer can be thought of as an Unmarshal function with the byte slice provided. This will typically be something like (*json.Decoder).Decode. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigDeserializer func(interface{}) error ConfigDeserializer can be thought of as an Unmarshal function with the byte slice provided. This will typically be something like (*json.Decoder).Decode. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigurableScanner interface { Configure(context.Context, ConfigDeserializer) error } ConfigurableScanner is an interface scanners can implement to receive configuration.","breadcrumbs":"Reference » Configurable Scanner » ConfigurableScanner","id":"50","title":"ConfigurableScanner"},"51":{"body":"A Distribution Scanner should identify any operating system distribution associated with the provided layer. It is OK for no distribution information to be discovered. package indexer // import \"github.com/quay/claircore/indexer\" type DistributionScanner interface { VersionedScanner Scan(context.Context, *claircore.Layer) ([]*claircore.Distribution, error)\n} DistributionScanner reports the Distributions found in a given layer.","breadcrumbs":"Reference » Distribution Scanner » Distribution Scanner","id":"51","title":"Distribution Scanner"},"52":{"body":"An Ecosystem groups together scanners and coalescers which are often used together. Ecosystems are usually defined in a go package that corresponds to a package manager, such as dpkg. See dpkg/ecosystem.go for an example. The Indexer will retrieve artifacts from the provided scanners and provide these scan artifacts to the coalescer in the Ecosystem. package indexer // import \"github.com/quay/claircore/indexer\" type Ecosystem struct { PackageScanners func(ctx context.Context) ([]PackageScanner, error) DistributionScanners func(ctx context.Context) ([]DistributionScanner, error) RepositoryScanners func(ctx context.Context) ([]RepositoryScanner, error) FileScanners func(ctx context.Context) ([]FileScanner, error) Coalescer func(ctx context.Context) (Coalescer, error) Name string\n} Ecosystems group together scanners and a Coalescer which are commonly used together. A typical ecosystem is \"dpkg\" which will use the \"dpkg\" package indexer, the \"os-release\" distribution scanner and the \"apt\" repository scanner. A Controller will scan layers with all scanners present in its configured ecosystems.","breadcrumbs":"Reference » Ecosystem » Ecosystem","id":"52","title":"Ecosystem"},"53":{"body":"An Index Report defines the contents of a manifest. An Index Report can be unpacked into a slice of Index Records, each of which defines a package, distribution, repository tuple. package claircore // import \"github.com/quay/claircore\" type IndexReport struct { // the manifest hash this IndexReport is describing Hash Digest `json:\"manifest_hash\"` // the current state of the index operation State string `json:\"state\"` // all discovered packages in this manifest key'd by package id Packages map[string]*Package `json:\"packages\"` // all discovered distributions in this manifest key'd by distribution id Distributions map[string]*Distribution `json:\"distributions\"` // all discovered repositories in this manifest key'd by repository id Repositories map[string]*Repository `json:\"repository\"` // a list of environment details a package was discovered in key'd by package id Environments map[string][]*Environment `json:\"environments\"` // whether the index operation finished successfully Success bool `json:\"success\"` // an error string in the case the index did not succeed Err string `json:\"err\"` // Files doesn't end up in the json report but needs to be available at post-coalesce Files map[string]File `json:\"-\"`\n} IndexReport provides a database for discovered artifacts in an image. IndexReports make heavy usage of lookup maps to associate information without repetition. func (report *IndexReport) IndexRecords() []*IndexRecord package claircore // import \"github.com/quay/claircore\" type IndexReport struct { // the manifest hash this IndexReport is describing Hash Digest `json:\"manifest_hash\"` // the current state of the index operation State string `json:\"state\"` // all discovered packages in this manifest key'd by package id Packages map[string]*Package `json:\"packages\"` // all discovered distributions in this manifest key'd by distribution id Distributions map[string]*Distribution `json:\"distributions\"` // all discovered repositories in this manifest key'd by repository id Repositories map[string]*Repository `json:\"repository\"` // a list of environment details a package was discovered in key'd by package id Environments map[string][]*Environment `json:\"environments\"` // whether the index operation finished successfully Success bool `json:\"success\"` // an error string in the case the index did not succeed Err string `json:\"err\"` // Files doesn't end up in the json report but needs to be available at post-coalesce Files map[string]File `json:\"-\"`\n} IndexReport provides a database for discovered artifacts in an image. IndexReports make heavy usage of lookup maps to associate information without repetition. func (report *IndexReport) IndexRecords() []*IndexRecord package claircore // import \"github.com/quay/claircore\" type IndexRecord struct { Package *Package Distribution *Distribution Repository *Repository } IndexRecord is an entry in the IndexReport. IndexRecords provide full access to contextual package structures such as\nDistribution and Repository. A list of these can be thought of as an \"unpacked\" IndexReport","breadcrumbs":"Reference » Index Report » Index Report","id":"53","title":"Index Report"},"54":{"body":"The indexer.Store interface defines all necessary persistence methods for Libindex to provide its functionality. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error\n} Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error\n} Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Setter interface { // PersistManifest must store the presence of a manifest and it's layers into the system. // // Typically this will write into identity tables so later methods have a foreign key // to reference and data integrity is applied. PersistManifest(ctx context.Context, manifest claircore.Manifest) error // DeleteManifests removes the manifests indicated by the passed digests // from the backing store. DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error) // SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.\n//\n// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.\nSetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error\n// RegisterPackageScanners registers the provided scanners with the persistence layer.\nRegisterScanners(ctx context.Context, scnrs VersionedScanners) error\n// SetIndexReport persists the current state of the IndexReport.\n//\n// IndexReports maybe in intermediate states to provide feedback for clients. this method should be\n// used to communicate scanning state updates. to signal the scan has completely successfully\n// see SetIndexFinished.\nSetIndexReport(context.Context, *claircore.IndexReport) error\n// SetIndexFinished marks a scan successfully completed.\n//\n// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport\n// must return true.\n//\n// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport\n// in finished state.\nSetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error } Setter interface provides the method set for required marking events, or registering components, associated with an Index operation. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error } Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Setter interface { // PersistManifest must store the presence of a manifest and it's layers into the system. // // Typically this will write into identity tables so later methods have a foreign key // to reference and data integrity is applied. PersistManifest(ctx context.Context, manifest claircore.Manifest) error // DeleteManifests removes the manifests indicated by the passed digests // from the backing store. DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error) // SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner. // // After this method is returned a call to Querier.LayerScanned with the same arguments must return true. SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error // RegisterPackageScanners registers the provided scanners with the persistence layer. RegisterScanners(ctx context.Context, scnrs VersionedScanners) error // SetIndexReport persists the current state of the IndexReport. // // IndexReports maybe in intermediate states to provide feedback for clients. this method should be // used to communicate scanning state updates. to signal the scan has completely successfully // see SetIndexFinished. SetIndexReport(context.Context, *claircore.IndexReport) error // SetIndexFinished marks a scan successfully completed. // // After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport // must return true. // // Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport // in finished state. SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error\n} Setter interface provides the method set for required marking events, or registering components, associated with an Index operation. package indexer // import \"github.com/quay/claircore/indexer\" type Querier interface { // ManifestScanned returns whether the given manifest was scanned by the provided scanners. ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) // LayerScanned returns whether the given layer was scanned by the provided scanner. LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) // PackagesByLayer gets all the packages found in a layer limited by the provided scanners. PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) // DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) // RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) // FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) // IndexReport attempts to retrieve a persisted IndexReport. IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) // AffectedManifests returns a list of manifest digests which the target vulnerability // affects. AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) } Querier interface provides the method set to ascertain indexed artifacts and query whether a layer or manifest has been scanned. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error } Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Setter interface { // PersistManifest must store the presence of a manifest and it's layers into the system. // // Typically this will write into identity tables so later methods have a foreign key // to reference and data integrity is applied. PersistManifest(ctx context.Context, manifest claircore.Manifest) error // DeleteManifests removes the manifests indicated by the passed digests // from the backing store. DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error) // SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner. // // After this method is returned a call to Querier.LayerScanned with the same arguments must return true. SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error // RegisterPackageScanners registers the provided scanners with the persistence layer. RegisterScanners(ctx context.Context, scnrs VersionedScanners) error // SetIndexReport persists the current state of the IndexReport. // // IndexReports maybe in intermediate states to provide feedback for clients. this method should be // used to communicate scanning state updates. to signal the scan has completely successfully // see SetIndexFinished. SetIndexReport(context.Context, *claircore.IndexReport) error // SetIndexFinished marks a scan successfully completed. // // After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport // must return true. // // Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport // in finished state. SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error\n} Setter interface provides the method set for required marking events, or registering components, associated with an Index operation. package indexer // import \"github.com/quay/claircore/indexer\" type Querier interface { // ManifestScanned returns whether the given manifest was scanned by the provided scanners. ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) // LayerScanned returns whether the given layer was scanned by the provided scanner. LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) // PackagesByLayer gets all the packages found in a layer limited by the provided scanners. PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) // DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) // RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) // FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) // IndexReport attempts to retrieve a persisted IndexReport. IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) // AffectedManifests returns a list of manifest digests which the target vulnerability // affects. AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) } Querier interface provides the method set to ascertain indexed artifacts and query whether a layer or manifest has been scanned. package indexer // import \"github.com/quay/claircore/indexer\" type Indexer interface { // IndexPackages indexes a package into the persistence layer. IndexPackages(ctx context.Context, pkgs []*claircore.Package, layer *claircore.Layer, scnr VersionedScanner) error // IndexDistributions indexes distributions into the persistence layer. IndexDistributions(ctx context.Context, dists []*claircore.Distribution, layer *claircore.Layer, scnr VersionedScanner) error // IndexRepositories indexes repositories into the persistence layer. IndexRepositories(ctx context.Context, repos []*claircore.Repository, layer *claircore.Layer, scnr VersionedScanner) error // IndexFiles indexes the interesting files into the persistence layer. IndexFiles(ctx context.Context, files []claircore.File, layer *claircore.Layer, scnr VersionedScanner) error // IndexManifest should index the coalesced manifest's content given an IndexReport. IndexManifest(ctx context.Context, ir *claircore.IndexReport) error\n} Indexer interface provide the method set required for indexing layer and manifest contents into a persistent store.\n```","breadcrumbs":"Reference » Indexer Store » Indexer Store","id":"54","title":"Indexer Store"},"55":{"body":"The datastore.MatcherStore interface defines all necessary persistence methods for Libvuln to provide its functionality. package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment\n} MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment\n} MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided\n// vulnerabilities, and ensures vulnerabilities from previous updates are\n// not queried by clients.\nUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)\n// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing\n// vulnerabilities and new vulnerabilities. It also takes an array of deleted\n// vulnerability names which should no longer be available to query.\nDeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)\n// GetUpdateOperations returns a list of UpdateOperations in date descending\n// order for the given updaters.\n//\n// The returned map is keyed by Updater implementation's unique names.\n//\n// If no updaters are specified, all UpdateOperations are returned.\nGetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRefs reports the latest update reference for every known\n// updater.\nGetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRef reports the latest update reference of any known\n// updater.\nGetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)\n// DeleteUpdateOperations removes an UpdateOperation.\n// A call to GC must be run after this to garbage collect vulnerabilities associated\n// with the UpdateOperation.\n//\n// The number of UpdateOperations deleted is returned.\nDeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)\n// GetUpdateOperationDiff reports the UpdateDiff of the two referenced\n// Operations.\n//\n// In diff(1) terms, this is like\n//\n//\tdiff prev cur\n//\nGetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)\n// GC will delete any update operations for an updater which exceeds the provided keep\n// value.\n//\n// Implementations may throttle the GC process for datastore efficiency reasons.\n//\n// The returned int64 value indicates the remaining number of update operations needing GC.\n// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.\nGC(ctx context.Context, keep int) (int64, error)\n// Initialized reports whether the vulnstore contains vulnerabilities.\nInitialized(context.Context) (bool, error)\n// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time\nRecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error\n// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time\nRecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error } Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment } MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided // vulnerabilities, and ensures vulnerabilities from previous updates are // not queried by clients. UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error) // DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing // vulnerabilities and new vulnerabilities. It also takes an array of deleted // vulnerability names which should no longer be available to query. DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error) // GetUpdateOperations returns a list of UpdateOperations in date descending // order for the given updaters. // // The returned map is keyed by Updater implementation's unique names. // // If no updaters are specified, all UpdateOperations are returned. GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRefs reports the latest update reference for every known // updater. GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRef reports the latest update reference of any known // updater. GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error) // DeleteUpdateOperations removes an UpdateOperation. // A call to GC must be run after this to garbage collect vulnerabilities associated // with the UpdateOperation. // // The number of UpdateOperations deleted is returned. DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error) // GetUpdateOperationDiff reports the UpdateDiff of the two referenced // Operations. // // In diff(1) terms, this is like // //\tdiff prev cur // GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error) // GC will delete any update operations for an updater which exceeds the provided keep // value. // // Implementations may throttle the GC process for datastore efficiency reasons. // // The returned int64 value indicates the remaining number of update operations needing GC. // Running this method till the returned value is 0 accomplishes a full GC of the vulnstore. GC(ctx context.Context, keep int) (int64, error) // Initialized reports whether the vulnstore contains vulnerabilities. Initialized(context.Context) (bool, error) // RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error // RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error\n} Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type EnrichmentUpdater interface { // UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided // EnrichmentRecord(s), and ensures enrichments from previous updates are not // queries by clients. UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) } EnrichmentUpdater is an interface exporting the necessary methods for storing and querying Enrichments. package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment } MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided // vulnerabilities, and ensures vulnerabilities from previous updates are // not queried by clients. UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error) // DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing // vulnerabilities and new vulnerabilities. It also takes an array of deleted // vulnerability names which should no longer be available to query. DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error) // GetUpdateOperations returns a list of UpdateOperations in date descending // order for the given updaters. // // The returned map is keyed by Updater implementation's unique names. // // If no updaters are specified, all UpdateOperations are returned. GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRefs reports the latest update reference for every known // updater. GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRef reports the latest update reference of any known // updater. GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error) // DeleteUpdateOperations removes an UpdateOperation. // A call to GC must be run after this to garbage collect vulnerabilities associated // with the UpdateOperation. // // The number of UpdateOperations deleted is returned. DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error) // GetUpdateOperationDiff reports the UpdateDiff of the two referenced // Operations. // // In diff(1) terms, this is like // //\tdiff prev cur // GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error) // GC will delete any update operations for an updater which exceeds the provided keep // value. // // Implementations may throttle the GC process for datastore efficiency reasons. // // The returned int64 value indicates the remaining number of update operations needing GC. // Running this method till the returned value is 0 accomplishes a full GC of the vulnstore. GC(ctx context.Context, keep int) (int64, error) // Initialized reports whether the vulnstore contains vulnerabilities. Initialized(context.Context) (bool, error) // RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error // RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error\n} Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type EnrichmentUpdater interface { // UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided // EnrichmentRecord(s), and ensures enrichments from previous updates are not // queries by clients. UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) } EnrichmentUpdater is an interface exporting the necessary methods for storing and querying Enrichments. package datastore // import \"github.com/quay/claircore/datastore\" type Vulnerability interface { // Get finds the vulnerabilities which match each package provided in the // [IndexRecord]s. This may be a one-to-many relationship. A map of Package // ID to Vulnerabilities is returned. Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error)\n} Vulnerability is the interface for querying stored Vulnerabilities.\n```\n```\npackage datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment\n} MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided\n// vulnerabilities, and ensures vulnerabilities from previous updates are\n// not queried by clients.\nUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)\n// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing\n// vulnerabilities and new vulnerabilities. It also takes an array of deleted\n// vulnerability names which should no longer be available to query.\nDeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)\n// GetUpdateOperations returns a list of UpdateOperations in date descending\n// order for the given updaters.\n//\n// The returned map is keyed by Updater implementation's unique names.\n//\n// If no updaters are specified, all UpdateOperations are returned.\nGetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRefs reports the latest update reference for every known\n// updater.\nGetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRef reports the latest update reference of any known\n// updater.\nGetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)\n// DeleteUpdateOperations removes an UpdateOperation.\n// A call to GC must be run after this to garbage collect vulnerabilities associated\n// with the UpdateOperation.\n//\n// The number of UpdateOperations deleted is returned.\nDeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)\n// GetUpdateOperationDiff reports the UpdateDiff of the two referenced\n// Operations.\n//\n// In diff(1) terms, this is like\n//\n//\tdiff prev cur\n//\nGetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)\n// GC will delete any update operations for an updater which exceeds the provided keep\n// value.\n//\n// Implementations may throttle the GC process for datastore efficiency reasons.\n//\n// The returned int64 value indicates the remaining number of update operations needing GC.\n// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.\nGC(ctx context.Context, keep int) (int64, error)\n// Initialized reports whether the vulnstore contains vulnerabilities.\nInitialized(context.Context) (bool, error)\n// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time\nRecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error\n// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time\nRecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error } Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type EnrichmentUpdater interface { // UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided // EnrichmentRecord(s), and ensures enrichments from previous updates are not // queries by clients. UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error)\n} EnrichmentUpdater is an interface exporting the necessary methods for storing and querying Enrichments. package datastore // import \"github.com/quay/claircore/datastore\" type Vulnerability interface { // Get finds the vulnerabilities which match each package provided in the // [IndexRecord]s. This may be a one-to-many relationship. A map of Package // ID to Vulnerabilities is returned. Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error) } Vulnerability is the interface for querying stored Vulnerabilities. package datastore // import \"github.com/quay/claircore/datastore\" type Enrichment interface { GetEnrichment(ctx context.Context, kind string, tags []string) ([]driver.EnrichmentRecord, error)\n} Enrichment is an interface for querying enrichments from the store.\n```","breadcrumbs":"Reference » Matcher Store » Matcher Store","id":"55","title":"Matcher Store"},"56":{"body":"A Manifest is analogous to an OCI Image Manifest : it defines the order of layers and how to retrieve the them. package claircore // import \"github.com/quay/claircore\" type Manifest struct { // content addressable hash. should be able to be computed via // the hashes of all included layers Hash Digest `json:\"hash\"` // an array of filesystem layers indexed in the same order as the cooresponding image Layers []*Layer `json:\"layers\"`\n} Manifest represents a docker image. Layers array MUST be indexed in the order that image layers are stacked.","breadcrumbs":"Reference » Manifest » Manifest","id":"56","title":"Manifest"},"57":{"body":"A Matcher performs the heavy lifting of matching manifest contents to relevant vulnerabilities. These implementations provide the smarts for understanding if a particular artifact in a layer is vulnerable to a particular advisory in the database. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Matcher interface { // a unique name for the matcher Name() string // Filter informs the Controller if the implemented Matcher is interested in the provided IndexRecord. Filter(record *claircore.IndexRecord) bool // Query informs the Controller how it should match packages with vulnerabilities. // All conditions are logical AND'd together. Query() []MatchConstraint // Vulnerable informs the Controller if the given package is affected by the given vulnerability. // for example checking the \"FixedInVersion\" field. Vulnerable(ctx context.Context, record *claircore.IndexRecord, vuln *claircore.Vulnerability) (bool, error)\n} Matcher is an interface which a Controller uses to query the vulnstore for vulnerabilities. The Filter method is used to inform Libvuln the provided artifact is interesting. The Query method tells Libvuln how to query the security advisory database. The Vulnerable method reports whether the provided package is vulnerable to the provided vulnerability. Typically, this would perform a version check between the artifact and the vulnerability in question.","breadcrumbs":"Reference » Matcher » Matcher","id":"57","title":"Matcher"},"58":{"body":"A Package Scanner should discover any packages found within the given layer. It is OK for to discover no packages within a layer. package indexer // import \"github.com/quay/claircore/indexer\" type PackageScanner interface { VersionedScanner // Scan performs a package scan on the given layer and returns all // the found packages Scan(context.Context, *claircore.Layer) ([]*claircore.Package, error)\n} PackageScanner provides an interface for unique identification or a PackageScanner and a Scan method for extracting installed packages from an individual container layer func NewPackageScannerMock(name, version, kind string) PackageScanner","breadcrumbs":"Reference » Package Scanner » Package Scanner","id":"58","title":"Package Scanner"},"59":{"body":"RemoteMatcher is an additional interface a Matcher may implement to skip the database for matching results and use an external API. package driver // import \"github.com/quay/claircore/libvuln/driver\" type RemoteMatcher interface { QueryRemoteMatcher(ctx context.Context, records []*claircore.IndexRecord) (map[string][]*claircore.Vulnerability, error)\n} RemoteMatcher is an additional interface that a Matcher can implement. When called the interface can invoke the remote matcher using an HTTP API to fetch new vulnerabilities associated with the given IndexRecords. The information retrieved from this interface won't be persisted into the claircore database.","breadcrumbs":"Reference » Remote Scanner » RemoteMatcher","id":"59","title":"RemoteMatcher"},"6":{"body":"Indexing is the process of submitting a manifest to Libindex, fetching the manifest's layers, indexing their contents, and coalescing a final Index Report. Coalescing is the act of computing a final set of contents (packages, distributions, repos) from a set of layers. Since layers maybe shared between many manifests, the final contents of a manifest must be computed. To perform an Index you must provide a claircore.Manifest data struture to the Index method. The Manifest data structure describes an image manifest's layers and where they can be fetched from. m := new(claircore.Manifest) // Populate somehow ... ir, err := lib.Index(ctx, m) if err != nil { panic(err) } The Index method will block until an claircore.IndexReport is returned. The context should be bound to some valid lifetime such as a request. As the Indexer works on the manifest it will update its database throughout the process. You may view the status of an index report via the \"IndexReport\" method. ir, ok, err := lib.IndexReport(ctx, m.Hash) if err != nil { panic(err) } Libindex performs its work incrementally and saves state as it goes along. If Libindex encounters an intermittent error during the index (for example, due to network failure while fetching a layer), when the manifest is resubmitted only the layers not yet indexed will be fetched and processed.","breadcrumbs":"Getting Started » Libindex Usage » Indexing","id":"6","title":"Indexing"},"60":{"body":"A RepositoryScanner should identify any repositories discovered in the provided layer. It is OK for the scanner to identify no repositories. package indexer // import \"github.com/quay/claircore/indexer\" type RepositoryScanner interface { VersionedScanner Scan(context.Context, *claircore.Layer) ([]*claircore.Repository, error)\n}","breadcrumbs":"Reference » Repository Scanner » Repository Scanner","id":"60","title":"Repository Scanner"},"61":{"body":"A Resolver is used to analyze and modify the post-coalesced index report. This is useful for operations that need all context from an index report. package indexer // import \"github.com/quay/claircore/indexer\" type Resolver interface { Resolve(context.Context, *claircore.IndexReport, []*claircore.Layer) *claircore.IndexReport\n} Resolver is used for any reasoning that needs to be done with all the layers in context. Resolvers are called at the end of the coalesce step when reports from separate scanners are merged. Any Resolvers' Resolve() methods are called (in no set order) at the end of the coalesce step after reports from separate scanners are merged.","breadcrumbs":"Reference » Resolver » Resolver","id":"61","title":"Resolver"},"62":{"body":"RPCScanner is an optional interface a Scanner may implement. When implemented, the scanner's Configure method will be called with a ConfigDeserializer function and an HTTP client. The Scanner may pass its config as an argument to the ConfigDeserializer function to populate the struct and use the HTTP client for any remote access necessary during the scanning process. package indexer // import \"github.com/quay/claircore/indexer\" type RPCScanner interface { Configure(context.Context, ConfigDeserializer, *http.Client) error\n} RPCScanner is an interface scanners can implement to receive configuration and denote that they expect to be able to talk to the network at run time. package indexer // import \"github.com/quay/claircore/indexer\" type RPCScanner interface { Configure(context.Context, ConfigDeserializer, *http.Client) error\n} RPCScanner is an interface scanners can implement to receive configuration and denote that they expect to be able to talk to the network at run time. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigDeserializer func(interface{}) error ConfigDeserializer can be thought of as an Unmarshal function with the byte slice provided. This will typically be something like (*json.Decoder).Decode.","breadcrumbs":"Reference » RPC Scanner » RPCScanner","id":"62","title":"RPCScanner"},"63":{"body":"An Updater is responsible for performing run-time fetching and parsing of a security database. The returned vulnerabilities will be written to claircore's database and used in vulnerability matching. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) } Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data\nis available. Fingerprint may be passed into in order for the Fetcher to\ndetermine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new\ncontent can be read. Optionally a fingerprint can be returned which uniquely\nidentifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser } Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)\n} Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data is available. Fingerprint may be passed into in order for the Fetcher to determine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new content can be read. Optionally a fingerprint can be returned which uniquely identifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) } Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents\nof a security advisory database can be read and parsed into an array of\n*claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser } Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)\n} Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data is available. Fingerprint may be passed into in order for the Fetcher to determine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new content can be read. Optionally a fingerprint can be returned which uniquely identifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) } Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents\nof a security advisory database can be read and parsed into an array of\n*claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fingerprint string Fingerprint is some identifying information about a vulnerability database.\n```\n```\npackage driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) } Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data\nis available. Fingerprint may be passed into in order for the Fetcher to\ndetermine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new\ncontent can be read. Optionally a fingerprint can be returned which uniquely\nidentifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)\n} Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents of a security advisory database can be read and parsed into an array of *claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fingerprint string Fingerprint is some identifying information about a vulnerability database. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Configurable interface { Configure(context.Context, ConfigUnmarshaler, *http.Client) error\n} Configurable is an interface that Updaters can implement to opt-in to having their configuration provided dynamically.\n```\n```\npackage driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) } Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data\nis available. Fingerprint may be passed into in order for the Fetcher to\ndetermine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new\ncontent can be read. Optionally a fingerprint can be returned which uniquely\nidentifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)\n} Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents of a security advisory database can be read and parsed into an array of *claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fingerprint string Fingerprint is some identifying information about a vulnerability database. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Configurable interface { Configure(context.Context, ConfigUnmarshaler, *http.Client) error\n} Configurable is an interface that Updaters can implement to opt-in to having their configuration provided dynamically. package driver // import \"github.com/quay/claircore/libvuln/driver\" type ConfigUnmarshaler func(interface{}) error ConfigUnmarshaler can be thought of as an Unmarshal function with the byte slice provided, or a Decode function. The function should populate a passed struct with any configuration\ninformation.","breadcrumbs":"Reference » Updater » Updater","id":"63","title":"Updater"},"64":{"body":"An UpdaterSetFactory is a factory for runtime construction and configuration for Updaters. package driver // import \"github.com/quay/claircore/libvuln/driver\" type UpdaterSetFactory interface { UpdaterSet(context.Context) (UpdaterSet, error)\n} UpdaterSetFactory is used to construct updaters at run-time. func StaticSet(s UpdaterSet) UpdaterSetFactory package driver // import \"github.com/quay/claircore/libvuln/driver\" type UpdaterSetFactory interface { UpdaterSet(context.Context) (UpdaterSet, error)\n} UpdaterSetFactory is used to construct updaters at run-time. func StaticSet(s UpdaterSet) UpdaterSetFactory package driver // import \"github.com/quay/claircore/libvuln/driver\" type UpdaterSet struct { // Has unexported fields. } UpdaterSet holds a deduplicated set of updaters. func NewUpdaterSet() UpdaterSet func (s *UpdaterSet) Add(u Updater) error func (s *UpdaterSet) Merge(set UpdaterSet) error func (s *UpdaterSet) RegexFilter(regex string) error func (s *UpdaterSet) Updaters() []Updater","breadcrumbs":"Reference » Updater Set Factory » UpdaterSetFactory","id":"64","title":"UpdaterSetFactory"},"65":{"body":"VersionFilter is an additional interface a Matcher may implement. If implemented, Libvuln will attempt to use the database and the normalized version field of a package to filter vulnerabilities in the database. This is an opt-in optimization for when a package manager's version scheme can be normalized into a claircore.Version. package driver // import \"github.com/quay/claircore/libvuln/driver\" type VersionFilter interface { VersionFilter() // VersionAuthoritative reports whether the Matcher trusts the database-side // filtering to be authoritative. // // A Matcher may return false if it's using a versioning scheme that can't // be completely normalized into a claircore.Version. VersionAuthoritative() bool\n} VersionFilter is an additional interface that a Matcher can implement to opt-in to using normalized version information in database queries.","breadcrumbs":"Reference » Version Filter » VersionFilter","id":"65","title":"VersionFilter"},"66":{"body":"A versioned scanner is typically embedded into other scanner types. It drives claircore's ability to register and understand when updaters have been changed. Functions that want to work with a generic scanner type should use a VersionedScanner. Implementers of this interface must provide a unique name. Making changes to a scanner's implementation must return a new value from Version. Implementers must return the correct kind: one of \"package\", \"distribution\", or \"repository\" package indexer // import \"github.com/quay/claircore/indexer\" type VersionedScanner interface { // unique name of the distribution scanner. Name() string // version of this scanner. this information will be persisted with the scan. Version() string // the kind of scanner. currently only package is implemented Kind() string\n} VersionedScanner can be embedded into specific scanner types. This allows for methods and functions which only need to compare names and versions of scanners not to require each scanner type as an argument.","breadcrumbs":"Reference » Versioned Scanner » Versioned Scanner","id":"66","title":"Versioned Scanner"},"67":{"body":"A Vulnerability Report is a structure describing a specific manifest, its contents, and the vulnerabilities affecting its contents. package claircore // import \"github.com/quay/claircore\" type VulnerabilityReport struct { // the manifest hash this vulnerability report is describing Hash Digest `json:\"manifest_hash\"` // all discovered packages in this manifest keyed by package id Packages map[string]*Package `json:\"packages\"` // all discovered distributions in this manifest keyed by distribution id Distributions map[string]*Distribution `json:\"distributions\"` // all discovered repositories in this manifest keyed by repository id Repositories map[string]*Repository `json:\"repository\"` // a list of environment details a package was discovered in keyed by package id Environments map[string][]*Environment `json:\"environments\"` // all discovered vulnerabilities affecting this manifest Vulnerabilities map[string]*Vulnerability `json:\"vulnerabilities\"` // a lookup table associating package ids with 1 or more vulnerability ids. keyed by package id PackageVulnerabilities map[string][]string `json:\"package_vulnerabilities\"` // a map of enrichments keyed by a type. Enrichments map[string][]json.RawMessage `json:\"enrichments\"`\n} VulnerabilityReport provides a report of packages and their associated vulnerabilities. A Vulnerability Report is package focused. Unpacking a report is done by mapping the keys in the PackageVulnerabilities field to the data structures in other lookup maps. For example: for pkgID, vulnIDS := range report.PackageVulnerabilities { // get package data structure pkg := report.Packages[pkgID] for _, vulnID := range vulnIDS { vuln := report.Vulnerabilities[vulnID] fmt.Printf(\"package %+v affected by vuln %+v\", pkg, vuln) } }","breadcrumbs":"Reference » Vulnerability Report » Vulnerability Report","id":"67","title":"Vulnerability Report"},"68":{"body":"These topics cover helpful tips for contributing to Claircore. Local Development Logging Misc Tests","breadcrumbs":"Contributors » Contributors","id":"68","title":"Contributors"},"69":{"body":"The preferred workflow is to fork the quay/claircore repository, push a feature branch to the new fork, then open a pull request. All pull requests should be targeted to the main branch outside of exceptional circumstances.","breadcrumbs":"Contributors » Guidelines » How to contribute","id":"69","title":"How to contribute"},"7":{"body":"Libindex treats layers as content addressable. Once a layer identified by a particular hash is indexed its contents are definitively known. A request to re-index a known layer results in returning the previous successful response. This comes in handy when dealing with base layers. The Ubuntu base layer is seen very often across container registries. Treating this layer as content addressable precludes the need to fetch and index the layer every time Libindex encounters it in a manifest. There are times where re-indexing the same layer is necessary however. At the point where Libindex realizes a new version of a component has not indexed a layer being submitted it will perform the indexing operation. A client must notice that Libindex has updated one of its components and subsequently resubmit Manifests. The State endpoint is implemented for this reason. Clients may query the State endpoint to receive an opaque string acting as a cookie, identifying a unique state of Libindex. When a client sees this cookie change it should re-submit manifests to Libindex to obtain a new index report. state, err := lib.State(ctx) if err != nil { panic(err) } if state == prevState { // Nothing to do. return } // Otherwise, re-index manifest.","breadcrumbs":"Getting Started » Libindex Usage » State","id":"7","title":"State"},"70":{"body":"As many tests as possible should run with the standard go test invocations. Adding the special tag integration (e.g. go test -tags integration ./...) will also run \"integration\" tests. The project interprets \"integration\" tests to mean any test that would need external resources, such as: External web servers External network access Out-of-process databases Large test fixtures After at least one run with the integration tag, the tests should cache needed resources and run as many tests as possible. See also the test/integration package.","breadcrumbs":"Contributors » Guidelines » Testing","id":"70","title":"Testing"},"71":{"body":"The Pull Request (PR) is the unit of code review. Claircore's review flow treats a feature branch as a stack of patches to be applied. That is to say, the feature branch should be rebased onto the target branch and have well-organized commits. Merge commits are disallowed. If the author would prefer to not rewrite commit history while working through reviews, fixup commits are the suggested way to achieve that. As many requirements as possible are enforced by CI, like: Commits being signed off Commit messages having a properly formed subject Go modules being tidied Please use the \"draft\" option if the branch is not ready. Please enable the \"allow edits by maintainers\" option. The maintainers may rebase, push, and merge contributors' branches. This may necessitate doing a git reset / to update a local branch.","breadcrumbs":"Contributors » Guidelines » Pull Requests","id":"71","title":"Pull Requests"},"72":{"body":"Git commits should be formatted like \"subject: summary\" and avoid going over 80 characters per line. The \"subject\" is usually the package affected by the commit (like jar or rhel -- the relative path isn't needed) but sometimes a broader category (like docs, all, or cicd) is OK. All the helper scripts should handle the \"normal\" convention (origin is quay/claircore and fork is one's personal fork) and the \"British\" convention (origin is one's personal fork and upstream is quay/claircore). More detailed contributor documentation can be found in the project documentation .","breadcrumbs":"Contributors » Guidelines » Conventions","id":"72","title":"Conventions"},"73":{"body":"The claircore project has switched from a git log based changelog to a git notes based changelog. This has the benefit of making the changelog more human-friendly, as it can have prose describing changes now, but makes adding entries a bit more involved. A full understanding of git notes is helpful for working with the changelog, but not required. If the reader has worked with the notes feature before, the changelog entries are stored under the changelog ref. For other users, there are some helper scripts in .github/scripts. Git notes is a mechanism for storing additional information alongside commits without modifying the commits. It does this by creating a ref full of files named after the commits, with their contents being the notes. This scheme requires some special care and tooling -- see the documentation for more information.","breadcrumbs":"Contributors » Changelog » Basics of git notes","id":"73","title":"Basics of git notes"},"74":{"body":"The primary helper script is changelog-edit. It allows a user to sync down notes, edit an entry, or both. See the output of the h flag for more information. The other script of interest is changelog-render, which can be used to render out the changelog on demand, assuming the changelog notes have been pulled locally. The changelog-update script uses changelog-render to add to the CHANGELOG.md file in the repository root.","breadcrumbs":"Contributors » Changelog » Helper scripts","id":"74","title":"Helper scripts"},"75":{"body":"Broadly, changelog entries should be formatted like commit messages without any trailers. Entries are turned into list items, with the subject being the bullet point and the body of the entry being the \"body\" of the item, or hidden behind details elements when using HTML-enabled output. The entries are almost always rendered as markdown, so using minimal markdown is OK. Anything requiring excessive markdown is probably better served as documentation proper, rather than a changelog entry.","breadcrumbs":"Contributors » Changelog » Formatting","id":"75","title":"Formatting"},"76":{"body":"A local development environment is implemented via docker-compose.","breadcrumbs":"Contributors » Local Development » Local Development","id":"76","title":"Local Development"},"77":{"body":"Several make targets are defined for working with the local development environment. claircore-db-up - creates just the claircore database useful for running integration tests without test servers\nclaircore-db-restart - destroys and recreates a fresh database. localhost:5434","breadcrumbs":"Contributors » Local Development » Usage","id":"77","title":"Usage"},"78":{"body":"Several make targets are defined for working with tests. integration - run the integration test suite. requires the claircore-db to be up. run `make clair-db-up` before this target\nunit - run the unit test suite.\nbench - runs the benchmarks\nintegration-v - runs the integration test suite with verbose\nunit-v - runs the unit test suite with verbose","breadcrumbs":"Contributors » Local Development » Tests","id":"78","title":"Tests"},"79":{"body":"All the logging in claircore is done with zerolog via context.Context values. The zlog package takes OpenTelemetry labels and attaches them to zerolog events. This allows for claircore's logging to be used consistently throughout all the packages without having unintended prints to stderr.","breadcrumbs":"Contributors » Logging » Logging","id":"79","title":"Logging"},"8":{"body":"Libindex is capable of providing a client with all manifests affected by a set of vulnerabilities. This functionality is designed for use with a notification mechanism. var vulns []claircore.Vulnerability affected, err := lib.AffectedManifests(ctx, vulns) if err != nil { panic(err) } for manifest, vulns := range affected.VulnerableManifests { for _, vuln := range vulns { fmt.Printf(\"vuln affecting manifest %s: %+v\", manifest, vuln) } } The slice of vulnerabilities returned for each manifest hash will be sorted by claircore.NormalizedSeverity in \"most severe\" descending order.","breadcrumbs":"Getting Started » Libindex Usage » AffectedManifests","id":"8","title":"AffectedManifests"},"80":{"body":"","breadcrumbs":"Contributors » Logging » How to Log","id":"80","title":"How to Log"},"81":{"body":"In a function, use zlog to add key-value pairs of any relevant context: ctx = zlog.ContextWithValues(ctx, \"component\", \"Example.Logger\") Alternatively, the go.opentelemetry.io/otel/baggage package can be used for more explicit control around the baggage values.","breadcrumbs":"Contributors » Logging » Adding Context","id":"81","title":"Adding Context"},"82":{"body":"Constant Messages Zerolog emits lines when the Msg or Msgf methods are called. Project style is to not use Msgf. Any variable data should be set as key-value pairs on the Event object. For example, don't do this: zlog.Info(ctx).Msgf(\"done at: %v\", time.Now()) Do this instead: zlog.Info(ctx). Time(\"time\", time.Now()). Msgf(\"done\") Grammar When noting the change during a chunk of work, make sure that the log messages scan as visually similar. Usually, this means formatting messages into \"${process} ${event}\". For example: frob start\nfrob initialized\nfrob ready\nfrob success\nfrob done Is much easier to scan than: starting to frob\ninitialized frobber\nready for frobbing\ndid frob\ndone with frobing Don't log and return When handling an error, code should only log it if it does not propagate it. The code that ultimately handles the error is responsible for deciding what to do with it. Logging and returning ends up with the same message repeated multiple times in the logs. Levels Claircore attempts to have consistent leveled logging. The rules for figuring out what level to use is: Panic There's some occurrence that means the process won't work correctly. Fatal Unused, because it prevents defers from running. Error Something unexpected occurred and the process can continue, but a human needs to be notified. An error will be returned for this request. Warn Something unexpected occurred and the process can continue. An error will be returned for this request. Info Some information that may be useful to an operator. Examples include a timer-based process starting and ending, a user request starting and ending, or a summary of work done. Debug Some information that may be useful to a developer. Examples include entering and exiting functions, stepping through a function, or specific file paths used while work is being done.","breadcrumbs":"Contributors » Logging » Logging style","id":"82","title":"Logging style"},"83":{"body":"Here's various codebase conventions that don't have dedicated pages: URLs URLs in code should be annotated with a //doc:url directive comment. See the the internal/cmd/mdbook-injecturls command for documentation on how the preprocessor works. The list of keywords isn't an allowlist, so an invocation like the following should list the ones actually used in the documentation using a command like git grep injecturls -- :/docs/*.md.","breadcrumbs":"Contributors » Misc","id":"83","title":"Contributors"},"84":{"body":"Tests in the claircore module may use various helpers underneath the test directory. Using these packages outside of testing code is disallowed. Assert packages are disallowed; the go-cmp package is the only external package helper allowed. Tests that use external resources or generate test fixtures should be annotated according to the integration package.","breadcrumbs":"Contributors » Tests » Tests","id":"84","title":"Tests"},"85":{"body":"Tests using the integration package cache generated and downloaded assets into a directory named clair-testing inside the directory reported by os.UserCacheDir . For example, on a Linux system, the cache directory will be (in sh notation) ${XDG_CACHE_HOME-$HOME/.cache}/clair-testing.","breadcrumbs":"Contributors » Tests » Caching","id":"85","title":"Caching"},"9":{"body":"Libvuln is the Go package responsible for keeping the database of vulnerabilities consistent, matching container image contents with vulnerabilities, and reporting diffs between updates of the same security database.","breadcrumbs":"Getting Started » Libvuln Usage » Libvuln Usage","id":"9","title":"Libvuln Usage"}},"length":86,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}},"1":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"19":{"tf":4.0},"67":{"tf":1.0}}},"2":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"0":{"1":{"8":{".":{"0":{"3":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}},"3":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{".":{"9":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"9":{".":{"0":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":3,"docs":{"14":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"43":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"53":{"tf":1.0},"62":{"tf":1.0},"70":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"38":{"tf":1.0},"55":{"tf":2.0}}}}}}}},"r":{"d":{"df":2,"docs":{"33":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"41":{"tf":1.0},"71":{"tf":1.0}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"(":{"df":0,"docs":{},"u":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"81":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"59":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"19":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"56":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}},"df":10,"docs":{"11":{"tf":1.0},"14":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"81":{"tf":1.0}},"v":{"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":1,"docs":{"21":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.0},"57":{"tf":1.4142135623730951},"63":{"tf":3.0}}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"72":{"tf":1.0},"8":{"tf":1.7320508075688772}},"e":{"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":1.4142135623730951},"8":{"tf":1.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"16":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.23606797749979},"63":{"tf":2.449489742783178}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":7,"docs":{"14":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"79":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}},"g":{"df":1,"docs":{"6":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"25":{"tf":1.7320508075688772}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"4":{"tf":1.0},"46":{"tf":1.0},"81":{"tf":1.0}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"39":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"56":{"tf":1.0}}}},"y":{"df":0,"docs":{},"z":{"df":1,"docs":{"61":{"tf":1.0}}}}}},"d":{"'":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"i":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"14":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"33":{"tf":1.0},"43":{"tf":1.0}}},"df":3,"docs":{"49":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"71":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"0":{"tf":1.0},"15":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"v":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"81":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"55":{"tf":2.0},"56":{"tf":1.4142135623730951},"63":{"tf":2.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"40":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":2.23606797749979},"52":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"84":{"tf":1.0}}}},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":9,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.6457513110645907},"55":{"tf":2.0},"59":{"tf":1.0},"67":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"63":{"tf":2.0},"74":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"37":{"tf":1.0},"54":{"tf":1.4142135623730951},"65":{"tf":1.0},"82":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"54":{"tf":2.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"21":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"7":{"tf":1.4142135623730951},"73":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":6,"docs":{"22":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.4142135623730951},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"73":{"tf":1.0},"78":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"21":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0}},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"0":{"tf":1.0},"75":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"0":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"78":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"78":{"tf":1.0}}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"46":{"tf":1.0},"73":{"tf":1.0}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":7,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"33":{"tf":1.0},"74":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"22":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"o":{"a":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"19":{"tf":1.0},"70":{"tf":1.0},"85":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":12,"docs":{"21":{"tf":1.4142135623730951},"40":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":3.0},"55":{"tf":2.0},"59":{"tf":1.0},"61":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":3.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"4":{"tf":1.0}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"63":{"tf":3.1622776601683795},"66":{"tf":1.4142135623730951},"7":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":3,"docs":{"73":{"tf":2.449489742783178},"74":{"tf":2.449489742783178},"75":{"tf":1.4142135623730951}}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"i":{"c":{"d":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"71":{"tf":1.0}},"r":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":34,"docs":{"0":{"tf":2.0},"1":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.4142135623730951},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"59":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0},"77":{"tf":1.7320508075688772},"78":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":1.0},"84":{"tf":1.0}},"e":{"'":{"df":6,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":5.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"49":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":6,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"54":{"tf":3.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":7,"docs":{"41":{"tf":1.0},"42":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":2.0},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"41":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"60":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":8,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"40":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"63":{"tf":3.4641016151377544},"8":{"tf":1.0}}}}}}}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":6,"docs":{"0":{"tf":1.0},"14":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"78":{"tf":1.0},"85":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"84":{"tf":1.0}}}},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":12,"docs":{"18":{"tf":1.7320508075688772},"2":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":3.1622776601683795},"45":{"tf":3.3166247903554},"48":{"tf":1.0},"49":{"tf":3.3166247903554},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":6,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.0},"84":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"m":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"44":{"tf":1.0},"63":{"tf":2.449489742783178}}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"44":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":2.449489742783178},"72":{"tf":1.4142135623730951},"73":{"tf":1.7320508075688772},"75":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"66":{"tf":1.0}}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"44":{"tf":1.0},"54":{"tf":2.449489742783178},"65":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.4142135623730951},"81":{"tf":1.0}}},"s":{"df":1,"docs":{"76":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":2,"docs":{"13":{"tf":1.0},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.4142135623730951}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}},"u":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"50":{"tf":2.6457513110645907},"62":{"tf":2.449489742783178}}}}}}}},"df":3,"docs":{"11":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"tf":2.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":17,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.449489742783178},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.7320508075688772},"48":{"tf":1.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":2.6457513110645907},"64":{"tf":1.0}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"22":{"tf":1.0},"40":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"55":{"tf":2.0},"79":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"0":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"12":{"tf":2.0},"3":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.7320508075688772},"64":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":12,"docs":{"0":{"tf":1.4142135623730951},"18":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"58":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":21,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.7320508075688772},"63":{"tf":6.324555320336759},"67":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"73":{"tf":1.0},"9":{"tf":1.0}}}},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":9,"docs":{"45":{"tf":2.23606797749979},"49":{"tf":1.4142135623730951},"52":{"tf":2.23606797749979},"54":{"tf":5.744562646538029},"55":{"tf":5.477225575051661},"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":2.0},"79":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"12":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"81":{"tf":1.4142135623730951}},"u":{"df":1,"docs":{"53":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"69":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0},"83":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":2.0},"81":{"tf":1.0}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":1.7320508075688772},"83":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"46":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"66":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"68":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":3.3166247903554},"73":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":9,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"39":{"tf":1.0}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"33":{"tf":1.0}},"v":{"2":{"df":1,"docs":{"35":{"tf":1.0}}},"3":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":29,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"23":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":2.0},"44":{"tf":2.449489742783178},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"63":{"tf":3.0},"65":{"tf":2.0},"70":{"tf":1.0},"77":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}},"e":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{},"s":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":15,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"27":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"43":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"63":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"17":{"tf":1.0},"55":{"tf":4.358898943540674}},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":3.4641016151377544}}}}},"b":{"[":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"v":{"[":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":2.0},"7":{"tf":1.0}}}},"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"27":{"tf":1.7320508075688772},"40":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"64":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":2.23606797749979},"14":{"tf":1.0},"36":{"tf":1.4142135623730951},"37":{"tf":1.0},"4":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"82":{"tf":1.0}}}},"i":{"df":0,"docs":{},"n":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.4641016151377544}},"e":{"d":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"42":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"14":{"tf":1.0},"55":{"tf":2.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"6":{"tf":1.0},"67":{"tf":1.4142135623730951},"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":6,"docs":{"40":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"8":{"tf":1.0}}}},"r":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":1,"docs":{"77":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"13":{"tf":1.0},"18":{"tf":1.4142135623730951},"21":{"tf":1.0},"49":{"tf":1.0},"63":{"tf":3.1622776601683795}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":7,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"68":{"tf":1.0},"76":{"tf":1.4142135623730951},"77":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":4,"docs":{"0":{"tf":1.0},"18":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"1":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}},".":{"a":{"d":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":3,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.0},"9":{"tf":1.0}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":2.23606797749979},"56":{"tf":1.0},"67":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"84":{"tf":1.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.4142135623730951}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":8,"docs":{"0":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":3.1622776601683795},"58":{"tf":1.4142135623730951},"60":{"tf":1.0},"67":{"tf":2.23606797749979}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"39":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"2":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.449489742783178},"4":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"42":{"tf":3.3166247903554},"43":{"tf":1.0},"44":{"tf":2.449489742783178},"45":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.0},"51":{"tf":2.23606797749979},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"6":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"o":{"c":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"56":{"tf":1.0},"76":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"s":{"/":{"*":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"1":{"tf":1.0},"39":{"tf":1.0},"72":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}}}}},"df":1,"docs":{"71":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":5,"docs":{"5":{"tf":1.0},"61":{"tf":1.0},"67":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":2.0}}}},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"74":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":2,"docs":{"4":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"/":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"52":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"66":{"tf":1.0}},"r":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"82":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"37":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":13,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"53":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"4":{"tf":2.0},"45":{"tf":2.449489742783178},"48":{"tf":1.0},"52":{"tf":2.8284271247461903}}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"71":{"tf":1.0},"74":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}}}},"m":{"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"63":{"tf":3.0},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"4":{"tf":1.0},"71":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}}},"d":{"df":5,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"82":{"tf":1.7320508075688772}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":4.123105625617661},"67":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"(":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.1622776601683795}},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"40":{"tf":1.4142135623730951},"53":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"75":{"tf":2.23606797749979}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"53":{"tf":2.0},"67":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"\"":{":":{"df":0,"docs":{},"{":{"\"":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"\"":{":":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"13":{"tf":2.0},"14":{"tf":2.449489742783178},"5":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"6":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":19,"docs":{"22":{"tf":1.0},"4":{"tf":1.4142135623730951},"45":{"tf":2.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":6.557438524302},"55":{"tf":7.3484692283495345},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.123105625617661},"64":{"tf":2.23606797749979},"82":{"tf":2.23606797749979}}}}}},"t":{"c":{"df":2,"docs":{"19":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"21":{"tf":1.0},"45":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"54":{"tf":1.7320508075688772},"79":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"13":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":2.0},"85":{"tf":1.0}},"e":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"55":{"tf":2.0}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"37":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"55":{"tf":2.0}}}},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"59":{"tf":1.0},"70":{"tf":1.7320508075688772},"84":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"4":{"tf":1.0},"40":{"tf":1.0},"48":{"tf":1.0},"64":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"d":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":8,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":2.0},"63":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":5.656854249492381}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":7,"docs":{"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"43":{"tf":1.0},"57":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"67":{"tf":1.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"40":{"tf":1.0},"82":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":9,"docs":{"4":{"tf":1.4142135623730951},"41":{"tf":2.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":2.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"56":{"tf":1.0}}}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":3,"docs":{"48":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.7320508075688772},"6":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":1.4142135623730951}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"55":{"tf":3.872983346207417},"63":{"tf":5.0990195135927845}}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"[":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772}}}},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"40":{"tf":1.0}}}}},"t":{"df":1,"docs":{"44":{"tf":1.0}}},"x":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"74":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"71":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"(":{"\"":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"19":{"tf":1.0},"67":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":15,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"83":{"tf":1.0}}}}}},"r":{"c":{"df":1,"docs":{"63":{"tf":2.449489742783178}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"39":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}}},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"72":{"tf":1.7320508075688772}}},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"75":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"df":1,"docs":{"71":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"23":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.7320508075688772},"51":{"tf":1.0},"54":{"tf":2.8284271247461903},"58":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":2.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"77":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"73":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":1,"docs":{"82":{"tf":2.8284271247461903}},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.0},"55":{"tf":2.0},"73":{"tf":1.4142135623730951}}}},"n":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"45":{"tf":2.0},"52":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":4,"docs":{"45":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"58":{"tf":1.0},"64":{"tf":2.6457513110645907}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":11,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951},"50":{"tf":2.0},"54":{"tf":1.0},"55":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951},"8":{"tf":1.0},"81":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}}},"g":{"a":{"df":0,"docs":{},"r":{"b":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":4.47213595499958}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"39":{"tf":1.0},"66":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0}}}}},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":6,"docs":{"1":{"tf":1.0},"14":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"47":{"tf":1.4142135623730951},"54":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.8284271247461903}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":2.23606797749979},"83":{"tf":1.0}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"67":{"tf":1.0}},"e":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":10,"docs":{"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":3.1622776601683795},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"39":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"15":{"tf":1.0},"40":{"tf":1.0}},"n":{"df":9,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"51":{"tf":1.0},"54":{"tf":2.23606797749979},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}},"o":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"b":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":8,"docs":{"0":{"tf":1.0},"2":{"tf":1.0},"52":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0},"72":{"tf":1.0},"84":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"t":{"df":3,"docs":{"0":{"tf":2.449489742783178},"18":{"tf":3.0},"21":{"tf":2.8284271247461903}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"14":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}},"l":{"df":4,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"41":{"tf":1.0},"44":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":8,"docs":{"19":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":5.0990195135927845},"56":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":2.23606797749979}},"l":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"40":{"tf":1.0},"63":{"tf":1.4142135623730951},"71":{"tf":1.0},"79":{"tf":1.0}}}}},"df":1,"docs":{"74":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":3,"docs":{"17":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":6,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"83":{"tf":1.0}}},"df":2,"docs":{"4":{"tf":1.0},"47":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}}}}},"i":{"d":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":12,"docs":{"0":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"41":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"/":{".":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"}":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"t":{"df":0,"docs":{},"p":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},":":{"/":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"59":{"tf":1.0},"62":{"tf":1.4142135623730951}},"s":{":":{"/":{"/":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"v":{"2":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{".":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"a":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"1":{".":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"n":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"2":{"0":{"2":{"3":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"b":{".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"a":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"v":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"/":{"1":{".":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"d":{"b":{".":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{".":{"df":1,"docs":{"19":{"tf":1.0}}},"d":{"df":3,"docs":{"53":{"tf":2.8284271247461903},"55":{"tf":1.4142135623730951},"67":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}},"i":{"df":9,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"51":{"tf":1.0},"60":{"tf":1.4142135623730951},"63":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"m":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"g":{"df":7,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"49":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"56":{"tf":2.0},"6":{"tf":1.0},"9":{"tf":1.0}}}},"df":1,"docs":{"0":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.6457513110645907},"41":{"tf":2.0},"42":{"tf":3.0},"43":{"tf":2.0},"44":{"tf":2.23606797749979},"45":{"tf":1.4142135623730951},"46":{"tf":1.0},"47":{"tf":1.4142135623730951},"49":{"tf":1.0},"50":{"tf":1.7320508075688772},"54":{"tf":2.0},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"62":{"tf":2.0},"63":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":2.0},"7":{"tf":1.0},"76":{"tf":1.0}}}}}}},"i":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":27,"docs":{"11":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":3.872983346207417},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":2,"docs":{"56":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"17":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"13":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":2.0},"18":{"tf":2.23606797749979},"19":{"tf":1.7320508075688772},"2":{"tf":1.4142135623730951},"20":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":2.0},"40":{"tf":1.7320508075688772},"45":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":3.1622776601683795},"54":{"tf":5.291502622129181},"56":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":3.3166247903554},"60":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":1.7320508075688772},"66":{"tf":1.0},"7":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"{":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"54":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"18":{"tf":1.7320508075688772},"54":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"]":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}},"df":5,"docs":{"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"53":{"tf":2.6457513110645907},"57":{"tf":1.0},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":9,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.4142135623730951},"45":{"tf":1.0},"49":{"tf":2.0},"53":{"tf":3.4641016151377544},"54":{"tf":4.47213595499958},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}},"i":{"c":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"82":{"tf":1.0}},"r":{"df":0,"docs":{},"m":{"df":26,"docs":{"14":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":2.449489742783178},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":2.0},"59":{"tf":1.0},"63":{"tf":2.0},"65":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"12":{"tf":1.0},"55":{"tf":2.0},"82":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"2":{"tf":1.0},"45":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.6457513110645907}}}}},"i":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"58":{"tf":1.0}}},"n":{"c":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"38":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"6":{"4":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":7,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"70":{"tf":2.23606797749979},"77":{"tf":1.0},"78":{"tf":2.0},"84":{"tf":1.0},"85":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"74":{"tf":1.0}}}}},"f":{"a":{"c":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":2.6457513110645907},"40":{"tf":2.0},"41":{"tf":1.0},"44":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":2.0},"51":{"tf":1.0},"54":{"tf":4.58257569495584},"55":{"tf":5.5677643628300215},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":2.23606797749979},"63":{"tf":6.928203230275509},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"m":{"d":{"/":{"df":0,"docs":{},"m":{"d":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"15":{"tf":1.0}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"70":{"tf":1.0}}}}}},"v":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"70":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":1,"docs":{"59":{"tf":1.0}}},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"o":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":4.69041575982343}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"u":{"df":4,"docs":{"20":{"tf":1.0},"37":{"tf":1.0},"39":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}}},"t":{"'":{"df":4,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"54":{"tf":1.7320508075688772},"65":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}}}},"j":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}},"v":{"a":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{")":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},":":{"\"":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":2.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"55":{"tf":2.8284271247461903},"9":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"y":{"'":{"d":{"df":1,"docs":{"53":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.0},"67":{"tf":2.6457513110645907},"81":{"tf":1.0},"82":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"4":{"tf":1.0},"55":{"tf":2.0},"58":{"tf":1.0},"66":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"23":{"tf":1.0}},"n":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"79":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"g":{"df":9,"docs":{"0":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.449489742783178},"40":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":23,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"18":{"tf":1.4142135623730951},"19":{"tf":2.0},"2":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":3.0},"45":{"tf":1.0},"49":{"tf":3.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":5.477225575051661},"56":{"tf":2.6457513110645907},"57":{"tf":1.0},"58":{"tf":2.0},"6":{"tf":2.449489742783178},"60":{"tf":1.0},"61":{"tf":1.0},"7":{"tf":3.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"0":{"tf":1.0},"82":{"tf":1.7320508075688772}}}}}},"i":{"b":{".":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"'":{"df":1,"docs":{"17":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"3":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.4142135623730951},"2":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":2.23606797749979},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":2.23606797749979},"6":{"tf":1.7320508075688772},"7":{"tf":2.449489742783178},"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.7320508075688772},"39":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"'":{"df":3,"docs":{"2":{"tf":1.0},"21":{"tf":1.0},"41":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"10":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"16":{"tf":2.0},"21":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"17":{"tf":1.0},"57":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"42":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}},"k":{"df":1,"docs":{"47":{"tf":1.0}}},"u":{"df":0,"docs":{},"x":{"df":3,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"85":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":11,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.8284271247461903},"67":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}},"o":{"a":{"d":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"76":{"tf":1.4142135623730951},"77":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{":":{"5":{"4":{"3":{"4":{"df":1,"docs":{"77":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":2.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":5,"docs":{"68":{"tf":1.0},"73":{"tf":1.0},"79":{"tf":1.7320508075688772},"80":{"tf":1.0},"82":{"tf":2.6457513110645907}},"i":{"c":{"df":3,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}},"w":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"t":{";":{"&":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{";":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{";":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{".":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"69":{"tf":1.0}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"71":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":9,"docs":{"18":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"53":{"tf":1.4142135623730951},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":8,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"df":5,"docs":{"19":{"tf":2.6457513110645907},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"'":{"df":5,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"df":18,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":3.0},"54":{"tf":4.69041575982343},"56":{"tf":2.23606797749979},"57":{"tf":1.0},"6":{"tf":2.449489742783178},"67":{"tf":2.449489742783178},"7":{"tf":2.0},"8":{"tf":2.23606797749979}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"p":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"[":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"]":{"*":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"[":{"]":{"*":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":15,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":1.4142135623730951},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.449489742783178},"67":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.7320508075688772}}}}}},"df":1,"docs":{"54":{"tf":3.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":12,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.0},"42":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":2.449489742783178},"16":{"tf":1.4142135623730951},"21":{"tf":2.8284271247461903},"22":{"tf":1.7320508075688772},"40":{"tf":1.0},"48":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":2.449489742783178},"59":{"tf":1.7320508075688772},"65":{"tf":2.0}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.1622776601683795}}}}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}}},"y":{"b":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"41":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"43":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"g":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"21":{"tf":1.0},"61":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"71":{"tf":1.0},"75":{"tf":1.0},"82":{"tf":2.0}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"46":{"tf":1.0}}}}},"t":{"a":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{".":{"*":{".":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":18,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"40":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":4.358898943540674},"55":{"tf":3.4641016151377544},"57":{"tf":1.7320508075688772},"58":{"tf":1.0},"6":{"tf":1.7320508075688772},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.449489742783178},"66":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"s":{"c":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"19":{"tf":1.7320508075688772},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0}}},"r":{"df":4,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":3,"docs":{"44":{"tf":1.0},"61":{"tf":1.0},"73":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":6,"docs":{"39":{"tf":1.0},"67":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"81":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"41":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.4142135623730951}}}},"n":{"/":{"a":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"20":{"tf":1.0},"40":{"tf":1.0},"52":{"tf":1.0},"55":{"tf":2.8284271247461903},"57":{"tf":1.4142135623730951},"63":{"tf":3.4641016151377544},"66":{"tf":2.0},"73":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":7,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.0},"7":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"18":{"tf":1.4142135623730951},"23":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"54":{"tf":2.0},"55":{"tf":2.0},"61":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.4142135623730951},"72":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":3,"docs":{"24":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":4,"docs":{"20":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.4142135623730951},"70":{"tf":1.0}}}}}}},"w":{"(":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":13,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.7320508075688772},"16":{"tf":1.0},"3":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":3.872983346207417},"59":{"tf":1.0},"63":{"tf":4.47213595499958},"66":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"45":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"l":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"45":{"tf":2.449489742783178},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"37":{"tf":1.0}},"e":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"33":{"tf":1.0},"65":{"tf":2.0},"72":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"18":{"tf":2.6457513110645907},"19":{"tf":1.0},"22":{"tf":1.0},"39":{"tf":1.0},"73":{"tf":2.449489742783178},"74":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"c":{"df":2,"docs":{"44":{"tf":1.0},"7":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"8":{"tf":1.0}},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"w":{"df":2,"docs":{"41":{"tf":1.0},"73":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}},"df":0,"docs":{}}},"v":{"d":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"4":{"tf":1.0},"54":{"tf":2.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"21":{"tf":1.0},"82":{"tf":1.4142135623730951}},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"k":{"df":6,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}},"n":{"c":{"df":5,"docs":{"21":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"49":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":9,"docs":{"19":{"tf":1.0},"21":{"tf":1.0},"24":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.0},"83":{"tf":1.0}},"e":{"'":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"71":{"tf":1.0}}}}},"p":{"a":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":1,"docs":{"14":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"69":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":1.0}}}}}}}}}}}},"r":{"df":8,"docs":{"14":{"tf":1.7320508075688772},"51":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":1.7320508075688772},"55":{"tf":3.4641016151377544},"61":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}},"s":{"[":{"0":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.23606797749979},"71":{"tf":1.4142135623730951}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"28":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"11":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.0},"56":{"tf":1.7320508075688772},"61":{"tf":1.0},"63":{"tf":2.23606797749979},"8":{"tf":1.0}}}}},"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}},"v":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.0},"70":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"75":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"0":{"tf":1.0},"15":{"tf":1.0}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":43,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":3.4641016151377544},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":3.1622776601683795},"45":{"tf":2.23606797749979},"46":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":2.23606797749979},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":4.123105625617661},"54":{"tf":3.605551275463989},"55":{"tf":4.358898943540674},"56":{"tf":1.0},"57":{"tf":2.0},"58":{"tf":2.8284271247461903},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.7320508075688772},"66":{"tf":1.7320508075688772},"67":{"tf":3.3166247903554},"70":{"tf":1.0},"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"81":{"tf":1.0},"84":{"tf":2.23606797749979},"85":{"tf":1.0},"9":{"tf":1.0}},"e":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"81":{"tf":1.0},"82":{"tf":1.0}}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":6,"docs":{"17":{"tf":1.0},"40":{"tf":2.23606797749979},"41":{"tf":1.7320508075688772},"42":{"tf":2.0},"43":{"tf":1.0},"63":{"tf":5.0}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"63":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":4.47213595499958}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"57":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"4":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":2.449489742783178}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":3,"docs":{"37":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"54":{"tf":2.0},"72":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"14":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"7":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":4.242640687119285},"55":{"tf":1.0},"59":{"tf":1.0},"66":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"32":{"tf":1.7320508075688772}}}}}}},"i":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"g":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.0},"67":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":7,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"7":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"61":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"r":{"df":1,"docs":{"71":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"33":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"df":0,"docs":{},"t":{"df":5,"docs":{"16":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"49":{"tf":1.4142135623730951},"52":{"tf":1.0}}}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"v":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":3,"docs":{"44":{"tf":1.0},"55":{"tf":2.6457513110645907},"7":{"tf":1.0}},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"74":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"79":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":10,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.0},"6":{"tf":1.7320508075688772},"62":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":2.23606797749979}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"70":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":42,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.7320508075688772},"4":{"tf":2.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.0},"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772},"54":{"tf":6.082762530298219},"55":{"tf":3.7416573867739413},"57":{"tf":2.23606797749979},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"66":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"74":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.0},"71":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"11":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}}}}},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"69":{"tf":1.0},"72":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"54":{"tf":1.4142135623730951},"55":{"tf":4.123105625617661},"57":{"tf":2.23606797749979},"65":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}}},"r":{"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"n":{"df":1,"docs":{"16":{"tf":1.4142135623730951}},"g":{"df":3,"docs":{"14":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"d":{"df":1,"docs":{"63":{"tf":3.605551275463989}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}}}},"i":{"df":5,"docs":{"40":{"tf":1.0},"45":{"tf":1.0},"63":{"tf":2.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"44":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"55":{"tf":2.0},"61":{"tf":1.0},"7":{"tf":1.0}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":6,"docs":{"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"53":{"tf":1.0},"55":{"tf":3.1622776601683795},"57":{"tf":1.0},"59":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"0":{"tf":1.0}},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"7":{"tf":2.0}},"f":{"df":1,"docs":{"73":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"4":{"tf":1.0},"48":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"55":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":2.449489742783178},"66":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.0},"81":{"tf":1.0}}}},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":4,"docs":{"22":{"tf":1.4142135623730951},"48":{"tf":1.0},"59":{"tf":1.0},"62":{"tf":1.0}},"e":{">":{"/":{"<":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.4142135623730951},"59":{"tf":2.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"v":{"df":5,"docs":{"14":{"tf":1.0},"22":{"tf":1.0},"44":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"74":{"tf":1.7320508075688772},"75":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"o":{"df":5,"docs":{"20":{"tf":1.0},"4":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.0}},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":15,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"2":{"tf":1.4142135623730951},"22":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":2.6457513110645907},"55":{"tf":4.0},"57":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":2.0},"65":{"tf":1.0},"67":{"tf":2.449489742783178},"7":{"tf":1.0},"85":{"tf":1.0},"9":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":16,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":2.6457513110645907},"44":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"60":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.7320508075688772},"69":{"tf":1.0},"74":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"56":{"tf":1.0}},"t":{"df":1,"docs":{"54":{"tf":2.449489742783178}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"37":{"tf":1.0},"6":{"tf":1.0},"69":{"tf":1.4142135623730951},"7":{"tf":1.0},"71":{"tf":1.4142135623730951},"82":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"r":{"df":10,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.0},"54":{"tf":2.0},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"75":{"tf":1.0},"78":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":3,"docs":{"4":{"tf":1.0},"48":{"tf":1.0},"61":{"tf":2.6457513110645907}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":6,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0},"54":{"tf":2.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":10,"docs":{"14":{"tf":1.0},"17":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"63":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":8,"docs":{"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"59":{"tf":1.0},"7":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"17":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"59":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":19,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"54":{"tf":4.58257569495584},"55":{"tf":5.0990195135927845},"58":{"tf":1.0},"6":{"tf":1.0},"63":{"tf":4.47213595499958},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":2.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"71":{"tf":1.7320508075688772}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"29":{"tf":1.7320508075688772},"40":{"tf":1.0},"72":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":2.23606797749979}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"74":{"tf":1.0}}}}},"p":{"c":{"df":1,"docs":{"48":{"tf":1.0}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951}}}},"u":{"b":{"df":0,"docs":{},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"n":{"df":14,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"70":{"tf":2.0},"77":{"tf":1.0},"78":{"tf":2.449489742783178},"82":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":8,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"64":{"tf":1.0}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":6,"docs":{"14":{"tf":1.0},"54":{"tf":1.7320508075688772},"56":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"44":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":15,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"54":{"tf":4.242640687119285},"58":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0},"82":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"'":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}},"df":18,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"4":{"tf":2.0},"41":{"tf":2.8284271247461903},"42":{"tf":3.4641016151377544},"43":{"tf":2.6457513110645907},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"48":{"tf":2.6457513110645907},"50":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"52":{"tf":2.449489742783178},"54":{"tf":4.242640687119285},"58":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"62":{"tf":2.0},"66":{"tf":3.1622776601683795}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":5.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":2.0}}}}}}},"df":3,"docs":{"14":{"tf":1.0},"64":{"tf":2.0},"8":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"d":{"b":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"15":{"tf":1.0},"38":{"tf":1.0},"48":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":13,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.7320508075688772},"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"57":{"tf":1.0},"63":{"tf":3.1622776601683795},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"83":{"tf":1.0}},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"45":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"75":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"37":{"tf":1.0},"70":{"tf":1.0},"77":{"tf":1.0}}}}}},"t":{"df":22,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":1.7320508075688772},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":1.0},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":2.449489742783178},"64":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"54":{"tf":2.449489742783178}},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":3.1622776601683795}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"15":{"tf":1.0},"23":{"tf":2.0},"24":{"tf":1.4142135623730951},"25":{"tf":2.0},"26":{"tf":1.7320508075688772},"27":{"tf":1.7320508075688772},"28":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"31":{"tf":1.7320508075688772},"32":{"tf":1.7320508075688772},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0},"8":{"tf":1.0}}}}}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":1,"docs":{"85":{"tf":1.0}}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"47":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":1,"docs":{"71":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"45":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"i":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"59":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.0},"72":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}},"r":{"c":{"df":2,"docs":{"14":{"tf":1.0},"40":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"46":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"44":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"38":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"55":{"tf":2.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}},"r":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"56":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":7,"docs":{"1":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":1.0},"46":{"tf":1.0},"82":{"tf":2.0}}}},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":6,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.7320508075688772},"53":{"tf":2.0},"54":{"tf":3.4641016151377544},"6":{"tf":1.0},"7":{"tf":2.449489742783178}}},"i":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"6":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"79":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":5,"docs":{"17":{"tf":1.0},"40":{"tf":1.0},"45":{"tf":1.0},"61":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":2.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.7320508075688772},"4":{"tf":2.0},"48":{"tf":1.0},"54":{"tf":4.898979485566356},"55":{"tf":2.6457513110645907},"73":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"11":{"tf":2.0},"23":{"tf":2.0},"24":{"tf":1.7320508075688772},"52":{"tf":1.0},"53":{"tf":2.449489742783178},"55":{"tf":5.385164807134504},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"66":{"tf":1.7320508075688772},"7":{"tf":1.0}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":16,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"67":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}}},"u":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"71":{"tf":1.0},"72":{"tf":1.4142135623730951},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":2,"docs":{"13":{"tf":1.0},"7":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"53":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":4,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"7":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":3.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"70":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"78":{"tf":2.0}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"46":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"73":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772},"67":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":2,"docs":{"55":{"tf":1.0},"70":{"tf":1.7320508075688772}}},"k":{"df":0,"docs":{},"e":{"df":10,"docs":{"13":{"tf":1.0},"14":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.0},"79":{"tf":1.0}},"n":{"df":2,"docs":{"4":{"tf":1.0},"40":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"k":{"df":2,"docs":{"37":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"r":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"69":{"tf":1.0},"71":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}}}}},"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"57":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":2.0}}}},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":1,"docs":{"70":{"tf":1.0}}}}}}}}},"df":8,"docs":{"4":{"tf":1.0},"42":{"tf":1.0},"68":{"tf":1.0},"70":{"tf":3.1622776601683795},"77":{"tf":1.4142135623730951},"78":{"tf":2.449489742783178},"84":{"tf":2.449489742783178},"85":{"tf":1.7320508075688772}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":2,"docs":{"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"71":{"tf":1.0},"82":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"79":{"tf":1.0}}}}}}}}}}},"i":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},".":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}},"df":10,"docs":{"22":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"82":{"tf":1.0}},"r":{"df":1,"docs":{"82":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":1,"docs":{"68":{"tf":1.0}}}},"o":{"df":1,"docs":{"38":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":2.0},"57":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"73":{"tf":1.0}}}},"p":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"36":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":3,"docs":{"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"7":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}}}}},"df":1,"docs":{"4":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"54":{"tf":2.449489742783178}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"o":{"df":2,"docs":{"14":{"tf":1.7320508075688772},"55":{"tf":2.0}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":23,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":4.47213595499958},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"31":{"tf":1.7320508075688772},"40":{"tf":1.0},"7":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":2.0}}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"84":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":6,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":7,"docs":{"19":{"tf":1.0},"55":{"tf":2.0},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":2.23606797749979},"66":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"t":{"df":2,"docs":{"71":{"tf":1.0},"78":{"tf":2.0}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":7,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"12":{"tf":1.0},"6":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"31":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}}},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"d":{"a":{"df":0,"docs":{},"t":{"df":20,"docs":{"11":{"tf":3.605551275463989},"14":{"tf":3.605551275463989},"16":{"tf":1.7320508075688772},"17":{"tf":1.0},"36":{"tf":1.4142135623730951},"40":{"tf":2.8284271247461903},"41":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"48":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":9.16515138991168},"6":{"tf":1.0},"63":{"tf":5.0},"64":{"tf":2.6457513110645907},"66":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"9":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"55":{"tf":1.7320508075688772}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"26":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":5.291502622129181}}}}}},"r":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"36":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":2.0},"64":{"tf":3.4641016151377544}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":2.8284271247461903}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}}},"df":1,"docs":{"14":{"tf":1.4142135623730951}}},"df":7,"docs":{"39":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"44":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"l":{"df":4,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0},"83":{"tf":1.4142135623730951}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":7,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":1.0},"53":{"tf":1.4142135623730951},"77":{"tf":1.0},"9":{"tf":1.0}}}},"df":35,"docs":{"1":{"tf":1.0},"11":{"tf":2.8284271247461903},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.7320508075688772},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951},"77":{"tf":1.0},"79":{"tf":1.0},"8":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"14":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"52":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"55":{"tf":4.795831523312719}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"v":{"2":{"df":2,"docs":{"18":{"tf":1.0},"33":{"tf":1.0}}},"3":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"0":{"tf":1.0},"14":{"tf":1.0}}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":7,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"55":{"tf":3.4641016151377544},"66":{"tf":1.0},"79":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"8":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}}}},"df":6,"docs":{"14":{"tf":2.0},"54":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"78":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":2,"docs":{"41":{"tf":1.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}}}}}}},"df":9,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"48":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"58":{"tf":1.0},"65":{"tf":2.0},"66":{"tf":2.449489742783178},"7":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":5,"docs":{"51":{"tf":1.0},"54":{"tf":5.0},"58":{"tf":1.0},"60":{"tf":1.0},"66":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":2.23606797749979}}}}}}}}}}}},"i":{"a":{"df":7,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"33":{"tf":1.0},"56":{"tf":1.0},"6":{"tf":1.0},"76":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":3,"docs":{"14":{"tf":1.0},"44":{"tf":1.0},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":5,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"8":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"i":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}}}}}}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":23,"docs":{"0":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.7320508075688772},"2":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"25":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":2.23606797749979},"43":{"tf":1.0},"54":{"tf":1.4142135623730951},"55":{"tf":7.416198487095663},"57":{"tf":3.1622776601683795},"59":{"tf":1.0},"63":{"tf":2.23606797749979},"65":{"tf":1.0},"67":{"tf":3.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"57":{"tf":1.0}}}}}}}}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"43":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}},"y":{"df":3,"docs":{"42":{"tf":1.0},"44":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.0},"65":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"23":{"tf":1.0},"49":{"tf":1.0},"58":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"23":{"tf":1.0},"53":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"77":{"tf":1.0},"79":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"59":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"k":{"df":15,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"44":{"tf":1.0},"46":{"tf":1.0},"6":{"tf":1.4142135623730951},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"l":{"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}},"x":{"d":{"df":0,"docs":{},"g":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{".":{"b":{"df":0,"docs":{},"z":{"2":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"39":{"tf":1.0},"40":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"11":{"tf":1.0},"19":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":2,"docs":{"79":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"79":{"tf":1.0},"81":{"tf":1.0}}}}}}}},"breadcrumbs":{"root":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}},"1":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"19":{"tf":4.0},"67":{"tf":1.0}}},"2":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"0":{"1":{"8":{".":{"0":{"3":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}},"3":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{".":{"9":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"9":{".":{"0":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":3,"docs":{"14":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"43":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"53":{"tf":1.0},"62":{"tf":1.0},"70":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"38":{"tf":1.0},"55":{"tf":2.0}}}}}}}},"r":{"d":{"df":2,"docs":{"33":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"41":{"tf":1.0},"71":{"tf":1.0}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"(":{"df":0,"docs":{},"u":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"81":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"59":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"19":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"56":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}},"df":15,"docs":{"11":{"tf":1.0},"14":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":2.0},"40":{"tf":1.7320508075688772},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"45":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"81":{"tf":1.4142135623730951}},"v":{"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":1,"docs":{"21":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.0},"57":{"tf":1.4142135623730951},"63":{"tf":3.0}}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"72":{"tf":1.0},"8":{"tf":1.7320508075688772}},"e":{"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"16":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.23606797749979},"63":{"tf":2.449489742783178}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":7,"docs":{"14":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"79":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}},"g":{"df":1,"docs":{"6":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"25":{"tf":2.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"4":{"tf":1.0},"46":{"tf":1.4142135623730951},"81":{"tf":1.0}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"39":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"56":{"tf":1.0}}}},"y":{"df":0,"docs":{},"z":{"df":1,"docs":{"61":{"tf":1.0}}}}}},"d":{"'":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"i":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"14":{"tf":2.0},"21":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"33":{"tf":1.0},"43":{"tf":1.0}}},"df":3,"docs":{"49":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"71":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":9,"docs":{"0":{"tf":1.0},"15":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":2.0},"22":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"v":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"81":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"55":{"tf":2.0},"56":{"tf":1.4142135623730951},"63":{"tf":2.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"40":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":2.23606797749979},"52":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"84":{"tf":1.0}}}},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":9,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.6457513110645907},"55":{"tf":2.0},"59":{"tf":1.0},"67":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"63":{"tf":2.0},"74":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"37":{"tf":1.0},"54":{"tf":1.4142135623730951},"65":{"tf":1.0},"82":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"26":{"tf":2.0}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"54":{"tf":2.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"21":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"7":{"tf":1.4142135623730951},"73":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"73":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":6,"docs":{"22":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.4142135623730951},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"73":{"tf":1.0},"78":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"21":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0}},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"0":{"tf":1.0},"75":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"0":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"78":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"78":{"tf":1.0}}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"46":{"tf":1.0},"73":{"tf":1.0}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":7,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"33":{"tf":1.0},"74":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"22":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"o":{"a":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"19":{"tf":1.0},"70":{"tf":1.0},"85":{"tf":2.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":12,"docs":{"21":{"tf":1.4142135623730951},"40":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":3.0},"55":{"tf":2.0},"59":{"tf":1.0},"61":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":3.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"4":{"tf":1.0}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"63":{"tf":3.1622776601683795},"66":{"tf":1.4142135623730951},"7":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":3,"docs":{"73":{"tf":2.6457513110645907},"74":{"tf":2.6457513110645907},"75":{"tf":1.7320508075688772}}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"i":{"c":{"d":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"71":{"tf":1.0}},"r":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":34,"docs":{"0":{"tf":2.23606797749979},"1":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"59":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0},"77":{"tf":1.7320508075688772},"78":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":1.0},"84":{"tf":1.0}},"e":{"'":{"df":6,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":5.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"49":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":6,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"54":{"tf":3.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":7,"docs":{"41":{"tf":1.0},"42":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":2.0},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"41":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"60":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":8,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"40":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"63":{"tf":3.4641016151377544},"8":{"tf":1.0}}}}}}}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":6,"docs":{"0":{"tf":1.0},"14":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"78":{"tf":1.0},"85":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"84":{"tf":1.0}}}},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":12,"docs":{"18":{"tf":1.7320508075688772},"2":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":3.3166247903554},"45":{"tf":3.3166247903554},"48":{"tf":1.0},"49":{"tf":3.605551275463989},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":6,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.0},"84":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"m":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"44":{"tf":1.0},"63":{"tf":2.449489742783178}}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"44":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":2.449489742783178},"72":{"tf":1.4142135623730951},"73":{"tf":1.7320508075688772},"75":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"66":{"tf":1.0}}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"44":{"tf":1.0},"54":{"tf":2.449489742783178},"65":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.4142135623730951},"81":{"tf":1.0}}},"s":{"df":1,"docs":{"76":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":2,"docs":{"13":{"tf":1.0},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.4142135623730951}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":23,"docs":{"15":{"tf":1.7320508075688772},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"37":{"tf":1.0}},"u":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"50":{"tf":2.6457513110645907},"62":{"tf":2.449489742783178}}}}}}}},"df":3,"docs":{"11":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"tf":2.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":17,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.449489742783178},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.7320508075688772},"48":{"tf":1.0},"50":{"tf":1.7320508075688772},"52":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":2.6457513110645907},"64":{"tf":1.0}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"22":{"tf":1.0},"40":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"55":{"tf":2.0},"79":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"0":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"12":{"tf":2.23606797749979},"3":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":2.0},"64":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":12,"docs":{"0":{"tf":1.4142135623730951},"18":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"58":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":21,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.7320508075688772},"63":{"tf":6.324555320336759},"67":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"73":{"tf":1.0},"9":{"tf":1.0}}}},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":9,"docs":{"45":{"tf":2.23606797749979},"49":{"tf":1.4142135623730951},"52":{"tf":2.23606797749979},"54":{"tf":5.744562646538029},"55":{"tf":5.477225575051661},"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":2.0},"79":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"12":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"81":{"tf":1.7320508075688772}},"u":{"df":1,"docs":{"53":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"69":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":18,"docs":{"68":{"tf":1.7320508075688772},"69":{"tf":1.0},"70":{"tf":1.0},"71":{"tf":1.4142135623730951},"72":{"tf":1.4142135623730951},"73":{"tf":1.0},"74":{"tf":1.0},"75":{"tf":1.0},"76":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0},"79":{"tf":1.0},"80":{"tf":1.0},"81":{"tf":1.0},"82":{"tf":1.0},"83":{"tf":1.4142135623730951},"84":{"tf":1.0},"85":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":2.0},"81":{"tf":1.0}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":2.0},"83":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"46":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"66":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"68":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":3.3166247903554},"73":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":9,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"39":{"tf":1.0}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"33":{"tf":1.0}},"v":{"2":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":29,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"23":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":2.0},"44":{"tf":2.449489742783178},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"63":{"tf":3.0},"65":{"tf":2.0},"70":{"tf":1.0},"77":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}},"e":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{},"s":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":15,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":2.0},"21":{"tf":1.4142135623730951},"27":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"43":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"63":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"17":{"tf":1.0},"55":{"tf":4.358898943540674}},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":3.4641016151377544}}}}},"b":{"[":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"v":{"[":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":2.0},"7":{"tf":1.0}}}},"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"27":{"tf":2.0},"40":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"64":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":2.23606797749979},"14":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"82":{"tf":1.0}}}},"i":{"df":0,"docs":{},"n":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.4641016151377544}},"e":{"d":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"42":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"14":{"tf":1.0},"55":{"tf":2.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"6":{"tf":1.0},"67":{"tf":1.4142135623730951},"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":6,"docs":{"40":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"8":{"tf":1.0}}}},"r":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":1,"docs":{"77":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"13":{"tf":1.0},"18":{"tf":1.4142135623730951},"21":{"tf":1.0},"49":{"tf":1.0},"63":{"tf":3.1622776601683795}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":8,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"68":{"tf":1.0},"76":{"tf":2.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":4,"docs":{"0":{"tf":1.0},"18":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"1":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}},".":{"a":{"d":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":3,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.0},"9":{"tf":1.0}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":2.23606797749979},"56":{"tf":1.0},"67":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"84":{"tf":1.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.4142135623730951}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":8,"docs":{"0":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":3.1622776601683795},"58":{"tf":1.4142135623730951},"60":{"tf":1.0},"67":{"tf":2.23606797749979}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"39":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"2":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.8284271247461903},"4":{"tf":1.4142135623730951},"40":{"tf":1.7320508075688772},"41":{"tf":2.0},"42":{"tf":3.605551275463989},"43":{"tf":1.4142135623730951},"44":{"tf":2.6457513110645907},"45":{"tf":1.7320508075688772},"46":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.0},"51":{"tf":2.6457513110645907},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"6":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"o":{"c":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"56":{"tf":1.0},"76":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"s":{"/":{"*":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"1":{"tf":1.0},"39":{"tf":1.0},"72":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}}}}},"df":1,"docs":{"71":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":5,"docs":{"5":{"tf":1.0},"61":{"tf":1.0},"67":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":2.0}}}},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"74":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":2,"docs":{"4":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"/":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"52":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"66":{"tf":1.0}},"r":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"82":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"37":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":13,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"53":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"4":{"tf":2.0},"45":{"tf":2.6457513110645907},"48":{"tf":1.0},"52":{"tf":3.1622776601683795}}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"71":{"tf":1.0},"74":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}}}},"m":{"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"63":{"tf":3.0},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"4":{"tf":1.0},"71":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}}},"d":{"df":5,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"82":{"tf":1.7320508075688772}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":4.123105625617661},"67":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"(":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.1622776601683795}},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"40":{"tf":1.4142135623730951},"53":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"75":{"tf":2.23606797749979}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"53":{"tf":2.0},"67":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"\"":{":":{"df":0,"docs":{},"{":{"\"":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"\"":{":":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"13":{"tf":2.0},"14":{"tf":2.449489742783178},"5":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"6":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":19,"docs":{"22":{"tf":1.0},"4":{"tf":1.4142135623730951},"45":{"tf":2.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":6.557438524302},"55":{"tf":7.3484692283495345},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.123105625617661},"64":{"tf":2.23606797749979},"82":{"tf":2.23606797749979}}}}}},"t":{"c":{"df":2,"docs":{"19":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"21":{"tf":1.0},"45":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"54":{"tf":1.7320508075688772},"79":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"13":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":2.0},"85":{"tf":1.0}},"e":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"55":{"tf":2.0}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"37":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"55":{"tf":2.0}}}},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"59":{"tf":1.0},"70":{"tf":1.7320508075688772},"84":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"4":{"tf":1.0},"40":{"tf":1.0},"48":{"tf":1.0},"64":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"d":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":8,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":2.0},"63":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":5.656854249492381}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":7,"docs":{"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"43":{"tf":1.0},"57":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"67":{"tf":1.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"40":{"tf":1.0},"82":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":9,"docs":{"4":{"tf":1.4142135623730951},"41":{"tf":2.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":2.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"56":{"tf":1.0}}}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":3,"docs":{"48":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.7320508075688772},"6":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":1.4142135623730951}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"55":{"tf":3.872983346207417},"63":{"tf":5.0990195135927845}}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"[":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772}}}},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"40":{"tf":1.0}}}}},"t":{"df":1,"docs":{"44":{"tf":1.0}}},"x":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"74":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"71":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"(":{"\"":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"19":{"tf":1.0},"67":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":15,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"83":{"tf":1.0}}}}}},"r":{"c":{"df":1,"docs":{"63":{"tf":2.449489742783178}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"39":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}}},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"72":{"tf":1.7320508075688772}}},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"75":{"tf":1.7320508075688772},"82":{"tf":1.0}}}},"df":1,"docs":{"71":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"23":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.7320508075688772},"51":{"tf":1.0},"54":{"tf":2.8284271247461903},"58":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":2.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"77":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"73":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":1,"docs":{"82":{"tf":2.8284271247461903}},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.0},"55":{"tf":2.0},"73":{"tf":1.4142135623730951}}}},"n":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"45":{"tf":2.0},"52":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":4,"docs":{"45":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"58":{"tf":1.0},"64":{"tf":2.6457513110645907}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":11,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951},"50":{"tf":2.0},"54":{"tf":1.0},"55":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951},"8":{"tf":1.0},"81":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}}},"g":{"a":{"df":0,"docs":{},"r":{"b":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":4.47213595499958}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"39":{"tf":1.0},"66":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0}}}}},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":18,"docs":{"1":{"tf":1.7320508075688772},"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"3":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"47":{"tf":1.7320508075688772},"5":{"tf":1.0},"54":{"tf":2.8284271247461903},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.8284271247461903}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":2.449489742783178},"83":{"tf":1.0}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"67":{"tf":1.0}},"e":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":10,"docs":{"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":3.1622776601683795},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"39":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"15":{"tf":1.0},"40":{"tf":1.0}},"n":{"df":9,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"51":{"tf":1.0},"54":{"tf":2.23606797749979},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}},"o":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"b":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":8,"docs":{"0":{"tf":1.0},"2":{"tf":1.0},"52":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0},"72":{"tf":1.0},"84":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"t":{"df":3,"docs":{"0":{"tf":2.449489742783178},"18":{"tf":3.0},"21":{"tf":2.8284271247461903}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"14":{"tf":1.0},"46":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"69":{"tf":1.0},"70":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}},"l":{"df":4,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"41":{"tf":1.0},"44":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":8,"docs":{"19":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":5.0990195135927845},"56":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":2.23606797749979}},"l":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"40":{"tf":1.0},"63":{"tf":1.4142135623730951},"71":{"tf":1.0},"79":{"tf":1.0}}}}},"df":1,"docs":{"74":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":3,"docs":{"17":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":6,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"68":{"tf":1.0},"73":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.7320508075688772},"84":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"83":{"tf":1.0}}},"df":2,"docs":{"4":{"tf":1.0},"47":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}}}}},"i":{"d":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":12,"docs":{"0":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"41":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"/":{".":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"}":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"t":{"df":0,"docs":{},"p":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},":":{"/":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"20":{"tf":1.4142135623730951},"22":{"tf":1.7320508075688772},"37":{"tf":1.7320508075688772},"59":{"tf":1.0},"62":{"tf":1.4142135623730951}},"s":{":":{"/":{"/":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"v":{"2":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{".":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"a":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"1":{".":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"n":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"2":{"0":{"2":{"3":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"b":{".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"a":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"v":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"/":{"1":{".":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"d":{"b":{".":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{".":{"df":1,"docs":{"19":{"tf":1.0}}},"d":{"df":3,"docs":{"53":{"tf":2.8284271247461903},"55":{"tf":1.4142135623730951},"67":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}},"i":{"df":9,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"51":{"tf":1.0},"60":{"tf":1.4142135623730951},"63":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"m":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"g":{"df":7,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"49":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"56":{"tf":2.0},"6":{"tf":1.0},"9":{"tf":1.0}}}},"df":1,"docs":{"0":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.8284271247461903},"41":{"tf":2.23606797749979},"42":{"tf":3.1622776601683795},"43":{"tf":2.23606797749979},"44":{"tf":2.449489742783178},"45":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"49":{"tf":1.0},"50":{"tf":1.7320508075688772},"54":{"tf":2.0},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"62":{"tf":2.0},"63":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":2.0},"7":{"tf":1.0},"76":{"tf":1.0}}}}}}},"i":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":27,"docs":{"11":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":3.872983346207417},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":2,"docs":{"56":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"17":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"13":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":2.449489742783178},"18":{"tf":2.449489742783178},"19":{"tf":2.0},"2":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":2.0},"40":{"tf":1.7320508075688772},"45":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":3.4641016151377544},"54":{"tf":5.477225575051661},"56":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":3.4641016151377544},"60":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":1.7320508075688772},"66":{"tf":1.0},"7":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"{":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"54":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"18":{"tf":1.7320508075688772},"54":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"]":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}},"df":5,"docs":{"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"53":{"tf":2.6457513110645907},"57":{"tf":1.0},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":9,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.4142135623730951},"45":{"tf":1.0},"49":{"tf":2.0},"53":{"tf":3.4641016151377544},"54":{"tf":4.47213595499958},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}},"i":{"c":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"82":{"tf":1.0}},"r":{"df":0,"docs":{},"m":{"df":26,"docs":{"14":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":2.449489742783178},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":2.0},"59":{"tf":1.0},"63":{"tf":2.0},"65":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"12":{"tf":1.0},"55":{"tf":2.0},"82":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"2":{"tf":1.0},"45":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.6457513110645907}}}}},"i":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"58":{"tf":1.0}}},"n":{"c":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"38":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"6":{"4":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":7,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"70":{"tf":2.23606797749979},"77":{"tf":1.0},"78":{"tf":2.0},"84":{"tf":1.0},"85":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"74":{"tf":1.0}}}}},"f":{"a":{"c":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":2.6457513110645907},"40":{"tf":2.0},"41":{"tf":1.0},"44":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":2.0},"51":{"tf":1.0},"54":{"tf":4.58257569495584},"55":{"tf":5.5677643628300215},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":2.23606797749979},"63":{"tf":6.928203230275509},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"m":{"d":{"/":{"df":0,"docs":{},"m":{"d":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"15":{"tf":1.0}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"70":{"tf":1.0}}}}}},"v":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"70":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":1,"docs":{"59":{"tf":1.0}}},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"o":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":4.69041575982343}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"u":{"df":4,"docs":{"20":{"tf":1.0},"37":{"tf":1.0},"39":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}}},"t":{"'":{"df":4,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"54":{"tf":1.7320508075688772},"65":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}}}},"j":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}},"v":{"a":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{")":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},":":{"\"":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":2.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"55":{"tf":2.8284271247461903},"9":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"y":{"'":{"d":{"df":1,"docs":{"53":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.0},"67":{"tf":2.6457513110645907},"81":{"tf":1.0},"82":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"4":{"tf":1.0},"55":{"tf":2.0},"58":{"tf":1.0},"66":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"23":{"tf":1.0}},"n":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"79":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"g":{"df":11,"docs":{"0":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.8284271247461903},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"44":{"tf":2.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":23,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"18":{"tf":1.4142135623730951},"19":{"tf":2.0},"2":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":3.0},"45":{"tf":1.0},"49":{"tf":3.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":5.477225575051661},"56":{"tf":2.6457513110645907},"57":{"tf":1.0},"58":{"tf":2.0},"6":{"tf":2.449489742783178},"60":{"tf":1.0},"61":{"tf":1.0},"7":{"tf":3.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"0":{"tf":1.0},"82":{"tf":1.7320508075688772}}}}}},"i":{"b":{".":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"'":{"df":1,"docs":{"17":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"3":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.4142135623730951},"2":{"tf":2.0},"3":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"5":{"tf":1.4142135623730951},"54":{"tf":2.23606797749979},"6":{"tf":2.0},"7":{"tf":2.6457513110645907},"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.7320508075688772},"39":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"'":{"df":3,"docs":{"2":{"tf":1.0},"21":{"tf":1.0},"41":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"10":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"11":{"tf":2.23606797749979},"12":{"tf":1.4142135623730951},"13":{"tf":1.4142135623730951},"14":{"tf":1.4142135623730951},"16":{"tf":2.0},"21":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0},"9":{"tf":2.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"17":{"tf":1.0},"57":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"42":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}},"k":{"df":1,"docs":{"47":{"tf":1.0}}},"u":{"df":0,"docs":{},"x":{"df":3,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"85":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":11,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.8284271247461903},"67":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}},"o":{"a":{"d":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"76":{"tf":2.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{":":{"5":{"4":{"3":{"4":{"df":1,"docs":{"77":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":2.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":6,"docs":{"68":{"tf":1.0},"73":{"tf":1.0},"79":{"tf":2.23606797749979},"80":{"tf":1.7320508075688772},"81":{"tf":1.0},"82":{"tf":3.0}},"i":{"c":{"df":3,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}},"w":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"t":{";":{"&":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{";":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{";":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{".":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"69":{"tf":1.0}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"71":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":9,"docs":{"18":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"53":{"tf":1.4142135623730951},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":8,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"df":5,"docs":{"19":{"tf":2.6457513110645907},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"'":{"df":5,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"df":18,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":3.0},"54":{"tf":4.69041575982343},"56":{"tf":2.6457513110645907},"57":{"tf":1.0},"6":{"tf":2.449489742783178},"67":{"tf":2.449489742783178},"7":{"tf":2.0},"8":{"tf":2.23606797749979}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"p":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"[":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"]":{"*":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"[":{"]":{"*":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":18,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":2.0},"24":{"tf":1.0},"25":{"tf":1.7320508075688772},"26":{"tf":1.7320508075688772},"27":{"tf":1.7320508075688772},"28":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"31":{"tf":1.7320508075688772},"32":{"tf":1.7320508075688772},"33":{"tf":1.7320508075688772},"34":{"tf":1.0},"35":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.449489742783178},"67":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.7320508075688772}}}}}},"df":1,"docs":{"54":{"tf":3.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":13,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"2":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"39":{"tf":1.0},"42":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":2.449489742783178},"16":{"tf":1.4142135623730951},"21":{"tf":3.0},"22":{"tf":1.7320508075688772},"40":{"tf":1.0},"48":{"tf":1.0},"55":{"tf":1.7320508075688772},"57":{"tf":2.8284271247461903},"59":{"tf":1.7320508075688772},"65":{"tf":2.0}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.1622776601683795}}}}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}}},"y":{"b":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"41":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"43":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"g":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"21":{"tf":1.0},"61":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"71":{"tf":1.0},"75":{"tf":1.0},"82":{"tf":2.0}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"46":{"tf":1.0}}}}},"t":{"a":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{".":{"*":{".":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":18,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"40":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":4.358898943540674},"55":{"tf":3.4641016151377544},"57":{"tf":1.7320508075688772},"58":{"tf":1.0},"6":{"tf":1.7320508075688772},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.449489742783178},"66":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"s":{"c":{"df":2,"docs":{"68":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"19":{"tf":2.0},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0}}},"r":{"df":4,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":3,"docs":{"44":{"tf":1.0},"61":{"tf":1.0},"73":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":6,"docs":{"39":{"tf":1.0},"67":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"81":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"41":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.4142135623730951}}}},"n":{"/":{"a":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"20":{"tf":1.0},"40":{"tf":1.0},"52":{"tf":1.0},"55":{"tf":2.8284271247461903},"57":{"tf":1.4142135623730951},"63":{"tf":3.4641016151377544},"66":{"tf":2.0},"73":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":7,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.0},"7":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"18":{"tf":1.4142135623730951},"23":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"54":{"tf":2.0},"55":{"tf":2.0},"61":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.4142135623730951},"72":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":3,"docs":{"24":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":4,"docs":{"20":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.4142135623730951},"70":{"tf":1.0}}}}}}},"w":{"(":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":13,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.7320508075688772},"16":{"tf":1.0},"3":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":3.872983346207417},"59":{"tf":1.0},"63":{"tf":4.47213595499958},"66":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"45":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"l":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"45":{"tf":2.449489742783178},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"37":{"tf":1.0}},"e":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"33":{"tf":1.0},"65":{"tf":2.0},"72":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"18":{"tf":2.6457513110645907},"19":{"tf":1.0},"22":{"tf":1.0},"39":{"tf":1.0},"73":{"tf":2.6457513110645907},"74":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"c":{"df":2,"docs":{"44":{"tf":1.0},"7":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"8":{"tf":1.0}},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"w":{"df":2,"docs":{"41":{"tf":1.0},"73":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}},"df":0,"docs":{}}},"v":{"d":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"4":{"tf":1.0},"54":{"tf":2.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"21":{"tf":1.0},"82":{"tf":1.4142135623730951}},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"k":{"df":6,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}},"n":{"c":{"df":5,"docs":{"21":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"49":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":9,"docs":{"19":{"tf":1.0},"21":{"tf":1.0},"24":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.0},"83":{"tf":1.0}},"e":{"'":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"71":{"tf":1.0}}}}},"p":{"a":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":1,"docs":{"14":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"69":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":1.0}}}}}}}}}}}},"r":{"df":8,"docs":{"14":{"tf":1.7320508075688772},"51":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":1.7320508075688772},"55":{"tf":3.4641016151377544},"61":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}},"s":{"[":{"0":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":10,"docs":{"11":{"tf":1.7320508075688772},"4":{"tf":2.6457513110645907},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.23606797749979},"71":{"tf":1.4142135623730951}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"28":{"tf":2.0}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"11":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.0},"56":{"tf":1.7320508075688772},"61":{"tf":1.0},"63":{"tf":2.23606797749979},"8":{"tf":1.0}}}}},"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}},"v":{"df":1,"docs":{"33":{"tf":1.7320508075688772}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.0},"70":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"75":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"0":{"tf":1.0},"15":{"tf":1.0}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":43,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":3.605551275463989},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":3.1622776601683795},"45":{"tf":2.23606797749979},"46":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":2.23606797749979},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":4.123105625617661},"54":{"tf":3.605551275463989},"55":{"tf":4.358898943540674},"56":{"tf":1.0},"57":{"tf":2.0},"58":{"tf":3.1622776601683795},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.7320508075688772},"66":{"tf":1.7320508075688772},"67":{"tf":3.3166247903554},"70":{"tf":1.0},"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"81":{"tf":1.0},"84":{"tf":2.23606797749979},"85":{"tf":1.0},"9":{"tf":1.0}},"e":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"81":{"tf":1.0},"82":{"tf":1.0}}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":6,"docs":{"17":{"tf":1.0},"40":{"tf":2.23606797749979},"41":{"tf":1.7320508075688772},"42":{"tf":2.0},"43":{"tf":1.0},"63":{"tf":5.0}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"63":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":4.47213595499958}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"57":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"4":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":2.449489742783178}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":3,"docs":{"37":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"54":{"tf":2.0},"72":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"14":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"7":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":4.242640687119285},"55":{"tf":1.0},"59":{"tf":1.0},"66":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"32":{"tf":2.0}}}}}}},"i":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"g":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.0},"67":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":7,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"7":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"61":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"r":{"df":1,"docs":{"71":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"33":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"df":0,"docs":{},"t":{"df":5,"docs":{"16":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"49":{"tf":1.4142135623730951},"52":{"tf":1.0}}}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"v":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":3,"docs":{"44":{"tf":1.0},"55":{"tf":2.6457513110645907},"7":{"tf":1.0}},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"74":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"79":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":10,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.0},"6":{"tf":1.7320508075688772},"62":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":2.23606797749979}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"70":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":42,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.7320508075688772},"4":{"tf":2.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.0},"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772},"54":{"tf":6.082762530298219},"55":{"tf":3.7416573867739413},"57":{"tf":2.23606797749979},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"66":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":1.7320508075688772},"74":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.0},"71":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"11":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}}}}},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"69":{"tf":1.0},"72":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"54":{"tf":1.4142135623730951},"55":{"tf":4.123105625617661},"57":{"tf":2.23606797749979},"65":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}}},"r":{"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"n":{"df":1,"docs":{"16":{"tf":1.4142135623730951}},"g":{"df":3,"docs":{"14":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"d":{"df":1,"docs":{"63":{"tf":3.605551275463989}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}}}},"i":{"df":5,"docs":{"40":{"tf":1.0},"45":{"tf":1.0},"63":{"tf":2.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"44":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"55":{"tf":2.0},"61":{"tf":1.0},"7":{"tf":1.0}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":6,"docs":{"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"53":{"tf":1.0},"55":{"tf":3.1622776601683795},"57":{"tf":1.0},"59":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"0":{"tf":1.0}},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"7":{"tf":2.0}},"f":{"df":1,"docs":{"73":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":21,"docs":{"4":{"tf":1.0},"48":{"tf":2.0},"49":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":2.0},"55":{"tf":3.0},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":2.449489742783178},"66":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.0},"81":{"tf":1.0}}}},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":4,"docs":{"22":{"tf":1.4142135623730951},"48":{"tf":1.0},"59":{"tf":1.4142135623730951},"62":{"tf":1.0}},"e":{">":{"/":{"<":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"v":{"df":5,"docs":{"14":{"tf":1.0},"22":{"tf":1.0},"44":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"74":{"tf":1.7320508075688772},"75":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"o":{"df":5,"docs":{"20":{"tf":1.0},"4":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.0}},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":15,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"2":{"tf":1.4142135623730951},"22":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":3.0},"55":{"tf":4.0},"57":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":2.0},"65":{"tf":1.0},"67":{"tf":2.8284271247461903},"7":{"tf":1.0},"85":{"tf":1.0},"9":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":16,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":2.8284271247461903},"44":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"60":{"tf":2.23606797749979},"66":{"tf":1.0},"67":{"tf":1.7320508075688772},"69":{"tf":1.0},"74":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"56":{"tf":1.0}},"t":{"df":1,"docs":{"54":{"tf":2.449489742783178}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"37":{"tf":1.0},"6":{"tf":1.0},"69":{"tf":1.4142135623730951},"7":{"tf":1.0},"71":{"tf":1.7320508075688772},"82":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"r":{"df":10,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.0},"54":{"tf":2.0},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"75":{"tf":1.0},"78":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":3,"docs":{"4":{"tf":1.0},"48":{"tf":1.0},"61":{"tf":3.0}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":6,"docs":{"20":{"tf":1.4142135623730951},"22":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"54":{"tf":2.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":10,"docs":{"14":{"tf":1.0},"17":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"63":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":8,"docs":{"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"59":{"tf":1.0},"7":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"17":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"59":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":19,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"54":{"tf":4.58257569495584},"55":{"tf":5.0990195135927845},"58":{"tf":1.0},"6":{"tf":1.0},"63":{"tf":4.47213595499958},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":2.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"71":{"tf":1.7320508075688772}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"29":{"tf":2.0},"40":{"tf":1.0},"72":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":2.23606797749979}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"74":{"tf":1.0}}}}},"p":{"c":{"df":2,"docs":{"48":{"tf":1.0},"62":{"tf":1.0}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":2.6457513110645907}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951}}}},"u":{"b":{"df":0,"docs":{},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"n":{"df":14,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"70":{"tf":2.0},"77":{"tf":1.0},"78":{"tf":2.449489742783178},"82":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":8,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"64":{"tf":1.0}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":6,"docs":{"14":{"tf":1.0},"54":{"tf":1.7320508075688772},"56":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"44":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":15,"docs":{"13":{"tf":1.7320508075688772},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"54":{"tf":4.242640687119285},"58":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0},"82":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"'":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}},"df":19,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"4":{"tf":2.0},"41":{"tf":3.0},"42":{"tf":3.605551275463989},"43":{"tf":2.8284271247461903},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"48":{"tf":2.6457513110645907},"50":{"tf":2.0},"51":{"tf":2.0},"52":{"tf":2.449489742783178},"54":{"tf":4.242640687119285},"58":{"tf":2.0},"59":{"tf":1.0},"60":{"tf":2.0},"61":{"tf":1.4142135623730951},"62":{"tf":2.23606797749979},"66":{"tf":3.4641016151377544}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":5.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":2.23606797749979}}}}}}},"df":3,"docs":{"14":{"tf":1.0},"64":{"tf":2.0},"8":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"d":{"b":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"15":{"tf":1.0},"38":{"tf":1.0},"48":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":13,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.7320508075688772},"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"57":{"tf":1.0},"63":{"tf":3.1622776601683795},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"83":{"tf":1.0}},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"45":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"75":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"37":{"tf":1.0},"70":{"tf":1.0},"77":{"tf":1.0}}}}}},"t":{"df":22,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":1.7320508075688772},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":1.0},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":2.449489742783178},"64":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"54":{"tf":2.449489742783178}},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":3.1622776601683795}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"15":{"tf":1.0},"23":{"tf":2.449489742783178},"24":{"tf":2.0},"25":{"tf":2.23606797749979},"26":{"tf":2.0},"27":{"tf":2.0},"28":{"tf":2.0},"29":{"tf":2.0},"30":{"tf":2.0},"31":{"tf":2.0},"32":{"tf":2.0},"33":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"35":{"tf":1.4142135623730951},"40":{"tf":1.0},"44":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0},"8":{"tf":1.0}}}}}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":1,"docs":{"85":{"tf":1.0}}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"47":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":1,"docs":{"71":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"45":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"i":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"59":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.0},"72":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}},"r":{"c":{"df":2,"docs":{"14":{"tf":1.0},"40":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"46":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"44":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"38":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"55":{"tf":2.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}},"r":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"56":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":19,"docs":{"1":{"tf":1.7320508075688772},"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"21":{"tf":1.0},"3":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"46":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":2.0},"9":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":6,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":2.0},"53":{"tf":2.0},"54":{"tf":3.4641016151377544},"6":{"tf":1.0},"7":{"tf":2.6457513110645907}}},"i":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"6":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"79":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":5,"docs":{"17":{"tf":1.0},"40":{"tf":1.0},"45":{"tf":1.0},"61":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":2.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.7320508075688772},"4":{"tf":2.0},"48":{"tf":1.0},"54":{"tf":5.0990195135927845},"55":{"tf":3.0},"73":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"11":{"tf":2.0},"23":{"tf":2.0},"24":{"tf":2.0},"52":{"tf":1.0},"53":{"tf":2.449489742783178},"55":{"tf":5.385164807134504},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"66":{"tf":1.7320508075688772},"7":{"tf":1.0}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":16,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"67":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.7320508075688772}}}}}},"u":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"71":{"tf":1.0},"72":{"tf":1.4142135623730951},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":2,"docs":{"13":{"tf":1.0},"7":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"53":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":4,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"7":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":3.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"70":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"78":{"tf":2.0}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":13,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":2.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"30":{"tf":2.0}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"73":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772},"67":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":2,"docs":{"55":{"tf":1.0},"70":{"tf":1.7320508075688772}}},"k":{"df":0,"docs":{},"e":{"df":10,"docs":{"13":{"tf":1.0},"14":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.0},"79":{"tf":1.0}},"n":{"df":2,"docs":{"4":{"tf":1.0},"40":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"k":{"df":2,"docs":{"37":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"r":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"69":{"tf":1.0},"71":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}}}}},"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"57":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":2.0}}}},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":1,"docs":{"70":{"tf":1.0}}}}}}}}},"df":8,"docs":{"4":{"tf":1.0},"42":{"tf":1.0},"68":{"tf":1.0},"70":{"tf":3.3166247903554},"77":{"tf":1.4142135623730951},"78":{"tf":2.6457513110645907},"84":{"tf":2.8284271247461903},"85":{"tf":2.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":2,"docs":{"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"71":{"tf":1.0},"82":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"79":{"tf":1.0}}}}}}}}}}},"i":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},".":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}},"df":10,"docs":{"22":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"82":{"tf":1.0}},"r":{"df":1,"docs":{"82":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":1,"docs":{"68":{"tf":1.0}}}},"o":{"df":10,"docs":{"38":{"tf":1.7320508075688772},"39":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":2.0},"57":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"73":{"tf":1.0}}}},"p":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"36":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":3,"docs":{"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"7":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}}}}},"df":1,"docs":{"4":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"54":{"tf":2.449489742783178}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"o":{"df":2,"docs":{"14":{"tf":1.7320508075688772},"55":{"tf":2.0}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":23,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":4.47213595499958},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"31":{"tf":2.0},"40":{"tf":1.0},"7":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":2.0}}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"84":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":6,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":7,"docs":{"19":{"tf":1.0},"55":{"tf":2.0},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":2.23606797749979},"66":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"t":{"df":2,"docs":{"71":{"tf":1.0},"78":{"tf":2.0}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":7,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"12":{"tf":1.0},"6":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"31":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}}},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"d":{"a":{"df":0,"docs":{},"t":{"df":21,"docs":{"11":{"tf":3.605551275463989},"14":{"tf":3.7416573867739413},"16":{"tf":1.7320508075688772},"17":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.0},"40":{"tf":3.0},"41":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"48":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":9.16515138991168},"6":{"tf":1.0},"63":{"tf":5.196152422706632},"64":{"tf":2.8284271247461903},"66":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"9":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"55":{"tf":1.7320508075688772}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"26":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":5.291502622129181}}}}}},"r":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"36":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":2.0},"64":{"tf":3.4641016151377544}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":3.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}}},"df":1,"docs":{"14":{"tf":1.4142135623730951}}},"df":7,"docs":{"39":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"44":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"l":{"df":4,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0},"83":{"tf":1.4142135623730951}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":16,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":1.7320508075688772},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"2":{"tf":1.7320508075688772},"3":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":1.0},"53":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0},"77":{"tf":1.4142135623730951},"8":{"tf":1.0},"9":{"tf":1.7320508075688772}}}},"df":35,"docs":{"1":{"tf":1.0},"11":{"tf":2.8284271247461903},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.7320508075688772},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951},"77":{"tf":1.0},"79":{"tf":1.0},"8":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"14":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"52":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"55":{"tf":4.795831523312719}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"v":{"2":{"df":2,"docs":{"18":{"tf":1.0},"33":{"tf":1.0}}},"3":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"0":{"tf":1.0},"14":{"tf":1.0}}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":7,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"55":{"tf":3.4641016151377544},"66":{"tf":1.0},"79":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"8":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}}}},"df":6,"docs":{"14":{"tf":2.0},"54":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"78":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":2,"docs":{"41":{"tf":1.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}}}}}}},"df":9,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"48":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"58":{"tf":1.0},"65":{"tf":2.23606797749979},"66":{"tf":2.8284271247461903},"7":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":5,"docs":{"51":{"tf":1.0},"54":{"tf":5.0},"58":{"tf":1.0},"60":{"tf":1.0},"66":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":2.449489742783178}}}}}}}}}}}},"i":{"a":{"df":7,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"33":{"tf":1.0},"56":{"tf":1.0},"6":{"tf":1.0},"76":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":3,"docs":{"14":{"tf":1.0},"44":{"tf":1.0},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":5,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"8":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"i":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}}}}}}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":23,"docs":{"0":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":2.23606797749979},"2":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"25":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":2.23606797749979},"43":{"tf":1.0},"54":{"tf":1.4142135623730951},"55":{"tf":7.416198487095663},"57":{"tf":3.1622776601683795},"59":{"tf":1.0},"63":{"tf":2.23606797749979},"65":{"tf":1.0},"67":{"tf":3.3166247903554},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"57":{"tf":1.0}}}}}}}}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"43":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}},"y":{"df":3,"docs":{"42":{"tf":1.0},"44":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.0},"65":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"23":{"tf":1.0},"49":{"tf":1.0},"58":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"23":{"tf":1.0},"53":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"77":{"tf":1.0},"79":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"59":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"k":{"df":15,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"44":{"tf":1.0},"46":{"tf":1.0},"6":{"tf":1.4142135623730951},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"l":{"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}},"x":{"d":{"df":0,"docs":{},"g":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{".":{"b":{"df":0,"docs":{},"z":{"2":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"39":{"tf":1.0},"40":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"11":{"tf":1.0},"19":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":2,"docs":{"79":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"79":{"tf":1.0},"81":{"tf":1.0}}}}}}}},"title":{"root":{"a":{"d":{"df":3,"docs":{"39":{"tf":1.0},"45":{"tf":1.0},"81":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"26":{"tf":1.0}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"0":{"tf":1.0},"24":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":2,"docs":{"44":{"tf":1.0},"49":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"68":{"tf":1.0},"83":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"2":{"df":1,"docs":{"35":{"tf":1.0}}},"3":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"76":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"39":{"tf":1.0},"42":{"tf":1.0},"51":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"45":{"tf":1.0},"52":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}},"df":0,"docs":{}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"1":{"tf":1.0},"47":{"tf":1.0}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":1,"docs":{"47":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"74":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":3,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":7,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0}}}}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":4,"docs":{"17":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.0}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"2":{"tf":1.0}}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"76":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":3,"docs":{"79":{"tf":1.0},"80":{"tf":1.0},"82":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}},"p":{"df":10,"docs":{"23":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"16":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"21":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"33":{"tf":1.0}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"41":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"32":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"48":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"59":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.0},"67":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"43":{"tf":1.0},"60":{"tf":1.0}}}}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"61":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":3,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0}}},"df":0,"docs":{}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"29":{"tf":1.0}}}}},"p":{"c":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"13":{"tf":1.0}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"51":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0},"66":{"tf":1.0}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"74":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"23":{"tf":1.0},"24":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"18":{"tf":1.0},"7":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"54":{"tf":1.0},"55":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"70":{"tf":1.0},"78":{"tf":1.0},"84":{"tf":1.0}}}}},"o":{"df":1,"docs":{"38":{"tf":1.0}}}},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"31":{"tf":1.0}}}}}}},"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":4,"docs":{"14":{"tf":1.0},"36":{"tf":1.0},"40":{"tf":1.0},"63":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"a":{"df":0,"docs":{},"g":{"df":5,"docs":{"10":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":1.0},"77":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"67":{"tf":1.0}}}}}}}}}}},"lang":"English","pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5"},"results_options":{"limit_results":30,"teaser_word_count":30},"search_options":{"bool":"OR","expand":true,"fields":{"body":{"boost":1},"breadcrumbs":{"boost":1},"title":{"boost":2}}}}); \ No newline at end of file diff --git a/v1.5.24/searchindex.json b/v1.5.24/searchindex.json new file mode 100644 index 000000000..23c41fe28 --- /dev/null +++ b/v1.5.24/searchindex.json @@ -0,0 +1 @@ +{"doc_urls":["introduction.html#claircore","getting_started.html#getting-started","getting_started/libindex_usage.html#libindex-usage","getting_started/libindex_usage.html#usage","getting_started/libindex_usage.html#options","getting_started/libindex_usage.html#construction","getting_started/libindex_usage.html#indexing","getting_started/libindex_usage.html#state","getting_started/libindex_usage.html#affectedmanifests","getting_started/libvuln_usage.html#libvuln-usage","getting_started/libvuln_usage.html#usage","getting_started/libvuln_usage.html#options","getting_started/libvuln_usage.html#construction","getting_started/libvuln_usage.html#scanning","getting_started/libvuln_usage.html#updates-api","concepts.html#concepts","concepts/vulnerability_matching.html#vulnerability-matching","concepts/indexer_architecture.html#indexer","concepts/indexer_architecture.html#states","concepts/indexer_architecture.html#data-model","concepts/indexer_architecture.html#http-resources","concepts/matcher_architecture.html#matcher-architecture","concepts/matcher_architecture.html#http-resources","concepts/severity_mapping.html#severity-mapping","concepts/severity_mapping.html#claircore-severity-strings","concepts/severity_mapping.html#alpine-mapping","concepts/severity_mapping.html#aws-mapping","concepts/severity_mapping.html#debian-mapping","concepts/severity_mapping.html#oracle-mapping","concepts/severity_mapping.html#rhel-mapping","concepts/severity_mapping.html#suse-mapping","concepts/severity_mapping.html#ubuntu-mapping","concepts/severity_mapping.html#photon-mapping","concepts/severity_mapping.html#osv-mapping","concepts/severity_mapping.html#cvssv3","concepts/severity_mapping.html#cvssv2","concepts/updater_defaults.html#updaters-and-defaults","concepts/updater_defaults.html#http-resources","howto.html#how-tos","howto/add_dist.html#adding-distribution-and-language-support","howto/add_dist.html#implementing-an-updater","howto/add_dist.html#implementing-a-package-scanner","howto/add_dist.html#implementing-a-distribution-scanner","howto/add_dist.html#implementing-a-repository-scanner","howto/add_dist.html#implementing-a-coalescer","howto/add_dist.html#implementing-or-adding-to-an-ecosystem","howto/add_dist.html#alternative-implementations","howto/add_dist.html#getting-help","reference.html#reference","reference/coalescer.html#coalescer","reference/configurable_scanner.html#configurablescanner","reference/distribution_scanner.html#distribution-scanner","reference/ecosystem.html#ecosystem","reference/index_report.html#index-report","reference/indexer_store.html#indexer-store","reference/matcher_store.html#matcher-store","reference/manifest.html#manifest","reference/matcher.html#matcher","reference/package_scanner.html#package-scanner","reference/remote_matcher.html#remotematcher","reference/repository_scanner.html#repository-scanner","reference/resolver.html#resolver","reference/rpcscanner.html#rpcscanner","reference/updater.html#updater","reference/updatersetfactory.html#updatersetfactory","reference/version_filter.html#versionfilter","reference/versioned_scanner.html#versioned-scanner","reference/vulnerability_report.html#vulnerability-report","contributor.html#contributors","CONTRIBUTING.html#how-to-contribute","CONTRIBUTING.html#testing","CONTRIBUTING.html#pull-requests","CONTRIBUTING.html#conventions","contributor/changelog.html#basics-of-git-notes","contributor/changelog.html#helper-scripts","contributor/changelog.html#formatting","contributor/local-dev.html#local-development","contributor/local-dev.html#usage","contributor/local-dev.html#tests","contributor/logging.html#logging","contributor/logging.html#how-to-log","contributor/logging.html#adding-context","contributor/logging.html#logging-style","contributor/misc.html","contributor/tests.html#tests","contributor/tests.html#caching"],"index":{"documentStore":{"docInfo":{"0":{"body":117,"breadcrumbs":2,"title":1},"1":{"body":11,"breadcrumbs":4,"title":2},"10":{"body":10,"breadcrumbs":5,"title":1},"11":{"body":208,"breadcrumbs":5,"title":1},"12":{"body":37,"breadcrumbs":5,"title":1},"13":{"body":50,"breadcrumbs":5,"title":1},"14":{"body":136,"breadcrumbs":6,"title":2},"15":{"body":16,"breadcrumbs":2,"title":1},"16":{"body":66,"breadcrumbs":5,"title":2},"17":{"body":34,"breadcrumbs":4,"title":1},"18":{"body":83,"breadcrumbs":4,"title":1},"19":{"body":98,"breadcrumbs":5,"title":2},"2":{"body":28,"breadcrumbs":6,"title":2},"20":{"body":19,"breadcrumbs":5,"title":2},"21":{"body":118,"breadcrumbs":5,"title":2},"22":{"body":22,"breadcrumbs":5,"title":2},"23":{"body":36,"breadcrumbs":5,"title":2},"24":{"body":18,"breadcrumbs":6,"title":3},"25":{"body":14,"breadcrumbs":5,"title":2},"26":{"body":18,"breadcrumbs":5,"title":2},"27":{"body":20,"breadcrumbs":5,"title":2},"28":{"body":20,"breadcrumbs":5,"title":2},"29":{"body":20,"breadcrumbs":5,"title":2},"3":{"body":10,"breadcrumbs":5,"title":1},"30":{"body":20,"breadcrumbs":5,"title":2},"31":{"body":22,"breadcrumbs":5,"title":2},"32":{"body":18,"breadcrumbs":5,"title":2},"33":{"body":21,"breadcrumbs":5,"title":2},"34":{"body":18,"breadcrumbs":4,"title":1},"35":{"body":13,"breadcrumbs":4,"title":1},"36":{"body":4,"breadcrumbs":5,"title":2},"37":{"body":41,"breadcrumbs":5,"title":2},"38":{"body":12,"breadcrumbs":2,"title":1},"39":{"body":65,"breadcrumbs":9,"title":4},"4":{"body":208,"breadcrumbs":5,"title":1},"40":{"body":138,"breadcrumbs":7,"title":2},"41":{"body":114,"breadcrumbs":8,"title":3},"42":{"body":89,"breadcrumbs":8,"title":3},"43":{"body":48,"breadcrumbs":8,"title":3},"44":{"body":177,"breadcrumbs":7,"title":2},"45":{"body":154,"breadcrumbs":8,"title":3},"46":{"body":43,"breadcrumbs":7,"title":2},"47":{"body":26,"breadcrumbs":7,"title":2},"48":{"body":35,"breadcrumbs":2,"title":1},"49":{"body":119,"breadcrumbs":3,"title":1},"5":{"body":29,"breadcrumbs":5,"title":1},"50":{"body":73,"breadcrumbs":4,"title":1},"51":{"body":31,"breadcrumbs":5,"title":2},"52":{"body":93,"breadcrumbs":3,"title":1},"53":{"body":265,"breadcrumbs":5,"title":2},"54":{"body":962,"breadcrumbs":5,"title":2},"55":{"body":1231,"breadcrumbs":5,"title":2},"56":{"body":49,"breadcrumbs":3,"title":1},"57":{"body":115,"breadcrumbs":3,"title":1},"58":{"body":54,"breadcrumbs":5,"title":2},"59":{"body":51,"breadcrumbs":4,"title":1},"6":{"body":122,"breadcrumbs":5,"title":1},"60":{"body":22,"breadcrumbs":5,"title":2},"61":{"body":54,"breadcrumbs":3,"title":1},"62":{"body":95,"breadcrumbs":4,"title":1},"63":{"body":700,"breadcrumbs":3,"title":1},"64":{"body":86,"breadcrumbs":5,"title":1},"65":{"body":67,"breadcrumbs":4,"title":1},"66":{"body":87,"breadcrumbs":5,"title":2},"67":{"body":136,"breadcrumbs":5,"title":2},"68":{"body":11,"breadcrumbs":2,"title":1},"69":{"body":21,"breadcrumbs":3,"title":1},"7":{"body":120,"breadcrumbs":5,"title":1},"70":{"body":57,"breadcrumbs":3,"title":1},"71":{"body":84,"breadcrumbs":4,"title":2},"72":{"body":55,"breadcrumbs":3,"title":1},"73":{"body":79,"breadcrumbs":5,"title":3},"74":{"body":44,"breadcrumbs":4,"title":2},"75":{"body":48,"breadcrumbs":3,"title":1},"76":{"body":7,"breadcrumbs":5,"title":2},"77":{"body":29,"breadcrumbs":4,"title":1},"78":{"body":44,"breadcrumbs":4,"title":1},"79":{"body":27,"breadcrumbs":3,"title":1},"8":{"body":49,"breadcrumbs":5,"title":1},"80":{"body":0,"breadcrumbs":3,"title":1},"81":{"body":23,"breadcrumbs":4,"title":2},"82":{"body":179,"breadcrumbs":4,"title":2},"83":{"body":38,"breadcrumbs":2,"title":1},"84":{"body":36,"breadcrumbs":3,"title":1},"85":{"body":26,"breadcrumbs":3,"title":1},"9":{"body":20,"breadcrumbs":6,"title":2}},"docs":{"0":{"body":"Claircore is the engine behind the Clair v4 container security solution. The Claircore package exports our domain models, interfaces necessary to plug into our business logic, and a default set of implementations. This default set of implementations define our support matrix and consists of the following distributions and languages: Ubuntu Debian RHEL Red Hat Container First content SUSE Oracle Alpine AWS Linux VMWare Photon Python Java Go Ruby Claircore relies on PostgreSQL for its persistence and the library will handle migrations if configured to do so. The diagram below is a high level overview of Claircore's architecture. graph LR\nsubgraph Indexer\nim[Image Manifest]\nlibindex[Libindex]\niir[IndexReport]\nim --> libindex --> iir\nend\niir -.-> db[(Database)] graph LR\nsubgraph Matcher\nmir[IndexReport]\nlibvuln[Libvuln]\nvr[VulnerabilityReport]\nmir --> libvuln --> vr\nend\ndb[(Database)] -.-> mir When a claircore.Manifest is submitted to Libindex, the library will index its constituent parts and create a report with its findings. When a claircore.IndexReport is provided to Libvuln, the library will discover vulnerabilities affecting it and generate a claircore.VulnerabilityReport.","breadcrumbs":"Introduction » Claircore","id":"0","title":"Claircore"},"1":{"body":"The following documentation helps a beginner learn to use Claircore. Libindex Usage Libvuln Usage","breadcrumbs":"Getting Started » Getting Started","id":"1","title":"Getting Started"},"10":{"body":"Libvuln is runtime constructed via the libvuln.New method. New requires a libvuln.Opts struct.","breadcrumbs":"Getting Started » Libvuln Usage » Usage","id":"10","title":"Usage"},"11":{"body":"package libvuln // import \"github.com/quay/claircore/libvuln\" type Options struct { // Store is the interface used to persist and retrieve vulnerabilites // for of matching. Store datastore.MatcherStore // Locker provides system-wide locks for the updater subsystem. If the // matching work is distributed the lock should be backed by a distributed // store. Locker LockSource // An interval on which Libvuln will check for new security database // updates. // // This duration will have jitter added to it, to help with smearing load on // installations. UpdateInterval time.Duration // A slice of strings representing which updaters libvuln will create. // // If nil all default UpdaterSets will be used. // // The following sets are supported: // \"alpine\" // \"aws\" // \"debian\" // \"oracle\" // \"photon\" // \"pyupio\" // \"rhel\" // \"suse\" // \"ubuntu\" UpdaterSets []string // A list of out-of-tree updaters to run. // // This list will be merged with any defined UpdaterSets. // // If you desire no updaters to run do not add an updater // into this slice. Updaters []driver.Updater // A slice of strings representing which // matchers will be used. // // If nil all default Matchers will be used // // The following names are supported by default: // \"alpine\" // \"aws\" // \"debian\" // \"oracle\" // \"photon\" // \"python\" // \"rhel\" // \"suse\" // \"ubuntu\" MatcherNames []string // Config holds configuration blocks for MatcherFactories and Matchers, // keyed by name. MatcherConfigs map[string]driver.MatcherConfigUnmarshaler // A list of out-of-tree matchers you'd like libvuln to // use. // // This list will me merged with the default matchers. Matchers []driver.Matcher // Enrichers is a slice of enrichers to use with all VulnerabilityReport // requests. Enrichers []driver.Enricher // UpdateWorkers controls the number of update workers running concurrently. // If less than or equal to zero, a sensible default will be used. UpdateWorkers int // UpdateRetention controls the number of updates to retain between // garbage collection periods. // // The lowest possible value is 2 in order to compare updates for notification // purposes. UpdateRetention int // If set to true, there will not be a goroutine launched to periodically // run updaters. DisableBackgroundUpdates bool // UpdaterConfigs is a map of functions for configuration of Updaters. UpdaterConfigs map[string]driver.ConfigUnmarshaler // Client is an http.Client for use by all updaters. // // Must be set. Client *http.Client\n} The above outlines the relevant bits of the Opts structure.","breadcrumbs":"Getting Started » Libvuln Usage » Options","id":"11","title":"Options"},"12":{"body":"Constructing Libvuln is straight forward. opts := new(libvuln.Options) // Populate with desired settings... lib, err := libvuln.New(ctx, opts) if err != nil { panic(err) } defer lib.Close(ctx) The constructing code should provide a valid Context tied to some lifetime. On construction, New will block until the security databases are initialized. Expect some delay before this method returns.","breadcrumbs":"Getting Started » Libvuln Usage » Construction","id":"12","title":"Construction"},"13":{"body":"Scanning is the process of taking a claircore.IndexReport comprised of a Manifest's content and determining which vulnerabilities affect the Manifest. A claircore.VulnerabilityReport will be returned with these details. m := new(claircore.Manifest) // Populate somehow ... ir, err := indexer.Index(ctx, m) if err != nil { panic(err) } vr, err := lib.Scan(ctx, ir) if err != nil { panic(err) } In the above example, Libindex is used to generate a claircore.IndexReport. The index report is then provided to Libvuln and a subsequent vulnerability report identifying any vulnerabilities affecting the manifest is returned.","breadcrumbs":"Getting Started » Libvuln Usage » Scanning","id":"13","title":"Scanning"},"14":{"body":"By default, Libvuln manages a set of long running updaters responsible for periodically fetching and loading new advisory contents into its database. The Updates API allows a client to view and manipulate aspects of the update operations that updaters perform. In this getting started guide, we will only cover the two methods most interesting to new users. UpdateOperations This API provides a list of recent update operations performed by implemented updaters. The UpdateOperation slice returned will be sorted by latest timestamp descending. ops, err := lib.UpdateOperations(ctx, `updater`) if err != nil { panic(err) } for updater, ops := range ops { fmt.Printf(\"ops for updater %s, %+v\", updater, ops) } UpdateDiff Mostly used by the Clair v4 notification subsystem, this endpoint will provide the caller with any removed or added vulnerabilities between two update operations. Typically a diff takes places against two versions of the same data source. This is useful to inform downstream applications what new vulnerabilities have entered the system. ops, err := lib.UpdateOperations(ctx, `updater`) if err != nil { panic(err) } for upd, ops := range ops { fmt.Printf(\"updater: %v\", upd) diff, err := lib.UpdateDiff(ctx, ops[1].Ref, ops[0].Ref) if err != nil { panic(err) } for _, vuln := range diff.Added { fmt.Printf(\"vuln %+v added in %v\", vuln, diff.Cur.Ref) } }","breadcrumbs":"Getting Started » Libvuln Usage » Updates API","id":"14","title":"Updates API"},"15":{"body":"The following sections give a conceptual overview of how Claircore works internally. Vulnerability Matching Indexer Architecture Matching Architecture Severity Mapping","breadcrumbs":"Concepts » Concepts","id":"15","title":"Concepts"},"16":{"body":"The following describes a successful scan. Updaters have ran either in the background on an interval or an offline loader has been ran. A Manifest is provided to Libindex. Libindex fetches all the layers, runs all scanner types on each layer, persists all artifacts found in each layer, and computes an IndexReport. A IndexReport is provided to Libvuln. Libvuln creates a stream of IndexRecord structs from the IndexReport and concurrently streams these structs to each configured Matcher. Libvuln computes a VulnerabilityReport aggregating all vulnerabilities discovered by all configured Matcher implementations. Sometime later the security advisory database is updated and a new request to Libvuln will present updated vulnerability data.","breadcrumbs":"Concepts » Vulnerability Matching » Vulnerability Matching","id":"16","title":"Vulnerability Matching"},"17":{"body":"claircore/indexer The Indexer package performs Libindex's heavy lifting. It is responsible for retreiving Manifest layers, parsing the contents of each layer, and computing an IndexReport. To perform this action in incremental steps the Indexer is implemented as a finite state machine. At each state transition the Indexer persists an updated IndexReport to its datastore.","breadcrumbs":"Concepts » Indexer Architecture » Indexer","id":"17","title":"Indexer"},"18":{"body":"The following diagram expresses the possible states of the Indexer: stateDiagram-v2 state if_indexed <<choice>> [*] --> CheckManifest CheckManifest --> if_indexed if_indexed --> [*]: Indexed if_indexed --> FetchLayers: Unindexed FetchLayers --> ScanLayers ScanLayers --> Coalesce Coalesce --> IndexManifest IndexManifest --> IndexFinished IndexFinished --> [*]\n%% These notes make the diagram unreadable :/\n%% note left of CheckManifest: Determine if this manifest has been indexed previously.\n%% note right of FetchLayers: Determine which layers need to be indexed and fetch them.\n%% note right of ScanLayers: Concurrently run needed Indexers on layers.\n%% note right of Coalesce: Compute the final contents of the container image.\n%% note right of IndexManifest: Associate all the discoved data.\n%% note right of IndexFinished: Persist the results.","breadcrumbs":"Concepts » Indexer Architecture » States","id":"18","title":"States"},"19":{"body":"The Indexer data model focuses on content addressable hashes as primary keys, the deduplication of package/distribution/repostitory information, and the recording of scan artifacts. Scan artifacts are unique artifacts found within a layer which point to a deduplicated general package/distribution/repository record. The following diagram outlines the current Indexer data model. %%{init: {\"er\":{\"layoutDirection\":\"RL\"}} }%%\nerDiagram ManifestLayer many to 1 Manifest: \"\" ManifestLayer many to 1 Layer: \"\" ScannedLayer many to 1 Layer: \"\" ScannedLayer many to 1 Scanner: \"\" ScannedManifest many to 1 Manifest: \"\" ScannedManifest many to 1 Scanner: \"\" TYPE_ScanArtifact 1 to 1 Layer: \"\" TYPE_ScanArtifact 1 to 1 Scanner: \"\" TYPE_ScanArtifact 1 to 1 TYPE: \"\" ManifestIndex many to 1 Manifest: \"\" ManifestIndex 1 to zero or one TYPE: \"\" IndexReport 1 to 1 Manifest: \"cached result\" Note that TYPE stands in for each of the Indexer types (i.e. Package, Repository, etc.).","breadcrumbs":"Concepts » Indexer Architecture » Data Model","id":"19","title":"Data Model"},"2":{"body":"Libindex is the Go package responsible for fetching container image layers, identifying packages, distributions, and repositories within these layers, and computing a final coalesced Index Report. An Index Report is primarily used as input to Libvuln's vulnerability matching process.","breadcrumbs":"Getting Started » Libindex Usage » Libindex Usage","id":"2","title":"Libindex Usage"},"20":{"body":"Indexers as currently built may make network requests. This is an outstanding issue. The following are the URLs used. https://search.maven.org/solrsearch/select\nhttps://catalog.redhat.com/api/containers/\nhttps://access.redhat.com/security/data/metrics/repository-to-cpe.json\nhttps://access.redhat.com/security/data/metrics/container-name-repos-map.json","breadcrumbs":"Concepts » Indexer Architecture » HTTP Resources","id":"20","title":"HTTP Resources"},"21":{"body":"claircore/internal/matcher claircore/libvuln/driver The Matcher architecture is based on a data flow application. graph TD start[Libvuln.Scan] finish[Merge into VulnerabilityReport] start ---> RemoteMatcher & Matcher ---> finish subgraph RemoteMatcher ra[Filter interested packages] api[Make API calls] rv[Decide vulnerability] ra --> api --> rv end subgraph Matcher dbv[Check versions in-database] ma[Filter interested packages] adv[Retrive vulnerabilty information] mv[Deicide vulnerability] ma --> adv --> mv adv -.-> dbv -.-> mv end When Libvuln's Scan method is called with an IndexReport it will begin the process of matching container contents with vulnerabilities. Each configured Matcher will be instantiated concurrently. Depending on the interfaces the Matcher implements, one of the possible data flows will occur in the diagram above. The provided IndexReport will be unpacked into a stream of IndexRecord structs. Each Matcher will evaluate each record in the stream and determine if the IndexRecord is vulnerable to a security advisory in their responsible databases. Once each Matcher returns the set of vulnerabities, Libvuln will merge the results into a VulnerabilityReport and return this to the client.","breadcrumbs":"Concepts » Matching Architecture » Matcher Architecture","id":"21","title":"Matcher Architecture"},"22":{"body":"NOTE : Remote matchers are being considered for removal. \"Remote matchers\" may make HTTP requests during the matcher flow. These requests are time-bound and errors are not reported. The following are the URLs used.","breadcrumbs":"Concepts » Matching Architecture » HTTP Resources","id":"22","title":"HTTP Resources"},"23":{"body":"Claircore will normalize a security databases's severity string to a set of defined values. Clients may use the NormalizedSeverity field on a claircore.Vulnerability to react to vulnerability severities without needing to know each security database's severity strings. All strings used in the mapping tables are identical to the strings found within the relevant security database.","breadcrumbs":"Concepts » Severity Mapping » Severity Mapping","id":"23","title":"Severity Mapping"},"24":{"body":"The following are severity strings Claircore will normalize others to. Clients can guarantee one of these strings will be associated with a claircore.Vulnerability. Unknown Negligible Low Medium High Critical","breadcrumbs":"Concepts » Severity Mapping » Claircore Severity Strings","id":"24","title":"Claircore Severity Strings"},"25":{"body":"The Alpine SecDB database does not provide severity information. All vulnerability severities will be Unknown. Alpine Severity Claircore Severity * Unknown","breadcrumbs":"Concepts » Severity Mapping » Alpine Mapping","id":"25","title":"Alpine Mapping"},"26":{"body":"The AWS UpdateInfo database provides severity information. AWS Severity Claircore Severity low Low medium Medium important High critical Critical","breadcrumbs":"Concepts » Severity Mapping » AWS Mapping","id":"26","title":"AWS Mapping"},"27":{"body":"The Debian security tracker data provides severity information. Debian Severity Claircore Severity unimportant Low low Medium medium High high Critical * Unknown","breadcrumbs":"Concepts » Severity Mapping » Debian Mapping","id":"27","title":"Debian Mapping"},"28":{"body":"The Oracle OVAL database provides severity information. Oracle Severity Claircore Severity N/A Unknown LOW Low MODERATE Medium IMPORTANT High CRITICAL Critical","breadcrumbs":"Concepts » Severity Mapping » Oracle Mapping","id":"28","title":"Oracle Mapping"},"29":{"body":"The RHEL OVAL database provides severity information. RHEL Severity Claircore Severity None Unknown Low Low Moderate Medium Important High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » RHEL Mapping","id":"29","title":"RHEL Mapping"},"3":{"body":"Libindex is runtime constructed via the libindex.New method. New requires an libindex.Opts struct.","breadcrumbs":"Getting Started » Libindex Usage » Usage","id":"3","title":"Usage"},"30":{"body":"The SUSE OVAL database provides severity information. SUSE Severity Claircore Severity None Unknown Low Low Moderate Medium Important High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » SUSE Mapping","id":"30","title":"SUSE Mapping"},"31":{"body":"The Ubuntu OVAL database provides severity information. Ubuntu Severity Claircore Severity Untriaged Unknown Negligible Negligible Low Low Medium Medium High High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » Ubuntu Mapping","id":"31","title":"Ubuntu Mapping"},"32":{"body":"The Photon OVAL database provides severity information. Photon Severity Claircore Severity Low Low Moderate Medium Important High Critical Critical","breadcrumbs":"Concepts » Severity Mapping » Photon Mapping","id":"32","title":"Photon Mapping"},"33":{"body":"OSV provides severity information via CVSS vectors, when applicable. These are normalized according to the NVD qualitative rating scale . If both v3 and v2 vectors are present, v3 is preferred.","breadcrumbs":"Concepts » Severity Mapping » OSV Mapping","id":"33","title":"OSV Mapping"},"34":{"body":"Base Score Claircore Severity 0.0 Negligible 0.1-3.9 Low 4.0-6.9 Medium 7.0-8.9 High 9.0-10.0 Critical","breadcrumbs":"Concepts » Severity Mapping » CVSSv3","id":"34","title":"CVSSv3"},"35":{"body":"Base Score Claircore Severity 0.0-3.9 Low 4.0-6.9 Medium 7.0-10.0 High","breadcrumbs":"Concepts » Severity Mapping » CVSSv2","id":"35","title":"CVSSv2"},"36":{"body":"The default updaters are tracked in updater/defaults/defaults.go.","breadcrumbs":"Concepts » Updater Defaults » Updaters and Defaults","id":"36","title":"Updaters and Defaults"},"37":{"body":"The following are the HTTP hosts and paths that Clair will attempt to talk to in a default configuration. This list is non-exhaustive, as some servers will issue redirects and some request URLs are constructed dynamically. https://secdb.alpinelinux.org/\nhttp://repo.us-west-2.amazonaws.com/2018.03/updates/x86_64/mirror.list\nhttps://cdn.amazonlinux.com/2/core/latest/x86_64/mirror.list\nhttps://cdn.amazonlinux.com/al2023/core/mirrors/latest/x86_64/mirror.list\nhttps://deb.debian.org/\nhttps://security-tracker.debian.org/tracker/data/json\nhttps://nvd.nist.gov/feeds/json/cve/1.1/\nhttps://linux.oracle.com/security/oval/com.oracle.elsa-*.xml.bz2\nhttps://packages.vmware.com/photon/photon_oval_definitions/\nhttps://access.redhat.com/security/data/metrics/cvemap.xml\nhttps://access.redhat.com/security/cve/\nhttps://access.redhat.com/security/data/oval/v2/PULP_MANIFEST\nhttps://support.novell.com/security/oval/\nhttps://api.launchpad.net/1.0/\nhttps://security-metadata.canonical.com/oval/com.ubuntu.*.cve.oval.xml\nhttps://osv-vulnerabilities.storage.googleapis.com/","breadcrumbs":"Concepts » Updater Defaults » HTTP Resources","id":"37","title":"HTTP Resources"},"38":{"body":"The following sections provide instructions on accomplish specific goals in Claircore. Adding Distribution Or Language Support","breadcrumbs":"How Tos » How Tos","id":"38","title":"How Tos"},"39":{"body":"Note: If terms in this document sound foreign check out Getting Started to acquaint yourself with \"indexing\", \"scanning\", and \"matching\" The claircore team is always open to adding more distributions and languages to the library. Generally, distributions or languages must provide a security tracker. All officially supported distributions and languages provide a database of security vulnerabilities. These databases are maintained by the distribution or language developers and reflect up-to-date CVE and advisory data for their packages. If your distribution or language does not provide a security tracker or piggy-backs off another distribution's start an issue in our Github issue tracker to discuss further.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Adding Distribution And Language Support","id":"39","title":"Adding Distribution And Language Support"},"4":{"body":"package libindex // import \"github.com/quay/claircore/libindex\" type Options struct { // Store is the interface used to persist and retrieve results of indexing. Store indexer.Store // Locker provides system-wide locks. If the indexing work is distributed the // lock should be backed by a distributed store. Locker LockSource // FetchArena is an interface tied to the lifecycle of LibIndex to enable management // of the filesystem while separate processes are dealing with layers, for example: // you can reference count downloaded layer files to avoid racing. FetchArena indexer.FetchArena // ScanLockRetry specifies how often we should try to acquire a lock for scanning a // given manifest if lock is taken. ScanLockRetry time.Duration // LayerScanConcurrency specifies the number of layers to be scanned in parallel. LayerScanConcurrency int // LayerFetchOpt is unused and kept here for backwards compatibility. LayerFetchOpt interface{} // NoLayerValidation controls whether layers are checked to actually be // content-addressed. With this option toggled off, callers can trigger // layers to be indexed repeatedly by changing the identifier in the // manifest. NoLayerValidation bool // ControllerFactory provides an alternative method for creating a scanner during libindex runtime // if nil the default factory will be used. useful for testing purposes ControllerFactory ControllerFactory // Ecosystems a list of ecosystems to use which define which package databases and coalescing methods we use Ecosystems []*indexer.Ecosystem // ScannerConfig holds functions that can be passed into configurable // scanners. They're broken out by kind, and only used if a scanner // implements the appropriate interface. // // Providing a function for a scanner that's not expecting it is not a fatal // error. ScannerConfig struct { Package, Dist, Repo, File map[string]func(interface{}) error } Resolvers []indexer.Resolver\n} Options are dependencies and options for constructing an instance of libindex The above outlines the relevant bits of the Options structure. Store is required needs to be an object that satisfies the indexer.Store interface. Locker is required and needs to satisfy the LockSource interface. FetchArena is required and needs to satify the FetchArena interface. Providing a nil \"Ecosystems\" slice will supply the default set, instructing Libindex to index for all supported content in a layer, and is typically desired.","breadcrumbs":"Getting Started » Libindex Usage » Options","id":"4","title":"Options"},"40":{"body":"The first step to adding your distribution or language to claircore is getting your security tracker's data ingested by Libvuln. The Updater interfaces are responsible for this task. An implementer must consider several design points: Does the security database provide enough information to parse each entry into a claircore.Vulnerability? Each entry must parse into a claircore.Vulnerability. Each Vulnerability must contain a package and a repository or distribution field. Will the Updater need to be configured at runtime? Your updater may implement the Configurable interface. Your matcher will have its \"Configuration\" method called before use, giving you an opportunity for run time configuration. What fields in a parsed claircore.Vulnerability will be present when indexing layer artifacts. When implementing an updater you must keep in mind how packages/distributions/repositories will be parsed during index. When indexing a layer a common data model must exist between the possible package/distribution/repository and the parsed Vulnerabilitie's package/distribution/repository fields. If you are having trouble figuring out these requirements do not hesitate to reach out to us for help. After you have taken the design points into consideration, you are ready to implement your updater. Typically you will create a new package named after the source you are adding support for. Inside this package you can begin implementing the Updater and Updater Set Factory interfaces. Optionally you may implement the Configurable interface if you need runtime configuration. It will undoubtly be helpful to look at the examples in the \"ubuntu\", \"rhel\", and \"debian\" packages to get yourself started.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing an Updater","id":"40","title":"Implementing an Updater"},"41":{"body":"At this point you hopefully have your Updater working, writing vulnerability data into Libvuln's database. We can now move our attention to package scanning. A package scanner is responsible for taking a claircore.Layer and parsing the contents for a particular package database or set of files inside the provided tar archive. Once the target files are located the package scanner should parse these files into claircore.Packages and return a slice of these data structures. Package scanning is context free, meaning no distribution classification has happened yet. This is because manifests are made up of layers, and a layer which holds a package database may not hold distribution information such as an os-release file. A package scanner need only parse a target package database and return claircore.Packages. You need to implement the Package Scanner interface to achieve this. Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use. Keep in mind that its very common for distributions to utilize an existing package manager such as RPM. If this is the case there's a high likelihood that you can utilize the existing \"rpm\" or \"dpkg\" package scanner implementations.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Package Scanner","id":"41","title":"Implementing a Package Scanner"},"42":{"body":"Once the package scanner is implemented, tested, and working you can begin implementing a Distribution Scanner. Implementing a distribution scanner is a design choice. Distributions and repositories are the way claircore matches packages to vulnerabilities. If your implemented Updater parses vulnerabilities with distribution information you will likely need to implement a distribution scanner. Likewise, if your Updater parses vulnerabilities with repository information (typical with language vulnerabilities) you will likely need to implement a repository scanner. A distribution scanner, like a package scanner, is provided a claircore.Layer. The distribution scanner will parse the provided tar archive exhaustively searching for any clue that this layer was derived from your distribution. If you identify that it is, you should return a common distribution used by your Updater implementation. This ensures that claircore can match the output of your distribution scanner with your parsed vulnerabilities. Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Distribution Scanner","id":"42","title":"Implementing a Distribution Scanner"},"43":{"body":"As mentioned above, implementing a repository scanner is a design choice, often times applicable for language package managers. If your Updater parses vulnerabilities with a repository field you will likely want to implement a repository scanner. A repository scanner is used just like a distribution scanner however you will search for any clues that a layer contains your repository and if so return a common data model identifying the repository. Optionally, you may implement the Configurable Scanner if the scanner needs to perform runtime configuration before use.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Repository Scanner","id":"43","title":"Implementing a Repository Scanner"},"44":{"body":"As you may have noticed, the process of scanning a layer for packages, distribution, and repository information is distinct and separate. At some point, claircore will need to take all the context-free information returned from layer scanners and create a complete view of the manifest. A coalescer performs this computation. It's unlikely you will need to implement your own coalescer. Claircore provides a default \"linux\" coalescer which will work if your package database is rewritten when modified. For example, if a Dockerfile's RUN command causes a change to to dpkg's /var/lib/dpkg/status database, the resulting manifest will have a copy placed in the associated layer. However, if your package database does not fit into this model, implementing a coalescer may be necessary. To implement a coalescer, several details must be understood: Each layer only provides a \"piece\" of the final manifest. Because manifests are comprised of multiple copy-on-write layers, some layers may contain package information, distribution information, repository information, any combination of those, or no information at all. An OS may have a \"dist-upgrade\" performed and the implications of this on the package management system is distribution or language dependent. The coalescer must deal with distribution upgrades in a sane way. If your distribution or language does a dist-upgrade, are all packages bumped? Are they simply left alone? The coalescer must understand what happens and compute the final manifest's content correctly. Packages may be removed and added between layers. When the package database is a regular file on disk, this case is simpler: the database file found in the most recent layer holds the ultimate set of packages for all previous layers. However, in the case where the package database is realized by adding and removing files on disk it becomes trickier. Claircore has no special handling of whiteout files, currently. We will address this in upcoming releases. If your distribution or language cannot utilize a default coalescer, you will need to implement the Coalescer interface","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing a Coalescer","id":"44","title":"Implementing a Coalescer"},"45":{"body":"An Ecosystem provides a set of coalescers, package scanners, distribution scanners, and repository scanners to Libindex at the time of indexing. Libindex will take the Ecosystem and scan each layer with all provided scanners. When Libindex is ready to coalesce the results of each scanner into an IndexReport the provided coalescer is given the output of the configured scanners. This allows Libindex to segment the input to the coalescing step to particular scanners that a coalescer understands. For instance, if we only wanted a (fictitious) Haskell coalescer to evaluate artifacts returned from a (fictitious) Haskell package and repository scanner we would create an ecosystem similar to: // HaskellScanner returns a configured PackageScanner.\nfunc haskellScanner() indexer.PackageScanner { return nil } // HaskellCoalescer returns a configured Coalescer.\nfunc haskellCoalescer() indexer.Coalescer { return nil } // NewEcosystem provides the set of scanners and coalescers for the haskell\n// ecosystem.\nfunc NewEcosystem(ctx context.Context) *indexer.Ecosystem { return &indexer.Ecosystem{ PackageScanners: func(ctx context.Context) ([]indexer.PackageScanner, error) { return []indexer.PackageScanner{haskellScanner()}, nil }, DistributionScanners: func(ctx context.Context) ([]indexer.DistributionScanner, error) { return []indexer.DistributionScanner{}, nil }, RepositoryScanners: func(ctx context.Context) ([]indexer.RepositoryScanner, error) { return []indexer.RepositoryScanner{}, nil }, Coalescer: func(ctx context.Context) (indexer.Coalescer, error) { return haskellCoalescer(), nil }, }\n} This ensures that Libindex will only provide Haskell artifacts to the Haskell coalescer and avoid calling the coalescer with rpm packages for example. If your distribution uses an already implemented package manager such as \"rpm\" or \"dpkg\", it's likely you will simply add your scanners to the existing ecosystem in one of those packages.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Implementing or Adding To An Ecosystem","id":"45","title":"Implementing or Adding To An Ecosystem"},"46":{"body":"This how-to guide is a \"perfect world\" scenario. Working on claircore has made us realize that this domain is a bit messy. Security trackers are not developed with package managers in mind, security databases do not follow correct specs, distribution maintainers spin their own tools, etc. We understand that supporting your distribution or language may take some bending of claircore's architecture and business logic. If this is the case, start a conversation with us. We are open to design discussions.","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Alternative Implementations","id":"46","title":"Alternative Implementations"},"47":{"body":"At this point, you have implemented all the necessary components to integrate your distribution or language with claircore. If you struggle with the design phase or are getting stuck at the implementation phases do not hesitate to reach out to us. Here are some links: Clair SIG Github Issues RedHat Issues","breadcrumbs":"How Tos » Adding Distribution Or Language Support » Getting Help","id":"47","title":"Getting Help"},"48":{"body":"The follow sections provide a reference for developing with Claircore. Important interfaces and structs are outlined. Coalescer Configurable Scanner Distribution Scanner Ecosystem Libindex Store Matcher Package Scanner Remote Scanner Repository Scanner RPC Scanner Updater Set Factory Version Filter Versioned Scanner Resolver","breadcrumbs":"Reference » Reference","id":"48","title":"Reference"},"49":{"body":"A coalescer must compute the final contents of a manifest given the artifacts found at each layer. package indexer // import \"github.com/quay/claircore/indexer\" type Coalescer interface { Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)\n} Coalescer takes a set of layers and creates coalesced IndexReport. A coalesced IndexReport should provide only the packages present in the final container image once all layers were applied. package indexer // import \"github.com/quay/claircore/indexer\" type Coalescer interface { Coalesce(ctx context.Context, artifacts []*LayerArtifacts) (*claircore.IndexReport, error)\n} Coalescer takes a set of layers and creates coalesced IndexReport. A coalesced IndexReport should provide only the packages present in the final container image once all layers were applied. package indexer // import \"github.com/quay/claircore/indexer\" type LayerArtifacts struct { Hash claircore.Digest Pkgs []*claircore.Package Dist []*claircore.Distribution // each layer can only have a single distribution Repos []*claircore.Repository Files []claircore.File } LayerArifact aggregates the artifacts found within a layer. A `Coalsecer` implementation is free to determine this computation given the\nartifacts found in a layer. A `Coalescer` is called with a slice of\n`LayerArtifacts` structs. The manifest's layer ordering is preserved in the\nprovided slice.","breadcrumbs":"Reference » Coalescer » Coalescer","id":"49","title":"Coalescer"},"5":{"body":"Constructing Libindex is straight forward. opts := new(libindex.Options) // Populate with desired settings... lib, err := libindex.New(ctx, opts, http.DefaultClient) if err != nil { panic(err) } defer lib.Close(ctx) // Remember to cleanup when done. The constructing code should provide a valid Context tied to some lifetime.","breadcrumbs":"Getting Started » Libindex Usage » Construction","id":"5","title":"Construction"},"50":{"body":"A ConfigurableSanner is an optional interface a Scanner interface may implement. When implemented, the scanner's Configure method will be called with a ConfigDeserializer function. The Scanner may pass its config as an argument to the ConfigDeserializer function to populate the struct. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigDeserializer func(interface{}) error ConfigDeserializer can be thought of as an Unmarshal function with the byte slice provided. This will typically be something like (*json.Decoder).Decode. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigDeserializer func(interface{}) error ConfigDeserializer can be thought of as an Unmarshal function with the byte slice provided. This will typically be something like (*json.Decoder).Decode. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigurableScanner interface { Configure(context.Context, ConfigDeserializer) error } ConfigurableScanner is an interface scanners can implement to receive configuration.","breadcrumbs":"Reference » Configurable Scanner » ConfigurableScanner","id":"50","title":"ConfigurableScanner"},"51":{"body":"A Distribution Scanner should identify any operating system distribution associated with the provided layer. It is OK for no distribution information to be discovered. package indexer // import \"github.com/quay/claircore/indexer\" type DistributionScanner interface { VersionedScanner Scan(context.Context, *claircore.Layer) ([]*claircore.Distribution, error)\n} DistributionScanner reports the Distributions found in a given layer.","breadcrumbs":"Reference » Distribution Scanner » Distribution Scanner","id":"51","title":"Distribution Scanner"},"52":{"body":"An Ecosystem groups together scanners and coalescers which are often used together. Ecosystems are usually defined in a go package that corresponds to a package manager, such as dpkg. See dpkg/ecosystem.go for an example. The Indexer will retrieve artifacts from the provided scanners and provide these scan artifacts to the coalescer in the Ecosystem. package indexer // import \"github.com/quay/claircore/indexer\" type Ecosystem struct { PackageScanners func(ctx context.Context) ([]PackageScanner, error) DistributionScanners func(ctx context.Context) ([]DistributionScanner, error) RepositoryScanners func(ctx context.Context) ([]RepositoryScanner, error) FileScanners func(ctx context.Context) ([]FileScanner, error) Coalescer func(ctx context.Context) (Coalescer, error) Name string\n} Ecosystems group together scanners and a Coalescer which are commonly used together. A typical ecosystem is \"dpkg\" which will use the \"dpkg\" package indexer, the \"os-release\" distribution scanner and the \"apt\" repository scanner. A Controller will scan layers with all scanners present in its configured ecosystems.","breadcrumbs":"Reference » Ecosystem » Ecosystem","id":"52","title":"Ecosystem"},"53":{"body":"An Index Report defines the contents of a manifest. An Index Report can be unpacked into a slice of Index Records, each of which defines a package, distribution, repository tuple. package claircore // import \"github.com/quay/claircore\" type IndexReport struct { // the manifest hash this IndexReport is describing Hash Digest `json:\"manifest_hash\"` // the current state of the index operation State string `json:\"state\"` // all discovered packages in this manifest key'd by package id Packages map[string]*Package `json:\"packages\"` // all discovered distributions in this manifest key'd by distribution id Distributions map[string]*Distribution `json:\"distributions\"` // all discovered repositories in this manifest key'd by repository id Repositories map[string]*Repository `json:\"repository\"` // a list of environment details a package was discovered in key'd by package id Environments map[string][]*Environment `json:\"environments\"` // whether the index operation finished successfully Success bool `json:\"success\"` // an error string in the case the index did not succeed Err string `json:\"err\"` // Files doesn't end up in the json report but needs to be available at post-coalesce Files map[string]File `json:\"-\"`\n} IndexReport provides a database for discovered artifacts in an image. IndexReports make heavy usage of lookup maps to associate information without repetition. func (report *IndexReport) IndexRecords() []*IndexRecord package claircore // import \"github.com/quay/claircore\" type IndexReport struct { // the manifest hash this IndexReport is describing Hash Digest `json:\"manifest_hash\"` // the current state of the index operation State string `json:\"state\"` // all discovered packages in this manifest key'd by package id Packages map[string]*Package `json:\"packages\"` // all discovered distributions in this manifest key'd by distribution id Distributions map[string]*Distribution `json:\"distributions\"` // all discovered repositories in this manifest key'd by repository id Repositories map[string]*Repository `json:\"repository\"` // a list of environment details a package was discovered in key'd by package id Environments map[string][]*Environment `json:\"environments\"` // whether the index operation finished successfully Success bool `json:\"success\"` // an error string in the case the index did not succeed Err string `json:\"err\"` // Files doesn't end up in the json report but needs to be available at post-coalesce Files map[string]File `json:\"-\"`\n} IndexReport provides a database for discovered artifacts in an image. IndexReports make heavy usage of lookup maps to associate information without repetition. func (report *IndexReport) IndexRecords() []*IndexRecord package claircore // import \"github.com/quay/claircore\" type IndexRecord struct { Package *Package Distribution *Distribution Repository *Repository } IndexRecord is an entry in the IndexReport. IndexRecords provide full access to contextual package structures such as\nDistribution and Repository. A list of these can be thought of as an \"unpacked\" IndexReport","breadcrumbs":"Reference » Index Report » Index Report","id":"53","title":"Index Report"},"54":{"body":"The indexer.Store interface defines all necessary persistence methods for Libindex to provide its functionality. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error\n} Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error\n} Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Setter interface { // PersistManifest must store the presence of a manifest and it's layers into the system. // // Typically this will write into identity tables so later methods have a foreign key // to reference and data integrity is applied. PersistManifest(ctx context.Context, manifest claircore.Manifest) error // DeleteManifests removes the manifests indicated by the passed digests // from the backing store. DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error) // SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner.\n//\n// After this method is returned a call to Querier.LayerScanned with the same arguments must return true.\nSetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error\n// RegisterPackageScanners registers the provided scanners with the persistence layer.\nRegisterScanners(ctx context.Context, scnrs VersionedScanners) error\n// SetIndexReport persists the current state of the IndexReport.\n//\n// IndexReports maybe in intermediate states to provide feedback for clients. this method should be\n// used to communicate scanning state updates. to signal the scan has completely successfully\n// see SetIndexFinished.\nSetIndexReport(context.Context, *claircore.IndexReport) error\n// SetIndexFinished marks a scan successfully completed.\n//\n// After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport\n// must return true.\n//\n// Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport\n// in finished state.\nSetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error } Setter interface provides the method set for required marking events, or registering components, associated with an Index operation. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error } Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Setter interface { // PersistManifest must store the presence of a manifest and it's layers into the system. // // Typically this will write into identity tables so later methods have a foreign key // to reference and data integrity is applied. PersistManifest(ctx context.Context, manifest claircore.Manifest) error // DeleteManifests removes the manifests indicated by the passed digests // from the backing store. DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error) // SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner. // // After this method is returned a call to Querier.LayerScanned with the same arguments must return true. SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error // RegisterPackageScanners registers the provided scanners with the persistence layer. RegisterScanners(ctx context.Context, scnrs VersionedScanners) error // SetIndexReport persists the current state of the IndexReport. // // IndexReports maybe in intermediate states to provide feedback for clients. this method should be // used to communicate scanning state updates. to signal the scan has completely successfully // see SetIndexFinished. SetIndexReport(context.Context, *claircore.IndexReport) error // SetIndexFinished marks a scan successfully completed. // // After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport // must return true. // // Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport // in finished state. SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error\n} Setter interface provides the method set for required marking events, or registering components, associated with an Index operation. package indexer // import \"github.com/quay/claircore/indexer\" type Querier interface { // ManifestScanned returns whether the given manifest was scanned by the provided scanners. ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) // LayerScanned returns whether the given layer was scanned by the provided scanner. LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) // PackagesByLayer gets all the packages found in a layer limited by the provided scanners. PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) // DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) // RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) // FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) // IndexReport attempts to retrieve a persisted IndexReport. IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) // AffectedManifests returns a list of manifest digests which the target vulnerability // affects. AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) } Querier interface provides the method set to ascertain indexed artifacts and query whether a layer or manifest has been scanned. package indexer // import \"github.com/quay/claircore/indexer\" type Store interface { Setter Querier Indexer // Close frees any resources associated with the Store. Close(context.Context) error } Store is an interface for dealing with objects libindex needs to persist. Stores may be implemented per storage backend. package indexer // import \"github.com/quay/claircore/indexer\" type Setter interface { // PersistManifest must store the presence of a manifest and it's layers into the system. // // Typically this will write into identity tables so later methods have a foreign key // to reference and data integrity is applied. PersistManifest(ctx context.Context, manifest claircore.Manifest) error // DeleteManifests removes the manifests indicated by the passed digests // from the backing store. DeleteManifests(context.Context, ...claircore.Digest) ([]claircore.Digest, error) // SetLayerScanned marks the provided layer hash successfully scanned by the provided versioned scanner. // // After this method is returned a call to Querier.LayerScanned with the same arguments must return true. SetLayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) error // RegisterPackageScanners registers the provided scanners with the persistence layer. RegisterScanners(ctx context.Context, scnrs VersionedScanners) error // SetIndexReport persists the current state of the IndexReport. // // IndexReports maybe in intermediate states to provide feedback for clients. this method should be // used to communicate scanning state updates. to signal the scan has completely successfully // see SetIndexFinished. SetIndexReport(context.Context, *claircore.IndexReport) error // SetIndexFinished marks a scan successfully completed. // // After this method returns a call to Querier.ManifestScanned with the manifest hash represted in the provided IndexReport // must return true. // // Also a call to Querier.IndexReport with the manifest hash represted in the provided IndexReport must return the IndexReport // in finished state. SetIndexFinished(ctx context.Context, sr *claircore.IndexReport, scnrs VersionedScanners) error\n} Setter interface provides the method set for required marking events, or registering components, associated with an Index operation. package indexer // import \"github.com/quay/claircore/indexer\" type Querier interface { // ManifestScanned returns whether the given manifest was scanned by the provided scanners. ManifestScanned(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) (bool, error) // LayerScanned returns whether the given layer was scanned by the provided scanner. LayerScanned(ctx context.Context, hash claircore.Digest, scnr VersionedScanner) (bool, error) // PackagesByLayer gets all the packages found in a layer limited by the provided scanners. PackagesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Package, error) // DistributionsByLayer gets all the distributions found in a layer limited by the provided scanners. DistributionsByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Distribution, error) // RepositoriesByLayer gets all the repositories found in a layer limited by the provided scanners. RepositoriesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]*claircore.Repository, error) // FilesByLayer gets all the interesting files found in a layer limited by the provided scanners. FilesByLayer(ctx context.Context, hash claircore.Digest, scnrs VersionedScanners) ([]claircore.File, error) // IndexReport attempts to retrieve a persisted IndexReport. IndexReport(ctx context.Context, hash claircore.Digest) (*claircore.IndexReport, bool, error) // AffectedManifests returns a list of manifest digests which the target vulnerability // affects. AffectedManifests(ctx context.Context, v claircore.Vulnerability, f claircore.CheckVulnernableFunc) ([]claircore.Digest, error) } Querier interface provides the method set to ascertain indexed artifacts and query whether a layer or manifest has been scanned. package indexer // import \"github.com/quay/claircore/indexer\" type Indexer interface { // IndexPackages indexes a package into the persistence layer. IndexPackages(ctx context.Context, pkgs []*claircore.Package, layer *claircore.Layer, scnr VersionedScanner) error // IndexDistributions indexes distributions into the persistence layer. IndexDistributions(ctx context.Context, dists []*claircore.Distribution, layer *claircore.Layer, scnr VersionedScanner) error // IndexRepositories indexes repositories into the persistence layer. IndexRepositories(ctx context.Context, repos []*claircore.Repository, layer *claircore.Layer, scnr VersionedScanner) error // IndexFiles indexes the interesting files into the persistence layer. IndexFiles(ctx context.Context, files []claircore.File, layer *claircore.Layer, scnr VersionedScanner) error // IndexManifest should index the coalesced manifest's content given an IndexReport. IndexManifest(ctx context.Context, ir *claircore.IndexReport) error\n} Indexer interface provide the method set required for indexing layer and manifest contents into a persistent store.\n```","breadcrumbs":"Reference » Indexer Store » Indexer Store","id":"54","title":"Indexer Store"},"55":{"body":"The datastore.MatcherStore interface defines all necessary persistence methods for Libvuln to provide its functionality. package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment\n} MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment\n} MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided\n// vulnerabilities, and ensures vulnerabilities from previous updates are\n// not queried by clients.\nUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)\n// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing\n// vulnerabilities and new vulnerabilities. It also takes an array of deleted\n// vulnerability names which should no longer be available to query.\nDeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)\n// GetUpdateOperations returns a list of UpdateOperations in date descending\n// order for the given updaters.\n//\n// The returned map is keyed by Updater implementation's unique names.\n//\n// If no updaters are specified, all UpdateOperations are returned.\nGetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRefs reports the latest update reference for every known\n// updater.\nGetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRef reports the latest update reference of any known\n// updater.\nGetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)\n// DeleteUpdateOperations removes an UpdateOperation.\n// A call to GC must be run after this to garbage collect vulnerabilities associated\n// with the UpdateOperation.\n//\n// The number of UpdateOperations deleted is returned.\nDeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)\n// GetUpdateOperationDiff reports the UpdateDiff of the two referenced\n// Operations.\n//\n// In diff(1) terms, this is like\n//\n//\tdiff prev cur\n//\nGetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)\n// GC will delete any update operations for an updater which exceeds the provided keep\n// value.\n//\n// Implementations may throttle the GC process for datastore efficiency reasons.\n//\n// The returned int64 value indicates the remaining number of update operations needing GC.\n// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.\nGC(ctx context.Context, keep int) (int64, error)\n// Initialized reports whether the vulnstore contains vulnerabilities.\nInitialized(context.Context) (bool, error)\n// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time\nRecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error\n// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time\nRecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error } Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment } MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided // vulnerabilities, and ensures vulnerabilities from previous updates are // not queried by clients. UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error) // DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing // vulnerabilities and new vulnerabilities. It also takes an array of deleted // vulnerability names which should no longer be available to query. DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error) // GetUpdateOperations returns a list of UpdateOperations in date descending // order for the given updaters. // // The returned map is keyed by Updater implementation's unique names. // // If no updaters are specified, all UpdateOperations are returned. GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRefs reports the latest update reference for every known // updater. GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRef reports the latest update reference of any known // updater. GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error) // DeleteUpdateOperations removes an UpdateOperation. // A call to GC must be run after this to garbage collect vulnerabilities associated // with the UpdateOperation. // // The number of UpdateOperations deleted is returned. DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error) // GetUpdateOperationDiff reports the UpdateDiff of the two referenced // Operations. // // In diff(1) terms, this is like // //\tdiff prev cur // GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error) // GC will delete any update operations for an updater which exceeds the provided keep // value. // // Implementations may throttle the GC process for datastore efficiency reasons. // // The returned int64 value indicates the remaining number of update operations needing GC. // Running this method till the returned value is 0 accomplishes a full GC of the vulnstore. GC(ctx context.Context, keep int) (int64, error) // Initialized reports whether the vulnstore contains vulnerabilities. Initialized(context.Context) (bool, error) // RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error // RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error\n} Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type EnrichmentUpdater interface { // UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided // EnrichmentRecord(s), and ensures enrichments from previous updates are not // queries by clients. UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) } EnrichmentUpdater is an interface exporting the necessary methods for storing and querying Enrichments. package datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment } MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided // vulnerabilities, and ensures vulnerabilities from previous updates are // not queried by clients. UpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error) // DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing // vulnerabilities and new vulnerabilities. It also takes an array of deleted // vulnerability names which should no longer be available to query. DeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error) // GetUpdateOperations returns a list of UpdateOperations in date descending // order for the given updaters. // // The returned map is keyed by Updater implementation's unique names. // // If no updaters are specified, all UpdateOperations are returned. GetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRefs reports the latest update reference for every known // updater. GetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error) // GetLatestUpdateRef reports the latest update reference of any known // updater. GetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error) // DeleteUpdateOperations removes an UpdateOperation. // A call to GC must be run after this to garbage collect vulnerabilities associated // with the UpdateOperation. // // The number of UpdateOperations deleted is returned. DeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error) // GetUpdateOperationDiff reports the UpdateDiff of the two referenced // Operations. // // In diff(1) terms, this is like // //\tdiff prev cur // GetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error) // GC will delete any update operations for an updater which exceeds the provided keep // value. // // Implementations may throttle the GC process for datastore efficiency reasons. // // The returned int64 value indicates the remaining number of update operations needing GC. // Running this method till the returned value is 0 accomplishes a full GC of the vulnstore. GC(ctx context.Context, keep int) (int64, error) // Initialized reports whether the vulnstore contains vulnerabilities. Initialized(context.Context) (bool, error) // RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time RecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error // RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time RecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error\n} Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type EnrichmentUpdater interface { // UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided // EnrichmentRecord(s), and ensures enrichments from previous updates are not // queries by clients. UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error) } EnrichmentUpdater is an interface exporting the necessary methods for storing and querying Enrichments. package datastore // import \"github.com/quay/claircore/datastore\" type Vulnerability interface { // Get finds the vulnerabilities which match each package provided in the // [IndexRecord]s. This may be a one-to-many relationship. A map of Package // ID to Vulnerabilities is returned. Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error)\n} Vulnerability is the interface for querying stored Vulnerabilities.\n```\n```\npackage datastore // import \"github.com/quay/claircore/datastore\" type MatcherStore interface { Updater Vulnerability Enrichment\n} MatcherStore aggregates all interface types package datastore // import \"github.com/quay/claircore/datastore\" type Updater interface { EnrichmentUpdater // UpdateVulnerabilities creates a new UpdateOperation, inserts the provided\n// vulnerabilities, and ensures vulnerabilities from previous updates are\n// not queried by clients.\nUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability) (uuid.UUID, error)\n// DeltaUpdateVulnerabilities creates a new UpdateOperation consisting of existing\n// vulnerabilities and new vulnerabilities. It also takes an array of deleted\n// vulnerability names which should no longer be available to query.\nDeltaUpdateVulnerabilities(ctx context.Context, updater string, fingerprint driver.Fingerprint, vulns []*claircore.Vulnerability, deletedVulns []string) (uuid.UUID, error)\n// GetUpdateOperations returns a list of UpdateOperations in date descending\n// order for the given updaters.\n//\n// The returned map is keyed by Updater implementation's unique names.\n//\n// If no updaters are specified, all UpdateOperations are returned.\nGetUpdateOperations(context.Context, driver.UpdateKind, ...string) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRefs reports the latest update reference for every known\n// updater.\nGetLatestUpdateRefs(context.Context, driver.UpdateKind) (map[string][]driver.UpdateOperation, error)\n// GetLatestUpdateRef reports the latest update reference of any known\n// updater.\nGetLatestUpdateRef(context.Context, driver.UpdateKind) (uuid.UUID, error)\n// DeleteUpdateOperations removes an UpdateOperation.\n// A call to GC must be run after this to garbage collect vulnerabilities associated\n// with the UpdateOperation.\n//\n// The number of UpdateOperations deleted is returned.\nDeleteUpdateOperations(context.Context, ...uuid.UUID) (int64, error)\n// GetUpdateOperationDiff reports the UpdateDiff of the two referenced\n// Operations.\n//\n// In diff(1) terms, this is like\n//\n//\tdiff prev cur\n//\nGetUpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)\n// GC will delete any update operations for an updater which exceeds the provided keep\n// value.\n//\n// Implementations may throttle the GC process for datastore efficiency reasons.\n//\n// The returned int64 value indicates the remaining number of update operations needing GC.\n// Running this method till the returned value is 0 accomplishes a full GC of the vulnstore.\nGC(ctx context.Context, keep int) (int64, error)\n// Initialized reports whether the vulnstore contains vulnerabilities.\nInitialized(context.Context) (bool, error)\n// RecordUpdaterStatus records that an updater is up to date with vulnerabilities at this time\nRecordUpdaterStatus(ctx context.Context, updaterName string, updateTime time.Time, fingerprint driver.Fingerprint, updaterError error) error\n// RecordUpdaterSetStatus records that all updaters from an updater set are up to date with vulnerabilities at this time\nRecordUpdaterSetStatus(ctx context.Context, updaterSet string, updateTime time.Time) error } Updater is an interface exporting the necessary methods for updating a vulnerability database. package datastore // import \"github.com/quay/claircore/datastore\" type EnrichmentUpdater interface { // UpdateEnrichments creates a new EnrichmentUpdateOperation, inserts the provided // EnrichmentRecord(s), and ensures enrichments from previous updates are not // queries by clients. UpdateEnrichments(ctx context.Context, kind string, fingerprint driver.Fingerprint, enrichments []driver.EnrichmentRecord) (uuid.UUID, error)\n} EnrichmentUpdater is an interface exporting the necessary methods for storing and querying Enrichments. package datastore // import \"github.com/quay/claircore/datastore\" type Vulnerability interface { // Get finds the vulnerabilities which match each package provided in the // [IndexRecord]s. This may be a one-to-many relationship. A map of Package // ID to Vulnerabilities is returned. Get(ctx context.Context, records []*claircore.IndexRecord, opts GetOpts) (map[string][]*claircore.Vulnerability, error) } Vulnerability is the interface for querying stored Vulnerabilities. package datastore // import \"github.com/quay/claircore/datastore\" type Enrichment interface { GetEnrichment(ctx context.Context, kind string, tags []string) ([]driver.EnrichmentRecord, error)\n} Enrichment is an interface for querying enrichments from the store.\n```","breadcrumbs":"Reference » Matcher Store » Matcher Store","id":"55","title":"Matcher Store"},"56":{"body":"A Manifest is analogous to an OCI Image Manifest : it defines the order of layers and how to retrieve the them. package claircore // import \"github.com/quay/claircore\" type Manifest struct { // content addressable hash. should be able to be computed via // the hashes of all included layers Hash Digest `json:\"hash\"` // an array of filesystem layers indexed in the same order as the cooresponding image Layers []*Layer `json:\"layers\"`\n} Manifest represents a docker image. Layers array MUST be indexed in the order that image layers are stacked.","breadcrumbs":"Reference » Manifest » Manifest","id":"56","title":"Manifest"},"57":{"body":"A Matcher performs the heavy lifting of matching manifest contents to relevant vulnerabilities. These implementations provide the smarts for understanding if a particular artifact in a layer is vulnerable to a particular advisory in the database. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Matcher interface { // a unique name for the matcher Name() string // Filter informs the Controller if the implemented Matcher is interested in the provided IndexRecord. Filter(record *claircore.IndexRecord) bool // Query informs the Controller how it should match packages with vulnerabilities. // All conditions are logical AND'd together. Query() []MatchConstraint // Vulnerable informs the Controller if the given package is affected by the given vulnerability. // for example checking the \"FixedInVersion\" field. Vulnerable(ctx context.Context, record *claircore.IndexRecord, vuln *claircore.Vulnerability) (bool, error)\n} Matcher is an interface which a Controller uses to query the vulnstore for vulnerabilities. The Filter method is used to inform Libvuln the provided artifact is interesting. The Query method tells Libvuln how to query the security advisory database. The Vulnerable method reports whether the provided package is vulnerable to the provided vulnerability. Typically, this would perform a version check between the artifact and the vulnerability in question.","breadcrumbs":"Reference » Matcher » Matcher","id":"57","title":"Matcher"},"58":{"body":"A Package Scanner should discover any packages found within the given layer. It is OK for to discover no packages within a layer. package indexer // import \"github.com/quay/claircore/indexer\" type PackageScanner interface { VersionedScanner // Scan performs a package scan on the given layer and returns all // the found packages Scan(context.Context, *claircore.Layer) ([]*claircore.Package, error)\n} PackageScanner provides an interface for unique identification or a PackageScanner and a Scan method for extracting installed packages from an individual container layer func NewPackageScannerMock(name, version, kind string) PackageScanner","breadcrumbs":"Reference » Package Scanner » Package Scanner","id":"58","title":"Package Scanner"},"59":{"body":"RemoteMatcher is an additional interface a Matcher may implement to skip the database for matching results and use an external API. package driver // import \"github.com/quay/claircore/libvuln/driver\" type RemoteMatcher interface { QueryRemoteMatcher(ctx context.Context, records []*claircore.IndexRecord) (map[string][]*claircore.Vulnerability, error)\n} RemoteMatcher is an additional interface that a Matcher can implement. When called the interface can invoke the remote matcher using an HTTP API to fetch new vulnerabilities associated with the given IndexRecords. The information retrieved from this interface won't be persisted into the claircore database.","breadcrumbs":"Reference » Remote Scanner » RemoteMatcher","id":"59","title":"RemoteMatcher"},"6":{"body":"Indexing is the process of submitting a manifest to Libindex, fetching the manifest's layers, indexing their contents, and coalescing a final Index Report. Coalescing is the act of computing a final set of contents (packages, distributions, repos) from a set of layers. Since layers maybe shared between many manifests, the final contents of a manifest must be computed. To perform an Index you must provide a claircore.Manifest data struture to the Index method. The Manifest data structure describes an image manifest's layers and where they can be fetched from. m := new(claircore.Manifest) // Populate somehow ... ir, err := lib.Index(ctx, m) if err != nil { panic(err) } The Index method will block until an claircore.IndexReport is returned. The context should be bound to some valid lifetime such as a request. As the Indexer works on the manifest it will update its database throughout the process. You may view the status of an index report via the \"IndexReport\" method. ir, ok, err := lib.IndexReport(ctx, m.Hash) if err != nil { panic(err) } Libindex performs its work incrementally and saves state as it goes along. If Libindex encounters an intermittent error during the index (for example, due to network failure while fetching a layer), when the manifest is resubmitted only the layers not yet indexed will be fetched and processed.","breadcrumbs":"Getting Started » Libindex Usage » Indexing","id":"6","title":"Indexing"},"60":{"body":"A RepositoryScanner should identify any repositories discovered in the provided layer. It is OK for the scanner to identify no repositories. package indexer // import \"github.com/quay/claircore/indexer\" type RepositoryScanner interface { VersionedScanner Scan(context.Context, *claircore.Layer) ([]*claircore.Repository, error)\n}","breadcrumbs":"Reference » Repository Scanner » Repository Scanner","id":"60","title":"Repository Scanner"},"61":{"body":"A Resolver is used to analyze and modify the post-coalesced index report. This is useful for operations that need all context from an index report. package indexer // import \"github.com/quay/claircore/indexer\" type Resolver interface { Resolve(context.Context, *claircore.IndexReport, []*claircore.Layer) *claircore.IndexReport\n} Resolver is used for any reasoning that needs to be done with all the layers in context. Resolvers are called at the end of the coalesce step when reports from separate scanners are merged. Any Resolvers' Resolve() methods are called (in no set order) at the end of the coalesce step after reports from separate scanners are merged.","breadcrumbs":"Reference » Resolver » Resolver","id":"61","title":"Resolver"},"62":{"body":"RPCScanner is an optional interface a Scanner may implement. When implemented, the scanner's Configure method will be called with a ConfigDeserializer function and an HTTP client. The Scanner may pass its config as an argument to the ConfigDeserializer function to populate the struct and use the HTTP client for any remote access necessary during the scanning process. package indexer // import \"github.com/quay/claircore/indexer\" type RPCScanner interface { Configure(context.Context, ConfigDeserializer, *http.Client) error\n} RPCScanner is an interface scanners can implement to receive configuration and denote that they expect to be able to talk to the network at run time. package indexer // import \"github.com/quay/claircore/indexer\" type RPCScanner interface { Configure(context.Context, ConfigDeserializer, *http.Client) error\n} RPCScanner is an interface scanners can implement to receive configuration and denote that they expect to be able to talk to the network at run time. package indexer // import \"github.com/quay/claircore/indexer\" type ConfigDeserializer func(interface{}) error ConfigDeserializer can be thought of as an Unmarshal function with the byte slice provided. This will typically be something like (*json.Decoder).Decode.","breadcrumbs":"Reference » RPC Scanner » RPCScanner","id":"62","title":"RPCScanner"},"63":{"body":"An Updater is responsible for performing run-time fetching and parsing of a security database. The returned vulnerabilities will be written to claircore's database and used in vulnerability matching. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) } Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data\nis available. Fingerprint may be passed into in order for the Fetcher to\ndetermine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new\ncontent can be read. Optionally a fingerprint can be returned which uniquely\nidentifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser } Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)\n} Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data is available. Fingerprint may be passed into in order for the Fetcher to determine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new content can be read. Optionally a fingerprint can be returned which uniquely identifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) } Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents\nof a security advisory database can be read and parsed into an array of\n*claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser } Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error)\n} Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data is available. Fingerprint may be passed into in order for the Fetcher to determine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new content can be read. Optionally a fingerprint can be returned which uniquely identifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error) } Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents\nof a security advisory database can be read and parsed into an array of\n*claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fingerprint string Fingerprint is some identifying information about a vulnerability database.\n```\n```\npackage driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) } Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data\nis available. Fingerprint may be passed into in order for the Fetcher to\ndetermine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new\ncontent can be read. Optionally a fingerprint can be returned which uniquely\nidentifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)\n} Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents of a security advisory database can be read and parsed into an array of *claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fingerprint string Fingerprint is some identifying information about a vulnerability database. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Configurable interface { Configure(context.Context, ConfigUnmarshaler, *http.Client) error\n} Configurable is an interface that Updaters can implement to opt-in to having their configuration provided dynamically.\n```\n```\npackage driver // import \"github.com/quay/claircore/libvuln/driver\" type Updater interface { Name() string Fetcher Parser\n} Updater is an aggregate interface combining the method set of a Fetcher and a Parser and forces a Name() to be provided package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fetcher interface { Fetch(context.Context, Fingerprint) (io.ReadCloser, Fingerprint, error) } Fetcher is an interface which is embedded into the Updater interface. When called the interface should determine if new security advisory data\nis available. Fingerprint may be passed into in order for the Fetcher to\ndetermine if the contents has changed If there is new content Fetcher should return a io.ReadCloser where the new\ncontent can be read. Optionally a fingerprint can be returned which uniquely\nidentifies the new content. If the conent has not change an Unchanged error should be returned. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Parser interface { // Parse should take an io.ReadCloser, read the contents, parse the contents // into a list of claircore.Vulnerability structs and then return // the list. Parse should assume contents are uncompressed and ready for parsing. Parse(ctx context.Context, contents io.ReadCloser) ([]*claircore.Vulnerability, error)\n} Parser is an interface which is embedded into the Updater interface. Parse should be called with an io.ReadCloser struct where the contents of a security advisory database can be read and parsed into an array of *claircore.Vulnerability package driver // import \"github.com/quay/claircore/libvuln/driver\" type Fingerprint string Fingerprint is some identifying information about a vulnerability database. package driver // import \"github.com/quay/claircore/libvuln/driver\" type Configurable interface { Configure(context.Context, ConfigUnmarshaler, *http.Client) error\n} Configurable is an interface that Updaters can implement to opt-in to having their configuration provided dynamically. package driver // import \"github.com/quay/claircore/libvuln/driver\" type ConfigUnmarshaler func(interface{}) error ConfigUnmarshaler can be thought of as an Unmarshal function with the byte slice provided, or a Decode function. The function should populate a passed struct with any configuration\ninformation.","breadcrumbs":"Reference » Updater » Updater","id":"63","title":"Updater"},"64":{"body":"An UpdaterSetFactory is a factory for runtime construction and configuration for Updaters. package driver // import \"github.com/quay/claircore/libvuln/driver\" type UpdaterSetFactory interface { UpdaterSet(context.Context) (UpdaterSet, error)\n} UpdaterSetFactory is used to construct updaters at run-time. func StaticSet(s UpdaterSet) UpdaterSetFactory package driver // import \"github.com/quay/claircore/libvuln/driver\" type UpdaterSetFactory interface { UpdaterSet(context.Context) (UpdaterSet, error)\n} UpdaterSetFactory is used to construct updaters at run-time. func StaticSet(s UpdaterSet) UpdaterSetFactory package driver // import \"github.com/quay/claircore/libvuln/driver\" type UpdaterSet struct { // Has unexported fields. } UpdaterSet holds a deduplicated set of updaters. func NewUpdaterSet() UpdaterSet func (s *UpdaterSet) Add(u Updater) error func (s *UpdaterSet) Merge(set UpdaterSet) error func (s *UpdaterSet) RegexFilter(regex string) error func (s *UpdaterSet) Updaters() []Updater","breadcrumbs":"Reference » Updater Set Factory » UpdaterSetFactory","id":"64","title":"UpdaterSetFactory"},"65":{"body":"VersionFilter is an additional interface a Matcher may implement. If implemented, Libvuln will attempt to use the database and the normalized version field of a package to filter vulnerabilities in the database. This is an opt-in optimization for when a package manager's version scheme can be normalized into a claircore.Version. package driver // import \"github.com/quay/claircore/libvuln/driver\" type VersionFilter interface { VersionFilter() // VersionAuthoritative reports whether the Matcher trusts the database-side // filtering to be authoritative. // // A Matcher may return false if it's using a versioning scheme that can't // be completely normalized into a claircore.Version. VersionAuthoritative() bool\n} VersionFilter is an additional interface that a Matcher can implement to opt-in to using normalized version information in database queries.","breadcrumbs":"Reference » Version Filter » VersionFilter","id":"65","title":"VersionFilter"},"66":{"body":"A versioned scanner is typically embedded into other scanner types. It drives claircore's ability to register and understand when updaters have been changed. Functions that want to work with a generic scanner type should use a VersionedScanner. Implementers of this interface must provide a unique name. Making changes to a scanner's implementation must return a new value from Version. Implementers must return the correct kind: one of \"package\", \"distribution\", or \"repository\" package indexer // import \"github.com/quay/claircore/indexer\" type VersionedScanner interface { // unique name of the distribution scanner. Name() string // version of this scanner. this information will be persisted with the scan. Version() string // the kind of scanner. currently only package is implemented Kind() string\n} VersionedScanner can be embedded into specific scanner types. This allows for methods and functions which only need to compare names and versions of scanners not to require each scanner type as an argument.","breadcrumbs":"Reference » Versioned Scanner » Versioned Scanner","id":"66","title":"Versioned Scanner"},"67":{"body":"A Vulnerability Report is a structure describing a specific manifest, its contents, and the vulnerabilities affecting its contents. package claircore // import \"github.com/quay/claircore\" type VulnerabilityReport struct { // the manifest hash this vulnerability report is describing Hash Digest `json:\"manifest_hash\"` // all discovered packages in this manifest keyed by package id Packages map[string]*Package `json:\"packages\"` // all discovered distributions in this manifest keyed by distribution id Distributions map[string]*Distribution `json:\"distributions\"` // all discovered repositories in this manifest keyed by repository id Repositories map[string]*Repository `json:\"repository\"` // a list of environment details a package was discovered in keyed by package id Environments map[string][]*Environment `json:\"environments\"` // all discovered vulnerabilities affecting this manifest Vulnerabilities map[string]*Vulnerability `json:\"vulnerabilities\"` // a lookup table associating package ids with 1 or more vulnerability ids. keyed by package id PackageVulnerabilities map[string][]string `json:\"package_vulnerabilities\"` // a map of enrichments keyed by a type. Enrichments map[string][]json.RawMessage `json:\"enrichments\"`\n} VulnerabilityReport provides a report of packages and their associated vulnerabilities. A Vulnerability Report is package focused. Unpacking a report is done by mapping the keys in the PackageVulnerabilities field to the data structures in other lookup maps. For example: for pkgID, vulnIDS := range report.PackageVulnerabilities { // get package data structure pkg := report.Packages[pkgID] for _, vulnID := range vulnIDS { vuln := report.Vulnerabilities[vulnID] fmt.Printf(\"package %+v affected by vuln %+v\", pkg, vuln) } }","breadcrumbs":"Reference » Vulnerability Report » Vulnerability Report","id":"67","title":"Vulnerability Report"},"68":{"body":"These topics cover helpful tips for contributing to Claircore. Local Development Logging Misc Tests","breadcrumbs":"Contributors » Contributors","id":"68","title":"Contributors"},"69":{"body":"The preferred workflow is to fork the quay/claircore repository, push a feature branch to the new fork, then open a pull request. All pull requests should be targeted to the main branch outside of exceptional circumstances.","breadcrumbs":"Contributors » Guidelines » How to contribute","id":"69","title":"How to contribute"},"7":{"body":"Libindex treats layers as content addressable. Once a layer identified by a particular hash is indexed its contents are definitively known. A request to re-index a known layer results in returning the previous successful response. This comes in handy when dealing with base layers. The Ubuntu base layer is seen very often across container registries. Treating this layer as content addressable precludes the need to fetch and index the layer every time Libindex encounters it in a manifest. There are times where re-indexing the same layer is necessary however. At the point where Libindex realizes a new version of a component has not indexed a layer being submitted it will perform the indexing operation. A client must notice that Libindex has updated one of its components and subsequently resubmit Manifests. The State endpoint is implemented for this reason. Clients may query the State endpoint to receive an opaque string acting as a cookie, identifying a unique state of Libindex. When a client sees this cookie change it should re-submit manifests to Libindex to obtain a new index report. state, err := lib.State(ctx) if err != nil { panic(err) } if state == prevState { // Nothing to do. return } // Otherwise, re-index manifest.","breadcrumbs":"Getting Started » Libindex Usage » State","id":"7","title":"State"},"70":{"body":"As many tests as possible should run with the standard go test invocations. Adding the special tag integration (e.g. go test -tags integration ./...) will also run \"integration\" tests. The project interprets \"integration\" tests to mean any test that would need external resources, such as: External web servers External network access Out-of-process databases Large test fixtures After at least one run with the integration tag, the tests should cache needed resources and run as many tests as possible. See also the test/integration package.","breadcrumbs":"Contributors » Guidelines » Testing","id":"70","title":"Testing"},"71":{"body":"The Pull Request (PR) is the unit of code review. Claircore's review flow treats a feature branch as a stack of patches to be applied. That is to say, the feature branch should be rebased onto the target branch and have well-organized commits. Merge commits are disallowed. If the author would prefer to not rewrite commit history while working through reviews, fixup commits are the suggested way to achieve that. As many requirements as possible are enforced by CI, like: Commits being signed off Commit messages having a properly formed subject Go modules being tidied Please use the \"draft\" option if the branch is not ready. Please enable the \"allow edits by maintainers\" option. The maintainers may rebase, push, and merge contributors' branches. This may necessitate doing a git reset / to update a local branch.","breadcrumbs":"Contributors » Guidelines » Pull Requests","id":"71","title":"Pull Requests"},"72":{"body":"Git commits should be formatted like \"subject: summary\" and avoid going over 80 characters per line. The \"subject\" is usually the package affected by the commit (like jar or rhel -- the relative path isn't needed) but sometimes a broader category (like docs, all, or cicd) is OK. All the helper scripts should handle the \"normal\" convention (origin is quay/claircore and fork is one's personal fork) and the \"British\" convention (origin is one's personal fork and upstream is quay/claircore). More detailed contributor documentation can be found in the project documentation .","breadcrumbs":"Contributors » Guidelines » Conventions","id":"72","title":"Conventions"},"73":{"body":"The claircore project has switched from a git log based changelog to a git notes based changelog. This has the benefit of making the changelog more human-friendly, as it can have prose describing changes now, but makes adding entries a bit more involved. A full understanding of git notes is helpful for working with the changelog, but not required. If the reader has worked with the notes feature before, the changelog entries are stored under the changelog ref. For other users, there are some helper scripts in .github/scripts. Git notes is a mechanism for storing additional information alongside commits without modifying the commits. It does this by creating a ref full of files named after the commits, with their contents being the notes. This scheme requires some special care and tooling -- see the documentation for more information.","breadcrumbs":"Contributors » Changelog » Basics of git notes","id":"73","title":"Basics of git notes"},"74":{"body":"The primary helper script is changelog-edit. It allows a user to sync down notes, edit an entry, or both. See the output of the h flag for more information. The other script of interest is changelog-render, which can be used to render out the changelog on demand, assuming the changelog notes have been pulled locally. The changelog-update script uses changelog-render to add to the CHANGELOG.md file in the repository root.","breadcrumbs":"Contributors » Changelog » Helper scripts","id":"74","title":"Helper scripts"},"75":{"body":"Broadly, changelog entries should be formatted like commit messages without any trailers. Entries are turned into list items, with the subject being the bullet point and the body of the entry being the \"body\" of the item, or hidden behind details elements when using HTML-enabled output. The entries are almost always rendered as markdown, so using minimal markdown is OK. Anything requiring excessive markdown is probably better served as documentation proper, rather than a changelog entry.","breadcrumbs":"Contributors » Changelog » Formatting","id":"75","title":"Formatting"},"76":{"body":"A local development environment is implemented via docker-compose.","breadcrumbs":"Contributors » Local Development » Local Development","id":"76","title":"Local Development"},"77":{"body":"Several make targets are defined for working with the local development environment. claircore-db-up - creates just the claircore database useful for running integration tests without test servers\nclaircore-db-restart - destroys and recreates a fresh database. localhost:5434","breadcrumbs":"Contributors » Local Development » Usage","id":"77","title":"Usage"},"78":{"body":"Several make targets are defined for working with tests. integration - run the integration test suite. requires the claircore-db to be up. run `make clair-db-up` before this target\nunit - run the unit test suite.\nbench - runs the benchmarks\nintegration-v - runs the integration test suite with verbose\nunit-v - runs the unit test suite with verbose","breadcrumbs":"Contributors » Local Development » Tests","id":"78","title":"Tests"},"79":{"body":"All the logging in claircore is done with zerolog via context.Context values. The zlog package takes OpenTelemetry labels and attaches them to zerolog events. This allows for claircore's logging to be used consistently throughout all the packages without having unintended prints to stderr.","breadcrumbs":"Contributors » Logging » Logging","id":"79","title":"Logging"},"8":{"body":"Libindex is capable of providing a client with all manifests affected by a set of vulnerabilities. This functionality is designed for use with a notification mechanism. var vulns []claircore.Vulnerability affected, err := lib.AffectedManifests(ctx, vulns) if err != nil { panic(err) } for manifest, vulns := range affected.VulnerableManifests { for _, vuln := range vulns { fmt.Printf(\"vuln affecting manifest %s: %+v\", manifest, vuln) } } The slice of vulnerabilities returned for each manifest hash will be sorted by claircore.NormalizedSeverity in \"most severe\" descending order.","breadcrumbs":"Getting Started » Libindex Usage » AffectedManifests","id":"8","title":"AffectedManifests"},"80":{"body":"","breadcrumbs":"Contributors » Logging » How to Log","id":"80","title":"How to Log"},"81":{"body":"In a function, use zlog to add key-value pairs of any relevant context: ctx = zlog.ContextWithValues(ctx, \"component\", \"Example.Logger\") Alternatively, the go.opentelemetry.io/otel/baggage package can be used for more explicit control around the baggage values.","breadcrumbs":"Contributors » Logging » Adding Context","id":"81","title":"Adding Context"},"82":{"body":"Constant Messages Zerolog emits lines when the Msg or Msgf methods are called. Project style is to not use Msgf. Any variable data should be set as key-value pairs on the Event object. For example, don't do this: zlog.Info(ctx).Msgf(\"done at: %v\", time.Now()) Do this instead: zlog.Info(ctx). Time(\"time\", time.Now()). Msgf(\"done\") Grammar When noting the change during a chunk of work, make sure that the log messages scan as visually similar. Usually, this means formatting messages into \"${process} ${event}\". For example: frob start\nfrob initialized\nfrob ready\nfrob success\nfrob done Is much easier to scan than: starting to frob\ninitialized frobber\nready for frobbing\ndid frob\ndone with frobing Don't log and return When handling an error, code should only log it if it does not propagate it. The code that ultimately handles the error is responsible for deciding what to do with it. Logging and returning ends up with the same message repeated multiple times in the logs. Levels Claircore attempts to have consistent leveled logging. The rules for figuring out what level to use is: Panic There's some occurrence that means the process won't work correctly. Fatal Unused, because it prevents defers from running. Error Something unexpected occurred and the process can continue, but a human needs to be notified. An error will be returned for this request. Warn Something unexpected occurred and the process can continue. An error will be returned for this request. Info Some information that may be useful to an operator. Examples include a timer-based process starting and ending, a user request starting and ending, or a summary of work done. Debug Some information that may be useful to a developer. Examples include entering and exiting functions, stepping through a function, or specific file paths used while work is being done.","breadcrumbs":"Contributors » Logging » Logging style","id":"82","title":"Logging style"},"83":{"body":"Here's various codebase conventions that don't have dedicated pages: URLs URLs in code should be annotated with a //doc:url directive comment. See the the internal/cmd/mdbook-injecturls command for documentation on how the preprocessor works. The list of keywords isn't an allowlist, so an invocation like the following should list the ones actually used in the documentation using a command like git grep injecturls -- :/docs/*.md.","breadcrumbs":"Contributors » Misc","id":"83","title":"Contributors"},"84":{"body":"Tests in the claircore module may use various helpers underneath the test directory. Using these packages outside of testing code is disallowed. Assert packages are disallowed; the go-cmp package is the only external package helper allowed. Tests that use external resources or generate test fixtures should be annotated according to the integration package.","breadcrumbs":"Contributors » Tests » Tests","id":"84","title":"Tests"},"85":{"body":"Tests using the integration package cache generated and downloaded assets into a directory named clair-testing inside the directory reported by os.UserCacheDir . For example, on a Linux system, the cache directory will be (in sh notation) ${XDG_CACHE_HOME-$HOME/.cache}/clair-testing.","breadcrumbs":"Contributors » Tests » Caching","id":"85","title":"Caching"},"9":{"body":"Libvuln is the Go package responsible for keeping the database of vulnerabilities consistent, matching container image contents with vulnerabilities, and reporting diffs between updates of the same security database.","breadcrumbs":"Getting Started » Libvuln Usage » Libvuln Usage","id":"9","title":"Libvuln Usage"}},"length":86,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}},"1":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"19":{"tf":4.0},"67":{"tf":1.0}}},"2":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"0":{"1":{"8":{".":{"0":{"3":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}},"3":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{".":{"9":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"9":{".":{"0":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":3,"docs":{"14":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"43":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"53":{"tf":1.0},"62":{"tf":1.0},"70":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"38":{"tf":1.0},"55":{"tf":2.0}}}}}}}},"r":{"d":{"df":2,"docs":{"33":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"41":{"tf":1.0},"71":{"tf":1.0}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"(":{"df":0,"docs":{},"u":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"81":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"59":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"19":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"56":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}},"df":10,"docs":{"11":{"tf":1.0},"14":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"81":{"tf":1.0}},"v":{"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":1,"docs":{"21":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.0},"57":{"tf":1.4142135623730951},"63":{"tf":3.0}}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"72":{"tf":1.0},"8":{"tf":1.7320508075688772}},"e":{"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":1.4142135623730951},"8":{"tf":1.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"16":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.23606797749979},"63":{"tf":2.449489742783178}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":7,"docs":{"14":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"79":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}},"g":{"df":1,"docs":{"6":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"25":{"tf":1.7320508075688772}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"4":{"tf":1.0},"46":{"tf":1.0},"81":{"tf":1.0}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"39":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"56":{"tf":1.0}}}},"y":{"df":0,"docs":{},"z":{"df":1,"docs":{"61":{"tf":1.0}}}}}},"d":{"'":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"i":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"14":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"33":{"tf":1.0},"43":{"tf":1.0}}},"df":3,"docs":{"49":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"71":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"0":{"tf":1.0},"15":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"v":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"81":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"55":{"tf":2.0},"56":{"tf":1.4142135623730951},"63":{"tf":2.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"40":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":2.23606797749979},"52":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"84":{"tf":1.0}}}},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":9,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.6457513110645907},"55":{"tf":2.0},"59":{"tf":1.0},"67":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"63":{"tf":2.0},"74":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"37":{"tf":1.0},"54":{"tf":1.4142135623730951},"65":{"tf":1.0},"82":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"54":{"tf":2.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"21":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"7":{"tf":1.4142135623730951},"73":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":6,"docs":{"22":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.4142135623730951},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"73":{"tf":1.0},"78":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"21":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0}},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"0":{"tf":1.0},"75":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"0":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"78":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"78":{"tf":1.0}}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"46":{"tf":1.0},"73":{"tf":1.0}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":7,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"33":{"tf":1.0},"74":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"22":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"o":{"a":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"19":{"tf":1.0},"70":{"tf":1.0},"85":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":12,"docs":{"21":{"tf":1.4142135623730951},"40":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":3.0},"55":{"tf":2.0},"59":{"tf":1.0},"61":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":3.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"4":{"tf":1.0}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"63":{"tf":3.1622776601683795},"66":{"tf":1.4142135623730951},"7":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":3,"docs":{"73":{"tf":2.449489742783178},"74":{"tf":2.449489742783178},"75":{"tf":1.4142135623730951}}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"i":{"c":{"d":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"71":{"tf":1.0}},"r":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":34,"docs":{"0":{"tf":2.0},"1":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.4142135623730951},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"59":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0},"77":{"tf":1.7320508075688772},"78":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":1.0},"84":{"tf":1.0}},"e":{"'":{"df":6,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":5.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"49":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":6,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"54":{"tf":3.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":7,"docs":{"41":{"tf":1.0},"42":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":2.0},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"41":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"60":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":8,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"40":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"63":{"tf":3.4641016151377544},"8":{"tf":1.0}}}}}}}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":6,"docs":{"0":{"tf":1.0},"14":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"78":{"tf":1.0},"85":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"84":{"tf":1.0}}}},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":12,"docs":{"18":{"tf":1.7320508075688772},"2":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":3.1622776601683795},"45":{"tf":3.3166247903554},"48":{"tf":1.0},"49":{"tf":3.3166247903554},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":6,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.0},"84":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"m":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"44":{"tf":1.0},"63":{"tf":2.449489742783178}}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"44":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":2.449489742783178},"72":{"tf":1.4142135623730951},"73":{"tf":1.7320508075688772},"75":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"66":{"tf":1.0}}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"44":{"tf":1.0},"54":{"tf":2.449489742783178},"65":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.4142135623730951},"81":{"tf":1.0}}},"s":{"df":1,"docs":{"76":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":2,"docs":{"13":{"tf":1.0},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.4142135623730951}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}},"u":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"50":{"tf":2.6457513110645907},"62":{"tf":2.449489742783178}}}}}}}},"df":3,"docs":{"11":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"tf":2.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":17,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.449489742783178},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.7320508075688772},"48":{"tf":1.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":2.6457513110645907},"64":{"tf":1.0}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"22":{"tf":1.0},"40":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"55":{"tf":2.0},"79":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"0":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"12":{"tf":2.0},"3":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.7320508075688772},"64":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":12,"docs":{"0":{"tf":1.4142135623730951},"18":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"58":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":21,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.7320508075688772},"63":{"tf":6.324555320336759},"67":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"73":{"tf":1.0},"9":{"tf":1.0}}}},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":9,"docs":{"45":{"tf":2.23606797749979},"49":{"tf":1.4142135623730951},"52":{"tf":2.23606797749979},"54":{"tf":5.744562646538029},"55":{"tf":5.477225575051661},"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":2.0},"79":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"12":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"81":{"tf":1.4142135623730951}},"u":{"df":1,"docs":{"53":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"69":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0},"83":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":2.0},"81":{"tf":1.0}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":1.7320508075688772},"83":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"46":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"66":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"68":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":3.3166247903554},"73":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":9,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"39":{"tf":1.0}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"33":{"tf":1.0}},"v":{"2":{"df":1,"docs":{"35":{"tf":1.0}}},"3":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":29,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"23":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":2.0},"44":{"tf":2.449489742783178},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"63":{"tf":3.0},"65":{"tf":2.0},"70":{"tf":1.0},"77":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}},"e":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{},"s":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":15,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"27":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"43":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"63":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"17":{"tf":1.0},"55":{"tf":4.358898943540674}},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":3.4641016151377544}}}}},"b":{"[":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"v":{"[":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":2.0},"7":{"tf":1.0}}}},"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"27":{"tf":1.7320508075688772},"40":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"64":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":2.23606797749979},"14":{"tf":1.0},"36":{"tf":1.4142135623730951},"37":{"tf":1.0},"4":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"82":{"tf":1.0}}}},"i":{"df":0,"docs":{},"n":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.4641016151377544}},"e":{"d":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"42":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"14":{"tf":1.0},"55":{"tf":2.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"6":{"tf":1.0},"67":{"tf":1.4142135623730951},"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":6,"docs":{"40":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"8":{"tf":1.0}}}},"r":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":1,"docs":{"77":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"13":{"tf":1.0},"18":{"tf":1.4142135623730951},"21":{"tf":1.0},"49":{"tf":1.0},"63":{"tf":3.1622776601683795}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":7,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"68":{"tf":1.0},"76":{"tf":1.4142135623730951},"77":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":4,"docs":{"0":{"tf":1.0},"18":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"1":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}},".":{"a":{"d":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":3,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.0},"9":{"tf":1.0}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":2.23606797749979},"56":{"tf":1.0},"67":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"84":{"tf":1.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.4142135623730951}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":8,"docs":{"0":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":3.1622776601683795},"58":{"tf":1.4142135623730951},"60":{"tf":1.0},"67":{"tf":2.23606797749979}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"39":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"2":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.449489742783178},"4":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"42":{"tf":3.3166247903554},"43":{"tf":1.0},"44":{"tf":2.449489742783178},"45":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.0},"51":{"tf":2.23606797749979},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"6":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"o":{"c":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"56":{"tf":1.0},"76":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"s":{"/":{"*":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"1":{"tf":1.0},"39":{"tf":1.0},"72":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}}}}},"df":1,"docs":{"71":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":5,"docs":{"5":{"tf":1.0},"61":{"tf":1.0},"67":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":2.0}}}},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"74":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":2,"docs":{"4":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"/":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"52":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"66":{"tf":1.0}},"r":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"82":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"37":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":13,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"53":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"4":{"tf":2.0},"45":{"tf":2.449489742783178},"48":{"tf":1.0},"52":{"tf":2.8284271247461903}}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"71":{"tf":1.0},"74":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}}}},"m":{"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"63":{"tf":3.0},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"4":{"tf":1.0},"71":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}}},"d":{"df":5,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"82":{"tf":1.7320508075688772}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":4.123105625617661},"67":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"(":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.1622776601683795}},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"40":{"tf":1.4142135623730951},"53":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"75":{"tf":2.23606797749979}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"53":{"tf":2.0},"67":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"\"":{":":{"df":0,"docs":{},"{":{"\"":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"\"":{":":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"13":{"tf":2.0},"14":{"tf":2.449489742783178},"5":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"6":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":19,"docs":{"22":{"tf":1.0},"4":{"tf":1.4142135623730951},"45":{"tf":2.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":6.557438524302},"55":{"tf":7.3484692283495345},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.123105625617661},"64":{"tf":2.23606797749979},"82":{"tf":2.23606797749979}}}}}},"t":{"c":{"df":2,"docs":{"19":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"21":{"tf":1.0},"45":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"54":{"tf":1.7320508075688772},"79":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"13":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":2.0},"85":{"tf":1.0}},"e":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"55":{"tf":2.0}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"37":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"55":{"tf":2.0}}}},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"59":{"tf":1.0},"70":{"tf":1.7320508075688772},"84":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"4":{"tf":1.0},"40":{"tf":1.0},"48":{"tf":1.0},"64":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"d":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":8,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":2.0},"63":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":5.656854249492381}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":7,"docs":{"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"43":{"tf":1.0},"57":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"67":{"tf":1.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"40":{"tf":1.0},"82":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":9,"docs":{"4":{"tf":1.4142135623730951},"41":{"tf":2.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":2.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"56":{"tf":1.0}}}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":3,"docs":{"48":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.7320508075688772},"6":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":1.4142135623730951}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"55":{"tf":3.872983346207417},"63":{"tf":5.0990195135927845}}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"[":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772}}}},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"40":{"tf":1.0}}}}},"t":{"df":1,"docs":{"44":{"tf":1.0}}},"x":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"74":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"71":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"(":{"\"":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"19":{"tf":1.0},"67":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":15,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"83":{"tf":1.0}}}}}},"r":{"c":{"df":1,"docs":{"63":{"tf":2.449489742783178}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"39":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}}},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"72":{"tf":1.7320508075688772}}},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"75":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"df":1,"docs":{"71":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"23":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.7320508075688772},"51":{"tf":1.0},"54":{"tf":2.8284271247461903},"58":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":2.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"77":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"73":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":1,"docs":{"82":{"tf":2.8284271247461903}},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.0},"55":{"tf":2.0},"73":{"tf":1.4142135623730951}}}},"n":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"45":{"tf":2.0},"52":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":4,"docs":{"45":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"58":{"tf":1.0},"64":{"tf":2.6457513110645907}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":11,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951},"50":{"tf":2.0},"54":{"tf":1.0},"55":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951},"8":{"tf":1.0},"81":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}}},"g":{"a":{"df":0,"docs":{},"r":{"b":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":4.47213595499958}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"39":{"tf":1.0},"66":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0}}}}},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":6,"docs":{"1":{"tf":1.0},"14":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"47":{"tf":1.4142135623730951},"54":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.8284271247461903}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":2.23606797749979},"83":{"tf":1.0}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"67":{"tf":1.0}},"e":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":10,"docs":{"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":3.1622776601683795},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"39":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"15":{"tf":1.0},"40":{"tf":1.0}},"n":{"df":9,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"51":{"tf":1.0},"54":{"tf":2.23606797749979},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}},"o":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"b":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":8,"docs":{"0":{"tf":1.0},"2":{"tf":1.0},"52":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0},"72":{"tf":1.0},"84":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"t":{"df":3,"docs":{"0":{"tf":2.449489742783178},"18":{"tf":3.0},"21":{"tf":2.8284271247461903}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"14":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}},"l":{"df":4,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"41":{"tf":1.0},"44":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":8,"docs":{"19":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":5.0990195135927845},"56":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":2.23606797749979}},"l":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"40":{"tf":1.0},"63":{"tf":1.4142135623730951},"71":{"tf":1.0},"79":{"tf":1.0}}}}},"df":1,"docs":{"74":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":3,"docs":{"17":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":6,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"83":{"tf":1.0}}},"df":2,"docs":{"4":{"tf":1.0},"47":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}}}}},"i":{"d":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":12,"docs":{"0":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"41":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"/":{".":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"}":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"t":{"df":0,"docs":{},"p":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},":":{"/":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"59":{"tf":1.0},"62":{"tf":1.4142135623730951}},"s":{":":{"/":{"/":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"v":{"2":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{".":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"a":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"1":{".":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"n":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"2":{"0":{"2":{"3":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"b":{".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"a":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"v":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"/":{"1":{".":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"d":{"b":{".":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{".":{"df":1,"docs":{"19":{"tf":1.0}}},"d":{"df":3,"docs":{"53":{"tf":2.8284271247461903},"55":{"tf":1.4142135623730951},"67":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}},"i":{"df":9,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"51":{"tf":1.0},"60":{"tf":1.4142135623730951},"63":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"m":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"g":{"df":7,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"49":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"56":{"tf":2.0},"6":{"tf":1.0},"9":{"tf":1.0}}}},"df":1,"docs":{"0":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.6457513110645907},"41":{"tf":2.0},"42":{"tf":3.0},"43":{"tf":2.0},"44":{"tf":2.23606797749979},"45":{"tf":1.4142135623730951},"46":{"tf":1.0},"47":{"tf":1.4142135623730951},"49":{"tf":1.0},"50":{"tf":1.7320508075688772},"54":{"tf":2.0},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"62":{"tf":2.0},"63":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":2.0},"7":{"tf":1.0},"76":{"tf":1.0}}}}}}},"i":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":27,"docs":{"11":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":3.872983346207417},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":2,"docs":{"56":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"17":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"13":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":2.0},"18":{"tf":2.23606797749979},"19":{"tf":1.7320508075688772},"2":{"tf":1.4142135623730951},"20":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":2.0},"40":{"tf":1.7320508075688772},"45":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":3.1622776601683795},"54":{"tf":5.291502622129181},"56":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":3.3166247903554},"60":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":1.7320508075688772},"66":{"tf":1.0},"7":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"{":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"54":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"18":{"tf":1.7320508075688772},"54":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"]":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}},"df":5,"docs":{"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"53":{"tf":2.6457513110645907},"57":{"tf":1.0},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":9,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.4142135623730951},"45":{"tf":1.0},"49":{"tf":2.0},"53":{"tf":3.4641016151377544},"54":{"tf":4.47213595499958},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}},"i":{"c":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"82":{"tf":1.0}},"r":{"df":0,"docs":{},"m":{"df":26,"docs":{"14":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":2.449489742783178},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":2.0},"59":{"tf":1.0},"63":{"tf":2.0},"65":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"12":{"tf":1.0},"55":{"tf":2.0},"82":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"2":{"tf":1.0},"45":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.6457513110645907}}}}},"i":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"58":{"tf":1.0}}},"n":{"c":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"38":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"6":{"4":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":7,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"70":{"tf":2.23606797749979},"77":{"tf":1.0},"78":{"tf":2.0},"84":{"tf":1.0},"85":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"74":{"tf":1.0}}}}},"f":{"a":{"c":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":2.6457513110645907},"40":{"tf":2.0},"41":{"tf":1.0},"44":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":2.0},"51":{"tf":1.0},"54":{"tf":4.58257569495584},"55":{"tf":5.5677643628300215},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":2.23606797749979},"63":{"tf":6.928203230275509},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"m":{"d":{"/":{"df":0,"docs":{},"m":{"d":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"15":{"tf":1.0}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"70":{"tf":1.0}}}}}},"v":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"70":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":1,"docs":{"59":{"tf":1.0}}},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"o":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":4.69041575982343}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"u":{"df":4,"docs":{"20":{"tf":1.0},"37":{"tf":1.0},"39":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}}},"t":{"'":{"df":4,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"54":{"tf":1.7320508075688772},"65":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}}}},"j":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}},"v":{"a":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{")":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},":":{"\"":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":2.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"55":{"tf":2.8284271247461903},"9":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"y":{"'":{"d":{"df":1,"docs":{"53":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.0},"67":{"tf":2.6457513110645907},"81":{"tf":1.0},"82":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"4":{"tf":1.0},"55":{"tf":2.0},"58":{"tf":1.0},"66":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"23":{"tf":1.0}},"n":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"79":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"g":{"df":9,"docs":{"0":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.449489742783178},"40":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":23,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"18":{"tf":1.4142135623730951},"19":{"tf":2.0},"2":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":3.0},"45":{"tf":1.0},"49":{"tf":3.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":5.477225575051661},"56":{"tf":2.6457513110645907},"57":{"tf":1.0},"58":{"tf":2.0},"6":{"tf":2.449489742783178},"60":{"tf":1.0},"61":{"tf":1.0},"7":{"tf":3.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"0":{"tf":1.0},"82":{"tf":1.7320508075688772}}}}}},"i":{"b":{".":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"'":{"df":1,"docs":{"17":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"3":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.4142135623730951},"2":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":2.23606797749979},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":2.23606797749979},"6":{"tf":1.7320508075688772},"7":{"tf":2.449489742783178},"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.7320508075688772},"39":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"'":{"df":3,"docs":{"2":{"tf":1.0},"21":{"tf":1.0},"41":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"10":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"16":{"tf":2.0},"21":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"17":{"tf":1.0},"57":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"42":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}},"k":{"df":1,"docs":{"47":{"tf":1.0}}},"u":{"df":0,"docs":{},"x":{"df":3,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"85":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":11,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.8284271247461903},"67":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}},"o":{"a":{"d":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"76":{"tf":1.4142135623730951},"77":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{":":{"5":{"4":{"3":{"4":{"df":1,"docs":{"77":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":2.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":5,"docs":{"68":{"tf":1.0},"73":{"tf":1.0},"79":{"tf":1.7320508075688772},"80":{"tf":1.0},"82":{"tf":2.6457513110645907}},"i":{"c":{"df":3,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}},"w":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"t":{";":{"&":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{";":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{";":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{".":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"69":{"tf":1.0}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"71":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":9,"docs":{"18":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"53":{"tf":1.4142135623730951},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":8,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"df":5,"docs":{"19":{"tf":2.6457513110645907},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"'":{"df":5,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"df":18,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":3.0},"54":{"tf":4.69041575982343},"56":{"tf":2.23606797749979},"57":{"tf":1.0},"6":{"tf":2.449489742783178},"67":{"tf":2.449489742783178},"7":{"tf":2.0},"8":{"tf":2.23606797749979}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"p":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"[":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"]":{"*":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"[":{"]":{"*":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":15,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":1.4142135623730951},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.449489742783178},"67":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.7320508075688772}}}}}},"df":1,"docs":{"54":{"tf":3.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":12,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.0},"42":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":2.449489742783178},"16":{"tf":1.4142135623730951},"21":{"tf":2.8284271247461903},"22":{"tf":1.7320508075688772},"40":{"tf":1.0},"48":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":2.449489742783178},"59":{"tf":1.7320508075688772},"65":{"tf":2.0}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.1622776601683795}}}}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}}},"y":{"b":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"41":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"43":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"g":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"21":{"tf":1.0},"61":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"71":{"tf":1.0},"75":{"tf":1.0},"82":{"tf":2.0}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"46":{"tf":1.0}}}}},"t":{"a":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{".":{"*":{".":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":18,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"40":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":4.358898943540674},"55":{"tf":3.4641016151377544},"57":{"tf":1.7320508075688772},"58":{"tf":1.0},"6":{"tf":1.7320508075688772},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.449489742783178},"66":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"s":{"c":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"19":{"tf":1.7320508075688772},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0}}},"r":{"df":4,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":3,"docs":{"44":{"tf":1.0},"61":{"tf":1.0},"73":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":6,"docs":{"39":{"tf":1.0},"67":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"81":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"41":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.4142135623730951}}}},"n":{"/":{"a":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"20":{"tf":1.0},"40":{"tf":1.0},"52":{"tf":1.0},"55":{"tf":2.8284271247461903},"57":{"tf":1.4142135623730951},"63":{"tf":3.4641016151377544},"66":{"tf":2.0},"73":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":7,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.0},"7":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"18":{"tf":1.4142135623730951},"23":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"54":{"tf":2.0},"55":{"tf":2.0},"61":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.4142135623730951},"72":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":3,"docs":{"24":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":4,"docs":{"20":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.4142135623730951},"70":{"tf":1.0}}}}}}},"w":{"(":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":13,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.7320508075688772},"16":{"tf":1.0},"3":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":3.872983346207417},"59":{"tf":1.0},"63":{"tf":4.47213595499958},"66":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"45":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"l":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"45":{"tf":2.449489742783178},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"37":{"tf":1.0}},"e":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"33":{"tf":1.0},"65":{"tf":2.0},"72":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"18":{"tf":2.6457513110645907},"19":{"tf":1.0},"22":{"tf":1.0},"39":{"tf":1.0},"73":{"tf":2.449489742783178},"74":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"c":{"df":2,"docs":{"44":{"tf":1.0},"7":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"8":{"tf":1.0}},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"w":{"df":2,"docs":{"41":{"tf":1.0},"73":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}},"df":0,"docs":{}}},"v":{"d":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"4":{"tf":1.0},"54":{"tf":2.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"21":{"tf":1.0},"82":{"tf":1.4142135623730951}},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"k":{"df":6,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}},"n":{"c":{"df":5,"docs":{"21":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"49":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":9,"docs":{"19":{"tf":1.0},"21":{"tf":1.0},"24":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.0},"83":{"tf":1.0}},"e":{"'":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"71":{"tf":1.0}}}}},"p":{"a":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":1,"docs":{"14":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"69":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":1.0}}}}}}}}}}}},"r":{"df":8,"docs":{"14":{"tf":1.7320508075688772},"51":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":1.7320508075688772},"55":{"tf":3.4641016151377544},"61":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}},"s":{"[":{"0":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.23606797749979},"71":{"tf":1.4142135623730951}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"28":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"11":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.0},"56":{"tf":1.7320508075688772},"61":{"tf":1.0},"63":{"tf":2.23606797749979},"8":{"tf":1.0}}}}},"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}},"v":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.0},"70":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"75":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"0":{"tf":1.0},"15":{"tf":1.0}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":43,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":3.4641016151377544},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":3.1622776601683795},"45":{"tf":2.23606797749979},"46":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":2.23606797749979},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":4.123105625617661},"54":{"tf":3.605551275463989},"55":{"tf":4.358898943540674},"56":{"tf":1.0},"57":{"tf":2.0},"58":{"tf":2.8284271247461903},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.7320508075688772},"66":{"tf":1.7320508075688772},"67":{"tf":3.3166247903554},"70":{"tf":1.0},"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"81":{"tf":1.0},"84":{"tf":2.23606797749979},"85":{"tf":1.0},"9":{"tf":1.0}},"e":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"81":{"tf":1.0},"82":{"tf":1.0}}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":6,"docs":{"17":{"tf":1.0},"40":{"tf":2.23606797749979},"41":{"tf":1.7320508075688772},"42":{"tf":2.0},"43":{"tf":1.0},"63":{"tf":5.0}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"63":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":4.47213595499958}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"57":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"4":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":2.449489742783178}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":3,"docs":{"37":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"54":{"tf":2.0},"72":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"14":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"7":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":4.242640687119285},"55":{"tf":1.0},"59":{"tf":1.0},"66":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"32":{"tf":1.7320508075688772}}}}}}},"i":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"g":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.0},"67":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":7,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"7":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"61":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"r":{"df":1,"docs":{"71":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"33":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"df":0,"docs":{},"t":{"df":5,"docs":{"16":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"49":{"tf":1.4142135623730951},"52":{"tf":1.0}}}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"v":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":3,"docs":{"44":{"tf":1.0},"55":{"tf":2.6457513110645907},"7":{"tf":1.0}},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"74":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"79":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":10,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.0},"6":{"tf":1.7320508075688772},"62":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":2.23606797749979}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"70":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":42,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.7320508075688772},"4":{"tf":2.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.0},"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772},"54":{"tf":6.082762530298219},"55":{"tf":3.7416573867739413},"57":{"tf":2.23606797749979},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"66":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"74":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.0},"71":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"11":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}}}}},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"69":{"tf":1.0},"72":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"54":{"tf":1.4142135623730951},"55":{"tf":4.123105625617661},"57":{"tf":2.23606797749979},"65":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}}},"r":{"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"n":{"df":1,"docs":{"16":{"tf":1.4142135623730951}},"g":{"df":3,"docs":{"14":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"d":{"df":1,"docs":{"63":{"tf":3.605551275463989}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}}}},"i":{"df":5,"docs":{"40":{"tf":1.0},"45":{"tf":1.0},"63":{"tf":2.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"44":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"55":{"tf":2.0},"61":{"tf":1.0},"7":{"tf":1.0}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":6,"docs":{"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"53":{"tf":1.0},"55":{"tf":3.1622776601683795},"57":{"tf":1.0},"59":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"0":{"tf":1.0}},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"7":{"tf":2.0}},"f":{"df":1,"docs":{"73":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"4":{"tf":1.0},"48":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"55":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":2.449489742783178},"66":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.0},"81":{"tf":1.0}}}},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":4,"docs":{"22":{"tf":1.4142135623730951},"48":{"tf":1.0},"59":{"tf":1.0},"62":{"tf":1.0}},"e":{">":{"/":{"<":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.4142135623730951},"59":{"tf":2.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"v":{"df":5,"docs":{"14":{"tf":1.0},"22":{"tf":1.0},"44":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"74":{"tf":1.7320508075688772},"75":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"o":{"df":5,"docs":{"20":{"tf":1.0},"4":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.0}},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":15,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"2":{"tf":1.4142135623730951},"22":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":2.6457513110645907},"55":{"tf":4.0},"57":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":2.0},"65":{"tf":1.0},"67":{"tf":2.449489742783178},"7":{"tf":1.0},"85":{"tf":1.0},"9":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":16,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":2.6457513110645907},"44":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"60":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.7320508075688772},"69":{"tf":1.0},"74":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"56":{"tf":1.0}},"t":{"df":1,"docs":{"54":{"tf":2.449489742783178}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"37":{"tf":1.0},"6":{"tf":1.0},"69":{"tf":1.4142135623730951},"7":{"tf":1.0},"71":{"tf":1.4142135623730951},"82":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"r":{"df":10,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.0},"54":{"tf":2.0},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"75":{"tf":1.0},"78":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":3,"docs":{"4":{"tf":1.0},"48":{"tf":1.0},"61":{"tf":2.6457513110645907}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":6,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0},"54":{"tf":2.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":10,"docs":{"14":{"tf":1.0},"17":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"63":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":8,"docs":{"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"59":{"tf":1.0},"7":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"17":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"59":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":19,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"54":{"tf":4.58257569495584},"55":{"tf":5.0990195135927845},"58":{"tf":1.0},"6":{"tf":1.0},"63":{"tf":4.47213595499958},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":2.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"71":{"tf":1.7320508075688772}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"29":{"tf":1.7320508075688772},"40":{"tf":1.0},"72":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":2.23606797749979}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"74":{"tf":1.0}}}}},"p":{"c":{"df":1,"docs":{"48":{"tf":1.0}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951}}}},"u":{"b":{"df":0,"docs":{},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"n":{"df":14,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"70":{"tf":2.0},"77":{"tf":1.0},"78":{"tf":2.449489742783178},"82":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":8,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"64":{"tf":1.0}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":6,"docs":{"14":{"tf":1.0},"54":{"tf":1.7320508075688772},"56":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"44":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":15,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"54":{"tf":4.242640687119285},"58":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0},"82":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"'":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}},"df":18,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"4":{"tf":2.0},"41":{"tf":2.8284271247461903},"42":{"tf":3.4641016151377544},"43":{"tf":2.6457513110645907},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"48":{"tf":2.6457513110645907},"50":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"52":{"tf":2.449489742783178},"54":{"tf":4.242640687119285},"58":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"62":{"tf":2.0},"66":{"tf":3.1622776601683795}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":5.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":2.0}}}}}}},"df":3,"docs":{"14":{"tf":1.0},"64":{"tf":2.0},"8":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"d":{"b":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"15":{"tf":1.0},"38":{"tf":1.0},"48":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":13,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.7320508075688772},"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"57":{"tf":1.0},"63":{"tf":3.1622776601683795},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"83":{"tf":1.0}},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"45":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"75":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"37":{"tf":1.0},"70":{"tf":1.0},"77":{"tf":1.0}}}}}},"t":{"df":22,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":1.7320508075688772},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":1.0},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":2.449489742783178},"64":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"54":{"tf":2.449489742783178}},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":3.1622776601683795}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"15":{"tf":1.0},"23":{"tf":2.0},"24":{"tf":1.4142135623730951},"25":{"tf":2.0},"26":{"tf":1.7320508075688772},"27":{"tf":1.7320508075688772},"28":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"31":{"tf":1.7320508075688772},"32":{"tf":1.7320508075688772},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0},"8":{"tf":1.0}}}}}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":1,"docs":{"85":{"tf":1.0}}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"47":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":1,"docs":{"71":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"45":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"i":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"59":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.0},"72":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}},"r":{"c":{"df":2,"docs":{"14":{"tf":1.0},"40":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"46":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"44":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"38":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"55":{"tf":2.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}},"r":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"56":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":7,"docs":{"1":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":1.0},"46":{"tf":1.0},"82":{"tf":2.0}}}},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":6,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.7320508075688772},"53":{"tf":2.0},"54":{"tf":3.4641016151377544},"6":{"tf":1.0},"7":{"tf":2.449489742783178}}},"i":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"6":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"79":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":5,"docs":{"17":{"tf":1.0},"40":{"tf":1.0},"45":{"tf":1.0},"61":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":2.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.7320508075688772},"4":{"tf":2.0},"48":{"tf":1.0},"54":{"tf":4.898979485566356},"55":{"tf":2.6457513110645907},"73":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"11":{"tf":2.0},"23":{"tf":2.0},"24":{"tf":1.7320508075688772},"52":{"tf":1.0},"53":{"tf":2.449489742783178},"55":{"tf":5.385164807134504},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"66":{"tf":1.7320508075688772},"7":{"tf":1.0}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":16,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"67":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}}},"u":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"71":{"tf":1.0},"72":{"tf":1.4142135623730951},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":2,"docs":{"13":{"tf":1.0},"7":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"53":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":4,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"7":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":3.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"70":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"78":{"tf":2.0}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"46":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"73":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772},"67":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":2,"docs":{"55":{"tf":1.0},"70":{"tf":1.7320508075688772}}},"k":{"df":0,"docs":{},"e":{"df":10,"docs":{"13":{"tf":1.0},"14":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.0},"79":{"tf":1.0}},"n":{"df":2,"docs":{"4":{"tf":1.0},"40":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"k":{"df":2,"docs":{"37":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"r":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"69":{"tf":1.0},"71":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}}}}},"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"57":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":2.0}}}},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":1,"docs":{"70":{"tf":1.0}}}}}}}}},"df":8,"docs":{"4":{"tf":1.0},"42":{"tf":1.0},"68":{"tf":1.0},"70":{"tf":3.1622776601683795},"77":{"tf":1.4142135623730951},"78":{"tf":2.449489742783178},"84":{"tf":2.449489742783178},"85":{"tf":1.7320508075688772}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":2,"docs":{"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"71":{"tf":1.0},"82":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"79":{"tf":1.0}}}}}}}}}}},"i":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},".":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}},"df":10,"docs":{"22":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"82":{"tf":1.0}},"r":{"df":1,"docs":{"82":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":1,"docs":{"68":{"tf":1.0}}}},"o":{"df":1,"docs":{"38":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":2.0},"57":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"73":{"tf":1.0}}}},"p":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"36":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":3,"docs":{"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"7":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}}}}},"df":1,"docs":{"4":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"54":{"tf":2.449489742783178}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"o":{"df":2,"docs":{"14":{"tf":1.7320508075688772},"55":{"tf":2.0}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":23,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":4.47213595499958},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"31":{"tf":1.7320508075688772},"40":{"tf":1.0},"7":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":2.0}}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"84":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":6,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":7,"docs":{"19":{"tf":1.0},"55":{"tf":2.0},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":2.23606797749979},"66":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"t":{"df":2,"docs":{"71":{"tf":1.0},"78":{"tf":2.0}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":7,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"12":{"tf":1.0},"6":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"31":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}}},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"d":{"a":{"df":0,"docs":{},"t":{"df":20,"docs":{"11":{"tf":3.605551275463989},"14":{"tf":3.605551275463989},"16":{"tf":1.7320508075688772},"17":{"tf":1.0},"36":{"tf":1.4142135623730951},"40":{"tf":2.8284271247461903},"41":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"48":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":9.16515138991168},"6":{"tf":1.0},"63":{"tf":5.0},"64":{"tf":2.6457513110645907},"66":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"9":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"55":{"tf":1.7320508075688772}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"26":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":5.291502622129181}}}}}},"r":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"36":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":2.0},"64":{"tf":3.4641016151377544}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":2.8284271247461903}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}}},"df":1,"docs":{"14":{"tf":1.4142135623730951}}},"df":7,"docs":{"39":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"44":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"l":{"df":4,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0},"83":{"tf":1.4142135623730951}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":7,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":1.0},"53":{"tf":1.4142135623730951},"77":{"tf":1.0},"9":{"tf":1.0}}}},"df":35,"docs":{"1":{"tf":1.0},"11":{"tf":2.8284271247461903},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.7320508075688772},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951},"77":{"tf":1.0},"79":{"tf":1.0},"8":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"14":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"52":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"55":{"tf":4.795831523312719}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"v":{"2":{"df":2,"docs":{"18":{"tf":1.0},"33":{"tf":1.0}}},"3":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"0":{"tf":1.0},"14":{"tf":1.0}}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":7,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"55":{"tf":3.4641016151377544},"66":{"tf":1.0},"79":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"8":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}}}},"df":6,"docs":{"14":{"tf":2.0},"54":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"78":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":2,"docs":{"41":{"tf":1.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}}}}}}},"df":9,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"48":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"58":{"tf":1.0},"65":{"tf":2.0},"66":{"tf":2.449489742783178},"7":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":5,"docs":{"51":{"tf":1.0},"54":{"tf":5.0},"58":{"tf":1.0},"60":{"tf":1.0},"66":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":2.23606797749979}}}}}}}}}}}},"i":{"a":{"df":7,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"33":{"tf":1.0},"56":{"tf":1.0},"6":{"tf":1.0},"76":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":3,"docs":{"14":{"tf":1.0},"44":{"tf":1.0},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":5,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"8":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"i":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}}}}}}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":23,"docs":{"0":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.7320508075688772},"2":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"25":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":2.23606797749979},"43":{"tf":1.0},"54":{"tf":1.4142135623730951},"55":{"tf":7.416198487095663},"57":{"tf":3.1622776601683795},"59":{"tf":1.0},"63":{"tf":2.23606797749979},"65":{"tf":1.0},"67":{"tf":3.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"57":{"tf":1.0}}}}}}}}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"43":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}},"y":{"df":3,"docs":{"42":{"tf":1.0},"44":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.0},"65":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"23":{"tf":1.0},"49":{"tf":1.0},"58":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"23":{"tf":1.0},"53":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"77":{"tf":1.0},"79":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"59":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"k":{"df":15,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"44":{"tf":1.0},"46":{"tf":1.0},"6":{"tf":1.4142135623730951},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"l":{"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}},"x":{"d":{"df":0,"docs":{},"g":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{".":{"b":{"df":0,"docs":{},"z":{"2":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"39":{"tf":1.0},"40":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"11":{"tf":1.0},"19":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":2,"docs":{"79":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"79":{"tf":1.0},"81":{"tf":1.0}}}}}}}},"breadcrumbs":{"root":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}},"1":{"0":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"19":{"tf":4.0},"67":{"tf":1.0}}},"2":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"0":{"1":{"8":{".":{"0":{"3":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}},"3":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"9":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{".":{"9":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"9":{".":{"0":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":3,"docs":{"14":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"43":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"53":{"tf":1.0},"62":{"tf":1.0},"70":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"38":{"tf":1.0},"55":{"tf":2.0}}}}}}}},"r":{"d":{"df":2,"docs":{"33":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"41":{"tf":1.0},"71":{"tf":1.0}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"(":{"df":0,"docs":{},"u":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"81":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"59":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"19":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"56":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}},"df":15,"docs":{"11":{"tf":1.0},"14":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":2.0},"40":{"tf":1.7320508075688772},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"45":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"81":{"tf":1.4142135623730951}},"v":{"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":1,"docs":{"21":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"39":{"tf":1.0},"57":{"tf":1.4142135623730951},"63":{"tf":3.0}}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"72":{"tf":1.0},"8":{"tf":1.7320508075688772}},"e":{"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"16":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.23606797749979},"63":{"tf":2.449489742783178}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":7,"docs":{"14":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"79":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}},"g":{"df":1,"docs":{"6":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"25":{"tf":2.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"4":{"tf":1.0},"46":{"tf":1.4142135623730951},"81":{"tf":1.0}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"39":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"56":{"tf":1.0}}}},"y":{"df":0,"docs":{},"z":{"df":1,"docs":{"61":{"tf":1.0}}}}}},"d":{"'":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"i":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"14":{"tf":2.0},"21":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"33":{"tf":1.0},"43":{"tf":1.0}}},"df":3,"docs":{"49":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"71":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":9,"docs":{"0":{"tf":1.0},"15":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":2.0},"22":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"v":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"81":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"55":{"tf":2.0},"56":{"tf":1.4142135623730951},"63":{"tf":2.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"40":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":2.23606797749979},"52":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"57":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"84":{"tf":1.0}}}},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":9,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.6457513110645907},"55":{"tf":2.0},"59":{"tf":1.0},"67":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"63":{"tf":2.0},"74":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"37":{"tf":1.0},"54":{"tf":1.4142135623730951},"65":{"tf":1.0},"82":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"26":{"tf":2.0}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"54":{"tf":2.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"21":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"7":{"tf":1.4142135623730951},"73":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"73":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":6,"docs":{"22":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.4142135623730951},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"73":{"tf":1.0},"78":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"21":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0}},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"0":{"tf":1.0},"75":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"0":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"78":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"78":{"tf":1.0}}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"46":{"tf":1.0},"73":{"tf":1.0}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":7,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"33":{"tf":1.0},"74":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"22":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"o":{"a":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"19":{"tf":1.0},"70":{"tf":1.0},"85":{"tf":2.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":12,"docs":{"21":{"tf":1.4142135623730951},"40":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":3.0},"55":{"tf":2.0},"59":{"tf":1.0},"61":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":3.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"4":{"tf":1.0}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"63":{"tf":3.1622776601683795},"66":{"tf":1.4142135623730951},"7":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":3,"docs":{"73":{"tf":2.6457513110645907},"74":{"tf":2.6457513110645907},"75":{"tf":1.7320508075688772}}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"i":{"c":{"d":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"71":{"tf":1.0}},"r":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":34,"docs":{"0":{"tf":2.23606797749979},"1":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"46":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"59":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0},"77":{"tf":1.7320508075688772},"78":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":1.0},"84":{"tf":1.0}},"e":{"'":{"df":6,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":5.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"49":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":6,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"54":{"tf":3.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":7,"docs":{"41":{"tf":1.0},"42":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":2.0},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"41":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.7320508075688772},"60":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":8,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"40":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"63":{"tf":3.4641016151377544},"8":{"tf":1.0}}}}}}}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":6,"docs":{"0":{"tf":1.0},"14":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"78":{"tf":1.0},"85":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"84":{"tf":1.0}}}},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":12,"docs":{"18":{"tf":1.7320508075688772},"2":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":3.3166247903554},"45":{"tf":3.3166247903554},"48":{"tf":1.0},"49":{"tf":3.605551275463989},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":6,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.0},"84":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"m":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"44":{"tf":1.0},"63":{"tf":2.449489742783178}}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"44":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":2.449489742783178},"72":{"tf":1.4142135623730951},"73":{"tf":1.7320508075688772},"75":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"66":{"tf":1.0}}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"44":{"tf":1.0},"54":{"tf":2.449489742783178},"65":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.4142135623730951},"81":{"tf":1.0}}},"s":{"df":1,"docs":{"76":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":2,"docs":{"13":{"tf":1.0},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.4142135623730951}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":23,"docs":{"15":{"tf":1.7320508075688772},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"37":{"tf":1.0}},"u":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"50":{"tf":2.6457513110645907},"62":{"tf":2.449489742783178}}}}}}}},"df":3,"docs":{"11":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"tf":2.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":17,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.449489742783178},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.7320508075688772},"48":{"tf":1.0},"50":{"tf":1.7320508075688772},"52":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":2.6457513110645907},"64":{"tf":1.0}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"22":{"tf":1.0},"40":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"55":{"tf":2.0},"79":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"0":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"12":{"tf":2.23606797749979},"3":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":2.0},"64":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":12,"docs":{"0":{"tf":1.4142135623730951},"18":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"58":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":21,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.7320508075688772},"63":{"tf":6.324555320336759},"67":{"tf":1.4142135623730951},"7":{"tf":1.7320508075688772},"73":{"tf":1.0},"9":{"tf":1.0}}}},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":9,"docs":{"45":{"tf":2.23606797749979},"49":{"tf":1.4142135623730951},"52":{"tf":2.23606797749979},"54":{"tf":5.744562646538029},"55":{"tf":5.477225575051661},"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":2.0},"79":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"12":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"81":{"tf":1.7320508075688772}},"u":{"df":1,"docs":{"53":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"69":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":18,"docs":{"68":{"tf":1.7320508075688772},"69":{"tf":1.0},"70":{"tf":1.0},"71":{"tf":1.4142135623730951},"72":{"tf":1.4142135623730951},"73":{"tf":1.0},"74":{"tf":1.0},"75":{"tf":1.0},"76":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0},"79":{"tf":1.0},"80":{"tf":1.0},"81":{"tf":1.0},"82":{"tf":1.0},"83":{"tf":1.4142135623730951},"84":{"tf":1.0},"85":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":2.0},"81":{"tf":1.0}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":2.0},"83":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"46":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"66":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"68":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":3.3166247903554},"73":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":9,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"39":{"tf":1.0}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"33":{"tf":1.0}},"v":{"2":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":29,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"23":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":2.0},"44":{"tf":2.449489742783178},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"63":{"tf":3.0},"65":{"tf":2.0},"70":{"tf":1.0},"77":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}},"e":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{},"s":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":15,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":2.0},"21":{"tf":1.4142135623730951},"27":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"43":{"tf":1.0},"54":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"63":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"17":{"tf":1.0},"55":{"tf":4.358898943540674}},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":3.4641016151377544}}}}},"b":{"[":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"v":{"[":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":2.0},"7":{"tf":1.0}}}},"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"27":{"tf":2.0},"40":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"64":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":2.23606797749979},"14":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"82":{"tf":1.0}}}},"i":{"df":0,"docs":{},"n":{"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.4641016151377544}},"e":{"d":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"42":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"14":{"tf":1.0},"55":{"tf":2.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"6":{"tf":1.0},"67":{"tf":1.4142135623730951},"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":6,"docs":{"40":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"8":{"tf":1.0}}}},"r":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":1,"docs":{"77":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"13":{"tf":1.0},"18":{"tf":1.4142135623730951},"21":{"tf":1.0},"49":{"tf":1.0},"63":{"tf":3.1622776601683795}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":8,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"68":{"tf":1.0},"76":{"tf":2.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":4,"docs":{"0":{"tf":1.0},"18":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"1":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}},".":{"a":{"d":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":3,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.0},"9":{"tf":1.0}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":2.23606797749979},"56":{"tf":1.0},"67":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"84":{"tf":1.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.4142135623730951}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":8,"docs":{"0":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":3.1622776601683795},"58":{"tf":1.4142135623730951},"60":{"tf":1.0},"67":{"tf":2.23606797749979}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"39":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"4":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.0},"54":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"2":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.8284271247461903},"4":{"tf":1.4142135623730951},"40":{"tf":1.7320508075688772},"41":{"tf":2.0},"42":{"tf":3.605551275463989},"43":{"tf":1.4142135623730951},"44":{"tf":2.6457513110645907},"45":{"tf":1.7320508075688772},"46":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.0},"51":{"tf":2.6457513110645907},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"6":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"o":{"c":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"56":{"tf":1.0},"76":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"s":{"/":{"*":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"1":{"tf":1.0},"39":{"tf":1.0},"72":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}}}}},"df":1,"docs":{"71":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"46":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":5,"docs":{"5":{"tf":1.0},"61":{"tf":1.0},"67":{"tf":1.0},"79":{"tf":1.0},"82":{"tf":2.0}}}},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"74":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":2,"docs":{"4":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"'":{"df":1,"docs":{"44":{"tf":1.0}}},"/":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"52":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"66":{"tf":1.0}},"r":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"82":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"37":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":13,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":1.4142135623730951},"53":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"4":{"tf":2.0},"45":{"tf":2.6457513110645907},"48":{"tf":1.0},"52":{"tf":3.1622776601683795}}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"71":{"tf":1.0},"74":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}}}}}},"m":{"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"63":{"tf":3.0},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"4":{"tf":1.0},"71":{"tf":1.0},"75":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}}},"d":{"df":5,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"82":{"tf":1.7320508075688772}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":4.123105625617661},"67":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"(":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":3.1622776601683795}},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"40":{"tf":1.4142135623730951},"53":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"75":{"tf":2.23606797749979}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"53":{"tf":2.0},"67":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"\"":{":":{"df":0,"docs":{},"{":{"\"":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"\"":{":":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"13":{"tf":2.0},"14":{"tf":2.449489742783178},"5":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"6":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":19,"docs":{"22":{"tf":1.0},"4":{"tf":1.4142135623730951},"45":{"tf":2.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"54":{"tf":6.557438524302},"55":{"tf":7.3484692283495345},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.123105625617661},"64":{"tf":2.23606797749979},"82":{"tf":2.23606797749979}}}}}},"t":{"c":{"df":2,"docs":{"19":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"21":{"tf":1.0},"45":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"54":{"tf":1.7320508075688772},"79":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"13":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.0},"57":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":2.0},"85":{"tf":1.0}},"e":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"55":{"tf":2.0}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"37":{"tf":1.0},"42":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"55":{"tf":2.0}}}},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":2.6457513110645907}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"59":{"tf":1.0},"70":{"tf":1.7320508075688772},"84":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"4":{"tf":1.0},"40":{"tf":1.0},"48":{"tf":1.0},"64":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"65":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"71":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"d":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":8,"docs":{"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":2.0},"63":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":5.656854249492381}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":7,"docs":{"23":{"tf":1.0},"40":{"tf":1.7320508075688772},"43":{"tf":1.0},"57":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"67":{"tf":1.0}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"40":{"tf":1.0},"82":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":9,"docs":{"4":{"tf":1.4142135623730951},"41":{"tf":2.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":2.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"56":{"tf":1.0}}}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"57":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":3,"docs":{"48":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"44":{"tf":1.4142135623730951},"49":{"tf":1.7320508075688772},"6":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"0":{"tf":1.0},"55":{"tf":1.4142135623730951}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"55":{"tf":3.872983346207417},"63":{"tf":5.0990195135927845}}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"[":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772}}}},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"0":{"tf":1.0},"40":{"tf":1.0}}}}},"t":{"df":1,"docs":{"44":{"tf":1.0}}},"x":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"74":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"71":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"(":{"\"":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"19":{"tf":1.0},"67":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":15,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"83":{"tf":1.0}}}}}},"r":{"c":{"df":1,"docs":{"63":{"tf":2.449489742783178}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"39":{"tf":1.0},"54":{"tf":1.7320508075688772}}}}}},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"72":{"tf":1.7320508075688772}}},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"75":{"tf":1.7320508075688772},"82":{"tf":1.0}}}},"df":1,"docs":{"71":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"23":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.7320508075688772},"51":{"tf":1.0},"54":{"tf":2.8284271247461903},"58":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":4,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":2.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"77":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"73":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":1,"docs":{"82":{"tf":2.8284271247461903}},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"53":{"tf":1.0},"55":{"tf":2.0},"73":{"tf":1.4142135623730951}}}},"n":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"45":{"tf":2.0},"52":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":4,"docs":{"45":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"58":{"tf":1.0},"64":{"tf":2.6457513110645907}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":11,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951},"50":{"tf":2.0},"54":{"tf":1.0},"55":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951},"8":{"tf":1.0},"81":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}}},"g":{"a":{"df":0,"docs":{},"r":{"b":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"11":{"tf":1.0},"55":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":4.47213595499958}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"39":{"tf":1.0},"66":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0}}}}},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":18,"docs":{"1":{"tf":1.7320508075688772},"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"3":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"47":{"tf":1.7320508075688772},"5":{"tf":1.0},"54":{"tf":2.8284271247461903},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.8284271247461903}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":2.449489742783178},"83":{"tf":1.0}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"67":{"tf":1.0}},"e":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.872983346207417}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":10,"docs":{"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":3.1622776601683795},"58":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"/":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":5,"docs":{"57":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"39":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"15":{"tf":1.0},"40":{"tf":1.0}},"n":{"df":9,"docs":{"4":{"tf":1.0},"45":{"tf":1.0},"49":{"tf":1.4142135623730951},"51":{"tf":1.0},"54":{"tf":2.23606797749979},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}},"o":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"b":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"81":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":8,"docs":{"0":{"tf":1.0},"2":{"tf":1.0},"52":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0},"72":{"tf":1.0},"84":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":1,"docs":{"6":{"tf":1.0}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"t":{"df":3,"docs":{"0":{"tf":2.449489742783178},"18":{"tf":3.0},"21":{"tf":2.8284271247461903}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"14":{"tf":1.0},"46":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"69":{"tf":1.0},"70":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}},"l":{"df":4,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"41":{"tf":1.0},"44":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":8,"docs":{"19":{"tf":1.0},"49":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":5.0990195135927845},"56":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":2.23606797749979}},"l":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"40":{"tf":1.0},"63":{"tf":1.4142135623730951},"71":{"tf":1.0},"79":{"tf":1.0}}}}},"df":1,"docs":{"74":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":3,"docs":{"17":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":6,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"68":{"tf":1.0},"73":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.7320508075688772},"84":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"83":{"tf":1.0}}},"df":2,"docs":{"4":{"tf":1.0},"47":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}}}}},"i":{"d":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":12,"docs":{"0":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"41":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"/":{".":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"}":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"t":{"df":0,"docs":{},"p":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"62":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},":":{"/":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"20":{"tf":1.4142135623730951},"22":{"tf":1.7320508075688772},"37":{"tf":1.7320508075688772},"59":{"tf":1.0},"62":{"tf":1.4142135623730951}},"s":{":":{"/":{"/":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"v":{"2":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{".":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"a":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"1":{".":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"n":{".":{"a":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"2":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"2":{"0":{"2":{"3":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"x":{"8":{"6":{"_":{"6":{"4":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"b":{".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"a":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"v":{"d":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"/":{"1":{".":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"d":{"b":{".":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{".":{"df":1,"docs":{"19":{"tf":1.0}}},"d":{"df":3,"docs":{"53":{"tf":2.8284271247461903},"55":{"tf":1.4142135623730951},"67":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}},"i":{"df":9,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"51":{"tf":1.0},"60":{"tf":1.4142135623730951},"63":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"m":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"g":{"df":7,"docs":{"18":{"tf":1.0},"2":{"tf":1.0},"49":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"56":{"tf":2.0},"6":{"tf":1.0},"9":{"tf":1.0}}}},"df":1,"docs":{"0":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":2.8284271247461903},"41":{"tf":2.23606797749979},"42":{"tf":3.1622776601683795},"43":{"tf":2.23606797749979},"44":{"tf":2.449489742783178},"45":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"49":{"tf":1.0},"50":{"tf":1.7320508075688772},"54":{"tf":2.0},"55":{"tf":2.0},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"62":{"tf":2.0},"63":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":2.0},"7":{"tf":1.0},"76":{"tf":1.0}}}}}}},"i":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":27,"docs":{"11":{"tf":1.0},"26":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":3.872983346207417},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":2,"docs":{"56":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"17":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":26,"docs":{"0":{"tf":1.4142135623730951},"13":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":2.449489742783178},"18":{"tf":2.449489742783178},"19":{"tf":2.0},"2":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":2.0},"40":{"tf":1.7320508075688772},"45":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":3.4641016151377544},"54":{"tf":5.477225575051661},"56":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":3.4641016151377544},"60":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":1.7320508075688772},"66":{"tf":1.0},"7":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"{":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"54":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}}}}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"18":{"tf":1.7320508075688772},"54":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"]":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}},"df":5,"docs":{"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"53":{"tf":2.6457513110645907},"57":{"tf":1.0},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":9,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"19":{"tf":1.0},"21":{"tf":1.4142135623730951},"45":{"tf":1.0},"49":{"tf":2.0},"53":{"tf":3.4641016151377544},"54":{"tf":4.47213595499958},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}},"i":{"c":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"82":{"tf":1.0}},"r":{"df":0,"docs":{},"m":{"df":26,"docs":{"14":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":2.449489742783178},"51":{"tf":1.0},"53":{"tf":1.4142135623730951},"57":{"tf":2.0},"59":{"tf":1.0},"63":{"tf":2.0},"65":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"74":{"tf":1.0},"82":{"tf":1.4142135623730951}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"12":{"tf":1.0},"55":{"tf":2.0},"82":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"2":{"tf":1.0},"45":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":2.6457513110645907}}}}},"i":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"58":{"tf":1.0}}},"n":{"c":{"df":2,"docs":{"4":{"tf":1.0},"45":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"38":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"6":{"4":{"df":1,"docs":{"55":{"tf":3.4641016151377544}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":7,"docs":{"47":{"tf":1.0},"54":{"tf":1.7320508075688772},"70":{"tf":2.23606797749979},"77":{"tf":1.0},"78":{"tf":2.0},"84":{"tf":1.0},"85":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"74":{"tf":1.0}}}}},"f":{"a":{"c":{"df":23,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":2.6457513110645907},"40":{"tf":2.0},"41":{"tf":1.0},"44":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":2.0},"51":{"tf":1.0},"54":{"tf":4.58257569495584},"55":{"tf":5.5677643628300215},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":2.23606797749979},"63":{"tf":6.928203230275509},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"m":{"d":{"/":{"df":0,"docs":{},"m":{"d":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"83":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"15":{"tf":1.0}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"70":{"tf":1.0}}}}}},"v":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"70":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":1,"docs":{"59":{"tf":1.0}}},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"73":{"tf":1.0}}}}}}},"o":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":4.69041575982343}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"72":{"tf":1.0},"83":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"u":{"df":4,"docs":{"20":{"tf":1.0},"37":{"tf":1.0},"39":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}}},"t":{"'":{"df":4,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"54":{"tf":1.7320508075688772},"65":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.4142135623730951}}}}}},"j":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}},"v":{"a":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{")":{".":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},":":{"\"":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":2.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":4,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"55":{"tf":2.8284271247461903},"9":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"y":{"'":{"d":{"df":1,"docs":{"53":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":2.0},"67":{"tf":2.6457513110645907},"81":{"tf":1.0},"82":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"4":{"tf":1.0},"55":{"tf":2.0},"58":{"tf":1.0},"66":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"23":{"tf":1.0}},"n":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"7":{"tf":1.4142135623730951}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"79":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"g":{"df":11,"docs":{"0":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.8284271247461903},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"44":{"tf":2.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"70":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":23,"docs":{"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"18":{"tf":1.4142135623730951},"19":{"tf":2.0},"2":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":3.0},"45":{"tf":1.0},"49":{"tf":3.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":5.477225575051661},"56":{"tf":2.6457513110645907},"57":{"tf":1.0},"58":{"tf":2.0},"6":{"tf":2.449489742783178},"60":{"tf":1.0},"61":{"tf":1.0},"7":{"tf":3.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"44":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"0":{"tf":1.0},"82":{"tf":1.7320508075688772}}}}}},"i":{"b":{".":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"'":{"df":1,"docs":{"17":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"3":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.4142135623730951},"2":{"tf":2.0},"3":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"5":{"tf":1.4142135623730951},"54":{"tf":2.23606797749979},"6":{"tf":2.0},"7":{"tf":2.6457513110645907},"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"0":{"tf":1.7320508075688772},"39":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"'":{"df":3,"docs":{"2":{"tf":1.0},"21":{"tf":1.0},"41":{"tf":1.0}}},".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"10":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":14,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"11":{"tf":2.23606797749979},"12":{"tf":1.4142135623730951},"13":{"tf":1.4142135623730951},"14":{"tf":1.4142135623730951},"16":{"tf":2.0},"21":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":1.4142135623730951},"65":{"tf":1.0},"9":{"tf":2.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"t":{"df":2,"docs":{"17":{"tf":1.0},"57":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"42":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}},"k":{"df":1,"docs":{"47":{"tf":1.0}}},"u":{"df":0,"docs":{},"x":{"df":3,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"85":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":11,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"37":{"tf":1.0},"4":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.8284271247461903},"67":{"tf":1.0},"75":{"tf":1.0},"83":{"tf":1.4142135623730951}}}}},"o":{"a":{"d":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"76":{"tf":2.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{":":{"5":{"4":{"3":{"4":{"df":1,"docs":{"77":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":2.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":6,"docs":{"68":{"tf":1.0},"73":{"tf":1.0},"79":{"tf":2.23606797749979},"80":{"tf":1.7320508075688772},"81":{"tf":1.0},"82":{"tf":3.0}},"i":{"c":{"df":3,"docs":{"0":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}},"w":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"t":{";":{"&":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{";":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{";":{"&":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{".":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"69":{"tf":1.0}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"71":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":9,"docs":{"18":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"53":{"tf":1.4142135623730951},"66":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":8,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"df":5,"docs":{"19":{"tf":2.6457513110645907},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"'":{"df":5,"docs":{"13":{"tf":1.0},"44":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951}}},"df":18,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":2.0},"49":{"tf":1.0},"53":{"tf":3.0},"54":{"tf":4.69041575982343},"56":{"tf":2.6457513110645907},"57":{"tf":1.0},"6":{"tf":2.449489742783178},"67":{"tf":2.449489742783178},"7":{"tf":2.0},"8":{"tf":2.23606797749979}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"14":{"tf":1.0}}}}}}},"p":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"[":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"]":{"*":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}},"[":{"]":{"*":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":1.4142135623730951},"59":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":18,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"23":{"tf":2.0},"24":{"tf":1.0},"25":{"tf":1.7320508075688772},"26":{"tf":1.7320508075688772},"27":{"tf":1.7320508075688772},"28":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"31":{"tf":1.7320508075688772},"32":{"tf":1.7320508075688772},"33":{"tf":1.7320508075688772},"34":{"tf":1.0},"35":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.449489742783178},"67":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.7320508075688772}}}}}},"df":1,"docs":{"54":{"tf":3.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":13,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"2":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"39":{"tf":1.0},"42":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":11,"docs":{"0":{"tf":1.0},"11":{"tf":2.449489742783178},"16":{"tf":1.4142135623730951},"21":{"tf":3.0},"22":{"tf":1.7320508075688772},"40":{"tf":1.0},"48":{"tf":1.0},"55":{"tf":1.7320508075688772},"57":{"tf":2.8284271247461903},"59":{"tf":1.7320508075688772},"65":{"tf":2.0}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":3.1622776601683795}}}}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":1,"docs":{"0":{"tf":1.0}}}}}},"y":{"b":{"df":2,"docs":{"54":{"tf":1.7320508075688772},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"41":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":2,"docs":{"73":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":10,"docs":{"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"43":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"g":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"21":{"tf":1.0},"61":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"71":{"tf":1.0},"75":{"tf":1.0},"82":{"tf":2.0}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"46":{"tf":1.0}}}}},"t":{"a":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"l":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{".":{"*":{".":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":18,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"40":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":4.358898943540674},"55":{"tf":3.4641016151377544},"57":{"tf":1.7320508075688772},"58":{"tf":1.0},"6":{"tf":1.7320508075688772},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.449489742783178},"66":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"d":{"df":3,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"75":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"s":{"c":{"df":2,"docs":{"68":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"19":{"tf":2.0},"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0}}},"r":{"df":4,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":3,"docs":{"44":{"tf":1.0},"61":{"tf":1.0},"73":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"71":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":6,"docs":{"39":{"tf":1.0},"67":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"81":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"41":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.4142135623730951}}}},"n":{"/":{"a":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"20":{"tf":1.0},"40":{"tf":1.0},"52":{"tf":1.0},"55":{"tf":2.8284271247461903},"57":{"tf":1.4142135623730951},"63":{"tf":3.4641016151377544},"66":{"tf":2.0},"73":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":7,"docs":{"0":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.0},"7":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"18":{"tf":1.4142135623730951},"23":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"54":{"tf":2.0},"55":{"tf":2.0},"61":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.4142135623730951},"72":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":3,"docs":{"24":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":4,"docs":{"20":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.4142135623730951},"70":{"tf":1.0}}}}}}},"w":{"(":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":13,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":1.7320508075688772},"16":{"tf":1.0},"3":{"tf":1.0},"40":{"tf":1.0},"55":{"tf":3.872983346207417},"59":{"tf":1.0},"63":{"tf":4.47213595499958},"66":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"45":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"l":{"df":10,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"45":{"tf":2.449489742783178},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"37":{"tf":1.0}},"e":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"23":{"tf":1.0},"24":{"tf":1.0},"33":{"tf":1.0},"65":{"tf":2.0},"72":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"18":{"tf":2.6457513110645907},"19":{"tf":1.0},"22":{"tf":1.0},"39":{"tf":1.0},"73":{"tf":2.6457513110645907},"74":{"tf":1.4142135623730951},"82":{"tf":1.0}}},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"c":{"df":2,"docs":{"44":{"tf":1.0},"7":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"8":{"tf":1.0}},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"w":{"df":2,"docs":{"41":{"tf":1.0},"73":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"4":{"tf":1.0},"55":{"tf":2.8284271247461903}}}}},"df":0,"docs":{}}},"v":{"d":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"4":{"tf":1.0},"54":{"tf":2.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"21":{"tf":1.0},"82":{"tf":1.4142135623730951}},"r":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"56":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"k":{"df":6,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"72":{"tf":1.0},"75":{"tf":1.0}}},"n":{"c":{"df":5,"docs":{"21":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"49":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":9,"docs":{"19":{"tf":1.0},"21":{"tf":1.0},"24":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":1.4142135623730951},"66":{"tf":1.0},"7":{"tf":1.0},"70":{"tf":1.0},"83":{"tf":1.0}},"e":{"'":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"71":{"tf":1.0}}}}},"p":{"a":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"7":{"tf":1.0}}}}},"df":1,"docs":{"14":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"39":{"tf":1.0},"46":{"tf":1.0},"69":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":1.0}}}}}}}}}}}},"r":{"df":8,"docs":{"14":{"tf":1.7320508075688772},"51":{"tf":1.0},"53":{"tf":2.0},"54":{"tf":1.7320508075688772},"55":{"tf":3.4641016151377544},"61":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}},"s":{"[":{"0":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"]":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"14":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":10,"docs":{"11":{"tf":1.7320508075688772},"4":{"tf":2.6457513110645907},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"50":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":2.23606797749979},"71":{"tf":1.4142135623730951}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"28":{"tf":2.0}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"11":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":2.0},"56":{"tf":1.7320508075688772},"61":{"tf":1.0},"63":{"tf":2.23606797749979},"8":{"tf":1.0}}}}},"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"85":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}},"v":{"df":1,"docs":{"33":{"tf":1.7320508075688772}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.0},"70":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"11":{"tf":1.0},"19":{"tf":1.0},"4":{"tf":1.0},"48":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"42":{"tf":1.0},"45":{"tf":1.0},"74":{"tf":1.0},"75":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"84":{"tf":1.0}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"0":{"tf":1.0},"15":{"tf":1.0}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":43,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"39":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":3.605551275463989},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"44":{"tf":3.1622776601683795},"45":{"tf":2.23606797749979},"46":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":2.23606797749979},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":4.123105625617661},"54":{"tf":3.605551275463989},"55":{"tf":4.358898943540674},"56":{"tf":1.0},"57":{"tf":2.0},"58":{"tf":3.1622776601683795},"59":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.7320508075688772},"66":{"tf":1.7320508075688772},"67":{"tf":3.3166247903554},"70":{"tf":1.0},"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"81":{"tf":1.0},"84":{"tf":2.23606797749979},"85":{"tf":1.0},"9":{"tf":1.0}},"e":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"81":{"tf":1.0},"82":{"tf":1.0}}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.7320508075688772},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":1,"docs":{"82":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":6,"docs":{"17":{"tf":1.0},"40":{"tf":2.23606797749979},"41":{"tf":1.7320508075688772},"42":{"tf":2.0},"43":{"tf":1.0},"63":{"tf":5.0}},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"63":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":1,"docs":{"63":{"tf":4.47213595499958}}}}},"t":{"df":1,"docs":{"0":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"57":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":5,"docs":{"4":{"tf":1.0},"50":{"tf":1.0},"54":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":2.449489742783178}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":3,"docs":{"37":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"54":{"tf":2.0},"72":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"14":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"58":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"7":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"14":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.0},"54":{"tf":4.242640687119285},"55":{"tf":1.0},"59":{"tf":1.0},"66":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"32":{"tf":2.0}}}}}}},"i":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"g":{"df":3,"docs":{"49":{"tf":1.0},"54":{"tf":1.0},"67":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"0":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":7,"docs":{"19":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"44":{"tf":1.0},"47":{"tf":1.0},"7":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":7,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.0},"6":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"70":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"61":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}},"r":{"df":1,"docs":{"71":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"33":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"df":0,"docs":{},"t":{"df":5,"docs":{"16":{"tf":1.0},"33":{"tf":1.0},"40":{"tf":1.0},"49":{"tf":1.4142135623730951},"52":{"tf":1.0}}}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"v":{"df":1,"docs":{"55":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":3,"docs":{"44":{"tf":1.0},"55":{"tf":2.6457513110645907},"7":{"tf":1.0}},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"74":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"79":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"75":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":10,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.0},"6":{"tf":1.7320508075688772},"62":{"tf":1.0},"70":{"tf":1.0},"82":{"tf":2.23606797749979}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"70":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":42,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.7320508075688772},"4":{"tf":2.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":1.7320508075688772},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.0},"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772},"54":{"tf":6.082762530298219},"55":{"tf":3.7416573867739413},"57":{"tf":2.23606797749979},"58":{"tf":1.0},"6":{"tf":1.0},"60":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"66":{"tf":1.0},"67":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"71":{"tf":1.7320508075688772},"74":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"69":{"tf":1.0},"71":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"0":{"tf":1.0},"11":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}}}}},"y":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"69":{"tf":1.0},"72":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"54":{"tf":1.4142135623730951},"55":{"tf":4.123105625617661},"57":{"tf":2.23606797749979},"65":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"54":{"tf":2.8284271247461903}}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"57":{"tf":1.0}}}}}}}}}},"r":{"a":{"[":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":1,"docs":{"21":{"tf":1.0}},"n":{"df":1,"docs":{"16":{"tf":1.4142135623730951}},"g":{"df":3,"docs":{"14":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"40":{"tf":1.0},"47":{"tf":1.0}}},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"d":{"df":1,"docs":{"63":{"tf":3.605551275463989}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}}}},"i":{"df":5,"docs":{"40":{"tf":1.0},"45":{"tf":1.0},"63":{"tf":2.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"44":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"55":{"tf":2.0},"61":{"tf":1.0},"7":{"tf":1.0}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"44":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":6,"docs":{"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"53":{"tf":1.0},"55":{"tf":3.1622776601683795},"57":{"tf":1.0},"59":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"55":{"tf":2.0}},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"0":{"tf":1.0}},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"7":{"tf":2.0}},"f":{"df":1,"docs":{"73":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":21,"docs":{"4":{"tf":1.0},"48":{"tf":2.0},"49":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":2.0},"55":{"tf":3.0},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"55":{"tf":2.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":2.449489742783178},"66":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"7":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}}}}}}},"df":1,"docs":{"72":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"52":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":5,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"57":{"tf":1.0},"81":{"tf":1.0}}}},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":4,"docs":{"22":{"tf":1.4142135623730951},"48":{"tf":1.0},"59":{"tf":1.4142135623730951},"62":{"tf":1.0}},"e":{">":{"/":{"<":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"v":{"df":5,"docs":{"14":{"tf":1.0},"22":{"tf":1.0},"44":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"55":{"tf":2.0}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"74":{"tf":1.7320508075688772},"75":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.4142135623730951}}}}}},"o":{"df":5,"docs":{"20":{"tf":1.0},"4":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.0}},"r":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":15,"docs":{"0":{"tf":1.0},"13":{"tf":1.4142135623730951},"2":{"tf":1.4142135623730951},"22":{"tf":1.0},"51":{"tf":1.0},"53":{"tf":3.0},"55":{"tf":4.0},"57":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":2.0},"65":{"tf":1.0},"67":{"tf":2.8284271247461903},"7":{"tf":1.0},"85":{"tf":1.0},"9":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":16,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":2.8284271247461903},"44":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":3.1622776601683795},"54":{"tf":1.7320508075688772},"60":{"tf":2.23606797749979},"66":{"tf":1.0},"67":{"tf":1.7320508075688772},"69":{"tf":1.0},"74":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"54":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":3,"docs":{"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"56":{"tf":1.0}},"t":{"df":1,"docs":{"54":{"tf":2.449489742783178}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"37":{"tf":1.0},"6":{"tf":1.0},"69":{"tf":1.4142135623730951},"7":{"tf":1.0},"71":{"tf":1.7320508075688772},"82":{"tf":1.7320508075688772}}}}},"i":{"df":0,"docs":{},"r":{"df":10,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"40":{"tf":1.0},"54":{"tf":2.0},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"75":{"tf":1.0},"78":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":3,"docs":{"4":{"tf":1.0},"48":{"tf":1.0},"61":{"tf":3.0}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":6,"docs":{"20":{"tf":1.4142135623730951},"22":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"54":{"tf":2.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":10,"docs":{"14":{"tf":1.0},"17":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"63":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"77":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"7":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":8,"docs":{"18":{"tf":1.0},"19":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"59":{"tf":1.0},"7":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"17":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":1.4142135623730951},"56":{"tf":1.0},"59":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":19,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.0},"21":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"54":{"tf":4.58257569495584},"55":{"tf":5.0990195135927845},"58":{"tf":1.0},"6":{"tf":1.0},"63":{"tf":4.47213595499958},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":2.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"71":{"tf":1.7320508075688772}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"29":{"tf":2.0},"40":{"tf":1.0},"72":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":2.23606797749979}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"74":{"tf":1.0}}}}},"p":{"c":{"df":2,"docs":{"48":{"tf":1.0},"62":{"tf":1.0}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":2.6457513110645907}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951}}}},"u":{"b":{"df":0,"docs":{},"i":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"n":{"df":14,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"40":{"tf":1.0},"44":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"70":{"tf":2.0},"77":{"tf":1.0},"78":{"tf":2.449489742783178},"82":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":8,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"64":{"tf":1.0}}}}}}},"v":{"[":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":6,"docs":{"14":{"tf":1.0},"54":{"tf":1.7320508075688772},"56":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"44":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"33":{"tf":1.0}}}},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"51":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":15,"docs":{"13":{"tf":1.7320508075688772},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"21":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"44":{"tf":1.0},"45":{"tf":1.0},"52":{"tf":1.4142135623730951},"54":{"tf":4.242640687119285},"58":{"tf":1.7320508075688772},"62":{"tf":1.0},"66":{"tf":1.0},"82":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"18":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"'":{"df":3,"docs":{"50":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}}},"df":19,"docs":{"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"4":{"tf":2.0},"41":{"tf":3.0},"42":{"tf":3.605551275463989},"43":{"tf":2.8284271247461903},"44":{"tf":1.0},"45":{"tf":3.1622776601683795},"48":{"tf":2.6457513110645907},"50":{"tf":2.0},"51":{"tf":2.0},"52":{"tf":2.449489742783178},"54":{"tf":4.242640687119285},"58":{"tf":2.0},"59":{"tf":1.0},"60":{"tf":2.0},"61":{"tf":1.4142135623730951},"62":{"tf":2.23606797749979},"66":{"tf":3.4641016151377544}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"65":{"tf":1.4142135623730951},"73":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":5.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"72":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":2.23606797749979}}}}}}},"df":3,"docs":{"14":{"tf":1.0},"64":{"tf":2.0},"8":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"42":{"tf":1.0},"43":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"d":{"b":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"15":{"tf":1.0},"38":{"tf":1.0},"48":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":13,"docs":{"0":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.7320508075688772},"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"57":{"tf":1.0},"63":{"tf":3.1622776601683795},"9":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":7,"docs":{"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"7":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"83":{"tf":1.0}},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"45":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"4":{"tf":1.0},"44":{"tf":1.0},"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"75":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"37":{"tf":1.0},"70":{"tf":1.0},"77":{"tf":1.0}}}}}},"t":{"df":22,"docs":{"0":{"tf":1.4142135623730951},"11":{"tf":1.7320508075688772},"12":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":1.0},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":2.449489742783178},"64":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"54":{"tf":2.449489742783178}},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}}}}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"54":{"tf":1.7320508075688772}},"n":{"df":0,"docs":{},"e":{"d":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"54":{"tf":3.1622776601683795}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"15":{"tf":1.0},"23":{"tf":2.449489742783178},"24":{"tf":2.0},"25":{"tf":2.23606797749979},"26":{"tf":2.0},"27":{"tf":2.0},"28":{"tf":2.0},"29":{"tf":2.0},"30":{"tf":2.0},"31":{"tf":2.0},"32":{"tf":2.0},"33":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"35":{"tf":1.4142135623730951},"40":{"tf":1.0},"44":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.0},"8":{"tf":1.0}}}}}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"6":{"tf":1.0}}}}},"df":1,"docs":{"85":{"tf":1.0}}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"47":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}}},"df":1,"docs":{"71":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"45":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}},"i":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"59":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":10,"docs":{"11":{"tf":2.0},"14":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"13":{"tf":1.0},"6":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"82":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.0},"72":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"14":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}},"r":{"c":{"df":2,"docs":{"14":{"tf":1.0},"40":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"46":{"tf":1.0}},"i":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"44":{"tf":1.0},"70":{"tf":1.0},"73":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"38":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0},"82":{"tf":1.0}},"i":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"55":{"tf":2.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}},"r":{"df":1,"docs":{"54":{"tf":1.7320508075688772}}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"56":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":19,"docs":{"1":{"tf":1.7320508075688772},"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"21":{"tf":1.0},"3":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"40":{"tf":1.0},"46":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":2.0},"9":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":6,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":2.0},"53":{"tf":2.0},"54":{"tf":3.4641016151377544},"6":{"tf":1.0},"7":{"tf":2.6457513110645907}}},"i":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"6":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"79":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":5,"docs":{"17":{"tf":1.0},"40":{"tf":1.0},"45":{"tf":1.0},"61":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":2.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.7320508075688772},"4":{"tf":2.0},"48":{"tf":1.0},"54":{"tf":5.0990195135927845},"55":{"tf":3.0},"73":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"11":{"tf":2.0},"23":{"tf":2.0},"24":{"tf":2.0},"52":{"tf":1.0},"53":{"tf":2.449489742783178},"55":{"tf":5.385164807134504},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"66":{"tf":1.7320508075688772},"7":{"tf":1.0}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":16,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"16":{"tf":1.4142135623730951},"21":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"56":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":3.0},"64":{"tf":1.0},"67":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"11":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"67":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.7320508075688772}}}}}},"u":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":2,"docs":{"0":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"71":{"tf":1.0},"72":{"tf":1.4142135623730951},"75":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"0":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":2,"docs":{"13":{"tf":1.0},"7":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"11":{"tf":1.0},"14":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"53":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":4,"docs":{"16":{"tf":1.0},"53":{"tf":1.4142135623730951},"7":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"53":{"tf":1.4142135623730951},"54":{"tf":3.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"6":{"tf":1.0},"70":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"78":{"tf":2.0}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"72":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":13,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":2.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"30":{"tf":2.0}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"73":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"74":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":7,"docs":{"11":{"tf":1.0},"14":{"tf":1.0},"4":{"tf":1.0},"44":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"23":{"tf":1.0},"54":{"tf":1.7320508075688772},"67":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":2,"docs":{"55":{"tf":1.0},"70":{"tf":1.7320508075688772}}},"k":{"df":0,"docs":{},"e":{"df":10,"docs":{"13":{"tf":1.0},"14":{"tf":1.0},"41":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"49":{"tf":1.4142135623730951},"55":{"tf":2.0},"63":{"tf":2.0},"79":{"tf":1.0}},"n":{"df":2,"docs":{"4":{"tf":1.0},"40":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"k":{"df":2,"docs":{"37":{"tf":1.0},"62":{"tf":1.4142135623730951}}}},"r":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"41":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"69":{"tf":1.0},"71":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}}}}},"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"57":{"tf":1.0}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"39":{"tf":1.0},"55":{"tf":2.0}}}},"s":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":1,"docs":{"70":{"tf":1.0}}}}}}}}},"df":8,"docs":{"4":{"tf":1.0},"42":{"tf":1.0},"68":{"tf":1.0},"70":{"tf":3.3166247903554},"77":{"tf":1.4142135623730951},"78":{"tf":2.6457513110645907},"84":{"tf":2.8284271247461903},"85":{"tf":2.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":2,"docs":{"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"44":{"tf":1.0},"45":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":4,"docs":{"50":{"tf":1.4142135623730951},"53":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"71":{"tf":1.0},"82":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"6":{"tf":1.0},"79":{"tf":1.0}}}}}}}}}}},"i":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"55":{"tf":2.0}}}},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"df":0,"docs":{}},".":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}}},"df":10,"docs":{"22":{"tf":1.0},"40":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"55":{"tf":2.8284271247461903},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"82":{"tf":1.0}},"r":{"df":1,"docs":{"82":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":1,"docs":{"68":{"tf":1.0}}}},"o":{"df":10,"docs":{"38":{"tf":1.7320508075688772},"39":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":2.0},"57":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"73":{"tf":1.0}}}},"p":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"36":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},".":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"/":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":3,"docs":{"27":{"tf":1.0},"39":{"tf":1.7320508075688772},"46":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"75":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"7":{"tf":1.4142135623730951},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"44":{"tf":1.0}}}}}}},"df":1,"docs":{"4":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"54":{"tf":2.449489742783178}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"75":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"o":{"df":2,"docs":{"14":{"tf":1.7320508075688772},"55":{"tf":2.0}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":23,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":2.0},"4":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":3.1622776601683795},"55":{"tf":4.47213595499958},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.7320508075688772},"63":{"tf":4.58257569495584},"64":{"tf":1.7320508075688772},"65":{"tf":1.0},"66":{"tf":2.23606797749979},"67":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"14":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"42":{"tf":1.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":5,"docs":{"0":{"tf":1.0},"11":{"tf":1.4142135623730951},"31":{"tf":2.0},"40":{"tf":1.0},"7":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"44":{"tf":1.0},"82":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"63":{"tf":2.23606797749979}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"63":{"tf":2.0}}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"73":{"tf":1.0}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"84":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":6,"docs":{"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"57":{"tf":1.0},"66":{"tf":1.0},"73":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"18":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":7,"docs":{"19":{"tf":1.0},"55":{"tf":2.0},"57":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":2.23606797749979},"66":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"t":{"df":2,"docs":{"71":{"tf":1.0},"78":{"tf":2.0}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":7,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":1,"docs":{"44":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"50":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"21":{"tf":1.0},"53":{"tf":1.4142135623730951},"67":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"12":{"tf":1.0},"6":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"31":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"4":{"tf":1.0},"82":{"tf":1.0}}}}},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"44":{"tf":1.0}}}}},"d":{"a":{"df":0,"docs":{},"t":{"df":21,"docs":{"11":{"tf":3.605551275463989},"14":{"tf":3.7416573867739413},"16":{"tf":1.7320508075688772},"17":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.0},"40":{"tf":3.0},"41":{"tf":1.0},"42":{"tf":1.7320508075688772},"43":{"tf":1.0},"48":{"tf":1.0},"54":{"tf":1.7320508075688772},"55":{"tf":9.16515138991168},"6":{"tf":1.0},"63":{"tf":5.196152422706632},"64":{"tf":2.8284271247461903},"66":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.0},"9":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"14":{"tf":1.0},"55":{"tf":2.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"55":{"tf":1.7320508075688772}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"26":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":5.291502622129181}}}}}},"r":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"36":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":2.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.7320508075688772},"55":{"tf":2.0},"64":{"tf":3.4641016151377544}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":3.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"55":{"tf":2.8284271247461903}}}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"55":{"tf":2.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":2.0}}}}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}}}}},"df":1,"docs":{"14":{"tf":1.4142135623730951}}},"df":7,"docs":{"39":{"tf":1.0},"41":{"tf":1.0},"53":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"77":{"tf":1.0},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"44":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"l":{"df":4,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0},"83":{"tf":1.4142135623730951}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":16,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":1.7320508075688772},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"2":{"tf":1.7320508075688772},"3":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":1.0},"53":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0},"77":{"tf":1.4142135623730951},"8":{"tf":1.0},"9":{"tf":1.7320508075688772}}}},"df":35,"docs":{"1":{"tf":1.0},"11":{"tf":2.8284271247461903},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.4142135623730951},"4":{"tf":2.449489742783178},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.4142135623730951},"45":{"tf":1.0},"52":{"tf":1.7320508075688772},"54":{"tf":1.7320508075688772},"57":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"71":{"tf":1.0},"74":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951},"77":{"tf":1.0},"79":{"tf":1.0},"8":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"14":{"tf":1.0},"73":{"tf":1.0},"74":{"tf":1.0},"82":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"52":{"tf":1.0},"72":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"55":{"tf":4.795831523312719}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"v":{"2":{"df":2,"docs":{"18":{"tf":1.0},"33":{"tf":1.0}}},"3":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"0":{"tf":1.0},"14":{"tf":1.0}}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"12":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":7,"docs":{"11":{"tf":1.0},"23":{"tf":1.0},"55":{"tf":3.4641016151377544},"66":{"tf":1.0},"79":{"tf":1.0},"81":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"k":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"44":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"8":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"83":{"tf":1.0},"84":{"tf":1.0}}}}}}},"df":6,"docs":{"14":{"tf":2.0},"54":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"8":{"tf":1.0},"82":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"78":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":2,"docs":{"41":{"tf":1.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}}}}}}},"df":9,"docs":{"14":{"tf":1.0},"21":{"tf":1.0},"48":{"tf":1.4142135623730951},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"58":{"tf":1.0},"65":{"tf":2.23606797749979},"66":{"tf":2.8284271247461903},"7":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":5,"docs":{"51":{"tf":1.0},"54":{"tf":5.0},"58":{"tf":1.0},"60":{"tf":1.0},"66":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":2.449489742783178}}}}}}}}}}}},"i":{"a":{"df":7,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"33":{"tf":1.0},"56":{"tf":1.0},"6":{"tf":1.0},"76":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":3,"docs":{"14":{"tf":1.0},"44":{"tf":1.0},"6":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"[":{"df":0,"docs":{},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":2,"docs":{"0":{"tf":1.0},"13":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":5,"docs":{"14":{"tf":1.4142135623730951},"55":{"tf":2.8284271247461903},"57":{"tf":1.0},"67":{"tf":1.7320508075688772},"8":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"r":{"a":{"b":{"df":1,"docs":{"21":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}},"i":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}}}}}}}}}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"57":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":23,"docs":{"0":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":2.23606797749979},"2":{"tf":1.0},"21":{"tf":2.0},"23":{"tf":1.0},"25":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":2.23606797749979},"43":{"tf":1.0},"54":{"tf":1.4142135623730951},"55":{"tf":7.416198487095663},"57":{"tf":3.1622776601683795},"59":{"tf":1.0},"63":{"tf":2.23606797749979},"65":{"tf":1.0},"67":{"tf":3.3166247903554},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"i":{"d":{"df":1,"docs":{"67":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"55":{"tf":2.8284271247461903},"57":{"tf":1.0}}}}}}}}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"43":{"tf":1.0},"45":{"tf":1.0},"66":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}},"y":{"df":3,"docs":{"42":{"tf":1.0},"44":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"70":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"4":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":2.449489742783178},"55":{"tf":2.0},"57":{"tf":1.0},"65":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"44":{"tf":1.0}}}}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"23":{"tf":1.0},"49":{"tf":1.0},"58":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"23":{"tf":1.0},"53":{"tf":1.4142135623730951},"73":{"tf":1.0},"75":{"tf":1.0},"77":{"tf":1.0},"79":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"59":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"k":{"df":15,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"44":{"tf":1.0},"46":{"tf":1.0},"6":{"tf":1.4142135623730951},"66":{"tf":1.0},"71":{"tf":1.0},"73":{"tf":1.4142135623730951},"77":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"69":{"tf":1.0}}}}}}},"l":{"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"41":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":1.7320508075688772}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}},"x":{"d":{"df":0,"docs":{},"g":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{".":{"b":{"df":0,"docs":{},"z":{"2":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"39":{"tf":1.0},"40":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"11":{"tf":1.0},"19":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":2,"docs":{"79":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"81":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"f":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"79":{"tf":1.0},"81":{"tf":1.0}}}}}}}},"title":{"root":{"a":{"d":{"df":3,"docs":{"39":{"tf":1.0},"45":{"tf":1.0},"81":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"26":{"tf":1.0}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"73":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"0":{"tf":1.0},"24":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"df":2,"docs":{"44":{"tf":1.0},"49":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"50":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"68":{"tf":1.0},"83":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"2":{"df":1,"docs":{"35":{"tf":1.0}}},"3":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"76":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"39":{"tf":1.0},"42":{"tf":1.0},"51":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"45":{"tf":1.0},"52":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"75":{"tf":1.0}}}},"df":0,"docs":{}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"1":{"tf":1.0},"47":{"tf":1.0}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"73":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":1,"docs":{"47":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"74":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":3,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":7,"docs":{"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0}}}}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":4,"docs":{"17":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.0}}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"2":{"tf":1.0}}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"76":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":3,"docs":{"79":{"tf":1.0},"80":{"tf":1.0},"82":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}},"p":{"df":10,"docs":{"23":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"16":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"21":{"tf":1.0},"55":{"tf":1.0},"57":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"73":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"4":{"tf":1.0}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"33":{"tf":1.0}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"41":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"32":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"48":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"59":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"53":{"tf":1.0},"67":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"43":{"tf":1.0},"60":{"tf":1.0}}}}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"61":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":3,"docs":{"20":{"tf":1.0},"22":{"tf":1.0},"37":{"tf":1.0}}},"df":0,"docs":{}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"29":{"tf":1.0}}}}},"p":{"c":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"c":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"13":{"tf":1.0}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"51":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0},"66":{"tf":1.0}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"74":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"23":{"tf":1.0},"24":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"18":{"tf":1.0},"7":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"54":{"tf":1.0},"55":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"70":{"tf":1.0},"78":{"tf":1.0},"84":{"tf":1.0}}}}},"o":{"df":1,"docs":{"38":{"tf":1.0}}}},"u":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"31":{"tf":1.0}}}}}}},"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":4,"docs":{"14":{"tf":1.0},"36":{"tf":1.0},"40":{"tf":1.0},"63":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"a":{"df":0,"docs":{},"g":{"df":5,"docs":{"10":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":1.0},"77":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"67":{"tf":1.0}}}}}}}}}}},"lang":"English","pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5"},"results_options":{"limit_results":30,"teaser_word_count":30},"search_options":{"bool":"OR","expand":true,"fields":{"body":{"boost":1},"breadcrumbs":{"boost":1},"title":{"boost":2}}}} \ No newline at end of file diff --git a/v1.5.24/styleguide_test.go b/v1.5.24/styleguide_test.go new file mode 100644 index 000000000..0c1cacbb5 --- /dev/null +++ b/v1.5.24/styleguide_test.go @@ -0,0 +1,90 @@ +package docs + +import ( + "context" + "errors" + "io/fs" + "os" + "path/filepath" + "regexp" + "testing" + + "golang.org/x/sync/errgroup" +) + +func TestStyleguide(t *testing.T) { + eg, ctx := errgroup.WithContext(context.Background()) + names := make(chan string) + findMarkdown := func(p string, dirent fs.DirEntry, err error) error { + switch { + case !errors.Is(err, nil): + return err + case dirent.IsDir(): + return nil + case filepath.Ext(p) != ".md": + return nil + } + select { + case <-ctx.Done(): + return fs.SkipAll + case names <- p: + } + return nil + } + runlint := func() error { + rules := []struct { + Name string + Regexp *regexp.Regexp + Explanation string + }{ + { + Name: "NoIntercap", + Regexp: regexp.MustCompile(`[Cc]lairCore`), + Explanation: `should not be inter-capped`, + }, + { + Name: "NoIntercap", + Regexp: regexp.MustCompile(`[Ll]ibVuln`), + Explanation: `should not be inter-capped`, + }, + { + Name: "NoIntercap", + Regexp: regexp.MustCompile(`[Ll]ibIndex`), + Explanation: `should not be inter-capped`, + }, + { + Name: "RespectPostgreSQL", + Regexp: regexp.MustCompile(`[Pp]ostgres([Qq][Ll])?`), + Explanation: `it's spelled "PostgreSQL"`, + }, + { + Name: "RespectClair", + Regexp: regexp.MustCompile(`[Cc]lair[Vv]4`), + Explanation: `it's spelled "Clair v4"`, + }, + } + for fn := range names { + b, err := os.ReadFile(fn) + if err != nil { + return err + } + + for _, rule := range rules { + for _, idx := range rule.Regexp.FindAllIndex(b, -1) { + t.Errorf("%s:%d: %q\t[%s: %s]", fn, idx[0], string(b[idx[0]:idx[1]]), rule.Name, rule.Explanation) + } + } + + } + return nil + } + eg.Go(func() error { + defer close(names) + return fs.WalkDir(os.DirFS("."), ".", findMarkdown) + }) + eg.Go(runlint) + + if err := eg.Wait(); err != nil { + t.Error(err) + } +} diff --git a/v1.5.24/tomorrow-night.css b/v1.5.24/tomorrow-night.css new file mode 100644 index 000000000..81fe276e7 --- /dev/null +++ b/v1.5.24/tomorrow-night.css @@ -0,0 +1,102 @@ +/* Tomorrow Night Theme */ +/* https://github.com/jmblog/color-themes-for-highlightjs */ +/* Original theme - https://github.com/chriskempson/tomorrow-theme */ +/* https://github.com/jmblog/color-themes-for-highlightjs */ + +/* Tomorrow Comment */ +.hljs-comment { + color: #969896; +} + +/* Tomorrow Red */ +.hljs-variable, +.hljs-attribute, +.hljs-tag, +.hljs-regexp, +.ruby .hljs-constant, +.xml .hljs-tag .hljs-title, +.xml .hljs-pi, +.xml .hljs-doctype, +.html .hljs-doctype, +.css .hljs-id, +.css .hljs-class, +.css .hljs-pseudo { + color: #cc6666; +} + +/* Tomorrow Orange */ +.hljs-number, +.hljs-preprocessor, +.hljs-pragma, +.hljs-built_in, +.hljs-literal, +.hljs-params, +.hljs-constant { + color: #de935f; +} + +/* Tomorrow Yellow */ +.ruby .hljs-class .hljs-title, +.css .hljs-rule .hljs-attribute { + color: #f0c674; +} + +/* Tomorrow Green */ +.hljs-string, +.hljs-value, +.hljs-inheritance, +.hljs-header, +.hljs-name, +.ruby .hljs-symbol, +.xml .hljs-cdata { + color: #b5bd68; +} + +/* Tomorrow Aqua */ +.hljs-title, +.css .hljs-hexcolor { + color: #8abeb7; +} + +/* Tomorrow Blue */ +.hljs-function, +.python .hljs-decorator, +.python .hljs-title, +.ruby .hljs-function .hljs-title, +.ruby .hljs-title .hljs-keyword, +.perl .hljs-sub, +.javascript .hljs-title, +.coffeescript .hljs-title { + color: #81a2be; +} + +/* Tomorrow Purple */ +.hljs-keyword, +.javascript .hljs-function { + color: #b294bb; +} + +.hljs { + display: block; + overflow-x: auto; + background: #1d1f21; + color: #c5c8c6; +} + +.coffeescript .javascript, +.javascript .xml, +.tex .hljs-formula, +.xml .javascript, +.xml .vbscript, +.xml .css, +.xml .hljs-cdata { + opacity: 0.5; +} + +.hljs-addition { + color: #718c00; +} + +.hljs-deletion { + color: #c82829; +} diff --git a/v1.5.24/vulnerabilityreport_test.go b/v1.5.24/vulnerabilityreport_test.go new file mode 100644 index 000000000..1b291af83 --- /dev/null +++ b/v1.5.24/vulnerabilityreport_test.go @@ -0,0 +1,23 @@ +package docs + +import ( + "fmt" + + "github.com/quay/claircore" +) + +func Example_vulnerabilityreport() { + var report claircore.VulnerabilityReport + + // ANCHOR: example + for pkgID, vulnIDS := range report.PackageVulnerabilities { + // get package data structure + pkg := report.Packages[pkgID] + + for _, vulnID := range vulnIDS { + vuln := report.Vulnerabilities[vulnID] + fmt.Printf("package %+v affected by vuln %+v", pkg, vuln) + } + } + // ANCHOR_END: example +}