@internetarchive/bookreader 5.0.0-3 → 5.0.0-30-a

Sign up to get free protection for your applications and to get access to all the features.
Files changed (389) hide show
  1. package/.eslintrc.js +17 -5
  2. package/.github/dependabot.yml +8 -0
  3. package/.github/workflows/node.js.yml +10 -1
  4. package/.husky/_/husky.sh +30 -0
  5. package/.testcaferc.js +10 -0
  6. package/BookReader/BookReader.css +75 -323
  7. package/BookReader/BookReader.js +1 -1
  8. package/BookReader/BookReader.js.LICENSE.txt +45 -0
  9. package/BookReader/BookReader.js.map +1 -1
  10. package/BookReader/ia-bookreader-bundle.js +1458 -0
  11. package/BookReader/{bookreader-component-bundle.js.LICENSE.txt → ia-bookreader-bundle.js.LICENSE.txt} +10 -9
  12. package/BookReader/ia-bookreader-bundle.js.map +1 -0
  13. package/BookReader/icons/close-circle-dark.svg +1 -0
  14. package/BookReader/icons/voice.svg +1 -0
  15. package/BookReader/plugins/plugin.archive_analytics.js +1 -1
  16. package/BookReader/plugins/plugin.archive_analytics.js.map +1 -1
  17. package/BookReader/plugins/plugin.autoplay.js +1 -1
  18. package/BookReader/plugins/plugin.autoplay.js.map +1 -1
  19. package/BookReader/plugins/plugin.chapters.js +1 -1
  20. package/BookReader/plugins/plugin.chapters.js.map +1 -1
  21. package/BookReader/plugins/plugin.iframe.js +1 -1
  22. package/BookReader/plugins/plugin.iframe.js.map +1 -1
  23. package/BookReader/plugins/plugin.mobile_nav.js +1 -1
  24. package/BookReader/plugins/plugin.mobile_nav.js.map +1 -1
  25. package/BookReader/plugins/plugin.resume.js +1 -1
  26. package/BookReader/plugins/plugin.resume.js.map +1 -1
  27. package/BookReader/plugins/plugin.search.js +1 -1
  28. package/BookReader/plugins/plugin.search.js.map +1 -1
  29. package/BookReader/plugins/plugin.text_selection.js +1 -1
  30. package/BookReader/plugins/plugin.text_selection.js.map +1 -1
  31. package/BookReader/plugins/plugin.tts.js +1 -1
  32. package/BookReader/plugins/plugin.tts.js.map +1 -1
  33. package/BookReader/plugins/plugin.url.js +1 -1
  34. package/BookReader/plugins/plugin.url.js.map +1 -1
  35. package/BookReader/plugins/plugin.vendor-fullscreen.js +1 -1
  36. package/BookReader/plugins/plugin.vendor-fullscreen.js.map +1 -1
  37. package/BookReader/webcomponents-bundle.js +3 -0
  38. package/BookReader/webcomponents-bundle.js.LICENSE.txt +9 -0
  39. package/BookReader/webcomponents-bundle.js.map +1 -0
  40. package/BookReaderDemo/BookReaderDemo.css +14 -1
  41. package/BookReaderDemo/IADemoBr.js +107 -0
  42. package/BookReaderDemo/demo-advanced.html +1 -1
  43. package/BookReaderDemo/demo-autoplay.html +1 -0
  44. package/BookReaderDemo/demo-embed-iframe-src.html +1 -0
  45. package/BookReaderDemo/demo-fullscreen-mobile.html +1 -0
  46. package/BookReaderDemo/demo-fullscreen.html +1 -0
  47. package/BookReaderDemo/demo-iiif.html +1 -0
  48. package/BookReaderDemo/demo-internetarchive.html +66 -18
  49. package/BookReaderDemo/demo-multiple.html +1 -0
  50. package/BookReaderDemo/demo-preview-pages.html +1 -0
  51. package/BookReaderDemo/demo-simple.html +1 -0
  52. package/BookReaderDemo/demo-vendor-fullscreen.html +1 -0
  53. package/BookReaderDemo/immersion-1up.html +1 -0
  54. package/BookReaderDemo/immersion-mode.html +1 -0
  55. package/BookReaderDemo/toggle_controls.html +1 -0
  56. package/BookReaderDemo/view_mode.html +1 -0
  57. package/BookReaderDemo/viewmode-cycle.html +1 -2
  58. package/CHANGELOG.md +114 -0
  59. package/babel.config.js +18 -0
  60. package/index.html +3 -0
  61. package/jsconfig.json +19 -0
  62. package/package.json +45 -27
  63. package/src/BookNavigator/assets/button-base.js +8 -1
  64. package/src/BookNavigator/assets/ia-logo.js +17 -0
  65. package/src/BookNavigator/assets/icon_sort_asc.js +5 -0
  66. package/src/BookNavigator/assets/icon_sort_desc.js +5 -0
  67. package/src/BookNavigator/assets/icon_sort_neutral.js +5 -0
  68. package/src/BookNavigator/assets/icon_volumes.js +11 -0
  69. package/src/BookNavigator/book-navigator.js +528 -0
  70. package/src/BookNavigator/bookmarks/bookmark-button.js +2 -1
  71. package/src/BookNavigator/bookmarks/bookmark-edit.js +2 -1
  72. package/src/BookNavigator/bookmarks/bookmarks-list.js +1 -0
  73. package/src/BookNavigator/bookmarks/bookmarks-loginCTA.js +4 -9
  74. package/src/BookNavigator/bookmarks/bookmarks-provider.js +32 -11
  75. package/src/BookNavigator/bookmarks/ia-bookmarks.js +88 -43
  76. package/src/BookNavigator/downloads/downloads-provider.js +22 -16
  77. package/src/BookNavigator/downloads/downloads.js +16 -23
  78. package/src/BookNavigator/search/a-search-result.js +1 -0
  79. package/src/BookNavigator/search/search-provider.js +54 -20
  80. package/src/BookNavigator/search/search-results.js +7 -18
  81. package/src/BookNavigator/sharing.js +27 -0
  82. package/src/BookNavigator/visual-adjustments/visual-adjustments-provider.js +10 -12
  83. package/src/BookNavigator/visual-adjustments/visual-adjustments.js +1 -0
  84. package/src/BookNavigator/volumes/volumes-provider.js +114 -0
  85. package/src/BookNavigator/volumes/volumes.js +189 -0
  86. package/src/BookReader/DebugConsole.js +3 -3
  87. package/src/BookReader/DragScrollable.js +233 -0
  88. package/src/BookReader/Mode1Up.js +50 -351
  89. package/src/BookReader/Mode1UpLit.js +434 -0
  90. package/src/BookReader/Mode2Up.js +94 -72
  91. package/src/BookReader/ModeSmoothZoom.js +177 -0
  92. package/src/BookReader/ModeThumb.js +16 -8
  93. package/src/BookReader/Navbar/Navbar.js +2 -31
  94. package/src/BookReader/PageContainer.js +47 -2
  95. package/src/BookReader/ReduceSet.js +1 -1
  96. package/src/BookReader/Toolbar/Toolbar.js +5 -5
  97. package/src/BookReader/options.js +10 -0
  98. package/src/BookReader/utils/HTMLDimensionsCacher.js +44 -0
  99. package/src/BookReader/utils.js +68 -13
  100. package/src/BookReader.js +316 -232
  101. package/src/assets/icons/close-circle-dark.svg +1 -0
  102. package/src/assets/icons/voice.svg +1 -0
  103. package/src/css/BookReader.scss +0 -12
  104. package/src/css/_BRComponent.scss +1 -1
  105. package/src/css/_BRmain.scss +19 -24
  106. package/src/css/_BRnav.scss +4 -26
  107. package/src/css/_BRpages.scss +35 -0
  108. package/src/css/_BRsearch.scss +11 -215
  109. package/src/css/_TextSelection.scss +1 -17
  110. package/src/css/_controls.scss +16 -3
  111. package/src/css/_icons.scss +6 -0
  112. package/src/ia-bookreader/ia-bookreader.js +205 -0
  113. package/src/plugins/plugin.chapters.js +15 -18
  114. package/src/plugins/plugin.mobile_nav.js +11 -10
  115. package/src/plugins/plugin.resume.js +3 -3
  116. package/src/plugins/plugin.text_selection.js +17 -29
  117. package/src/plugins/plugin.vendor-fullscreen.js +4 -4
  118. package/src/plugins/search/plugin.search.js +113 -104
  119. package/src/plugins/search/view.js +48 -163
  120. package/src/plugins/tts/AbstractTTSEngine.js +7 -0
  121. package/src/plugins/tts/FestivalTTSEngine.js +2 -2
  122. package/src/plugins/tts/WebTTSEngine.js +5 -0
  123. package/src/plugins/tts/plugin.tts.js +67 -102
  124. package/src/plugins/url/UrlPlugin.js +184 -0
  125. package/src/plugins/url/plugin.url.js +220 -0
  126. package/{src → stat}/BookNavigator/BookModel.js +0 -0
  127. package/{src → stat}/BookNavigator/BookNavigator.js +151 -104
  128. package/stat/BookNavigator/assets/bookmark-colors.js +15 -0
  129. package/stat/BookNavigator/assets/button-base.js +61 -0
  130. package/stat/BookNavigator/assets/ia-logo.js +17 -0
  131. package/stat/BookNavigator/assets/icon_checkmark.js +6 -0
  132. package/stat/BookNavigator/assets/icon_close.js +3 -0
  133. package/stat/BookNavigator/assets/icon_sort_asc.js +5 -0
  134. package/stat/BookNavigator/assets/icon_sort_desc.js +5 -0
  135. package/stat/BookNavigator/assets/icon_sort_neutral.js +5 -0
  136. package/stat/BookNavigator/assets/icon_volumes.js +11 -0
  137. package/stat/BookNavigator/bookmarks/bookmark-button.js +64 -0
  138. package/stat/BookNavigator/bookmarks/bookmark-edit.js +215 -0
  139. package/stat/BookNavigator/bookmarks/bookmarks-list.js +285 -0
  140. package/stat/BookNavigator/bookmarks/bookmarks-loginCTA.js +28 -0
  141. package/stat/BookNavigator/bookmarks/bookmarks-provider.js +56 -0
  142. package/stat/BookNavigator/bookmarks/ia-bookmarks.js +523 -0
  143. package/{src → stat}/BookNavigator/br-fullscreen-mgr.js +1 -2
  144. package/stat/BookNavigator/delete-modal-actions.js +49 -0
  145. package/stat/BookNavigator/downloads/downloads-provider.js +72 -0
  146. package/stat/BookNavigator/downloads/downloads.js +139 -0
  147. package/stat/BookNavigator/provider-config.js +0 -0
  148. package/stat/BookNavigator/search/a-search-result.js +55 -0
  149. package/stat/BookNavigator/search/search-provider.js +180 -0
  150. package/stat/BookNavigator/search/search-results.js +360 -0
  151. package/stat/BookNavigator/sharing.js +31 -0
  152. package/stat/BookNavigator/visual-adjustments/visual-adjustments-provider.js +94 -0
  153. package/stat/BookNavigator/visual-adjustments/visual-adjustments.js +280 -0
  154. package/stat/BookNavigator/volumes/volumes-provider.js +83 -0
  155. package/stat/BookNavigator/volumes/volumes.js +178 -0
  156. package/stat/BookReader/BookModel.js +518 -0
  157. package/stat/BookReader/DebugConsole.js +54 -0
  158. package/stat/BookReader/DragScrollable.js +233 -0
  159. package/stat/BookReader/ImageCache.js +116 -0
  160. package/stat/BookReader/Mode1Up.js +102 -0
  161. package/stat/BookReader/Mode1UpLit.js +434 -0
  162. package/stat/BookReader/Mode2Up.js +1372 -0
  163. package/stat/BookReader/ModeSmoothZoom.js +177 -0
  164. package/stat/BookReader/ModeThumb.js +344 -0
  165. package/stat/BookReader/Navbar/Navbar.js +310 -0
  166. package/stat/BookReader/PageContainer.js +120 -0
  167. package/stat/BookReader/ReduceSet.js +26 -0
  168. package/stat/BookReader/Toolbar/Toolbar.js +384 -0
  169. package/stat/BookReader/events.js +20 -0
  170. package/stat/BookReader/options.js +324 -0
  171. package/stat/BookReader/utils/HTMLDimensionsCacher.js +44 -0
  172. package/stat/BookReader/utils/classes.js +36 -0
  173. package/stat/BookReader/utils.js +240 -0
  174. package/stat/BookReader.js +2550 -0
  175. package/{src → stat}/BookReaderComponent/BookReaderComponent.js +16 -11
  176. package/stat/assets/icons/1up.svg +12 -0
  177. package/stat/assets/icons/2up.svg +15 -0
  178. package/stat/assets/icons/advance.svg +26 -0
  179. package/stat/assets/icons/chevron-right.svg +1 -0
  180. package/stat/assets/icons/close-circle-dark.svg +1 -0
  181. package/stat/assets/icons/close-circle.svg +1 -0
  182. package/stat/assets/icons/fullscreen.svg +17 -0
  183. package/stat/assets/icons/fullscreen_exit.svg +17 -0
  184. package/stat/assets/icons/hamburger.svg +15 -0
  185. package/stat/assets/icons/left-arrow.svg +12 -0
  186. package/stat/assets/icons/magnify-minus.svg +16 -0
  187. package/stat/assets/icons/magnify-plus.svg +17 -0
  188. package/stat/assets/icons/magnify.svg +15 -0
  189. package/stat/assets/icons/pause.svg +23 -0
  190. package/stat/assets/icons/play.svg +22 -0
  191. package/stat/assets/icons/playback-speed.svg +34 -0
  192. package/stat/assets/icons/read-aloud.svg +22 -0
  193. package/stat/assets/icons/review.svg +22 -0
  194. package/stat/assets/icons/thumbnails.svg +17 -0
  195. package/stat/assets/icons/voice.svg +1 -0
  196. package/stat/assets/icons/volume-full.svg +22 -0
  197. package/stat/assets/images/BRicons.png +0 -0
  198. package/stat/assets/images/BRicons.svg +94 -0
  199. package/stat/assets/images/BRicons_ia.png +0 -0
  200. package/stat/assets/images/back_pages.png +0 -0
  201. package/stat/assets/images/book_bottom_icon.png +0 -0
  202. package/stat/assets/images/book_down_icon.png +0 -0
  203. package/stat/assets/images/book_left_icon.png +0 -0
  204. package/stat/assets/images/book_leftmost_icon.png +0 -0
  205. package/stat/assets/images/book_right_icon.png +0 -0
  206. package/stat/assets/images/book_rightmost_icon.png +0 -0
  207. package/stat/assets/images/book_top_icon.png +0 -0
  208. package/stat/assets/images/book_up_icon.png +0 -0
  209. package/stat/assets/images/books_graphic.svg +177 -0
  210. package/stat/assets/images/booksplit.png +0 -0
  211. package/stat/assets/images/control_pause_icon.png +0 -0
  212. package/stat/assets/images/control_play_icon.png +0 -0
  213. package/stat/assets/images/embed_icon.png +0 -0
  214. package/stat/assets/images/icon-home-ia.png +0 -0
  215. package/stat/assets/images/icon_OL-logo-xs.png +0 -0
  216. package/stat/assets/images/icon_alert-xs.png +0 -0
  217. package/stat/assets/images/icon_book.svg +12 -0
  218. package/stat/assets/images/icon_bookmark.svg +12 -0
  219. package/stat/assets/images/icon_close-pop.png +0 -0
  220. package/stat/assets/images/icon_download.png +0 -0
  221. package/stat/assets/images/icon_gear.svg +14 -0
  222. package/stat/assets/images/icon_hamburger.svg +20 -0
  223. package/stat/assets/images/icon_home.png +0 -0
  224. package/stat/assets/images/icon_home.svg +21 -0
  225. package/stat/assets/images/icon_home_ia.png +0 -0
  226. package/stat/assets/images/icon_indicator.png +0 -0
  227. package/stat/assets/images/icon_info.svg +11 -0
  228. package/stat/assets/images/icon_one_page.svg +8 -0
  229. package/stat/assets/images/icon_pause.svg +1 -0
  230. package/stat/assets/images/icon_play.svg +1 -0
  231. package/stat/assets/images/icon_playback-rate.svg +15 -0
  232. package/stat/assets/images/icon_return.png +0 -0
  233. package/stat/assets/images/icon_search_button.svg +8 -0
  234. package/stat/assets/images/icon_share.svg +9 -0
  235. package/stat/assets/images/icon_skip-ahead.svg +6 -0
  236. package/stat/assets/images/icon_skip-back.svg +13 -0
  237. package/stat/assets/images/icon_speaker.svg +18 -0
  238. package/stat/assets/images/icon_speaker_open.svg +10 -0
  239. package/stat/assets/images/icon_thumbnails.svg +12 -0
  240. package/stat/assets/images/icon_toc.svg +5 -0
  241. package/stat/assets/images/icon_two_pages.svg +9 -0
  242. package/stat/assets/images/icon_zoomer.png +0 -0
  243. package/stat/assets/images/loading.gif +0 -0
  244. package/stat/assets/images/logo_icon.png +0 -0
  245. package/stat/assets/images/marker_chap-off.png +0 -0
  246. package/stat/assets/images/marker_chap-off.svg +11 -0
  247. package/stat/assets/images/marker_chap-off_ia.png +0 -0
  248. package/stat/assets/images/marker_chap-on.png +0 -0
  249. package/stat/assets/images/marker_chap-on.svg +11 -0
  250. package/stat/assets/images/marker_srch-on.svg +11 -0
  251. package/stat/assets/images/marker_srchchap-off.png +0 -0
  252. package/stat/assets/images/marker_srchchap-on.png +0 -0
  253. package/stat/assets/images/nav_control-dn.png +0 -0
  254. package/stat/assets/images/nav_control-dn_ia.png +0 -0
  255. package/stat/assets/images/nav_control-up.png +0 -0
  256. package/stat/assets/images/nav_control-up_ia.png +0 -0
  257. package/stat/assets/images/nav_control.png +0 -0
  258. package/stat/assets/images/one_page_mode_icon.png +0 -0
  259. package/stat/assets/images/paper-badge.png +0 -0
  260. package/stat/assets/images/print_icon.png +0 -0
  261. package/stat/assets/images/progressbar.gif +0 -0
  262. package/stat/assets/images/right_edges.png +0 -0
  263. package/stat/assets/images/slider.png +0 -0
  264. package/stat/assets/images/slider_ia.png +0 -0
  265. package/stat/assets/images/thumbnail_mode_icon.png +0 -0
  266. package/stat/assets/images/transparent.png +0 -0
  267. package/stat/assets/images/two_page_mode_icon.png +0 -0
  268. package/stat/assets/images/zoom_in_icon.png +0 -0
  269. package/stat/assets/images/zoom_out_icon.png +0 -0
  270. package/stat/css/BookReader.scss +89 -0
  271. package/stat/css/_BRBookmarks.scss +29 -0
  272. package/stat/css/_BRComponent.scss +13 -0
  273. package/stat/css/_BRfloat.scss +197 -0
  274. package/stat/css/_BRicon.scss +48 -0
  275. package/stat/css/_BRmain.scss +251 -0
  276. package/stat/css/_BRnav.scss +359 -0
  277. package/stat/css/_BRpages.scss +139 -0
  278. package/stat/css/_BRsearch.scss +226 -0
  279. package/stat/css/_BRtoolbar.scss +84 -0
  280. package/stat/css/_BRvendor.scss +5 -0
  281. package/stat/css/_MobileNav.scss +194 -0
  282. package/stat/css/_TextSelection.scss +32 -0
  283. package/stat/css/_colorbox.scss +52 -0
  284. package/stat/css/_controls.scss +253 -0
  285. package/stat/css/_icons.scss +121 -0
  286. package/stat/jquery-wrapper.js +4 -0
  287. package/stat/plugins/plugin.archive_analytics.js +86 -0
  288. package/stat/plugins/plugin.autoplay.js +129 -0
  289. package/stat/plugins/plugin.chapters.js +248 -0
  290. package/stat/plugins/plugin.iframe.js +48 -0
  291. package/stat/plugins/plugin.mobile_nav.js +288 -0
  292. package/stat/plugins/plugin.resume.js +68 -0
  293. package/stat/plugins/plugin.text_selection.js +291 -0
  294. package/{src → stat}/plugins/plugin.url.js +4 -4
  295. package/stat/plugins/plugin.vendor-fullscreen.js +247 -0
  296. package/stat/plugins/search/plugin.search.js +439 -0
  297. package/stat/plugins/search/view.js +439 -0
  298. package/stat/plugins/tts/AbstractTTSEngine.js +249 -0
  299. package/stat/plugins/tts/FestivalTTSEngine.js +169 -0
  300. package/stat/plugins/tts/PageChunk.js +107 -0
  301. package/stat/plugins/tts/PageChunkIterator.js +163 -0
  302. package/stat/plugins/tts/WebTTSEngine.js +357 -0
  303. package/stat/plugins/tts/plugin.tts.js +357 -0
  304. package/stat/plugins/tts/tooltip_dict.js +15 -0
  305. package/stat/plugins/tts/utils.js +91 -0
  306. package/stat/util/browserSniffing.js +30 -0
  307. package/stat/util/debouncer.js +26 -0
  308. package/stat/util/docCookies.js +67 -0
  309. package/stat/util/strings.js +34 -0
  310. package/tests/e2e/README.md +37 -0
  311. package/tests/e2e/autoplay.test.js +2 -2
  312. package/tests/e2e/base.test.js +5 -7
  313. package/tests/e2e/helpers/base.js +8 -3
  314. package/tests/e2e/helpers/debug.js +1 -1
  315. package/tests/e2e/helpers/desktopSearch.js +1 -1
  316. package/tests/e2e/helpers/mobileSearch.js +3 -3
  317. package/tests/e2e/helpers/params.js +17 -0
  318. package/tests/e2e/rightToLeft.test.js +4 -5
  319. package/tests/e2e/viewmode.test.js +30 -31
  320. package/tests/{BookReader → jest/BookReader}/BookModel.test.js +3 -3
  321. package/tests/jest/BookReader/BookReaderPublicFunctions.test.js +176 -0
  322. package/tests/{BookReader → jest/BookReader}/DebugConsole.test.js +1 -1
  323. package/tests/{BookReader → jest/BookReader}/ImageCache.test.js +4 -4
  324. package/tests/jest/BookReader/Mode1UpLit.test.js +87 -0
  325. package/tests/{BookReader → jest/BookReader}/Mode2Up.test.js +5 -7
  326. package/tests/jest/BookReader/ModeSmoothZoom.test.js +149 -0
  327. package/tests/jest/BookReader/ModeThumb.test.js +71 -0
  328. package/tests/{BookReader → jest/BookReader}/Navbar/Navbar.test.js +7 -7
  329. package/tests/{BookReader → jest/BookReader}/PageContainer.test.js +74 -2
  330. package/tests/{BookReader → jest/BookReader}/ReduceSet.test.js +1 -1
  331. package/tests/{BookReader → jest/BookReader}/Toolbar/Toolbar.test.js +2 -2
  332. package/tests/jest/BookReader/utils/HTMLDimensionsCacher.test.js +59 -0
  333. package/tests/{BookReader → jest/BookReader}/utils/classes.test.js +1 -1
  334. package/tests/jest/BookReader/utils.test.js +136 -0
  335. package/tests/jest/BookReader.keyboard.test.js +190 -0
  336. package/tests/{BookReader.options.test.js → jest/BookReader.options.test.js} +9 -1
  337. package/tests/{BookReader.test.js → jest/BookReader.test.js} +20 -4
  338. package/tests/{plugins → jest/plugins}/plugin.archive_analytics.test.js +2 -2
  339. package/tests/{plugins → jest/plugins}/plugin.autoplay.test.js +2 -2
  340. package/tests/{plugins → jest/plugins}/plugin.chapters.test.js +8 -8
  341. package/tests/{plugins → jest/plugins}/plugin.iframe.test.js +2 -2
  342. package/tests/{plugins → jest/plugins}/plugin.mobile_nav.test.js +5 -5
  343. package/tests/{plugins → jest/plugins}/plugin.resume.test.js +3 -3
  344. package/tests/{plugins → jest/plugins}/plugin.text_selection.test.js +14 -24
  345. package/tests/{plugins → jest/plugins}/plugin.vendor-fullscreen.test.js +2 -2
  346. package/tests/{plugins → jest/plugins}/search/plugin.search.test.js +12 -5
  347. package/tests/{plugins → jest/plugins}/search/plugin.search.view.test.js +6 -6
  348. package/tests/{plugins → jest/plugins}/tts/AbstractTTSEngine.test.js +3 -3
  349. package/tests/{plugins → jest/plugins}/tts/FestivalTTSEngine.test.js +4 -4
  350. package/tests/{plugins → jest/plugins}/tts/PageChunk.test.js +1 -1
  351. package/tests/{plugins → jest/plugins}/tts/PageChunkIterator.test.js +3 -3
  352. package/tests/{plugins → jest/plugins}/tts/WebTTSEngine.test.js +1 -1
  353. package/tests/{plugins → jest/plugins}/tts/utils.test.js +3 -3
  354. package/tests/jest/plugins/url/UrlPlugin.test.js +175 -0
  355. package/tests/{plugins → jest/plugins/url}/plugin.url.test.js +33 -14
  356. package/tests/{util → jest/util}/browserSniffing.test.js +1 -1
  357. package/tests/{util → jest/util}/docCookies.test.js +1 -1
  358. package/tests/{util → jest/util}/strings.test.js +1 -1
  359. package/tests/{utils.js → jest/utils.js} +38 -0
  360. package/tests/karma/BookNavigator/book-navigator.test.js +485 -0
  361. package/tests/karma/BookNavigator/bookmarks/bookmark-button.test.js +44 -0
  362. package/tests/karma/BookNavigator/bookmarks/bookmark-edit.test.js +1 -3
  363. package/tests/karma/BookNavigator/bookmarks/bookmarks-list.test.js +1 -2
  364. package/tests/karma/BookNavigator/downloads/downloads-provider.test.js +67 -0
  365. package/tests/karma/BookNavigator/downloads/downloads.test.js +54 -0
  366. package/tests/karma/BookNavigator/search/search-provider.test.js +123 -0
  367. package/tests/karma/BookNavigator/{search-results.test.js → search/search-results.test.js} +1 -4
  368. package/tests/karma/BookNavigator/sharing/sharing-provider.test.js +49 -0
  369. package/tests/karma/BookNavigator/visual-adjustments.test.js +0 -2
  370. package/tests/karma/BookNavigator/volumes/volumes-provider.test.js +184 -0
  371. package/tests/karma/BookNavigator/volumes/volumes.test.js +98 -0
  372. package/webpack.config.js +10 -4
  373. package/.babelrc +0 -12
  374. package/.dependabot/config.yml +0 -6
  375. package/.testcaferc.json +0 -5
  376. package/BookReader/bookreader-component-bundle.js +0 -1450
  377. package/BookReader/bookreader-component-bundle.js.map +0 -1
  378. package/BookReader/plugins/plugin.menu_toggle.js +0 -2
  379. package/BookReader/plugins/plugin.menu_toggle.js.map +0 -1
  380. package/BookReaderDemo/demo-plugin-menu-toggle.html +0 -34
  381. package/src/BookNavigator/assets/book-loader.js +0 -27
  382. package/src/ItemNavigator/ItemNavigator.js +0 -372
  383. package/src/ItemNavigator/providers/sharing.js +0 -29
  384. package/src/dragscrollable-br.js +0 -261
  385. package/src/plugins/menu_toggle/plugin.menu_toggle.js +0 -324
  386. package/tests/BookReader/BookReaderPublicFunctions.test.js +0 -171
  387. package/tests/BookReader/Mode1Up.test.js +0 -164
  388. package/tests/BookReader/utils.test.js +0 -109
  389. package/tests/plugins/menu_toggle/plugin.menu_toggle.test.js +0 -68
@@ -1,2 +1,2 @@
1
- (self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[336],{8837:function(t,o,e){"use strict";var a;e(5827),e(4916),e(5306),e(2222),e(6992),e(1539),e(8783),e(3948),e(285),e(3609).extend(BookReader.defaultOptions,{enableUrlPlugin:!0,bookId:"",defaults:null,updateWindowTitle:!1,urlMode:"hash",urlHistoryBasePath:"/",urlTrackedParams:["page","search","mode","region","highlight"],urlTrackIndex0:!1}),BookReader.prototype.setup=(a=BookReader.prototype.setup,function(t){a.call(this,t),this.bookId=t.bookId,this.defaults=t.defaults,this.locationPollId=null,this.oldLocationHash=null,this.oldUserHash=null}),BookReader.prototype.init=function(t){return function(){var o=this;this.options.enableUrlPlugin&&(this.bind(BookReader.eventNames.PostInit,(function(){var t=o.options,e=t.updateWindowTitle,a=t.urlMode;e&&(document.title=o.shortTitle(50)),"hash"===a&&o.urlStartLocationPolling()})),this.bind(BookReader.eventNames.fragmentChange,this.urlUpdateFragment.bind(this))),t.call(this)}}(BookReader.prototype.init),BookReader.prototype.shortTitle=function(t){return this.bookTitle.length<t?this.bookTitle:"".concat(this.bookTitle.substr(0,t-3),"...")},BookReader.prototype.urlStartLocationPolling=function(){var t=this;this.oldLocationHash=this.urlReadFragment(),this.locationPollId&&(clearInterval(this.locationPollID),this.locationPollId=null),this.locationPollId=setInterval((function(){var o=t.urlReadFragment();if(o!=t.oldLocationHash&&o!=t.oldUserHash){var e=t.paramsFromFragment(o),a=function(){return t.updateFromParams(e)};t.trigger(BookReader.eventNames.stop),t.animating?(t.autoStop&&t.autoStop(),t.animationFinishedCallback=a):a(),t.oldUserHash=o}}),500)},BookReader.prototype.urlUpdateFragment=function(){var t=this.paramsFromCurrent(),o=this.options,e=o.urlMode,a=o.urlTrackIndex0,r=o.urlTrackedParams;a||void 0===t.index||0!==t.index||(delete t.index,delete t.page);var i=r.reduce((function(o,e){return e in t&&(o[e]=t[e]),o}),{}),n=this.fragmentFromParams(i,e),s=this.urlReadFragment(),l=this.getLocationSearch(),h=this.queryStringFromParams(i,l,e);if(s!==n||l!==h)if("history"===e){if(window.history&&window.history.replaceState){var d=this.options.urlHistoryBasePath.replace(/\/+$/,""),u=""===n?"":"/".concat(n),c="".concat(d).concat(u).concat(h);window.history.replaceState({},null,c),this.oldLocationHash=n+h}}else{var p=this.urlParamsFiltersOnlySearch(this.readQueryString());window.location.replace("#"+n+p),this.oldLocationHash=n+p}},BookReader.prototype.urlParamsFiltersOnlySearch=function(t){var o=new URLSearchParams(t);return o.has("q")?"?".concat(new URLSearchParams({q:o.get("q")})):""},BookReader.prototype.urlReadFragment=function(){var t=this.options,o=t.urlMode,e=t.urlHistoryBasePath;return"history"===o?window.location.pathname.substr(e.length):window.location.hash.substr(1)},BookReader.prototype.urlReadHashFragment=function(){return window.location.hash.substr(1)}}},function(t){"use strict";t(t.s=8837)}]);
1
+ (self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[336],{1226:function(t,e,r){"use strict";function n(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}r(5827),r(4916),r(5306),r(2222),r(6992),r(1539),r(8783),r(3948),r(285),r(489),r(2419),r(4819),r(5003),r(2526),r(1817),r(2165),r(4747),r(7941),r(9826),r(8309),r(9600),r(1249),r(7327),r(9714),r(8559),r(4723),r(3123),r(9720),r(4765),r(7042),r(1038);var i,l=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};o(this,t),this.bookReaderOptions=e,this.urlSchema=[{name:"page",position:"path",default:"n0"},{name:"mode",position:"path",default:"2up"},{name:"search",position:"path",deprecated_for:"q"},{name:"q",position:"query_param"},{name:"sort",position:"query_param"},{name:"view",position:"query_param"},{name:"admin",position:"query_param"}],this.urlState={},this.urlMode=this.bookReaderOptions.urlMode||"hash",this.urlHistoryBasePath=this.bookReaderOptions.urlHistoryBasePath||"/",this.urlLocationPollId=null,this.oldLocationHash=null,this.oldUserHash=null}var e,r;return e=t,(r=[{key:"urlStateToUrlString",value:function(t){var e=this,r=new URLSearchParams,n={};Object.keys(t).forEach((function(o){var a,i,l,u,s=e.urlSchema.find((function(t){return t.name===o}));null!==(a=s)&&void 0!==a&&a.deprecated_for&&(s=e.urlSchema.find((function(t){return t.name===s.deprecated_for}))),"path"==(null===(i=s)||void 0===i?void 0:i.position)?n[null===(l=s)||void 0===l?void 0:l.name]=t[o]:r.append((null===(u=s)||void 0===u?void 0:u.name)||o,t[o])}));var o=this.urlSchema.filter((function(t){return"path"==t.position})).map((function(t){return n[t.name]?"".concat(t.name,"/").concat(n[t.name]):""})).join("/"),a="".concat(o.replace(/\/+/g,"/").replace(/\/+$/,"")),i="".concat(a,"?").concat(r.toString());return r.toString()?i:"".concat(a)}},{key:"urlStringToUrlState",value:function(t){var e={},r=new URL(t,"http://example.com"),o=Object.fromEntries(r.searchParams.entries()),a=r.pathname.match(/[^\\/]+\/[^\\/]+/g),i=a?Object.fromEntries(a.map((function(t){return t.split("/")}))):{},l=function(t,e){return Object.keys(t).some((function(t){return t==e}))};return this.urlSchema.filter((function(t){return"path"==t.position})).forEach((function(t){var r=l(i,t.name);l(t,"deprecated_for")&&r?e[t.deprecated_for]=i[t.name]:r&&(e[t.name]=i[t.name])})),Object.entries(o).forEach((function(t){var r,o,a=(o=2,function(t){if(Array.isArray(t))return t}(r=t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,a=[],i=!0,l=!1;try{for(r=r.call(t);!(i=(n=r.next()).done)&&(a.push(n.value),!e||a.length!==e);i=!0);}catch(t){l=!0,o=t}finally{try{i||null==r.return||r.return()}finally{if(l)throw o}}return a}}(r,o)||function(t,e){if(t){if("string"==typeof t)return n(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(t,e):void 0}}(r,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=a[0],l=a[1];e[i]=l})),e}},{key:"setUrlParam",value:function(t,e){this.urlState[t]=e,this.pushToAddressBar()}},{key:"removeUrlParam",value:function(t){delete this.urlState[t],this.pushToAddressBar()}},{key:"getUrlParam",value:function(t){return this.urlState[t]}},{key:"pushToAddressBar",value:function(){var t=this.urlStateToUrlString(this.urlState),e="/"!==t?t:"";if("history"==this.urlMode){if(window.history&&window.history.replaceState){var r="".concat(this.urlHistoryBasePath).concat(e);window.history.replaceState({},null,r)}}else window.location.replace("#"+e);this.oldLocationHash=t}},{key:"listenForHashChanges",value:function(){var t=this;this.oldLocationHash=window.location.hash.substr(1),this.urlLocationPollId&&(clearInterval(this.urlLocationPollId),this.urlLocationPollId=null),this.urlLocationPollId=setInterval((function(){var e=window.location.hash.substr(1);e!=t.oldLocationHash&&(t.urlState=t.urlStringToUrlState(e))}),500)}},{key:"pullFromAddressBar",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location,e="history"===this.urlMode?t.pathname.substr(this.urlHistoryBasePath.length)+t.search:t.hash.substr(1);this.urlState=this.urlStringToUrlState(e)}}])&&a(e.prototype,r),t}();function u(t){return(u="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})(t)}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function c(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function h(t,e,r){return(h="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,r){var n=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=p(t)););return t}(t,e);if(n){var o=Object.getOwnPropertyDescriptor(n,e);return o.get?o.get.call(r):o.value}})(t,e,r||t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function d(t,e){if(e&&("object"===u(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}function p(t){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}r(3609).extend(BookReader.defaultOptions,{enableUrlPlugin:!0,bookId:"",defaults:null,updateWindowTitle:!1,urlMode:"hash",urlHistoryBasePath:"/",urlTrackedParams:["page","search","mode","region","highlight","view"],urlTrackIndex0:!1}),BookReader.prototype.setup=(i=BookReader.prototype.setup,function(t){i.call(this,t),this.bookId=t.bookId,this.defaults=t.defaults,this.locationPollId=null,this.oldLocationHash=null,this.oldUserHash=null}),BookReader.prototype.init=function(t){return function(){var e=this;this.options.enableUrlPlugin&&(this.bind(BookReader.eventNames.PostInit,(function(){var t=e.options,r=t.updateWindowTitle,n=t.urlMode;r&&(document.title=e.shortTitle(e.bookTitle,50)),"hash"===n&&e.urlStartLocationPolling()})),this.bind(BookReader.eventNames.fragmentChange,this.urlUpdateFragment.bind(this))),t.call(this)}}(BookReader.prototype.init),BookReader.prototype.shortTitle=function(t){return this.bookTitle.length<t?this.bookTitle:"".concat(this.bookTitle.substr(0,t-3),"...")},BookReader.prototype.urlStartLocationPolling=function(){var t=this;this.oldLocationHash=this.urlReadFragment(),this.locationPollId&&(clearInterval(this.locationPollId),this.locationPollId=null),this.locationPollId=setInterval((function(){var e=t.urlReadFragment();if(e!=t.oldLocationHash&&e!=t.oldUserHash){var r=t.paramsFromFragment(e),n=function(){return t.updateFromParams(r)};t.trigger(BookReader.eventNames.stop),t.animating?(t.autoStop&&t.autoStop(),t.animationFinishedCallback=n):n(),t.oldUserHash=e}}),500)},BookReader.prototype.urlUpdateFragment=function(){var t=this.paramsFromCurrent(),e=this.options,r=e.urlMode,n=e.urlTrackIndex0,o=e.urlTrackedParams;n||void 0===t.index||0!==t.index||(delete t.index,delete t.page);var a=o.reduce((function(e,r){return r in t&&(e[r]=t[r]),e}),{}),i=this.fragmentFromParams(a,r),l=this.urlReadFragment(),u=this.getLocationSearch(),s=this.queryStringFromParams(a,u,r);if(l!==i||u!==s)if("history"===r){if(window.history&&window.history.replaceState){var c=this.options.urlHistoryBasePath.replace(/\/+$/,""),h=""===i?"":"/".concat(i),f="".concat(c).concat(h).concat(s);window.history.replaceState({},null,f),this.oldLocationHash=i+s}}else{var d=this.urlParamsFiltersOnlySearch(this.readQueryString());window.location.replace("#"+i+d),this.oldLocationHash=i+d}},BookReader.prototype.urlParamsFiltersOnlySearch=function(t){var e=new URLSearchParams(t);return e.has("q")?"?".concat(new URLSearchParams({q:e.get("q")})):""},BookReader.prototype.urlReadFragment=function(){var t=this.options,e=t.urlMode,r=t.urlHistoryBasePath;return"history"===e?window.location.pathname.substr(r.length):window.location.hash.substr(1)},BookReader.prototype.urlReadHashFragment=function(){return window.location.hash.substr(1)};var y=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(i,BookReader);var e,r,n,o,a=(n=i,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=p(n);if(o){var r=p(this).constructor;t=Reflect.construct(e,arguments,r)}else t=e.apply(this,arguments);return d(this,t)});function i(){return s(this,i),a.apply(this,arguments)}return e=i,(r=[{key:"init",value:function(){var t=this;this.options.enableUrlPlugin&&(this.urlPlugin=new l(this.options),this.bind(BookReader.eventNames.PostInit,(function(){"hash"===t.options.urlMode&&t.urlPlugin.listenForHashChanges()}))),h(p(i.prototype),"init",this).call(this)}}])&&c(e.prototype,r),i}();window.BookReader=y},9720:function(t,e,r){var n=r(2109),o=r(4699).entries;n({target:"Object",stat:!0},{entries:function(t){return o(t)}})},8559:function(t,e,r){var n=r(2109),o=r(408),a=r(6135);n({target:"Object",stat:!0},{fromEntries:function(t){var e={};return o(t,(function(t,r){a(e,t,r)}),{AS_ENTRIES:!0}),e}})},4723:function(t,e,r){"use strict";var n=r(7007),o=r(9670),a=r(7466),i=r(1340),l=r(4488),u=r(1530),s=r(7651);n("match",(function(t,e,r){return[function(e){var r=l(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](i(r))},function(t){var n=o(this),l=i(t),c=r(e,n,l);if(c.done)return c.value;if(!n.global)return s(n,l);var h=n.unicode;n.lastIndex=0;for(var f,d=[],p=0;null!==(f=s(n,l));){var y=i(f[0]);d[p]=y,""===y&&(n.lastIndex=u(l,a(n.lastIndex),h)),p++}return 0===p?null:d}]}))}},function(t){t(t.s=1226)}]);
2
2
  //# sourceMappingURL=plugin.url.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://@internetarchive/bookreader/./src/plugins/plugin.url.js"],"names":["super_","extend","BookReader","defaultOptions","enableUrlPlugin","bookId","defaults","updateWindowTitle","urlMode","urlHistoryBasePath","urlTrackedParams","urlTrackIndex0","prototype","setup","options","call","this","locationPollId","oldLocationHash","oldUserHash","init","bind","eventNames","PostInit","document","title","shortTitle","urlStartLocationPolling","fragmentChange","urlUpdateFragment","maximumCharacters","bookTitle","length","substr","urlReadFragment","clearInterval","locationPollID","setInterval","newFragment","params","paramsFromFragment","updateParams","updateFromParams","trigger","stop","animating","autoStop","animationFinishedCallback","allParams","paramsFromCurrent","index","page","reduce","validParams","paramName","fragmentFromParams","currFragment","currQueryString","getLocationSearch","newQueryString","queryStringFromParams","window","history","replaceState","baseWithoutSlash","replace","newFragmentWithSlash","newUrlPath","newQueryStringSearch","urlParamsFiltersOnlySearch","readQueryString","location","url","URLSearchParams","has","q","get","pathname","hash","urlReadHashFragment"],"mappings":"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","file":"plugins/plugin.url.js","sourcesContent":["/* global BookReader */\n/**\n * Plugin for URL management in BookReader\n * Note read more about the url \"fragment\" here:\n * https://openlibrary.org/dev/docs/bookurls\n */\n\njQuery.extend(BookReader.defaultOptions, {\n enableUrlPlugin: true,\n bookId: '',\n /** @type {string} Defaults can be a urlFragment string */\n defaults: null,\n updateWindowTitle: false,\n\n /** @type {'history' | 'hash'} */\n urlMode: 'hash',\n\n /**\n * When using 'history' mode, this part of the URL is kept constant\n * @example /details/plato/\n */\n urlHistoryBasePath: '/',\n\n /** Only these params will be reflected onto the URL */\n urlTrackedParams: ['page', 'search', 'mode', 'region', 'highlight'],\n\n /** If true, don't update the URL when `page == n0 (eg \"/page/n0\")` */\n urlTrackIndex0: false,\n});\n\n/** @override */\nBookReader.prototype.setup = (function(super_) {\n return function(options) {\n super_.call(this, options);\n\n this.bookId = options.bookId;\n this.defaults = options.defaults;\n\n this.locationPollId = null;\n this.oldLocationHash = null;\n this.oldUserHash = null;\n };\n})(BookReader.prototype.setup);\n\n/** @override */\nBookReader.prototype.init = (function(super_) {\n return function() {\n\n if (this.options.enableUrlPlugin) {\n this.bind(BookReader.eventNames.PostInit, () => {\n const { updateWindowTitle, urlMode } = this.options;\n if (updateWindowTitle) {\n document.title = this.shortTitle(50);\n }\n if (urlMode === 'hash') {\n this.urlStartLocationPolling();\n }\n });\n\n this.bind(BookReader.eventNames.fragmentChange,\n this.urlUpdateFragment.bind(this)\n );\n }\n super_.call(this);\n };\n})(BookReader.prototype.init);\n\n/**\n * Returns a shortened version of the title with the maximum number of characters\n * @param {number} maximumCharacters\n * @return {string}\n */\nBookReader.prototype.shortTitle = function(maximumCharacters) {\n if (this.bookTitle.length < maximumCharacters) {\n return this.bookTitle;\n }\n\n const title = `${this.bookTitle.substr(0, maximumCharacters - 3)}...`;\n return title;\n};\n\n/**\n * Starts polling of window.location to see hash fragment changes\n */\nBookReader.prototype.urlStartLocationPolling = function() {\n this.oldLocationHash = this.urlReadFragment();\n\n if (this.locationPollId) {\n clearInterval(this.locationPollID);\n this.locationPollId = null;\n }\n\n const updateHash = () => {\n const newFragment = this.urlReadFragment();\n const hasFragmentChange = (newFragment != this.oldLocationHash) && (newFragment != this.oldUserHash);\n\n if (!hasFragmentChange) { return; }\n\n const params = this.paramsFromFragment(newFragment);\n\n const updateParams = () => this.updateFromParams(params);\n\n this.trigger(BookReader.eventNames.stop);\n if (this.animating) {\n // Queue change if animating\n if (this.autoStop) this.autoStop();\n this.animationFinishedCallback = updateParams;\n } else {\n // update immediately\n updateParams();\n }\n this.oldUserHash = newFragment;\n }\n\n this.locationPollId = setInterval(updateHash, 500);\n};\n\n/**\n * Update URL from the current parameters.\n * Call this instead of manually using window.location.replace\n */\nBookReader.prototype.urlUpdateFragment = function() {\n const allParams = this.paramsFromCurrent();\n const { urlMode, urlTrackIndex0, urlTrackedParams } = this.options;\n\n if (!urlTrackIndex0\n && (typeof(allParams.index) !== 'undefined')\n && allParams.index === 0) {\n delete allParams.index;\n delete allParams.page;\n }\n\n const params = urlTrackedParams.reduce((validParams, paramName) => {\n if (paramName in allParams) {\n validParams[paramName] = allParams[paramName];\n }\n return validParams\n }, {});\n\n const newFragment = this.fragmentFromParams(params, urlMode);\n const currFragment = this.urlReadFragment();\n const currQueryString = this.getLocationSearch();\n const newQueryString = this.queryStringFromParams(params, currQueryString, urlMode);\n if (currFragment === newFragment && currQueryString === newQueryString) {\n return;\n }\n\n if (urlMode === 'history') {\n if (window.history && window.history.replaceState) {\n const baseWithoutSlash = this.options.urlHistoryBasePath.replace(/\\/+$/, '');\n const newFragmentWithSlash = newFragment === '' ? '' : `/${newFragment}`;\n\n const newUrlPath = `${baseWithoutSlash}${newFragmentWithSlash}${newQueryString}`;\n window.history.replaceState({}, null, newUrlPath);\n this.oldLocationHash = newFragment + newQueryString;\n\n }\n } else {\n const newQueryStringSearch = this.urlParamsFiltersOnlySearch(this.readQueryString());\n window.location.replace('#' + newFragment + newQueryStringSearch);\n this.oldLocationHash = newFragment + newQueryStringSearch;\n\n }\n};\n\n/**\n * @private\n * Filtering query parameters to select only book search param (?q=foo)\n This needs to be updated/URL system modified if future query params are to be added\n * @param {string} url\n * @return {string}\n * */\nBookReader.prototype.urlParamsFiltersOnlySearch = function(url) {\n const params = new URLSearchParams(url);\n return params.has('q') ? `?${new URLSearchParams({ q: params.get('q') })}` : '';\n}\n\n\n/**\n * Will read either the hash or URL and return the bookreader fragment\n * @return {string}\n */\nBookReader.prototype.urlReadFragment = function() {\n const { urlMode, urlHistoryBasePath } = this.options;\n if (urlMode === 'history') {\n return window.location.pathname.substr(urlHistoryBasePath.length);\n } else {\n return window.location.hash.substr(1);\n }\n};\n\n/**\n * Will read the hash return the bookreader fragment\n * @return {string}\n */\nBookReader.prototype.urlReadHashFragment = function() {\n return window.location.hash.substr(1);\n};\n"],"sourceRoot":""}
1
+ {"version":3,"file":"plugins/plugin.url.js","mappings":"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","sources":["webpack://@internetarchive/bookreader/./src/plugins/url/UrlPlugin.js","webpack://@internetarchive/bookreader/./src/plugins/url/plugin.url.js","webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.object.entries.js","webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.object.from-entries.js","webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.string.match.js"],"sourcesContent":["export class UrlPlugin {\n constructor(options = {}) {\n this.bookReaderOptions = options;\n\n // the canonical order of elements is important in the path and query string\n this.urlSchema = [\n { name: 'page', position: 'path', default: 'n0' },\n { name: 'mode', position: 'path', default: '2up' },\n { name: 'search', position: 'path', deprecated_for: 'q' },\n { name: 'q', position: 'query_param' },\n { name: 'sort', position: 'query_param' },\n { name: 'view', position: 'query_param' },\n { name: 'admin', position: 'query_param' },\n ];\n\n this.urlState = {};\n this.urlMode = this.bookReaderOptions.urlMode || 'hash';\n this.urlHistoryBasePath = this.bookReaderOptions.urlHistoryBasePath || '/';\n this.urlLocationPollId = null;\n this.oldLocationHash = null;\n this.oldUserHash = null;\n }\n\n /**\n * Parse JSON object URL state to string format\n * Arrange path names in an order that it is positioned on the urlSchema\n * @param {Object} urlState\n * @returns {string}\n */\n urlStateToUrlString(urlState) {\n const searchParams = new URLSearchParams();\n const pathParams = {};\n\n Object.keys(urlState).forEach(key => {\n let schema = this.urlSchema.find(schema => schema.name === key);\n if (schema?.deprecated_for) {\n schema = this.urlSchema.find(schemaKey => schemaKey.name === schema.deprecated_for);\n }\n if (schema?.position == 'path') {\n pathParams[schema?.name] = urlState[key];\n } else {\n searchParams.append(schema?.name || key, urlState[key]);\n }\n });\n\n const strPathParams = this.urlSchema\n .filter(s => s.position == 'path')\n .map(schema => pathParams[schema.name] ? `${schema.name}/${pathParams[schema.name]}` : '')\n .join('/');\n\n // replace consecutive slashes with a single slash + remove trailing slashes\n const strStrippedTrailingSlash = `${strPathParams.replace(/\\/+/g, '/').replace(/\\/+$/, '')}`;\n const concatenatedPath = `${strStrippedTrailingSlash}?${searchParams.toString()}`;\n return searchParams.toString() ? concatenatedPath : `${strStrippedTrailingSlash}`;\n }\n\n /**\n * Parse string URL and add it in the current urlState\n * Example:\n * /page/n7/mode/2up => {page: 'n7', mode: '2up'}\n * /page/n7/mode/2up/search/hello => {page: 'n7', mode: '2up', q: 'hello'}\n * @param {string} urlString\n * @returns {object}\n */\n urlStringToUrlState(urlString) {\n const urlState = {};\n\n // Fetch searchParams from given {str}\n // Note: whole URL path is needed for URL parsing\n const urlPath = new URL(urlString, 'http://example.com');\n const urlSearchParamsObj = Object.fromEntries(urlPath.searchParams.entries());\n const splitUrlMatches = urlPath.pathname.match(/[^\\\\/]+\\/[^\\\\/]+/g);\n const urlStrSplitSlashObj = splitUrlMatches ? Object.fromEntries(splitUrlMatches.map(x => x.split('/'))) : {};\n\n const doesKeyExists = (_object, _key) => {\n return Object.keys(_object).some(value => value == _key);\n };\n\n // Add path objects to urlState\n this.urlSchema\n .filter(schema => schema.position == 'path')\n .forEach(schema => {\n const hasPropertyKey = doesKeyExists(urlStrSplitSlashObj, schema.name);\n const hasDeprecatedKey = doesKeyExists(schema, 'deprecated_for') && hasPropertyKey;\n\n if (hasDeprecatedKey) {\n urlState[schema.deprecated_for] = urlStrSplitSlashObj[schema.name];\n return;\n }\n\n if (hasPropertyKey) {\n urlState[schema.name] = urlStrSplitSlashObj[schema.name];\n return;\n }\n });\n\n // Add searchParams to urlState\n Object.entries(urlSearchParamsObj).forEach(([key, value]) => {\n urlState[key] = value;\n });\n\n return urlState;\n }\n\n /**\n * Add or update key-value to the urlState\n * @param {string} key\n * @param {string} val\n */\n setUrlParam(key, value) {\n this.urlState[key] = value;\n\n this.pushToAddressBar();\n }\n\n /**\n * Delete key-value to the urlState\n * @param {string} key\n */\n removeUrlParam(key) {\n delete this.urlState[key];\n\n this.pushToAddressBar();\n }\n\n /**\n * Get key-value from the urlState\n * @param {string} key\n * @return {string}\n */\n getUrlParam(key) {\n return this.urlState[key];\n }\n\n /**\n * Push URL params to addressbar\n */\n pushToAddressBar() {\n const urlStrPath = this.urlStateToUrlString(this.urlState);\n const concatenatedPath = urlStrPath !== '/' ? urlStrPath : '';\n if (this.urlMode == 'history') {\n if (window.history && window.history.replaceState) {\n const newUrlPath = `${this.urlHistoryBasePath}${concatenatedPath}`;\n window.history.replaceState({}, null, newUrlPath);\n }\n } else {\n window.location.replace('#' + concatenatedPath);\n }\n this.oldLocationHash = urlStrPath;\n }\n\n /**\n * Get the url and check if it has changed\n * If it was changeed, update the urlState\n */\n listenForHashChanges() {\n this.oldLocationHash = window.location.hash.substr(1);\n if (this.urlLocationPollId) {\n clearInterval(this.urlLocationPollId);\n this.urlLocationPollId = null;\n }\n\n // check if the URL changes\n const updateHash = () => {\n const newFragment = window.location.hash.substr(1);\n const hasFragmentChange = newFragment != this.oldLocationHash;\n\n if (!hasFragmentChange) { return; }\n\n this.urlState = this.urlStringToUrlState(newFragment);\n };\n this.urlLocationPollId = setInterval(updateHash, 500);\n }\n\n /**\n * Will read either the hash or URL and return the bookreader fragment\n */\n pullFromAddressBar (location = window.location) {\n const path = this.urlMode === 'history'\n ? (location.pathname.substr(this.urlHistoryBasePath.length) + location.search)\n : location.hash.substr(1);\n this.urlState = this.urlStringToUrlState(path);\n }\n}\n","/* global BookReader */\n\nimport { UrlPlugin } from \"./UrlPlugin\";\n\n/**\n * Plugin for URL management in BookReader\n * Note read more about the url \"fragment\" here:\n * https://openlibrary.org/dev/docs/bookurls\n */\n\njQuery.extend(BookReader.defaultOptions, {\n enableUrlPlugin: true,\n bookId: '',\n /** @type {string} Defaults can be a urlFragment string */\n defaults: null,\n updateWindowTitle: false,\n\n /** @type {'history' | 'hash'} */\n urlMode: 'hash',\n\n /**\n * When using 'history' mode, this part of the URL is kept constant\n * @example /details/plato/\n */\n urlHistoryBasePath: '/',\n\n /** Only these params will be reflected onto the URL */\n urlTrackedParams: ['page', 'search', 'mode', 'region', 'highlight', 'view'],\n\n /** If true, don't update the URL when `page == n0 (eg \"/page/n0\")` */\n urlTrackIndex0: false,\n});\n\n/** @override */\nBookReader.prototype.setup = (function(super_) {\n return function(options) {\n super_.call(this, options);\n\n this.bookId = options.bookId;\n this.defaults = options.defaults;\n\n this.locationPollId = null;\n this.oldLocationHash = null;\n this.oldUserHash = null;\n };\n})(BookReader.prototype.setup);\n\n/** @override */\nBookReader.prototype.init = (function(super_) {\n return function() {\n\n if (this.options.enableUrlPlugin) {\n this.bind(BookReader.eventNames.PostInit, () => {\n const { updateWindowTitle, urlMode } = this.options;\n if (updateWindowTitle) {\n document.title = this.shortTitle(this.bookTitle, 50);\n }\n if (urlMode === 'hash') {\n this.urlStartLocationPolling();\n }\n });\n\n this.bind(BookReader.eventNames.fragmentChange,\n this.urlUpdateFragment.bind(this)\n );\n }\n super_.call(this);\n };\n})(BookReader.prototype.init);\n\n/**\n * Returns a shortened version of the title with the maximum number of characters\n * @param {number} maximumCharacters\n * @return {string}\n */\nBookReader.prototype.shortTitle = function(maximumCharacters) {\n if (this.bookTitle.length < maximumCharacters) {\n return this.bookTitle;\n }\n\n const title = `${this.bookTitle.substr(0, maximumCharacters - 3)}...`;\n return title;\n};\n\n/**\n * Starts polling of window.location to see hash fragment changes\n */\nBookReader.prototype.urlStartLocationPolling = function() {\n this.oldLocationHash = this.urlReadFragment();\n\n if (this.locationPollId) {\n clearInterval(this.locationPollId);\n this.locationPollId = null;\n }\n\n const updateHash = () => {\n const newFragment = this.urlReadFragment();\n const hasFragmentChange = (newFragment != this.oldLocationHash) && (newFragment != this.oldUserHash);\n\n if (!hasFragmentChange) { return; }\n\n const params = this.paramsFromFragment(newFragment);\n\n const updateParams = () => this.updateFromParams(params);\n\n this.trigger(BookReader.eventNames.stop);\n if (this.animating) {\n // Queue change if animating\n if (this.autoStop) this.autoStop();\n this.animationFinishedCallback = updateParams;\n } else {\n // update immediately\n updateParams();\n }\n this.oldUserHash = newFragment;\n };\n\n this.locationPollId = setInterval(updateHash, 500);\n};\n\n/**\n * Update URL from the current parameters.\n * Call this instead of manually using window.location.replace\n */\nBookReader.prototype.urlUpdateFragment = function() {\n const allParams = this.paramsFromCurrent();\n const { urlMode, urlTrackIndex0, urlTrackedParams } = this.options;\n\n if (!urlTrackIndex0\n && (typeof(allParams.index) !== 'undefined')\n && allParams.index === 0) {\n delete allParams.index;\n delete allParams.page;\n }\n\n const params = urlTrackedParams.reduce((validParams, paramName) => {\n if (paramName in allParams) {\n validParams[paramName] = allParams[paramName];\n }\n return validParams;\n }, {});\n\n const newFragment = this.fragmentFromParams(params, urlMode);\n const currFragment = this.urlReadFragment();\n const currQueryString = this.getLocationSearch();\n const newQueryString = this.queryStringFromParams(params, currQueryString, urlMode);\n if (currFragment === newFragment && currQueryString === newQueryString) {\n return;\n }\n\n if (urlMode === 'history') {\n if (window.history && window.history.replaceState) {\n const baseWithoutSlash = this.options.urlHistoryBasePath.replace(/\\/+$/, '');\n const newFragmentWithSlash = newFragment === '' ? '' : `/${newFragment}`;\n\n const newUrlPath = `${baseWithoutSlash}${newFragmentWithSlash}${newQueryString}`;\n window.history.replaceState({}, null, newUrlPath);\n this.oldLocationHash = newFragment + newQueryString;\n\n }\n } else {\n const newQueryStringSearch = this.urlParamsFiltersOnlySearch(this.readQueryString());\n window.location.replace('#' + newFragment + newQueryStringSearch);\n this.oldLocationHash = newFragment + newQueryStringSearch;\n\n }\n};\n\n/**\n * @private\n * Filtering query parameters to select only book search param (?q=foo)\n This needs to be updated/URL system modified if future query params are to be added\n * @param {string} url\n * @return {string}\n * */\nBookReader.prototype.urlParamsFiltersOnlySearch = function(url) {\n const params = new URLSearchParams(url);\n return params.has('q') ? `?${new URLSearchParams({ q: params.get('q') })}` : '';\n};\n\n\n/**\n * Will read either the hash or URL and return the bookreader fragment\n * @return {string}\n */\nBookReader.prototype.urlReadFragment = function() {\n const { urlMode, urlHistoryBasePath } = this.options;\n if (urlMode === 'history') {\n return window.location.pathname.substr(urlHistoryBasePath.length);\n } else {\n return window.location.hash.substr(1);\n }\n};\n\n/**\n * Will read the hash return the bookreader fragment\n * @return {string}\n */\nBookReader.prototype.urlReadHashFragment = function() {\n return window.location.hash.substr(1);\n};\nexport class BookreaderUrlPlugin extends BookReader {\n init() {\n if (this.options.enableUrlPlugin) {\n this.urlPlugin = new UrlPlugin(this.options);\n this.bind(BookReader.eventNames.PostInit, () => {\n const { urlMode } = this.options;\n\n if (urlMode === 'hash') {\n this.urlPlugin.listenForHashChanges();\n }\n });\n }\n\n super.init();\n }\n}\n\nwindow.BookReader = BookreaderUrlPlugin;\nexport default BookreaderUrlPlugin;\n","var $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","var $ = require('../internals/export');\nvar iterate = require('../internals/iterate');\nvar createProperty = require('../internals/create-property');\n\n// `Object.fromEntries` method\n// https://github.com/tc39/proposal-object-from-entries\n$({ target: 'Object', stat: true }, {\n fromEntries: function fromEntries(iterable) {\n var obj = {};\n iterate(iterable, function (k, v) {\n createProperty(obj, k, v);\n }, { AS_ENTRIES: true });\n return obj;\n }\n});\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](toString(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeMatch, rx, S);\n\n if (res.done) return res.value;\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = toString(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n"],"names":["super_","UrlPlugin","options","this","bookReaderOptions","urlSchema","name","position","default","deprecated_for","urlState","urlMode","urlHistoryBasePath","urlLocationPollId","oldLocationHash","oldUserHash","searchParams","URLSearchParams","pathParams","Object","keys","forEach","key","schema","find","schemaKey","append","strPathParams","filter","s","map","join","strStrippedTrailingSlash","replace","concatenatedPath","toString","urlString","urlPath","URL","urlSearchParamsObj","fromEntries","entries","splitUrlMatches","pathname","match","urlStrSplitSlashObj","x","split","doesKeyExists","_object","_key","some","value","hasPropertyKey","pushToAddressBar","urlStrPath","urlStateToUrlString","window","history","replaceState","newUrlPath","location","hash","substr","clearInterval","setInterval","newFragment","urlStringToUrlState","path","length","search","extend","BookReader","defaultOptions","enableUrlPlugin","bookId","defaults","updateWindowTitle","urlTrackedParams","urlTrackIndex0","prototype","setup","call","locationPollId","init","bind","eventNames","PostInit","document","title","shortTitle","bookTitle","urlStartLocationPolling","fragmentChange","urlUpdateFragment","maximumCharacters","urlReadFragment","params","paramsFromFragment","updateParams","updateFromParams","trigger","stop","animating","autoStop","animationFinishedCallback","allParams","paramsFromCurrent","index","page","reduce","validParams","paramName","fragmentFromParams","currFragment","currQueryString","getLocationSearch","newQueryString","queryStringFromParams","baseWithoutSlash","newFragmentWithSlash","newQueryStringSearch","urlParamsFiltersOnlySearch","readQueryString","url","has","q","get","urlReadHashFragment","BookreaderUrlPlugin","urlPlugin","listenForHashChanges","$","$entries","target","stat","O","iterate","createProperty","iterable","obj","k","v","AS_ENTRIES","fixRegExpWellKnownSymbolLogic","anObject","toLength","requireObjectCoercible","advanceStringIndex","regExpExec","MATCH","nativeMatch","maybeCallNative","regexp","matcher","undefined","RegExp","string","rx","S","res","done","global","fullUnicode","unicode","lastIndex","result","A","n","matchStr"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[46],{8688:function(e,t,n){"use strict";n(3210),n(9600);var r,o=n(3609),i=n(3609);if(!f()){var u=".bookreader_vendor-fullscreen";o.extend(BookReader.defaultOptions,{enableVendorFullscreenPlugin:!0}),BookReader.prototype.setup=(r=BookReader.prototype.setup,function(e){r.call(this,e),this.isVendorFullscreenActive=!1}),BookReader.prototype.getInitialMode=function(e){return function(t){var n=e.call(this,t);return this.isVendorFullscreenActive&&(n=this.constMode1up),n}}(BookReader.prototype.getInitialMode),BookReader.prototype.init=function(e){return function(){e.call(this),d()&&p(this,(function(e){e.data.resize(),e.data.updateBrClasses();var t=i("#cboxOverlay"),n=i("#colorbox");s()?i(l()).append(t).append(n):i(document.body).append(t).append(n)}))}}(BookReader.prototype.init),BookReader.prototype.enterFullWindow=function(){var e=this;this.refs.$brContainer.css("opacity",0),i(window).width()<=this.onePageMinBreakpoint&&this.switchMode(this.constMode1up),this.isVendorFullscreenActive=!0,this.updateBrClasses(),this.resize(),this.jumpToIndex(this.currentIndex()),this.refs.$brContainer.animate({opacity:1},400,"linear"),i(document).on("keyup.".concat(u),(function(t){27===t.keyCode&&e.exitFullScreen()}))},BookReader.prototype.exitFullWindow=function(){this.refs.$brContainer.css("opacity",0),i(document).off("keyup"+u),this.isFullscreenActive=!1,this.updateBrClasses(),this.resize(),this.refs.$brContainer.animate({opacity:1},400,"linear")},BookReader.prototype.isFullscreen=function(){return s()||this.isVendorFullscreenActive},BookReader.prototype.toggleFullscreen=function(){this.isFullscreen()?d()?c():this.exitFullWindow():d()?a(this.refs.$br[0]):this.enterFullWindow()},BookReader.util.isMobile=f,BookReader.util.getFullscreenElement=l,BookReader.util.bindFullscreenChangeListener=p,BookReader.util.fullscreenAllowed=d,BookReader.util.requestFullscreen=a,BookReader.util.exitFullscreen=c,BookReader.util.isFullscreenActive=s}function l(){return document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement}function s(){return null!=l()}function c(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}function a(e){e.requestFullscreen?e.requestFullscreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen&&e.msRequestFullscreen()}function d(){return document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullScreenEnabled}function p(e,t){var n="fullscreenchange ",r=i.trim(n+["webkit","moz","ms"].join(n)+n);i(document).bind(r,e,t)}function f(){return void 0!==window.orientation||-1!==navigator.userAgent.indexOf("IEMobile")}},6091:function(e,t,n){var r=n(7293),o=n(1361);e.exports=function(e){return r((function(){return!!o[e]()||"​…᠎"!="​…᠎"[e]()||o[e].name!==e}))}},3111:function(e,t,n){var r=n(4488),o="["+n(1361)+"]",i=RegExp("^"+o+o+"*"),u=RegExp(o+o+"*$"),l=function(e){return function(t){var n=String(r(t));return 1&e&&(n=n.replace(i,"")),2&e&&(n=n.replace(u,"")),n}};e.exports={start:l(1),end:l(2),trim:l(3)}},1361:function(e){e.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},3210:function(e,t,n){"use strict";var r=n(2109),o=n(3111).trim;r({target:"String",proto:!0,forced:n(6091)("trim")},{trim:function(){return o(this)}})}},function(e){"use strict";e(e.s=8688)}]);
1
+ (self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[46],{8688:function(e,t,n){"use strict";n(3210),n(9600);var o,r=n(3609),i=n(3609);if(!m()){var u=".bookreader_vendor-fullscreen";r.extend(BookReader.defaultOptions,{enableVendorFullscreenPlugin:!0}),BookReader.prototype.setup=(o=BookReader.prototype.setup,function(e){o.call(this,e),this.isVendorFullscreenActive=!1}),BookReader.prototype.getInitialMode=function(e){return function(t){var n=e.call(this,t);return this.isVendorFullscreenActive&&(n=this.constMode1up),n}}(BookReader.prototype.getInitialMode),BookReader.prototype.init=function(e){return function(){e.call(this),d()&&p(this,(function(e){e.data.resize(),e.data.updateBrClasses();var t=i("#cboxOverlay"),n=i("#colorbox");s()?i(l()).append(t).append(n):i(document.body).append(t).append(n)}))}}(BookReader.prototype.init),BookReader.prototype.enterFullWindow=function(){var e=this;this.refs.$brContainer.css("opacity",0),i(window).width()<=this.onePageMinBreakpoint&&this.switchMode(this.constMode1up),this.isVendorFullscreenActive=!0,this.updateBrClasses(),this.resize(),this.jumpToIndex(this.currentIndex()),this.refs.$brContainer.animate({opacity:1},400,"linear"),i(document).on("keyup.".concat(u),(function(t){27===t.keyCode&&e.exitFullScreen()}))},BookReader.prototype.exitFullWindow=function(){this.refs.$brContainer.css("opacity",0),i(document).off("keyup"+u),this.isFullscreenActive=!1,this.updateBrClasses(),this.resize(),this.refs.$brContainer.animate({opacity:1},400,"linear")},BookReader.prototype.isFullscreen=function(){return s()||this.isVendorFullscreenActive},BookReader.prototype.toggleFullscreen=function(){this.isFullscreen()?d()?c():this.exitFullWindow():d()?a(this.refs.$br[0]):this.enterFullWindow()},BookReader.util.isMobile=m,BookReader.util.getFullscreenElement=l,BookReader.util.bindFullscreenChangeListener=p,BookReader.util.fullscreenAllowed=d,BookReader.util.requestFullscreen=a,BookReader.util.exitFullscreen=c,BookReader.util.isFullscreenActive=s}function l(){return document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement}function s(){return null!=l()}function c(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}function a(e){e.requestFullscreen?e.requestFullscreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen&&e.msRequestFullscreen()}function d(){return document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullScreenEnabled}function p(e,t){var n="fullscreenchange ",o=(n+["webkit","moz","ms"].join(n)+n).trim();i(document).on(o,e,t)}function m(){return void 0!==window.orientation||-1!==navigator.userAgent.indexOf("IEMobile")}},6091:function(e,t,n){var o=n(7293),r=n(1361);e.exports=function(e){return o((function(){return!!r[e]()||"​…᠎"!="​…᠎"[e]()||r[e].name!==e}))}},3210:function(e,t,n){"use strict";var o=n(2109),r=n(3111).trim;o({target:"String",proto:!0,forced:n(6091)("trim")},{trim:function(){return r(this)}})}},function(e){e(e.s=8688)}]);
2
2
  //# sourceMappingURL=plugin.vendor-fullscreen.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://@internetarchive/bookreader/./src/plugins/plugin.vendor-fullscreen.js","webpack://@internetarchive/bookreader/./node_modules/core-js/internals/string-trim-forced.js","webpack://@internetarchive/bookreader/./node_modules/core-js/internals/string-trim.js","webpack://@internetarchive/bookreader/./node_modules/core-js/internals/whitespaces.js","webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.string.trim.js"],"names":["super_","isMobile","EVENT_NAMESPACE","jQuery","extend","BookReader","defaultOptions","enableVendorFullscreenPlugin","prototype","setup","options","call","this","isVendorFullscreenActive","getInitialMode","params","nextMode","constMode1up","init","fullscreenAllowed","bindFullscreenChangeListener","e","data","resize","updateBrClasses","cboxOverlay","$","cbox","isFullscreenActive","getFullscreenElement","append","document","body","enterFullWindow","refs","$brContainer","css","window","width","onePageMinBreakpoint","switchMode","jumpToIndex","currentIndex","animate","opacity","on","keyCode","exitFullScreen","exitFullWindow","off","isFullscreen","toggleFullscreen","exitFullscreen","requestFullscreen","$br","util","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen","element","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullScreenEnabled","fullscreenchangeListener","event","all_events","trim","join","bind","orientation","navigator","userAgent","indexOf","fails","whitespaces","module","exports","METHOD_NAME","name","requireObjectCoercible","whitespace","ltrim","RegExp","rtrim","createMethod","TYPE","$this","string","String","replace","start","end","$trim","target","proto","forced","forcedStringTrimMethod"],"mappings":"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","file":"plugins/plugin.vendor-fullscreen.js","sourcesContent":["/* global BookReader */\n\n/**\n * Toggles browser's native fullscreen mode if available device is not mobile\n */\nif (!isMobile()) {\n const EVENT_NAMESPACE = '.bookreader_vendor-fullscreen';\n\n jQuery.extend(BookReader.defaultOptions, {\n /** @type {boolean} */\n enableVendorFullscreenPlugin: true\n });\n\n /** @override */\n BookReader.prototype.setup = (function(super_) {\n return function(options) {\n super_.call(this, options);\n\n this.isVendorFullscreenActive = false;\n };\n })(BookReader.prototype.setup);\n\n /** @override */\n BookReader.prototype.getInitialMode = (function(super_) {\n return function(params) {\n let nextMode = super_.call(this, params);\n if (this.isVendorFullscreenActive) {\n nextMode = this.constMode1up;\n }\n return nextMode;\n };\n })(BookReader.prototype.getInitialMode);\n\n /** @override */\n BookReader.prototype.init = (function(super_) {\n return function() {\n super_.call(this);\n\n if (!fullscreenAllowed()) {\n return;\n }\n // In fullscreen mode the colorbox and overlay need to be inside the fullscreen element to display properly.\n bindFullscreenChangeListener(this, (e) => {\n e.data.resize();\n e.data.updateBrClasses();\n const cboxOverlay = $('#cboxOverlay');\n const cbox = $('#colorbox');\n if (isFullscreenActive()) {\n // In full screen mode, the colorbox and overlay need\n // to be children of the fullscreen element to display properly.\n const $fullscreen = $(getFullscreenElement());\n $fullscreen.append(cboxOverlay).append(cbox);\n } else {\n // In non-fullscreen mode, the colorbox and overlay need\n // to be children of the main document body.\n $(document.body).append(cboxOverlay).append(cbox);\n }\n });\n }\n })(BookReader.prototype.init);\n\n /**\n * Start fullscreen mode\n */\n BookReader.prototype.enterFullWindow = function() {\n this.refs.$brContainer.css('opacity', 0);\n\n const windowWidth = $(window).width();\n if (windowWidth <= this.onePageMinBreakpoint) {\n this.switchMode(this.constMode1up);\n }\n\n this.isVendorFullscreenActive = true;\n this.updateBrClasses();\n\n this.resize();\n this.jumpToIndex(this.currentIndex());\n\n this.refs.$brContainer.animate({ opacity: 1 }, 400, 'linear');\n\n $(document).on(`keyup.${EVENT_NAMESPACE}`, e => {\n if (e.keyCode === 27) this.exitFullScreen();\n });\n };\n\n /**\n * Exit from fullscreen mode\n */\n BookReader.prototype.exitFullWindow = function() {\n this.refs.$brContainer.css('opacity', 0);\n\n $(document).off('keyup' + EVENT_NAMESPACE);\n\n this.isFullscreenActive = false;\n this.updateBrClasses()\n\n this.resize();\n this.refs.$brContainer.animate({ opacity: 1 }, 400, 'linear');\n };\n\n /**\n * Returns true if fullscreen mode is enabled\n *\n * @returns {boolean}\n */\n BookReader.prototype.isFullscreen = function() {\n return isFullscreenActive() || this.isVendorFullscreenActive;\n };\n\n /**\n * Toggle screen\n */\n BookReader.prototype.toggleFullscreen = function() {\n if (this.isFullscreen()) {\n if (fullscreenAllowed()) {\n exitFullscreen();\n } else {\n this.exitFullWindow();\n }\n } else {\n if (fullscreenAllowed()) {\n requestFullscreen(this.refs.$br[0]);\n } else {\n this.enterFullWindow();\n }\n }\n };\n\n /** @deprecated */\n BookReader.util.isMobile = isMobile;\n\n /** @deprecated */\n BookReader.util.getFullscreenElement = getFullscreenElement;\n\n /** @deprecated */\n BookReader.util.bindFullscreenChangeListener = bindFullscreenChangeListener;\n\n /** @deprecated */\n BookReader.util.fullscreenAllowed = fullscreenAllowed;\n\n /** @deprecated */\n BookReader.util.requestFullscreen = requestFullscreen;\n\n /** @deprecated */\n BookReader.util.exitFullscreen = exitFullscreen;\n\n /** @deprecated */\n BookReader.util.isFullscreenActive = isFullscreenActive;\n}\n\n\n/**\n * Returns the DOM element being used for fullscreen.\n *\n * @returns {HTMLElement}\n * @see https://developer.mozilla.org/en-US/docs/Web/API/DocumentOrShadowRoot/fullscreenElement\n */\nexport function getFullscreenElement() {\n return document.fullscreenElement ||\n document.webkitFullscreenElement ||\n document.mozFullScreenElement ||\n document.msFullscreenElement;\n}\n\n/**\n * Returns true if the document is in fullscreen mode.\n *\n * @returns {boolean}\n */\nexport function isFullscreenActive() {\n const fullscreenElement = getFullscreenElement();\n return fullscreenElement !== null && fullscreenElement !== undefined;\n}\n\n/**\n * Exits fullscreen mode.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/exitFullscreen\n */\nexport function exitFullscreen() {\n if (document.exitFullscreen) {\n document.exitFullscreen();\n } else if (document.webkitExitFullscreen) {\n document.webkitExitFullscreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.msExitFullscreen) {\n document.msExitFullscreen();\n }\n}\n\n/**\n * Requests fullscreen mode for the given element\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen\n */\nexport function requestFullscreen(element) {\n if (element.requestFullscreen) {\n element.requestFullscreen();\n } else if (element.webkitRequestFullscreen) {\n element.webkitRequestFullscreen();\n } else if (element.mozRequestFullScreen) {\n element.mozRequestFullScreen();\n } else if (element.msRequestFullscreen) {\n element.msRequestFullscreen();\n }\n}\n\n/**\n * Returns true if fullscreen mode is allowed on this device and document.\n *\n * @returns {boolean}\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/fullscreenEnabled\n */\nexport function fullscreenAllowed() {\n return (document.fullscreenEnabled ||\n document.webkitFullscreenEnabled ||\n document.mozFullScreenEnabled ||\n document.msFullScreenEnabled);\n}\n\n/**\n * jQuery-style binding to a fullscreenchange event.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/fullscreenchange_event\n */\nexport function bindFullscreenChangeListener(\n data, fullscreenchangeListener\n) {\n const event = 'fullscreenchange ';\n const vendor_prefixes = [\n 'webkit',\n 'moz',\n 'ms'\n ];\n const all_events = $.trim(event + vendor_prefixes.join(event) + event);\n $(document).bind(all_events, data, fullscreenchangeListener);\n}\n\n/**\n * Returns true if current device is mobile\n *\n * @returns {boolean}\n */\nexport function isMobile() {\n return (typeof window.orientation !== 'undefined') || (navigator.userAgent.indexOf('IEMobile') !== -1);\n}\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n"],"sourceRoot":""}
1
+ {"version":3,"file":"plugins/plugin.vendor-fullscreen.js","mappings":"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","sources":["webpack://@internetarchive/bookreader/./src/plugins/plugin.vendor-fullscreen.js","webpack://@internetarchive/bookreader/./node_modules/core-js/internals/string-trim-forced.js","webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.string.trim.js"],"sourcesContent":["/* global BookReader */\n\n/**\n * Toggles browser's native fullscreen mode if available device is not mobile\n */\nif (!isMobile()) {\n const EVENT_NAMESPACE = '.bookreader_vendor-fullscreen';\n\n jQuery.extend(BookReader.defaultOptions, {\n /** @type {boolean} */\n enableVendorFullscreenPlugin: true\n });\n\n /** @override */\n BookReader.prototype.setup = (function(super_) {\n return function(options) {\n super_.call(this, options);\n\n this.isVendorFullscreenActive = false;\n };\n })(BookReader.prototype.setup);\n\n /** @override */\n BookReader.prototype.getInitialMode = (function(super_) {\n return function(params) {\n let nextMode = super_.call(this, params);\n if (this.isVendorFullscreenActive) {\n nextMode = this.constMode1up;\n }\n return nextMode;\n };\n })(BookReader.prototype.getInitialMode);\n\n /** @override */\n BookReader.prototype.init = (function(super_) {\n return function() {\n super_.call(this);\n\n if (!fullscreenAllowed()) {\n return;\n }\n // In fullscreen mode the colorbox and overlay need to be inside the fullscreen element to display properly.\n bindFullscreenChangeListener(this, (e) => {\n e.data.resize();\n e.data.updateBrClasses();\n const cboxOverlay = $('#cboxOverlay');\n const cbox = $('#colorbox');\n if (isFullscreenActive()) {\n // In full screen mode, the colorbox and overlay need\n // to be children of the fullscreen element to display properly.\n const $fullscreen = $(getFullscreenElement());\n $fullscreen.append(cboxOverlay).append(cbox);\n } else {\n // In non-fullscreen mode, the colorbox and overlay need\n // to be children of the main document body.\n $(document.body).append(cboxOverlay).append(cbox);\n }\n });\n };\n })(BookReader.prototype.init);\n\n /**\n * Start fullscreen mode\n */\n BookReader.prototype.enterFullWindow = function() {\n this.refs.$brContainer.css('opacity', 0);\n\n const windowWidth = $(window).width();\n if (windowWidth <= this.onePageMinBreakpoint) {\n this.switchMode(this.constMode1up);\n }\n\n this.isVendorFullscreenActive = true;\n this.updateBrClasses();\n\n this.resize();\n this.jumpToIndex(this.currentIndex());\n\n this.refs.$brContainer.animate({ opacity: 1 }, 400, 'linear');\n\n $(document).on(`keyup.${EVENT_NAMESPACE}`, e => {\n if (e.keyCode === 27) this.exitFullScreen();\n });\n };\n\n /**\n * Exit from fullscreen mode\n */\n BookReader.prototype.exitFullWindow = function() {\n this.refs.$brContainer.css('opacity', 0);\n\n $(document).off('keyup' + EVENT_NAMESPACE);\n\n this.isFullscreenActive = false;\n this.updateBrClasses();\n\n this.resize();\n this.refs.$brContainer.animate({ opacity: 1 }, 400, 'linear');\n };\n\n /**\n * Returns true if fullscreen mode is enabled\n *\n * @returns {boolean}\n */\n BookReader.prototype.isFullscreen = function() {\n return isFullscreenActive() || this.isVendorFullscreenActive;\n };\n\n /**\n * Toggle screen\n */\n BookReader.prototype.toggleFullscreen = function() {\n if (this.isFullscreen()) {\n if (fullscreenAllowed()) {\n exitFullscreen();\n } else {\n this.exitFullWindow();\n }\n } else {\n if (fullscreenAllowed()) {\n requestFullscreen(this.refs.$br[0]);\n } else {\n this.enterFullWindow();\n }\n }\n };\n\n /** @deprecated */\n BookReader.util.isMobile = isMobile;\n\n /** @deprecated */\n BookReader.util.getFullscreenElement = getFullscreenElement;\n\n /** @deprecated */\n BookReader.util.bindFullscreenChangeListener = bindFullscreenChangeListener;\n\n /** @deprecated */\n BookReader.util.fullscreenAllowed = fullscreenAllowed;\n\n /** @deprecated */\n BookReader.util.requestFullscreen = requestFullscreen;\n\n /** @deprecated */\n BookReader.util.exitFullscreen = exitFullscreen;\n\n /** @deprecated */\n BookReader.util.isFullscreenActive = isFullscreenActive;\n}\n\n\n/**\n * Returns the DOM element being used for fullscreen.\n *\n * @returns {HTMLElement}\n * @see https://developer.mozilla.org/en-US/docs/Web/API/DocumentOrShadowRoot/fullscreenElement\n */\nexport function getFullscreenElement() {\n return document.fullscreenElement ||\n document.webkitFullscreenElement ||\n document.mozFullScreenElement ||\n document.msFullscreenElement;\n}\n\n/**\n * Returns true if the document is in fullscreen mode.\n *\n * @returns {boolean}\n */\nexport function isFullscreenActive() {\n const fullscreenElement = getFullscreenElement();\n return fullscreenElement !== null && fullscreenElement !== undefined;\n}\n\n/**\n * Exits fullscreen mode.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/exitFullscreen\n */\nexport function exitFullscreen() {\n if (document.exitFullscreen) {\n document.exitFullscreen();\n } else if (document.webkitExitFullscreen) {\n document.webkitExitFullscreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.msExitFullscreen) {\n document.msExitFullscreen();\n }\n}\n\n/**\n * Requests fullscreen mode for the given element\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen\n */\nexport function requestFullscreen(element) {\n if (element.requestFullscreen) {\n element.requestFullscreen();\n } else if (element.webkitRequestFullscreen) {\n element.webkitRequestFullscreen();\n } else if (element.mozRequestFullScreen) {\n element.mozRequestFullScreen();\n } else if (element.msRequestFullscreen) {\n element.msRequestFullscreen();\n }\n}\n\n/**\n * Returns true if fullscreen mode is allowed on this device and document.\n *\n * @returns {boolean}\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/fullscreenEnabled\n */\nexport function fullscreenAllowed() {\n return (document.fullscreenEnabled ||\n document.webkitFullscreenEnabled ||\n document.mozFullScreenEnabled ||\n document.msFullScreenEnabled);\n}\n\n/**\n * jQuery-style binding to a fullscreenchange event.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/fullscreenchange_event\n */\nexport function bindFullscreenChangeListener(\n data, fullscreenchangeListener\n) {\n const event = 'fullscreenchange ';\n const vendor_prefixes = [\n 'webkit',\n 'moz',\n 'ms'\n ];\n const all_events = (event + vendor_prefixes.join(event) + event).trim();\n $(document).on(all_events, data, fullscreenchangeListener);\n}\n\n/**\n * Returns true if current device is mobile\n *\n * @returns {boolean}\n */\nexport function isMobile() {\n return (typeof window.orientation !== 'undefined') || (navigator.userAgent.indexOf('IEMobile') !== -1);\n}\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n"],"names":["super_","isMobile","EVENT_NAMESPACE","jQuery","extend","BookReader","defaultOptions","enableVendorFullscreenPlugin","prototype","setup","options","call","this","isVendorFullscreenActive","getInitialMode","params","nextMode","constMode1up","init","fullscreenAllowed","bindFullscreenChangeListener","e","data","resize","updateBrClasses","cboxOverlay","$","cbox","isFullscreenActive","getFullscreenElement","append","document","body","enterFullWindow","refs","$brContainer","css","window","width","onePageMinBreakpoint","switchMode","jumpToIndex","currentIndex","animate","opacity","on","keyCode","exitFullScreen","exitFullWindow","off","isFullscreen","toggleFullscreen","exitFullscreen","requestFullscreen","$br","util","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen","element","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullScreenEnabled","fullscreenchangeListener","event","all_events","join","trim","orientation","navigator","userAgent","indexOf","fails","whitespaces","module","exports","METHOD_NAME","name","$trim","target","proto","forced","forcedStringTrimMethod"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ /*! For license information please see webcomponents-bundle.js.LICENSE.txt */
2
+ !function(){var t={2575:function(t,e,n){(function(){"use strict";var t;function e(t){var e=0;return function(){return e<t.length?{done:!1,value:t[e++]}:{done:!0}}}var r,o="function"==typeof Object.defineProperties?Object.defineProperty:function(t,e,n){return t==Array.prototype||t==Object.prototype||(t[e]=n.value),t},i=function(t){t=["object"==typeof globalThis&&globalThis,t,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof n.g&&n.g];for(var e=0;e<t.length;++e){var r=t[e];if(r&&r.Math==Math)return r}throw Error("Cannot find global object")}(this);function a(t,e){if(e)t:{var n=i;t=t.split(".");for(var r=0;r<t.length-1;r++){var a=t[r];if(!(a in n))break t;n=n[a]}(e=e(r=n[t=t[t.length-1]]))!=r&&null!=e&&o(n,t,{configurable:!0,writable:!0,value:e})}}function s(t){return(t={next:t})[Symbol.iterator]=function(){return this},t}function l(t){var n="undefined"!=typeof Symbol&&Symbol.iterator&&t[Symbol.iterator];return n?n.call(t):{next:e(t)}}function c(t){if(!(t instanceof Array)){t=l(t);for(var e,n=[];!(e=t.next()).done;)n.push(e.value);t=n}return t}if(a("Symbol",(function(t){function e(t,e){this.g=t,o(this,"description",{configurable:!0,writable:!0,value:e})}if(t)return t;e.prototype.toString=function(){return this.g};var n=0;return function t(r){if(this instanceof t)throw new TypeError("Symbol is not a constructor");return new e("jscomp_symbol_"+(r||"")+"_"+n++,r)}})),a("Symbol.iterator",(function(t){if(t)return t;t=Symbol("Symbol.iterator");for(var n="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),r=0;r<n.length;r++){var a=i[n[r]];"function"==typeof a&&"function"!=typeof a.prototype[t]&&o(a.prototype,t,{configurable:!0,writable:!0,value:function(){return s(e(this))}})}return t})),"function"==typeof Object.setPrototypeOf)r=Object.setPrototypeOf;else{var u;t:{var h={};try{h.__proto__={a:!0},u=h.a;break t}catch(A){}u=!1}r=u?function(t,e){if(t.__proto__=e,t.__proto__!==e)throw new TypeError(t+" is not extensible");return t}:null}var d=r;function f(){this.u=!1,this.h=null,this.Ka=void 0,this.g=1,this.da=0,this.i=null}function p(t){if(t.u)throw new TypeError("Generator is already running");t.u=!0}function _(t,e){t.i={Wa:e,$a:!0},t.g=t.da}function m(t,e){return t.g=3,{value:e}}function v(t){this.g=new f,this.h=t}function y(t,e,n,r){try{var o=e.call(t.g.h,n);if(!(o instanceof Object))throw new TypeError("Iterator result "+o+" is not an object");if(!o.done)return t.g.u=!1,o;var i=o.value}catch(e){return t.g.h=null,_(t.g,e),g(t)}return t.g.h=null,r.call(t.g,i),g(t)}function g(t){for(;t.g.g;)try{var e=t.h(t.g);if(e)return t.g.u=!1,{value:e.value,done:!1}}catch(e){t.g.Ka=void 0,_(t.g,e)}if(t.g.u=!1,t.g.i){if(e=t.g.i,t.g.i=null,e.$a)throw e.Wa;return{value:e.return,done:!0}}return{value:void 0,done:!0}}function b(t){this.next=function(e){return p(t.g),t.g.h?e=y(t,t.g.h.next,e,t.g.O):(t.g.O(e),e=g(t)),e},this.throw=function(e){return p(t.g),t.g.h?e=y(t,t.g.h.throw,e,t.g.O):(_(t.g,e),e=g(t)),e},this.return=function(e){return function(t,e){p(t.g);var n=t.g.h;return n?y(t,"return"in n?n.return:function(t){return{value:t,done:!0}},e,t.g.return):(t.g.return(e),g(t))}(t,e)},this[Symbol.iterator]=function(){return this}}function E(t,e){return e=new b(new v(e)),d&&t.prototype&&d(e,t.prototype),e}f.prototype.O=function(t){this.Ka=t},f.prototype.return=function(t){this.i={return:t},this.g=this.da},Array.from||(Array.from=function(t){return[].slice.call(t)}),Object.assign||(Object.assign=function(t){for(var e,n=[].slice.call(arguments,1),r=0;r<n.length;r++)if(e=n[r])for(var o=t,i=Object.keys(e),a=0;a<i.length;a++){var s=i[a];o[s]=e[s]}return t});var w=setTimeout;function N(){}function C(t){if(!(this instanceof C))throw new TypeError("Promises must be constructed via new");if("function"!=typeof t)throw new TypeError("not a function");this.N=0,this.Ea=!1,this.I=void 0,this.ba=[],M(t,this)}function S(t,e){for(;3===t.N;)t=t.I;0===t.N?t.ba.push(e):(t.Ea=!0,H((function(){var n=1===t.N?e.bb:e.cb;if(null===n)(1===t.N?T:O)(e.promise,t.I);else{try{var r=n(t.I)}catch(t){return void O(e.promise,t)}T(e.promise,r)}})))}function T(t,e){try{if(e===t)throw new TypeError("A promise cannot be resolved with itself.");if(e&&("object"==typeof e||"function"==typeof e)){var n=e.then;if(e instanceof C)return t.N=3,t.I=e,void D(t);if("function"==typeof n)return void M(function(t,e){return function(){t.apply(e,arguments)}}(n,e),t)}t.N=1,t.I=e,D(t)}catch(e){O(t,e)}}function O(t,e){t.N=2,t.I=e,D(t)}function D(t){2===t.N&&0===t.ba.length&&H((function(){t.Ea||"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",t.I)}));for(var e=0,n=t.ba.length;e<n;e++)S(t,t.ba[e]);t.ba=null}function x(t,e,n){this.bb="function"==typeof t?t:null,this.cb="function"==typeof e?e:null,this.promise=n}function M(t,e){var n=!1;try{t((function(t){n||(n=!0,T(e,t))}),(function(t){n||(n=!0,O(e,t))}))}catch(t){n||(n=!0,O(e,t))}}function P(t){return t&&"object"==typeof t&&t.constructor===C?t:new C((function(e){e(t)}))}C.prototype.catch=function(t){return this.then(null,t)},C.prototype.then=function(t,e){var n=new this.constructor(N);return S(this,new x(t,e,n)),n},C.prototype.finally=function(t){var e=this.constructor;return this.then((function(n){return e.resolve(t()).then((function(){return n}))}),(function(n){return e.resolve(t()).then((function(){return e.reject(n)}))}))};var A,L,j,k,F,R,H="function"==typeof setImmediate&&function(t){setImmediate(t)}||function(t){w(t,0)};if(!window.Promise){window.Promise=C,C.prototype.then=C.prototype.then,C.all=function(t){return new C((function(e,n){function r(t,a){try{if(a&&("object"==typeof a||"function"==typeof a)){var s=a.then;if("function"==typeof s)return void s.call(a,(function(e){r(t,e)}),n)}o[t]=a,0==--i&&e(o)}catch(t){n(t)}}if(!t||void 0===t.length)return n(new TypeError("Promise.all accepts an array"));var o=Array.prototype.slice.call(t);if(0===o.length)return e([]);for(var i=o.length,a=0;a<o.length;a++)r(a,o[a])}))},C.race=function(t){return new C((function(e,n){if(!t||void 0===t.length)return n(new TypeError("Promise.race accepts an array"));for(var r=0,o=t.length;r<o;r++)P(t[r]).then(e,n)}))},C.resolve=P,C.reject=function(t){return new C((function(e,n){n(t)}))};var I=document.createTextNode(""),B=[];new MutationObserver((function(){for(var t=B.length,e=0;e<t;e++)B[e]();B.splice(0,t)})).observe(I,{characterData:!0}),H=function(t){B.push(t),I.textContent=0<I.textContent.length?"":"a"}}!function(t,e){if(!(e in t)){var r=typeof n.g==typeof r?window:n.g,o=0,i=String(Math.random()),a="__symbol@@"+i,s=t.getOwnPropertyNames,l=t.getOwnPropertyDescriptor,c=t.create,u=t.keys,h=t.freeze||t,d=t.defineProperty,f=t.defineProperties,p=l(t,"getOwnPropertyNames"),_=t.prototype,m=_.hasOwnProperty,v=_.propertyIsEnumerable,y=_.toString,g=function(t,e,n){m.call(t,a)||d(t,a,{enumerable:!1,configurable:!1,writable:!1,value:{}}),t[a]["@@"+e]=n},b=function(t,e){var n=c(t);return s(e).forEach((function(t){C.call(e,t)&&M(n,t,e[t])})),n},E=function(){},w=function(t){return t!=a&&!m.call(O,t)},N=function(t){return t!=a&&m.call(O,t)},C=function(t){var e=String(t);return N(e)?m.call(this,e)&&!!this[a]&&this[a]["@@"+e]:v.call(this,t)},S=function(e){return d(_,e,{enumerable:!1,configurable:!0,get:E,set:function(t){A(this,e,{enumerable:!1,configurable:!0,writable:!0,value:t}),g(this,e,!0)}}),O[e]=d(t(e),"constructor",D),h(O[e])},T=function t(e){if(this instanceof t)throw new TypeError("Symbol is not a constructor");return S("__symbol:".concat(e||"",i,++o))},O=c(null),D={value:T},x=function(t){return O[t]},M=function(t,e,n){var r=String(e);if(N(r)){if(e=A,n.enumerable){var o=c(n);o.enumerable=!1}else o=n;e(t,r,o),g(t,r,!!n.enumerable)}else d(t,e,n);return t},P=function(t){return s(t).filter(N).map(x)};p.value=M,d(t,"defineProperty",p),p.value=P,d(t,e,p),p.value=function(t){return s(t).filter(w)},d(t,"getOwnPropertyNames",p),p.value=function(t,e){var n=P(e);return n.length?u(e).concat(n).forEach((function(n){C.call(e,n)&&M(t,n,e[n])})):f(t,e),t},d(t,"defineProperties",p),p.value=C,d(_,"propertyIsEnumerable",p),p.value=T,d(r,"Symbol",p),p.value=function(t){return(t="__symbol:".concat("__symbol:",t,i))in _?O[t]:S(t)},d(T,"for",p),p.value=function(t){if(w(t))throw new TypeError(t+" is not a symbol");if(m.call(O,t)&&"__symbol:"===(t=t.slice(10)).slice(0,10)&&(t=t.slice(10))!==i)return 0<(t=t.slice(0,t.length-i.length)).length?t:void 0},d(T,"keyFor",p),p.value=function(t,e){var n=l(t,e);return n&&N(e)&&(n.enumerable=C.call(t,e)),n},d(t,"getOwnPropertyDescriptor",p),p.value=function(t,e){return 1===arguments.length||void 0===e?c(t):b(t,e)},d(t,"create",p),p.value=function(){var t=y.call(this);return"[object String]"===t&&N(this)?"[object Symbol]":t},d(_,"toString",p);try{if(!0!==c(d({},"__symbol:",{get:function(){return d(this,"__symbol:",{value:!0})["__symbol:"]}}))["__symbol:"])throw"IE11";var A=d}catch(t){A=function(t,e,n){var r=l(_,e);delete _[e],d(t,e,n),d(_,e,r)}}}}(Object,"getOwnPropertySymbols"),A=Object,L=Symbol,k=A.defineProperty,F=A.prototype,R=F.toString,"iterator match replace search split hasInstance isConcatSpreadable unscopables species toPrimitive toStringTag".split(" ").forEach((function(t){t in L||(k(L,t,{value:L(t)}),"toStringTag"===t&&((j=A.getOwnPropertyDescriptor(F,"toString")).value=function(){var t=R.call(this),e=null==this?this:this[L.toStringTag];return null==e?t:"[object "+e+"]"},k(F,"toString",j)))})),function(t,e,n){function r(){return this}e[t]||(e[t]=function(){var e=0,n=this,o={next:function(){var t=n.length<=e;return t?{done:t}:{done:t,value:n[e++]}}};return o[t]=r,o}),n[t]||(n[t]=function(){var e=String.fromCodePoint,n=this,o=0,i=n.length,a={next:function(){var t=i<=o,r=t?"":e(n.codePointAt(o));return o+=r.length,t?{done:t}:{done:t,value:r}}};return a[t]=r,a})}(Symbol.iterator,Array.prototype,String.prototype);var U=Object.prototype.toString;Object.prototype.toString=function(){return void 0===this?"[object Undefined]":null===this?"[object Null]":U.call(this)},Object.keys=function(t){return Object.getOwnPropertyNames(t).filter((function(e){return(e=Object.getOwnPropertyDescriptor(t,e))&&e.enumerable}))},String.prototype[Symbol.iterator]&&String.prototype.codePointAt||(String.prototype[Symbol.iterator]=function t(){var e,n=this;return E(t,(function(t){if(1==t.g&&(e=0),3!=t.g)return e<n.length?t=m(t,n[e]):(t.g=0,t=void 0),t;e++,t.g=2}))}),Set.prototype[Symbol.iterator]||(Set.prototype[Symbol.iterator]=function t(){var e,n,r=this;return E(t,(function(t){if(1==t.g&&(e=[],r.forEach((function(t){e.push(t)})),n=0),3!=t.g)return n<e.length?t=m(t,e[n]):(t.g=0,t=void 0),t;n++,t.g=2}))}),Map.prototype[Symbol.iterator]||(Map.prototype[Symbol.iterator]=function t(){var e,n,r=this;return E(t,(function(t){if(1==t.g&&(e=[],r.forEach((function(t,n){e.push([n,t])})),n=0),3!=t.g)return n<e.length?t=m(t,e[n]):(t.g=0,t=void 0),t;n++,t.g=2}))});var q=document.createEvent("Event");if(q.initEvent("foo",!0,!0),q.preventDefault(),!q.defaultPrevented){var W=Event.prototype.preventDefault;Event.prototype.preventDefault=function(){this.cancelable&&(W.call(this),Object.defineProperty(this,"defaultPrevented",{get:function(){return!0},configurable:!0}))}}var G=/Trident/.test(navigator.userAgent);if(!window.Event||G&&"function"!=typeof window.Event){var V=window.Event;if(window.Event=function(t,e){e=e||{};var n=document.createEvent("Event");return n.initEvent(t,!!e.bubbles,!!e.cancelable),n},V){for(var K in V)window.Event[K]=V[K];window.Event.prototype=V.prototype}}if((!window.CustomEvent||G&&"function"!=typeof window.CustomEvent)&&(window.CustomEvent=function(t,e){e=e||{};var n=document.createEvent("CustomEvent");return n.initCustomEvent(t,!!e.bubbles,!!e.cancelable,e.detail),n},window.CustomEvent.prototype=window.Event.prototype),!window.MouseEvent||G&&"function"!=typeof window.MouseEvent){var X=window.MouseEvent;if(window.MouseEvent=function(t,e){e=e||{};var n=document.createEvent("MouseEvent");return n.initMouseEvent(t,!!e.bubbles,!!e.cancelable,e.view||window,e.detail,e.screenX,e.screenY,e.clientX,e.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget),n},X)for(var z in X)window.MouseEvent[z]=X[z];window.MouseEvent.prototype=X.prototype}Object.getOwnPropertyDescriptor(Node.prototype,"baseURI")||Object.defineProperty(Node.prototype,"baseURI",{get:function(){var t=(this.ownerDocument||this).querySelector("base[href]");return t&&t.href||window.location.href},configurable:!0,enumerable:!0});var J,$,Y=Element.prototype,Z=null!==(J=Object.getOwnPropertyDescriptor(Y,"attributes"))&&void 0!==J?J:Object.getOwnPropertyDescriptor(Node.prototype,"attributes"),Q=null!==($=null==Z?void 0:Z.get)&&void 0!==$?$:function(){return this.attributes},tt=Array.prototype.map;Y.hasOwnProperty("getAttributeNames")||(Y.getAttributeNames=function(){return tt.call(Q.call(this),(function(t){return t.name}))});var et,nt=Element.prototype;nt.hasOwnProperty("matches")||(nt.matches=null!==(et=nt.webkitMatchesSelector)&&void 0!==et?et:nt.msMatchesSelector);var rt=Node.prototype.appendChild;function ot(t){(t=t.prototype).hasOwnProperty("append")||Object.defineProperty(t,"append",{configurable:!0,enumerable:!0,writable:!0,value:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];for(n=(e=l(e)).next();!n.done;n=e.next())n=n.value,rt.call(this,"string"==typeof n?document.createTextNode(n):n)}})}ot(Document),ot(DocumentFragment),ot(Element);var it,at,st=Node.prototype.insertBefore,lt=null!==(at=null===(it=Object.getOwnPropertyDescriptor(Node.prototype,"firstChild"))||void 0===it?void 0:it.get)&&void 0!==at?at:function(){return this.firstChild};function ct(t){(t=t.prototype).hasOwnProperty("prepend")||Object.defineProperty(t,"prepend",{configurable:!0,enumerable:!0,writable:!0,value:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];n=lt.call(this);for(var r=(e=l(e)).next();!r.done;r=e.next())r=r.value,st.call(this,"string"==typeof r?document.createTextNode(r):r,n)}})}ct(Document),ct(DocumentFragment),ct(Element);var ut,ht,dt=Node.prototype.appendChild,ft=Node.prototype.removeChild,pt=null!==(ht=null===(ut=Object.getOwnPropertyDescriptor(Node.prototype,"firstChild"))||void 0===ut?void 0:ut.get)&&void 0!==ht?ht:function(){return this.firstChild};function _t(t){(t=t.prototype).hasOwnProperty("replaceChildren")||Object.defineProperty(t,"replaceChildren",{configurable:!0,enumerable:!0,writable:!0,value:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];for(;null!==(n=pt.call(this));)ft.call(this,n);for(n=(e=l(e)).next();!n.done;n=e.next())n=n.value,dt.call(this,"string"==typeof n?document.createTextNode(n):n)}})}_t(Document),_t(DocumentFragment),_t(Element);var mt,vt,yt,gt,bt=Node.prototype.insertBefore,Et=null!==(vt=null===(mt=Object.getOwnPropertyDescriptor(Node.prototype,"parentNode"))||void 0===mt?void 0:mt.get)&&void 0!==vt?vt:function(){return this.parentNode},wt=null!==(gt=null===(yt=Object.getOwnPropertyDescriptor(Node.prototype,"nextSibling"))||void 0===yt?void 0:yt.get)&&void 0!==gt?gt:function(){return this.nextSibling};function Nt(t){(t=t.prototype).hasOwnProperty("after")||Object.defineProperty(t,"after",{configurable:!0,enumerable:!0,writable:!0,value:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];if(null!==(n=Et.call(this)))for(var r=wt.call(this),o=(e=l(e)).next();!o.done;o=e.next())o=o.value,bt.call(n,"string"==typeof o?document.createTextNode(o):o,r)}})}Nt(CharacterData),Nt(Element);var Ct,St,Tt=Node.prototype.insertBefore,Ot=null!==(St=null===(Ct=Object.getOwnPropertyDescriptor(Node.prototype,"parentNode"))||void 0===Ct?void 0:Ct.get)&&void 0!==St?St:function(){return this.parentNode};function Dt(t){(t=t.prototype).hasOwnProperty("before")||Object.defineProperty(t,"before",{configurable:!0,enumerable:!0,writable:!0,value:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];if(null!==(n=Ot.call(this)))for(var r=(e=l(e)).next();!r.done;r=e.next())r=r.value,Tt.call(n,"string"==typeof r?document.createTextNode(r):r,this)}})}Dt(CharacterData),Dt(Element);var xt,Mt,Pt=Node.prototype.removeChild,At=null!==(Mt=null===(xt=Object.getOwnPropertyDescriptor(Node.prototype,"parentNode"))||void 0===xt?void 0:xt.get)&&void 0!==Mt?Mt:function(){return this.parentNode};function Lt(t){(t=t.prototype).hasOwnProperty("remove")||Object.defineProperty(t,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){var t=At.call(this);t&&Pt.call(t,this)}})}Lt(CharacterData),Lt(Element);var jt,kt,Ft=Node.prototype.insertBefore,Rt=Node.prototype.removeChild,Ht=null!==(kt=null===(jt=Object.getOwnPropertyDescriptor(Node.prototype,"parentNode"))||void 0===jt?void 0:jt.get)&&void 0!==kt?kt:function(){return this.parentNode};function It(t){(t=t.prototype).hasOwnProperty("replaceWith")||Object.defineProperty(t,"replaceWith",{configurable:!0,enumerable:!0,writable:!0,value:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];if(null!==(n=Ht.call(this))){for(var r=(e=l(e)).next();!r.done;r=e.next())r=r.value,Ft.call(n,"string"==typeof r?document.createTextNode(r):r,this);Rt.call(n,this)}}})}It(CharacterData),It(Element);var Bt=window.Element.prototype,Ut=window.HTMLElement.prototype,qt=window.SVGElement.prototype;!Ut.hasOwnProperty("classList")||Bt.hasOwnProperty("classList")||qt.hasOwnProperty("classList")||Object.defineProperty(Bt,"classList",Object.getOwnPropertyDescriptor(Ut,"classList"));var Wt=document.createElement("style");Wt.textContent="body {transition: opacity ease-in 0.2s; } \nbody[unresolved] {opacity: 0; display: block; overflow: hidden; position: relative; } \n";var Gt=document.querySelector("head");Gt.insertBefore(Wt,Gt.firstChild);var Vt=window;Vt.WebComponents=Vt.WebComponents||{flags:{}};var Kt=document.querySelector('script[src*="webcomponents-bundle"]'),Xt=/wc-(.+)/,zt={};if(!zt.noOpts){if(location.search.slice(1).split("&").forEach((function(t){var e;(t=t.split("="))[0]&&(e=t[0].match(Xt))&&(zt[e[1]]=t[1]||!0)})),Kt)for(var Jt=0,$t=void 0;$t=Kt.attributes[Jt];Jt++)"src"!==$t.name&&(zt[$t.name]=$t.value||!0);var Yt={};zt.log&&zt.log.split&&zt.log.split(",").forEach((function(t){Yt[t]=!0})),zt.log=Yt}Vt.WebComponents.flags=zt;var Zt=zt.shadydom;if(Zt){Vt.ShadyDOM=Vt.ShadyDOM||{},Vt.ShadyDOM.force=Zt;var Qt=zt.noPatch;Vt.ShadyDOM.noPatch="true"===Qt||Qt}var te=zt.register||zt.ce;function ee(){}function ne(t){return t.__shady||(t.__shady=new ee),t.__shady}function re(t){return t&&t.__shady}te&&window.customElements&&(Vt.customElements.forcePolyfill=te),function(){function t(){}function e(t,e){if(!t.childNodes.length)return[];switch(t.nodeType){case Node.DOCUMENT_NODE:return _.call(t,e);case Node.DOCUMENT_FRAGMENT_NODE:return m.call(t,e);default:return p.call(t,e)}}var n="undefined"==typeof HTMLTemplateElement,r=!(document.createDocumentFragment().cloneNode()instanceof DocumentFragment),o=!1;/Trident/.test(navigator.userAgent)&&function(){function t(t,e){if(t instanceof DocumentFragment)for(var r;r=t.firstChild;)n.call(this,r,e);else n.call(this,t,e);return t}o=!0;var e=Node.prototype.cloneNode;Node.prototype.cloneNode=function(t){return t=e.call(this,t),this instanceof DocumentFragment&&(t.__proto__=DocumentFragment.prototype),t},DocumentFragment.prototype.querySelectorAll=HTMLElement.prototype.querySelectorAll,DocumentFragment.prototype.querySelector=HTMLElement.prototype.querySelector,Object.defineProperties(DocumentFragment.prototype,{nodeType:{get:function(){return Node.DOCUMENT_FRAGMENT_NODE},configurable:!0},localName:{get:function(){},configurable:!0},nodeName:{get:function(){return"#document-fragment"},configurable:!0}});var n=Node.prototype.insertBefore;Node.prototype.insertBefore=t;var r=Node.prototype.appendChild;Node.prototype.appendChild=function(e){return e instanceof DocumentFragment?t.call(this,e,null):r.call(this,e),e};var i=Node.prototype.removeChild,a=Node.prototype.replaceChild;Node.prototype.replaceChild=function(e,n){return e instanceof DocumentFragment?(t.call(this,e,n),i.call(this,n)):a.call(this,e,n),n},Document.prototype.createDocumentFragment=function(){var t=this.createElement("df");return t.__proto__=DocumentFragment.prototype,t};var s=Document.prototype.importNode;Document.prototype.importNode=function(t,e){return e=s.call(this,t,e||!1),t instanceof DocumentFragment&&(e.__proto__=DocumentFragment.prototype),e}}();var i=Node.prototype.cloneNode,a=Document.prototype.createElement,s=Document.prototype.importNode,l=Node.prototype.removeChild,c=Node.prototype.appendChild,u=Node.prototype.replaceChild,h=DOMParser.prototype.parseFromString,d=Object.getOwnPropertyDescriptor(window.HTMLElement.prototype,"innerHTML")||{get:function(){return this.innerHTML},set:function(t){this.innerHTML=t}},f=Object.getOwnPropertyDescriptor(window.Node.prototype,"childNodes")||{get:function(){return this.childNodes}},p=Element.prototype.querySelectorAll,_=Document.prototype.querySelectorAll,m=DocumentFragment.prototype.querySelectorAll,v=function(){if(!n){var t=document.createElement("template"),e=document.createElement("template");return e.content.appendChild(document.createElement("div")),t.content.appendChild(e),0===(t=t.cloneNode(!0)).content.childNodes.length||0===t.content.firstChild.content.childNodes.length||r}}();if(n){var y=document.implementation.createHTMLDocument("template"),g=!0,b=document.createElement("style");b.textContent="template{display:none;}";var E=document.head;E.insertBefore(b,E.firstElementChild),t.prototype=Object.create(HTMLElement.prototype);var w=!document.createElement("div").hasOwnProperty("innerHTML");t.Z=function(e){if(!e.content&&e.namespaceURI===document.documentElement.namespaceURI){e.content=y.createDocumentFragment();for(var n;n=e.firstChild;)c.call(e.content,n);if(w)e.__proto__=t.prototype;else if(e.cloneNode=function(e){return t.sa(this,e)},g)try{C(e),S(e)}catch(t){g=!1}t.bootstrap(e.content)}};var N={option:["select"],thead:["table"],col:["colgroup","table"],tr:["tbody","table"],th:["tr","tbody","table"],td:["tr","tbody","table"]},C=function(e){Object.defineProperty(e,"innerHTML",{get:function(){return P(this)},set:function(e){var n=N[(/<([a-z][^/\0>\x20\t\r\n\f]+)/i.exec(e)||["",""])[1].toLowerCase()];if(n)for(var r=0;r<n.length;r++)e="<"+n[r]+">"+e+"</"+n[r]+">";for(y.body.innerHTML=e,t.bootstrap(y);this.content.firstChild;)l.call(this.content,this.content.firstChild);if(e=y.body,n)for(r=0;r<n.length;r++)e=e.lastChild;for(;e.firstChild;)c.call(this.content,e.firstChild)},configurable:!0})},S=function(t){Object.defineProperty(t,"outerHTML",{get:function(){return"<template>"+this.innerHTML+"</template>"},set:function(t){if(!this.parentNode)throw Error("Failed to set the 'outerHTML' property on 'Element': This element has no parent node.");for(y.body.innerHTML=t,t=this.ownerDocument.createDocumentFragment();y.body.firstChild;)c.call(t,y.body.firstChild);u.call(this.parentNode,t,this)},configurable:!0})};C(t.prototype),S(t.prototype),t.bootstrap=function(n){for(var r,o=0,i=(n=e(n,"template")).length;o<i&&(r=n[o]);o++)t.Z(r)},document.addEventListener("DOMContentLoaded",(function(){t.bootstrap(document)})),Document.prototype.createElement=function(){var e=a.apply(this,arguments);return"template"===e.localName&&t.Z(e),e},DOMParser.prototype.parseFromString=function(){var e=h.apply(this,arguments);return t.bootstrap(e),e},Object.defineProperty(HTMLElement.prototype,"innerHTML",{get:function(){return P(this)},set:function(e){d.set.call(this,e),t.bootstrap(this)},configurable:!0,enumerable:!0});var T=/[&\u00A0"]/g,O=/[&\u00A0<>]/g,D=function(t){switch(t){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case" ":return"&nbsp;"}},x=(b=function(t){for(var e={},n=0;n<t.length;n++)e[t[n]]=!0;return e})("area base br col command embed hr img input keygen link meta param source track wbr".split(" ")),M=b("style script xmp iframe noembed noframes plaintext noscript".split(" ")),P=function(t,e){"template"===t.localName&&(t=t.content);for(var n,r="",o=e?e(t):f.get.call(t),i=0,a=o.length;i<a&&(n=o[i]);i++){t:{var s=n,l=t,c=e;switch(s.nodeType){case Node.ELEMENT_NODE:for(var u=s.localName,h="<"+u,d=s.attributes,p=0;l=d[p];p++)h+=" "+l.name+'="'+l.value.replace(T,D)+'"';h+=">",s=x[u]?h:h+P(s,c)+"</"+u+">";break t;case Node.TEXT_NODE:s=s.data,s=l&&M[l.localName]?s:s.replace(O,D);break t;case Node.COMMENT_NODE:s="\x3c!--"+s.data+"--\x3e";break t;default:throw window.console.error(s),Error("not implemented")}}r+=s}return r}}if(n||v){t.sa=function(t,e){var n=i.call(t,!1);return this.Z&&this.Z(n),e&&(c.call(n.content,i.call(t.content,!0)),A(n.content,t.content)),n};var A=function(n,r){if(r.querySelectorAll&&0!==(r=e(r,"template")).length)for(var o,i,a=0,s=(n=e(n,"template")).length;a<s;a++)i=r[a],o=n[a],t&&t.Z&&t.Z(i),u.call(o.parentNode,L.call(i,!0),o)},L=Node.prototype.cloneNode=function(e){if(!o&&r&&this instanceof DocumentFragment){if(!e)return this.ownerDocument.createDocumentFragment();var n=j.call(this.ownerDocument,this,!0)}else n=this.nodeType===Node.ELEMENT_NODE&&"template"===this.localName&&this.namespaceURI==document.documentElement.namespaceURI?t.sa(this,e):i.call(this,e);return e&&A(n,this),n},j=Document.prototype.importNode=function(n,r){if(r=r||!1,"template"===n.localName)return t.sa(n,r);var o=s.call(this,n,r);if(r){A(o,n),n=e(o,'script:not([type]),script[type="application/javascript"],script[type="text/javascript"]');for(var i,l=0;l<n.length;l++){i=n[l],(r=a.call(document,"script")).textContent=i.textContent;for(var c,h=i.attributes,d=0;d<h.length;d++)c=h[d],r.setAttribute(c.name,c.value);u.call(i.parentNode,r,i)}}return o}}n&&(window.HTMLTemplateElement=t)}(),ee.prototype.toJSON=function(){return{}};var oe=window.ShadyDOM||{};oe.Ya=!(!Element.prototype.attachShadow||!Node.prototype.getRootNode);var ie=Object.getOwnPropertyDescriptor(Node.prototype,"firstChild");function ae(){return Document.prototype.msElementsFromPoint?"msElementsFromPoint":"elementsFromPoint"}function se(t){return(t=re(t))&&void 0!==t.firstChild}function le(t){return t instanceof ShadowRoot}function ce(t){return(t=(t=re(t))&&t.root)&&Jr(t)}oe.H=!!(ie&&ie.configurable&&ie.get),oe.ya=oe.force||!oe.Ya,oe.J=oe.noPatch||!1,oe.fa=oe.preferPerformance,oe.Aa="on-demand"===oe.J,oe.Na=navigator.userAgent.match("Trident");var ue=Element.prototype,he=ue.matches||ue.matchesSelector||ue.mozMatchesSelector||ue.msMatchesSelector||ue.oMatchesSelector||ue.webkitMatchesSelector,de=document.createTextNode(""),fe=0,pe=[];function _e(t){pe.push(t),de.textContent=fe++}new MutationObserver((function(){for(;pe.length;)try{pe.shift()()}catch(t){throw de.textContent=fe++,t}})).observe(de,{characterData:!0});var me=document.contains?function(t,e){return t.__shady_native_contains(e)}:function(t,e){return t===e||t.documentElement&&t.documentElement.__shady_native_contains(e)};function ve(t,e){for(;e;){if(e==t)return!0;e=e.__shady_parentNode}return!1}function ye(t){for(var e=t.length-1;0<=e;e--){var n=t[e],r=n.getAttribute("id")||n.getAttribute("name");r&&"length"!==r&&isNaN(r)&&(t[r]=n)}return t.item=function(e){return t[e]},t.namedItem=function(e){if("length"!==e&&isNaN(e)&&t[e])return t[e];for(var n=l(t),r=n.next();!r.done;r=n.next())if(((r=r.value).getAttribute("id")||r.getAttribute("name"))==e)return r;return null},t}function ge(t){var e=[];for(t=t.__shady_native_firstChild;t;t=t.__shady_native_nextSibling)e.push(t);return e}function be(t){var e=[];for(t=t.__shady_firstChild;t;t=t.__shady_nextSibling)e.push(t);return e}function Ee(t,e,n){if(n.configurable=!0,n.value)t[e]=n.value;else try{Object.defineProperty(t,e,n)}catch(t){}}function we(t,e,n,r){for(var o in n=void 0===n?"":n,e)r&&0<=r.indexOf(o)||Ee(t,n+o,e[o])}function Ne(t,e){for(var n in e)n in t&&Ee(t,n,e[n])}function Ce(t){var e={};return Object.getOwnPropertyNames(t).forEach((function(n){e[n]=Object.getOwnPropertyDescriptor(t,n)})),e}function Se(t,e){for(var n,r=Object.getOwnPropertyNames(e),o=0;o<r.length;o++)t[n=r[o]]=e[n]}function Te(t){return t instanceof Node?t:document.createTextNode(""+t)}function Oe(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];if(1===e.length)return Te(e[0]);n=document.createDocumentFragment();for(var r=(e=l(e)).next();!r.done;r=e.next())n.appendChild(Te(r.value));return n}var De,xe=[];function Me(t){De||(De=!0,_e(Pe)),xe.push(t)}function Pe(){De=!1;for(var t=!!xe.length;xe.length;)xe.shift()();return t}function Ae(){this.g=!1,this.addedNodes=[],this.removedNodes=[],this.oa=new Set}Pe.list=xe,Ae.prototype.flush=function(){if(this.g){this.g=!1;var t=this.takeRecords();t.length&&this.oa.forEach((function(e){e(t)}))}},Ae.prototype.takeRecords=function(){if(this.addedNodes.length||this.removedNodes.length){var t=[{addedNodes:this.addedNodes,removedNodes:this.removedNodes}];return this.addedNodes=[],this.removedNodes=[],t}return[]};var Le=/[&\u00A0"]/g,je=/[&\u00A0<>]/g;function ke(t){switch(t){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case" ":return"&nbsp;"}}function Fe(t){for(var e={},n=0;n<t.length;n++)e[t[n]]=!0;return e}var Re=Fe("area base br col command embed hr img input keygen link meta param source track wbr".split(" ")),He=Fe("style script xmp iframe noembed noframes plaintext noscript".split(" "));function Ie(t,e){"template"===t.localName&&(t=t.content);for(var n="",r=e?e(t):t.childNodes,o=0,i=r.length,a=void 0;o<i&&(a=r[o]);o++){t:{var s=a,l=t,c=e;switch(s.nodeType){case Node.ELEMENT_NODE:for(var u,h="<"+(l=s.localName),d=s.attributes,f=0;u=d[f];f++)h+=" "+u.name+'="'+u.value.replace(Le,ke)+'"';h+=">",s=Re[l]?h:h+Ie(s,c)+"</"+l+">";break t;case Node.TEXT_NODE:s=s.data,s=l&&He[l.localName]?s:s.replace(je,ke);break t;case Node.COMMENT_NODE:s="\x3c!--"+s.data+"--\x3e";break t;default:throw window.console.error(s),Error("not implemented")}}n+=s}return n}var Be=oe.H,Ue={querySelector:function(t){return this.__shady_native_querySelector(t)},querySelectorAll:function(t){return this.__shady_native_querySelectorAll(t)}},qe={};function We(t){qe[t]=function(e){return e["__shady_native_"+t]}}function Ge(t,e){for(var n in we(t,e,"__shady_native_"),e)We(n)}function Ve(t,e){e=void 0===e?[]:e;for(var n=0;n<e.length;n++){var r=e[n],o=Object.getOwnPropertyDescriptor(t,r);o&&(Object.defineProperty(t,"__shady_native_"+r,o),o.value?Ue[r]||(Ue[r]=o.value):We(r))}}var Ke=document.createTreeWalker(document,NodeFilter.SHOW_ALL,null,!1),Xe=document.createTreeWalker(document,NodeFilter.SHOW_ELEMENT,null,!1),ze=document.implementation.createHTMLDocument("inert");function Je(t){for(var e;e=t.__shady_native_firstChild;)t.__shady_native_removeChild(e)}var $e=["firstElementChild","lastElementChild","children","childElementCount"],Ye=["querySelector","querySelectorAll","append","prepend","replaceChildren"],Ze=Ce({get childNodes(){return this.__shady_childNodes},get firstChild(){return this.__shady_firstChild},get lastChild(){return this.__shady_lastChild},get childElementCount(){return this.__shady_childElementCount},get children(){return this.__shady_children},get firstElementChild(){return this.__shady_firstElementChild},get lastElementChild(){return this.__shady_lastElementChild},get shadowRoot(){return this.__shady_shadowRoot}}),Qe=Ce({get textContent(){return this.__shady_textContent},set textContent(t){this.__shady_textContent=t},get innerHTML(){return this.__shady_innerHTML},set innerHTML(t){this.__shady_innerHTML=t}}),tn=Ce({get parentElement(){return this.__shady_parentElement},get parentNode(){return this.__shady_parentNode},get nextSibling(){return this.__shady_nextSibling},get previousSibling(){return this.__shady_previousSibling},get nextElementSibling(){return this.__shady_nextElementSibling},get previousElementSibling(){return this.__shady_previousElementSibling},get className(){return this.__shady_className},set className(t){this.__shady_className=t}});function en(t){for(var e in t){var n=t[e];n&&(n.enumerable=!1)}}en(Ze),en(Qe),en(tn);var nn=oe.H||!0===oe.J,rn=nn?function(){}:function(t){var e=ne(t);e.Pa||(e.Pa=!0,Ne(t,tn))},on=nn?function(){}:function(t){var e=ne(t);e.Oa||(e.Oa=!0,Ne(t,Ze),window.customElements&&window.customElements.polyfillWrapFlushCallback&&!oe.J||Ne(t,Qe))},an="__eventWrappers"+Date.now(),sn=function(){var t=Object.getOwnPropertyDescriptor(Event.prototype,"composed");return t?function(e){return t.get.call(e)}:null}(),ln=function(){function t(){}var e=!1,n={get capture(){return e=!0,!1}};return window.addEventListener("test",t,n),window.removeEventListener("test",t,n),e}();function cn(t){if(t&&"object"==typeof t)var e=!!t.capture,n=!!t.once,r=!!t.passive,o=t.U;else e=!!t,r=n=!1;return{La:o,capture:e,once:n,passive:r,Ja:ln?t:e}}var un={blur:!0,focus:!0,focusin:!0,focusout:!0,click:!0,dblclick:!0,mousedown:!0,mouseenter:!0,mouseleave:!0,mousemove:!0,mouseout:!0,mouseover:!0,mouseup:!0,wheel:!0,beforeinput:!0,input:!0,keydown:!0,keyup:!0,compositionstart:!0,compositionupdate:!0,compositionend:!0,touchstart:!0,touchend:!0,touchmove:!0,touchcancel:!0,pointerover:!0,pointerenter:!0,pointerdown:!0,pointermove:!0,pointerup:!0,pointercancel:!0,pointerout:!0,pointerleave:!0,gotpointercapture:!0,lostpointercapture:!0,dragstart:!0,drag:!0,dragenter:!0,dragleave:!0,dragover:!0,drop:!0,dragend:!0,DOMActivate:!0,DOMFocusIn:!0,DOMFocusOut:!0,keypress:!0},hn={DOMAttrModified:!0,DOMAttributeNameChanged:!0,DOMCharacterDataModified:!0,DOMElementNameChanged:!0,DOMNodeInserted:!0,DOMNodeInsertedIntoDocument:!0,DOMNodeRemoved:!0,DOMNodeRemovedFromDocument:!0,DOMSubtreeModified:!0};function dn(t){return t instanceof Node?t.__shady_getRootNode():t}function fn(t,e){var n=[],r=t;for(t=dn(t);r;)n.push(r),r=r.__shady_assignedSlot?r.__shady_assignedSlot:r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host&&(e||r!==t)?r.host:r.__shady_parentNode;return n[n.length-1]===document&&n.push(window),n}function pn(t,e){if(!le)return t;t=fn(t,!0);for(var n,r,o=0,i=void 0,a=void 0;o<e.length;o++)if((r=dn(n=e[o]))!==i&&(a=t.indexOf(r),i=r),!le(r)||-1<a)return n}function _n(t){function e(e,n){return(e=new t(e,n)).__composed=n&&!!n.composed,e}return e.__proto__=t,e.prototype=t.prototype,e}var mn={focus:!0,blur:!0};function vn(t){return t.__target!==t.target||t.__relatedTarget!==t.relatedTarget}function yn(t,e,n){if(n=e.__handlers&&e.__handlers[t.type]&&e.__handlers[t.type][n])for(var r,o=0;(r=n[o])&&(!vn(t)||t.target!==t.relatedTarget)&&(r.call(e,t),!t.__immediatePropagationStopped);o++);}function gn(t){var e=t.composedPath(),n=e.map((function(t){return pn(t,e)})),r=t.bubbles;Object.defineProperty(t,"currentTarget",{configurable:!0,enumerable:!0,get:function(){return a}});var o=Event.CAPTURING_PHASE;Object.defineProperty(t,"eventPhase",{configurable:!0,enumerable:!0,get:function(){return o}});for(var i=e.length-1;0<=i;i--){var a=e[i];if(o=a===n[i]?Event.AT_TARGET:Event.CAPTURING_PHASE,yn(t,a,"capture"),t.ra)return}for(i=0;i<e.length;i++){var s=(a=e[i])===n[i];if((s||r)&&(o=s?Event.AT_TARGET:Event.BUBBLING_PHASE,yn(t,a,"bubble"),t.ra))return}o=0,a=null}function bn(t,e,n,r,o,i){for(var a=0;a<t.length;a++){var s=t[a],l=s.type,c=s.capture,u=s.once,h=s.passive;if(e===s.node&&n===l&&r===c&&o===u&&i===h)return a}return-1}function En(t){return Pe(),!oe.fa&&this instanceof Node&&!me(document,this)?(t.__target||Sn(t,this),gn(t)):this.__shady_native_dispatchEvent(t)}function wn(t,e,n){var r=cn(n),o=r.capture,i=r.once,a=r.passive,s=r.La;if(r=r.Ja,e){var l=typeof e;if(("function"===l||"object"===l)&&("object"!==l||e.handleEvent&&"function"==typeof e.handleEvent)){if(hn[t])return this.__shady_native_addEventListener(t,e,r);var c=s||this;if(s=e[an]){if(-1<bn(s,c,t,o,i,a))return}else e[an]=[];s=function(r){if(i&&this.__shady_removeEventListener(t,e,n),r.__target||Sn(r),c!==this){var a=Object.getOwnPropertyDescriptor(r,"currentTarget");Object.defineProperty(r,"currentTarget",{get:function(){return c},configurable:!0});var s=Object.getOwnPropertyDescriptor(r,"eventPhase");Object.defineProperty(r,"eventPhase",{configurable:!0,enumerable:!0,get:function(){return o?Event.CAPTURING_PHASE:Event.BUBBLING_PHASE}})}if(r.__previousCurrentTarget=r.currentTarget,(!le(c)&&"slot"!==c.localName||-1!=r.composedPath().indexOf(c))&&(r.composed||-1<r.composedPath().indexOf(c)))if(vn(r)&&r.target===r.relatedTarget)r.eventPhase===Event.BUBBLING_PHASE&&r.stopImmediatePropagation();else if(r.eventPhase===Event.CAPTURING_PHASE||r.bubbles||r.target===c||c instanceof Window){var u="function"===l?e.call(c,r):e.handleEvent&&e.handleEvent(r);return c!==this&&(a?(Object.defineProperty(r,"currentTarget",a),a=null):delete r.currentTarget,s?(Object.defineProperty(r,"eventPhase",s),s=null):delete r.eventPhase),u}},e[an].push({node:c,type:t,capture:o,once:i,passive:a,pb:s}),this.__handlers=this.__handlers||{},this.__handlers[t]=this.__handlers[t]||{capture:[],bubble:[]},this.__handlers[t][o?"capture":"bubble"].push(s),mn[t]||this.__shady_native_addEventListener(t,s,r)}}}function Nn(t,e,n){if(e){var r=cn(n);n=r.capture;var o=r.once,i=r.passive,a=r.La;if(r=r.Ja,hn[t])return this.__shady_native_removeEventListener(t,e,r);var s=a||this;a=void 0;var l=null;try{l=e[an]}catch(t){}l&&-1<(o=bn(l,s,t,n,o,i))&&(a=l.splice(o,1)[0].pb,l.length||(e[an]=void 0)),this.__shady_native_removeEventListener(t,a||e,r),a&&this.__handlers&&this.__handlers[t]&&-1<(e=(t=this.__handlers[t][n?"capture":"bubble"]).indexOf(a))&&t.splice(e,1)}}var Cn=Ce({get composed(){return void 0===this.__composed&&(sn?this.__composed="focusin"===this.type||"focusout"===this.type||sn(this):!1!==this.isTrusted&&(this.__composed=un[this.type])),this.__composed||!1},composedPath:function(){return this.__composedPath||(this.__composedPath=fn(this.__target,this.composed)),this.__composedPath},get target(){return pn(this.currentTarget||this.__previousCurrentTarget,this.composedPath())},get relatedTarget(){return this.__relatedTarget?(this.__relatedTargetComposedPath||(this.__relatedTargetComposedPath=fn(this.__relatedTarget,!0)),pn(this.currentTarget||this.__previousCurrentTarget,this.__relatedTargetComposedPath)):null},stopPropagation:function(){Event.prototype.stopPropagation.call(this),this.ra=!0},stopImmediatePropagation:function(){Event.prototype.stopImmediatePropagation.call(this),this.ra=this.__immediatePropagationStopped=!0}});function Sn(t,e){if(e=void 0===e?t.target:e,t.__target=e,t.__relatedTarget=t.relatedTarget,oe.H){if(!(e=Object.getPrototypeOf(t)).hasOwnProperty("__shady_patchedProto")){var n=Object.create(e);n.__shady_sourceProto=e,we(n,Cn),e.__shady_patchedProto=n}t.__proto__=e.__shady_patchedProto}else we(t,Cn)}var Tn=_n(Event),On=_n(CustomEvent),Dn=_n(MouseEvent),xn=Object.getOwnPropertyNames(Element.prototype).filter((function(t){return"on"===t.substring(0,2)})),Mn=Object.getOwnPropertyNames(HTMLElement.prototype).filter((function(t){return"on"===t.substring(0,2)}));function Pn(t){return{set:function(e){var n=ne(this),r=t.substring(2);n.T||(n.T={}),n.T[t]&&this.removeEventListener(r,n.T[t]),this.__shady_addEventListener(r,e),n.T[t]=e},get:function(){var e=re(this);return e&&e.T&&e.T[t]},configurable:!0}}function An(t,e){return{index:t,ga:[],na:e}}function Ln(t,e,n,r){var o=0,i=0,a=0,s=0,l=Math.min(e-o,r-i);if(0==o&&0==i)t:{for(a=0;a<l;a++)if(t[a]!==n[a])break t;a=l}if(e==t.length&&r==n.length){s=t.length;for(var c=n.length,u=0;u<l-a&&jn(t[--s],n[--c]);)u++;s=u}if(i+=a,r-=s,0==(e-=s)-(o+=a)&&0==r-i)return[];if(o==e){for(e=An(o,0);i<r;)e.ga.push(n[i++]);return[e]}if(i==r)return[An(o,e-o)];for(r=r-(a=i)+1,s=e-(l=o)+1,e=Array(r),c=0;c<r;c++)e[c]=Array(s),e[c][0]=c;for(c=0;c<s;c++)e[0][c]=c;for(c=1;c<r;c++)for(u=1;u<s;u++)if(t[l+u-1]===n[a+c-1])e[c][u]=e[c-1][u-1];else{var h=e[c-1][u]+1,d=e[c][u-1]+1;e[c][u]=h<d?h:d}for(l=e.length-1,a=e[0].length-1,r=e[l][a],t=[];0<l||0<a;)0==l?(t.push(2),a--):0==a?(t.push(3),l--):(s=e[l-1][a-1],(h=(c=e[l-1][a])<(u=e[l][a-1])?c<s?c:s:u<s?u:s)==s?(s==r?t.push(0):(t.push(1),r=s),l--,a--):h==c?(t.push(3),l--,r=c):(t.push(2),a--,r=u));for(t.reverse(),e=void 0,l=[],a=0;a<t.length;a++)switch(t[a]){case 0:e&&(l.push(e),e=void 0),o++,i++;break;case 1:e||(e=An(o,0)),e.na++,o++,e.ga.push(n[i]),i++;break;case 2:e||(e=An(o,0)),e.na++,o++;break;case 3:e||(e=An(o,0)),e.ga.push(n[i]),i++}return e&&l.push(e),l}function jn(t,e){return t===e}var kn=Ce({dispatchEvent:En,addEventListener:wn,removeEventListener:Nn}),Fn=null;function Rn(){return Fn||(Fn=window.ShadyCSS&&window.ShadyCSS.ScopingShim),Fn||null}function Hn(t,e,n){var r=Rn();return!(!r||"class"!==e||(r.setElementClass(t,n),0))}function In(t,e){var n=Rn();n&&n.unscopeNode(t,e)}function Bn(t,e){var n=Rn();if(!n)return!0;if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){for(n=!0,t=t.__shady_firstChild;t;t=t.__shady_nextSibling)n=n&&Bn(t,e);return n}return t.nodeType!==Node.ELEMENT_NODE||n.currentScopeForNode(t)===e}function Un(t){if(t.nodeType!==Node.ELEMENT_NODE)return"";var e=Rn();return e?e.currentScopeForNode(t):""}function qn(t,e){if(t)for(t.nodeType===Node.ELEMENT_NODE&&e(t),t=t.__shady_firstChild;t;t=t.__shady_nextSibling)t.nodeType===Node.ELEMENT_NODE&&qn(t,e)}var Wn=window.document,Gn=oe.fa,Vn=Object.getOwnPropertyDescriptor(Node.prototype,"isConnected"),Kn=Vn&&Vn.get;function Xn(t){for(var e;e=t.__shady_firstChild;)t.__shady_removeChild(e)}function zn(t){var e=re(t);if(e&&void 0!==e.qa)for(e=t.__shady_firstChild;e;e=e.__shady_nextSibling)zn(e);(t=re(t))&&(t.qa=void 0)}function Jn(t){var e=t;if(t&&"slot"===t.localName){var n=re(t);(n=n&&n.aa)&&(e=n.length?n[0]:Jn(t.__shady_nextSibling))}return e}function $n(t,e,n){if(t=(t=re(t))&&t.ea){if(e)if(e.nodeType===Node.DOCUMENT_FRAGMENT_NODE)for(var r=0,o=e.childNodes.length;r<o;r++)t.addedNodes.push(e.childNodes[r]);else t.addedNodes.push(e);n&&t.removedNodes.push(n),function(t){t.g||(t.g=!0,_e((function(){t.flush()})))}(t)}}var Yn=Ce({get parentNode(){var t=re(this);return void 0!==(t=t&&t.parentNode)?t:this.__shady_native_parentNode},get firstChild(){var t=re(this);return void 0!==(t=t&&t.firstChild)?t:this.__shady_native_firstChild},get lastChild(){var t=re(this);return void 0!==(t=t&&t.lastChild)?t:this.__shady_native_lastChild},get nextSibling(){var t=re(this);return void 0!==(t=t&&t.nextSibling)?t:this.__shady_native_nextSibling},get previousSibling(){var t=re(this);return void 0!==(t=t&&t.previousSibling)?t:this.__shady_native_previousSibling},get childNodes(){if(se(this)){var t=re(this);if(!t.childNodes){t.childNodes=[];for(var e=this.__shady_firstChild;e;e=e.__shady_nextSibling)t.childNodes.push(e)}var n=t.childNodes}else n=this.__shady_native_childNodes;return n.item=function(t){return n[t]},n},get parentElement(){var t=re(this);return(t=t&&t.parentNode)&&t.nodeType!==Node.ELEMENT_NODE&&(t=null),void 0!==t?t:this.__shady_native_parentElement},get isConnected(){if(Kn&&Kn.call(this))return!0;if(this.nodeType==Node.DOCUMENT_FRAGMENT_NODE)return!1;var t=this.ownerDocument;if(null===t||me(t,this))return!0;for(t=this;t&&!(t instanceof Document);)t=t.__shady_parentNode||(le(t)?t.host:void 0);return!!(t&&t instanceof Document)},get textContent(){if(se(this)){for(var t=[],e=this.__shady_firstChild;e;e=e.__shady_nextSibling)e.nodeType!==Node.COMMENT_NODE&&t.push(e.__shady_textContent);return t.join("")}return this.__shady_native_textContent},set textContent(t){switch(null==t&&(t=""),this.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:if(!se(this)&&oe.H){var e=this.__shady_firstChild;(e!=this.__shady_lastChild||e&&e.nodeType!=Node.TEXT_NODE)&&Xn(this),this.__shady_native_textContent=t}else Xn(this),(0<t.length||this.nodeType===Node.ELEMENT_NODE)&&this.__shady_insertBefore(document.createTextNode(t));break;default:this.nodeValue=t}},insertBefore:function(t,e){if(this.ownerDocument!==Wn&&t.ownerDocument!==Wn)return this.__shady_native_insertBefore(t,e),t;if(t===this)throw Error("Failed to execute 'appendChild' on 'Node': The new child element contains the parent.");if(e){var n=re(e);if(void 0!==(n=n&&n.parentNode)&&n!==this||void 0===n&&e.__shady_native_parentNode!==this)throw Error("Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node.")}if(e===t)return t;$n(this,t);var r=[],o=(n=Qr(this))?n.host.localName:Un(this),i=t.__shady_parentNode;if(i){var a=Un(t),s=!!n||!Qr(t)||Gn&&void 0!==this.__noInsertionPoint;i.__shady_removeChild(t,s)}i=!0;var l=(!Gn||void 0===t.__noInsertionPoint&&void 0===this.__noInsertionPoint)&&!Bn(t,o),u=n&&!t.__noInsertionPoint&&(!Gn||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE);return(u||l)&&(l&&(a=a||Un(t)),qn(t,(function(t){if(u&&"slot"===t.localName&&r.push(t),l){var e=a;Rn()&&(e&&In(t,e),(e=Rn())&&e.scopeNode(t,o))}}))),r.length&&(Vr(n),n.i.push.apply(n.i,c(r)),Br(n)),se(this)&&(function(t,e,n){xr(e,2);var r=ne(e);if(void 0!==r.firstChild&&(r.childNodes=null),t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)for(t=t.__shady_native_firstChild;t;t=t.__shady_native_nextSibling)Mr(t,e,r,n);else Mr(t,e,r,n)}(t,this,e),(s=re(this)).root?(i=!1,ce(this)&&Br(s.root)):n&&"slot"===this.localName&&(i=!1,Br(n))),i?(n=le(this)?this.host:this,e?(e=Jn(e),n.__shady_native_insertBefore(t,e)):n.__shady_native_appendChild(t)):t.ownerDocument!==this.ownerDocument&&this.ownerDocument.adoptNode(t),t},appendChild:function(t){if(this!=t||!le(t))return this.__shady_insertBefore(t)},removeChild:function(t,e){if(e=void 0!==e&&e,this.ownerDocument!==Wn)return this.__shady_native_removeChild(t);if(t.__shady_parentNode!==this)throw Error("The node to be removed is not a child of this node: "+t);$n(this,null,t);var n=Qr(t),r=n&&function(t,e){if(t.g){Kr(t);var n,r=t.h;for(n in r)for(var o=r[n],i=0;i<o.length;i++){var a=o[i];if(ve(e,a)){o.splice(i,1);var s=t.g.indexOf(a);if(0<=s&&(t.g.splice(s,1),(s=re(a.__shady_parentNode))&&s.ia&&s.ia--),i--,s=(a=re(a)).aa)for(var l=0;l<s.length;l++){var c=s[l],u=c.__shady_native_parentNode;u&&u.__shady_native_removeChild(c)}a.aa=[],a.assignedNodes=[],s=!0}}return s}}(n,t),o=re(this);if(se(this)&&(function(t,e){var n=ne(t);t===(e=ne(e)).firstChild&&(e.firstChild=n.nextSibling),t===e.lastChild&&(e.lastChild=n.previousSibling),t=n.previousSibling;var r=n.nextSibling;t&&(ne(t).nextSibling=r),r&&(ne(r).previousSibling=t),n.parentNode=n.previousSibling=n.nextSibling=void 0,void 0!==e.childNodes&&(e.childNodes=null)}(t,this),ce(this))){Br(o.root);var i=!0}if(Rn()&&!e&&n&&t.nodeType!==Node.TEXT_NODE){var a=Un(t);qn(t,(function(t){In(t,a)}))}return zn(t),n&&((e="slot"===this.localName)&&(i=!0),(r||e)&&Br(n)),i||(i=le(this)?this.host:this,(!o.root&&"slot"!==t.localName||i===t.__shady_native_parentNode)&&i.__shady_native_removeChild(t)),t},replaceChild:function(t,e){return this.__shady_insertBefore(t,e),this.__shady_removeChild(e),t},cloneNode:function(t){if("template"==this.localName)return this.__shady_native_cloneNode(t);var e=this.__shady_native_cloneNode(!1);if(t&&e.nodeType!==Node.ATTRIBUTE_NODE){t=this.__shady_firstChild;for(var n;t;t=t.__shady_nextSibling)n=t.__shady_cloneNode(!0),e.__shady_appendChild(n)}return e},getRootNode:function(t){if(this&&this.nodeType){var e=ne(this),n=e.qa;return void 0===n&&(le(this)?(n=this,e.qa=n):(n=(n=this.__shady_parentNode)?n.__shady_getRootNode(t):this,document.documentElement.__shady_native_contains(this)&&(e.qa=n))),n}},contains:function(t){return ve(this,t)}}),Zn=Ce({get assignedSlot(){var t=this.__shady_parentNode;return(t=t&&t.__shady_shadowRoot)&&Ur(t),(t=re(this))&&t.assignedSlot||null}});function Qn(t,e,n){var r=[];return tr(t,e,n,r),r}function tr(t,e,n,r){for(t=t.__shady_firstChild;t;t=t.__shady_nextSibling){var o;if(o=t.nodeType===Node.ELEMENT_NODE){var i=e,a=n,s=r,l=i(o=t);l&&s.push(o),a&&a(l)?o=l:(tr(o,i,a,s),o=void 0)}if(o)break}}var er={get firstElementChild(){var t=re(this);if(t&&void 0!==t.firstChild){for(t=this.__shady_firstChild;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__shady_nextSibling;return t}return this.__shady_native_firstElementChild},get lastElementChild(){var t=re(this);if(t&&void 0!==t.lastChild){for(t=this.__shady_lastChild;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__shady_previousSibling;return t}return this.__shady_native_lastElementChild},get children(){return se(this)?ye(Array.prototype.filter.call(be(this),(function(t){return t.nodeType===Node.ELEMENT_NODE}))):this.__shady_native_children},get childElementCount(){var t=this.__shady_children;return t?t.length:0}},nr=Ce((er.append=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];this.__shady_insertBefore(Oe.apply(null,c(e)),null)},er.prepend=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];this.__shady_insertBefore(Oe.apply(null,c(e)),this.__shady_firstChild)},er.replaceChildren=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];for(;null!==(n=this.__shady_firstChild);)this.__shady_removeChild(n);this.__shady_insertBefore(Oe.apply(null,c(e)),null)},er)),rr=Ce({querySelector:function(t){return Qn(this,(function(e){return he.call(e,t)}),(function(t){return!!t}))[0]||null},querySelectorAll:function(t,e){if(e){e=Array.prototype.slice.call(this.__shady_native_querySelectorAll(t));var n=this.__shady_getRootNode();return ye(e.filter((function(t){return t.__shady_getRootNode()==n})))}return ye(Qn(this,(function(e){return he.call(e,t)})))}}),or=oe.fa&&!oe.J?Se({},nr):nr;Se(nr,rr);var ir=Ce({after:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];if(null!==(n=this.__shady_parentNode)){var r=this.__shady_nextSibling;n.__shady_insertBefore(Oe.apply(null,c(e)),r)}},before:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];null!==(n=this.__shady_parentNode)&&n.__shady_insertBefore(Oe.apply(null,c(e)),this)},remove:function(){var t=this.__shady_parentNode;null!==t&&t.__shady_removeChild(this)},replaceWith:function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];if(null!==(n=this.__shady_parentNode)){var r=this.__shady_nextSibling;n.__shady_removeChild(this),n.__shady_insertBefore(Oe.apply(null,c(e)),r)}}}),ar=window.document;function sr(t,e){if("slot"===e)ce(t=t.__shady_parentNode)&&Br(re(t).root);else if("slot"===t.localName&&"name"===e&&(e=Qr(t))){if(e.g){Kr(e);var n=t.Qa,r=Xr(t);if(r!==n){var o=(n=e.h[n]).indexOf(t);0<=o&&n.splice(o,1),(n=e.h[r]||(e.h[r]=[])).push(t),1<n.length&&(e.h[r]=zr(n))}}Br(e)}}var lr=Ce({get previousElementSibling(){var t=re(this);if(t&&void 0!==t.previousSibling){for(t=this.__shady_previousSibling;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__shady_previousSibling;return t}return this.__shady_native_previousElementSibling},get nextElementSibling(){var t=re(this);if(t&&void 0!==t.nextSibling){for(t=this.__shady_nextSibling;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__shady_nextSibling;return t}return this.__shady_native_nextElementSibling},get slot(){return this.getAttribute("slot")},set slot(t){this.__shady_setAttribute("slot",t)},get className(){return this.getAttribute("class")||""},set className(t){this.__shady_setAttribute("class",t)},setAttribute:function(t,e){this.ownerDocument!==ar?this.__shady_native_setAttribute(t,e):Hn(this,t,e)||(this.__shady_native_setAttribute(t,e),sr(this,t))},removeAttribute:function(t){this.ownerDocument!==ar?this.__shady_native_removeAttribute(t):Hn(this,t,"")?""===this.getAttribute(t)&&this.__shady_native_removeAttribute(t):(this.__shady_native_removeAttribute(t),sr(this,t))}});oe.fa||xn.forEach((function(t){lr[t]=Pn(t)}));var cr=Ce({attachShadow:function(t){if(!this)throw Error("Must provide a host.");if(!t)throw Error("Not enough arguments.");if(t.shadyUpgradeFragment&&!oe.Na){var e=t.shadyUpgradeFragment;if(e.__proto__=ShadowRoot.prototype,Ir(e,this,t),Pr(e,e),t=e.__noInsertionPoint?null:e.querySelectorAll("slot"),e.__noInsertionPoint=void 0,t&&t.length){var n=e;Vr(n),n.i.push.apply(n.i,c(t)),Br(e)}e.host.__shady_native_appendChild(e)}else e=new Hr(kr,this,t);return this.__CE_shadowRoot=e},get shadowRoot(){var t=re(this);return t&&t.gb||null}});Se(lr,cr);var ur=document.implementation.createHTMLDocument("inert"),hr=Ce({get innerHTML(){return se(this)?Ie("template"===this.localName?this.content:this,be):this.__shady_native_innerHTML},set innerHTML(t){if("template"===this.localName)this.__shady_native_innerHTML=t;else{Xn(this);var e=this.localName||"div";for(e=this.namespaceURI&&this.namespaceURI!==ur.namespaceURI?ur.createElementNS(this.namespaceURI,e):ur.createElement(e),oe.H?e.__shady_native_innerHTML=t:e.innerHTML=t;t=e.__shady_firstChild;)this.__shady_insertBefore(t)}}}),dr=Ce({blur:function(){var t=re(this);(t=(t=t&&t.root)&&t.activeElement)?t.__shady_blur():this.__shady_native_blur()}});oe.fa||Mn.forEach((function(t){dr[t]=Pn(t)}));var fr=Ce({assignedNodes:function(t){if("slot"===this.localName){var e=this.__shady_getRootNode();return e&&le(e)&&Ur(e),(e=re(this))&&(t&&t.flatten?e.aa:e.assignedNodes)||[]}},addEventListener:function(t,e,n){if("slot"!==this.localName||"slotchange"===t)wn.call(this,t,e,n);else{"object"!=typeof n&&(n={capture:!!n});var r=this.__shady_parentNode;if(!r)throw Error("ShadyDOM cannot attach event to slot unless it has a `parentNode`");n.U=this,r.__shady_addEventListener(t,e,n)}},removeEventListener:function(t,e,n){if("slot"!==this.localName||"slotchange"===t)Nn.call(this,t,e,n);else{"object"!=typeof n&&(n={capture:!!n});var r=this.__shady_parentNode;if(!r)throw Error("ShadyDOM cannot attach event to slot unless it has a `parentNode`");n.U=this,r.__shady_removeEventListener(t,e,n)}}}),pr=Ce({getElementById:function(t){return""===t?null:Qn(this,(function(e){return e.id==t}),(function(t){return!!t}))[0]||null}});function _r(t,e){for(var n;e&&!t.has(n=e.__shady_getRootNode());)e=n.host;return e}var mr="__shady_native_"+ae(),vr=Ce({get activeElement(){var t=oe.H?document.__shady_native_activeElement:document.activeElement;if(!t||!t.nodeType)return null;var e=!!le(this);if(!(this===document||e&&this.host!==t&&this.host.__shady_native_contains(t)))return null;for(e=Qr(t);e&&e!==this;)e=Qr(t=e.host);return this===document?e?null:t:e===this?t:null},elementsFromPoint:function(t,e){t=[].slice.call(document[mr](t,e)),e=function(t){var e=new Set;for(e.add(t);le(t)&&t.host;)t=t.host.__shady_getRootNode(),e.add(t);return e}(this);for(var n=new Set,r=0;r<t.length;r++)n.add(_r(e,t[r]));var o=[];return n.forEach((function(t){return o.push(t)})),o},elementFromPoint:function(t,e){return this.__shady_elementsFromPoint(t,e)[0]||null}}),yr=window.document,gr=Ce({importNode:function(t,e){if(t.ownerDocument!==yr||"template"===t.localName)return this.__shady_native_importNode(t,e);var n=this.__shady_native_importNode(t,!1);if(e)for(t=t.__shady_firstChild;t;t=t.__shady_nextSibling)e=this.__shady_importNode(t,!0),n.__shady_appendChild(e);return n}}),br=Ce({dispatchEvent:En,addEventListener:wn.bind(window),removeEventListener:Nn.bind(window)}),Er={};Object.getOwnPropertyDescriptor(HTMLElement.prototype,"parentElement")&&(Er.parentElement=Yn.parentElement),Object.getOwnPropertyDescriptor(HTMLElement.prototype,"contains")&&(Er.contains=Yn.contains),Object.getOwnPropertyDescriptor(HTMLElement.prototype,"children")&&(Er.children=nr.children),Object.getOwnPropertyDescriptor(HTMLElement.prototype,"innerHTML")&&(Er.innerHTML=hr.innerHTML),Object.getOwnPropertyDescriptor(HTMLElement.prototype,"className")&&(Er.className=lr.className);var wr={EventTarget:[kn],Node:[Yn,window.EventTarget?null:kn],Text:[Zn],Comment:[Zn],CDATASection:[Zn],ProcessingInstruction:[Zn],Element:[lr,nr,ir,Zn,!oe.H||"innerHTML"in Element.prototype?hr:null,window.HTMLSlotElement?null:fr],HTMLElement:[dr,Er],HTMLSlotElement:[fr],DocumentFragment:[or,pr],Document:[gr,or,pr,vr],Window:[br],CharacterData:[ir]},Nr=oe.H?null:["innerHTML","textContent"];function Cr(t,e,n,r){e.forEach((function(e){return t&&e&&we(t,e,n,r)}))}function Sr(t){var e,n=t?null:Nr;for(e in wr)Cr(window[e]&&window[e].prototype,wr[e],t,n)}function Tr(t){return t.__shady_protoIsPatched=!0,Cr(t,wr.EventTarget),Cr(t,wr.Node),Cr(t,wr.Element),Cr(t,wr.HTMLElement),Cr(t,wr.HTMLSlotElement),t}["Text","Comment","CDATASection","ProcessingInstruction"].forEach((function(t){var e=window[t],n=Object.create(e.prototype);n.__shady_protoIsPatched=!0,Cr(n,wr.EventTarget),Cr(n,wr.Node),wr[t]&&Cr(n,wr[t]),e.prototype.__shady_patchedProto=n}));var Or=oe.Aa,Dr=oe.H;function xr(t,e){if(Or&&!t.__shady_protoIsPatched&&!le(t)){var n=Object.getPrototypeOf(t),r=n.hasOwnProperty("__shady_patchedProto")&&n.__shady_patchedProto;r||(Tr(r=Object.create(n)),n.__shady_patchedProto=r),Object.setPrototypeOf(t,r)}Dr||(1===e?rn(t):2===e&&on(t))}function Mr(t,e,n,r){xr(t,1),r=r||null;var o=ne(t),i=r?ne(r):null;o.previousSibling=r?i.previousSibling:e.__shady_lastChild,(i=re(o.previousSibling))&&(i.nextSibling=t),(i=re(o.nextSibling=r))&&(i.previousSibling=t),o.parentNode=e,r?r===n.firstChild&&(n.firstChild=t):(n.lastChild=t,n.firstChild||(n.firstChild=t)),n.childNodes=null}function Pr(t,e){var n=ne(t);if(e||void 0===n.firstChild){n.childNodes=null;var r=n.firstChild=t.__shady_native_firstChild;for(n.lastChild=t.__shady_native_lastChild,xr(t,2),n=r,r=void 0;n;n=n.__shady_native_nextSibling){var o=ne(n);o.parentNode=e||t,o.nextSibling=n.__shady_native_nextSibling,o.previousSibling=r||null,r=n,xr(n,1)}}}var Ar=Ce({addEventListener:function(t,e,n){"object"!=typeof n&&(n={capture:!!n}),n.U=n.U||this,this.host.__shady_addEventListener(t,e,n)},removeEventListener:function(t,e,n){"object"!=typeof n&&(n={capture:!!n}),n.U=n.U||this,this.host.__shady_removeEventListener(t,e,n)}});function Lr(t,e){we(t,Ar,e),we(t,vr,e),we(t,hr,e),we(t,nr,e),oe.J&&!e?(we(t,Yn,e),we(t,pr,e)):oe.H||(we(t,tn),we(t,Ze),we(t,Qe))}var jr,kr={},Fr=oe.deferConnectionCallbacks&&"loading"===document.readyState;function Rr(t){var e=[];do{e.unshift(t)}while(t=t.__shady_parentNode);return e}function Hr(t,e,n){if(t!==kr)throw new TypeError("Illegal constructor");this.g=null,Ir(this,e,n)}function Ir(t,e,n){if(t.host=e,t.mode=n&&n.mode,Pr(t.host),(e=ne(t.host)).root=t,e.gb="closed"!==t.mode?t:null,(e=ne(t)).firstChild=e.lastChild=e.parentNode=e.nextSibling=e.previousSibling=null,oe.preferPerformance)for(;e=t.host.__shady_native_firstChild;)t.host.__shady_native_removeChild(e);else Br(t)}function Br(t){t.Y||(t.Y=!0,Me((function(){return Ur(t)})))}function Ur(t){var e;if(e=t.Y){for(var n;t;)t.Y&&(n=t),le(t=(e=t).host.__shady_getRootNode())&&(e=re(e.host))&&0<e.ia||(t=void 0);e=n}(n=e)&&n._renderSelf()}function qr(t,e,n){var r=ne(e),o=r.ua;r.ua=null,n||(n=(t=t.h[e.__shady_slot||"__catchall"])&&t[0]),n?(ne(n).assignedNodes.push(e),r.assignedSlot=n):r.assignedSlot=void 0,o!==r.assignedSlot&&r.assignedSlot&&(ne(r.assignedSlot).xa=!0)}function Wr(t,e,n){for(var r=0,o=void 0;r<n.length&&(o=n[r]);r++)if("slot"==o.localName){var i=re(o).assignedNodes;i&&i.length&&Wr(t,e,i)}else e.push(n[r])}function Gr(t,e){e.__shady_native_dispatchEvent(new Event("slotchange")),(e=re(e)).assignedSlot&&Gr(t,e.assignedSlot)}function Vr(t){t.i=t.i||[],t.g=t.g||[],t.h=t.h||{}}function Kr(t){if(t.i&&t.i.length){for(var e,n=t.i,r=0;r<n.length;r++){var o=n[r];Pr(o);var i=o.__shady_parentNode;Pr(i),(i=re(i)).ia=(i.ia||0)+1,i=Xr(o),t.h[i]?((e=e||{})[i]=!0,t.h[i].push(o)):t.h[i]=[o],t.g.push(o)}if(e)for(var a in e)t.h[a]=zr(t.h[a]);t.i=[]}}function Xr(t){var e=t.name||t.getAttribute("name")||"__catchall";return t.Qa=e}function zr(t){return t.sort((function(t,e){t=Rr(t);for(var n=Rr(e),r=0;r<t.length;r++){e=t[r];var o=n[r];if(e!==o)return(t=be(e.__shady_parentNode)).indexOf(e)-t.indexOf(o)}}))}function Jr(t){return Kr(t),!(!t.g||!t.g.length)}if(Hr.prototype._renderSelf=function(){var t=Fr;if(Fr=!0,this.Y=!1,this.g){Kr(this);for(var e,n=0;n<this.g.length;n++){var r=re(e=this.g[n]),o=r.assignedNodes;if(r.assignedNodes=[],r.aa=[],r.Ga=o)for(r=0;r<o.length;r++){var i=re(o[r]);i.ua=i.assignedSlot,i.assignedSlot===e&&(i.assignedSlot=null)}}for(n=this.host.__shady_firstChild;n;n=n.__shady_nextSibling)qr(this,n);for(n=0;n<this.g.length;n++){if(!(o=re(e=this.g[n])).assignedNodes.length)for(r=e.__shady_firstChild;r;r=r.__shady_nextSibling)qr(this,r,e);if((r=(r=re(e.__shady_parentNode))&&r.root)&&(Jr(r)||r.Y)&&r._renderSelf(),Wr(this,o.aa,o.assignedNodes),r=o.Ga){for(i=0;i<r.length;i++)re(r[i]).ua=null;o.Ga=null,r.length>o.assignedNodes.length&&(o.xa=!0)}o.xa&&(o.xa=!1,Gr(this,e))}for(e=this.g,n=[],o=0;o<e.length;o++)(i=re(r=e[o].__shady_parentNode))&&i.root||!(0>n.indexOf(r))||n.push(r);for(e=0;e<n.length;e++){for(o=(i=n[e])===this?this.host:i,r=[],i=i.__shady_firstChild;i;i=i.__shady_nextSibling)if("slot"==i.localName)for(var a=re(i).aa,s=0;s<a.length;s++)r.push(a[s]);else r.push(i);i=ge(o),a=Ln(r,r.length,i,i.length);for(var l=s=0,c=void 0;s<a.length&&(c=a[s]);s++){for(var u=0,h=void 0;u<c.ga.length&&(h=c.ga[u]);u++)h.__shady_native_parentNode===o&&o.__shady_native_removeChild(h),i.splice(c.index+l,1);l-=c.na}for(l=0,c=void 0;l<a.length&&(c=a[l]);l++)for(s=i[c.index],u=c.index;u<c.index+c.na;u++)h=r[u],o.__shady_native_insertBefore(h,s),i.splice(u,0,h)}}if(!oe.preferPerformance&&!this.Fa)for(n=this.host.__shady_firstChild;n;n=n.__shady_nextSibling)e=re(n),n.__shady_native_parentNode!==this.host||"slot"!==n.localName&&e.assignedSlot||this.host.__shady_native_removeChild(n);this.Fa=!0,Fr=t,jr&&jr()},function(t){t.__proto__=DocumentFragment.prototype,Lr(t,"__shady_"),Lr(t),Object.defineProperties(t,{nodeType:{value:Node.DOCUMENT_FRAGMENT_NODE,configurable:!0},nodeName:{value:"#document-fragment",configurable:!0},nodeValue:{value:null,configurable:!0}}),["localName","namespaceURI","prefix"].forEach((function(e){Object.defineProperty(t,e,{value:void 0,configurable:!0})})),["ownerDocument","baseURI","isConnected"].forEach((function(e){Object.defineProperty(t,e,{get:function(){return this.host[e]},configurable:!0})}))}(Hr.prototype),window.customElements&&window.customElements.define&&oe.ya&&!oe.preferPerformance){var $r=new Map;jr=function(){var t=[];$r.forEach((function(e,n){t.push([n,e])})),$r.clear();for(var e=0;e<t.length;e++){var n=t[e][0];t[e][1]?n.__shadydom_connectedCallback():n.__shadydom_disconnectedCallback()}},Fr&&document.addEventListener("readystatechange",(function(){Fr=!1,jr()}),{once:!0});var Yr=window.customElements.define,Zr=function(t,e){var n=e.prototype.connectedCallback,r=e.prototype.disconnectedCallback;Yr.call(window.customElements,t,function(t,e,n){var r=0,o="__isConnected"+r++;return(e||n)&&(t.prototype.connectedCallback=t.prototype.__shadydom_connectedCallback=function(){Fr?$r.set(this,!0):this[o]||(this[o]=!0,e&&e.call(this))},t.prototype.disconnectedCallback=t.prototype.__shadydom_disconnectedCallback=function(){Fr?this.isConnected||$r.set(this,!1):this[o]&&(this[o]=!1,n&&n.call(this))}),t}(e,n,r)),e.prototype.connectedCallback=n,e.prototype.disconnectedCallback=r};window.customElements.define=Zr,Object.defineProperty(window.CustomElementRegistry.prototype,"define",{value:Zr,configurable:!0})}function Qr(t){if(le(t=t.__shady_getRootNode()))return t}function to(t){this.node=t}function eo(t){Object.defineProperty(to.prototype,t,{get:function(){return this.node["__shady_"+t]},set:function(e){this.node["__shady_"+t]=e},configurable:!0})}(t=to.prototype).addEventListener=function(t,e,n){return this.node.__shady_addEventListener(t,e,n)},t.removeEventListener=function(t,e,n){return this.node.__shady_removeEventListener(t,e,n)},t.appendChild=function(t){return this.node.__shady_appendChild(t)},t.insertBefore=function(t,e){return this.node.__shady_insertBefore(t,e)},t.removeChild=function(t){return this.node.__shady_removeChild(t)},t.replaceChild=function(t,e){return this.node.__shady_replaceChild(t,e)},t.cloneNode=function(t){return this.node.__shady_cloneNode(t)},t.getRootNode=function(t){return this.node.__shady_getRootNode(t)},t.contains=function(t){return this.node.__shady_contains(t)},t.dispatchEvent=function(t){return this.node.__shady_dispatchEvent(t)},t.setAttribute=function(t,e){this.node.__shady_setAttribute(t,e)},t.getAttribute=function(t){return this.node.__shady_native_getAttribute(t)},t.hasAttribute=function(t){return this.node.__shady_native_hasAttribute(t)},t.removeAttribute=function(t){this.node.__shady_removeAttribute(t)},t.attachShadow=function(t){return this.node.__shady_attachShadow(t)},t.focus=function(){this.node.__shady_native_focus()},t.blur=function(){this.node.__shady_blur()},t.importNode=function(t,e){if(this.node.nodeType===Node.DOCUMENT_NODE)return this.node.__shady_importNode(t,e)},t.getElementById=function(t){if(this.node.nodeType===Node.DOCUMENT_NODE)return this.node.__shady_getElementById(t)},t.elementsFromPoint=function(t,e){return this.node.__shady_elementsFromPoint(t,e)},t.elementFromPoint=function(t,e){return this.node.__shady_elementFromPoint(t,e)},t.querySelector=function(t){return this.node.__shady_querySelector(t)},t.querySelectorAll=function(t,e){return this.node.__shady_querySelectorAll(t,e)},t.assignedNodes=function(t){if("slot"===this.node.localName)return this.node.__shady_assignedNodes(t)},t.append=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];return this.node.__shady_append.apply(this.node,c(e))},t.prepend=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];return this.node.__shady_prepend.apply(this.node,c(e))},t.after=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];return this.node.__shady_after.apply(this.node,c(e))},t.before=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];return this.node.__shady_before.apply(this.node,c(e))},t.remove=function(){return this.node.__shady_remove()},t.replaceWith=function(t){for(var e=[],n=0;n<arguments.length;++n)e[n]=arguments[n];return this.node.__shady_replaceWith.apply(this.node,c(e))},i.Object.defineProperties(to.prototype,{activeElement:{configurable:!0,enumerable:!0,get:function(){if(le(this.node)||this.node.nodeType===Node.DOCUMENT_NODE)return this.node.__shady_activeElement}},_activeElement:{configurable:!0,enumerable:!0,get:function(){return this.activeElement}},host:{configurable:!0,enumerable:!0,get:function(){if(le(this.node))return this.node.host}},parentNode:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_parentNode}},firstChild:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_firstChild}},lastChild:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_lastChild}},nextSibling:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_nextSibling}},previousSibling:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_previousSibling}},childNodes:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_childNodes}},parentElement:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_parentElement}},firstElementChild:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_firstElementChild}},lastElementChild:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_lastElementChild}},nextElementSibling:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_nextElementSibling}},previousElementSibling:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_previousElementSibling}},children:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_children}},childElementCount:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_childElementCount}},shadowRoot:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_shadowRoot}},assignedSlot:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_assignedSlot}},isConnected:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_isConnected}},innerHTML:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_innerHTML},set:function(t){this.node.__shady_innerHTML=t}},textContent:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_textContent},set:function(t){this.node.__shady_textContent=t}},slot:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_slot},set:function(t){this.node.__shady_slot=t}},className:{configurable:!0,enumerable:!0,get:function(){return this.node.__shady_className},set:function(t){this.node.__shady_className=t}}}),xn.forEach((function(t){return eo(t)})),Mn.forEach((function(t){return eo(t)}));var no=new WeakMap;function ro(t){if(le(t)||t instanceof to)return t;var e=no.get(t);return e||(e=new to(t),no.set(t,e)),e}if(oe.ya){var oo=oe.H?function(t){return t}:function(t){return on(t),rn(t),t},io={inUse:oe.ya,patch:oo,isShadyRoot:le,enqueue:Me,flush:Pe,flushInitial:function(t){!t.Fa&&t.Y&&Ur(t)},settings:oe,filterMutations:function(t,e){var n=e.getRootNode();return t.map((function(t){var e=n===t.target.getRootNode();if(e&&t.addedNodes){if((e=[].slice.call(t.addedNodes).filter((function(t){return n===t.getRootNode()}))).length)return t=Object.create(t),Object.defineProperty(t,"addedNodes",{value:e,configurable:!0}),t}else if(e)return t})).filter((function(t){return t}))},observeChildren:function(t,e){var n=ne(t);n.ea||(n.ea=new Ae),n.ea.oa.add(e);var r=n.ea;return{Ra:e,X:r,Sa:t,takeRecords:function(){return r.takeRecords()}}},unobserveChildren:function(t){var e=t&&t.X;e&&(e.oa.delete(t.Ra),e.oa.size||(ne(t.Sa).ea=null))},deferConnectionCallbacks:oe.deferConnectionCallbacks,preferPerformance:oe.preferPerformance,handlesDynamicScoping:!0,wrap:oe.J?ro:oo,wrapIfNeeded:!0===oe.J?ro:function(t){return t},Wrapper:to,composedPath:function(t){return t.__composedPath||(t.__composedPath=fn(t.target,!0)),t.__composedPath},noPatch:oe.J,patchOnDemand:oe.Aa,nativeMethods:Ue,nativeTree:qe,patchElementProto:Tr};window.ShadyDOM=io,function(){var t=["dispatchEvent","addEventListener","removeEventListener"];window.EventTarget?(Ve(window.EventTarget.prototype,t),void 0===window.__shady_native_addEventListener&&Ve(Window.prototype,t)):(Ve(Node.prototype,t),Ve(Window.prototype,t)),Be?Ve(Node.prototype,"parentNode firstChild lastChild previousSibling nextSibling childNodes parentElement textContent".split(" ")):Ge(Node.prototype,{parentNode:{get:function(){return Ke.currentNode=this,Ke.parentNode()}},firstChild:{get:function(){return Ke.currentNode=this,Ke.firstChild()}},lastChild:{get:function(){return Ke.currentNode=this,Ke.lastChild()}},previousSibling:{get:function(){return Ke.currentNode=this,Ke.previousSibling()}},nextSibling:{get:function(){return Ke.currentNode=this,Ke.nextSibling()}},childNodes:{get:function(){var t=[];Ke.currentNode=this;for(var e=Ke.firstChild();e;)t.push(e),e=Ke.nextSibling();return t}},parentElement:{get:function(){return Xe.currentNode=this,Xe.parentNode()}},textContent:{get:function(){switch(this.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:for(var t,e=document.createTreeWalker(this,NodeFilter.SHOW_TEXT,null,!1),n="";t=e.nextNode();)n+=t.nodeValue;return n;default:return this.nodeValue}},set:function(t){switch(null==t&&(t=""),this.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:Je(this),(0<t.length||this.nodeType===Node.ELEMENT_NODE)&&this.__shady_native_insertBefore(document.createTextNode(t),void 0);break;default:this.nodeValue=t}}}}),Ve(Node.prototype,"appendChild insertBefore removeChild replaceChild cloneNode contains".split(" ")),Ve(HTMLElement.prototype,["parentElement","contains"]),t={firstElementChild:{get:function(){return Xe.currentNode=this,Xe.firstChild()}},lastElementChild:{get:function(){return Xe.currentNode=this,Xe.lastChild()}},children:{get:function(){var t=[];Xe.currentNode=this;for(var e=Xe.firstChild();e;)t.push(e),e=Xe.nextSibling();return ye(t)}},childElementCount:{get:function(){return this.children?this.children.length:0}}},Be?(Ve(Element.prototype,$e),Ve(Element.prototype,["previousElementSibling","nextElementSibling","innerHTML","className"]),Ve(HTMLElement.prototype,["children","innerHTML","className"])):(Ge(Element.prototype,t),Ge(Element.prototype,{previousElementSibling:{get:function(){return Xe.currentNode=this,Xe.previousSibling()}},nextElementSibling:{get:function(){return Xe.currentNode=this,Xe.nextSibling()}},innerHTML:{get:function(){return Ie(this,ge)},set:function(t){var e="template"===this.localName?this.content:this;Je(e);var n=this.localName||"div";for((n=this.namespaceURI&&this.namespaceURI!==ze.namespaceURI?ze.createElementNS(this.namespaceURI,n):ze.createElement(n)).innerHTML=t,t="template"===this.localName?n.content:n;n=t.__shady_native_firstChild;)e.__shady_native_insertBefore(n,void 0)}},className:{get:function(){return this.getAttribute("class")||""},set:function(t){this.setAttribute("class",t)}}})),Ve(Element.prototype,"setAttribute getAttribute hasAttribute removeAttribute focus blur".split(" ")),Ve(Element.prototype,Ye),Ve(HTMLElement.prototype,["focus","blur"]),window.HTMLTemplateElement&&Ve(window.HTMLTemplateElement.prototype,["innerHTML"]),Be?Ve(DocumentFragment.prototype,$e):Ge(DocumentFragment.prototype,t),Ve(DocumentFragment.prototype,Ye),Be?(Ve(Document.prototype,$e),Ve(Document.prototype,["activeElement"])):Ge(Document.prototype,t),Ve(Document.prototype,["importNode","getElementById","elementFromPoint",ae()]),Ve(Document.prototype,Ye)}(),Sr("__shady_"),Object.defineProperty(document,"_activeElement",vr.activeElement),we(Window.prototype,br,"__shady_"),oe.J?oe.Aa&&we(Element.prototype,cr):(Sr(),function(){if(!sn&&Object.getOwnPropertyDescriptor(Event.prototype,"isTrusted")){var t=function(){var t=new MouseEvent("click",{bubbles:!0,cancelable:!0,composed:!0});this.__shady_dispatchEvent(t)};Element.prototype.click?Element.prototype.click=t:HTMLElement.prototype.click&&(HTMLElement.prototype.click=t)}}()),function(){for(var t in mn)window.__shady_native_addEventListener(t,(function(t){t.__target||(Sn(t),gn(t))}),!0)}(),window.Event=Tn,window.CustomEvent=On,window.MouseEvent=Dn,window.ShadowRoot=Hr}var ao=window.Document.prototype.createElement,so=window.Document.prototype.createElementNS,lo=window.Document.prototype.importNode,co=window.Document.prototype.prepend,uo=window.Document.prototype.append,ho=window.DocumentFragment.prototype.prepend,fo=window.DocumentFragment.prototype.append,po=window.Node.prototype.cloneNode,_o=window.Node.prototype.appendChild,mo=window.Node.prototype.insertBefore,vo=window.Node.prototype.removeChild,yo=window.Node.prototype.replaceChild,go=Object.getOwnPropertyDescriptor(window.Node.prototype,"textContent"),bo=window.Element.prototype.attachShadow,Eo=Object.getOwnPropertyDescriptor(window.Element.prototype,"innerHTML"),wo=window.Element.prototype.getAttribute,No=window.Element.prototype.setAttribute,Co=window.Element.prototype.removeAttribute,So=window.Element.prototype.getAttributeNS,To=window.Element.prototype.setAttributeNS,Oo=window.Element.prototype.removeAttributeNS,Do=window.Element.prototype.insertAdjacentElement,xo=window.Element.prototype.insertAdjacentHTML,Mo=window.Element.prototype.prepend,Po=window.Element.prototype.append,Ao=window.Element.prototype.before,Lo=window.Element.prototype.after,jo=window.Element.prototype.replaceWith,ko=window.Element.prototype.remove,Fo=window.HTMLElement,Ro=Object.getOwnPropertyDescriptor(window.HTMLElement.prototype,"innerHTML"),Ho=window.HTMLElement.prototype.insertAdjacentElement,Io=window.HTMLElement.prototype.insertAdjacentHTML,Bo=new Set;function Uo(t){var e=Bo.has(t);return t=/^[a-z][.0-9_a-z]*-[-.0-9_a-z]*$/.test(t),!e&&t}"annotation-xml color-profile font-face font-face-src font-face-uri font-face-format font-face-name missing-glyph".split(" ").forEach((function(t){return Bo.add(t)}));var qo=document.contains?document.contains.bind(document):document.documentElement.contains.bind(document.documentElement);function Wo(t){var e=t.isConnected;if(void 0!==e)return e;if(qo(t))return!0;for(;t&&!(t.__CE_isImportDocument||t instanceof Document);)t=t.parentNode||(window.ShadowRoot&&t instanceof ShadowRoot?t.host:void 0);return!(!t||!(t.__CE_isImportDocument||t instanceof Document))}function Go(t){var e=t.children;if(e)return Array.prototype.slice.call(e);for(e=[],t=t.firstChild;t;t=t.nextSibling)t.nodeType===Node.ELEMENT_NODE&&e.push(t);return e}function Vo(t,e){for(;e&&e!==t&&!e.nextSibling;)e=e.parentNode;return e&&e!==t?e.nextSibling:null}function Ko(t,e,n){for(var r=t;r;){if(r.nodeType===Node.ELEMENT_NODE){var o=r;e(o);var i=o.localName;if("link"===i&&"import"===o.getAttribute("rel")){if(r=o.import,void 0===n&&(n=new Set),r instanceof Node&&!n.has(r))for(n.add(r),r=r.firstChild;r;r=r.nextSibling)Ko(r,e,n);r=Vo(t,o);continue}if("template"===i){r=Vo(t,o);continue}if(o=o.__CE_shadowRoot)for(o=o.firstChild;o;o=o.nextSibling)Ko(o,e,n)}r=r.firstChild?r.firstChild:Vo(t,r)}}function Xo(){var t=!(null==fi||!fi.noDocumentConstructionObserver),e=!(null==fi||!fi.shadyDomFastWalk);this.ca=[],this.g=[],this.W=!1,this.shadyDomFastWalk=e,this.nb=!t}function zo(t,e,n,r){var o=window.ShadyDOM;if(t.shadyDomFastWalk&&o&&o.inUse){if(e.nodeType===Node.ELEMENT_NODE&&n(e),e.querySelectorAll)for(t=o.nativeMethods.querySelectorAll.call(e,"*"),e=0;e<t.length;e++)n(t[e])}else Ko(e,n,r)}function Jo(t,e){t.W&&zo(t,e,(function(e){return $o(t,e)}))}function $o(t,e){if(t.W&&!e.__CE_patched){e.__CE_patched=!0;for(var n=0;n<t.ca.length;n++)t.ca[n](e);for(n=0;n<t.g.length;n++)t.g[n](e)}}function Yo(t,e){var n=[];for(zo(t,e,(function(t){return n.push(t)})),e=0;e<n.length;e++){var r=n[e];1===r.__CE_state?t.connectedCallback(r):ti(t,r)}}function Zo(t,e){var n=[];for(zo(t,e,(function(t){return n.push(t)})),e=0;e<n.length;e++){var r=n[e];1===r.__CE_state&&t.disconnectedCallback(r)}}function Qo(t,e,n){var r=(n=void 0===n?{}:n).ob,o=n.upgrade||function(e){return ti(t,e)},i=[];for(zo(t,e,(function(e){if(t.W&&$o(t,e),"link"===e.localName&&"import"===e.getAttribute("rel")){var n=e.import;n instanceof Node&&(n.__CE_isImportDocument=!0,n.__CE_registry=document.__CE_registry),n&&"complete"===n.readyState?n.__CE_documentLoadHandled=!0:e.addEventListener("load",(function(){var n=e.import;if(!n.__CE_documentLoadHandled){n.__CE_documentLoadHandled=!0;var i=new Set;r&&(r.forEach((function(t){return i.add(t)})),i.delete(n)),Qo(t,n,{ob:i,upgrade:o})}}))}else i.push(e)}),r),e=0;e<i.length;e++)o(i[e])}function ti(t,e){try{var n=e.ownerDocument,r=n.__CE_registry,o=r&&(n.defaultView||n.__CE_isImportDocument)?ui(r,e.localName):void 0;if(o&&void 0===e.__CE_state){o.constructionStack.push(e);try{try{if(new o.constructorFunction!==e)throw Error("The custom element constructor did not produce the element being upgraded.")}finally{o.constructionStack.pop()}}catch(t){throw e.__CE_state=2,t}if(e.__CE_state=1,e.__CE_definition=o,o.attributeChangedCallback&&e.hasAttributes()){var i=o.observedAttributes;for(o=0;o<i.length;o++){var a=i[o],s=e.getAttribute(a);null!==s&&t.attributeChangedCallback(e,a,null,s,null)}}Wo(e)&&t.connectedCallback(e)}}catch(t){ni(t)}}function ei(t,e,n,r){var o=e.__CE_registry;if(o&&(null===r||"http://www.w3.org/1999/xhtml"===r)&&(o=ui(o,n)))try{var i=new o.constructorFunction;if(void 0===i.__CE_state||void 0===i.__CE_definition)throw Error("Failed to construct '"+n+"': The returned value was not constructed with the HTMLElement constructor.");if("http://www.w3.org/1999/xhtml"!==i.namespaceURI)throw Error("Failed to construct '"+n+"': The constructed element's namespace must be the HTML namespace.");if(i.hasAttributes())throw Error("Failed to construct '"+n+"': The constructed element must not have any attributes.");if(null!==i.firstChild)throw Error("Failed to construct '"+n+"': The constructed element must not have any children.");if(null!==i.parentNode)throw Error("Failed to construct '"+n+"': The constructed element must not have a parent node.");if(i.ownerDocument!==e)throw Error("Failed to construct '"+n+"': The constructed element's owner document is incorrect.");if(i.localName!==n)throw Error("Failed to construct '"+n+"': The constructed element's local name is incorrect.");return i}catch(o){return ni(o),e=null===r?ao.call(e,n):so.call(e,r,n),Object.setPrototypeOf(e,HTMLUnknownElement.prototype),e.__CE_state=2,e.__CE_definition=void 0,$o(t,e),e}return $o(t,e=null===r?ao.call(e,n):so.call(e,r,n)),e}function ni(t){var e=t.message,n=t.sourceURL||t.fileName||"",r=t.line||t.lineNumber||0,o=t.column||t.columnNumber||0,i=void 0;void 0===ErrorEvent.prototype.initErrorEvent?i=new ErrorEvent("error",{cancelable:!0,message:e,filename:n,lineno:r,colno:o,error:t}):((i=document.createEvent("ErrorEvent")).initErrorEvent("error",!1,!0,e,n,r),i.preventDefault=function(){Object.defineProperty(this,"defaultPrevented",{configurable:!0,get:function(){return!0}})}),void 0===i.error&&Object.defineProperty(i,"error",{configurable:!0,enumerable:!0,get:function(){return t}}),window.dispatchEvent(i),i.defaultPrevented||console.error(t)}function ri(){var t=this;this.I=void 0,this.Ha=new Promise((function(e){t.g=e}))}function oi(t){var e=document;this.X=void 0,this.S=t,this.g=e,Qo(this.S,this.g),"loading"===this.g.readyState&&(this.X=new MutationObserver(this.h.bind(this)),this.X.observe(this.g,{childList:!0,subtree:!0}))}function ii(t){t.X&&t.X.disconnect()}function ai(t){this.ka=new Map,this.la=new Map,this.Ca=new Map,this.ta=!1,this.wa=new Map,this.ja=function(t){return t()},this.V=!1,this.ma=[],this.S=t,this.Da=t.nb?new oi(t):void 0}function si(t,e){if(!Uo(e))throw new SyntaxError("The element name '"+e+"' is not valid.");if(ui(t,e))throw Error("A custom element with name '"+e+"' has already been defined.");if(t.ta)throw Error("A custom element is already being defined.")}function li(t,e,n){var r;t.ta=!0;try{var o=n.prototype;if(!(o instanceof Object))throw new TypeError("The custom element constructor's prototype is not an object.");var i=function(t){var e=o[t];if(void 0!==e&&!(e instanceof Function))throw Error("The '"+t+"' callback must be a function.");return e},a=i("connectedCallback"),s=i("disconnectedCallback"),l=i("adoptedCallback"),c=(r=i("attributeChangedCallback"))&&n.observedAttributes||[]}catch(t){throw t}finally{t.ta=!1}return n={localName:e,constructorFunction:n,connectedCallback:a,disconnectedCallback:s,adoptedCallback:l,attributeChangedCallback:r,observedAttributes:c,constructionStack:[]},t.la.set(e,n),t.Ca.set(n.constructorFunction,n),n}function ci(t){if(!1!==t.V){t.V=!1;for(var e=[],n=t.ma,r=new Map,o=0;o<n.length;o++)r.set(n[o],[]);for(Qo(t.S,document,{upgrade:function(n){if(void 0===n.__CE_state){var o=n.localName,i=r.get(o);i?i.push(n):t.la.has(o)&&e.push(n)}}}),o=0;o<e.length;o++)ti(t.S,e[o]);for(o=0;o<n.length;o++){for(var i=n[o],a=r.get(i),s=0;s<a.length;s++)ti(t.S,a[s]);(i=t.wa.get(i))&&i.resolve(void 0)}n.length=0}}function ui(t,e){var n=t.la.get(e);if(n)return n;if(n=t.ka.get(e)){t.ka.delete(e);try{return li(t,e,n())}catch(t){ni(t)}}}function hi(t,e,n){function r(e){return function(n){for(var r=[],o=0;o<arguments.length;++o)r[o]=arguments[o];o=[];for(var i=[],a=0;a<r.length;a++){var s=r[a];if(s instanceof Element&&Wo(s)&&i.push(s),s instanceof DocumentFragment)for(s=s.firstChild;s;s=s.nextSibling)o.push(s);else o.push(s)}for(e.apply(this,r),r=0;r<i.length;r++)Zo(t,i[r]);if(Wo(this))for(r=0;r<o.length;r++)(i=o[r])instanceof Element&&Yo(t,i)}}void 0!==n.prepend&&(e.prepend=r(n.prepend)),void 0!==n.append&&(e.append=r(n.append))}Xo.prototype.connectedCallback=function(t){var e=t.__CE_definition;if(e.connectedCallback)try{e.connectedCallback.call(t)}catch(t){ni(t)}},Xo.prototype.disconnectedCallback=function(t){var e=t.__CE_definition;if(e.disconnectedCallback)try{e.disconnectedCallback.call(t)}catch(t){ni(t)}},Xo.prototype.attributeChangedCallback=function(t,e,n,r,o){var i=t.__CE_definition;if(i.attributeChangedCallback&&-1<i.observedAttributes.indexOf(e))try{i.attributeChangedCallback.call(t,e,n,r,o)}catch(t){ni(t)}},ri.prototype.resolve=function(t){if(this.I)throw Error("Already resolved.");this.I=t,this.g(t)},oi.prototype.h=function(t){var e=this.g.readyState;for("interactive"!==e&&"complete"!==e||ii(this),e=0;e<t.length;e++)for(var n=t[e].addedNodes,r=0;r<n.length;r++)Qo(this.S,n[r])},(t=ai.prototype).eb=function(t,e){var n=this;if(!(e instanceof Function))throw new TypeError("Custom element constructor getters must be functions.");si(this,t),this.ka.set(t,e),this.ma.push(t),this.V||(this.V=!0,this.ja((function(){return ci(n)})))},t.define=function(t,e){var n=this;if(!(e instanceof Function))throw new TypeError("Custom element constructors must be functions.");si(this,t),li(this,t,e),this.ma.push(t),this.V||(this.V=!0,this.ja((function(){return ci(n)})))},t.upgrade=function(t){Qo(this.S,t)},t.get=function(t){if(t=ui(this,t))return t.constructorFunction},t.whenDefined=function(t){if(!Uo(t))return Promise.reject(new SyntaxError("'"+t+"' is not a valid custom element name."));var e=this.wa.get(t);if(e)return e.Ha;e=new ri,this.wa.set(t,e);var n=this.la.has(t)||this.ka.has(t);return t=-1===this.ma.indexOf(t),n&&t&&e.resolve(void 0),e.Ha},t.polyfillWrapFlushCallback=function(t){this.Da&&ii(this.Da);var e=this.ja;this.ja=function(n){return t((function(){return e(n)}))}},window.CustomElementRegistry=ai,ai.prototype.define=ai.prototype.define,ai.prototype.upgrade=ai.prototype.upgrade,ai.prototype.get=ai.prototype.get,ai.prototype.whenDefined=ai.prototype.whenDefined,ai.prototype.polyfillDefineLazy=ai.prototype.eb,ai.prototype.polyfillWrapFlushCallback=ai.prototype.polyfillWrapFlushCallback;var di={},fi=window.customElements;function pi(){var t=new Xo;!function(t){function e(){var e=this.constructor,n=document.__CE_registry.Ca.get(e);if(!n)throw Error("Failed to construct a custom element: The constructor was not registered with `customElements`.");var r=n.constructionStack;if(0===r.length)return r=ao.call(document,n.localName),Object.setPrototypeOf(r,e.prototype),r.__CE_state=1,r.__CE_definition=n,$o(t,r),r;var o=r.length-1,i=r[o];if(i===di)throw Error("Failed to construct '"+n.localName+"': This element was already constructed.");return r[o]=di,Object.setPrototypeOf(i,e.prototype),$o(t,i),i}e.prototype=Fo.prototype,Object.defineProperty(HTMLElement.prototype,"constructor",{writable:!0,configurable:!0,enumerable:!1,value:e}),window.HTMLElement=e}(t),function(t){Document.prototype.createElement=function(e){return ei(t,this,e,null)},Document.prototype.importNode=function(e,n){return e=lo.call(this,e,!!n),this.__CE_registry?Qo(t,e):Jo(t,e),e},Document.prototype.createElementNS=function(e,n){return ei(t,this,n,e)},hi(t,Document.prototype,{prepend:co,append:uo})}(t),hi(t,DocumentFragment.prototype,{prepend:ho,append:fo}),function(t){function e(e,n){Object.defineProperty(e,"textContent",{enumerable:n.enumerable,configurable:!0,get:n.get,set:function(e){if(this.nodeType===Node.TEXT_NODE)n.set.call(this,e);else{var r=void 0;if(this.firstChild){var o=this.childNodes,i=o.length;if(0<i&&Wo(this)){r=Array(i);for(var a=0;a<i;a++)r[a]=o[a]}}if(n.set.call(this,e),r)for(e=0;e<r.length;e++)Zo(t,r[e])}}})}Node.prototype.insertBefore=function(e,n){if(e instanceof DocumentFragment){var r=Go(e);if(e=mo.call(this,e,n),Wo(this))for(n=0;n<r.length;n++)Yo(t,r[n]);return e}return r=e instanceof Element&&Wo(e),n=mo.call(this,e,n),r&&Zo(t,e),Wo(this)&&Yo(t,e),n},Node.prototype.appendChild=function(e){if(e instanceof DocumentFragment){var n=Go(e);if(e=_o.call(this,e),Wo(this))for(var r=0;r<n.length;r++)Yo(t,n[r]);return e}return n=e instanceof Element&&Wo(e),r=_o.call(this,e),n&&Zo(t,e),Wo(this)&&Yo(t,e),r},Node.prototype.cloneNode=function(e){return e=po.call(this,!!e),this.ownerDocument.__CE_registry?Qo(t,e):Jo(t,e),e},Node.prototype.removeChild=function(e){var n=e instanceof Element&&Wo(e),r=vo.call(this,e);return n&&Zo(t,e),r},Node.prototype.replaceChild=function(e,n){if(e instanceof DocumentFragment){var r=Go(e);if(e=yo.call(this,e,n),Wo(this))for(Zo(t,n),n=0;n<r.length;n++)Yo(t,r[n]);return e}r=e instanceof Element&&Wo(e);var o=yo.call(this,e,n),i=Wo(this);return i&&Zo(t,n),r&&Zo(t,e),i&&Yo(t,e),o},go&&go.get?e(Node.prototype,go):function(t,e){t.W=!0,t.ca.push(e)}(t,(function(t){e(t,{enumerable:!0,configurable:!0,get:function(){for(var t=[],e=this.firstChild;e;e=e.nextSibling)e.nodeType!==Node.COMMENT_NODE&&t.push(e.textContent);return t.join("")},set:function(t){for(;this.firstChild;)vo.call(this,this.firstChild);null!=t&&""!==t&&_o.call(this,document.createTextNode(t))}})}))}(t),function(t){function e(e,n){Object.defineProperty(e,"innerHTML",{enumerable:n.enumerable,configurable:!0,get:n.get,set:function(e){var r=this,o=void 0;if(Wo(this)&&(o=[],zo(t,this,(function(t){t!==r&&o.push(t)}))),n.set.call(this,e),o)for(var i=0;i<o.length;i++){var a=o[i];1===a.__CE_state&&t.disconnectedCallback(a)}return this.ownerDocument.__CE_registry?Qo(t,this):Jo(t,this),e}})}function n(e,n){e.insertAdjacentElement=function(e,r){var o=Wo(r);return e=n.call(this,e,r),o&&Zo(t,r),Wo(e)&&Yo(t,r),e}}function r(e,n){function r(e,n){for(var r=[];e!==n;e=e.nextSibling)r.push(e);for(n=0;n<r.length;n++)Qo(t,r[n])}e.insertAdjacentHTML=function(t,e){if("beforebegin"===(t=t.toLowerCase())){var o=this.previousSibling;n.call(this,t,e),r(o||this.parentNode.firstChild,this)}else if("afterbegin"===t)o=this.firstChild,n.call(this,t,e),r(this.firstChild,o);else if("beforeend"===t)o=this.lastChild,n.call(this,t,e),r(o||this.firstChild,null);else{if("afterend"!==t)throw new SyntaxError("The value provided ("+String(t)+") is not one of 'beforebegin', 'afterbegin', 'beforeend', or 'afterend'.");o=this.nextSibling,n.call(this,t,e),r(this.nextSibling,o)}}}bo&&(Element.prototype.attachShadow=function(e){if(e=bo.call(this,e),t.W&&!e.__CE_patched){e.__CE_patched=!0;for(var n=0;n<t.ca.length;n++)t.ca[n](e)}return this.__CE_shadowRoot=e}),Eo&&Eo.get?e(Element.prototype,Eo):Ro&&Ro.get?e(HTMLElement.prototype,Ro):function(t,e){t.W=!0,t.g.push(e)}(t,(function(t){e(t,{enumerable:!0,configurable:!0,get:function(){return po.call(this,!0).innerHTML},set:function(t){var e="template"===this.localName,n=e?this.content:this,r=so.call(document,this.namespaceURI,this.localName);for(r.innerHTML=t;0<n.childNodes.length;)vo.call(n,n.childNodes[0]);for(t=e?r.content:r;0<t.childNodes.length;)_o.call(n,t.childNodes[0])}})})),Element.prototype.setAttribute=function(e,n){if(1!==this.__CE_state)return No.call(this,e,n);var r=wo.call(this,e);No.call(this,e,n),n=wo.call(this,e),t.attributeChangedCallback(this,e,r,n,null)},Element.prototype.setAttributeNS=function(e,n,r){if(1!==this.__CE_state)return To.call(this,e,n,r);var o=So.call(this,e,n);To.call(this,e,n,r),r=So.call(this,e,n),t.attributeChangedCallback(this,n,o,r,e)},Element.prototype.removeAttribute=function(e){if(1!==this.__CE_state)return Co.call(this,e);var n=wo.call(this,e);Co.call(this,e),null!==n&&t.attributeChangedCallback(this,e,n,null,null)},Element.prototype.removeAttributeNS=function(e,n){if(1!==this.__CE_state)return Oo.call(this,e,n);var r=So.call(this,e,n);Oo.call(this,e,n);var o=So.call(this,e,n);r!==o&&t.attributeChangedCallback(this,n,r,o,e)},Ho?n(HTMLElement.prototype,Ho):Do&&n(Element.prototype,Do),Io?r(HTMLElement.prototype,Io):xo&&r(Element.prototype,xo),hi(t,Element.prototype,{prepend:Mo,append:Po}),function(t){function e(e){return function(n){for(var r=[],o=0;o<arguments.length;++o)r[o]=arguments[o];o=[];for(var i=[],a=0;a<r.length;a++){var s=r[a];if(s instanceof Element&&Wo(s)&&i.push(s),s instanceof DocumentFragment)for(s=s.firstChild;s;s=s.nextSibling)o.push(s);else o.push(s)}for(e.apply(this,r),r=0;r<i.length;r++)Zo(t,i[r]);if(Wo(this))for(r=0;r<o.length;r++)(i=o[r])instanceof Element&&Yo(t,i)}}var n=Element.prototype;void 0!==Ao&&(n.before=e(Ao)),void 0!==Lo&&(n.after=e(Lo)),void 0!==jo&&(n.replaceWith=function(e){for(var n=[],r=0;r<arguments.length;++r)n[r]=arguments[r];r=[];for(var o=[],i=0;i<n.length;i++){var a=n[i];if(a instanceof Element&&Wo(a)&&o.push(a),a instanceof DocumentFragment)for(a=a.firstChild;a;a=a.nextSibling)r.push(a);else r.push(a)}for(i=Wo(this),jo.apply(this,n),n=0;n<o.length;n++)Zo(t,o[n]);if(i)for(Zo(t,this),n=0;n<r.length;n++)(o=r[n])instanceof Element&&Yo(t,o)}),void 0!==ko&&(n.remove=function(){var e=Wo(this);ko.call(this),e&&Zo(t,this)})}(t)}(t),t=new ai(t),document.__CE_registry=t,Object.defineProperty(window,"customElements",{configurable:!0,enumerable:!0,value:t})}function _i(){this.end=this.start=0,this.rules=this.parent=this.previous=null,this.cssText=this.parsedCssText="",this.atRule=!1,this.type=0,this.parsedSelector=this.selector=this.keyframesName=""}function mi(t){var e=t=t.replace(Si,"").replace(Ti,""),n=new _i;n.start=0,n.end=e.length;for(var r=n,o=0,i=e.length;o<i;o++)if("{"===e[o]){r.rules||(r.rules=[]);var a=r,s=a.rules[a.rules.length-1]||null;(r=new _i).start=o+1,r.parent=a,r.previous=s,a.rules.push(r)}else"}"===e[o]&&(r.end=o+1,r=r.parent||n);return vi(n,t)}function vi(t,e){var n=e.substring(t.start,t.end-1);if(t.parsedCssText=t.cssText=n.trim(),t.parent&&(n=(n=(n=function(t){return t.replace(/\\([0-9a-f]{1,6})\s/gi,(function(t,e){for(e=6-(t=e).length;e--;)t="0"+t;return"\\"+t}))}(n=e.substring(t.previous?t.previous.end:t.parent.start,t.start-1))).replace(Ai," ")).substring(n.lastIndexOf(";")+1),n=t.parsedSelector=t.selector=n.trim(),t.atRule=0===n.indexOf("@"),t.atRule?0===n.indexOf("@media")?t.type=Ni:n.match(Pi)&&(t.type=wi,t.keyframesName=t.selector.split(Ai).pop()):t.type=0===n.indexOf("--")?Ci:Ei),n=t.rules)for(var r=0,o=n.length,i=void 0;r<o&&(i=n[r]);r++)vi(i,e);return t}function yi(t,e,n){n=void 0===n?"":n;var r="";if(t.cssText||t.rules){var o,i=t.rules;if((o=i)&&(o=!((o=i[0])&&o.selector&&0===o.selector.indexOf("--"))),o){o=0;for(var a=i.length,s=void 0;o<a&&(s=i[o]);o++)r=yi(s,e,r)}else(r=(e=e?t.cssText:(e=(e=t.cssText).replace(Oi,"").replace(Di,"")).replace(xi,"").replace(Mi,"")).trim())&&(r=" "+r+"\n")}return r&&(t.selector&&(n+=t.selector+" {\n"),n+=r,t.selector&&(n+="}\n\n")),n}fi&&!fi.forcePolyfill&&"function"==typeof fi.define&&"function"==typeof fi.get||pi(),window.__CE_installPolyfill=pi;var gi,bi,Ei=1,wi=7,Ni=4,Ci=1e3,Si=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,Ti=/@import[^;]*;/gim,Oi=/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,Di=/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\n]|$)?/gim,xi=/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/gim,Mi=/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,Pi=/^@[^\s]*keyframes/,Ai=/\s+/g,Li=!(window.ShadyDOM&&window.ShadyDOM.inUse);function ji(t){gi=(!t||!t.shimcssproperties)&&(Li||!(navigator.userAgent.match(/AppleWebKit\/601|Edge\/15/)||!window.CSS||!CSS.supports||!CSS.supports("box-shadow","0 0 0 var(--foo)")))}window.ShadyCSS&&void 0!==window.ShadyCSS.cssBuild&&(bi=window.ShadyCSS.cssBuild);var ki=!(!window.ShadyCSS||!window.ShadyCSS.disableRuntime);window.ShadyCSS&&void 0!==window.ShadyCSS.nativeCss?gi=window.ShadyCSS.nativeCss:window.ShadyCSS?(ji(window.ShadyCSS),window.ShadyCSS=void 0):ji(window.WebComponents&&window.WebComponents.flags);var Fi=gi,Ri=/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};{])+)|\{([^}]*)\}(?:(?=[;\s}])|$))/gi,Hi=/(?:^|\W+)@apply\s*\(?([^);\n]*)\)?/gi,Ii=/(--[\w-]+)\s*([:,;)]|$)/gi,Bi=/(animation\s*:)|(animation-name\s*:)/,Ui=/@media\s(.*)/,qi=/\{[^}]*\}/g,Wi=new Set;function Gi(t,e){return t?("string"==typeof t&&(t=mi(t)),e&&Xi(t,e),yi(t,Fi)):""}function Vi(t){return!t.__cssRules&&t.textContent&&(t.__cssRules=mi(t.textContent)),t.__cssRules||null}function Ki(t){return!!t.parent&&t.parent.type===wi}function Xi(t,e,n,r){if(t){var o=!1,i=t.type;if(r&&i===Ni){var a=t.selector.match(Ui);a&&(window.matchMedia(a[1]).matches||(o=!0))}if(i===Ei?e(t):n&&i===wi?n(t):i===Ci&&(o=!0),(t=t.rules)&&!o)for(o=0,i=t.length,a=void 0;o<i&&(a=t[o]);o++)Xi(a,e,n,r)}}function zi(t,e,n,r){var o=document.createElement("style");return e&&o.setAttribute("scope",e),o.textContent=t,Yi(o,n,r),o}var Ji=null;function $i(t){t=document.createComment(" Shady DOM styles for "+t+" ");var e=document.head;return e.insertBefore(t,(Ji?Ji.nextSibling:null)||e.firstChild),Ji=t}function Yi(t,e,n){(e=e||document.head).insertBefore(t,n&&n.nextSibling||e.firstChild),Ji?t.compareDocumentPosition(Ji)===Node.DOCUMENT_POSITION_PRECEDING&&(Ji=t):Ji=t}function Zi(t,e){for(var n=0,r=t.length;e<r;e++)if("("===t[e])n++;else if(")"===t[e]&&0==--n)return e;return-1}function Qi(t,e){var n=t.indexOf("var(");if(-1===n)return e(t,"","","");var r=Zi(t,n+3),o=t.substring(n+4,r);return n=t.substring(0,n),t=Qi(t.substring(r+1),e),-1===(r=o.indexOf(","))?e(n,o.trim(),"",t):e(n,o.substring(0,r).trim(),o.substring(r+1).trim(),t)}function ta(t,e){Li?t.setAttribute("class",e):window.ShadyDOM.nativeMethods.setAttribute.call(t,"class",e)}var ea=window.ShadyDOM&&window.ShadyDOM.wrap||function(t){return t};function na(t){var e=t.localName,n="";return e?-1<e.indexOf("-")||(n=e,e=t.getAttribute&&t.getAttribute("is")||""):(e=t.is,n=t.extends),{is:e,ha:n}}function ra(t){for(var e=[],n="",r=0;0<=r&&r<t.length;r++)if("("===t[r]){var o=Zi(t,r);n+=t.slice(r,o+1),r=o}else","===t[r]?(e.push(n),n=""):n+=t[r];return n&&e.push(n),e}function oa(t){if(void 0!==bi)return bi;if(void 0===t.__cssBuild){var e=t.getAttribute("css-build");if(e)t.__cssBuild=e;else{if(""!==(e=(e="template"===t.localName?t.content.firstChild:t.firstChild)instanceof Comment&&"css-build"===(e=e.textContent.trim().split(":"))[0]?e[1]:"")){var n="template"===t.localName?t.content.firstChild:t.firstChild;n.parentNode.removeChild(n)}t.__cssBuild=e}}return t.__cssBuild||""}function ia(t){return!(""===(t=void 0===t?"":t)||!Fi)&&(Li?"shadow"===t:"shady"===t)}function aa(){}function sa(t,e,n){var r;if(e.nodeType===Node.ELEMENT_NODE&&n(e),r="template"===e.localName?(e.content||e._content||e).childNodes:e.children||e.childNodes)for(e=0;e<r.length;e++)sa(t,r[e],n)}function la(t,e,n){if(e)if(t.classList)n?(t.classList.remove("style-scope"),t.classList.remove(e)):(t.classList.add("style-scope"),t.classList.add(e));else if(t.getAttribute){var r=t.getAttribute("class");n?r&&ta(t,e=r.replace("style-scope","").replace(e,"")):ta(t,(r?r+" ":"")+"style-scope "+e)}}function ca(t,e,n){sa(Sa,t,(function(t){la(t,e,!0),la(t,n)}))}function ua(t,e){sa(Sa,t,(function(t){la(t,e||"",!0)}))}function ha(t,e,n,r,o){var i=Sa;return""===(o=void 0===o?"":o)&&(o=Li||"shady"===(void 0===r?"":r)?Gi(e,n):function(t,e,n,r,o){var i=da(n,r);return n=n?"."+n:"",Gi(e,(function(e){e.i||(e.selector=e.F=fa(t,e,t.h,n,i),e.i=!0),o&&o(e,n,i)}))}(i,e,(t=na(t)).is,t.ha,n)+"\n\n"),o.trim()}function da(t,e){return e?"[is="+t+"]":t}function fa(t,e,n,r,o){var i=ra(e.selector);if(!Ki(e)){e=0;for(var a=i.length,s=void 0;e<a&&(s=i[e]);e++)i[e]=n.call(t,s,r,o)}return i.filter((function(t){return!!t})).join(",")}function pa(t){return t.replace(va,(function(t,e,n){return-1<n.indexOf("+")?n=n.replace(/\+/g,"___"):-1<n.indexOf("___")&&(n=n.replace(/___/g,"+")),":"+e+"("+n+")"}))}function _a(t,e){t=t.split(/(\[.+?\])/);for(var n=[],r=0;r<t.length;r++)if(1==r%2)n.push(t[r]);else{var o=t[r];""===o&&r===t.length-1||((o=o.split(":"))[0]+=e,n.push(o.join(":")))}return n.join("")}function ma(t){":root"===t.selector&&(t.selector="html")}aa.prototype.h=function(t,e,n){var r=!1;t=t.trim();var o=va.test(t);o&&(t=pa(t=t.replace(va,(function(t,e,n){return":"+e+"("+n.replace(/\s/g,"")+")"}))));var i=Ca.test(t);if(i){var a=function(t){for(var e,n=[];e=t.match(Ca);){var r=e.index,o=Zi(t,r);if(-1===o)throw Error(e.input+" selector missing ')'");e=t.slice(r,o+1),t=t.replace(e,""),n.push(e)}return{Ba:t,matches:n}}(t);t=a.Ba,a=a.matches}return t=(t=t.replace(ba,":host $1")).replace(ya,(function(t,o,i){return r||(t=function(t,e,n,r){var o=t.indexOf("::slotted");if(0<=t.indexOf(":host")?t=function(t,e){var n=t.match(Ea);return(n=n&&n[2].trim()||"")?n[0].match(ga)?t.replace(Ea,(function(t,n,r){return e+r})):n.split(ga)[0]===e?n:"should_not_match":t.replace(":host",e)}(t,r):0!==o&&(t=n?_a(t,n):t),n=!1,0<=o&&(e="",n=!0),n){var i=!0;n&&(t=t.replace(wa,(function(t,e){return" > "+e})))}return{value:t,Ua:e,stop:i}}(i,o,e,n),r=r||t.stop,o=t.Ua,i=t.value),o+i})),i&&(t=function(t,e){var n=t.split("");return e.reduce((function(t,e,r){return t+e+n[r+1]}),n[0])}(t,a)),o&&(t=pa(t)),t.replace(Na,(function(t,e,n,r){return'[dir="'+n+'"] '+e+r+", "+e+'[dir="'+n+'"]'+r}))},aa.prototype.i=function(t){return t.match(":host")?"":t.match("::slotted")?this.h(t,":not(.style-scope)"):_a(t.trim(),":not(.style-scope)")},i.Object.defineProperties(aa.prototype,{g:{configurable:!0,enumerable:!0,get:function(){return"style-scope"}}});var va=/:(nth[-\w]+)\(([^)]+)\)/,ya=/(^|[\s>+~]+)((?:\[.+?\]|[^\s>+~=[])+)/g,ga=/[[.:#*]/,ba=/^(::slotted)/,Ea=/(:host)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/,wa=/(?:::slotted)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/,Na=/(.*):dir\((?:(ltr|rtl))\)(.*)/,Ca=/:(?:matches|any|-(?:webkit|moz)-any)/,Sa=new aa;function Ta(t,e,n,r,o){this.M=t||null,this.h=e||null,this.za=n||[],this.K=null,this.cssBuild=o||"",this.ha=r||"",this.g=this.L=this.R=null}function Oa(t){return t?t.__styleInfo:null}function Da(t,e){return t.__styleInfo=e}function xa(t){var e=this.matches||this.matchesSelector||this.mozMatchesSelector||this.msMatchesSelector||this.oMatchesSelector||this.webkitMatchesSelector;return e&&e.call(this,t)}Ta.prototype.i=function(){return this.M},Ta.prototype._getStyleRules=Ta.prototype.i;var Ma=/:host\s*>\s*/,Pa=navigator.userAgent.match("Trident");function Aa(){}function La(t){if(!t.D){var e={},n={};ja(t,n)&&(e.P=n,t.rules=null),e.cssText=t.parsedCssText.replace(qi,"").replace(Ri,""),t.D=e}}function ja(t,e){var n=t.D;if(!n){n=t.parsedCssText;for(var r;t=Ri.exec(n);)"inherit"===(r=(t[2]||t[3]).trim())&&"unset"===r||(e[t[1].trim()]=r),r=!0;return r}if(n.P)return Object.assign(e,n.P),!0}function ka(t,e,n){return e&&(e=0<=e.indexOf(";")?Fa(t,e,n):Qi(e,(function(e,r,o,i){return r?((r=ka(t,n[r],n))&&"initial"!==r?"apply-shim-inherit"===r&&(r="inherit"):r=ka(t,n[o]||o,n)||o,e+(r||"")+i):e+i}))),e&&e.trim()||""}function Fa(t,e,n){e=e.split(";");for(var r,o,i=0;i<e.length;i++)if(r=e[i]){if(Hi.lastIndex=0,o=Hi.exec(r))r=ka(t,n[o[1]],n);else if(-1!==(o=r.indexOf(":"))){var a=r.substring(o);a=ka(t,a=a.trim(),n)||a,r=r.substring(0,o)+a}e[i]=r&&r.lastIndexOf(";")===r.length-1?r.slice(0,-1):r||""}return e.join(";")}function Ra(t){return function(e){return e.replace(t.u,t.g)}}function Ha(t,e){var n=Ia,r=Vi(t);t.textContent=Gi(r,(function(t){var r=t.cssText=t.parsedCssText;t.D&&t.D.cssText&&(r=r.replace(Oi,"").replace(Di,""),t.cssText=Fa(n,r,e))}))}i.Object.defineProperties(Aa.prototype,{g:{configurable:!0,enumerable:!0,get:function(){return"x-scope"}}});var Ia=new Aa,Ba={},Ua=window.customElements;if(Ua&&!Li&&!ki){var qa=Ua.define;Ua.define=function(t,e,n){Ba[t]||(Ba[t]=$i(t)),qa.call(Ua,t,e,n)}}function Wa(){this.cache={}}function Ga(){}Wa.prototype.store=function(t,e,n,r){var o=this.cache[t]||[];o.push({P:e,styleElement:n,L:r}),100<o.length&&o.shift(),this.cache[t]=o};var Va=new RegExp(Sa.g+"\\s*([^\\s]*)");function Ka(t){return(t=(t.classList&&t.classList.value?t.classList.value:t.getAttribute("class")||"").match(Va))?t[1]:""}function Xa(t){var e=ea(t).getRootNode();return e===t||e===t.ownerDocument?"":(t=e.host)?na(t).is:""}function za(t){for(var e=0;e<t.length;e++){var n=t[e];if(n.target!==document.documentElement&&n.target!==document.head)for(var r=0;r<n.addedNodes.length;r++){var o=n.addedNodes[r];if(o.nodeType===Node.ELEMENT_NODE){var i=o.getRootNode(),a=Ka(o);if(a&&i===o.ownerDocument&&("style"!==o.localName&&"template"!==o.localName||""===oa(o)))ua(o,a);else if(i instanceof ShadowRoot)for((i=Xa(o))!==a&&ca(o,a,i),o=window.ShadyDOM.nativeMethods.querySelectorAll.call(o,":not(."+Sa.g+")"),a=0;a<o.length;a++){var s=Xa(i=o[a]);s&&la(i,s)}}}}}if(!(Li||window.ShadyDOM&&window.ShadyDOM.handlesDynamicScoping)){var Ja=new MutationObserver(za),$a=function(t){Ja.observe(t,{childList:!0,subtree:!0})};if(window.customElements&&!window.customElements.polyfillWrapFlushCallback)$a(document);else{var Ya=function(){$a(document.body)};window.HTMLImports?window.HTMLImports.whenReady(Ya):requestAnimationFrame((function(){if("loading"===document.readyState){var t=function(){Ya(),document.removeEventListener("readystatechange",t)};document.addEventListener("readystatechange",t)}else Ya()}))}Ga=function(){za(Ja.takeRecords())}}var Za={},Qa=Promise.resolve();function ts(t){(t=Za[t])&&(t._applyShimCurrentVersion=t._applyShimCurrentVersion||0,t._applyShimValidatingVersion=t._applyShimValidatingVersion||0,t._applyShimNextVersion=(t._applyShimNextVersion||0)+1)}function es(t){return t._applyShimCurrentVersion===t._applyShimNextVersion}var ns={},rs=new Wa;function os(){this.da={},this.i=document.documentElement;var t=new _i;t.rules=[],this.u=Da(this.i,new Ta(t)),this.O=!1,this.g=this.h=null}function is(t){var e=na(t),n=e.is;e=e.ha;var r=Ba[n]||null,o=Za[n];if(o)return Da(t,e=new Ta(n=o._styleAst,r,o.g,e,o=oa(o))),e}function as(t){if(!t.h&&window.ShadyCSS&&window.ShadyCSS.ApplyShim){t.h=window.ShadyCSS.ApplyShim,t.h.invalidCallback=ts;var e=!0}else e=!1;return function(t){!t.g&&window.ShadyCSS&&window.ShadyCSS.CustomStyleInterface&&(t.g=window.ShadyCSS.CustomStyleInterface,t.g.transformCallback=function(e){t.Ma(e)},t.g.validateCallback=function(){requestAnimationFrame((function(){(t.g.enqueued||t.O)&&t.flushCustomStyles()}))})}(t),e}function ss(t,e,n){var r=na(e).is;if(n.K){var o,i=n.K;for(o in i)null===o?e.style.removeProperty(o):e.style.setProperty(o,i[o])}!(i=Za[r])&&e!==t.i||i&&""!==oa(i)||!i||!i._style||es(i)||((es(i)||i._applyShimValidatingVersion!==i._applyShimNextVersion)&&(as(t),t.h&&t.h.transformRules(i._styleAst,r),i._style.textContent=ha(e,n.M),function(t){t._applyShimValidatingVersion=t._applyShimNextVersion,t._validating||(t._validating=!0,Qa.then((function(){t._applyShimCurrentVersion=t._applyShimNextVersion,t._validating=!1})))}(i)),Li&&(t=e.shadowRoot)&&(t=t.querySelector("style"))&&(t.textContent=ha(e,n.M)),n.M=i._styleAst)}function ls(t,e){return(e=ea(e).getRootNode().host)?Oa(e)||is(e)?e:ls(t,e):t.i}function cs(t,e,n){var r=ls(t,e),o=Oa(r),i=o.R;for(var a in r===t.i||i||(cs(t,r,o),i=o.R),t=Object.create(i||null),r=function(t,e,n){var r={},o={};return Xi(e,(function(e){!function(t,e,n,r){if(e.D||La(e),e.D.P){var o=na(t);t=o.is,o=o.ha,o=t?da(t,o):"html";var i=e.parsedSelector,a=!!i.match(Ma)||"html"===o&&-1<i.indexOf("html"),s=0===i.indexOf(":host")&&!a;"shady"===n&&(s=!(a=i===o+" > *."+o||-1!==i.indexOf("html"))&&0===i.indexOf(o)),(a||s)&&(n=o,s&&(e.F||(e.F=fa(Sa,e,Sa.h,t?"."+t:"",o)),n=e.F||o),a&&"html"===o&&(n=e.F||e.O),r({Ba:n,ab:s,qb:a}))}}(t,e,n,(function(n){xa.call(t._element||t,n.Ba)&&(n.ab?ja(e,r):ja(e,o))}))}),null,!0),{hb:o,Za:r}}(e,n.M,n.cssBuild),e=function(t,e){var n={},r=[];return Xi(t,(function(t){t.D||La(t);var o=t.F||t.parsedSelector;e&&t.D.P&&o&&xa.call(e,o)&&(ja(t,n),t=t.index,o=parseInt(t/32,10),r[o]=(r[o]||0)|1<<t%32)}),null,!0),{P:n,key:r}}(o.M,e).P,Object.assign(t,r.Za,e,r.hb),e=n.K)((o=e[a])||0===o)&&(t[a]=o);for(a=Ia,e=Object.getOwnPropertyNames(t),o=0;o<e.length;o++)t[r=e[o]]=ka(a,t[r],t);n.R=t}(t=os.prototype).flush=function(){Ga()},t.Xa=function(t){return Vi(t)},t.lb=function(t){return Gi(t)},t.prepareTemplate=function(t,e,n){this.prepareTemplateDom(t,e),this.prepareTemplateStyles(t,e,n)},t.prepareTemplateStyles=function(t,e,n){if(!t._prepared&&!ki){Li||Ba[e]||(Ba[e]=$i(e)),t._prepared=!0,t.name=e,t.extends=n,Za[e]=t;var r=oa(t),o=ia(r);n={is:e,extends:n};for(var i=[],a=t.content.querySelectorAll("style"),s=0;s<a.length;s++){var l=a[s];if(l.hasAttribute("shady-unscoped")){if(!Li){var c=l.textContent;if(!Wi.has(c)){Wi.add(c);var u=document.createElement("style");u.setAttribute("shady-unscoped",""),u.textContent=c,document.head.appendChild(u)}l.parentNode.removeChild(l)}}else i.push(l.textContent),l.parentNode.removeChild(l)}i=i.join("").trim()+(ns[e]||""),as(this),o||((a=!r)&&(a=Hi.test(i)||Ri.test(i),Hi.lastIndex=0,Ri.lastIndex=0),s=mi(i),a&&Fi&&this.h&&this.h.transformRules(s,e),t._styleAst=s),a=[],Fi||(a=function(t){var e={},n=[],r=0;for(var o in Xi(t,(function(t){La(t),t.index=r++,t=t.D.cssText;for(var n;n=Ii.exec(t);){var o=n[1];":"!==n[2]&&(e[o]=!0)}}),(function(t){n.push(t)})),t.h=n,t=[],e)t.push(o);return t}(t._styleAst)),a.length&&!Fi||(s=Li?t.content:null,e=Ba[e]||null,r=(r=ha(n,t._styleAst,null,r,o?i:"")).length?zi(r,n.is,s,e):null,t._style=r),t.g=a}},t.fb=function(t,e){ns[e]=t.join(" ")},t.prepareTemplateDom=function(t,e){if(!ki){var n=oa(t);Li||"shady"===n||t._domPrepared||(t._domPrepared=!0,function(t,e){sa(Sa,t,(function(t){la(t,e||"")}))}(t.content,e))}},t.flushCustomStyles=function(){if(!ki){var t=as(this);if(this.g){var e=this.g.processStyles();if((t||this.g.enqueued)&&!ia(this.u.cssBuild)){if(Fi){if(!this.u.cssBuild)for(t=0;t<e.length;t++){var n=this.g.getStyleForCustomStyle(e[t]);if(n&&Fi&&this.h){var r=Vi(n);as(this),this.h.transformRules(r),n.textContent=Gi(r)}}}else{for(function(t,e){(e=e.map((function(e){return t.g.getStyleForCustomStyle(e)})).filter((function(t){return!!t}))).sort((function(t,e){return(t=e.compareDocumentPosition(t))&Node.DOCUMENT_POSITION_FOLLOWING?1:t&Node.DOCUMENT_POSITION_PRECEDING?-1:0})),t.u.M.rules=e.map((function(t){return Vi(t)}))}(this,e),cs(this,this.i,this.u),t=0;t<e.length;t++)(n=this.g.getStyleForCustomStyle(e[t]))&&Ha(n,this.u.R);this.O&&this.styleDocument()}this.g.enqueued=!1}}}},t.styleElement=function(t,e){if(ki){if(e){Oa(t)||Da(t,new Ta(null));var n=Oa(t);n.K=n.K||{},Object.assign(n.K,e),ss(this,t,n)}}else if(n=Oa(t)||is(t))if(t!==this.i&&(this.O=!0),e&&(n.K=n.K||{},Object.assign(n.K,e)),Fi)ss(this,t,n);else if(this.flush(),cs(this,t,n),n.za&&n.za.length){var r;e=na(t).is;t:{if(r=rs.cache[e])for(var o=r.length-1;0<=o;o--){var i=r[o];e:{for(var a=n.za,s=0;s<a.length;s++){var l=a[s];if(i.P[l]!==n.R[l]){a=!1;break e}}a=!0}if(a){r=i;break t}}r=void 0}a=r?r.styleElement:null,o=n.L,(i=r&&r.L)||(i=e+"-"+(i=this.da[e]=(this.da[e]||0)+1)),n.L=i,i=n.L,s=Ia,s=a?a.textContent||"":function(t,e,n,r){var o=na(e),i=da(o.is,o.ha),a=new RegExp("(?:^|[^.#[:])"+(e.extends?"\\"+i.slice(0,-1)+"\\]":i)+"($|[.:[\\s>+~])"),s=Oa(e);o=s.M,s=s.cssBuild;var l=function(t,e){t=t.h;var n={};if(!Li&&t)for(var r=0,o=t[r];r<t.length;o=t[++r]){var i=o,a=e;i.u=new RegExp("\\b"+i.keyframesName+"(?!\\B|-)","g"),i.g=i.keyframesName+"-"+a,i.F=i.F||i.selector,i.selector=i.F.replace(i.keyframesName,i.g),n[o.keyframesName]=Ra(o)}return n}(o,r);return ha(e,o,(function(e){var o="";if(e.D||La(e),e.D.cssText&&(o=Fa(t,e.D.cssText,n)),e.cssText=o,!Li&&!Ki(e)&&e.cssText){var s=o=e.cssText;if(null==e.Ia&&(e.Ia=Bi.test(o)),e.Ia)if(null==e.pa)for(var c in e.pa=[],l)o!==(s=(s=l[c])(o))&&(o=s,e.pa.push(c));else{for(c=0;c<e.pa.length;++c)o=(s=l[e.pa[c]])(o);s=o}e.cssText=s,e.F=e.F||e.selector,o="."+r,s=0;for(var u=(c=ra(e.F)).length,h=void 0;s<u&&(h=c[s]);s++)c[s]=h.match(a)?h.replace(i,o):o+" "+h;e.selector=c.join(",")}}),s)}(s,t,n.R,i);var c=(l=Oa(t)).g;c&&!Li&&c!==a&&(c._useCount--,0>=c._useCount&&c.parentNode&&c.parentNode.removeChild(c)),Li?l.g?(l.g.textContent=s,a=l.g):s&&(a=zi(s,i,t.shadowRoot,l.h)):a?a.parentNode||(Pa&&-1<s.indexOf("@media")&&(a.textContent=s),Yi(a,null,l.h)):s&&(a=zi(s,i,null,l.h)),a&&(a._useCount=a._useCount||0,l.g!=a&&a._useCount++,l.g=a),i=a,Li||(a=n.L,l=s=t.getAttribute("class")||"",o&&(l=s.replace(new RegExp("\\s*x-scope\\s*"+o+"\\s*","g")," ")),s!==(l+=(l?" ":"")+"x-scope "+a)&&ta(t,l)),r||rs.store(e,n.R,i,n.L)}},t.styleDocument=function(t){this.styleSubtree(this.i,t)},t.styleSubtree=function(t,e){var n=ea(t),r=n.shadowRoot,o=t===this.i;if((r||o)&&this.styleElement(t,e),t=o?n:r)for(t=Array.from(t.querySelectorAll("*")).filter((function(t){return ea(t).shadowRoot})),e=0;e<t.length;e++)this.styleSubtree(t[e])},t.Ma=function(t){var e=this,n=oa(t);if(n!==this.u.cssBuild&&(this.u.cssBuild=n),!ia(n)){var r=Vi(t);Xi(r,(function(t){if(Li)ma(t);else{var r=Sa;t.selector=t.parsedSelector,ma(t),t.selector=t.F=fa(r,t,r.i,void 0,void 0)}Fi&&""===n&&(as(e),e.h&&e.h.transformRule(t))})),Fi?t.textContent=Gi(r):this.u.M.rules.push(r)}},t.getComputedStyleValue=function(t,e){var n;return Fi||(n=(Oa(t)||Oa(ls(this,t))).R[e]),(n=n||window.getComputedStyle(t).getPropertyValue(e))?n.trim():""},t.kb=function(t,e){var n=ea(t).getRootNode();if(e=e?("string"==typeof e?e:String(e)).split(/\s/):[],!(n=n.host&&n.host.localName)){var r=t.getAttribute("class");if(r){r=r.split(/\s/);for(var o=0;o<r.length;o++)if(r[o]===Sa.g){n=r[o+1];break}}}n&&e.push(Sa.g,n),Fi||(n=Oa(t))&&n.L&&e.push(Ia.g,n.L),ta(t,e.join(" "))},t.Ta=function(t){return Oa(t)},t.jb=function(t,e){la(t,e)},t.mb=function(t,e){la(t,e,!0)},t.ib=function(t){return Xa(t)},t.Va=function(t){return Ka(t)},os.prototype.flush=os.prototype.flush,os.prototype.prepareTemplate=os.prototype.prepareTemplate,os.prototype.styleElement=os.prototype.styleElement,os.prototype.styleDocument=os.prototype.styleDocument,os.prototype.styleSubtree=os.prototype.styleSubtree,os.prototype.getComputedStyleValue=os.prototype.getComputedStyleValue,os.prototype.setElementClass=os.prototype.kb,os.prototype._styleInfoForNode=os.prototype.Ta,os.prototype.transformCustomStyleForDocument=os.prototype.Ma,os.prototype.getStyleAst=os.prototype.Xa,os.prototype.styleAstToString=os.prototype.lb,os.prototype.flushCustomStyles=os.prototype.flushCustomStyles,os.prototype.scopeNode=os.prototype.jb,os.prototype.unscopeNode=os.prototype.mb,os.prototype.scopeForNode=os.prototype.ib,os.prototype.currentScopeForNode=os.prototype.Va,os.prototype.prepareAdoptedCssText=os.prototype.fb,Object.defineProperties(os.prototype,{nativeShadow:{get:function(){return Li}},nativeCss:{get:function(){return Fi}}});var us,hs,ds=new os;window.ShadyCSS&&(us=window.ShadyCSS.ApplyShim,hs=window.ShadyCSS.CustomStyleInterface),window.ShadyCSS={ScopingShim:ds,prepareTemplate:function(t,e,n){ds.flushCustomStyles(),ds.prepareTemplate(t,e,n)},prepareTemplateDom:function(t,e){ds.prepareTemplateDom(t,e)},prepareTemplateStyles:function(t,e,n){ds.flushCustomStyles(),ds.prepareTemplateStyles(t,e,n)},styleSubtree:function(t,e){ds.flushCustomStyles(),ds.styleSubtree(t,e)},styleElement:function(t){ds.flushCustomStyles(),ds.styleElement(t)},styleDocument:function(t){ds.flushCustomStyles(),ds.styleDocument(t)},flushCustomStyles:function(){ds.flushCustomStyles()},getComputedStyleValue:function(t,e){return ds.getComputedStyleValue(t,e)},nativeCss:Fi,nativeShadow:Li,cssBuild:bi,disableRuntime:ki},us&&(window.ShadyCSS.ApplyShim=us),hs&&(window.ShadyCSS.CustomStyleInterface=hs),function(t){function e(t){return""==t&&(i.call(this),this.m=!0),t.toLowerCase()}function n(t){var e=t.charCodeAt(0);return 32<e&&127>e&&-1==[34,35,60,62,63,96].indexOf(e)?t:encodeURIComponent(t)}function r(t){var e=t.charCodeAt(0);return 32<e&&127>e&&-1==[34,35,60,62,96].indexOf(e)?t:encodeURIComponent(t)}function o(t,o,a){function s(t){v.push(t)}var l=o||"scheme start",f=0,p="",_=!1,m=!1,v=[];t:for(;(null!=t[f-1]||0==f)&&!this.m;){var y=t[f];switch(l){case"scheme start":if(!y||!h.test(y)){if(o){s("Invalid scheme.");break t}p="",l="no scheme";continue}p+=y.toLowerCase(),l="scheme";break;case"scheme":if(y&&d.test(y))p+=y.toLowerCase();else{if(":"!=y){if(o){null!=y&&s("Code point not allowed in scheme: "+y);break t}p="",f=0,l="no scheme";continue}if(this.l=p,p="",o)break t;void 0!==c[this.l]&&(this.G=!0),l="file"==this.l?"relative":this.G&&a&&a.l==this.l?"relative or authority":this.G?"authority first slash":"scheme data"}break;case"scheme data":"?"==y?(this.A="?",l="query"):"#"==y?(this.C="#",l="fragment"):null!=y&&"\t"!=y&&"\n"!=y&&"\r"!=y&&(this.va+=n(y));break;case"no scheme":if(a&&void 0!==c[a.l]){l="relative";continue}s("Missing scheme."),i.call(this),this.m=!0;break;case"relative or authority":if("/"!=y||"/"!=t[f+1]){s("Expected /, got: "+y),l="relative";continue}l="authority ignore slashes";break;case"relative":if(this.G=!0,"file"!=this.l&&(this.l=a.l),null==y){this.o=a.o,this.v=a.v,this.s=a.s.slice(),this.A=a.A,this.B=a.B,this.j=a.j;break t}if("/"==y||"\\"==y)"\\"==y&&s("\\ is an invalid code point."),l="relative slash";else if("?"==y)this.o=a.o,this.v=a.v,this.s=a.s.slice(),this.A="?",this.B=a.B,this.j=a.j,l="query";else{if("#"!=y){l=t[f+1];var g=t[f+2];("file"!=this.l||!h.test(y)||":"!=l&&"|"!=l||null!=g&&"/"!=g&&"\\"!=g&&"?"!=g&&"#"!=g)&&(this.o=a.o,this.v=a.v,this.B=a.B,this.j=a.j,this.s=a.s.slice(),this.s.pop()),l="relative path";continue}this.o=a.o,this.v=a.v,this.s=a.s.slice(),this.A=a.A,this.C="#",this.B=a.B,this.j=a.j,l="fragment"}break;case"relative slash":if("/"!=y&&"\\"!=y){"file"!=this.l&&(this.o=a.o,this.v=a.v,this.B=a.B,this.j=a.j),l="relative path";continue}"\\"==y&&s("\\ is an invalid code point."),l="file"==this.l?"file host":"authority ignore slashes";break;case"authority first slash":if("/"!=y){s("Expected '/', got: "+y),l="authority ignore slashes";continue}l="authority second slash";break;case"authority second slash":if(l="authority ignore slashes","/"!=y){s("Expected '/', got: "+y);continue}break;case"authority ignore slashes":if("/"!=y&&"\\"!=y){l="authority";continue}s("Expected authority, got: "+y);break;case"authority":if("@"==y){for(_&&(s("@ already seen."),p+="%40"),_=!0,y=0;y<p.length;y++)"\t"==(g=p[y])||"\n"==g||"\r"==g?s("Invalid whitespace in authority."):":"==g&&null===this.j?this.j="":(g=n(g),null!==this.j?this.j+=g:this.B+=g);p=""}else{if(null==y||"/"==y||"\\"==y||"?"==y||"#"==y){f-=p.length,p="",l="host";continue}p+=y}break;case"file host":if(null==y||"/"==y||"\\"==y||"?"==y||"#"==y){2!=p.length||!h.test(p[0])||":"!=p[1]&&"|"!=p[1]?(0!=p.length&&(this.o=e.call(this,p),p=""),l="relative path start"):l="relative path";continue}"\t"==y||"\n"==y||"\r"==y?s("Invalid whitespace in file host."):p+=y;break;case"host":case"hostname":if(":"!=y||m){if(null==y||"/"==y||"\\"==y||"?"==y||"#"==y){if(this.o=e.call(this,p),p="",l="relative path start",o)break t;continue}"\t"!=y&&"\n"!=y&&"\r"!=y?("["==y?m=!0:"]"==y&&(m=!1),p+=y):s("Invalid code point in host/hostname: "+y)}else if(this.o=e.call(this,p),p="",l="port","hostname"==o)break t;break;case"port":if(/[0-9]/.test(y))p+=y;else{if(null==y||"/"==y||"\\"==y||"?"==y||"#"==y||o){if(""!=p&&((p=parseInt(p,10))!=c[this.l]&&(this.v=p+""),p=""),o)break t;l="relative path start";continue}"\t"==y||"\n"==y||"\r"==y?s("Invalid code point in port: "+y):(i.call(this),this.m=!0)}break;case"relative path start":if("\\"==y&&s("'\\' not allowed in path."),l="relative path","/"!=y&&"\\"!=y)continue;break;case"relative path":null!=y&&"/"!=y&&"\\"!=y&&(o||"?"!=y&&"#"!=y)?"\t"!=y&&"\n"!=y&&"\r"!=y&&(p+=n(y)):("\\"==y&&s("\\ not allowed in relative path."),(g=u[p.toLowerCase()])&&(p=g),".."==p?(this.s.pop(),"/"!=y&&"\\"!=y&&this.s.push("")):"."==p&&"/"!=y&&"\\"!=y?this.s.push(""):"."!=p&&("file"==this.l&&0==this.s.length&&2==p.length&&h.test(p[0])&&"|"==p[1]&&(p=p[0]+":"),this.s.push(p)),p="","?"==y?(this.A="?",l="query"):"#"==y&&(this.C="#",l="fragment"));break;case"query":o||"#"!=y?null!=y&&"\t"!=y&&"\n"!=y&&"\r"!=y&&(this.A+=r(y)):(this.C="#",l="fragment");break;case"fragment":null!=y&&"\t"!=y&&"\n"!=y&&"\r"!=y&&(this.C+=y)}f++}}function i(){this.B=this.va=this.l="",this.j=null,this.v=this.o="",this.s=[],this.C=this.A="",this.G=this.m=!1}function a(t,e){void 0===e||e instanceof a||(e=new a(String(e))),this.g=t,i.call(this),o.call(this,this.g.replace(/^[ \t\r\n\f]+|[ \t\r\n\f]+$/g,""),null,e)}var s=!1;try{var l=new URL("b","http://a");l.pathname="c%20d",s="http://a/c%20d"===l.href}catch(t){}if(!s){var c=Object.create(null);c.ftp=21,c.file=0,c.gopher=70,c.http=80,c.https=443,c.ws=80,c.wss=443;var u=Object.create(null);u["%2e"]=".",u[".%2e"]="..",u["%2e."]="..",u["%2e%2e"]="..";var h=/[a-zA-Z]/,d=/[a-zA-Z0-9+\-.]/;a.prototype={toString:function(){return this.href},get href(){if(this.m)return this.g;var t="";return""==this.B&&null==this.j||(t=this.B+(null!=this.j?":"+this.j:"")+"@"),this.protocol+(this.G?"//"+t+this.host:"")+this.pathname+this.A+this.C},set href(t){i.call(this),o.call(this,t)},get protocol(){return this.l+":"},set protocol(t){this.m||o.call(this,t+":","scheme start")},get host(){return this.m?"":this.v?this.o+":"+this.v:this.o},set host(t){!this.m&&this.G&&o.call(this,t,"host")},get hostname(){return this.o},set hostname(t){!this.m&&this.G&&o.call(this,t,"hostname")},get port(){return this.v},set port(t){!this.m&&this.G&&o.call(this,t,"port")},get pathname(){return this.m?"":this.G?"/"+this.s.join("/"):this.va},set pathname(t){!this.m&&this.G&&(this.s=[],o.call(this,t,"relative path start"))},get search(){return this.m||!this.A||"?"==this.A?"":this.A},set search(t){!this.m&&this.G&&(this.A="?","?"==t[0]&&(t=t.slice(1)),o.call(this,t,"query"))},get hash(){return this.m||!this.C||"#"==this.C?"":this.C},set hash(t){this.m||(t?(this.C="#","#"==t[0]&&(t=t.slice(1)),o.call(this,t,"fragment")):this.C="")},get origin(){var t;if(this.m||!this.l)return"";switch(this.l){case"data":case"file":case"javascript":case"mailto":return"null"}return(t=this.host)?this.l+"://"+t:""}};var f=t.URL;f&&(a.createObjectURL=function(t){return f.createObjectURL.apply(f,arguments)},a.revokeObjectURL=function(t){f.revokeObjectURL(t)}),t.URL=a}}(window);var fs=window.customElements,ps=!1,_s=null;function ms(){window.HTMLTemplateElement.bootstrap&&window.HTMLTemplateElement.bootstrap(window.document),_s&&_s(),ps=!0,window.WebComponents.ready=!0,document.dispatchEvent(new CustomEvent("WebComponentsReady",{bubbles:!0}))}fs.polyfillWrapFlushCallback&&fs.polyfillWrapFlushCallback((function(t){_s=t,ps&&t()})),"complete"!==document.readyState?(window.addEventListener("load",ms),window.addEventListener("DOMContentLoaded",(function(){window.removeEventListener("load",ms),ms()}))):ms()}).call(this)}},e={};e.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),t[2575](0,{},e)}();
3
+ //# sourceMappingURL=webcomponents-bundle.js.map
@@ -0,0 +1,9 @@
1
+ /**
2
+ @license @nocompile
3
+ Copyright (c) 2018 The Polymer Project Authors. All rights reserved.
4
+ This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
5
+ The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
6
+ The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
7
+ Code distributed by Google as part of the polymer project is also
8
+ subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
9
+ */