keeweb/index.html

1 line
1.5 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html><head lang="en"><meta charset="UTF-8"><title>KeeWeb</title><meta http-equiv="Content-Security-Policy" content=" default-src 'self'; font-src data:; script-src 'sha512-eqwn+4MCZiwXQsBoHUqnqIHbW9K2TLJgnQcpwM0AgOfQorxamMgtP6mzy+WZi5YutzGhu4h4jI2o8jSmyAMLgg==' 'sha512-4tEMbTePM8G3PvuJYuIHgSHLLmwgo1WgW+BGHfEAmlLr8os/2f2yKWZeNEQYWZG3wRwIzD7wYyzvCWTshw4E9A==' 'sha512-O8LCyDIZGux6S3U7A1L782DT0v/hkBF/NM04Ofe00YdopzJxd12WZHUK4Vsse82T8rO7I05+fvOSnp30mLcioQ==' 'self' blob: 'unsafe-eval'; style-src 'sha512-qDBDjfQdaNQVkacOGvDAnPCj5pkuuXJHu3elAm/nP80Z9wgKFFO8EQvZSqvBQ6Bkqg8hIqETHRJYVQlEtBsDxw==' 'self' blob:; connect-src 'self' ws: https:; child-src 'self' blob:; worker-src 'self' blob:; img-src 'self' data: blob: https://services.keeweb.info/; object-src 'none'; form-action 'none'; "><meta name="application-name" content="KeeWeb"><meta name="kw-signature" content=""><meta name="kw-config" content="(no-config)"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"><meta name="apple-mobile-web-app-title" content="KeeWeb"><meta name="theme-color" content="#6386ec"><meta name="msapplication-config" content="browserconfig.xml"><meta name="msapplication-TileColor" content="#6386ec"><link rel="apple-touch-icon" sizes="180x180" href="icons/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="icons/favicon-16x16.png"><link rel="mask-icon" href="icons/safari-pinned-tab.svg" color="#6386ec"><link rel="apple-touch-startup-image" href="icons/splash-640x1136.png" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><link rel="apple-touch-startup-image" href="icons/splash-750x1294.png" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><link rel="apple-touch-startup-image" href="icons/splash-1242x2148.png" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><link rel="apple-touch-startup-image" href="icons/splash-1125x2436.png" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><link rel="apple-touch-startup-image" href="icons/splash-1536x2048.png" media="(min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait)"><link rel="apple-touch-startup-image" href="icons/splash-1668x2224.png" media="(min-device-width: 834px) and (max-device-width: 834px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait)"><link rel="apple-touch-startup-image" href="icons/splash-2048x2732.png" media="(min-device-width: 1024px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait)"><link rel="manifest" href="manifest.json"><style>html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:initial;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:initial}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:initial}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}@font-face{font-family:FontAwesome;src:url(data:application/vnd.ms-fontobject;charset=utf-8;base64,);src:url(data:application/vnd.ms-fontobject;charset=utf-8;base64,?#iefix&v=4.7.0) format("embedded-opentype"),url(data:font/woff2;charset=utf-8;base64,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) format("woff2"),url(data:font/woff;charset=utf-8;base64,) format("woff"),url(data:font/ttf;charset=utf-8;base64,) format("truetype"),url(data:image/svg+xml;charset=utf-8;base64,#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s linear infinite}.fa-pulse{animation:fa-spin 1s steps(8) infinite}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before{content:""}.fa-check-circle:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid;border-color:#ccc #ccc #bbb;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,.5)}.pika-single{*zoom:1}.pika-single:after,.pika-single:before{content:" ";display:table}.pika-single:after{clear:both}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:700;color:#333;background-color:#fff}.pika-next,.pika-prev{display:block;cursor:pointer;position:relative;outline:none;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:initial;background-position:50%;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.pika-next:hover,.pika-prev:hover{opacity:1}.pika-next.is-disabled,.pika-prev.is-disabled{cursor:default;opacity:.2}.is-rtl .pika-next,.pika-prev{float:left;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");*left:0}.is-rtl .pika-prev,.pika-next{float:right;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");*right:0}.pika-select{display:inline-block;*display:inline}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table td,.pika-table th{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:700;text-align:center}.pika-table abbr{border-bottom:none;cursor:help}.pika-button{cursor:pointer;display:block;box-sizing:border-box;outline:none;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.is-today .pika-button{color:#3af;font-weight:700}.is-selected .pika-button{color:#fff;font-weight:700;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.is-disabled .pika-button,.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-disabled .pika-button{pointer-events:none;cursor:default}.pika-button:hover{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-button .is-selection-disabled{pointer-events:none;cursor:default}.pika-week{font-size:11px;color:#999}.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.white-color{color:#d8e5f1}.black-color{color:#111}.red-color{color:#df3c06}.orange-color{color:#fbac45}.yellow-color{color:#e9d92a}.green-color{color:#0dc94b}.blue-color{color:#4e6af8}.violet-color{color:#d946db}.muted-color{color:var(--muted-color)}.action-color{color:var(--action-color)}.error-color{color:var(--error-color)}html{height:100%;width:100%}body,html{overflow:hidden;position:fixed}body{cursor:default;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent}noscript{display:block;margin-top:10%;text-align:center;font-size:16px}[type=button],[type=reset],[type=submit],button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--button-border-radius);cursor:pointer;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Roboto,Arial,Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,STXihei,华文细黑,sans-serif;font-size:1rem;-webkit-font-smoothing:antialiased;font-weight:600;line-height:1;padding:.75em 1.5em;text-decoration:none;transition:background-color border-color .15s ease;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap;outline:none;min-width:80px;border:1px solid var(--action-color);background-color:var(--action-color);color:var(--text-contrast-action-color)}[type=button].btn-error,[type=button].btn-silent,[type=reset].btn-error,[type=reset].btn-silent,[type=submit].btn-error,[type=submit].btn-silent,button.btn-error,button.btn-silent{border-color:var(--base-border-color);background-color:initial;color:var(--text-color)}[type=button]:hover,[type=reset]:hover,[type=submit]:hover,button:hover{border-color:var(--action-background-color-focus);background-color:var(--action-background-color-focus)}[type=button]:hover.btn-error,[type=reset]:hover.btn-error,[type=submit]:hover.btn-error,button:hover.btn-error{border-color:var(--error-background-color-focus);background-color:var(--error-background-color-focus-tr)}[type=button]:hover.btn-silent,[type=reset]:hover.btn-silent,[type=submit]:hover.btn-silent,button:hover.btn-silent{border-color:var(--action-background-color-focus);background-color:var(--action-background-color-focus-tr)}[type=button]:active,[type=reset]:active,[type=submit]:active,button:active{border-color:var(--action-background-color-active);background-color:var(--action-background-color-active)}[type=button]:active.btn-error,[type=reset]:active.btn-error,[type=submit]:active.btn-error,button:active.btn-error{border-color:var(--error-background-color-active);background-color:var(--error-background-color-active-tr)}[type=button]:active.btn-silent,[type=reset]:active.btn-silent,[type=submit]:active.btn-silent,button:active.btn-silent{border-color:var(--action-background-color-active);background-color:var(--action-background-color-active-tr)}[type=button]:disabled,[type=reset]:disabled,[type=submit]:disabled,button:disabled{cursor:default;opacity:.5}[type=button]:disabled:hover,[type=reset]:disabled:hover,[type=submit]:disabled:hover,button:disabled:hover{border-color:var(--action-color);background-color:var(--action-color)}[type=button]:disabled:hover.btn-error,[type=reset]:disabled:hover.btn-error,[type=submit]:disabled:hover.btn-error,button:disabled:hover.btn-error{border-color:var(--error-color);background-color:initial}[type=button]:disabled:hover.btn-silent,[type=reset]:disabled:hover.btn-silent,[type=submit]:disabled:hover.btn-silent,button:disabled:hover.btn-silent{border-color:var(--action-color);background-color:initial}.svg-btn svg path{transition:fill .15s ease;fill:var(--text-color)}.svg-btn:hover svg path{fill:var(--medium-color)}:focus{outline:none}fieldset{background-color:var(--secondary-background-color);border:1px solid var(--base-border-color);margin:0 0 .75em;padding:1.5em}input{line-height:normal;color:inherit}input,select{display:block;-webkit-app-region:no-drag}input,label,select{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Roboto,Arial,Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,STXihei,华文细黑,sans-serif;font-size:1rem}label{display:inline-block;font-weight:600;margin-bottom:.375em}label.required:after{content:"*"}label abbr{display:none}input:not([type]),input[type=password],input[type=text],textarea{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Roboto,Arial,Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,STXihei,华文细黑,sans-serif;font-size:1rem;margin-bottom:.75em;padding:.5em;transition:border-color .15s ease;color:var(--text-color);background-color:var(--background-color);border:1px solid var(--base-border-color);box-shadow:inset 0 1px 3px rgba(0,0,0,.06);border-radius:var(--input-border-radius)}input:not([type])::-ms-clear,input[type=password]::-ms-clear,input[type=text]::-ms-clear,textarea::-ms-clear{display:none}input:not([type])::-webkit-credentials-auto-fill-button,input[type=password]::-webkit-credentials-auto-fill-button,input[type=text]::-webkit-credentials-auto-fill-button,textarea::-webkit-credentials-auto-fill-button{visibility:hidden;display:none!important;pointer-events:none;position:absolute;right:0}input:not([type]):hover,input[type=password]:hover,input[type=text]:hover,textarea:hover{border-color:var(--accent-border-color)}input:not([type]):focus,input[type=password]:focus,input[type=text]:focus,textarea:focus{border-color:var(--form-box-border-focus);box-shadow:inset 0 1px 3px rgba(0,0,0,.06),0 0 var(--focus-shadow-blur) var(--focus-shadow-spread) var(--form-box-shadow-color-focus);outline:none}input:not([type]):disabled,input[type=password]:disabled,input[type=text]:disabled,textarea:disabled{background-color:var(--disabled-background-color);cursor:not-allowed}input:not([type]):disabled:hover,input[type=password]:disabled:hover,input[type=text]:disabled:hover,textarea:disabled:hover{border:1px solid var(--base-border-color)}input:not([type]).input--error,input:not([type]).input--error:focus,input:not([type]).input--error:hover,input:not([type]):invalid,input[type=password].input--error,input[type=password].input--error:focus,input[type=password].input--error:hover,input[type=password]:invalid,input[type=text].input--error,input[type=text].input--error:focus,input[type=text].input--error:hover,input[type=text]:invalid,textarea.input--error,textarea.input--error:focus,textarea.input--error:hover,textarea:invalid{border-color:var(--error-color);box-shadow:inset 0 1px 3px rgba(0,0,0,.06),0 0 var(--focus-shadow-blur) var(--focus-shadow-spread) var(--form-box-shadow-color-focus-error)}input:not([type]).input--error::selection,input:not([type]).input--error:focus::selection,input:not([type]).input--error:hover::selection,input:not([type]):invalid::selection,input[type=password].input--error::selection,input[type=password].input--error:focus::selection,input[type=password].input--error:hover::selection,input[type=password]:invalid::selection,input[type=text].input--error::selection,input[type=text].input--error:focus::selection,input[type=text].input--error:hover::selection,input[type=text]:invalid::selection,textarea.input--error::selection,textarea.input--error:focus::selection,textarea.input--error:hover::selection,textarea:invalid::selection{background-color:var(--text-selection-bg-color-error)}input:not([type]).input-padding-right,input[type=password].input-padding-right,input[type=text].input-padding-right,textarea.input-padding-right{padding-right:1.7em}input:not([type])::placeholder,input[type=password]::placeholder,input[type=text]::placeholder,textarea::placeholder{color:var(--muted-color)}textarea{resize:vertical}input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=checkbox],input[type=radio]{display:inline;margin-right:.375em}input[type=checkbox]+label,input[type=radio]+label{display:inline-block}input[type=file]{margin-bottom:.75em;width:100%}select{margin-bottom:.75em;max-width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .15s ease;border-radius:var(--input-border-radius);padding-left:.5em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMDYiIGhlaWdodD0iMzA2Ij48cGF0aCBmaWxsPSIjOTk4NDgzIiBkPSJNMjcwLjMgNTguNjVMMTUzIDE3NS45NSAzNS43IDU4LjY1IDAgOTQuMzVsMTUzIDE1MyAxNTMtMTUzeiIvPjwvc3ZnPg==);background-position:calc(100% - 5px) 50%;background-size:10px;background-repeat:no-repeat;background-color:var(--background-color);border:1px solid var(--base-border-color);color:var(--text-color);box-shadow:inset 0 1px 3px rgba(0,0,0,.06)}select:hover{border-color:var(--accent-border-color)}select:focus{border-color:var(--form-box-border-focus);box-shadow:inset 0 1px 3px rgba(0,0,0,.06),0 0 var(--focus-shadow-blur) var(--focus-shadow-spread) var(--form-box-shadow-color-focus);outline:none}select:disabled{background-color:var(--disabled-background-color);cursor:not-allowed}select:disabled:hover{border:1px solid var(--base-border-color)}select::-ms-expand{display:none}option{background-color:var(--background-color);color:var(--text-color)}input[type=checkbox]{display:none}input[type=checkbox]:not([disabled])+label:hover:before{color:var(--action-color)}input[type=checkbox]+label:before{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";display:inline-block;width:1.3em;color:var(--text-color)}input[type=checkbox]:checked+label:before{content:""}input[type=range]{-webkit-appearance:none;width:100%;margin:12px 0;padding:0;background:transparent}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{background:var(--text-color);width:100%;height:1px;cursor:pointer;border-radius:1px;border:none}input[type=range]::-webkit-slider-thumb{background:var(--text-color);border:none;height:14px;width:14px;border-radius:14px;cursor:pointer;-webkit-appearance:none;margin-top:-6.5px}input[type=range]::-moz-range-track{background:var(--text-color);width:100%;height:1px;cursor:pointer;border-radius:1px;border:none}input[type=range]::-moz-range-thumb{background:var(--text-color);border:none;height:14px;width:14px;border-radius:14px;cursor:pointer}input[type=range]::-moz-focus-outer{border:0}input[type=range]::-ms-track{width:100%;height:1px;cursor:pointer;background:transparent;border-color:transparent;border-width:14px 0;color:transparent}input[type=range]::-ms-tooltip{display:none}input[type=range]::-ms-fill-lower,input[type=range]::-ms-fill-upper,input[type=range]:focus::-ms-fill-lower,input[type=range]:focus::-ms-fill-upper{background:#d3d3d3}input[type=range]::-ms-thumb{border:none;height:14px;width:14px;border-radius:14px;cursor:pointer;background:#d3d3d3}.input-base,.input-size-base,.settings__row{width:60%}@media (max-width:736px){.input-base,.input-size-base,.settings__row{width:calc(100% - 20px)}}ol,ul{list-style-type:none;margin:0;padding:0}dl{margin-bottom:.75em}dl dt{font-weight:700;margin-top:.75em}dl dd{margin:0}html{font-size:12px}body{height:100%;width:100%;-webkit-user-select:none;user-select:none;color:var(--text-color);background-color:var(--background-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Roboto,Arial,Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,STXihei,华文细黑,sans-serif;font-feature-settings:"kern","liga 0";font-size:1rem;line-height:1.5}@-moz-document url-prefix(){body{text-shadow:0 0}}h1,h2,h3,h4,h5,h6{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Helvetica,Roboto,Arial,Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,STXihei,华文细黑,sans-serif;line-height:1.2;margin:0 0 .75em}h6{font-size:1rem}h5{font-size:1.1rem}h4{font-size:1.21rem}h3{font-size:1.331rem}h2{font-size:1.5625rem}h1{font-size:2.44141rem}p{margin:0 0 .75em}a{color:var(--text-color);text-decoration:none;display:inline-block;transition:color .15s ease;cursor:pointer;height:1.2em}a:not(.no-border){border-bottom:1px dotted}a:active,a:focus,a:hover{outline:none}a:active.muted-color,a:active:not(.no-border),a:focus.muted-color,a:focus:not(.no-border),a:hover.muted-color,a:hover:not(.no-border){border-bottom:1px solid}hr{border:0;border-bottom:1px solid var(--base-border-color);margin:1.5em 0}img{margin:0;max-width:100%}body:not(.edge) ::selection{background-color:var(--text-selection-bg-color)}code{font-family:SFMono-Regular,Monaco,Consolas,Lucida Console,monospace}body.th-macdark{--light-border-color:rgba(68,68,69,0.7);--secondary-background-color:#2d2d2e;--form-box-border-focus:#6697c0;--form-box-shadow-color-focus:#44749d;--selected-item-color:#2457c9}body.th-macdark .app__menu{background-color:var(--secondary-background-color)}body.th-macdark .app__menu .menu__item.menu__item--active.menu__item--hover>.menu__item-body,body.th-macdark .app__menu .menu__item.menu__item--active>.menu__item-body{background-color:#515152}body.th-macdark .app__menu .menu__item-edit,body.th-macdark .app__menu .menu__item-empty-trash{right:.5em}body.th-macdark .app__menu .menu__item-edit:not(:hover),body.th-macdark .app__menu .menu__item-empty-trash:not(:hover){color:#8f8f91}body.th-macdark .app__footer{background-color:var(--secondary-background-color)}body.th-macdark .at-select__table .at-select__item{border-right-width:0}body.th-macdark .at-select__table .at-select__item.at-select__item--active{background-color:var(--selected-item-color)}body.th-macdark .at-select__item--active .at-select__item-options:hover{background:var(--secondary-background-color)}body.th-macdark .dropdown__item--active,body.th-macdark .dropdown__item--active:hover{background-color:var(--selected-item-color)}@media (min-width:621px){body.th-macdark .list__item--active,body.th-macdark .list__item--active:hover{background-color:var(--selected-item-color)}body.th-macdark .list__item--active .list__item-descr,body.th-macdark .list__item--active:hover .list__item-descr{color:#8f8f91}body.th-macdark input,body.th-macdark select,body.th-macdark textarea{background-color:rgba(108,108,109,.025)}body.th-macdark input:focus,body.th-macdark select:focus,body.th-macdark textarea:focus{background-color:rgba(108,108,109,.05)}}body.th-macdark .yellow-color{color:#e0c24c}body.th-macdark .red-color{color:#ec655a}body.th-macdark .orange-color{color:#e78f42}body.th-macdark .green-color{color:#71bf47}body.th-macdark .blue-color{color:#3062d1}body.th-macdark .violet-color{color:#e55c9c}.th-db{--modal-opacity:.9;--background-color:#342f2e;--medium-color:#fed9d8;--text-color:#ffeae9;--action-color:#2c9957;--error-color:#fd6d67;--muted-color:#716261;--muted-color-border:#524948;--text-selection-bg-color:rgba(44,153,87,0.3);--text-selection-bg-color-error:rgba(253,109,103,0.8);--text-semi-muted-color:#feeae8;--text-contrast-action-color:#ffeae9;--text-contrast-error-color:#ffeae9;--base-border-color:#998483;--accent-border-color:#b79e9d;--light-border-color:#48403f;--form-box-border-focus:#2c9957;--form-box-shadow-color-focus:rgba(38,133,76,0.7);--form-box-shadow-color-focus-error:rgba(253,85,78,0.7);--dropdown-box-shadow-color:rgba(254,217,216,0.05);--secondary-background-color:#48403f;--intermediate-background-color:#3a3433;--intermediate-pressed-background-color:#393332;--disabled-background-color:#312d2c;--action-background-color-focus:#237a46;--action-background-color-focus-tr:rgba(35,122,70,0.1);--error-background-color-focus:#ca5752;--error-background-color-focus-tr:rgba(202,87,82,0.1);--action-background-color-active:#217341;--action-background-color-active-tr:rgba(33,115,65,0.15);--error-background-color-active:#be524d;--error-background-color-active-tr:rgba(190,82,77,0.15);--modal-background-color:rgba(52,47,46,0.9);--modal-background-color-tr:rgba(52,47,46,0)}.th-db,.th-fb{--mute-percent:30%;--light-border-percent:10%;--color-lightness-shift:0;--focus-shadow-blur:3px;--focus-shadow-spread:0;--button-border-radius:1px;--input-border-radius:1px;--selected-border-width:3px;--accent-border-width:1px}.th-fb{--modal-opacity:.9;--background-color:#282c34;--medium-color:#abb2bf;--text-color:#d7dae0;--action-color:#528bff;--error-color:#c34034;--muted-color:#4f545e;--muted-color-border:#3c4049;--text-selection-bg-color:rgba(82,139,255,0.3);--text-selection-bg-color-error:rgba(195,64,52,0.8);--text-semi-muted-color:#d6dae0;--text-contrast-action-color:#d7dae0;--text-contrast-error-color:#d7dae0;--base-border-color:#6a6f7a;--accent-border-color:#7d838e;--light-border-color:#353942;--form-box-border-focus:#528bff;--form-box-shadow-color-focus:rgba(57,122,255,0.7);--form-box-shadow-color-focus-error:rgba(175,57,47,0.7);--dropdown-box-shadow-color:rgba(171,178,191,0.05);--secondary-background-color:#353942;--intermediate-background-color:#2c3038;--intermediate-pressed-background-color:#2b2f38;--disabled-background-color:#262a31;--action-background-color-focus:#426fcc;--action-background-color-focus-tr:rgba(66,111,204,0.1);--error-background-color-focus:#9c332a;--error-background-color-focus-tr:rgba(156,51,42,0.1);--action-background-color-active:#3e68bf;--action-background-color-active-tr:rgba(62,104,191,0.15);--error-background-color-active:#923027;--error-background-color-active-tr:rgba(146,48,39,0.15);--modal-background-color:rgba(40,44,52,0.9);--modal-background-color-tr:rgba(40,44,52,0)}.th-wh{--modal-opacity:.9;--background-color:#fafafa;--medium-color:#050505;--text-color:#424243;--action-color:#475fd7;--error-color:#e75675;--muted-color:#b1b1b1;--muted-color-border:#d5d5d5;--text-selection-bg-color:rgba(71,95,215,0.3);--text-selection-bg-color-error:rgba(231,86,117,0.8);--text-semi-muted-color:#424244;--text-contrast-action-color:#fafafa;--text-contrast-error-color:#fafafa;--base-border-color:grey;--accent-border-color:#5b5b5b;--light-border-color:#e2e2e2;--form-box-border-focus:#475fd7;--form-box-shadow-color-focus:rgba(50,77,210,0.7);--form-box-shadow-color-focus-error:rgba(228,64,99,0.7);--dropdown-box-shadow-color:rgba(5,5,5,0.05);--secondary-background-color:#e2e2e2;--intermediate-background-color:#f3f3f3;--intermediate-pressed-background-color:#f4f4f4;--disabled-background-color:#eee;--action-background-color-focus:#394cac;--action-background-color-focus-tr:rgba(57,76,172,0.1);--error-background-color-focus:#b9455e;--error-background-color-focus-tr:rgba(185,69,94,0.1);--action-background-color-active:#3547a1;--action-background-color-active-tr:rgba(53,71,161,0.15);--error-background-color-active:#ad4158;--error-background-color-active-tr:rgba(173,65,88,0.15);--modal-background-color:hsla(0,0%,98%,0.9);--modal-background-color-tr:hsla(0,0%,98%,0)}.th-te,.th-wh{--mute-percent:30%;--light-border-percent:10%;--color-lightness-shift:0;--focus-shadow-blur:3px;--focus-shadow-spread:0;--button-border-radius:1px;--input-border-radius:1px;--selected-border-width:3px;--accent-border-width:1px}.th-te{--modal-opacity:.9;--background-color:#222;--medium-color:#999;--text-color:#eee;--action-color:#22d66d;--error-color:#c34034;--muted-color:#464646;--muted-color-border:#343434;--text-selection-bg-color:rgba(34,214,109,0.3);--text-selection-bg-color-error:rgba(195,64,52,0.8);--text-semi-muted-color:#edeeed;--text-contrast-action-color:#eee;--text-contrast-error-color:#eee;--base-border-color:#5e5e5e;--accent-border-color:#6f6f6f;--light-border-color:#2e2e2e;--form-box-border-focus:#22d66d;--form-box-shadow-color-focus:rgba(31,192,98,0.7);--form-box-shadow-color-focus-error:rgba(175,57,47,0.7);--dropdown-box-shadow-color:hsla(0,0%,60%,0.05);--secondary-background-color:#2e2e2e;--intermediate-background-color:#262626;--intermediate-pressed-background-color:#252525;--disabled-background-color:#202020;--action-background-color-focus:#1bab57;--action-background-color-focus-tr:rgba(27,171,87,0.1);--error-background-color-focus:#9c332a;--error-background-color-focus-tr:rgba(156,51,42,0.1);--action-background-color-active:#1aa152;--action-background-color-active-tr:rgba(26,161,82,0.15);--error-background-color-active:#923027;--error-background-color-active-tr:rgba(146,48,39,0.15);--modal-background-color:rgba(34,34,34,0.9);--modal-background-color-tr:rgba(34,34,34,0)}.th-hc{--mute-percent:60%;--light-border-percent:50%;--modal-opacity:1;--color-lightness-shift:0;--focus-shadow-blur:3px;--focus-shadow-spread:0;--button-border-radius:1px;--input-border-radius:1px;--selected-border-width:3px;--accent-border-width:1px;--background-color:#fafafa;--medium-color:#050505;--text-color:#050505;--action-color:#2d72d7;--error-color:#e74859;--muted-color:#676767;--muted-color-border:#b1b1b1;--text-selection-bg-color:rgba(45,114,215,0.3);--text-selection-bg-color-error:rgba(231,72,89,0.8);--text-semi-muted-color:#050606;--text-contrast-action-color:#fafafa;--text-contrast-error-color:#fafafa;--base-border-color:grey;--accent-border-color:#5b5b5b;--light-border-color:grey;--form-box-border-focus:#2d72d7;--form-box-shadow-color-focus:rgba(38,102,197,0.7);--form-box-shadow-color-focus-error:rgba(228,49,69,0.7);--dropdown-box-shadow-color:rgba(5,5,5,0.05);--secondary-background-color:#e2e2e2;--intermediate-background-color:#f3f3f3;--intermediate-pressed-background-color:#f4f4f4;--disabled-background-color:#eee;--action-background-color-focus:#245bac;--action-background-color-focus-tr:rgba(36,91,172,0.1);--error-background-color-focus:#b93a47;--error-background-color-focus-tr:rgba(185,58,71,0.1);--action-background-color-active:#2256a1;--action-background-color-active-tr:rgba(34,86,161,0.15);--error-background-color-active:#ad3643;--error-background-color-active-tr:rgba(173,54,67,0.15);--modal-background-color:#fafafa;--modal-background-color-tr:hsla(0,0%,98%,0)}.th-sd{--modal-opacity:.9;--color-lightness-shift:50%;--background-color:#002b36;--medium-color:#93a1a1;--text-color:#839496;--muted-color:#587276;--muted-color-border:#2c4e56;--text-selection-bg-color:rgba(133,153,0,0.3);--text-selection-bg-color-error:rgba(220,50,47,0.8);--text-semi-muted-color:#839495;--text-contrast-action-color:#002b36;--text-contrast-error-color:#002b36;--base-border-color:#4a666c;--accent-border-color:#60787c;--light-border-color:#0f3741;--dropdown-box-shadow-color:rgba(147,161,161,0.05);--secondary-background-color:#0f3741;--intermediate-background-color:#042f39;--intermediate-pressed-background-color:#042e39;--disabled-background-color:#002933;--modal-background-color:rgba(0,43,54,0.9);--modal-background-color-tr:rgba(0,43,54,0)}.th-sd,.th-sl{--mute-percent:60%;--light-border-percent:10%;--focus-shadow-blur:3px;--focus-shadow-spread:0;--button-border-radius:1px;--input-border-radius:1px;--selected-border-width:3px;--accent-border-width:1px;--action-color:#859900;--error-color:#dc322f;--form-box-border-focus:#859900;--form-box-shadow-color-focus:rgba(111,128,0,0.7);--form-box-shadow-color-focus-error:rgba(207,38,35,0.7);--action-background-color-focus:#6a7a00;--action-background-color-focus-tr:rgba(106,122,0,0.1);--error-background-color-focus:#b02826;--error-background-color-focus-tr:rgba(176,40,38,0.1);--action-background-color-active:#647300;--action-background-color-active-tr:rgba(100,115,0,0.15);--error-background-color-active:#a52623;--error-background-color-active-tr:rgba(165,38,35,0.15)}.th-sl{--modal-opacity:.9;--background-color:#fdf6e3;--medium-color:#586e75;--text-color:#657b83;--muted-color:#9aa4a1;--muted-color-border:#cccdc2;--text-selection-bg-color:rgba(133,153,0,0.3);--text-selection-bg-color-error:rgba(220,50,47,0.8);--text-semi-muted-color:#657b82;--text-contrast-action-color:#fdf6e3;--text-contrast-error-color:#fdf6e3;--base-border-color:#abb2ac;--accent-border-color:#929e9c;--light-border-color:#ede8d8;--dropdown-box-shadow-color:rgba(88,110,117,0.05);--secondary-background-color:#ede8d8;--intermediate-background-color:#f8f2e0;--intermediate-pressed-background-color:#f9f2e0;--disabled-background-color:#f0ead8;--modal-background-color:rgba(253,246,227,0.9);--modal-background-color-tr:rgba(253,246,227,0)}.th-macdark,.th-sl{--color-lightness-shift:0}.th-macdark{--mute-percent:30%;--light-border-percent:10%;--modal-opacity:.9;--focus-shadow-blur:0;--focus-shadow-spread:3px;--button-border-radius:2px;--input-border-radius:3px;--selected-border-width:0;--accent-border-width:0;--background-color:#1f1f20;--medium-color:#b7b7b8;--text-color:#f7f7f7;--action-color:#3063d4;--error-color:#ec655a;--muted-color:#4d4d4e;--muted-color-border:#363637;--text-selection-bg-color:rgba(48,99,212,0.3);--text-selection-bg-color-error:rgba(236,101,90,0.8);--text-semi-muted-color:#f6f6f7;--text-contrast-action-color:#f7f7f7;--text-contrast-error-color:#f7f7f7;--base-border-color:#6b6b6c;--accent-border-color:#828283;--light-border-color:#2e2e2f;--form-box-border-focus:#3063d4;--form-box-shadow-color-focus:rgba(40,88,194,0.7);--form-box-shadow-color-focus-error:rgba(233,80,67,0.7);--dropdown-box-shadow-color:rgba(183,183,184,0.05);--secondary-background-color:#2e2e2f;--intermediate-background-color:#242425;--intermediate-pressed-background-color:#232324;--disabled-background-color:#1d1d1e;--action-background-color-focus:#264faa;--action-background-color-focus-tr:rgba(38,79,170,0.1);--error-background-color-focus:#bd5148;--error-background-color-focus-tr:rgba(189,81,72,0.1);--action-background-color-active:#244a9f;--action-background-color-active-tr:rgba(36,74,159,0.15);--error-background-color-active:#b14c44;--error-background-color-active-tr:rgba(177,76,68,0.15);--modal-background-color:rgba(31,31,32,0.9);--modal-background-color-tr:rgba(31,31,32,0)}.back-button{cursor:pointer;position:absolute;top:0;right:1em;padding:1em 0 1px;z-index:1}.auto-type-hint{-webkit-app-region:no-drag;color:var(--text-color);background:var(--background-color);border:1px solid var(--light-border-color);box-shadow:0 0 50px var(--dropdown-box-shadow-color);position:absolute;z-index:10000;border-radius:1px;padding:.5em 1em;box-sizing:border-box;overflow:hidden}.edge .auto-type-hint{border-width:1px!important}.auto-type-hint__block{margin-bottom:.5em}.auto-type-hint__block>a,.auto-type-hint__block>b{font-weight:400;display:inline-block;margin-right:1em;margin-bottom:.5em}.auto-type-hint__link-details{position:absolute;right:0;top:0;margin:.5em 1em}.drag-mask{height:100%;width:100%;top:0;left:0;-webkit-app-region:no-drag}.drag-handle__inner,.drag-mask{position:absolute}.drag-handle__inner--x{top:0;left:-2px;width:5px;height:100%}.drag-handle__inner--y{top:-2px;left:0;width:100%;height:5px}@media (max-width:620px){.drag-handle__inner{display:none}}.info-btn{cursor:pointer;color:var(--muted-color)}.info-btn:hover,.pika-single{color:var(--text-color)}.pika-single{-webkit-app-region:no-drag;background:var(--background-color);border:1px solid var(--light-border-color);box-shadow:0 0 50px var(--dropdown-box-shadow-color)}.edge .pika-single{border-width:1px!important}.pika-label{background:var(--background-color);color:var(--muted-color)}button.pika-next,button.pika-prev{min-width:0;background:none;border:none;border-radius:1px;position:relative}button.pika-next:after,button.pika-prev:after{display:block;content:" ";position:absolute;top:8px;left:6px;left:50%;transform:translateX(-50%)}button.pika-prev:after{border-left:0 solid transparent;border-right:7px solid var(--text-color)}button.pika-next:after,button.pika-prev:after{height:0;width:0;border-bottom:7px solid transparent;border-top:7px solid transparent}button.pika-next:after{border-left:7px solid var(--text-color);border-right:0 solid transparent}.pika-table th{color:var(--medium-color)}.pika-button,button.pika-button{min-width:0;border:none;color:var(--text-color);background-color:var(--background-color);border-radius:1px;padding:8px 4px}.pika-week{color:var(--medium-color)}.is-today .pika-button{color:var(--action-color)}.is-selected .pika-button{color:var(--text-color);background:var(--action-color);box-shadow:inset 0 1px 3px var(--action-color)}.is-disabled .pika-button{color:var(--muted-color);opacity:.3}.pika-button:hover{color:var(--text-color)!important;background:var(--action-color)!important}.dropdown{position:absolute;z-index:10000;border-radius:1px;background:var(--background-color);border:1px solid var(--light-border-color);box-shadow:0 0 50px var(--dropdown-box-shadow-color)}.dropdown__item{padding:8px 12px;cursor:pointer;white-space:nowrap}.dropdown__item--active,.dropdown__item--active:hover{cursor:default;-webkit-app-region:no-drag;border-right:var(--selected-border-width) solid var(--action-color);background-color:var(--secondary-background-color)}.dropdown__item--active:hover,.dropdown__item--active:hover:hover{color:var(--text-color)}@media (min-width:621px){.dropdown__item{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-right:var(--accent-border-width) solid transparent}.dropdown__item.sel--active,.dropdown__item:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-right:var(--accent-border-width) solid var(--action-color)}.dropdown__item:active{background-color:var(--intermediate-pressed-background-color)}.dropdown__item--active,.dropdown__item--active:hover{cursor:default;-webkit-app-region:no-drag;border-right:var(--selected-border-width) solid var(--action-color);background-color:var(--secondary-background-color)}.dropdown__item--active:hover,.dropdown__item--active:hover:hover{color:var(--text-color)}}.dropdown__item-icon{width:1.6em}.empty-block{display:flex;align-items:center;flex-direction:column;justify-content:center;height:100%;width:100%;position:absolute;top:0;left:0;text-align:center}.empty-block__icon{font-size:80px;margin-bottom:10px}.empty-block__text,.empty-block__title{padding:0 1em}.empty-block__lower-btns{position:absolute;bottom:calc(1.5em + 1px);left:1.5em}.hide{display:none!important}.hide-by-pos{position:absolute;top:-10000px;left:-10000px}.invisible{visibility:hidden!important}.flip3d{animation:flip3d 1s linear 0s infinite;transform-style:preserve-3d}.grayscale{filter:grayscale(1)}.input-shake{animation:shake 50s cubic-bezier(.36,.07,.19,.97) 0s}@keyframes flip3d{0%{transform:rotateY(0)}to{transform:rotateY(1turn)}}@keyframes shake{0%,1%,to{transform:translateZ(0)}.1%,.9%{transform:translate3d(-1px,0,0)}.2%,.8%{transform:translate3d(2px,0,0)}.3%,.5%,.7%{transform:translate3d(-3px,0,0)}.4%,.6%{transform:translate3d(3px,0,0)}}.icon-select__items{display:flex;align-items:flex-start;flex-direction:row;justify-content:flex-start;flex-wrap:wrap;-webkit-user-select:none;user-select:none;padding-bottom:1em}.icon-select__items--custom{padding-top:1em;border-top:1px solid var(--light-border-color)}.icon-select__icon{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;width:26px;text-align:center;font-size:20px;padding:10px}.icon-select__icon.sel--active,.icon-select__icon:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.icon-select__icon:active{background-color:var(--intermediate-pressed-background-color)}.icon-select__icon.icon-select__icon--active{cursor:default;-webkit-app-region:no-drag;border-bottom:var(--selected-border-width) solid var(--action-color);background-color:var(--secondary-background-color)}.icon-select__icon.icon-select__icon--active:hover{color:var(--text-color)}.icon-select__icon-btn{padding:5px 10px}.icon-select__icon-btn>img{width:16px;height:16px}.icon-select__icon--custom-selected>i{display:none}.icon-select__icon--download-error>i:before{content:""}.modal{position:absolute;top:0;left:0;height:100%;width:100%;background-color:var(--modal-background-color);z-index:100000;transition:background-color .15s ease}.modal.modal--hidden{background-color:var(--modal-background-color-tr)}.modal.modal--opaque{background-color:var(--background-color)}.modal__content{height:100%;width:100%;display:flex;align-items:stretch;flex-direction:column;justify-content:center;transition:all .15s ease}.modal--hidden .modal__content{transform:scale(.01);opacity:0}.modal__icon{font-size:6em;text-align:center}.modal__icon--svg{fill:var(--text-color);width:1.4em;align-self:center}.modal__header{text-align:center;font-size:1.5625rem}.modal__body,.modal__header{-webkit-user-select:text;user-select:text}.modal__body{text-align:left;margin:1.5em}.modal__buttons{text-align:right}.modal__buttons button~button{margin-left:.75em}.modal__buttons>button{margin-bottom:.75em}.modal__body,.modal__buttons{align-self:center;width:40%}@media (max-width:736px){.modal__body,.modal__buttons{width:90%}}.modal__check-wrap{margin-top:1.5em}.modal__pre{white-space:pre-wrap}.scroller{overflow-y:scroll;height:100%}.scroller::-webkit-scrollbar{width:0}.scroller__bar-wrapper{pointer-events:none;position:absolute;z-index:3;top:10px;bottom:10px;right:5px;width:8px}.scroller__bar{position:absolute;z-index:1;width:8px;border-radius:3px;pointer-events:auto;-webkit-app-region:no-drag}@media screen and (-moz-windows-theme){@-moz-document url-prefix(){.scroller{margin-right:0!important;padding-right:0!important}}}.tip{position:absolute;padding:.5em 1em;border-radius:1px;white-space:nowrap;z-index:10000;pointer-events:none;opacity:1;-webkit-app-region:no-drag;color:var(--text-color);background:var(--background-color);border:1px solid var(--light-border-color);box-shadow:0 0 50px var(--dropdown-box-shadow-color)}@media (min-width:621px){.tip{animation:tip .5s cubic-bezier(.95,.05,.795,.035)}}.edge .tip{border-width:1px!important}.tip.tip--fast,.tip.tip--fast:after,.tip.tip--fast:before{animation-duration:.15s}.tip--hide.tip,.tip--hide.tip:after,.tip--hide.tip:before{transition:all .15s ease-out;transition-property:color,border-color,background-color,box-shadow;color:transparent;background-color:initial;border-color:transparent!important;box-shadow:none}.tip:after,.tip:before{content:" ";width:0;height:0}@media (min-width:621px){.tip:after,.tip:before{animation:tip .5s cubic-bezier(.95,.05,.795,.035)}}.tip.tip--bottom:after{position:absolute;top:-8px;left:50%;transform:translate(-50%);height:0;width:0;border-left:5px solid transparent;border-bottom:8px solid var(--background-color);border-right:5px solid transparent;border-top:0 solid transparent}.tip.tip--top:after{left:50%}.tip.tip--top-left:after,.tip.tip--top:after{position:absolute;top:100%;transform:translate(-50%);height:0;width:0;border-left:5px solid transparent;border-bottom:0 solid transparent;border-right:5px solid transparent;border-top:8px solid var(--background-color)}.tip.tip--top-left:after{left:calc(100% - 10px)}.tip.tip--left:after{left:100%;border-left:8px solid var(--background-color);border-right:0 solid transparent}.tip.tip--left:after,.tip.tip--right:after{position:absolute;top:50%;transform:translateY(-50%);height:0;width:0;border-bottom:5px solid transparent;border-top:5px solid transparent}.tip.tip--right:after{left:-8px;border-left:0 solid transparent;border-right:8px solid var(--background-color)}.tip.tip--bottom:before{position:absolute;top:-9px;left:50%;transform:translate(-50%);height:0;width:0;border-left:6px solid transparent;border-bottom:9px solid var(--light-border-color);border-right:6px solid transparent;border-top:0 solid transparent}.tip.tip--top:before{left:50%}.tip.tip--top-left:before,.tip.tip--top:before{position:absolute;top:100%;transform:translate(-50%);height:0;width:0;border-left:6px solid transparent;border-bottom:0 solid transparent;border-right:6px solid transparent;border-top:9px solid var(--light-border-color)}.tip.tip--top-left:before{left:calc(100% - 10px)}.tip.tip--left:before{left:100%;border-left:9px solid var(--light-border-color);border-right:0 solid transparent}.tip.tip--left:before,.tip.tip--right:before{position:absolute;top:50%;transform:translateY(-50%);height:0;width:0;border-bottom:6px solid transparent;border-top:6px solid transparent}.tip.tip--right:before{left:-9px;border-left:0 solid transparent;border-right:9px solid var(--light-border-color)}@keyframes tip{0%{opacity:0}}.app{height:100%;width:100%;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start}.titlebar-hidden-inset .app{-webkit-app-region:drag}.app__body{flex:1;display:flex;align-items:stretch;flex-direction:row;justify-content:flex-start;overflow:hidden}.app__titlebar-drag{position:absolute;width:100%;height:30px;top:0;right:0;-webkit-app-region:drag;pointer-events:none}.app__menu{flex:0 0 auto;display:flex;width:150px;transition:padding-top .15s}@media (max-width:620px){.app__menu:not(.menu-visible){display:none}}.titlebar-hidden .app__menu{padding-top:24px}.titlebar-hidden-inset .app__menu{padding-top:40px}.fullscreen .app .app__menu{padding-top:0}.app__list-wrap{flex:1;display:flex;align-items:stretch;flex-direction:row;justify-content:flex-start;overflow:hidden}.app__list-wrap.app__list-wrap--table{flex-direction:column}.app__list-drag,.app__menu-drag{position:relative;-webkit-app-region:no-drag;transition:background-color .15s ease-out;background:var(--light-border-color);flex:0 0 auto;width:1px;cursor:col-resize}@media (min-width:621px){.app__list-drag.dragging,.app__list-drag:hover,.app__menu-drag.dragging,.app__menu-drag:hover{transition:background-color .3s ease-in;background:var(--accent-border-color)}}@media (max-width:620px){.app__list-drag,.app__menu-drag{display:none}}.app__list-wrap--table .app__list-drag{width:auto;height:1px;cursor:row-resize}.app__list-wrap--table .app__list-drag .drag-handle__inner{top:-2px;left:0;width:100%;height:5px}.menu-visible+.app__menu-drag{display:block}.app__list{flex:0 0 250px;display:flex;align-items:stretch;flex-direction:column;overflow-y:auto}@media (max-width:620px){.app__list{flex:1 1}.app--details-visible .app__list{display:none}}.app__details{flex:1;display:flex;overflow:hidden;padding:1.5em;position:relative}@media (max-width:620px){.app__details{width:100vw;padding:.5em 1em;display:none}.app--details-visible .app__details{display:flex}}.app__panel{flex:1;display:flex;overflow:hidden;position:relative}@media (max-width:620px){.app__panel{padding:.5em 1em}}.app__footer{flex:0 0 auto;border-top:1px solid var(--light-border-color)}.app__beta{padding:.5em 1em;text-align:center;background-color:var(--error-color);color:var(--text-contrast-error-color)}.at-select{position:absolute;top:0;left:0;height:100%;width:100%;background-color:var(--background-color);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;box-sizing:border-box;z-index:10000;opacity:1;padding:.5em 1em}.titlebar-hidden .at-select{padding-top:24px}.titlebar-hidden-inset .at-select{padding-top:40px}.at-select__header{display:flex}.at-select__header-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:1em}.at-select__header-filter{flex:auto 0;position:relative}.at-select__header-filter-input{width:200px}.at-select__header-filter-clear{cursor:pointer;position:absolute;right:.7em;top:.7em}.at-select__message{display:flex;margin-bottom:1em}.at-select__message-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:1em}.at-select__hint{flex:0.5 0;margin-bottom:1em;text-align:right}.at-select__hint-text{flex:1 1;font-size:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:1em}.at-select__items{flex:1;margin-bottom:.5em;position:relative;overflow:hidden}.at-select__items .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.at-select__items:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.at-select__items:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.at-select__items>.scroller{display:flex;flex-direction:row;justify-content:center}.at-select__table{flex:1;width:100%;overflow:hidden;border-collapse:collapse;table-layout:fixed}.at-select__table tr.at-select__item{border-right-width:3px}.at-select__table td,.at-select__table th{padding:.5em 1em;overflow:hidden;text-overflow:ellipsis;word-wrap:break-word}.at-select__table td:first-of-type,.at-select__table th:first-of-type{width:2em;text-align:center}.at-select__table td:nth-of-type(3),.at-select__table td:nth-of-type(4),.at-select__table th:nth-of-type(3),.at-select__table th:nth-of-type(4){width:25%}.at-select__table td:nth-of-type(5),.at-select__table th:nth-of-type(5){width:2em}.at-select__item{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-right:var(--accent-border-width) solid transparent}.at-select__item.sel--active,.at-select__item:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-right:var(--accent-border-width) solid var(--action-color)}.at-select__item:active{background-color:var(--intermediate-pressed-background-color)}.at-select__item--active,.at-select__item--active:hover{cursor:default;-webkit-app-region:no-drag;border-right:var(--selected-border-width) solid var(--action-color);background-color:var(--secondary-background-color);cursor:pointer}.at-select__item--active:hover,.at-select__item--active:hover:hover{color:var(--text-color)}.at-select__item-options{text-align:center}.at-select__item-options:hover{background:var(--background-color)}.at-select__item--active .at-select__item-options:hover{background:var(--action-color)}.at-select__empty-title{align-self:center}.details{display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;-webkit-user-select:text;user-select:text;width:100%}.details__back-button{display:none}@media (max-width:620px){.details__back-button{display:block;padding-bottom:.5em;cursor:pointer;line-height:3em;height:3em;font-size:1.2em}.details__back-button>i{margin-right:.3em;font-size:1.2em;vertical-align:text-bottom}}.details__header{display:flex;align-items:flex-start;padding-bottom:.75em;overflow:visible;min-height:40px}.details__header-title{-webkit-user-select:text;user-select:text;flex:1;align-self:flex-start;cursor:text;margin:0 6px;padding:3px 6px 1px;overflow:hidden;text-overflow:ellipsis;border-radius:1px;border:1px solid transparent;height:36px;line-height:34px;position:relative;top:-2px;white-space:nowrap}.details__header-title:hover{transition:border-color .15s ease;border:1px solid var(--light-border-color)}@media (max-width:620px){.details__header-title:hover{border-color:transparent}}.details__header input.details__header-title-input{height:42px;line-height:34px;-webkit-user-select:text;user-select:text;flex:1;margin:0 6px;padding:0 6px;font-size:2.44141rem;font-weight:700;position:relative;top:-2px;min-width:0}@media (max-width:620px){.details__header input.details__header-title-input{width:100%}}.details__header-color,.details__header-icon{-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:0;-webkit-app-region:no-drag;display:inline;font-size:2.44141rem;height:1em;padding-top:.1em}.details__header-color.sel--active,.details__header-color:hover,.details__header-icon.sel--active,.details__header-icon:hover{background-color:var(--intermediate-background-color);color:var(--medium-color)}.details__header-color:active,.details__header-icon:active{background-color:var(--intermediate-pressed-background-color)}.details__header-icon{width:1.4em;text-align:center}.details__colors-popup{-webkit-user-select:none;user-select:none;display:none;position:absolute;z-index:10000;border-radius:1px;background:var(--background-color);box-shadow:0 0 3px var(--background-color);top:13px;left:6px;font-size:2.44141rem}@media (min-width:621px){.details__colors-popup:hover,.details__header-color:hover .details__colors-popup{display:block}}.details__colors-popup-item{padding:8px 12px;cursor:pointer;display:block;position:relative}.details__colors-popup-item--active:before{content:""}.details__colors-popup-item:hover:after{content:"";opacity:.3;position:absolute;left:12px;top:8px}.details__body{flex:1;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;flex-wrap:wrap;position:relative;overflow:hidden}.details__body .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.details__body:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.details__body:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.details--drag .details__body{display:none}.details__body>.scroller{flex:1;display:flex;align-items:stretch;align-content:flex-start;flex-direction:row;justify-content:flex-start;flex-wrap:wrap;overflow-x:hidden;padding-top:3px}@media screen and (-webkit-min-device-pixel-ratio:0){.details__body>.scroller{width:100%!important}}.details__body-fields{flex:1 0 50%;min-width:0;margin-right:1em}.details__body-aside{flex:0 0 auto;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start}@media (max-width:620px){.details__body-aside{width:100%}}.details__body-after{flex:100% 1 0}.details__field{display:flex;align-items:stretch;flex-direction:row;justify-content:flex-start;margin-bottom:.5em;position:relative}.details__field-label{color:var(--muted-color);width:7em;text-align:right;cursor:pointer;padding-right:1em;border:1px solid transparent;line-height:18px;position:relative}.details__field-label:hover{color:var(--medium-color)}.details__field--can-edit-title .details__field-label{cursor:text}.details__field-label>input{margin:0 0 0 2px;padding:0 1em;line-height:18px;height:18px;width:100%;color:var(--text-color)}.chrome .details__field-label>input{padding-bottom:1px}.details__field-value{flex:1;-webkit-user-select:text;user-select:text;align-self:flex-start;position:relative;cursor:text;padding:0 1em;border:1px solid transparent;min-height:18px;box-sizing:border-box;line-height:18px;overflow:hidden;text-overflow:ellipsis;margin-right:2em}.details__field-value-add-label{color:transparent}.details__field--editable .details__field-value{border-radius:1px}@media (min-width:621px){.details__field--editable .details__field-value:hover{transition:border-color .15s ease;border:1px solid;border-color:var(--light-border-color);box-shadow:0 0 3px rgba(0,0,0,.06)}.details__field--editable .details__field-value:hover .details__field-value-add-label{color:var(--muted-color);transition:color .15s ease}}.details__field--protect .details__field-value{-webkit-user-select:none;user-select:none}.details__field--multiline .details__field-value{width:0;white-space:pre-wrap}.details__field--url .details__field-value{height:20px}.details__field--edit.details__field--editable .details__field-value,.details__field--edit.details__field--editable:hover .details__field-value,.details__field--edit .details__field-value{border:0 solid transparent;padding:0;overflow:visible}.details__field-value>input,.details__field-value>textarea{margin:0;padding:0 1em;line-height:20px;width:100%;height:20px;transition:background-color .15s ease-out,border-color .15s ease-out}.details__field--protected .details__field-value>input,.details__field--protected .details__field-value>textarea{font-family:SFMono-Regular,Monaco,Consolas,Lucida Console,monospace}.details__field--edit[active-mobile-action] .details__field-value>input,.details__field--edit[active-mobile-action] .details__field-value>textarea{transition:background-color .3s ease-in,border-color .3s ease-in}.details__field--edit[active-mobile-action=apply] .details__field-value>input,.details__field--edit[active-mobile-action=apply] .details__field-value>textarea{background:var(--action-color)}.details__field--edit[active-mobile-action=cancel] .details__field-value>input,.details__field--edit[active-mobile-action=cancel] .details__field-value>textarea{background:var(--error-color);border-color:var(--error-color)}@media (max-width:620px){.details__field-value>input,.details__field-value>textarea{border-color:transparent!important}}.chrome .details__field-value>input{padding-bottom:1px}.details__field-value>textarea{display:block;resize:none;line-height:1.5em;overflow:hidden}.details__field-value>label{font-weight:400;-webkit-user-select:none;user-select:none}.details__field-value>a{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.details__body-aside .details__field-value{color:var(--muted-color);width:13em;padding-right:0;margin-right:0;flex:0 0 auto}.details__body-aside .details__field-value a{color:var(--muted-color)}.details__field-value-btn{position:absolute;top:0;right:0;color:var(--muted-color);cursor:pointer}.details__field-value-btn:hover{color:var(--medium-color)}.details__field-value-btn:before{position:absolute;top:0;right:0;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;cursor:pointer;padding:.3em 1em}.details__field-value-btn-gen:before{content:""}.details__field-value-btn-protect:before{content:""}.details__field--protected .details__field-value-btn-protect:before{content:""}@media (max-width:620px){.details__field-value-btn-apply,.details__field-value-btn-cancel{height:100%;width:50%;position:absolute;top:0;-webkit-user-select:none;user-select:none;background:var(--background-color)}.details__field-value-btn-apply:before,.details__field-value-btn-cancel:before{padding:.2em 1.5em}.details__field-value-btn-apply{right:0}.details__field-value-btn-apply:before{content:""}.details__field-value-btn-cancel{left:0}.details__field-value-btn-cancel:before{content:""}}.details__field-value--select{border-width:0;padding:0}.details__field--editable:hover .details__field-value--select{border-width:0}.details__field-value--revealed{font-family:SFMono-Regular,Monaco,Consolas,Lucida Console,monospace}.details__field-value>select{margin:0;width:100%;padding:0 1em}.details__field-value .markdown{white-space:normal}.details__field-value .markdown h6{font-size:1rem}.details__field-value .markdown h5{font-size:1.05rem}.details__field-value .markdown h4{font-size:1.1025rem}.details__field-value .markdown h3{font-size:1.15763rem}.details__field-value .markdown h2{font-size:1.21551rem}.details__field-value .markdown h1{font-size:1.5625rem}.details__field-value .markdown ol,.details__field-value .markdown ul{margin-bottom:1em}.details__field-value .markdown ul{list-style-type:disc}.details__field-value .markdown ol{list-style-type:decimal}.details__field-value .markdown li{margin-left:2em}.details__field--options .details__field-value{margin-right:0}.details__field--no-select .details__field-label,.details__field--no-select .details__field-value{-webkit-user-select:none;user-select:none}@media (max-width:620px){.details__field{border-bottom:1px solid var(--light-border-color);padding-bottom:.5em}}.details__field-options{color:var(--muted-color);cursor:pointer;opacity:0;transition:opacity .15s ease-out,color .15s ease;align-self:flex-start;width:2em;text-align:center;padding-top:.25em}.details__field:hover .details__field-options{opacity:1;transition:opacity .3s ease-in}.details__field-options:hover{color:var(--medium-color)}.details__field-mobile-actions{position:absolute;background:var(--background-color);z-index:10000}.details__field-mobile-action{padding:1em 1.2em;cursor:pointer}.details__attachments{flex:1;display:flex;align-items:stretch;flex-direction:row;justify-content:flex-end;flex-wrap:wrap;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap}.details--drag .details__attachments{display:none}.details__attachment{-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:0;-webkit-app-region:no-drag;align-self:flex-end;flex:0 1 auto;border:1px solid var(--light-border-color);margin-right:.75em;margin-top:.75em;padding:.5em 1em;text-align:center;overflow:hidden;text-overflow:ellipsis}.details__attachment.sel--active,.details__attachment:hover{background-color:var(--intermediate-background-color);color:var(--medium-color)}.details__attachment:active{background-color:var(--intermediate-pressed-background-color)}.details__attachment i{margin-right:.4em}.details__attachment--active{border-bottom:1px solid var(--action-color)}.details__attachment-add{-webkit-user-select:none;user-select:none;align-self:flex-end;flex:0 0 auto;color:var(--muted-color);border:1px solid transparent;margin-right:.75em;padding:.5em 1em;text-align:center;overflow:hidden;transition:color .15s ease}.details__attachment-add:hover{color:var(--medium-color)}.details__attachment-add-title{display:none;transition:color .15s ease-out;margin-right:1em;color:transparent}.details__attachment-add:hover .details__attachment-add-title{display:inline;transition:color .3s ease-in;color:var(--muted-color)}.details__attachment-preview{margin-right:1em;width:100%}.details__attachment-preview-data>image{width:100%}.details__attachment-preview-data>pre{white-space:pre-wrap}.details__attachment-preview-download-text{-webkit-user-select:none;user-select:none;position:absolute;bottom:.5em;right:1em;opacity:.15;display:none}@media (min-width:621px){.details__attachment-preview-download-text{display:block}}.details__attachment-preview-icon{display:none}.details__attachment-preview--empty{display:flex;flex-direction:column;flex:1 0 auto;justify-content:flex-start;align-self:flex-start;align-items:center;text-align:center}.details__attachment-preview--empty .details__attachment-preview-icon{display:block;font-size:10em}.details__attachment-preview--empty .details__attachment-preview-download-text{position:static;margin-top:2em;opacity:1}.details__attachment-preview--empty .details__attachment-preview-buttons{margin-top:2em}.details__attachment-preview--empty .details__attachment-preview-data{padding-top:2em}.details__buttons{display:flex;align-items:stretch;flex-direction:row;flex-shrink:0;justify-content:flex-start;margin-top:.5em}.details--drag .details__buttons{display:none}.details__buttons-trash,.details__buttons-trash-del{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;padding:.7em .6em 0;height:1.6em;align-self:flex-end;margin-right:10px}.details__buttons-trash-del.sel--active,.details__buttons-trash-del:hover,.details__buttons-trash.sel--active,.details__buttons-trash:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.details__buttons-trash-del:active,.details__buttons-trash:active{background-color:var(--intermediate-pressed-background-color)}.details__buttons-trash-del>i,.details__buttons-trash>i{display:block}.details__buttons-trash-del:hover,.details__buttons-trash:hover{border-color:var(--error-color)}.details__buttons-trash-del{color:var(--muted-color)}.details__buttons button~button{margin-left:.75em}.details__history{flex:1 0 auto;flex-direction:column;max-width:100%}.details__history,.details__history-top{display:flex;align-items:stretch;justify-content:flex-start}.details__history-top{flex:0 0 auto;flex-direction:row;padding-right:1em;margin-right:20px}.details__history-desc{-webkit-user-select:none;user-select:none}.details__history-timeline{flex:1 0 auto;position:relative;height:44px;margin-left:5px}.details__history-timeline-axis{width:100%;position:absolute;top:9px;border-bottom:1px solid var(--light-border-color)}.details__history-timeline-item{position:absolute;top:4px;cursor:pointer;transform:translateX(-48%)}.details__history-timeline-item:hover{color:var(--text-semi-muted-color)}.details__history-timeline-item--active,.details__history-timeline-item--active:hover{z-index:10000;cursor:default;color:var(--action-color)}.details__history-timeline-label{position:absolute;top:16px;white-space:nowrap;transform:translateX(-50%);color:var(--muted-color)}.details__history-arrow-next,.details__history-arrow-prev{transform:scaleX(2);transform-origin:left top;cursor:pointer;position:absolute;top:30px;font-size:14px}.details__history-arrow-next:hover,.details__history-arrow-prev:hover{color:var(--text-semi-muted-color)}.details__history-arrow-prev{left:-5px}.details__history-arrow-next{right:5px}.details__history-close{margin-left:20px}.details__history-body{flex:1 1 auto}.details__history-buttons{-webkit-user-select:none;user-select:none;align-self:flex-end;margin-bottom:.5em;padding-right:1em;margin-right:20px}.details__dropzone{display:none}.details--drag .details__dropzone{display:flex;flex-direction:column;flex:1 0 auto;justify-content:center;align-self:center;align-items:center;text-align:center}.details__dropzone-icon{font-size:10em}.details__dropzone-header{margin-top:1em}.details__field-autocomplete{position:absolute;overflow:hidden;-webkit-app-region:no-drag;color:var(--text-color);background:var(--background-color);border:1px solid var(--light-border-color);box-shadow:0 0 50px var(--dropdown-box-shadow-color)}.edge .details__field-autocomplete{border-width:1px!important}.details__field-autocomplete-item{padding:.5em 1em;display:inline-block;word-break:break-all;cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent}.details__field-autocomplete-item.sel--active,.details__field-autocomplete-item:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.details__field-autocomplete-item:active{background-color:var(--intermediate-pressed-background-color)}.details__field-autocomplete-item--selected{background-color:var(--secondary-background-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.details__subview-close{align-self:flex-end;float:right;cursor:pointer;-webkit-user-select:none;user-select:none}.details__subview-close-post,.details__subview-close-pre{display:none}@media (max-width:620px){.details__subview-close{line-height:3em;height:3em;padding:.5em 1em;font-size:1.2em}.details__subview-close>i{margin-right:.3em;font-size:1.2em;vertical-align:text-bottom}.details__subview-close-pre{display:inline}}@media (min-width:621px){.details__subview-close-post{display:inline}}.footer{display:flex;align-items:stretch;flex-direction:row;justify-content:flex-start}@media (max-width:620px){.footer{background:var(--intermediate-background-color)}}.footer__db{flex:0 0 auto;cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-top:var(--accent-border-width) solid transparent;position:relative;padding:1em 1.3em 1em 1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer__db.sel--active,.footer__db:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-top:var(--accent-border-width) solid var(--action-color)}.footer__db:active{background-color:var(--intermediate-pressed-background-color)}.footer__db.footer__db--dimmed{color:var(--muted-color)}.footer__db.footer__db--dimmed:hover{color:var(--medium-color)}.footer__db--expanded{flex:1}@media (max-width:620px){.footer__db--expanded{flex:0 0 auto}.footer__db--expanded>.footer__db-text{display:none}}.footer__db-sign{font-size:6px;vertical-align:top;margin-left:1em;position:absolute;right:1em;top:1em;color:var(--action-color)}.footer__db-sign--error{color:var(--error-color)}.footer__db-open-title{margin-left:.3em}@media (max-width:620px){.footer__db-item{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis}.footer__db-item>.fa{display:none}}.footer__btn{flex:0 0 auto;cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-top:var(--accent-border-width) solid transparent;padding:.5em 1em;font-size:1.4em;text-align:center;width:1em}.footer__btn.sel--active,.footer__btn:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-top:var(--accent-border-width) solid var(--action-color)}.footer__btn:active{background-color:var(--intermediate-pressed-background-color)}.standalone .footer__btn{padding-top:.5em;padding-bottom:1.2em}.footer__update-icon{color:var(--action-color);animation:shake 50s cubic-bezier(.36,.07,.19,.97) 0s infinite}.grp{flex:1;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.grp .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.grp:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.grp:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.grp>.scroller{flex:1;overflow-x:hidden}.grp__buttons,.grp__content{padding:.5em 1em}.grp__icon{display:block;font-size:2.44141rem;padding:5px 10px;align-self:flex-start;cursor:pointer;border-radius:0;-webkit-app-region:no-drag}.grp__icon.sel--active,.grp__icon:hover{background-color:var(--intermediate-background-color);color:var(--medium-color)}.grp__icon:active{background-color:var(--intermediate-pressed-background-color)}.grp__icon--image{width:28px;height:28px}.grp__icon-wrap{display:flex}.grp__buttons{display:flex;flex-direction:row;margin-top:.5em}.grp__buttons-trash{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;padding:.7em .6em 0;height:1.6em}.grp__buttons-trash.sel--active,.grp__buttons-trash:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.grp__buttons-trash:active{background-color:var(--intermediate-pressed-background-color)}.grp__buttons-trash>i{display:block}.grp__buttons-trash:hover{border-color:var(--error-color)}.tag{flex:1;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;width:100%;-webkit-user-select:none;user-select:none;padding:.5em 1em}.tag__space{flex:1}.tag__buttons{display:flex;flex-direction:row;margin-top:.5em}.tag__buttons-trash{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;padding:.7em .6em 0;height:1.6em}.tag__buttons-trash.sel--active,.tag__buttons-trash:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.tag__buttons-trash:active{background-color:var(--intermediate-pressed-background-color)}.tag__buttons-trash>i{display:block}.tag__buttons-trash:hover{border-color:var(--error-color)}.gen{position:absolute;-webkit-app-region:no-drag;color:var(--text-color);background:var(--background-color);border:1px solid var(--light-border-color);box-shadow:0 0 50px var(--dropdown-box-shadow-color);padding:1.5em;width:11em}.edge .gen{border-width:1px!important}.gen__top-btn{float:right;cursor:pointer;position:relative;top:2px;color:var(--muted-color)}.gen__top-btn~.gen__top-btn{margin-right:.5em}.gen__top-btn:hover{color:var(--text-color)}.gen__sel-tpl{width:100%;height:2em;margin-top:.5em}.gen__check{width:40%;display:inline-block}.gen__check:nth-child(2n){margin-left:15%}.gen__result{-webkit-user-select:text;user-select:text;font-family:SFMono-Regular,Monaco,Consolas,Lucida Console,monospace;margin-top:6px;margin-bottom:3px;height:50px;text-align:center;white-space:pre-wrap;word-break:break-all;overflow:hidden}.gen__result--long-pass{font-size:.75em}.gen__check-hide+label.gen__check-hide-label:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";color:inherit}.gen__check-hide:checked+label.gen__check-hide-label:before{content:"";color:inherit}.gen__btn-wrap{text-align:center}@-moz-document url-prefix(){.gen__result{white-space:pre-wrap;word-break:break-all}}.gen-ps{flex:1;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.gen-ps .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.gen-ps:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.gen-ps:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.gen-ps>.scroller{flex:1;overflow-x:hidden}.gen-ps__buttons,.gen-ps__content{margin:.5em 1em}.gen-ps__sample{font-weight:400;color:var(--muted-color)}.gen-ps__example,.gen-ps__sample{-webkit-user-select:text;user-select:text}.gen-ps__example{font-family:SFMono-Regular,Monaco,Consolas,Lucida Console,monospace;margin-top:0;white-space:pre-wrap;word-break:break-all}.gen-ps__input,.gen-ps__list{height:2em}.gen-ps__pattern-help{margin-bottom:.5em}.key-change{flex:1;display:flex;align-items:stretch;flex-direction:column;justify-content:center;overflow:hidden;padding:1.5em;position:relative}@media (max-width:620px){.key-change{padding:.5em 1em}}.key-change__icon{font-size:6em;text-align:center}.key-change__header{font-size:1.5625rem;text-align:center}.key-change__body{display:flex;align-items:flex-start;flex-direction:column;flex-shrink:0;margin:1.5em 0}.key-change__input{align-self:center}.key-change input[type=password].key-change__pass,.key-change input[type=password].key-change__pass-repeat{font-size:22px;margin:.75em 0 0}.key-change__keyfile{color:var(--muted-color);margin-top:.5em;cursor:pointer}.key-change__keyfile:hover{color:var(--medium-color)}.key-change__buttons{text-align:right}.key-change__buttons button~button{margin-left:.75em}.key-change__buttons>button{margin-bottom:.75em}.key-change__body,.key-change__buttons{align-self:center;width:40%}.list{justify-content:flex-start}.list,.list__items{flex:1;display:flex;align-items:stretch;flex-direction:column;overflow:hidden}.list__items{position:relative}.list__items .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.list__items:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.list__items:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.list__items>.scroller{flex:1;align-self:stretch;position:relative;overflow-x:hidden}@media (max-width:620px){.list__items>.scroller{width:100%!important;max-width:100%!important}}.list__search{padding:.75em}.list__search-header{display:flex;align-items:stretch;flex-direction:row;justify-content:flex-start;flex-wrap:wrap}@media (max-width:620px){.list__search-header{font-size:1.2em}}.list__search-field-wrap{flex:1;position:relative;margin-right:.75em}.list__search-field{width:100%}@media (max-width:620px){.list__search-field{font-size:1.05em!important;box-shadow:none!important;border-radius:.6em!important;border:none!important;padding-left:.4em;background-color:var(--secondary-background-color)!important}}.list__search-icon-search{color:var(--muted-color);position:absolute;top:.5em;right:.5em;cursor:pointer}.list__search-icon-search:hover{color:var(--medium-color)}@media (max-width:620px){.list__search-icon-search{top:.5em}}.list__search-btn-new{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;padding:.7em .6em 0;height:1.6em}.list__search-btn-new.sel--active,.list__search-btn-new:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.list__search-btn-new:active{background-color:var(--intermediate-pressed-background-color)}.list__search-btn-new>i{display:block}.list__search-btn-sort{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;padding:.7em .6em 0;height:1.6em}.list__search-btn-sort.sel--active,.list__search-btn-sort:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.list__search-btn-sort:active{background-color:var(--intermediate-pressed-background-color)}.list__search-btn-sort>i{display:block}.list__search-btn-menu{display:none}@media (max-width:620px){.list__search-btn-menu{display:block;cursor:pointer;border-radius:0;-webkit-app-region:no-drag;padding:.7em .6em 0;height:1.6em;margin-right:1em}.list__search-btn-menu.sel--active,.list__search-btn-menu:hover{background-color:var(--intermediate-background-color);color:var(--medium-color)}.list__search-btn-menu:active{background-color:var(--intermediate-pressed-background-color)}.list__search-btn-menu>i{display:block}}.list__search-adv{flex:100%;display:flex;align-items:stretch;flex-direction:row;flex-wrap:wrap}.list__search-adv-text{flex:100%}.list__search-check{flex:50%}.list__table{border-collapse:collapse;width:calc(100% - 2px)}.list__table td,.list__table th{padding:.5em 1em;text-align:left}.list__table td:first-child,.list__table th:first-child{text-align:center}.list__table th:first-child{padding:0;width:3em}.list__table-options{border-radius:0;-webkit-app-region:no-drag;border-bottom:var(--accent-border-width) solid transparent;padding:.7em .6em 0;height:1.6em;cursor:pointer}.list__table-options.sel--active,.list__table-options:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-bottom:var(--accent-border-width) solid var(--action-color)}.list__table-options:active{background-color:var(--intermediate-pressed-background-color)}.list__table-options>i{display:block}.list__item{padding:6px 10px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (min-width:621px){.list__item{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;border-right:var(--accent-border-width) solid transparent}.list__item.sel--active,.list__item:hover{background-color:var(--intermediate-background-color);color:var(--medium-color);border-right:var(--accent-border-width) solid var(--action-color)}.list__item:active{background-color:var(--intermediate-pressed-background-color)}.list__item--active,.list__item--active:hover{cursor:default;-webkit-app-region:no-drag;border-right:var(--selected-border-width) solid var(--action-color);background-color:var(--secondary-background-color)}.list__item--active:hover,.list__item--active:hover:hover{color:var(--text-color)}}@media (max-width:620px){.list__item{margin:0 1em;border-bottom:1px solid var(--light-border-color)}.list__item:last-of-type{border-bottom:none}}.list__item:not(.list__item--table){height:3rem}.list__item--expired .list__item-descr,.list__item--expired .list__item-title{text-decoration:line-through}.list__item-icon{margin-right:2px;width:14px;height:14px}@media (max-width:620px){.list__item-icon{margin-right:4px}}.list__item-icon--custom{vertical-align:text-bottom}.list__item-icon--custom.yellow{filter:grayscale(1) sepia(1) hue-rotate(20deg) brightness(1.17) saturate(5.7)}.list__item-icon--custom.green{filter:grayscale(1) sepia(1) hue-rotate(55deg) brightness(1.01) saturate(4.9)}.list__item-icon--custom.red{filter:grayscale(1) sepia(1) hue-rotate(316deg) brightness(1.1) saturate(6)}.list__item-icon--custom.orange{filter:grayscale(1) sepia(1) hue-rotate(355deg) brightness(.92) saturate(5)}.list__item-icon--custom.blue{filter:grayscale(1) sepia(1) hue-rotate(180deg) brightness(.9) saturate(5)}.list__item-icon--custom.violet{filter:grayscale(1) sepia(1) hue-rotate(238deg) brightness(1) saturate(6.2)}.list__item-title{margin-left:2px}.list__item-descr{font-size:.8em;color:var(--muted-color);display:block;text-overflow:ellipsis;overflow:hidden}.menu{width:100%;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;overflow:hidden}.menu__section{flex:0 0 auto;border-bottom:1px solid var(--light-border-color);position:relative;overflow:hidden}.menu__section .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.menu__section:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.menu__section:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.menu__section--grow{flex:1;display:flex;flex-direction:column}.menu__section--grow>.scroller{flex:1}.menu__section--drag{flex:0 0 auto}.menu__section--drag,.menu__section--drag>.scroller{max-height:calc(100vh - 200px)}.menu__section--drag.menu__section,.menu__section:last-child{border-bottom:none}.menu__drag-section{position:relative;-webkit-app-region:no-drag;transition:background-color .15s ease-out;background:var(--light-border-color);flex:0 0 auto;height:1px;cursor:row-resize}@media (min-width:621px){.menu__drag-section.dragging,.menu__drag-section:hover{transition:background-color .3s ease-in;background:var(--accent-border-color)}}.menu__item{text-overflow:ellipsis;overflow:hidden;position:relative;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start}.menu__item--collapsed>.menu__item,.menu__item-collapse{display:none}.menu__item--collapsed>.menu__item-collapse{display:block;cursor:pointer;position:absolute;top:50%;left:1em;transform:translateY(-50%)}.menu__item-body{cursor:pointer;border-radius:0;-webkit-app-region:no-drag;padding:.5em 1em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;border-right:var(--accent-border-width) solid transparent}.menu__item-body.sel--active,.menu__item-body:hover{background-color:var(--intermediate-background-color);color:var(--medium-color)}.menu__item-body:active{background-color:var(--intermediate-pressed-background-color)}.menu__item--hover>.menu__item-body{border-right:var(--accent-border-width) solid var(--action-color)}.menu__item--active.menu__item--hover>.menu__item-body,.menu__item--active>.menu__item-body{cursor:default;-webkit-app-region:no-drag;border-right:var(--selected-border-width) solid var(--action-color);background-color:var(--secondary-background-color)}.menu__item--active.menu__item--hover>.menu__item-body:hover,.menu__item--active>.menu__item-body:hover{color:var(--text-color)}.menu__item>.menu__item>.menu__item-body{padding-left:2em}.menu__item>.menu__item>.menu__item>.menu__item-body{padding-left:3em}.menu__item>.menu__item>.menu__item>.menu__item>.menu__item-body{padding-left:4em}.menu__item>.menu__item>.menu__item>.menu__item>.menu__item>.menu__item-body{padding-left:5em}.menu__item>.menu__item>.menu__item>.menu__item>.menu__item>.menu__item>.menu__item-body{padding-left:6em}.menu__item-options{display:none}.menu__item--with-options:hover .menu__item-options{display:block}.menu__item-option{cursor:pointer;display:inline-block}.menu__item-colors .menu__item-option:before{content:""}.menu__item-colors .menu__item-option:hover:before{content:""}.menu__item-icon{width:.8em}.menu__item-icon--image{width:12px;height:12px;position:relative;top:1px}.menu__item-icon--no-icon:before{content:""}.menu__item--collapsed>.menu__item-body>.menu__item-icon--no-icon:before{content:""}.menu__item--with-options:hover .menu__item-icon{display:none}.menu__item-title{padding-left:.4em}.menu__item-colors .menu__item-title{display:inline-block;color:var(--text-color)}.menu__item--with-options:hover .menu__item-title{display:none}.menu__item-edit,.menu__item-empty-trash{display:none;opacity:0;position:absolute;right:1.1em;top:.75em;cursor:pointer;transition:opacity .15s ease,color .15s ease;color:var(--muted-color)}.menu__item-edit:hover,.menu__item-empty-trash:hover{color:var(--medium-color)}.menu__item--active>.menu__item-body>.menu__item-edit,.menu__item--active>.menu__item-body>.menu__item-empty-trash{display:block}.menu__item--active>.menu__item-body:hover>.menu__item-edit,.menu__item--active>.menu__item-body:hover>.menu__item-empty-trash{opacity:.5}.menu__item .fa{margin-right:.5em}.menu__item-drag-top{position:absolute;top:0;left:0;width:100%;height:5px}.menu__item--drag-top>.menu__item-body>.menu__item-drag-top{background-color:var(--action-color)}.menu__item--drag:not(.menu__item--drag-top)>.menu__item-body{color:var(--action-color)}.open{flex:1;display:flex;align-self:stretch;align-items:center;flex-direction:column;justify-content:center;background:var(--background-color)}.mobile .open{overflow-y:auto}.open__icons{display:flex;align-items:stretch;flex-direction:row;flex-shrink:0;justify-content:center;flex-wrap:wrap}.open--drag .open__icons{display:none}.open__icon{text-align:center;cursor:pointer;margin:20px;transition:color .15s ease}.open__icon:hover{color:var(--medium-color)}.open--show-focus .open__icon:focus{outline:1px solid var(--action-color)}.open__icon-i,.open__icon-svg{font-size:4em}.open__icon-text{color:var(--muted-color)}.open__icon:hover>.open__icon-text{color:var(--medium-color)}.open__icon-svg{line-height:0}.open__icon-svg>svg{height:1em;width:1em}@media (max-width:620px){.open__icon-i,.open__icon-svg{font-size:4.6em}.open__icon-text{font-size:1.1em}.open__icons--lower .open__icon{margin:14px}.open__icons--lower .open__icon-i,.open__icons--lower .open__icon-svg{font-size:4.2em;margin-bottom:.1em}}.open__pass-area{display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;position:relative}.open--drag .open__pass-area{display:none}.open__pass-warn-wrap{display:flex;flex-direction:row;justify-content:flex-end}.open__pass-field-wrap{display:flex;flex-direction:row;justify-content:flex-start;align-items:stretch;flex-shrink:0;margin-bottom:.5em}.open__pass-enter-btn,.open__pass-opening-icon{padding:.6em 1.5em;position:absolute;left:100%;color:var(--muted-color)}@media (max-width:620px){.open__pass-enter-btn,.open__pass-opening-icon{left:auto;right:0}}.open__pass-enter-btn>i,.open__pass-opening-icon>i{font-size:3em}@media (max-width:620px){.open__pass-enter-btn>i,.open__pass-opening-icon>i{line-height:.8}}.open--show-focus .open__pass-enter-btn:focus,.open--show-focus .open__pass-opening-icon:focus{outline:1px solid var(--action-color)}.open--file .open__pass-enter-btn{cursor:pointer}.open--file .open__pass-enter-btn:hover{color:var(--medium-color)}.open--opening .open__pass-enter-btn,.open__pass-opening-icon{display:none}.open--opening .open__pass-opening-icon{display:block}.open__config{display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;position:relative}@media (min-width:621px){.open__config{width:30em}}.open--drag .open__config{display:none}.open__config-buttons{align-self:flex-end}.open__config-header>i{margin-right:.3em}.open__config-field{width:100%}.open__config-error{min-height:1.7em}.open__config:not(.open__config--disabled) .open__config-btn-ok-text{display:inline}.open__config.open__config--disabled .open__config-btn-ok-text,.open__config:not(.open__config--disabled) .open__config-btn-ok-spinner{display:none}.open__config.open__config--disabled .open__config-btn-ok-spinner{display:block}.open input[type=password].open__pass-input{font-size:22px;margin-bottom:0;width:38vw}.open input[type=password].open__pass-input[readonly]{cursor:pointer}@media (max-width:1000px){.open input[type=password].open__pass-input{width:16em}}@media (max-width:620px){.open input[type=password].open__pass-input{width:calc(100vw - 20px)}}.open__settings{display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;padding-left:1em;height:2em}.open--file:not(.open--opening) .open__settings-key-file{cursor:pointer}.open--key-file .open__settings-key-file{color:var(--medium-color)}.open__settings-key-file-icon{width:2em}.open__settings-key-file-dropbox{visibility:hidden;margin-left:.3em}.open--file .open__settings-key-file-dropbox:hover{visibility:visible}.open--opening .open__settings-key-file-dropbox,.open__settings-key-file-dropbox .open--key-file{display:none}.open--file .open__settings-key-file:hover .open__settings-key-file-dropbox{visibility:visible}.open--show-focus .open__settings-key-file:focus{outline:1px solid var(--action-color)}.open__settings-key-file,.open__settings-key-file-dropbox{color:var(--muted-color)}.open--file:not(.open--opening) .open__settings-key-file-dropbox:hover,.open--file:not(.open--opening) .open__settings-key-file:hover{color:var(--medium-color)}.open__settings-yubikey{display:none}.open__settings-yubikey--active,.open__settings-yubikey--present{display:flex}.open__settings-yubikey__text{margin-right:.4em;display:none}.open__settings-yubikey--active .open__settings-yubikey__text{display:block}.open__settings-yubikey-img{fill:var(--muted-color);width:2em;position:relative;top:-.25em;margin-right:1em;cursor:pointer}.open__settings-yubikey--active .open__settings-yubikey-img,.open__settings-yubikey-img:hover{fill:var(--text-color)}.open__last{flex-direction:column;align-items:stretch;margin-top:1.5em}.open__last,.open__last-item{display:flex;justify-content:flex-start}.open__last-item{flex-direction:row;align-items:baseline;flex-shrink:0;color:var(--muted-color);padding:.5em 1em}.open:not(.open--opening) .open__last-item{cursor:pointer;border-radius:0;-webkit-app-region:no-drag}.open:not(.open--opening) .open__last-item.sel--active,.open:not(.open--opening) .open__last-item:hover{background-color:var(--intermediate-background-color);color:var(--medium-color)}.open:not(.open--opening) .open__last-item:active{background-color:var(--intermediate-pressed-background-color)}.open--show-focus .open__last-item:focus{outline:1px solid var(--action-color)}.open__last-item-icon{width:2em}.open__last-item-icon--svg>svg{vertical-align:middle;height:1em;width:1em}.open__last-item-icon--svg>svg path{fill:var(--muted-color)}.open__last-item-text{flex-grow:1}.open__last-item-icon-del{opacity:0;color:var(--muted-color)}.open__last-item:hover .open__last-item-icon-del{opacity:.3;cursor:pointer}.open__last-item-icon-del:hover{color:var(--medium-color)}.open__last-item:hover .open__last-item-icon-del:hover{opacity:1}.open__dropzone{display:none}.open--drag .open__dropzone{display:flex;flex-direction:column;flex:1 0 auto;justify-content:center;align-self:center;align-items:center;text-align:center}.open__dropzone-icon{font-size:10em}.open__dropzone-header{margin-top:1em}.open-list__content{margin:.5em 0 .5em -1em;max-height:calc(100vh - 22em);position:relative;overflow:hidden}.open-list__scrollable{max-height:calc(100vh - 22em);width:calc(100% + 50px);overflow-y:auto;overflow-x:hidden}.open-list__files{display:flex;flex-wrap:wrap;width:calc(100% - 50px)}.open-list__file{cursor:pointer;padding:.5em 1em;border-radius:1px;box-sizing:border-box;flex-basis:100%}@media (min-width:621px){.open-list--density2 .open-list__file{flex-basis:50%}.open-list--density3 .open-list__file{flex-basis:33.33333%}}.open-list__file:hover{background-color:var(--action-background-color-focus-tr)}.open-list__file-icon{margin-right:.3em}.open-list__file--another{color:var(--medium-color)}.open-list__check-label{width:100%;display:inline-block}.open-chal-resp__head{padding:.5em 1em}.open-chal-resp__icon{margin-right:.75em}.open-chal-resp__item{padding:.5em 1em;cursor:pointer}.open-chal-resp__item:hover{background-color:var(--action-background-color-focus-tr)}.settings{flex:1;display:flex;align-items:stretch;flex-direction:column;justify-content:flex-start;flex-wrap:wrap;overflow:hidden;position:relative}.settings .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.settings:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.settings:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.settings__content{margin:.5em 1em}.settings>.scroller{flex:1 0 0}.settings h2,.settings h3{margin-top:20px}.settings .shortcut{border:1px solid var(--muted-color);display:inline-block;border-radius:1px;width:8em;text-align:center;padding:.5em 1em;margin:0 1em .5em;line-height:1.5em;min-width:unset;box-sizing:border-box;vertical-align:initial}.settings .shortcut-large{width:12em}.settings .shortcut:first-of-type{margin-left:0}.settings .shortcut__editor{margin-bottom:.5em}.settings .shortcut__editor-input{text-align:center;margin:.5em 0 1em;width:15em}.settings .shortcut__editor-input--large{width:30em}.settings__back-button{cursor:pointer}.settings__back-button-post,.settings__back-button-pre{display:none}@media (max-width:620px){.settings__back-button{line-height:3em;height:3em;padding:.5em 1em;font-size:1.2em}.settings__back-button>i{margin-right:.3em;font-size:1.2em;vertical-align:text-bottom}.settings__back-button-pre{display:inline}}@media (min-width:621px){.settings__back-button{position:absolute;top:0;right:1em;padding:1em 0 1px;z-index:1;background:var(--background-color);box-shadow:0 0 5px 5px var(--background-color)}.settings__back-button-post{display:inline}}.settings__input,.settings__select{height:2em}.settings__row{display:flex;justify-content:space-between}.settings__col-small{width:30%;position:relative}.settings__col-small>.settings__input{width:100%}.settings__col-small-label{text-overflow:ellipsis;overflow:hidden;width:100%}.settings__pre{-webkit-user-select:text;user-select:text;white-space:pre-wrap}.settings__select-no-margin{margin-bottom:.5em}.settings #settings__file-confirm-master-pass,.settings #settings__file-master-pass{font-family:SFMono-Regular,Monaco,Consolas,Lucida Console,monospace}.settings #settings__file-confirm-master-pass-group{display:none}.settings__file-confirm-master-pass-warning,.settings__file-master-pass-warning{font-weight:400;float:right;display:none}.settings__file-save-to{cursor:pointer;display:inline-block;margin-right:1em;text-align:center}.settings__file-save-to>i,.settings__file-save-to>svg{display:block;font-size:3em;padding:5px 10px;margin:auto}.settings__file-save-to>svg{height:1em;width:1em}.settings__file-save-to:hover{transition:color .15s ease;color:var(--medium-color)}.settings__general-update-buttons{margin-top:1.5em}.settings__general-update-btn{width:15em;margin-right:.75em}.settings__general-storage-header{margin-bottom:0}.settings__general-prv,.settings__general-prv-logout{margin-bottom:.5em}.settings__logs{-webkit-user-select:text;user-select:text;margin-top:.5em;word-break:break-all}.settings__logs-log{margin:0;white-space:pre-wrap}.settings__logs-log--debug{opacity:.8}.settings__logs-log--warn{color:#e9d92a}.settings__logs-log--error{color:#df3c06}.settings__plugins-install-error{margin-top:.5em}.settings__plugins-plugin-files{margin-top:.5em;margin-bottom:.5em}.settings__plugins-plugin-file{padding-left:1em}.settings__plugins-plugin-desc{margin-bottom:.5em}.settings__plugins-plugin-updates>label{font-weight:400}.settings__plugins-gallery{margin-top:1.5em;display:flex;flex-wrap:wrap}.settings__plugins-gallery-load-btn{margin-top:1em}.settings__plugins-gallery-plugin{position:relative;width:calc(50% - 40px);border-radius:1px;border:1px solid var(--light-border-color);padding:1em 1.2em;box-sizing:border-box;margin:0 .5em 1em 0;vertical-align:top}@media (max-width:620px){.settings__plugins-gallery-plugin{width:100%;margin-right:0}}.settings__plugins-gallery-plugin-install-btn{position:absolute;right:0;bottom:0}.settings__plugins-gallery-plugin-country-flag{position:absolute;right:10px;top:6px;font-size:1.5em}.settings__plugins-gallery-plugin-title-link,.settings__plugins-gallery-plugin-title-link:active,.settings__plugins-gallery-plugin-title-link:focus,.settings__plugins-gallery-plugin-title-link:hover,.settings__plugins-gallery-plugin-title-link:visited{border-bottom:0}.settings__plugins-gallery-search{margin-top:1em}@media (min-width:621px){.settings__plugins-gallery-search{width:calc(100% - 74px)}}@media (max-width:620px){.settings__plugins-gallery-search{width:100%}}.settings__donate-btn{background:#fff;border:2px solid #89abed;border-radius:2.8rem;text-align:center;display:inline-block;text-decoration:none;padding:.2rem 2.4rem .1rem;line-height:1.4;height:2.8rem;margin-bottom:1em}.settings__donate-btn-bottom,.settings__donate-btn-top{pointer-events:none;display:block}.settings__donate-btn-top{color:#606a79}.settings__donate-btn-bottom{color:#89abed;font-weight:700}.settings__head-icon{margin-right:.2em}.import-csv{padding:.5em 1em}.import-csv,.import-csv__body{display:flex;flex-direction:column;flex:1}.import-csv__body{overflow:hidden;position:relative;align-items:stretch}.import-csv__body .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.import-csv__body:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.import-csv__body:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.import-csv__body>.scroller{flex:1 0 0;overflow-x:scroll;position:relative}.import-csv__table-wrap{overflow-x:auto;width:calc(100vw - 3em);max-width:calc(100vw - 3em)}.import-csv__table-wrap .scroller__bar-wrapper>.scroller__bar{background-color:initial;transition:background-color .15s ease}.import-csv__table-wrap:hover .scroller__bar-wrapper>.scroller__bar{transition:background-color .15s ease-out;background-color:hsla(0,0%,53.3%,.2)}.import-csv__table-wrap:hover .scroller__bar-wrapper>.scroller__bar:hover{transition:background-color .3s ease-in;background-color:hsla(0,0%,53.3%,.8)}.import-csv__table{border-collapse:collapse}.import-csv__table td,.import-csv__table th{text-align:left;padding:.5em 1em;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.import-csv__table td{-webkit-user-select:text;user-select:text}@media (min-width:621px){.import-csv__table tbody tr:hover{background-color:var(--intermediate-background-color)}}.import-csv__field-select{width:100%;height:2em;padding-right:2em;overflow:hidden;text-overflow:ellipsis}.import-csv__top{padding:0 1em}.import-csv__bottom{padding:1em;display:flex;align-items:baseline}.import-csv__bottom button~button{margin-left:.75em}.import-csv__target{flex:1 1 0;display:flex;align-items:baseline}.import-csv__target-select{width:30%;height:2em;margin-left:1em;padding-right:2em}</style><script>(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{100:function(e,t,n){!function(t,r){"use strict";var i;try{i=n(!function(){var e=new Error("Cannot find module 'moment'");throw e.code="MODULE_NOT_FOUND",e}())}catch(e){}e.exports=function(e){var t="function"==typeof e,n=!!window.addEventListener,r=window.document,i=window.setTimeout,o=function(e,t,r,i){n?e.addEventListener(t,r,!!i):e.attachEvent("on"+t,r)},a=function(e,t,r,i){n?e.removeEventListener(t,r,!!i):e.detachEvent("on"+t,r)},s=function(e,t){return-1!==(" "+e.className+" ").indexOf(" "+t+" ")},A=function(e,t){s(e,t)||(e.className=""===e.className?t:e.className+" "+t)},l=function(e,t){var n;e.className=(n=(" "+e.className+" ").replace(" "+t+" "," ")).trim?n.trim():n.replace(/^\s+|\s+$/g,"")},u=function(e){return/Array/.test(Object.prototype.toString.call(e))},c=function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())},h=function(e){var t=e.getDay();return 0===t||6===t},d=function(e){return e%4==0&&e%100!=0||e%400==0},f=function(e,t){return[31,d(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},g=function(e){c(e)&&e.setHours(0,0,0,0)},p=function(e,t){return e.getTime()===t.getTime()},m=function(e,t,n){var r,i;for(r in t)(i=void 0!==e[r])&&"object"==typeof t[r]&&null!==t[r]&&void 0===t[r].nodeName?c(t[r])?n&&(e[r]=new Date(t[r].getTime())):u(t[r])?n&&(e[r]=t[r].slice(0)):e[r]=m({},t[r],n):!n&&i||(e[r]=t[r]);return e},I=function(e,t,n){var i;r.createEvent?((i=r.createEvent("HTMLEvents")).initEvent(t,!0,!1),i=m(i,n),e.dispatchEvent(i)):r.createEventObject&&(i=r.createEventObject(),i=m(i,n),e.fireEvent("on"+t,i))},y=function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e},B={field:null,bound:void 0,ariaLabel:"Use the arrow keys to pick a date",position:"bottom left",reposition:!0,format:"YYYY-MM-DD",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:"",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:"left",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:"Previous Month",nextMonth:"Next Month",months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},C=function(e,t,n){for(t+=e.firstDay;t>=7;)t-=7;return n?e.i18n.weekdaysShort[t]:e.i18n.weekdays[t]},E=function(e){var t=[],n="false";if(e.isEmpty){if(!e.showDaysInNextAndPreviousMonths)return'<td class="is-empty"></td>';t.push("is-outside-current-month"),e.enableSelectionDaysInNextAndPreviousMonths||t.push("is-selection-disabled")}return e.isDisabled&&t.push("is-disabled"),e.isToday&&t.push("is-today"),e.isSelected&&(t.push("is-selected"),n="true"),e.hasEvent&&t.push("has-event"),e.isInRange&&t.push("is-inrange"),e.isStartRange&&t.push("is-startrange"),e.isEndRange&&t.push("is-endrange"),'<td data-day="'+e.day+'" class="'+t.join(" ")+'" aria-selected="'+n+'"><button class="pika-button pika-day" type="button" data-pika-year="'+e.year+'" data-pika-month="'+e.month+'" data-pika-day="'+e.day+'">'+e.day+"</button></td>"},w=function(e,t,n,r){return'<tr class="pika-row'+(n?" pick-whole-week":"")+(r?" is-selected":"")+'">'+(t?e.reverse():e).join("")+"</tr>"},v=function(e,t,n,r,i,o){var a,s,A,l,c,h=e._o,d=n===h.minYear,f=n===h.maxYear,g='<div id="'+o+'" class="pika-title" role="heading" aria-live="assertive">',p=!0,m=!0;for(A=[],a=0;a<12;a++)A.push('<option value="'+(n===i?a-t:12+a-t)+'"'+(a===r?' selected="selected"':"")+(d&&a<h.minMonth||f&&a>h.maxMonth?'disabled="disabled"':"")+">"+h.i18n.months[a]+"</option>");for(l='<div class="pika-label">'+h.i18n.months[r]+'<select class="pika-select pika-select-month" tabindex="-1">'+A.join("")+"</select></div>",u(h.yearRange)?(a=h.yearRange[0],s=h.yearRange[1]+1):(a=n-h.yearRange,s=1+n+h.yearRange),A=[];a<s&&a<=h.maxYear;a++)a>=h.minYear&&A.push('<option value="'+a+'"'+(a===n?' selected="selected"':"")+">"+a+"</option>");return c='<div class="pika-label">'+n+h.yearSuffix+'<select class="pika-select pika-select-year" tabindex="-1">'+A.join("")+"</select></div>",h.showMonthAfterYear?g+=c+l:g+=l+c,d&&(0===r||h.minMonth>=r)&&(p=!1),f&&(11===r||h.maxMonth<=r)&&(m=!1),0===t&&(g+='<button class="pika-prev'+(p?"":" is-disabled")+'" type="button">'+h.i18n.previousMonth+"</button>"),t===e._o.numberOfMonths-1&&(g+='<button class="pika-next'+(m?"":" is-disabled")+'" type="button">'+h.i18n.nextMonth+"</button>"),g+"</div>"},b=function(a){var A=this,l=A.config(a);A._onMouseDown=function(e){if(A._v){var t=(e=e||window.event).target||e.srcElement;if(t)if(s(t,"is-disabled")||(!s(t,"pika-button")||s(t,"is-empty")||s(t.parentNode,"is-disabled")?s(t,"pika-prev")?A.prevMonth():s(t,"pika-next")&&A.nextMonth():(A.setDate(new Date(t.getAttribute("data-pika-year"),t.getAttribute("data-pika-month"),t.getAttribute("data-pika-day"))),l.bound&&i((function(){A.hide(),l.blurFieldOnSelect&&l.field&&l.field.blur()}),100))),s(t,"pika-select"))A._c=!0;else{if(!e.preventDefault)return e.returnValue=!1,!1;e.preventDefault()}}},A._onChange=function(e){var t=(e=e||window.event).target||e.srcElement;t&&(s(t,"pika-select-month")?A.gotoMonth(t.value):s(t,"pika-select-year")&&A.gotoYear(t.value))},A._onKeyChange=function(e){if(e=e||window.event,A.isVisible())switch(e.keyCode){case 13:case 27:l.field&&l.field.blur();break;case 37:e.preventDefault(),A.adjustDate("subtract",1);break;case 38:A.adjustDate("subtract",7);break;case 39:A.adjustDate("add",1);break;case 40:A.adjustDate("add",7)}},A._onInputChange=function(n){var r;n.firedBy!==A&&(r=l.parse?l.parse(l.field.value,l.format):t?(r=e(l.field.value,l.format,l.formatStrict))&&r.isValid()?r.toDate():null:new Date(Date.parse(l.field.value)),c(r)&&A.setDate(r),A._v||A.show())},A._onInputFocus=function(){A.show()},A._onInputClick=function(){A.show()},A._onInputBlur=function(){var e=r.activeElement;do{if(s(e,"pika-single"))return}while(e=e.parentNode);A._c||(A._b=i((function(){A.hide()}),50)),A._c=!1},A._onClick=function(e){var t=(e=e||window.event).target||e.srcElement,r=t;if(t){!n&&s(t,"pika-select")&&(t.onchange||(t.setAttribute("onchange","return;"),o(t,"change",A._onChange)));do{if(s(r,"pika-single")||r===l.trigger)return}while(r=r.parentNode);A._v&&t!==l.trigger&&r!==l.trigger&&A.hide()}},A.el=r.createElement("div"),A.el.className="pika-single"+(l.isRTL?" is-rtl":"")+(l.theme?" "+l.theme:""),o(A.el,"mousedown",A._onMouseDown,!0),o(A.el,"touchend",A._onMouseDown,!0),o(A.el,"change",A._onChange),l.keyboardInput&&o(r,"keydown",A._onKeyChange),l.field&&(l.container?l.container.appendChild(A.el):l.bound?r.body.appendChild(A.el):l.field.parentNode.insertBefore(A.el,l.field.nextSibling),o(l.field,"change",A._onInputChange),l.defaultDate||(t&&l.field.value?l.defaultDate=e(l.field.value,l.format).toDate():l.defaultDate=new Date(Date.parse(l.field.value)),l.setDefaultDate=!0));var u=l.defaultDate;c(u)?l.setDefaultDate?A.setDate(u,!0):A.gotoDate(u):A.gotoDate(new Date),l.bound?(this.hide(),A.el.className+=" is-bound",o(l.trigger,"click",A._onInputClick),o(l.trigger,"focus",A._onInputFocus),o(l.trigger,"blur",A._onInputBlur)):this.show()};return b.prototype={config:function(e){this._o||(this._o=m({},B,!0));var t=m(this._o,e,!0);t.isRTL=!!t.isRTL,t.field=t.field&&t.field.nodeName?t.field:null,t.theme="string"==typeof t.theme&&t.theme?t.theme:null,t.bound=!!(void 0!==t.bound?t.field&&t.bound:t.field),t.trigger=t.trigger&&t.trigger.nodeName?t.trigger:t.field,t.disableWeekends=!!t.disableWeekends,t.disableDayFn="function"==typeof t.disableDayFn?t.disableDayFn:null;var n=parseInt(t.numberOfMonths,10)||1;if(t.numberOfMonths=n>4?4:n,c(t.minDate)||(t.minDate=!1),c(t.maxDate)||(t.maxDate=!1),t.minDate&&t.maxDate&&t.maxDate<t.minDate&&(t.maxDate=t.minDate=!1),t.minDate&&this.setMinDate(t.minDate),t.maxDate&&this.setMaxDate(t.maxDate),u(t.yearRange)){var r=(new Date).getFullYear()-10;t.yearRange[0]=parseInt(t.yearRange[0],10)||r,t.yearRange[1]=parseInt(t.yearRange[1],10)||r}else t.yearRange=Math.abs(parseInt(t.yearRange,10))||B.yearRange,t.yearRange>100&&(t.yearRange=100);return t},toString:function(n){return n=n||this._o.format,c(this._d)?this._o.toString?this._o.toString(this._d,n):t?e(this._d).format(n):this._d.toDateString():""},getMoment:function(){return t?e(this._d):null},setMoment:function(n,r){t&&e.isMoment(n)&&this.setDate(n.toDate(),r)},getDate:function(){return c(this._d)?new Date(this._d.getTime()):null},setDate:function(e,t){if(!e)return this._d=null,this._o.field&&(this._o.field.value="",I(this._o.field,"change",{firedBy:this})),this.draw();if("string"==typeof e&&(e=new Date(Date.parse(e))),c(e)){var n=this._o.minDate,r=this._o.maxDate;c(n)&&e<n?e=n:c(r)&&e>r&&(e=r),this._d=new Date(e.getTime()),g(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),I(this._o.field,"change",{firedBy:this})),t||"function"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(e){var t=!0;if(c(e)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),r=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),i=e.getTime();r.setMonth(r.getMonth()+1),r.setDate(r.getDate()-1),t=i<n.getTime()||r.getTime()<i}t&&(this.calendars=[{month:e.getMonth(),year:e.getFullYear()}],"right"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(e,t){var n,r=this.getDate()||new Date,i=24*parseInt(t)*60*60*1e3;"add"===e?n=new Date(r.valueOf()+i):"subtract"===e&&(n=new Date(r.valueOf()-i)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=y(this.calendars[0]);for(var e=1;e<this._o.numberOfMonths;e++)this.calendars[e]=y({month:this.calendars[0].month+e,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(e){isNaN(e)||(this.calendars[0].month=parseInt(e,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(e){isNaN(e)||(this.calendars[0].year=parseInt(e,10),this.adjustCalendars())},setMinDate:function(e){e instanceof Date?(g(e),this._o.minDate=e,this._o.minYear=e.getFullYear(),this._o.minMonth=e.getMonth()):(this._o.minDate=B.minDate,this._o.minYear=B.minYear,this._o.minMonth=B.minMonth,this._o.startRange=B.startRange),this.draw()},setMaxDate:function(e){e instanceof Date?(g(e),this._o.maxDate=e,this._o.maxYear=e.getFullYear(),this._o.maxMonth=e.getMonth()):(this._o.maxDate=B.maxDate,this._o.maxYear=B.maxYear,this._o.maxMonth=B.maxMonth,this._o.endRange=B.endRange),this.draw()},setStartRange:function(e){this._o.startRange=e},setEndRange:function(e){this._o.endRange=e},draw:function(e){if(this._v||e){var t,n=this._o,r=n.minYear,o=n.maxYear,a=n.minMonth,s=n.maxMonth,A="";this._y<=r&&(this._y=r,!isNaN(a)&&this._m<a&&(this._m=a)),this._y>=o&&(this._y=o,!isNaN(s)&&this._m>s&&(this._m=s)),t="pika-title-"+Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)A+='<div class="pika-lendar">'+v(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,t)+this.render(this.calendars[l].year,this.calendars[l].month,t)+"</div>";this.el.innerHTML=A,n.bound&&"hidden"!==n.field.type&&i((function(){n.trigger.focus()}),1),"function"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute("aria-label",n.ariaLabel)}},adjustPosition:function(){var e,t,n,i,o,a,s,u,c,h,d,f;if(!this._o.container){if(this.el.style.position="absolute",t=e=this._o.trigger,n=this.el.offsetWidth,i=this.el.offsetHeight,o=window.innerWidth||r.documentElement.clientWidth,a=window.innerHeight||r.documentElement.clientHeight,s=window.pageYOffset||r.body.scrollTop||r.documentElement.scrollTop,d=!0,f=!0,"function"==typeof e.getBoundingClientRect)u=(h=e.getBoundingClientRect()).left+window.pageXOffset,c=h.bottom+window.pageYOffset;else for(u=t.offsetLeft,c=t.offsetTop+t.offsetHeight;t=t.offsetParent;)u+=t.offsetLeft,c+=t.offsetTop;(this._o.reposition&&u+n>o||this._o.position.indexOf("right")>-1&&u-n+e.offsetWidth>0)&&(u=u-n+e.offsetWidth,d=!1),(this._o.reposition&&c+i>a+s||this._o.position.indexOf("top")>-1&&c-i-e.offsetHeight>0)&&(c=c-i-e.offsetHeight,f=!1),this.el.style.left=u+"px",this.el.style.top=c+"px",A(this.el,d?"left-aligned":"right-aligned"),A(this.el,f?"bottom-aligned":"top-aligned"),l(this.el,d?"right-aligned":"left-aligned"),l(this.el,f?"top-aligned":"bottom-aligned")}},render:function(e,t,n){var r=this._o,i=new Date,o=f(e,t),a=new Date(e,t,1).getDay(),s=[],A=[];g(i),r.firstDay>0&&(a-=r.firstDay)<0&&(a+=7);for(var l=0===t?11:t-1,u=11===t?0:t+1,d=0===t?e-1:e,m=11===t?e+1:e,I=f(d,l),y=o+a,B=y;B>7;)B-=7;y+=7-B;for(var v,b,Q,k,x=!1,_=0,D=0;_<y;_++){var S=new Date(e,t,_-a+1),N=!!c(this._d)&&p(S,this._d),M=p(S,i),T=-1!==r.events.indexOf(S.toDateString()),F=_<a||_>=o+a,R=_-a+1,U=t,H=e,L=r.startRange&&p(r.startRange,S),G=r.endRange&&p(r.endRange,S),P=r.startRange&&r.endRange&&r.startRange<S&&S<r.endRange;F&&(_<a?(R=I+R,U=l,H=d):(R-=o,U=u,H=m));var O={day:R,month:U,year:H,hasEvent:T,isSelected:N,isToday:M,isDisabled:r.minDate&&S<r.minDate||r.maxDate&&S>r.maxDate||r.disableWeekends&&h(S)||r.disableDayFn&&r.disableDayFn(S),isEmpty:F,isStartRange:L,isEndRange:G,isInRange:P,showDaysInNextAndPreviousMonths:r.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:r.enableSelectionDaysInNextAndPreviousMonths};r.pickWholeWeek&&N&&(x=!0),A.push(E(O)),7==++D&&(r.showWeekNumber&&A.unshift((v=_-a,b=t,Q=e,k=void 0,void 0,k=new Date(Q,0,1),'<td class="pika-week">'+Math.ceil(((new Date(Q,b,v)-k)/864e5+k.getDay()+1)/7)+"</td>")),s.push(w(A,r.isRTL,r.pickWholeWeek,x)),A=[],D=0,x=!1)}return function(e,t,n){return'<table cellpadding="0" cellspacing="0" class="pika-table" role="grid" aria-labelledby="'+n+'">'+function(e){var t,n=[];e.showWeekNumber&&n.push("<th></th>");for(t=0;t<7;t++)n.push('<th scope="col"><abbr title="'+C(e,t)+'">'+C(e,t,!0)+"</abbr></th>");return"<thead><tr>"+(e.isRTL?n.reverse():n).join("")+"</tr></thead>"}(e)+(r=t,"<tbody>"+r.join("")+"</tbody></table>");var r}(r,s,n)},isVisible:function(){return this._v},show:function(){this.isVisible()||(this._v=!0,this.draw(),l(this.el,"is-hidden"),this._o.bound&&(o(r,"click",this._onClick),this.adjustPosition()),"function"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var e=this._v;!1!==e&&(this._o.bound&&a(r,"click",this._onClick),this.el.style.position="static",this.el.style.left="auto",this.el.style.top="auto",A(this.el,"is-hidden"),this._v=!1,void 0!==e&&"function"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){var e=this._o;this.hide(),a(this.el,"mousedown",this._onMouseDown,!0),a(this.el,"touchend",this._onMouseDown,!0),a(this.el,"change",this._onChange),e.keyboardInput&&a(r,"keydown",this._onKeyChange),e.field&&(a(e.field,"change",this._onInputChange),e.bound&&(a(e.trigger,"click",this._onInputClick),a(e.trigger,"focus",this._onInputFocus),a(e.trigger,"blur",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},b}(i)}()},102:function(e,t,n){var r=n(216),i=n(205);e.exports=function(e,t,n){var o=!0,a=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return i(n)&&(o="leading"in n?!!n.leading:o,a="trailing"in n?!!n.trailing:a),r(e,t,{leading:o,maxWait:t,trailing:a})}},11:function(e,t,n){e.exports=n(275).default},147:function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";var r=n(13),i=n(12),o=n(17);e.exports=function(e){function t(){var e,t=n(function(){for(var e=u.data,t=new Uint8Array(A*l),n=0;l>n;n++)for(var r=0;A>r;r++){var i=4*r+n*A*4;t[r+n*A]=(33*e[i]+34*e[i+1]+33*e[i+2])/100}return t}());t.width=A,t.height=l,t.imagedata=u;try{var a=o.extractPureBits(t);e=i.decode(a)}catch(n){var s=new r(t).detect();e=i.decode(s.bits)}for(var c=e.getDataByte(),h="",d=0;d<c.length;d++)for(var f=0;f<c[d].length;f++)h+=String.fromCharCode(c[d][f]);return h}function n(e){for(var t=function(e){for(var t=Math.floor(A/4),n=Math.floor(l/4),r=new Array(4),i=0;4>i;i++){r[i]=new Array(4);for(var o=0;4>o;o++)r[i][o]=[0,0]}var a,s;for(s=0;4>s;s++)for(a=0;4>a;a++){for(var u=0,c=255,h=0;n>h;h++)for(var d=t*a+(n*s+h)*A,f=0;t>f;f++){var g=e[d+f];u>g&&(u=g),g>c&&(c=g)}r[a][s][0]=u,r[a][s][1]=c}for(var p=new Array(4),m=0;4>m;m++)p[m]=new Array(4);for(s=0;4>s;s++)for(a=0;4>a;a++)p[a][s]=Math.floor((r[a][s][0]+r[a][s][1])/2);return p}(e),n=t.length,r=Math.floor(A/n),i=Math.floor(l/n),o=new Uint8Array(l*A),a=0;n>a;a++)for(var s=0;n>s;s++)for(var u=0;i>u;u++)for(var c=0;r>c;c++)o[r*s+c+(i*a+u)*A]=e[r*s+c+(i*a+u)*A]<t[s][a];return o}var a,s,A,l,u,c=1048576;this.decode=function(){a=document.createElement("canvas"),s=a.getContext("2d");var n=e.height,r=e.width;if(e.width*e.height>c){var i=e.width/e.height;r=i*(n=Math.sqrt(c/i))}return a.width=r,a.height=n,s.drawImage(e,0,0,a.width,a.height),A=a.width,l=a.height,u=s.getImageData(0,0,a.width,a.height),t()}}},function(e,t,n){"use strict";var r=n(3).URShift;e.exports=function(e,t){if(t||(t=e),1>e||1>t)throw"Both dimensions must be greater than 0";this.width=e,this.height=t;var n=e>>5;0!=(31&e)&&n++,this.rowSize=n,this.bits=new Uint32Array(n*t),this.getDimension=function(){if(this.width!==this.height)throw"Can get dimension on a non-square matrix";return this.width},this.getValue=function(e,t){var n=t*this.rowSize+(e>>5);return 0!=(1&r(this.bits[n],31&e))},this.setValue=function(e,t){var n=t*this.rowSize+(e>>5);this.bits[n]|=1<<(31&e)},this.flip=function(e,t){var n=t*this.rowSize+(e>>5);this.bits[n]^=1<<(31&e)},this.setRegion=function(e,t,n,r){if(0>t||0>e)throw"Left and top must be nonnegative";if(1>r||1>n)throw"Height and width must be at least 1";var i=e+n,o=t+r;if(o>this.height||i>this.width)throw"The region must fit inside the matrix";for(var a=t;o>a;a++)for(var s=a*this.rowSize,A=e;i>A;A++)this.bits[s+(A>>5)]|=1<<(31&A)}}},function(e,t){"use strict";function n(e){this.expTable=new Array(256),this.logTable=new Array(256);var t,n=1;for(t=0;256>t;t++)this.expTable[t]=n,(n<<=1)>=256&&(n^=e);for(t=0;255>t;t++)this.logTable[this.expTable[t]]=t;var i=new Array(1);i[0]=0,this.zero=new r(this,new Array(i));var o=new Array(1);o[0]=1,this.one=new r(this,new Array(o)),this.buildMonomial=function(e,n){if(0>e)throw"System.ArgumentException";if(0===n)return this.zero;var i=new Array(e+1);for(t=0;t<i.length;t++)i[t]=0;return i[0]=n,new r(this,i)},this.exp=function(e){return this.expTable[e]},this.log=function(e){if(0===e)throw"System.ArgumentException";return this.logTable[e]},this.inverse=function(e){if(0===e)throw"System.ArithmeticException";return this.expTable[255-this.logTable[e]]},this.multiply=function(e,t){return 0===e||0===t?0:1===e?t:1===t?e:this.expTable[(this.logTable[e]+this.logTable[t])%255]}}function r(e,t){if(!t||0===t.length)throw"System.ArgumentException";this.field=e;var i,o=t.length;if(o>1&&0===t[0]){for(var a=1;o>a&&0===t[a];)a++;if(a===o)this.coefficients=e.zero.coefficients;else{for(this.coefficients=new Array(o-a),i=0;i<this.coefficients.length;i++)this.coefficients[i]=0;for(var s=0;s<this.coefficients.length;s++)this.coefficients[s]=t[a+s]}}else this.coefficients=t;Object.defineProperty(this,"zero",{get:function(){return 0===this.coefficients[0]}}),Object.defineProperty(this,"degree",{get:function(){return this.coefficients.length-1}}),this.getCoefficient=function(e){return this.coefficients[this.coefficients.length-1-e]},this.evaluateAt=function(e){if(0===e)return this.getCoefficient(0);var t=this.coefficients.length;if(1===e){var r=0;for(i=0;t>i;i++)r=n.addOrSubtract(r,this.coefficients[i]);return r}var o=this.coefficients[0];for(i=1;t>i;i++)o=n.addOrSubtract(this.field.multiply(e,o),this.coefficients[i]);return o},this.addOrSubtract=function(t){if(this.field!==t.field)throw"GF256Polys do not have same GF256 field";if(this.zero)return t;if(t.zero)return this;var o=this.coefficients,a=t.coefficients;if(o.length>a.length){var s=o;o=a,a=s}for(var A=new Array(a.length),l=a.length-o.length,u=0;l>u;u++)A[u]=a[u];for(i=l;i<a.length;i++)A[i]=n.addOrSubtract(o[i-l],a[i]);return new r(e,A)},this.multiply1=function(e){if(this.field!==e.field)throw"GF256Polys do not have same GF256 field";if(this.zero||e.zero)return this.field.zero;var t=this.coefficients,o=t.length,a=e.coefficients,s=a.length,A=new Array(o+s-1);for(i=0;o>i;i++)for(var l=t[i],u=0;s>u;u++)A[i+u]=n.addOrSubtract(A[i+u],this.field.multiply(l,a[u]));return new r(this.field,A)},this.multiply2=function(e){if(0===e)return this.field.zero;if(1===e)return this;var t=this.coefficients.length,n=new Array(t);for(i=0;t>i;i++)n[i]=this.field.multiply(this.coefficients[i],e);return new r(this.field,n)},this.multiplyByMonomial=function(e,t){if(0>e)throw"System.ArgumentException";if(0===t)return this.field.zero;var n=this.coefficients.length,o=new Array(n+e);for(i=0;i<o.length;i++)o[i]=0;for(i=0;n>i;i++)o[i]=this.field.multiply(this.coefficients[i],t);return new r(this.field,o)}}n.QR_CODE_FIELD=new n(285),n.DATA_MATRIX_FIELD=new n(301),n.addOrSubtract=function(e,t){return e^t},e.exports.GF256=n,e.exports.GF256Poly=r},function(e,t){"use strict";e.exports={URShift:function(e,t){return e>=0?e>>t:(e>>t)+(2<<~t)}}},function(e,t,n){"use strict";function r(e){this.errorCorrectionLevel=i.forBits(e>>3&3),this.dataMask=7&e}var i=n(14),o=n(3).URShift,a=[[21522,0],[20773,1],[24188,2],[23371,3],[17913,4],[16590,5],[20375,6],[19104,7],[30660,8],[29427,9],[32170,10],[30877,11],[26159,12],[25368,13],[27713,14],[26998,15],[5769,16],[5054,17],[7399,18],[6608,19],[1890,20],[597,21],[3340,22],[2107,23],[13663,24],[12392,25],[16177,26],[14854,27],[9396,28],[8579,29],[11994,30],[11245,31]],s=[0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4];r.numBitsDiffering=function(e,t){return s[15&(e^=t)]+s[15&o(e,4)]+s[15&o(e,8)]+s[15&o(e,12)]+s[15&o(e,16)]+s[15&o(e,20)]+s[15&o(e,24)]+s[15&o(e,28)]},r.decodeFormatInformation=function(e){var t=r.doDecodeFormatInformation(e);return t||r.doDecodeFormatInformation(21522^e)},r.doDecodeFormatInformation=function(e){for(var t=4294967295,n=0,i=0;i<a.length;i++){var o=a[i],s=o[0];if(s===e)return new r(o[1]);var A=this.numBitsDiffering(e,s);t>A&&(n=o[1],t=A)}return 3>=t?new r(n):null},e.exports=r},function(e,t){"use strict";function n(e,t,r,i,o,a,s,A,l){this.a11=e,this.a12=i,this.a13=s,this.a21=t,this.a22=o,this.a23=A,this.a31=r,this.a32=a,this.a33=l,this.transformPoints1=function(n){for(var u=n.length,c=0;u>c;c+=2){var h=n[c],d=n[c+1],f=s*h+A*d+l;n[c]=(e*h+t*d+r)/f,n[c+1]=(i*h+o*d+a)/f}},this.buildAdjoint=function(){return new n(this.a22*this.a33-this.a23*this.a32,this.a23*this.a31-this.a21*this.a33,this.a21*this.a32-this.a22*this.a31,this.a13*this.a32-this.a12*this.a33,this.a11*this.a33-this.a13*this.a31,this.a12*this.a31-this.a11*this.a32,this.a12*this.a23-this.a13*this.a22,this.a13*this.a21-this.a11*this.a23,this.a11*this.a22-this.a12*this.a21)},this.times=function(e){return new n(this.a11*e.a11+this.a21*e.a12+this.a31*e.a13,this.a11*e.a21+this.a21*e.a22+this.a31*e.a23,this.a11*e.a31+this.a21*e.a32+this.a31*e.a33,this.a12*e.a11+this.a22*e.a12+this.a32*e.a13,this.a12*e.a21+this.a22*e.a22+this.a32*e.a23,this.a12*e.a31+this.a22*e.a32+this.a32*e.a33,this.a13*e.a11+this.a23*e.a12+this.a33*e.a13,this.a13*e.a21+this.a23*e.a22+this.a33*e.a23,this.a13*e.a31+this.a23*e.a32+this.a33*e.a33)}}n.quadrilateralToQuadrilateral=function(e,t,n,r,i,o,a,s,A,l,u,c,h,d,f,g){var p=this.quadrilateralToSquare(e,t,n,r,i,o,a,s);return this.squareToQuadrilateral(A,l,u,c,h,d,f,g).times(p)},n.squareToQuadrilateral=function(e,t,r,i,o,a,s,A){var l=A-a,u=t-i+a-A;if(0===l&&0===u)return new n(r-e,o-r,e,i-t,a-i,t,0,0,1);var c=r-o,h=s-o,d=e-r+o-s,f=i-a,g=c*l-h*f,p=(d*l-h*u)/g,m=(c*u-d*f)/g;return new n(r-e+p*r,s-e+m*s,e,i-t+p*i,A-t+m*A,t,p,m,1)},n.quadrilateralToSquare=function(e,t,n,r,i,o,a,s){return this.squareToQuadrilateral(e,t,n,r,i,o,a,s).buildAdjoint()},e.exports=n},function(e,t,n){"use strict";function r(e,t){this.count=e,this.dataCodewords=t}function i(e,t,n){this.ecCodewordsPerBlock=e,this.ecBlocks=n?[t,n]:[t],this.getECBlocks=function(){return this.ecBlocks}}function o(e,t,n,r,i,o){this.versionNumber=e,this.alignmentPatternCenters=t,this.ecBlocks=[n,r,i,o];for(var s=0,A=n.ecCodewordsPerBlock,l=n.getECBlocks(),u=0;u<l.length;u++){var c=l[u];s+=c.count*(c.dataCodewords+A)}this.totalCodewords=s,this.getDimensionForVersion=function(){return 17+4*this.versionNumber},this.buildFunctionPattern=function(){var e=this.getDimensionForVersion(),t=new a(e);t.setRegion(0,0,9,9),t.setRegion(e-8,0,8,9),t.setRegion(0,e-8,9,8);for(var n=this.alignmentPatternCenters.length,r=0;n>r;r++)for(var i=this.alignmentPatternCenters[r]-2,o=0;n>o;o++)0===r&&(0===o||o===n-1)||r===n-1&&0===o||t.setRegion(this.alignmentPatternCenters[o]-2,i,5,5);return t.setRegion(6,9,1,e-17),t.setRegion(9,6,e-17,1),this.versionNumber>6&&(t.setRegion(e-11,0,3,6),t.setRegion(0,e-11,6,3)),t},this.getECBlocksForLevel=function(e){return this.ecBlocks[e.ordinal]}}var a=n(1),s=n(4);o.VERSION_DECODE_INFO=[31892,34236,39577,42195,48118,51042,55367,58893,63784,68472,70749,76311,79154,84390,87683,92361,96236,102084,102881,110507,110734,117786,119615,126325,127568,133589,136944,141498,145311,150283,152622,158308,161089,167017],o.VERSIONS=[new o(1,[],new i(7,new r(1,19)),new i(10,new r(1,16)),new i(13,new r(1,13)),new i(17,new r(1,9))),new o(2,[6,18],new i(10,new r(1,34)),new i(16,new r(1,28)),new i(22,new r(1,22)),new i(28,new r(1,16))),new o(3,[6,22],new i(15,new r(1,55)),new i(26,new r(1,44)),new i(18,new r(2,17)),new i(22,new r(2,13))),new o(4,[6,26],new i(20,new r(1,80)),new i(18,new r(2,32)),new i(26,new r(2,24)),new i(16,new r(4,9))),new o(5,[6,30],new i(26,new r(1,108)),new i(24,new r(2,43)),new i(18,new r(2,15),new r(2,16)),new i(22,new r(2,11),new r(2,12))),new o(6,[6,34],new i(18,new r(2,68)),new i(16,new r(4,27)),new i(24,new r(4,19)),new i(28,new r(4,15))),new o(7,[6,22,38],new i(20,new r(2,78)),new i(18,new r(4,31)),new i(18,new r(2,14),new r(4,15)),new i(26,new r(4,13),new r(1,14))),new o(8,[6,24,42],new i(24,new r(2,97)),new i(22,new r(2,38),new r(2,39)),new i(22,new r(4,18),new r(2,19)),new i(26,new r(4,14),new r(2,15))),new o(9,[6,26,46],new i(30,new r(2,116)),new i(22,new r(3,36),new r(2,37)),new i(20,new r(4,16),new r(4,17)),new i(24,new r(4,12),new r(4,13))),new o(10,[6,28,50],new i(18,new r(2,68),new r(2,69)),new i(26,new r(4,43),new r(1,44)),new i(24,new r(6,19),new r(2,20)),new i(28,new r(6,15),new r(2,16))),new o(11,[6,30,54],new i(20,new r(4,81)),new i(30,new r(1,50),new r(4,51)),new i(28,new r(4,22),new r(4,23)),new i(24,new r(3,12),new r(8,13))),new o(12,[6,32,58],new i(24,new r(2,92),new r(2,93)),new i(22,new r(6,36),new r(2,37)),new i(26,new r(4,20),new r(6,21)),new i(28,new r(7,14),new r(4,15))),new o(13,[6,34,62],new i(26,new r(4,107)),new i(22,new r(8,37),new r(1,38)),new i(24,new r(8,20),new r(4,21)),new i(22,new r(12,11),new r(4,12))),new o(14,[6,26,46,66],new i(30,new r(3,115),new r(1,116)),new i(24,new r(4,40),new r(5,41)),new i(20,new r(11,16),new r(5,17)),new i(24,new r(11,12),new r(5,13))),new o(15,[6,26,48,70],new i(22,new r(5,87),new r(1,88)),new i(24,new r(5,41),new r(5,42)),new i(30,new r(5,24),new r(7,25)),new i(24,new r(11,12),new r(7,13))),new o(16,[6,26,50,74],new i(24,new r(5,98),new r(1,99)),new i(28,new r(7,45),new r(3,46)),new i(24,new r(15,19),new r(2,20)),new i(30,new r(3,15),new r(13,16))),new o(17,[6,30,54,78],new i(28,new r(1,107),new r(5,108)),new i(28,new r(10,46),new r(1,47)),new i(28,new r(1,22),new r(15,23)),new i(28,new r(2,14),new r(17,15))),new o(18,[6,30,56,82],new i(30,new r(5,120),new r(1,121)),new i(26,new r(9,43),new r(4,44)),new i(28,new r(17,22),new r(1,23)),new i(28,new r(2,14),new r(19,15))),new o(19,[6,30,58,86],new i(28,new r(3,113),new r(4,114)),new i(26,new r(3,44),new r(11,45)),new i(26,new r(17,21),new r(4,22)),new i(26,new r(9,13),new r(16,14))),new o(20,[6,34,62,90],new i(28,new r(3,107),new r(5,108)),new i(26,new r(3,41),new r(13,42)),new i(30,new r(15,24),new r(5,25)),new i(28,new r(15,15),new r(10,16))),new o(21,[6,28,50,72,94],new i(28,new r(4,116),new r(4,117)),new i(26,new r(17,42)),new i(28,new r(17,22),new r(6,23)),new i(30,new r(19,16),new r(6,17))),new o(22,[6,26,50,74,98],new i(28,new r(2,111),new r(7,112)),new i(28,new r(17,46)),new i(30,new r(7,24),new r(16,25)),new i(24,new r(34,13))),new o(23,[6,30,54,74,102],new i(30,new r(4,121),new r(5,122)),new i(28,new r(4,47),new r(14,48)),new i(30,new r(11,24),new r(14,25)),new i(30,new r(16,15),new r(14,16))),new o(24,[6,28,54,80,106],new i(30,new r(6,117),new r(4,118)),new i(28,new r(6,45),new r(14,46)),new i(30,new r(11,24),new r(16,25)),new i(30,new r(30,16),new r(2,17))),new o(25,[6,32,58,84,110],new i(26,new r(8,106),new r(4,107)),new i(28,new r(8,47),new r(13,48)),new i(30,new r(7,24),new r(22,25)),new i(30,new r(22,15),new r(13,16))),new o(26,[6,30,58,86,114],new i(28,new r(10,114),new r(2,115)),new i(28,new r(19,46),new r(4,47)),new i(28,new r(28,22),new r(6,23)),new i(30,new r(33,16),new r(4,17))),new o(27,[6,34,62,90,118],new i(30,new r(8,122),new r(4,123)),new i(28,new r(22,45),new r(3,46)),new i(30,new r(8,23),new r(26,24)),new i(30,new r(12,15),new r(28,16))),new o(28,[6,26,50,74,98,122],new i(30,new r(3,117),new r(10,118)),new i(28,new r(3,45),new r(23,46)),new i(30,new r(4,24),new r(31,25)),new i(30,new r(11,15),new r(31,16))),new o(29,[6,30,54,78,102,126],new i(30,new r(7,116),new r(7,117)),new i(28,new r(21,45),new r(7,46)),new i(30,new r(1,23),new r(37,24)),new i(30,new r(19,15),new r(26,16))),new o(30,[6,26,52,78,104,130],new i(30,new r(5,115),new r(10,116)),new i(28,new r(19,47),new r(10,48)),new i(30,new r(15,24),new r(25,25)),new i(30,new r(23,15),new r(25,16))),new o(31,[6,30,56,82,108,134],new i(30,new r(13,115),new r(3,116)),new i(28,new r(2,46),new r(29,47)),new i(30,new r(42,24),new r(1,25)),new i(30,new r(23,15),new r(28,16))),new o(32,[6,34,60,86,112,138],new i(30,new r(17,115)),new i(28,new r(10,46),new r(23,47)),new i(30,new r(10,24),new r(35,25)),new i(30,new r(19,15),new r(35,16))),new o(33,[6,30,58,86,114,142],new i(30,new r(17,115),new r(1,116)),new i(28,new r(14,46),new r(21,47)),new i(30,new r(29,24),new r(19,25)),new i(30,new r(11,15),new r(46,16))),new o(34,[6,34,62,90,118,146],new i(30,new r(13,115),new r(6,116)),new i(28,new r(14,46),new r(23,47)),new i(30,new r(44,24),new r(7,25)),new i(30,new r(59,16),new r(1,17))),new o(35,[6,30,54,78,102,126,150],new i(30,new r(12,121),new r(7,122)),new i(28,new r(12,47),new r(26,48)),new i(30,new r(39,24),new r(14,25)),new i(30,new r(22,15),new r(41,16))),new o(36,[6,24,50,76,102,128,154],new i(30,new r(6,121),new r(14,122)),new i(28,new r(6,47),new r(34,48)),new i(30,new r(46,24),new r(10,25)),new i(30,new r(2,15),new r(64,16))),new o(37,[6,28,54,80,106,132,158],new i(30,new r(17,122),new r(4,123)),new i(28,new r(29,46),new r(14,47)),new i(30,new r(49,24),new r(10,25)),new i(30,new r(24,15),new r(46,16))),new o(38,[6,32,58,84,110,136,162],new i(30,new r(4,122),new r(18,123)),new i(28,new r(13,46),new r(32,47)),new i(30,new r(48,24),new r(14,25)),new i(30,new r(42,15),new r(32,16))),new o(39,[6,26,54,82,110,138,166],new i(30,new r(20,117),new r(4,118)),new i(28,new r(40,47),new r(7,48)),new i(30,new r(43,24),new r(22,25)),new i(30,new r(10,15),new r(67,16))),new o(40,[6,30,58,86,114,142,170],new i(30,new r(19,118),new r(6,119)),new i(28,new r(18,47),new r(31,48)),new i(30,new r(34,24),new r(34,25)),new i(30,new r(20,15),new r(61,16)))],o.getVersionForNumber=function(e){if(1>e||e>40)throw"ArgumentException";return o.VERSIONS[e-1]},o.getProvisionalVersionForDimension=function(e){if(e%4!=1)throw"Error getProvisionalVersionForDimension";try{return o.getVersionForNumber(e-17>>2)}catch(e){throw"Error getVersionForNumber"}},o.decodeVersionInformation=function(e){for(var t=4294967295,n=0,r=0;r<o.VERSION_DECODE_INFO.length;r++){var i=o.VERSION_DECODE_INFO[r];if(i===e)return this.getVersionForNumber(r+7);var a=s.numBitsDiffering(e,i);t>a&&(n=r+7,t=a)}return 3>=t?this.getVersionForNumber(n):null},e.exports=o},function(e,t,n){"use strict";var r=n(8);e.exports=function(e,t,n,i,o,a){this.image=e,this.possibleCenters=[],this.width=i,this.height=o,this.moduleSize=a,this.crossCheckStateCount=[0,0,0],this.centerFromEnd=function(e,t){return t-e[2]-e[1]/2},this.foundPatternCross=function(e){for(var t=this.moduleSize/2,n=0;3>n;n++)if(Math.abs(a-e[n])>=t)return!1;return!0},this.crossCheckVertical=function(t,n,r,i){var o=e.height,a=this.crossCheckStateCount;a[0]=0,a[1]=0,a[2]=0;for(var s=t;s>=0&&e[n+s*e.width]&&a[1]<=r;)a[1]++,s--;if(0>s||a[1]>r)return NaN;for(;s>=0&&!e[n+s*e.width]&&a[0]<=r;)a[0]++,s--;if(a[0]>r)return NaN;for(s=t+1;o>s&&e[n+s*e.width]&&a[1]<=r;)a[1]++,s++;if(s===o||a[1]>r)return NaN;for(;o>s&&!e[n+s*e.width]&&a[2]<=r;)a[2]++,s++;if(a[2]>r)return NaN;var A=a[0]+a[1]+a[2];return 5*Math.abs(A-i)>=2*i?NaN:this.foundPatternCross(a)?this.centerFromEnd(a,s):NaN},this.handlePossibleCenter=function(e,t,n){var i=e[0]+e[1]+e[2],o=this.centerFromEnd(e,n),a=this.crossCheckVertical(t,Math.floor(o),2*e[1],i);if(!isNaN(a)){for(var s=(e[0]+e[1]+e[2])/3,A=this.possibleCenters.length,l=0;A>l;l++)if(this.possibleCenters[l].aboutEquals(s,a,o))return new r(o,a,s);var u=new r(o,a,s);this.possibleCenters.push(u)}return null},this.find=function(){for(var r,a=t+i,s=n+(o>>1),A=[0,0,0],l=0;o>l;l++){var u=s+(0==(1&l)?l+1>>1:-(l+1>>1));A[0]=0,A[1]=0,A[2]=0;for(var c=t;a>c&&!e[c+e.width*u];)c++;for(var h=0;a>c;){if(e[c+u*e.width])if(1===h)A[h]++;else if(2===h){if(this.foundPatternCross(A)&&(r=this.handlePossibleCenter(A,u,c)))return r;A[0]=A[2],A[1]=1,A[2]=0,h=1}else A[++h]++;else 1===h&&h++,A[h]++;c++}if(this.foundPatternCross(A)&&null!==(r=this.handlePossibleCenter(A,u,a)))return r}if(0!==this.possibleCenters.length)return this.possibleCenters[0];throw"Couldn't find enough alignment patterns"}}},function(e,t){"use strict";e.exports=function(e,t,n){this.x=e,this.y=t,this.count=1,this.estimatedModuleSize=n,this.incrementCount=function(){this.count++},this.aboutEquals=function(e,t,n){if(Math.abs(t-this.y)<=e&&Math.abs(n-this.x)<=e){var r=Math.abs(e-this.estimatedModuleSize);return 1>=r||r/this.estimatedModuleSize<=1}return!1}}},function(e,t,n){"use strict";var r=n(4),i=n(6),o=n(11);e.exports=function(e){var t=e.getDimension();if(21>t||1!=(3&t))throw"Error BitMatrixParser";this.bitMatrix=e,this.parsedVersion=null,this.parsedFormatInfo=null,this.copyBit=function(e,t,n){return this.bitMatrix.getValue(e,t)?n<<1|1:n<<1},this.readFormatInformation=function(){if(this.parsedFormatInfo)return this.parsedFormatInfo;var e,t=0;for(e=0;6>e;e++)t=this.copyBit(e,8,t);t=this.copyBit(7,8,t),t=this.copyBit(8,8,t),t=this.copyBit(8,7,t);for(var n=5;n>=0;n--)t=this.copyBit(8,n,t);if(this.parsedFormatInfo=r.decodeFormatInformation(t),this.parsedFormatInfo)return this.parsedFormatInfo;var i=this.bitMatrix.getDimension();t=0;var o=i-8;for(e=i-1;e>=o;e--)t=this.copyBit(e,8,t);for(n=i-7;i>n;n++)t=this.copyBit(8,n,t);if(this.parsedFormatInfo=r.decodeFormatInformation(t),this.parsedFormatInfo)return this.parsedFormatInfo;throw"Error readFormatInformation"},this.readVersion=function(){if(this.parsedVersion)return this.parsedVersion;var e=this.bitMatrix.getDimension(),t=e-17>>2;if(6>=t)return i.getVersionForNumber(t);var n,r,o=0,a=e-11;for(r=5;r>=0;r--)for(n=e-9;n>=a;n--)o=this.copyBit(n,r,o);if(this.parsedVersion=i.decodeVersionInformation(o),this.parsedVersion&&this.parsedVersion.getDimensionForVersion()===e)return this.parsedVersion;for(o=0,n=5;n>=0;n--)for(r=e-9;r>=a;r--)o=this.copyBit(n,r,o);if(this.parsedVersion=i.decodeVersionInformation(o),this.parsedVersion&&this.parsedVersion.getDimensionForVersion()===e)return this.parsedVersion;throw"Error readVersion"},this.readCodewords=function(){var e=this.readFormatInformation(),t=this.readVersion(),n=o.forReference(e.dataMask),r=this.bitMatrix.getDimension();n.unmaskBitMatrix(this.bitMatrix,r);for(var i=t.buildFunctionPattern(),a=!0,s=new Array(t.totalCodewords),A=0,l=0,u=0,c=r-1;c>0;c-=2){6===c&&c--;for(var h=0;r>h;h++)for(var d=a?r-1-h:h,f=0;2>f;f++)i.getValue(c-f,d)||(u++,l<<=1,this.bitMatrix.getValue(c-f,d)&&(l|=1),8===u&&(s[A++]=l,u=0,l=0));a^=!0}if(A!==t.totalCodewords)throw"Error readCodewords";return s}}},function(e,t){"use strict";function n(e,t){this.numDataCodewords=e,this.codewords=t}n.getDataBlocks=function(e,t,r){if(e.length!==t.totalCodewords)throw"ArgumentException";var i,o,a=t.getECBlocksForLevel(r),s=0,A=a.getECBlocks();for(i=0;i<A.length;i++)s+=A[i].count;var l=new Array(s),u=0;for(o=0;o<A.length;o++){var c=A[o];for(i=0;i<c.count;i++){var h=c.dataCodewords,d=a.ecCodewordsPerBlock+h;l[u++]=new n(h,new Array(d))}}for(var f=l[0].codewords.length,g=l.length-1;g>=0&&l[g].codewords.length!==f;)g--;g++;var p=f-a.ecCodewordsPerBlock,m=0;for(i=0;p>i;i++)for(o=0;u>o;o++)l[o].codewords[i]=e[m++];for(o=g;u>o;o++)l[o].codewords[p]=e[m++];var I=l[0].codewords.length;for(i=p;I>i;i++)for(o=0;u>o;o++){var y=g>o?i:i+1;l[o].codewords[y]=e[m++]}return l},e.exports=n},function(e,t,n){"use strict";var r=n(3).URShift,i={forReference:function(e){if(0>e||e>7)throw"System.ArgumentException";return i.DATA_MASKS[e]}};i.DATA_MASKS=[new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){return 0==(e+t&1)}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e){return 0==(1&e)}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){return t%3==0}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){return(e+t)%3==0}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){return 0==(r(e,1)+t/3&1)}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){var n=e*t;return(1&n)+n%3==0}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){var n=e*t;return 0==((1&n)+n%3&1)}},new function(){this.unmaskBitMatrix=function(e,t){for(var n=0;t>n;n++)for(var r=0;t>r;r++)this.isMasked(n,r)&&e.flip(r,n)},this.isMasked=function(e,t){return 0==((e+t&1)+e*t%3&1)}}],e.exports=i},function(e,t,n){"use strict";var r=n(19),i=n(2).GF256,o=n(9),a=n(10),s=n(18),A={};A.rsDecoder=new r(i.QR_CODE_FIELD),A.correctErrors=function(e,t){var n,r=e.length,i=new Array(r);for(n=0;r>n;n++)i[n]=255&e[n];var o=e.length-t;try{A.rsDecoder.decode(i,o)}catch(e){throw e}for(n=0;t>n;n++)e[n]=i[n]},A.decode=function(e){var t,n=new o(e),r=n.readVersion(),i=n.readFormatInformation().errorCorrectionLevel,l=n.readCodewords(),u=a.getDataBlocks(l,r,i),c=0;for(t=0;t<u.length;t++)c+=u[t].numDataCodewords;for(var h=new Array(c),d=0,f=0;f<u.length;f++){var g=u[f],p=g.codewords,m=g.numDataCodewords;for(A.correctErrors(p,m),t=0;m>t;t++)h[d++]=p[t]}return new s(h,r.versionNumber,i.bits)},e.exports=A},function(e,t,n){"use strict";function r(e,t){this.bits=e,this.points=t}var i=n(7),o=n(16),a=n(6),s=n(15),A=n(5);e.exports=function(e){this.image=e,this.sizeOfBlackWhiteBlackRun=function(t,n,r,i){var o=Math.abs(i-n)>Math.abs(r-t);if(o){var a=t;t=n,n=a,a=r,r=i,i=a}for(var s=Math.abs(r-t),A=Math.abs(i-n),l=-s>>1,u=i>n?1:-1,c=r>t?1:-1,h=0,d=t,f=n;d!==r;d+=c){var g=o?f:d,p=o?d:f;if(1===h?this.image[g+p*e.width]&&h++:this.image[g+p*e.width]||h++,3===h){var m=d-t,I=f-n;return Math.sqrt(m*m+I*I)}if((l+=A)>0){if(f===i)break;f+=u,l-=s}}var y=r-t,B=i-n;return Math.sqrt(y*y+B*B)},this.sizeOfBlackWhiteBlackRunBothWays=function(t,n,r,i){var o=this.sizeOfBlackWhiteBlackRun(t,n,r,i),a=1,s=t-(r-t);0>s?(a=t/(t-s),s=0):s>=e.width&&(a=(e.width-1-t)/(s-t),s=e.width-1);var A=Math.floor(n-(i-n)*a);return a=1,0>A?(a=n/(n-A),A=0):A>=e.height&&(a=(e.height-1-n)/(A-n),A=e.height-1),s=Math.floor(t+(s-t)*a),(o+=this.sizeOfBlackWhiteBlackRun(t,n,s,A))-1},this.calculateModuleSizeOneWay=function(e,t){var n=this.sizeOfBlackWhiteBlackRunBothWays(Math.floor(e.x),Math.floor(e.y),Math.floor(t.x),Math.floor(t.y)),r=this.sizeOfBlackWhiteBlackRunBothWays(Math.floor(t.x),Math.floor(t.y),Math.floor(e.x),Math.floor(e.y));return isNaN(n)?r/7:isNaN(r)?n/7:(n+r)/14},this.calculateModuleSize=function(e,t,n){return(this.calculateModuleSizeOneWay(e,t)+this.calculateModuleSizeOneWay(e,n))/2},this.distance=function(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)},this.computeDimension=function(e,t,n,r){var i=7+(Math.round(this.distance(e,t)/r)+Math.round(this.distance(e,n)/r)>>1);switch(3&i){case 0:i++;break;case 2:i--;break;case 3:throw"Error dimension"}return i},this.findAlignmentInRegion=function(t,n,r,o){var a=Math.floor(o*t),s=Math.max(0,n-a),A=Math.min(e.width-1,n+a);if(3*t>A-s)throw"Error align";var l=Math.max(0,r-a),u=Math.min(e.height-1,r+a);return new i(this.image,s,l,A-s,u-l,t).find()},this.createTransform=function(e,t,n,r,i){var o,a,s,l,u=i-3.5;return r?(o=r.x,a=r.y,s=l=u-3):(o=t.x-e.x+n.x,a=t.y-e.y+n.y,s=l=u),A.quadrilateralToQuadrilateral(3.5,3.5,u,3.5,s,l,3.5,u,e.x,e.y,t.x,t.y,o,a,n.x,n.y)},this.sampleGrid=function(t,n){return o.sampleGrid3(e,n,t)},this.processFinderPatternInfo=function(e){var t=e.topLeft,n=e.topRight,i=e.bottomLeft,o=this.calculateModuleSize(t,n,i);if(1>o)throw"Error modSize";var s=this.computeDimension(t,n,i,o),A=a.getProvisionalVersionForDimension(s),l=A.getDimensionForVersion()-7,u=null;if(A.alignmentPatternCenters.length>0)for(var c=n.x-t.x+i.x,h=n.y-t.y+i.y,d=1-3/l,f=Math.floor(t.x+d*(c-t.x)),g=Math.floor(t.y+d*(h-t.y)),p=4;16>=p;p<<=1){u=this.findAlignmentInRegion(o,f,g,p);break}var m=this.createTransform(t,n,i,u,s);return new r(this.sampleGrid(m,s),u?[i,t,n,u]:[i,t,n])},this.detect=function(){var e=(new s).findFinderPattern(this.image);return this.processFinderPatternInfo(e)}}},function(e,t){"use strict";function n(e,t,n){this.ordinal=e,this.bits=t,this.name=n}n.forBits=function(e){if(0>e||e>=a.length)throw"ArgumentException";return a[e]};var r=new n(0,1,"L"),i=new n(1,0,"M"),o=new n(2,3,"Q"),a=[i,r,new n(3,2,"H"),o];e.exports=n},function(e,t){"use strict";function n(e,t,n){this.x=e,this.y=t,this.count=1,this.estimatedModuleSize=n,this.incrementCount=function(){this.count++},this.aboutEquals=function(e,t,n){if(Math.abs(t-this.y)<=e&&Math.abs(n-this.x)<=e){var r=Math.abs(e-this.estimatedModuleSize);return 1>=r||r/this.estimatedModuleSize<=1}return!1}}function r(e){this.bottomLeft=e[0],this.topLeft=e[1],this.topRight=e[2]}var i=3,o=57,a=8,s=2;e.exports=function(){this.image=null,this.possibleCenters=[],this.hasSkipped=!1,this.crossCheckStateCount=[0,0,0,0,0],this.getCrossCheckStateCount=function(){return this.crossCheckStateCount[0]=0,this.crossCheckStateCount[1]=0,this.crossCheckStateCount[2]=0,this.crossCheckStateCount[3]=0,this.crossCheckStateCount[4]=0,this.crossCheckStateCount},this.foundPatternCross=function(e){for(var t=0,n=0;5>n;n++){var r=e[n];if(0===r)return!1;t+=r}if(7>t)return!1;var i=Math.floor((t<<a)/7),o=Math.floor(i/2);return Math.abs(i-(e[0]<<a))<o&&Math.abs(i-(e[1]<<a))<o&&Math.abs(3*i-(e[2]<<a))<3*o&&Math.abs(i-(e[3]<<a))<o&&Math.abs(i-(e[4]<<a))<o},this.centerFromEnd=function(e,t){return t-e[4]-e[3]-e[2]/2},this.crossCheckVertical=function(e,t,n,r){for(var i=this.image,o=i.height,a=this.getCrossCheckStateCount(),s=e;s>=0&&i[t+s*i.width];)a[2]++,s--;if(0>s)return NaN;for(;s>=0&&!i[t+s*i.width]&&a[1]<=n;)a[1]++,s--;if(0>s||a[1]>n)return NaN;for(;s>=0&&i[t+s*i.width]&&a[0]<=n;)a[0]++,s--;if(a[0]>n)return NaN;for(s=e+1;o>s&&i[t+s*i.width];)a[2]++,s++;if(s===o)return NaN;for(;o>s&&!i[t+s*i.width]&&a[3]<n;)a[3]++,s++;if(s===o||a[3]>=n)return NaN;for(;o>s&&i[t+s*i.width]&&a[4]<n;)a[4]++,s++;if(a[4]>=n)return NaN;var A=a[0]+a[1]+a[2]+a[3]+a[4];return 5*Math.abs(A-r)>=2*r?NaN:this.foundPatternCross(a)?this.centerFromEnd(a,s):NaN},this.crossCheckHorizontal=function(e,t,n,r){for(var i=this.image,o=i.width,a=this.getCrossCheckStateCount(),s=e;s>=0&&i[s+t*i.width];)a[2]++,s--;if(0>s)return NaN;for(;s>=0&&!i[s+t*i.width]&&a[1]<=n;)a[1]++,s--;if(0>s||a[1]>n)return NaN;for(;s>=0&&i[s+t*i.width]&&a[0]<=n;)a[0]++,s--;if(a[0]>n)return NaN;for(s=e+1;o>s&&i[s+t*i.width];)a[2]++,s++;if(s===o)return NaN;for(;o>s&&!i[s+t*i.width]&&a[3]<n;)a[3]++,s++;if(s===o||a[3]>=n)return NaN;for(;o>s&&i[s+t*i.width]&&a[4]<n;)a[4]++,s++;if(a[4]>=n)return NaN;var A=a[0]+a[1]+a[2]+a[3]+a[4];return 5*Math.abs(A-r)>=r?NaN:this.foundPatternCross(a)?this.centerFromEnd(a,s):NaN},this.handlePossibleCenter=function(e,t,r){var i=e[0]+e[1]+e[2]+e[3]+e[4],o=this.centerFromEnd(e,r),a=this.crossCheckVertical(t,Math.floor(o),e[2],i);if(!isNaN(a)&&(o=this.crossCheckHorizontal(Math.floor(o),Math.floor(a),e[2],i),!isNaN(o))){for(var s=i/7,A=!1,l=this.possibleCenters.length,u=0;l>u;u++){var c=this.possibleCenters[u];if(c.aboutEquals(s,a,o)){c.incrementCount(),A=!0;break}}if(!A){var h=new n(o,a,s);this.possibleCenters.push(h)}return!0}return!1},this.selectBestPatterns=function(){var e=this.possibleCenters.length;if(3>e)throw"Couldn't find enough finder patterns";if(e>3){var t,n=0,r=0;for(t=0;e>t;t++){var i=this.possibleCenters[t].estimatedModuleSize;n+=i,r+=i*i}var o=n/e;this.possibleCenters.sort((function(e,t){var n=Math.abs(t.estimatedModuleSize-o),r=Math.abs(e.estimatedModuleSize-o);return r>n?-1:n===r?0:1}));var a=Math.sqrt(r/e-o*o),s=Math.max(.2*o,a);for(t=0;t<this.possibleCenters.length&&this.possibleCenters.length>3;t++){var A=this.possibleCenters[t];Math.abs(A.estimatedModuleSize-o)>s&&(this.possibleCenters.splice(t,1),t--)}}return this.possibleCenters.length>3&&this.possibleCenters.sort((function(e,t){return e.count>t.count?-1:e.count<t.count?1:0})),[this.possibleCenters[0],this.possibleCenters[1],this.possibleCenters[2]]},this.findRowSkip=function(){var e=this.possibleCenters.length;if(1>=e)return 0;for(var t=null,n=0;e>n;n++){var r=this.possibleCenters[n];if(r.count>=s){if(t)return this.hasSkipped=!0,Math.floor((Math.abs(t.x-r.x)-Math.abs(t.y-r.y))/2);t=r}}return 0},this.haveMultiplyConfirmedCenters=function(){var e,t,n=0,r=0,i=this.possibleCenters.length;for(e=0;i>e;e++)(t=this.possibleCenters[e]).count>=s&&(n++,r+=t.estimatedModuleSize);if(3>n)return!1;var o=r/i,a=0;for(e=0;i>e;e++)t=this.possibleCenters[e],a+=Math.abs(t.estimatedModuleSize-o);return.05*r>=a},this.findFinderPattern=function(e){this.image=e;var t=e.height,n=e.width,a=Math.floor(3*t/(4*o));i>a&&(a=i);for(var s=!1,A=new Array(5),l=a-1;t>l&&!s;l+=a){A[0]=0,A[1]=0,A[2]=0,A[3]=0,A[4]=0;for(var u=0,c=0;n>c;c++)if(e[c+l*e.width])1==(1&u)&&u++,A[u]++;else if(0==(1&u))if(4===u)if(this.foundPatternCross(A)){if(this.handlePossibleCenter(A,l,c))if(a=2,this.hasSkipped)s=this.haveMultiplyConfirmedCenters();else{var h=this.findRowSkip();h>A[2]&&(l+=h-A[2]-a,c=n-1)}else{do{c++}while(n>c&&!e[c+l*e.width]);c--}u=0,A[0]=0,A[1]=0,A[2]=0,A[3]=0,A[4]=0}else A[0]=A[2],A[1]=A[3],A[2]=A[4],A[3]=1,A[4]=0,u=3;else A[++u]++;else A[u]++;this.foundPatternCross(A)&&this.handlePossibleCenter(A,l,n)&&(a=A[0],this.hasSkipped&&(s=this.haveMultiplyConfirmedCenters()))}var d=this.selectBestPatterns();return function(e){function t(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)}var n,r,i,o=t(e[0],e[1]),a=t(e[1],e[2]),s=t(e[0],e[2]);if(a>=o&&a>=s?(r=e[0],n=e[1],i=e[2]):s>=a&&s>=o?(r=e[1],n=e[0],i=e[2]):(r=e[2],n=e[0],i=e[1]),function(e,t,n){var r=t.x,i=t.y;return(n.x-r)*(e.y-i)-(n.y-i)*(e.x-r)}(n,r,i)<0){var A=n;n=i,i=A}e[0]=n,e[1]=r,e[2]=i}(d),new r(d)}}},function(e,t,n){"use strict";var r=n(1),i=n(5),o={checkAndNudgePoints:function(e,t){var n,r,i,o=e.width,a=e.height,s=!0;for(i=0;i<t.length&&s;i+=2){if(n=Math.floor(t[i]),r=Math.floor(t[i+1]),-1>n||n>o||-1>r||r>a)throw"Error.checkAndNudgePoints ";s=!1,-1===n?(t[i]=0,s=!0):n===o&&(t[i]=o-1,s=!0),-1===r?(t[i+1]=0,s=!0):r===a&&(t[i+1]=a-1,s=!0)}for(s=!0,i=t.length-2;i>=0&&s;i-=2){if(n=Math.floor(t[i]),r=Math.floor(t[i+1]),-1>n||n>o||-1>r||r>a)throw"Error.checkAndNudgePoints ";s=!1,-1===n?(t[i]=0,s=!0):n===o&&(t[i]=o-1,s=!0),-1===r?(t[i+1]=0,s=!0):r===a&&(t[i+1]=a-1,s=!0)}},sampleGrid3:function(e,t,n){for(var i=new r(t),a=new Array(t<<1),s=0;t>s;s++){var A,l=a.length,u=s+.5;for(A=0;l>A;A+=2)a[A]=.5+(A>>1),a[A+1]=u;n.transformPoints1(a),o.checkAndNudgePoints(e,a);try{for(A=0;l>A;A+=2){var c=4*Math.floor(a[A])+Math.floor(a[A+1])*e.width*4,h=e[Math.floor(a[A])+e.width*Math.floor(a[A+1])];e.imagedata.data[c]=h?255:0,e.imagedata.data[c+1]=h?255:0,e.imagedata.data[c+2]=0,e.imagedata.data[c+3]=255,h&&i.setValue(A>>1,s)}}catch(e){throw"Error.checkAndNudgePoints"}}return i},sampleGridx:function(e,t,n,r,a,s,A,l,u,c,h,d,f,g,p,m,I,y){var B=i.quadrilateralToQuadrilateral(n,r,a,s,A,l,u,c,h,d,f,g,p,m,I,y);return o.sampleGrid3(e,t,B)}};e.exports=o},function(e,t,n){"use strict";var r=n(1),i={extractPureBits:function(e){var t=this.getTopLeftOnBit(e),n=this.getBottomRightOnBit(e);if(!t||!n)throw"not found";var i=this.getModuleSize(t,e);if(!i)throw"not found";var o=t[1],a=n[1],s=t[0],A=n[0];if(s>=A||o>=a)throw"not found";a-o!=A-s&&(A=s+(a-o));var l=Math.round((A-s+1)/i),u=Math.round((a-o+1)/i);if(0>=l||0>=u)throw"not found";if(u!==l)throw"not found";var c=Math.floor(i/2),h=(s+=c)+(l-1)*i-A;if(h>0){if(h>c)throw"not found";s-=h}var d=(o+=c)+(u-1)*i-a;if(d>0){if(d>c)throw"not found";o-=d}for(var f=e.width,g=new r(l,u),p=0;u>p;p++)for(var m=o+p*i,I=0;l>I;I++)e[s+I*i+m*f]&&g.setValue(I,p);return g},getModuleSize:function(e,t){for(var n=t.height,r=t.width,i=e[0],o=e[1],a=1,s=0;r>i&&n>o;){if(a!==t[i+o*r]){if(5==++s)break;a=a?0:1}i++,o++}return i===r||o===n?null:(i-e[0])/7},getTopLeftOnBit:function(e){for(var t=0;t<e.length&&0===e[t];)t++;if(t===e.length)throw"not found";return[t%e.width,Math.floor(t/e.width)]},getBottomRightOnBit:function(e){for(var t=e.length-1;t>=0&&0===e[t];)t--;if(0>t)throw"not found";return[t%e.width,Math.floor(t/e.width)]}};e.exports=i},function(e,t){"use strict";var n=[[10,9,8,8],[12,11,16,10],[14,13,16,12]];e.exports=function(e,t,r){this.blockPointer=0,this.bitPointer=7,this.dataLength=0,this.blocks=e,this.numErrorCorrectionCode=r,9>=t?this.dataLengthMode=0:t>=10&&26>=t?this.dataLengthMode=1:t>=27&&40>=t&&(this.dataLengthMode=2),this.getNextBits=function(e){var t,n,r=0;if(e<this.bitPointer+1){var i=0;for(t=0;e>t;t++)i+=1<<t;return i<<=this.bitPointer-e+1,r=(this.blocks[this.blockPointer]&i)>>this.bitPointer-e+1,this.bitPointer-=e,r}if(e<this.bitPointer+1+8){for(n=0,t=0;t<this.bitPointer+1;t++)n+=1<<t;return r=(this.blocks[this.blockPointer]&n)<<e-(this.bitPointer+1),this.blockPointer++,r+=this.blocks[this.blockPointer]>>8-(e-(this.bitPointer+1)),this.bitPointer=this.bitPointer-e%8,this.bitPointer<0&&(this.bitPointer=8+this.bitPointer),r}if(e<this.bitPointer+1+16){n=0;var o=0;for(t=0;t<this.bitPointer+1;t++)n+=1<<t;var a=(this.blocks[this.blockPointer]&n)<<e-(this.bitPointer+1);this.blockPointer++;var s=this.blocks[this.blockPointer]<<e-(this.bitPointer+1+8);for(this.blockPointer++,t=0;t<e-(this.bitPointer+1+8);t++)o+=1<<t;return o<<=8-(e-(this.bitPointer+1+8)),r=a+s+((this.blocks[this.blockPointer]&o)>>8-(e-(this.bitPointer+1+8))),this.bitPointer=this.bitPointer-(e-8)%8,this.bitPointer<0&&(this.bitPointer=8+this.bitPointer),r}return 0},this.nextMode=function(){return this.blockPointer>this.blocks.length-this.numErrorCorrectionCode-2?0:this.getNextBits(4)},this.getDataLength=function(e){for(var t=0;e>>t!=1;)t++;return this.getNextBits(n[this.dataLengthMode][t])},this.getRomanAndFigureString=function(e){var t=e,n=0,r="",i=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];do{t>1?(n=this.getNextBits(11),r+=i[Math.floor(n/45)],r+=i[n%45],t-=2):1===t&&(r+=i[n=this.getNextBits(6)],t-=1)}while(t>0);return r},this.getFigureString=function(e){var t=e,n=0,r="";do{t>=3?(100>(n=this.getNextBits(10))&&(r+="0"),10>n&&(r+="0"),t-=3):2===t?(10>(n=this.getNextBits(7))&&(r+="0"),t-=2):1===t&&(n=this.getNextBits(4),t-=1),r+=n}while(t>0);return r},this.get8bitByteArray=function(e){var t=e,n=0,r=[];do{n=this.getNextBits(8),r.push(n),t--}while(t>0);return r},this.getKanjiString=function(e){var t=e,n=0,r="";do{var i,o=((n=this.getNextBits(13))/192<<8)+n%192;i=40956>=o+33088?o+33088:o+49472,r+=String.fromCharCode(i),t--}while(t>0);return r},this.getDataByte=function(){for(var e=[];;){var t=this.nextMode();if(0===t){if(e.length>0)break;throw"Empty data block"}if(1!==t&&2!==t&&4!==t&&8!==t)throw"Invalid mode: "+t+" in (block:"+this.blockPointer+" bit:"+this.bitPointer+")";var n,r,i=this.getDataLength(t);if(1>i)throw"Invalid data length: "+i;switch(t){case 1:n=this.getFigureString(i),r=new Array(n.length);for(var o=0;o<n.length;o++)r[o]=n.charCodeAt(o);e.push(r);break;case 2:for(n=this.getRomanAndFigureString(i),r=new Array(n.length),o=0;o<n.length;o++)r[o]=n.charCodeAt(o);e.push(r);break;case 4:var a=this.get8bitByteArray(i);e.push(a);break;case 8:n=this.getKanjiString(i),e.push(n)}}return e}}},function(e,t,n){"use strict";var r=n(2).GF256,i=n(2).GF256Poly;e.exports=function(e){this.field=e,this.decode=function(e,t){var n,o=new i(this.field,e),a=new Array(t);for(n=0;n<a.length;n++)a[n]=0;var s=!0;for(n=0;t>n;n++){var A=o.evaluateAt(this.field.exp(n));a[a.length-1-n]=A,A&&(s=!1)}if(!s){var l=new i(this.field,a),u=this.runEuclideanAlgorithm(this.field.buildMonomial(t,1),l,t),c=u[0],h=u[1],d=this.findErrorLocations(c),f=this.findErrorMagnitudes(h,d,!1);for(n=0;n<d.length;n++){var g=e.length-1-this.field.log(d[n]);if(0>g)throw"ReedSolomonException Bad error location";e[g]=r.addOrSubtract(e[g],f[n])}}},this.runEuclideanAlgorithm=function(e,t,n){if(e.degree<t.degree){var r=e;e=t,t=r}for(var i=e,o=t,a=this.field.one,s=this.field.zero,A=this.field.zero,l=this.field.one;o.degree>=Math.floor(n/2);){var u=i,c=a,h=A;if(a=s,A=l,(i=o).zero)throw"r_{i-1} was zero";o=u;for(var d=this.field.zero,f=i.getCoefficient(i.degree),g=this.field.inverse(f);o.degree>=i.degree&&!o.zero;){var p=o.degree-i.degree,m=this.field.multiply(o.getCoefficient(o.degree),g);d=d.addOrSubtract(this.field.buildMonomial(p,m)),o=o.addOrSubtract(i.multiplyByMonomial(p,m))}s=d.multiply1(a).addOrSubtract(c),l=d.multiply1(A).addOrSubtract(h)}var I=l.getCoefficient(0);if(0===I)throw"ReedSolomonException sigmaTilde(0) was zero";var y=this.field.inverse(I);return[l.multiply2(y),o.multiply2(y)]},this.findErrorLocations=function(e){var t=e.degree;if(1===t)return new Array(e.getCoefficient(1));for(var n=new Array(t),r=0,i=1;256>i&&t>r;i++)0===e.evaluateAt(i)&&(n[r]=this.field.inverse(i),r++);if(r!==t)throw"Error locator degree does not match number of roots";return n},this.findErrorMagnitudes=function(e,t,n){for(var i=t.length,o=new Array(i),a=0;i>a;a++){for(var s=this.field.inverse(t[a]),A=1,l=0;i>l;l++)a!==l&&(A=this.field.multiply(A,r.addOrSubtract(1,this.field.multiply(t[l],s))));o[a]=this.field.multiply(e.evaluateAt(s),this.field.inverse(A)),n&&(o[a]=this.field.multiply(o[a],s))}return o}}}])},17:function(e,t,n){var r;!function(t,n){"use strict";"object"==typeof e.exports?e.exports=t.document?n(t,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(t)}("undefined"!=typeof window?window:this,(function(n,i){"use strict";var o=[],a=Object.getPrototypeOf,s=o.slice,A=o.flat?function(e){return o.flat.call(e)}:function(e){return o.concat.apply([],e)},l=o.push,u=o.indexOf,c={},h=c.toString,d=c.hasOwnProperty,f=d.toString,g=f.call(Object),p={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},I=function(e){return null!=e&&e===e.window},y=n.document,B={type:!0,src:!0,nonce:!0,noModule:!0};function C(e,t,n){var r,i,o=(n=n||y).createElement("script");if(o.text=e,t)for(r in B)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function E(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[h.call(e)]||"object":typeof e}var w="3.5.1",v=function(e,t){return new v.fn.init(e,t)};function b(e){var t=!!e&&"length"in e&&e.length,n=E(e);return!m(e)&&!I(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}v.fn=v.prototype={jquery:w,constructor:v,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=v.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return v.each(this,e)},map:function(e){return this.pushStack(v.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(v.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(v.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:l,sort:o.sort,splice:o.splice},v.extend=v.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,A=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===A&&(a=this,s--);s<A;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(v.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||v.isPlainObject(n)?n:{},i=!1,a[t]=v.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},v.extend({expando:"jQuery"+(w+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==h.call(e)||(t=a(e))&&("function"!=typeof(n=d.call(t,"constructor")&&t.constructor)||f.call(n)!==g))},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){C(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(b(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(b(Object(e))?v.merge(n,"string"==typeof e?[e]:e):l.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:u.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(b(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return A(a)},guid:1,support:p}),"function"==typeof Symbol&&(v.fn[Symbol.iterator]=o[Symbol.iterator]),v.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),(function(e,t){c["[object "+t+"]"]=t.toLowerCase()}));var Q=function(e){var t,n,r,i,o,a,s,A,l,u,c,h,d,f,g,p,m,I,y,B="sizzle"+1*new Date,C=e.document,E=0,w=0,v=Ae(),b=Ae(),Q=Ae(),k=Ae(),x=function(e,t){return e===t&&(c=!0),0},_={}.hasOwnProperty,D=[],S=D.pop,N=D.push,M=D.push,T=D.slice,F=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",U="[\\x20\\t\\r\\n\\f]",H="(?:\\\\[\\da-fA-F]{1,6}"+U+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",L="\\["+U+"*("+H+")(?:"+U+"*([*^$|!~]?=)"+U+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+H+"))|)"+U+"*\\]",G=":("+H+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+L+")*)|.*)\\)|)",P=new RegExp(U+"+","g"),O=new RegExp("^"+U+"+|((?:^|[^\\\\])(?:\\\\.)*)"+U+"+$","g"),z=new RegExp("^"+U+"*,"+U+"*"),Y=new RegExp("^"+U+"*([>+~]|"+U+")"+U+"*"),j=new RegExp(U+"|>"),V=new RegExp(G),K=new RegExp("^"+H+"$"),q={ID:new RegExp("^#("+H+")"),CLASS:new RegExp("^\\.("+H+")"),TAG:new RegExp("^("+H+"|[*])"),ATTR:new RegExp("^"+L),PSEUDO:new RegExp("^"+G),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+U+"*(even|odd|(([+-]|)(\\d*)n|)"+U+"*(?:([+-]|)"+U+"*(\\d+)|))"+U+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+U+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+U+"*((?:-\\d)?\\d*)"+U+"*\\)|)(?=[^-]|$)","i")},J=/HTML$/i,W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+U+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"<22>":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){h()},ae=Be((function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{M.apply(D=T.call(C.childNodes),C.childNodes),D[C.childNodes.length].nodeType}catch(t){M={apply:D.length?function(e,t){N.apply(e,T.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var o,s,l,u,c,f,m,I=t&&t.ownerDocument,C=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==C&&9!==C&&11!==C)return r;if(!i&&(h(t),t=t||d,g)){if(11!==C&&(c=$.exec(e)))if(o=c[1]){if(9===C){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(I&&(l=I.getElementById(o))&&y(t,l)&&l.id===o)return r.push(l),r}else{if(c[2])return M.apply(r,t.getElementsByTagName(e)),r;if((o=c[3])&&n.getElementsByClassName&&t.getElementsByClassName)return M.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!k[e+" "]&&(!p||!p.test(e))&&(1!==C||"object"!==t.nodeName.toLowerCase())){if(m=e,I=t,1===C&&(j.test(e)||Y.test(e))){for((I=ee.test(e)&&me(t.parentNode)||t)===t&&n.scope||((u=t.getAttribute("id"))?u=u.replace(re,ie):t.setAttribute("id",u=B)),s=(f=a(e)).length;s--;)f[s]=(u?"#"+u:":scope")+" "+ye(f[s]);m=f.join(",")}try{return M.apply(r,I.querySelectorAll(m)),r}catch(t){k(e,!0)}finally{u===B&&t.removeAttribute("id")}}}return A(e.replace(O,"$1"),t,r,i)}function Ae(){var e=[];return function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}}function le(e){return e[B]=!0,e}function ue(e){var t=d.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ce(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=t}function he(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function fe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ge(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function pe(e){return le((function(t){return t=+t,le((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function me(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!J.test(t||n&&n.nodeName||"HTML")},h=se.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:C;return a!=d&&9===a.nodeType&&a.documentElement&&(f=(d=a).documentElement,g=!o(d),C!=d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",oe,!1):i.attachEvent&&i.attachEvent("onunload",oe)),n.scope=ue((function(e){return f.appendChild(e).appendChild(d.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length})),n.attributes=ue((function(e){return e.className="i",!e.getAttribute("className")})),n.getElementsByTagName=ue((function(e){return e.appendChild(d.createComment("")),!e.getElementsByTagName("*").length})),n.getElementsByClassName=Z.test(d.getElementsByClassName),n.getById=ue((function(e){return f.appendChild(e).id=B,!d.getElementsByName||!d.getElementsByName(B).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},m=[],p=[],(n.qsa=Z.test(d.querySelectorAll))&&(ue((function(e){var t;f.appendChild(e).innerHTML="<a id='"+B+"'></a><select id='"+B+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&p.push("[*^$]="+U+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||p.push("\\["+U+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+B+"-]").length||p.push("~="),(t=d.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||p.push("\\["+U+"*name"+U+"*="+U+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||p.push(":checked"),e.querySelectorAll("a#"+B+"+*").length||p.push(".#.+[+~]"),e.querySelectorAll("\\\f"),p.push("[\\r\\n\\f]")})),ue((function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=d.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&p.push("name"+U+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&p.push(":enabled",":disabled"),f.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&p.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),p.push(",.*:")}))),(n.matchesSelector=Z.test(I=f.matches||f.webkitMatchesSelector||f.mozMatchesSelector||f.oMatchesSelector||f.msMatchesSelector))&&ue((function(e){n.disconnectedMatch=I.call(e,"*"),I.call(e,"[s!='']:x"),m.push("!=",G)})),p=p.length&&new RegExp(p.join("|")),m=m.length&&new RegExp(m.join("|")),t=Z.test(f.compareDocumentPosition),y=t||Z.test(f.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},x=t?function(e,t){if(e===t)return c=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==d||e.ownerDocument==C&&y(C,e)?-1:t==d||t.ownerDocument==C&&y(C,t)?1:u?F(u,e)-F(u,t):0:4&r?-1:1)}:function(e,t){if(e===t)return c=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==d?-1:t==d?1:i?-1:o?1:u?F(u,e)-F(u,t):0;if(i===o)return he(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?he(a[r],s[r]):a[r]==C?-1:s[r]==C?1:0}),d},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(h(e),n.matchesSelector&&g&&!k[t+" "]&&(!m||!m.test(t))&&(!p||!p.test(t)))try{var r=I.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){k(t,!0)}return 0<se(t,d,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=d&&h(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=d&&h(e);var i=r.attrHandle[t.toLowerCase()],o=i&&_.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,r=[],i=0,o=0;if(c=!n.detectDuplicates,u=!n.sortStable&&e.slice(0),e.sort(x),c){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return u=null,e},i=se.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=se.selectors={cacheLength:50,createPseudo:le,match:q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return q.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&V.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=v[e+" "];return t||(t=new RegExp("(^|"+U+")"+e+"("+U+"|$)"))&&v(e,(function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&-1<i.indexOf(n):"$="===t?n&&i.slice(-n.length)===n:"~="===t?-1<(" "+i.replace(P," ")+" ").indexOf(n):"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,A){var l,u,c,h,d,f,g=o!==a?"nextSibling":"previousSibling",p=t.parentNode,m=s&&t.nodeName.toLowerCase(),I=!A&&!s,y=!1;if(p){if(o){for(;g;){for(h=t;h=h[g];)if(s?h.nodeName.toLowerCase()===m:1===h.nodeType)return!1;f=g="only"===e&&!f&&"nextSibling"}return!0}if(f=[a?p.firstChild:p.lastChild],a&&I){for(y=(d=(l=(u=(c=(h=p)[B]||(h[B]={}))[h.uniqueID]||(c[h.uniqueID]={}))[e]||[])[0]===E&&l[1])&&l[2],h=d&&p.childNodes[d];h=++d&&h&&h[g]||(y=d=0)||f.pop();)if(1===h.nodeType&&++y&&h===t){u[e]=[E,d,y];break}}else if(I&&(y=d=(l=(u=(c=(h=t)[B]||(h[B]={}))[h.uniqueID]||(c[h.uniqueID]={}))[e]||[])[0]===E&&l[1]),!1===y)for(;(h=++d&&h&&h[g]||(y=d=0)||f.pop())&&((s?h.nodeName.toLowerCase()!==m:1!==h.nodeType)||!++y||(I&&((u=(c=h[B]||(h[B]={}))[h.uniqueID]||(c[h.uniqueID]={}))[e]=[E,y]),h!==t)););return(y-=i)===r||y%r==0&&0<=y/r}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return i[B]?i(t):1<i.length?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?le((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=F(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:le((function(e){var t=[],n=[],r=s(e.replace(O,"$1"));return r[B]?le((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:le((function(e){return function(t){return 0<se(e,t).length}})),contains:le((function(e){return e=e.replace(te,ne),function(t){return-1<(t.textContent||i(t)).indexOf(e)}})),lang:le((function(e){return K.test(e||"")||se.error("unsupported lang: "+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===f},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return X.test(e.nodeName)},input:function(e){return W.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:pe((function(){return[0]})),last:pe((function(e,t){return[t-1]})),eq:pe((function(e,t,n){return[n<0?n+t:n]})),even:pe((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:pe((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:pe((function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e})),gt:pe((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}}).pseudos.nth=r.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=de(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=fe(t);function Ie(){}function ye(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function Be(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=w++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,A){var l,u,c,h=[E,s];if(A){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,A))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(u=(c=t[B]||(t[B]={}))[t.uniqueID]||(c[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=u[o])&&l[0]===E&&l[1]===s)return h[2]=l[2];if((u[o]=h)[2]=e(t,n,A))return!0}return!1}}function Ce(e){return 1<e.length?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Ee(e,t,n,r,i){for(var o,a=[],s=0,A=e.length,l=null!=t;s<A;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function we(e,t,n,r,i,o){return r&&!r[B]&&(r=we(r)),i&&!i[B]&&(i=we(i,o)),le((function(o,a,s,A){var l,u,c,h=[],d=[],f=a.length,g=o||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(t||"*",s.nodeType?[s]:s,[]),p=!e||!o&&t?g:Ee(g,h,e,s,A),m=n?i||(o?e:f||r)?[]:a:p;if(n&&n(p,m,s,A),r)for(l=Ee(m,d),r(l,[],s,A),u=l.length;u--;)(c=l[u])&&(m[d[u]]=!(p[d[u]]=c));if(o){if(i||e){if(i){for(l=[],u=m.length;u--;)(c=m[u])&&l.push(p[u]=c);i(null,m=[],l,A)}for(u=m.length;u--;)(c=m[u])&&-1<(l=i?F(o,c):h[u])&&(o[l]=!(a[l]=c))}}else m=Ee(m===a?m.splice(f,m.length):m),i?i(null,a,m,A):M.apply(a,m)}))}function ve(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],A=a?1:0,u=Be((function(e){return e===t}),s,!0),c=Be((function(e){return-1<F(t,e)}),s,!0),h=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?u(e,n,r):c(e,n,r));return t=null,i}];A<o;A++)if(n=r.relative[e[A].type])h=[Be(Ce(h),n)];else{if((n=r.filter[e[A].type].apply(null,e[A].matches))[B]){for(i=++A;i<o&&!r.relative[e[i].type];i++);return we(1<A&&Ce(h),1<A&&ye(e.slice(0,A-1).concat({value:" "===e[A-2].type?"*":""})).replace(O,"$1"),n,A<i&&ve(e.slice(A,i)),i<o&&ve(e=e.slice(i)),i<o&&ye(e))}h.push(n)}return Ce(h)}return Ie.prototype=r.filters=r.pseudos,r.setFilters=new Ie,a=se.tokenize=function(e,t){var n,i,o,a,s,A,l,u=b[e+" "];if(u)return t?0:u.slice(0);for(s=e,A=[],l=r.preFilter;s;){for(a in n&&!(i=z.exec(s))||(i&&(s=s.slice(i[0].length)||s),A.push(o=[])),n=!1,(i=Y.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace(O," ")}),s=s.slice(n.length)),r.filter)!(i=q[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?se.error(e):b(e,A).slice(0)},s=se.compile=function(e,t){var n,i,o,s,A,u,c=[],f=[],p=Q[e+" "];if(!p){for(t||(t=a(e)),n=t.length;n--;)(p=ve(t[n]))[B]?c.push(p):f.push(p);(p=Q(e,(i=f,s=0<(o=c).length,A=0<i.length,u=function(e,t,n,a,u){var c,f,p,m=0,I="0",y=e&&[],B=[],C=l,w=e||A&&r.find.TAG("*",u),v=E+=null==C?1:Math.random()||.1,b=w.length;for(u&&(l=t==d||t||u);I!==b&&null!=(c=w[I]);I++){if(A&&c){for(f=0,t||c.ownerDocument==d||(h(c),n=!g);p=i[f++];)if(p(c,t||d,n)){a.push(c);break}u&&(E=v)}s&&((c=!p&&c)&&m--,e&&y.push(c))}if(m+=I,s&&I!==m){for(f=0;p=o[f++];)p(y,B,t,n);if(e){if(0<m)for(;I--;)y[I]||B[I]||(B[I]=S.call(a));B=Ee(B)}M.apply(a,B),u&&!e&&0<B.length&&1<m+o.length&&se.uniqueSort(a)}return u&&(E=v,l=C),y},s?le(u):u))).selector=e}return p},A=se.select=function(e,t,n,i){var o,A,l,u,c,h="function"==typeof e&&e,d=!i&&a(e=h.selector||e);if(n=n||[],1===d.length){if(2<(A=d[0]=d[0].slice(0)).length&&"ID"===(l=A[0]).type&&9===t.nodeType&&g&&r.relative[A[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(te,ne),t)||[])[0]))return n;h&&(t=t.parentNode),e=e.slice(A.shift().value.length)}for(o=q.needsContext.test(e)?0:A.length;o--&&(l=A[o],!r.relative[u=l.type]);)if((c=r.find[u])&&(i=c(l.matches[0].replace(te,ne),ee.test(A[0].type)&&me(t.parentNode)||t))){if(A.splice(o,1),!(e=i.length&&ye(A)))return M.apply(n,i),n;break}}return(h||s(e,d))(i,t,!g,n,!t||ee.test(e)&&me(t.parentNode)||t),n},n.sortStable=B.split("").sort(x).join("")===B,n.detectDuplicates=!!c,h(),n.sortDetached=ue((function(e){return 1&e.compareDocumentPosition(d.createElement("fieldset"))})),ue((function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")}))||ce("type|href|height|width",(function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&ue((function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||ce("value",(function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue})),ue((function(e){return null==e.getAttribute("disabled")}))||ce(R,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),se}(n);v.find=Q,v.expr=Q.selectors,v.expr[":"]=v.expr.pseudos,v.uniqueSort=v.unique=Q.uniqueSort,v.text=Q.getText,v.isXMLDoc=Q.isXML,v.contains=Q.contains,v.escapeSelector=Q.escape;var k=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&v(e).is(n))break;r.push(e)}return r},x=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},_=v.expr.match.needsContext;function D(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var S=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function N(e,t,n){return m(t)?v.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?v.grep(e,(function(e){return e===t!==n})):"string"!=typeof t?v.grep(e,(function(e){return-1<u.call(t,e)!==n})):v.filter(t,e,n)}v.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?v.find.matchesSelector(r,e)?[r]:[]:v.find.matches(e,v.grep(t,(function(e){return 1===e.nodeType})))},v.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(v(e).filter((function(){for(t=0;t<r;t++)if(v.contains(i[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)v.find(e,i[t],n);return 1<r?v.uniqueSort(n):n},filter:function(e){return this.pushStack(N(this,e||[],!1))},not:function(e){return this.pushStack(N(this,e||[],!0))},is:function(e){return!!N(this,"string"==typeof e&&_.test(e)?v(e):e||[],!1).length}});var M,T=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(v.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||M,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:T.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof v?t[0]:t,v.merge(this,v.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:y,!0)),S.test(r[1])&&v.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=y.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(v):v.makeArray(e,this)}).prototype=v.fn,M=v(y);var F=/^(?:parents|prev(?:Until|All))/,R={children:!0,contents:!0,next:!0,prev:!0};function U(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}v.fn.extend({has:function(e){var t=v(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(v.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&v(e);if(!_.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&v.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?v.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?u.call(v(e),this[0]):u.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(v.uniqueSort(v.merge(this.get(),v(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),v.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return k(e,"parentNode")},parentsUntil:function(e,t,n){return k(e,"parentNode",n)},next:function(e){return U(e,"nextSibling")},prev:function(e){return U(e,"previousSibling")},nextAll:function(e){return k(e,"nextSibling")},prevAll:function(e){return k(e,"previousSibling")},nextUntil:function(e,t,n){return k(e,"nextSibling",n)},prevUntil:function(e,t,n){return k(e,"previousSibling",n)},siblings:function(e){return x((e.parentNode||{}).firstChild,e)},children:function(e){return x(e.firstChild)},contents:function(e){return null!=e.contentDocument&&a(e.contentDocument)?e.contentDocument:(D(e,"template")&&(e=e.content||e),v.merge([],e.childNodes))}},(function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=v.filter(r,i)),1<this.length&&(R[e]||v.uniqueSort(i),F.test(e)&&i.reverse()),this.pushStack(i)}}));var H=/[^\x20\t\r\n\f]+/g;function L(e){return e}function G(e){throw e}function P(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}v.Callbacks=function(e){var t,n;e="string"==typeof e?(t=e,n={},v.each(t.match(H)||[],(function(e,t){n[t]=!0})),n):v.extend({},e);var r,i,o,a,s=[],A=[],l=-1,u=function(){for(a=a||e.once,o=r=!0;A.length;l=-1)for(i=A.shift();++l<s.length;)!1===s[l].apply(i[0],i[1])&&e.stopOnFalse&&(l=s.length,i=!1);e.memory||(i=!1),r=!1,a&&(s=i?[]:"")},c={add:function(){return s&&(i&&!r&&(l=s.length-1,A.push(i)),function t(n){v.each(n,(function(n,r){m(r)?e.unique&&c.has(r)||s.push(r):r&&r.length&&"string"!==E(r)&&t(r)}))}(arguments),i&&!r&&u()),this},remove:function(){return v.each(arguments,(function(e,t){for(var n;-1<(n=v.inArray(t,s,n));)s.splice(n,1),n<=l&&l--})),this},has:function(e){return e?-1<v.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=A=[],s=i="",this},disabled:function(){return!s},lock:function(){return a=A=[],i||r||(s=i=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],A.push(t),r||u()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!o}};return c},v.extend({Deferred:function(e){var t=[["notify","progress",v.Callbacks("memory"),v.Callbacks("memory"),2],["resolve","done",v.Callbacks("once memory"),v.Callbacks("once memory"),0,"resolved"],["reject","fail",v.Callbacks("once memory"),v.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return v.Deferred((function(n){v.each(t,(function(t,r){var i=m(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&m(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(e,r,i){var o=0;function a(e,t,r,i){return function(){var s=this,A=arguments,l=function(){var n,l;if(!(e<o)){if((n=r.apply(s,A))===t.promise())throw new TypeError("Thenable self-resolution");l=n&&("object"==typeof n||"function"==typeof n)&&n.then,m(l)?i?l.call(n,a(o,t,L,i),a(o,t,G,i)):(o++,l.call(n,a(o,t,L,i),a(o,t,G,i),a(o,t,L,t.notifyWith))):(r!==L&&(s=void 0,A=[n]),(i||t.resolveWith)(s,A))}},u=i?l:function(){try{l()}catch(n){v.Deferred.exceptionHook&&v.Deferred.exceptionHook(n,u.stackTrace),o<=e+1&&(r!==G&&(s=void 0,A=[n]),t.rejectWith(s,A))}};e?u():(v.Deferred.getStackHook&&(u.stackTrace=v.Deferred.getStackHook()),n.setTimeout(u))}}return v.Deferred((function(n){t[0][3].add(a(0,n,m(i)?i:L,n.notifyWith)),t[1][3].add(a(0,n,m(e)?e:L)),t[2][3].add(a(0,n,m(r)?r:G))})).promise()},promise:function(e){return null!=e?v.extend(e,i):i}},o={};return v.each(t,(function(e,n){var a=n[2],s=n[5];i[n[1]]=a.add,s&&a.add((function(){r=s}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),a.add(n[3].fire),o[n[0]]=function(){return o[n[0]+"With"](this===o?void 0:this,arguments),this},o[n[0]+"With"]=a.fireWith})),i.promise(o),e&&e.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=s.call(arguments),o=v.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=1<arguments.length?s.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(P(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||m(i[n]&&i[n].then)))return o.then();for(;n--;)P(i[n],a(n),o.reject);return o.promise()}});var O=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;v.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&O.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},v.readyException=function(e){n.setTimeout((function(){throw e}))};var z=v.Deferred();function Y(){y.removeEventListener("DOMContentLoaded",Y),n.removeEventListener("load",Y),v.ready()}v.fn.ready=function(e){return z.then(e).catch((function(e){v.readyException(e)})),this},v.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--v.readyWait:v.isReady)||(v.isReady=!0)!==e&&0<--v.readyWait||z.resolveWith(y,[v])}}),v.ready.then=z.then,"complete"===y.readyState||"loading"!==y.readyState&&!y.documentElement.doScroll?n.setTimeout(v.ready):(y.addEventListener("DOMContentLoaded",Y),n.addEventListener("load",Y));var j=function(e,t,n,r,i,o,a){var s=0,A=e.length,l=null==n;if("object"===E(n))for(s in i=!0,n)j(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(v(e),n)})),t))for(;s<A;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):A?t(e[0],n):o},V=/^-ms-/,K=/-([a-z])/g;function q(e,t){return t.toUpperCase()}function J(e){return e.replace(V,"ms-").replace(K,q)}var W=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function X(){this.expando=v.expando+X.uid++}X.uid=1,X.prototype={cache:function(e){var t=e[this.expando];return t||(t={},W(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[J(t)]=n;else for(r in t)i[J(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][J(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(J):(t=J(t))in r?[t]:t.match(H)||[]).length;for(;n--;)delete r[t[n]]}(void 0===t||v.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!v.isEmptyObject(t)}};var Z=new X,$=new X,ee=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,te=/[A-Z]/g;function ne(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(te,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:ee.test(i)?JSON.parse(i):i)}catch(e){}$.set(e,t,n)}else n=void 0;return n}v.extend({hasData:function(e){return $.hasData(e)||Z.hasData(e)},data:function(e,t,n){return $.access(e,t,n)},removeData:function(e,t){$.remove(e,t)},_data:function(e,t,n){return Z.access(e,t,n)},_removeData:function(e,t){Z.remove(e,t)}}),v.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=$.get(o),1===o.nodeType&&!Z.get(o,"hasDataAttrs"))){for(n=a.length;n--;)a[n]&&0===(r=a[n].name).indexOf("data-")&&(r=J(r.slice(5)),ne(o,r,i[r]));Z.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each((function(){$.set(this,e)})):j(this,(function(t){var n;if(o&&void 0===t)return void 0!==(n=$.get(o,e))||void 0!==(n=ne(o,e))?n:void 0;this.each((function(){$.set(this,e,t)}))}),null,t,1<arguments.length,null,!0)},removeData:function(e){return this.each((function(){$.remove(this,e)}))}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Z.get(e,t),n&&(!r||Array.isArray(n)?r=Z.access(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),o=v._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,(function(){v.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Z.get(e,n)||Z.access(e,n,{empty:v.Callbacks("once memory").add((function(){Z.remove(e,[t+"queue",n])}))})}}),v.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?v.queue(this[0],e):void 0===t?this:this.each((function(){var n=v.queue(this,e,t);v._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&v.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){v.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=v.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)(n=Z.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var re=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ie=new RegExp("^(?:([+-])=|)("+re+")([a-z%]*)$","i"),oe=["Top","Right","Bottom","Left"],ae=y.documentElement,se=function(e){return v.contains(e.ownerDocument,e)},Ae={composed:!0};ae.getRootNode&&(se=function(e){return v.contains(e.ownerDocument,e)||e.getRootNode(Ae)===e.ownerDocument});var le=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&se(e)&&"none"===v.css(e,"display")};function ue(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return v.css(e,t,"")},A=s(),l=n&&n[3]||(v.cssNumber[t]?"":"px"),u=e.nodeType&&(v.cssNumber[t]||"px"!==l&&+A)&&ie.exec(v.css(e,t));if(u&&u[3]!==l){for(A/=2,l=l||u[3],u=+A||1;a--;)v.style(e,t,u+l),(1-o)*(1-(o=s()/A||.5))<=0&&(a=0),u/=o;u*=2,v.style(e,t,u+l),n=n||[]}return n&&(u=+u||+A||0,i=n[1]?u+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=u,r.end=i)),i}var ce={};function he(e,t){for(var n,r,i,o,a,s,A,l=[],u=0,c=e.length;u<c;u++)(r=e[u]).style&&(n=r.style.display,t?("none"===n&&(l[u]=Z.get(r,"display")||null,l[u]||(r.style.display="")),""===r.style.display&&le(r)&&(l[u]=(A=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(A=ce[s])||(o=a.body.appendChild(a.createElement(s)),A=v.css(o,"display"),o.parentNode.removeChild(o),"none"===A&&(A="block"),ce[s]=A)))):"none"!==n&&(l[u]="none",Z.set(r,"display",n)));for(u=0;u<c;u++)null!=l[u]&&(e[u].style.display=l[u]);return e}v.fn.extend({show:function(){return he(this,!0)},hide:function(){return he(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each((function(){le(this)?v(this).show():v(this).hide()}))}});var de,fe,ge=/^(?:checkbox|radio)$/i,pe=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,me=/^$|^module$|\/(?:java|ecma)script/i;de=y.createDocumentFragment().appendChild(y.createElement("div")),(fe=y.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),de.appendChild(fe),p.checkClone=de.cloneNode(!0).cloneNode(!0).lastChild.checked,de.innerHTML="<textarea>x</textarea>",p.noCloneChecked=!!de.cloneNode(!0).lastChild.defaultValue,de.innerHTML="<option></option>",p.option=!!de.lastChild;var Ie={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ye(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&D(e,t)?v.merge([e],n):n}function Be(e,t){for(var n=0,r=e.length;n<r;n++)Z.set(e[n],"globalEval",!t||Z.get(t[n],"globalEval"))}Ie.tbody=Ie.tfoot=Ie.colgroup=Ie.caption=Ie.thead,Ie.th=Ie.td,p.option||(Ie.optgroup=Ie.option=[1,"<select multiple='multiple'>","</select>"]);var Ce=/<|&#?\w+;/;function Ee(e,t,n,r,i){for(var o,a,s,A,l,u,c=t.createDocumentFragment(),h=[],d=0,f=e.length;d<f;d++)if((o=e[d])||0===o)if("object"===E(o))v.merge(h,o.nodeType?[o]:o);else if(Ce.test(o)){for(a=a||c.appendChild(t.createElement("div")),s=(pe.exec(o)||["",""])[1].toLowerCase(),A=Ie[s]||Ie._default,a.innerHTML=A[1]+v.htmlPrefilter(o)+A[2],u=A[0];u--;)a=a.lastChild;v.merge(h,a.childNodes),(a=c.firstChild).textContent=""}else h.push(t.createTextNode(o));for(c.textContent="",d=0;o=h[d++];)if(r&&-1<v.inArray(o,r))i&&i.push(o);else if(l=se(o),a=ye(c.appendChild(o),"script"),l&&Be(a),n)for(u=0;o=a[u++];)me.test(o.type||"")&&n.push(o);return c}var we=/^key/,ve=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,be=/^([^.]*)(?:\.(.+)|)/;function Qe(){return!0}function ke(){return!1}function xe(e,t){return e===function(){try{return y.activeElement}catch(e){}}()==("focus"===t)}function _e(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)_e(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=ke;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return v().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=v.guid++)),e.each((function(){v.event.add(this,t,i,r,n)}))}function De(e,t,n){n?(Z.set(e,t,!1),v.event.add(e,t,{namespace:!1,handler:function(e){var r,i,o=Z.get(this,t);if(1&e.isTrigger&&this[t]){if(o.length)(v.event.special[t]||{}).delegateType&&e.stopPropagation();else if(o=s.call(arguments),Z.set(this,t,o),r=n(this,t),this[t](),o!==(i=Z.get(this,t))||r?Z.set(this,t,!1):i={},o!==i)return e.stopImmediatePropagation(),e.preventDefault(),i.value}else o.length&&(Z.set(this,t,{value:v.event.trigger(v.extend(o[0],v.Event.prototype),o.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Z.get(e,t)&&v.event.add(e,t,Qe)}v.event={global:{},add:function(e,t,n,r,i){var o,a,s,A,l,u,c,h,d,f,g,p=Z.get(e);if(W(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&v.find.matchesSelector(ae,i),n.guid||(n.guid=v.guid++),(A=p.events)||(A=p.events=Object.create(null)),(a=p.handle)||(a=p.handle=function(t){return void 0!==v&&v.event.triggered!==t.type?v.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(H)||[""]).length;l--;)d=g=(s=be.exec(t[l])||[])[1],f=(s[2]||"").split(".").sort(),d&&(c=v.event.special[d]||{},d=(i?c.delegateType:c.bindType)||d,c=v.event.special[d]||{},u=v.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&v.expr.match.needsContext.test(i),namespace:f.join(".")},o),(h=A[d])||((h=A[d]=[]).delegateCount=0,c.setup&&!1!==c.setup.call(e,r,f,a)||e.addEventListener&&e.addEventListener(d,a)),c.add&&(c.add.call(e,u),u.handler.guid||(u.handler.guid=n.guid)),i?h.splice(h.delegateCount++,0,u):h.push(u),v.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,A,l,u,c,h,d,f,g,p=Z.hasData(e)&&Z.get(e);if(p&&(A=p.events)){for(l=(t=(t||"").match(H)||[""]).length;l--;)if(d=g=(s=be.exec(t[l])||[])[1],f=(s[2]||"").split(".").sort(),d){for(c=v.event.special[d]||{},h=A[d=(r?c.delegateType:c.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=h.length;o--;)u=h[o],!i&&g!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(h.splice(o,1),u.selector&&h.delegateCount--,c.remove&&c.remove.call(e,u));a&&!h.length&&(c.teardown&&!1!==c.teardown.call(e,f,p.handle)||v.removeEvent(e,d,p.handle),delete A[d])}else for(d in A)v.event.remove(e,d+t[l],n,r,!0);v.isEmptyObject(A)&&Z.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),A=v.event.fix(e),l=(Z.get(this,"events")||Object.create(null))[A.type]||[],u=v.event.special[A.type]||{};for(s[0]=A,t=1;t<arguments.length;t++)s[t]=arguments[t];if(A.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,A)){for(a=v.event.handlers.call(this,A,l),t=0;(i=a[t++])&&!A.isPropagationStopped();)for(A.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!A.isImmediatePropagationStopped();)A.rnamespace&&!1!==o.namespace&&!A.rnamespace.test(o.namespace)||(A.handleObj=o,A.data=o.data,void 0!==(r=((v.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(A.result=r)&&(A.preventDefault(),A.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,A),A.result}},handlers:function(e,t){var n,r,i,o,a,s=[],A=t.delegateCount,l=e.target;if(A&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<A;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<v(i,this).index(l):v.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,A<t.length&&s.push({elem:l,handlers:t.slice(A)}),s},addProp:function(e,t){Object.defineProperty(v.Event.prototype,e,{enumerable:!0,configurable:!0,get:m(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[v.expando]?e:new v.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return ge.test(t.type)&&t.click&&D(t,"input")&&De(t,"click",Qe),!1},trigger:function(e){var t=this||e;return ge.test(t.type)&&t.click&&D(t,"input")&&De(t,"click"),!0},_default:function(e){var t=e.target;return ge.test(t.type)&&t.click&&D(t,"input")&&Z.get(t,"click")||D(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},v.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},v.Event=function(e,t){if(!(this instanceof v.Event))return new v.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Qe:ke,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&v.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[v.expando]=!0},v.Event.prototype={constructor:v.Event,isDefaultPrevented:ke,isPropagationStopped:ke,isImmediatePropagationStopped:ke,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Qe,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Qe,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Qe,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},v.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&we.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&ve.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},v.event.addProp),v.each({focus:"focusin",blur:"focusout"},(function(e,t){v.event.special[e]={setup:function(){return De(this,e,xe),!1},trigger:function(){return De(this,e),!0},delegateType:t}})),v.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},(function(e,t){v.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=e.relatedTarget,i=e.handleObj;return r&&(r===this||v.contains(this,r))||(e.type=i.origType,n=i.handler.apply(this,arguments),e.type=t),n}}})),v.fn.extend({on:function(e,t,n,r){return _e(this,e,t,n,r)},one:function(e,t,n,r){return _e(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,v(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=ke),this.each((function(){v.event.remove(this,e,n,t)}))}});var Se=/<script|<style|<link/i,Ne=/checked\s*(?:[^=]|=\s*.checked.)/i,Me=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Te(e,t){return D(e,"table")&&D(11!==t.nodeType?t:t.firstChild,"tr")&&v(e).children("tbody")[0]||e}function Fe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ue(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Z.hasData(e)&&(s=Z.get(e).events))for(i in Z.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)v.event.add(t,i,s[i][n]);$.hasData(e)&&(o=$.access(e),a=v.extend({},o),$.set(t,a))}}function He(e,t,n,r){t=A(t);var i,o,a,s,l,u,c=0,h=e.length,d=h-1,f=t[0],g=m(f);if(g||1<h&&"string"==typeof f&&!p.checkClone&&Ne.test(f))return e.each((function(i){var o=e.eq(i);g&&(t[0]=f.call(this,i,o.html())),He(o,t,n,r)}));if(h&&(o=(i=Ee(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(a=v.map(ye(i,"script"),Fe)).length;c<h;c++)l=i,c!==d&&(l=v.clone(l,!0,!0),s&&v.merge(a,ye(l,"script"))),n.call(e[c],l,c);if(s)for(u=a[a.length-1].ownerDocument,v.map(a,Re),c=0;c<s;c++)l=a[c],me.test(l.type||"")&&!Z.access(l,"globalEval")&&v.contains(u,l)&&(l.src&&"module"!==(l.type||"").toLowerCase()?v._evalUrl&&!l.noModule&&v._evalUrl(l.src,{nonce:l.nonce||l.getAttribute("nonce")},u):C(l.textContent.replace(Me,""),l,u))}return e}function Le(e,t,n){for(var r,i=t?v.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||v.cleanData(ye(r)),r.parentNode&&(n&&se(r)&&Be(ye(r,"script")),r.parentNode.removeChild(r));return e}v.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,A,l,u=e.cloneNode(!0),c=se(e);if(!(p.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||v.isXMLDoc(e)))for(a=ye(u),r=0,i=(o=ye(e)).length;r<i;r++)s=o[r],"input"===(l=(A=a[r]).nodeName.toLowerCase())&&ge.test(s.type)?A.checked=s.checked:"input"!==l&&"textarea"!==l||(A.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ye(e),a=a||ye(u),r=0,i=o.length;r<i;r++)Ue(o[r],a[r]);else Ue(e,u);return 0<(a=ye(u,"script")).length&&Be(a,!c&&ye(e,"script")),u},cleanData:function(e){for(var t,n,r,i=v.event.special,o=0;void 0!==(n=e[o]);o++)if(W(n)){if(t=n[Z.expando]){if(t.events)for(r in t.events)i[r]?v.event.remove(n,r):v.removeEvent(n,r,t.handle);n[Z.expando]=void 0}n[$.expando]&&(n[$.expando]=void 0)}}}),v.fn.extend({detach:function(e){return Le(this,e,!0)},remove:function(e){return Le(this,e)},text:function(e){return j(this,(function(e){return void 0===e?v.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return He(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Te(this,e).appendChild(e)}))},prepend:function(){return He(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Te(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return He(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return He(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(v.cleanData(ye(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return v.clone(this,e,t)}))},html:function(e){return j(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Se.test(e)&&!Ie[(pe.exec(e)||["",""])[1].toLowerCase()]){e=v.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(v.cleanData(ye(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return He(this,arguments,(function(t){var n=this.parentNode;v.inArray(this,e)<0&&(v.cleanData(ye(this)),n&&n.replaceChild(t,this))}),e)}}),v.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},(function(e,t){v.fn[e]=function(e){for(var n,r=[],i=v(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),v(i[a])[t](n),l.apply(r,n.get());return this.pushStack(r)}}));var Ge=new RegExp("^("+re+")(?!px)[a-z%]+$","i"),Pe=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=n),t.getComputedStyle(e)},Oe=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},ze=new RegExp(oe.join("|"),"i");function Ye(e,t,n){var r,i,o,a,s=e.style;return(n=n||Pe(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||se(e)||(a=v.style(e,t)),!p.pixelBoxStyles()&&Ge.test(a)&&ze.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function je(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){l.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ae.appendChild(l).appendChild(u);var e=n.getComputedStyle(u);r="1%"!==e.top,A=12===t(e.marginLeft),u.style.right="60%",a=36===t(e.right),i=36===t(e.width),u.style.position="absolute",o=12===t(u.offsetWidth/3),ae.removeChild(l),u=null}}function t(e){return Math.round(parseFloat(e))}var r,i,o,a,s,A,l=y.createElement("div"),u=y.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",p.clearCloneStyle="content-box"===u.style.backgroundClip,v.extend(p,{boxSizingReliable:function(){return e(),i},pixelBoxStyles:function(){return e(),a},pixelPosition:function(){return e(),r},reliableMarginLeft:function(){return e(),A},scrollboxSize:function(){return e(),o},reliableTrDimensions:function(){var e,t,r,i;return null==s&&(e=y.createElement("table"),t=y.createElement("tr"),r=y.createElement("div"),e.style.cssText="position:absolute;left:-11111px",t.style.height="1px",r.style.height="9px",ae.appendChild(e).appendChild(t).appendChild(r),i=n.getComputedStyle(t),s=3<parseInt(i.height),ae.removeChild(e)),s}}))}();var Ve=["Webkit","Moz","ms"],Ke=y.createElement("div").style,qe={};function Je(e){return v.cssProps[e]||qe[e]||(e in Ke?e:qe[e]=function(e){for(var t=e[0].toUpperCase()+e.slice(1),n=Ve.length;n--;)if((e=Ve[n]+t)in Ke)return e}(e)||e)}var We=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ze={position:"absolute",visibility:"hidden",display:"block"},$e={letterSpacing:"0",fontWeight:"400"};function et(e,t,n){var r=ie.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function tt(e,t,n,r,i,o){var a="width"===t?1:0,s=0,A=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(A+=v.css(e,n+oe[a],!0,i)),r?("content"===n&&(A-=v.css(e,"padding"+oe[a],!0,i)),"margin"!==n&&(A-=v.css(e,"border"+oe[a]+"Width",!0,i))):(A+=v.css(e,"padding"+oe[a],!0,i),"padding"!==n?A+=v.css(e,"border"+oe[a]+"Width",!0,i):s+=v.css(e,"border"+oe[a]+"Width",!0,i));return!r&&0<=o&&(A+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-A-s-.5))||0),A}function nt(e,t,n){var r=Pe(e),i=(!p.boxSizingReliable()||n)&&"border-box"===v.css(e,"boxSizing",!1,r),o=i,a=Ye(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Ge.test(a)){if(!n)return a;a="auto"}return(!p.boxSizingReliable()&&i||!p.reliableTrDimensions()&&D(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===v.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===v.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+tt(e,t,n||(i?"border":"content"),o,r,a)+"px"}function rt(e,t,n,r,i){return new rt.prototype.init(e,t,n,r,i)}v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Ye(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=J(t),A=Xe.test(t),l=e.style;if(A||(t=Je(s)),a=v.cssHooks[t]||v.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=ue(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||A||(n+=i&&i[3]||(v.cssNumber[s]?"":"px")),p.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(A?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=J(t);return Xe.test(t)||(t=Je(s)),(a=v.cssHooks[t]||v.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Ye(e,t,r)),"normal"===i&&t in $e&&(i=$e[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),v.each(["height","width"],(function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return!We.test(v.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?nt(e,t,r):Oe(e,Ze,(function(){return nt(e,t,r)}))},set:function(e,n,r){var i,o=Pe(e),a=!p.scrollboxSize()&&"absolute"===o.position,s=(a||r)&&"border-box"===v.css(e,"boxSizing",!1,o),A=r?tt(e,t,r,s,o):0;return s&&a&&(A-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-tt(e,t,"border",!1,o)-.5)),A&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=v.css(e,t)),et(0,n,A)}}})),v.cssHooks.marginLeft=je(p.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Ye(e,"marginLeft"))||e.getBoundingClientRect().left-Oe(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),v.each({margin:"",padding:"",border:"Width"},(function(e,t){v.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(v.cssHooks[e+t].set=et)})),v.fn.extend({css:function(e,t){return j(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Pe(e),i=t.length;a<i;a++)o[t[a]]=v.css(e,t[a],!1,r);return o}return void 0!==n?v.style(e,t,n):v.css(e,t)}),e,t,1<arguments.length)}}),((v.Tween=rt).prototype={constructor:rt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||v.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(v.cssNumber[n]?"":"px")},cur:function(){var e=rt.propHooks[this.prop];return e&&e.get?e.get(this):rt.propHooks._default.get(this)},run:function(e){var t,n=rt.propHooks[this.prop];return this.options.duration?this.pos=t=v.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rt.propHooks._default.set(this),this}}).init.prototype=rt.prototype,(rt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=v.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){v.fx.step[e.prop]?v.fx.step[e.prop](e):1!==e.elem.nodeType||!v.cssHooks[e.prop]&&null==e.elem.style[Je(e.prop)]?e.elem[e.prop]=e.now:v.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=rt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},v.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},v.fx=rt.prototype.init,v.fx.step={};var it,ot,at,st,At=/^(?:toggle|show|hide)$/,lt=/queueHooks$/;function ut(){ot&&(!1===y.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(ut):n.setTimeout(ut,v.fx.interval),v.fx.tick())}function ct(){return n.setTimeout((function(){it=void 0})),it=Date.now()}function ht(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=oe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function dt(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(e,t,n){var r,i,o=0,a=ft.prefilters.length,s=v.Deferred().always((function(){delete A.elem})),A=function(){if(i)return!1;for(var t=it||ct(),n=Math.max(0,l.startTime+l.duration-t),r=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(r);return s.notifyWith(e,[l,r,n]),r<1&&a?n:(a||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:v.extend({},t),opts:v.extend(!0,{specialEasing:{},easing:v.easing._default},n),originalProperties:t,originalOptions:n,startTime:it||ct(),duration:n.duration,tweens:[],createTween:function(t,n){var r=v.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),u=l.props;for(function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=J(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=v.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(u,l.opts.specialEasing);o<a;o++)if(r=ft.prefilters[o].call(l,e,u,l.opts))return m(r.stop)&&(v._queueHooks(l.elem,l.opts.queue).stop=r.stop.bind(r)),r;return v.map(u,dt,l),m(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),v.fx.timer(v.extend(A,{elem:e,anim:l,queue:l.opts.queue})),l}v.Animation=v.extend(ft,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return ue(n.elem,e,ie.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(H);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,A,l,u,c="width"in t||"height"in t,h=this,d={},f=e.style,g=e.nodeType&&le(e),p=Z.get(e,"fxshow");for(r in n.queue||(null==(a=v._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,h.always((function(){h.always((function(){a.unqueued--,v.queue(e,"fx").length||a.empty.fire()}))}))),t)if(i=t[r],At.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!p||void 0===p[r])continue;g=!0}d[r]=p&&p[r]||v.style(e,r)}if((A=!v.isEmptyObject(t))||!v.isEmptyObject(d))for(r in c&&1===e.nodeType&&(n.overflow=[f.overflow,f.overflowX,f.overflowY],null==(l=p&&p.display)&&(l=Z.get(e,"display")),"none"===(u=v.css(e,"display"))&&(l?u=l:(he([e],!0),l=e.style.display||l,u=v.css(e,"display"),he([e]))),("inline"===u||"inline-block"===u&&null!=l)&&"none"===v.css(e,"float")&&(A||(h.done((function(){f.display=l})),null==l&&(u=f.display,l="none"===u?"":u)),f.display="inline-block")),n.overflow&&(f.overflow="hidden",h.always((function(){f.overflow=n.overflow[0],f.overflowX=n.overflow[1],f.overflowY=n.overflow[2]}))),A=!1,d)A||(p?"hidden"in p&&(g=p.hidden):p=Z.access(e,"fxshow",{display:l}),o&&(p.hidden=!g),g&&he([e],!0),h.done((function(){for(r in g||he([e]),Z.remove(e,"fxshow"),d)v.style(e,r,d[r])}))),A=dt(g?p[r]:0,r,h),r in p||(p[r]=A.start,g&&(A.end=A.start,A.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),v.speed=function(e,t,n){var r=e&&"object"==typeof e?v.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return v.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in v.fx.speeds?r.duration=v.fx.speeds[r.duration]:r.duration=v.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&v.dequeue(this,r.queue)},r},v.fn.extend({fadeTo:function(e,t,n,r){return this.filter(le).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=v.isEmptyObject(e),o=v.speed(t,n,r),a=function(){var t=ft(this,v.extend({},e),o);(i||Z.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&this.queue(e||"fx",[]),this.each((function(){var t=!0,i=null!=e&&e+"queueHooks",o=v.timers,a=Z.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&lt.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||v.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||"fx"),this.each((function(){var t,n=Z.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=v.timers,a=r?r.length:0;for(n.finish=!0,v.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),v.each(["toggle","show","hide"],(function(e,t){var n=v.fn[t];v.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ht(t,!0),e,r,i)}})),v.each({slideDown:ht("show"),slideUp:ht("hide"),slideToggle:ht("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},(function(e,t){v.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),v.timers=[],v.fx.tick=function(){var e,t=0,n=v.timers;for(it=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||v.fx.stop(),it=void 0},v.fx.timer=function(e){v.timers.push(e),v.fx.start()},v.fx.interval=13,v.fx.start=function(){ot||(ot=!0,ut())},v.fx.stop=function(){ot=null},v.fx.speeds={slow:600,fast:200,_default:400},v.fn.delay=function(e,t){return e=v.fx&&v.fx.speeds[e]||e,t=t||"fx",this.queue(t,(function(t,r){var i=n.setTimeout(t,e);r.stop=function(){n.clearTimeout(i)}}))},at=y.createElement("input"),st=y.createElement("select").appendChild(y.createElement("option")),at.type="checkbox",p.checkOn=""!==at.value,p.optSelected=st.selected,(at=y.createElement("input")).value="t",at.type="radio",p.radioValue="t"===at.value;var gt,pt=v.expr.attrHandle;v.fn.extend({attr:function(e,t){return j(this,v.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each((function(){v.removeAttr(this,e)}))}}),v.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?v.prop(e,t,n):(1===o&&v.isXMLDoc(e)||(i=v.attrHooks[t.toLowerCase()]||(v.expr.match.bool.test(t)?gt:void 0)),void 0!==n?null===n?void v.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=v.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!p.radioValue&&"radio"===t&&D(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(H);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),gt={set:function(e,t,n){return!1===t?v.removeAttr(e,n):e.setAttribute(n,n),n}},v.each(v.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=pt[t]||v.find.attr;pt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=pt[a],pt[a]=i,i=null!=n(e,t,r)?a:null,pt[a]=o),i}}));var mt=/^(?:input|select|textarea|button)$/i,It=/^(?:a|area)$/i;function yt(e){return(e.match(H)||[]).join(" ")}function Bt(e){return e.getAttribute&&e.getAttribute("class")||""}function Ct(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(H)||[]}v.fn.extend({prop:function(e,t){return j(this,v.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each((function(){delete this[v.propFix[e]||e]}))}}),v.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&v.isXMLDoc(e)||(t=v.propFix[t]||t,i=v.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=v.find.attr(e,"tabindex");return t?parseInt(t,10):mt.test(e.nodeName)||It.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),p.optSelected||(v.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),v.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){v.propFix[this.toLowerCase()]=this})),v.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,A=0;if(m(e))return this.each((function(t){v(this).addClass(e.call(this,t,Bt(this)))}));if((t=Ct(e)).length)for(;n=this[A++];)if(i=Bt(n),r=1===n.nodeType&&" "+yt(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=yt(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,A=0;if(m(e))return this.each((function(t){v(this).removeClass(e.call(this,t,Bt(this)))}));if(!arguments.length)return this.attr("class","");if((t=Ct(e)).length)for(;n=this[A++];)if(i=Bt(n),r=1===n.nodeType&&" "+yt(i)+" "){for(a=0;o=t[a++];)for(;-1<r.indexOf(" "+o+" ");)r=r.replace(" "+o+" "," ");i!==(s=yt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):m(e)?this.each((function(n){v(this).toggleClass(e.call(this,n,Bt(this),t),t)})):this.each((function(){var t,i,o,a;if(r)for(i=0,o=v(this),a=Ct(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||((t=Bt(this))&&Z.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Z.get(this,"__className__")||""))}))},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&-1<(" "+yt(Bt(n))+" ").indexOf(t))return!0;return!1}});var Et=/\r/g;v.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=m(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,v(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=v.map(i,(function(e){return null==e?"":e+""}))),(t=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))}))):i?(t=v.valHooks[i.type]||v.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(Et,""):null==n?"":n:void 0}}),v.extend({valHooks:{option:{get:function(e){var t=v.find.attr(e,"value");return null!=t?t:yt(v.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],A=a?o+1:i.length;for(r=o<0?A:a?o:0;r<A;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!D(n.parentNode,"optgroup"))){if(t=v(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=v.makeArray(t),a=i.length;a--;)((r=i[a]).selected=-1<v.inArray(v.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),v.each(["radio","checkbox"],(function(){v.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<v.inArray(v(e).val(),t)}},p.checkOn||(v.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})})),p.focusin="onfocusin"in n;var wt=/^(?:focusinfocus|focusoutblur)$/,vt=function(e){e.stopPropagation()};v.extend(v.event,{trigger:function(e,t,r,i){var o,a,s,A,l,u,c,h,f=[r||y],g=d.call(e,"type")?e.type:e,p=d.call(e,"namespace")?e.namespace.split("."):[];if(a=h=s=r=r||y,3!==r.nodeType&&8!==r.nodeType&&!wt.test(g+v.event.triggered)&&(-1<g.indexOf(".")&&(g=(p=g.split(".")).shift(),p.sort()),l=g.indexOf(":")<0&&"on"+g,(e=e[v.expando]?e:new v.Event(g,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=p.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:v.makeArray(t,[e]),c=v.event.special[g]||{},i||!c.trigger||!1!==c.trigger.apply(r,t))){if(!i&&!c.noBubble&&!I(r)){for(A=c.delegateType||g,wt.test(A+g)||(a=a.parentNode);a;a=a.parentNode)f.push(a),s=a;s===(r.ownerDocument||y)&&f.push(s.defaultView||s.parentWindow||n)}for(o=0;(a=f[o++])&&!e.isPropagationStopped();)h=a,e.type=1<o?A:c.bindType||g,(u=(Z.get(a,"events")||Object.create(null))[e.type]&&Z.get(a,"handle"))&&u.apply(a,t),(u=l&&a[l])&&u.apply&&W(a)&&(e.result=u.apply(a,t),!1===e.result&&e.preventDefault());return e.type=g,i||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(f.pop(),t)||!W(r)||l&&m(r[g])&&!I(r)&&((s=r[l])&&(r[l]=null),v.event.triggered=g,e.isPropagationStopped()&&h.addEventListener(g,vt),r[g](),e.isPropagationStopped()&&h.removeEventListener(g,vt),v.event.triggered=void 0,s&&(r[l]=s)),e.result}},simulate:function(e,t,n){var r=v.extend(new v.Event,n,{type:e,isSimulated:!0});v.event.trigger(r,null,t)}}),v.fn.extend({trigger:function(e,t){return this.each((function(){v.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return v.event.trigger(e,t,n,!0)}}),p.focusin||v.each({focus:"focusin",blur:"focusout"},(function(e,t){var n=function(e){v.event.simulate(t,e.target,v.event.fix(e))};v.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=Z.access(r,t);i||r.addEventListener(e,n,!0),Z.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=Z.access(r,t)-1;i?Z.access(r,t,i):(r.removeEventListener(e,n,!0),Z.remove(r,t))}}}));var bt=n.location,Qt={guid:Date.now()},kt=/\?/;v.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||v.error("Invalid XML: "+e),t};var xt=/\[\]$/,_t=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,St=/^(?:input|select|textarea|keygen)/i;function Nt(e,t,n,r){var i;if(Array.isArray(t))v.each(t,(function(t,i){n||xt.test(e)?r(e,i):Nt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)}));else if(n||"object"!==E(t))r(e,t);else for(i in t)Nt(e+"["+i+"]",t[i],n,r)}v.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,(function(){i(this.name,this.value)}));else for(n in e)Nt(n,e[n],t,i);return r.join("&")},v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=v.prop(this,"elements");return e?v.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!v(this).is(":disabled")&&St.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!ge.test(e))})).map((function(e,t){var n=v(this).val();return null==n?null:Array.isArray(n)?v.map(n,(function(e){return{name:t.name,value:e.replace(_t,"\r\n")}})):{name:t.name,value:n.replace(_t,"\r\n")}})).get()}});var Mt=/%20/g,Tt=/#.*$/,Ft=/([?&])_=[^&]*/,Rt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ut=/^(?:GET|HEAD)$/,Ht=/^\/\//,Lt={},Gt={},Pt="*/".concat("*"),Ot=y.createElement("a");function zt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(H)||[];if(m(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Yt(e,t,n,r){var i={},o=e===Gt;function a(s){var A;return i[s]=!0,v.each(e[s]||[],(function(e,s){var l=s(t,n,r);return"string"!=typeof l||o||i[l]?o?!(A=l):void 0:(t.dataTypes.unshift(l),a(l),!1)})),A}return a(t.dataTypes[0])||!i["*"]&&a("*")}function jt(e,t){var n,r,i=v.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&v.extend(!0,e,r),e}Ot.href=bt.href,v.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Pt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":v.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?jt(jt(e,v.ajaxSettings),t):jt(v.ajaxSettings,e)},ajaxPrefilter:zt(Lt),ajaxTransport:zt(Gt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,i,o,a,s,A,l,u,c,h,d=v.ajaxSetup({},t),f=d.context||d,g=d.context&&(f.nodeType||f.jquery)?v(f):v.event,p=v.Deferred(),m=v.Callbacks("once memory"),I=d.statusCode||{},B={},C={},E="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(l){if(!a)for(a={};t=Rt.exec(o);)a[t[1].toLowerCase()+" "]=(a[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=a[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=C[e.toLowerCase()]=C[e.toLowerCase()]||e,B[e]=t),this},overrideMimeType:function(e){return null==l&&(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)w.always(e[w.status]);else for(t in e)I[t]=[I[t],e[t]];return this},abort:function(e){var t=e||E;return r&&r.abort(t),b(0,t),this}};if(p.promise(w),d.url=((e||d.url||bt.href)+"").replace(Ht,bt.protocol+"//"),d.type=t.method||t.type||d.method||d.type,d.dataTypes=(d.dataType||"*").toLowerCase().match(H)||[""],null==d.crossDomain){A=y.createElement("a");try{A.href=d.url,A.href=A.href,d.crossDomain=Ot.protocol+"//"+Ot.host!=A.protocol+"//"+A.host}catch(e){d.crossDomain=!0}}if(d.data&&d.processData&&"string"!=typeof d.data&&(d.data=v.param(d.data,d.traditional)),Yt(Lt,d,t,w),l)return w;for(c in(u=v.event&&d.global)&&0==v.active++&&v.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!Ut.test(d.type),i=d.url.replace(Tt,""),d.hasContent?d.data&&d.processData&&0===(d.contentType||"").indexOf("application/x-www-form-urlencoded")&&(d.data=d.data.replace(Mt,"+")):(h=d.url.slice(i.length),d.data&&(d.processData||"string"==typeof d.data)&&(i+=(kt.test(i)?"&":"?")+d.data,delete d.data),!1===d.cache&&(i=i.replace(Ft,"$1"),h=(kt.test(i)?"&":"?")+"_="+Qt.guid+++h),d.url=i+h),d.ifModified&&(v.lastModified[i]&&w.setRequestHeader("If-Modified-Since",v.lastModified[i]),v.etag[i]&&w.setRequestHeader("If-None-Match",v.etag[i])),(d.data&&d.hasContent&&!1!==d.contentType||t.contentType)&&w.setRequestHeader("Content-Type",d.contentType),w.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+Pt+"; q=0.01":""):d.accepts["*"]),d.headers)w.setRequestHeader(c,d.headers[c]);if(d.beforeSend&&(!1===d.beforeSend.call(f,w,d)||l))return w.abort();if(E="abort",m.add(d.complete),w.done(d.success),w.fail(d.error),r=Yt(Gt,d,t,w)){if(w.readyState=1,u&&g.trigger("ajaxSend",[w,d]),l)return w;d.async&&0<d.timeout&&(s=n.setTimeout((function(){w.abort("timeout")}),d.timeout));try{l=!1,r.send(B,b)}catch(e){if(l)throw e;b(-1,e)}}else b(-1,"No Transport");function b(e,t,a,A){var c,h,y,B,C,E=t;l||(l=!0,s&&n.clearTimeout(s),r=void 0,o=A||"",w.readyState=0<e?4:0,c=200<=e&&e<300||304===e,a&&(B=function(e,t,n){for(var r,i,o,a,s=e.contents,A=e.dataTypes;"*"===A[0];)A.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){A.unshift(i);break}if(A[0]in n)o=A[0];else{for(i in n){if(!A[0]||e.converters[i+" "+A[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==A[0]&&A.unshift(o),n[o]}(d,w,a)),!c&&-1<v.inArray("script",d.dataTypes)&&(d.converters["text script"]=function(){}),B=function(e,t,n,r){var i,o,a,s,A,l={},u=e.dataTypes.slice();if(u[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=u.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!A&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),A=o,o=u.shift())if("*"===o)o=A;else if("*"!==A&&A!==o){if(!(a=l[A+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[A+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],u.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+A+" to "+o}}}return{state:"success",data:t}}(d,B,w,c),c?(d.ifModified&&((C=w.getResponseHeader("Last-Modified"))&&(v.lastModified[i]=C),(C=w.getResponseHeader("etag"))&&(v.etag[i]=C)),204===e||"HEAD"===d.type?E="nocontent":304===e?E="notmodified":(E=B.state,h=B.data,c=!(y=B.error))):(y=E,!e&&E||(E="error",e<0&&(e=0))),w.status=e,w.statusText=(t||E)+"",c?p.resolveWith(f,[h,E,w]):p.rejectWith(f,[w,E,y]),w.statusCode(I),I=void 0,u&&g.trigger(c?"ajaxSuccess":"ajaxError",[w,d,c?h:y]),m.fireWith(f,[w,E]),u&&(g.trigger("ajaxComplete",[w,d]),--v.active||v.event.trigger("ajaxStop")))}return w},getJSON:function(e,t,n){return v.get(e,t,n,"json")},getScript:function(e,t){return v.get(e,void 0,t,"script")}}),v.each(["get","post"],(function(e,t){v[t]=function(e,n,r,i){return m(n)&&(i=i||r,r=n,n=void 0),v.ajax(v.extend({url:e,type:t,dataType:i,data:n,success:r},v.isPlainObject(e)&&e))}})),v.ajaxPrefilter((function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")})),v._evalUrl=function(e,t,n){return v.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){v.globalEval(e,t,n)}})},v.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=v(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return m(e)?this.each((function(t){v(this).wrapInner(e.call(this,t))})):this.each((function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=m(e);return this.each((function(n){v(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){v(this).replaceWith(this.childNodes)})),this}}),v.expr.pseudos.hidden=function(e){return!v.expr.pseudos.visible(e)},v.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},v.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Vt={0:200,1223:204},Kt=v.ajaxSettings.xhr();p.cors=!!Kt&&"withCredentials"in Kt,p.ajax=Kt=!!Kt,v.ajaxTransport((function(e){var t,r;if(p.cors||Kt&&!e.crossDomain)return{send:function(i,o){var a,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)s[a]=e.xhrFields[a];for(a in e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(a,i[a]);t=function(e){return function(){t&&(t=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Vt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),r=s.onerror=s.ontimeout=t("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout((function(){t&&r()}))},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(i){if(t)throw i}},abort:function(){t&&t()}}})),v.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),v.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=v("<script>").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),y.head.appendChild(t[0])},abort:function(){n&&n()}}}));var qt,Jt=[],Wt=/(=)\?(?=&|$)|\?\?/;v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Jt.pop()||v.expando+"_"+Qt.guid++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",(function(e,t,r){var i,o,a,s=!1!==e.jsonp&&(Wt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Wt.test(e.data)&&"data");if(s||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,s?e[s]=e[s].replace(Wt,"$1"+i):!1!==e.jsonp&&(e.url+=(kt.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return a||v.error(i+" was not called"),a[0]},e.dataTypes[0]="json",o=n[i],n[i]=function(){a=arguments},r.always((function(){void 0===o?v(n).removeProp(i):n[i]=o,e[i]&&(e.jsonpCallback=t.jsonpCallback,Jt.push(i)),a&&m(o)&&o(a[0]),a=o=void 0})),"script"})),p.createHTMLDocument=((qt=y.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===qt.childNodes.length),v.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(p.createHTMLDocument?((r=(t=y.implementation.createHTMLDocument("")).createElement("base")).href=y.location.href,t.head.appendChild(r)):t=y),o=!n&&[],(i=S.exec(e))?[t.createElement(i[1])]:(i=Ee([e],t,o),o&&o.length&&v(o).remove(),v.merge([],i.childNodes)));var r,i,o},v.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=yt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&v.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done((function(e){o=arguments,a.html(r?v("<div>").append(v.parseHTML(e)).find(r):e)})).always(n&&function(e,t){a.each((function(){n.apply(this,o||[e.responseText,t,e])}))}),this},v.expr.pseudos.animated=function(e){return v.grep(v.timers,(function(t){return e===t.elem})).length},v.offset={setOffset:function(e,t,n){var r,i,o,a,s,A,l=v.css(e,"position"),u=v(e),c={};"static"===l&&(e.style.position="relative"),s=u.offset(),o=v.css(e,"top"),A=v.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+A).indexOf("auto")?(a=(r=u.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(A)||0),m(t)&&(t=t.call(e,n,v.extend({},s))),null!=t.top&&(c.top=t.top-s.top+a),null!=t.left&&(c.left=t.left-s.left+i),"using"in t?t.using.call(e,c):("number"==typeof c.top&&(c.top+="px"),"number"==typeof c.left&&(c.left+="px"),u.css(c))}},v.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){v.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===v.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===v.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=v(e).offset()).top+=v.css(e,"borderTopWidth",!0),i.left+=v.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-v.css(r,"marginTop",!0),left:t.left-i.left-v.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map((function(){for(var e=this.offsetParent;e&&"static"===v.css(e,"position");)e=e.offsetParent;return e||ae}))}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},(function(e,t){var n="pageYOffset"===t;v.fn[e]=function(r){return j(this,(function(e,r,i){var o;if(I(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i}),e,r,arguments.length)}})),v.each(["top","left"],(function(e,t){v.cssHooks[t]=je(p.pixelPosition,(function(e,n){if(n)return n=Ye(e,t),Ge.test(n)?v(e).position()[t]+"px":n}))})),v.each({Height:"height",Width:"width"},(function(e,t){v.each({padding:"inner"+e,content:t,"":"outer"+e},(function(n,r){v.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),s=n||(!0===i||!0===o?"margin":"border");return j(this,(function(t,n,i){var o;return I(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?v.css(t,n,s):v.style(t,n,i,s)}),t,a?i:void 0,a)}}))})),v.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],(function(e,t){v.fn[t]=function(e){return this.on(t,e)}})),v.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),v.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),(function(e,t){v.fn[t]=function(e,n){return 0<arguments.length?this.on(t,null,e,n):this.trigger(t)}}));var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;v.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||v.guid++,i},v.holdReady=function(e){e?v.readyWait++:v.ready(!0)},v.isArray=Array.isArray,v.parseJSON=JSON.parse,v.nodeName=D,v.isFunction=m,v.isWindow=I,v.camelCase=J,v.type=E,v.now=Date.now,v.isNumeric=function(e){var t=v.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},v.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},void 0===(r=function(){return v}.apply(t,[]))||(e.exports=r);var Zt=n.jQuery,$t=n.$;return v.noConflict=function(e){return n.$===v&&(n.$=$t),e&&n.jQuery===v&&(n.jQuery=Zt),v},void 0===i&&(n.jQuery=n.$=v),v}))},192:function(e,t,n){e.exports=function(){"use strict";function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function n(e){var n=0;if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator])return(n=e[Symbol.iterator]()).next.bind(n);if(Array.isArray(e)||(e=function(e,n){if(e){if("string"==typeof e)return t(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?t(e,n):void 0}}(e)))return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(e){return u[e]}var i,o=(function(e){function t(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}e.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:t,changeDefaults:function(t){e.exports.defaults=t}}}(i={exports:{}}),i.exports),a=(o.defaults,o.getDefaults,o.changeDefaults,/[&<>"']/),s=/[&<>"']/g,A=/[<>"']|&(?!#?\w+;)/,l=/[<>"']|&(?!#?\w+;)/g,u={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},c=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function h(e){return e.replace(c,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}var d=/(^|[^\[])\^/g,f=/[^\w:]/g,g=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i,p={},m=/^[^:]+:\/*[^/]*$/,I=/^([^:]+:)[\s\S]*$/,y=/^([^:]+:\/*[^/]*)[\s\S]*$/;function B(e,t,n){var r=e.length;if(0===r)return"";for(var i=0;i<r;){var o=e.charAt(r-i-1);if(o!==t||n){if(o===t||!n)break;i++}else i++}return e.substr(0,r-i)}var C=function(e,t){if(t){if(a.test(e))return e.replace(s,r)}else if(A.test(e))return e.replace(l,r);return e},E=h,w=function(e){for(var t,n,r=1;r<arguments.length;r++)for(n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},v=o.defaults,b=B,Q=function(e,t){var n=e.replace(/\|/g,(function(e,t,n){for(var r=!1,i=t;0<=--i&&"\\"===n[i];)r=!r;return r?"|":" |"})).split(/ \|/),r=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n},k=C,x=function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,r=0,i=0;i<n;i++)if("\\"===e[i])i++;else if(e[i]===t[0])r++;else if(e[i]===t[1]&&--r<0)return i;return-1};function _(e,t,n){var r=t.href,i=t.title?k(t.title):null;return"!"!==e[0].charAt(0)?{type:"link",raw:n,href:r,title:i,text:e[1]}:{type:"image",raw:n,text:k(e[1]),href:r,title:i}}var D=function(){function e(e){this.options=e||v}var t=e.prototype;return t.space=function(e){var t=this.rules.block.newline.exec(e);if(t)return 1<t[0].length?{type:"space",raw:t[0]}:{raw:"\n"}},t.code=function(e,t){var n=this.rules.block.code.exec(e);if(n){var r=t[t.length-1];if(r&&"paragraph"===r.type)return{raw:n[0],text:n[0].trimRight()};var i=n[0].replace(/^ {4}/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?i:b(i,"\n")}}},t.fences=function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var r=n[1];return t.split("\n").map((function(e){var t=e.match(/^\s+/);return null!==t&&t[0].length>=r.length?e.slice(r.length):e})).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:r}}},t.heading=function(e){var t=this.rules.block.heading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[1].length,text:t[2]}},t.nptable=function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:Q(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){for(var r=n.align.length,i=0;i<r;i++)/^ *-+: *$/.test(n.align[i])?n.align[i]="right":/^ *:-+: *$/.test(n.align[i])?n.align[i]="center":/^ *:-+ *$/.test(n.align[i])?n.align[i]="left":n.align[i]=null;for(r=n.cells.length,i=0;i<r;i++)n.cells[i]=Q(n.cells[i],n.header.length);return n}}},t.hr=function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}},t.blockquote=function(e){var t=this.rules.block.blockquote.exec(e);if(t){var n=t[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}},t.list=function(e){var t=this.rules.block.list.exec(e);if(t){for(var n,r,i,o,a,s,A,l=t[0],u=t[2],c=1<u.length,h={type:"list",raw:l,ordered:c,start:c?+u:"",loose:!1,items:[]},d=t[0].match(this.rules.block.item),f=!1,g=d.length,p=0;p<g;p++)r=(l=n=d[p]).length,~(n=n.replace(/^ *([*+-]|\d+\.) */,"")).indexOf("\n ")&&(r-=n.length,n=this.options.pedantic?n.replace(/^ {1,4}/gm,""):n.replace(new RegExp("^ {1,"+r+"}","gm"),"")),p!==g-1&&(i=this.rules.block.bullet.exec(d[p+1])[0],(1<u.length?1===i.length:1<i.length||this.options.smartLists&&i!==u)&&(o=d.slice(p+1).join("\n"),h.raw=h.raw.substring(0,h.raw.length-o.length),p=g-1)),a=f||/\n\n(?!\s*$)/.test(n),p!==g-1&&(f="\n"===n.charAt(n.length-1),a=a||f),a&&(h.loose=!0),A=void 0,(s=/^\[[ xX]\] /.test(n))&&(A=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,"")),h.items.push({type:"list_item",raw:l,task:s,checked:A,loose:a,text:n});return h}},t.html=function(e){var t=this.rules.block.html.exec(e);if(t)return{type:this.options.sanitize?"paragraph":"html",raw:t[0],pre:!this.options.sanitizer&&("pre"===t[1]||"script"===t[1]||"style"===t[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):k(t[0]):t[0]}},t.def=function(e){var t=this.rules.block.def.exec(e);if(t)return t[3]&&(t[3]=t[3].substring(1,t[3].length-1)),{tag:t[1].toLowerCase().replace(/\s+/g," "),raw:t[0],href:t[2],title:t[3]}},t.table=function(e){var t=this.rules.block.table.exec(e);if(t){var n={type:"table",header:Q(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=t[0];for(var r=n.align.length,i=0;i<r;i++)/^ *-+: *$/.test(n.align[i])?n.align[i]="right":/^ *:-+: *$/.test(n.align[i])?n.align[i]="center":/^ *:-+ *$/.test(n.align[i])?n.align[i]="left":n.align[i]=null;for(r=n.cells.length,i=0;i<r;i++)n.cells[i]=Q(n.cells[i].replace(/^ *\| *| *\| *$/g,""),n.header.length);return n}}},t.lheading=function(e){var t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1]}},t.paragraph=function(e){var t=this.rules.block.paragraph.exec(e);if(t)return{type:"paragraph",raw:t[0],text:"\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1]}},t.text=function(e,t){var n=this.rules.block.text.exec(e);if(n){var r=t[t.length-1];return r&&"text"===r.type?{raw:n[0],text:n[0]}:{type:"text",raw:n[0],text:n[0]}}},t.escape=function(e){var t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:k(t[1])}},t.tag=function(e,t,n){var r=this.rules.inline.tag.exec(e);if(r)return!t&&/^<a /i.test(r[0])?t=!0:t&&/^<\/a>/i.test(r[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:r[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):k(r[0]):r[0]}},t.link=function(e){var t=this.rules.inline.link.exec(e);if(t){var n,r=x(t[2],"()");-1<r&&(n=(0===t[0].indexOf("!")?5:4)+t[1].length+r,t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,n).trim(),t[3]="");var i,o=t[2],a="";return a=this.options.pedantic?(i=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o))?(o=i[1],i[3]):"":t[3]?t[3].slice(1,-1):"",_(t,{href:(o=o.trim().replace(/^<([\s\S]*)>$/,"$1"))?o.replace(this.rules.inline._escapes,"$1"):o,title:a?a.replace(this.rules.inline._escapes,"$1"):a},t[0])}},t.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=(n[2]||n[1]).replace(/\s+/g," ");if((r=t[r.toLowerCase()])&&r.href)return _(n,r,n[0]);var i=n[0].charAt(0);return{type:"text",raw:i,text:i}}},t.strong=function(e){var t=this.rules.inline.strong.exec(e);if(t)return{type:"strong",raw:t[0],text:t[4]||t[3]||t[2]||t[1]}},t.em=function(e){var t=this.rules.inline.em.exec(e);if(t)return{type:"em",raw:t[0],text:t[6]||t[5]||t[4]||t[3]||t[2]||t[1]}},t.codespan=function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),r=/[^ ]/.test(n),i=n.startsWith(" ")&&n.endsWith(" ");return r&&i&&(n=n.substring(1,n.length-1)),n=k(n,!0),{type:"codespan",raw:t[0],text:n}}},t.br=function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}},t.del=function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[1]}},t.autolink=function(e,t){var n=this.rules.inline.autolink.exec(e);if(n){var r,i="@"===n[2]?"mailto:"+(r=k(this.options.mangle?t(n[1]):n[1])):r=k(n[1]);return{type:"link",raw:n[0],text:r,href:i,tokens:[{type:"text",raw:r,text:r}]}}},t.url=function(e,t){var n,r,i,o;if(n=this.rules.inline.url.exec(e)){if("@"===n[2])i="mailto:"+(r=k(this.options.mangle?t(n[0]):n[0]));else{for(;o=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0],o!==n[0];);r=k(n[0]),i="www."===n[1]?"http://"+r:r}return{type:"link",raw:n[0],text:r,href:i,tokens:[{type:"text",raw:r,text:r}]}}},t.inlineText=function(e,t,n){var r=this.rules.inline.text.exec(e);if(r){var i=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):k(r[0]):r[0]:k(this.options.smartypants?n(r[0]):r[0]);return{type:"text",raw:r[0],text:i}}},e}(),S={exec:function(){}},N=function(e,t){e=e.source||e,t=t||"";var n={replace:function(t,r){return r=(r=r.source||r).replace(d,"$1"),e=e.replace(t,r),n},getRegex:function(){return new RegExp(e,t)}};return n},M=w,T={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:S,table:S,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};T.def=N(T.def).replace("label",T._label).replace("title",T._title).getRegex(),T.bullet=/(?:[*+-]|\d{1,9}\.)/,T.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,T.item=N(T.item,"gm").replace(/bull/g,T.bullet).getRegex(),T.list=N(T.list).replace(/bull/g,T.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+T.def.source+")").getRegex(),T._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",T._comment=/<!--(?!-?>)[\s\S]*?-->/,T.html=N(T.html,"i").replace("comment",T._comment).replace("tag",T._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),T.paragraph=N(T._paragraph).replace("hr",T.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",T._tag).getRegex(),T.blockquote=N(T.blockquote).replace("paragraph",T.paragraph).getRegex(),T.normal=M({},T),T.gfm=M({},T.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),T.gfm.nptable=N(T.gfm.nptable).replace("hr",T.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",T._tag).getRegex(),T.gfm.table=N(T.gfm.table).replace("hr",T.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",T._tag).getRegex(),T.pedantic=M({},T.normal,{html:N("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",T._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:S,paragraph:N(T.normal._paragraph).replace("hr",T.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",T.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var F={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:S,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^_([^\s_<][\s\S]*?[^\s_])_(?!_|[^\s,punctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\s,punctuation])|^\*([^\s*<\[])\*(?!\*)|^\*([^\s<"][\s\S]*?[^\s\[\*])\*(?![\]`punctuation])|^\*([^\s*"<\[][\s\S]*[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:S,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/,_punctuation:"!\"#$%&'()*+\\-./:;<=>?@\\[^_{|}~"};F.em=N(F.em).replace(/punctuation/g,F._punctuation).getRegex(),F._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,F._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,F._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,F.autolink=N(F.autolink).replace("scheme",F._scheme).replace("email",F._email).getRegex(),F._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,F.tag=N(F.tag).replace("comment",T._comment).replace("attribute",F._attribute).getRegex(),F._label=/(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,F._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,F._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,F.link=N(F.link).replace("label",F._label).replace("href",F._href).replace("title",F._title).getRegex(),F.reflink=N(F.reflink).replace("label",F._label).getRegex(),F.normal=M({},F),F.pedantic=M({},F.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:N(/^!?\[(label)\]\((.*?)\)/).replace("label",F._label).getRegex(),reflink:N(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",F._label).getRegex()}),F.gfm=M({},F.normal,{escape:N(F.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),F.gfm.url=N(F.gfm.url,"i").replace("email",F.gfm._extended_email).getRegex(),F.breaks=M({},F.gfm,{br:N(F.br).replace("{2,}","*").getRegex(),text:N(F.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var R={block:T,inline:F},U=o.defaults,H=R.block,L=R.inline;function G(e){return e.replace(/---/g,"—").replace(/--/g,"").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1").replace(/'/g,"").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function P(e){for(var t,n="",r=e.length,i=0;i<r;i++)t=e.charCodeAt(i),.5<Math.random()&&(t="x"+t.toString(16)),n+="&#"+t+";";return n}var O=function(){function t(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||U,this.options.tokenizer=this.options.tokenizer||new D,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var t={block:H.normal,inline:L.normal};this.options.pedantic?(t.block=H.pedantic,t.inline=L.pedantic):this.options.gfm&&(t.block=H.gfm,this.options.breaks?t.inline=L.breaks:t.inline=L.gfm),this.tokenizer.rules=t}t.lex=function(e,n){return new t(n).lex(e)};var n,r,i=t.prototype;return i.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens},i.blockTokens=function(e,t,n){var r,i,o,a;for(void 0===t&&(t=[]),void 0===n&&(n=!0),e=e.replace(/^ +$/gm,"");e;)if(r=this.tokenizer.space(e))e=e.substring(r.raw.length),r.type&&t.push(r);else if(r=this.tokenizer.code(e,t))e=e.substring(r.raw.length),r.type?t.push(r):((a=t[t.length-1]).raw+="\n"+r.raw,a.text+="\n"+r.text);else if(r=this.tokenizer.fences(e))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.heading(e))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.nptable(e))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.hr(e))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.blockquote(e))e=e.substring(r.raw.length),r.tokens=this.blockTokens(r.text,[],n),t.push(r);else if(r=this.tokenizer.list(e)){for(e=e.substring(r.raw.length),o=r.items.length,i=0;i<o;i++)r.items[i].tokens=this.blockTokens(r.items[i].text,[],!1);t.push(r)}else if(r=this.tokenizer.html(e))e=e.substring(r.raw.length),t.push(r);else if(n&&(r=this.tokenizer.def(e)))e=e.substring(r.raw.length),this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title});else if(r=this.tokenizer.table(e))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.lheading(e))e=e.substring(r.raw.length),t.push(r);else if(n&&(r=this.tokenizer.paragraph(e)))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.text(e,t))e=e.substring(r.raw.length),r.type?t.push(r):((a=t[t.length-1]).raw+="\n"+r.raw,a.text+="\n"+r.text);else if(e){var s="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(s);break}throw new Error(s)}return t},i.inline=function(e){for(var t,n,r,i,o,a=e.length,s=0;s<a;s++)switch((o=e[s]).type){case"paragraph":case"text":case"heading":o.tokens=[],this.inlineTokens(o.text,o.tokens);break;case"table":for(o.tokens={header:[],cells:[]},r=o.header.length,t=0;t<r;t++)o.tokens.header[t]=[],this.inlineTokens(o.header[t],o.tokens.header[t]);for(r=o.cells.length,t=0;t<r;t++)for(i=o.cells[t],o.tokens.cells[t]=[],n=0;n<i.length;n++)o.tokens.cells[t][n]=[],this.inlineTokens(i[n],o.tokens.cells[t][n]);break;case"blockquote":this.inline(o.tokens);break;case"list":for(r=o.items.length,t=0;t<r;t++)this.inline(o.items[t].tokens)}return e},i.inlineTokens=function(e,t,n,r){var i;for(void 0===t&&(t=[]),void 0===n&&(n=!1),void 0===r&&(r=!1);e;)if(i=this.tokenizer.escape(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.tag(e,n,r))e=e.substring(i.raw.length),n=i.inLink,r=i.inRawBlock,t.push(i);else if(i=this.tokenizer.link(e))e=e.substring(i.raw.length),"link"===i.type&&(i.tokens=this.inlineTokens(i.text,[],!0,r)),t.push(i);else if(i=this.tokenizer.reflink(e,this.tokens.links))e=e.substring(i.raw.length),"link"===i.type&&(i.tokens=this.inlineTokens(i.text,[],!0,r)),t.push(i);else if(i=this.tokenizer.strong(e))e=e.substring(i.raw.length),i.tokens=this.inlineTokens(i.text,[],n,r),t.push(i);else if(i=this.tokenizer.em(e))e=e.substring(i.raw.length),i.tokens=this.inlineTokens(i.text,[],n,r),t.push(i);else if(i=this.tokenizer.codespan(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.br(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.del(e))e=e.substring(i.raw.length),i.tokens=this.inlineTokens(i.text,[],n,r),t.push(i);else if(i=this.tokenizer.autolink(e,P))e=e.substring(i.raw.length),t.push(i);else if(n||!(i=this.tokenizer.url(e,P))){if(i=this.tokenizer.inlineText(e,r,G))e=e.substring(i.raw.length),t.push(i);else if(e){var o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}throw new Error(o)}}else e=e.substring(i.raw.length),t.push(i);return t},n=t,(r=[{key:"rules",get:function(){return{block:H,inline:L}}}])&&e(n,r),t}(),z=o.defaults,Y=function(e,t,n){if(e){var r;try{r=decodeURIComponent(h(n)).replace(f,"").toLowerCase()}catch(e){return null}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return null}t&&!g.test(n)&&(n=function(e,t){p[" "+e]||(m.test(e)?p[" "+e]=e+"/":p[" "+e]=B(e,"/",!0));var n=-1===(e=p[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(I,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(y,"$1")+t:e+t}(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n},j=C,V=function(){function e(e){this.options=e||z}var t=e.prototype;return t.code=function(e,t,n){var r,i=(t||"").match(/\S*/)[0];return!this.options.highlight||null!=(r=this.options.highlight(e,i))&&r!==e&&(n=!0,e=r),i?'<pre><code class="'+this.options.langPrefix+j(i,!0)+'">'+(n?e:j(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:j(e,!0))+"</code></pre>\n"},t.blockquote=function(e){return"<blockquote>\n"+e+"</blockquote>\n"},t.html=function(e){return e},t.heading=function(e,t,n,r){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+r.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"},t.hr=function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"},t.list=function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+r+">\n"},t.listitem=function(e){return"<li>"+e+"</li>\n"},t.checkbox=function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "},t.paragraph=function(e){return"<p>"+e+"</p>\n"},t.table=function(e,t){return"<table>\n<thead>\n"+e+"</thead>\n"+(t=t&&"<tbody>"+t+"</tbody>")+"</table>\n"},t.tablerow=function(e){return"<tr>\n"+e+"</tr>\n"},t.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"},t.strong=function(e){return"<strong>"+e+"</strong>"},t.em=function(e){return"<em>"+e+"</em>"},t.codespan=function(e){return"<code>"+e+"</code>"},t.br=function(){return this.options.xhtml?"<br/>":"<br>"},t.del=function(e){return"<del>"+e+"</del>"},t.link=function(e,t,n){if(null===(e=Y(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<a href="'+j(e)+'"';return t&&(r+=' title="'+t+'"'),r+">"+n+"</a>"},t.image=function(e,t,n){if(null===(e=Y(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<img src="'+e+'" alt="'+n+'"';return t&&(r+=' title="'+t+'"'),r+(this.options.xhtml?"/>":">")},t.text=function(e){return e},e}(),K=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return""+n},t.image=function(e,t,n){return""+n},t.br=function(){return""},e}(),q=function(){function e(){this.seen={}}return e.prototype.slug=function(e){var t=e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t))for(var n=t;this.seen[n]++,t=n+"-"+this.seen[n],this.seen.hasOwnProperty(t););return this.seen[t]=0,t},e}(),J=o.defaults,W=E,X=function(){function e(e){this.options=e||J,this.options.renderer=this.options.renderer||new V,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new K,this.slugger=new q}e.parse=function(t,n){return new e(n).parse(t)};var t=e.prototype;return t.parse=function(e,t){void 0===t&&(t=!0);for(var n,r,i,o,a,s,A,l,u,c,h,d,f,g,p,m,I,y="",B=e.length,C=0;C<B;C++)switch((u=e[C]).type){case"space":continue;case"hr":y+=this.renderer.hr();continue;case"heading":y+=this.renderer.heading(this.parseInline(u.tokens),u.depth,W(this.parseInline(u.tokens,this.textRenderer)),this.slugger);continue;case"code":y+=this.renderer.code(u.text,u.lang,u.escaped);continue;case"table":for(s=A="",i=u.header.length,n=0;n<i;n++)s+=this.renderer.tablecell(this.parseInline(u.tokens.header[n]),{header:!0,align:u.align[n]});for(A+=this.renderer.tablerow(s),l="",i=u.cells.length,n=0;n<i;n++){for(s="",o=(a=u.tokens.cells[n]).length,r=0;r<o;r++)s+=this.renderer.tablecell(this.parseInline(a[r]),{header:!1,align:u.align[r]});l+=this.renderer.tablerow(s)}y+=this.renderer.table(A,l);continue;case"blockquote":l=this.parse(u.tokens),y+=this.renderer.blockquote(l);continue;case"list":for(c=u.ordered,h=u.start,d=u.loose,i=u.items.length,l="",n=0;n<i;n++)p=(g=u.items[n]).checked,m=g.task,f="",g.task&&(I=this.renderer.checkbox(p),d?0<g.tokens.length&&"text"===g.tokens[0].type?(g.tokens[0].text=I+" "+g.tokens[0].text,g.tokens[0].tokens&&0<g.tokens[0].tokens.length&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=I+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:I}):f+=I),f+=this.parse(g.tokens,d),l+=this.renderer.listitem(f,m,p);y+=this.renderer.list(l,c,h);continue;case"html":y+=this.renderer.html(u.text);continue;case"paragraph":y+=this.renderer.paragraph(this.parseInline(u.tokens));continue;case"text":for(l=u.tokens?this.parseInline(u.tokens):u.text;C+1<B&&"text"===e[C+1].type;)l+="\n"+((u=e[++C]).tokens?this.parseInline(u.tokens):u.text);y+=t?this.renderer.paragraph(l):l;continue;default:var E='Token with "'+u.type+'" type was not found.';if(this.options.silent)return void console.error(E);throw new Error(E)}return y},t.parseInline=function(e,t){t=t||this.renderer;for(var n,r="",i=e.length,o=0;o<i;o++)switch((n=e[o]).type){case"escape":r+=t.text(n.text);break;case"html":r+=t.html(n.text);break;case"link":r+=t.link(n.href,n.title,this.parseInline(n.tokens,t));break;case"image":r+=t.image(n.href,n.title,n.text);break;case"strong":r+=t.strong(this.parseInline(n.tokens,t));break;case"em":r+=t.em(this.parseInline(n.tokens,t));break;case"codespan":r+=t.codespan(n.text);break;case"br":r+=t.br();break;case"del":r+=t.del(this.parseInline(n.tokens,t));break;case"text":r+=t.text(n.text);break;default:var a='Token with "'+n.type+'" type was not found.';if(this.options.silent)return void console.error(a);throw new Error(a)}return r},e}(),Z=w,$=function(e){e&&e.sanitize&&!e.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")},ee=C,te=o.getDefaults,ne=o.changeDefaults,re=o.defaults;function ie(e,t,n){if(null==e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if("function"==typeof t&&(n=t,t=null),t=Z({},ie.defaults,t||{}),$(t),n){var r,i=t.highlight;try{r=O.lex(e,t)}catch(e){return n(e)}var o=function(e){var o;if(!e)try{o=X.parse(r,t)}catch(o){e=o}return t.highlight=i,e?n(e):n(null,o)};if(!i||i.length<3)return o();if(delete t.highlight,!r.length)return o();var a=0;return ie.walkTokens(r,(function(e){"code"===e.type&&(a++,i(e.text,e.lang,(function(t,n){return t?o(t):(null!=n&&n!==e.text&&(e.text=n,e.escaped=!0),void(0==--a&&o()))})))})),void(0===a&&o())}try{var s=O.lex(e,t);return t.walkTokens&&ie.walkTokens(s,t.walkTokens),X.parse(s,t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",t.silent)return"<p>An error occurred:</p><pre>"+ee(e.message+"",!0)+"</pre>";throw e}}return ie.options=ie.setOptions=function(e){return Z(ie.defaults,e),ne(ie.defaults),ie},ie.getDefaults=te,ie.defaults=re,ie.use=function(e){var t,n=Z({},e);e.renderer&&function(){var t=ie.defaults.renderer||new V;for(var r in e.renderer)!function(n){var r=t[n];t[n]=function(){for(var i=arguments.length,o=new Array(i),a=0;a<i;a++)o[a]=arguments[a];var s=e.renderer[n].apply(t,o);return!1===s&&(s=r.apply(t,o)),s}}(r);n.renderer=t}(),e.tokenizer&&function(){var t=ie.defaults.tokenizer||new D;for(var r in e.tokenizer)!function(n){var r=t[n];t[n]=function(){for(var i=arguments.length,o=new Array(i),a=0;a<i;a++)o[a]=arguments[a];var s=e.tokenizer[n].apply(t,o);return!1===s&&(s=r.apply(t,o)),s}}(r);n.tokenizer=t}(),e.walkTokens&&(t=ie.defaults.walkTokens,n.walkTokens=function(n){e.walkTokens(n),t&&t(n)}),ie.setOptions(n)},ie.walkTokens=function(e,t){for(var r,i=n(e);!(r=i()).done;){var o=r.value;switch(t(o),o.type){case"table":for(var a,s=n(o.tokens.header);!(a=s()).done;){var A=a.value;ie.walkTokens(A,t)}for(var l,u=n(o.tokens.cells);!(l=u()).done;)for(var c,h=n(l.value);!(c=h()).done;){var d=c.value;ie.walkTokens(d,t)}break;case"list":ie.walkTokens(o.items,t);break;default:o.tokens&&ie.walkTokens(o.tokens,t)}}},ie.Parser=X,ie.parser=X.parse,ie.Renderer=V,ie.TextRenderer=K,ie.Lexer=O,ie.lexer=O.lex,ie.Tokenizer=D,ie.Slugger=q,ie.parse=ie}()},195:function(e,t){e.exports=null},205:function(e,t){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},214:function(e,t,n){e.exports=function(){"use strict";var e,t="undefined"==typeof document?void 0:document,n=!!t&&"content"in t.createElement("template"),r=!!t&&t.createRange&&"createContextualFragment"in t.createRange();function i(i){return i=i.trim(),n?function(e){var n=t.createElement("template");return n.innerHTML=e,n.content.childNodes[0]}(i):r?function(n){return e||(e=t.createRange()).selectNode(t.body),e.createContextualFragment(n).childNodes[0]}(i):function(e){var n=t.createElement("body");return n.innerHTML=e,n.childNodes[0]}(i)}function o(e,t){var n,r,i=e.nodeName,o=t.nodeName;return i===o||(n=i.charCodeAt(0),r=o.charCodeAt(0),n<=90&&r>=97?i===o.toUpperCase():r<=90&&n>=97&&o===i.toUpperCase())}function a(e,t,n){e[n]!==t[n]&&(e[n]=t[n],e[n]?e.setAttribute(n,""):e.removeAttribute(n))}var s={OPTION:function(e,t){var n=e.parentNode;if(n){var r=n.nodeName.toUpperCase();"OPTGROUP"===r&&(r=(n=n.parentNode)&&n.nodeName.toUpperCase()),"SELECT"!==r||n.hasAttribute("multiple")||(e.hasAttribute("selected")&&!t.selected&&(e.setAttribute("selected","selected"),e.removeAttribute("selected")),n.selectedIndex=-1)}a(e,t,"selected")},INPUT:function(e,t){a(e,t,"checked"),a(e,t,"disabled"),e.value!==t.value&&(e.value=t.value),t.hasAttribute("value")||e.removeAttribute("value")},TEXTAREA:function(e,t){var n=t.value;e.value!==n&&(e.value=n);var r=e.firstChild;if(r){var i=r.nodeValue;if(i==n||!n&&i==e.placeholder)return;r.nodeValue=n}},SELECT:function(e,t){if(!t.hasAttribute("multiple")){for(var n,r,i=-1,o=0,a=e.firstChild;a;)if("OPTGROUP"===(r=a.nodeName&&a.nodeName.toUpperCase()))a=(n=a).firstChild;else{if("OPTION"===r){if(a.hasAttribute("selected")){i=o;break}o++}!(a=a.nextSibling)&&n&&(a=n.nextSibling,n=null)}e.selectedIndex=i}}};function A(){}function l(e){if(e)return e.getAttribute&&e.getAttribute("id")||e.id}return function(e){return function(n,r,a){if(a||(a={}),"string"==typeof r)if("#document"===n.nodeName||"HTML"===n.nodeName||"BODY"===n.nodeName){var u=r;(r=t.createElement("html")).innerHTML=u}else r=i(r);var c=a.getNodeKey||l,h=a.onBeforeNodeAdded||A,d=a.onNodeAdded||A,f=a.onBeforeElUpdated||A,g=a.onElUpdated||A,p=a.onBeforeNodeDiscarded||A,m=a.onNodeDiscarded||A,I=a.onBeforeElChildrenUpdated||A,y=!0===a.childrenOnly,B=Object.create(null),C=[];function E(e){C.push(e)}function w(e,t,n){!1!==p(e)&&(t&&t.removeChild(e),m(e),function e(t,n){if(1===t.nodeType)for(var r=t.firstChild;r;){var i=void 0;n&&(i=c(r))?E(i):(m(r),r.firstChild&&e(r,n)),r=r.nextSibling}}(e,n))}function v(e){d(e);for(var t=e.firstChild;t;){var n=t.nextSibling,r=c(t);if(r){var i=B[r];i&&o(t,i)?(t.parentNode.replaceChild(i,t),b(i,t)):v(t)}else v(t);t=n}}function b(n,r,i){var a=c(r);if(a&&delete B[a],!i){if(!1===f(n,r))return;if(e(n,r),g(n),!1===I(n,r))return}"TEXTAREA"!==n.nodeName?function(e,n){var r,i,a,A,l,u=n.firstChild,d=e.firstChild;e:for(;u;){for(A=u.nextSibling,r=c(u);d;){if(a=d.nextSibling,u.isSameNode&&u.isSameNode(d)){u=A,d=a;continue e}i=c(d);var f=d.nodeType,g=void 0;if(f===u.nodeType&&(1===f?(r?r!==i&&((l=B[r])?a===l?g=!1:(e.insertBefore(l,d),i?E(i):w(d,e,!0),d=l):g=!1):i&&(g=!1),(g=!1!==g&&o(d,u))&&b(d,u)):3!==f&&8!=f||(g=!0,d.nodeValue!==u.nodeValue&&(d.nodeValue=u.nodeValue))),g){u=A,d=a;continue e}i?E(i):w(d,e,!0),d=a}if(r&&(l=B[r])&&o(l,u))e.appendChild(l),b(l,u);else{var p=h(u);!1!==p&&(p&&(u=p),u.actualize&&(u=u.actualize(e.ownerDocument||t)),e.appendChild(u),v(u))}u=A,d=a}!function(e,t,n){for(;t;){var r=t.nextSibling;(n=c(t))?E(n):w(t,e,!0),t=r}}(e,d,i);var m=s[e.nodeName];m&&m(e,n)}(n,r):s.TEXTAREA(n,r)}!function e(t){if(1===t.nodeType||11===t.nodeType)for(var n=t.firstChild;n;){var r=c(n);r&&(B[r]=n),e(n),n=n.nextSibling}}(n);var Q,k,x=n,_=x.nodeType,D=r.nodeType;if(!y)if(1===_)1===D?o(n,r)||(m(n),x=function(e,t){for(var n=e.firstChild;n;){var r=n.nextSibling;t.appendChild(n),n=r}return t}(n,(Q=r.nodeName,(k=r.namespaceURI)&&"http://www.w3.org/1999/xhtml"!==k?t.createElementNS(k,Q):t.createElement(Q)))):x=r;else if(3===_||8===_){if(D===_)return x.nodeValue!==r.nodeValue&&(x.nodeValue=r.nodeValue),x;x=r}if(x===r)m(n);else{if(r.isSameNode&&r.isSameNode(x))return;if(b(x,r,y),C)for(var S=0,N=C.length;S<N;S++){var M=B[C[S]];M&&w(M,M.parentNode,!1)}}return!y&&x!==n&&n.parentNode&&(x.actualize&&(x=x.actualize(n.ownerDocument||t)),n.parentNode.replaceChild(x,n)),x}}((function(e,t){var n,r,i,o,a=t.attributes;if(11!==t.nodeType&&11!==e.nodeType){for(var s=a.length-1;s>=0;s--)r=(n=a[s]).name,i=n.namespaceURI,o=n.value,i?(r=n.localName||r,e.getAttributeNS(i,r)!==o&&("xmlns"===n.prefix&&(r=n.name),e.setAttributeNS(i,r,o))):e.getAttribute(r)!==o&&e.setAttribute(r,o);for(var A=e.attributes,l=A.length-1;l>=0;l--)r=(n=A[l]).name,(i=n.namespaceURI)?(r=n.localName||r,t.hasAttributeNS(i,r)||e.removeAttributeNS(i,r)):t.hasAttribute(r)||e.removeAttribute(r)}}))}()},215:function(e,t){!function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=3)}([function(e,t,n){"use strict";function r(e,t){for(var n in e)e.hasOwnProperty(n)&&t(n,e[n])}var i=!1;try{var o=Object.defineProperty({},"passive",{get:function(){i=!0}});window.addEventListener("test",null,o)}catch(e){}e.exports.event=function(e,t,n,r){var o="on"==r?"add":"remove";t.split(" ").forEach((function(t){var r=!1;-1!=["scroll","touchstart","touchmove"].indexOf(t)&&i&&(r={passive:!0}),e[o+"EventListener"](t,n,r)}))},e.exports.css=function(e,t,n){var i;if(void 0===n){if("string"==typeof t)return e.style[t];i=t}else(i={})[t]=n;r(i,(function(t,n){e.style[t]=n}))},e.exports.add=function(e,t){t&&e.classList.add(t)},e.exports.rm=function(e,t){t&&e.classList.remove(t)},e.exports.has=function(e,t){return!!t&&e.classList.contains(t)},e.exports.clone=function(e){var t={};return r(e||{},(function(e,n){t[e]=n})),t},e.exports.qs=function(e,t){return e instanceof HTMLElement?e:(t||document).querySelector(e)},e.exports.each=r},function(e,t,n){"use strict";function r(e){var t,n,r=e&&e[0]||e,i="string"==typeof e||r instanceof HTMLElement?{root:e}:p(e),o={direction:"v",barOnCls:"_scrollbar",resizeDebounce:0,event:c,cssGuru:!1,impact:"scroller",position:"static"};for(var A in i=i||{},o)null==i[A]&&(i[A]=o[A]);t=this&&this instanceof u.jQuery,i._chain?n=i.root:t?i.root=n=this[0]:n=m(i.root||i.scroller);var l=a(n,i.direction),h=+l;if(i.index=h,h==h&&null!==l&&B[h])return B[h];i.root&&i.scroller?i.scroller=m(i.scroller,n):i.scroller=n,i.root=n;var d=s(i);return d.autoUpdate&&d.autoUpdate(),d}function i(){return(new Date).getTime()}function o(e,t,n){e._eventHandlers=e._eventHandlers||[{element:e.scroller,handler:function(t){e.scroll(t)},type:"scroll"},{element:e.root,handler:function(){e.update()},type:"transitionend animationend"},{element:e.scroller,handler:function(){e.update()},type:"keyup"},{element:e.bar,handler:function(t){t.preventDefault(),e.selection(),e.drag.now=1,e.draggingCls&&d(e.root,e.draggingCls)},type:"touchstart mousedown"},{element:document,handler:function(){e.selection(1),e.drag.now=0,e.draggingCls&&g(e.root,e.draggingCls)},type:"mouseup blur touchend"},{element:document,handler:function(t){2!=t.button&&e._pos0(t)},type:"touchstart mousedown"},{element:document,handler:function(t){e.drag.now&&e.drag(t)},type:"mousemove touchmove"},{element:u,handler:function(){e.update()},type:"resize"},{element:e.root,handler:function(){e.update()},type:"sizeChange"},{element:e.clipper,handler:function(){e.clipperOnScroll()},type:"scroll"}],function(e,t){var n=0,r=e;for(void 0!==r.length&&r!==u||(r=[r]);r[n];)t.call(this,r[n],n),n++}(e._eventHandlers,(function(e){if(e.element)if(e.element.length&&e.element!==u)for(var r=0;r<e.element.length;r++)t(e.element[r],e.type,e.handler,n);else t(e.element,e.type,e.handler,n)}))}function a(e,t,n,r){var i="data-baron-"+t+"-id";return"on"==n?e.setAttribute(i,r):"off"==n&&e.removeAttribute(i),e.getAttribute(i)}function s(e){var t=new r.prototype.constructor(e);return o(t,e.event,"on"),a(t.root,e.direction,"on",B.length),B.push(t),t.update(),t}function A(e){if(this.events&&this.events[e])for(var t=0;t<this.events[e].length;t++){var n=Array.prototype.slice.call(arguments,1);this.events[e][t].apply(this,n)}}var l=function(){return this||(0,eval)("this")}(),u=l&&l.window||l,c=n(0).event,h=n(0).css,d=n(0).add,f=n(0).has,g=n(0).rm,p=n(0).clone,m=n(0).qs,I=r,y=["left","top","right","bottom","width","height"],B=[],C={v:{x:"Y",pos:y[1],oppos:y[3],crossPos:y[0],crossOpPos:y[2],size:y[5],crossSize:y[4],crossMinSize:"min-"+y[4],crossMaxSize:"max-"+y[4],client:"clientHeight",crossClient:"clientWidth",scrollEdge:"scrollLeft",offset:"offsetHeight",crossOffset:"offsetWidth",offsetPos:"offsetTop",scroll:"scrollTop",scrollSize:"scrollHeight"},h:{x:"X",pos:y[0],oppos:y[2],crossPos:y[1],crossOpPos:y[3],size:y[4],crossSize:y[5],crossMinSize:"min-"+y[5],crossMaxSize:"max-"+y[5],client:"clientWidth",crossClient:"clientHeight",scrollEdge:"scrollTop",offset:"offsetWidth",crossOffset:"offsetHeight",offsetPos:"offsetLeft",scroll:"scrollLeft",scrollSize:"scrollWidth"}},E=/[\s\S]*Macintosh[\s\S]*\) Gecko[\s\S]*/.test(u.navigator&&u.navigator.userAgent);r.prototype={_debounce:function(e,t){var n,r,o=this,a=function(){if(o._disposed)return clearTimeout(n),void(n=o=null);var s=i()-r;s<t&&s>=0?n=setTimeout(a,t-s):(n=null,e())};return function(){r=i(),n||(n=setTimeout(a,t))}},constructor:function(e){function t(e){var t=this.barMinSize||20,n=e;n>0&&n<t&&(n=t),this.bar&&h(this.bar,this.origin.size,parseInt(n,10)+"px")}function n(e){if(this.bar){var t=h(this.bar,this.origin.pos),n=+e+"px";n&&n!=t&&h(this.bar,this.origin.pos,n)}}function r(){return p[this.origin.client]-this.barTopLimit-this.bar[this.origin.offset]}function o(e){return e*r.call(this)+this.barTopLimit}function a(e){return(e-this.barTopLimit)/r.call(this)}function s(){return!1}var l,c,p,I,y,B,w;if(B=i(),this.params=e,this.event=e.event,this.events={},this.root=e.root,this.scroller=m(e.scroller),this.bar=m(e.bar,this.root),p=this.track=m(e.track,this.root),!this.track&&this.bar&&(p=this.bar.parentNode),this.clipper=this.scroller.parentNode,this.direction=e.direction,this.rtl=e.rtl,this.origin=C[this.direction],this.barOnCls=e.barOnCls,this.scrollingCls=e.scrollingCls,this.draggingCls=e.draggingCls,this.impact=e.impact,this.position=e.position,this.rtl=e.rtl,this.barTopLimit=0,this.resizeDebounce=e.resizeDebounce,this.cursor=function(e){return e["client"+this.origin.x]||(((e.originalEvent||e).touches||{})[0]||{})["page"+this.origin.x]},this.pos=function(e){var t="page"+this.origin.x+"Offset",n=this.scroller[t]?t:this.origin.scroll;return void 0!==e&&(this.scroller[n]=e),this.scroller[n]},this.rpos=function(e){var t=this.scroller[this.origin.scrollSize]-this.scroller[this.origin.client];return(e?this.pos(e*t):this.pos())/(t||1)},this.barOn=function(e){if(this.barOnCls){var t=this.scroller[this.origin.client]>=this.scroller[this.origin.scrollSize];e||t?f(this.root,this.barOnCls)&&g(this.root,this.barOnCls):f(this.root,this.barOnCls)||d(this.root,this.barOnCls)}},this._pos0=function(e){c=this.cursor(e)-l},this.drag=function(e){var t=a.call(this,this.cursor(e)-c),n=this.scroller[this.origin.scrollSize]-this.scroller[this.origin.client];this.scroller[this.origin.scroll]=t*n},this.selection=function(e){this.event(document,"selectpos selectstart",s,e?"off":"on")},this.resize=function(){function e(){var e,n=t.scroller[t.origin.crossOffset],r=t.scroller[t.origin.crossClient],o=0;if(E?o=15:r>0&&0===n&&(n=r+17),n)if(t.barOn(),"scroller"==t.impact){var a=n-r+o;if("static"==t.position)h(t.scroller,t.origin.crossSize)!=(e=t.clipper[t.origin.crossClient]+a+"px")&&t._setCrossSizes(t.scroller,e);else{var s={},l=t.rtl?"Left":"Right";"h"==t.direction&&(l="Bottom"),s["padding"+l]=a+"px",h(t.scroller,s)}}else h(t.clipper,t.origin.crossSize)!=(e=r+"px")&&t._setCrossSizes(t.clipper,e);Array.prototype.unshift.call(arguments,"resize"),A.apply(t,arguments),B=i()}var t=this,n=void 0===t.resizeDebounce?300:t.resizeDebounce,r=0;i()-B<n&&(clearTimeout(I),r=n),r?I=setTimeout(e,r):e()},this.updatePositions=function(e){var r,i=this;i.bar&&(r=(p[i.origin.client]-i.barTopLimit)*i.scroller[i.origin.client]/i.scroller[i.origin.scrollSize],(e||parseInt(w,10)!=parseInt(r,10))&&(t.call(i,r),w=r),l=o.call(i,i.rpos()),n.call(i,l)),Array.prototype.unshift.call(arguments,"scroll"),A.apply(i,arguments)},this.scroll=function(){var e=this;e.updatePositions(),e.scrollingCls&&(y||d(e.root,e.scrollingCls),clearTimeout(y),y=setTimeout((function(){g(e.root,e.scrollingCls),y=void 0}),300))},this.clipperOnScroll=function(){this.rtl?this.clipper[this.origin.scrollEdge]=this.clipper[this.origin.scrollSize]:this.clipper[this.origin.scrollEdge]=0},this._setCrossSizes=function(e,t){var n={};n[this.origin.crossSize]=t,n[this.origin.crossMinSize]=t,n[this.origin.crossMaxSize]=t,h(e,n)},this._dumbCss=function(t){if(!e.cssGuru){var n=t?"hidden":null,r=t?"none":null;h(this.clipper,{overflow:n,msOverflowStyle:r,position:"static"==this.position?"":"relative"});var i=t?"scroll":null,o={};o["overflow-"+("v"==this.direction?"y":"x")]=i,o["box-sizing"]="border-box",o.margin="0",o.border="0","absolute"==this.position&&(o.position="absolute",o.top="0","h"==this.direction?o.left=o.right="0":(o.bottom="0",o.right=this.rtl?"0":"",o.left=this.rtl?"":"0")),h(this.scroller,o)}},this._dumbCss(!0),E){var v="paddingRight",b={},Q=u.getComputedStyle(this.scroller)[[v]];"h"==e.direction?v="paddingBottom":e.rtl&&(v="paddingLeft");var k=parseInt(Q,10);k!=k&&(k=0),b[v]=15+k+"px",h(this.scroller,b)}return this},update:function(e){return A.call(this,"upd",e),this.resize(1),this.updatePositions(1),this},dispose:function(){o(this,this.event,"off"),a(this.root,this.params.direction,"off"),"v"==this.params.direction?this._setCrossSizes(this.scroller,""):this._setCrossSizes(this.clipper,""),this._dumbCss(!1),this.barOn(!0),A.call(this,"dispose"),B[this.params.index]=null,this.params=null,this._disposed=!0},on:function(e,t,n){for(var r=e.split(" "),i=0;i<r.length;i++)"init"==r[i]?t.call(this,n):(this.events[r[i]]=this.events[r[i]]||[],this.events[r[i]].push((function(e){t.call(this,e||n)})))},baron:function(e){return e.root=this.params.root,e.scroller=this.params.scroller,e.direction="v"==this.params.direction?"h":"v",e._chain=!0,r(e)}},r.prototype.constructor.prototype=r.prototype,r.noConflict=function(){return u.baron=I,r},r.version="3.0.1",r.prototype.autoUpdate=n(2)(u),r.prototype.fix=n(5),r.prototype.controls=n(4),e.exports=r},function(e,t,n){"use strict";function r(e){function t(){i.root[i.origin.offset]?n():r||(r=setInterval((function(){i.root[i.origin.offset]&&(n(),i.update())}),300))}function n(){clearInterval(r),r=null}var r,i=this;if(!this._au){var o=i._debounce((function(){i.update()}),300);this._observer=new e((function(){t(),i.update(),o()})),this.on("init",(function(){i._observer.observe(i.root,{childList:!0,subtree:!0,characterData:!0}),t()})),this.on("dispose",(function(){i._observer.disconnect(),n(),delete i._observer})),this._au=!0}}e.exports=function(e){var t=e.MutationObserver||e.WebKitMutationObserver||e.MozMutationObserver||null;return function(){return t?(r.call(this,t),this):this}}},function(e,t,n){var r=n(1);window.baron=r,window.jQuery&&window.jQuery.fn&&(window.jQuery.fn.baron=r)},function(e,t,n){"use strict";var r=n(0).qs;e.exports=function(e){var t,n,i,o=this;n=e.screen||.9,e.forward&&(i={element:r(e.forward,this.clipper),handler:function(){var t=o.pos()+(e.delta||30);o.pos(t)},type:"click"},this._eventHandlers.push(i),this.event(i.element,i.type,i.handler,"on")),e.backward&&(i={element:r(e.backward,this.clipper),handler:function(){var t=o.pos()-(e.delta||30);o.pos(t)},type:"click"},this._eventHandlers.push(i),this.event(i.element,i.type,i.handler,"on")),e.track&&(t=!0===e.track?this.track:r(e.track,this.clipper))&&(i={element:t,handler:function(e){if(e.target==t){var r=e["offset"+o.origin.x],i=o.bar[o.origin.offsetPos],a=0;r<i?a=-1:r>i+o.bar[o.origin.offset]&&(a=1);var s=o.pos()+a*n*o.scroller[o.origin.client];o.pos(s)}},type:"mousedown"},this._eventHandlers.push(i),this.event(i.element,i.type,i.handler,"on"))}},function(e,t,n){"use strict";var r=(n(6),n(0).css),i=n(0).add,o=n(0).rm;e.exports=function(e){function t(e,t,n){var a=t,u=1==n?"pos":"oppos";A<(l.minView||0)&&(a=void 0),r(s[e],this.origin.pos,""),r(s[e],this.origin.oppos,""),o(s[e],l.outside),void 0!==a&&(a+="px",r(s[e],this.origin[u],a),i(s[e],l.outside))}function n(e){try{var t=document.createEvent("WheelEvent");t.initWebKitWheelEvent(e.originalEvent.wheelDeltaX,e.originalEvent.wheelDeltaY),d.dispatchEvent(t),e.preventDefault()}catch(e){}}function a(e){var t;for(var i in e)l[i]=e[i];if(l.elements instanceof HTMLElement?s=[l.elements]:"string"==typeof l.elements?s=this.scroller.querySelectorAll(l.elements):l.elements&&l.elements[0]instanceof HTMLElement&&(s=l.elements),s){A=this.scroller[this.origin.client];for(var o=0;o<s.length;o++)(t={})[this.origin.size]=s[o][this.origin.offset]+"px",s[o].parentNode!==this.scroller&&r(s[o].parentNode,t),(t={})[this.origin.crossSize]=s[o].parentNode[this.origin.crossClient]+"px",r(s[o],t),A-=s[o][this.origin.offset],h[o]=s[o].parentNode[this.origin.offsetPos],u[o]=u[o-1]||0,c[o]=c[o-1]||Math.min(h[o],0),s[o-1]&&(u[o]+=s[o-1][this.origin.offset],c[o]+=s[o-1][this.origin.offset]),0==o&&0==h[o]||(this.event(s[o],"mousewheel",n,"off"),this.event(s[o],"mousewheel",n));l.limiter&&s[0]&&(this.track&&this.track!=this.scroller?((t={})[this.origin.pos]=s[0].parentNode[this.origin.offset]+"px",r(this.track,t)):this.barTopLimit=s[0].parentNode[this.origin.offset],this.scroll()),!1===l.limiter&&(this.barTopLimit=0)}var a={element:s,handler:function(){for(var e,t=this.parentNode.offsetTop,n=0;n<s.length;n++)s[n]===this&&(e=n);var r=t-u[e];l.scroll?l.scroll({x1:g.scroller.scrollTop,x2:r}):g.scroller.scrollTop=r},type:"click"};if(l.clickable){this._eventHandlers.push(a);for(var d=0;d<a.element.length;d++)f(a.element[d],a.type,a.handler,"on")}}var s,A,l={outside:"",inside:"",before:"",after:"",past:"",future:"",radius:0,minView:0},u=[],c=[],h=[],d=this.scroller,f=this.event,g=this;this.on("init",a,e);var p=[],m=[];return this.on("init scroll",(function(){var e,n,r,a;if(s){var d;for(a=0;a<s.length;a++)e=0,h[a]-this.pos()<c[a]+l.radius?(e=1,n=u[a]):h[a]-this.pos()>c[a]+A-l.radius?(e=2,n=this.scroller[this.origin.client]-s[a][this.origin.offset]-u[a]-A):(e=3,n=void 0),r=!1,(h[a]-this.pos()<c[a]||h[a]-this.pos()>c[a]+A)&&(r=!0),e==p[a]&&r==m[a]||(t.call(this,a,n,e),p[a]=e,m[a]=r,d=!0);if(d)for(a=0;a<s.length;a++)1==p[a]&&l.past&&(i(s[a],l.past),o(s[a],l.future)),2==p[a]&&l.future&&(i(s[a],l.future),o(s[a],l.past)),3==p[a]&&(o(s[a],l.past),o(s[a],l.future),i(s[a],l.inside)),p[a]!=p[a+1]&&1==p[a]?(i(s[a],l.before),o(s[a],l.after)):p[a]!=p[a-1]&&2==p[a]?(i(s[a],l.after),o(s[a],l.before)):(o(s[a],l.before),o(s[a],l.after)),l.grad&&(m[a]?i(s[a],l.grad):o(s[a],l.grad))}})),this.on("resize upd",(function(e){a.call(this,e&&e.fix)})),this}},function(e,t){e.exports=function(e,t,n){var r=console[e]||console.log,i=["Baron: "+t,n];Function.prototype.apply.call(r,console,i)}}]),e.exports=baron,delete window.baron},216:function(e,t,n){var r=n(205),i=n(300),o=n(302),a=Math.max,s=Math.min;e.exports=function(e,t,n){var A,l,u,c,h,d,f=0,g=!1,p=!1,m=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function I(t){var n=A,r=l;return A=l=void 0,f=t,c=e.apply(r,n)}function y(e){return f=e,h=setTimeout(C,t),g?I(e):c}function B(e){var n=e-d;return void 0===d||n>=t||n<0||p&&e-f>=u}function C(){var e=i();if(B(e))return E(e);h=setTimeout(C,function(e){var n=t-(e-d);return p?s(n,u-(e-f)):n}(e))}function E(e){return h=void 0,m&&A?I(e):(A=l=void 0,c)}function w(){var e=i(),n=B(e);if(A=arguments,l=this,d=e,n){if(void 0===h)return y(d);if(p)return clearTimeout(h),h=setTimeout(C,t),I(d)}return void 0===h&&(h=setTimeout(C,t)),c}return t=o(t)||0,r(n)&&(g=!!n.leading,u=(p="maxWait"in n)?a(o(n.maxWait)||0,t):u,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==h&&clearTimeout(h),f=0,A=d=l=h=void 0},w.flush=function(){return void 0===h?c:E(i())},w}},217:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.HandlebarsEnvironment=u;var i=n(56),o=r(n(79)),a=n(218),s=n(283),A=r(n(219)),l=n(220);t.VERSION="4.7.6";t.COMPILER_REVISION=8;t.LAST_COMPATIBLE_COMPILER_REVISION=7;t.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};function u(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},a.registerDefaultHelpers(this),s.registerDefaultDecorators(this)}u.prototype={constructor:u,logger:A.default,log:A.default.log,registerHelper:function(e,t){if("[object Object]"===i.toString.call(e)){if(t)throw new o.default("Arg not supported with multiple helpers");i.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if("[object Object]"===i.toString.call(e))i.extend(this.partials,e);else{if(void 0===t)throw new o.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if("[object Object]"===i.toString.call(e)){if(t)throw new o.default("Arg not supported with multiple decorators");i.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){l.resetLoggedProperties()}};var c=A.default.log;t.log=c,t.createFrame=i.createFrame,t.logger=A.default},218:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.registerDefaultHelpers=function(e){i.default(e),o.default(e),a.default(e),s.default(e),A.default(e),l.default(e),u.default(e)},t.moveHelperToHooks=function(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])};var i=r(n(276)),o=r(n(277)),a=r(n(278)),s=r(n(279)),A=r(n(280)),l=r(n(281)),u=r(n(282))},219:function(e,t,n){"use strict";t.__esModule=!0;var r=n(56),i={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if("string"==typeof e){var t=r.indexOf(i.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=i.lookupLevel(e),"undefined"!=typeof console&&i.lookupLevel(i.level)<=e){var t=i.methodMap[e];console[t]||(t="log");for(var n=arguments.length,r=Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];console[t].apply(console,r)}}};t.default=i,e.exports=t.default},220:function(e,t,n){"use strict";t.__esModule=!0,t.createProtoAccessControl=function(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var n=Object.create(null);return n.__proto__=!1,{properties:{whitelist:r.createNewLookupObject(n,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:r.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}},t.resultIsAllowed=function(e,t,n){return a("function"==typeof e?t.methods:t.properties,n)},t.resetLoggedProperties=function(){Object.keys(o).forEach((function(e){delete o[e]}))};var r=n(285),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(219)),o=Object.create(null);function a(e,t){return void 0!==e.whitelist[t]?!0===e.whitelist[t]:void 0!==e.defaultValue?e.defaultValue:(function(e){!0!==o[e]&&(o[e]=!0,i.log("error",'Handlebars: Access has been denied to resolve the property "'+e+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details'))}(t),!1)}},221:function(e,t,n){"use strict";n.r(t),t.default='var Module=typeof self!=="undefined"&&typeof self.Module!=="undefined"?self.Module:{};var jsModule=Module;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort()}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}var asm2wasmImports={"f64-rem":function(x,y){return x%y},"debugger":function(){}};var functionPointers=new Array(0);var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime;if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(typeof WebAssembly!=="object"){err("no native wasm support detected")}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":9,"maximum":9,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var ALLOC_NORMAL=0;var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(u8Array[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=u8Array[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|u8Array[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var DYNAMIC_BASE=5248512,DYNAMICTOP_PTR=5440;var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147418112/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";throw new WebAssembly.RuntimeError(what)}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="argon2.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at \'"+wasmBinaryFile+"\'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_unstable":asmLibraryArg,"global":{"NaN":NaN,Infinity:Infinity},"global.Math":Math,"asm2wasm":asm2wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){Module=jsModule;if(typeof self!=="undefined")self.Module=Module;receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}Module["asm"]=createWasm;var tempDouble;var tempI64;function _emscripten_get_heap_size(){return HEAP8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(requestedSize>LIMIT){return false}var MIN_TOTAL_MEMORY=16777216;var newSize=Math.max(oldSize,MIN_TOTAL_MEMORY);while(newSize<requestedSize){if(newSize<=536870912){newSize=alignUp(2*newSize,PAGE_MULTIPLE)}else{newSize=Math.min(alignUp((3*newSize+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}newSize=Math.min(newSize,2147418112);if(newSize==oldSize){return false}var replacement=emscripten_realloc_buffer(newSize);if(!replacement){return false}return true}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _pthread_join(){}var asmGlobalArg={};var asmLibraryArg={"__memory_base":1024,"__table_base":0,"e":_emscripten_get_heap_size,"d":_emscripten_memcpy_big,"c":_emscripten_resize_heap,"b":_pthread_join,"a":abort,"memory":wasmMemory,"table":wasmTable};var asm=Module["asm"](asmGlobalArg,asmLibraryArg,buffer);Module["asm"]=asm;var _argon2_error_message=Module["_argon2_error_message"]=function(){return Module["asm"]["f"].apply(null,arguments)};var _argon2_hash=Module["_argon2_hash"]=function(){return Module["asm"]["g"].apply(null,arguments)};var _argon2_verify=Module["_argon2_verify"]=function(){return Module["asm"]["h"].apply(null,arguments)};var _free=Module["_free"]=function(){return Module["asm"]["i"].apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return Module["asm"]["j"].apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return Module["asm"]["k"].apply(null,arguments)};Module["asm"]=asm;Module["allocate"]=allocate;Module["UTF8ToString"]=UTF8ToString;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run();if(typeof module!=="undefined")module.exports=Module;Module.unloadRuntime=function(){if(typeof self!=="undefined"){delete self.Module}Module=jsModule=wasmMemory=wasmTable=asm=buffer=HEAP8=HEAPU8=HEAP16=HEAPU16=HEAP32=HEAPU32=HEAPF32=HEAPF64=undefined;if(typeof module!=="undefined"){delete module.exports}};\n'},222:function(e,t){e.exports="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IGJ1dCBhZCBsZW5ndGggaXMgbm90IDAAU2VjcmV0IHBvaW50ZXIgaXMgTlVMTCwgYnV0IHNlY3JldCBsZW5ndGggaXMgbm90IDAAU2FsdCBwb2ludGVyIGlzIE5VTEwsIGJ1dCBzYWx0IGxlbmd0aCBpcyBub3QgMABQYXNzd29yZCBwb2ludGVyIGlzIE5VTEwsIGJ1dCBwYXNzd29yZCBsZW5ndGggaXMgbm90IDAAVG9vIG1hbnkgbGFuZXMAVG9vIGZldyBsYW5lcwBNZW1vcnkgY29zdCBpcyB0b28gbGFyZ2UATWVtb3J5IGNvc3QgaXMgdG9vIHNtYWxsAFRpbWUgY29zdCBpcyB0b28gbGFyZ2UAVGltZSBjb3N0IGlzIHRvbyBzbWFsbABTZWNyZXQgaXMgdG9vIGxvbmcAU2VjcmV0IGlzIHRvbyBzaG9ydABBc3NvY2lhdGVkIGRhdGEgaXMgdG9vIGxvbmcAQXNzb2NpYXRlZCBkYXRhIGlzIHRvbyBzaG9ydABTYWx0IGlzIHRvbyBsb25nAFNhbHQgaXMgdG9vIHNob3J0AFBhc3N3b3JkIGlzIHRvbyBsb25nAFBhc3N3b3JkIGlzIHRvbyBzaG9ydABPdXRwdXQgaXMgdG9vIGxvbmcAT3V0cHV0IGlzIHRvbyBzaG9ydABPdXRwdXQgcG9pbnRlciBpcyBOVUxMAE9LACR2PQAkbT0ALHQ9ACxwPQAlbHUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4="},223:function(e,t,n){var r=n(301),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},224:function(e,t,n){var r=n(223).Symbol;e.exports=r},230:function(e,t,n){e.exports=function(){"use strict";var e=Object.hasOwnProperty,t=Object.setPrototypeOf,n=Object.isFrozen,r=Object.keys,i=Object.freeze,o=Object.seal,a="undefined"!=typeof Reflect&&Reflect,s=a.apply,A=a.construct;s||(s=function(e,t,n){return e.apply(t,n)}),i||(i=function(e){return e}),o||(o=function(e){return e}),A||(A=function(e,t){return new(Function.prototype.bind.apply(e,[null].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(t))))});var l=w(Array.prototype.forEach),u=w(Array.prototype.indexOf),c=w(Array.prototype.join),h=w(Array.prototype.pop),d=w(Array.prototype.push),f=w(Array.prototype.slice),g=w(String.prototype.toLowerCase),p=w(String.prototype.match),m=w(String.prototype.replace),I=w(String.prototype.indexOf),y=w(String.prototype.trim),B=w(RegExp.prototype.test),C=v(RegExp),E=v(TypeError);function w(e){return function(t){for(var n=arguments.length,r=Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return s(e,t,r)}}function v(e){return function(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return A(e,n)}}function b(e,r){t&&t(e,null);for(var i=r.length;i--;){var o=r[i];if("string"==typeof o){var a=g(o);a!==o&&(n(r)||(r[i]=a),o=a)}e[o]=!0}return e}function Q(t){var n={},r=void 0;for(r in t)s(e,t,[r])&&(n[r]=t[r]);return n}var k=i(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),x=i(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","audio","canvas","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","video","view","vkern"]),_=i(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),D=i(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),S=i(["#text"]),N=i(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns"]),M=i(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","tabindex","targetx","targety","transform","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),T=i(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),F=i(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),R=o(/\{\{[\s\S]*|[\s\S]*\}\}/gm),U=o(/<%[\s\S]*|[\s\S]*%>/gm),H=o(/^data-[\-\w.\u00B7-\uFFFF]/),L=o(/^aria-[\-\w]+$/),G=o(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),P=o(/^(?:\w+script|data):/i),O=o(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g),z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var j=function(){return"undefined"==typeof window?null:window},V=function(e,t){if("object"!==(void 0===e?"undefined":z(e))||"function"!=typeof e.createPolicy)return null;var n=null;t.currentScript&&t.currentScript.hasAttribute("data-tt-policy-suffix")&&(n=t.currentScript.getAttribute("data-tt-policy-suffix"));var r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML:function(e){return e}})}catch(e){return console.warn("TrustedTypes policy "+r+" could not be created."),null}};return function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:j(),n=function(t){return e(t)};if(n.version="2.0.11",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;var o=t.document,a=!1,s=t.document,A=t.DocumentFragment,w=t.HTMLTemplateElement,v=t.Node,K=t.NodeFilter,q=t.NamedNodeMap,J=void 0===q?t.NamedNodeMap||t.MozNamedAttrMap:q,W=t.Text,X=t.Comment,Z=t.DOMParser,$=t.trustedTypes;if("function"==typeof w){var ee=s.createElement("template");ee.content&&ee.content.ownerDocument&&(s=ee.content.ownerDocument)}var te=V($,o),ne=te?te.createHTML(""):"",re=s,ie=re.implementation,oe=re.createNodeIterator,ae=re.getElementsByTagName,se=re.createDocumentFragment,Ae=o.importNode,le={};n.isSupported=ie&&void 0!==ie.createHTMLDocument&&9!==s.documentMode;var ue=R,ce=U,he=H,de=L,fe=P,ge=O,pe=G,me=null,Ie=b({},[].concat(Y(k),Y(x),Y(_),Y(D),Y(S))),ye=null,Be=b({},[].concat(Y(N),Y(M),Y(T),Y(F))),Ce=null,Ee=null,we=!0,ve=!0,be=!1,Qe=!1,ke=!1,xe=!1,_e=!1,De=!1,Se=!1,Ne=!1,Me=!1,Te=!1,Fe=!0,Re=!0,Ue=!1,He={},Le=b({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","plaintext","script","style","svg","template","thead","title","video","xmp"]),Ge=null,Pe=b({},["audio","video","img","source","image","track"]),Oe=null,ze=b({},["alt","class","for","id","label","name","pattern","placeholder","summary","title","value","style","xmlns"]),Ye=null,je=s.createElement("form"),Ve=function(e){Ye&&Ye===e||(e&&"object"===(void 0===e?"undefined":z(e))||(e={}),me="ALLOWED_TAGS"in e?b({},e.ALLOWED_TAGS):Ie,ye="ALLOWED_ATTR"in e?b({},e.ALLOWED_ATTR):Be,Oe="ADD_URI_SAFE_ATTR"in e?b(Q(ze),e.ADD_URI_SAFE_ATTR):ze,Ge="ADD_DATA_URI_TAGS"in e?b(Q(Pe),e.ADD_DATA_URI_TAGS):Pe,Ce="FORBID_TAGS"in e?b({},e.FORBID_TAGS):{},Ee="FORBID_ATTR"in e?b({},e.FORBID_ATTR):{},He="USE_PROFILES"in e&&e.USE_PROFILES,we=!1!==e.ALLOW_ARIA_ATTR,ve=!1!==e.ALLOW_DATA_ATTR,be=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Qe=e.SAFE_FOR_JQUERY||!1,ke=e.SAFE_FOR_TEMPLATES||!1,xe=e.WHOLE_DOCUMENT||!1,Se=e.RETURN_DOM||!1,Ne=e.RETURN_DOM_FRAGMENT||!1,Me=e.RETURN_DOM_IMPORT||!1,Te=e.RETURN_TRUSTED_TYPE||!1,De=e.FORCE_BODY||!1,Fe=!1!==e.SANITIZE_DOM,Re=!1!==e.KEEP_CONTENT,Ue=e.IN_PLACE||!1,pe=e.ALLOWED_URI_REGEXP||pe,ke&&(ve=!1),Ne&&(Se=!0),He&&(me=b({},[].concat(Y(S))),ye=[],!0===He.html&&(b(me,k),b(ye,N)),!0===He.svg&&(b(me,x),b(ye,M),b(ye,F)),!0===He.svgFilters&&(b(me,_),b(ye,M),b(ye,F)),!0===He.mathMl&&(b(me,D),b(ye,T),b(ye,F))),e.ADD_TAGS&&(me===Ie&&(me=Q(me)),b(me,e.ADD_TAGS)),e.ADD_ATTR&&(ye===Be&&(ye=Q(ye)),b(ye,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&b(Oe,e.ADD_URI_SAFE_ATTR),Re&&(me["#text"]=!0),xe&&b(me,["html","head","body"]),me.table&&(b(me,["tbody"]),delete Ce.tbody),i&&i(e),Ye=e)},Ke=function(e){d(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){e.outerHTML=ne}},qe=function(e,t){try{d(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){d(n.removed,{attribute:null,from:t})}t.removeAttribute(e)},Je=function(e){var t=void 0,n=void 0;if(De)e="<remove></remove>"+e;else{var r=p(e,/^[\r\n\t ]+/);n=r&&r[0]}var i=te?te.createHTML(e):e;try{t=(new Z).parseFromString(i,"text/html")}catch(e){}if(a&&b(Ce,["title"]),!t||!t.documentElement){var o=(t=ie.createHTMLDocument("")).body;o.parentNode.removeChild(o.parentNode.firstElementChild),o.outerHTML=i}return e&&n&&t.body.insertBefore(s.createTextNode(n),t.body.childNodes[0]||null),ae.call(t,xe?"html":"body")[0]};n.isSupported&&function(){try{var e=Je("<x/><title>&lt;/title&gt;&lt;img&gt;");B(/<\/title/,e.querySelector("title").innerHTML)&&(a=!0)}catch(e){}}();var We=function(e){return oe.call(e.ownerDocument||e,e,K.SHOW_ELEMENT|K.SHOW_COMMENT|K.SHOW_TEXT,(function(){return K.FILTER_ACCEPT}),!1)},Xe=function(e){return!(e instanceof W||e instanceof X||"string"==typeof e.nodeName&&"string"==typeof e.textContent&&"function"==typeof e.removeChild&&e.attributes instanceof J&&"function"==typeof e.removeAttribute&&"function"==typeof e.setAttribute&&"string"==typeof e.namespaceURI)},Ze=function(e){return"object"===(void 0===v?"undefined":z(v))?e instanceof v:e&&"object"===(void 0===e?"undefined":z(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},$e=function(e,t,r){le[e]&&l(le[e],(function(e){e.call(n,t,r,Ye)}))},et=function(e){var t=void 0;if($e("beforeSanitizeElements",e,null),Xe(e))return Ke(e),!0;var r=g(e.nodeName);if($e("uponSanitizeElement",e,{tagName:r,allowedTags:me}),("svg"===r||"math"===r)&&0!==e.querySelectorAll("p, br").length)return Ke(e),!0;if(!me[r]||Ce[r]){if(Re&&!Le[r]&&"function"==typeof e.insertAdjacentHTML)try{var i=e.innerHTML;e.insertAdjacentHTML("AfterEnd",te?te.createHTML(i):i)}catch(e){}return Ke(e),!0}return"noscript"===r&&B(/<\/noscript/i,e.innerHTML)||"noembed"===r&&B(/<\/noembed/i,e.innerHTML)?(Ke(e),!0):(!Qe||e.firstElementChild||e.content&&e.content.firstElementChild||!B(/</g,e.textContent)||(d(n.removed,{element:e.cloneNode()}),e.innerHTML?e.innerHTML=m(e.innerHTML,/</g,"&lt;"):e.innerHTML=m(e.textContent,/</g,"&lt;")),ke&&3===e.nodeType&&(t=e.textContent,t=m(t,ue," "),t=m(t,ce," "),e.textContent!==t&&(d(n.removed,{element:e.cloneNode()}),e.textContent=t)),$e("afterSanitizeElements",e,null),!1)},tt=function(e,t,n){if(Fe&&("id"===t||"name"===t)&&(n in s||n in je))return!1;if(ve&&B(he,t));else if(we&&B(de,t));else{if(!ye[t]||Ee[t])return!1;if(Oe[t]);else if(B(pe,m(n,ge,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==I(n,"data:")||!Ge[e])if(be&&!B(fe,m(n,ge,"")));else if(n)return!1}return!0},nt=function(e){var t=void 0,i=void 0,o=void 0,a=void 0,s=void 0;$e("beforeSanitizeAttributes",e,null);var A=e.attributes;if(A){var l={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(s=A.length;s--;){var d=t=A[s],p=d.name,I=d.namespaceURI;if(i=y(t.value),o=g(p),l.attrName=o,l.attrValue=i,l.keepAttr=!0,l.forceKeepAttr=void 0,$e("uponSanitizeAttribute",e,l),i=l.attrValue,!l.forceKeepAttr){if("name"===o&&"IMG"===e.nodeName&&A.id)a=A.id,A=f(A,[]),qe("id",e),qe(p,e),u(A,a)>s&&e.setAttribute("id",a.value);else{if("INPUT"===e.nodeName&&"type"===o&&"file"===i&&l.keepAttr&&(ye[o]||!Ee[o]))continue;"id"===p&&e.setAttribute(p,""),qe(p,e)}if(l.keepAttr)if(Qe&&B(/\/>/i,i))qe(p,e);else if(B(/svg|math/i,e.namespaceURI)&&B(C("</("+c(r(Le),"|")+")","i"),i))qe(p,e);else{ke&&(i=m(i,ue," "),i=m(i,ce," "));var E=e.nodeName.toLowerCase();if(tt(E,o,i))try{I?e.setAttributeNS(I,p,i):e.setAttribute(p,i),h(n.removed)}catch(e){}}}}$e("afterSanitizeAttributes",e,null)}},rt=function e(t){var n=void 0,r=We(t);for($e("beforeSanitizeShadowDOM",t,null);n=r.nextNode();)$e("uponSanitizeShadowNode",n,null),et(n)||(n.content instanceof A&&e(n.content),nt(n));$e("afterSanitizeShadowDOM",t,null)};return n.sanitize=function(e,r){var i=void 0,a=void 0,s=void 0,l=void 0,u=void 0;if(e||(e="\x3c!--\x3e"),"string"!=typeof e&&!Ze(e)){if("function"!=typeof e.toString)throw E("toString is not a function");if("string"!=typeof(e=e.toString()))throw E("dirty is not a string, aborting")}if(!n.isSupported){if("object"===z(t.toStaticHTML)||"function"==typeof t.toStaticHTML){if("string"==typeof e)return t.toStaticHTML(e);if(Ze(e))return t.toStaticHTML(e.outerHTML)}return e}if(_e||Ve(r),n.removed=[],"string"==typeof e&&(Ue=!1),Ue);else if(e instanceof v)1===(a=(i=Je("\x3c!--\x3e")).ownerDocument.importNode(e,!0)).nodeType&&"BODY"===a.nodeName||"HTML"===a.nodeName?i=a:i.appendChild(a);else{if(!Se&&!ke&&!xe&&Te&&-1===e.indexOf("<"))return te?te.createHTML(e):e;if(!(i=Je(e)))return Se?null:ne}i&&De&&Ke(i.firstChild);for(var c=We(Ue?e:i);s=c.nextNode();)3===s.nodeType&&s===l||et(s)||(s.content instanceof A&&rt(s.content),nt(s),l=s);if(l=null,Ue)return e;if(Se){if(Ne)for(u=se.call(i.ownerDocument);i.firstChild;)u.appendChild(i.firstChild);else u=i;return Me&&(u=Ae.call(o,u,!0)),u}var h=xe?i.outerHTML:i.innerHTML;return ke&&(h=m(h,ue," "),h=m(h,ce," ")),te&&Te?te.createHTML(h):h},n.setConfig=function(e){Ve(e),_e=!0},n.clearConfig=function(){Ye=null,_e=!1},n.isValidAttribute=function(e,t,n){Ye||Ve({});var r=g(e),i=g(t);return tt(r,i,n)},n.addHook=function(e,t){"function"==typeof t&&(le[e]=le[e]||[],d(le[e],t))},n.removeHook=function(e){le[e]&&h(le[e])},n.removeHooks=function(e){le[e]&&(le[e]=[])},n.removeAllHooks=function(){le={}},n}()}()},275:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.__esModule=!0;var o=i(n(217)),a=r(n(286)),s=r(n(79)),A=i(n(56)),l=i(n(287)),u=r(n(289));function c(){var e=new o.HandlebarsEnvironment;return A.extend(e,o),e.SafeString=a.default,e.Exception=s.default,e.Utils=A,e.escapeExpression=A.escapeExpression,e.VM=l,e.template=function(t){return l.template(t,e)},e}var h=c();h.create=c,u.default(h),h.default=h,t.default=h,e.exports=t.default},276:function(e,t,n){"use strict";t.__esModule=!0;var r=n(56);t.default=function(e){e.registerHelper("blockHelperMissing",(function(t,n){var i=n.inverse,o=n.fn;if(!0===t)return o(this);if(!1===t||null==t)return i(this);if(r.isArray(t))return t.length>0?(n.ids&&(n.ids=[n.name]),e.helpers.each(t,n)):i(this);if(n.data&&n.ids){var a=r.createFrame(n.data);a.contextPath=r.appendContextPath(n.data.contextPath,n.name),n={data:a}}return o(t,n)}))},e.exports=t.default},277:function(e,t,n){"use strict";(function(r){t.__esModule=!0;var i,o=n(56),a=n(79),s=(i=a)&&i.__esModule?i:{default:i};t.default=function(e){e.registerHelper("each",(function(e,t){if(!t)throw new s.default("Must pass iterator to #each");var n,i=t.fn,a=t.inverse,A=0,l="",u=void 0,c=void 0;function h(t,n,r){u&&(u.key=t,u.index=n,u.first=0===n,u.last=!!r,c&&(u.contextPath=c+t)),l+=i(e[t],{data:u,blockParams:o.blockParams([e[t],t],[c+t,null])})}if(t.data&&t.ids&&(c=o.appendContextPath(t.data.contextPath,t.ids[0])+"."),o.isFunction(e)&&(e=e.call(this)),t.data&&(u=o.createFrame(t.data)),e&&"object"==typeof e)if(o.isArray(e))for(var d=e.length;A<d;A++)A in e&&h(A,A,A===e.length-1);else if(r.Symbol&&e[r.Symbol.iterator]){for(var f=[],g=e[r.Symbol.iterator](),p=g.next();!p.done;p=g.next())f.push(p.value);for(d=(e=f).length;A<d;A++)h(A,A,A===e.length-1)}else n=void 0,Object.keys(e).forEach((function(e){void 0!==n&&h(n,A-1),n=e,A++})),void 0!==n&&h(n,A-1,!0);return 0===A&&(l=a(this)),l}))},e.exports=t.default}).call(this,n(78))},278:function(e,t,n){"use strict";t.__esModule=!0;var r,i=n(79),o=(r=i)&&r.__esModule?r:{default:r};t.default=function(e){e.registerHelper("helperMissing",(function(){if(1!==arguments.length)throw new o.default('Missing helper: "'+arguments[arguments.length-1].name+'"')}))},e.exports=t.default},279:function(e,t,n){"use strict";t.__esModule=!0;var r,i=n(56),o=n(79),a=(r=o)&&r.__esModule?r:{default:r};t.default=function(e){e.registerHelper("if",(function(e,t){if(2!=arguments.length)throw new a.default("#if requires exactly one argument");return i.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||i.isEmpty(e)?t.inverse(this):t.fn(this)})),e.registerHelper("unless",(function(t,n){if(2!=arguments.length)throw new a.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})}))},e.exports=t.default},280:function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){e.registerHelper("log",(function(){for(var t=[void 0],n=arguments[arguments.length-1],r=0;r<arguments.length-1;r++)t.push(arguments[r]);var i=1;null!=n.hash.level?i=n.hash.level:n.data&&null!=n.data.level&&(i=n.data.level),t[0]=i,e.log.apply(e,t)}))},e.exports=t.default},281:function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){e.registerHelper("lookup",(function(e,t,n){return e?n.lookupProperty(e,t):e}))},e.exports=t.default},282:function(e,t,n){"use strict";t.__esModule=!0;var r,i=n(56),o=n(79),a=(r=o)&&r.__esModule?r:{default:r};t.default=function(e){e.registerHelper("with",(function(e,t){if(2!=arguments.length)throw new a.default("#with requires exactly one argument");i.isFunction(e)&&(e=e.call(this));var n=t.fn;if(i.isEmpty(e))return t.inverse(this);var r=t.data;return t.data&&t.ids&&((r=i.createFrame(t.data)).contextPath=i.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:r,blockParams:i.blockParams([e],[r&&r.contextPath])})}))},e.exports=t.default},283:function(e,t,n){"use strict";t.__esModule=!0,t.registerDefaultDecorators=function(e){o.default(e)};var r,i=n(284),o=(r=i)&&r.__esModule?r:{default:r}},284:function(e,t,n){"use strict";t.__esModule=!0;var r=n(56);t.default=function(e){e.registerDecorator("inline",(function(e,t,n,i){var o=e;return t.partials||(t.partials={},o=function(i,o){var a=n.partials;n.partials=r.extend({},a,t.partials);var s=e(i,o);return n.partials=a,s}),t.partials[i.args[0]]=i.fn,o}))},e.exports=t.default},285:function(e,t,n){"use strict";t.__esModule=!0,t.createNewLookupObject=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return r.extend.apply(void 0,[Object.create(null)].concat(t))};var r=n(56)},286:function(e,t,n){"use strict";function r(e){this.string=e}t.__esModule=!0,r.prototype.toString=r.prototype.toHTML=function(){return""+this.string},t.default=r,e.exports=t.default},287:function(e,t,n){"use strict";t.__esModule=!0,t.checkRevision=function(e){var t=e&&e[0]||1,n=s.COMPILER_REVISION;if(t>=s.LAST_COMPATIBLE_COMPILER_REVISION&&t<=s.COMPILER_REVISION)return;if(t<s.LAST_COMPATIBLE_COMPILER_REVISION){var r=s.REVISION_CHANGES[n],i=s.REVISION_CHANGES[t];throw new a.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+r+") or downgrade your runtime to an older version ("+i+").")}throw new a.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")},t.template=function(e,t){if(!t)throw new a.default("No environment passed to template");if(!e||!e.main)throw new a.default("Unknown template object: "+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&7===e.compiler[0];var r={strict:function(e,t,n){if(!e||!(t in e))throw new a.default('"'+t+'" not defined in '+e,{loc:n});return e[t]},lookupProperty:function(e,t){var n=e[t];return null==n||Object.prototype.hasOwnProperty.call(e,t)||u.resultIsAllowed(n,r.protoAccessControl,t)?n:void 0},lookup:function(e,t){for(var n=e.length,i=0;i<n;i++){if(null!=(e[i]&&r.lookupProperty(e[i],t)))return e[i][t]}},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:i.escapeExpression,invokePartial:function(n,r,o){o.hash&&(r=i.extend({},r,o.hash),o.ids&&(o.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,r,o);var s=i.extend({},o,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),A=t.VM.invokePartial.call(this,n,r,s);if(null==A&&t.compile&&(o.partials[o.name]=t.compile(n,e.compilerOptions,t),A=o.partials[o.name](r,s)),null!=A){if(o.indent){for(var l=A.split("\n"),u=0,c=l.length;u<c&&(l[u]||u+1!==c);u++)l[u]=o.indent+l[u];A=l.join("\n")}return A}throw new a.default("The partial "+o.name+" could not be compiled when running in runtime-only mode")},fn:function(t){var n=e[t];return n.decorator=e[t+"_d"],n},programs:[],program:function(e,t,n,r,i){var o=this.programs[e],a=this.fn(e);return t||i||r||n?o=c(this,e,a,t,n,r,i):o||(o=this.programs[e]=c(this,e,a)),o},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=i.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function o(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=n.data;o._setup(n),!n.partial&&e.useData&&(i=d(t,i));var a=void 0,s=e.useBlockParams?[]:void 0;function A(t){return""+e.main(r,t,r.helpers,r.partials,i,s,a)}return e.useDepths&&(a=n.depths?t!=n.depths[0]?[t].concat(n.depths):n.depths:[t]),(A=f(e.main,A,r,n.depths||[],i,s))(t,n)}return o.isTop=!0,o._setup=function(o){if(o.partial)r.protoAccessControl=o.protoAccessControl,r.helpers=o.helpers,r.partials=o.partials,r.decorators=o.decorators,r.hooks=o.hooks;else{var a=i.extend({},t.helpers,o.helpers);!function(e,t){Object.keys(e).forEach((function(n){var r=e[n];e[n]=function(e,t){var n=t.lookupProperty;return l.wrapHelper(e,(function(e){return i.extend({lookupProperty:n},e)}))}(r,t)}))}(a,r),r.helpers=a,e.usePartial&&(r.partials=r.mergeIfNeeded(o.partials,t.partials)),(e.usePartial||e.useDecorators)&&(r.decorators=i.extend({},t.decorators,o.decorators)),r.hooks={},r.protoAccessControl=u.createProtoAccessControl(o);var s=o.allowCallsToHelperMissing||n;A.moveHelperToHooks(r,"helperMissing",s),A.moveHelperToHooks(r,"blockHelperMissing",s)}},o._child=function(t,n,i,o){if(e.useBlockParams&&!i)throw new a.default("must pass block params");if(e.useDepths&&!o)throw new a.default("must pass parent depths");return c(r,t,e[t],n,0,i,o)},o},t.wrapProgram=c,t.resolvePartial=function(e,t,n){e?e.call||n.name||(n.name=e,e=n.partials[e]):e="@partial-block"===n.name?n.data["partial-block"]:n.partials[n.name];return e},t.invokePartial=function(e,t,n){var r=n.data&&n.data["partial-block"];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var o=void 0;n.fn&&n.fn!==h&&function(){n.data=s.createFrame(n.data);var e=n.fn;o=n.data["partial-block"]=function(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return n.data=s.createFrame(n.data),n.data["partial-block"]=r,e(t,n)},e.partials&&(n.partials=i.extend({},n.partials,e.partials))}();void 0===e&&o&&(e=o);if(void 0===e)throw new a.default("The partial "+n.name+" could not be found");if(e instanceof Function)return e(t,n)},t.noop=h;var r,i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(56)),o=n(79),a=(r=o)&&r.__esModule?r:{default:r},s=n(217),A=n(218),l=n(288),u=n(220);function c(e,t,n,r,i,o,a){function s(t){var i=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],s=a;return!a||t==a[0]||t===e.nullContext&&null===a[0]||(s=[t].concat(a)),n(e,t,e.helpers,e.partials,i.data||r,o&&[i.blockParams].concat(o),s)}return(s=f(n,s,e,a,r,o)).program=t,s.depth=a?a.length:0,s.blockParams=i||0,s}function h(){return""}function d(e,t){return t&&"root"in t||((t=t?s.createFrame(t):{}).root=e),t}function f(e,t,n,r,o,a){if(e.decorator){var s={};t=e.decorator(t,s,n,r&&r[0],o,a,r),i.extend(t,s)}return t}},288:function(e,t,n){"use strict";t.__esModule=!0,t.wrapHelper=function(e,t){if("function"!=typeof e)return e;return function(){var n=arguments[arguments.length-1];return arguments[arguments.length-1]=t(n),e.apply(this,arguments)}}},289:function(e,t,n){"use strict";(function(n){t.__esModule=!0,t.default=function(e){var t=void 0!==n?n:window,r=t.Handlebars;e.noConflict=function(){return t.Handlebars===e&&(t.Handlebars=r),e}},e.exports=t.default}).call(this,n(78))},300:function(e,t,n){var r=n(223);e.exports=function(){return r.Date.now()}},301:function(e,t,n){(function(t){var n="object"==typeof t&&t&&t.Object===Object&&t;e.exports=n}).call(this,n(78))},302:function(e,t,n){var r=n(205),i=n(303),o=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,A=/^0o[0-7]+$/i,l=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return NaN;if(r(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=r(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(o,"");var n=s.test(e);return n||A.test(e)?l(e.slice(2),n?2:8):a.test(e)?NaN:+e}},303:function(e,t,n){var r=n(304),i=n(307);e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},304:function(e,t,n){var r=n(224),i=n(305),o=n(306),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?i(e):o(e)}},305:function(e,t,n){var r=n(224),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(e){}var i=a.call(e);return r&&(t?e[s]=n:delete e[s]),i}},306:function(e,t){var n=Object.prototype.toString;e.exports=function(e){return n.call(e)}},307:function(e,t){e.exports=function(e){return null!=e&&"object"==typeof e}},313:function(e,t,n){n(17),n(214),n(4),n(215),n(100),n(147),n(222),n(221),e.exports=n(192)},4:function(e,t,n){var r,i;e.exports=(r=n(195),i=n(195),function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=29)}([function(e,t,n){"use strict";var r=new TextEncoder,i=new TextDecoder;e.exports.arrayBufferEquals=function(e,t){if(e.byteLength!==t.byteLength)return!1;for(var n=new Uint8Array(e),r=new Uint8Array(t),i=0,o=n.length;i<o;i++)if(n[i]!==r[i])return!1;return!0},e.exports.bytesToString=function(e){return e instanceof ArrayBuffer&&(e=new Uint8Array(e)),i.decode(e)},e.exports.stringToBytes=function(e){return r.encode(e)},e.exports.base64ToBytes=function(e){if("undefined"==typeof atob&&"function"==typeof Buffer){var t=Buffer.from(e,"base64");return new Uint8Array(t)}for(var n=atob(e),r=new Uint8Array(n.length),i=0;i<n.length;i++)r[i]=n.charCodeAt(i);return r},e.exports.bytesToBase64=function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),"undefined"==typeof btoa&&"function"==typeof Buffer)return Buffer.from(e).toString("base64");for(var t="",n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)},e.exports.hexToBytes=function(e){for(var t=new Uint8Array(Math.ceil(e.length/2)),n=0;n<t.length;n++)t[n]=parseInt(e.substr(2*n,2),16);return t},e.exports.bytesToHex=function(e){e instanceof ArrayBuffer&&(e=new Uint8Array(e));for(var t="",n=0;n<e.length;n++){var r=e[n].toString(16);1===r.length&&(t+="0"),t+=r}return t},e.exports.arrayToBuffer=function(e){if(e instanceof ArrayBuffer)return e;var t=e.buffer;return 0===e.byteOffset&&e.byteLength===t.byteLength?t:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)},e.exports.zeroBuffer=function(e){e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.fill(0)}},function(e,t,n){"use strict";e.exports.Signatures={FileMagic:2594363651,Sig2Kdbx:3041655655,Sig2Kdb:3041655653},e.exports.ErrorCodes={NotImplemented:"NotImplemented",InvalidArg:"InvalidArg",BadSignature:"BadSignature",InvalidVersion:"InvalidVersion",Unsupported:"Unsupported",FileCorrupt:"FileCorrupt",InvalidKey:"InvalidKey",MergeError:"MergeError"},e.exports.CompressionAlgorithm={None:0,GZip:1},e.exports.CrsAlgorithm={Null:0,ArcFourVariant:1,Salsa20:2,ChaCha20:3},e.exports.KdfId={Argon2:"72Nt34wpREuR96mkA+MKDA==",Aes:"ydnzmmKKRGC/dA0IwYpP6g=="},e.exports.CipherId={Aes:"McHy5r9xQ1C+WAUhavxa/w==",ChaCha20:"1gOKK4tvTLWlJDOaMdu1mg=="},e.exports.AutoTypeObfuscationOptions={None:0,UseClipboard:1},e.exports.Defaults={KeyEncryptionRounds:3e5,MntncHistoryDays:365,HistoryMaxItems:10,HistoryMaxSize:6291456,RecycleBinName:"Recycle Bin"},e.exports.Icons={Key:0,World:1,Warning:2,NetworkServer:3,MarkedDirectory:4,UserCommunication:5,Parts:6,Notepad:7,WorldSocket:8,Identity:9,PaperReady:10,Digicam:11,IRCommunication:12,MultiKeys:13,Energy:14,Scanner:15,WorldStar:16,CDRom:17,Monitor:18,EMail:19,Configuration:20,ClipboardReady:21,PaperNew:22,Screen:23,EnergyCareful:24,EMailBox:25,Disk:26,Drive:27,PaperQ:28,TerminalEncrypted:29,Console:30,Printer:31,ProgramIcons:32,Run:33,Settings:34,WorldComputer:35,Archive:36,Homebanking:37,DriveWindows:39,Clock:39,EMailSearch:40,PaperFlag:41,Memory:42,TrashBin:43,Note:44,Expired:45,Info:46,Package:47,Folder:48,FolderOpen:49,FolderPackage:50,LockOpen:51,PaperLocked:52,Checked:53,Pen:54,Thumbnail:55,Book:56,List:57,UserKey:58,Tool:59,Home:60,Star:61,Tux:62,Feather:63,Apple:64,Wiki:65,Money:66,Certificate:67,BlackBerry:68}},function(e,t,n){"use strict";function r(e,t){this.name="KdbxError",this.code=e,this.message="Error "+e+(t?": "+t:"")}r.prototype=Error.prototype,e.exports=r},function(e,t,n){"use strict";(function(t){var r=n(0),i=n(2),o=n(1),a=n(24),s=t.crypto,A=s?s.subtle||s.webkitSubtle:null,l=t.process&&t.process.versions&&t.process.versions.node?n(40):null;function u(){}function c(){}u.prototype.importKey=function(e){var t=this;return A.importKey("raw",e,{name:"AES-CBC"},!1,["encrypt","decrypt"]).then((function(e){t.key=e}))},u.prototype.encrypt=function(e,t){return A.encrypt({name:"AES-CBC",iv:t},this.key,e)},u.prototype.decrypt=function(e,t){return A.decrypt({name:"AES-CBC",iv:t},this.key,e).catch((function(){throw new i(o.ErrorCodes.InvalidKey,"invalid key")}))},c.prototype.importKey=function(e){return this.key=e,Promise.resolve()},c.prototype.encrypt=function(e,t){var n=this;return Promise.resolve().then((function(){var i=l.createCipheriv("aes-256-cbc",Buffer.from(n.key),Buffer.from(t)),o=i.update(Buffer.from(e));return r.arrayToBuffer(Buffer.concat([o,i.final()]))}))},c.prototype.decrypt=function(e,t){var n=this;return Promise.resolve().then((function(){var i=l.createDecipheriv("aes-256-cbc",Buffer.from(n.key),Buffer.from(t)),o=i.update(Buffer.from(e));return r.arrayToBuffer(Buffer.concat([o,i.final()]))})).catch((function(){throw new i(o.ErrorCodes.InvalidKey,"invalid key")}))},e.exports.subtle=A,e.exports.webCrypto=s,e.exports.nodeCrypto=l,e.exports.sha256=function(e){return e.byteLength?A?A.digest({name:"SHA-256"},e):l?new Promise((function(t){t(l.createHash("sha256").update(Buffer.from(e)).digest().buffer)})):Promise.reject(new i(o.ErrorCodes.NotImplemented,"SHA256 not implemented")):Promise.resolve(r.arrayToBuffer(r.hexToBytes("e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855")))},e.exports.sha512=function(e){return e.byteLength?A?A.digest({name:"SHA-512"},e):l?new Promise((function(t){t(l.createHash("sha512").update(Buffer.from(e)).digest().buffer)})):Promise.reject(new i(o.ErrorCodes.NotImplemented,"SHA512 not implemented")):Promise.resolve(r.arrayToBuffer(r.hexToBytes("cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e")))},e.exports.hmacSha256=function(e,t){if(A){var n={name:"HMAC",hash:{name:"SHA-256"}};return A.importKey("raw",e,n,!1,["sign"]).then((function(e){return A.sign(n,e,t)}))}return l?new Promise((function(n){n(l.createHmac("sha256",Buffer.from(e)).update(Buffer.from(t)).digest().buffer)})):Promise.reject(new i(o.ErrorCodes.NotImplemented,"HMAC-SHA256 not implemented"))},e.exports.random=function(e){if(A)return function(e){for(var t=new Uint8Array(e);e>0;){var n=e%65536;n=n>0?n:65536;var r=new Uint8Array(n);s.getRandomValues(r),e-=n,t.set(r,e)}return t}(e);if(l)return new Uint8Array(l.randomBytes(e));throw new i(o.ErrorCodes.NotImplemented,"Random not implemented")},e.exports.createAesCbc=function(){if(A)return new u;if(l)return new c;throw new i(o.ErrorCodes.NotImplemented,"AES-CBC not implemented")},e.exports.chacha20=function(e,t,n){return Promise.resolve().then((function(){var i=new a(new Uint8Array(t),new Uint8Array(n));return r.arrayToBuffer(i.encrypt(new Uint8Array(e)))}))},e.exports.argon2=function(e,t,n,r,a,s,A,l){return Promise.reject(new i(o.ErrorCodes.NotImplemented,"Argon2 not implemented"))},e.exports.configure=function(e,t,n){A=e,s=t,l=n}}).call(this,n(23))},function(e,t,n){"use strict";(function(t){var r=n(2),i=n(1),o=n(6),a=n(7),s=n(9),A=n(0),l=n(8),u=n(15),c=/\.\d\d\d/,h=t.DOMParser?t:n(42),d=t.DOMParser?void 0:{errorHandler:{error:function(e){throw e},fatalError:function(e){throw e}}};function f(e){var t,n=d?new h.DOMParser(d):new h.DOMParser;try{t=n.parseFromString(e,"application/xml")}catch(e){throw new r(i.ErrorCodes.FileCorrupt,"bad xml: "+e.message)}if(!t.documentElement)throw new r(i.ErrorCodes.FileCorrupt,"bad xml");var o=t.getElementsByTagName("parsererror")[0];if(o)throw new r(i.ErrorCodes.FileCorrupt,"bad xml: "+o.textContent);return t}function g(e){if(e&&e.childNodes)return e.protectedValue?e.protectedValue.text:e.textContent}function p(e,t){e.textContent=t||""}function m(e){var t=g(e);return t?A.arrayToBuffer(A.base64ToBytes(t)):void 0}function I(e,t){"string"==typeof t&&(t=A.base64ToBytes(t)),p(e,t?A.bytesToBase64(A.arrayToBuffer(t)):void 0)}function y(e){switch(e&&e.toLowerCase&&e.toLowerCase()){case"true":return!0;case"false":return!1;case"null":return null}}function B(e,t){t(e);for(var n=0,r=e.childNodes,i=r.length;n<i;n++){var o=r[n];o.tagName&&B(o,t)}}e.exports.parse=f,e.exports.serialize=function(e,t){t&&function e(t,n){var r=t.childNodes.length;if(0!==r){for(var i,o="\n"+" ".repeat(n),a=n>0?"\n"+" ".repeat(n-1):"",s=t.ownerDocument||t,A=[],l=0;l<r;l++)(i=t.childNodes[l]).nodeType!==s.TEXT_NODE&&i.nodeType!==s.PROCESSING_INSTRUCTION_NODE&&A.push(i);for(var u=0;u<A.length;u++){if(i=A[u],0!==n||0!==u){var c=s.createTextNode(o);t.insertBefore(c,i)}if(!i.nextSibling&&n>0){var h=s.createTextNode(a);t.appendChild(h)}e(i,n+1)}}}(e,0);var n=(new h.XMLSerializer).serializeToString(e);return t&&n.startsWith("<?")&&(n=n.replace(/^(<\?.*?\?>)</,"$1\n<")),n},e.exports.create=function(e){return f('<?xml version="1.0" encoding="utf-8" standalone="yes"?><'+e+"/>")},e.exports.getChildNode=function(e,t,n){if(e&&e.childNodes)for(var o=0,a=e.childNodes,s=a.length;o<s;o++)if(a[o].tagName===t)return a[o];if(n)throw new r(i.ErrorCodes.FileCorrupt,n);return null},e.exports.addChildNode=function(e,t){return e.appendChild((e.ownerDocument||e).createElement(t))},e.exports.getText=g,e.exports.setText=p,e.exports.getBytes=m,e.exports.setBytes=I,e.exports.getDate=function(e){var t=g(e);if(t){if(t.indexOf(":")>0)return new Date(t);var n=new DataView(A.arrayToBuffer(A.base64ToBytes(t))),r=new l(n.getUint32(0,!0),n.getUint32(4,!0)).value;return new Date(1e3*(r-62135596800))}},e.exports.setDate=function(e,t,n){if(t)if(n){var r=Math.floor(t.getTime()/1e3)+62135596800,i=new DataView(new ArrayBuffer(8)),o=l.from(r);i.setUint32(0,o.lo,!0),i.setUint32(4,o.hi,!0),p(e,A.bytesToBase64(i.buffer))}else p(e,t.toISOString().replace(c,""));else p(e,"")},e.exports.getNumber=function(e){var t=g(e);return t?+t:void 0},e.exports.setNumber=function(e,t){p(e,"number"!=typeof t||isNaN(t)?void 0:t.toString())},e.exports.getBoolean=function(e){var t=g(e);return t?y(t):void 0},e.exports.setBoolean=function(e,t){p(e,void 0===t?"":null===t?"null":t?"True":"False")},e.exports.strToBoolean=y,e.exports.getUuid=function(e){var t=m(e);return t?new a(t):void 0},e.exports.setUuid=function(e,t){I(e,t instanceof a?t.toBytes():t)},e.exports.getProtectedText=function(e){return e.protectedValue||e.textContent},e.exports.setProtectedText=function(e,t){t instanceof s?(e.protectedValue=t,e.setAttribute(o.Attr.Protected,"True")):p(e,t)},e.exports.getProtectedBinary=function(e){if(e.protectedValue)return e.protectedValue;var t=e.textContent,n=e.getAttribute(o.Attr.Ref);if(n)return{ref:n};if(t){var r=y(e.getAttribute(o.Attr.Compressed)),i=A.base64ToBytes(t);return r&&(i=u.ungzip(i)),A.arrayToBuffer(i)}},e.exports.setProtectedBinary=function(e,t){t instanceof s?(e.protectedValue=t,e.setAttribute(o.Attr.Protected,"True")):t&&t.ref?e.setAttribute(o.Attr.Ref,t.ref):I(e,t)},e.exports.setProtectedValues=function(e,t){B(e,(function(e){if(y(e.getAttribute(o.Attr.Protected)))try{var n=A.arrayToBuffer(A.base64ToBytes(e.textContent));if(n.byteLength){var a=t.getSalt(n.byteLength);e.protectedValue=new s(n,a)}}catch(t){throw new r(i.ErrorCodes.FileCorrupt,"bad protected value at line "+e.lineNumber+": "+t)}}))},e.exports.updateProtectedValuesSalt=function(e,t){B(e,(function(e){if(y(e.getAttribute(o.Attr.Protected))&&e.protectedValue){var n=t.getSalt(e.protectedValue.byteLength);e.protectedValue.setSalt(n),e.textContent=e.protectedValue.toString()}}))},e.exports.unprotectValues=function(e){B(e,(function(e){y(e.getAttribute(o.Attr.Protected))&&e.protectedValue&&(e.removeAttribute(o.Attr.Protected),e.setAttribute(o.Attr.ProtectedInMemPlainXml,"True"),e.textContent=e.protectedValue.getText())}))},e.exports.protectUnprotectedValues=function(e){B(e,(function(e){y(e.getAttribute(o.Attr.ProtectedInMemPlainXml))&&e.protectedValue&&(e.removeAttribute(o.Attr.ProtectedInMemPlainXml),e.setAttribute(o.Attr.Protected,"True"),e.textContent=e.protectedValue.toString())}))},e.exports.protectPlainValues=function(e){B(e,(function(e){y(e.getAttribute(o.Attr.ProtectedInMemPlainXml))&&(e.protectedValue=s.fromString(e.textContent),e.textContent=e.protectedValue.toString(),e.removeAttribute(o.Attr.ProtectedInMemPlainXml),e.setAttribute(o.Attr.Protected,"True"))}))}}).call(this,n(23))},function(e,t,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if("object"!=typeof n)throw new TypeError(n+"must be non-object");for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var o=0;o<r;o++)e[i+o]=t[n+o]},flattenChunks:function(e){var t,n,r,i,o,a;for(r=0,t=0,n=e.length;t<n;t++)r+=e[t].length;for(a=new Uint8Array(r),i=0,t=0,n=e.length;t<n;t++)o=e[t],a.set(o,i),i+=o.length;return a}},o={arraySet:function(e,t,n,r,i){for(var o=0;o<r;o++)e[i+o]=t[n+o]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,i)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,o))},t.setTyped(r)},function(e,t,n){"use strict";e.exports={Elem:{DocNode:"KeePassFile",Meta:"Meta",Root:"Root",Group:"Group",Entry:"Entry",Generator:"Generator",HeaderHash:"HeaderHash",SettingsChanged:"SettingsChanged",DbName:"DatabaseName",DbNameChanged:"DatabaseNameChanged",DbDesc:"DatabaseDescription",DbDescChanged:"DatabaseDescriptionChanged",DbDefaultUser:"DefaultUserName",DbDefaultUserChanged:"DefaultUserNameChanged",DbMntncHistoryDays:"MaintenanceHistoryDays",DbColor:"Color",DbKeyChanged:"MasterKeyChanged",DbKeyChangeRec:"MasterKeyChangeRec",DbKeyChangeForce:"MasterKeyChangeForce",RecycleBinEnabled:"RecycleBinEnabled",RecycleBinUuid:"RecycleBinUUID",RecycleBinChanged:"RecycleBinChanged",EntryTemplatesGroup:"EntryTemplatesGroup",EntryTemplatesGroupChanged:"EntryTemplatesGroupChanged",HistoryMaxItems:"HistoryMaxItems",HistoryMaxSize:"HistoryMaxSize",LastSelectedGroup:"LastSelectedGroup",LastTopVisibleGroup:"LastTopVisibleGroup",MemoryProt:"MemoryProtection",ProtTitle:"ProtectTitle",ProtUserName:"ProtectUserName",ProtPassword:"ProtectPassword",ProtUrl:"ProtectURL",ProtNotes:"ProtectNotes",CustomIcons:"CustomIcons",CustomIconItem:"Icon",CustomIconItemID:"UUID",CustomIconItemData:"Data",AutoType:"AutoType",History:"History",Name:"Name",Notes:"Notes",Uuid:"UUID",Icon:"IconID",CustomIconID:"CustomIconUUID",FgColor:"ForegroundColor",BgColor:"BackgroundColor",OverrideUrl:"OverrideURL",Times:"Times",Tags:"Tags",CreationTime:"CreationTime",LastModTime:"LastModificationTime",LastAccessTime:"LastAccessTime",ExpiryTime:"ExpiryTime",Expires:"Expires",UsageCount:"UsageCount",LocationChanged:"LocationChanged",GroupDefaultAutoTypeSeq:"DefaultAutoTypeSequence",EnableAutoType:"EnableAutoType",EnableSearching:"EnableSearching",String:"String",Binary:"Binary",Key:"Key",Value:"Value",AutoTypeEnabled:"Enabled",AutoTypeObfuscation:"DataTransferObfuscation",AutoTypeDefaultSeq:"DefaultSequence",AutoTypeItem:"Association",Window:"Window",KeystrokeSequence:"KeystrokeSequence",Binaries:"Binaries",IsExpanded:"IsExpanded",LastTopVisibleEntry:"LastTopVisibleEntry",DeletedObjects:"DeletedObjects",DeletedObject:"DeletedObject",DeletionTime:"DeletionTime",CustomData:"CustomData",StringDictExItem:"Item"},Attr:{Id:"ID",Ref:"Ref",Protected:"Protected",ProtectedInMemPlainXml:"ProtectInMemory",Compressed:"Compressed"},Val:{False:"False",True:"True"}}},function(e,t,n){"use strict";var r=n(0),i=n(10);function o(e){if(void 0===e&&(e=new ArrayBuffer(16)),"string"==typeof e&&(e=r.base64ToBytes(e)),this.id=16===e.byteLength?r.bytesToBase64(e):void 0,this.empty=!0,e)for(var t=new Uint8Array(e),n=0,i=t.length;n<i;n++)if(0!==t[n])return void(this.empty=!1)}o.prototype.equals=function(e){return e&&e.toString()===this.toString()||!1},Object.defineProperty(o.prototype,"bytes",{enumerable:!0,get:function(){return r.base64ToBytes(this.id)}}),o.random=function(){return new o(i.getBytes(16))},o.prototype.toString=function(){return this.id},o.prototype.valueOf=function(){return this.id},o.prototype.toBytes=function(){return this.id?r.base64ToBytes(this.id):void 0},e.exports=o},function(e,t,n){"use strict";function r(e,t){this.lo=e||0,this.hi=t||0}Object.defineProperty(r.prototype,"value",{enumerable:!0,get:function(){if(this.hi){if(this.hi>=2097152)throw new Error("too large number");return 4294967296*this.hi+this.lo}return this.lo}}),r.prototype.valueOf=function(){return this.value},r.from=function(e){if(e>9007199254740991)throw new Error("too large number");var t=e>>>0;return new r(t,(e-t)/4294967296>>>0)},e.exports=r},function(e,t,n){"use strict";var r=n(0),i=n(3),o=n(10),a=function(e,t){Object.defineProperty(this,"_value",{value:new Uint8Array(e)}),Object.defineProperty(this,"_salt",{value:new Uint8Array(t)})};a.prototype.toString=function(){return r.bytesToBase64(this._value)},a.fromString=function(e){for(var t=r.stringToBytes(e),n=o.getBytes(t.length),i=0,s=t.length;i<s;i++)t[i]^=n[i];return new a(r.arrayToBuffer(t),r.arrayToBuffer(n))},a.fromBinary=function(e){for(var t=new Uint8Array(e),n=o.getBytes(t.length),i=0,s=t.length;i<s;i++)t[i]^=n[i];return new a(r.arrayToBuffer(t),r.arrayToBuffer(n))},a.prototype.includes=function(e){if(0===e.length)return!1;var t,n,i=this._value,o=this._salt,a=r.stringToBytes(e),s=i.length,A=a.length,l=s-A;e:for(t=0;t<=l;t++){for(n=0;n<A;n++)if((i[t+n]^o[t+n])!==a[n])continue e;return!0}return!1},a.prototype.getHash=function(){var e=r.arrayToBuffer(this.getBinary());return i.sha256(e).then((function(t){return r.zeroBuffer(e),t}))},a.prototype.getText=function(){return r.bytesToString(this.getBinary())},a.prototype.getBinary=function(){for(var e=this._value,t=this._salt,n=new Uint8Array(e.byteLength),r=n.length-1;r>=0;r--)n[r]=e[r]^t[r];return n},a.prototype.setSalt=function(e){for(var t=new Uint8Array(e),n=this._value,r=this._salt,i=0,o=n.length;i<o;i++)n[i]=n[i]^r[i]^t[i],r[i]=t[i]},a.prototype.clone=function(){return new a(this._value,this._salt)},Object.defineProperty(a.prototype,"byteLength",{enumerable:!0,get:function(){return this._value.byteLength}}),e.exports=a},function(e,t,n){"use strict";for(var r=n(22),i=n(3),o=new Uint8Array(32),a=new Uint8Array(8),s=0;s<o.length;s++)o[s]=255*Math.random();for(var A=0;A<a.length;A++)a[s]=255*Math.random();var l=new r(o,a);e.exports.getBytes=function(e){if(!e)return new Uint8Array(0);l.getBytes(Math.round(Math.random()*e)+1);for(var t=l.getBytes(e),n=i.random(e),r=n.length-1;r>=0;--r)t[r]^=n[r];return t}},function(e,t,n){"use strict";function r(e){this._arrayBuffer=e||new ArrayBuffer(1024),this._dataView=new DataView(this._arrayBuffer),this._pos=0,this._canExpand=!e}["Int","Uint","Float"].forEach((function(e){("Float"===e?[4,8]:[1,2,4]).forEach((function(t){var n="get"+e+8*t;r.prototype[n]=function(e){var r=this._dataView[n].call(this._dataView,this._pos,e);return this._pos+=t,r};var i="set"+e+8*t;r.prototype[i]=function(e,n){this._checkCapacity(t),this._dataView[i].call(this._dataView,this._pos,e,n),this._pos+=t}}))})),r.prototype.getUint64=function(e){var t=this.getUint32(e),n=this.getUint32(e);return e?n*=4294967296:t*=4294967296,t+n},r.prototype.setUint64=function(e,t){t?(this.setUint32(4294967295&e,!0),this.setUint32(Math.floor(e/4294967296),!0)):(this._checkCapacity(8),this.setUint32(Math.floor(e/4294967296),!1),this.setUint32(4294967295&e,!1))},r.prototype.readBytes=function(e){var t=this._arrayBuffer.slice(this._pos,this._pos+e);return this._pos+=e,t},r.prototype.readBytesToEnd=function(){var e=this._arrayBuffer.byteLength-this._pos;return this.readBytes(e)},r.prototype.readBytesNoAdvance=function(e,t){return this._arrayBuffer.slice(e,t)},r.prototype.writeBytes=function(e){e instanceof ArrayBuffer&&(e=new Uint8Array(e)),this._checkCapacity(e.length),new Uint8Array(this._arrayBuffer).set(e,this._pos),this._pos+=e.length},r.prototype.getWrittenBytes=function(){return this._arrayBuffer.slice(0,this._pos)},r.prototype._checkCapacity=function(e){var t=this._arrayBuffer.byteLength-this._pos;if(this._canExpand&&t<e){for(var n=this._arrayBuffer.byteLength,r=this._pos+e;n<r;)n*=2;var i=new Uint8Array(n);i.set(new Uint8Array(this._arrayBuffer)),this._arrayBuffer=i.buffer,this._dataView=new DataView(this._arrayBuffer)}},Object.defineProperty(r.prototype,"pos",{enumerable:!0,get:function(){return this._pos}}),Object.defineProperty(r.prototype,"byteLength",{enumerable:!0,get:function(){return this._arrayBuffer.byteLength}}),e.exports=r},function(e,t,n){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},function(e,t,n){"use strict";var r=n(2),i=n(1),o=n(0),a=n(8),s={UInt32:4,UInt64:5,Bool:8,Int32:12,Int64:13,String:24,Bytes:66};function A(){this._items=[],this._dict={},Object.preventExtensions(this)}A.ValueType=s,A.prototype.get=function(e){var t=this._dict[e];return t?t.value:void 0},A.prototype.keys=function(){return this._items.map((function(e){return e.key}))},Object.defineProperty(A.prototype,"length",{enumberable:!0,get:function(){return this._items.length}}),A.prototype.set=function(e,t,n){switch(t){case s.UInt32:if("number"!=typeof n||n<0)throw new r(i.ErrorCodes.InvalidArg);break;case s.UInt64:if(!(n instanceof a))throw new r(i.ErrorCodes.InvalidArg);break;case s.Bool:if("boolean"!=typeof n)throw new r(i.ErrorCodes.InvalidArg);break;case s.Int32:if("number"!=typeof n)throw new r(i.ErrorCodes.InvalidArg);break;case s.Int64:if(!(n instanceof a))throw new r(i.ErrorCodes.InvalidArg);break;case s.String:if("string"!=typeof n)throw new r(i.ErrorCodes.InvalidArg);break;case s.Bytes:if(n instanceof Uint8Array&&(n=o.arrayToBuffer(n)),!(n instanceof ArrayBuffer))throw new r(i.ErrorCodes.InvalidArg);break;default:throw new r(i.ErrorCodes.InvalidArg)}var A={key:e,type:t,value:n};if(this._dict[e]){var l=this._items.indexOf(this._dict[e]);this._items.splice(l,1,A)}else this._items.push(A);this._dict[e]=A},A.prototype.remove=function(e){this._items=this._items.filter((function(t){return t.key!==e})),delete this._dict[e]},A.read=function(e){var t=new A;for(t._readVersion(e);;){var n=t._readItem(e);if(!n)break;t._items.push(n),t._dict[n.key]=n}return t},A.prototype._readVersion=function(e){e.getUint8();var t=e.getUint8();if(0===t||t>1)throw new r(i.ErrorCodes.InvalidVersion)},A.prototype._readItem=function(e){var t=e.getUint8();if(!t)return!1;var n=e.getInt32(!0);if(n<=0)throw new r(i.ErrorCodes.FileCorrupt,"bad key length");var A,l=o.bytesToString(e.readBytes(n)),u=e.getInt32(!0);if(u<0)throw new r(i.ErrorCodes.FileCorrupt,"bad value length");switch(t){case s.UInt32:if(4!==u)throw new r(i.ErrorCodes.FileCorrupt,"bad uint32");A=e.getUint32(!0);break;case s.UInt64:if(8!==u)throw new r(i.ErrorCodes.FileCorrupt,"bad uint64");var c=e.getUint32(!0),h=e.getUint32(!0);A=new a(c,h);break;case s.Bool:if(1!==u)throw new r(i.ErrorCodes.FileCorrupt,"bad bool");A=0!==e.getUint8();break;case s.Int32:if(4!==u)throw new r(i.ErrorCodes.FileCorrupt,"bad int32");A=e.getInt32(!0);break;case s.Int64:if(8!==u)throw new r(i.ErrorCodes.FileCorrupt,"bad int64");var d=e.getUint32(!0),f=e.getUint32(!0);A=new a(d,f);break;case s.String:A=o.bytesToString(e.readBytes(u));break;case s.Bytes:A=e.readBytes(u);break;default:throw new r(i.ErrorCodes.FileCorrupt,"bad value type: "+t)}return{key:l,type:t,value:A}},A.prototype.write=function(e){this._writeVersion(e),Object.keys(this._items).forEach((function(t){this._writeItem(e,this._items[t])}),this),e.setUint8(0)},A.prototype._writeVersion=function(e){e.setUint16(256,!0)},A.prototype._writeItem=function(e,t){e.setUint8(t.type);var n=o.stringToBytes(t.key);switch(e.setInt32(n.length,!0),e.writeBytes(n),t.type){case s.UInt32:e.setInt32(4,!0),e.setUint32(t.value,!0);break;case s.UInt64:e.setInt32(8,!0),e.setUint32(t.value.lo,!0),e.setUint32(t.value.hi,!0);break;case s.Bool:e.setInt32(1,!0),e.setUint8(t.value?1:0);break;case s.Int32:e.setInt32(4,!0),e.setInt32(t.value,!0);break;case s.Int64:e.setInt32(8,!0),e.setUint32(t.value.lo,!0),e.setUint32(t.value.hi,!0);break;case s.String:var a=o.stringToBytes(t.value);e.setInt32(a.length,!0),e.writeBytes(a);break;case s.Bytes:var A=o.arrayToBuffer(t.value);e.setInt32(A.byteLength,!0),e.writeBytes(A);break;default:throw new r(i.ErrorCodes.Unsupported)}},e.exports=A},function(e,t,n){"use strict";var r=n(6),i=n(4),o={read:function(e){for(var t={},n=0,i=e.childNodes,a=i.length;n<a;n++){var s=i[n];s.tagName===r.Elem.StringDictExItem&&o._readItem(s,t)}return t},write:function(e,t){if(t){var n=i.addChildNode(e,r.Elem.CustomData);Object.keys(t).forEach((function(e){var o=t[e];if(o){var a=i.addChildNode(n,r.Elem.StringDictExItem);i.setText(i.addChildNode(a,r.Elem.Key),e),i.setText(i.addChildNode(a,r.Elem.Value),o)}}))}},_readItem:function(e,t){for(var n,o,a=0,s=e.childNodes,A=s.length;a<A;a++){var l=s[a];switch(l.tagName){case r.Elem.Key:n=i.getText(l);break;case r.Elem.Value:o=i.getText(l)}}n&&(t[n]=o)}};e.exports=o},function(e,t,n){"use strict";var r={};(0,n(5).assign)(r,n(32),n(35),n(20)),e.exports=r},function(e,t,n){"use strict";e.exports=function(e,t,n,r){for(var i=65535&e|0,o=e>>>16&65535|0,a=0;0!==n;){n-=a=n>2e3?2e3:n;do{o=o+(i=i+t[r++]|0)|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}},function(e,t,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();e.exports=function(e,t,n,i){var o=r,a=i+n;e^=-1;for(var s=i;s<a;s++)e=e>>>8^o[255&(e^t[s])];return-1^e}},function(e,t,n){"use strict";var r=n(5),i=!0,o=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){o=!1}for(var a=new r.Buf8(256),s=0;s<256;s++)a[s]=s>=252?6:s>=248?5:s>=240?4:s>=224?3:s>=192?2:1;function A(e,t){if(t<65537&&(e.subarray&&o||!e.subarray&&i))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var n="",a=0;a<t;a++)n+=String.fromCharCode(e[a]);return n}a[254]=a[254]=1,t.string2buf=function(e){var t,n,i,o,a,s=e.length,A=0;for(o=0;o<s;o++)55296==(64512&(n=e.charCodeAt(o)))&&o+1<s&&56320==(64512&(i=e.charCodeAt(o+1)))&&(n=65536+(n-55296<<10)+(i-56320),o++),A+=n<128?1:n<2048?2:n<65536?3:4;for(t=new r.Buf8(A),a=0,o=0;a<A;o++)55296==(64512&(n=e.charCodeAt(o)))&&o+1<s&&56320==(64512&(i=e.charCodeAt(o+1)))&&(n=65536+(n-55296<<10)+(i-56320),o++),n<128?t[a++]=n:n<2048?(t[a++]=192|n>>>6,t[a++]=128|63&n):n<65536?(t[a++]=224|n>>>12,t[a++]=128|n>>>6&63,t[a++]=128|63&n):(t[a++]=240|n>>>18,t[a++]=128|n>>>12&63,t[a++]=128|n>>>6&63,t[a++]=128|63&n);return t},t.buf2binstring=function(e){return A(e,e.length)},t.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n<i;n++)t[n]=e.charCodeAt(n);return t},t.buf2string=function(e,t){var n,r,i,o,s=t||e.length,l=new Array(2*s);for(r=0,n=0;n<s;)if((i=e[n++])<128)l[r++]=i;else if((o=a[i])>4)l[r++]=65533,n+=o-1;else{for(i&=2===o?31:3===o?15:7;o>1&&n<s;)i=i<<6|63&e[n++],o--;o>1?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return A(l,r)},t.utf8border=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;n>=0&&128==(192&e[n]);)n--;return n<0||0===n?t:n+a[e[n]]>t?n:t}},function(e,t,n){"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},function(e,t,n){"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},function(e,t,n){"use strict";var r=n(7),i=n(1),o=n(9),a=n(2),s=n(11),A=n(0),l=n(13),u=n(8),c=n(10),h=[{name:"EndOfHeader"},{name:"Comment"},{name:"CipherID"},{name:"CompressionFlags"},{name:"MasterSeed"},{name:"TransformSeed",ver:[3]},{name:"TransformRounds",ver:[3]},{name:"EncryptionIV"},{name:"ProtectedStreamKey",ver:[3]},{name:"StreamStartBytes",ver:[3]},{name:"InnerRandomStreamID",ver:[3]},{name:"KdfParameters",ver:[4]},{name:"PublicCustomData",ver:[4]}],d=[{name:"EndOfHeader"},{name:"InnerRandomStreamID"},{name:"InnerRandomStreamKey"},{name:"Binary",skipHeader:!0}],f={DefaultFileVersionMajor:4,DefaultFileVersionMinor:0,MaxFileVersionMajor:4,MaxFileVersionMinor:1,MaxSupportedVersion:4,FlagBinaryProtected:1,InnerHeaderBinaryFieldId:3,DefaultKdfAlgo:i.KdfId.Argon2,DefaultKdfSaltLength:32,DefaultKdfParallelism:1,DefaultKdfIterations:2,DefaultKdfMemory:1048576,DefaultKdfVersion:19},g={3:1,4:0},p=function(){this.versionMajor=void 0,this.versionMinor=void 0,this.dataCipherUuid=void 0,this.compression=void 0,this.masterSeed=void 0,this.transformSeed=void 0,this.keyEncryptionRounds=void 0,this.encryptionIV=void 0,this.protectedStreamKey=void 0,this.streamStartBytes=void 0,this.crsAlgorithm=void 0,this.endPos=void 0,this.kdfParameters=void 0,this.publicCustomData=void 0,Object.preventExtensions(this)};p.prototype._readSignature=function(e){if(e.byteLength<8)throw new a(i.ErrorCodes.FileCorrupt,"not enough data");var t=e.getUint32(!0),n=e.getUint32(!0);if(t!==i.Signatures.FileMagic||n!==i.Signatures.Sig2Kdbx)throw new a(i.ErrorCodes.BadSignature)},p.prototype._writeSignature=function(e){e.setUint32(i.Signatures.FileMagic,!0),e.setUint32(i.Signatures.Sig2Kdbx,!0)},p.prototype._readVersion=function(e){var t=e.getUint16(!0),n=e.getUint16(!0);if(n>f.MaxSupportedVersion)throw new a(i.ErrorCodes.InvalidVersion);this.versionMinor=t,this.versionMajor=n},p.prototype._writeVersion=function(e){e.setUint16(this.versionMinor,!0),e.setUint16(this.versionMajor,!0)},p.prototype._readCipherID=function(e){if(16!==e.byteLength)throw new a(i.ErrorCodes.Unsupported,"cipher");this.dataCipherUuid=new r(e)},p.prototype._writeCipherID=function(e){this._writeFieldSize(e,16),e.writeBytes(this.dataCipherUuid.bytes)},p.prototype._readCompressionFlags=function(e){var t=new DataView(e).getUint32(e,!0);if(t<0||t>=Object.keys(i.CompressionAlgorithm).length)throw new a(i.ErrorCodes.Unsupported,"compression");this.compression=t},p.prototype._writeCompressionFlags=function(e){this._writeFieldSize(e,4),e.setUint32(this.compression,!0)},p.prototype._readMasterSeed=function(e){this.masterSeed=e},p.prototype._writeMasterSeed=function(e){this._writeFieldBytes(e,this.masterSeed)},p.prototype._readTransformSeed=function(e){this.transformSeed=e},p.prototype._writeTransformSeed=function(e){this._writeFieldBytes(e,this.transformSeed)},p.prototype._readTransformRounds=function(e){this.keyEncryptionRounds=new s(e).getUint64(!0)},p.prototype._writeTransformRounds=function(e){this._writeFieldSize(e,8),e.setUint64(this.keyEncryptionRounds,!0)},p.prototype._readEncryptionIV=function(e){this.encryptionIV=e},p.prototype._writeEncryptionIV=function(e){this._writeFieldBytes(e,this.encryptionIV)},p.prototype._readProtectedStreamKey=function(e){this.protectedStreamKey=e},p.prototype._writeProtectedStreamKey=function(e){this._writeFieldBytes(e,this.protectedStreamKey)},p.prototype._readStreamStartBytes=function(e){this.streamStartBytes=e},p.prototype._writeStreamStartBytes=function(e){this._writeFieldBytes(e,this.streamStartBytes)},p.prototype._readInnerRandomStreamID=function(e){this.crsAlgorithm=new DataView(e).getUint32(e,!0)},p.prototype._writeInnerRandomStreamID=function(e){this._writeFieldSize(e,4),e.setUint32(this.crsAlgorithm,!0)},p.prototype._readInnerRandomStreamKey=function(e){this.protectedStreamKey=e},p.prototype._writeInnerRandomStreamKey=function(e){this._writeFieldBytes(e,this.protectedStreamKey)},p.prototype._readKdfParameters=function(e){this.kdfParameters=l.read(new s(e))},p.prototype._writeKdfParameters=function(e){var t=new s;this.kdfParameters.write(t),this._writeFieldBytes(e,t.getWrittenBytes())},p.prototype._readPublicCustomData=function(e){this.publicCustomData=l.read(new s(e))},p.prototype._hasPublicCustomData=function(){return this.publicCustomData},p.prototype._writePublicCustomData=function(e){if(this.publicCustomData){var t=new s;this.publicCustomData.write(t),this._writeFieldBytes(e,t.getWrittenBytes())}},p.prototype._readBinary=function(e,t){var n=new DataView(e).getUint8(0)&f.FlagBinaryProtected,r=e.slice(1),i=n?o.fromBinary(r):r,a=Object.keys(t.kdbx.binaries).length;t.kdbx.binaries[a]=i},p.prototype._writeBinary=function(e,t){if(!(this.versionMajor<4))for(var n=t.kdbx.binaries.hashOrder,r=0;r<n.length;r++){e.setUint8(f.InnerHeaderBinaryFieldId);var s=t.kdbx.binaries[n[r]];if(!s)throw new a(i.ErrorCodes.FileCorrupt,"no binary "+r);if(s instanceof o){var l=s.getBinary();this._writeFieldSize(e,l.byteLength+1),e.setUint8(f.FlagBinaryProtected),e.writeBytes(l),A.zeroBuffer(l)}else s=A.arrayToBuffer(s),this._writeFieldSize(e,s.byteLength+1),e.setUint8(0),e.writeBytes(s)}},p.prototype._writeEndOfHeader=function(e){this._writeFieldSize(e,4),e.setUint32(13675786)},p.prototype._readField=function(e,t,n){var r,i=e.getUint8(),o=this._readFieldSize(e);o>0&&(r=e.readBytes(o));var a=t[i];if(a){var s=this["_read"+a.name];s&&s.call(this,r,n)}return 0!==i},p.prototype._writeField=function(e,t,n,r){var i=n[t];if(i){if(i.ver&&i.ver.indexOf(this.versionMajor)<0)return;var o=this["_write"+i.name];if(o){var a=this["_has"+i.name];if(a&&!a.call(this))return;i.skipHeader||e.setUint8(t),o.call(this,e,r)}}},p.prototype._readFieldSize=function(e){return this.versionMajor>=4?e.getUint32(!0):e.getUint16(!0)},p.prototype._writeFieldSize=function(e,t){this.versionMajor>=4?e.setUint32(t,!0):e.setUint16(t,!0)},p.prototype._writeFieldBytes=function(e,t){this._writeFieldSize(e,t.byteLength),e.writeBytes(t)},p.prototype._validate=function(){if(void 0===this.dataCipherUuid)throw new a(i.ErrorCodes.FileCorrupt,"no cipher in header");if(void 0===this.compression)throw new a(i.ErrorCodes.FileCorrupt,"no compression in header");if(!this.masterSeed)throw new a(i.ErrorCodes.FileCorrupt,"no master seed in header");if(this.versionMajor<4&&!this.transformSeed)throw new a(i.ErrorCodes.FileCorrupt,"no transform seed in header");if(this.versionMajor<4&&!this.keyEncryptionRounds)throw new a(i.ErrorCodes.FileCorrupt,"no key encryption rounds in header");if(!this.encryptionIV)throw new a(i.ErrorCodes.FileCorrupt,"no encryption iv in header");if(this.versionMajor<4&&!this.protectedStreamKey)throw new a(i.ErrorCodes.FileCorrupt,"no protected stream key in header");if(this.versionMajor<4&&!this.streamStartBytes)throw new a(i.ErrorCodes.FileCorrupt,"no stream start bytes in header");if(this.versionMajor<4&&!this.crsAlgorithm)throw new a(i.ErrorCodes.FileCorrupt,"no crs algorithm in header");if(this.versionMajor>=4&&!this.kdfParameters)throw new a(i.ErrorCodes.FileCorrupt,"no kdf parameters in header")},p.prototype._validateInner=function(){if(!this.protectedStreamKey)throw new a(i.ErrorCodes.FileCorrupt,"no protected stream key in header");if(!this.crsAlgorithm)throw new a(i.ErrorCodes.FileCorrupt,"no crs algorithm in header")},p.prototype._createKdfParameters=function(e){switch(e||(e=f.DefaultKdfAlgo),e){case i.KdfId.Argon2:this.kdfParameters=new l,this.kdfParameters.set("$UUID",l.ValueType.Bytes,A.base64ToBytes(i.KdfId.Argon2)),this.kdfParameters.set("S",l.ValueType.Bytes,c.getBytes(f.DefaultKdfSaltLength)),this.kdfParameters.set("P",l.ValueType.UInt32,f.DefaultKdfParallelism),this.kdfParameters.set("I",l.ValueType.UInt64,new u(f.DefaultKdfIterations)),this.kdfParameters.set("M",l.ValueType.UInt64,new u(f.DefaultKdfMemory)),this.kdfParameters.set("V",l.ValueType.UInt32,f.DefaultKdfVersion);break;case i.KdfId.Aes:this.kdfParameters=new l,this.kdfParameters.set("$UUID",l.ValueType.Bytes,A.base64ToBytes(i.KdfId.Aes)),this.kdfParameters.set("S",l.ValueType.Bytes,c.getBytes(f.DefaultKdfSaltLength)),this.kdfParameters.set("R",l.ValueType.UInt32,i.Defaults.KeyEncryptionRounds);break;default:throw new a(i.ErrorCodes.InvalidArg,"bad KDF algo")}},p.prototype.write=function(e){this._validate(),this._writeSignature(e),this._writeVersion(e);for(var t=1;t<h.length;t++)this._writeField(e,t,h);this._writeField(e,0,h),this.endPos=e.pos},p.prototype.writeInnerHeader=function(e,t){this._validateInner();for(var n=1;n<d.length;n++)this._writeField(e,n,d,t);this._writeField(e,0,d)},p.prototype.generateSalts=function(){if(this.masterSeed=c.getBytes(32),this.versionMajor<4)this.transformSeed=c.getBytes(32),this.streamStartBytes=c.getBytes(32),this.protectedStreamKey=c.getBytes(32),this.encryptionIV=c.getBytes(16);else{this.protectedStreamKey=c.getBytes(64),this.kdfParameters.set("S",l.ValueType.Bytes,c.getBytes(32));var e=this.dataCipherUuid.toString()===i.CipherId.ChaCha20?12:16;this.encryptionIV=c.getBytes(e)}},p.prototype.setVersion=function(e){if(3!==e&&4!==e)throw new a(i.ErrorCodes.InvalidArg,"bad file version");this.versionMajor=e,this.versionMinor=g[e],4===this.versionMajor?(this.kdfParameters||this._createKdfParameters(),this.crsAlgorithm=i.CrsAlgorithm.ChaCha20,this.keyEncryptionRounds=void 0):(this.kdfParameters=void 0,this.crsAlgorithm=i.CrsAlgorithm.Salsa20,this.keyEncryptionRounds=i.Defaults.KeyEncryptionRounds)},p.prototype.setKdf=function(e){this._createKdfParameters(e)},p.read=function(e,t){var n=new p;for(n._readSignature(e),n._readVersion(e);n._readField(e,h,t););return n.endPos=e.pos,n._validate(),n},p.prototype.readInnerHeader=function(e,t){for(;this._readField(e,d,t););this._validateInner()},p.create=function(){var e=new p;return e.versionMajor=f.DefaultFileVersionMajor,e.versionMinor=f.DefaultFileVersionMinor,e.dataCipherUuid=new r(i.CipherId.Aes),e.compression=i.CompressionAlgorithm.GZip,e.crsAlgorithm=i.CrsAlgorithm.ChaCha20,e._createKdfParameters(),e},p.MaxFileVersion=f.MaxFileVersionMajor,e.exports=p},function(e,t,n){"use strict";function r(e,t){this.rounds=20,this.sigmaWords=[1634760805,857760878,2036477234,1797285236],this.keyWords=[],this.nonceWords=[0,0],this.counterWords=[0,0],this.block=[],this.blockUsed=64,this.setKey(e),this.setNonce(t)}r.prototype.setKey=function(e){for(var t=0,n=0;t<8;t++,n+=4)this.keyWords[t]=255&e[n]|(255&e[n+1])<<8|(255&e[n+2])<<16|(255&e[n+3])<<24;this._reset()},r.prototype.setNonce=function(e){this.nonceWords[0]=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,this.nonceWords[1]=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,this._reset()},r.prototype.getBytes=function(e){for(var t=new Uint8Array(e),n=0;n<e;n++)64===this.blockUsed&&(this._generateBlock(),this._incrementCounter(),this.blockUsed=0),t[n]=this.block[this.blockUsed],this.blockUsed++;return t},r.prototype.getHexString=function(e){for(var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"],n=[],r=this.getBytes(e),i=0;i<r.length;i++)n.push(t[r[i]>>4&15]),n.push(t[15&r[i]]);return n.join("")},r.prototype._reset=function(){this.counterWords[0]=0,this.counterWords[1]=0,this.blockUsed=64},r.prototype._incrementCounter=function(){this.counterWords[0]=this.counterWords[0]+1&4294967295,0===this.counterWords[0]&&(this.counterWords[1]=this.counterWords[1]+1&4294967295)},r.prototype._generateBlock=function(){for(var e,t=this.sigmaWords[0],n=this.keyWords[0],r=this.keyWords[1],i=this.keyWords[2],o=this.keyWords[3],a=this.sigmaWords[1],s=this.nonceWords[0],A=this.nonceWords[1],l=this.counterWords[0],u=this.counterWords[1],c=this.sigmaWords[2],h=this.keyWords[4],d=this.keyWords[5],f=this.keyWords[6],g=this.keyWords[7],p=this.sigmaWords[3],m=t,I=n,y=r,B=i,C=o,E=a,w=s,v=A,b=l,Q=u,k=c,x=h,_=d,D=f,S=g,N=p,M=0;M<this.rounds;M+=2)m^=(e=(_^=(e=(b^=(e=(C^=(e=m+_)<<7|e>>>25)+m)<<9|e>>>23)+C)<<13|e>>>19)+b)<<18|e>>>14,E^=(e=(I^=(e=(D^=(e=(Q^=(e=E+I)<<7|e>>>25)+E)<<9|e>>>23)+Q)<<13|e>>>19)+D)<<18|e>>>14,k^=(e=(w^=(e=(y^=(e=(S^=(e=k+w)<<7|e>>>25)+k)<<9|e>>>23)+S)<<13|e>>>19)+y)<<18|e>>>14,N^=(e=(x^=(e=(v^=(e=(B^=(e=N+x)<<7|e>>>25)+N)<<9|e>>>23)+B)<<13|e>>>19)+v)<<18|e>>>14,m^=(e=(B^=(e=(y^=(e=(I^=(e=m+B)<<7|e>>>25)+m)<<9|e>>>23)+I)<<13|e>>>19)+y)<<18|e>>>14,E^=(e=(C^=(e=(v^=(e=(w^=(e=E+C)<<7|e>>>25)+E)<<9|e>>>23)+w)<<13|e>>>19)+v)<<18|e>>>14,k^=(e=(Q^=(e=(b^=(e=(x^=(e=k+Q)<<7|e>>>25)+k)<<9|e>>>23)+x)<<13|e>>>19)+b)<<18|e>>>14,N^=(e=(S^=(e=(D^=(e=(_^=(e=N+S)<<7|e>>>25)+N)<<9|e>>>23)+_)<<13|e>>>19)+D)<<18|e>>>14;m+=t,I+=n,y+=r,B+=i,C+=o,E+=a,w+=s,v+=A,b+=l,Q+=u,k+=c,x+=h,_+=d,D+=f,S+=g,N+=p,this.block[0]=m>>>0&255,this.block[1]=m>>>8&255,this.block[2]=m>>>16&255,this.block[3]=m>>>24&255,this.block[4]=I>>>0&255,this.block[5]=I>>>8&255,this.block[6]=I>>>16&255,this.block[7]=I>>>24&255,this.block[8]=y>>>0&255,this.block[9]=y>>>8&255,this.block[10]=y>>>16&255,this.block[11]=y>>>24&255,this.block[12]=B>>>0&255,this.block[13]=B>>>8&255,this.block[14]=B>>>16&255,this.block[15]=B>>>24&255,this.block[16]=C>>>0&255,this.block[17]=C>>>8&255,this.block[18]=C>>>16&255,this.block[19]=C>>>24&255,this.block[20]=E>>>0&255,this.block[21]=E>>>8&255,this.block[22]=E>>>16&255,this.block[23]=E>>>24&255,this.block[24]=w>>>0&255,this.block[25]=w>>>8&255,this.block[26]=w>>>16&255,this.block[27]=w>>>24&255,this.block[28]=v>>>0&255,this.block[29]=v>>>8&255,this.block[30]=v>>>16&255,this.block[31]=v>>>24&255,this.block[32]=b>>>0&255,this.block[33]=b>>>8&255,this.block[34]=b>>>16&255,this.block[35]=b>>>24&255,this.block[36]=Q>>>0&255,this.block[37]=Q>>>8&255,this.block[38]=Q>>>16&255,this.block[39]=Q>>>24&255,this.block[40]=k>>>0&255,this.block[41]=k>>>8&255,this.block[42]=k>>>16&255,this.block[43]=k>>>24&255,this.block[44]=x>>>0&255,this.block[45]=x>>>8&255,this.block[46]=x>>>16&255,this.block[47]=x>>>24&255,this.block[48]=_>>>0&255,this.block[49]=_>>>8&255,this.block[50]=_>>>16&255,this.block[51]=_>>>24&255,this.block[52]=D>>>0&255,this.block[53]=D>>>8&255,this.block[54]=D>>>16&255,this.block[55]=D>>>24&255,this.block[56]=S>>>0&255,this.block[57]=S>>>8&255,this.block[58]=S>>>16&255,this.block[59]=S>>>24&255,this.block[60]=N>>>0&255,this.block[61]=N>>>8&255,this.block[62]=N>>>16&255,this.block[63]=N>>>24&255},e.exports=r},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function r(e,t){this.sigmaWords=[1634760805,857760878,2036477234,1797285236],this.block=new Uint8Array(64),this.blockUsed=64,this.x=new Uint32Array(16);var n=new Uint32Array(16);n[0]=this.sigmaWords[0],n[1]=this.sigmaWords[1],n[2]=this.sigmaWords[2],n[3]=this.sigmaWords[3],n[4]=o(e,0),n[5]=o(e,4),n[6]=o(e,8),n[7]=o(e,12),n[8]=o(e,16),n[9]=o(e,20),n[10]=o(e,24),n[11]=o(e,28),n[12]=0,12===t.length?(n[13]=o(t,0),n[14]=o(t,4),n[15]=o(t,8)):(n[13]=0,n[14]=o(t,0),n[15]=o(t,4)),this.input=n}function i(e,t,n,r,i){e[t]+=e[n],e[i]=s(e[i]^e[t],16),e[r]+=e[i],e[n]=s(e[n]^e[r],12),e[t]+=e[n],e[i]=s(e[i]^e[t],8),e[r]+=e[i],e[n]=s(e[n]^e[r],7)}function o(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24}function a(e,t,n){e[t]=n,n>>>=8,e[t+1]=n,n>>>=8,e[t+2]=n,n>>>=8,e[t+3]=n}function s(e,t){return e<<t|e>>>32-t}r.prototype.getBytes=function(e){for(var t=new Uint8Array(e),n=0;n<e;n++)64===this.blockUsed&&(this._generateBlock(),this.blockUsed=0),t[n]=this.block[this.blockUsed],this.blockUsed++;return t},r.prototype._generateBlock=function(){var e,t=this.input,n=this.x,r=this.block;for(n.set(t),e=20;e>0;e-=2)i(n,0,4,8,12),i(n,1,5,9,13),i(n,2,6,10,14),i(n,3,7,11,15),i(n,0,5,10,15),i(n,1,6,11,12),i(n,2,7,8,13),i(n,3,4,9,14);for(e=16;e--;)n[e]+=t[e];for(e=16;e--;)a(r,4*e,n[e]);t[12]+=1,t[12]||(t[13]+=1)},r.prototype.encrypt=function(e){for(var t=e.length,n=new Uint8Array(t),r=0,i=this.block;r<t;){this._generateBlock();for(var o=Math.min(t-r,64),a=0;a<o;a++)n[r]=e[r]^i[a],r++}return n},e.exports=r},function(e,t,n){"use strict";var r=n(0),i=n(3);function o(e,t,n){for(var i=Promise.resolve(r.arrayToBuffer(t)),o=new Uint8Array(16*Math.min(n,1e4));n>0;){var s=Math.min(n,1e4);n-=s;var A=16*s;i=a(e,i,o.length===A?o.buffer:r.arrayToBuffer(o.subarray(0,A)))}return i.then((function(e){return new Uint8Array(e)}))}function a(e,t,n){return t.then((function(t){return e.encrypt(n,t)})).then((function(e){var t=r.arrayToBuffer(new Uint8Array(e).subarray(-32,-16));return r.zeroBuffer(e),t}))}e.exports.encrypt=function(e,t,n){var a=i.createAesCbc();return a.importKey(r.arrayToBuffer(t)).then((function(){for(var t=[],r=0;r<32;r+=16)t.push(o(a,e.subarray(r,r+16),n));return Promise.all(t)})).then((function(e){var t=new Uint8Array(32);return e.forEach((function(e,n){for(var i=16*n,o=0;o<16;++o)t[o+i]=e[o];r.zeroBuffer(e)})),t}))}},function(e,t,n){"use strict";var r=n(9),i=n(2),o=n(1),a=n(0),s=n(4),A=n(10),l=n(3),u=function(e,t,n){var r=this;this.ready=Promise.all([this.setPassword(e),this.setKeyFile(t),this.setChallengeResponse(n)]).then((function(){return r}))};u.prototype.setPassword=function(e){if(null!==e){if(e instanceof r){var t=this;return e.getHash().then((function(e){t.passwordHash=r.fromBinary(e)}))}return Promise.reject(new i(o.ErrorCodes.InvalidArg,"password"))}return this.passwordHash=null,Promise.resolve()},u.prototype.setKeyFile=function(e){if(e&&!(e instanceof ArrayBuffer)&&!(e instanceof Uint8Array))return Promise.reject(new i(o.ErrorCodes.InvalidArg,"keyFile"));if(e){if(32===e.byteLength)return this.keyFileHash=r.fromBinary(a.arrayToBuffer(e)),Promise.resolve();try{var t;if((t=a.bytesToString(a.arrayToBuffer(e))).match(/^[a-f\d]{64}$/i)){var n=a.hexToBytes(t);return void(this.keyFileHash=r.fromBinary(n))}var A=s.parse(t.trim()),u=s.getChildNode(A.documentElement,"Key"),c=s.getChildNode(u,"Data");this.keyFileHash=r.fromBinary(a.base64ToBytes(c.textContent))}catch(t){var h=this;return l.sha256(e).then((function(e){h.keyFileHash=r.fromBinary(e)}))}}else this.keyFileHash=null;return Promise.resolve()},u.prototype.setChallengeResponse=function(e){return this.challengeResponse=e,Promise.resolve()},u.prototype.getHash=function(e){var t=this;return this.ready.then((function(){return t.getChallengeResponse(e).then((function(e){var n=[];t.passwordHash&&n.push(t.passwordHash.getBinary()),t.keyFileHash&&n.push(t.keyFileHash.getBinary()),e&&n.push(new Uint8Array(e));var r=n.reduce((function(e,t){return e+t.byteLength}),0),i=new Uint8Array(r),o=0;return n.forEach((function(e){i.set(e,o),a.zeroBuffer(e),o+=e.length})),l.sha256(a.arrayToBuffer(i)).then((function(e){return a.zeroBuffer(i),e}))}))}))},u.prototype.getChallengeResponse=function(e){var t=this.challengeResponse;return Promise.resolve().then((function(){return t&&e?t(e).then((function(e){return l.sha256(a.arrayToBuffer(e)).then((function(t){return a.zeroBuffer(e),t}))})):null}))},u.createRandomKeyFile=function(){for(var e=A.getBytes(32),t=A.getBytes(32),n=0;n<32;n++)e[n]^=t[n],e[n]^=1e3*Math.random()%255;var r=a.bytesToBase64(e);return u.createKeyFileWithHash(r)},u.createKeyFileWithHash=function(e){var t='<?xml version="1.0" encoding="utf-8"?>\n<KeyFile>\n <Meta>\n <Version>1.00</Version>\n </Meta>\n <Key>\n <Data>'+e+"</Data>\n </Key>\n</KeyFile>";return a.stringToBytes(t)},e.exports=u},function(e,t,n){"use strict";var r=n(6),i=n(4),o=function(){this.creationTime=void 0,this.lastModTime=void 0,this.lastAccessTime=void 0,this.expiryTime=void 0,this.expires=void 0,this.usageCount=void 0,this.locationChanged=new Date,Object.preventExtensions(this)};o.prototype._readNode=function(e){switch(e.tagName){case r.Elem.CreationTime:this.creationTime=i.getDate(e);break;case r.Elem.LastModTime:this.lastModTime=i.getDate(e);break;case r.Elem.LastAccessTime:this.lastAccessTime=i.getDate(e);break;case r.Elem.ExpiryTime:this.expiryTime=i.getDate(e);break;case r.Elem.Expires:this.expires=i.getBoolean(e);break;case r.Elem.UsageCount:this.usageCount=i.getNumber(e);break;case r.Elem.LocationChanged:this.locationChanged=i.getDate(e)}},o.prototype.clone=function(){var e=new o;return e.creationTime=this.creationTime,e.lastModTime=this.lastModTime,e.lastAccessTime=this.lastAccessTime,e.expiryTime=this.expiryTime,e.expires=this.expires,e.usageCount=this.usageCount,e.locationChanged=this.locationChanged,e},o.prototype.update=function(){var e=new Date;this.lastModTime=e,this.lastAccessTime=e},o.prototype.write=function(e,t){var n=i.addChildNode(e,r.Elem.Times);t.setXmlDate(i.addChildNode(n,r.Elem.CreationTime),this.creationTime),t.setXmlDate(i.addChildNode(n,r.Elem.LastModTime),this.lastModTime),t.setXmlDate(i.addChildNode(n,r.Elem.LastAccessTime),this.lastAccessTime),t.setXmlDate(i.addChildNode(n,r.Elem.ExpiryTime),this.expiryTime),i.setBoolean(i.addChildNode(n,r.Elem.Expires),this.expires),i.setNumber(i.addChildNode(n,r.Elem.UsageCount),this.usageCount),t.setXmlDate(i.addChildNode(n,r.Elem.LocationChanged),this.locationChanged)},o.create=function(){var e=new o,t=new Date;return e.creationTime=t,e.lastModTime=t,e.lastAccessTime=t,e.expiryTime=t,e.expires=!1,e.usageCount=0,e.locationChanged=t,e},o.read=function(e){for(var t=new o,n=0,r=e.childNodes,i=r.length;n<i;n++){var a=r[n];a.tagName&&t._readNode(a)}return t},e.exports=o},function(e,t,n){"use strict";var r=n(9),i=n(6),o=n(4),a=n(1),s=n(14),A=n(7),l=n(27),u=/\s*[;,:]\s*/,c=function(){this.uuid=void 0,this.icon=void 0,this.customIcon=void 0,this.fgColor=void 0,this.bgColor=void 0,this.overrideUrl=void 0,this.tags=[],this.times=new l,this.fields={},this.binaries={},this.autoType={enabled:!0,obfuscation:a.AutoTypeObfuscationOptions.None,defaultSequence:void 0,items:[]},this.history=[],this.parentGroup=void 0,this.customData=void 0,this._editState=void 0,Object.preventExtensions(this)};c.prototype._readNode=function(e,t){switch(e.tagName){case i.Elem.Uuid:this.uuid=o.getUuid(e);break;case i.Elem.Icon:this.icon=o.getNumber(e)||a.Icons.Key;break;case i.Elem.CustomIconID:this.customIcon=o.getUuid(e);break;case i.Elem.FgColor:this.fgColor=o.getText(e);break;case i.Elem.BgColor:this.bgColor=o.getText(e);break;case i.Elem.OverrideUrl:this.overrideUrl=o.getText(e);break;case i.Elem.Tags:this.tags=this._stringToTags(o.getText(e));break;case i.Elem.Times:this.times=l.read(e);break;case i.Elem.String:this._readField(e);break;case i.Elem.Binary:this._readBinary(e,t);break;case i.Elem.AutoType:this._readAutoType(e);break;case i.Elem.History:this._readHistory(e,t);break;case i.Elem.CustomData:this._readCustomData(e)}},c.prototype._readField=function(e){var t=o.getChildNode(e,i.Elem.Key),n=o.getChildNode(e,i.Elem.Value),r=o.getText(t),a=o.getProtectedText(n);r&&(this.fields[r]=a)},c.prototype._writeFields=function(e){var t=this.fields;Object.keys(t).forEach((function(n){var r=t[n];if(null!=r){var a=o.addChildNode(e,i.Elem.String);o.setText(o.addChildNode(a,i.Elem.Key),n),o.setProtectedText(o.addChildNode(a,i.Elem.Value),r)}}))},c.prototype._readBinary=function(e,t){var n=o.getChildNode(e,i.Elem.Key),r=o.getChildNode(e,i.Elem.Value),a=o.getText(n),s=o.getProtectedBinary(r);a&&s&&(s.ref&&(s.ref=t.kdbx.binaries.idToHash[s.ref],s.ref?s.value=t.kdbx.binaries[s.ref]:s=null),s&&(this.binaries[a]=s))},c.prototype._writeBinaries=function(e,t){var n=this.binaries;Object.keys(n).forEach((function(r){var a=n[r];if(a){if(a.ref){var s=t.kdbx.binaries.hashOrder.indexOf(a.ref);if(s<0)return;a={ref:s.toString()}}var A=o.addChildNode(e,i.Elem.Binary);o.setText(o.addChildNode(A,i.Elem.Key),r),o.setProtectedBinary(o.addChildNode(A,i.Elem.Value),a)}}))},c.prototype._stringToTags=function(e){return e?e.split(u).filter((function(e){return e})):[]},c.prototype._readAutoType=function(e){for(var t=0,n=e.childNodes,r=n.length;t<r;t++){var s=n[t];switch(s.tagName){case i.Elem.AutoTypeEnabled:this.autoType.enabled=o.getBoolean(s),"boolean"!=typeof this.autoType.enabled&&(this.autoType.enabled=!0);break;case i.Elem.AutoTypeObfuscation:this.autoType.obfuscation=o.getNumber(s)||a.AutoTypeObfuscationOptions.None;break;case i.Elem.AutoTypeDefaultSeq:this.autoType.defaultSequence=o.getText(s);break;case i.Elem.AutoTypeItem:this._readAutoTypeItem(s)}}},c.prototype._readAutoTypeItem=function(e){for(var t={},n=0,r=e.childNodes,a=r.length;n<a;n++){var s=r[n];switch(s.tagName){case i.Elem.Window:t.window=o.getText(s);break;case i.Elem.KeystrokeSequence:t.keystrokeSequence=o.getText(s)}}this.autoType.items.push(t)},c.prototype._writeAutoType=function(e){var t=o.addChildNode(e,i.Elem.AutoType);o.setBoolean(o.addChildNode(t,i.Elem.AutoTypeEnabled),this.autoType.enabled),o.setNumber(o.addChildNode(t,i.Elem.AutoTypeObfuscation),this.autoType.obfuscation||a.AutoTypeObfuscationOptions.None),this.autoType.defaultSequence&&o.setText(o.addChildNode(t,i.Elem.AutoTypeDefaultSeq),this.autoType.defaultSequence);for(var n=0;n<this.autoType.items.length;n++){var r=this.autoType.items[n],s=o.addChildNode(t,i.Elem.AutoTypeItem);o.setText(o.addChildNode(s,i.Elem.Window),r.window),o.setText(o.addChildNode(s,i.Elem.KeystrokeSequence),r.keystrokeSequence)}},c.prototype._readHistory=function(e,t){for(var n=0,r=e.childNodes,o=r.length;n<o;n++){var a=r[n];switch(a.tagName){case i.Elem.Entry:this.history.push(c.read(a,t))}}},c.prototype._writeHistory=function(e,t){for(var n=o.addChildNode(e,i.Elem.History),r=0;r<this.history.length;r++)this.history[r].write(n,t)},c.prototype._readCustomData=function(e){this.customData=s.read(e)},c.prototype._writeCustomData=function(e){s.write(e,this.customData)},c.prototype._setField=function(e,t,n){this.fields[e]=n?r.fromString(t):t},c.prototype._addHistoryTombstone=function(e,t){this._editState||(this._editState={added:[],deleted:[]}),this._editState[e?"added":"deleted"].push(t.getTime())},c.prototype.write=function(e,t){var n=o.addChildNode(e,i.Elem.Entry);o.setUuid(o.addChildNode(n,i.Elem.Uuid),this.uuid),o.setNumber(o.addChildNode(n,i.Elem.Icon),this.icon||a.Icons.Key),this.customIcon&&o.setUuid(o.addChildNode(n,i.Elem.CustomIconID),this.customIcon),o.setText(o.addChildNode(n,i.Elem.FgColor),this.fgColor),o.setText(o.addChildNode(n,i.Elem.BgColor),this.bgColor),o.setText(o.addChildNode(n,i.Elem.OverrideUrl),this.overrideUrl),o.setText(o.addChildNode(n,i.Elem.Tags),this.tags.join(",")),this.times.write(n,t),this._writeFields(n),this._writeBinaries(n,t),this._writeAutoType(n),this._writeCustomData(n),e.tagName!==i.Elem.History&&this._writeHistory(n,t)},c.prototype.pushHistory=function(){var e=new c;e.copyFrom(this),this.history.push(e),this._addHistoryTombstone(!0,e.times.lastModTime)},c.prototype.removeHistory=function(e,t){void 0===t&&(t=1);for(var n=e;n<e+t;n++)n<this.history.length&&this._addHistoryTombstone(!1,this.history[n].times.lastModTime);this.history.splice(e,t)},c.prototype.copyFrom=function(e){this.uuid=e.uuid,this.icon=e.icon,this.customIcon=e.customIcon,this.fgColor=e.fgColor,this.bgColor=e.bgColor,this.overrideUrl=e.overrideUrl,this.tags=e.tags.slice(),this.times=e.times.clone(),this.fields={},Object.keys(e.fields).forEach((function(t){e.fields[t]instanceof r?this.fields[t]=e.fields[t].clone():this.fields[t]=e.fields[t]}),this),this.binaries={},Object.keys(e.binaries).forEach((function(t){e.binaries[t]instanceof r?this.binaries[t]=e.binaries[t].clone():e.binaries[t]&&e.binaries[t].ref?(this.binaries[t]={ref:e.binaries[t].ref},e.binaries[t].value&&(this.binaries[t].value=e.binaries[t].value)):this.binaries[t]=e.binaries[t]}),this),this.autoType=JSON.parse(JSON.stringify(e.autoType))},c.prototype.merge=function(e){var t=e.remote[this.uuid];if(t){var n=t.history.slice();if(this.times.lastModTime<t.times.lastModTime)this.pushHistory(),this.copyFrom(t);else if(this.times.lastModTime>t.times.lastModTime&&!this.history.some((function(e){return+e.times.lastModTime==+t.times.lastModTime}))){var r=new c;r.copyFrom(t),n.push(r)}this.history=this._mergeHistory(n,t.times.lastModTime)}},c.prototype._mergeHistory=function(e,t){this.history.sort((function(e,t){return e.times.lastModTime-t.times.lastModTime})),e.sort((function(e,t){return e.times.lastModTime-t.times.lastModTime}));var n={},r={};this.history.forEach((function(e){n[e.times.lastModTime.getTime()]=e})),e.forEach((function(e){r[e.times.lastModTime.getTime()]=e}));for(var i=0,o=0,a=[];i<this.history.length||o<e.length;){var s=this.history[i],A=e[o],l=s&&s.times.lastModTime.getTime(),u=A&&A.times.lastModTime.getTime();if(l!==u)if(!s||l>u){if(!this._editState||this._editState.deleted.indexOf(u)<0){var h=new c;h.copyFrom(A),a.push(h)}o++}else(this._editState&&this._editState.added.indexOf(l)>=0||l>t)&&a.push(s),i++;else a.push(s),i++,o++}return a},c.create=function(e,t){var n=new c(t);return n.uuid=A.random(),n.icon=a.Icons.Key,n.times=l.create(),n.parentGroup=t,n._setField("Title","",e.memoryProtection.title),n._setField("UserName",e.defaultUser||"",e.memoryProtection.userName),n._setField("Password","",e.memoryProtection.password),n._setField("URL","",e.memoryProtection.url),n._setField("Notes","",e.memoryProtection.notes),n.autoType.enabled="boolean"!=typeof t.enableAutoType||t.enableAutoType,n.autoType.obfuscation=a.AutoTypeObfuscationOptions.None,n},c.read=function(e,t,n){for(var r=new c,i=0,o=e.childNodes,a=o.length;i<a;i++){var s=o[i];s.tagName&&r._readNode(s,t)}if(!r.uuid){r.uuid=A.random();for(var l=0;l<r.history.length;l++)r.history[l].uuid=r.uuid}return r.parentGroup=n,r},e.exports=c},function(e,t,n){e.exports.Kdbx=n(30),e.exports.KdbxUuid=n(7),e.exports.KdbxError=n(2),e.exports.Credentials=n(26),e.exports.Consts=n(1),e.exports.ProtectedValue=n(9),e.exports.ByteUtils=n(0),e.exports.VarDictionary=n(13),e.exports.Int64=n(8),e.exports.Random=n(10),e.exports.CryptoEngine=n(3)},function(e,t,n){"use strict";var r=n(31),i=n(2),o=n(26),a=n(21),s=n(47),A=n(48),l=n(49),u=n(28),c=n(50),h=n(7),d=n(1),f=n(6),g=n(4),p=function(){this.header=void 0,this.credentials=void 0,this.meta=void 0,this.xml=void 0,this.binaries=new A,this.groups=[],this.deletedObjects=[],Object.preventExtensions(this)};p.create=function(e,t){if(!(e instanceof o))throw new i(d.ErrorCodes.InvalidArg,"credentials");var n=new p;return n.credentials=e,n.header=a.create(),n.meta=s.create(),n.meta._name=t,n.createDefaultGroup(),n.createRecycleBin(),n.meta._lastSelectedGroup=n.getDefaultGroup().id,n.meta._lastTopVisibleGroup=n.getDefaultGroup().id,n},p.load=function(e,t){if(!(e instanceof ArrayBuffer))return Promise.reject(new i(d.ErrorCodes.InvalidArg,"data"));if(!(t instanceof o))return Promise.reject(new i(d.ErrorCodes.InvalidArg,"credentials"));var n=new p;return n.credentials=t,new r(n).load(e)},p.loadXml=function(e,t){if("string"!=typeof e)return Promise.reject(new i(d.ErrorCodes.InvalidArg,"data"));if(!(t instanceof o))return Promise.reject(new i(d.ErrorCodes.InvalidArg,"credentials"));var n=new p;return n.credentials=t,new r(n).loadXml(e)},p.prototype.save=function(){return new r(this).save()},p.prototype.saveXml=function(e){return new r(this).saveXml(e)},p.prototype.createDefaultGroup=function(){if(!this.groups.length){var e=l.create(this.meta.name);e.icon=d.Icons.FolderOpen,e.expanded=!0,this.groups.push(e)}},p.prototype.createRecycleBin=function(){if(this.meta.recycleBinEnabled=!0,!this.meta.recycleBinUuid||!this.getGroup(this.meta.recycleBinUuid)){var e=this.getDefaultGroup(),t=l.create(d.Defaults.RecycleBinName,e);t.icon=d.Icons.TrashBin,t.enableAutoType=!1,t.enableSearching=!1,this.meta.recycleBinUuid=t.uuid,e.groups.push(t)}},p.prototype.createGroup=function(e,t){var n=l.create(t,e);return e.groups.push(n),n},p.prototype.createEntry=function(e){var t=u.create(this.meta,e);return e.entries.push(t),t},p.prototype.getDefaultGroup=function(){return this.groups[0]},p.prototype.getGroup=function(e,t){for(var n=t?t.groups:this.groups,r=0;r<n.length;r++){if(n[r].uuid.id===e.id)return n[r];var i=this.getGroup(e,n[r]);if(i)return i}},p.prototype.move=function(e,t,n){var r=e instanceof l?"groups":"entries",i=e.parentGroup[r],o=i.indexOf(e);if(!(o<0)){if(i.splice(o,1),t)"number"==typeof n&&n>=0?t[r].splice(n,0,e):t[r].push(e);else{var a=new Date;e instanceof l?e.forEach((function(e,t){this.addDeletedObject((e||t).uuid,a)}),this):this.addDeletedObject(e.uuid,a)}e.parentGroup=t,e.times.locationChanged=new Date}},p.prototype.addDeletedObject=function(e,t){var n=new c;n.uuid=e,n.deletionTime=t,this.deletedObjects.push(n)},p.prototype.remove=function(e){var t=null;this.meta.recycleBinEnabled&&(this.createRecycleBin(),t=this.getGroup(this.meta.recycleBinUuid)),this.move(e,t)},p.prototype.createBinary=function(e){return this.binaries.add(e)},p.prototype.importEntry=function(e,t,n){var r=new u,i=h.random();r.copyFrom(e),r.uuid=i,e.history.forEach((function(e){var t=new u;t.copyFrom(e),t.uuid=i,r.history.push(t)}));var o={},a={};return r.history.concat(r).forEach((function(e){e.customIcon&&(a[e.customIcon]=e.customIcon),Object.values(e.binaries).forEach((function(e){e.ref&&(o[e.ref]=e)}))})),Object.values(o).forEach((function(e){var t=n.binaries[e.ref];t&&!this.binaries[e.ref]&&(this.binaries[e.ref]=t)}),this),Object.values(a).forEach((function(e){var t=n.meta.customIcons[e];t&&(this.meta.customIcons[e]=t)}),this),t.entries.push(r),r.parentGroup=t,r.times.update(),r},p.prototype.cleanup=function(e){var t=new Date,n=e&&e.historyRules&&"number"==typeof this.meta.historyMaxItems&&this.meta.historyMaxItems>=0?this.meta.historyMaxItems:1/0,r={},i={},o=function(e){e&&e.customIcon&&(r[e.customIcon]=!0),e&&e.binaries&&Object.keys(e.binaries).forEach((function(t){e.binaries[t]&&e.binaries[t].ref&&(i[e.binaries[t].ref]=!0)}))};this.getDefaultGroup().forEach((function(e,t){e&&e.history.length>n&&e.removeHistory(0,e.history.length-n),e&&o(e),e&&e.history&&e.history.forEach((function(e){o(e)})),t&&t.customIcon&&(r[t.customIcon]=!0)})),e&&e.customIcons&&Object.keys(this.meta.customIcons).forEach((function(e){if(!r[e]){var n=new h(e);this.addDeletedObject(n,t),delete this.meta.customIcons[e]}}),this),e&&e.binaries&&Object.keys(this.binaries).forEach((function(e){i[e]||delete this.binaries[e]}),this)},p.prototype.merge=function(e){var t=this.getDefaultGroup(),n=e.getDefaultGroup();if(!t||!n)throw new i(d.ErrorCodes.MergeError,"no default group");if(!t.uuid.equals(n.uuid))throw new i(d.ErrorCodes.MergeError,"default group is different");var r=this._getObjectMap();e.deletedObjects.forEach((function(e){r.deleted[e.uuid]||(this.deletedObjects.push(e),r.deleted[e.uuid]=e.deletionTime)}),this),Object.keys(e.binaries).forEach((function(t){this.binaries[t]||r.deleted[t]||(this.binaries[t]=e.binaries[t])}),this),r.remote=e._getObjectMap().objects,this.meta.merge(e.meta,r),t.merge(r),this.cleanup({historyRules:!0,customIcons:!0,binaries:!0})},p.prototype.getLocalEditState=function(){var e={};return this.getDefaultGroup().forEach((function(t){t&&t._editState&&(e[t.uuid]=t._editState)})),this.meta._editState&&(e.meta=this.meta._editState),e},p.prototype.setLocalEditState=function(e){this.getDefaultGroup().forEach((function(t){t&&e[t.uuid]&&(t._editState=e[t.uuid])})),e.meta&&(this.meta._editState=e.meta)},p.prototype.removeLocalEditState=function(){this.getDefaultGroup().forEach((function(e){e&&(e._editState=void 0)})),this.meta._editState=void 0},p.prototype.upgrade=function(){this.setVersion(a.MaxFileVersion)},p.prototype.setVersion=function(e){this.meta.headerHash=null,this.meta.settingsChanged=new Date,this.header.setVersion(e)},p.prototype.setKdf=function(e){this.meta.headerHash=null,this.meta.settingsChanged=new Date,this.header.setKdf(e)},p.prototype._getObjectMap=function(){var e={},t={};return this.getDefaultGroup().forEach((function(t,n){var r=t||n;if(e[r.uuid])throw new i(d.ErrorCodes.MergeError,"Duplicate: "+r.uuid);e[r.uuid]=r})),this.deletedObjects.forEach((function(e){t[e.uuid]=e.deletionTime})),{objects:e,deleted:t}},p.prototype._loadFromXml=function(e){if(this.xml.documentElement.tagName!==f.Elem.DocNode)throw new i(d.ErrorCodes.FileCorrupt,"bad xml root");this._parseMeta(e);var t=this;return this.binaries.hash().then((function(){return t._parseRoot(e),t}))},p.prototype._parseMeta=function(e){var t=g.getChildNode(this.xml.documentElement,f.Elem.Meta,"no meta node");this.meta=s.read(t,e)},p.prototype._parseRoot=function(e){this.groups=[],this.deletedObjects=[];for(var t=0,n=g.getChildNode(this.xml.documentElement,f.Elem.Root,"no root node").childNodes,r=n.length;t<r;t++){var i=n[t];switch(i.tagName){case f.Elem.Group:this._readGroup(i,e);break;case f.Elem.DeletedObjects:this._readDeletedObjects(i)}}},p.prototype._readDeletedObjects=function(e){for(var t=0,n=e.childNodes,r=n.length;t<r;t++){var i=n[t];switch(i.tagName){case f.Elem.DeletedObject:this.deletedObjects.push(c.read(i))}}},p.prototype._readGroup=function(e,t){this.groups.push(l.read(e,t))},p.prototype._buildXml=function(e){var t=g.create(f.Elem.DocNode);this.meta.write(t.documentElement,e);var n=g.addChildNode(t.documentElement,f.Elem.Root);this.groups.forEach((function(t){t.write(n,e)}),this);var r=g.addChildNode(n,f.Elem.DeletedObjects);this.deletedObjects.forEach((function(t){t.write(r,e)}),this),this.xml=t},e.exports=p},function(e,t,n){"use strict";var r=n(15),i=n(2),o=n(21),a=n(41),s=n(3),A=n(11),l=n(0),u=n(4),c=n(8),h=n(1),d=n(43),f=n(44),g=n(45),p=n(25),m=n(46),I=function(e){this.kdbx=e};I.prototype.load=function(e){var t=new A(e),n=this.kdbx,r=this;return r.ctx=new a({kdbx:n}),n.credentials.ready.then((function(){if(n.header=o.read(t,r.ctx),3===n.header.versionMajor)return r._loadV3(t);if(4===n.header.versionMajor)return r._loadV4(t);throw new i(h.ErrorCodes.InvalidVersion,"bad version: "+n.header.versionMajor)}))},I.prototype._loadV3=function(e){var t=this.kdbx,n=this;return n._decryptXmlV3(t,e).then((function(r){return t.xml=u.parse(r),n._setProtectedValues().then((function(){return t._loadFromXml(n.ctx).then((function(){return n._checkHeaderHashV3(e).then((function(){return t}))}))}))}))},I.prototype._loadV4=function(e){var t=this;return t._getHeaderHash(e).then((function(n){var o=e.readBytes(n.byteLength);if(!l.arrayBufferEquals(o,n))throw new i(h.ErrorCodes.FileCorrupt,"header hash mismatch");return t._computeKeysV4().then((function(n){return t._getHeaderHmac(e,n.hmacKey).then((function(o){var a=e.readBytes(o.byteLength);if(!l.arrayBufferEquals(a,o))throw new i(h.ErrorCodes.InvalidKey);return f.decrypt(e.readBytesToEnd(),n.hmacKey).then((function(i){return l.zeroBuffer(n.hmacKey),t._decryptData(i,n.cipherKey).then((function(i){l.zeroBuffer(n.cipherKey),t.kdbx.header.compression===h.CompressionAlgorithm.GZip&&(i=r.ungzip(i)),e=new A(l.arrayToBuffer(i)),t.kdbx.header.readInnerHeader(e,t.ctx),i=e.readBytesToEnd();var o=l.bytesToString(i);return t.kdbx.xml=u.parse(o),t._setProtectedValues().then((function(){return t.kdbx._loadFromXml(t.ctx)}))}))}))}))}))}))},I.prototype.loadXml=function(e){var t=this.kdbx,n=new a({kdbx:t});return t.credentials.ready.then((function(){return t.header=o.create(),t.xml=u.parse(e),u.protectPlainValues(t.xml.documentElement),t._loadFromXml(n)}))},I.prototype.save=function(){var e=this.kdbx,t=this;return t.ctx=new a({kdbx:e}),e.binaries.assignIds(),e.credentials.ready.then((function(){var n=new A;if(e.header.generateSalts(),e.header.write(n),3===e.header.versionMajor)return t._saveV3(n);if(4===e.header.versionMajor)return t._saveV4(n);throw new i(h.ErrorCodes.InvalidVersion,"bad version: "+e.header.versionMajor)}))},I.prototype._saveV3=function(e){var t=this;return t._getHeaderHash(e).then((function(n){return t.kdbx.meta.headerHash=n,t.kdbx._buildXml(t.ctx),t._getProtectSaltGenerator().then((function(n){return u.updateProtectedValuesSalt(t.kdbx.xml.documentElement,n),t._encryptXmlV3().then((function(t){return e.writeBytes(t),e.getWrittenBytes()}))}))}))},I.prototype._saveV4=function(e){var t=this;return t.kdbx._buildXml(t.ctx),t._getHeaderHash(e).then((function(n){return e.writeBytes(n),t._computeKeysV4().then((function(n){return t._getHeaderHmac(e,n.hmacKey).then((function(i){return e.writeBytes(i),t._getProtectSaltGenerator().then((function(i){u.updateProtectedValuesSalt(t.kdbx.xml.documentElement,i);var o=u.serialize(t.kdbx.xml),a=new A;t.kdbx.header.writeInnerHeader(a,t.ctx);var s=a.getWrittenBytes(),c=l.arrayToBuffer(l.stringToBytes(o)),d=new ArrayBuffer(s.byteLength+c.byteLength),g=new Uint8Array(d);return g.set(new Uint8Array(s)),g.set(new Uint8Array(c),s.byteLength),l.zeroBuffer(c),l.zeroBuffer(s),t.kdbx.header.compression===h.CompressionAlgorithm.GZip&&(d=r.gzip(d)),t._encryptData(l.arrayToBuffer(d),n.cipherKey).then((function(t){return l.zeroBuffer(n.cipherKey),f.encrypt(t,n.hmacKey).then((function(t){return l.zeroBuffer(n.hmacKey),e.writeBytes(t),e.getWrittenBytes()}))}))}))}))}))}))},I.prototype.saveXml=function(e){var t=this.kdbx;return t.credentials.ready.then((function(){t.header.generateSalts();var n=new a({kdbx:t,exportXml:!0});t.binaries.assignIds(),t._buildXml(n),u.unprotectValues(t.xml.documentElement);var r=u.serialize(t.xml,e);return u.protectUnprotectedValues(t.xml.documentElement),r}))},I.prototype._decryptXmlV3=function(e,t){var n=t.readBytesToEnd(),i=this;return i._getMasterKeyV3().then((function(e){return i._decryptData(n,e).then((function(t){return l.zeroBuffer(e),t=i._trimStartBytesV3(t),d.decrypt(t).then((function(e){return i.kdbx.header.compression===h.CompressionAlgorithm.GZip&&(e=r.ungzip(e)),l.bytesToString(e)}))}))}))},I.prototype._encryptXmlV3=function(){var e=this.kdbx,t=this,n=u.serialize(e.xml),i=l.arrayToBuffer(l.stringToBytes(n));return e.header.compression===h.CompressionAlgorithm.GZip&&(i=r.gzip(i)),d.encrypt(l.arrayToBuffer(i)).then((function(n){var r=new Uint8Array(e.header.streamStartBytes),i=new Uint8Array(n.byteLength+r.length);return i.set(r),i.set(new Uint8Array(n),r.length),n=i,t._getMasterKeyV3().then((function(e){return t._encryptData(l.arrayToBuffer(n),e).then((function(t){return l.zeroBuffer(e),t}))}))}))},I.prototype._getMasterKeyV3=function(){var e=this.kdbx;return e.credentials.getHash().then((function(t){var n=e.header.transformSeed,r=e.header.keyEncryptionRounds,i=e.header.masterSeed;return e.credentials.getChallengeResponse(i).then((function(e){return p.encrypt(new Uint8Array(t),n,r).then((function(n){return l.zeroBuffer(t),s.sha256(n).then((function(t){l.zeroBuffer(n);var r=e?e.byteLength:0,o=new Uint8Array(i.byteLength+t.byteLength+r);return o.set(new Uint8Array(i),0),e&&o.set(new Uint8Array(e),i.byteLength),o.set(new Uint8Array(t),i.byteLength+r),l.zeroBuffer(t),l.zeroBuffer(i),e&&l.zeroBuffer(e),s.sha256(o.buffer).then((function(e){return l.zeroBuffer(o.buffer),e}))}))}))}))}))},I.prototype._trimStartBytesV3=function(e){var t=this.kdbx.header.streamStartBytes;if(e.byteLength<t.byteLength)throw new i(h.ErrorCodes.FileCorrupt,"short start bytes");if(!l.arrayBufferEquals(e.slice(0,this.kdbx.header.streamStartBytes.byteLength),t))throw new i(h.ErrorCodes.InvalidKey);return e.slice(t.byteLength)},I.prototype._setProtectedValues=function(){var e=this.kdbx;return this._getProtectSaltGenerator().then((function(t){u.setProtectedValues(e.xml.documentElement,t)}))},I.prototype._getProtectSaltGenerator=function(){return g.create(this.kdbx.header.protectedStreamKey,this.kdbx.header.crsAlgorithm)},I.prototype._getHeaderHash=function(e){var t=e.readBytesNoAdvance(0,this.kdbx.header.endPos);return s.sha256(t)},I.prototype._getHeaderHmac=function(e,t){var n=e.readBytesNoAdvance(0,this.kdbx.header.endPos);return f.getHmacKey(t,new c(4294967295,4294967295)).then((function(e){return s.hmacSha256(e,n)}))},I.prototype._checkHeaderHashV3=function(e){if(this.kdbx.meta.headerHash){var t=this.kdbx.meta.headerHash;return this._getHeaderHash(e).then((function(e){if(!l.arrayBufferEquals(t,e))throw new i(h.ErrorCodes.FileCorrupt,"header hash mismatch")}))}return Promise.resolve()},I.prototype._computeKeysV4=function(){var e=this.kdbx.header.masterSeed;if(!e||32!==e.byteLength)return Promise.reject(new i(h.ErrorCodes.FileCorrupt,"bad master seed"));var t=this.kdbx.header.kdfParameters,n=t.get("S");return this.kdbx.credentials.getHash(n).then((function(n){return m.encrypt(n,t).then((function(t){if(l.zeroBuffer(n),!t||32!==t.byteLength)return Promise.reject(new i(h.ErrorCodes.Unsupported,"bad derived key"));var r=new Uint8Array(65);return r.set(new Uint8Array(e),0),r.set(new Uint8Array(t),e.byteLength),r[64]=1,l.zeroBuffer(t),l.zeroBuffer(e),Promise.all([s.sha256(r.buffer.slice(0,64)),s.sha512(r.buffer)]).then((function(e){return l.zeroBuffer(r),{cipherKey:e[0],hmacKey:e[1]}}))}))}))},I.prototype._decryptData=function(e,t){switch(this.kdbx.header.dataCipherUuid.toString()){case h.CipherId.Aes:return this._transformDataV4Aes(e,t,!1);case h.CipherId.ChaCha20:return this._transformDataV4ChaCha20(e,t);default:return Promise.reject(new i(h.ErrorCodes.Unsupported,"unsupported cipher"))}},I.prototype._encryptData=function(e,t){switch(this.kdbx.header.dataCipherUuid.toString()){case h.CipherId.Aes:return this._transformDataV4Aes(e,t,!0);case h.CipherId.ChaCha20:return this._transformDataV4ChaCha20(e,t);default:return Promise.reject(new i(h.ErrorCodes.Unsupported,"unsupported cipher"))}},I.prototype._transformDataV4Aes=function(e,t,n){var r=this,i=s.createAesCbc();return i.importKey(t).then((function(){return n?i.encrypt(e,r.kdbx.header.encryptionIV):i.decrypt(e,r.kdbx.header.encryptionIV)}))},I.prototype._transformDataV4ChaCha20=function(e,t){return s.chacha20(e,t,this.kdbx.header.encryptionIV)},e.exports=I},function(e,t,n){"use strict";var r=n(33),i=n(5),o=n(18),a=n(12),s=n(19),A=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var n=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==n)throw new Error(a[n]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var u;if(u="string"==typeof t.dictionary?o.string2buf(t.dictionary):"[object ArrayBuffer]"===A.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(n=r.deflateSetDictionary(this.strm,u)))throw new Error(a[n]);this._dict_set=!0}}function u(e,t){var n=new l(t);if(n.push(e,!0),n.err)throw n.msg;return n.result}l.prototype.push=function(e,t){var n,a,s=this.strm,l=this.options.chunkSize;if(this.ended)return!1;a=t===~~t?t:!0===t?4:0,"string"==typeof e?s.input=o.string2buf(e):"[object ArrayBuffer]"===A.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new i.Buf8(l),s.next_out=0,s.avail_out=l),1!==(n=r.deflate(s,a))&&0!==n)return this.onEnd(n),this.ended=!0,!1;0!==s.avail_out&&(0!==s.avail_in||4!==a&&2!==a)||("string"===this.options.to?this.onData(o.buf2binstring(i.shrinkBuf(s.output,s.next_out))):this.onData(i.shrinkBuf(s.output,s.next_out)))}while((s.avail_in>0||0===s.avail_out)&&1!==n);return 4===a?(n=r.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,0===n):2!==a||(this.onEnd(0),s.avail_out=0,!0)},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=l,t.deflate=u,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,u(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,u(e,t)}},function(e,t,n){"use strict";var r,i=n(5),o=n(34),a=n(16),s=n(17),A=n(12);function l(e,t){return e.msg=A[t],t}function u(e){return(e<<1)-(e>4?9:0)}function c(e){for(var t=e.length;--t>=0;)e[t]=0}function h(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function d(e,t){o._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,h(e.strm)}function f(e,t){e.pending_buf[e.pending++]=t}function g(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function p(e,t){var n,r,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match,A=e.strstart>e.w_size-262?e.strstart-(e.w_size-262):0,l=e.window,u=e.w_mask,c=e.prev,h=e.strstart+258,d=l[o+a-1],f=l[o+a];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(n=t)+a]===f&&l[n+a-1]===d&&l[n]===l[o]&&l[++n]===l[o+1]){o+=2,n++;do{}while(l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&o<h);if(r=258-(h-o),o=h-258,r>a){if(e.match_start=t,a=r,r>=s)break;d=l[o+a-1],f=l[o+a]}}}while((t=c[t&u])>A&&0!=--i);return a<=e.lookahead?a:e.lookahead}function m(e){var t,n,r,o,A,l,u,c,h,d,f=e.w_size;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-262)){i.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=r>=f?r-f:0}while(--n);t=n=f;do{r=e.prev[--t],e.prev[t]=r>=f?r-f:0}while(--n);o+=f}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,c=e.strstart+e.lookahead,h=o,d=void 0,(d=l.avail_in)>h&&(d=h),n=0===d?0:(l.avail_in-=d,i.arraySet(u,l.input,l.next_in,d,c),1===l.state.wrap?l.adler=a(l.adler,u,d,c):2===l.state.wrap&&(l.adler=s(l.adler,u,d,c)),l.next_in+=d,l.total_in+=d,d),e.lookahead+=n,e.lookahead+e.insert>=3)for(A=e.strstart-e.insert,e.ins_h=e.window[A],e.ins_h=(e.ins_h<<e.hash_shift^e.window[A+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[A+3-1])&e.hash_mask,e.prev[A&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=A,A++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<262&&0!==e.strm.avail_in)}function I(e,t){for(var n,r;;){if(e.lookahead<262){if(m(e),e.lookahead<262&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==n&&e.strstart-n<=e.w_size-262&&(e.match_length=p(e,n)),e.match_length>=3)if(r=o._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else r=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(d(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(d(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(d(e,!1),0===e.strm.avail_out)?1:2}function y(e,t){for(var n,r,i;;){if(e.lookahead<262){if(m(e),e.lookahead<262&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==n&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-262&&(e.match_length=p(e,n),e.match_length<=5&&(1===e.strategy||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,r=o._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=2,e.strstart++,r&&(d(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=o._tr_tally(e,0,e.window[e.strstart-1]))&&d(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=o._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(d(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(d(e,!1),0===e.strm.avail_out)?1:2}function B(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function C(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(1146),this.dyn_dtree=new i.Buf16(122),this.bl_tree=new i.Buf16(78),c(this.dyn_ltree),c(this.dyn_dtree),c(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(16),this.heap=new i.Buf16(573),c(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),c(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function E(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:113,e.adler=2===t.wrap?0:1,t.last_flush=0,o._tr_init(t),0):l(e,-2)}function w(e){var t,n=E(e);return 0===n&&((t=e.state).window_size=2*t.w_size,c(t.head),t.max_lazy_match=r[t.level].max_lazy,t.good_match=r[t.level].good_length,t.nice_match=r[t.level].nice_length,t.max_chain_length=r[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),n}function v(e,t,n,r,o,a){if(!e)return-2;var s=1;if(-1===t&&(t=6),r<0?(s=0,r=-r):r>15&&(s=2,r-=16),o<1||o>9||8!==n||r<8||r>15||t<0||t>9||a<0||a>4)return l(e,-2);8===r&&(r=9);var A=new C;return e.state=A,A.strm=e,A.wrap=s,A.gzhead=null,A.w_bits=r,A.w_size=1<<A.w_bits,A.w_mask=A.w_size-1,A.hash_bits=o+7,A.hash_size=1<<A.hash_bits,A.hash_mask=A.hash_size-1,A.hash_shift=~~((A.hash_bits+3-1)/3),A.window=new i.Buf8(2*A.w_size),A.head=new i.Buf16(A.hash_size),A.prev=new i.Buf16(A.w_size),A.lit_bufsize=1<<o+6,A.pending_buf_size=4*A.lit_bufsize,A.pending_buf=new i.Buf8(A.pending_buf_size),A.d_buf=1*A.lit_bufsize,A.l_buf=3*A.lit_bufsize,A.level=t,A.strategy=a,A.method=n,w(e)}r=[new B(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(m(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,d(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-262&&(d(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(d(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(d(e,!1),e.strm.avail_out),1)})),new B(4,4,8,4,I),new B(4,5,16,8,I),new B(4,6,32,32,I),new B(4,4,16,16,y),new B(8,16,32,32,y),new B(8,16,128,128,y),new B(8,32,128,256,y),new B(32,128,258,1024,y),new B(32,258,258,4096,y)],t.deflateInit=function(e,t){return v(e,t,8,15,8,0)},t.deflateInit2=v,t.deflateReset=w,t.deflateResetKeep=E,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?-2:(e.state.gzhead=t,0):-2},t.deflate=function(e,t){var n,i,a,A;if(!e||!e.state||t>5||t<0)return e?l(e,-2):-2;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return l(e,0===e.avail_out?-5:-2);if(i.strm=e,n=i.last_flush,i.last_flush=t,42===i.status)if(2===i.wrap)e.adler=0,f(i,31),f(i,139),f(i,8),i.gzhead?(f(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),f(i,255&i.gzhead.time),f(i,i.gzhead.time>>8&255),f(i,i.gzhead.time>>16&255),f(i,i.gzhead.time>>24&255),f(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),f(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(f(i,255&i.gzhead.extra.length),f(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(f(i,0),f(i,0),f(i,0),f(i,0),f(i,0),f(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),f(i,3),i.status=113);else{var p=8+(i.w_bits-8<<4)<<8;p|=(i.strategy>=2||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(p|=32),p+=31-p%31,i.status=113,g(i,p),0!==i.strstart&&(g(i,e.adler>>>16),g(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),h(e),a=i.pending,i.pending!==i.pending_buf_size));)f(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),h(e),a=i.pending,i.pending===i.pending_buf_size)){A=1;break}A=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,f(i,A)}while(0!==A);i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),0===A&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),h(e),a=i.pending,i.pending===i.pending_buf_size)){A=1;break}A=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,f(i,A)}while(0!==A);i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),0===A&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&h(e),i.pending+2<=i.pending_buf_size&&(f(i,255&e.adler),f(i,e.adler>>8&255),e.adler=0,i.status=113)):i.status=113),0!==i.pending){if(h(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&u(t)<=u(n)&&4!==t)return l(e,-5);if(666===i.status&&0!==e.avail_in)return l(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var I=2===i.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(m(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,n=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(d(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(d(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(d(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var n,r,i,a,s=e.window;;){if(e.lookahead<=258){if(m(e),e.lookahead<=258&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(r=s[i=e.strstart-1])===s[++i]&&r===s[++i]&&r===s[++i]){a=e.strstart+258;do{}while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&i<a);e.match_length=258-(a-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(n=o._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(d(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(d(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(d(e,!1),0===e.strm.avail_out)?1:2}(i,t):r[i.level].func(i,t);if(3!==I&&4!==I||(i.status=666),1===I||3===I)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===I&&(1===t?o._tr_align(i):5!==t&&(o._tr_stored_block(i,0,0,!1),3===t&&(c(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),h(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(f(i,255&e.adler),f(i,e.adler>>8&255),f(i,e.adler>>16&255),f(i,e.adler>>24&255),f(i,255&e.total_in),f(i,e.total_in>>8&255),f(i,e.total_in>>16&255),f(i,e.total_in>>24&255)):(g(i,e.adler>>>16),g(i,65535&e.adler)),h(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?0:1)},t.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&113!==t&&666!==t?l(e,-2):(e.state=null,113===t?l(e,-3):0):-2},t.deflateSetDictionary=function(e,t){var n,r,o,s,A,l,u,h,d=t.length;if(!e||!e.state)return-2;if(2===(s=(n=e.state).wrap)||1===s&&42!==n.status||n.lookahead)return-2;for(1===s&&(e.adler=a(e.adler,t,d,0)),n.wrap=0,d>=n.w_size&&(0===s&&(c(n.head),n.strstart=0,n.block_start=0,n.insert=0),h=new i.Buf8(n.w_size),i.arraySet(h,t,d-n.w_size,n.w_size,0),t=h,d=n.w_size),A=e.avail_in,l=e.next_in,u=e.input,e.avail_in=d,e.next_in=0,e.input=t,m(n);n.lookahead>=3;){r=n.strstart,o=n.lookahead-2;do{n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+3-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++}while(--o);n.strstart=r,n.lookahead=2,m(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=l,e.input=u,e.avail_in=A,n.wrap=s,0},t.deflateInfo="pako deflate (from Nodeca project)"},function(e,t,n){"use strict";var r=n(5);function i(e){for(var t=e.length;--t>=0;)e[t]=0}var o=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],a=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],A=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],l=new Array(576);i(l);var u=new Array(60);i(u);var c=new Array(512);i(c);var h=new Array(256);i(h);var d=new Array(29);i(d);var f,g,p,m=new Array(30);function I(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function y(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function B(e){return e<256?c[e]:c[256+(e>>>7)]}function C(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function E(e,t,n){e.bi_valid>16-n?(e.bi_buf|=t<<e.bi_valid&65535,C(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function w(e,t,n){E(e,n[2*t],n[2*t+1])}function v(e,t){var n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}function b(e,t,n){var r,i,o=new Array(16),a=0;for(r=1;r<=15;r++)o[r]=a=a+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=v(o[s]++,s))}}function Q(e){var t;for(t=0;t<286;t++)e.dyn_ltree[2*t]=0;for(t=0;t<30;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function k(e){e.bi_valid>8?C(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function x(e,t,n,r){var i=2*t,o=2*n;return e[i]<e[o]||e[i]===e[o]&&r[t]<=r[n]}function _(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&x(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!x(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function D(e,t,n){var r,i,s,A,l=0;if(0!==e.last_lit)do{r=e.pending_buf[e.d_buf+2*l]<<8|e.pending_buf[e.d_buf+2*l+1],i=e.pending_buf[e.l_buf+l],l++,0===r?w(e,i,t):(w(e,(s=h[i])+256+1,t),0!==(A=o[s])&&E(e,i-=d[s],A),w(e,s=B(--r),n),0!==(A=a[s])&&E(e,r-=m[s],A))}while(l<e.last_lit);w(e,256,t)}function S(e,t){var n,r,i,o=t.dyn_tree,a=t.stat_desc.static_tree,s=t.stat_desc.has_stree,A=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=573,n=0;n<A;n++)0!==o[2*n]?(e.heap[++e.heap_len]=l=n,e.depth[n]=0):o[2*n+1]=0;for(;e.heap_len<2;)o[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=a[2*i+1]);for(t.max_code=l,n=e.heap_len>>1;n>=1;n--)_(e,o,n);i=A;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],_(e,o,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,o[2*i]=o[2*n]+o[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,o[2*n+1]=o[2*r+1]=i,e.heap[1]=i++,_(e,o,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,o,a,s,A=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,c=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,f=t.stat_desc.max_length,g=0;for(o=0;o<=15;o++)e.bl_count[o]=0;for(A[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<573;n++)(o=A[2*A[2*(r=e.heap[n])+1]+1]+1)>f&&(o=f,g++),A[2*r+1]=o,r>l||(e.bl_count[o]++,a=0,r>=d&&(a=h[r-d]),s=A[2*r],e.opt_len+=s*(o+a),c&&(e.static_len+=s*(u[2*r+1]+a)));if(0!==g){do{for(o=f-1;0===e.bl_count[o];)o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[f]--,g-=2}while(g>0);for(o=f;0!==o;o--)for(r=e.bl_count[o];0!==r;)(i=e.heap[--n])>l||(A[2*i+1]!==o&&(e.opt_len+=(o-A[2*i+1])*A[2*i],A[2*i+1]=o),r--)}}(e,t),b(o,l,e.bl_count)}function N(e,t,n){var r,i,o=-1,a=t[1],s=0,A=7,l=4;for(0===a&&(A=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=a,a=t[2*(r+1)+1],++s<A&&i===a||(s<l?e.bl_tree[2*i]+=s:0!==i?(i!==o&&e.bl_tree[2*i]++,e.bl_tree[32]++):s<=10?e.bl_tree[34]++:e.bl_tree[36]++,s=0,o=i,0===a?(A=138,l=3):i===a?(A=6,l=3):(A=7,l=4))}function M(e,t,n){var r,i,o=-1,a=t[1],s=0,A=7,l=4;for(0===a&&(A=138,l=3),r=0;r<=n;r++)if(i=a,a=t[2*(r+1)+1],!(++s<A&&i===a)){if(s<l)do{w(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==o&&(w(e,i,e.bl_tree),s--),w(e,16,e.bl_tree),E(e,s-3,2)):s<=10?(w(e,17,e.bl_tree),E(e,s-3,3)):(w(e,18,e.bl_tree),E(e,s-11,7));s=0,o=i,0===a?(A=138,l=3):i===a?(A=6,l=3):(A=7,l=4)}}i(m);var T=!1;function F(e,t,n,i){E(e,0+(i?1:0),3),function(e,t,n,i){k(e),C(e,n),C(e,~n),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n)}t._tr_init=function(e){T||(function(){var e,t,n,r,i,A=new Array(16);for(n=0,r=0;r<28;r++)for(d[r]=n,e=0;e<1<<o[r];e++)h[n++]=r;for(h[n-1]=r,i=0,r=0;r<16;r++)for(m[r]=i,e=0;e<1<<a[r];e++)c[i++]=r;for(i>>=7;r<30;r++)for(m[r]=i<<7,e=0;e<1<<a[r]-7;e++)c[256+i++]=r;for(t=0;t<=15;t++)A[t]=0;for(e=0;e<=143;)l[2*e+1]=8,e++,A[8]++;for(;e<=255;)l[2*e+1]=9,e++,A[9]++;for(;e<=279;)l[2*e+1]=7,e++,A[7]++;for(;e<=287;)l[2*e+1]=8,e++,A[8]++;for(b(l,287,A),e=0;e<30;e++)u[2*e+1]=5,u[2*e]=v(e,5);f=new I(l,o,257,286,15),g=new I(u,a,0,30,15),p=new I(new Array(0),s,0,19,7)}(),T=!0),e.l_desc=new y(e.dyn_ltree,f),e.d_desc=new y(e.dyn_dtree,g),e.bl_desc=new y(e.bl_tree,p),e.bi_buf=0,e.bi_valid=0,Q(e)},t._tr_stored_block=F,t._tr_flush_block=function(e,t,n,r){var i,o,a=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<256;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),S(e,e.l_desc),S(e,e.d_desc),a=function(e){var t;for(N(e,e.dyn_ltree,e.l_desc.max_code),N(e,e.dyn_dtree,e.d_desc.max_code),S(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*A[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(o=e.static_len+3+7>>>3)<=i&&(i=o)):i=o=n+5,n+4<=i&&-1!==t?F(e,t,n,r):4===e.strategy||o===i?(E(e,2+(r?1:0),3),D(e,l,u)):(E(e,4+(r?1:0),3),function(e,t,n,r){var i;for(E(e,t-257,5),E(e,n-1,5),E(e,r-4,4),i=0;i<r;i++)E(e,e.bl_tree[2*A[i]+1],3);M(e,e.dyn_ltree,t-1),M(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),D(e,e.dyn_ltree,e.dyn_dtree)),Q(e),r&&k(e)},t._tr_tally=function(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(h[n]+256+1)]++,e.dyn_dtree[2*B(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){E(e,2,3),w(e,256,l),function(e){16===e.bi_valid?(C(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},function(e,t,n){"use strict";var r=n(36),i=n(5),o=n(18),a=n(20),s=n(12),A=n(19),l=n(39),u=Object.prototype.toString;function c(e){if(!(this instanceof c))return new c(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new A,this.strm.avail_out=0;var n=r.inflateInit2(this.strm,t.windowBits);if(n!==a.Z_OK)throw new Error(s[n]);this.header=new l,r.inflateGetHeader(this.strm,this.header)}function h(e,t){var n=new c(t);if(n.push(e,!0),n.err)throw n.msg;return n.result}c.prototype.push=function(e,t){var n,s,A,l,c,h,d=this.strm,f=this.options.chunkSize,g=this.options.dictionary,p=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?a.Z_FINISH:a.Z_NO_FLUSH,"string"==typeof e?d.input=o.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?d.input=new Uint8Array(e):d.input=e,d.next_in=0,d.avail_in=d.input.length;do{if(0===d.avail_out&&(d.output=new i.Buf8(f),d.next_out=0,d.avail_out=f),(n=r.inflate(d,a.Z_NO_FLUSH))===a.Z_NEED_DICT&&g&&(h="string"==typeof g?o.string2buf(g):"[object ArrayBuffer]"===u.call(g)?new Uint8Array(g):g,n=r.inflateSetDictionary(this.strm,h)),n===a.Z_BUF_ERROR&&!0===p&&(n=a.Z_OK,p=!1),n!==a.Z_STREAM_END&&n!==a.Z_OK)return this.onEnd(n),this.ended=!0,!1;d.next_out&&(0!==d.avail_out&&n!==a.Z_STREAM_END&&(0!==d.avail_in||s!==a.Z_FINISH&&s!==a.Z_SYNC_FLUSH)||("string"===this.options.to?(A=o.utf8border(d.output,d.next_out),l=d.next_out-A,c=o.buf2string(d.output,A),d.next_out=l,d.avail_out=f-l,l&&i.arraySet(d.output,d.output,A,l,0),this.onData(c)):this.onData(i.shrinkBuf(d.output,d.next_out)))),0===d.avail_in&&0===d.avail_out&&(p=!0)}while((d.avail_in>0||0===d.avail_out)&&n!==a.Z_STREAM_END);return n===a.Z_STREAM_END&&(s=a.Z_FINISH),s===a.Z_FINISH?(n=r.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===a.Z_OK):s!==a.Z_SYNC_FLUSH||(this.onEnd(a.Z_OK),d.avail_out=0,!0)},c.prototype.onData=function(e){this.chunks.push(e)},c.prototype.onEnd=function(e){e===a.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Inflate=c,t.inflate=h,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,h(e,t)},t.ungzip=h},function(e,t,n){"use strict";var r=n(5),i=n(16),o=n(17),a=n(37),s=n(38);function A(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function l(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function u(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(852),t.distcode=t.distdyn=new r.Buf32(592),t.sane=1,t.back=-1,0):-2}function c(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,u(e)):-2}function h(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?-2:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,c(e))):-2}function d(e,t){var n,r;return e?(r=new l,e.state=r,r.window=null,0!==(n=h(e,t))&&(e.state=null),n):-2}var f,g,p=!0;function m(e){if(p){var t;for(f=new r.Buf32(512),g=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(1,e.lens,0,288,f,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(2,e.lens,0,32,g,0,e.work,{bits:5}),p=!1}e.lencode=f,e.lenbits=9,e.distcode=g,e.distbits=5}function I(e,t,n,i){var o,a=e.state;return null===a.window&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new r.Buf8(a.wsize)),i>=a.wsize?(r.arraySet(a.window,t,n-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):((o=a.wsize-a.wnext)>i&&(o=i),r.arraySet(a.window,t,n-i,o,a.wnext),(i-=o)?(r.arraySet(a.window,t,n-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=o,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=o))),0}t.inflateReset=c,t.inflateReset2=h,t.inflateResetKeep=u,t.inflateInit=function(e){return d(e,15)},t.inflateInit2=d,t.inflate=function(e,t){var n,l,u,c,h,d,f,g,p,y,B,C,E,w,v,b,Q,k,x,_,D,S,N,M,T=0,F=new r.Buf8(4),R=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return-2;12===(n=e.state).mode&&(n.mode=13),h=e.next_out,u=e.output,f=e.avail_out,c=e.next_in,l=e.input,d=e.avail_in,g=n.hold,p=n.bits,y=d,B=f,S=0;e:for(;;)switch(n.mode){case 1:if(0===n.wrap){n.mode=13;break}for(;p<16;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(2&n.wrap&&35615===g){n.check=0,F[0]=255&g,F[1]=g>>>8&255,n.check=o(n.check,F,2,0),g=0,p=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&g)<<8)+(g>>8))%31){e.msg="incorrect header check",n.mode=30;break}if(8!=(15&g)){e.msg="unknown compression method",n.mode=30;break}if(p-=4,D=8+(15&(g>>>=4)),0===n.wbits)n.wbits=D;else if(D>n.wbits){e.msg="invalid window size",n.mode=30;break}n.dmax=1<<D,e.adler=n.check=1,n.mode=512&g?10:12,g=0,p=0;break;case 2:for(;p<16;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(n.flags=g,8!=(255&n.flags)){e.msg="unknown compression method",n.mode=30;break}if(57344&n.flags){e.msg="unknown header flags set",n.mode=30;break}n.head&&(n.head.text=g>>8&1),512&n.flags&&(F[0]=255&g,F[1]=g>>>8&255,n.check=o(n.check,F,2,0)),g=0,p=0,n.mode=3;case 3:for(;p<32;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}n.head&&(n.head.time=g),512&n.flags&&(F[0]=255&g,F[1]=g>>>8&255,F[2]=g>>>16&255,F[3]=g>>>24&255,n.check=o(n.check,F,4,0)),g=0,p=0,n.mode=4;case 4:for(;p<16;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}n.head&&(n.head.xflags=255&g,n.head.os=g>>8),512&n.flags&&(F[0]=255&g,F[1]=g>>>8&255,n.check=o(n.check,F,2,0)),g=0,p=0,n.mode=5;case 5:if(1024&n.flags){for(;p<16;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}n.length=g,n.head&&(n.head.extra_len=g),512&n.flags&&(F[0]=255&g,F[1]=g>>>8&255,n.check=o(n.check,F,2,0)),g=0,p=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&((C=n.length)>d&&(C=d),C&&(n.head&&(D=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,l,c,C,D)),512&n.flags&&(n.check=o(n.check,l,C,c)),d-=C,c+=C,n.length-=C),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===d)break e;C=0;do{D=l[c+C++],n.head&&D&&n.length<65536&&(n.head.name+=String.fromCharCode(D))}while(D&&C<d);if(512&n.flags&&(n.check=o(n.check,l,C,c)),d-=C,c+=C,D)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===d)break e;C=0;do{D=l[c+C++],n.head&&D&&n.length<65536&&(n.head.comment+=String.fromCharCode(D))}while(D&&C<d);if(512&n.flags&&(n.check=o(n.check,l,C,c)),d-=C,c+=C,D)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;p<16;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(g!==(65535&n.check)){e.msg="header crc mismatch",n.mode=30;break}g=0,p=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;p<32;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}e.adler=n.check=A(g),g=0,p=0,n.mode=11;case 11:if(0===n.havedict)return e.next_out=h,e.avail_out=f,e.next_in=c,e.avail_in=d,n.hold=g,n.bits=p,2;e.adler=n.check=1,n.mode=12;case 12:if(5===t||6===t)break e;case 13:if(n.last){g>>>=7&p,p-=7&p,n.mode=27;break}for(;p<3;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}switch(n.last=1&g,p-=1,3&(g>>>=1)){case 0:n.mode=14;break;case 1:if(m(n),n.mode=20,6===t){g>>>=2,p-=2;break e}break;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=30}g>>>=2,p-=2;break;case 14:for(g>>>=7&p,p-=7&p;p<32;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if((65535&g)!=(g>>>16^65535)){e.msg="invalid stored block lengths",n.mode=30;break}if(n.length=65535&g,g=0,p=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(C=n.length){if(C>d&&(C=d),C>f&&(C=f),0===C)break e;r.arraySet(u,l,c,C,h),d-=C,c+=C,f-=C,h+=C,n.length-=C;break}n.mode=12;break;case 17:for(;p<14;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(n.nlen=257+(31&g),g>>>=5,p-=5,n.ndist=1+(31&g),g>>>=5,p-=5,n.ncode=4+(15&g),g>>>=4,p-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;p<3;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}n.lens[R[n.have++]]=7&g,g>>>=3,p-=3}for(;n.have<19;)n.lens[R[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,N={bits:n.lenbits},S=s(0,n.lens,0,19,n.lencode,0,n.work,N),n.lenbits=N.bits,S){e.msg="invalid code lengths set",n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;b=(T=n.lencode[g&(1<<n.lenbits)-1])>>>16&255,Q=65535&T,!((v=T>>>24)<=p);){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(Q<16)g>>>=v,p-=v,n.lens[n.have++]=Q;else{if(16===Q){for(M=v+2;p<M;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(g>>>=v,p-=v,0===n.have){e.msg="invalid bit length repeat",n.mode=30;break}D=n.lens[n.have-1],C=3+(3&g),g>>>=2,p-=2}else if(17===Q){for(M=v+3;p<M;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}p-=v,D=0,C=3+(7&(g>>>=v)),g>>>=3,p-=3}else{for(M=v+7;p<M;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}p-=v,D=0,C=11+(127&(g>>>=v)),g>>>=7,p-=7}if(n.have+C>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=30;break}for(;C--;)n.lens[n.have++]=D}}if(30===n.mode)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=30;break}if(n.lenbits=9,N={bits:n.lenbits},S=s(1,n.lens,0,n.nlen,n.lencode,0,n.work,N),n.lenbits=N.bits,S){e.msg="invalid literal/lengths set",n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,N={bits:n.distbits},S=s(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,N),n.distbits=N.bits,S){e.msg="invalid distances set",n.mode=30;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(d>=6&&f>=258){e.next_out=h,e.avail_out=f,e.next_in=c,e.avail_in=d,n.hold=g,n.bits=p,a(e,B),h=e.next_out,u=e.output,f=e.avail_out,c=e.next_in,l=e.input,d=e.avail_in,g=n.hold,p=n.bits,12===n.mode&&(n.back=-1);break}for(n.back=0;b=(T=n.lencode[g&(1<<n.lenbits)-1])>>>16&255,Q=65535&T,!((v=T>>>24)<=p);){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(b&&0==(240&b)){for(k=v,x=b,_=Q;b=(T=n.lencode[_+((g&(1<<k+x)-1)>>k)])>>>16&255,Q=65535&T,!(k+(v=T>>>24)<=p);){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}g>>>=k,p-=k,n.back+=k}if(g>>>=v,p-=v,n.back+=v,n.length=Q,0===b){n.mode=26;break}if(32&b){n.back=-1,n.mode=12;break}if(64&b){e.msg="invalid literal/length code",n.mode=30;break}n.extra=15&b,n.mode=22;case 22:if(n.extra){for(M=n.extra;p<M;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}n.length+=g&(1<<n.extra)-1,g>>>=n.extra,p-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;b=(T=n.distcode[g&(1<<n.distbits)-1])>>>16&255,Q=65535&T,!((v=T>>>24)<=p);){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(0==(240&b)){for(k=v,x=b,_=Q;b=(T=n.distcode[_+((g&(1<<k+x)-1)>>k)])>>>16&255,Q=65535&T,!(k+(v=T>>>24)<=p);){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}g>>>=k,p-=k,n.back+=k}if(g>>>=v,p-=v,n.back+=v,64&b){e.msg="invalid distance code",n.mode=30;break}n.offset=Q,n.extra=15&b,n.mode=24;case 24:if(n.extra){for(M=n.extra;p<M;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}n.offset+=g&(1<<n.extra)-1,g>>>=n.extra,p-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=30;break}n.mode=25;case 25:if(0===f)break e;if(C=B-f,n.offset>C){if((C=n.offset-C)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=30;break}C>n.wnext?(C-=n.wnext,E=n.wsize-C):E=n.wnext-C,C>n.length&&(C=n.length),w=n.window}else w=u,E=h-n.offset,C=n.length;C>f&&(C=f),f-=C,n.length-=C;do{u[h++]=w[E++]}while(--C);0===n.length&&(n.mode=21);break;case 26:if(0===f)break e;u[h++]=n.length,f--,n.mode=21;break;case 27:if(n.wrap){for(;p<32;){if(0===d)break e;d--,g|=l[c++]<<p,p+=8}if(B-=f,e.total_out+=B,n.total+=B,B&&(e.adler=n.check=n.flags?o(n.check,u,B,h-B):i(n.check,u,B,h-B)),B=f,(n.flags?g:A(g))!==n.check){e.msg="incorrect data check",n.mode=30;break}g=0,p=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;p<32;){if(0===d)break e;d--,g+=l[c++]<<p,p+=8}if(g!==(4294967295&n.total)){e.msg="incorrect length check",n.mode=30;break}g=0,p=0}n.mode=29;case 29:S=1;break e;case 30:S=-3;break e;case 31:return-4;case 32:default:return-2}return e.next_out=h,e.avail_out=f,e.next_in=c,e.avail_in=d,n.hold=g,n.bits=p,(n.wsize||B!==e.avail_out&&n.mode<30&&(n.mode<27||4!==t))&&I(e,e.output,e.next_out,B-e.avail_out)?(n.mode=31,-4):(y-=e.avail_in,B-=e.avail_out,e.total_in+=y,e.total_out+=B,n.total+=B,n.wrap&&B&&(e.adler=n.check=n.flags?o(n.check,u,B,e.next_out-B):i(n.check,u,B,e.next_out-B)),e.data_type=n.bits+(n.last?64:0)+(12===n.mode?128:0)+(20===n.mode||15===n.mode?256:0),(0===y&&0===B||4===t)&&0===S&&(S=-5),S)},t.inflateEnd=function(e){if(!e||!e.state)return-2;var t=e.state;return t.window&&(t.window=null),e.state=null,0},t.inflateGetHeader=function(e,t){var n;return e&&e.state?0==(2&(n=e.state).wrap)?-2:(n.head=t,t.done=!1,0):-2},t.inflateSetDictionary=function(e,t){var n,r=t.length;return e&&e.state?0!==(n=e.state).wrap&&11!==n.mode?-2:11===n.mode&&i(1,t,r,0)!==n.check?-3:I(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,0):-2},t.inflateInfo="pako inflate (from Nodeca project)"},function(e,t,n){"use strict";e.exports=function(e,t){var n,r,i,o,a,s,A,l,u,c,h,d,f,g,p,m,I,y,B,C,E,w,v,b,Q;n=e.state,r=e.next_in,b=e.input,i=r+(e.avail_in-5),o=e.next_out,Q=e.output,a=o-(t-e.avail_out),s=o+(e.avail_out-257),A=n.dmax,l=n.wsize,u=n.whave,c=n.wnext,h=n.window,d=n.hold,f=n.bits,g=n.lencode,p=n.distcode,m=(1<<n.lenbits)-1,I=(1<<n.distbits)-1;e:do{f<15&&(d+=b[r++]<<f,f+=8,d+=b[r++]<<f,f+=8),y=g[d&m];t:for(;;){if(d>>>=B=y>>>24,f-=B,0==(B=y>>>16&255))Q[o++]=65535&y;else{if(!(16&B)){if(0==(64&B)){y=g[(65535&y)+(d&(1<<B)-1)];continue t}if(32&B){n.mode=12;break e}e.msg="invalid literal/length code",n.mode=30;break e}C=65535&y,(B&=15)&&(f<B&&(d+=b[r++]<<f,f+=8),C+=d&(1<<B)-1,d>>>=B,f-=B),f<15&&(d+=b[r++]<<f,f+=8,d+=b[r++]<<f,f+=8),y=p[d&I];n:for(;;){if(d>>>=B=y>>>24,f-=B,!(16&(B=y>>>16&255))){if(0==(64&B)){y=p[(65535&y)+(d&(1<<B)-1)];continue n}e.msg="invalid distance code",n.mode=30;break e}if(E=65535&y,f<(B&=15)&&(d+=b[r++]<<f,(f+=8)<B&&(d+=b[r++]<<f,f+=8)),(E+=d&(1<<B)-1)>A){e.msg="invalid distance too far back",n.mode=30;break e}if(d>>>=B,f-=B,E>(B=o-a)){if((B=E-B)>u&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(w=0,v=h,0===c){if(w+=l-B,B<C){C-=B;do{Q[o++]=h[w++]}while(--B);w=o-E,v=Q}}else if(c<B){if(w+=l+c-B,(B-=c)<C){C-=B;do{Q[o++]=h[w++]}while(--B);if(w=0,c<C){C-=B=c;do{Q[o++]=h[w++]}while(--B);w=o-E,v=Q}}}else if(w+=c-B,B<C){C-=B;do{Q[o++]=h[w++]}while(--B);w=o-E,v=Q}for(;C>2;)Q[o++]=v[w++],Q[o++]=v[w++],Q[o++]=v[w++],C-=3;C&&(Q[o++]=v[w++],C>1&&(Q[o++]=v[w++]))}else{w=o-E;do{Q[o++]=Q[w++],Q[o++]=Q[w++],Q[o++]=Q[w++],C-=3}while(C>2);C&&(Q[o++]=Q[w++],C>1&&(Q[o++]=Q[w++]))}break}}break}}while(r<i&&o<s);r-=C=f>>3,d&=(1<<(f-=C<<3))-1,e.next_in=r,e.next_out=o,e.avail_in=r<i?i-r+5:5-(r-i),e.avail_out=o<s?s-o+257:257-(o-s),n.hold=d,n.bits=f}},function(e,t,n){"use strict";var r=n(5),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],o=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],a=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],s=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,t,n,A,l,u,c,h){var d,f,g,p,m,I,y,B,C,E=h.bits,w=0,v=0,b=0,Q=0,k=0,x=0,_=0,D=0,S=0,N=0,M=null,T=0,F=new r.Buf16(16),R=new r.Buf16(16),U=null,H=0;for(w=0;w<=15;w++)F[w]=0;for(v=0;v<A;v++)F[t[n+v]]++;for(k=E,Q=15;Q>=1&&0===F[Q];Q--);if(k>Q&&(k=Q),0===Q)return l[u++]=20971520,l[u++]=20971520,h.bits=1,0;for(b=1;b<Q&&0===F[b];b++);for(k<b&&(k=b),D=1,w=1;w<=15;w++)if(D<<=1,(D-=F[w])<0)return-1;if(D>0&&(0===e||1!==Q))return-1;for(R[1]=0,w=1;w<15;w++)R[w+1]=R[w]+F[w];for(v=0;v<A;v++)0!==t[n+v]&&(c[R[t[n+v]]++]=v);if(0===e?(M=U=c,I=19):1===e?(M=i,T-=257,U=o,H-=257,I=256):(M=a,U=s,I=-1),N=0,v=0,w=b,m=u,x=k,_=0,g=-1,p=(S=1<<k)-1,1===e&&S>852||2===e&&S>592)return 1;for(;;){y=w-_,c[v]<I?(B=0,C=c[v]):c[v]>I?(B=U[H+c[v]],C=M[T+c[v]]):(B=96,C=0),d=1<<w-_,b=f=1<<x;do{l[m+(N>>_)+(f-=d)]=y<<24|B<<16|C|0}while(0!==f);for(d=1<<w-1;N&d;)d>>=1;if(0!==d?(N&=d-1,N+=d):N=0,v++,0==--F[w]){if(w===Q)break;w=t[n+c[v]]}if(w>k&&(N&p)!==g){for(0===_&&(_=k),m+=b,D=1<<(x=w-_);x+_<Q&&!((D-=F[x+_])<=0);)x++,D<<=1;if(S+=1<<x,1===e&&S>852||2===e&&S>592)return 1;l[g=N&p]=k<<24|x<<16|m-u|0}}return 0!==N&&(l[m+N]=w-_<<24|64<<16|0),h.bits=k,0}},function(e,t,n){"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},function(e,t){e.exports=r},function(e,t,n){"use strict";var r=n(4),i=function(e){this.kdbx=e.kdbx,this.exportXml=e.exportXml||!1};i.prototype.setXmlDate=function(e,t){var n=this.kdbx.header.versionMajor>=4&&!this.exportXml;r.setDate(e,t,n)},e.exports=i},function(e,t){e.exports=i},function(e,t,n){"use strict";var r=n(11),i=n(2),o=n(1),a=n(0),s=n(3);e.exports.decrypt=function(e){return Promise.resolve().then((function(){var t,n=new r(e),A=[],l=0,u=0,c=function(){if(n.getUint32(!0),t=n.readBytes(32),(l=n.getUint32(!0))>0){u+=l;var e=n.readBytes(l);return s.sha256(e).then((function(n){if(a.arrayBufferEquals(n,t))return A.push(e),c();throw new i(o.ErrorCodes.FileCorrupt,"invalid hash block")}))}for(var r=new Uint8Array(u),h=0,d=0;d<A.length;d++)r.set(new Uint8Array(A[d]),h),h+=A[d].byteLength;return r.buffer};return c()}))},e.exports.encrypt=function(e){return Promise.resolve().then((function(){var t=e.byteLength,n=0,i=0,o=0,a=[],A=function(){if(t>0){var l=Math.min(1048576,t);t-=l;var u=e.slice(n,n+l);return s.sha256(u).then((function(e){var t=new ArrayBuffer(40),s=new r(t);return s.setUint32(i,!0),s.writeBytes(e),s.setUint32(l,!0),a.push(t),o+=t.byteLength,a.push(u),o+=u.byteLength,i++,n+=l,A()}))}var c=new ArrayBuffer(40);new DataView(c).setUint32(0,i,!0),a.push(c),o+=c.byteLength;for(var h=new Uint8Array(o),d=0,f=0;f<a.length;f++)h.set(new Uint8Array(a[f]),d),d+=a[f].byteLength;return h.buffer};return A()}))}},function(e,t,n){"use strict";var r=n(8),i=n(2),o=n(1),a=n(0),s=n(11),A=n(3);function l(e,t){var n=new Uint8Array(8+e.byteLength);n.set(new Uint8Array(e),8);var r=new DataView(n.buffer);return r.setUint32(0,t.lo,!0),r.setUint32(4,t.hi,!0),A.sha512(a.arrayToBuffer(n)).then((function(e){return a.zeroBuffer(n),e}))}function u(e,t,n,i){return l(e,new r(t)).then((function(e){var r=new Uint8Array(i.byteLength+4+8),o=new DataView(r.buffer);return r.set(new Uint8Array(i),12),o.setInt32(0,t,!0),o.setInt32(8,n,!0),A.hmacSha256(e,r.buffer)}))}e.exports.getHmacKey=l,e.exports.decrypt=function(e,t){var n=new s(e);return Promise.resolve().then((function(){var e,r=[],s=0,A=0,l=0,c=function(){if(e=n.readBytes(32),(A=n.getUint32(!0))>0){l+=A;var h=n.readBytes(A);return u(t,s,A,h).then((function(t){if(a.arrayBufferEquals(t,e))return r.push(h),s++,c();throw new i(o.ErrorCodes.FileCorrupt,"invalid hash block")}))}for(var d=new Uint8Array(l),f=0,g=0;g<r.length;g++)d.set(new Uint8Array(r[g]),f),f+=r[g].byteLength;return d.buffer};return c()}))},e.exports.encrypt=function(e,t){return Promise.resolve().then((function(){var n=e.byteLength,r=0,i=0,o=0,a=[],A=function(){var l=Math.min(1048576,n);n-=l;var c=e.slice(r,r+l);return u(t,i,l,c).then((function(e){var t=new ArrayBuffer(36),n=new s(t);if(n.writeBytes(e),n.setUint32(l,!0),a.push(t),o+=t.byteLength,c.byteLength>0)return a.push(c),o+=c.byteLength,i++,r+=l,A();for(var u=new Uint8Array(o),h=0,d=0;d<a.length;d++)u.set(new Uint8Array(a[d]),h),h+=a[d].byteLength;return u.buffer}))};return A()}))}},function(e,t,n){"use strict";var r=n(22),i=n(24),o=n(1),a=n(2),s=n(3),A=n(0),l=[232,48,9,75,151,32,93,42],u=function(e){this.algo=e};u.prototype.getSalt=function(e){return A.arrayToBuffer(this.algo.getBytes(e))},u.create=function(e,t){switch(t){case o.CrsAlgorithm.Salsa20:return s.sha256(A.arrayToBuffer(e)).then((function(e){var t=new Uint8Array(e),n=new r(t,l);return new u(n)}));case o.CrsAlgorithm.ChaCha20:return s.sha512(A.arrayToBuffer(e)).then((function(e){var t=new Uint8Array(e,0,32),n=new Uint8Array(e,32,12),r=new i(t,n);return new u(r)}));default:return Promise.reject(new a(o.ErrorCodes.Unsupported,"crsAlgorithm"))}},e.exports=u},function(e,t,n){"use strict";var r=n(1),i=n(0),o=n(13),a=n(8),s=n(3),A=n(2),l=n(25),u=[{name:"salt",field:"S",type:o.ValueType.Bytes},{name:"parallelism",field:"P",type:o.ValueType.UInt32},{name:"memory",field:"M",type:o.ValueType.UInt64},{name:"iterations",field:"I",type:o.ValueType.UInt64},{name:"version",field:"V",type:o.ValueType.UInt32},{name:"secretKey",field:"K",type:o.ValueType.Bytes},{name:"assocData",field:"A",type:o.ValueType.Bytes},{name:"rounds",field:"R",type:o.ValueType.Int64}];function c(e){var t={};return u.forEach((function(n){var r=e.get(n.field);r&&(r instanceof a&&(r=r.value),t[n.name]=r)})),t}e.exports.encrypt=function(e,t){var n=t.get("$UUID");if(!(n&&n instanceof ArrayBuffer))return Promise.reject(new A(r.ErrorCodes.FileCorrupt,"no kdf uuid"));switch(i.bytesToBase64(n)){case r.KdfId.Argon2:return function(e,t){var n=c(t);return n.salt instanceof ArrayBuffer&&32===n.salt.byteLength?"number"!=typeof n.parallelism||n.parallelism<1?Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad argon2 parallelism")):"number"!=typeof n.iterations||n.iterations<1?Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad argon2 iterations")):"number"!=typeof n.memory||n.memory<1||n.memory%1024!=0?Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad argon2 memory")):19!==n.version&&16!==n.version?Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad argon2 version")):n.secretKey?Promise.reject(new A(r.ErrorCodes.Unsupported,"argon2 secret key")):n.assocData?Promise.reject(new A(r.ErrorCodes.Unsupported,"argon2 assoc data")):s.argon2(e,n.salt,n.memory/1024,n.iterations,32,n.parallelism,0,n.version):Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad argon2 salt"))}(e,t);case r.KdfId.Aes:return function(e,t){var n=c(t);return n.salt instanceof ArrayBuffer&&32===n.salt.byteLength?"number"!=typeof n.rounds||n.rounds<1?Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad aes rounds")):l.encrypt(new Uint8Array(e),new Uint8Array(n.salt),n.rounds).then((function(e){return s.sha256(e).then((function(t){return i.zeroBuffer(e),t}))})):Promise.reject(new A(r.ErrorCodes.FileCorrupt,"bad aes salt"))}(e,t);default:return Promise.reject(new A(r.ErrorCodes.Unsupported,"bad kdf"))}}},function(e,t,n){"use strict";var r=n(6),i=n(7),o=n(14),a=n(4),s=n(1),A={Generator:"KdbxWeb"},l=function(){this.generator=void 0,this.headerHash=void 0,this.settingsChanged=void 0,this._name=void 0,this.nameChanged=void 0,this._desc=void 0,this.descChanged=void 0,this._defaultUser=void 0,this.defaultUserChanged=void 0,this._mntncHistoryDays=void 0,this._color=void 0,this.keyChanged=void 0,this._keyChangeRec=void 0,this._keyChangeForce=void 0,this._recycleBinEnabled=void 0,this._recycleBinUuid=void 0,this.recycleBinChanged=void 0,this._entryTemplatesGroup=void 0,this.entryTemplatesGroupChanged=void 0,this._historyMaxItems=void 0,this._historyMaxSize=void 0,this._lastSelectedGroup=void 0,this._lastTopVisibleGroup=void 0,this._memoryProtection={title:void 0,userName:void 0,password:void 0,url:void 0,notes:void 0},this.customData={},this.customIcons={},this._editState=void 0,Object.preventExtensions(this)},u={name:"nameChanged",desc:"descChanged",defaultUser:"defaultUserChanged",mntncHistoryDays:null,color:null,keyChangeRec:null,keyChangeForce:null,recycleBinEnabled:"recycleBinChanged",recycleBinUuid:"recycleBinChanged",entryTemplatesGroup:"entryTemplatesGroupChanged",historyMaxItems:null,historyMaxSize:null,lastSelectedGroup:null,lastTopVisibleGroup:null,memoryProtection:null};Object.keys(u).forEach((function(e){!function(e,t){var n="_"+e;Object.defineProperty(l.prototype,e,{enumerable:!0,get:function(){return this[n]},set:function(r){r!==this[n]&&(this[n]=r,t?this[t]=new Date:this._setPropModDate(e))}})}(e,u[e])})),l.prototype._setPropModDate=function(e){this._editState||(this._editState={}),this._editState[e]=(new Date).getTime()},l.prototype._readNode=function(e,t){switch(e.tagName){case r.Elem.Generator:this.generator=a.getText(e);break;case r.Elem.HeaderHash:this.headerHash=a.getBytes(e);break;case r.Elem.SettingsChanged:this.settingsChanged=a.getDate(e);break;case r.Elem.DbName:this._name=a.getText(e);break;case r.Elem.DbNameChanged:this.nameChanged=a.getDate(e);break;case r.Elem.DbDesc:this._desc=a.getText(e);break;case r.Elem.DbDescChanged:this.descChanged=a.getDate(e);break;case r.Elem.DbDefaultUser:this._defaultUser=a.getText(e);break;case r.Elem.DbDefaultUserChanged:this.defaultUserChanged=a.getDate(e);break;case r.Elem.DbMntncHistoryDays:this._mntncHistoryDays=a.getNumber(e);break;case r.Elem.DbColor:this._color=a.getText(e);break;case r.Elem.DbKeyChanged:this.keyChanged=a.getDate(e);break;case r.Elem.DbKeyChangeRec:this._keyChangeRec=a.getNumber(e);break;case r.Elem.DbKeyChangeForce:this._keyChangeForce=a.getNumber(e);break;case r.Elem.RecycleBinEnabled:this._recycleBinEnabled=a.getBoolean(e);break;case r.Elem.RecycleBinUuid:this._recycleBinUuid=a.getUuid(e);break;case r.Elem.RecycleBinChanged:this.recycleBinChanged=a.getDate(e);break;case r.Elem.EntryTemplatesGroup:this._entryTemplatesGroup=a.getUuid(e);break;case r.Elem.EntryTemplatesGroupChanged:this.entryTemplatesGroupChanged=a.getDate(e);break;case r.Elem.HistoryMaxItems:this._historyMaxItems=a.getNumber(e);break;case r.Elem.HistoryMaxSize:this._historyMaxSize=a.getNumber(e);break;case r.Elem.LastSelectedGroup:this._lastSelectedGroup=a.getUuid(e);break;case r.Elem.LastTopVisibleGroup:this._lastTopVisibleGroup=a.getUuid(e);break;case r.Elem.MemoryProt:this._readMemoryProtection(e);break;case r.Elem.CustomIcons:this._readCustomIcons(e);break;case r.Elem.Binaries:this._readBinaries(e,t);break;case r.Elem.CustomData:this._readCustomData(e)}},l.prototype._readMemoryProtection=function(e){for(var t=0,n=e.childNodes,i=n.length;t<i;t++){var o=n[t];switch(o.tagName){case r.Elem.ProtTitle:this.memoryProtection.title=a.getBoolean(o);break;case r.Elem.ProtUserName:this.memoryProtection.userName=a.getBoolean(o);break;case r.Elem.ProtPassword:this.memoryProtection.password=a.getBoolean(o);break;case r.Elem.ProtUrl:this.memoryProtection.url=a.getBoolean(o);break;case r.Elem.ProtNotes:this.memoryProtection.notes=a.getBoolean(o)}}},l.prototype._writeMemoryProtection=function(e){var t=a.addChildNode(e,r.Elem.MemoryProt);a.setBoolean(a.addChildNode(t,r.Elem.ProtTitle),this.memoryProtection.title),a.setBoolean(a.addChildNode(t,r.Elem.ProtUserName),this.memoryProtection.userName),a.setBoolean(a.addChildNode(t,r.Elem.ProtPassword),this.memoryProtection.password),a.setBoolean(a.addChildNode(t,r.Elem.ProtUrl),this.memoryProtection.url),a.setBoolean(a.addChildNode(t,r.Elem.ProtNotes),this.memoryProtection.notes)},l.prototype._readCustomIcons=function(e){for(var t=0,n=e.childNodes,i=n.length;t<i;t++){var o=n[t];o.tagName===r.Elem.CustomIconItem&&this._readCustomIcon(o)}},l.prototype._readCustomIcon=function(e){for(var t,n,i=0,o=e.childNodes,s=o.length;i<s;i++){var A=o[i];switch(A.tagName){case r.Elem.CustomIconItemID:t=a.getUuid(A);break;case r.Elem.CustomIconItemData:n=a.getBytes(A)}}t&&n&&(this.customIcons[t]=n)},l.prototype._writeCustomIcons=function(e){var t=a.addChildNode(e,r.Elem.CustomIcons),n=this.customIcons;Object.keys(n).forEach((function(e){var i=n[e];if(i){var o=a.addChildNode(t,r.Elem.CustomIconItem);a.setUuid(a.addChildNode(o,r.Elem.CustomIconItemID),e),a.setBytes(a.addChildNode(o,r.Elem.CustomIconItemData),i)}}))},l.prototype._readBinaries=function(e,t){for(var n=0,i=e.childNodes,o=i.length;n<o;n++){var a=i[n];a.tagName===r.Elem.Binary&&this._readBinary(a,t)}},l.prototype._readBinary=function(e,t){var n=e.getAttribute(r.Attr.Id),i=a.getProtectedBinary(e);n&&i&&(t.kdbx.binaries[n]=i)},l.prototype._writeBinaries=function(e,t){var n=a.addChildNode(e,r.Elem.Binaries),i=t.kdbx.binaries;i.hashOrder.forEach((function(e,t){var o=i[e];if(o){var s=a.addChildNode(n,r.Elem.Binary);s.setAttribute(r.Attr.Id,t.toString()),a.setProtectedBinary(s,o)}}))},l.prototype._readCustomData=function(e){this.customData=o.read(e)},l.prototype._writeCustomData=function(e){o.write(e,this.customData)},l.prototype.write=function(e,t){this.generator=A.generator;var n=a.addChildNode(e,r.Elem.Meta);a.setText(a.addChildNode(n,r.Elem.Generator),A.Generator),t.kdbx.header.versionMajor<4?a.setBytes(a.addChildNode(n,r.Elem.HeaderHash),this.headerHash):this.settingsChanged&&t.setXmlDate(a.addChildNode(n,r.Elem.SettingsChanged),this.settingsChanged),a.setText(a.addChildNode(n,r.Elem.DbName),this.name),t.setXmlDate(a.addChildNode(n,r.Elem.DbNameChanged),this.nameChanged),a.setText(a.addChildNode(n,r.Elem.DbDesc),this.desc),t.setXmlDate(a.addChildNode(n,r.Elem.DbDescChanged),this.descChanged),a.setText(a.addChildNode(n,r.Elem.DbDefaultUser),this.defaultUser),t.setXmlDate(a.addChildNode(n,r.Elem.DbDefaultUserChanged),this.defaultUserChanged),a.setText(a.addChildNode(n,r.Elem.DbMntncHistoryDays),this.mntncHistoryDays),a.setText(a.addChildNode(n,r.Elem.DbColor),this.color),t.setXmlDate(a.addChildNode(n,r.Elem.DbKeyChanged),this.keyChanged),a.setNumber(a.addChildNode(n,r.Elem.DbKeyChangeRec),this.keyChangeRec),a.setNumber(a.addChildNode(n,r.Elem.DbKeyChangeForce),this.keyChangeForce),a.setBoolean(a.addChildNode(n,r.Elem.RecycleBinEnabled),this.recycleBinEnabled),a.setUuid(a.addChildNode(n,r.Elem.RecycleBinUuid),this.recycleBinUuid),t.setXmlDate(a.addChildNode(n,r.Elem.RecycleBinChanged),this.recycleBinChanged),a.setUuid(a.addChildNode(n,r.Elem.EntryTemplatesGroup),this.entryTemplatesGroup),t.setXmlDate(a.addChildNode(n,r.Elem.EntryTemplatesGroupChanged),this.entryTemplatesGroupChanged),a.setNumber(a.addChildNode(n,r.Elem.HistoryMaxItems),this.historyMaxItems),a.setNumber(a.addChildNode(n,r.Elem.HistoryMaxSize),this.historyMaxSize),a.setUuid(a.addChildNode(n,r.Elem.LastSelectedGroup),this.lastSelectedGroup),a.setUuid(a.addChildNode(n,r.Elem.LastTopVisibleGroup),this.lastTopVisibleGroup),this._writeMemoryProtection(n),this._writeCustomIcons(n),(t.exportXml||t.kdbx.header.versionMajor<4)&&this._writeBinaries(n,t),this._writeCustomData(n)},l.prototype.merge=function(e,t){e.nameChanged>this.nameChanged&&(this._name=e.name,this.nameChanged=e.nameChanged),e.descChanged>this.descChanged&&(this._desc=e.desc,this.descChanged=e.descChanged),e.defaultUserChanged>this.defaultUserChanged&&(this._defaultUser=e.defaultUser,this.defaultUserChanged=e.defaultUserChanged),e.keyChanged>this.keyChanged&&(this.keyChanged=e.keyChanged),e.settingsChanged>this.settingsChanged&&(this.settingsChanged=e.settingsChanged),e.recycleBinChanged>this.recycleBinChanged&&(this._recycleBinEnabled=e.recycleBinEnabled,this._recycleBinUuid=e.recycleBinUuid,this.recycleBinChanged=e.recycleBinChanged),e.entryTemplatesGroupChanged>this.entryTemplatesGroupChanged&&(this._entryTemplatesGroup=e.entryTemplatesGroup,this.entryTemplatesGroupChanged=e.entryTemplatesGroupChanged),Object.keys(e.customData).forEach((function(n){this.customData[n]||t.deleted[n]||(this.customData[n]=e.customData[n])}),this),Object.keys(e.customIcons).forEach((function(n){this.customIcons[n]||t.deleted[n]||(this.customIcons[n]=e.customIcons[n])}),this),this._editState&&this._editState.historyMaxItems||(this.historyMaxItems=e.historyMaxItems),this._editState&&this._editState.historyMaxSize||(this.historyMaxSize=e.historyMaxSize),this._editState&&this._editState.keyChangeRec||(this.keyChangeRec=e.keyChangeRec),this._editState&&this._editState.keyChangeForce||(this.keyChangeForce=e.keyChangeForce),this._editState&&this._editState.mntncHistoryDays||(this.mntncHistoryDays=e.mntncHistoryDays),this._editState&&this._editState.color||(this.color=e.color)},l.create=function(){var e=new Date,t=new l;return t.generator=A.Generator,t.settingsChanged=e,t.mntncHistoryDays=s.Defaults.MntncHistoryDays,t.recycleBinEnabled=!0,t.historyMaxItems=s.Defaults.HistoryMaxItems,t.historyMaxSize=s.Defaults.HistoryMaxSize,t.nameChanged=e,t.descChanged=e,t.defaultUserChanged=e,t.recycleBinChanged=e,t.keyChangeRec=-1,t.keyChangeForce=-1,t.entryTemplatesGroup=new i,t.entryTemplatesGroupChanged=e,t.memoryProtection={title:!1,userName:!1,password:!0,url:!1,notes:!1},t},l.read=function(e,t){for(var n=new l,r=0,i=e.childNodes,o=i.length;r<o;r++){var a=i[r];a.tagName&&n._readNode(a,t)}return n},e.exports=l},function(e,t,n){"use strict";var r=n(9),i=n(3),o=n(0),a=function(){Object.defineProperties(this,{idToHash:{value:{}},hashOrder:{value:null,configurable:!0}})};a.prototype.hash=function(){var e=[],t=this;return Object.keys(t).forEach((function(n){var r=t[n];e.push(t.getBinaryHash(r).then((function(e){t.idToHash[n]=e,t[e]=t[n],delete t[n]})))})),Promise.all(e)},a.prototype.getBinaryHash=function(e){var t;return e instanceof r?t=e.getHash():(e instanceof ArrayBuffer||e instanceof Uint8Array)&&(e=o.arrayToBuffer(e),t=i.sha256(e)),t.then((function(e){return o.bytesToHex(e)}))},a.prototype.assignIds=function(){Object.defineProperty(this,"hashOrder",{value:Object.keys(this),configurable:!0})},a.prototype.add=function(e){var t=this;return this.getBinaryHash(e).then((function(n){return t[n]=e,{ref:n,value:e}}))},e.exports=a},function(e,t,n){"use strict";var r=n(6),i=n(4),o=n(1),a=n(14),s=n(27),A=n(7),l=n(28),u=function(){this.uuid=void 0,this.name=void 0,this.notes=void 0,this.icon=void 0,this.customIcon=void 0,this.times=new s,this.expanded=void 0,this.defaultAutoTypeSeq=void 0,this.enableAutoType=void 0,this.enableSearching=void 0,this.lastTopVisibleEntry=void 0,this.groups=[],this.entries=[],this.parentGroup=void 0,this.customData=void 0,Object.preventExtensions(this)};u.prototype._readNode=function(e,t){switch(e.tagName){case r.Elem.Uuid:this.uuid=i.getUuid(e);break;case r.Elem.Name:this.name=i.getText(e);break;case r.Elem.Notes:this.notes=i.getText(e);break;case r.Elem.Icon:this.icon=i.getNumber(e);break;case r.Elem.CustomIconID:this.customIcon=i.getUuid(e);break;case r.Elem.Times:this.times=s.read(e);break;case r.Elem.IsExpanded:this.expanded=i.getBoolean(e);break;case r.Elem.GroupDefaultAutoTypeSeq:this.defaultAutoTypeSeq=i.getText(e);break;case r.Elem.EnableAutoType:this.enableAutoType=i.getBoolean(e);break;case r.Elem.EnableSearching:this.enableSearching=i.getBoolean(e);break;case r.Elem.LastTopVisibleEntry:this.lastTopVisibleEntry=i.getUuid(e);break;case r.Elem.Group:this.groups.push(u.read(e,t,this));break;case r.Elem.Entry:this.entries.push(l.read(e,t,this));break;case r.Elem.CustomData:this.customData=a.read(e)}},u.prototype.write=function(e,t){var n=i.addChildNode(e,r.Elem.Group);i.setUuid(i.addChildNode(n,r.Elem.Uuid),this.uuid),i.setText(i.addChildNode(n,r.Elem.Name),this.name),i.setText(i.addChildNode(n,r.Elem.Notes),this.notes),i.setNumber(i.addChildNode(n,r.Elem.Icon),this.icon),this.customIcon&&i.setUuid(i.addChildNode(n,r.Elem.CustomIconID),this.customIcon),a.write(n,this.customData),this.times.write(n,t),i.setBoolean(i.addChildNode(n,r.Elem.IsExpanded),this.expanded),i.setText(i.addChildNode(n,r.Elem.GroupDefaultAutoTypeSeq),this.defaultAutoTypeSeq),i.setBoolean(i.addChildNode(n,r.Elem.EnableAutoType),this.enableAutoType),i.setBoolean(i.addChildNode(n,r.Elem.EnableSearching),this.enableSearching),i.setUuid(i.addChildNode(n,r.Elem.LastTopVisibleEntry),this.lastTopVisibleEntry),this.groups.forEach((function(e){e.write(n,t)})),this.entries.forEach((function(e){e.write(n,t)}))},u.prototype.forEach=function(e,t){e.call(t,void 0,this),this.entries.forEach((function(n){e.call(t,n)})),this.groups.forEach((function(n){n.forEach(e,t)}))},u.prototype.merge=function(e){var t=e.remote[this.uuid];t&&(t.times.lastModTime>this.times.lastModTime&&this.copyFrom(t),this.groups=this._mergeCollection(this.groups,t.groups,e),this.entries=this._mergeCollection(this.entries,t.entries,e),this.groups.forEach((function(t){t.merge(e)})),this.entries.forEach((function(t){t.merge(e)})))},u.prototype._mergeCollection=function(e,t,n){var r=[];return e.forEach((function(e){if(!n.deleted[e.uuid]){var t=n.remote[e.uuid];t?t.times.locationChanged<=e.times.locationChanged&&r.push(e):r.push(e)}}),this),t.forEach((function(e,i){if(!n.deleted[e.uuid]){var o=n.objects[e.uuid];if(o&&e.times.locationChanged>o.times.locationChanged)o.parentGroup=this,r.splice(this._findInsertIx(r,t,i),0,o);else if(!o){var a=new e.constructor;a.copyFrom(e),a.parentGroup=this,r.splice(this._findInsertIx(r,t,i),0,a)}}}),this),r},u.prototype._findInsertIx=function(e,t,n){for(var r=e.length,i=-1,o=0;o<=e.length;o++){var a=0,s=n>0?t[n-1].uuid.id:void 0,A=n+1<t.length?t[n+1].uuid.id:void 0,l=o>0?e[o-1].uuid.id:void 0,u=o<e.length?e[o].uuid.id:void 0;s||l?s===l&&(a+=5):a+=1,A||u?A===u&&(a+=5):a+=2,a>i&&(r=o,i=a)}return r},u.prototype.copyFrom=function(e){this.uuid=e.uuid,this.name=e.name,this.notes=e.notes,this.icon=e.icon,this.customIcon=e.customIcon,this.times=e.times.clone(),this.expanded=e.expanded,this.defaultAutoTypeSeq=e.defaultAutoTypeSeq,this.enableAutoType=e.enableAutoType,this.enableSearching=e.enableSearching,this.lastTopVisibleEntry=e.lastTopVisibleEntry},u.create=function(e,t){var n=new u;return n.uuid=A.random(),n.icon=o.Icons.Folder,n.times=s.create(),n.name=e,n.parentGroup=t,n.expanded=!0,n.enableAutoType=null,n.enableSearching=null,n.lastTopVisibleEntry=new A,n},u.read=function(e,t,n){for(var r=new u,i=0,o=e.childNodes,a=o.length;i<a;i++){var s=o[i];s.tagName&&r._readNode(s,t)}return r.uuid||(r.uuid=A.random()),r.parentGroup=n,r},e.exports=u},function(e,t,n){"use strict";var r=n(6),i=n(4),o=function(){this.uuid=void 0,this.deletionTime=void 0,Object.preventExtensions(this)};o.prototype._readNode=function(e){switch(e.tagName){case r.Elem.Uuid:this.uuid=i.getUuid(e);break;case r.Elem.DeletionTime:this.deletionTime=i.getDate(e)}},o.prototype.write=function(e,t){var n=i.addChildNode(e,r.Elem.DeletedObject);i.setUuid(i.addChildNode(n,r.Elem.Uuid),this.uuid),t.setXmlDate(i.addChildNode(n,r.Elem.DeletionTime),this.deletionTime)},o.read=function(e){for(var t=new o,n=0,r=e.childNodes,i=r.length;n<i;n++){var a=r[n];a.tagName&&t._readNode(a)}return t},e.exports=o}]))},53:function(e,t,n){"use strict";var r,i="object"==typeof Reflect?Reflect:null,o=i&&"function"==typeof i.apply?i.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};r=i&&"function"==typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var a=Number.isNaN||function(e){return e!=e};function s(){s.init.call(this)}e.exports=s,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var A=10;function l(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function u(e){return void 0===e._maxListeners?s.defaultMaxListeners:e._maxListeners}function c(e,t,n,r){var i,o,a,s;if(l(n),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),a=o[t]),void 0===a)a=o[t]=n,++e._eventsCount;else if("function"==typeof a?a=o[t]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),(i=u(e))>0&&a.length>i&&!a.warned){a.warned=!0;var A=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");A.name="MaxListenersExceededWarning",A.emitter=e,A.type=t,A.count=a.length,s=A,console&&console.warn&&console.warn(s)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=h.bind(r);return i.listener=n,r.wrapFn=i,i}function f(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):p(i,i.length)}function g(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function p(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return A},set:function(e){if("number"!=typeof e||e<0||a(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");A=e}}),s.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},s.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||a(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},s.prototype.getMaxListeners=function(){return u(this)},s.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var r="error"===e,i=this._events;if(void 0!==i)r=r&&void 0===i.error;else if(!r)return!1;if(r){var a;if(t.length>0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var A=i[e];if(void 0===A)return!1;if("function"==typeof A)o(A,this,t);else{var l=A.length,u=p(A,l);for(n=0;n<l;++n)o(u[n],this,t)}return!0},s.prototype.addListener=function(e,t){return c(this,e,t,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(e,t){return c(this,e,t,!0)},s.prototype.once=function(e,t){return l(t),this.on(e,d(this,e,t)),this},s.prototype.prependOnceListener=function(e,t){return l(t),this.prependListener(e,d(this,e,t)),this},s.prototype.removeListener=function(e,t){var n,r,i,o,a;if(l(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,a||t)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,o=Object.keys(n);for(r=0;r<o.length;++r)"removeListener"!==(i=o[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},s.prototype.listeners=function(e){return f(this,e,!0)},s.prototype.rawListeners=function(e){return f(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},s.prototype.listenerCount=g,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},56:function(e,t,n){"use strict";t.__esModule=!0,t.extend=s,t.indexOf=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},t.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML();if(null==e)return"";if(!e)return e+"";e=""+e}if(!o.test(e))return e;return e.replace(i,a)},t.isEmpty=function(e){return!e&&0!==e||!(!u(e)||0!==e.length)},t.createFrame=function(e){var t=s({},e);return t._parent=e,t},t.blockParams=function(e,t){return e.path=t,e},t.appendContextPath=function(e,t){return(e?e+".":"")+t};var r={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},i=/[&<>"'`=]/g,o=/[&<>"'`=]/;function a(e){return r[e]}function s(e){for(var t=1;t<arguments.length;t++)for(var n in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],n)&&(e[n]=arguments[t][n]);return e}var A=Object.prototype.toString;t.toString=A;var l=function(e){return"function"==typeof e};l(/x/)&&(t.isFunction=l=function(e){return"function"==typeof e&&"[object Function]"===A.call(e)}),t.isFunction=l;var u=Array.isArray||function(e){return!(!e||"object"!=typeof e)&&"[object Array]"===A.call(e)};t.isArray=u},78:function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},79:function(e,t,n){"use strict";t.__esModule=!0;var r=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function i(e,t){var n=t&&t.loc,o=void 0,a=void 0,s=void 0,A=void 0;n&&(o=n.start.line,a=n.end.line,s=n.start.column,A=n.end.column,e+=" - "+o+":"+s);for(var l=Error.prototype.constructor.call(this,e),u=0;u<r.length;u++)this[r[u]]=l[r[u]];Error.captureStackTrace&&Error.captureStackTrace(this,i);try{n&&(this.lineNumber=o,this.endLineNumber=a,Object.defineProperty?(Object.defineProperty(this,"column",{value:s,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:A,enumerable:!0})):(this.column=s,this.endColumn=A))}catch(e){}}i.prototype=new Error,t.default=i,e.exports=t.default}}]);</script><script>(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[function(e,t,n){"use strict";n.r(t);var s=n(65);n.d(t,"Locale",(function(){return s}))},function(e,t,n){"use strict";n.r(t),n.d(t,"Events",(function(){return o}));var s=n(53),i=n.n(s);class l extends i.a{constructor(){super(),this.setMaxListeners(1e3)}}const o=new l},function(e,t,n){"use strict";let s;n.r(t),n.d(t,"Launcher",(function(){return s})),window.process&&window.process.versions&&window.process.versions.electron&&(s=n(194).Launcher)},function(e,t,n){"use strict";n.r(t),n.d(t,"AppSettingsModel",(function(){return a}));var s=n(18),i=n(31),l=n(106);class o extends s.Model{constructor(){super(),this.on("change",()=>this.save())}load(){return i.SettingsStore.load("app-settings").then(e=>{e&&(this.upgrade(e),this.set(e,{silent:!0}))})}upgrade(e){!0===e.rememberKeyFiles&&(e.rememberKeyFiles="data")}save(){const e={};for(const[t,n]of Object.entries(this))l.DefaultAppSettings[t]!==n&&(e[t]=n);i.SettingsStore.save("app-settings",e)}}o.defineModelProperties(l.DefaultAppSettings,{extensions:!0});const a=new o},,function(e,t,n){"use strict";n.r(t),n.d(t,"Keys",(function(){return s}));const s={DOM_VK_CANCEL:3,DOM_VK_HELP:6,DOM_VK_BACK_SPACE:8,DOM_VK_TAB:9,DOM_VK_CLEAR:12,DOM_VK_RETURN:13,DOM_VK_ENTER:14,DOM_VK_SHIFT:16,DOM_VK_CONTROL:17,DOM_VK_ALT:18,DOM_VK_PAUSE:19,DOM_VK_CAPS_LOCK:20,DOM_VK_ESCAPE:27,DOM_VK_SPACE:32,DOM_VK_PAGE_UP:33,DOM_VK_PAGE_DOWN:34,DOM_VK_END:35,DOM_VK_HOME:36,DOM_VK_LEFT:37,DOM_VK_UP:38,DOM_VK_RIGHT:39,DOM_VK_DOWN:40,DOM_VK_PRINTSCREEN:44,DOM_VK_INSERT:45,DOM_VK_DELETE:46,DOM_VK_0:48,DOM_VK_1:49,DOM_VK_2:50,DOM_VK_3:51,DOM_VK_4:52,DOM_VK_5:53,DOM_VK_6:54,DOM_VK_7:55,DOM_VK_8:56,DOM_VK_9:57,DOM_VK_SEMICOLON:59,DOM_VK_EQUALS:61,DOM_VK_A:65,DOM_VK_B:66,DOM_VK_C:67,DOM_VK_D:68,DOM_VK_E:69,DOM_VK_F:70,DOM_VK_G:71,DOM_VK_H:72,DOM_VK_I:73,DOM_VK_J:74,DOM_VK_K:75,DOM_VK_L:76,DOM_VK_M:77,DOM_VK_N:78,DOM_VK_O:79,DOM_VK_P:80,DOM_VK_Q:81,DOM_VK_R:82,DOM_VK_S:83,DOM_VK_T:84,DOM_VK_U:85,DOM_VK_V:86,DOM_VK_W:87,DOM_VK_X:88,DOM_VK_Y:89,DOM_VK_Z:90,DOM_VK_CONTEXT_MENU:93,DOM_VK_NUMPAD0:96,DOM_VK_NUMPAD1:97,DOM_VK_NUMPAD2:98,DOM_VK_NUMPAD3:99,DOM_VK_NUMPAD4:100,DOM_VK_NUMPAD5:101,DOM_VK_NUMPAD6:102,DOM_VK_NUMPAD7:103,DOM_VK_NUMPAD8:104,DOM_VK_NUMPAD9:105,DOM_VK_MULTIPLY:106,DOM_VK_ADD:107,DOM_VK_SEPARATOR:108,DOM_VK_SUBTRACT:109,DOM_VK_DECIMAL:110,DOM_VK_DIVIDE:111,DOM_VK_F1:112,DOM_VK_F2:113,DOM_VK_F3:114,DOM_VK_F4:115,DOM_VK_F5:116,DOM_VK_F6:117,DOM_VK_F7:118,DOM_VK_F8:119,DOM_VK_F9:120,DOM_VK_F10:121,DOM_VK_F11:122,DOM_VK_F12:123,DOM_VK_F13:124,DOM_VK_F14:125,DOM_VK_F15:126,DOM_VK_F16:127,DOM_VK_F17:128,DOM_VK_F18:129,DOM_VK_F19:130,DOM_VK_F20:131,DOM_VK_F21:132,DOM_VK_F22:133,DOM_VK_F23:134,DOM_VK_F24:135,DOM_VK_NUM_LOCK:144,DOM_VK_SCROLL_LOCK:145,DOM_VK_COMMA:188,DOM_VK_PERIOD:190,DOM_VK_SLASH:191,DOM_VK_BACK_QUOTE:192,DOM_VK_OPEN_BRACKET:219,DOM_VK_BACK_SLASH:220,DOM_VK_CLOSE_BRACKET:221,DOM_VK_QUOTE:222,DOM_VK_META:224}},function(e,t,n){"use strict";n.r(t),n.d(t,"Features",(function(){return i}));const s=!!(window.process&&window.process.versions&&window.process.versions.electron),i={isDesktop:s,isMac:navigator.platform.indexOf("Mac")>=0,isWindows:navigator.platform.indexOf("Win")>=0,isiOS:/iPad|iPhone|iPod/i.test(navigator.userAgent),isMobile:/iPhone|iPad|iPod|Android|BlackBerry|Opera Mini|IEMobile|WPDesktop|Windows Phone|webOS/i.test(navigator.userAgent)||screen.width<800,isPopup:!(window.parent===window.top&&!window.opener),isStandalone:!!navigator.standalone,isFrame:window.top!==window,isSelfHosted:!s&&!/^http(s?):\/\/((localhost:8085)|((app|beta)\.keeweb\.info))/.test(location.href),isLocal:location.origin.indexOf("localhost")>=0,canUseWasmInWebWorker:!s&&!/Chrome/.test(navigator.appVersion),supportsTitleBarStyles(){return this.isMac},hasUnicodeFlags(){return this.isMac},getBrowserCssClass:()=>window.chrome&&window.navigator.userAgent.indexOf("Chrome/")>-1?"chrome":window.navigator.userAgent.indexOf("Edge/")>-1?"edge":navigator.standalone?"standalone":""}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"View",(function(){return h})),n.d(t,"DefaultTemplateOptions",(function(){return p}));var s=n(214),i=n.n(s),l=n(53),o=n.n(l),a=n(24),r=n(15),c=n(43),u=n(9);const d={mouseenter:!0,mouseleave:!0,blur:!0,focus:!0},p={allowProtoPropertiesByDefault:!0,allowedProtoProperties:{length:!0,active:!0}};class h extends o.a{constructor(e,t={}){super(),this.parent=void 0,this.template=void 0,this.events={},this.model=void 0,this.options={},this.views={},this.hidden=!1,this.removed=!1,this.modal=void 0,this.eventListeners={},this.elementEventListeners=[],this.debugLogger=localStorage.debugView?new u.Logger("view",this.constructor.name):void 0,this.model=e,this.options=t,this.setMaxListeners(100)}render(e){var t;if(this.removed)return;let n;return this.debugLogger&&(this.debugLogger.debug("Render start"),n=this.debugLogger.ts()),this.el&&a.Tip.destroyTips(this.el),this.renderElement(e),a.Tip.createTips(this.el),null===(t=this.debugLogger)||void 0===t||t.debug("Render finished",this.debugLogger.ts(n)),this}renderElement(t){const n=this.template(t,p);if(this.el){const e=this.options.ownParent?this.el.firstChild:this.el;i()(e,n),this.bindElementEvents()}else{let t=this.options.parent||this.parent;if(!t)throw new Error(`Error rendering ${this.constructor.name}: I don't know how to insert the view`);{if("string"==typeof t&&(t=document.querySelector(t)),!t)throw new Error(`Error rendering ${this.constructor.name}: parent not found`);this.options.replace&&(a.Tip.destroyTips(t),t.innerHTML="");const e=document.createElement("div");e.innerHTML=n;const s=e.firstChild;this.options.ownParent?(s&&t.appendChild(s),this.el=t):(this.el=s,t.appendChild(this.el)),this.modal&&c.FocusManager.setModal(this.modal),this.bindEvents()}this.$el=e(this.el)}}bindEvents(){const e={};for(const[t,n]of Object.entries(this.events)){const s=t.indexOf(" ");let i,l;if(s>0){if(i=t.substr(0,s),l=t.substr(s+1),d[i]){this.elementEventListeners.push({event:i,selector:l,method:n,els:[]});continue}}else i=t;e[i]||(e[i]=[]),e[i].push({selector:l,method:n})}for(const[n,s]of Object.entries(e)){var t;null===(t=this.debugLogger)||void 0===t||t.debug("Bind","view",n,s);const e=e=>this.eventListener(e,s);this.eventListeners[n]=e,this.el.addEventListener(n,e)}this.bindElementEvents()}unbindEvents(){for(const[e,t]of Object.entries(this.eventListeners))this.el.removeEventListener(e,t);this.unbindElementEvents()}bindElementEvents(){if(this.elementEventListeners.length){this.unbindElementEvents();for(const t of this.elementEventListeners){var e;const n=this.el.querySelectorAll(t.selector);null===(e=this.debugLogger)||void 0===e||e.debug("Bind","element",t.event,t.selector,n.length),t.listener=e=>this.eventListener(e,[t]);for(const e of n)e.addEventListener(t.event,t.listener),t.els.push(e)}}}unbindElementEvents(){if(this.elementEventListeners.length)for(const e of this.elementEventListeners){for(const t of e.els)t.removeEventListener(e.event,e.listener);e.els=[]}}eventListener(e,t){var n;null===(n=this.debugLogger)||void 0===n||n.debug("Listener fired",e.type);for(const{selector:n,method:l}of t){var s,i;if(n){const t=e.target.closest(n);if(!t||!this.el.contains(t))continue}if(this[l])null===(s=this.debugLogger)||void 0===s||s.debug("Handling event",e.type,l),this[l](e);else null===(i=this.debugLogger)||void 0===i||i.debug("Method not defined",l)}}remove(){var e;this.modal&&c.FocusManager.modal===this.modal&&c.FocusManager.setModal(null),this.emit("remove"),this.removeInnerViews(),a.Tip.hideTips(this.el),this.el.remove(),this.removed=!0,null===(e=this.debugLogger)||void 0===e||e.debug("Remove")}removeInnerViews(){if(this.views){for(const e of Object.values(this.views))e&&(e instanceof Array?e.forEach(e=>e.remove()):e.remove());this.views={}}}listenTo(e,t,n){const s=n.bind(this);e.on(t,s),this.once("remove",()=>e.off(t,s))}hide(){return a.Tip.hideTips(this.el),this.toggle(!1)}show(){return this.toggle(!0)}toggle(e){var t;null===(t=this.debugLogger)||void 0===t||t.debug(e?"Show":"Hide"),void 0===e&&(e=this.hidden),this.hidden=!e,this.modal&&(e?c.FocusManager.setModal(this.modal):c.FocusManager.modal===this.modal&&c.FocusManager.setModal(null)),this.emit(e?"show":"hide"),this.el&&(this.el.classList.toggle("show",!!e),this.el.classList.toggle("hide",!e),e||a.Tip.hideTips(this.el))}isHidden(){return this.hidden}isVisible(){return!this.hidden}afterPaint(e){requestAnimationFrame(()=>requestAnimationFrame(e))}onKey(e,t,n,s,i){r.KeyHandler.onKey(e,t,this,n,s,i),this.once("remove",()=>r.KeyHandler.offKey(e,t,this))}off(e,t){return void 0===t?super.removeAllListeners(e):super.off(e,t)}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"Alerts",(function(){return l}));var s=n(0),i=n(121);const l={alertDisplayed:!1,buttons:{ok:{result:"yes",get title(){return s.Locale.alertOk}},yes:{result:"yes",get title(){return s.Locale.alertYes}},no:{result:"",get title(){return s.Locale.alertNo}},cancel:{result:"",get title(){return s.Locale.alertCancel}}},alert(e){if(e.skipIfAlertDisplayed&&l.alertDisplayed)return null;l.alertDisplayed=!0;const t=new i.ModalView(e);return t.render(),t.on("result",(t,n)=>{t&&e.success&&e.success(t,n),!t&&e.cancel&&e.cancel(),e.complete&&e.complete(t,n)}),t.on("will-close",()=>{l.alertDisplayed=!1}),t},notImplemented(){this.alert({header:s.Locale.notImplemented,body:"",icon:"exclamation-triangle",buttons:[this.buttons.ok],esc:"",click:"",enter:""})},info(e){this.alert(Object.assign({header:"",body:"",icon:"info",buttons:[this.buttons.ok],esc:"",click:"",enter:""},e))},error(e){this.alert(Object.assign({header:"",body:"",icon:"exclamation-circle",buttons:[this.buttons.ok],esc:"",click:"",enter:""},e))},yesno(e){this.alert(Object.assign({header:"",body:"",icon:"question",buttons:[this.buttons.yes,this.buttons.no],esc:"",click:"",enter:"yes"},e))}}},function(e,t,n){"use strict";n.r(t),n.d(t,"Logger",(function(){return l}));const s={Off:0,Error:1,Warn:2,Info:3,Debug:4,All:5},i=[],l=function(e,t,n=s.All){this.prefix=e?e+(t?":"+t:""):"default",this.level=n};l.prototype.ts=function(e){return e?Math.round(performance.now()-e)+"ms":performance.now()},l.prototype.getPrefix=function(){return(new Date).toISOString()+" ["+this.prefix+"] "},l.prototype.debug=function(...e){e[0]=this.getPrefix()+e[0],this.level>=s.Debug&&(l.saveLast("debug",e),console.log(...e))},l.prototype.info=function(...e){e[0]=this.getPrefix()+e[0],this.level>=s.Info&&(l.saveLast("info",e),console.info(...e))},l.prototype.warn=function(...e){e[0]=this.getPrefix()+e[0],this.level>=s.Warn&&(l.saveLast("warn",e),console.warn(...e))},l.prototype.error=function(...e){e[0]=this.getPrefix()+e[0],this.level>=s.Error&&(l.saveLast("error",e),console.error(...e))},l.prototype.setLevel=function(e){this.level=e},l.prototype.getLevel=function(){return this.level},l.saveLast=function(e,t){i.push({level:e,args:Array.prototype.slice.call(t)}),i.length>100&&i.shift()},l.getLast=function(){return i},l.Level=s},function(e,t,n){"use strict";n.r(t),n.d(t,"StringFormat",(function(){return s}));const s={camelCaseRegex:/-./g,capFirst:e=>e?e[0].toUpperCase()+e.substr(1):"",pad(e,t){let n=e.toString();for(;n.length<t;)n="0"+n;return n},padStr(e,t){for(;e.length<t;)e+=" ";return e},camelCase(e){return e.replace(this.camelCaseRegex,e=>e[1].toUpperCase())},pascalCase(e){return this.capFirst(e.replace(this.camelCaseRegex,e=>e[1].toUpperCase()))}}},,function(e,t,n){"use strict";n.r(t),n.d(t,"Storage",(function(){return m}));var s=n(2),i=n(126),l=n(128),o=n(129),a=n(130),r=n(131),c=n(132),u=n(133),d=n(90);const p={file:new o.StorageFile,cache:s.Launcher?new a.StorageFileCache:new i.StorageCache},h={dropbox:new l.StorageDropbox,gdrive:new r.StorageGDrive,onedrive:new c.StorageOneDrive,webdav:new u.StorageWebDav},m=p;s.Launcher&&!s.Launcher.thirdPartyStoragesSupported||Object.assign(m,h),requestAnimationFrame(d.createOAuthSession)},function(e,t,n){"use strict";n.r(t),n.d(t,"UpdateModel",(function(){return o}));var s=n(18),i=n(31);class l extends s.Model{load(){return i.SettingsStore.load("update-info").then(e=>{if(e)try{for(const[t,n]of Object.entries(e))/Date$/.test(t)&&(e[t]=n?new Date(n):null);this.set(e,{silent:!0})}catch(e){}})}save(){const e=Object.assign({},this);for(const t of Object.keys(e))0===t.lastIndexOf("update",0)&&delete e[t];i.SettingsStore.save("update-info",e)}}l.defineModelProperties({lastSuccessCheckDate:null,lastCheckDate:null,lastVersion:null,lastVersionReleaseDate:null,lastCheckError:null,lastCheckUpdMin:null,status:null,updateStatus:null,updateError:null,updateManual:!1});const o=new l},function(e,t,n){"use strict";n.r(t),n.d(t,"escape",(function(){return i})),n.d(t,"noop",(function(){return l})),n.d(t,"shuffle",(function(){return o})),n.d(t,"pick",(function(){return a})),n.d(t,"omit",(function(){return r})),n.d(t,"omitEmpty",(function(){return c})),n.d(t,"mapObject",(function(){return u})),n.d(t,"isEqual",(function(){return d}));var s=n(11);const i=n.n(s).a.escapeExpression;function l(){}function o(e){for(let t=e.length-1;t>0;t--){const n=Math.floor(Math.random()*(t+1));[e[t],e[n]]=[e[n],e[t]]}return e}function a(e,t){if(!e)return e;const n={};for(const s of t)Object.prototype.hasOwnProperty.call(e,s)&&(n[s]=e[s]);return n}function r(e,t){if(!e)return e;const n=Object.assign({},e);for(const e of t)delete n[e];return n}function c(e){return e?Object.entries(e).reduce((e,[t,n])=>(n&&(e[t]=n),e),{}):e}function u(e,t){return Object.entries(e).reduce((e,[n,s])=>(e[n]=t(s),e),{})}function d(e,t){return e===t||(e instanceof Date?+e==+t:e instanceof Array&&t instanceof Array&&e.join(",")===t.join(","))}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"KeyHandler",(function(){return r}));var s=n(1),i=n(61),l=n(5),o=n(43);const a=navigator.platform.indexOf("Mac")>=0?"metaKey":"ctrlKey";const r=new class{constructor(){this.SHORTCUT_ACTION=1,this.SHORTCUT_OPT=2,this.SHORTCUT_SHIFT=4,this.shortcuts={}}init(){e(document).bind("keypress",this.keypress.bind(this)),e(document).bind("keydown",this.keydown.bind(this)),this.shortcuts[l.Keys.DOM_VK_A]=[{handler:this.handleAKey,thisArg:this,shortcut:this.SHORTCUT_ACTION,modal:!0,noPrevent:!0}]}onKey(e,t,n,s,i,l){let o=this.shortcuts[e];o||(this.shortcuts[e]=o=[]),o.push({handler:t,thisArg:n,shortcut:s,modal:i,noPrevent:l})}offKey(e,t,n){this.shortcuts[e]&&(this.shortcuts[e]=this.shortcuts[e].filter(e=>e.handler!==t||e.thisArg!==n))}isActionKey(e){return e[a]}keydown(e){i.IdleTracker.regUserAction();const t=e.keyCode||e.which,n=this.shortcuts[t];if(n&&n.length)for(const s of n){if(o.FocusManager.modal&&s.modal!==o.FocusManager.modal&&"*"!==s.modal){e.stopPropagation();continue}const n=this.isActionKey(e);switch(s.shortcut){case this.SHORTCUT_ACTION:if(!n)continue;break;case this.SHORTCUT_OPT:if(!e.altKey)continue;break;case this.SHORTCUT_SHIFT:if(!e.shiftKey)continue;break;case this.SHORTCUT_ACTION+this.SHORTCUT_OPT:if(!e.altKey||!n)continue;break;default:if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)continue}if(s.handler.call(s.thisArg,e,t),n&&!s.noPrevent&&e.preventDefault(),e.isImmediatePropagationStopped())break}}keypress(e){o.FocusManager.modal||e.which===l.Keys.DOM_VK_RETURN||e.which===l.Keys.DOM_VK_ESCAPE||e.which===l.Keys.DOM_VK_TAB||e.altKey||e.ctrlKey||e.metaKey?o.FocusManager.modal&&s.Events.emit("keypress:"+o.FocusManager.modal,e):s.Events.emit("keypress",e)}reg(){i.IdleTracker.regUserAction()}handleAKey(e){"input"===e.target.tagName.toLowerCase()&&["password","text"].indexOf(e.target.type)>=0?e.stopImmediatePropagation():e.preventDefault()}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"Timeouts",(function(){return s}));const s={CopyTip:1500,AutoHideHint:3e3,FileChangeSync:3e3,BeforeAutoLock:300,CheckWindowClosed:300,OtpFadeDuration:1e4,AutoTypeAfterHide:100,AutoTypeWindowFocusAfterBlur:500,DropDownClickWait:500,RedrawInactiveWindow:50,PopupWaitTime:1e3,AutoUpdatePluginsAfterStart:500,LinkDownloadRevoke:6e5,DefaultHttpRequest:6e4,ExternalDeviceReconnect:3e3,ExternalDeviceAfterReconnect:1e3,FieldLabelDoubleClick:300,NativeModuleHostRestartTime:3e3}},,function(e,t,n){"use strict";n.r(t),n.d(t,"Model",(function(){return d}));var s=n(53),i=n.n(s),l=n(9);const o=Symbol("events"),a=Symbol("defaults"),r=Symbol("extensions");function c(e,t,n,s){const i=e[o];i.paused||(i.emit("change:"+t,e,n,s),i.noChange||i.emit("change",e,{[t]:n}))}const u={deleteProperty(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){const n=e[a],s=n[t],i=e[t];return i!==s&&(Object.prototype.hasOwnProperty.call(n,t)?e[t]=s:delete e[t],c(e,t,s,i)),!0}return!0},set(e,t,n,s){if(Object.prototype.hasOwnProperty.call(e,t)||e[r]){if(e[t]!==n){const s=e[t];e[t]=n,c(e,t,n,s)}return!0}return new l.Logger(s.constructor.name).warn("Unknown property: "+t,(new Error).stack),!1}};class d{constructor(e){const t=new i.a;t.setMaxListeners(100);const n={[o]:{value:t}};for(const[e,t]of Object.entries(this[a]))n[e]={configurable:!0,enumerable:!0,writable:!0,value:t};Object.defineProperties(this,n);const s=new Proxy(this,u);return e&&s.set(e,{silent:!0}),s}set(e,{silent:t}={}){const n=this[o];t&&(n.paused=!0),n.noChange=!0;for(const[t,n]of Object.entries(e))this[t]=n;n.noChange=!1,t?n.paused=!1:n.emit("change",this,e)}on(e,t){this[o].on(e,t)}once(e,t){this[o].once(e,t)}off(e,t){this[o].off(e,t)}emit(e,...t){this[o].emit(e,...t)}static defineModelProperties(e,t){this.prototype[a]=Object.assign({},this.prototype[a],e),t&&t.extensions&&(this.prototype[r]=!0)}static set(e){this.prototype[a]=e}}},function(e,t,n){"use strict";n.r(t),n.d(t,"DateFormat",(function(){return l}));var s=n(10),i=n(0);const l={dtStr(e){return"number"==typeof e&&(e=new Date(e)),e?this.dStr(e)+" "+s.StringFormat.pad(e.getHours(),2)+":"+s.StringFormat.pad(e.getMinutes(),2)+":"+s.StringFormat.pad(e.getSeconds(),2):""},dStr:e=>("number"==typeof e&&(e=new Date(e)),e?e.getDate()+" "+i.Locale.monthsShort[e.getMonth()]+" "+e.getFullYear():""),dtStrFs:e=>("number"==typeof e&&(e=new Date(e)),e?e.getFullYear()+"-"+s.StringFormat.pad(e.getMonth()+1,2)+"-"+s.StringFormat.pad(e.getDate(),2)+"T"+s.StringFormat.pad(e.getHours(),2)+"-"+s.StringFormat.pad(e.getMinutes(),2)+"-"+s.StringFormat.pad(e.getSeconds(),2):"")}},function(e,t,n){"use strict";n.r(t),n.d(t,"Links",(function(){return s}));const s={Homepage:"https://keeweb.info",Repo:"https://github.com/keeweb/keeweb",Desktop:"https://github.com/keeweb/keeweb/releases/latest",WebApp:"https://app.keeweb.info",BetaWebApp:"https://beta.keeweb.info",License:"https://github.com/keeweb/keeweb/blob/master/LICENSE",LicenseApache:"https://opensource.org/licenses/Apache-2.0",UpdateDesktop:"https://github.com/keeweb/keeweb/releases/download/v{ver}/UpdateDesktop.zip",ReleaseNotes:"https://github.com/keeweb/keeweb/blob/master/release-notes.md#release-notes",SelfHostedDropbox:"https://github.com/keeweb/keeweb#self-hosting",Manifest:"https://app.keeweb.info/manifest.appcache",AutoType:"https://github.com/keeweb/keeweb/wiki/Auto-Type",Translation:"https://keeweb.oneskyapp.com/",Donation:"https://opencollective.com/keeweb#support",Plugins:"https://plugins.keeweb.info",PluginDevelopStart:"https://github.com/keeweb/keeweb/wiki/Plugins",YubiKeyManual:"https://github.com/keeweb/keeweb/wiki/YubiKey",YubiKeyManagerInstall:"https://github.com/Yubico/yubikey-manager#installation"}},function(e,t,n){"use strict";n.r(t),n.d(t,"RuntimeInfo",(function(){return s}));const s={version:"1.15.0",beta:!1,buildDate:"2020-06-06",commit:"3001afd",devMode:""}},function(e,t,n){"use strict";n.r(t),n.d(t,"Shortcuts",(function(){return d}));var s=n(2),i=n(5),l=n(3),o=n(6),a=n(10),r=n(0);let c;const u={copyPassword:{mac:"Ctrl+Alt+C",all:"Shift+Alt+C"},copyUser:{mac:"Ctrl+Alt+B",all:"Shift+Alt+B"},copyUrl:{mac:"Ctrl+Alt+U",all:"Shift+Alt+U"},copyOtp:{},autoType:{mac:"Ctrl+Alt+T",all:"Shift+Alt+T"},restoreApp:{}},d={keyEventToShortcut(e){const t=[];e.ctrlKey&&t.push("Ctrl"),e.altKey&&t.push("Alt"),e.shiftKey&&t.push("Shift"),o.Features.isMac&&e.metaKey&&t.push("Meta");const n=function(){if(!c){c={};for(const[e,t]of Object.entries(i.Keys)){const n=e.replace("DOM_VK_","");/^([0-9A-Z]|F\d{1,2})$/.test(n)&&(c[t]=n)}}return c}()[e.which];return{value:t.join("+")+"+"+(n||"…"),valid:t.length>0&&!!n}},presentShortcut(e,t){return e?e.split(/\+/g).map(e=>{switch(e){case"Ctrl":return this.ctrlShortcutSymbol(t);case"Alt":return this.altShortcutSymbol(t);case"Shift":return this.shiftShortcutSymbol(t);case"Meta":return this.actionShortcutSymbol(t);default:return e}}).join(""):"-"},actionShortcutSymbol(e){return o.Features.isMac?"⌘":this.formatShortcut(r.Locale.ctrlKey,e)},altShortcutSymbol(e){return o.Features.isMac?"⌥":this.formatShortcut(r.Locale.altKey,e)},shiftShortcutSymbol(e){return o.Features.isMac?"⇧":this.formatShortcut(r.Locale.shiftKey,e)},ctrlShortcutSymbol(e){return o.Features.isMac?"⌃":this.formatShortcut(r.Locale.ctrlKey,e)},formatShortcut:(e,t)=>t?e+" + ":e+"+",globalShortcutText(e,t){return this.presentShortcut(this.globalShortcut(e),t)},globalShortcut(e){const t=l.AppSettingsModel[this.globalShortcutAppSettingsKey(e)];if(t)return t;const n=u[e];return n?o.Features.isMac&&n.mac?n.mac:n.all:void 0},setGlobalShortcut(e,t){if(!u[e])throw new Error("Bad shortcut: "+e);t?l.AppSettingsModel[this.globalShortcutAppSettingsKey(e)]=t:delete l.AppSettingsModel[this.globalShortcutAppSettingsKey(e)],s.Launcher.setGlobalShortcuts(l.AppSettingsModel)},globalShortcutAppSettingsKey:e=>"globalShortcut"+a.StringFormat.capFirst(e),screenshotToClipboardShortcut:()=>o.Features.isiOS?"Sleep+Home":o.Features.isMobile?"":o.Features.isMac?"Command-Shift-Control-4":o.Features.isWindows?"Alt+PrintScreen":""}},function(e,t,n){"use strict";n.r(t),n.d(t,"UsbListener",(function(){return c}));var s=n(1),i=n(9),l=n(54),o=n(3),a=n(6);const r=new i.Logger("usb-listener"),c={supported:a.Features.isDesktop,attachedYubiKeys:0,init(){this.supported&&(s.Events.on("native-modules-yubikeys",e=>{e.numYubiKeys!==this.attachedYubiKeys&&(r.debug(`YubiKeys changed ${this.attachedYubiKeys} => ${e.numYubiKeys}`),this.attachedYubiKeys=e.numYubiKeys,s.Events.emit("usb-devices-changed"))}),o.AppSettingsModel.on("change:enableUsb",(e,t)=>{t?this.start():this.stop()}),o.AppSettingsModel.enableUsb&&this.start())},start(){r.info("Starting USB listener"),this.usb&&this.stop();try{l.NativeModules.startUsbListener()}catch(e){r.error("Error starting USB listener",e)}},stop(){r.info("Stopping USB listener");try{l.NativeModules.stopUsbListener()}catch(e){r.error("Error stopping USB listener",e)}this.attachedYubiKeys&&(this.attachedYubiKeys=0,s.Events.emit("usb-devices-changed"))}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"Tip",(function(){return o}));var s=n(1),i=n(6),l=n(14);const o=function(e,t){this.el=e,this.title=t&&t.title||e.attr("title"),this.placement=t&&t.placement||e.attr("tip-placement"),this.fast=t&&t.fast||!1,this.tipEl=null,this.showTimeout=null,this.hideTimeout=null,this.force=t&&t.force||!1,this.hide=this.hide.bind(this),this.destroy=this.destroy.bind(this),this.mouseenter=this.mouseenter.bind(this),this.mouseleave=this.mouseleave.bind(this)};o.enabled=!i.Features.isMobile,o.prototype.init=function(){o.enabled&&(this.el.removeAttr("title"),this.el.attr("data-title",this.title),this.el.mouseenter(this.mouseenter).mouseleave(this.mouseleave),this.el.click(this.mouseleave))},o.prototype.show=function(){if(!o.enabled&&!this.force||!this.title)return;s.Events.on("page-geometry",this.hide),this.tipEl&&(this.tipEl.remove(),this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=null));const t=this.tipEl=e("<div></div>").addClass("tip").appendTo("body").text(this.title),n=this.el[0].getBoundingClientRect(),i=this.tipEl[0].getBoundingClientRect(),l=this.placement||this.getAutoPlacement(n,i);let a,r;t.addClass("tip--"+l),this.fast&&t.addClass("tip--fast");switch(l){case"top":a=n.top-i.height-10,r=n.left+n.width/2-i.width/2;break;case"top-left":a=n.top-i.height-10,r=n.left+n.width/2-i.width+10;break;case"bottom":a=n.bottom+10,r=n.left+n.width/2-i.width/2;break;case"left":a=n.top+n.height/2-i.height/2,r=n.left-i.width-10;break;case"right":a=n.top+n.height/2-i.height/2,r=n.right+10}t.css({top:a,left:r})},o.prototype.hide=function(){this.tipEl&&(this.tipEl.remove(),this.tipEl=null,s.Events.off("page-geometry",this.hide))},o.prototype.destroy=function(){this.hide(),this.el.off("mouseenter",this.mouseenter),this.el.off("mouseleave",this.mouseleave),this.el.off("click",this.mouseleave),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null),this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=null)},o.prototype.mouseenter=function(){this.showTimeout||(this.showTimeout=setTimeout(()=>{this.showTimeout=null,this.show()},200))},o.prototype.mouseleave=function(){this.tipEl&&(this.tipEl.addClass("tip--hide"),this.hideTimeout=setTimeout(()=>{this.hideTimeout=null,this.hide()},500)),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)},o.prototype.getAutoPlacement=function(e,t){const n=document.body.getBoundingClientRect(),s=n.bottom-e.bottom>20+t.height,i=n.right-e.right>20+t.width/2,l=n.right-e.right>20+t.width,o=e.left>20+t.width/2,a=e.left>20+t.width;return s?a&&!i?"left":l&&!o?"right":"bottom":a&&!i?"left":l&&!o?"right":"top"},o.createTips=function(t){o.enabled&&e("[title]",t).each((e,t)=>{o.createTip(t)})},o.createTip=function(t,n){if(!(o.enabled||n&&n.force))return;const s=new o(e(t),n);return n&&n.noInit||s.init(),t._tip=s,s},o.hideTips=function(t){o.enabled&&t&&e("[data-title]",t).each((e,t)=>{o.hideTip(t)})},o.hideTip=function(e){e._tip&&e._tip.hide()},o.updateTip=function(e,t){e._tip&&(e._tip.hide(),Object.assign(e._tip,Object(l.pick)(t,["title","placement","fast","showTimeout","hideTimeout"])))},o.destroyTips=function(t){e("[data-title]",t).each((e,t)=>{t._tip&&(t._tip.destroy(),t._tip=void 0)})}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsManager",(function(){return a}));var s=n(1),i=n(6),l=n(0);const o=i.Features.isMac||i.Features.isiOS?{macdark:"setGenThemeMacDark"}:{},a={neutralLocale:null,activeLocale:"en",activeTheme:null,allLocales:{en:"English","de-DE":"Deutsch","fr-FR":"Français"},allThemes:Object.assign({fb:"setGenThemeFb",db:"setGenThemeDb",sd:"setGenThemeSd",sl:"setGenThemeSl",wh:"setGenThemeWh",te:"setGenThemeTe",hc:"setGenThemeHc"},o),customLocales:{},setBySettings(e){this.setTheme(e.theme),this.setFontSize(e.fontSize);const t=e.locale;try{t?this.setLocale(e.locale):this.setLocale(this.getBrowserLocale())}catch(e){}},getDefaultTheme:()=>i.Features.isMac?"macdark":"fb",setTheme(e){if(!e){if(this.activeTheme)return;e=this.getDefaultTheme()}for(const e of document.body.classList)/^th-/.test(e)&&document.body.classList.remove(e);document.body.classList.add(this.getThemeClass(e));const t=document.head.querySelector("meta[name=theme-color]");t&&(t.content=window.getComputedStyle(document.body).backgroundColor),this.activeTheme=e},getThemeClass:e=>"th-"+e,setFontSize(e){const t=i.Features.isMobile?14:12;document.documentElement.style.fontSize=t+2*(e||0)+"px"},setLocale(e){if(!e||e===this.activeLocale)return;let t;"en"!==e&&(t=this.customLocales[e]?this.customLocales[e]:n(290)("./"+e+".json")),this.neutralLocale||(this.neutralLocale=Object.assign({},l.Locale)),Object.assign(l.Locale,this.neutralLocale,t),this.activeLocale=e,s.Events.emit("set-locale",e)},getBrowserLocale(){const e=navigator.languages&&navigator.languages[0]||navigator.language;return e&&0===e.lastIndexOf("en",0)?"en":e}}},function(e,t,n){"use strict";n.r(t),n.d(t,"YubiKey",(function(){return h}));var s=n(1),i=n(2),l=n(54),o=n(9),a=n(23),r=n(3),c=n(16),u=n(77),d=n(0);const p=new o.Logger("yubikey"),h={ykmanStatus:void 0,process:null,aborted:!1,cmd(){if(this._cmd)return this._cmd;return"darwin"===i.Launcher.platform()&&i.Launcher.fileExistsSync("/usr/local/bin/ykman")?this._cmd="/usr/local/bin/ykman":this._cmd="ykman",this._cmd},checkToolStatus(){return"ok"===this.ykmanStatus?Promise.resolve(this.ykmanStatus):new Promise(e=>{this.ykmanStatus="checking",this._cmd=void 0,i.Launcher.spawn({cmd:this.cmd(),args:["-v"],noStdOutLogging:!0,complete:(t,n,s)=>{this.ykmanStatus=t||0!==s?"error":"ok",e(this.ykmanStatus)}})})},abort(){if(p.info("Aborting"),this.process){p.info("Killing the process");try{this.process.kill()}catch(e){}}this.aborted=!0,this.process=null},list(e){l.NativeModules.getYubiKeys({}).then(t=>{t=t.map(({serial:e,vid:t,pid:n,version:s,slots:i})=>({vid:t,pid:n,serial:e,slots:i,fullName:this.getKeyFullName(n,s,e)})),e(null,t)}).catch(e)},getKeyFullName(e,t,n){let s="YubiKey";return u.YubiKeyProductIds.Gen1.includes(e)?s+=" Gen 1":u.YubiKeyProductIds.NEO.includes(e)?s+=" NEO":u.YubiKeyProductIds.YK4.includes(e)&&t>="5.1.0"&&(s+=" 5"),`${s} ${n}`},listWithYkman(e){this._listWithYkman(e,!0)},_listWithYkman(e,t){return this.process?e("Already in progress"):(this.aborted=!1,p.info("Listing YubiKeys"),a.UsbListener.attachedYubiKeys?void(this.process=i.Launcher.spawn({cmd:this.cmd(),args:["list"],noStdOutLogging:!0,complete:(n,s)=>{if(this.process=null,this.aborted)return e("Aborted");if(n)return e(n);const i=s.trim().split(/\n/g).map(e=>({fullName:e,serial:(e.match(/\d{5,}$/g)||[])[0]})),l=i.filter(e=>e.serial);if(1===i.length&&0===l.length&&s.startsWith("YubiKey")&&s.includes("CCID")&&!s.includes("Serial")){if(p.info("The YubiKey is probably stuck"),!r.AppSettingsModel.yubiKeyStuckWorkaround)return e(d.Locale.yubiKeyStuckError);if(t)return this._repairStuckYubiKey(e)}if(!l.length)return e('No YubiKeys returned by "ykman list"');e(null,l)}})):e(null,[]))},_repairStuckYubiKey(e){let t;p.info("Repairing a stuck YubiKey");const n=a.UsbListener.attachedYubiKeys,l=()=>{a.UsbListener.attachedYubiKeys===n&&(p.info("YubiKey was reconnected"),s.Events.off("usb-devices-changed",l),clearTimeout(t),this.aborted=!1,setTimeout(()=>{this._listWithYkman(e,!1)},c.Timeouts.ExternalDeviceAfterReconnect))};s.Events.on("usb-devices-changed",l),i.Launcher.spawn({cmd:this.cmd(),args:["config","usb","-e","oath","-f"],noStdOutLogging:!0,complete:n=>{if(p.info("Repair complete",n?"with error":"OK"),n)return s.Events.off("usb-devices-changed",l),e("YubiKey repair error: "+n);t=setTimeout(()=>{s.Events.off("usb-devices-changed",l)},c.Timeouts.ExternalDeviceReconnect)}})},getOtpCodes(e,t){if(this.process)return t("Already in progress");this.aborted=!1,this.process=i.Launcher.spawn({cmd:this.cmd(),args:["-d",e,"oath","code"],noStdOutLogging:!0,throwOnStdErr:!0,complete:(e,n)=>{if(this.process=null,this.aborted)return t("Aborted");if(e)return t(e);const s=[];for(const e of n.split("\n")){const t=e.match(/^(.*?):(.*?)\s+(.*)$/);if(!t)continue;const[,n,i,l]=t,o=!l.match(/^\d+$/);s.push({title:n,user:i,needsTouch:o})}t(null,s)}})},getOtp(e,t,n){return i.Launcher.spawn({cmd:this.cmd(),args:["-d",e,"oath","code","--single",t],noStdOutLogging:!0,complete:(e,t)=>{if(e)return n(e);const s=t.trim();n(null,s)}})},calculateChalResp(e,t,n){const{vid:s,pid:i,serial:o,slot:a}=e,r={vid:s,pid:i,serial:o};t=Buffer.from(t);const c=u.YubiKeyChallengeSize-t.byteLength,d=Buffer.alloc(u.YubiKeyChallengeSize,c);t.copy(d),l.NativeModules.yubiKeyChallengeResponse(r,[...d],a,(e,t)=>(t&&(t=Buffer.from(t)),e&&(e.ykError=!0),n(e,t)))},cancelChalResp(){l.NativeModules.yubiKeyCancelChallengeResponse()}}},function(e,t,n){"use strict";n.r(t),n.d(t,"DropboxApps",(function(){return s})),n.d(t,"GDriveApps",(function(){return i})),n.d(t,"OneDriveApps",(function(){return l}));const s={AppFolder:{id:"qp7ctun6qt5n9d6",secret:"07s5r4ck1uvlj6a"},FullDropbox:{id:"eor7hvv6u6oslq9",secret:"ez04o1iwf6yprq3"}},i={Local:{id:"783608538594-36tkdh8iscrq8t8dq87gghubnhivhjp5.apps.googleusercontent.com",secret:"yAtyfc9TIQ9GyQgQmo3i0HAP"},Production:{id:"847548101761-koqkji474gp3i2gn3k5omipbfju7pbt1.apps.googleusercontent.com",secret:"42HeSBybXDZjvweotq4o4CkJ"},Desktop:{id:"847548101761-h2pcl2p6m1tssnlqm0vrm33crlveccbr.apps.googleusercontent.com",secret:"nTSCiqXtUNmURIIdASaC1TJK"}},l={Local:{id:"b97c53d5-db5b-4124-aab9-d39195293815",secret:"V9b6:iJU]N7cImE1f_OLNjqZJDBnumR?"},Production:{id:"bbc74d1b-3a9c-46e6-9da4-4c645e830923",secret:"aOMJaktJEAs_Tmh]fx4iQ[Zd3mp3KK7-"}}},function(e,t,n){"use strict";n.r(t),n.d(t,"Collection",(function(){return c}));var s=n(53),i=n.n(s);const l=Symbol("events"),o=Symbol("array");function a(e,t){const n=e.constructor.model;if(!n)throw new Error("Model type not defined for "+e.constructor.name);if(!(t instanceof n)){const n=t&&t.constructor?t.constructor.name:typeof t;throw new Error(`Attempt to write ${n} into ${e.constructor.name}`)}}const r={set(e,t,n){const s=parseInt(t);if(isNaN(s))return e[t]=n,!0;a(e,n);const i=e[o],r=i[t];return r!==n&&(i[t]=n,function(e,t,n){const s=e[l];if(!s.paused){const i={added:[],removed:[]};n&&(s.emit("remove",n,e),i.removed.push(n)),t&&(s.emit("add",t,e),i.added.push(t)),s.emit("change",i,e)}}(e,n,r)),!0},get(e,t){if("string"!=typeof t)return e[t];const n=parseInt(t);return isNaN(n)?e[t]:e[o][t]}};class c{constructor(e){const t=new i.a;t.setMaxListeners(100);const n={[l]:{value:t},[o]:{value:[]}};return Object.defineProperties(this,n),e&&this.push(...e),new Proxy(this,r)}get length(){return this[o].length}set length(e){const t=this[o];let n;e<t.length&&(n=t.slice(e)),t.length=e,n&&function(e,t){const n=e[l];if(!n.paused){for(const s of t)n.emit("remove",s,e);n.emit("change",{added:[],removed:t},e)}}(this,n)}push(...e){if(e.length){for(const t of e)a(this,t);this[l].paused=!0,this[o].push(...e),this[l].paused=!1;for(const t of e)this[l].emit("add",t,this);this[l].emit("change",{added:e,removed:[]},this)}}pop(){this[l].paused=!0;const e=this[o].pop();return this[l].paused=!1,e&&(this[l].emit("remove",e,this),this[l].emit("change",{added:[],removed:[e]},this)),e}shift(){this[l].paused=!0;const e=this[o].shift();return this[l].paused=!1,e&&(this[l].emit("remove",e,this),this[l].emit("change",{added:[],removed:[e]},this)),e}unshift(...e){if(e.length){for(const t of e)a(this,t);this[l].paused=!0,this[o].unshift(...e),this[l].paused=!1;for(const t of e)this[l].emit("add",t,this);this[l].emit("change",{added:e,removed:[]},this)}}splice(e,t,...n){for(const e of n)a(this,e);this[l].paused=!0;const s=this[o].splice(e,t,...n);this[l].paused=!1;for(const e of s)this[l].emit("remove",e,this);for(const e of n)this[l].emit("add",e,this);(s.length||n.length)&&this[l].emit("change",{added:n,removed:s},this)}on(e,t){this[l].on(e,t)}once(e,t){this[l].once(e,t)}off(e,t){this[l].off(e,t)}get(e){return this.find(t=>t.id===e)}remove(e){for(let t=0;t<this.length;t++)for(;t<this.length&&(this[t].id===e||this[t]===e);)this.splice(t,1)}sort(){return this[o].sort(this.comparator)}fill(){throw new Error("Not implemented")}copyWithin(){throw new Error("Not implemented")}toJSON(){return this[o].concat()}}const u=[Symbol.iterator,"concat","entries","every","filter","find","findIndex","flat","flatMap","forEach","includes","indexOf","join","keys","lastIndexOf","map","reduce","reduceRight","reverse","slice","some","values"];for(const e of u)Object.defineProperty(c.prototype,e,{value:function(...t){return this[o][e](...t)}})},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoType",(function(){return y}));var s=n(1),i=n(148),l=n(149),o=n(109),a=n(2),r=n(8),c=n(16),u=n(3),d=n(57),p=n(0),h=n(9),m=n(153);const f=new h.Logger("auto-type"),g=!!localStorage.debugAutoType,y={helper:l.AutoTypeHelperFactory.create(),enabled:!(!a.Launcher||!a.Launcher.autoTypeSupported),supportsEventsWithWindowId:!(!a.Launcher||"linux"!==a.Launcher.platform()),selectEntryView:!1,pendingEvent:null,running:!1,init(){this.enabled&&(s.Events.on("auto-type",e=>this.handleEvent(e)),s.Events.on("main-window-blur",e=>this.mainWindowBlur(e)),s.Events.on("main-window-focus",e=>this.mainWindowFocus(e)),s.Events.on("main-window-will-close",e=>this.mainWindowWillClose(e)),s.Events.on("closed-open-view",e=>this.processPendingEvent(e)))},handleEvent(e){const t=e&&e.entry||null,n=e&&e.sequence||null,s=e&&e.context||null;if(f.debug("Auto type event",t),this.running)f.debug("Already running, skipping event");else if(t)this.hideWindow(()=>{this.runAndHandleResult({entry:t,sequence:n,context:s})});else{if(this.selectEntryView)return;if(a.Launcher.isAppFocused())return r.Alerts.error({header:p.Locale.autoTypeError,body:p.Locale.autoTypeErrorGlobal,skipIfAlertDisplayed:!0});this.selectEntryAndRun()}},runAndHandleResult(e,t){this.run(e,t,e=>{e&&r.Alerts.error({header:p.Locale.autoTypeError,body:p.Locale.autoTypeErrorGeneric.replace("{}",e.toString())})}),u.AppSettingsModel.lockOnAutoType&&s.Events.emit("lock-workspace")},run(e,t,n){this.running=!0;const s=e.sequence||e.entry.getEffectiveAutoTypeSeq(),i=e.context;f.debug("Start",s);const l=f.ts();try{const a=new o.AutoTypeParser(s).parse();f.debug("Parsed",this.printOps(a.ops)),a.resolve(e.entry,i,s=>{if(s)return this.running=!1,f.error("Resolve error",s),n&&n(s);if(f.debug("Resolved",this.printOps(a.ops)),e.entry.autoTypeObfuscation){try{a.obfuscate()}catch(e){return this.running=!1,f.error("Obfuscate error",e),n&&n(e)}f.debug("Obfuscated")}a.run(e=>(this.running=!1,e?(f.error("Run error",e),n&&n(e)):(f.debug("Complete",f.ts(l)),n&&n())),t)})}catch(e){return this.running=!1,f.error("Parse error",e),n&&n(e)}},validate(e,t,n){try{new o.AutoTypeParser(t).parse().resolve(e,null,n)}catch(e){return n(e)}},printOps(e){return"["+e.map(this.printOp,this).join(",")+"]"},printOp(e){const t=e.mod?Object.keys(e.mod).join(""):"";if("group"===e.type)return t+this.printOps(e.value);if("text"===e.type){let n=e.value;return g||(n=n.replace(/./g,"*")),t+n}return t+e.type+":"+e.value},hideWindow(e){f.debug("Hide window"),a.Launcher.isAppFocused()?(a.Launcher.hideApp(),setTimeout(e,c.Timeouts.AutoTypeAfterHide)):e()},getActiveWindowInfo(e){return f.debug("Getting window info"),this.helper.getActiveWindowInfo((t,n)=>{if(t)f.error("Error getting window info",t);else{if(!n.url){const e=new RegExp("https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{2,256}\\.[a-z]{2,4}\\b([-a-zA-Z0-9@:%_\\+.~#?&//=]*)").exec(n.title);n.url=e&&e.length>0?e[0]:null}f.debug("Window info",n.id,n.title,n.url)}return e(t,n)})},activeWindowMatches(e,t){if(!e||!e.id)return f.debug("Skipped active window check because window id is unknown"),t(!0);this.getActiveWindowInfo((n,s)=>s?s.id===e.id||this.supportsEventsWithWindowId?s.url===e.url||this.supportsEventsWithWindowId?(f.info("Active window matches"),void t(!0,s)):(f.info(`Active window doesn't match: url is different. Expected "${e.url}", got "${s.url}"`),t(!1,s)):(f.info(`Active window doesn't match: ID is different. Expected ${e.id}, got ${s.id}`),t(!1,s)):(f.debug("Error during active window check, something is wrong",n),t(!1)))},selectEntryAndRun(){this.getActiveWindowInfo((e,t)=>{const n={filter:new i.AutoTypeFilter(t,d.AppModel.instance),windowInfo:t};d.AppModel.instance.files.hasOpenFiles()?this.processEventWithFilter(n):(this.pendingEvent=n,f.debug("auto-type event delayed"),this.focusMainWindow())})},focusMainWindow(){setTimeout(()=>a.Launcher.showMainWindow(),c.Timeouts.RedrawInactiveWindow)},processEventWithFilter(e){const t=e.filter.getEntries();1===t.length&&u.AppSettingsModel.directAutotype?this.hideWindow(()=>{this.runAndHandleResult({entry:t[0]},e.windowInfo.id)}):(this.focusMainWindow(),e.filter.ignoreWindowInfo=!0,this.selectEntryView=new m.AutoTypeSelectView({filter:e.filter}),this.selectEntryView.on("result",t=>{f.debug("Entry selected",t),this.selectEntryView.off("result"),this.selectEntryView.remove(),this.selectEntryView=null,this.hideWindow(()=>{t&&this.activeWindowMatches(e.windowInfo,(n,s)=>{n&&this.runAndHandleResult(t,e.windowInfo.id)})})}),this.selectEntryView.render(),this.selectEntryView.on("show-open-files",()=>{this.selectEntryView.hide(),s.Events.emit("open-file")}))},mainWindowBlur(){this.mainWindowBlurTimer=setTimeout(()=>{delete this.mainWindowBlurTimer,this.resetPendingEvent(),this.selectEntryView&&this.selectEntryView.emit("result",void 0)},c.Timeouts.AutoTypeWindowFocusAfterBlur)},mainWindowFocus(){this.mainWindowBlurTimer&&(clearTimeout(this.mainWindowBlurTimer),this.mainWindowBlurTimer=null)},mainWindowWillClose(){this.resetPendingEvent(),this.selectEntryView&&this.selectEntryView.emit("result",void 0)},resetPendingEvent(){this.pendingEvent&&(this.pendingEvent=null,f.debug("auto-type event canceled"))},processPendingEvent(){if(this.selectEntryView&&this.selectEntryView.show(),!this.pendingEvent)return;f.debug("processing pending auto-type event");const e=this.pendingEvent;this.pendingEvent=null,this.processEventWithFilter(e)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"UrlFormat",(function(){return s}));const s={multiSlashRegex:/\/{2,}/g,lastPartRegex:/[\/\\]?[^\/\\]+$/,kdbxEndRegex:/\.kdbx$/i,getDataFileName(e){const t=e.lastIndexOf("/");return t>=0&&(e=e.substr(t+1)),e=e.replace(/\?.*/,"").replace(/\.kdbx/i,"")},isKdbx(e){return e&&this.kdbxEndRegex.test(e)},fixSlashes(e){return e.replace(this.multiSlashRegex,"/")},fileToDir(e){return e.replace(this.lastPartRegex,"")||"/"},makeUrl:(e,t)=>e+"?"+Object.entries(t).map(([e,t])=>e+"="+encodeURIComponent(t)).join("&"),buildFormData:e=>Object.entries(e).map(([e,t])=>`${e}=${encodeURIComponent(t)}`).join("&")}},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsStore",(function(){return o}));var s=n(2),i=n(10);const l=new(n(9).Logger)("settings"),o={load(e){let t;return t=s.Launcher?s.Launcher.loadConfig(e):Promise.resolve().then(()=>localStorage[i.StringFormat.camelCase(e)]),t.then(e=>e?JSON.parse(e):null).catch(t=>{l.error("Error loading "+e,t)})},save:(e,t)=>s.Launcher?s.Launcher.saveConfig(e,JSON.stringify(t)).catch(t=>{l.error("Error saving "+e,t)}):Promise.resolve().then(()=>{"undefined"!=typeof localStorage&&(localStorage[i.StringFormat.camelCase(e)]=JSON.stringify(t))})}},function(e,t,n){"use strict";n.r(t),n.d(t,"Comparators",(function(){return l}));const s=String.fromCharCode(65533),i=window.Intl&&window.Intl.Collator&&!/Edge/.test(navigator.userAgent)?new Intl.Collator(void 0,{sensitivity:"base"}).compare:(e,t)=>e.toLocaleLowerCase().localeCompare(t.toLocaleLowerCase()),l={stringComparator:(e,t)=>t?function(t,n){return i(t[e]||s,n[e]||s)}:function(t,n){return i(n[e],t[e])},rankComparator:()=>function(e,t){return t.getRank(this.filter)-e.getRank(this.filter)},dateComparator:(e,t)=>t?function(t,n){return t[e]-n[e]}:function(t,n){return n[e]-t[e]}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FieldViewText",(function(){return g}));var s=n(4),i=n.n(s),l=n(1),o=n(15),a=n(5),r=n(6),c=n(160),u=n(52),d=n(24),p=n(45),h=n(72),m=n(14),f=n(3);class g extends p.FieldView{constructor(e,t){super(e,t),this.hasOptions=!0,this.once("remove",()=>this.stopBlurListener())}renderValue(e){if(this.model.markdown&&f.AppSettingsModel.useMarkdown){e&&e.isProtected&&(e=e.getText());const t=c.MdToHtml.convert(e);if(t.html)return t.html;e=t.text}return e&&e.isProtected?u.PasswordPresenter.presentValueWithLineBreaks(e):Object(m.escape)(e||"").replace(/\n/g,"<br/>")}getEditValue(e){return e&&e.isProtected?e.getText():e||""}startEdit(){const t=this.getEditValue(this.value),n=!(!this.value||!this.value.isProtected);this.$el.toggleClass("details__field--protected",n),this.input=e(document.createElement(this.model.multiline?"textarea":"input")),this.valueEl.empty().append(this.input),this.input.attr({autocomplete:"off",spellcheck:"false"}).val(t).focus()[0].setSelectionRange(t.length,t.length),this.input.bind({input:this.fieldValueInput.bind(this),keydown:this.fieldValueKeydown.bind(this),keypress:this.fieldValueInput.bind(this),click:this.fieldValueInputClick.bind(this),mousedown:this.fieldValueInputMouseDown.bind(this)});const s=e=>this.fieldValueBlur(e);l.Events.on("click",s),this.stopBlurListener=()=>l.Events.off("click",s),this.listenTo(l.Events,"main-window-will-close",this.externalEndEdit),this.listenTo(l.Events,"user-idle",this.externalEndEdit),this.model.multiline&&this.setInputHeight(),r.Features.isMobile?this.createMobileControls():this.model.canGen&&e("<div/>").addClass("details__field-value-btn details__field-value-btn-gen").appendTo(this.valueEl).click(this.showGeneratorClick.bind(this)).mousedown(this.showGenerator.bind(this)),d.Tip.hideTip(this.valueEl[0]),d.Tip.hideTip(this.labelEl[0])}createMobileControls(){this.mobileControls={},["cancel","apply"].forEach(t=>{this.mobileControls[t]=e("<div/>").addClass("details__field-value-btn details__field-value-btn-"+t).appendTo(this.labelEl).data("action",t).on({mousedown:this.mobileFieldControlMouseDown.bind(this),touchstart:this.mobileFieldControlTouchStart.bind(this),touchend:this.mobileFieldControlTouchEnd.bind(this),touchmove:this.mobileFieldControlTouchMove.bind(this)})})}showGeneratorClick(e){e.stopPropagation(),this.gen||this.input.focus()}showGenerator(){if(this.gen)this.hideGenerator();else{const e=this.input[0].getBoundingClientRect(),t=parseInt(this.input.css("--focus-shadow-spread"))||0,n={left:e.left},s=e.bottom+t,i=document.documentElement.clientHeight;s>i/2&&s>200?n.bottom=i-e.top+t:n.top=s,this.gen=new h.GeneratorView({pos:n,password:this.value}),this.gen.render(),this.gen.once("remove",this.generatorClosed.bind(this)),this.gen.once("result",this.generatorResult.bind(this))}}hideGenerator(){if(this.gen){const e=this.gen;delete this.gen,e.remove()}}generatorClosed(){this.gen&&(delete this.gen,this.endEdit())}generatorResult(e){this.gen&&(delete this.gen,this.endEdit(e))}setInputHeight(){this.input.height(18);let e=this.input[0].scrollHeight;e<=18&&(e=18),this.input.height(e)}fieldValueBlur(){!this.gen&&this.input&&this.endEdit(this.input.val())}fieldValueInput(e){e.stopPropagation(),this.model.multiline&&this.setInputHeight()}fieldValueInputClick(){this.gen&&this.hideGenerator()}fieldValueInputMouseDown(e){e.stopPropagation()}fieldValueKeydown(e){o.KeyHandler.reg();const t=e.keyCode||e.which;if(t===a.Keys.DOM_VK_RETURN){if(!this.model.multiline||!e.altKey&&!e.shiftKey&&!e.ctrlKey){if(this.gen)return e.target.value=this.gen.password,void this.hideGenerator();this.stopBlurListener(),this.endEdit(e.target.value)}}else if(t===a.Keys.DOM_VK_ESCAPE)this.stopBlurListener(),this.endEdit();else if(t===a.Keys.DOM_VK_TAB)e.preventDefault(),this.stopBlurListener(),this.endEdit(e.target.value,{tab:{field:this.model.name,prev:e.shiftKey}});else if(t===a.Keys.DOM_VK_G&&e.metaKey)e.preventDefault(),this.showGenerator();else if(t===a.Keys.DOM_VK_S&&(e.metaKey||e.ctrlKey))return this.stopBlurListener(),void this.endEdit(e.target.value);e.stopPropagation()}externalEndEdit(){this.input&&this.endEdit(this.input.val())}endEdit(t,n){this.gen&&this.hideGenerator(),this.editing&&(delete this.input,this.mobileControls&&(this.mobileControls.cancel.remove(),this.mobileControls.apply.remove(),delete this.mobileControls),this.stopBlurListener(),"string"==typeof t&&this.value instanceof i.a.ProtectedValue&&(t=i.a.ProtectedValue.fromString(t)),"string"==typeof t&&(t=e.trim(t)),super.endEdit(t,n))}stopBlurListener(){}mobileFieldControlMouseDown(t){t.stopPropagation(),this.stopBlurListener(),"apply"===e(t.target).data("action")?this.endEdit(this.input.val()):this.endEdit()}mobileFieldControlTouchStart(t){this.$el.attr("active-mobile-action",e(t.target).data("action"))}mobileFieldControlTouchEnd(t){const n=this.$el.attr("active-mobile-action")===e(t.target).data("action");this.$el.removeAttr("active-mobile-action"),n&&this.mobileFieldControlMouseDown(t)}mobileFieldControlTouchMove(t){const n=t.originalEvent.targetTouches[0],s=n.target.getBoundingClientRect();n.clientX>=s.left&&n.clientX<=s.right&&n.clientY>=s.top&&n.clientY<=s.bottom?this.$el.attr("active-mobile-action",e(t.target).data("action")):this.$el.removeAttr("active-mobile-action")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"PluginManager",(function(){return m}));var s=n(18),i=n(21),l=n(31),o=n(44),a=n(156),r=n(49),c=n(48),u=n(9),d=n(14);const p=new u.Logger("plugin-mgr");class h extends s.Model{constructor(){super({plugins:new a.PluginCollection})}init(){const e=p.ts();return l.SettingsStore.load("plugins").then(t=>{if(t&&(this.set({autoUpdateAppVersion:t.autoUpdateAppVersion,autoUpdateDate:t.autoUpdateDate}),t&&t.plugins&&t.plugins.length))return r.PluginGallery.getCachedGallery().then(n=>{const s=t.plugins.map(e=>this.loadPlugin(e,n));return Promise.all(s).then(t=>{this.plugins.push(...t.filter(e=>e)),p.info(`Loaded ${this.plugins.length} plugins`,p.ts(e))})})})}install(e,t,n){return this.emit("change"),o.Plugin.loadFromUrl(e,t).then(e=>this.uninstall(e.id).then(()=>(n&&(e.skipSignatureValidation=!0),e.install(!0,!1).then(()=>{this.plugins.push(e),this.emit("change"),this.saveState()})))).catch(e=>{throw this.emit("change"),e})}installIfNew(e,t,n){const s=this.plugins.find(t=>t.url===e);return s&&"invalid"!==s.status?Promise.resolve():this.install(e,t,n)}uninstall(e){const t=this.plugins.get(e);return t?(this.emit("change"),t.uninstall().then(()=>{this.plugins.remove(e),this.emit("change"),this.saveState()})):Promise.resolve()}disable(e){const t=this.plugins.get(e);return t&&t.status===o.PluginStatus.STATUS_ACTIVE?(this.emit("change"),t.disable().then(()=>{this.emit("change"),this.saveState()})):Promise.resolve()}activate(e){const t=this.plugins.get(e);return t&&t.status!==o.PluginStatus.STATUS_ACTIVE?(this.emit("change"),t.install(!0,!0).then(()=>{this.emit("change"),this.saveState()})):Promise.resolve()}update(e){const t=this.plugins.get(e),n=[o.PluginStatus.STATUS_ACTIVE,o.PluginStatus.STATUS_INACTIVE,o.PluginStatus.STATUS_NONE,o.PluginStatus.STATUS_ERROR,o.PluginStatus.STATUS_INVALID];if(!t||n.indexOf(t.status)<0)return Promise.reject();const s=t.url;return this.emit("change"),o.Plugin.loadFromUrl(s).then(e=>t.update(e).then(()=>{this.emit("change"),this.saveState()}).catch(e=>{throw this.emit("change"),e})).catch(e=>{throw this.emit("change"),e})}setAutoUpdate(e,t){const n=this.plugins.get(e);n&&n.autoUpdate!==t&&(n.setAutoUpdate(t),this.emit("change"),this.saveState())}runAutoUpdate(){const e=this.plugins.filter(e=>e.autoUpdate).map(e=>e.id);if(!e.length)return Promise.resolve();const t=this.autoUpdateAppVersion!==i.RuntimeInfo.version,n=!this.autoUpdateDate||Date.now()-this.autoUpdateDate>h.UpdateInterval;if(!(t||n))return;p.info("Auto-updating plugins",e.join(", ")),this.set({autoUpdateAppVersion:i.RuntimeInfo.version,autoUpdateDate:Date.now()}),this.saveState();const s=()=>{const t=e.shift();if(t)return this.update(t).catch(d.noop).then(s)};return s()}loadPlugin(e,t){const n=new o.Plugin({manifest:e.manifest,url:e.url,autoUpdate:e.autoUpdate});let s=e.enabled;if(s){const n=t?t.plugins.find(t=>t.manifest.name===e.manifest.name):null;s=(n?[n.manifest.publicKey]:c.SignatureVerifier.getPublicKeys()).includes(e.manifest.publicKey)}return n.install(s,!0).then(()=>n).catch(()=>n)}saveState(){l.SettingsStore.save("plugins",{autoUpdateAppVersion:this.autoUpdateAppVersion,autoUpdateDate:this.autoUpdateDate,plugins:this.plugins.map(e=>({manifest:e.manifest,url:e.url,enabled:"active"===e.status,autoUpdate:e.autoUpdate}))})}getStatus(e){const t=this.plugins.get(e);return t?t.status:""}getPlugin(e){return this.plugins.get(e)}}h.UpdateInterval=6048e5,h.defineModelProperties({plugins:null,autoUpdateAppVersion:null,autoUpdateDate:null});const m=new h},function(e,t,n){"use strict";n.r(t),n.d(t,"GeneratorPresets",(function(){return l}));var s=n(3),i=n(0);const l={get defaultPreset(){return{name:"Default",title:i.Locale.genPresetDefault,length:16,upper:!0,lower:!0,digits:!0}},get builtIn(){return[this.defaultPreset,{name:"Pronounceable",title:i.Locale.genPresetPronounceable,length:10,lower:!0,upper:!0},{name:"Med",title:i.Locale.genPresetMed,length:16,upper:!0,lower:!0,digits:!0,special:!0,brackets:!0,ambiguous:!0},{name:"Long",title:i.Locale.genPresetLong,length:32,upper:!0,lower:!0,digits:!0},{name:"Pin4",title:i.Locale.genPresetPin4,length:4,digits:!0},{name:"Mac",title:i.Locale.genPresetMac,length:17,include:"0123456789ABCDEF",pattern:"XX-"},{name:"Hash128",title:i.Locale.genPresetHash128,length:32,include:"0123456789abcdef"},{name:"Hash256",title:i.Locale.genPresetHash256,length:64,include:"0123456789abcdef"}]},get all(){let e=this.builtIn;e.forEach(e=>{e.builtIn=!0});const t=s.AppSettingsModel.generatorPresets;if(t){t.user&&(e=e.concat(t.user.map(e=>Object.assign({},e))));let n=!1;e.forEach(e=>{t.disabled&&t.disabled[e.name]&&(e.disabled=!0),t.default===e.name&&(n=!0,e.default=!0)}),n||(e[0].default=!0)}return e},get enabled(){const e=this.all.filter(e=>!e.disabled);return e.length||e.push(this.defaultPreset),e},getOrCreateSetting(){let e=s.AppSettingsModel.generatorPresets;return e||(e={user:[]}),e},add(e){const t=this.getOrCreateSetting();e.name&&!t.user.filter(t=>t.name===e.name).length&&(t.user.push(e),this.save(t))},remove(e){const t=this.getOrCreateSetting();t.user=t.user.filter(t=>t.name!==e),this.save(t)},setPreset(e,t){const n=this.getOrCreateSetting(),s=n.user.filter(t=>t.name===e)[0];s&&(Object.assign(s,t),this.save(n))},setDisabled(e,t){const n=this.getOrCreateSetting();t?(n.disabled||(n.disabled={}),n.disabled[e]=!0):n.disabled&&delete n.disabled[e],this.save(n)},setDefault(e){const t=this.getOrCreateSetting();e?t.default=e:delete t.default,this.save(t)},save(e){s.AppSettingsModel.set({generatorPresets:void 0},{silent:!0}),s.AppSettingsModel.generatorPresets=e}}},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewReadOnly",(function(){return l}));var s=n(45),i=n(14);class l extends s.FieldView{constructor(...e){super(...e),this.readonly=!0}renderValue(e){return e=(e=e.isProtected?new Array(e.textLength+1).join("•"):Object(i.escape)(e)).replace(/\n/g,"<br/>")}}},function(e,t,n){"use strict";n.r(t),n.d(t,"Scrollable",(function(){return r}));var s=n(215),i=n.n(s),l=n(1);const o=!n(6).Features.isMobile,a=Symbol("removeScrollAdded"),r={createScroll(e){o&&(this.scroll&&this.removeScroll(),this.scroll=i()(e),this[a]||(this.once("remove",()=>this.removeScroll),this[a]=!0)),this.scroller=this.$el.find(".scroller"),this.scrollerBar=this.$el.find(".scroller__bar"),this.scrollerBarWrapper=this.$el.find(".scroller__bar-wrapper")},removeScroll(){if(this.scroll){try{this.scroll.dispose()}catch(e){}this.scroll=null}},pageResized(){this.scroll&&(this.scroll.update(),requestAnimationFrame(()=>{if(this.scroll){this.scroll.update();const e=Math.round(this.scrollerBar.height()),t=Math.round(this.scrollerBarWrapper.height());this.scrollerBarWrapper.toggleClass("invisible",e>=t)}}))},initScroll(){o&&this.listenTo(l.Events,"page-geometry",this.pageResized)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuSectionModel",(function(){return a}));var s=n(18),i=n(144),l=n(58);function o(e){return e instanceof l.MenuItemModel?e:new l.MenuItemModel(e)}class a extends s.Model{constructor(e=[]){super({items:new i.MenuItemCollection(e.map(o))})}addItem(e){this.items.push(o(e)),this.emit("change-items")}removeAllItems(){this.items.length=0,this.defaultItems&&this.items.push(...this.defaultItems.map(e=>new l.MenuItemModel(e))),this.emit("change-items")}removeByFile(e){const t=this.items;t.find(n=>(n.file===e||n.file===e)&&(t.remove(n),!0)),this.emit("change-items")}replaceByFile(e,t){const n=this.items;n.find((s,i)=>(s.file===e||s.file===e)&&(n[i]=t,!0)),this.emit("change-items")}setItems(e){this.items.length=0,this.items.push(...e.map(o)),this.emit("change-items")}}a.defineModelProperties({defaultItems:null,items:null,scrollable:!1,grow:!1,drag:!1,visible:void 0,active:!1})},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageBase",(function(){return f}));var s=n(1),i=n(20),l=n(3),o=n(89),a=n(9),r=n(127),c=n(30),u=n(2),d=n(14),p=n(16),h=n(6),m=n(90);class f{constructor(){this.name=null,this.icon=null,this.iconSvg=null,this.enabled=!1,this.system=!1,this.uipos=null,this.logger=null,this.appSettings=l.AppSettingsModel,this.runtimeData=o.RuntimeDataModel}init(){if(!this.name)throw"Failed to init provider: no name";if(!this.system){const e=this.appSettings[this.name];"boolean"==typeof e&&(this.enabled=e)}return this.logger=new a.Logger("storage-"+this.name),this}setEnabled(e){e||this.logout(),this.enabled=e}get loggedIn(){return!!this.runtimeData[this.name+"OAuthToken"]}logout(){}_xhr(e){this.logger.info("HTTP request",e.method||"GET",e.url),e.data&&(e.dataType||(e.dataType="application/octet-stream"),e.headers=Object.assign({},e.headers,{"Content-Type":e.dataType})),this._oauthToken&&!e.skipAuth&&(e.headers=Object.assign({},e.headers,{Authorization:"Bearer "+this._oauthToken.accessToken})),this._httpRequest(e,t=>(this.logger.info("HTTP response",t.status),(e.statuses||[200]).indexOf(t.status)>=0?e.success&&e.success(t.response,t):401===t.status&&this._oauthToken?void this._oauthGetNewToken(n=>n?e.error&&e.error("unauthorized",t):(e.tryNum=(e.tryNum||0)+1,e.tryNum>=3?(this.logger.info("Too many authorize attempts, fail request",e.url),e.error&&e.error("unauthorized",t)):(this.logger.info("Repeat request, try #"+e.tryNum,e.url),void this._xhr(e)))):e.error&&e.error("http status "+t.status,t)))}_httpRequest(e,t){(h.Features.isDesktop?this._httpRequestLauncher:this._httpRequestWeb).call(this,e,t)}_httpRequestWeb(e,t){const n=new XMLHttpRequest;if(e.responseType&&(n.responseType=e.responseType),n.addEventListener("load",()=>{t({status:n.status,response:n.response,getResponseHeader:e=>n.getResponseHeader(e)})}),n.addEventListener("error",()=>e.error&&e.error("network error",n)),n.addEventListener("timeout",()=>e.error&&e.error("timeout",n)),n.open(e.method||"GET",e.url),e.headers)for(const[t,s]of Object.entries(e.headers))n.setRequestHeader(t,s);let s=e.data;s&&(e.dataIsMultipart||(s=[s]),s=new Blob(s,{type:e.dataType})),n.send(s)}_httpRequestLauncher(e,t){const n=u.Launcher.remReq("electron").net,s=u.Launcher.req("url").parse(e.url);let i;s.method=e.method||"GET",s.headers=Object.assign({"User-Agent":navigator.userAgent},e.headers),s.timeout=p.Timeouts.DefaultHttpRequest,e.data&&(i=e.dataIsMultipart?Buffer.concat(e.data.map(e=>Buffer.from(e))):Buffer.from(e.data));const l=n.request(s);let o=!1;l.on("close",()=>{o=!0}),l.on("response",n=>{const i=[],a=()=>{this.logger.debug("HTTP response",s.method,e.url,n.statusCode,n.headers);let l=Buffer.concat(i);if("json"===e.responseType)try{l=JSON.parse(l.toString("utf8"))}catch(t){return e.error&&e.error("json parse error")}else l=l.buffer.slice(l.byteOffset,l.byteOffset+l.length);t({status:n.statusCode,response:l,getResponseHeader:e=>n.headers[e.toLowerCase()]})};n.on("data",e=>{i.push(e),o&&!n.readable&&a()}),l.on("close",a)}),l.on("error",t=>(this.logger.error("HTTP error",s.method,e.url,t),e.error&&e.error("network error",{}))),l.on("timeout",()=>(l.abort(),e.error&&e.error("timeout",{}))),i&&l.write(i),l.end()}_openPopup(e,t,n,s,i){const l=void 0!==window.screenLeft?window.screenLeft:screen.left,o=void 0!==window.screenTop?window.screenTop:screen.top;let a={width:n,height:s,left:(window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:screen.width)/2-n/2+l,top:(window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:screen.height)/2-s/2+o,dialog:"yes",dependent:"yes",scrollbars:"yes",location:"yes"};return a=Object.keys(a).map(e=>e+"="+a[e]).join(","),window.open(e,t,a,i)}_getOauthRedirectUrl(){let e=window.location.href;return 0===e.lastIndexOf("file:",0)&&(e=i.Links.WebApp),new URL(`oauth-result/${this.name}.html`,e).href}_oauthAuthorize(e){if(this._tokenIsValid(this._oauthToken))return e();const t=this._getOAuthConfig(),n=this.runtimeData[this.name+"OAuthToken"];if(this._tokenIsValid(n))return this._oauthToken=n,e();if(n&&n.refreshToken)return this._oauthExchangeRefreshToken(e);const i=Object(m.createOAuthSession)();let l;h.Features.isDesktop?(l=r.StorageOAuthListener.listen(this.name),i.redirectUri=l.redirectUri):i.redirectUri=this._getOauthRedirectUrl();const o=t.pkce?{code_challenge:i.codeChallenge,code_challenge_method:"S256"}:void 0,a=c.UrlFormat.makeUrl(t.url,Object.assign({client_id:t.clientId,scope:t.scope,state:i.state,redirect_uri:i.redirectUri,response_type:"code"},o));if(l)return l.on("ready",()=>{u.Launcher.openLink(a),e("browser-auth-started")}),l.on("error",t=>e(t)),void l.on("result",e=>this._oauthCodeReceived(e,i));if(!this._openPopup(a,"OAuth",t.width,t.height))return e("OAuth: cannot open popup");this.logger.debug("OAuth: popup opened");const d=()=>{s.Events.off("popup-closed",d),window.removeEventListener("message",p),this.logger.error("OAuth error","popup closed"),e("OAuth: popup closed")},p=t=>{if(t.origin!==location.origin)return;if(!t.data||!t.data.storage||!t.data.search)return void this.logger.debug("Skipped empty OAuth message",t.data);if(t.data.storage!==this.name)return void this.logger.debug("Skipped OAuth message for another storage",t.data.storage);const n={};for(const[e,s]of new URLSearchParams(t.data.search).entries())n[e]=s;n.error?(this.logger.error("OAuth error",n.error,n.error_description),e("OAuth: "+n.error)):n.code?(s.Events.off("popup-closed",d),window.removeEventListener("message",p),this._oauthCodeReceived(n,i,e)):this.logger.debug("Skipped OAuth message",n)};s.Events.on("popup-closed",d),window.addEventListener("message",p)}_oauthProcessReturn(e){const t=this._oauthMsgToToken(e);return t&&!t.error&&(this._oauthToken=t,this.runtimeData[this.name+"OAuthToken"]=t,this.logger.debug("OAuth token received")),t}_oauthMsgToToken(e){return e.token_type?Object(d.omitEmpty)({dt:Date.now()-6e4,tokenType:e.token_type,accessToken:e.access_token,refreshToken:e.refresh_token,authenticationToken:e.authentication_token,expiresIn:+e.expires_in,scope:e.scope,userId:e.user_id}):e.error?{error:e.error,errorDescription:e.error_description}:void 0}_oauthGetNewToken(e){this._oauthToken.expired=!0,this.runtimeData[this.name+"OAuthToken"]=this._oauthToken,this._oauthToken.refreshToken?this._oauthExchangeRefreshToken(e):this._oauthAuthorize(e)}_oauthRevokeToken(e,t){const n=this.runtimeData[this.name+"OAuthToken"];n&&(e&&this._xhr(Object.assign({url:e.replace("{token}",n.accessToken),statuses:[200,401]},t)),delete this.runtimeData[this.name+"OAuthToken"],this._oauthToken=null)}_tokenIsValid(e){return!(!e||e.expired)&&!(e.dt&&e.expiresIn&&e.dt+1e3*e.expiresIn<Date.now())}_oauthCodeReceived(e,t,n){if(!e.state)return this.logger.info("OAuth result has no state"),n&&n("OAuth result has no state");if(e.state!==t.state)return this.logger.info("OAuth result has bad state"),n&&n("OAuth result has bad state");if(!e.code)return this.logger.info("OAuth result has no code"),n&&n("OAuth result has no code");this.logger.debug("OAuth code received"),h.Features.isDesktop&&u.Launcher.showMainWindow();const s=this._getOAuthConfig(),i=s.pkce?{code_verifier:t.codeVerifier}:void 0;this._xhr({url:s.tokenUrl,method:"POST",responseType:"json",skipAuth:!0,data:c.UrlFormat.buildFormData(Object.assign({client_id:s.clientId,client_secret:s.clientSecret,grant_type:"authorization_code",code:e.code,redirect_uri:t.redirectUri},i)),dataType:"application/x-www-form-urlencoded",success:e=>{this.logger.debug("OAuth code exchanged",e);const t=this._oauthProcessReturn(e);if(t&&t.error)return n&&n("OAuth code exchange error: "+t.error);null==n||n()},error:e=>{this.logger.error("Error exchanging OAuth code",e),null==n||n("OAuth code exchange error: "+e)}})}_oauthExchangeRefreshToken(e){this.logger.debug("Exchanging refresh token");const{refreshToken:t}=this.runtimeData[this.name+"OAuthToken"],n=this._getOAuthConfig();this._xhr({url:n.tokenUrl,method:"POST",responseType:"json",skipAuth:!0,data:c.UrlFormat.buildFormData({client_id:n.clientId,client_secret:n.clientSecret,grant_type:"refresh_token",refresh_token:t}),dataType:"application/x-www-form-urlencoded",success:n=>{this.logger.debug("Refresh token exchanged"),this._oauthProcessReturn(Object.assign({refresh_token:t},n)),e()},error:(t,n)=>{400===n.status&&(delete this.runtimeData[this.name+"OAuthToken"],this._oauthToken=null),this.logger.error("Error exchanging refresh token",t),null==e||e("Error exchanging refresh token")}})}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"CopyPaste",(function(){return o}));var s=n(1),i=n(2),l=n(3);const o={simpleCopy:!(!i.Launcher||!i.Launcher.clipboardSupported),copy(e){if(this.simpleCopy){i.Launcher.setClipboardText(e);const t=l.AppSettingsModel.clipboardSeconds;if(t>0){const n=()=>{i.Launcher.getClipboardText()===e&&i.Launcher.clearClipboardText()};s.Events.on("main-window-will-close",n),setTimeout(()=>{n(),s.Events.off("main-window-will-close",n)},1e3*t)}return{success:!0,seconds:t}}try{if(document.execCommand("copy"))return{success:!0}}catch(e){}return!1},createHiddenInput(t){const n=e("<input/>").val(t).attr({type:"text",class:"hide-by-pos"}).appendTo(document.body);n[0].selectionStart=0,n[0].selectionEnd=t.length,n.focus(),n.on({"copy cut paste"(){setTimeout(()=>n.blur(),0)},blur(){n.remove()}})},copyHtml(e){const t=document.createElement("div");t.style.userSelect="auto",t.style.webkitUserSelect="auto",t.style.mozUserSelect="auto",t.innerHTML=e,document.body.appendChild(t);const n=document.createRange();n.selectNodeContents(t);const s=window.getSelection();s.removeAllRanges(),s.addRange(n);const i=document.execCommand("copy");return t.remove(),i}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"StartProfiler",(function(){return o}));const s=new(n(9).Logger)("start-profiler");let i=0;const l=[],o={milestone(e){const t=s.ts(),n=t-i;i=t,l.push({name:e,elapsed:n})},report(){const e=this.getNetworkTime();l.unshift({name:"fetching",elapsed:e});const t=Math.round(performance.now());this.printReport("App",l,t)},reportAppProfile(e){this.printReport("Electron app",e.timings,e.totalTime)},printReport(e,t,n){const i=`${e} started in ${n}ms: `+t.map(e=>`${e.name}=${Math.round(e.elapsed)}ms`).join(", ");s.info(i)},getNetworkTime(){let e;return performance.getEntriesByType&&([e]=performance.getEntriesByType("navigation")),e&&e.responseEnd&&e.fetchStart||(e=performance.timing),e.responseEnd-e.fetchStart}};o.milestone("pre-init")},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"DropdownView",(function(){return r}));var s=n(1),i=n(7),l=n(5),o=n(227),a=n.n(o);class r extends i.View{constructor(t){super(t),this.parent="body",this.modal="dropdown",this.template=a.a,this.events={"click .dropdown__item":"itemClick"},s.Events.emit("dropdown-shown"),this.bodyClick=this.bodyClick.bind(this),this.listenTo(s.Events,"show-context-menu",this.bodyClick),this.listenTo(s.Events,"dropdown-shown",this.bodyClick),e("body").on("click contextmenu keydown",this.bodyClick),this.onKey(l.Keys.DOM_VK_UP,this.upPressed,!1,"dropdown"),this.onKey(l.Keys.DOM_VK_DOWN,this.downPressed,!1,"dropdown"),this.onKey(l.Keys.DOM_VK_RETURN,this.enterPressed,!1,"dropdown"),this.onKey(l.Keys.DOM_VK_ESCAPE,this.escPressed,!1,"dropdown"),this.once("remove",()=>{e("body").off("click contextmenu keydown",this.bodyClick)})}render(e){this.options=e.options,super.render(e);const t=this.$el[0].getBoundingClientRect(),n=document.body.getBoundingClientRect();let s=e.position.left||e.position.right-t.right+t.left,i=e.position.top;s+t.width>n.right&&(s=Math.max(0,n.right-t.width)),i+t.height>n.bottom&&(i=Math.max(0,n.bottom-t.height)),this.$el.css({top:i,left:s})}bodyClick(e){e&&[l.Keys.DOM_VK_UP,l.Keys.DOM_VK_DOWN,l.Keys.DOM_VK_RETURN,l.Keys.DOM_VK_ESCAPE].includes(e.which)||this.removed||this.emit("cancel")}itemClick(t){t.stopPropagation();const n=e(t.target).closest(".dropdown__item"),s=n.data("value");this.emit("select",{item:s,el:n})}upPressed(e){e.preventDefault(),this.selectedOption?this.selectedOption--:this.selectedOption=this.options.length-1,this.renderSelectedOption()}downPressed(e){e.preventDefault(),void 0===this.selectedOption||this.selectedOption===this.options.length-1?this.selectedOption=0:this.selectedOption++,this.renderSelectedOption()}renderSelectedOption(){this.$el.find(".dropdown__item").removeClass("dropdown__item--active"),this.$el.find(`.dropdown__item:nth(${this.selectedOption})`).addClass("dropdown__item--active")}enterPressed(){if(!this.removed&&void 0!==this.selectedOption){const e=this.$el.find(`.dropdown__item:nth(${this.selectedOption})`),t=e.data("value");this.emit("select",{item:t,el:e})}}escPressed(e){e.stopImmediatePropagation(),this.removed||this.emit("cancel")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"FocusManager",(function(){return l}));var s=n(9);const i=new s.Logger("focus-manager",void 0,localStorage.debugFocusManager?s.Logger.Level.Debug:s.Logger.Level.Info),l={modal:null,setModal(e){this.modal=e,i.debug("Set modal",e)}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"Plugin",(function(){return w})),n.d(t,"PluginStatus",(function(){return b}));var s=n(4),i=n.n(s),l=n(65),o=n(18),a=n(21),r=n(2),c=n(25),u=n(3),d=n(146),p=n(191),h=n(157),m=n(46),f=n(48),g=n(9);const y=new g.Logger("plugin"),v=new h.IoCache({cacheName:"PluginFiles",logger:new g.Logger("storage-plugin-files")}),b={STATUS_NONE:"",STATUS_ACTIVE:"active",STATUS_INACTIVE:"inactive",STATUS_INSTALLING:"installing",STATUS_ACTIVATING:"activating",STATUS_UNINSTALLING:"uninstalling",STATUS_UPDATING:"updating",STATUS_INVALID:"invalid",STATUS_ERROR:"error"};class w extends o.Model{constructor(e){const t=e.manifest.name;if(!t)throw new Error("Cannot create a plugin without name");super(Object.assign({id:t,name:t,resources:{},logger:new g.Logger("plugin:"+t)},e))}install(e,t){const n=this.logger.ts();return this.status=b.STATUS_INSTALLING,Promise.resolve().then(()=>{const s=this.validateManifest();if(s)throw this.logger.error("Manifest validation error",s),this.status=b.STATUS_INVALID,"Plugin validation error: "+s;if(this.status=b.STATUS_INACTIVE,e)return this.installWithManifest(t).then(()=>{this.installTime=this.logger.ts()-n}).catch(e=>{throw this.logger.error("Error installing plugin",e),this.set({status:b.STATUS_ERROR,installError:e,installTime:this.logger.ts()-n,updateError:null}),e});this.logger.info("Loaded inactive plugin")})}validateManifest(){const e=this.manifest;if(!e.name)return"No plugin name";if(!e.description)return"No plugin description";if(!/^\d+\.\d+\.\d+$/.test(e.version||""))return"Invalid plugin version";if("0.1.0"!==e.manifestVersion)return"Invalid manifest version "+e.manifestVersion;if(!(e.author&&e.author.email&&e.author.name&&e.author.url))return"Invalid plugin author";if(!e.url)return"No plugin url";if(!e.publicKey)return"No plugin public key";if(!this.skipSignatureValidation&&!f.SignatureVerifier.getPublicKeys().includes(e.publicKey))return"Public key mismatch";if(!e.resources||!Object.keys(e.resources).length)return"No plugin resources";if(e.resources.loc&&(!e.locale||!e.locale.title||!/^[a-z]{2}(-[A-Z]{2})?$/.test(e.locale.name)))return"Bad plugin locale";if(e.desktop&&!r.Launcher)return"Desktop plugin";if(e.versionMin){if(!/^\d+\.\d+\.\d+$/.test(e.versionMin))return"Invalid versionMin";if(m.SemVer.compareVersions(e.versionMin,a.RuntimeInfo.version)>0)return`Required min app version is ${e.versionMin}, actual ${a.RuntimeInfo.version}`}if(e.versionMax){if(!/^\d+\.\d+\.\d+$/.test(e.versionMax))return"Invalid versionMin";if(m.SemVer.compareVersions(e.versionMax,a.RuntimeInfo.version)<0)return`Required max app version is ${e.versionMax}, actual ${a.RuntimeInfo.version}`}}validateUpdatedManifest(e){const t=this.manifest;if(t.name!==e.name)return"Plugin name mismatch";if(t.publicKey!==e.publicKey){const n=f.SignatureVerifier.getPublicKeys().includes(t.publicKey),s=f.SignatureVerifier.getPublicKeys().includes(e.publicKey);if(!n||!s)return"Public key mismatch"}}installWithManifest(e){const t=this.manifest;this.logger.info("Loading plugin with resources",Object.keys(t.resources).join(", "),e?"(local)":"(url)"),this.resources={};const n=this.logger.ts(),s=Object.keys(t.resources).map(n=>this.loadResource(n,e,t));return Promise.all(s).catch(()=>{throw"Error loading plugin resources"}).then(()=>this.installWithResources()).then(()=>e?void 0:this.saveResources()).then(()=>{this.logger.info("Install complete",this.logger.ts(n))})}getResourcePath(e){switch(e){case"css":return"plugin.css";case"js":return"plugin.js";case"loc":return this.manifest.locale.name+".json";default:throw"Unknown resource "+e}}getStorageResourcePath(e){return this.id+"_"+this.getResourcePath(e)}loadResource(e,t,n){const s=this.logger.ts();let i;if(t)i=new Promise((t,n)=>{const s=this.getStorageResourcePath(e);v.load(s,(e,s)=>e?n(e):t(s))});else{i=k(this.url+this.getResourcePath(e)+"?v="+n.version,!0)}return i.then(t=>(this.logger.debug("Resource data loaded",e,this.logger.ts(s)),this.verifyResource(t,e).then(t=>{this.resources[e]=t})))}verifyResource(e,t){const n=this.logger.ts(),s=this.manifest,i=s.resources[t];return f.SignatureVerifier.verify(e,i,s.publicKey).then(s=>{if(s)return this.logger.debug("Resource signature validated",t,this.logger.ts(n)),e;throw this.logger.error("Resource signature invalid",t),"Signature invalid: "+t}).catch(()=>{throw this.logger.error("Error validating resource signature",t),"Error validating resource signature for "+t})}installWithResources(){this.logger.info("Installing plugin resources");const e=this.manifest,t=[];return this.resources.css&&t.push(this.applyCss(e.name,this.resources.css,e.theme)),this.resources.js&&t.push(this.applyJs(e.name,this.resources.js)),this.resources.loc&&t.push(this.applyLoc(e.locale,this.resources.loc)),Promise.all(t).then(()=>{this.status=b.STATUS_ACTIVE}).catch(e=>(this.logger.info("Install error",e),this.status=b.STATUS_ERROR,this.disable().then(()=>{throw e})))}saveResources(){const e=[];for(const t of Object.keys(this.resources))e.push(this.saveResource(t,this.resources[t]));return Promise.all(e).catch(e=>(this.logger.debug("Error saving plugin resources",e),this.uninstall().then(()=>{throw"Error saving plugin resources"})))}saveResource(e,t){return new Promise((n,s)=>{const i=this.getStorageResourcePath(e);v.save(i,t,e=>{e?s(e):n()})})}deleteResources(){const e=[];for(const t of Object.keys(this.resources))e.push(this.deleteResource(t));return Promise.all(e)}deleteResource(e){return new Promise(t=>{const n=this.getStorageResourcePath(e);v.remove(n,()=>t())})}applyCss(e,t,n){return new Promise((s,i)=>{try{const i=new Blob([t],{type:"text/css"}),o=URL.createObjectURL(i),a="plugin-css-"+e;this.createElementInHead("link",a,{rel:"stylesheet",href:o}).addEventListener("load",()=>{if(URL.revokeObjectURL(o),n){const e=this.getThemeLocaleKey(n.name);c.SettingsManager.allThemes[n.name]=e,l[e]=n.title;for(const e of Array.from(document.styleSheets))if(e.ownerNode.id===a){this.processThemeStyleSheet(e,n);break}}this.logger.debug("Plugin style installed"),s()})}catch(e){this.logger.error("Error installing plugin style",e),i(e)}})}processThemeStyleSheet(e,t){const n=".th-"+t.name,s=[];for(const t of Array.from(e.cssRules))t.selectorText&&0!==t.selectorText.lastIndexOf(n,0)&&s.push(t.selectorText),t.selectorText===n&&this.addThemeVariables(t);if(s.length)throw this.logger.error("Themes must not add rules outside theme namespace. Bad selectors:",s),"Invalid theme"}addThemeVariables(e){p.ThemeVars.apply(e.style)}applyJs(t,n){return new Promise((s,l)=>{try{let o=i.a.ByteUtils.bytesToString(n);this.module={exports:{}};const a="plugin-"+Date.now().toString()+Math.random().toString();e[a]={require:d.PluginApi.require,module:this.module},o=`(function(require, module){${o}})(window["${a}"].require,window["${a}"].module);`;const r=this.logger.ts(),c=new Blob([o],{type:"text/javascript"}),u=URL.createObjectURL(c),p="plugin-js-"+t;this.createElementInHead("script",p,{src:u}).addEventListener("load",()=>{URL.revokeObjectURL(u),setTimeout(()=>{delete e[a],this.module.exports.uninstall?(this.logger.debug("Plugin script installed",this.logger.ts(r)),this.loadPluginSettings(),s()):l("Plugin script installation failed")},0)})}catch(e){this.logger.error("Error installing plugin script",e),l(e)}})}createElementInHead(e,t,n){let s=document.getElementById(t);s&&s.parentNode.removeChild(s),s=document.createElement(e),s.setAttribute("id",t);for(const[e,t]of Object.entries(n))s.setAttribute(e,t);return document.head.appendChild(s),s}removeElement(e){const t=document.getElementById(e);t&&t.parentNode.removeChild(t)}applyLoc(e,t){return Promise.resolve().then(()=>{const n=i.a.ByteUtils.bytesToString(t),s=JSON.parse(n);c.SettingsManager.allLocales[e.name]=e.title,c.SettingsManager.customLocales[e.name]=s,this.logger.debug("Plugin locale installed")})}removeLoc(e){delete c.SettingsManager.allLocales[e.name],delete c.SettingsManager.customLocales[e.name],c.SettingsManager.activeLocale===e.name&&(u.AppSettingsModel.locale="en")}getThemeLocaleKey(e){return"setGenThemeCustom_"+e}removeTheme(e){delete c.SettingsManager.allThemes[e.name],u.AppSettingsModel.theme===e.name&&(u.AppSettingsModel.theme="fb"),delete l[this.getThemeLocaleKey(e.name)]}loadPluginSettings(){if(!this.module||!this.module.exports||!this.module.exports.setSettings)return;const e=this.logger.ts(),t=this.getSettingPrefix();let n=null;for(const e of Object.keys(u.AppSettingsModel))0===e.lastIndexOf(t,0)&&(n||(n={}),n[e.replace(t,"")]=u.AppSettingsModel[e]);n&&this.setSettings(n),this.logger.debug("Plugin settings loaded",this.logger.ts(e))}uninstallPluginCode(){if(this.manifest.resources.js&&this.module&&this.module.exports&&this.module.exports.uninstall)try{this.module.exports.uninstall()}catch(e){this.logger.error("Plugin uninstall method returned an error",e)}}uninstall(){const e=this.logger.ts();return this.disable().then(()=>this.deleteResources().then(()=>{this.status="",this.logger.info("Uninstall complete",this.logger.ts(e))}))}disable(){const e=this.manifest;this.logger.info("Disabling plugin with resources",Object.keys(e.resources).join(", ")),this.status=b.STATUS_UNINSTALLING;const t=this.logger.ts();return Promise.resolve().then(()=>{e.resources.css&&this.removeElement("plugin-css-"+this.name),e.resources.js&&this.uninstallPluginCode(),e.resources.loc&&this.removeLoc(this.manifest.locale),e.theme&&this.removeTheme(e.theme),this.status=b.STATUS_INACTIVE,this.logger.info("Disable complete",this.logger.ts(t))})}update(e){const t=this.logger.ts(),n=this.status;return this.status=b.STATUS_UPDATING,Promise.resolve().then(()=>{const s=this.manifest,i=e.manifest;if(s.version===i.version)return this.set({status:n,updateCheckDate:Date.now(),updateError:null}),void this.logger.info(`v${s.version} is the latest plugin version`);this.logger.info(`Updating plugin from v${s.version} to v${i.version}`);const l=e.validateManifest()||this.validateUpdatedManifest(i);if(l)throw this.logger.error("Manifest validation error",l),this.set({status:n,updateCheckDate:Date.now(),updateError:l}),"Plugin validation error: "+l;return this.uninstallPluginCode(),e.installWithManifest(!1).then(()=>{this.module=e.module,this.resources=e.resources,this.set({status:b.STATUS_ACTIVE,manifest:i,installTime:this.logger.ts()-t,installError:null,updateCheckDate:Date.now(),updateError:null}),this.logger.info("Update complete",this.logger.ts(t))}).catch(e=>{if(this.logger.error("Error updating plugin",e),n===b.STATUS_ACTIVE)return this.logger.info("Activating previous version"),this.installWithResources().then(()=>{throw this.set({updateCheckDate:Date.now(),updateError:e}),e});throw this.set({status:n,updateCheckDate:Date.now(),updateError:e}),e})})}setAutoUpdate(e){this.autoUpdate=!!e}getSettingPrefix(){return`plugin:${this.id}:`}getSettings(){if(this.status===b.STATUS_ACTIVE&&this.module&&this.module.exports&&this.module.exports.getSettings)try{const e=this.module.exports.getSettings(),t=this.getSettingPrefix();if(e instanceof Array)return e.map(e=>{e=Object.assign({},e);const n=u.AppSettingsModel[t+e.name];return void 0!==n&&(e.value=n),e});this.logger.error("getSettings: expected Array, got ",typeof e)}catch(e){this.logger.error("getSettings error",e)}}setSettings(e){for(const t of Object.keys(e))u.AppSettingsModel[this.getSettingPrefix()+t]=e[t];if(this.module.exports.setSettings)try{this.module.exports.setSettings(e)}catch(e){this.logger.error("setSettings error",e)}}static loadFromUrl(e,t){return"/"!==e[e.length-1]&&(e+="/"),y.info("Installing plugin from url",e),k(e+"manifest.json").catch(e=>{throw y.error("Error loading plugin manifest",e),"Error loading plugin manifest"}).then(n=>{try{n=JSON.parse(n)}catch(e){throw y.error("Failed to parse manifest",n),"Failed to parse manifest"}if(y.debug("Loaded manifest",n),t){if(t.name!==n.name)throw"Bad plugin name";if(t.privateKey!==n.privateKey)throw"Bad plugin private key"}return new w({manifest:n,url:e})})}}function k(e,t){y.debug("GET",e);const n=y.ts();return new Promise((s,i)=>{const l=new XMLHttpRequest;l.addEventListener("load",()=>{200===l.status?(y.debug("GET OK",e,y.ts(n)),s(l.response)):(y.debug("GET error",e,l.status),i(l.status?"HTTP status "+l.status:"network error"))}),l.addEventListener("error",()=>{y.debug("GET error",e,l.status),i(l.status?"HTTP status "+l.status:"network error")}),l.addEventListener("abort",()=>{y.debug("GET aborted",e),i("Network request timeout")}),l.addEventListener("timeout",()=>{y.debug("GET timeout",e),i("Network request timeout")}),t&&(l.responseType=t?"arraybuffer":"text"),l.open("GET",e),l.send()})}w.defineModelProperties({id:"",name:"",logger:null,manifest:"",url:"",status:"",autoUpdate:!1,installTime:null,installError:null,updateCheckDate:null,updateError:null,skipSignatureValidation:!1,resources:null,module:null}),Object.assign(w,b)}.call(this,n(78))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FieldView",(function(){return b}));var s=n(4),i=n.n(s),l=n(7),o=n(1),a=n(40),r=n(24),c=n(14),u=n(6),d=n(0),p=n(29),h=n(52),m=n(42),f=n(3),g=n(16),y=n(235),v=n.n(y);class b extends l.View{constructor(e,t){super(e,t),this.template=v.a,this.events={"click .details__field-label":"fieldLabelClick","dblclick .details__field-label":"fieldLabelDblClick","click .details__field-value":"fieldValueClick","dragstart .details__field-label":"fieldLabelDrag","click .details__field-options":"fieldOptionsClick"},this.once("remove",()=>{this.tip&&r.Tip.hideTip(this.valueEl[0])}),u.Features.isMobile&&this.listenTo(o.Events,"click",this.bodyClick)}render(){this.value="function"==typeof this.model.value?this.model.value():this.model.value;const e=this.renderValue(this.value);super.render({cls:this.cssClass,editable:!this.readonly,multiline:this.model.multiline,title:this.model.title,canEditTitle:this.model.newField,protect:this.value&&this.value.isProtected,hasOptions:!u.Features.isMobile&&e&&this.hasOptions}),this.valueEl=this.$el.find(".details__field-value"),this.valueEl.html(e),this.labelEl=this.$el.find(".details__field-label"),this.model.tip&&(this.tip="function"==typeof this.model.tip?this.model.tip():this.model.tip,this.tip&&(this.valueEl.attr("title",this.tip),r.Tip.createTip(this.valueEl[0])))}update(){if("function"==typeof this.model.value){const e=this.model.value();(!Object(c.isEqual)(e,this.value)||this.value&&e&&this.value.toString()!==e.toString())&&this.render()}}fieldLabelClick(e){if(e.stopImmediatePropagation(),this.hideOptionsDropdown(),!this.preventCopy)if(p.AutoType.enabled&&f.AppSettingsModel.fieldLabelDblClickAutoType){if(this.fieldLabelClickTimer)return clearTimeout(this.fieldLabelClickTimer),this.fieldLabelClickTimer=null,void this.emit("autotype",{source:this});this.fieldLabelClickTimer=setTimeout(()=>{this.copyValue(),this.fieldLabelClickTimer=null},g.Timeouts.FieldLabelDoubleClick)}else this.copyValue()}copyValue(){let e;if(this.model.name){const t=this.getTextValue();if(!t)return;return a.CopyPaste.simpleCopy||a.CopyPaste.createHiddenInput(t),e=a.CopyPaste.copy(t),void this.emit("copy",{source:this,copyRes:e})}if(!this.value)return;const t=window.getSelection(),n=document.createRange();n.selectNodeContents(this.valueEl[0]),t.removeAllRanges(),t.addRange(n),e=a.CopyPaste.copy(this.valueEl[0].innerText||this.valueEl.text()),e&&(t.removeAllRanges(),this.emit("copy",{source:this,copyRes:e}))}fieldValueClick(e){if(this.hideOptionsDropdown(),["a","input","textarea"].indexOf(e.target.tagName.toLowerCase())>=0)return;window.getSelection().toString()||(u.Features.isMobile?(e.stopPropagation(),this.showMobileActions()):this.edit())}fieldLabelDrag(e){if(e.stopPropagation(),this.hideOptionsDropdown(),!this.value)return;const t=e.dataTransfer,n=this.getTextValue();"a"===this.valueEl[0].tagName.toLowerCase()&&t.setData("text/uri-list",n),t.setData("text/plain",n),t.effectAllowed="copy"}edit(){this.readonly||this.editing||(this.valueEl.removeClass("details__field-value--revealed"),this.$el.addClass("details__field--edit"),this.startEdit(),this.editing=!0,this.preventCopy=!0,this.labelEl[0].setAttribute("draggable","false"))}endEdit(e,t){if(!this.editing)return;let n;this.editing=!1,setTimeout(()=>{this.preventCopy=!1},300),n=this.value&&this.value.isProtected?this.value.equals(e):e&&e.isProtected?e.equals(this.value):Object(c.isEqual)(this.value,e);const s=(e&&e.isProtected)===(this.value&&this.value.isProtected),i=t&&t.newField;let l;void 0===e||n&&s&&!i?t&&(l=t):(l={val:e,field:this.model.name},t&&Object.assign(l,t)),l&&this.triggerChange(l),this.valueEl.removeClass("details__field-value--revealed").html(this.renderValue(this.value)),this.$el.removeClass("details__field--edit"),this.labelEl[0].setAttribute("draggable","true")}triggerChange(e){e.sender=this,this.emit("change",e)}fieldOptionsClick(e){if(this.views.optionsDropdown)return void this.hideOptionsDropdown();e.stopPropagation();const t=new m.DropdownView;this.listenTo(t,"cancel",this.hideOptionsDropdown),this.listenTo(t,"select",this.optionsDropdownSelect);const n=[];n.push({value:"copy",icon:"copy",text:d.Locale.alertCopy}),this.value instanceof i.a.ProtectedValue&&(this.valueEl.hasClass("details__field-value--revealed")?n.push({value:"hide",icon:"eye-slash",text:d.Locale.detHideField}):n.push({value:"reveal",icon:"eye",text:d.Locale.detRevealField})),p.AutoType.enabled&&this.model.sequence&&n.push({value:"autotype",icon:"keyboard-o",text:d.Locale.detAutoTypeField});const s=this.$el[0].getBoundingClientRect(),l={top:s.bottom,right:s.right};t.render({position:l,options:n}),this.views.optionsDropdown=t}hideOptionsDropdown(){this.views.optionsDropdown&&(this.views.optionsDropdown.remove(),delete this.views.optionsDropdown)}optionsDropdownSelect(e){switch(this.hideOptionsDropdown(),e.item){case"copy":this.copyValue();break;case"reveal":this.revealValue();break;case"hide":this.hideValue();break;case"autotype":this.emit("autotype",{source:this})}}revealValue(){const e=h.PasswordPresenter.asDOM(this.value);this.valueEl.addClass("details__field-value--revealed").empty(),this.valueEl.append(e)}hideValue(){this.valueEl.removeClass("details__field-value--revealed").html(this.renderValue(this.value))}bodyClick(e){this.mobileActionsEl&&(this.valueEl[0].contains(e.target)||this.mobileActionsEl[0].contains(e.target)||(this.mobileActionsEl.remove(),delete this.mobileActionsEl))}showMobileActions(){if(this.readonly)return;if(this.mobileActionsEl)return this.mobileActionsEl.remove(),void delete this.mobileActionsEl;const t=this.valueEl.position().left,n=this.$el.width()-t,s=this.valueEl.height(),l=e("<div></div>").addClass("details__field-mobile-actions").appendTo(this.$el).css({left:t,top:s,width:n}),o=[];this.value&&o.push({name:"copy",icon:"clipboard"}),o.push({name:"edit",icon:"pencil"}),this.value instanceof i.a.ProtectedValue&&o.push({name:"reveal",icon:"eye"}),this.model.canGen&&o.push({name:"generate",icon:"bolt"});for(const t of o)e("<div></div>").addClass("details__field-mobile-action fa fa-"+t.icon).appendTo(l).click(()=>this.doMobileAction(t.name));this.mobileActionsEl=l}doMobileAction(e){switch(this.mobileActionsEl.remove(),delete this.mobileActionsEl,e){case"copy":this.copyValue();break;case"edit":this.edit();break;case"reveal":this.revealValue();break;case"generate":this.edit(),setTimeout(()=>this.showGenerator(),0)}}getTextValue(){return this.value?this.value.isProtected?this.value.getText():this.value:""}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"SemVer",(function(){return s}));const s={compareVersions(e,t){e=e.replace(/-.*$/,"").split("."),t=t.replace(/-.*$/,"").split(".");for(let n=0;n<e.length;n++){const s=0|e[n],i=0|t[n];if(s<i)return-1;if(s>i)return 1}return 0}}},function(e,t,n){"use strict";n.r(t),n.d(t,"EntryModel",(function(){return k}));var s=n(4),i=n.n(s),l=n(18),o=n(3),a=n(91),r=n(67),c=n(81),u=n(135),d=n(59),p=n(60),h=n(92),m=n(68),f=n(14),g=n(93);const y=/^https?:\/\//i,v=/^\{REF:([TNPAU])@I:(\w{32})}$/,b=["title","password","user","url","notes"],w={T:"Title",U:"UserName",P:"Password",A:"URL",N:"Notes"};class k extends l.Model{constructor(e){super(e),this._search=new g.EntrySearch(this)}setEntry(e,t,n){this.entry=e,this.group=t,this.file=n,this.uuid===e.uuid.id&&this._checkUpdatedEntry(),this.hasFieldRefs=!1,this._fillByEntry(),this.hasFieldRefs=!0}_fillByEntry(){const e=this.entry;this.set({id:this.file.subId(e.uuid.id),uuid:e.uuid.id},{silent:!0}),this.fileName=this.file.name,this.groupName=this.group.title,this.title=this._getFieldString("Title"),this.password=this._getPassword(),this.notes=this._getFieldString("Notes"),this.url=this._getFieldString("URL"),this.displayUrl=this._getDisplayUrl(this._getFieldString("URL")),this.user=this._getFieldString("UserName"),this.iconId=e.icon,this.icon=this._iconFromId(e.icon),this.tags=e.tags,this.color=this._colorToModel(e.bgColor)||this._colorToModel(e.fgColor),this.fields=this._fieldsToModel(e.fields),this.attachments=this._attachmentsToModel(e.binaries),this.created=e.times.creationTime,this.updated=e.times.lastModTime,this.expires=e.times.expires?e.times.expiryTime:void 0,this.expired=e.times.expires&&e.times.expiryTime<=new Date,this.historyLength=e.history.length,this.titleUserLower=`${this.title}:${this.user}`.toLowerCase(),this._buildCustomIcon(),this._buildSearchText(),this._buildSearchTags(),this._buildSearchColor(),this._buildAutoType(),this.hasFieldRefs&&this.resolveFieldReferences()}_getPassword(){const e=this.entry.fields.Password||i.a.ProtectedValue.fromString("");return e.isProtected?e:i.a.ProtectedValue.fromString(e)}_getFieldString(e){const t=this.entry.fields[e];return t?t.isProtected?t.getText():t.toString():""}_checkUpdatedEntry(){this.isJustCreated&&(this.isJustCreated=!1),this.canBeDeleted&&(this.canBeDeleted=!1),this.unsaved&&+this.updated!=+this.entry.times.lastModTime&&(this.unsaved=!1)}_buildSearchText(){let e="";for(const t of Object.values(this.entry.fields))"string"==typeof t&&(e+=t.toLowerCase()+"\n");this.entry.tags.forEach(t=>{e+=t.toLowerCase()+"\n"}),this.attachments.forEach(t=>{e+=t.title.toLowerCase()+"\n"}),this.searchText=e}_buildCustomIcon(){this.customIcon=null,this.customIconId=null,this.entry.customIcon&&(this.customIcon=m.IconUrlFormat.toDataUrl(this.file.db.meta.customIcons[this.entry.customIcon]),this.customIconId=this.entry.customIcon.toString())}_buildSearchTags(){this.searchTags=this.entry.tags.map(e=>e.toLowerCase())}_buildSearchColor(){this.searchColor=this.color}_buildAutoType(){this.autoTypeEnabled=this.entry.autoType.enabled,this.autoTypeObfuscation=this.entry.autoType.obfuscation===i.a.Consts.AutoTypeObfuscationOptions.UseClipboard,this.autoTypeSequence=this.entry.autoType.defaultSequence,this.autoTypeWindows=this.entry.autoType.items.map(this._convertAutoTypeItem)}_convertAutoTypeItem(e){return{window:e.window,sequence:e.keystrokeSequence}}_iconFromId(e){return r.IconMap[e]}_getDisplayUrl(e){return e?e.replace(y,""):""}_colorToModel(e){return e?d.Color.getNearest(e):null}_fieldsToModel(e){return Object(f.omit)(e,c.BuiltInFields)}_attachmentsToModel(e){const t=[];for(let[n,s]of Object.entries(e))s&&s.ref&&(s=s.value),s&&t.push(u.AttachmentModel.fromAttachment({data:s,title:n}));return t}_entryModified(){this.unsaved||(this.unsaved=!0,0!==this.file.historyMaxItems&&this.entry.pushHistory(),this.file.setModified()),this.isJustCreated&&(this.isJustCreated=!1),this.entry.times.update()}setSaved(){this.unsaved&&(this.unsaved=!1),this.canBeDeleted&&(this.canBeDeleted=!1)}matches(e){return this._search.matches(e)}getAllFields(){return this.entry.fields}getHistoryEntriesForSearch(){return this.entry.history}resolveFieldReferences(){this.hasFieldRefs=!1,b.forEach(e=>{const t=this[e],n=this._resolveFieldReference(t);void 0!==n&&(this[e]=n,this.hasFieldRefs=!0)})}getFieldValue(e){let t;if(e=e.toLowerCase(),Object.keys(this.entry.fields).some(n=>n.toLowerCase()===e&&(t=n,!0)),t){let e=this.entry.fields[t];const n=this._resolveFieldReference(e);return void 0!==n&&(e=n),e}}_resolveFieldReference(e){if(!e)return;if(e.isProtected&&e.isFieldReference()&&(e=e.getText()),"string"!=typeof e)return;const t=e.match(v);return t?this._getReferenceValue(t[1],t[2]):void 0}_getReferenceValue(e,t){const n=new Uint8Array(16);for(let e=0;e<16;e++)n[e]=parseInt(t.substr(2*e,2),16);const s=new i.a.KdbxUuid(n),l=this.file.getEntry(this.file.subId(s.id));if(l)return l.entry.fields[w[e]]}setColor(e){this._entryModified(),this.entry.bgColor=d.Color.getKnownBgColor(e),this._fillByEntry()}setIcon(e){this._entryModified(),this.entry.icon=e,this.entry.customIcon=void 0,this._fillByEntry()}setCustomIcon(e){this._entryModified(),this.entry.customIcon=new i.a.KdbxUuid(e),this._fillByEntry()}setExpires(e){this._entryModified(),this.entry.times.expiryTime=e instanceof Date?e:void 0,this.entry.times.expires=!!e,this._fillByEntry()}setTags(e){this._entryModified(),this.entry.tags=e,this._fillByEntry()}renameTag(e,t){const n=this.entry.tags.findIndex(t=>t.toLowerCase()===e.toLowerCase());n<0||(this._entryModified(),this.entry.tags.splice(n,1),t&&this.entry.tags.push(t),this._fillByEntry())}setField(e,t,n){t&&("string"==typeof t||t.isProtected&&t.byteLength)||n||c.BuiltInFields.indexOf(e)>=0?(this._entryModified(),t=this.sanitizeFieldValue(t),this.entry.fields[e]=t):Object.prototype.hasOwnProperty.call(this.entry.fields,e)&&(this._entryModified(),delete this.entry.fields[e]),this._fillByEntry()}sanitizeFieldValue(e){return e&&!e.isProtected&&e.indexOf("")>=0&&(e=e.replace(/[\x00-\x1F]/g,"")),e}hasField(e){return Object.prototype.hasOwnProperty.call(this.entry.fields,e)}addAttachment(e,t){return this._entryModified(),this.file.db.createBinary(t).then(t=>{this.entry.binaries[e]=t,this._fillByEntry()})}removeAttachment(e){this._entryModified(),delete this.entry.binaries[e],this._fillByEntry()}getHistory(){const e=this.entry.history.map((function(e){return k.fromEntry(e,this.group,this.file)}),this);return e.push(this),e.sort((e,t)=>e.updated-t.updated),e}deleteHistory(e){const t=this.entry.history.indexOf(e);t>=0&&(this.entry.removeHistory(t),this.file.setModified()),this._fillByEntry()}revertToHistoryState(e){this.entry.history.indexOf(e)<0||(this.entry.pushHistory(),this.unsaved=!0,this.file.setModified(),this.entry.fields={},this.entry.binaries={},this.entry.copyFrom(e),this._entryModified(),this._fillByEntry())}discardUnsaved(){if(this.unsaved&&this.entry.history.length){this.unsaved=!1;const e=this.entry.history[this.entry.history.length-1];this.entry.removeHistory(this.entry.history.length-1),this.entry.fields={},this.entry.binaries={},this.entry.copyFrom(e),this._fillByEntry()}}moveToTrash(){this.file.setModified(),this.isJustCreated&&(this.isJustCreated=!1),this.file.db.remove(this.entry),this.file.reload()}deleteFromTrash(){this.file.setModified(),this.file.db.move(this.entry,null),this.file.reload()}removeWithoutHistory(){if(this.canBeDeleted){const e=this.group.group.entries.indexOf(this.entry);e>=0&&this.group.group.entries.splice(e,1),this.file.reload()}}detach(){return this.file.setModified(),this.file.db.move(this.entry,null),this.file.reload(),this.entry}moveToFile(e){this.canBeDeleted&&(this.removeWithoutHistory(),this.group=e.groups[0],this.file=e,this._fillByEntry(),this.entry.times.update(),this.group.group.entries.push(this.entry),this.group.addEntry(this),this.isJustCreated=!0,this.unsaved=!0,this.file.setModified())}initOtpGenerator(){let e;if(this.fields.otp){if(e=this.fields.otp,e.isProtected&&(e=e.getText()),p.Otp.isSecret(e.replace(/\s/g,"")))e=p.Otp.makeUrl(e.replace(/\s/g,"").toUpperCase());else if(0!==e.toLowerCase().lastIndexOf("otpauth:",0)){const t={};e.split("&").forEach(e=>{const n=e.split("=",2);t[n[0]]=decodeURIComponent(n[1]).replace(/=/g,"")}),t.key&&(e=p.Otp.makeUrl(t.key,t.step,t.size))}}else if(this.entry.fields["TOTP Seed"]){let t=this.entry.fields["TOTP Seed"];if(t.isProtected&&(t=t.getText()),t){let n,s,l=this.entry.fields["TOTP Settings"];l&&l.isProtected&&(l=l.getText()),l&&(l=l.split(";"),l.length>0&&l[0]>0&&(n=l[0]),l.length>1&&l[1]>0&&(s=l[1])),e=p.Otp.makeUrl(t,n,s),this.fields.otp=i.a.ProtectedValue.fromString(e)}}if(e){if(this.otpGenerator&&this.otpGenerator.url===e)return;try{this.otpGenerator=p.Otp.parseUrl(e)}catch(e){this.otpGenerator=null}}else this.otpGenerator=null}setOtp(e){this.otpGenerator=e,this.setOtpUrl(e.url)}setOtpUrl(e){this.setField("otp",e?i.a.ProtectedValue.fromString(e):void 0),delete this.entry.fields["TOTP Seed"],delete this.entry.fields["TOTP Settings"]}getEffectiveEnableAutoType(){return"boolean"==typeof this.entry.autoType.enabled?this.entry.autoType.enabled:this.group.getEffectiveEnableAutoType()}getEffectiveAutoTypeSeq(){return this.entry.autoType.defaultSequence||this.group.getEffectiveAutoTypeSeq()}setEnableAutoType(e){this._entryModified(),this.entry.autoType.enabled=e,this._buildAutoType()}setAutoTypeObfuscation(e){this._entryModified(),this.entry.autoType.obfuscation=e?i.a.Consts.AutoTypeObfuscationOptions.UseClipboard:i.a.Consts.AutoTypeObfuscationOptions.None,this._buildAutoType()}setAutoTypeSeq(e){this._entryModified(),this.entry.autoType.defaultSequence=e||void 0,this._buildAutoType()}getGroupPath(){let e=this.group;const t=[];for(;e;)t.unshift(e.title),e=e.parentGroup;return t}cloneEntry(e){const t=k.newEntry(this.group,this.file),n=t.entry.uuid;return t.entry.copyFrom(this.entry),t.entry.uuid=n,t.entry.times.update(),t.entry.times.creationTime=t.entry.times.lastModTime,t.entry.fields.Title=this.title+e,t._fillByEntry(),this.file.reload(),t}copyFromTemplate(e){const t=this.entry.uuid;this.entry.copyFrom(e.entry),this.entry.uuid=t,this.entry.times.update(),this.entry.times.creationTime=this.entry.times.lastModTime,this.entry.fields.Title="",this._fillByEntry()}getRank(e){const t=e.textLower;if(!t)return 0;const n=e.advanced&&e.advanced.protect,s={Title:10,URL:8,UserName:5,Notes:2};return Object.keys(s).concat(Object.keys(this.fields)).reduce((e,i)=>{const l=this.entry.fields[i];return l&&(!l.isProtected||n&&l.length)?e+h.Ranking.getStringRank(t,l)*(s[i]||2):e},0)}getHtml(){return a.KdbxToHtml.entryToHtml(this.file.db,this.entry)}static fromEntry(e,t,n){const s=new k;return s.setEntry(e,t,n),s}static newEntry(e,t,n){const s=new k,i=t.db.createEntry(e.group);return o.AppSettingsModel.useGroupIconForEntries&&e.icon&&e.iconId&&(i.icon=e.iconId),n&&n.tag&&(i.tags=[n.tag]),s.setEntry(i,e,t),s.entry.times.update(),s.unsaved=!0,s.isJustCreated=!0,s.canBeDeleted=!0,e.addEntry(s),t.setModified(),s}}k.defineModelProperties({},{extensions:!0})},function(e,t,n){"use strict";n.r(t),n.d(t,"SignatureVerifier",(function(){return r}));var s=n(4),i=n.n(s),l=n(9),o="-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnRq2k3TTx0ewTe6wDr6Q\nVeB5diwiIWzsJD+ApfZu1KNPedcAgslAfjpNsYF1if6cYsPMJH70xJ2np6RQBl1V\nPdwShOuxkD7m0BD5Hw/Aar8Hdp5cvAdOOMdBO+0DbGeUMy+z66s+oUCJmqVp19T6\nPkkxbhN08rgtT7v+aFvrbqbO/vlsskbJpH2K2io+e1XmRGPnSr9q4KSqfGbTfe5g\nLwDIOFd66Z4mb5Utb5wWpsy6Gjh06Yf257AccGD3A1bkTNOyeeX0tqciYBePWMk0\nicP/aZ6hnErfhnUKf3tOgPLppSHiGcaSKekhChZ2xLUs3U64JwrXSmwHj+TzdO3S\n0QIDAQAB\n-----END PUBLIC KEY-----\n",a="-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyZAmWXMpKsh9WCyUO5TR\n2/QIJsgyaViWRAgY5nHZhTR/sjhfG97OeurW7NYC4XPsnyJDepEjDsj9LNzquMES\nxsLRSmxo+m1lVWn8Q59LwqOvUK+BKH4eZYF89Nwv2HZjZnr/w7xYcxJbhOuAzpbq\nFD/gAvlozrsHG9uI95h1FHPd6mfolEHLK30LXPQ5FdJ/AWb29ILKYbVEdM8qsjoN\nfSICw7XTbd7wB0TMcgRpjWllzKaftxCO38svhBjAz4cUvtZ05yi4dzK0VsJHfW33\nuno3YBn0/bwLkqMzD1/Hv05p6CVzuDTOCBsXkEobra8OBviatoSukot6cS4Famki\n9QIDAQAB\n-----END PUBLIC KEY-----\n";const r={logger:new l.Logger("signature-verifier"),publicKeys:null,verify(e,t,n){if(!n){const n=this.getPublicKeys();return this.verify(e,t,n[0]).then(s=>s||!n[1]?s:this.verify(e,t,n[1]))}return new Promise((s,l)=>{const o={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};try{"string"==typeof t&&(t=i.a.ByteUtils.base64ToBytes(t));const a=window.crypto.subtle,r="spki";n=i.a.ByteUtils.base64ToBytes(n),a.importKey(r,n,o,!1,["verify"]).then(n=>{try{a.verify(o,n,i.a.ByteUtils.arrayToBuffer(t),i.a.ByteUtils.arrayToBuffer(e)).then(e=>{s(e)}).catch(e=>{this.logger.error("Verify error",e),l(e)})}catch(e){this.logger.error("Signature verification error",e),l(e)}}).catch(e=>{this.logger.error("ImportKey error",e),l(e)})}catch(e){this.logger.error("Signature key verification error",e),l(e)}})},getPublicKeys(){return this.publicKeys||(this.publicKeys=[o,a].map(e=>e.match(/-+BEGIN PUBLIC KEY-+([\s\S]+?)-+END PUBLIC KEY-+/)[1].replace(/\s+/g,""))),this.publicKeys}}},function(e,t,n){"use strict";n.r(t),n.d(t,"PluginGallery",(function(){return c}));var s=n(4),i=n.n(s),l=n(1),o=n(31),a=n(20),r=n(48);const c={logger:new(n(9).Logger)("plugin-gallery"),gallery:null,loading:!1,loadError:null,loadPlugins(){if(this.gallery)return Promise.resolve(this.gallery);this.loading=!0,this.loadError=!1;const e=this.logger.ts();return new Promise(e=>{this.logger.debug("Loading plugins...");const t=new XMLHttpRequest;t.open("GET",a.Links.Plugins+"/plugins.json"),t.responseType="json",t.send(),t.addEventListener("load",()=>{const n=t.response;e(n)}),t.addEventListener("error",()=>{this.logger.error("Network error loading plugins"),e()})}).then(t=>(this.loading=!1,t?this.verifySignature(t).then(t=>(this.loadError=!t,t&&(this.logger.debug(`Loaded ${t.plugins.length} plugins`,this.logger.ts(e)),this.gallery=t,this.saveGallery(t)),l.Events.emit("plugin-gallery-load-complete"),t)):(this.loadError=!0,void l.Events.emit("plugin-gallery-load-complete")))).catch(e=>{this.loadError=!0,this.logger.error("Error loading plugin gallery",e),l.Events.emit("plugin-gallery-load-complete")})},verifySignature(e){const t=JSON.stringify(e,null,2).replace(e.signature,"");return r.SignatureVerifier.verify(i.a.ByteUtils.stringToBytes(t),e.signature).then(t=>{if(t)return e;this.logger.error("JSON signature invalid")}).catch(e=>{this.logger.error("Error verifying plugins signature",e)})},getCachedGallery(){const e=this.logger.ts();return o.SettingsStore.load("plugin-gallery").then(t=>{if(t)return this.verifySignature(t).then(t=>(this.logger.debug("Loaded cached plugin gallery",this.logger.ts(e)),t))})},saveGallery(e){o.SettingsStore.save("plugin-gallery",e)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"GroupModel",(function(){return p}));var s=n(4),i=n.n(s),l=n(67),o=n(47),a=n(58),r=n(68),c=n(69),u=n(137);const d=i.a.Consts.Icons;class p extends a.MenuItemModel{setGroup(e,t,n){const s=e.uuid.equals(t.db.meta.recycleBinUuid),i=t.subId(e.uuid.id);this.set({id:i,uuid:e.uuid.id,expanded:e.expanded,visible:!s,items:new c.GroupCollection,entries:new u.EntryCollection,filterValue:i,enableSearching:e.enableSearching,enableAutoType:e.enableAutoType,autoTypeSeq:e.defaultAutoTypeSeq,top:!n,drag:!!n,collapsible:!!n},{silent:!0}),this.group=e,this.file=t,this.parentGroup=n,this._fillByGroup(!0);const l=this.items,a=this.entries,r=e.groups.map(e=>{let n=t.getGroup(t.subId(e.uuid.id));return n?n.setGroup(e,t,this):n=p.fromGroup(e,t,this),n},this);l.push(...r);const d=e.entries.map(e=>{let n=t.getEntry(t.subId(e.uuid.id));return n?n.setEntry(e,this,t):n=o.EntryModel.fromEntry(e,this,t),n},this);a.push(...d)}_fillByGroup(e){this.set({title:this.parentGroup?this.group.name:this.file.name,iconId:this.group.icon,icon:this._iconFromId(this.group.icon),customIcon:this._buildCustomIcon(),customIconId:this.group.customIcon?this.group.customIcon.toString():null,expanded:!1!==this.group.expanded},{silent:e})}_iconFromId(e){if(e!==d.Folder&&e!==d.FolderOpen)return l.IconMap[e]}_buildCustomIcon(){return this.customIcon=null,this.group.customIcon?r.IconUrlFormat.toDataUrl(this.file.db.meta.customIcons[this.group.customIcon]):null}_groupModified(){this.isJustCreated&&(this.isJustCreated=!1),this.file.setModified(),this.group.times.update()}forEachGroup(e,t){let n=!0;return this.items.forEach(s=>{s.matches(t)&&(n=!1!==e(s)&&!1!==s.forEachGroup(e,t))}),n}forEachOwnEntry(e,t){this.entries.forEach((function(n){n.matches(e)&&t(n,this)}))}matches(e){return(e&&e.includeDisabled||!1!==this.group.enableSearching&&!this.group.uuid.equals(this.file.db.meta.entryTemplatesGroup))&&(!e||!e.autoType||!1!==this.group.enableAutoType)}getOwnSubGroups(){return this.group.groups}addEntry(e){this.entries.push(e)}addGroup(e){this.items.push(e)}setName(e){this._groupModified(),this.group.name=e,this._fillByGroup()}setIcon(e){this._groupModified(),this.group.icon=e,this.group.customIcon=void 0,this._fillByGroup()}setCustomIcon(e){this._groupModified(),this.group.customIcon=new i.a.KdbxUuid(e),this._fillByGroup()}setExpanded(e){this.group.expanded=e,this.expanded=e}setEnableSearching(e){this._groupModified();let t=!0,n=this.parentGroup;for(;n;){if("boolean"==typeof n.enableSearching){t=n.enableSearching;break}n=n.parentGroup}e===t&&(e=null),this.group.enableSearching=e,this.enableSearching=this.group.enableSearching}getEffectiveEnableSearching(){let e=this;for(;e;){if("boolean"==typeof e.enableSearching)return e.enableSearching;e=e.parentGroup}return!0}setEnableAutoType(e){this._groupModified();let t=!0,n=this.parentGroup;for(;n;){if("boolean"==typeof n.enableAutoType){t=n.enableAutoType;break}n=n.parentGroup}e===t&&(e=null),this.group.enableAutoType=e,this.enableAutoType=this.group.enableAutoType}getEffectiveEnableAutoType(){let e=this;for(;e;){if("boolean"==typeof e.enableAutoType)return e.enableAutoType;e=e.parentGroup}return!0}setAutoTypeSeq(e){this._groupModified(),this.group.defaultAutoTypeSeq=e||void 0,this.autoTypeSeq=this.group.defaultAutoTypeSeq}getEffectiveAutoTypeSeq(){let e=this;for(;e;){if(e.autoTypeSeq)return e.autoTypeSeq;e=e.parentGroup}return"{USERNAME}{TAB}{PASSWORD}{ENTER}"}getParentEffectiveAutoTypeSeq(){return this.parentGroup?this.parentGroup.getEffectiveAutoTypeSeq():"{USERNAME}{TAB}{PASSWORD}{ENTER}"}isEntryTemplatesGroup(){return this.group.uuid.equals(this.file.db.meta.entryTemplatesGroup)}moveToTrash(){this.file.setModified(),this.file.db.remove(this.group),this.group.uuid.equals(this.file.db.meta.entryTemplatesGroup)&&(this.file.db.meta.entryTemplatesGroup=void 0),this.file.reload()}deleteFromTrash(){this.file.db.move(this.group,null),this.file.reload()}removeWithoutHistory(){const e=this.parentGroup.group.groups.indexOf(this.group);e>=0&&this.parentGroup.group.groups.splice(e,1),this.file.reload()}moveHere(e){if(e&&e.id!==this.id)if(e.file===this.file){if(this.file.setModified(),e instanceof p){for(let t=this;t;t=t.parentGroup)if(e===t)return;if(this.group.groups.indexOf(e.group)>=0)return;this.file.db.move(e.group,this.group),this.file.reload()}else if(e instanceof o.EntryModel){if(this.group.entries.indexOf(e.entry)>=0)return;this.file.db.move(e.entry,this.group),this.file.reload()}}else if(e instanceof o.EntryModel){this.file.setModified();const t=e.detach();this.file.db.importEntry(t,this.group,e.file.db),this.file.reload()}}moveToTop(e){if(!(e&&e.id!==this.id&&e.file===this.file&&e instanceof p))return;this.file.setModified();for(let t=this;t;t=t.parentGroup)if(e===t)return;let t=this.parentGroup.group.groups.indexOf(this.group);const n=this.parentGroup.group.groups.indexOf(e.group);n>=0&&n<t&&t--,t>=0&&this.file.db.move(e.group,this.parentGroup.group,t),this.file.reload()}static fromGroup(e,t,n){const s=new p;return s.setGroup(e,t,n),s}static newGroup(e,t){const n=new p,s=t.db.createGroup(e.group);return n.setGroup(s,t,e),n.group.times.update(),n.isJustCreated=!0,e.addGroup(n),t.setModified(),t.reload(),n}}p.defineModelProperties({id:"",uuid:"",iconId:0,entries:null,filterKey:"group",editable:!0,top:!1,drag:!0,drop:!0,enableSearching:!0,enableAutoType:null,autoTypeSeq:null,group:null,file:null,parentGroup:null,customIconId:null,isJustCreated:!1})},function(e,t,n){"use strict";n.r(t),n.d(t,"Updater",(function(){return m}));var s=n(1),i=n(21),l=n(107),o=n(2),a=n(20),r=n(3),c=n(13),u=n(46),d=n(9),p=n(48);const h=new d.Logger("updater"),m={UpdateInterval:864e5,MinUpdateTimeout:500,MinUpdateSize:1e4,UpdateCheckFiles:["app.asar"],nextCheckTimeout:null,updateCheckDate:new Date(0),enabled:o.Launcher&&o.Launcher.updaterEnabled(),getAutoUpdateType(){if(!this.enabled)return!1;let e=r.AppSettingsModel.autoUpdate;return e&&!0===e&&(e="install"),e},updateInProgress:()=>"checking"===c.UpdateModel.status||["downloading","extracting"].indexOf(c.UpdateModel.updateStatus)>=0,init(){this.scheduleNextCheck(),o.Launcher||!navigator.serviceWorker||i.RuntimeInfo.beta||i.RuntimeInfo.devMode||navigator.serviceWorker.register("service-worker.js").then(e=>{h.info("Service worker registered"),e.addEventListener("updatefound",()=>{e.active&&(h.info("Service worker found an update"),c.UpdateModel.set({updateStatus:"ready"}))})}).catch(e=>{h.error("Failed to register a service worker",e)})},scheduleNextCheck(){if(this.nextCheckTimeout&&(clearTimeout(this.nextCheckTimeout),this.nextCheckTimeout=null),!this.getAutoUpdateType())return;let e=this.MinUpdateTimeout;const t=c.UpdateModel.lastCheckDate;t&&(e=Math.min(Math.max(this.UpdateInterval+(t-new Date),this.MinUpdateTimeout),this.UpdateInterval)),this.nextCheckTimeout=setTimeout(this.check.bind(this),e),h.info("Next update check will happen in "+Math.round(e/1e3)+"s")},check(e){if(this.enabled&&!this.updateInProgress()){if(c.UpdateModel.set({status:"checking"}),!e){const e=new Date-this.updateCheckDate;if(isNaN(e)||e<36e5)return h.error("Prevented update check; last check was performed at "+this.updateCheckDate),void this.scheduleNextCheck();this.updateCheckDate=new Date}h.info("Checking for update..."),l.Transport.httpGet({url:a.Links.Manifest,utf8:!0,success:t=>{const n=new Date,s=t.match(/#\s*(\d+\-\d+\-\d+):v([\d+\.\w]+)/);if(h.info("Update check: "+(s?s[0]:"unknown")),!s){const e="No version info found";return c.UpdateModel.set({status:"error",lastCheckDate:n,lastCheckError:e}),c.UpdateModel.save(),void this.scheduleNextCheck()}const l=t.match(/#\s*updmin:v([\d+\.\w]+)/),o=c.UpdateModel.lastVersion;c.UpdateModel.set({status:"ok",lastCheckDate:n,lastSuccessCheckDate:n,lastVersionReleaseDate:new Date(s[1]),lastVersion:s[2],lastCheckError:null,lastCheckUpdMin:l?l[1]:null}),c.UpdateModel.save(),this.scheduleNextCheck(),this.canAutoUpdate()&&(o!==c.UpdateModel.lastVersion||"ready"!==c.UpdateModel.updateStatus?e||"install"!==this.getAutoUpdateType()?u.SemVer.compareVersions(c.UpdateModel.lastVersion,i.RuntimeInfo.version)>0&&c.UpdateModel.set({updateStatus:"found"}):this.update(e):h.info("Waiting for the user to apply downloaded update"))},error:e=>{h.error("Update check error",e),c.UpdateModel.set({status:"error",lastCheckDate:new Date,lastCheckError:"Error checking last version"}),c.UpdateModel.save(),this.scheduleNextCheck()}})}},canAutoUpdate(){const e=c.UpdateModel.lastCheckUpdMin;if(e){if(u.SemVer.compareVersions(o.Launcher.version,e)<0)return c.UpdateModel.set({updateStatus:"ready",updateManual:!0}),!1}return!0},update(e,t){const n=c.UpdateModel.lastVersion;this.enabled?u.SemVer.compareVersions(i.RuntimeInfo.version,n)>=0?h.info("You are using the latest version"):(c.UpdateModel.set({updateStatus:"downloading",updateError:null}),h.info("Downloading update",n),l.Transport.httpGet({url:a.Links.UpdateDesktop.replace("{ver}",n),file:"KeeWeb-"+n+".zip",cache:!e,success:n=>{c.UpdateModel.set({updateStatus:"extracting"}),h.info("Extracting update file",this.UpdateCheckFiles,n),this.extractAppUpdate(n,n=>{n?(h.error("Error extracting update",n),c.UpdateModel.set({updateStatus:"error",updateError:"Error extracting update"})):(c.UpdateModel.set({updateStatus:"ready",updateError:null}),e||s.Events.emit("update-app"),"function"==typeof t&&t())})},error(e){h.error("Error downloading update",e),c.UpdateModel.set({updateStatus:"error",updateError:"Error downloading update"})}})):h.info("Updater is disabled")},extractAppUpdate(e,t){const n=this.UpdateCheckFiles,s=o.Launcher.getUserDataPath(),i=o.Launcher.req("node-stream-zip");i.setFs(o.Launcher.req("original-fs"));const l=new i({file:e,storeEntries:!0});l.on("error",t),l.on("ready",()=>{if(!n.every(e=>{const t=l.entry(e);return t&&t.isFile}))return t("Bad archive");this.validateArchiveSignature(e,l).then(()=>{l.extract(null,s,n=>{if(l.close(),n)return t(n);o.Launcher.deleteFile(e),t()})}).catch(e=>t("Invalid archive: "+e))})},validateArchiveSignature(e,t){if(!t.comment)return Promise.reject("No comment in ZIP");if(512!==t.comment.length)return Promise.reject("Bad comment length in ZIP: "+t.comment.length);try{const n=o.Launcher.req("fs").readFileSync(e).slice(0,t.centralDirectory.headerOffset+22),s=window.Buffer.from(t.comment,"hex");return p.SignatureVerifier.verify(n,s).catch(()=>{throw new Error("Error verifying signature")}).then(e=>{if(!e)throw new Error("Invalid signature")})}catch(e){return Promise.reject(e.toString())}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"PasswordPresenter",(function(){return o}));n(119);var s=n(14);class i{randomCharCode(){return 97+Math.floor(26*Math.random())}}function l(e){return Math.random()<.2?String.fromCharCode(e):`&#x${e.toString(16)};`}const o={present:e=>new Array(e+1).join("•"),presentValueWithLineBreaks(e){if(!e)return"";let t="";return e.forEachChar(e=>{t+=10===e?"\n":"•"}),t},asDOM(e){const t=[],n=new i;let o=0;e.forEachChar(e=>{const s=l(e);if(t.push({html:s,order:o}),Math.random()>.5){const e=l(n.randomCharCode());t.push({html:e,order:-1})}o++}),Object(s.shuffle)(t);const a=document.createElement("div");a.style.display="flex";for(const e of t){const t=document.createElement("div");t.innerHTML=e.html,e.order>=0?t.style.order=e.order:t.style.display="none",a.appendChild(t)}return a}}},,function(e,t,n){"use strict";n.r(t),n.d(t,"NativeModules",(function(){return a}));var s=n(1),i=n(9),l=n(2),o=n(16);let a;if(l.Launcher){const e=new i.Logger("native-module-connector");let t,n=0,r={},c={};const u={yubikeys(e){s.Events.emit("native-modules-yubikeys",{numYubiKeys:e})},log(...t){e.info("Message from host",...t)},result({callId:t,result:n,error:s}){const i=r[t];i&&(delete r[t],s?(e.error("Received an error",i.cmd,s),i.reject(s)):i.resolve(n))},"yk-chal-resp-result"({callbackId:e,error:t,result:n}){const s=c[e];if(s){t&&t.touchRequested||delete c[e],s(t,n)}}};a={startHost(){if(t)return;e.debug("Starting native module host");const n=l.Launcher.req("path"),s=l.Launcher.remoteApp().getAppContentRoot(),i=n.join(s,"native-module-host.js"),{fork:o}=l.Launcher.req("child_process");t=o(i),t.on("message",e=>this.hostCallback(e)),t.on("error",e=>this.hostError(e)),t.on("exit",(e,t)=>this.hostExit(e,t)),this.call("init",l.Launcher.remoteApp().getAppMainRoot()),this.usbListenerRunning&&this.call("start-usb")},hostError(t){e.error("Host error",t)},hostExit(n,s){e.error(`Host exited with code ${n} and signal ${s}`),t=null;const i=new Error("Native module host crashed");for(const e of Object.values(r))e.reject(i);r={};for(const e of Object.values(c))e(i);c={},0!==n&&this.autoRestartHost()},hostCallback(t){const{cmd:n,args:s}=t;u[n]?u[n](...s):e.error("No callback",n)},autoRestartHost(){setTimeout(()=>{try{this.startHost()}catch(t){e.error("Native module host failed to auto-restart",t)}},o.Timeouts.NativeModuleHostRestartTime)},call(e,...s){return new Promise((i,l)=>{if(!t)try{this.startHost()}catch(e){return l(e)}n++,n===Number.MAX_SAFE_INTEGER&&(n=1),r[n]={cmd:e,resolve:i,reject:l},t.send({cmd:e,args:s,callId:n})})},startUsbListener(){this.call("start-usb"),this.usbListenerRunning=!0},stopUsbListener(){this.usbListenerRunning=!1,t&&this.call("stop-usb")},getYubiKeys(e){return this.call("get-yubikeys",e)},yubiKeyChallengeResponse(e,t,s,i){return c[n]=i,this.call("yk-chal-resp",e,t,s,n)},yubiKeyCancelChallengeResponse(){t&&this.call("yk-cancel-chal-resp")},argon2(e,t,n){return this.call("argon2",e,t,n)}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"DragDropInfo",(function(){return s}));const s={dragObject:null}},,function(e,t,n){"use strict";n.r(t),n.d(t,"AppModel",(function(){return E}));var s=n(1),i=n(12),l=n(66),o=n(134),a=n(87),r=n(21),c=n(2),u=n(23),d=n(16),p=n(3),h=n(47),m=n(62),f=n(76),g=n(50),y=n(138),v=n(143),b=n(34),w=n(6),k=n(19),_=n(30),S=n(64),P=n(0),C=n(9),x=n(14),T=n(216),O=n.n(T);n(119);class E{constructor(){this.tags=[],this.files=new o.FileCollection,this.fileInfos=a.FileInfoCollection,this.menu=new v.MenuModel,this.filter={},this.sort="title",this.settings=p.AppSettingsModel,this.activeEntryId=null,this.isBeta=r.RuntimeInfo.beta,this.advancedSearch=null,this.attachedYubiKeysCount=0,s.Events.on("refresh",this.refresh.bind(this)),s.Events.on("set-filter",this.setFilter.bind(this)),s.Events.on("add-filter",this.addFilter.bind(this)),s.Events.on("set-sort",this.setSort.bind(this)),s.Events.on("empty-trash",this.emptyTrash.bind(this)),s.Events.on("select-entry",this.selectEntry.bind(this)),s.Events.on("unset-keyfile",this.unsetKeyFile.bind(this)),s.Events.on("usb-devices-changed",this.usbDevicesChanged.bind(this)),this.appLogger=new C.Logger("app"),E.instance=this}loadConfig(e){return new Promise((t,n)=>{this.ensureCanLoadConfig(e),this.appLogger.debug("Loading config from",e);const s=this.appLogger.ts(),i=new XMLHttpRequest;i.open("GET",e),i.responseType="json",i.send(),i.addEventListener("load",()=>{let l=i.response;if(!l){const e="OK"===i.statusText?"Malformed JSON":i.statusText;return this.appLogger.error("Error loading app config",e),n("Error loading app config")}if("string"==typeof l)try{l=JSON.parse(l)}catch(e){return this.appLogger.error("Error parsing response",e,l),n("Error parsing response")}if(!l.settings)return this.appLogger.error("Invalid app config, no settings section",l),n("Invalid app config, no settings section");this.appLogger.info("Loaded app config from",e,this.appLogger.ts(s)),t(l)}),i.addEventListener("error",()=>{this.appLogger.error("Error loading app config",i.statusText,i.status),n("Error loading app config")})}).then(e=>this.applyUserConfig(e))}ensureCanLoadConfig(e){if(!w.Features.isSelfHosted)throw"Configs are supported only in self-hosted installations";const t=document.createElement("a");if(t.href=e,t.host&&t.host!==location.host)throw"Loading config from this location is not allowed"}applyUserConfig(e){if(this.settings.set(e.settings),e.files&&(e.showOnlyFilesFromConfig&&(this.fileInfos.length=0),e.files.filter(e=>e&&e.storage&&e.name&&e.path&&!this.fileInfos.getMatch(e.storage,e.name,e.path)).map(e=>new m.FileInfoModel({id:S.IdGenerator.uuid(),name:e.name,storage:e.storage,path:e.path,opts:e.options})).reverse().forEach(e=>this.fileInfos.unshift(e))),e.plugins){const t=e.plugins.map(e=>b.PluginManager.installIfNew(e.url,e.manifest,!0));return Promise.all(t).then(()=>{this.settings.set(e.settings)})}e.advancedSearch&&(this.advancedSearch=e.advancedSearch,this.addFilter({advanced:this.advancedSearch}))}addFile(e){if(this.files.get(e.id))return!1;this.files.push(e);for(const t of e.groups)this.menu.groupsSection.addItem(t);return this._addTags(e),this._tagsChanged(),this.menu.filesSection.addItem({icon:"lock",title:e.name,page:"file",file:e}),this.refresh(),e.on("reload",this.reloadFile.bind(this)),e.on("change",()=>s.Events.emit("file-changed",e)),e.on("ejected",()=>this.closeFile(e)),!0}reloadFile(e){this.menu.groupsSection.replaceByFile(e,e.groups[0]),this.updateTags()}_addTags(e){const t={};this.tags.forEach(e=>{t[e.toLowerCase()]=!0}),e.forEachEntry({},e=>{for(const n of e.tags)t[n.toLowerCase()]||(t[n.toLowerCase()]=!0,this.tags.push(n))}),this.tags.sort()}_tagsChanged(){this.tags.length?(this.menu.tagsSection.scrollable=!0,this.menu.tagsSection.setItems(this.tags.map(e=>({title:e,icon:"tag",filterKey:"tag",filterValue:e,editable:!0})))):(this.menu.tagsSection.scrollable=!1,this.menu.tagsSection.removeAllItems())}updateTags(){const e=this.tags.slice();this.tags.splice(0,this.tags.length);for(const e of this.files)this._addTags(e);e.join(",")!==this.tags.join(",")&&this._tagsChanged()}renameTag(e,t){this.files.forEach(n=>n.renameTag&&n.renameTag(e,t)),this.updateTags()}closeAllFiles(){for(const e of this.files)e.close(),this.fileClosed(e);this.files.length=0,this.menu.groupsSection.removeAllItems(),this.menu.tagsSection.scrollable=!1,this.menu.tagsSection.removeAllItems(),this.menu.filesSection.removeAllItems(),this.tags.splice(0,this.tags.length),this.filter={},this.menu.select({item:this.menu.allItemsItem})}closeFile(e){e.close(),this.fileClosed(e),this.files.remove(e),this.updateTags(),this.menu.groupsSection.removeByFile(e),this.menu.filesSection.removeByFile(e),this.menu.select({item:this.menu.allItemsSection.items[0]})}emptyTrash(){this.files.forEach(e=>e.emptyTrash&&e.emptyTrash()),this.refresh()}setFilter(e){this.filter=this.prepareFilter(e),this.filter.subGroups=this.settings.expandGroups,!this.filter.advanced&&this.advancedSearch&&(this.filter.advanced=this.advancedSearch);const t=this.getEntries();if(!this.activeEntryId||!t.get(this.activeEntryId)){const e=t[0];this.activeEntryId=e?e.id:null}s.Events.emit("filter",{filter:this.filter,sort:this.sort,entries:t}),s.Events.emit("entry-selected",t.get(this.activeEntryId))}refresh(){this.setFilter(this.filter)}selectEntry(e){this.activeEntryId=e.id,this.refresh()}addFilter(e){this.setFilter(Object.assign(this.filter,e))}setSort(e){this.sort=e,this.setFilter(this.filter)}getEntries(){const e=this.getEntriesByFilter(this.filter);return e.sortEntries(this.sort,this.filter),this.filter.trash&&this.addTrashGroups(e),e}getEntriesByFilter(e){const t=this.prepareFilter(e),n=new l.SearchResultCollection,s=this.files.filter(e=>e.external),i=this.settings.yubiKeyMatchEntries?new Set:void 0;if(this.files.filter(e=>!e.external).forEach(e=>{e.forEachEntry(t,e=>{if(i)for(const t of s){const n=t.getMatchingEntry(e);n&&i.add(n)}n.push(e)})}),s.length)for(const e of s)e.forEachEntry(t,e=>{i&&i.has(e)||n.push(e)});return n}addTrashGroups(e){this.files.forEach(t=>{const n=t.getTrashGroup&&t.getTrashGroup();n&&n.getOwnSubGroups().forEach(s=>{e.unshift(g.GroupModel.fromGroup(s,t,n))})})}prepareFilter(e){if((e=Object.assign({},e)).textLower=e.text?e.text.toLowerCase():"",e.textParts=null,e.textLowerParts=null,!(e.advanced&&e.advanced.exact)&&e.text){const t=e.text.split(/\s+/).filter(e=>e);t.length&&(e.textParts=t,e.textLowerParts=e.textLower.split(/\s+/).filter(e=>e))}return e.tagLower=e.tag?e.tag.toLowerCase():"",e}getFirstSelectedGroupForCreation(){const e=this.filter.group;let t,n;return e&&this.files.some(s=>(t=s,n=s.getGroup(e),n)),n||(t=this.files.find(e=>e.active&&!e.readOnly),n=t.groups[0]),{group:n,file:t}}completeUserNames(e){const t={};this.files.forEach(n=>{n.forEachEntry({text:e,textLower:e.toLowerCase(),advanced:{user:!0}},e=>{const n=e.user;n&&(t[n]=(t[n]||0)+1)})});const n=Object.entries(t);n.sort((e,t)=>t[1]-e[1]);return n.length>5&&(n.length=5),n.map(e=>e[0])}getEntryTemplates(){const e=[];return this.files.forEach(t=>{var n;null===(n=t.forEachEntryTemplate)||void 0===n||n.call(t,n=>{e.push({file:t,entry:n})})}),e}canCreateEntries(){return this.files.some(e=>e.active&&!e.readOnly)}createNewEntry(e){const t=this.getFirstSelectedGroupForCreation();if(e&&e.template){t.file!==e.template.file&&(t.file=e.template.file,t.group=e.template.file.groups[0]);const n=e.template.entry,s=h.EntryModel.newEntry(t.group,t.file);return s.copyFromTemplate(n),s}return h.EntryModel.newEntry(t.group,t.file,{tag:this.filter.tag})}createNewGroup(){const e=this.getFirstSelectedGroupForCreation();return g.GroupModel.newGroup(e.group,e.file)}createNewTemplateEntry(){const e=this.getFirstSelectedGroupForCreation().file,t=e.getEntryTemplatesGroup()||e.createEntryTemplatesGroup();return h.EntryModel.newEntry(t,e)}createDemoFile(){if(this.files.getByName("Demo"))return!1;{const e=new f.FileModel({id:S.IdGenerator.uuid()});return e.openDemo(()=>{this.addFile(e)}),!0}}createNewFile(e){if(!e)for(let t=0;e=P.Locale.openNewFile+(t||""),this.files.getByName(e)||this.fileInfos.getByName(e);t++);const t=new f.FileModel({id:S.IdGenerator.uuid()});return t.create(e),this.addFile(t),t}openFile(e,t){const n=new C.Logger("open",e.name);n.info("File open request");const s=e.id?this.fileInfos.get(e.id):this.fileInfos.getMatch(e.storage,e.name,e.path);!e.opts&&s&&s.opts&&(e.opts=s.opts),s&&s.modified?(n.info("Open file from cache because it is modified"),this.openFileFromCache(e,(e,s)=>{!e&&s&&(n.info("Sync just opened modified file"),setTimeout(()=>this.syncFile(s),0)),t(e)},s)):e.fileData?(n.info("Open file from supplied content"),"file"===e.storage?i.Storage.file.stat(e.path,null,(n,i)=>{if(n)return t(n);e.rev=i.rev,this.openFileWithData(e,t,s,e.fileData)}):this.openFileWithData(e,t,s,e.fileData,!0)):e.storage?s&&s.openDate&&s.rev===e.rev&&"file"!==s.storage?(n.info("Open file from cache because it is latest"),this.openFileFromCache(e,(i,l)=>{if(i){if("KdbxError"===i.name||i.ykError)return t(i);n.info("Error loading file from cache, trying to open from storage",i),this.openFileFromStorage(e,t,s,n,!0)}else t(i,l)},s)):s&&s.openDate&&"file"!==e.storage?(n.info("Open file from cache, will sync after load",e.storage),this.openFileFromCache(e,(i,l)=>{if(!i&&l)n.info("Sync just opened file"),setTimeout(()=>this.syncFile(l),0),t(i);else{if("KdbxError"===i.name||i.ykError)return t(i);n.info("Error loading file from cache, trying to open from storage",i),this.openFileFromStorage(e,t,s,n,!0)}},s)):this.openFileFromStorage(e,t,s,n):(n.info("Open file from cache as main storage"),this.openFileFromCache(e,t,s))}openFileFromCache(e,t,n){i.Storage.cache.load(n.id,null,(s,i)=>{i||(s=P.Locale.openFileNoCacheError),new C.Logger("open",e.name).info("Loaded file from cache",s),s?t(s):this.openFileWithData(e,t,n,i)})}openFileFromStorage(e,t,n,s,l){s.info("Open file from storage",e.storage);const o=i.Storage[e.storage],a=()=>{s.info("Load from storage"),o.load(e.path,e.opts,(i,l,a)=>{if(i)n&&n.openDate?(s.info("Open file from cache because of storage load error",i),this.openFileFromCache(e,t,n)):(s.info("Storage load error",i),t(i));else{s.info("Open file from content loaded from storage"),e.fileData=l,e.rev=a&&a.rev||null;const i="file"!==o.name;this.openFileWithData(e,t,n,l,i)}})},r=n&&n.rev||null;r&&o.stat?(s.info("Stat file"),o.stat(e.path,e.opts,(i,c)=>{!l&&n&&"file"!==o.name&&(i||c&&c.rev===r)?(s.info("Open file from cache because "+(i?"stat error":"it is latest"),i),this.openFileFromCache(e,t,n)):c?(s.info("Open file from storage ("+c.rev+", local "+r+")"),a()):(s.info("Stat error",i),t(i))})):a()}openFileWithData(e,t,n,s,l){const o=new C.Logger("open",e.name);let a=!1;!e.keyFileData&&n&&n.keyFileName?(e.keyFileName=n.keyFileName,"data"===this.settings.rememberKeyFiles?e.keyFileData=f.FileModel.createKeyFileWithHash(n.keyFileHash):"path"===this.settings.rememberKeyFiles&&n.keyFilePath&&(e.keyFilePath=n.keyFilePath,i.Storage.file.enabled&&(a=!0))):!e.keyFilePath||e.keyFileData||n||(a=!0);const r=new f.FileModel({id:n?n.id:S.IdGenerator.uuid(),name:e.name,storage:e.storage,path:e.path,keyFileName:e.keyFileName,keyFilePath:e.keyFilePath,backup:n&&n.backup||null,fingerprint:n&&n.fingerprint||null,chalResp:e.chalResp}),c=a=>{if(a)return t(a);if(this.files.get(r.id))return t("Duplicate file id");n&&n.modified&&(n.editState&&(o.info("Loaded local edit state"),r.setLocalEditState(n.editState)),o.info("Mark file as modified"),r.modified=!0),n&&(r.syncDate=n.syncDate),l&&(o.info("Save loaded file to cache"),i.Storage.cache.save(r.id,null,e.fileData));const c=e.rev||n&&n.rev;this.setFileOpts(r,e.opts),this.addToLastOpenFiles(r,c),this.addFile(r),t(null,r),this.fileOpened(r,s,e)},u=()=>{r.open(e.password,s,e.keyFileData,c)};a?i.Storage.file.load(e.keyFilePath,{},(n,s)=>{n?(o.info("Storage load error",n),t(n)):(e.keyFileData=s,u())}):u()}importFileWithXml(e,t){const n=new C.Logger("import",e.name);n.info("File import request with supplied xml");const s=new f.FileModel({id:S.IdGenerator.uuid(),name:e.name,storage:e.storage,path:e.path});s.importWithXml(e.fileXml,e=>{if(n.info("Import xml complete "+(e?"with error":""),e),e)return t(e);this.addFile(s),this.fileOpened(s)})}addToLastOpenFiles(e,t){this.appLogger.debug("Add last open file",e.id,e.name,e.storage,e.path,t);const n=new Date,s=new m.FileInfoModel({id:e.id,name:e.name,storage:e.storage,path:e.path,opts:this.getStoreOpts(e),modified:e.modified,editState:e.getLocalEditState(),rev:t,syncDate:e.syncDate||n,openDate:n,backup:e.backup,fingerprint:e.fingerprint,chalResp:e.chalResp});switch(this.settings.rememberKeyFiles){case"data":s.set({keyFileName:e.keyFileName||null,keyFileHash:e.getKeyFileHash()});break;case"path":s.set({keyFileName:e.keyFileName||null,keyFilePath:e.keyFilePath||null})}this.fileInfos.remove(e.id),this.fileInfos.unshift(s),this.fileInfos.save()}getStoreOpts(e){const t=e.opts,n=e.storage;return i.Storage[n]&&i.Storage[n].fileOptsToStoreOpts&&t?i.Storage[n].fileOptsToStoreOpts(t,e):null}setFileOpts(e,t){const n=e.storage;i.Storage[n]&&i.Storage[n].storeOptsToFileOpts&&t&&(e.opts=i.Storage[n].storeOptsToFileOpts(t,e))}fileOpened(e,t,n){"file"===e.storage&&i.Storage.file.watch(e.path,O()(()=>{this.syncFile(e)},d.Timeouts.FileChangeSync)),e.isKeyChangePending(!0)&&s.Events.emit("key-change-pending",{file:e});const l=e.backup;t&&l&&l.enabled&&l.pending&&this.scheduleBackupFile(e,t),n&&this.saveFileFingerprint(e,n.password),this.settings.yubiKeyAutoOpen&&this.attachedYubiKeysCount>0&&!this.files.some(e=>e.external)&&this.tryOpenOtpDeviceInBackground()}fileClosed(e){"file"===e.storage&&i.Storage.file.unwatch(e.path)}removeFileInfo(e){i.Storage.cache.remove(e),this.fileInfos.remove(e),this.fileInfos.save()}getFileInfo(e){return this.fileInfos.get(e.id)||this.fileInfos.getMatch(e.storage,e.name,e.path)}syncFile(e,t,n){if(e.demo)return n&&n();if(e.syncing)return n&&n("Sync in progress");if(!e.active)return n&&n("File is closed");t||(t={});const l=new C.Logger("sync",e.name),o=t.storage||e.storage;let a=t.path||e.path;const r=t.opts||e.opts;!o||!i.Storage[o].getPathForName||a&&o===e.storage||(a=i.Storage[o].getPathForName(e.name));const c=Object.assign({},t);c&&c.opts&&c.opts.password&&(c.opts=Object.assign({},c.opts),c.opts.password="***"),l.info("Sync started",o,a,c);let u=this.getFileInfo(e);if(!u){l.info("Create new file info");const t=new Date;u=new m.FileInfoModel({id:S.IdGenerator.uuid(),name:e.name,storage:e.storage,path:e.path,opts:this.getStoreOpts(e),modified:e.modified,editState:null,rev:null,syncDate:t,openDate:t,backup:e.backup})}e.setSyncProgress();const d=t=>{if(!e.active)return n&&n("File is closed");l.info("Sync finished",t||"no error"),e.setSyncComplete(a,o,t?t.toString():null),u.set({name:e.name,storage:o,path:a,opts:this.getStoreOpts(e),modified:e.dirty?u.modified:e.modified,editState:e.dirty?u.editState:e.getLocalEditState(),syncDate:e.syncDate,chalResp:e.chalResp}),"data"===this.settings.rememberKeyFiles&&u.set({keyFileName:e.keyFileName||null,keyFileHash:e.getKeyFileHash()}),this.fileInfos.get(u.id)||this.fileInfos.unshift(u),this.fileInfos.save(),n&&n(t)};if(o){const n=3;let c=0;const p=()=>{if(++c===n)return d("Too many load attempts");l.info("Load from storage, attempt "+c),i.Storage[o].load(a,r,(n,o,a)=>(l.info("Load from storage",a,n||"no error"),e.active?n?d(n):void e.mergeOrUpdate(o,t.remoteKey,t=>{if(l.info("Merge complete",t||"no error"),this.refresh(),t)return"InvalidKey"===t.code&&(l.info("Remote key changed, request to enter new key"),s.Events.emit("remote-key-changed",{file:e})),d(t);a&&a.rev&&(l.info("Update rev in file info"),u.rev=a.rev),e.syncDate=new Date,e.modified?(l.info("Updated sync date, saving modified file"),m()):e.dirty?(l.info("Saving not modified dirty file to cache"),i.Storage.cache.save(u.id,null,o,t=>{if(t)return d(t);e.dirty=!1,l.info("Complete, remove dirty flag"),d()})):(l.info("Complete, no changes"),d())}):d("File is closed")))},h=t=>{l.info("Save data to storage");const n=u.storage===o?u.rev:void 0;i.Storage[o].save(a,r,t,(n,s)=>{n&&n.revConflict?(l.info("Save rev conflict, reloading from storage"),p()):n?(l.info("Error saving data to storage"),d(n)):(s&&s.rev&&(l.info("Update rev in file info"),u.rev=s.rev),s&&s.path&&(l.info("Update path in file info",s.path),e.path=s.path,u.path=s.path,a=s.path),e.syncDate=new Date,l.info("Save to storage complete, update sync date"),this.scheduleBackupFile(e,t),d())},n)},m=()=>{l.info("Getting file data for saving"),e.getData((t,n)=>{if(n)return d(n);"file"===o?(l.info("Saving to file storage"),h(t)):e.dirty?(l.info("Saving to cache"),i.Storage.cache.save(u.id,null,t,n=>{if(n)return d(n);e.dirty=!1,l.info("Saved to cache, saving to storage"),h(t)})):(l.info("Saving to storage, skip cache because not dirty"),h(t))})};l.info("Stat file"),i.Storage[o].stat(a,r,(t,n)=>{if(!e.active)return d("File is closed");t?t.notFound?(l.info("File does not exist in storage, creating"),m()):e.dirty?(l.info("Stat error, dirty, save to cache",t||"no error"),e.getData((n,s)=>{if(s)return l.error("Error getting file data",s),d(t);i.Storage.cache.save(u.id,null,n,n=>{n&&l.error("Error saving to cache",n),n||(e.dirty=!1),l.info("Saved to cache, exit with error",t||"no error"),d(t)})})):(l.info("Stat error, not dirty",t||"no error"),d(t)):n.rev===u.rev?e.modified?(l.info("Stat found same version, modified, saving"),m()):(l.info("Stat found same version, not modified"),d()):(l.info("Found new version, loading from storage"),p())})}else{if(!e.modified&&u.id===e.id)return l.info("Local, not modified"),d();l.info("Local, save to cache"),e.getData((t,n)=>{if(n)return d(n);i.Storage.cache.save(u.id,null,t,n=>{l.info("Saved to cache",n||"no error"),d(n),n||this.scheduleBackupFile(e,t)})})}}clearStoredKeyFiles(){for(const e of this.fileInfos)e.set({keyFileName:null,keyFilePath:null,keyFileHash:null});this.fileInfos.save()}unsetKeyFile(e){this.fileInfos.get(e).set({keyFileName:null,keyFilePath:null,keyFileHash:null}),this.fileInfos.save()}setFileBackup(e,t){const n=this.fileInfos.get(e);n&&(n.backup=t),this.fileInfos.save()}backupFile(e,t,n){const s=e.opts;let l=e.backup;const o=new C.Logger("backup",e.name);if(!l||!l.storage||!l.path)return n("Invalid backup settings");let a=l.path.replace("{date}",k.DateFormat.dtStrFs(new Date));o.info("Backup file to",l.storage,a);const r=()=>{i.Storage[l.storage].getPathForName&&(a=i.Storage[l.storage].getPathForName(a)),i.Storage[l.storage].save(a,s,t,t=>{t?o.error("Backup error",t):(o.info("Backup complete"),l=e.backup,l.lastTime=Date.now(),delete l.pending,e.backup=l,this.setFileBackup(e.id,l)),n(t)})};let c=_.UrlFormat.fileToDir(a);i.Storage[l.storage].getPathForName&&(c=i.Storage[l.storage].getPathForName(c).replace(".kdbx","")),i.Storage[l.storage].stat(c,s,e=>{if(e)if(e.notFound){if(o.info("Backup folder does not exist"),!i.Storage[l.storage].mkdir)return n("Mkdir not supported by "+l.storage);i.Storage[l.storage].mkdir(c,e=>{e?(o.error("Error creating backup folder",e),n("Error creating backup folder")):(o.info("Backup folder created"),r())})}else o.error("Stat folder error",e),n("Cannot stat backup folder");else o.info("Backup folder exists, saving"),r()})}scheduleBackupFile(e,t){const n=e.backup;if(!n||!n.enabled)return;const s=new C.Logger("backup",e.name);let i=!1;if(n.lastTime){const e=new Date(n.lastTime);switch(n.schedule){case"0":break;case"1d":e.setDate(e.getDate()+1);break;case"1w":e.setDate(e.getDate()+7);break;case"1m":e.setMonth(e.getMonth()+1);break;default:return}e.getTime()<=Date.now()&&(i=!0),s.debug("Last backup time: "+new Date(n.lastTime)+", schedule: "+n.schedule+", next time: "+e+", "+(i?"backup now":"skip backup"))}else i=!0,s.debug("No last backup time, backup now");n.pending||(n.pending=!0,this.setFileBackup(e.id,n)),i&&this.backupFile(e,t,x.noop)}saveFileFingerprint(e,t){if(c.Launcher&&c.Launcher.fingerprints&&!e.fingerprint){const n=this.fileInfos.get(e.id);c.Launcher.fingerprints.register(e.id,t,e=>{e&&(n.fingerprint=e,this.fileInfos.save())})}}usbDevicesChanged(){const e=this.attachedYubiKeysCount;if(this.attachedYubiKeysCount=u.UsbListener.attachedYubiKeys,!this.settings.yubiKeyAutoOpen)return;const t=u.UsbListener.attachedYubiKeys>e,n=this.files.some(e=>e.active&&!e.external);t&&n&&!this.openingOtpDevice&&this.tryOpenOtpDeviceInBackground()}tryOpenOtpDeviceInBackground(){this.appLogger.debug("Auto-opening a YubiKey"),this.openOtpDevice(e=>{this.appLogger.debug("YubiKey auto-open complete",e)})}openOtpDevice(e){this.openingOtpDevice=!0;const t=new y.YubiKeyOtpModel;return t.open(n=>{this.openingOtpDevice=!1,n||this.addFile(t),e(n)}),t}getMatchingOtpEntry(e){if(!this.settings.yubiKeyMatchEntries)return null;for(const t of this.files)if(t.external){const n=t.getMatchingEntry(e);if(n)return n}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuItemModel",(function(){return o}));var s=n(18),i=n(136),l=n(94);class o extends s.Model{constructor(e){super(e),e&&e.file&&e.file.on("change:name",this.changeTitle.bind(this))}addItem(e){this.items.push(e)}addOption(e){this.options||(this.options=new i.MenuOptionCollection),this.options.push(new l.MenuOptionModel(e))}toggleExpanded(){const e=this.items;let t=!this.expanded;e&&e.length||(t=!0),this.expanded=t}changeTitle(e,t){this.title=t}}o.defineModelProperties({id:"",title:"",locTitle:"",icon:"",customIcon:null,active:!1,expanded:!0,items:null,shortcut:null,options:null,cls:null,disabled:!1,visible:!0,drag:!1,drop:!1,filterKey:null,filterValue:null,collapsible:!1,defaultItem:!1,page:null,editable:!1,file:null})},function(e,t,n){"use strict";n.r(t),n.d(t,"Color",(function(){return l}));var s=n(73);const i={},l=function(e){const t=/^rgba?\((\d+),\s*(\d+),\s*(\d+)(,\s*([\d.]+))?\)$/.exec(e);if(t)this.r=+t[1],this.g=+t[2],this.b=+t[2],this.a=t[4]?t[4]:1,this.setHsl();else{const t=/^#?([0-9a-f]{3,6})$/i.exec(e);if(t){const e=t[1],n=3===e.length?1:2;this.r=parseInt(e.substr(0,n),16),this.g=parseInt(e.substr(n,n),16),this.b=parseInt(e.substr(2*n,n),16),this.a=1,this.setHsl()}else e instanceof l?(this.r=e.r,this.g=e.g,this.b=e.b,this.h=e.h,this.s=e.s,this.l=e.l,this.a=e.a):(this.r=this.g=this.b=this.h=this.s=this.l=0,this.a=1)}};l.prototype.setHsl=function(){const e=this.r/255,t=this.g/255,n=this.b/255,s=Math.max(e,t,n),i=Math.min(e,t,n);let l,o;const a=(s+i)/2;if(s===i)l=o=0;else{const r=s-i;switch(o=a>.5?r/(2-s-i):r/(s+i),s){case e:l=(t-n)/r+(t<n?6:0);break;case t:l=(n-e)/r+2;break;case n:l=(e-t)/r+4}l/=6}this.h=l,this.s=o,this.l=a},l.prototype.toHex=function(){return"#"+o(this.r)+o(this.g)+o(this.b)},l.prototype.toRgba=function(){return`rgba(${Math.round(this.r)},${Math.round(this.g)},${Math.round(this.b)},${this.a})`},l.prototype.toHsla=function(){return`hsla(${Math.round(100*this.h)},${Math.round(100*this.s)}%,${Math.round(100*this.l)}%,${this.a})`},l.prototype.distanceTo=function(e){return Math.abs(this.h-e.h)},l.prototype.mix=function(e,t){const n=new l(this),s=1-t;return n.r=this.r*t+e.r*s,n.g=this.g*t+e.g*s,n.b=this.b*t+e.b*s,n.a=this.a*t+e.a*s,n},l.getNearest=function(e){const t=new l(e);if(!t.s)return null;let n=null,s=Number.MAX_VALUE;for(const[e,l]of Object.entries(i)){const i=t.distanceTo(l);i<s&&(s=i,n=e)}return n},l.getKnownBgColor=function(e){return s.Colors.BgColors[e]?"#"+s.Colors.BgColors[e]:void 0};for(const[e,t]of Object.entries(s.Colors.ColorsValues))i[e]=new l(t);function o(e){const t=(e||0).toString(16);return t.length<2?"0"+t:t}l.black=new l("#000")},function(e,t,n){"use strict";n.r(t),n.d(t,"Otp",(function(){return i}));const s=new(n(9).Logger)("otp"),i=function(e,t){if(["hotp","totp"].indexOf(t.type)<0)throw"Bad type: "+t.type;if(!t.secret)throw"Empty secret";if(t.algorithm&&["SHA1","SHA256","SHA512"].indexOf(t.algorithm)<0)throw"Bad algorithm: "+t.algorithm;if(t.digits&&["6","7","8"].indexOf(t.digits)<0)throw"Bad digits: "+t.digits;if("hotp"===t.type&&!t.counter)throw"Bad counter: "+t.counter;if(t.period&&isNaN(t.period)||t.period<1)throw"Bad period: "+t.period;if(this.url=e,this.type=t.type,this.account=t.account,this.secret=t.secret,this.issuer=t.issuer,this.algorithm=t.algorithm?t.algorithm.toUpperCase():"SHA1",this.digits=t.digits?+t.digits:6,this.counter=t.counter,this.period=t.period?+t.period:30,this.key=i.fromBase32(this.secret),!this.key)throw"Bad key: "+this.key};i.prototype.next=function(e){let t,n;if("totp"===this.type){const e=Date.now(),s=Math.round(e/1e3);t=Math.floor(s/this.period);const i=1e3*this.period;n=i-e%i}else t=this.counter;const l=new Uint8Array(8).buffer;new DataView(l).setUint32(4,t),this.hmac(l,(t,l)=>{if(!t)return s.error("OTP calculation error",l),e(l);const o=15&(t=new DataView(t)).getInt8(t.byteLength-1),a=2147483647&t.getUint32(o);let r;r="Steam"===this.issuer?i.hmacToSteamCode(a):i.hmacToDigits(a,this.digits),e(null,r,n)})},i.prototype.hmac=function(e,t){const n=window.crypto.subtle||window.crypto.webkitSubtle,s={name:"HMAC",hash:{name:this.algorithm.replace("SHA","SHA-")}};n.importKey("raw",this.key,s,!1,["sign"]).then(i=>{n.sign(s,i,e).then(e=>{t(e)}).catch(e=>{t(null,e)})}).catch(e=>{t(null,e)})},i.hmacToDigits=function(e,t){let n=e.toString();return n=i.leftPad(n.substr(n.length-t),t),n},i.hmacToSteamCode=function(e){const t="23456789BCDFGHJKMNPQRTVWXY";let n="";for(let s=0;s<5;++s)n+=t.charAt(e%t.length),e/=t.length;return n},i.fromBase32=function(e){e=e.replace(/\s/g,"");let t,n="";for(t=0;t<e.length;t++){const s="abcdefghijklmnopqrstuvwxyz234567".indexOf(e[t].toLowerCase());if(s<0)return null;n+=i.leftPad(s.toString(2),5)}const s=new Uint8Array(Math.floor(n.length/8));for(t=0;t<s.length;t++){const e=n.substr(8*t,8);s[t]=parseInt(e,2)}return s.buffer},i.leftPad=function(e,t){for(;e.length<t;)e="0"+e;return e},i.parseUrl=function(e){const t=/^otpauth:\/\/(\w+)\/([^\?]+)\?(.*)/i.exec(e);if(!t)throw"Not OTP url";const n={},s=decodeURIComponent(t[2]);if(s){const e=s.split(":");n.issuer=e[0].trim(),e.length>1&&(n.account=e[1].trim())}return n.type=t[1].toLowerCase(),t[3].split("&").forEach(e=>{const t=e.split("=",2);n[t[0].toLowerCase()]=decodeURIComponent(t[1])}),new i(e,n)},i.isSecret=function(e){return!!i.fromBase32(e)},i.makeUrl=function(e,t,n){return"otpauth://totp/default?secret="+e+(t?"&period="+t:"")+(n?"&digits="+n:"")}},function(e,t,n){"use strict";n.r(t),n.d(t,"IdleTracker",(function(){return l}));var s=n(1),i=n(3);const l={actionTime:Date.now(),init(){setInterval(this.checkIdle.bind(this),6e4)},checkIdle(){const e=(Date.now()-this.actionTime)/1e3/60,t=i.AppSettingsModel.idleMinutes;t&&e>t&&s.Events.emit("user-idle")},regUserAction(){this.actionTime=Date.now()}};s.Events.on("power-monitor-resume",()=>l.checkIdle)},function(e,t,n){"use strict";n.r(t),n.d(t,"FileInfoModel",(function(){return o}));var s=n(18),i=n(14);const l={id:"",name:"",storage:null,path:null,modified:!1,editState:null,rev:null,syncDate:null,openDate:null,keyFileName:null,keyFileHash:null,keyFilePath:null,opts:null,backup:null,fingerprint:null,chalResp:null};class o extends s.Model{constructor(e){e=Object(i.pick)(Object.assign({},e),Object.keys(l));for(const[t,n]of Object.entries(e))/Date$/.test(t)&&(e[t]=n?new Date(n):null);super(e)}}o.defineModelProperties(l)},function(e,t,n){"use strict";n.r(t),n.d(t,"FileSaver",(function(){return i}));var s=n(16);const i={saveAs(e,t){const n=document.createElement("a");n.download=t,n.rel="noopener",n.href=URL.createObjectURL(e),document.body.appendChild(n),n.click(),document.body.removeChild(n),setTimeout(()=>{URL.revokeObjectURL(n.href)},s.Timeouts.LinkDownloadRevoke)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"IdGenerator",(function(){return s}));const s={uuid(){const e=s.s4;return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()},s4:()=>Math.floor(65536*(1+Math.random())).toString(16).substring(1)}},function(e){e.exports=JSON.parse('{"months":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthsShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"weekdaysShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"retToApp":"return to app","name":"name","icon":"icon","title":"title","password":"password","user":"user","website":"website","tags":"tags","notes":"notes","entry":"entry","group":"group","noTitle":"no title","or":"or","history":"history","template":"template","notImplemented":"Not Implemented","saveChanges":"Save changes","discardChanges":"Discard changes","advanced":"Advanced","shortcuts":"Shortcuts","help":"Help","settings":"Settings","plugins":"Plugins","ctrlKey":"ctrl","shiftKey":"shift","altKey":"alt","error":"error","cache":"cache","file":"file","device":"device","webdav":"WebDAV","dropbox":"Dropbox","gdrive":"Google Drive","onedrive":"OneDrive","menuAllItems":"All Items","menuColors":"Colors","menuTrash":"Trash","menuSetGeneral":"General","menuSetAbout":"About","menuSetDevices":"Devices","menuAlertNoTags":"No tags","menuAlertNoTagsBody":"You can add new tags while editing fields, in the Tags section.","menuEmptyTrash":"Empty Trash","menuEmptyTrashAlert":"Empty Trash?","menuEmptyTrashAlertBody":"You will not be able to put items back","menuItemCollapsed":"Double-click to expand","menuRestoreApp":"Open {}","menuQuitApp":"Quit {}","alertYes":"Yes","alertNo":"No","alertOk":"OK","alertCancel":"Cancel","alertSignIn":"Sign In","alertCopy":"Copy","alertClose":"Close","alertDoNotAsk":"Don\'t ask me anymore","appBeta":"WARNING: beta version, only for preview","footerOpen":"Open / New","footerSyncError":"Sync error","footerTitleGen":"Generate","footerTitleLock":"Lock","genLen":"Length","genNewPass":"New password","genPresetDefault":"default preset","genPresetDerived":"like old password","genPresetPronounceable":"pronounceable","genPresetMed":"medium length","genPresetLong":"long","genPresetPin4":"4-digit PIN","genPresetMac":"MAC address","genPresetHash128":"128-bit hash","genPresetHash256":"256-bit hash","genHidePass":"Hide password","genShowPass":"Show password","grpTitle":"Group","grpSearch":"Enable searching entries in this group","grpAutoType":"Enable auto-type","grpAutoTypeSeq":"Auto-type sequence","grpAutoTypeSeqDefault":"Use default auto-type sequence","grpTrash":"Delete group with all entries","tagTitle":"Tag","tagTrash":"Remove tag from all entries","tagRename":"Rename","tagTrashQuestion":"Remove tag from all entries?","tagTrashQuestionBody":"This tag will be removed from all entries. There will be no easy way to put it back.","tagExists":"Tag already exists","tagExistsBody":"Tag with this name already exists. Please choose another name.","tagBadName":"Bad name","tagBadNameBody":"Tag name cannot contain characters {}. Please remove them.","genPsTitle":"Generator Presets","genPsCreate":"New preset","genPsDelete":"Delete preset","genPsNew":"preset","genPsEnabled":"Show in presets list","genPsDefault":"Selected by default","genPsDefaultLength":"Default length","genPsUpper":"Uppercase latin letters","genPsLower":"Lowercase latin letters","genPsDigits":"Digits","genPsSpecial":"Special symbols","genPsBrackets":"Brackets","genPsHigh":"High ASCII characters","genPsAmbiguous":"Ambiguous symbols","genPsInclude":"Additional symbols to include","genPsExample":"Example of generated password","genPsPattern":"Pattern","genPsPatternHelp":"Patterns can be used to specify custom rules for selecting characters. For example, 1-AA will generate passwords starting with a digit, followed by a dash and two letters. You can use these symbols:","genPsAllRanges":"All symbols","genPsIncluded":"Additional symbols added above","keyChangeTitleRemote":"Master Key Changed","keyChangeMessageRemote":"Master key was changed for this database. Please enter a new key","keyChangeTitleExpired":"Master Key Expired","keyChangeMessageExpired":"Master key for this database is expired. Please enter a new key","keyChangeRepeatPassword":"Password, once again","keyEnter":"Enter","iconFavTitle":"Download and use website favicon","iconSelCustom":"Select a custom icon","listEmptyTitle":"Empty","listEmptyAdd":"add with {} button above","listGroup":"Group","listNoWebsite":"no website","listNoUser":"no user","listNoAttachments":"no attachments","listAddTemplateHeader":"Templates","listAddTemplateBody1":"Templates allow you to create entries with one click. Add something to template entry and then click {} again to use this template.","listAddTemplateBody2":"You can always find your templates in {} group.","searchAddNew":"Add New","searchSort":"Sort","searchCreated":"Created","searchUpdated":"Updated","searchAttachments":"Attachments","searchAZ":"A {} Z","searchZA":"Z {} A","searchON":"Old {} New","searchNO":"New {} Old","searchShiftClickOr":"shift-click or","searchAdvTitle":"Toggle advanced search","searchSearchIn":"Search in","searchOther":"Other fields","searchProtect":"Secure fields","searchOptions":"Options","searchCase":"Match case","searchRegex":"RegEx","searchRank":"Auto","searchExact":"Exact","openOpen":"Open","openNew":"New","openNewFile":"New","openMore":"More","openDemo":"Demo","openGenerate":"Generate","openXml":"Import XML","openCaps":"Caps Lock is on","openClickToOpen":"Click to open a file","openKeyFile":"key file","openKeyFileDropbox":"(from dropbox)","openDropHere":"drop files here","openFailedRead":"Failed to read file","openNothingFound":"Nothing found","openNothingFoundBody":"We haven\'t found any suitable files.","openSelectFile":"Select a file","openSelectFileBody":"Select a file you would like to open","openPassFor":"Password for","openRemoveLastQuestion":"Delete local file?","openRemoveLastQuestionBody":"The file you are deleting is stored only inside the app. Delete it permanently?","openRemoveLastQuestionModBody":"The file you are deleting has local modifications. Delete it and discard these modifications?","openLocalFile":"Local file","openLocalFileBody":"You are going to open a file that will be stored inside the app. Changes you make will not be saved back to file system. To get the file with your data, export it from settings.","openLocalFileDontShow":"Don\'t show this again","openWrongFile":"Bad file","openWrongFileBody":"This file format is not supported. This app works with KeePass database format files (kdbx).","openKdbFileBody":"You are opening an old version format file (KDB). This app supports only new format (kdbx), please use KeePass v2 to convert between them.","openConfigHeader":"{} Settings","openUrl":"URL","openUrlDesc":"https://server/path/file.kdbx, or just file.kdbx","openUser":"User","openUserDesc":"WebDAV server user (if required)","openUserPlaceholder":"no user","openPass":"Password","openPassDesc":"WebDAV server password (this is not your file password)","openPassPlaceholder":"no password","openConfigError":"Error: {}","openConfigErrorNotFound":"File not found","openError":"Error","openErrorDescription":"There was an error opening file","openErrorFileNotFound":"File not found","openListErrorBody":"There was an error loading file list","openShowAllFiles":"Show all files","openFileNoCacheError":"File not found in the cache storage. This can happen because browser storage was cleaned up. To open the file, remove it from KeeWeb and add it again.","openChalRespHeader":"Challenge-Response","openChalRespLoading":"Loading the list of YubiKeys","openChalRespSelectYubiKey":"Select a YubiKey that you would like to use","openChalRespErrorEmpty":"No YubiKeys found.","openChalRespErrorEmptyMac":"First time using this feature on macOS? KeeWeb must be added to the Input Monitoring section of security settings.","detAttDownload":"Shift-click the attachment button to download it or","detAttDelToRemove":"Delete to remove","detAttSave":"Save as …","detEmpty":"Your passwords will be displayed here","detGroupRestore":"To restore this group, please drag it to any group outside trash","detHistoryClickPoint":"Click entry history timeline point to view state","detHistoryReturn":"return to entry","detHistoryRevert":"Revert to state","detHistoryDel":"Delete state","detHistoryEmpty":"empty","detHistoryModified":"modified","detHistoryRec":"record","detHistoryRecs":"records","detHistoryVersion":"Version","detHistorySaved":"Saved","detHistoryNoTitle":"no title","detHistoryCurState":"current state","detHistoryCurUnsavedState":"current unsaved state","detHistoryRevertAlert":"Revert to this history state?","detHistoryRevertAlertBody":"Your current state will be saved to history.","detHistoryDeleteAlert":"Delete this history state?","detHistoryDeleteAlertBody":"You will not be able to restore it.","detHistoryDiscardChangesAlert":"Discard changes made to entry?","detHistoryDiscardChangesAlertBody":"Unsaved changes will be lost, there will be no way back.","detBackToList":"back to list","detSetIconColor":"Change color","detSetIcon":"Change icon","detDropAttachments":"drop attachments here","detDelEntry":"Delete","detDelEntryPerm":"Delete permanently","detExpires":"Expires","detExpired":"expired","detGroup":"Group","detCreated":"Created","detUpdated":"Updated","detNetField":"New Field","detAttachments":"Attachments","detDelFromTrash":"Delete from trash?","detDelFromTrashBody":"You will not be able to put it back.","detDelFromTrashBodyHint":"To quickly remove all items from trash, click Empty icon in Trash menu.","detDelToTrash":"Delete the entry?","detDelToTrashBody":"The entry will be moved to the trash folder.","detFieldCopied":"Copied","detFieldCopiedTime":"Copied for {} seconds","detCopyHint":"You can copy field value by clicking its title","detMore":"more","detClickToAddField":"click to add a new field","detMenuAddNewField":"Add new field","detMenuShowEmpty":"Show empty fields","detMenuHideEmpty":"Hide empty fields","detMenuAddField":"Add {}","detMenuCopyPassword":"Copy password","detMenuCopyUser":"Copy user","detMenuCopyOtp":"Copy one-time code","detSetupOtp":"One-time codes","detClone":"Make a copy","detCopyEntryToClipboard":"Copy all fields","detClonedName":"Copy","detAutoType":"Auto-type","detAutoTypeSettings":"Auto-type settings","detAutoTypeEnabled":"Enable auto-type for this entry","detAutoTypeSequence":"Keystrokes","detAutoTypeInput":"Input","detAutoTypeShortcutsDesc":"{} or {} while the app is inactive","detAutoTypeObfuscation":"Mix real keystrokes with random","detAutoTypeWindow":"Window","detAutoTypeInputWindow":"Window title","detSetupOtpAlert":"Scan the QR code","detSetupOtpAlertBody":"Please copy the QR code which is displayed on the authorization page.","detSetupOtpAlertBody1":"1. go to the authorization page","detSetupOtpAlertBody2":"2. make a screenshot of the QR code {}","detSetupOtpAlertBody3":"3. paste it here {}","detSetupOtpAlertBody3Mobile":"3. select it or scan with your camera using Select/Scan button below","detSetupOtpAlertBody4":"If you can\'t scan the code, click Enter code manually","detSetupOtpManualButton":"Enter code manually","detSetupOtpScanButton":"Select/Scan","detSetupOtpAlertBodyWith":"with {}","detOtpImageError":"Error reading image","detOtpImageErrorBody":"Sorry, we could not read the image format, please contact the app authors with error details.","detOtpImageReading":"Reading QR code...","detOtpQrError":"QR code scan error","detOtpQrErrorBody":"Sorry, we could not read the QR code, please try once again or contact the app authors with error details.","detOtpQrWrong":"Wrong QR code","detOtpQrWrongBody":"Your QR code was successfully scanned but it doesn\'t contain one-time code data.","detOtpField":"One-time code","detOtpClickToTouch":"Click to generate","detOtpGenerating":"Generating...","detOtpTouch":"Touch your {}","detLockField":"Lock this field, so its content isn\'t searchable and visible. Displaying the content requires explicitly clicking it.","detUnlockField":"Unlock this field, making its content searchable and visible immediately","detRevealField":"Reveal","detHideField":"Hide","detAutoTypeField":"Auto type","autoTypeEntryFields":"Entry fields","autoTypeModifiers":"Modifier keys","autoTypeKeys":"Keys","autoTypeLink":"more...","autoTypeError":"Auto-type error","autoTypeErrorGeneric":"There was an error performing auto-type: {}","autoTypeErrorGlobal":"To use a system-wide shortcut, please focus the app where you want to type your password","autoTypeErrorNotInstalled":"{} is not installed","autoTypeHeader":"Auto-Type: Select","autoTypeMsgNoWindow":"We were unable to get active window title, start typing to search","autoTypeMsgMatchedByWindow":"Select a password for {}","autoTypeNoMatches":"no matches","autoTypeSelectionHint":"Type the autotype sequence","autoTypeSelectionHintAction":"Only type the password","autoTypeSelectionHintOpt":"Only type the username","autoTypeSelectionHintShift":"Other fields","autoTypeSelectionOtp":"One-time code","appSecWarn":"Not Secure!","appSecWarnBody1":"You have loaded this app with an insecure connection. Someone may be watching you and stealing your passwords. We strongly advise you to stop, unless you clearly understand what you\'re doing.","appSecWarnBody2":"Yes, your database is encrypted but no one can guarantee that the app has not been modified on the way to you.","appSecWarnBtn":"I understand the risks, continue","appUnsavedWarn":"Unsaved changes!","appUnsavedWarnBody":"You have unsaved files, if you close the app, changes will be lost.","appDontExitBtn":"Don\'t exit","appCannotLockAutoInit":"The app cannot be locked because autosave is disabled.","appCannotLock":"You have unsaved changes that will be lost. Continue?","appAutoSave":"Save changes automatically","appSaveError":"Save Error","appSaveErrorBody":"Failed to auto-save file","appSaveErrorBodyMul":"Failed to auto-save files:","appSettingsError":"Error loading app","appSettingsErrorBody":"There was an error loading app settings. Please double check the app URL or contact your administrator.","appNotSupportedError":"Your browser doesn\'t support some important features we\'re using.","appTabWarn":"Too many tabs","appTabWarnBody":"KeeWeb cannot be used in two browser tabs simultaneously, please close this tab.","appRightsAlert":"Locking KeeWeb app","appRightsAlertBody1":"Your KeeWeb app is currently not guarded against unauthorized changes. We\'re asking you for permissions to make the app writable only for administrators.","appRightsAlertBody2":"Don\'t want to give permissions? You can do it yourself in Terminal","appBrowserAuthComplete":"Authentication is complete, you may close this tab now.","setGenTitle":"General Settings","setGenUpdate":"Update","setGenNewVersion":"New app version was released and downloaded","setGenReleaseNotes":"View release notes","setGenReloadToUpdate":"Reload to update","setGenUpdateManual":"A new version has been released. It will check for updates and install them automatically, but auto-upgrading from your version is not possible.","setGenDownloadUpdate":"Download update","setGenUpdateAuto":"Download and install automatically","setGenUpdateCheck":"Check but don\'t install","setGenNoUpdate":"Never check for updates","setGenUpdateChecking":"Checking for updates","setGenCheckUpdate":"Check for updates","setGenErrorChecking":"Error checking for updates","setGenLastCheckSuccess":"Last successful check was at {}","setGenLastCheckVer":"the latest version was {}","setGenCheckedAt":"Checked at","setGenLatestVer":"you are using the latest version","setGenNewVer":"new version {} available, released","setGenDownloadingUpdate":"Downloading update...","setGenExtractingUpdate":"Extracting update...","setGenCheckErr":"There was an error downloading new version","setGenNeverChecked":"Never checked for updates","setGenRestartToUpdate":"Restart the app to update","setGenDownloadAndRestart":"Download update and restart","setGenAppearance":"Appearance","setGenTheme":"Theme","setGenThemeFb":"Flat blue","setGenThemeDb":"Dark brown","setGenThemeWh":"White","setGenThemeTe":"Terminal","setGenThemeHc":"High contrast","setGenThemeSd":"Solarized dark","setGenThemeSl":"Solarized light","setGenThemeMacDark":"macOS Dark","setGenLocale":"Language","setGenLocOther":"other languages are available as plugins","setGenFontSize":"Font size","setGenFontSizeNormal":"Normal","setGenFontSizeLarge":"Large","setGenFontSizeLargest":"Largest","setGenTitlebarStyle":"Window style (requires restart)","setGenTitlebarStyleDefault":"Default","setGenTitlebarStyleHidden":"Custom title","setGenTitlebarStyleHiddenInset":"Custom title, draggable window","setGenShowSubgroups":"Show entries from all subgroups","setGenTableView":"Entries list table view","setGenColorfulIcons":"Colorful custom icons in the list","setGenUseMarkdown":"Markdown in notes","setGenUseGroupIconForEntries":"Automatically use group icon for new entries","setGenDirectAutotype":"If only one matching entry is found, select that one automatically for Autotype","setGenFunction":"Function","setGenAutoSyncOnClose":"Automatically save and sync on close","setGenAutoSyncTimer":"Automatically save and sync periodically","setGenAutoSyncTimerOff":"Disabled","setGenAutoSyncTimerInterval":"Every {} minute(s)","setGenRememberKeyFiles":"Remember key files","setGenNoRememberKeyFiles":"Don\'t remember","setGenRememberKeyFilesData":"Store in the internal app storage","setGenRememberKeyFilesPath":"Remember only path to key files","setGenLockInactive":"If the app is inactive","setGenNoAutoLock":"Don\'t auto-lock","setGenLockMinutes":"In {} minutes","setGenLockHour":"In an hour","setGenLockHours":"In {} hours","setGenLockDay":"In a day","setGenClearClip":"Clear clipboard after copy","setGenNoClear":"Don\'t clear","setGenClearSeconds":"In {} seconds","setGenClearMinute":"In a minute","setGenMinInstead":"Minimize the app instead of close","setGenLock":"Auto lock","setGenLockMinimize":"When the app is minimized","setGenLockCopy":"On password copy","setGenLockAutoType":"On auto-type","setGenLockOrSleep":"When the computer is locked or put to sleep","setGenStorage":"Storage","setGenStorageLogout":"Log out","setGenShowAdvanced":"Show advanced settings","setGenDevTools":"Show dev tools","setGenTryBeta":"Try beta version until restart","setGenTryBetaWarning":"Unsaved files","setGenTryBetaWarningBody":"Please save all files and click this button again","setGenShowAppLogs":"Show app logs","setGenReloadApp":"Reload the app","setGenFieldLabelDblClickAutoType":"Auto-type on double-clicking field labels","setFilePath":"File path","setFileStorage":"This file is loaded from {}.","setFileIntl":"This file is stored in the internal app storage","setFileLocalHint":"Want to work seamlessly with local files?","setFileDownloadApp":"Download a desktop app","setFileSave":"Save","setFileSaveTo":"Save to …","setFileClose":"Close","setFileSync":"Sync","setFileSyncVerb":"Sync","setFileSaveToXml":"XML","setFileSaveToHtml":"HTML","setFileLastSync":"Last sync","setFileLastSyncUnknown":"unknown","setFileSyncInProgress":"sync in progress","setFileSyncError":"Sync error","setFilePass":"Master password","setFileConfirmPass":"Confirm Master password","setFilePassChange":"to change your password, please type it in the Confirm field","setFilePassChanged":"your password was changed; leave the field blank to use the old password","setFilePassNotMatch":"passwords don\'t match, please type it again","setFileKeyFile":"Key file","setFileSelKeyFile":"Select a key file","setFileNames":"Names","setFileDefUser":"Default user","setFileEnableTrash":"Enable trash","setFileHistMode":"Entry history","setFileHistLimited":"Delete old history records automatically","setFileHistDisabled":"Don\'t save history","setFileHistUnlimited":"Keep history records forever","setFileHistLen":"History length, keep last records per entry","setFileHistSize":"History size, total MB per file","setFileBackups":"Backups","setFileBackupEnable":"Backup this file","setFileBackupPath":"Backup path","setFileBackupTime":"Make backups","setFileBackupNow":"Backup now","setFileBackupNowWorking":"Working...","setFileBackupError":"Backup error","setFileBackupErrorDescription":"Error writing backup file","setFileBackupErrorIsDir":"Backup path invalid","setFileBackupErrorIsDirDescription":"The backup path seems to point to a directory. Please specify a filename inside a directory instead.","setFileBackupOnSave":"Every time I save the file","setFileBackupDaily":"Daily","setFileBackupWeekly":"Weekly","setFileBackupMonthly":"Monthly","setFileBackupManually":"Manually, no auto-backups","setFileRounds":"Key encryption rounds","setFileKdfParams":"Key derivation function","setFileKdfParamsIter":"Iterations","setFileKdfParamsMem":"Memory, KB","setFileKdfParamsPar":"Parallelism","setFileKeyChangeForce":"Ask to change key after (days)","setFileUseKeyFile":"Use key file","setFileUseGenKeyFile":"Use the generated key file","setFileUseOldKeyFile":"Use the old key file","setFileGenKeyFile":"Generate a new key file","setFileDontUseKeyFile":"Don\'t use a key file","setFileEmptyPass":"Empty password","setFileEmptyPassBody":"Saving database with an empty password makes it completely unprotected. Do you really want to do it?","setFileSaveError":"Save error","setFileSaveErrorBody":"Error saving to file","setFileAlreadyExists":"Already exists","setFileAlreadyExistsBody":"File {} already exists. Overwrite it?","setFileUnsaved":"Unsaved changes","setFileUnsavedBody":"There are unsaved changes in this file","setFileCloseNoSave":"Close and lose changes","setFileDontClose":"Don\'t close","setFileFormatVersion":"File format","setFileExportRaw":"Exporting your passwords","setFileExportRawBody":"The exported file will contain your passwords, they will not be encrypted there. Would you like to proceed?","setFileDeviceIntro":"One-time codes from this {} will be displayed in the app.","setFileDeviceSettings":"Settings","setFileYubiKey":"YubiKey","setFileDontUseYubiKey":"Don\'t use a YubiKey","setFileRefreshYubiKeyList":"Refresh the list","setFileYubiKeyHeader":"YubiKey","setFileYubiKeyBody":"Using a YubiKey as a part of master key is dangerous and you may lose access to your passwords if something goes wrong. Have you made a backup of your file before changing this setting?","setFileYubiKeyErrorEmptyMac":"Looks like there\'s a YubiKey plugged in, but it\'s not visible. KeeWeb must be added to the Input Monitoring section of security settings to access YubiKeys.","setShTitle":"Shortcuts","setShShowAll":"show all items","setShColors":"show items with colors","setShTrash":"go to Trash","setShFind":"search, or just start typing","setShClearSearch":"clear search","setShCopyPass":"copy password or selected field","setShCopyUser":"copy user","setShCopyUrl":"copy website","setShAutoType":"auto-type selected entry","setShPrev":"go to previous item","setShNext":"go to next item","setShCreateEntry":"create entry","setShOpen":"open / new","setShSave":"save all files","setShGen":"generate password","setShSet":"app settings","setShCopyPassGlobal":"copy password","setShCopyOtp":"copy OTP","setShAutoTypeGlobal":"auto-type","setShCopyPassOnly":"copy password","setShRestoreApp":"open {}","setShGlobal":"These system-wide shortcuts work when the app is running in background. You can click them to select your own shortcut.","setShLock":"lock database","setShEdit":"Press a new key combination to set it as shortcut","setPlInstallTitle":"Install new plugins","setPlInstallDesc":"KeeWeb plugins add features, themes, and languages to KeeWeb. Plugins run with the same privileges as KeeWeb, they can access and manage all your passwords. Never install plugins you don\'t trust.","setPlInstallLabel":"Plugin URL","setPlInstallBtn":"Install","setPlInstallBtnProgress":"Installing","setPlUninstallBtn":"Uninstall","setPlDisableBtn":"Disable","setPlEnableBtn":"Enable","setPlUpdateBtn":"Update","setPlLocaleBtn":"Switch to this language","setPlThemeBtn":"Switch to this theme","setPlJs":"code","setPlCss":"styles","setPlLoc":"language","setPlCreatedBy":"Created by {}","setPlLoadTime":"took {} to load","setPlLastUpdate":"Last check for updates","setPlLoadError":"error loading plugin","setPlGalleryLoading":"Loading plugins, please wait a bit","setPlGalleryLoadError":"Error loading plugins","setPlInstallUrlTitle":"Add plugin from URL","setPlInstallUrlDesc":"If the plugin is not in the gallery, you can install it manually from URL","setPlOfficial":"Official KeeWeb plugin","setPlSearch":"Search for plugins","setPlDevelop":"Want to develop your own plugins?","setPlDevelopStart":"Start here","setPlTranslate":"Or you can {}","setPlTranslateLink":"translate the app to your language","setPlAutoUpdate":"Update automatically","setPlLoadGallery":"Load plugin gallery","setDevicesTitle":"Devices","setDevicesEnableUsb":"Enable interaction with USB devices","setDevicesYubiKeyIntro":"It\'s recommended to read {} before using a YubiKey.","setDevicesYubiKeyIntroLink":"this document","setDevicesYubiKeyToolsDesc":"To be able to use YubiKey in this mode, you need to install a tool called {}.","setDevicesYubiKeyToolsDesc2":"{} to get more information about this tool.","setDevicesYubiKeyToolsDescLink":"Click here","setDevicesYubiKeyToolsStatusChecking":"Checking if {} is installed","setDevicesYubiKeyToolsStatusOk":"{} is installed","setDevicesYubiKeyToolsStatusError":"{} is not installed or not working","setDevicesYubiKeyOtpTitle":"One-time codes","setDevicesYubiKeyOtpDesc":"YubiKey can be used to generate one-time codes for different services.","setDevicesYubiKeyOtpShowIcon":"Show the icon on the start screen","setDevicesYubiKeyOtpAutoOpen":"Automatically load one-time codes when there are open files","setDevicesYubiKeyOtpMatchEntries":"Show matching one-time codes in entries","setDevicesYubiKeyChalRespTitle":"Challenge-Response","setDevicesYubiKeyChalRespDesc":"It\'s also possible to use a YubiKey in challenge-response mode, so that a piece of private key used to encrypt files resides on a YubiKey.","setDevicesYubiKeyChalRespShow":"Show the option to use a YubiKey when opening files","setDevicesYubiKeyStuckWorkaround":"Reconnect the YubiKey if it seems to be stuck during loading","setDevicesYubiKeyRememberChalResp":"Remember challenge-response while the app is open","setAboutTitle":"About","setAboutBuilt":"This app is built with these awesome tools","setAboutLic":"License","setAboutLicComment":"The app itself and all included components which are not in public domain are licensed under MIT license","setAboutFirst":"This is an open-source app created by {}","setAboutSecond":"and licensed under {}.","setAboutSource":"The source code and issues are on {}.","setHelpFormat":"File Format","setHelpFormatBody":"This is a port of {} app built with web technologies. It understands files in KeePass format (kdbx). You can create such files (password databases) either in KeePass or in this app. The file format is 100% compatible and should be understood by both apps.","setHelpProblems":"Need some help?","setHelpProblems1":"If something goes wrong, please {}","setHelpProblems2":"or {}","setHelpOpenIssue":"open an issue on GitHub","setHelpContactLink":"contact the developer directly","setHelpAppInfo":"App information","setHelpOtherPlatforms":"Other platforms","setHelpDesktopApps":"Desktop apps","setHelpWebApp":"Web app","setHelpUpdates":"Updates","setHelpTwitter":"App twitter","dropboxSetupDesc":"Some configuration is required to use Dropbox in a self-hosted app. Please create your own Dropbox app and fill in its key below.","dropboxAppKey":"Dropbox app key","dropboxAppKeyDesc":"Copy the key from your Dropbox app (Developer settings)","dropboxAppKeyHint":"your app key","dropboxAppSecret":"Dropbox app secret","dropboxAppSecretDesc":"The secret can be found next to the app key","dropboxFolder":"App folder","dropboxFolderDesc":"If your app is linked to entire Dropbox (not app folder), set the folder with your kdbx files here","dropboxFolderSettingsDesc":"Select any folder in your Dropbox where files will be stored (root folder by default)","dropboxFolderPlaceholder":"default folder","dropboxLink":"Link the app to","dropboxLinkApp":"App folder (Apps/KeeWeb)","dropboxLinkFull":"Full Dropbox or any folder","dropboxLinkCustom":"Own Dropbox app","gdriveSharedWithMe":"Shared with me","webdavSaveMethod":"Save method","webdavSaveMove":"Upload a temporary file and move","webdavSavePut":"Overwrite kdbx file with PUT","launcherSave":"Save Passwords Database","launcherFileFilter":"KeePass files","authPopupRequired":"Pop-ups are blocked","authPopupRequiredBody":"Please allow pop-ups in your browser or try again.","exportFileInfo":"File information","exportHtmlName":"Name","exportHtmlDate":"Export date","exportGenerator":"Software","exportDescription":"This file is generated with {}.","importCsvTitle":"Import from CSV","importCsvRun":"Import","importIgnoreField":"Ignore","importTo":"Entries will be imported to","importNewFile":"New file","yubiKeyStuckError":"The YubiKey seems to be stuck, auto-repair can be enabled in app settings.","yubiKeyNoKeyHeader":"YubiKey required","yubiKeyNoKeyBody":"Please insert your YubiKey with serial number {}","yubiKeySlot":"slot","yubiKeyTouchRequestedHeader":"Touch your YubiKey","yubiKeyTouchRequestedBody":"Please touch your YubiKey with serial number {}","yubiKeyDisabledErrorHeader":"USB is disabled","yubiKeyDisabledErrorBody":"YubiKey is required to open this file, please enable USB devices in settings."}')},function(e,t,n){"use strict";n.r(t),n.d(t,"SearchResultCollection",(function(){return o}));var s=n(28),i=n(18),l=n(32);class o extends s.Collection{constructor(e,t){super(e),this.comparators={none:null,title:l.Comparators.stringComparator("title",!0),"-title":l.Comparators.stringComparator("title",!1),website:l.Comparators.stringComparator("url",!0),"-website":l.Comparators.stringComparator("url",!1),user:l.Comparators.stringComparator("user",!0),"-user":l.Comparators.stringComparator("user",!1),created:l.Comparators.dateComparator("created",!0),"-created":l.Comparators.dateComparator("created",!1),updated:l.Comparators.dateComparator("updated",!0),"-updated":l.Comparators.dateComparator("updated",!1),"-attachments":(e,t)=>this.attachmentSortVal(e).localeCompare(this.attachmentSortVal(t)),"-rank":l.Comparators.rankComparator().bind(this)},this.defaultComparator="title",this.entryFilter=null;const n=t&&t.comparator||this.defaultComparator;this.comparator=this.comparators[n]}sortEntries(e,t){this.entryFilter=t,this.comparator=this.comparators[e]||this.comparators[this.defaultComparator],this.sort()}attachmentSortVal(e){const t=e.attachments;let n=t.length?String.fromCharCode(64+t.length):"Z";return t[0]&&(n+=t[0].title),n}}o.model=i.Model},function(e,t,n){"use strict";n.r(t),n.d(t,"IconMap",(function(){return s}));const s=["key","globe","exclamation-triangle","server","thumb-tack","comments-o","puzzle-piece","pencil-square-o","plug","newspaper-o","paperclip","camera","wifi","link","battery-three-quarters","barcode","certificate","bullseye","desktop","envelope-o","cog","clipboard","paper-plane-o","television","bolt","inbox","floppy-o","hdd-o","dot-circle-o","expeditedssl","terminal","print","map-signs","flag-checkered","wrench","laptop","archive","credit-card","windows","clock-o","search","flask","gamepad","trash-o","sticky-note-o","ban","question-circle","cube","folder-o","folder-open-o","database","unlock-alt","lock","check","pencil","picture-o","book","list-alt","user-secret","cutlery","home","star-o","linux","map-pin","apple","wikipedia-w","usd","calendar","mobile"]},function(e,t,n){"use strict";n.r(t),n.d(t,"IconUrlFormat",(function(){return l}));var s=n(4),i=n.n(s);const l={toDataUrl:e=>e?"data:image/png;base64,"+i.a.ByteUtils.bytesToBase64(e):null}},function(e,t,n){"use strict";n.r(t),n.d(t,"GroupCollection",(function(){return l}));var s=n(28),i=n(50);class l extends s.Collection{}l.model=i.GroupModel},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeNativeHelper",(function(){return l}));var s=n(2);const i=new(n(9).Logger)("auto-type"),l={getHelperPath(){if(this._helperPath)return this._helperPath;const e="win32"===process.platform?".exe":"",t=`helper/${process.platform}/KeeWebHelper${e}`,n=s.Launcher.getAppPath(t);return s.Launcher.ensureRunnable(n),i.debug("Using auto-type helper",n),this._helperPath=n,n}}},function(e,t,n){"use strict";n.r(t),n.d(t,"Resizable",(function(){return i}));var s=n(1);const i={listenDrag(e){this.listenTo(e,"dragstart",this.dragStart),this.listenTo(e,"drag",this.drag),this.listenTo(e,"autosize",this.autoSize)},dragStart(e){this._dragInfo=this.getDragInfo(e.coord)},drag(e){const t=this._dragInfo;let n=t.startSize+e.offset;n=Math.max(t.min,Math.min(t.max,n)),this.$el[t.prop](n),this.emit("view-resize",n),s.Events.emit("page-geometry",{source:"resizable"})},autoSize(e){const t=this.getDragInfo(e.coord);void 0!==t.auto?this.$el.css(t.prop,t.auto):this.$el.css(t.prop,"auto"),this.fixSize(t),this.emit("view-resize",null),s.Events.emit("page-geometry",{source:"resizable"})},fixSize(e){const t=this.$el[e.prop]();Math.max(e.min,Math.min(e.max,t))!==t&&this.$el[e.prop](t)},getDragInfo(e){const t="x"===e?"Width":"Height",n=t.toLowerCase(),s=this.getSizeProp("min"+t),i=this.getSizeProp("max"+t),l=this.getSizeProp("auto"+t)||"auto";return{startSize:this.$el[n](),prop:n,min:s,max:i,auto:l}},getSizeProp(e){const t=this[e];return"function"==typeof t?t.call(this):t}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"GeneratorView",(function(){return m}));var s=n(7),i=n(1),l=n(35),o=n(40),a=n(3),r=n(74),c=n(52),u=n(0),d=n(24),p=n(237),h=n.n(p);class m extends s.View{constructor(t){super(t),this.parent="body",this.template=h.a,this.events={click:"click","mousedown .gen__length-range":"generate","input .gen__length-range":"lengthChange","change .gen__length-range":"lengthChange","change .gen__check input[type=checkbox]":"checkChange","change .gen__check-hide":"hideChange","click .gen__btn-ok":"btnOkClick","change .gen__sel-tpl":"presetChange","click .gen__btn-refresh":"newPass"},this.valuesMap=[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,48,64],this.presets=null,this.preset=null,this.createPresets();const n=this.preset;this.gen=Object.assign({},this.presets.find(e=>e.name===n)),this.hide=a.AppSettingsModel.generatorHidePassword,e("body").one("click",this.remove.bind(this)),this.listenTo(i.Events,"lock-workspace",this.remove.bind(this))}render(){const e=document.queryCommandSupported("copy"),t=this.model.copy?e?u.Locale.alertCopy:u.Locale.alertClose:u.Locale.alertOk;super.render({btnTitle:t,showToggleButton:this.model.copy,opt:this.gen,hide:this.hide,presets:this.presets,preset:this.preset,showTemplateEditor:!this.model.noTemplateEditor}),this.resultEl=this.$el.find(".gen__result"),this.$el.css(this.model.pos),this.generate()}createPresets(){if(this.presets=l.GeneratorPresets.enabled,!this.model.password||this.model.password.isProtected&&!this.model.password.byteLength){const e=this.presets.filter(e=>e.default)[0]||this.presets[0];this.preset=e.name}else{const e={name:"Derived",title:u.Locale.genPresetDerived};Object.assign(e,r.PasswordGenerator.deriveOpts(this.model.password)),this.presets.splice(0,0,e),this.preset="Derived"}this.presets.forEach(e=>{e.pseudoLength=this.lengthToPseudoValue(e.length)})}lengthToPseudoValue(e){for(let t=0;t<this.valuesMap.length;t++)if(this.valuesMap[t]>=e)return t;return this.valuesMap.length-1}showPassword(){this.hide&&!this.model.copy?this.resultEl.text(c.PasswordPresenter.present(this.password.length)):this.resultEl.text(this.password)}click(e){e.stopPropagation()}lengthChange(e){const t=this.valuesMap[e.target.value];t!==this.gen.length&&(this.gen.length=t,this.$el.find(".gen__length-range-val").text(t),this.optionChanged("length"),this.generate())}checkChange(t){const n=e(t.target).data("id");n&&(this.gen[n]=t.target.checked),this.optionChanged(n),this.generate()}optionChanged(e){"Custom"===this.preset||"Pronounceable"===this.preset&&["length","lower","upper"].indexOf(e)>=0||(this.preset=this.gen.name="Custom",this.$el.find(".gen__sel-tpl").val(""))}generate(){this.password=r.PasswordGenerator.generate(this.gen),this.showPassword();const e=this.password.length>32;this.resultEl.toggleClass("gen__result--long-pass",e)}hideChange(e){this.hide=e.target.checked,a.AppSettingsModel.generatorHidePassword=this.hide;const t=this.$el.find(".gen__check-hide-label");d.Tip.updateTip(t[0],{title:this.hide?u.Locale.genShowPass:u.Locale.genHidePass}),this.showPassword()}btnOkClick(){o.CopyPaste.simpleCopy||o.CopyPaste.createHiddenInput(this.password),o.CopyPaste.copy(this.password),this.emit("result",this.password),this.remove()}presetChange(e){const t=e.target.value;if("..."===t)return i.Events.emit("edit-generator-presets"),void this.remove();this.preset=t;const n=this.presets.find(e=>e.name===t);this.gen=Object.assign({},n),this.render()}newPass(){this.generate()}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"Colors",(function(){return s}));const s={AllColors:["yellow","green","red","orange","blue","violet"],ColorsValues:{yellow:"ffff00",green:"00ff00",red:"ff0000",orange:"ff8800",blue:"0000ff",violet:"ff00ff"},BgColors:{yellow:"ffff88",green:"88ff88",red:"ff8888",orange:"ffcc88",blue:"8888ff",violet:"ff88ff"}}},function(e,t,n){"use strict";n.r(t),n.d(t,"PasswordGenerator",(function(){return r})),n.d(t,"CharRanges",(function(){return o}));var s=n(4),i=n.n(s),l=n(161);const o={upper:"ABCDEFGHJKLMNPQRSTUVWXYZ",lower:"abcdefghijkmnpqrstuvwxyz",digits:"123456789",special:"!@#$%^&*_+-=,./?;:`\"~'\\",brackets:"(){}[]<>",high:"¡¢£¤¥¦§©ª«¬®¯°±²³´µ¶¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþ",ambiguous:"O0oIl"},a={A:o.upper,a:o.lower,1:o.digits,"*":o.special,"[":o.brackets,Ä:o.high,0:o.ambiguous},r={generate(e){if(!e||"number"!=typeof e.length||e.length<0)return"";if("Pronounceable"===e.name)return this.generatePronounceable(e);const t=Object.keys(o).filter(t=>e[t]).map(e=>o[e]);if(e.include&&e.include.length&&t.push(e.include),!t.length)return"";const n=Object.assign({},a,{X:t.join(""),I:e.include||""}),s=e.pattern||"X",l=i.a.Random.getBytes(e.length),r=[];for(let t=0;t<e.length;t++){const e=Math.round(1e3*Math.random())+l[t],i=s[t%s.length],o=n[i],a=o?o[e%o.length]:i;r.push(a)}return r.join("")},generatePronounceable(e){const t=l.phonetic.generate({length:e.length});let n="";const s=[];let i;if(e.upper)for(i=0;i<t.length;i+=8)s.push(Math.floor(Math.random()*e.length));for(i=0;i<t.length;i++){let e=t[i];s.indexOf(i)>=0&&(e=e.toUpperCase()),n+=e}return n.substr(0,e.length)},deriveOpts(e){const t={};let n=0;if(e){const s=o;e.forEachChar(e=>{n++,e=String.fromCharCode(e);for(const[n,i]of Object.entries(s))i.indexOf(e)>=0&&(t[n]=!0)})}return t.length=n,t}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FieldViewCustom",(function(){return u}));var s=n(4),i=n.n(s),l=n(5),o=n(0),a=n(24),r=n(45),c=n(33);class u extends c.FieldViewText{constructor(e,t){super(e,t),this.events=Object.assign({},this.events,{"mousedown .details__field-label":"fieldLabelMousedown"})}startEdit(){super.startEdit(),this.$el.addClass("details__field--can-edit-title"),void 0===this.isProtected&&(this.isProtected=this.value instanceof i.a.ProtectedValue),this.$el.toggleClass("details__field--protected",this.isProtected),e("<div/>").addClass("details__field-value-btn details__field-value-btn-protect").appendTo(this.valueEl).mousedown(this.protectBtnClick.bind(this));let t=o.Locale.detLockField;this.isProtected&&(t=o.Locale.detUnlockField),new a.Tip(e(this.valueEl).find(".details__field-value-btn"),{title:t}).init()}endEdit(t,n){this.$el.removeClass("details__field--can-edit-title"),n=Object.assign({},n),(this.model.titleChanged||this.model.newField)&&(n.newField=this.model.title),this.editing&&(delete this.input,"string"==typeof t&&(t=this.isProtected?i.a.ProtectedValue.fromString(t):e.trim(t)),r.FieldView.prototype.endEdit.call(this,t,n),this.model.titleChanged&&delete this.model.titleChanged)}startEditTitle(t){const n=t?"":this.model.title||"";this.labelInput=e("<input/>"),this.labelEl.empty().append(this.labelInput),this.labelInput.attr({autocomplete:"off",spellcheck:"false"}).val(n).focus()[0].setSelectionRange(n.length,n.length),this.labelInput.bind({input:this.fieldLabelInput.bind(this),keydown:this.fieldLabelKeydown.bind(this),keyup:this.fieldLabelKeyup.bind(this),keypress:this.fieldLabelInput.bind(this),mousedown:this.fieldLabelInputClick.bind(this),click:this.fieldLabelInputClick.bind(this)})}endEditTitle(e){e&&e!==this.model.title?(this.model.title=e,this.model.titleChanged=!0):""===e&&this.emit("change",{field:"$"+this.model.title,val:""}),this.$el.find(".details__field-label").text(this.model.title),delete this.labelInput,this.editing&&this.input&&this.input.focus()}fieldLabelClick(e){e.stopImmediatePropagation(),this.model.newField?this.startEditTitle(!0):this.editing?this.startEditTitle():super.fieldLabelClick.call(this,e)}fieldLabelMousedown(e){this.editing&&e.stopPropagation()}fieldValueBlur(){this.labelInput&&this.endEditTitle(this.labelInput.val()),this.input&&this.endEdit(this.input.val())}fieldLabelInput(e){e.stopPropagation()}fieldLabelInputClick(e){e.stopPropagation()}fieldLabelKeydown(e){e.stopPropagation();const t=e.keyCode||e.which;t===l.Keys.DOM_VK_ESCAPE?this.endEditTitle():t===l.Keys.DOM_VK_TAB&&(e.preventDefault(),this.endEditTitle(e.target.value))}fieldLabelKeyup(e){(e.keyCode||e.which)===l.Keys.DOM_VK_RETURN&&this.endEditTitle(e.target.value)}fieldValueInputClick(){this.labelInput&&this.endEditTitle(this.labelInput.val()),super.fieldValueInputClick.call(this)}protectBtnClick(e){e.stopPropagation(),this.isProtected=!this.isProtected,this.$el.toggleClass("details__field--protected",this.isProtected),this.labelInput&&this.endEditTitle(this.labelInput.val()),setTimeout(()=>this.input.focus())}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"FileModel",(function(){return v}));var s=n(4),i=n.n(s),l=n(226),o=n.n(l),a=n(18),r=n(1),c=n(69),u=n(91),d=n(50),p=n(3),h=n(68),m=n(9),f=n(14),g=n(86);const y=new m.Logger("file");class v extends a.Model{constructor(e){super(Object.assign({entryMap:{},groupMap:{}},e))}open(e,t,n,s){try{const l=g.ChalRespCalculator.build(this.chalResp),o=new i.a.Credentials(e,n,l),a=y.ts();i.a.Kdbx.load(t,o).then(l=>{this.db=l,this.readModel(),this.setOpenFile({passwordLength:e?e.textLength:0}),n&&i.a.ByteUtils.zeroBuffer(n),this.fixVersion(),y.info("Opened file "+this.name+": "+y.ts(a)+", "+this.kdfArgsToString(l.header)+", "+Math.round(t.byteLength/1024)+" kB"),s()}).catch(l=>{if(l.code===i.a.Consts.ErrorCodes.InvalidKey&&e&&!e.byteLength)return y.info("Error opening file with empty password, try to open with null password"),this.open(null,t,n,s);y.error("Error opening file",l.code,l.message,l),s(l)})}catch(e){y.error("Error opening file",e,e.code,e.message,e),s(e)}}kdfArgsToString(e){return e.kdfParameters?e.kdfParameters.keys().map(t=>{const n=e.kdfParameters.get(t);if(!(n instanceof ArrayBuffer))return t+"="+n}).filter(e=>e).join("&"):e.keyEncryptionRounds?e.keyEncryptionRounds+" rounds":"?"}create(e){const t=i.a.ProtectedValue.fromString(""),n=new i.a.Credentials(t);this.db=i.a.Kdbx.create(n,e),this.name=e,this.readModel(),this.set({active:!0,created:!0,name:e})}importWithXml(e,t){try{const n=y.ts(),s=i.a.ProtectedValue.fromString(""),l=new i.a.Credentials(s);i.a.Kdbx.loadXml(e,l).then(e=>{this.db=e,this.readModel(),this.set({active:!0,created:!0}),y.info("Imported file "+this.name+": "+y.ts(n)),t()}).catch(e=>{y.error("Error importing file",e.code,e.message,e),t(e)})}catch(e){y.error("Error importing file",e,e.code,e.message,e),t(e)}}openDemo(e){const t=i.a.ProtectedValue.fromString("demo"),n=new i.a.Credentials(t),s=i.a.ByteUtils.arrayToBuffer(i.a.ByteUtils.base64ToBytes(o.a));i.a.Kdbx.load(s,n).then(t=>{this.db=t,this.name="Demo",this.readModel(),this.setOpenFile({passwordLength:4,demo:!0}),e()})}setOpenFile(e){this.set(Object.assign({},e,{active:!0,oldKeyFileName:this.keyFileName,oldPasswordLength:e.passwordLength,passwordChanged:!1,keyFileChanged:!1})),this.oldPasswordHash=this.db.credentials.passwordHash,this.oldKeyFileHash=this.db.credentials.keyFileHash,this.oldKeyChangeDate=this.db.meta.keyChanged}readModel(){const e=new c.GroupCollection;this.set({uuid:this.db.getDefaultGroup().uuid.toString(),groups:e,formatVersion:this.db.header.versionMajor,defaultUser:this.db.meta.defaultUser,recycleBinEnabled:this.db.meta.recycleBinEnabled,historyMaxItems:this.db.meta.historyMaxItems,historyMaxSize:this.db.meta.historyMaxSize,keyEncryptionRounds:this.db.header.keyEncryptionRounds,keyChangeForce:this.db.meta.keyChangeForce,kdfName:this.readKdfName(),kdfParameters:this.readKdfParams()},{silent:!0}),this.db.groups.forEach((function(t){let n=this.getGroup(this.subId(t.uuid.id));n?n.setGroup(t,this):n=d.GroupModel.fromGroup(t,this),e.push(n)}),this),this.buildObjectMap(),this.resolveFieldReferences()}readKdfName(){if(4===this.db.header.versionMajor&&this.db.header.kdfParameters){let e=this.db.header.kdfParameters.get("$UUID");if(e)switch(e=i.a.ByteUtils.bytesToBase64(e),e){case i.a.Consts.KdfId.Argon2:return"Argon2";case i.a.Consts.KdfId.Aes:return"Aes"}return"Unknown"}return"Aes"}readKdfParams(){const e=this.db.header.kdfParameters;if(!e)return;let t=e.get("$UUID");if(t)switch(t=i.a.ByteUtils.bytesToBase64(t),t){case i.a.Consts.KdfId.Argon2:return{parallelism:e.get("P").valueOf(),iterations:e.get("I").valueOf(),memory:e.get("M").valueOf()};case i.a.Consts.KdfId.Aes:return{rounds:e.get("R").valueOf()};default:return}}subId(e){return this.id+":"+e}buildObjectMap(){const e={},t={};this.forEachGroup(n=>{t[n.id]=n,n.forEachOwnEntry(null,t=>{e[t.id]=t})},{includeDisabled:!0}),this.entryMap=e,this.groupMap=t}resolveFieldReferences(){const e=this.entryMap;Object.keys(e).forEach(t=>{e[t].resolveFieldReferences()})}fixVersion(){"KdbxWeb"===this.db.meta.generator&&4===this.db.header.versionMajor&&1===this.db.header.versionMinor&&(this.db.header.versionMinor=0,y.info("Fixed file version: 4.1 => 4.0"))}reload(){this.buildObjectMap(),this.readModel(),this.emit("reload",this)}mergeOrUpdate(e,t,n){let s,l=Promise.resolve();t?(s=new i.a.Credentials(i.a.ProtectedValue.fromString("")),l=s.ready.then(()=>{const e=[];return t.password?e.push(s.setPassword(t.password)):s.passwordHash=this.db.credentials.passwordHash,t.keyFileName&&(t.keyFileData?e.push(s.setKeyFile(t.keyFileData)):s.keyFileHash=this.db.credentials.keyFileHash),Promise.all(e)})):s=this.db.credentials,l.then(()=>{i.a.Kdbx.load(e,s).then(e=>{if(this.modified)try{t&&e.meta.keyChanged>this.db.meta.keyChanged&&(this.db.credentials=e.credentials,this.keyFileName=t.keyFileName||"",t.password&&(this.passwordLength=t.password.textLength)),this.db.merge(e)}catch(e){return y.error("File merge error",e),n(e)}else this.db=e;this.dirty=!0,this.reload(),n()}).catch(e=>{y.error("Error opening file to merge",e.code,e.message,e),n(e)})})}getLocalEditState(){return this.db.getLocalEditState()}setLocalEditState(e){this.db.setLocalEditState(e)}close(){this.set({keyFileName:"",passwordLength:0,modified:!1,dirty:!1,active:!1,created:!1,groups:null,passwordChanged:!1,keyFileChanged:!1,syncing:!1}),this.chalResp&&!p.AppSettingsModel.yubiKeyRememberChalResp&&g.ChalRespCalculator.clearCache(this.chalResp)}getEntry(e){return this.entryMap[e]}getGroup(e){return this.groupMap[e]}forEachEntry(e,t){let n=this;e.trash?n=this.getGroup(this.db.meta.recycleBinUuid?this.subId(this.db.meta.recycleBinUuid.id):null):e.group&&(n=this.getGroup(e.group)),n&&(n.forEachOwnEntry&&n.forEachOwnEntry(e,t),e.group&&!e.subGroups||n.forEachGroup(n=>{n.forEachOwnEntry(e,t)},e))}forEachGroup(e,t){this.groups.forEach(n=>{!1!==e(n)&&n.forEachGroup(e,t)})}getTrashGroup(){return this.db.meta.recycleBinEnabled?this.getGroup(this.subId(this.db.meta.recycleBinUuid.id)):null}getEntryTemplatesGroup(){return this.db.meta.entryTemplatesGroup?this.getGroup(this.subId(this.db.meta.entryTemplatesGroup.id)):null}createEntryTemplatesGroup(){const e=this.groups[0],t=d.GroupModel.newGroup(e,this);return t.setName("Templates"),this.db.meta.entryTemplatesGroup=t.group.uuid,this.reload(),t}setModified(){this.demo||(this.set({modified:!0,dirty:!0}),r.Events.emit("file-modified"))}getData(e){this.db.cleanup({historyRules:!0,customIcons:!0,binaries:!0}),this.db.cleanup({binaries:!0}),this.db.save().then(t=>{e(t)}).catch(t=>{y.error("Error saving file",this.name,t),e(void 0,t)})}getXml(e){this.db.saveXml(!0).then(t=>{e(t)})}getHtml(e){e(u.KdbxToHtml.convert(this.db,{name:this.name}))}getKeyFileHash(){const e=this.db.credentials.keyFileHash;return e?i.a.ByteUtils.bytesToBase64(e.getBinary()):null}forEachEntryTemplate(e){if(!this.db.meta.entryTemplatesGroup)return;const t=this.getGroup(this.subId(this.db.meta.entryTemplatesGroup.id));t&&t.forEachOwnEntry({},e)}setSyncProgress(){this.set({syncing:!0})}setSyncComplete(e,t,n){n||this.db.removeLocalEditState();const s=this.modified&&!!n;this.set({created:!1,path:e||this.path,storage:t||this.storage,modified:s,dirty:!!n&&this.dirty,syncing:!1,syncError:n}),this.passwordChanged&&this.fingerprint&&!n&&(this.fingerprint=null),this.open&&(this.setOpenFile({passwordLength:this.passwordLength}),this.forEachEntry({includeDisabled:!0},e=>e.setSaved()))}setPassword(e){this.db.credentials.setPassword(e),this.db.meta.keyChanged=new Date,this.set({passwordLength:e.textLength,passwordChanged:!0}),this.setModified()}resetPassword(){this.db.credentials.passwordHash=this.oldPasswordHash,this.db.credentials.keyFileHash===this.oldKeyFileHash&&(this.db.meta.keyChanged=this.oldKeyChangeDate),this.set({passwordLength:this.oldPasswordLength,passwordChanged:!1})}setKeyFile(e,t){this.db.credentials.setKeyFile(e),this.db.meta.keyChanged=new Date,this.set({keyFileName:t,keyFileChanged:!0}),this.setModified()}generateAndSetKeyFile(){const e=i.a.Credentials.createRandomKeyFile();return this.setKeyFile(e,"Generated"),e}resetKeyFile(){this.db.credentials.keyFileHash=this.oldKeyFileHash,this.db.credentials.passwordHash===this.oldPasswordHash&&(this.db.meta.keyChanged=this.oldKeyChangeDate),this.set({keyFileName:this.oldKeyFileName,keyFileChanged:!1})}removeKeyFile(){this.db.credentials.keyFileHash=null;const e=!!this.oldKeyFileHash;e||this.db.credentials.passwordHash!==this.oldPasswordHash||(this.db.meta.keyChanged=this.oldKeyChangeDate),this.set({keyFileName:"",keyFilePath:"",keyFileChanged:e}),r.Events.emit("unset-keyfile",this.id),this.setModified()}isKeyChangePending(e){if(!this.db.meta.keyChanged)return!1;const t=e?this.db.meta.keyChangeForce:this.db.meta.keyChangeRec;return!(!t||t<0||isNaN(t))&&(Date.now()-this.db.meta.keyChanged)/1e3/3600/24>t}setChallengeResponse(e){this.chalResp&&!p.AppSettingsModel.yubiKeyRememberChalResp&&g.ChalRespCalculator.clearCache(this.chalResp),this.db.credentials.setChallengeResponse(g.ChalRespCalculator.build(e)),this.db.meta.keyChanged=new Date,this.chalResp=e,this.setModified()}setKeyChange(e,t){(isNaN(t)||!t||t<0)&&(t=-1);const n=e?"keyChangeForce":"keyChangeRec";this.db.meta[n]=t,this[n]=t,this.setModified()}setName(e){this.db.meta.name=e,this.db.meta.nameChanged=new Date,this.name=e,this.groups[0].setName(e),this.setModified(),this.reload()}setDefaultUser(e){this.db.meta.defaultUser=e,this.db.meta.defaultUserChanged=new Date,this.defaultUser=e,this.setModified()}setRecycleBinEnabled(e){e=!!e,this.db.meta.recycleBinEnabled=e,e&&this.db.createRecycleBin(),this.recycleBinEnabled=e,this.setModified()}setHistoryMaxItems(e){this.db.meta.historyMaxItems=e,this.historyMaxItems=e,this.setModified()}setHistoryMaxSize(e){this.db.meta.historyMaxSize=e,this.historyMaxSize=e,this.setModified()}setKeyEncryptionRounds(e){this.db.header.keyEncryptionRounds=e,this.keyEncryptionRounds=e,this.setModified()}setKdfParameter(e,t){const n=i.a.VarDictionary.ValueType;switch(e){case"memory":this.db.header.kdfParameters.set("M",n.UInt64,i.a.Int64.from(t));break;case"iterations":this.db.header.kdfParameters.set("I",n.UInt64,i.a.Int64.from(t));break;case"parallelism":this.db.header.kdfParameters.set("P",n.UInt32,t);break;case"rounds":this.db.header.kdfParameters.set("R",n.UInt32,t);break;default:return}this.kdfParameters=this.readKdfParams(),this.setModified()}emptyTrash(){const e=this.getTrashGroup();if(e){let t=!1;e.getOwnSubGroups().slice().forEach((function(e){this.db.move(e,null),t=!0}),this),e.group.entries.slice().forEach((function(e){this.db.move(e,null),t=!0}),this),e.items.length=0,e.entries.length=0,t&&this.setModified()}}getCustomIcons(){return Object(f.mapObject)(this.db.meta.customIcons,e=>h.IconUrlFormat.toDataUrl(e))}addCustomIcon(e){const t=i.a.KdbxUuid.random();return this.db.meta.customIcons[t]=i.a.ByteUtils.arrayToBuffer(i.a.ByteUtils.base64ToBytes(e)),t.toString()}renameTag(e,t){this.forEachEntry({},n=>n.renameTag(e,t))}setFormatVersion(e){this.db.setVersion(e),this.setModified(),this.readModel()}setKdf(e){if(!this.db.header.kdfParameters)throw new Error("Cannot set KDF on this version");switch(e){case"Aes":this.db.setKdf(i.a.Consts.KdfId.Aes);break;case"Argon2":this.db.setKdf(i.a.Consts.KdfId.Argon2);break;default:throw new Error("Bad KDF name")}this.setModified(),this.readModel()}static createKeyFileWithHash(e){return i.a.Credentials.createKeyFileWithHash(e)}}v.defineModelProperties({id:"",uuid:"",name:"",db:null,entryMap:null,groupMap:null,keyFileName:"",keyFilePath:null,chalResp:null,passwordLength:0,path:"",opts:null,storage:null,modified:!1,dirty:!1,active:!1,created:!1,demo:!1,groups:null,oldPasswordLength:0,oldKeyFileName:"",passwordChanged:!1,keyFileChanged:!1,keyChangeForce:-1,syncing:!1,syncError:null,syncDate:null,backup:null,formatVersion:null,defaultUser:null,recycleBinEnabled:null,historyMaxItems:null,historyMaxSize:null,keyEncryptionRounds:null,kdfName:null,kdfParameters:null,fingerprint:null,oldPasswordHash:null,oldKeyFileHash:null,oldKeyChangeDate:null})},function(e,t,n){"use strict";n.r(t),n.d(t,"YubiKeyVendorId",(function(){return s})),n.d(t,"YubiKeyProductIds",(function(){return i})),n.d(t,"YubiKeyChallengeSize",(function(){return l}));const s=4176,i={Gen1:[16],NEO:[272,274,275,276,277,278],YK4:[1025,1026,1027,1028,1029,1030,1031]},l=64},,,function(e,t,n){"use strict";n.r(t),n.d(t,"IoBrowserCache",(function(){return i}));const s=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB,i=function(e){this.db=null,this.cacheName=e.cacheName,this.logger=e.logger};Object.assign(i.prototype,{initDb(e){if(this.db)return e&&e();try{const t=s.open(this.cacheName);t.onerror=t=>{this.logger.error("Error opening indexed db",t),e&&e(t)},t.onsuccess=t=>{this.db=t.target.result,e&&e()},t.onupgradeneeded=e=>{e.target.result.createObjectStore("files")}}catch(t){this.logger.error("Error opening indexed db",t),e&&e(t)}},save(e,t,n){this.logger.debug("Save",e),this.initDb(s=>{if(s)return n&&n(s);try{const s=this.logger.ts(),i=this.db.transaction(["files"],"readwrite").objectStore("files").put(t,e);i.onsuccess=()=>{this.logger.debug("Saved",e,this.logger.ts(s)),n&&n()},i.onerror=()=>{this.logger.error("Error saving to cache",e,i.error),n&&n(i.error)}}catch(t){this.logger.error("Error saving to cache",e,t),n&&n(t)}})},load(e,t){this.logger.debug("Load",e),this.initDb(n=>{if(n)return t&&t(n,null);try{const n=this.logger.ts(),s=this.db.transaction(["files"],"readonly").objectStore("files").get(e);s.onsuccess=()=>{this.logger.debug("Loaded",e,this.logger.ts(n)),t&&t(null,s.result)},s.onerror=()=>{this.logger.error("Error loading from cache",e,s.error),t&&t(s.error)}}catch(n){this.logger.error("Error loading from cache",e,n),t&&t(n,null)}})},remove(e,t){this.logger.debug("Remove",e),this.initDb(n=>{if(n)return t&&t(n);try{const n=this.logger.ts(),s=this.db.transaction(["files"],"readwrite").objectStore("files").delete(e);s.onsuccess=()=>{this.logger.debug("Removed",e,this.logger.ts(n)),t&&t()},s.onerror=()=>{this.logger.error("Error removing from cache",e,s.error),t&&t(s.error)}}catch(n){this.logger.error("Error removing from cache",e,n),t&&t(n)}})}})},function(e,t,n){"use strict";n.r(t),n.d(t,"BuiltInFields",(function(){return s}));const s=["Title","Password","UserName","URL","Notes","TOTP Seed","TOTP Settings","_etm_template_uuid"]},function(e,t,n){"use strict";n.r(t),n.d(t,"SecureInput",(function(){return l}));var s=n(4),i=n.n(s);const l=function(){this.el=null,this.minChar=5120+Math.round(100*Math.random()),this.maxLen=1024,this.length=0,this.pseudoValue="",this.salt=new Uint32Array(0)};l.prototype.setElement=function(e){this.el=e,this.el.val(this.pseudoValue),this.el.on("input",this._input.bind(this))},l.prototype.reset=function(){if(this.el=null,this.length=0,this.pseudoValue="",this.salt)for(let e=0;e<this.salt.length;e++)this.salt[e]=0;this.salt=new Uint32Array(0)},l.prototype._input=function(){const e=this.el[0].selectionStart,t=this.el.val();let n="";const s=new Uint32Array(this.maxLen);let i=0,l=0;for(;i<t.length;){const e=t.charCodeAt(i),o=this.pseudoValue.charCodeAt(l),a=this._isSpecialChar(e);o===e?(n+=this._getChar(n.length),s[n.length-1]=o^this.salt[l]^n.charCodeAt(n.length-1),l++,i++):a?l++:(n+=this._getChar(n.length),s[n.length-1]=n.charCodeAt(n.length-1)^e,i++)}this.length=n.length,this.pseudoValue=n,this.salt=s,this.el.val(n),this.el[0].selectionStart=e,this.el[0].selectionEnd=e},l.prototype._getChar=function(e){return String.fromCharCode(this.minChar+e)},l.prototype._isSpecialChar=function(e){return e>=this.minChar&&e<=this.minChar+this.maxLen},Object.defineProperty(l.prototype,"value",{enumerable:!0,get(){const e=this.pseudoValue,t=this.salt,n=e.length;let s=0;const l=new Uint8Array(4*n),o=i.a.Random.getBytes(4*n);let a,r;for(let c=0;c<n;c++){a=String.fromCharCode(e.charCodeAt(c)^t[c]),r=i.a.ByteUtils.stringToBytes(a);for(let e=0;e<r.length;e++)l[s]=r[e]^o[s],s++}return new i.a.ProtectedValue(l.buffer.slice(0,s),o.buffer.slice(0,s))}})},function(e,t,n){"use strict";n.r(t),n.d(t,"InputFx",(function(){return s}));const s={shake(e){e.addClass("input-shake"),setTimeout(()=>e.removeClass("input-shake"),1e3)}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"IconSelectView",(function(){return c}));var s=n(7),i=n(67),l=n(9),o=n(240),a=n.n(o);const r=new l.Logger("icon-select-view");class c extends s.View{constructor(...e){super(...e),this.template=a.a,this.events={"click .icon-select__icon":"iconClick","click .icon-select__icon-download":"downloadIcon","click .icon-select__icon-select":"selectIcon","change .icon-select__file-input":"iconSelected"},this.special={select:null,download:null}}render(){super.render({sel:this.model.iconId,icons:i.IconMap,canDownloadFavicon:!!this.model.url,customIcons:this.model.file.getCustomIcons()})}iconClick(t){const n=e(t.target).closest(".icon-select__icon"),s=n[0].getAttribute("data-val");if("special"===s){const e=this.special[n.data("special")];if(e){const n=this.model.file.addCustomIcon(e.data);this.emit("select",{id:n,custom:!0}),t.preventDefault(),t.stopImmediatePropagation()}}else if(s){const e=n.hasClass("icon-select__icon-custom");this.emit("select",{id:s,custom:e})}}downloadIcon(){if(this.downloadingFavicon)return;this.downloadingFavicon=!0,this.$el.find(".icon-select__icon-download>i").addClass("fa-spinner fa-spin"),this.$el.find(".icon-select__icon-download").removeClass("icon-select__icon--download-error");const e=this.getIconUrl(!0),t=document.createElement("img");t.crossOrigin="Anonymous",t.src=e,t.onload=()=>{this.setSpecialImage(t,"download"),this.$el.find(".icon-select__icon-download img").remove(),this.$el.find(".icon-select__icon-download>i").removeClass("fa-spinner fa-spin"),this.$el.find(".icon-select__icon-download").addClass("icon-select__icon--custom-selected").append(t),this.downloadingFavicon=!1},t.onerror=t=>{r.error("Favicon download error: "+e,t),this.$el.find(".icon-select__icon-download>i").removeClass("fa-spinner fa-spin"),this.$el.find(".icon-select__icon-download").removeClass("icon-select__icon--custom-selected").addClass("icon-select__icon--download-error"),this.downloadingFavicon=!1}}getIconUrl(e){if(!this.model.url)return null;let t=this.model.url.replace(/([^\/:]\/.*)?$/,e=>(e&&e[0])+"/favicon.ico");return t.indexOf("://")<0&&(t="http://"+t),e?"https://services.keeweb.info/favicon/"+t.replace(/^.*:\/+/,"").replace(/\/.*/,""):t}selectIcon(){this.$el.find(".icon-select__file-input").click()}iconSelected(e){const t=e.target.files[0];if(t){const e=new FileReader;e.onload=e=>{const t=document.createElement("img");t.onload=()=>{this.setSpecialImage(t,"select"),this.$el.find(".icon-select__icon-select img").remove(),this.$el.find(".icon-select__icon-select").addClass("icon-select__icon--custom-selected").append(t)},t.src=e.target.result},e.readAsDataURL(t)}else this.$el.find(".icon-select__icon-select img").remove(),this.$el.find(".icon-select__icon-select").removeClass("icon-select__icon--custom-selected")}setSpecialImage(e,t){const n=Math.min(e.width,32),s=document.createElement("canvas"),i=s.getContext("2d");s.width=n,s.height=n,i.drawImage(e,0,0,n,n);const l=s.toDataURL().replace(/^.*,/,"");this.special[t]={width:e.width,height:e.height,data:l}}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"DragView",(function(){return o}));var s=n(7),i=n(244),l=n.n(i);class o extends s.View{constructor(e,t){super(e,t),this.template=l.a,this.events={mousedown:"mousedown"},this.setCoord(e),this.mouseDownTime=-1,this.mouseDownCount=0}render(){super.render({coord:this.model})}setCoord(e){this.coord=e,this.offsetProp="page"+e.toUpperCase()}mousedown(t){if(1===t.which){const n=Date.now();if(n-this.mouseDownTime<500){if(this.mouseDownCount++,2===this.mouseDownCount)return void this.emit("autosize",{coord:this.coord})}else this.mouseDownTime=n,this.mouseDownCount=1;this.initialOffset=t[this.offsetProp];const s=this.$el.css("cursor");this.dragMask=e("<div/>",{class:"drag-mask"}).css("cursor",s).appendTo("body"),this.dragMask.on("mousemove",this.mousemove.bind(this)),this.dragMask.on("mouseup",this.mouseup.bind(this)),this.emit("dragstart",{offset:this.initialOffset,coord:this.coord}),this.$el.addClass("dragging"),t.preventDefault()}}mousemove(e){0===e.which?this.mouseup():this.emit("drag",{offset:e[this.offsetProp]-this.initialOffset})}mouseup(){this.dragMask.remove(),this.$el.removeClass("dragging")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"ChalRespCalculator",(function(){return h}));var s=n(1),i=n(9),l=n(26),o=n(23),a=n(8),r=n(0),c=n(16),u=n(2),d=n(3);const p=new i.Logger("chal-resp"),h={cache:{},getCacheKey:e=>`${e.vid}:${e.pid}:${e.serial}:${e.slot}`,build(e){return e?t=>new Promise((n,s)=>{var i;const l=(t=Buffer.from(t)).toString("hex"),o=this.getCacheKey(e),c=null===(i=this.cache[o])||void 0===i?void 0:i[l];return c?(p.debug("Found ChalResp in cache"),n(Buffer.from(c,"hex"))):d.AppSettingsModel.enableUsb?(p.debug("Calculating ChalResp using a YubiKey",e),void this._calc(e,t,(e,t)=>{if(e)return s(e);n(t)})):(p.debug("USB is disabled"),void a.Alerts.error({header:r.Locale.yubiKeyDisabledErrorHeader,body:r.Locale.yubiKeyDisabledErrorBody,complete(){const e=new Error(r.Locale.yubiKeyDisabledErrorHeader);e.userCanceled=!0,e.ykError=!0,s(e)}}))}):null},_calc(e,t,n){let s=null,i=!1;l.YubiKey.calculateChalResp(e,t,(o,a)=>{if(i)return void(i=!1);if(s&&(s.closeWithoutResult(),s=null),o)return o.noKey?(p.info("YubiKey ChalResp: no key"),void this._showNoKeyAlert(e.serial,s=>{if(s)return n(s);this._calc(e,t,n)})):o.touchRequested?(p.info("YubiKey ChalResp: touch requested"),void(s=this._showTouchAlert(e.serial,e=>{s=null,i=!0,p.info("YubiKey ChalResp canceled"),l.YubiKey.cancelChalResp(),n(e)}))):(p.error("YubiKey ChalResp error",o),n(o));const r=this.getCacheKey(e);this.cache[r]||(this.cache[r]={});const c=t.toString("hex");this.cache[r][c]=a.toString("hex"),p.info("Calculated YubiKey ChalResp"),n(null,a)})},_showNoKeyAlert(e,t){u.Launcher.showMainWindow();let n,i=null;const d=()=>{o.UsbListener.attachedYubiKeys&&(n=setTimeout(()=>{l.YubiKey.list((n,l)=>{if(n)return void p.error("YubiKey list error",n);const o=l.some(t=>t.serial===e);p.info(o?"YubiKey found":"YubiKey not found"),o&&(s.Events.off("usb-devices-changed",d),i&&i.closeWithoutResult(),t())})},c.Timeouts.ExternalDeviceAfterReconnect))};s.Events.on("usb-devices-changed",d),i=a.Alerts.alert({header:r.Locale.yubiKeyNoKeyHeader,body:r.Locale.yubiKeyNoKeyBody.replace("{}",e),buttons:[a.Alerts.buttons.cancel],iconSvg:"usb-token",cancel:()=>{p.info("No key alert closed"),clearTimeout(n),s.Events.off("usb-devices-changed",d);const e=new Error("User canceled the YubiKey no key prompt");return e.userCanceled=!0,e.ykError=!0,t(e)}})},_showTouchAlert:(e,t)=>(u.Launcher.showMainWindow(),a.Alerts.alert({header:r.Locale.yubiKeyTouchRequestedHeader,body:r.Locale.yubiKeyTouchRequestedBody.replace("{}",e),buttons:[a.Alerts.buttons.cancel],iconSvg:"usb-token",cancel:()=>{p.info("Touch alert closed");const e=new Error("User canceled the YubiKey touch prompt");return e.userCanceled=!0,e.ykError=!0,t(e)}})),clearCache(e){delete this.cache[this.getCacheKey(e)]}}},function(e,t,n){"use strict";n.r(t),n.d(t,"FileInfoCollection",(function(){return a}));var s=n(28),i=n(31),l=n(62);class o extends s.Collection{load(){return i.SettingsStore.load("file-info").then(e=>{if(e)for(const t of e)this.push(new l.FileInfoModel(t))})}save(){i.SettingsStore.save("file-info",this)}getMatch(e,t,n){return this.find(s=>(s.storage||"")===(e||"")&&(s.name||"")===(t||"")&&(s.path||"")===(n||""))}getByName(e){return this.find(t=>t.name.toLowerCase()===e.toLowerCase())}}o.model=l.FileInfoModel;const a=new o},function(e,t,n){"use strict";n.r(t),n.d(t,"FocusDetector",(function(){return o}));var s=n(1),i=n(2),l=n(6);const o={init(){this.isFocused=!0,this.detectsFocusWithEvents=!l.Features.isDesktop&&!l.Features.isMobile,this.detectsFocusWithEvents&&(window.addEventListener("focus",()=>{o.isFocused||(o.isFocused=!0,s.Events.emit("main-window-focus"))}),window.addEventListener("blur",()=>{o.isFocused&&(o.isFocused=!1,s.Events.emit("main-window-blur"))}))},hasFocus(){return this.detectsFocusWithEvents?this.isFocused:!i.Launcher||i.Launcher.isAppFocused()}}},function(e,t,n){"use strict";n.r(t),n.d(t,"RuntimeDataModel",(function(){return o}));var s=n(18),i=n(31);class l extends s.Model{constructor(){super(),this.on("change",()=>this.save())}load(){return i.SettingsStore.load("runtime-data").then(e=>{e&&this.set(e,{silent:!0})})}save(){i.SettingsStore.save("runtime-data",this)}}l.defineModelProperties({},{extensions:!0});const o=new l;window.RuntimeDataModel=o},function(e,t,n){"use strict";n.r(t),n.d(t,"createOAuthSession",(function(){return o}));var s=n(4),i=n.n(s);let l;function o(){const e=l,t=i.a.ByteUtils.bytesToHex(i.a.Random.getBytes(64)),n=i.a.ByteUtils.bytesToHex(i.a.Random.getBytes(50)),s=i.a.ByteUtils.arrayToBuffer(i.a.ByteUtils.stringToBytes(n));return i.a.CryptoEngine.sha256(s).then(e=>{const s=i.a.ByteUtils.bytesToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"");l={state:t,codeChallenge:s,codeVerifier:n}}),l=null,e}},function(e,t,n){"use strict";n.r(t),n.d(t,"KdbxToHtml",(function(){return f}));var s=n(4),i=n.n(s),l=n(21),o=n(20),a=n(19),r=n(10),c=n(0);const u={db:n(291),entry:n(292)},d=[{name:"UserName",locStr:"user"},{name:"Password",locStr:"password",protect:!0},{name:"URL",locStr:"website"},{name:"Notes",locStr:"notes"}],p={Title:!0};for(const{name:e}of d)p[e]=!0;function h(e,t,n){const s=n.map(e=>e.name).join(" / "),l=[];for(const e of d){const n=m(t,e.name);n&&l.push({title:r.StringFormat.capFirst(c.Locale[e.locStr]),value:n,protect:e.protect})}for(const e of Object.keys(t.fields))if(!p[e]){const n=m(t,e);n&&l.push({title:e,value:n,protect:t.fields[e].isProtected})}const o=m(t,"Title");let h;t.times.expires&&t.times.expiryTime&&(h=a.DateFormat.dtStr(t.times.expiryTime));const f=Object.entries(t.binaries).map(([e,t])=>{if(t&&t.ref&&(t=t.value),t){t="data:application/octet-stream;base64,"+i.a.ByteUtils.bytesToBase64(t)}return{name:e,data:t}}).filter(e=>e.name&&e.data);return u.entry({path:s,title:o,fields:l,tags:t.tags.join(", "),created:a.DateFormat.dtStr(t.times.creationTime),modified:a.DateFormat.dtStr(t.times.lastModTime),expires:h,attachments:f})}function m(e,t){const n=e.fields[t];return n&&n.isProtected&&n.getText()||n||""}const f={convert(e,t){const n=e.groups.map(t=>function e(t,n,s){return s=[...s,n],n.uuid.equals(t.meta.recycleBinUuid)||n.uuid.equals(t.meta.entryTemplatesGroup)?"":n.entries.map(e=>h(t,e,s)).join("\n")+n.groups.map(n=>e(t,n,s)).join("\n")}(e,t,[])).join("\n");return u.db({name:t.name,date:a.DateFormat.dtStr(Date.now()),appLink:o.Links.Homepage,appVersion:l.RuntimeInfo.version,contentHtml:n})},entryToHtml:(e,t)=>h(0,t,[])}},function(e,t,n){"use strict";n.r(t),n.d(t,"Ranking",(function(){return s}));const s={getStringRank(e,t){if(!e||!t)return 0;let n=i(e,t);return 0===n&&e.length===t.length?10:0===n?5:n>0?3:(n=i(t,e),0===n?5:n>0?3:0)}};function i(e,t){return e.isProtected?e.indexOfLower(t):t.isProtected?t.indexOfSelfInLower(e):e.indexOf(t)}window.Ranking=s},function(e,t,n){"use strict";n.r(t),n.d(t,"EntrySearch",(function(){return i}));var s=n(81);class i{constructor(e){this.model=e}matches(e){if(!e)return!0;if(e.tagLower&&this.model.searchTags&&this.model.searchTags.indexOf(e.tagLower)<0)return!1;if(e.textLower)if(e.advanced){if(!this.matchesAdv(e))return!1}else if(e.textLowerParts){const t=e.textLowerParts;for(let e=0;e<t.length;e++)if(this.model.searchText.indexOf(t[e])<0)return!1}else if(this.model.searchText.indexOf(e.textLower)<0)return!1;if(e.color)if(!0===e.color){if(!this.model.searchColor)return!1}else if(this.model.searchColor!==e.color)return!1;return!(e.autoType&&!this.model.autoTypeEnabled)}matchesAdv(e){const t=e.advanced;let n,s;if(t.regex){try{n=new RegExp(e.text,t.cs?"":"i")}catch(e){return!1}s=i.matchRegex}else t.cs?e.textParts?(n=e.textParts,s=i.matchStringMulti):(n=e.text,s=i.matchString):e.textLowerParts?(n=e.textLowerParts,s=i.matchStringMultiLower):(n=e.textLower,s=i.matchStringLower);if(i.matchFields(this.model.getAllFields(),t,s,n))return!0;if(t.history&&this.model.getHistoryEntriesForSearch)for(const e of this.model.getHistoryEntriesForSearch())if(i.matchFields(e.fields,t,s,n))return!0;return!1}static matchString(e,t){return e.isProtected?e.includes(t):e.indexOf(t)>=0}static matchStringLower(e,t){return e.isProtected?e.includesLower(t):e.toLowerCase().indexOf(t)>=0}static matchStringMulti(e,t,n,s){for(let i=0;i<t.length;i++){const l=t[i];let o;s?o=e.isProtected?e.includesLower(l):e.includes(l):(e.isProtected,o=e.includes(l)),o&&(n.matches?n.matches.includes(l)||n.matches.push(l):n.matches=[l])}return n.matches&&n.matches.length===t.length}static matchStringMultiLower(e,t,n,s){return i.matchStringLower(e,t,n,!0)}static matchRegex(e,t){return e.isProtected&&(e=e.getText()),t.test(e)}static matchFields(e,t,n,l){const o={},a=i.matchField;if(t.user&&a(e.UserName,n,l,o))return!0;if(t.url&&a(e.URL,n,l,o))return!0;if(t.notes&&a(e.Notes,n,l,o))return!0;if(t.pass&&a(e.Password,n,l,o))return!0;if(t.title&&a(e.Title,n,l,o))return!0;let r=!1;if(t.other||t.protect){r=Object.keys(e).some(i=>!(s.BuiltInFields.indexOf(i)>=0)&&("string"==typeof e[i]?t.other&&a(e[i],n,l,o):t.protect&&a(e[i],n,l,o)))}return r}static matchField(e,t,n,s){return!!e&&t(e,n,s)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuOptionModel",(function(){return i}));var s=n(18);class i extends s.Model{}i.defineModelProperties({title:"",cls:"",value:"",active:!1,filterValue:null})},function(e,t,n){"use strict";n.r(t),n.d(t,"ExternalEntryModel",(function(){return l}));var s=n(18),i=n(93);class l extends s.Model{constructor(e){super(e),this.tags=[],this.fields={},this._buildSearchText(),this._buildFields(),this._search=new i.EntrySearch(this)}matches(e){return this._search.matches(e)}_buildSearchText(){let e="";this.title&&(e+=this.title.toLowerCase()),this.user&&(e+="\n"+this.user.toLowerCase()),this.searchText=e}_buildFields(){this.fields.Title=this.title}getAllFields(){return this.fields}getFieldValue(e){return this.fields[e]}getEffectiveAutoTypeSeq(){return"{TOTP}{ENTER}"}}l.defineModelProperties({id:"",external:!0,readOnly:!0,device:void 0,deviceSubId:null,title:void 0,description:void 0,fields:void 0,icon:void 0,tags:void 0,searchText:void 0,_search:void 0})},function(e,t,n){"use strict";n.r(t),n.d(t,"EntryPresenter",(function(){return l}));var s=n(19),i=n(0);const l=function(e,t,n){this.entry=null,this.descField=e,this.noColor=t||"",this.activeEntryId=n};l.prototype={present(e){return e.entry?this.entry=e:e.group?this.group=e:e.external&&(this.entry=e,this.external=!0),this},get id(){return this.entry?this.entry.id:this.group.id},get icon(){return this.entry?this.entry.icon:this.group.icon||"folder"},get customIcon(){return this.entry?this.entry.customIcon:void 0},get color(){return this.entry?this.entry.color||(this.entry.customIcon?this.noColor:void 0):void 0},get title(){return this.entry?this.entry.title:this.group.title},get notes(){return this.entry?this.entry.notes:void 0},get url(){return this.entry?this.entry.displayUrl:void 0},get user(){return this.entry?this.entry.user:void 0},get active(){return this.entry?this.entry.id===this.activeEntryId:this.group.active},get created(){return this.entry?s.DateFormat.dtStr(this.entry.created):void 0},get updated(){return this.entry?s.DateFormat.dtStr(this.entry.updated):void 0},get expired(){return!!this.entry&&this.entry.expired},get tags(){return this.entry?this.entry.tags:void 0},get groupName(){return this.entry?this.entry.groupName:void 0},get fileName(){return this.entry?this.entry.fileName:void 0},get description(){if(!this.entry)return"["+i.Locale.listGroup+"]";if(this.external)return this.entry.description;switch(this.descField){case"website":return this.url||"("+i.Locale.listNoWebsite+")";case"user":return this.user||"("+i.Locale.listNoUser+")";case"created":return this.created;case"updated":return this.updated;case"attachments":return this.entry.attachments.map(e=>e.title).join(", ")||"("+i.Locale.listNoAttachments+")";default:return this.user||this.notes||this.url}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"Copyable",(function(){return r}));var s=n(1),i=n(3),l=n(0),o=n(24),a=n(16);const r={hideFieldCopyTip(){this.fieldCopyTip&&(this.fieldCopyTip.hide(),this.fieldCopyTip=null)},fieldCopied(e){this.hideFieldCopyTip();const t=e.source.labelEl,n=e.copyRes.seconds,r=n?l.Locale.detFieldCopiedTime.replace("{}",n):l.Locale.detFieldCopied;let c;this.isHidden()||(c=o.Tip.createTip(t[0],{title:r,placement:"right",fast:!0,force:!0,noInit:!0}),this.fieldCopyTip=c,c.show()),setTimeout(()=>{c&&c.hide(),this.fieldCopyTip=null,"$Password"===e.source.model.name&&i.AppSettingsModel.lockOnCopy&&setTimeout(()=>{s.Events.emit("lock-workspace")},a.Timeouts.BeforeAutoLock)},a.Timeouts.CopyTip)}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"AutoTypeHintView",(function(){return c}));var s=n(7),i=n(20),l=n(16),o=n(6),a=n(233),r=n.n(a);class c extends s.View{constructor(t){super(t),this.parent="body",this.template=r.a,this.events={},this.input=t.input,this.bodyClick=this.bodyClick.bind(this),this.inputBlur=this.inputBlur.bind(this),e("body").on("click",this.bodyClick),this.input.addEventListener("blur",this.inputBlur),this.once("remove",()=>{e("body").off("click",this.bodyClick),this.input.removeEventListener("blur",this.inputBlur)})}render(){super.render({cmd:o.Features.isMac?"command":"ctrl",hasCtrl:o.Features.isMac,link:i.Links.AutoType});const e=this.input.getBoundingClientRect();this.$el.appendTo(document.body).css({left:e.left,top:e.bottom+1,width:e.width});const t=this.$el[0].getBoundingClientRect(),n=document.body.getBoundingClientRect();t.bottom>n.bottom&&this.$el.css("height",t.height+n.bottom-t.bottom-1)}bodyClick(t){if(this.removeTimer&&(clearTimeout(this.removeTimer),this.removeTimer=null),t.target!==this.input)if(e.contains(this.$el[0],t.target)||t.target===this.$el[0]){if(t.stopPropagation(),"a"===t.target.tagName.toLowerCase()&&!t.target.href){let n=e(t.target).text();"{"!==n[0]&&(n=n.split(" ")[0]),this.insertText(n)}this.input.focus()}else this.remove();else t.stopPropagation()}inputBlur(){this.removeTimer||(this.removeTimer=setTimeout(this.remove.bind(this),l.Timeouts.DropDownClickWait))}insertText(e){const t=this.input.selectionEnd||this.input.value.length;this.input.value=this.input.value.substr(0,t)+e+this.input.value.substr(t),this.input.selectionStart=this.input.selectionEnd=t+e.length,this.input.dispatchEvent(new Event("input",{bubbles:!0}))}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"OpenConfigView",(function(){return r}));var s=n(7),i=n(5),l=n(0),o=n(255),a=n.n(o);class r extends s.View{constructor(...e){super(...e),this.template=a.a,this.events={"click .open__config-btn-cancel":"cancel","click .open__config-btn-ok":"apply","input input":"changeInput","keyup input":"keyup"}}render(){super.render(this.model),this.$el.find(":input:first").focus(),this.checkValidity()}cancel(){this.emit("cancel")}apply(){const e=this.getData();e&&this.emit("apply",e)}changeInput(){this.checkValidity()}keyup(e){e.which===i.Keys.DOM_VK_RETURN&&this.apply()}checkValidity(){const e=this.getData();this.$el.find(".open__config-btn-ok").prop("disabled",!e)}getData(){let e={storage:this.model.id};return this.model.fields.every((function(t){const n=this.$el.find("#open__config-field-"+t.id)[0];return e&&n.checkValidity()?(e[t.id]=n.value,!0):(e=null,!1)}),this),e}setDisabled(e){e=!!e,this.$el.find(":input:not(.open__config-btn-cancel)").prop("disabled",e),this.$el.toggleClass("open__config--disabled",e),e&&this.$el.find(".open__config-error").text("")}setError(e){const t=e&&e.notFound?l.Locale.openConfigErrorNotFound:l.Locale.openConfigError.replace("{}",e);this.$el.find(".open__config-error").text(t)}}},,function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewOtp",(function(){return a}));var s=n(16),i=n(33),l=n(0),o=n(10);class a extends i.FieldViewText{constructor(e,t){super(e,t),this.otpTimeout=null,this.otpTickInterval=null,this.otpValue=null,this.otpGenerator=null,this.otpTimeLeft=0,this.otpValidUntil=0,this.fieldOpacity=null,this.otpState=null,this.once("remove",()=>this.stopOtpUpdater()),e.readonly&&(this.readonly=!0)}renderValue(e){if(!e)return this.resetOtp(),"";if(e!==this.otpGenerator&&(this.resetOtp(),this.otpGenerator=e,this.requestOtpUpdate()),this.otpValue)return this.otpValue;switch(this.otpState){case"awaiting-command":return l.Locale.detOtpClickToTouch;case"awaiting-touch":return l.Locale.detOtpTouch.replace("{}",this.model.deviceShortName);case"error":return o.StringFormat.capFirst(l.Locale.error);case"generating":return l.Locale.detOtpGenerating;default:return""}}getEditValue(e){return e&&e.url}getTextValue(){return this.otpValue}render(){super.render(),this.fieldOpacity=null,this.otpTick()}resetOtp(){this.otpGenerator=null,this.otpValue=null,this.otpTimeLeft=0,this.otpValidUntil=0,this.otpState=null,this.otpTimeout&&(clearTimeout(this.otpTimeout),this.otpTimeout=null),this.otpTickInterval&&(clearInterval(this.otpTickInterval),this.otpTickInterval=null)}requestOtpUpdate(){this.value&&(this.model.needsTouch?this.otpState="awaiting-command":(this.otpState="generating",this.value.next(this.otpUpdated.bind(this))))}otpUpdated(e,t,n){if(!this.removed)return e?(this.otpState="error",void this.render()):void(this.value&&t?(this.otpValue=t||"",this.otpTimeLeft=n||0,this.otpValidUntil=Date.now()+n,this.editing||this.render(),this.otpValue&&n&&(this.otpTimeout=setTimeout(()=>{this.requestOtpUpdate(),this.otpTickInterval&&(clearInterval(this.otpTickInterval),this.otpTickInterval=null),this.model.needsTouch&&(this.fieldOpacity=null,this.otpValue=null,this.otpValidUntil=0,this.otpTimeLeft=0,this.valueEl.css("opacity",1)),this.render()},n),this.otpTickInterval||(this.otpTickInterval=setInterval(this.otpTick.bind(this),300)))):this.resetOtp())}otpTick(){if(!this.value||!this.otpValidUntil)return;let e;const t=this.otpValidUntil-Date.now();e=t>=s.Timeouts.OtpFadeDuration||this.editing?1:t<=0?.1:Math.max(.1,Math.pow(t/s.Timeouts.OtpFadeDuration,2)),this.fieldOpacity!==e&&(this.fieldOpacity=e,this.valueEl.css("opacity",e))}copyValue(){this.refreshOtp(e=>{e||super.copyValue()})}refreshOtp(e){this.model.needsTouch?this.otpValue?e():this.requestTouch(e):e()}requestTouch(e){this.otpState="awaiting-touch",this.value.next((t,n,s)=>{this.otpUpdated(t,n,s),e(t)}),this.render()}stopOtpUpdater(){"awaiting-touch"===this.otpState&&this.value&&this.value.cancel&&this.value.cancel(),this.resetOtp()}}},,function(e,t,n){"use strict";n.r(t);n(198),n(199),n(200),n(201),n(202),n(203),n(204)},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsLogsView",(function(){return r}));var s=n(7),i=n(10),l=n(9),o=n(264),a=n.n(o);class r extends s.View{constructor(...e){super(...e),this.parent=".settings__general-advanced",this.template=a.a}render(){const e=l.Logger.getLast().map(e=>({level:e.level,msg:"["+i.StringFormat.padStr(e.level.toUpperCase(),5)+"] "+e.args.map(e=>this.mapArg(e)).join(" ")}));super.render({logs:e})}mapArg(e){if(null===e)return"null";if(void 0===e)return"undefined";if(""===e)return'""';if(!e||!e.toString()||"object"!=typeof e)return e?e.toString():e;if(e instanceof Array)return"["+e.map(e=>this.mapArg(e)).join(", ")+"]";let t=e.toString();if("[object Object]"===t){const n=[];t=JSON.stringify(e,(e,t)=>{if("object"==typeof t&&null!==t){if(-1!==n.indexOf(t))return;n.push(t)}return t})}return t}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"SettingsPrvView",(function(){return a}));var s=n(7),i=n(12),l=n(265),o=n.n(l);class a extends s.View{constructor(...e){super(...e),this.template=o.a,this.events={"change .settings__general-prv-field-sel":"changeField","input .settings__general-prv-field-txt":"changeField"}}render(){const e=i.Storage[this.model.name];e&&e.getSettingsConfig&&super.render(e.getSettingsConfig())}changeField(t){const n=t.target.dataset.id,s=t.target.value;s&&!t.target.checkValidity()||(i.Storage[this.model.name].applySetting(n,s),e(t.target).is("select")&&this.render())}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"DefaultAppSettings",(function(){return s}));const s={theme:null,locale:null,expandGroups:!0,listViewWidth:null,menuViewWidth:null,tagsViewHeight:null,autoUpdate:"install",clipboardSeconds:0,autoSave:!0,autoSaveInterval:0,rememberKeyFiles:!1,idleMinutes:15,minimizeOnClose:!1,tableView:!1,colorfulIcons:!1,useMarkdown:!0,directAutotype:!0,titlebarStyle:"default",lockOnMinimize:!0,lockOnCopy:!1,lockOnAutoType:!1,lockOnOsLock:!1,helpTipCopyShown:!1,templateHelpShown:!1,skipOpenLocalWarn:!1,hideEmptyFields:!1,skipHttpsWarning:!1,demoOpened:!1,fontSize:0,tableViewColumns:null,generatorPresets:null,generatorHidePassword:!1,cacheConfigSettings:!1,allowIframes:!1,useGroupIconForEntries:!1,enableUsb:!0,nativeArgon2:!0,fieldLabelDblClickAutoType:!1,yubiKeyShowIcon:!0,yubiKeyAutoOpen:!1,yubiKeyMatchEntries:!0,yubiKeyShowChalResp:!0,yubiKeyRememberChalResp:!1,yubiKeyStuckWorkaround:!1,canOpen:!0,canOpenDemo:!0,canOpenSettings:!0,canCreate:!0,canImportXml:!0,canImportCsv:!0,canRemoveLatest:!0,canExportXml:!0,canExportHtml:!0,canSaveTo:!0,canOpenStorage:!0,canOpenGenerator:!0,canOpenOtpDevice:!0,dropbox:!0,dropboxFolder:null,dropboxAppKey:null,dropboxSecret:null,webdav:!0,webdavSaveMethod:"move",gdrive:!0,gdriveClientId:null,gdriveClientSecret:null,onedrive:!0,onedriveClientId:null,onedriveClientSecret:null}},function(e,t,n){"use strict";n.r(t),n.d(t,"Transport",(function(){return a}));var s=n(2),i=n(9),l=n(14);const o=new i.Logger("transport"),a={httpGet(e){let t;const n=s.Launcher.req("fs");if(e.file&&(t=s.Launcher.getTempPath(e.file),n.existsSync(t)))try{if(e.cache&&n.statSync(t).size>0)return o.info("File already downloaded "+e.url),e.success(t);n.unlinkSync(t)}catch(e){n.unlink(t,l.noop)}const i=e.url.split(":")[0];o.info("GET "+e.url);const r=s.Launcher.req("url").parse(e.url);r.headers={"User-Agent":navigator.userAgent},s.Launcher.resolveProxy(e.url,c=>{o.info("Request to "+e.url+" "+(c?"using proxy "+c.host+":"+c.port:"without proxy")),c&&(r.headers.Host=r.host,r.host=c.host,r.port=c.port,r.path=e.url),s.Launcher.req(i).get(r,s=>{if(o.info("Response from "+e.url+": "+s.statusCode),200===s.statusCode)if(e.file){const i=n.createWriteStream(t);s.pipe(i),i.on("finish",()=>{i.close(()=>{e.success(t)})}),i.on("error",t=>{e.error(t)})}else{let t=[];s.on("data",e=>{t.push(e)}),s.on("end",()=>{t=window.Buffer.concat(t),e.utf8&&(t=t.toString("utf8")),e.success(t)})}else if(s.headers.location&&[301,302].indexOf(s.statusCode)>=0){if(e.noRedirect)return e.error("Too many redirects");e.url=s.headers.location,e.noRedirect=!0,a.httpGet(e)}else e.error("HTTP status "+s.statusCode)}).on("error",s=>{o.error("Cannot GET "+e.url,s),t&&n.unlink(t,l.noop),e.error(s)})})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuSectionCollection",(function(){return l}));var s=n(28),i=n(38);class l extends s.Collection{}l.model=i.MenuSectionModel},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeParser",(function(){return i}));var s=n(150);const i=function(e){this.sequence=e,this.ix=0,this.states=[]};i.opRegex=/^(.*?)(?:([\s:=])[\s:=]*(.*))?$/,i.prototype.parse=function(){const e=this.sequence.length;for(this.pushState();this.ix<e;){const e=this.sequence[this.ix];switch(e){case"{":this.readOp();continue;case"+":case"%":case"^":this.readModifier(e);break;case"(":this.pushState();break;case")":this.popState();break;case" ":break;case"~":this.addOp("enter");break;default:this.addChar(e)}this.ix++}if(1!==this.states.length)throw"Groups count mismatch";return new s.AutoTypeRunner(this.state().ops)},i.prototype.pushState=function(){this.states.unshift({modifiers:null,ops:[]})},i.prototype.popState=function(){if(this.states.length<=1)throw'Unexpected ")" at index '+this.ix;const e=this.states.shift();this.addState(e)},i.prototype.state=function(){return this.states[0]},i.prototype.readOp=function(){const e=this.sequence.indexOf("}",this.ix+2);if(e<0)throw'Mismatched "{" at index '+this.ix;const t=this.sequence.substring(this.ix+1,e);if(this.ix=e+1,1===t.length)return void this.addChar(t);const[,n,s,l]=t.match(i.opRegex);this.addOp(n,s,l)},i.prototype.readModifier=function(e){const t=this.state();t.modifiers||(t.modifiers={}),"^"===e&&t.modifiers["^"]&&(delete t.modifiers["^"],e="^^"),t.modifiers[e]=!0},i.prototype.resetModifiers=function(){const e=this.state(),t=e.modifiers;return e.modifiers=null,t},i.prototype.addState=function(e){this.state().ops.push({type:"group",value:e.ops,mod:this.resetModifiers()})},i.prototype.addChar=function(e){this.state().ops.push({type:"text",value:e,mod:this.resetModifiers()})},i.prototype.addOp=function(e,t,n){this.state().ops.push({type:"op",value:e,mod:this.resetModifiers(),sep:t,arg:n})}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"GeneratorPresetsView",(function(){return d}));var s=n(1),i=n(7),l=n(35),o=n(74),a=n(0),r=n(37),c=n(246),u=n.n(c);class d extends i.View{constructor(...e){super(...e),this.parent=".app__panel",this.template=u.a,this.events={"click .back-button":"returnToApp","change .gen-ps__list":"changePreset","click .gen-ps__btn-create":"createPreset","click .gen-ps__btn-delete":"deletePreset","click .info-btn--pattern":"togglePatternHelp","input #gen-ps__field-title":"changeTitle","change #gen-ps__check-enabled":"changeEnabled","change #gen-ps__check-default":"changeDefault","input #gen-ps__field-length":"changeLength","change .gen-ps__check-range":"changeRange","input #gen-ps__field-include":"changeInclude","input #gen-ps__field-pattern":"changePattern"},this.selected=null,this.reservedTitles=[a.Locale.genPresetDerived]}render(){this.presets=l.GeneratorPresets.all,this.selected&&this.presets.some(e=>e.name===this.selected)||(this.selected=(this.presets.filter(e=>e.default)[0]||this.presets[0]).name),super.render({presets:this.presets,selected:this.getPreset(this.selected),ranges:this.getSelectedRanges()}),this.createScroll({root:this.$el.find(".gen-ps")[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]}),this.renderExample()}renderExample(){const e=this.getPreset(this.selected),t=o.PasswordGenerator.generate(e);this.$el.find(".gen-ps__example").text(t),this.pageResized()}getSelectedRanges(){const e=this.getPreset(this.selected),t={high:"¡¢£¤¥¦§©ª«¬®¯°±¹²´µ¶»¼÷¿ÀÖîü..."};return["Upper","Lower","Digits","Special","Brackets","High","Ambiguous"].map(n=>{const s=n.toLowerCase();return{name:s,title:a.Locale["genPs"+n],enabled:e[s],sample:t[s]||o.CharRanges[s]}})}getPreset(e){return this.presets.filter(t=>t.name===e)[0]}returnToApp(){s.Events.emit("edit-generator-presets")}changePreset(e){this.selected=e.target.value,this.render()}createPreset(){let e,t;for(let n=1;;n++){const s="Custom"+n,i=a.Locale.genPsNew+" "+n;if(!this.presets.filter(e=>e.name===s||e.title===i).length){e=s,t=i;break}}const n=this.getPreset(this.selected),s={name:e,title:t,length:n.length,upper:n.upper,lower:n.lower,digits:n.digits,special:n.special,brackets:n.brackets,ambiguous:n.ambiguous,include:n.include};l.GeneratorPresets.add(s),this.selected=e,this.render()}deletePreset(){l.GeneratorPresets.remove(this.selected),this.render()}togglePatternHelp(){this.$el.find(".gen-ps__pattern-help").toggleClass("hide")}changeTitle(t){const n=e.trim(t.target.value);if(n&&n!==this.getPreset(this.selected).title){let s=this.presets.some(e=>e.title.toLowerCase()===n.toLowerCase());if(s||(s=this.reservedTitles.some(e=>e.toLowerCase()===n.toLowerCase())),s)return void e(t.target).addClass("input--error");e(t.target).removeClass("input--error"),l.GeneratorPresets.setPreset(this.selected,{title:n}),this.$el.find(".gen-ps__list option[selected]").text(n)}}changeEnabled(e){const t=e.target.checked;l.GeneratorPresets.setDisabled(this.selected,!t)}changeDefault(e){const t=e.target.checked;l.GeneratorPresets.setDefault(t?this.selected:null)}changeLength(t){const n=+t.target.value;n>0?(l.GeneratorPresets.setPreset(this.selected,{length:n}),e(t.target).removeClass("input--error")):e(t.target).addClass("input--error"),this.presets=l.GeneratorPresets.all,this.renderExample()}changeRange(e){const t=e.target.checked,n=e.target.dataset.range;l.GeneratorPresets.setPreset(this.selected,{[n]:t}),this.presets=l.GeneratorPresets.all,this.renderExample()}changeInclude(e){const t=e.target.value;t!==this.getPreset(this.selected).include&&l.GeneratorPresets.setPreset(this.selected,{include:t}),this.presets=l.GeneratorPresets.all,this.renderExample()}changePattern(e){const t=e.target.value;t!==this.getPreset(this.selected).pattern&&l.GeneratorPresets.setPreset(this.selected,{pattern:t}),this.presets=l.GeneratorPresets.all,this.renderExample()}}Object.assign(d.prototype,r.Scrollable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"GrpView",(function(){return d}));var s=n(7),i=n(1),l=n(29),o=n(37),a=n(98),r=n(84),c=n(247),u=n.n(c);class d extends s.View{constructor(...e){super(...e),this.parent=".app__panel",this.template=u.a,this.events={"click .grp__icon":"showIconsSelect","click .grp__buttons-trash":"moveToTrash","click .back-button":"returnToApp","input #grp__field-title":"changeTitle","focus #grp__field-auto-type-seq":"focusAutoTypeSeq","input #grp__field-auto-type-seq":"changeAutoTypeSeq","change #grp__check-search":"setEnableSearching","change #grp__check-auto-type":"setEnableAutoType"}}render(){this.removeSubView(),super.render({title:this.model.title,icon:this.model.icon||"folder",customIcon:this.model.customIcon,enableSearching:this.model.getEffectiveEnableSearching(),readonly:this.model.top,canAutoType:l.AutoType.enabled,autoTypeSeq:this.model.autoTypeSeq,autoTypeEnabled:this.model.getEffectiveEnableAutoType(),defaultAutoTypeSeq:this.model.getParentEffectiveAutoTypeSeq()}),this.model.title||this.$el.find("#grp__field-title").focus(),this.createScroll({root:this.$el.find(".grp")[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]}),this.pageResized()}removeSubView(){this.views.sub&&(this.views.sub.remove(),delete this.views.sub)}changeTitle(t){const n=e.trim(t.target.value);n?this.model.top||n===this.model.title||this.model.setName(n):this.model.isJustCreated&&(this.model.removeWithoutHistory(),i.Events.emit("edit-group"))}changeAutoTypeSeq(t){const n=t.target,s=e.trim(n.value);l.AutoType.validate(null,s,n=>{e(t.target).toggleClass("input--error",!!n),n||this.model.setAutoTypeSeq(s)})}focusAutoTypeSeq(e){this.views.hint||(this.views.hint=new a.AutoTypeHintView({input:e.target}),this.views.hint.render(),this.views.hint.on("remove",()=>{delete this.views.hint}))}showIconsSelect(){if(this.views.sub)this.removeSubView();else{const e=new r.IconSelectView({iconId:this.model.customIconId||this.model.iconId,file:this.model.file},{parent:this.$el.find(".grp__icons")[0]});this.listenTo(e,"select",this.iconSelected),e.render(),this.views.sub=e}this.pageResized()}iconSelected(e){e.custom?e.id!==this.model.customIconId&&this.model.setCustomIcon(e.id):e.id!==this.model.iconId&&this.model.setIcon(+e.id),this.render()}moveToTrash(){this.model.moveToTrash(),i.Events.emit("select-all")}setEnableSearching(e){const t=e.target.checked;this.model.setEnableSearching(t)}setEnableAutoType(e){const t=e.target.checked;this.model.setEnableAutoType(t)}returnToApp(){i.Events.emit("edit-group")}}Object.assign(d.prototype,o.Scrollable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"TagView",(function(){return c}));var s=n(1),i=n(7),l=n(8),o=n(0),a=n(270),r=n.n(a);class c extends i.View{constructor(...e){super(...e),this.parent=".app__panel",this.template=r.a,this.events={"click .tag__buttons-trash":"moveToTrash","click .back-button":"returnToApp","click .tag__btn-rename":"renameTag"}}render(){this.tag&&super.render({title:this.tag.title})}showTag(e){this.tag=e,this.render()}renameTag(){const t=e.trim(this.$el.find("#tag__field-title").val());t&&t!==this.tag.title&&(/[;,:]/.test(t)?l.Alerts.error({header:o.Locale.tagBadName,body:o.Locale.tagBadNameBody.replace("{}","`,`, `;`, `:`")}):this.model.tags.some(e=>e.toLowerCase()===t.toLowerCase())?l.Alerts.error({header:o.Locale.tagExists,body:o.Locale.tagExistsBody}):(this.model.renameTag(this.tag.title,t),s.Events.emit("select-all")))}moveToTrash(){this.title=null,l.Alerts.yesno({header:o.Locale.tagTrashQuestion,body:o.Locale.tagTrashQuestionBody,success:()=>{this.model.renameTag(this.tag.title,void 0),s.Events.emit("select-all")}})}returnToApp(){s.Events.emit("edit-tag")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeHelper",(function(){return a}));var s=n(2);const i='tell application "{}" to set appUrl to URL of active tab of front window\ntell application "{}" to set appTitle to title of active tab of front window\nreturn appUrl & "\n" & appTitle',l='tell application "{}" to set appUrl to URL of front document\ntell application "{}" to set appTitle to name of front document\nreturn appUrl & "\n" & appTitle',o='tell application "System Events"\n tell process "{}"\n tell (1st window whose value of attribute "AXMain" is true)\n set windowTitle to value of attribute "AXTitle"\n end tell\n end tell\nend tell',a=function(){};a.prototype.getActiveWindowInfo=function(e){a.exec('tell application "System Events"\n set frontAppName to name of first process whose frontmost is true\n set frontAppId to id of first process whose frontmost is true\nend tell\n"" & frontAppId & " " & frontAppName',(t,n)=>{if(t)return e(t);const s=n.trim(),r=s.indexOf(" ");let c="",u="";r>=0&&(c=s.substr(0,r),u=s.substr(r+1).trim()),["Google Chrome","Chromium","Google Chrome Canary"].indexOf(u)>=0?a.exec(i.replace(/\{}/g,u),(t,n)=>{if(t)return e(t,{id:c});const s=n.split("\n");return e(null,{id:c,url:s[0].trim(),title:(s[1]||"").trim()})}):["Safari","Webkit"].indexOf(u)>=0?a.exec(l.replace(/\{}/g,u),(t,n)=>{if(t)return e(t,{id:c});const s=n.split("\n");return e(null,{id:c,url:s[0].trim(),title:(s[1]||"").trim()})}):a.exec(o.replace(/\{}/g,u),(t,n)=>t?e(t,{id:c}):e(null,{id:c,title:n.trim()}))})},a.exec=function(e,t){s.Launcher.spawn({cmd:"osascript",args:["-e",e],complete:t})}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeHelper",(function(){return i}));var s=n(2);const i=function(){};i.prototype.getActiveWindowInfo=function(e){s.Launcher.spawn({cmd:"xdotool",args:["getactivewindow","getwindowname","getactivewindow"],complete(t,n){let s;if(n){const[e,t]=n.trim().split("\n");s={id:t,title:e}}return e(t,s)}})}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeHelper",(function(){return l}));var s=n(70),i=n(2);const l=function(){};l.prototype.getActiveWindowInfo=function(e){i.Launcher.spawn({cmd:s.AutoTypeNativeHelper.getHelperPath(),args:["--window-info"],complete(t,n){if(t)return e(t);const[s,i,l]=n.trim().split("\n");return e(null,{id:s,title:i,url:l})}})}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeEmitter",(function(){return a}));var s=n(70),i=n(2);const l={tab:48,enter:36,space:49,up:126,down:125,left:123,right:124,home:115,end:119,pgup:116,pgdn:121,ins:114,del:117,bs:51,esc:53,win:55,rwin:55,f1:122,f2:120,f3:99,f4:118,f5:96,f6:97,f7:98,f8:100,f9:101,f10:109,f11:103,f12:111,f13:105,f14:107,f15:113,f16:106,add:69,subtract:78,multiply:67,divide:75,n0:82,n1:83,n2:84,n3:85,n4:86,n5:87,n6:88,n7:89,n8:91,n9:92},o={"^":"@","+":"+","%":"%","^^":"^"},a=function(e){this.callback=e,this.mod={},this.pendingScript=[]};a.prototype.setMod=function(e,t){t?this.mod[o[e]]=!0:delete this.mod[o[e]]},a.prototype.text=function(e){this.pendingScript.push("text "+this.modString()+" "+e),this.callback()},a.prototype.key=function(e){if("number"!=typeof e){if(!l[e])return this.callback("Bad key: "+e);e=l[e]}this.pendingScript.push("key "+this.modString()+e),this.callback()},a.prototype.copyPaste=function(e){this.pendingScript.push("copypaste "+e),this.callback()},a.prototype.wait=function(e){this.pendingScript.push("wait "+e),this.callback()},a.prototype.waitComplete=function(){if(this.pendingScript.length){const e=this.pendingScript.join("\n");this.pendingScript.length=0,this.runScript(e)}else this.callback()},a.prototype.setDelay=function(e){this.delay=e||0,this.callback("Not implemented")},a.prototype.modString=function(){return Object.keys(this.mod).join("")},a.prototype.runScript=function(e){i.Launcher.spawn({cmd:s.AutoTypeNativeHelper.getHelperPath(),data:e,complete:this.callback})}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeEmitter",(function(){return a}));var s=n(2),i=n(0);const l={tab:"Tab",enter:"KP_Enter",space:"KP_Space",up:"Up",down:"Down",left:"Left",right:"Right",home:"Home",end:"End",pgup:"Page_Up",pgdn:"Page_Down",ins:"Insert",del:"Delete",bs:"BackSpace",esc:"Escape",win:"Meta_L",rwin:"Meta_R",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",f13:"F13",f14:"F14",f15:"F15",f16:"F16",add:"KP_Add",subtract:"KP_Subtract",multiply:"KP_Multiply",divide:"KP_Divide",n0:"KP_0",n1:"KP_1",n2:"KP_2",n3:"KP_3",n4:"KP_4",n5:"KP_5",n6:"KP_6",n7:"KP_7",n8:"KP_8",n9:"KP_9"},o={"^":"ctrl","+":"shift","%":"alt","^^":"ctrl"},a=function(e,t){this.callback=e,this.windowParameter=void 0!==t&&t?"--window "+t+" ":"",this.mod={},this.pendingScript=[]};a.prototype.setMod=function(e,t){t?this.mod[o[e]]=!0:delete this.mod[o[e]]},a.prototype.text=function(e){this.pendingScript.push("keyup ctrl alt shift t"),Object.keys(this.mod).forEach(e=>{this.pendingScript.push("keydown "+this.windowParameter+o[e])}),e.split("").forEach(e=>{this.pendingScript.push("key "+this.windowParameter+"U"+e.charCodeAt(0).toString(16))}),Object.keys(this.mod).forEach(e=>{this.pendingScript.push("keyup "+this.windowParameter+o[e])}),this.waitComplete()},a.prototype.key=function(e){const t="number"!=typeof e;if(t){if(!l[e])return this.callback("Bad key: "+e);e=l[e].toString()}this.pendingScript.push("key --clearmodifiers "+this.windowParameter+this.modString()+e),t?this.waitComplete():this.callback()},a.prototype.copyPaste=function(e){this.pendingScript.push("sleep 0.5"),s.Launcher.setClipboardText(e),this.pendingScript.push("key --clearmodifiers "+this.windowParameter+"shift+Insert"),this.pendingScript.push("sleep 0.5"),this.waitComplete()},a.prototype.wait=function(e){this.pendingScript.push("sleep "+e/1e3),this.callback()},a.prototype.waitComplete=function(e){if(this.pendingScript.length){const t=this.pendingScript.join(" ");this.pendingScript.length=0,this.runScript(t,e)}else this.callback()},a.prototype.modString=function(){let e="";return Object.keys(this.mod).forEach(t=>{e+=t+"+"}),e},a.prototype.runScript=function(e,t){s.Launcher.spawn({cmd:"xdotool",args:["-"],data:e,complete:(e,n,s)=>{e&&"ENOENT"===e.code&&(e=i.Locale.autoTypeErrorNotInstalled.replace("{}","xdotool")),(t||this.callback)(e,n,s)}})}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeEmitter",(function(){return a}));var s=n(70),i=n(2);const l={tab:9,enter:13,space:32,up:38,down:40,left:37,right:39,home:36,end:35,pgup:33,pgdn:34,ins:45,del:46,bs:8,esc:27,win:91,rwin:92,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,f13:124,f14:125,f15:126,f16:127,add:107,subtract:109,multiply:106,divide:111,n0:48,n1:49,n2:50,n3:51,n4:52,n5:53,n6:54,n7:55,n8:56,n9:57},o={"^":"^","+":"+","%":"%","^^":"^"},a=function(e){this.callback=e,this.mod={},this.pendingScript=[]};a.prototype.setMod=function(e,t){t?this.mod[o[e]]=!0:delete this.mod[o[e]]},a.prototype.text=function(e){e&&this.pendingScript.push("text "+this.modStr()+" "+e),this.callback()},a.prototype.key=function(e){if("number"!=typeof e){if(!l[e])return this.callback("Bad key: "+e);e=l[e]}this.pendingScript.push("key "+this.modStr()+e),this.callback()},a.prototype.copyPaste=function(e){this.pendingScript.push("copypaste "+e),this.callback()},a.prototype.wait=function(e){this.pendingScript.push("wait "+e),this.callback()},a.prototype.waitComplete=function(){if(this.pendingScript.length){const e=this.pendingScript.join("\n");this.pendingScript.length=0,this.runScript(e)}else this.callback()},a.prototype.setDelay=function(e){this.delay=e||0,this.callback("Not implemented")},a.prototype.modStr=function(){return Object.keys(this.mod).join("")},a.prototype.runScript=function(e){i.Launcher.spawn({cmd:s.AutoTypeNativeHelper.getHelperPath(),data:e,complete:this.callback})}},function(e,t,n){"use strict";n.r(t);var s=n(4),i=n.n(s);const l="{REF:0@I:00000000000000000000000000000000}".split(""),o=l.length;i.a.ProtectedValue.prototype.isProtected=!0,i.a.ProtectedValue.prototype.forEachChar=function(e){const t=this._value,n=this._salt;let s,i,l,o;for(let a=0,r=t.length;a<r;a++)if(s=t[a]^n[a],s<128){if(!1===e(s))return}else{if(a++,i=t[a]^n[a],a===r)break;if(s>=192&&s<224){if(!1===e((31&s)<<6|63&i))return}else{if(a++,l=t[a]^n[a],a===r)break;if(s>=224&&s<240&&!1===e((15&s)<<12|(63&i)<<6|63&l))return;if(a++,o=t[a]^n[a],a===r)break;if(s>=240&&s<248){let t=(7&s)<<18|(63&i)<<12|(63&l)<<6|63&o;if(t<=65535){if(!1===e(t))return}else{if(t^=65536,!1===e(55296|t>>10))return;if(!1===e(56320|1023&t))return}}}}},Object.defineProperty(i.a.ProtectedValue.prototype,"length",{get(){return this.textLength}}),Object.defineProperty(i.a.ProtectedValue.prototype,"textLength",{get(){let e=0;return this.forEachChar(()=>{e++}),e}}),i.a.ProtectedValue.prototype.includesLower=function(e){return-1!==this.indexOfLower(e)},i.a.ProtectedValue.prototype.indexOfLower=function(e){let t=-1;const n=[],s=e.length;let i=-1;return this.forEachChar(l=>{if(i++,l=String.fromCharCode(l).toLowerCase(),-1===t){for(let o=0;o<n.length;o++){const a=++n[o];if(e[a]===l){if(a===s-1)return void(t=i-s+1)}else n.splice(o,1),o--}e[0]===l&&(1===s?t=i-s+1:n.push(0))}}),t},i.a.ProtectedValue.prototype.indexOfSelfInLower=function(e){let t=-1,n=!1;do{let s=-1;this.forEachChar(i=>{if(s++,i=String.fromCharCode(i).toLowerCase(),0===s)return t=e.indexOf(i,t+1),void(n=-1!==t);n&&(n=e[t+s]===i)})}while(!n&&t>=0);return t},window.PV=i.a.ProtectedValue,i.a.ProtectedValue.prototype.equals=function(e){if(!e)return!1;if(!e.isProtected)return this.textLength===e.length&&this.includes(e);if(e===this)return!0;const t=this.byteLength;if(t!==e.byteLength)return!1;for(let n=0;n<t;n++)if((this._value[n]^this._salt[n])!=(e._value[n]^e._salt[n]))return!1;return!0},i.a.ProtectedValue.prototype.isFieldReference=function(){if(this.byteLength!==o)return!1;let e=0;return this.forEachChar(t=>{const n=l[e++];if("0"!==n&&t!==n)return!1}),!0}},function(e,t,n){"use strict";n.r(t),n.d(t,"AppRightsChecker",(function(){return r}));var s=n(2),i=n(8),l=n(3),o=n(6),a=n(0);const r={AppPath:"/Applications/KeeWeb.app",init(){o.Features.isDesktop&&o.Features.isMac&&(l.AppSettingsModel.skipFolderRightsWarning||s.Launcher.getAppPath().startsWith(this.AppPath)&&this.needRunInstaller(e=>{e&&(this.showAlert(),this.runInstaller())}))},needRunInstaller(e){s.Launcher.statFile(this.AppPath,t=>{const n=t&&0===t.uid;e(!n)})},showAlert(){const e="sudo chown -R root "+this.AppPath;this.alert=i.Alerts.alert({icon:"lock",header:a.Locale.appRightsAlert,body:a.Locale.appRightsAlertBody1.replace("{}",this.AppPath)+"\n"+a.Locale.appRightsAlertBody2,pre:e,buttons:[{result:"skip",title:a.Locale.alertDoNotAsk,error:!0},i.Alerts.buttons.ok],success:e=>{"skip"===e&&this.dontAskAnymore(),this.alert=null}})},runInstaller(){s.Launcher.spawn({cmd:this.AppPath+"/Contents/Installer/KeeWeb Installer.app/Contents/MacOS/applet",complete:()=>{this.needRunInstaller(e=>{this.alert&&!e&&this.alert.closeWithResult("cancel")})}})},dontAskAnymore(){this.needRunInstaller(e=>{e&&(l.AppSettingsModel.skipFolderRightsWarning=!0)})}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"ModalView",(function(){return a}));var s=n(7),i=n(5),l=n(225),o=n.n(l);class a extends s.View{constructor(e){super(e),this.parent="body",this.modal="alert",this.template=o.a,this.events={"click .modal__buttons button":"buttonClick",click:"bodyClick"},"string"==typeof this.model.esc&&this.onKey(i.Keys.DOM_VK_ESCAPE,this.escPressed,!1,"alert"),"string"==typeof this.model.enter&&this.onKey(i.Keys.DOM_VK_RETURN,this.enterPressed,!1,"alert"),this.once("remove",()=>{this.model.view&&this.model.view.remove()})}render(){super.render(Object.assign({},this.model,{body:this.model.body?this.model.body.toString().split("\n"):""})),this.$el.addClass("modal--hidden"),setTimeout(()=>{this.$el.removeClass("modal--hidden"),document.activeElement.blur()},20),this.model.view&&(this.model.view.parent=".modal__body",this.model.view.render())}change(e){e.header&&this.$el.find(".modal__header").text(e.header)}buttonClick(t){const n=e(t.target).data("result");this.closeWithResult(n)}bodyClick(){"string"==typeof this.model.click&&this.closeWithResult(this.model.click)}escPressed(){this.closeWithResult(this.model.esc)}enterPressed(e){e.stopImmediatePropagation(),e.preventDefault(),this.closeWithResult(this.model.enter)}closeWithResult(e){const t=this.model.checkbox?this.$el.find("#modal__check").is(":checked"):void 0;this.emit("will-close"),this.emit("result",e,t),this.removeView()}closeWithoutResult(){this.emit("will-close"),this.removeView()}removeView(){this.$el.addClass("modal--hidden"),this.unbindEvents(),setTimeout(()=>this.remove(),100)}closeImmediate(){this.emit("will-close"),this.emit("result",void 0),this.unbindEvents(),this.remove()}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"ExportApi",(function(){return i}));var s=n(3);const i={settings:{get:e=>e?s.AppSettingsModel[e]:Object.assign({},s.AppSettingsModel),set(e,t){s.AppSettingsModel[e]=t},del(e){delete s.AppSettingsModel[e]}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"SingleInstanceChecker",(function(){return o}));var s=n(1),i=n(2);const l=Date.now().toString(),o={init(){i.Launcher||(window.addEventListener("storage",o.storageChanged),o.setKey("instanceCheck",l))},storageChanged(e){e.newValue&&("instanceCheck"===e.key&&e.newValue!==l?o.setKey("instanceMaster",l+Math.random().toString()):"instanceMaster"===e.key&&e.newValue.indexOf(l)<0&&(window.removeEventListener("storage",o.storageChanged),s.Events.emit("second-instance")))},setKey(e,t){try{localStorage.setItem(e,t),setTimeout(()=>{localStorage.removeItem(e)},100)}catch(e){}}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FeatureTester",(function(){return i}));var s=n(6);const i={test(){return Promise.resolve().then(()=>this.checkWebAssembly()).then(()=>this.checkLocalStorage())},checkWebAssembly(){try{const t=new e.WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));return new e.WebAssembly.Instance(t)instanceof e.WebAssembly.Instance}catch(e){throw"WebAssembly is not supported"}},checkLocalStorage(){if(!s.Features.isDesktop)try{localStorage.setItem("_test","1"),localStorage.removeItem("_test")}catch(e){throw"LocalStorage is not supported"}}}}.call(this,n(78))},function(e,t,n){"use strict";n.r(t),n.d(t,"PopupNotifier",(function(){return u}));var s=n(1),i=n(2),l=n(8),o=n(16),a=n(0),r=n(9),c=n(14);const u={logger:null,init(){if(this.logger=new r.Logger("popup-notifier"),i.Launcher)window.open=c.noop;else{const e=window.open;window.open=function(...t){const n=e.apply(window,t);return n?(u.deferCheckClosed(n),s.Events.emit("popup-opened",n)):l.Alerts.alertDisplayed||l.Alerts.error({header:a.Locale.authPopupRequired,body:a.Locale.authPopupRequiredBody}),n}}},deferCheckClosed(e){setTimeout(u.checkClosed.bind(u,e),o.Timeouts.CheckWindowClosed)},checkClosed(e){e.closed?setTimeout(u.triggerClosed.bind(u,e),o.Timeouts.CheckWindowClosed):u.deferCheckClosed(e)},triggerClosed(e){s.Events.emit("popup-closed",e)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageCache",(function(){return l}));var s=n(80),i=n(39);class l extends i.StorageBase{constructor(...e){super(...e),this.name="cache",this.enabled=s.IoBrowserCache.enabled,this.system=!0,this.io=null}init(){super.init(),this.io=new s.IoBrowserCache({cacheName:"FilesCache",logger:this.logger})}save(e,t,n,s){this.io.save(e,n,s)}load(e,t,n){this.io.load(e,n)}remove(e,t,n){this.io.remove(e,n)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageOAuthListener",(function(){return c}));var s=n(53),i=n.n(s),l=n(9),o=n(2),a=n(0);const r=new l.Logger("storage-oauth-listener"),c={server:null,listen(e){this.server&&this.stop();const t={};Object.keys(i.a.prototype).forEach(e=>{t[e]=i.a.prototype[e]});const n=o.Launcher.req("http");let s=!1;const l=n.createServer((e,n)=>{n.writeHead(200,"OK",{"Content-Type":"text/plain; charset=UTF-8"}),n.end(a.Locale.appBrowserAuthComplete),s||(this.stop(),this.handleResult(e.url,t),s=!0)});return r.info("Starting OAuth listener on port 48149..."),l.listen(48149),l.on("error",e=>{r.error("Failed to start OAuth listener",e),t.emit("error","Failed to start OAuth listener: "+e),l.close()}),l.on("listening",()=>{this.server=l,t.emit("ready")}),t.redirectUri=`http://localhost:48149/oauth-result/${e}.html`,t},stop(){this.server&&(this.server.close(),r.info("OAuth listener stopped"))},handleResult(e,t){if((e=new URL(e,t.redirectUri)).origin+e.pathname!==t.redirectUri)return void r.info("Skipped result",e,t.redirectUri);r.info("OAuth result with code received");const n=e.searchParams.get("state"),s=e.searchParams.get("code");t.emit("result",{state:n,code:s})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageDropbox",(function(){return c}));var s=n(39),i=n(6),l=n(30),o=n(27),a=n(0);const r="bad-key";class c extends s.StorageBase{constructor(...e){super(...e),this.name="dropbox",this.icon="dropbox",this.enabled=!0,this.uipos=20,this.backup=!0}_toFullPath(e){const t=this.appSettings.dropboxFolder;return t&&(e=l.UrlFormat.fixSlashes("/"+t+"/"+e)),e}_toRelPath(e){const t=this.appSettings.dropboxFolder;if(t){const n=e.toLowerCase().indexOf(t.toLowerCase());0===n?e=e.substr(t.length):1===n&&(e=e.substr(t.length+1)),e=l.UrlFormat.fixSlashes("/"+e)}return e}_fixConfigFolder(e){return"/"===(e=e.replace(/\\/g,"/").trim())[0]&&(e=e.substr(1)),e}_getKey(){return this.appSettings.dropboxAppKey||o.DropboxApps.AppFolder.id}_getSecret(){const e=this._getKey();return e===o.DropboxApps.AppFolder.id?o.DropboxApps.AppFolder.secret:e===o.DropboxApps.FullDropbox.id?o.DropboxApps.FullDropbox.secret:this.appSettings.dropboxSecret}_isValidKey(){const e=this._getKey(),t=e===o.DropboxApps.AppFolder.id||e===o.DropboxApps.FullDropbox.id;return e&&e.indexOf(" ")<0&&(!t||this._canUseBuiltInKeys())}_canUseBuiltInKeys(){return!i.Features.isSelfHosted}_getOAuthConfig(){return{scope:"",url:"https://www.dropbox.com/oauth2/authorize",tokenUrl:"https://api.dropboxapi.com/oauth2/token",clientId:this._getKey(),clientSecret:this._getSecret(),pkce:!1,width:600,height:400}}needShowOpenConfig(){return!this._isValidKey()||!this._getSecret()}getOpenConfig(){return{desc:"dropboxSetupDesc",fields:[{id:"key",title:"dropboxAppKey",desc:"dropboxAppKeyDesc",type:"text",required:!0,pattern:"\\w+"},{id:"secret",title:"dropboxAppSecret",desc:"dropboxAppSecretDesc",type:"password",required:!0,pattern:"\\w+"},{id:"folder",title:"dropboxFolder",desc:"dropboxFolderDesc",type:"text",placeholder:"dropboxFolderPlaceholder"}]}}getSettingsConfig(){const e=[],t=this._getKey(),n={id:"link",title:"dropboxLink",type:"select",value:"custom",options:{app:"dropboxLinkApp",full:"dropboxLinkFull",custom:"dropboxLinkCustom"}},s={id:"key",title:"dropboxAppKey",desc:"dropboxAppKeyDesc",type:"text",required:!0,pattern:"\\w+",value:t},i={id:"secret",title:"dropboxAppSecret",desc:"dropboxAppSecretDesc",type:"password",required:!0,pattern:"\\w+",value:this.appSettings.dropboxSecret||""},l={id:"folder",title:"dropboxFolder",desc:"dropboxFolderSettingsDesc",type:"text",value:this.appSettings.dropboxFolder||""};return this._canUseBuiltInKeys()?(e.push(n),t===o.DropboxApps.AppFolder.id?n.value="app":t===o.DropboxApps.FullDropbox.id?(n.value="full",e.push(l)):(e.push(s),e.push(i),e.push(l))):(e.push(s),e.push(i),e.push(l)),{fields:e}}applyConfig(e,t){if(e.key===o.DropboxApps.AppFolder.id||e.key===o.DropboxApps.FullDropbox.id)return t(r);e.folder&&(e.folder=this._fixConfigFolder(e.folder)),this.appSettings.set({dropboxAppKey:e.key,dropboxSecret:e.secret,dropboxFolder:e.folder}),t()}applySetting(e,t){switch(e){case"link":switch(e="dropboxAppKey",t){case"app":t=o.DropboxApps.AppFolder.id;break;case"full":t=o.DropboxApps.FullDropbox.id;break;case"custom":t=`(${a.Locale.dropboxAppKeyHint})`;break;default:return}this.logout();break;case"key":e="dropboxAppKey",this.logout();break;case"secret":e="dropboxSecret",this.logout();break;case"folder":e="dropboxFolder",t=this._fixConfigFolder(t);break;default:return}this.appSettings[e]=t}getPathForName(e){return"/"+e+".kdbx"}_encodeJsonHttpHeader(e){return e.replace(/[\u007f-\uffff]/g,e=>"\\u"+("000"+e.charCodeAt(0).toString(16)).slice(-4))}_apiCall(e){this._oauthAuthorize(t=>{if(t)return e.error(t);const n=e.host||"api";let s,i,l=e.data;e.apiArg?s={"Dropbox-API-Arg":this._encodeJsonHttpHeader(JSON.stringify(e.apiArg))}:e.data&&(l=JSON.stringify(l),i="application/json"),this._xhr({url:`https://${n}.dropboxapi.com/2/${e.method}`,method:"POST",responseType:e.responseType||"json",headers:s,data:l,dataType:i,statuses:e.statuses||void 0,success:e.success,error:(t,n)=>{let s=n.response&&n.response.error||new Error("Network error");s&&s.path&&"not_found"===s.path[".tag"]?(s=new Error("File removed"),s.notFound=!0,this.logger.debug("File not found",e.method)):this.logger.error("API error",e.method,n.status,s),s.status=n.status,e.error(s)}})})}load(e,t,n){this.logger.debug("Load",e);const s=this.logger.ts();e=this._toFullPath(e),this._apiCall({method:"files/download",host:"content",apiArg:{path:e},responseType:"arraybuffer",success:(t,i)=>{const l=JSON.parse(i.getResponseHeader("dropbox-api-result"));this.logger.debug("Loaded",e,l.rev,this.logger.ts(s)),n(null,t,{rev:l.rev})},error:n})}stat(e,t,n){this.logger.debug("Stat",e);const s=this.logger.ts();e=this._toFullPath(e),this._apiCall({method:"files/get_metadata",data:{path:e},success:t=>{"file"===t[".tag"]?t={rev:t.rev}:"folder"===t[".tag"]&&(t={folder:!0}),this.logger.debug("Stated",e,t.folder?"folder":t.rev,this.logger.ts(s)),n&&n(null,t)},error:n})}save(e,t,n,s,i){this.logger.debug("Save",e,i);const l=this.logger.ts(),o={path:e=this._toFullPath(e),mode:i?{".tag":"update",update:i}:{".tag":"overwrite"}};this._apiCall({method:"files/upload",host:"content",apiArg:o,data:n,responseType:"json",success:t=>{this.logger.debug("Saved",e,t.rev,this.logger.ts(l)),s(null,{rev:t.rev})},error:s})}list(e,t){this.logger.debug("List");const n=this.logger.ts();this._apiCall({method:"files/list_folder",data:{path:this._toFullPath(e||""),recursive:!1},success:e=>{this.logger.debug("Listed",this.logger.ts(n));const s=e.entries.map(e=>({name:e.name,path:this._toRelPath(e.path_display),rev:e.rev,dir:"file"!==e[".tag"]}));t(null,s)},error:t})}remove(e,t){this.logger.debug("Remove",e);const n=this.logger.ts();e=this._toFullPath(e),this._apiCall({method:"files/delete",data:{path:e},success:()=>{this.logger.debug("Removed",e,this.logger.ts(n)),t()},error:t})}mkdir(e,t){this.logger.debug("Make dir",e);const n=this.logger.ts();e=this._toFullPath(e),this._apiCall({method:"files/create_folder",data:{path:e},success:()=>{this.logger.debug("Made dir",e,this.logger.ts(n)),t()},error:t})}logout(){this._oauthRevokeToken("https://api.dropboxapi.com/2/auth/token/revoke",{method:"POST"})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageFile",(function(){return o}));var s=n(2),i=n(39);const l={};class o extends i.StorageBase{constructor(...e){super(...e),this.name="file",this.icon="hdd-o",this.enabled=!!s.Launcher,this.system=!0,this.backup=!0}load(e,t,n){this.logger.debug("Load",e);const i=this.logger.ts(),l=t=>{this.logger.error("Error reading local file",e,t),n&&n(t,null)};s.Launcher.readFile(e,void 0,(t,o)=>{if(o)return l(o);s.Launcher.statFile(e,(s,o)=>{if(o)return l(o);const a=s.mtime.getTime().toString();this.logger.debug("Loaded",e,a,this.logger.ts(i)),n&&n(null,t.buffer,{rev:a})})})}stat(e,t,n){this.logger.debug("Stat",e);const i=this.logger.ts();s.Launcher.statFile(e,(t,s)=>{if(s)return this.logger.error("Error stat local file",e,s),"ENOENT"===s.code&&(s.notFound=!0),n&&n(s,null);if(this.logger.debug("Stat done",e,this.logger.ts(i)),n){const e=t.mtime.getTime().toString();n(null,{rev:e})}})}save(e,t,n,i,l){this.logger.debug("Save",e,l);const o=this.logger.ts(),a=t=>{Object.prototype.hasOwnProperty.call(t,"code")&&"EISDIR"===t.code&&(t.isDir=!0),this.logger.error("Error writing local file",e,t),i&&i(t)},r=()=>{s.Launcher.writeFile(e,n,t=>{if(t)return a(t);s.Launcher.statFile(e,(t,n)=>{if(n)return a(n);const s=t.mtime.getTime().toString();this.logger.debug("Saved",e,this.logger.ts(o)),i&&i(void 0,{rev:s})})})};l?s.Launcher.statFile(e,(e,t)=>{if(t)return r();const n=e.mtime.getTime().toString();if(n!==l)return this.logger.debug("Save mtime differs",l,n),i&&i({revConflict:!0},{rev:n});r()}):r()}mkdir(e,t){this.logger.debug("Make dir",e);const n=this.logger.ts();s.Launcher.mkdir(e,s=>{s?(this.logger.error("Error making local dir",e,s),t&&t("Error making local dir")):(this.logger.debug("Made dir",e,this.logger.ts(n)),t&&t())})}watch(e,t){const n=s.Launcher.parsePath(e);if(!l[n.dir]&&!n.dir.startsWith("\\")){let e;this.logger.debug("Watch dir",n.dir);try{e=s.Launcher.createFsWatcher(n.dir)}catch(e){this.logger.warn("Error watching dir",e)}e&&(e.on("change",this.fsWatcherChange.bind(this,n.dir)),l[n.dir]={fsWatcher:e,callbacks:[]})}const i=l[n.dir];i&&i.callbacks.push({file:n.file,callback:t})}unwatch(e){const t=s.Launcher.parsePath(e),n=l[t.dir];if(n){const e=n.callbacks.findIndex(e=>e.file===t.file);e>=0&&n.callbacks.splice(e,1),n.callbacks.length||(this.logger.debug("Stop watch dir",t.dir),n.fsWatcher.close(),delete l[t.dir])}}fsWatcherChange(e,t,n){const s=l[e];s&&s.callbacks.forEach(s=>{s.file===n&&"function"==typeof s.callback&&(this.logger.debug("File changed",e,t,n),s.callback())})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageFileCache",(function(){return l}));var s=n(2),i=n(39);class l extends i.StorageBase{constructor(...e){super(...e),this.name="cache",this.enabled=!!s.Launcher,this.system=!0,this.path=null}getPath(e){return s.Launcher.joinPath(this.path,e)}initFs(e){if(this.path)return e&&e();const t=s.Launcher.getUserDataPath("OfflineFiles"),n=n=>(this.path=n?null:t,n&&this.logger.error("Error opening local offline storage",n),e&&e(n));s.Launcher.fileExists(t,e=>{e?n():s.Launcher.mkdir(t,n)})}save(e,t,n,i){this.logger.debug("Save",e),this.initFs(t=>{if(t)return i&&i(t);const l=this.logger.ts();s.Launcher.writeFile(this.getPath(e),n,t=>{if(t)return this.logger.error("Error saving to cache",e,t),i&&i(t);this.logger.debug("Saved",e,this.logger.ts(l)),i&&i()})})}load(e,t,n){this.logger.debug("Load",e),this.initFs(t=>{if(t)return n&&n(null,t);const i=this.logger.ts();s.Launcher.readFile(this.getPath(e),void 0,(t,s)=>s?(this.logger.error("Error loading from cache",e,s),n&&n(s,null)):(this.logger.debug("Loaded",e,this.logger.ts(i)),n&&n(null,t.buffer)))})}remove(e,t,n){this.logger.debug("Remove",e),this.initFs(t=>{if(t)return n&&n(t);const i=this.logger.ts(),l=this.getPath(e);s.Launcher.fileExists(l,t=>{t?s.Launcher.deleteFile(l,t=>(t?this.logger.error("Error removing from cache",e,t):this.logger.debug("Removed",e,this.logger.ts(i)),n&&n(t))):n&&n()})})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageGDrive",(function(){return a}));var s=n(39),i=n(0),l=n(6),o=n(27);class a extends s.StorageBase{constructor(...e){super(...e),this.name="gdrive",this.enabled=!0,this.uipos=30,this.iconSvg="google-drive",this._baseUrl="https://www.googleapis.com/drive/v3",this._baseUrlUpload="https://www.googleapis.com/upload/drive/v3"}getPathForName(e){return"NewFile:"+e}load(e,t,n){this.stat(e,t,(t,s)=>{if(t)return n&&n(t);this.logger.debug("Load",e);const i=this.logger.ts(),l=this._baseUrl+"/files/{id}/revisions/{rev}?alt=media".replace("{id}",e).replace("{rev}",s.rev);this._xhr({url:l,responseType:"arraybuffer",success:t=>(this.logger.debug("Loaded",e,s.rev,this.logger.ts(i)),n&&n(null,t,{rev:s.rev})),error:t=>(this.logger.error("Load error",e,t,this.logger.ts(i)),n&&n(t))})})}stat(e,t,n){if(0===e.lastIndexOf("NewFile:",0))return n&&n({notFound:!0});this._oauthAuthorize(t=>{if(t)return n&&n(t);this.logger.debug("Stat",e);const s=this.logger.ts(),i=this._baseUrl+"/files/{id}?fields=headRevisionId".replace("{id}",e);this._xhr({url:i,responseType:"json",success:t=>{const i=t.headRevisionId;return this.logger.debug("Stated",e,i,this.logger.ts(s)),n&&n(null,{rev:i})},error:e=>(this.logger.error("Stat error",this.logger.ts(s),e),n&&n(e))})})}save(e,t,n,s,i){this._oauthAuthorize(l=>{if(l)return s&&s(l);this.stat(e,t,(t,l)=>{if(i){if(t)return s&&s(t);if(l.rev!==i)return s&&s({revConflict:!0},l)}this.logger.debug("Save",e);const o=this.logger.ts(),a=0===e.lastIndexOf("NewFile:",0);let r,c,u=!1;if(a){r=this._baseUrlUpload+"/files?uploadType=multipart&fields=id,headRevisionId";const t=e.replace("NewFile:","")+".kdbx",s="b"+Date.now()+"x"+Math.round(1e6*Math.random());n=["--",s,"\r\n","Content-Type: application/json; charset=UTF-8","\r\n\r\n",JSON.stringify({name:t}),"\r\n","--",s,"\r\n","Content-Type: application/octet-stream","\r\n\r\n",n,"\r\n","--",s,"--","\r\n"],c='multipart/related; boundary="'+s+'"',u=!0}else r=this._baseUrlUpload+"/files/{id}?uploadType=media&fields=headRevisionId".replace("{id}",e);this._xhr({url:r,method:a?"POST":"PATCH",responseType:"json",data:n,dataType:c,dataIsMultipart:u,success:t=>{this.logger.debug("Saved",e,this.logger.ts(o));const n=t.headRevisionId;return n?s&&s(null,{rev:n,path:a?t.id:null}):s&&s("save error: no rev")},error:t=>(this.logger.error("Save error",e,t,this.logger.ts(o)),s&&s(t))})})})}list(e,t){this._oauthAuthorize(n=>{if(n)return t&&t(n);this.logger.debug("List");let s="shared"===e?"sharedWithMe=true":e?`"${e}" in parents`:'"root" in parents';s+=" and trashed=false";const l=this._baseUrl+"/files?fields={fields}&q={q}&pageSize=1000".replace("{fields}",encodeURIComponent("files(id,name,mimeType,headRevisionId)")).replace("{q}",encodeURIComponent(s)),o=this.logger.ts();this._xhr({url:l,responseType:"json",success:n=>{if(!n)return this.logger.error("List error",this.logger.ts(o)),t&&t("list error");this.logger.debug("Listed",this.logger.ts(o));const s=n.files.map(e=>({name:e.name,path:e.id,rev:e.headRevisionId,dir:"application/vnd.google-apps.folder"===e.mimeType}));return e||s.unshift({name:i.Locale.gdriveSharedWithMe,path:"shared",rev:void 0,dir:!0}),t&&t(null,s)},error:e=>(this.logger.error("List error",this.logger.ts(o),e),t&&t(e))})})}remove(e,t){this.logger.debug("Remove",e);const n=this.logger.ts(),s=this._baseUrl+"/files/{id}".replace("{id}",e);this._xhr({url:s,method:"DELETE",responseType:"json",statuses:[200,204],success:()=>(this.logger.debug("Removed",e,this.logger.ts(n)),t&&t()),error:s=>(this.logger.error("Remove error",e,s,this.logger.ts(n)),t&&t(s))})}logout(){this._oauthRevokeToken("https://accounts.google.com/o/oauth2/revoke?token={token}")}_getOAuthConfig(){let e=this.appSettings.gdriveClientId,t=this.appSettings.gdriveClientSecret;return e&&t||(l.Features.isDesktop?({id:e,secret:t}=o.GDriveApps.Desktop):l.Features.isLocal?({id:e,secret:t}=o.GDriveApps.Local):({id:e,secret:t}=o.GDriveApps.Production)),{scope:"https://www.googleapis.com/auth/drive",url:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",clientId:e,clientSecret:t,width:600,height:400,pkce:!0,redirectUrlParams:{access_type:"offline"}}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageOneDrive",(function(){return o}));var s=n(39),i=n(27),l=n(6);class o extends s.StorageBase{constructor(...e){super(...e),this.name="onedrive",this.enabled=!0,this.uipos=40,this.iconSvg="onedrive",this._baseUrl="https://graph.microsoft.com/v1.0/me"}getPathForName(e){return"/drive/root:/"+e+".kdbx"}load(e,t,n){this._oauthAuthorize(t=>{if(t)return n&&n(t);this.logger.debug("Load",e);const s=this.logger.ts(),i=this._baseUrl+e;this._xhr({url:i,responseType:"json",success:t=>{const i=t["@microsoft.graph.downloadUrl"];let l=t.eTag;if(!i||!t.eTag)return this.logger.debug("Load error",e,"no download url",t,this.logger.ts(s)),n&&n("no download url");this._xhr({url:i,responseType:"arraybuffer",skipAuth:!0,success:(t,i)=>(l=i.getResponseHeader("ETag")||l,this.logger.debug("Loaded",e,l,this.logger.ts(s)),n&&n(null,t,{rev:l})),error:t=>(this.logger.error("Load error",e,t,this.logger.ts(s)),n&&n(t))})},error:t=>(this.logger.error("Load error",e,t,this.logger.ts(s)),n&&n(t))})})}stat(e,t,n){this._oauthAuthorize(t=>{if(t)return n&&n(t);this.logger.debug("Stat",e);const s=this.logger.ts(),i=this._baseUrl+e;this._xhr({url:i,responseType:"json",success:t=>{const i=t.eTag;return i?(this.logger.debug("Stated",e,i,this.logger.ts(s)),n&&n(null,{rev:i})):(this.logger.error("Stat error",e,"no eTag",this.logger.ts(s)),n&&n("no eTag"))},error:(t,i)=>404===i.status?(this.logger.debug("Stated not found",e,this.logger.ts(s)),n&&n({notFound:!0})):(this.logger.error("Stat error",e,t,this.logger.ts(s)),n&&n(t))})})}save(e,t,n,s,i){this._oauthAuthorize(t=>{if(t)return s&&s(t);this.logger.debug("Save",e,i);const l=this.logger.ts(),o=this._baseUrl+e+":/content";this._xhr({url:o,method:"PUT",responseType:"json",headers:i?{"If-Match":i}:null,data:n,statuses:[200,201,412],success:(t,n)=>(i=t.eTag)?412===n.status?(this.logger.debug("Save conflict",e,i,this.logger.ts(l)),s&&s({revConflict:!0},{rev:i})):(this.logger.debug("Saved",e,i,this.logger.ts(l)),s&&s(null,{rev:i})):(this.logger.error("Save error",e,"no eTag",this.logger.ts(l)),s&&s("no eTag")),error:t=>(this.logger.error("Save error",e,t,this.logger.ts(l)),s&&s(t))})})}list(e,t){this._oauthAuthorize(n=>{if(n)return t&&t(n);this.logger.debug("List");const s=this.logger.ts(),i=this._baseUrl+(e?e+":/children":"/drive/root/children");this._xhr({url:i,responseType:"json",success:e=>{if(!e||!e.value)return this.logger.error("List error",this.logger.ts(s),e),t&&t("list error");this.logger.debug("Listed",this.logger.ts(s));const n=e.value.filter(e=>e.name).map(e=>({name:e.name,path:e.parentReference.path+"/"+e.name,rev:e.eTag,dir:!!e.folder}));return t&&t(null,n)},error:e=>(this.logger.error("List error",this.logger.ts(s),e),t&&t(e))})})}remove(e,t){this.logger.debug("Remove",e);const n=this.logger.ts(),s=this._baseUrl+e;this._xhr({url:s,method:"DELETE",responseType:"json",statuses:[200,204],success:()=>(this.logger.debug("Removed",e,this.logger.ts(n)),t&&t()),error:s=>(this.logger.error("Remove error",e,s,this.logger.ts(n)),t&&t(s))})}mkdir(e,t){this._oauthAuthorize(n=>{if(n)return t&&t(n);this.logger.debug("Make dir",e);const s=this.logger.ts(),i=this._baseUrl+"/drive/root/children",l=JSON.stringify({name:e.replace("/drive/root:/",""),folder:{}});this._xhr({url:i,method:"POST",responseType:"json",statuses:[200,204],data:l,dataType:"application/json",success:()=>(this.logger.debug("Made dir",e,this.logger.ts(s)),t&&t()),error:n=>(this.logger.error("Make dir error",e,n,this.logger.ts(s)),t&&t(n))})})}logout(e){this._oauthRevokeToken()}_getOAuthConfig(){let e=this.appSettings.onedriveClientId,t=this.appSettings.onedriveClientSecret;return e&&t||(l.Features.isLocal?({id:e,secret:t}=i.OneDriveApps.Local):({id:e,secret:t}=i.OneDriveApps.Production)),{url:"https://login.microsoftonline.com/common/oauth2/v2.0/authorize",tokenUrl:"https://login.microsoftonline.com/common/oauth2/v2.0/token",scope:"files.readwrite offline_access",clientId:e,clientSecret:t,pkce:!0,width:600,height:500}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"StorageWebDav",(function(){return i}));var s=n(39);class i extends s.StorageBase{constructor(...e){super(...e),this.name="webdav",this.icon="server",this.enabled=!0,this.uipos=10}needShowOpenConfig(){return!0}getOpenConfig(){return{fields:[{id:"path",title:"openUrl",desc:"openUrlDesc",type:"text",required:!0,pattern:"^https://.+"},{id:"user",title:"openUser",desc:"openUserDesc",placeholder:"openUserPlaceholder",type:"text"},{id:"password",title:"openPass",desc:"openPassDesc",placeholder:"openPassPlaceholder",type:"password"}]}}getSettingsConfig(){return{fields:[{id:"webdavSaveMethod",title:"webdavSaveMethod",type:"select",value:this.appSettings.webdavSaveMethod||"default",options:{default:"webdavSaveMove",put:"webdavSavePut"}}]}}applySetting(e,t){this.appSettings[e]=t}load(e,t,n){this._request({op:"Load",method:"GET",path:e,user:t?t.user:null,password:t?t.password:null},n?(e,t,s)=>{n(e,t.response,s)}:null)}stat(e,t,n){this._request({op:"Stat",method:"HEAD",path:e,user:t?t.user:null,password:t?t.password:null},n?(e,t,s)=>{n(e,s)}:null)}save(e,t,n,s,i){const l=function(e,t,n){s&&(s(e,n),s=null)},o=e.replace(/[^\/]+$/,e=>"."+e)+"."+Date.now(),a={path:e,user:t?t.user:null,password:t?t.password:null},r=this;this._request(Object.assign({},a,{op:"Save:stat",method:"HEAD"}),(t,s,c)=>{let u="put"!==this.appSettings.webdavSaveMethod;if(t){if(!t.notFound)return l(t);r.logger.debug("Save: not found, creating"),u=!1}else if(c.rev!==i)return r.logger.debug("Save error",e,"rev conflict",c.rev,i),l({revConflict:!0},0,c);u?r._request(Object.assign({},a,{op:"Save:put",method:"PUT",path:o,data:n,nostat:!0}),t=>{if(t)return l(t);r._request(Object.assign({},a,{op:"Save:stat",method:"HEAD"}),(t,n,s)=>{if(t)return r._request(Object.assign({},a,{op:"Save:delete",method:"DELETE",path:o})),l(t,0,s);if(s.rev!==i)return r.logger.debug("Save error",e,"rev conflict",s.rev,i),r._request(Object.assign({},a,{op:"Save:delete",method:"DELETE",path:o})),l({revConflict:!0},0,s);let c=e;c.indexOf("://")<0&&(c=0===c.indexOf("/")?location.protocol+"//"+location.host+c:location.href.replace(/\?(.*)/,"").replace(/[^/]*$/,c)),r._request(Object.assign({},a,{op:"Save:move",method:"MOVE",path:o,nostat:!0,headers:{Destination:encodeURI(c),Overwrite:"T"}}),e=>{if(e)return l(e);r._request(Object.assign({},a,{op:"Save:stat",method:"HEAD"}),(e,t,n)=>{l(e,0,n)})})})}):r._request(Object.assign({},a,{op:"Save:put",method:"PUT",data:n,nostat:!0}),e=>{if(e)return l(e);r._request(Object.assign({},a,{op:"Save:stat",method:"HEAD"}),(e,t,n)=>{l(e,0,n)})})})}fileOptsToStoreOpts(e,t){const n={user:e.user,encpass:e.encpass};if(e.password){const s=t.uuid,i=e.password;let l="";for(let e=0;e<i.length;e++)l+=String.fromCharCode(i.charCodeAt(e)^s.charCodeAt(e%s.length));n.encpass=btoa(l)}return n}storeOptsToFileOpts(e,t){const n={user:e.user,password:e.password};if(e.encpass){const s=t.uuid,i=atob(e.encpass);let l="";for(let e=0;e<i.length;e++)l+=String.fromCharCode(i.charCodeAt(e)^s.charCodeAt(e%s.length));n.password=l}return n}_request(e,t){const n=this;e.rev?n.logger.debug(e.op,e.path,e.rev):n.logger.debug(e.op,e.path);const s=n.logger.ts(),i=new XMLHttpRequest;if(i.addEventListener("load",()=>{if([200,201,204].indexOf(i.status)<0){let l;switch(n.logger.debug(e.op+" error",e.path,i.status,n.logger.ts(s)),i.status){case 404:l={notFound:!0};break;case 412:l={revConflict:!0};break;default:l="HTTP status "+i.status}return void(t&&(t(l,i),t=null))}const l=i.getResponseHeader("Last-Modified");if(!l&&!e.nostat)return n.logger.debug(e.op+" error",e.path,"no headers",n.logger.ts(s)),void(t&&(t("No Last-Modified header",i),t=null));const o=e.op+("e"===e.op.charAt(e.op.length-1)?"d":"ed");n.logger.debug(o,e.path,l,n.logger.ts(s)),t&&(t(null,i,l?{rev:l}:null),t=null)}),i.addEventListener("error",()=>{n.logger.debug(e.op+" error",e.path,n.logger.ts(s)),t&&(t("network error",i),t=null)}),i.addEventListener("abort",()=>{n.logger.debug(e.op+" error",e.path,"aborted",n.logger.ts(s)),t&&(t("aborted",i),t=null)}),i.open(e.method,e.path),i.responseType="arraybuffer",e.user&&i.setRequestHeader("Authorization","Basic "+btoa(e.user+":"+e.password)),e.headers)for(const[t,n]of Object.entries(e.headers))i.setRequestHeader(t,n);if(["GET","HEAD"].indexOf(e.method)>=0&&i.setRequestHeader("Cache-Control","no-cache"),e.data){const t=new Blob([e.data],{type:"application/octet-stream"});i.send(t)}else i.send()}}},function(e,t,n){"use strict";n.r(t),n.d(t,"FileCollection",(function(){return l}));var s=n(28),i=n(18);class l extends s.Collection{hasOpenFiles(){return this.some(e=>e.active)}hasUnsavedFiles(){return this.some(e=>e.modified)}hasDirtyFiles(){return this.some(e=>e.dirty)}getByName(e){return this.find(t=>t.name.toLowerCase()===e.toLowerCase())}}l.model=i.Model},function(e,t,n){"use strict";n.r(t),n.d(t,"AttachmentModel",(function(){return i}));var s=n(18);class i extends s.Model{getBinary(){let e=this.data;if(e&&e.ref&&(e=e.value),e&&e.getBinary&&(e=e.getBinary()),e instanceof ArrayBuffer&&e.byteLength&&(e=new Uint8Array(e)),e instanceof Uint8Array)return e}static fromAttachment(e){const t=function(e){const t=e?e.split(".").pop():void 0;return t?t.toLowerCase():void 0}(e.title);return new i({title:e.title,data:e.data,ext:t,icon:l(t),mimeType:o(t)})}}function l(e){switch(e){case"txt":case"log":case"rtf":case"pem":return"file-text-o";case"html":case"htm":case"js":case"css":case"xml":case"config":case"json":case"yaml":case"cpp":case"c":case"h":case"cc":case"hpp":case"mm":case"cs":case"php":case"sh":case"py":case"java":case"rb":case"cfg":case"properties":case"yml":case"asm":case"bat":return"file-code-o";case"pdf":return"file-pdf-o";case"zip":case"rar":case"bz":case"bz2":case"7z":case"gzip":case"gz":case"tar":case"cab":case"ace":case"dmg":case"jar":return"file-archive-o";case"doc":case"docx":return"file-word-o";case"xls":case"xlsx":return"file-excel-o";case"ppt":case"pptx":return"file-powerpoint-o";case"jpeg":case"jpg":case"png":case"gif":case"bmp":case"tiff":case"svg":case"ico":case"psd":return"file-image-o";case"avi":case"mp4":case"3gp":case"m4v":case"mov":case"mpeg":case"mpg":case"mpe":return"file-video-o";case"mp3":case"wav":case"flac":return"file-audio-o"}return"file-o"}function o(e){switch(e){case"txt":case"log":case"html":case"htm":case"js":case"css":case"xml":case"config":case"json":case"yaml":case"cpp":case"c":case"h":case"cc":case"hpp":case"mm":case"cs":case"php":case"sh":case"py":case"java":case"rb":case"cfg":case"properties":case"yml":case"asm":case"pem":return"text/plain";case"pdf":return"application/pdf";case"jpeg":case"jpg":case"png":case"gif":case"bmp":case"tiff":case"svg":return"image/"+e}}i.defineModelProperties({title:void 0,data:void 0,ext:void 0,icon:void 0,mimeType:void 0})},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuOptionCollection",(function(){return l}));var s=n(28),i=n(94);class l extends s.Collection{}l.model=i.MenuOptionModel},function(e,t,n){"use strict";n.r(t),n.d(t,"EntryCollection",(function(){return l}));var s=n(28),i=n(47);class l extends s.Collection{}l.model=i.EntryModel},function(e,t,n){"use strict";n.r(t),n.d(t,"YubiKeyOtpModel",(function(){return u}));var s=n(1),i=n(139),l=n(142),o=n(9),a=n(23),r=n(26);const c=new o.Logger("yubikey");class u extends i.ExternalOtpDeviceModel{constructor(e){super(Object.assign({id:"yubikey",name:"YubiKey",shortName:"YubiKey",deviceClassName:"YubiKey"},e)),this.onUsbDevicesChanged=()=>{0===a.UsbListener.attachedYubiKeys&&this.emit("ejected")}}open(e){r.YubiKey.listWithYkman((t,n)=>{if(t)return e(t);let s=0;const i=[],l=()=>{const t=n.shift();this._addYubiKey(t.serial,t=>{if(r.YubiKey.aborted)return e("Aborted");t?i.push(t):s++,n&&n.length?l():(s&&this._openComplete(),e(s?null:i[0]))})};l()})}_addYubiKey(e,t){c.info("Adding YubiKey",e),r.YubiKey.getOtpCodes(e,(n,s)=>{if(n)return t(n);for(const t of s)this.entries.push(new l.ExternalOtpEntryModel({id:this.entryId(t.title,t.user),device:this,deviceSubId:e,icon:"clock-o",title:t.title,user:t.user,needsTouch:t.needsTouch}));t()})}_openComplete(){this.active=!0,this._buildEntryMap(),s.Events.on("usb-devices-changed",this.onUsbDevicesChanged)}cancelOpen(){r.YubiKey.abort(),s.Events.off("usb-devices-changed",this.onUsbDevicesChanged)}getOtp(e,t){const n=3e4-Date.now()%3e4+500;r.YubiKey.getOtp(e.deviceSubId,`${e.title}:${e.user}`,(e,s)=>{t(e,s,n)})}cancelGetOtp(e,t){t&&t.kill()}close(e){s.Events.off("usb-devices-changed",this.onUsbDevicesChanged),this.set({active:!1})}}u.defineModelProperties({onUsbDevicesChanged:null})},function(e,t,n){"use strict";n.r(t),n.d(t,"ExternalOtpDeviceModel",(function(){return i}));var s=n(140);class i extends s.ExternalDeviceModel{open(e){throw"Not implemented"}cancelOpen(){throw"Not implemented"}close(e){throw"Not implemented"}getOtp(e){throw"Not implemented"}}},function(e,t,n){"use strict";n.r(t),n.d(t,"ExternalDeviceModel",(function(){return l}));var s=n(18),i=n(141);class l extends s.Model{constructor(...e){super(...e),this.entries=new i.ExternalEntryCollection,this.groups=[],this.entryMap={}}close(){}forEachEntry(e,t){if(!(e.trash||e.group||e.tag))for(const n of this.entries)n.matches(e)&&t(n)}entryId(e,t){return`${e}:${t}`.toLowerCase()}getMatchingEntry(e){return this.entryMap[this.entryId(e.title,e.user)]}_buildEntryMap(){for(const e of this.entries)this.entryMap[e.id.toLowerCase()]=e}}l.defineModelProperties({id:"",external:!0,readOnly:!0,active:!1,entries:void 0,groups:void 0,name:void 0,shortName:void 0,deviceClassName:void 0,entryMap:void 0})},function(e,t,n){"use strict";n.r(t),n.d(t,"ExternalEntryCollection",(function(){return l}));var s=n(28),i=n(95);class l extends s.Collection{}l.model=i.ExternalEntryModel},function(e,t,n){"use strict";n.r(t),n.d(t,"ExternalOtpEntryModel",(function(){return i}));var s=n(95);class i extends s.ExternalEntryModel{constructor(e){super(Object.assign({},e,{description:e.user}))}initOtpGenerator(){if(this.otpGenerator)return;const e={next:t=>{if(e.otp&&e.expires){const n=e.expires-Date.now();if(n>0)return t(null,e.otp,n)}e.promise?e.promise.then(({err:e,otp:n,timeLeft:s})=>{t(e,n,s)}):e.promise=new Promise(n=>{e.otpState=this.device.getOtp(this,(s,i,l)=>{e.otpState=null,e.promise=null,i&&l>0?(e.otp=i,e.expires=Date.now()+l):(e.otp=null,e.expires=null),t(s,i,l),n({err:s,otp:i,timeLeft:l})})})},cancel:()=>{this.otpState&&this.device.cancelGetOtp(this,this.otpState)}};this.otpGenerator=e}_buildFields(){super._buildFields(),this.fields.UserName=this.user}}i.defineModelProperties({user:void 0,otpGenerator:void 0,needsTouch:!1})},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuModel",(function(){return h}));var s=n(18),i=n(1),l=n(108),o=n(73),a=n(5),r=n(145),c=n(38),u=n(10),d=n(0),p=n(2);class h extends s.Model{constructor(){super(),this.menus={},this.allItemsSection=new c.MenuSectionModel([{locTitle:"menuAllItems",icon:"th-large",active:!0,shortcut:a.Keys.DOM_VK_A,filterKey:"*"}]),this.allItemsItem=this.allItemsSection.items[0],this.groupsSection=new r.GroupsMenuModel,this.colorsSection=new c.MenuSectionModel([{locTitle:"menuColors",icon:"bookmark",shortcut:a.Keys.DOM_VK_C,cls:"menu__item-colors",filterKey:"color",filterValue:!0}]),this.colorsItem=this.colorsSection.items[0];const e=[this._getDefaultTagItem()];this.tagsSection=new c.MenuSectionModel(e),this.tagsSection.set({scrollable:!0,drag:!0}),this.tagsSection.defaultItems=e,this.trashSection=new c.MenuSectionModel([{locTitle:"menuTrash",icon:"trash",shortcut:a.Keys.DOM_VK_D,filterKey:"trash",filterValue:!0,drop:!0}]),o.Colors.AllColors.forEach(e=>{const t={cls:"fa "+e+"-color",value:e,filterValue:e};this.colorsSection.items[0].addOption(t)}),this.menus.app=new l.MenuSectionCollection([this.allItemsSection,this.colorsSection,this.tagsSection,this.groupsSection,this.trashSection]),this.generalSection=new c.MenuSectionModel([{locTitle:"menuSetGeneral",icon:"cog",page:"general",active:!0}]),this.shortcutsSection=new c.MenuSectionModel([{locTitle:"shortcuts",icon:"keyboard-o",page:"shortcuts"}]),this.pluginsSection=new c.MenuSectionModel([{locTitle:"plugins",icon:"puzzle-piece",page:"plugins"}]),p.Launcher&&(this.devicesSection=new c.MenuSectionModel([{locTitle:"menuSetDevices",icon:"usb",page:"devices"}])),this.aboutSection=new c.MenuSectionModel([{locTitle:"menuSetAbout",icon:"info",page:"about"}]),this.helpSection=new c.MenuSectionModel([{locTitle:"help",icon:"question",page:"help"}]),this.filesSection=new c.MenuSectionModel,this.filesSection.set({scrollable:!0,grow:!0}),this.menus.settings=new l.MenuSectionCollection([this.generalSection,this.shortcutsSection,this.pluginsSection,this.devicesSection,this.aboutSection,this.helpSection,this.filesSection].filter(e=>e)),this.sections=this.menus.app,i.Events.on("set-locale",this._setLocale.bind(this)),i.Events.on("select-next-menu-item",this._selectNext.bind(this)),i.Events.on("select-previous-menu-item",this._selectPrevious.bind(this)),this._setLocale()}select(e){const t=this.sections;for(const n of t)this._select(n,e.item);if(t===this.menus.app){this.colorsItem.options.forEach(t=>{t.active=t===e.option});const t=e.item===this.colorsItem&&e.option?e.option.value+"-color":"";this.colorsItem.cls="menu__item-colors "+t;const n=e.item.filterKey,s=(e.option||e.item).filterValue,l={};l[n]=s,i.Events.emit("set-filter",l)}else t===this.menus.settings&&i.Events.emit("set-page",{page:e.item.page,file:e.item.file})}_selectPrevious(){let e=null;const t=n=>{if(!1===n.visible)return!0;n.active&&(e=n);const s=n.items;s&&s.forEach(n=>n.active&&e?(this.select({item:e}),!1):t(n))};this.sections.forEach(e=>t(e))}_selectNext(){let e=null;const t=n=>{if(!1===n.visible)return!0;if(n.active&&e&&n!==e)return this.select({item:n}),e=null,!1;const s=n.items;s&&s.forEach(n=>(n.active&&(e=n),t(n)))};this.sections.forEach(e=>t(e))}_select(e,t){const n=e.items;if(n)for(const e of n)e.active=e===t,this._select(e,t)}_setLocale(){for(const e of[this.menus.app,this.menus.settings])for(const t of e)for(const e of t.items)e.locTitle&&(e.title=u.StringFormat.capFirst(d.Locale[e.locTitle]));this.tagsSection.defaultItems[0]=this._getDefaultTagItem()}_getDefaultTagItem(){return{title:u.StringFormat.capFirst(d.Locale.tags),icon:"tags",defaultItem:!0,disabled:{header:d.Locale.menuAlertNoTags,body:d.Locale.menuAlertNoTagsBody,icon:"tags"}}}setMenu(e){this.sections=this.menus[e]}}h.defineModelProperties({sections:null,menu:null},{extensions:!0})},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuItemCollection",(function(){return l}));var s=n(28),i=n(58);class l extends s.Collection{}l.model=i.MenuItemModel},function(e,t,n){"use strict";n.r(t),n.d(t,"GroupsMenuModel",(function(){return l}));var s=n(69),i=n(38);class l extends i.MenuSectionModel{constructor(){super(new s.GroupCollection)}}l.defineModelProperties({scrollable:!0,grow:!0})},function(e,t,n){"use strict";n.r(t),n.d(t,"PluginApi",(function(){return i}));const s={kdbxweb:n(4),hbs:n(11),pikaday:n(100),qrcode:n(147)},i={require:e=>s[e]||n(293)("./"+e)}},,function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeFilter",(function(){return o}));var s=n(66),i=n(92);const l=/^(\w+:\/\/)?(?:(?:www|wwws|secure)\.)?([^\/]+)\/?(.*)/,o=function(e,t){this.title=e.title,this.url=e.url,this.text="",this.ignoreWindowInfo=!1,this.appModel=t};o.prototype.getEntries=function(){const e={text:this.text,autoType:!0};this.prepareFilter();let t=this.appModel.getEntriesByFilter(e).map(e=>[e,this.getEntryRank(e)]);return this.ignoreWindowInfo||(t=t.filter(e=>e[1])),t=t.sort((e,t)=>e[1]===t[1]?e[0].title.localeCompare(t[0].title):t[1]-e[1]),t=t.map(e=>e[0]),new s.SearchResultCollection(t,{comparator:"none"})},o.prototype.hasWindowInfo=function(){return this.title||this.url},o.prototype.prepareFilter=function(){this.titleLower=this.title?this.title.toLowerCase():null,this.urlLower=this.url?this.url.toLowerCase():null,this.urlParts=this.url?l.exec(this.urlLower):null},o.prototype.getEntryRank=function(e){let t=0;if(this.titleLower&&e.title&&(t+=i.Ranking.getStringRank(e.title.toLowerCase(),this.titleLower)),this.urlParts)if(e.url){const n=l.exec(e.url.toLowerCase());if(n){const[,s,i,l]=n,[,o,a,r]=this.urlParts;if(i===a||a.indexOf("."+i)>0)t+=i===a?20:10,l===r?t+=10:l&&r&&(0===l.lastIndexOf(r,0)?t+=5:0===r.lastIndexOf(l,0)&&(t+=3)),s===o&&(t+=1);else{if(!(e.searchText.indexOf(this.urlLower)>=0))return 0;t+=5}}}else e.searchText.indexOf(this.urlLower)>=0&&(t+=5);return t}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeHelperFactory",(function(){return i}));var s=n(2);const i={create(){if(s.Launcher&&s.Launcher.autoTypeSupported){const{AutoTypeHelper:e}=n(294)("./auto-type-helper-"+s.Launcher.platform());return new e}return null}}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeRunner",(function(){return r}));var s=n(151),i=n(152),l=n(10),o=n(9);const a=new o.Logger("auto-type-emitter",void 0,localStorage.debugAutoType?o.Logger.Level.All:o.Logger.Level.Warn),r=function(e){this.ops=e,this.pendingResolvesCount=0,this.entry=null,this.now=new Date};r.PendingResolve={pending:!0},r.Keys={tab:"tab",enter:"enter",space:"space",up:"up",down:"down",left:"left",right:"right",home:"home",end:"end",pgup:"pgup",pgdn:"pgdn",insert:"ins",ins:"ins",delete:"del",del:"del",backspace:"bs",bs:"bs",bksp:"bs",esc:"esc",win:"win",lwin:"win",rwin:"rwin",f1:"f1",f2:"f2",f3:"f3",f4:"f4",f5:"f5",f6:"f6",f7:"f7",f8:"f8",f9:"f9",f10:"f10",f11:"f11",f12:"f12",f13:"f13",f14:"f14",f15:"f15",f16:"f16",add:"add",subtract:"subtract",multiply:"multiply",divide:"divide",numpad0:"n0",numpad1:"n1",numpad2:"n2",numpad3:"n3",numpad4:"n4",numpad5:"n5",numpad6:"n6",numpad7:"n7",numpad8:"n8",numpad9:"n9"},r.Substitutions={title:(e,t)=>e.getEntryFieldKeys("Title",t),username:(e,t)=>e.getEntryFieldKeys("UserName",t),url:(e,t)=>e.getEntryFieldKeys("URL",t),password:(e,t)=>e.getEntryFieldKeys("Password",t),notes:(e,t)=>e.getEntryFieldKeys("Notes",t),group:e=>e.getEntryGroupName(),totp:(e,t)=>e.getOtp(t),s:(e,t)=>e.getEntryFieldKeys(t.arg,t),dt_simple:e=>e.dt("simple"),dt_year:e=>e.dt("Y"),dt_month:e=>e.dt("M"),dt_day:e=>e.dt("D"),dt_hour:e=>e.dt("h"),dt_minute:e=>e.dt("m"),dt_second:e=>e.dt("s"),dt_utc_simple:e=>e.udt("simple"),dt_utc_year:e=>e.udt("Y"),dt_utc_month:e=>e.udt("M"),dt_utc_day:e=>e.udt("D"),dt_utc_hour:e=>e.udt("h"),dt_utc_minute:e=>e.udt("m"),dt_utc_second:e=>e.udt("s")},r.prototype.resolve=function(e,t,n){this.entry=e,this.context=t;try{this.resolveOps(this.ops),this.pendingResolvesCount?this.resolveCallback=n:n()}catch(e){return n(e)}},r.prototype.resolveOps=function(e){for(let t=0,n=e.length;t<n;t++){const n=e[t];"group"===n.type?this.resolveOps(n.value):this.resolveOp(n)}},r.prototype.resolveOp=function(e){var t,n;if(1===e.value.length&&!e.sep)return void(e.type="text");if(1===e.value.length&&" "===e.sep){e.type="text";const t=e.value;let n=t;const s=+e.arg;for(;n.length<s;)n+=t;return void(e.value=n)}const s=e.value.toLowerCase(),i=r.Keys[s];if(i){if(" "===e.sep&&+e.arg>0){e.type="group",e.value=[];const t=+e.arg;for(let n=0;n<t;n++)e.value.push({type:"key",value:i})}else e.type="key",e.value=i;return}if(null===(t=this.context)||void 0===t||null===(n=t.resolved)||void 0===n?void 0:n[s])return e.type="text",void(e.value=this.context.resolved[s]);const l=r.Substitutions[s];if(l)return e.type="text",e.value=l(this,e),void(e.value===r.PendingResolve&&this.pendingResolvesCount++);if(!this.tryParseCommand(e))throw"Bad op: "+e.value},r.prototype.tryParseCommand=function(e){switch(e.value.toLowerCase()){case"clearfield":return e.type="group",e.value=[{type:"key",value:"end"},{type:"key",value:"home",mod:{"+":!0}},{type:"key",value:"bs"}],!0;case"vkey":if(e.type="key",e.value=parseInt(e.arg),isNaN(e.value)||e.value<=0)throw"Bad vkey: "+e.arg;return!0;case"delay":if(e.type="cmd",e.value="="===e.sep?"setDelay":"wait",!e.arg)throw"Delay requires milliseconds count";if(isNaN(+e.arg))throw"Bad delay: "+e.arg;if(e.arg<0)throw"Delay requires positive interval";return e.arg=+e.arg,!0;default:return!1}},r.prototype.getEntryFieldKeys=function(e,t){if(!e||!this.entry)return"";const n=this.entry.getFieldValue(e);if(!n)return"";if(n.isProtected){t.type="group";const e=[];return n.forEachChar(t=>{10===t||13===t?e.push({type:"key",value:"enter"}):e.push({type:"text",value:String.fromCharCode(t)})}),e}{const e=n.split(/[\r\n]/g);if(1===e.length)return n;t.type="group";const s=[];return e.forEach(e=>{s.length&&s.push({type:"key",value:"enter"}),e&&s.push({type:"text",value:e})}),s}},r.prototype.getEntryGroupName=function(){return this.entry&&this.entry.group.title},r.prototype.dt=function(e){switch(e){case"simple":return this.dt("Y")+this.dt("M")+this.dt("D")+this.dt("h")+this.dt("m")+this.dt("s");case"Y":return this.now.getFullYear().toString();case"M":return l.StringFormat.pad(this.now.getMonth()+1,2);case"D":return l.StringFormat.pad(this.now.getDate(),2);case"h":return l.StringFormat.pad(this.now.getHours(),2);case"m":return l.StringFormat.pad(this.now.getMinutes(),2);case"s":return l.StringFormat.pad(this.now.getSeconds(),2);default:throw"Bad part: "+e}},r.prototype.udt=function(e){switch(e){case"simple":return this.udt("Y")+this.udt("M")+this.udt("D")+this.udt("h")+this.udt("m")+this.udt("s");case"Y":return this.now.getUTCFullYear().toString();case"M":return l.StringFormat.pad(this.now.getUTCMonth()+1,2);case"D":return l.StringFormat.pad(this.now.getUTCDate(),2);case"h":return l.StringFormat.pad(this.now.getUTCHours(),2);case"m":return l.StringFormat.pad(this.now.getUTCMinutes(),2);case"s":return l.StringFormat.pad(this.now.getUTCSeconds(),2);default:throw"Bad part: "+e}},r.prototype.getOtp=function(e){return this.entry?(this.entry.initOtpGenerator(),this.entry.otpGenerator?(this.entry.otpGenerator.next((t,n)=>{this.pendingResolved(e,n,t)}),r.PendingResolve):""):""},r.prototype.pendingResolved=function(e,t,n){const s=e.value===r.PendingResolve;t&&(e.value=t),s&&(this.pendingResolvesCount--,(0===this.pendingResolvesCount||n)&&this.resolveCallback&&(this.resolveCallback(n),this.resolveCallback=null))},r.prototype.obfuscate=function(){this.obfuscateOps(this.ops)},r.prototype.obfuscateOps=function(e){for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.mod)if("text"===n.type)this.obfuscateOp(n);else if("group"===n.type){n.value.every(e=>"text"===e.type&&!e.mod)?this.obfuscateOp(n):this.obfuscateOps(n.value)}}},r.prototype.obfuscateOp=function(e){let t=[];if("text"===e.type){if(!e.value||e.value.length<=1)return;t=e.value.split("")}else e.value.forEach(e=>t.push(...e.value.split("")));if(t.length<=1)return;const n=new i.AutoTypeObfuscator(t);e.value=n.obfuscate(),e.type="group"},r.prototype.run=function(e,t){this.emitter=s.AutoTypeEmitterFactory.create(this.emitNext.bind(this),t),this.emitterState={callback:e,stack:[],ops:this.ops,opIx:0,mod:{},activeMod:{},finished:null},this.emitNext()},r.prototype.emitNext=function(e){if(e)return this.emitterState.finished=!0,void this.emitterState.callback(e);if(this.emitterState.finished)return void this.emitterState.callback();if(this.resetEmitterMod(this.emitterState.mod),this.emitterState.opIx>=this.emitterState.ops.length){const e=this.emitterState.stack.pop();return void(e?(Object.assign(this.emitterState,{ops:e.ops,opIx:e.opIx,mod:e.mod}),this.emitNext()):(this.resetEmitterMod({}),this.emitterState.finished=!0,a.debug("waitComplete"),this.emitter.waitComplete()))}const t=this.emitterState.ops[this.emitterState.opIx];if("group"===t.type)return t.mod&&this.setEmitterMod(t.mod),this.emitterState.stack.push({ops:this.emitterState.ops,opIx:this.emitterState.opIx+1,mod:Object.assign({},this.emitterState.mod)}),Object.assign(this.emitterState,{ops:t.value,opIx:0,mod:Object.assign({},this.emitterState.activeMod)}),void this.emitNext();switch(this.emitterState.opIx++,t.mod&&this.setEmitterMod(t.mod),t.type){case"text":a.debug("text",t.value),t.value?this.emitter.text(t.value):this.emitNext();break;case"key":a.debug("key",t.value),this.emitter.key(t.value);break;case"cmd":{const e=this.emitter[t.value];if(!e)throw"Bad cmd: "+t.value;a.debug(t.value,t.arg),e.call(this.emitter,t.arg);break}default:throw"Bad op: "+t.type}},r.prototype.setEmitterMod=function(e){Object.keys(e).forEach((function(t){e[t]&&!this.emitterState.activeMod[t]&&(a.debug("mod",t,!0),this.emitter.setMod(t,!0),this.emitterState.activeMod[t]=!0)}),this)},r.prototype.resetEmitterMod=function(e){Object.keys(this.emitterState.activeMod).forEach((function(t){this.emitterState.activeMod[t]&&!e[t]&&(a.debug("mod",t,!1),this.emitter.setMod(t,!1),delete this.emitterState.activeMod[t])}),this)}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeEmitterFactory",(function(){return i}));var s=n(2);const i={create(e,t){if(s.Launcher&&s.Launcher.autoTypeSupported){const{AutoTypeEmitter:i}=n(295)("./auto-type-emitter-"+s.Launcher.platform());return new i(e,t)}return null}}},function(e,t,n){"use strict";n.r(t),n.d(t,"AutoTypeObfuscator",(function(){return o}));var s=n(9);const i=new s.Logger("auto-type-obfuscator",void 0,localStorage.debugAutoType?s.Logger.Level.All:s.Logger.Level.Warn),l="ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz123456789O0oIl",o=function(e){this.chars=e,this.inputChars=[],this.inputCursor=0,this.inputSel=0,this.ops=[],this.stepCount=0,this.copyCount=0};o.prototype.obfuscate=function(){for(;!this.finished();)if(this.step(),this.stepCount++>1e3)throw"Obfuscate failed";for(let e=0;e<this.chars.length;e++)this.chars[e]=null,this.inputChars[e]=null;return this.ops},o.prototype.finished=function(){return this.chars.length===this.inputChars.length&&this.chars.every((function(e,t){return this.inputChars[t].ch===e}),this)},o.prototype.step=function(){this.stepCount<30&&Math.random()>this.stepCount/30?this.stepFake():this.stepReal(),i.getLevel()>=s.Logger.Level.Debug&&i.debug("value",this.inputChars.map(e=>e.ch).join(""))},o.prototype.stepFake=function(){const e=Math.floor(Math.random()*(this.inputChars.length+1)),t=l[Math.floor(Math.random()*l.length)];if(i.info("step.fake",e,t),this.moveToPos(e),0===this.inputChars.length||Math.random()>.3)this.inputChar(t);else{let n=Math.random()>.5,s=n?e:this.inputChars.length-e;0===s&&(n=!n,s=n?e:this.inputChars.length-e);const i=Math.max(Math.floor(Math.pow(Math.random(),3)*s),1);i<=1&&Math.random()>.5?this.deleteText(n):(this.selectText(n,i),Math.random()>.3?this.deleteText(Math.random()>.5):this.inputChar(t))}},o.prototype.stepReal=function(){const e=[],t=[];let n;for(n=0;n<this.chars.length;n++)t.push(-1);for(n=0;n<this.inputChars.length;n++){const s=this.inputChars[n].ix;void 0===s?e.push({del:!0,pos:n}):t[s]=n}for(n=0;n<this.chars.length;n++)if(t[n]<0){let s=0,i=this.inputChars.length;for(let e=0;e<this.chars.length;e++)if(e<n&&t[e]>=0&&(s=t[e]+1),e>n&&t[e]>=0){i=t[e];break}e.push({ins:!0,ch:this.chars[n],ix:n,from:s,to:i})}const s=e[Math.floor(Math.random()*e.length)];if(i.info("step.real",t,s),s.del)this.moveToPos(s.pos+1),this.deleteText(!0);else{const e=s.from+Math.floor(Math.random()*(s.to-s.from));this.moveToPos(e),this.copyCount<2&&"\n"!==s.ch&&Math.random()>.5?(this.copyCount++,this.copyPaste(s.ch)):this.inputChar(s.ch),this.inputChars[e].ix=s.ix}},o.prototype.moveToPos=function(e){for(i.debug("moveToPos",e);this.inputCursor>e;)this.moveLeft();for(;this.inputCursor<e;)this.moveRight()},o.prototype.moveLeft=function(){i.debug("moveLeft"),this.ops.push({type:"key",value:"left"}),this.inputCursor--,this.inputSel=0},o.prototype.moveRight=function(){i.debug("moveRight"),this.ops.push({type:"key",value:"right"}),this.inputCursor++,this.inputSel=0},o.prototype.inputChar=function(e){i.debug("inputChar",e),this.ops.push({type:"text",value:e}),this.inputChars.splice(this.inputCursor,this.inputSel,{ch:e}),this.inputCursor++,this.inputSel=0},o.prototype.copyPaste=function(e){i.debug("copyPaste",e),this.ops.push({type:"cmd",value:"copyPaste",arg:e}),this.inputChars.splice(this.inputCursor,this.inputSel,{ch:e}),this.inputCursor++,this.inputSel=0},o.prototype.selectText=function(e,t){i.debug("selectText",e?"left":"right",t);const n=[];for(let s=0;s<t;s++)n.push({type:"key",value:e?"left":"right"});1===n.length?(n[0].mod={"+":!0},this.ops.push(n[0])):this.ops.push({type:"group",value:n,mod:{"+":!0}}),e&&(this.inputCursor-=t),this.inputSel=t},o.prototype.deleteText=function(e){i.debug("deleteText",e?"left":"right"),this.ops.push({type:"key",value:e?"bs":"del"}),this.inputSel?(this.inputChars.splice(this.inputCursor,this.inputSel),this.inputSel=0):(this.inputChars.splice(e?this.inputCursor-1:this.inputCursor,1),e&&this.inputCursor--)}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"AutoTypeSelectView",(function(){return v}));var s=n(7),i=n(1),l=n(22),o=n(15),a=n(5),r=n(3),c=n(96),u=n(10),d=n(0),p=n(37),h=n(42),m=n(228),f=n.n(m),g=n(229),y=n.n(g);class v extends s.View{constructor(e){super(e),this.parent="body",this.modal="auto-type",this.template=f.a,this.itemTemplate=y.a,this.events={"click .at-select__header-filter-clear":"clearFilterText","click .at-select__item":"itemClicked","contextmenu .at-select__item":"itemRightClicked"},this.result=null,this.entries=null,this.initScroll(),this.listenTo(i.Events,"main-window-will-close",this.mainWindowWillClose),this.listenTo(i.Events,"keypress:auto-type",this.keyPressed),this.setupKeys()}setupKeys(){this.onKey(a.Keys.DOM_VK_ESCAPE,this.escPressed,!1,"auto-type"),this.onKey(a.Keys.DOM_VK_RETURN,this.enterPressed,!1,"auto-type"),this.onKey(a.Keys.DOM_VK_RETURN,this.actionEnterPressed,o.KeyHandler.SHORTCUT_ACTION,"auto-type"),this.onKey(a.Keys.DOM_VK_RETURN,this.optEnterPressed,o.KeyHandler.SHORTCUT_OPT,"auto-type"),this.onKey(a.Keys.DOM_VK_RETURN,this.shiftEnterPressed,o.KeyHandler.SHORTCUT_SHIFT,"auto-type"),this.onKey(a.Keys.DOM_VK_UP,this.upPressed,!1,"auto-type"),this.onKey(a.Keys.DOM_VK_DOWN,this.downPressed,!1,"auto-type"),this.onKey(a.Keys.DOM_VK_BACK_SPACE,this.backSpacePressed,!1,"auto-type"),this.onKey(a.Keys.DOM_VK_O,this.openKeyPressed,o.KeyHandler.SHORTCUT_ACTION,"auto-type")}render(){let e;e=this.model.filter.title||this.model.filter.url?d.Locale.autoTypeMsgMatchedByWindow.replace("{}",this.model.filter.title||this.model.filter.url):d.Locale.autoTypeMsgNoWindow;const t=r.AppSettingsModel.colorfulIcons?"":"grayscale";this.entries=this.model.filter.getEntries(),this.result=this.entries[0];const n=new c.EntryPresenter(null,t,this.result&&this.result.id);let i="";const o=this.itemTemplate;this.entries.forEach(e=>{n.present(e),i+=o(n,s.DefaultTemplateOptions)}),super.render({filterText:this.model.filter.text,topMessage:e,itemsHtml:i,actionSymbol:l.Shortcuts.actionShortcutSymbol(!0),altSymbol:l.Shortcuts.altShortcutSymbol(!0),shiftSymbol:l.Shortcuts.shiftShortcutSymbol(!0),keyEnter:d.Locale.keyEnter}),document.activeElement.blur(),this.createScroll({root:this.$el.find(".at-select__items")[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]})}cancelAndClose(){this.result=null,this.emit("result",this.result)}closeWithResult(e){this.emit("result",{entry:this.result,sequence:e})}escPressed(){this.model.filter.text?this.clearFilterText():this.cancelAndClose()}enterPressed(){this.closeWithResult()}actionEnterPressed(){this.closeWithResult("{PASSWORD}")}optEnterPressed(){this.closeWithResult("{USERNAME}")}openKeyPressed(){this.emit("show-open-files")}shiftEnterPressed(e){const t=this.$el.find('.at-select__item[data-id="'+this.result.id+'"]');this.showItemOptions(t,e)}upPressed(e){e.preventDefault();const t=this.entries.indexOf(this.result)-1;t>=0&&(this.result=this.entries[t],this.highlightActive())}downPressed(e){e.preventDefault();const t=this.entries.indexOf(this.result)+1;t<this.entries.length&&(this.result=this.entries[t],this.highlightActive())}highlightActive(){this.$el.find(".at-select__item").removeClass("at-select__item--active");const e=this.$el.find('.at-select__item[data-id="'+this.result.id+'"]');e.addClass("at-select__item--active");const t=e[0].getBoundingClientRect(),n=this.scroller[0].getBoundingClientRect();t.top<n.top?this.scroller[0].scrollTop+=t.top-n.top:t.bottom>n.bottom&&(this.scroller[0].scrollTop+=t.bottom-n.bottom)}keyPressed(e){e.which&&e.which!==a.Keys.DOM_VK_RETURN&&(this.model.filter.text+=String.fromCharCode(e.which),this.render())}backSpacePressed(){this.model.filter.text&&(this.model.filter.text=this.model.filter.text.substr(0,this.model.filter.text.length-1),this.render())}clearFilterText(){this.model.filter.text="",this.render()}itemClicked(t){const n=e(t.target).closest(".at-select__item");if(e(t.target).closest(".at-select__item-options").length)this.showItemOptions(n,t);else{const e=n.data("id");this.result=this.entries.get(e),this.closeWithResult()}}itemRightClicked(t){const n=e(t.target).closest(".at-select__item");this.showItemOptions(n,t)}mainWindowWillClose(e){e.preventDefault()}showItemOptions(e,t){t&&t.stopImmediatePropagation();const n=e.data("id"),s=this.entries.get(n);if(this.views.optionsDropdown&&(this.hideItemOptionsDropdown(),this.result&&this.result.id===s.id))return;this.result=s,e.hasClass("at-select__item--active")||this.highlightActive();const i=new h.DropdownView;this.listenTo(i,"cancel",this.hideItemOptionsDropdown),this.listenTo(i,"select",this.itemOptionsDropdownSelect);const l=[];s.fields.otp&&l.push({value:"{TOTP}",icon:"clock-o",text:d.Locale.autoTypeSelectionOtp}),s.user&&l.push({value:"{USERNAME}",icon:"user",text:u.StringFormat.capFirst(d.Locale.user)}),s.password&&l.push({value:"{PASSWORD}",icon:"key",text:u.StringFormat.capFirst(d.Locale.password)});for(const e of Object.keys(s.fields))"otp"!==e&&l.push({value:`{S:${e}}`,icon:"th-list",text:e});let o;if(t&&2===t.button)o={top:t.pageY,left:t.pageX};else{const t=e[0].getBoundingClientRect();o={top:t.bottom,right:t.right}}i.render({position:o,options:l}),this.views.optionsDropdown=i}hideItemOptionsDropdown(){this.views.optionsDropdown&&(this.views.optionsDropdown.remove(),delete this.views.optionsDropdown)}itemOptionsDropdownSelect(e){this.hideItemOptionsDropdown();const t=e.item;this.closeWithResult(t)}}Object.assign(v.prototype,p.Scrollable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"DropboxChooser",(function(){return l}));var s=n(3),i=n(30);const l=function(e){this.cb=e,this.onMessage=this.onMessage.bind(this)};l.prototype.callback=function(e,t){this.cb&&this.cb(e,t),this.cb=null},l.prototype.choose=function(){const e=this.buildUrl();if(this.popup=window.open(e,"dropbox","width=640,height=552,left=357,top=100,resizable=yes,location=yes"),!this.popup)return this.callback("Failed to open window");window.addEventListener("message",this.onMessage),this.closeInt=setInterval(this.checkClose.bind(this),200)},l.prototype.buildUrl=function(){return i.UrlFormat.makeUrl("https://www.dropbox.com/chooser",{origin:window.location.protocol+"//"+window.location.host,app_key:s.AppSettingsModel.dropboxAppKey||"qp7ctun6qt5n9d6",link_type:"direct",trigger:"js",multiselect:"false",extensions:"",folderselect:"false",iframe:"false",version:2})},l.prototype.onMessage=function(e){if(e.source!==this.popup||"https://www.dropbox.com"!==e.origin)return;const t=JSON.parse(e.data);switch(t.method){case"origin_request":e.source.postMessage(JSON.stringify({method:"origin"}),"https://www.dropbox.com");break;case"files_selected":this.popup.close(),this.success(t.params);break;case"close_dialog":this.popup.close();break;case"web_session_error":case"web_session_unlinked":this.callback(t.method);break;case"resize":this.popup.resize(t.params);break;case"error":this.callback(t.params)}},l.prototype.checkClose=function(){this.popup.closed&&(clearInterval(this.closeInt),window.removeEventListener("message",this.onMessage),this.result||this.callback("closed"))},l.prototype.success=function(e){if(!e||!e[0]||!e[0].link||e[0].is_dir)return this.callback("bad result");this.result=e[0],this.readFile(this.result.link)},l.prototype.readFile=function(e){const t=new XMLHttpRequest;t.addEventListener("load",()=>{this.callback(null,{name:this.result.name,data:t.response})}),t.addEventListener("error",this.callback.bind(this,"download error")),t.addEventListener("abort",this.callback.bind(this,"download abort")),t.open("GET",e),t.responseType="arraybuffer",t.send()}},function(e,t,n){"use strict";n.r(t),n.d(t,"OtpQrReader",(function(){return p}));var s=n(147),i=n.n(s),l=n(1),o=n(22),a=n(8),r=n(60),c=n(6),u=n(0);const d=new(n(9).Logger)("otp-qr-reader");const p=new class{constructor(){this.alert=null,this.fileInput=null,this.pasteEvent=this.pasteEvent.bind(this)}read(){let e=o.Shortcuts.screenshotToClipboardShortcut();e&&(e=u.Locale.detSetupOtpAlertBodyWith.replace("{}",e));const t=c.Features.isMobile?"":u.Locale.detSetupOtpAlertBodyWith.replace("{}",o.Shortcuts.actionShortcutSymbol()+"V");this.startListenClipoard();const n=[{result:"manually",title:u.Locale.detSetupOtpManualButton,silent:!0},a.Alerts.buttons.cancel];c.Features.isMobile&&n.unshift({result:"select",title:u.Locale.detSetupOtpScanButton});const s=c.Features.isMobile?u.Locale.detSetupOtpAlertBody3Mobile:u.Locale.detSetupOtpAlertBody3.replace("{}",t||"");this.alert=a.Alerts.alert({icon:"qrcode",header:u.Locale.detSetupOtpAlert,body:[u.Locale.detSetupOtpAlertBody,u.Locale.detSetupOtpAlertBody1,u.Locale.detSetupOtpAlertBody2.replace("{}",e||""),s,u.Locale.detSetupOtpAlertBody4].join("\n"),esc:"",click:"",enter:"",buttons:n,complete:e=>{this.alert=null,this.stopListenClipboard(),"select"===e?this.selectFile():"manually"===e&&this.enterManually()}})}selectFile(){if(!this.fileInput){const e=document.createElement("input");e.setAttribute("type","file"),e.setAttribute("capture","camera"),e.setAttribute("accept","image/*"),e.setAttribute("class","hide-by-pos"),this.fileInput=e,this.fileInput.onchange=this.fileSelected}this.fileInput.click()}fileSelected(){const e=this.fileInput.files[0];!e||e.type.indexOf("image")<0||this.readFile(e)}startListenClipoard(){document.addEventListener("paste",this.pasteEvent)}stopListenClipboard(){document.removeEventListener("paste",this.pasteEvent)}pasteEvent(e){const t=[...e.clipboardData.items].find(e=>"file"===e.kind&&-1!==e.type.indexOf("image"));t?(d.info("Reading pasted image",t.type),this.alert&&this.alert.change({header:u.Locale.detOtpImageReading}),this.readFile(t.getAsFile())):d.debug("Paste without file")}readFile(e){const t=new FileReader;t.onload=()=>{d.debug("Image data loaded"),this.readQr(t.result)},t.readAsDataURL(e)}readQr(e){const t=new Image;t.onload=()=>{d.debug("Image format loaded");try{const e=d.ts(),n=new i.a(t).decode();d.info("QR code read",d.ts(e)),this.removeAlert();try{const e=r.Otp.parseUrl(n);l.Events.emit("qr-read",e)}catch(e){d.error("Error parsing QR code",e),a.Alerts.error({header:u.Locale.detOtpQrWrong,body:u.Locale.detOtpQrWrongBody,pre:e.toString()})}}catch(e){d.error("Error reading QR code",e),this.removeAlert(),a.Alerts.error({header:u.Locale.detOtpQrError,body:u.Locale.detOtpQrErrorBody})}},t.onerror=()=>{d.debug("Image load error"),this.removeAlert(),a.Alerts.error({header:u.Locale.detOtpImageError,body:u.Locale.detOtpImageErrorBody})},t.src=e}enterManually(){l.Events.emit("qr-enter-manually")}removeAlert(){this.alert&&this.alert.closeImmediate()}}},function(e,t,n){"use strict";n.r(t),n.d(t,"PluginCollection",(function(){return l}));var s=n(28),i=n(44);class l extends s.Collection{}l.model=i.Plugin},function(e,t,n){"use strict";n.r(t),n.d(t,"IoCache",(function(){return o}));var s=n(2),i=n(158),l=n(80);const o=s.Launcher?i.IoFileCache:l.IoBrowserCache},function(e,t,n){"use strict";n.r(t),n.d(t,"IoFileCache",(function(){return i}));var s=n(2);const i=function(e){this.basePath=null,this.cacheName=e.cacheName,this.logger=e.logger};Object.assign(i.prototype,{initFs(e){if(this.basePath)return e();const t=s.Launcher.getUserDataPath(this.cacheName);s.Launcher.mkdir(t,n=>{n?this.logger.error("Error creating plugin folder"):this.basePath=t,e(n)})},resolvePath(e){return s.Launcher.joinPath(this.basePath,e)},save(e,t,n){this.initFs(i=>{if(i)return n&&n(i,null);this.logger.debug("Save",e);const l=this.logger.ts(),o=this.resolvePath(e);s.Launcher.writeFile(o,t,t=>{t?(this.logger.error("Error saving file",e,t),n&&n(t)):(this.logger.debug("Saved",e,this.logger.ts(l)),n&&n())})})},load(e,t){this.initFs(n=>{if(n)return t&&t(n,null);this.logger.debug("Load",e);const i=this.logger.ts(),l=this.resolvePath(e);s.Launcher.readFile(l,void 0,(n,s)=>{s?(this.logger.error("Error loading file",e,s),t&&t(s)):(this.logger.debug("Loaded",e,this.logger.ts(i)),t&&t(null,n))})})},remove(e,t){this.initFs(n=>{if(n)return t&&t(n,null);this.logger.debug("Remove",e);const i=this.logger.ts(),l=this.resolvePath(e);s.Launcher.deleteFile(l,n=>{n?(this.logger.error("Error removing file",e,n),t&&t(n)):(this.logger.debug("Removed",e,this.logger.ts(i)),t&&t())})})}})},function(e,t,n){"use strict";n.r(t),n.d(t,"CsvParser",(function(){return s}));class s{constructor(){this.next=void 0,this.csv=void 0,this.index=void 0,this.line=[],this.lines=[],this.value="",this.error=void 0}parse(e){for(this.csv=e.trim().replace(/\r\n/g,"\n"),this.result=[],this.next=this.handleBeforeValue,this.index=0;this.next&&this.index<this.csv.length;)this.next=this.next(this);if(this.lines.length<=1)throw new Error("Empty CSV");return{headers:this.lines[0],rows:this.lines.slice(1)}}handleBeforeValue(){return'"'===this.csv[this.index]?(this.index++,this.value="",this.handleQuotedValue):this.handleUnquotedValue}handleUnquotedValue(){const e=this.csv.indexOf(",",this.index),t=this.csv.indexOf("\n",this.index);let n;n=e>=0&&(t<0||e<t)?e:t>=0?t:this.csv.length;const s=this.csv.substr(this.index,n-this.index);return this.line.push(s),this.index=n,this.handleAfterValue}handleQuotedValue(){const e=this.csv.indexOf('"',this.index),t=this.csv.indexOf("\\",this.index);if(e<0)return this.index=this.csv.length,this.error="Quoted value not closed",this.handleError;if(t>0&&t<e){const e=this.csv[t+1];return'"'===e||"\\"===e?(this.value+=this.csv.substr(this.index,t-this.index)+e,this.index=t+2):(this.value+=this.csv.substr(this.index,t-this.index+1),this.index=t+1),this.handleQuotedValue}return'"'===this.csv[e+1]?(this.value+=this.csv.substr(this.index,e-this.index+1),this.index=e+2,this.handleQuotedValue):(this.value+=this.csv.substr(this.index,e-this.index),this.index=e+1,this.line.push(this.value),this.value="",this.handleAfterValue)}handleAfterValue(){const e=","===this.csv[this.index];return this.index++,e||(this.lines.push(this.line),this.line=[]),this.handleBeforeValue}handleError(){throw new Error(this.error)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"MdToHtml",(function(){return c}));var s=n(230),i=n.n(s),l=n(192),o=n.n(l);const a=/<\/?p>|<br>|\r|\n/g;class r extends o.a.Renderer{link(e,t,n){return super.link(e,t,n).replace("<a ",'<a target="_blank" rel="noreferrer noopener" ')}}const c={convert(e){if(!e)return"";const t=new r,n=o()(e,{renderer:t});if(n.replace(a,"")===e.replace(a,""))return{text:e};return{html:`<div class="markdown">${i.a.sanitize(n,{ADD_ATTR:["target"]})}</div>`}}}},function(e,t,n){"use strict";n.r(t),n.d(t,"phonetic",(function(){return d}));const s=["b","c","d","f","g","h","j","k","l","m","n","p","qu","r","s","t","bl","ch","cl","cr","dr","fl","fr","gl","gr","kl","kr","ph","pr","pl","sc","sh","sl","sn","sr","st","str","sw","th","tr","br","v","w","y","z"],i=["a","e","i","o","u","ee","ie","oo","ou","ue"],l=["b","d","f","g","k","l","m","n","p","r","s","t","y","ch","ck","ln","nk","ng","rn","sh","sk","st","th","x","z"],o={quu:"que","qu([aeiou]){2}":"qu$1","[iu]y":"ey",eye:"ye","(.)ye$":"$1y","(^|e)cie(?!$)":"$1cei","([vz])$":"$1e","[iu]w":"ow"};function a(e){const t=r(e.numeric),n=t%e.opts.compoundSimplicity==0,o=""===e.word;o&&t%6>0||e.lastSkippedPost||n?(e.word+=c(s,16,e),e.lastSkippedPre=!1):e.lastSkippedPre=!0,e.word+=c(i,5,e,o&&e.lastSkippedPre),e.lastSkippedPre||n?(e.word+=c(l,13,e),e.lastSkippedPost=!1):e.lastSkippedPost=!0}function r(e){let t=1;for(;e;)t+=e%7,e=Math.floor(e/7);return t}function c(e,t,n,s){const i=r(n.numeric),l=(n.numeric+i)%n.opts.phoneticSimplicity>0||s?t:e.length,o=e[n.numeric%l];return n.numeric=u(n.numeric+n.word),o}function u(e){let t=0;for(let n=0,s=(e+="-Phonetic").length;n<s;n++){t=(t<<5)-t+e.charCodeAt(n),t>>>=0}return t}const d={generate:function(e){const t=(e=function(e){const t={};return e=e||{},t.length=e.length||16,t.seed=e.seed||Math.random(),t.phoneticSimplicity=e.phoneticSimplicity?Math.max(e.phoneticSimplicity,1):5,t.compoundSimplicity=e.compoundSimplicity?Math.max(e.compoundSimplicity,1):5,t}(e)).length,n={numeric:u(e.seed),lastSkippedPost:!1,word:"",opts:e};for(;n.word.length<t;)a(n);return function(e){let t;for(const n in o)Object.prototype.hasOwnProperty.call(o,n)&&(t=new RegExp(n),e.word=e.word.replace(t,o[n]));return e.word}(n).substr(0,t)}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.r(__webpack_exports__),function(global){__webpack_require__.d(__webpack_exports__,"KdbxwebInit",(function(){return KdbxwebInit}));var kdbxweb__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(4),kdbxweb__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(kdbxweb__WEBPACK_IMPORTED_MODULE_0__),util_logger__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(9),util_features__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(6),models_app_settings_model__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(3),comp_launcher_native_modules__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(54);const logger=new util_logger__WEBPACK_IMPORTED_MODULE_1__.Logger("argon2"),KdbxwebInit={init(){kdbxweb__WEBPACK_IMPORTED_MODULE_0___default.a.CryptoEngine.argon2=(...e)=>this.argon2(...e)},argon2(e,t,n,s,i,l,o,a){const r={password:e,salt:t,memory:n,iterations:s,length:i,parallelism:l,type:o,version:a};return this.loadRuntime(n).then(e=>{const t=logger.ts();return e.hash(r).then(e=>(logger.debug("Hash computed",logger.ts(t)),e))})},loadRuntime(requiredMemory){return this.runtimeModule?Promise.resolve(this.runtimeModule):global.WebAssembly?util_features__WEBPACK_IMPORTED_MODULE_2__.Features.isDesktop&&models_app_settings_model__WEBPACK_IMPORTED_MODULE_3__.AppSettingsModel.nativeArgon2?(logger.debug("Using native argon2"),this.runtimeModule={hash(e){const t=logger.ts(),n=i(e.password),s=i(e.salt);return comp_launcher_native_modules__WEBPACK_IMPORTED_MODULE_4__.NativeModules.argon2(n,s,{type:e.type,version:e.version,hashLength:e.length,saltLength:e.salt.length,timeCost:e.iterations,parallelism:e.parallelism,memoryCost:e.memory}).then(e=>(n.data.fill(0),s.data.fill(0),logger.debug("Argon2 hash calculated",logger.ts(t)),function(e){const t=Buffer.from(e.data),n=Buffer.from(e.random);for(let e=0;e<t.length;e++)t[e]^=n[e];return e.data.fill(0),e.random.fill(0),t}(e))).catch(e=>{throw n.data.fill(0),s.data.fill(0),logger.error("Argon2 error",e),e});function i(e){const t=Buffer.from(e),n=Buffer.from(kdbxweb__WEBPACK_IMPORTED_MODULE_0___default.a.Random.getBytes(t.length));for(let e=0;e<t.length;e++)t[e]^=n[e];const s={data:[...t],random:[...n]};return t.fill(0),n.fill(0),s}}},Promise.resolve(this.runtimeModule)):new Promise((resolve,reject)=>{const loadTimeout=setTimeout(()=>reject("timeout"),5e3);try{const ts=logger.ts(),argon2LoaderCode=__webpack_require__(221).default,wasmBinaryBase64=__webpack_require__(222),KB=1048576,MB=1024*KB,GB=1024*MB,WASM_PAGE_SIZE=65536,totalMemory=(2*GB-64*KB)/1024/WASM_PAGE_SIZE,initialMemory=Math.min(Math.max(Math.ceil(1024*requiredMemory/WASM_PAGE_SIZE),256)+256,totalMemory);if(util_features__WEBPACK_IMPORTED_MODULE_2__.Features.canUseWasmInWebWorker){const e=`var wasmMemory=new WebAssembly.Memory({initial:${initialMemory},maximum:${totalMemory}});`,t='var Module={wasmJSMethod: "native-wasm",wasmBinary: Uint8Array.from(atob("'+wasmBinaryBase64+'"), c => c.charCodeAt(0)),print(...args) { postMessage({op:"log",args}) },printErr(...args) { postMessage({op:"log",args}) },postRun:'+this.workerPostRun.toString()+",calcHash:"+this.calcHash.toString()+",wasmMemory:wasmMemory,buffer:wasmMemory.buffer,TOTAL_MEMORY:"+initialMemory*WASM_PAGE_SIZE+"}",n=argon2LoaderCode.replace(/^var Module.*?}/,e+t),s=new Blob([n],{type:"application/javascript"}),i=URL.createObjectURL(s),l=new Worker(i),o=e=>{switch(e.data.op){case"log":logger.debug(...e.data.args);break;case"postRun":logger.debug("WebAssembly runtime loaded (web worker)",logger.ts(ts)),URL.revokeObjectURL(i),clearTimeout(loadTimeout),l.removeEventListener("message",o),this.runtimeModule={hash:e=>new Promise((t,n)=>{l.postMessage(e);const s=e=>{if(l.removeEventListener("message",s),l.terminate(),KdbxwebInit.runtimeModule=null,e.data&&!e.data.error&&e.data.hash)t(e.data.hash);else{const t=e.data&&e.data.error||"unexpected error";logger.error("Worker error",t),n(t)}};l.addEventListener("message",s)})},resolve(this.runtimeModule);break;default:logger.error("Unknown message",e.data),URL.revokeObjectURL(i),reject("Load error")}};l.addEventListener("message",o)}else{const wasmMemory=new WebAssembly.Memory({initial:initialMemory,maximum:totalMemory});global.Module={wasmJSMethod:"native-wasm",wasmBinary:Uint8Array.from(atob(wasmBinaryBase64),e=>e.charCodeAt(0)),print(...e){logger.debug(...e)},printErr(...e){logger.debug(...e)},postRun:()=>{logger.debug("WebAssembly runtime loaded (main thread)",logger.ts(ts)),clearTimeout(loadTimeout),resolve({hash:e=>{const t=this.calcHash(global.Module,e);return global.Module.unloadRuntime(),global.Module=void 0,Promise.resolve(t)}})},wasmMemory,buffer:wasmMemory.buffer,TOTAL_MEMORY:initialMemory*WASM_PAGE_SIZE},eval(argon2LoaderCode)}}catch(e){reject(e)}}).catch(e=>{throw logger.warn("WebAssembly error",e),new Error("WebAssembly error")}):Promise.reject("WebAssembly is not supported")},workerPostRun:function(){self.postMessage({op:"postRun"}),self.onmessage=e=>{try{const t=Module.calcHash(Module,e.data);self.postMessage({hash:t})}catch(e){self.postMessage({error:e.toString()})}}},calcHash:function(e,t){let{password:n,salt:s}=t;const{memory:i,iterations:l,length:o,parallelism:a,type:r,version:c}=t,u=n.byteLength;n=e.allocate(new Uint8Array(n),"i8",e.ALLOC_NORMAL);const d=s.byteLength;s=e.allocate(new Uint8Array(s),"i8",e.ALLOC_NORMAL);const p=e.allocate(new Array(o),"i8",e.ALLOC_NORMAL),h=e.allocate(new Array(512),"i8",e.ALLOC_NORMAL),m=e._argon2_hash(l,i,a,n,u,s,d,p,o,h,512,r,c);if(m)throw new Error("Argon2 error "+m);const f=new Uint8Array(o);for(let t=0;t<o;t++)f[t]=e.HEAP8[p+t];return e._free(n),e._free(s),e._free(p),e._free(h),f}}}.call(this,__webpack_require__(78))},function(e,t,n){"use strict";n.r(t),n.d(t,"AppView",(function(){return D}));var s=n(7),i=n(1),l=n(61),o=n(15),a=n(2),r=n(25),c=n(8),u=n(5),d=n(13),p=n(6),h=n(0),m=n(9),f=n(159),g=n(164),y=n(85),v=n(42),b=n(178),w=n(110),k=n(111),_=n(179),S=n(180),P=n(182),C=n(183),x=n(186),T=n(189),O=n(112),E=n(190),A=n(272),F=n.n(A);class D extends s.View{constructor(e){super(e),this.parent="body",this.template=F.a,this.events={contextmenu:"contextMenu",drop:"drop",dragenter:"dragover",dragover:"dragover","click a[target=_blank]":"extLinkClick",mousedown:"bodyClick"},this.titlebarStyle="default",this.views.menu=new C.MenuView(this.model.menu,{ownParent:!0}),this.views.menuDrag=new y.DragView("x",{parent:".app__menu-drag"}),this.views.footer=new b.FooterView(this.model,{ownParent:!0}),this.views.listWrap=new P.ListWrapView(this.model,{ownParent:!0}),this.views.list=new S.ListView(this.model,{ownParent:!0}),this.views.listDrag=new y.DragView("x",{parent:".app__list-drag"}),this.views.list.dragView=this.views.listDrag,this.views.details=new g.DetailsView(void 0,{ownParent:!0}),this.views.details.appModel=this.model,this.views.menu.listenDrag(this.views.menuDrag),this.views.list.listenDrag(this.views.listDrag),this.titlebarStyle=this.model.settings.titlebarStyle,this.listenTo(this.model.settings,"change:theme",this.setTheme),this.listenTo(this.model.settings,"change:locale",this.setLocale),this.listenTo(this.model.settings,"change:fontSize",this.setFontSize),this.listenTo(this.model.settings,"change:autoSaveInterval",this.setupAutoSave),this.listenTo(this.model.files,"change",this.fileListUpdated),this.listenTo(i.Events,"select-all",this.selectAll),this.listenTo(i.Events,"menu-select",this.menuSelect),this.listenTo(i.Events,"lock-workspace",this.lockWorkspace),this.listenTo(i.Events,"show-file",this.showFileSettings),this.listenTo(i.Events,"open-file",this.toggleOpenFile),this.listenTo(i.Events,"save-all",this.saveAll),this.listenTo(i.Events,"remote-key-changed",this.remoteKeyChanged),this.listenTo(i.Events,"key-change-pending",this.keyChangePending),this.listenTo(i.Events,"toggle-settings",this.toggleSettings),this.listenTo(i.Events,"toggle-menu",this.toggleMenu),this.listenTo(i.Events,"toggle-details",this.toggleDetails),this.listenTo(i.Events,"edit-group",this.editGroup),this.listenTo(i.Events,"edit-tag",this.editTag),this.listenTo(i.Events,"edit-generator-presets",this.editGeneratorPresets),this.listenTo(i.Events,"launcher-open-file",this.launcherOpenFile),this.listenTo(i.Events,"user-idle",this.userIdle),this.listenTo(i.Events,"os-lock",this.osLocked),this.listenTo(i.Events,"power-monitor-suspend",this.osLocked),this.listenTo(i.Events,"app-minimized",this.appMinimized),this.listenTo(i.Events,"show-context-menu",this.showContextMenu),this.listenTo(i.Events,"second-instance",this.showSingleInstanceAlert),this.listenTo(i.Events,"enter-full-screen",this.enterFullScreen),this.listenTo(i.Events,"leave-full-screen",this.leaveFullScreen),this.listenTo(i.Events,"import-csv-requested",this.showImportCsv),this.listenTo(i.Events,"launcher-before-quit",this.launcherBeforeQuit),this.listenTo(d.UpdateModel,"change:updateReady",this.updateApp),window.onbeforeunload=this.beforeUnload.bind(this),window.onresize=this.windowResize.bind(this),window.onblur=this.windowBlur.bind(this),this.onKey(u.Keys.DOM_VK_ESCAPE,this.escPressed),this.onKey(u.Keys.DOM_VK_BACK_SPACE,this.backspacePressed),a.Launcher&&a.Launcher.devTools&&this.onKey(u.Keys.DOM_VK_I,this.openDevTools,o.KeyHandler.SHORTCUT_ACTION+o.KeyHandler.SHORTCUT_OPT,"*"),this.setWindowClass(),this.setupAutoSave()}setWindowClass(){const e=p.Features.getBrowserCssClass();e&&document.body.classList.add(e),"default"!==this.titlebarStyle&&document.body.classList.add("titlebar-"+this.titlebarStyle),p.Features.isMobile&&document.body.classList.add("mobile")}render(){super.render({beta:this.model.isBeta,titlebarStyle:this.titlebarStyle}),this.panelEl=this.$el.find(".app__panel:first"),this.views.listWrap.render(),this.views.menu.render(),this.views.menuDrag.render(),this.views.footer.render(),this.views.list.render(),this.views.listDrag.render(),this.views.details.render(),this.showLastOpenFile()}showOpenFile(){this.hideContextMenu(),this.views.menu.hide(),this.views.menuDrag.hide(),this.views.listWrap.hide(),this.views.list.hide(),this.views.listDrag.hide(),this.views.details.hide(),this.views.footer.toggle(this.model.files.hasOpenFiles()),this.hidePanelView(),this.hideSettings(),this.hideOpenFile(),this.hideKeyChange(),this.hideImportCsv(),this.views.open=new x.OpenView(this.model),this.views.open.render(),this.views.open.on("close",()=>{this.showEntries()}),this.views.open.on("remove",()=>{i.Events.emit("closed-open-view")})}showLastOpenFile(){this.showOpenFile();const e=this.model.fileInfos[0];e&&(this.views.open.currentSelectedIndex=0,this.views.open.showOpenFileInfo(e))}launcherOpenFile(e){e&&e.data&&/\.kdbx$/i.test(e.data)&&(this.showOpenFile(),this.views.open.showOpenLocalFile(e.data,e.key))}updateApp(){"ready"!==d.UpdateModel.updateStatus||a.Launcher||this.model.files.hasOpenFiles()||window.location.reload()}showEntries(){this.views.menu.show(),this.views.menuDrag.show(),this.views.listWrap.show(),this.views.list.show(),this.views.listDrag.show(),this.views.details.show(),this.views.footer.show(),this.hidePanelView(),this.hideOpenFile(),this.hideSettings(),this.hideKeyChange(),this.hideImportCsv()}hideOpenFile(){this.views.open&&(this.views.open.remove(),this.views.open=null)}hidePanelView(){this.views.panel&&(this.views.panel.remove(),this.views.panel=null,this.panelEl.addClass("hide"))}showPanelView(e){this.views.listWrap.hide(),this.views.list.hide(),this.views.listDrag.hide(),this.views.details.hide(),this.hidePanelView(),e.render(),this.views.panel=e,this.panelEl.removeClass("hide")}hideSettings(){this.views.settings&&(this.model.menu.setMenu("app"),this.views.settings.remove(),this.views.settings=null)}hideKeyChange(){this.views.keyChange&&(this.views.keyChange.hide(),this.views.keyChange=null)}hideImportCsv(){this.views.importCsv&&(this.views.importCsv.remove(),this.views.importCsv=null)}showSettings(e){this.model.menu.setMenu("settings"),this.views.menu.show(),this.views.menuDrag.show(),this.views.listWrap.hide(),this.views.list.hide(),this.views.listDrag.hide(),this.views.details.hide(),this.hidePanelView(),this.hideOpenFile(),this.hideKeyChange(),this.hideImportCsv(),this.views.settings=new T.SettingsView(this.model),this.views.settings.render(),e||(e=this.model.menu.generalSection.items[0]),this.model.menu.select({item:e}),this.views.menu.switchVisibility(!1)}showEditGroup(e){this.showPanelView(new k.GrpView(e))}showEditTag(){this.showPanelView(new O.TagView(this.model))}showKeyChange(e,t){c.Alerts.alertDisplayed||this.views.keyChange&&this.views.keyChange.model.remote||(this.hideSettings(),this.hidePanelView(),this.views.menu.hide(),this.views.listWrap.hide(),this.views.list.hide(),this.views.listDrag.hide(),this.views.details.hide(),this.views.keyChange=new _.KeyChangeView({file:e,expired:t.expired,remote:t.remote}),this.views.keyChange.render(),this.views.keyChange.on("accept",this.keyChangeAccept.bind(this)),this.views.keyChange.on("cancel",this.showEntries.bind(this)))}fileListUpdated(){this.model.files.hasOpenFiles()?this.showEntries():(this.showOpenFile(),this.selectLastOpenFile())}showFileSettings(e){const t=this.model.menu.filesSection.items.find(t=>t.file.id===e.fileId);this.views.settings?this.views.settings.file===t.file?this.showEntries():this.model.menu.select({item:t}):this.showSettings(t)}toggleOpenFile(){this.views.open?this.model.files.hasOpenFiles()&&this.showEntries():this.showOpenFile()}launcherBeforeQuit(){const e={fromBeforeQuit:!0,preventDefault(){}};!1!==this.beforeUnload(e)&&a.Launcher.exit()}beforeUnload(e){const t={preventDefault(){this.prevented=!0}};if(i.Events.emit("main-window-will-close",t),t.prevented)return!!a.Launcher&&a.Launcher.preventExit(e);let n=this.model.settings.minimizeOnClose;if(e.fromBeforeQuit&&a.Launcher.quitOnRealQuitEventIfMinimizeOnQuitIsEnabled()&&(n=!1),this.model.files.hasDirtyFiles()){const t=()=>{n?a.Launcher.minimizeApp():a.Launcher.exit()};if(a.Launcher&&a.Launcher.exitRequested)return;if(a.Launcher){if(!this.exitAlertShown){if(this.model.settings.autoSave)return this.saveAndLock(e=>{e&&t()}),a.Launcher.preventExit(e);this.exitAlertShown=!0,c.Alerts.yesno({header:h.Locale.appUnsavedWarn,body:h.Locale.appUnsavedWarnBody,buttons:[{result:"save",title:h.Locale.saveChanges},{result:"exit",title:h.Locale.discardChanges,error:!0},{result:"",title:h.Locale.appDontExitBtn}],success:e=>{"save"===e?this.saveAndLock(e=>{e&&t()}):t()},cancel:()=>{a.Launcher.cancelRestart(!1)},complete:()=>{this.exitAlertShown=!1}})}return a.Launcher.preventExit(e)}return h.Locale.appUnsavedWarnBody}return a.Launcher&&!a.Launcher.exitRequested&&!a.Launcher.restartPending&&n?(a.Launcher.minimizeApp(),a.Launcher.preventExit(e)):void 0}windowResize(){i.Events.emit("page-geometry",{source:"window"})}windowBlur(e){e.target===window&&i.Events.emit("page-blur")}enterFullScreen(){this.$el.addClass("fullscreen")}leaveFullScreen(){this.$el.removeClass("fullscreen")}escPressed(){this.views.open&&this.model.files.hasOpenFiles()&&this.showEntries()}backspacePressed(e){e.target===document.body&&e.preventDefault()}openDevTools(){a.Launcher&&a.Launcher.devTools&&a.Launcher.openDevTools()}selectAll(){this.menuSelect({item:this.model.menu.allItemsSection.items[0]})}menuSelect(e){this.model.menu.select(e),this.views.panel&&!this.views.panel.isHidden()&&this.showEntries()}userIdle(){this.lockWorkspace(!0)}osLocked(){this.model.settings.lockOnOsLock&&this.lockWorkspace(!0)}appMinimized(){this.model.settings.lockOnMinimize&&this.lockWorkspace(!0)}lockWorkspace(e){if(!c.Alerts.alertDisplayed)if(this.model.files.hasUnsavedFiles())if(this.model.settings.autoSave)this.saveAndLock();else{const t=e?h.Locale.appCannotLockAutoInit:h.Locale.appCannotLock;c.Alerts.alert({icon:"lock",header:"Lock",body:t,buttons:[{result:"save",title:h.Locale.saveChanges},{result:"discard",title:h.Locale.discardChanges,error:!0},{result:"",title:h.Locale.alertCancel}],checkbox:h.Locale.appAutoSave,success:(e,t)=>{"save"===e?(t&&(this.model.settings.autoSave=t),this.saveAndLock()):"discard"===e&&this.model.closeAllFiles()}})}else this.closeAllFilesAndShowFirst()}saveAndLock(e){let t=0;const n=[],s=this;function i(i,l){if(l&&n.push(i.name),0==--t)if(n.length&&s.model.files.hasDirtyFiles()){if(!c.Alerts.alertDisplayed){const e=n.length>1?h.Locale.appSaveErrorBodyMul:h.Locale.appSaveErrorBody;c.Alerts.error({header:h.Locale.appSaveError,body:e+" "+n.join(", ")})}e&&e(!1)}else s.closeAllFilesAndShowFirst(),e&&e(!0)}this.model.files.forEach((function(e){e.dirty&&(this.model.syncFile(e,null,i.bind(this,e)),t++)}),this),t||this.closeAllFilesAndShowFirst()}closeAllFilesAndShowFirst(){let e=this.model.files.find(e=>!e.demo&&!e.created&&!e.external);if(this.model.closeAllFiles(),e||(e=this.model.fileInfos[0]),e){const t=this.model.fileInfos.getMatch(e.storage,e.name,e.path);t&&this.views.open.showOpenFileInfo(t)}}selectLastOpenFile(){const e=this.model.fileInfos[0];e&&this.views.open.showOpenFileInfo(e)}saveAll(){this.model.files.forEach((function(e){this.model.syncFile(e)}),this)}setupAutoSave(){this.autoSaveTimer&&clearInterval(this.autoSaveTimer),this.model.settings.autoSaveInterval&&(this.autoSaveTimer=setInterval(this.saveAll.bind(this),1e3*this.model.settings.autoSaveInterval*60))}remoteKeyChanged(e){this.showKeyChange(e.file,{remote:!0})}keyChangePending(e){this.showKeyChange(e.file,{expired:!0})}keyChangeAccept(e){this.showEntries(),e.expired?(e.file.setPassword(e.password),e.keyFileData&&e.keyFileName?e.file.setKeyFile(e.keyFileData,e.keyFileName):e.file.removeKeyFile()):this.model.syncFile(e.file,{remoteKey:{password:e.password,keyFileName:e.keyFileName,keyFileData:e.keyFileData}})}toggleSettings(e){let t=e?this.model.menu[e+"Section"]:null;t&&(t=t.items[0]),this.views.settings?this.views.settings.page!==e&&t?t&&this.model.menu.select({item:t}):this.model.files.hasOpenFiles()?this.showEntries():(this.showLastOpenFile(),this.views.open.toggleMore()):(this.showSettings(),t&&this.model.menu.select({item:t}))}toggleMenu(){this.views.menu.switchVisibility()}toggleDetails(e){this.$el.toggleClass("app--details-visible",e),this.views.menu.switchVisibility(!1)}editGroup(e){!e||this.views.panel instanceof k.GrpView?this.showEntries():this.showEditGroup(e)}editTag(e){!e||this.views.panel instanceof O.TagView?this.showEntries():(this.showEditTag(),this.views.panel.showTag(e))}editGeneratorPresets(){this.views.panel instanceof w.GeneratorPresetsView?this.showEntries():(this.views.settings&&this.showEntries(),this.showPanelView(new w.GeneratorPresetsView(this.model)))}isContextMenuAllowed(e){return["input","textarea"].indexOf(e.target.tagName.toLowerCase())<0}contextMenu(e){this.isContextMenuAllowed(e)&&e.preventDefault()}showContextMenu(e){if(e.options&&this.isContextMenuAllowed(e)){e.stopImmediatePropagation(),e.preventDefault(),this.views.contextMenu&&this.views.contextMenu.remove();const t=new v.DropdownView(e);t.render({position:{left:e.pageX,top:e.pageY},options:e.options}),t.on("cancel",e=>this.hideContextMenu()),t.on("select",e=>this.contextMenuSelect(e)),this.views.contextMenu=t}}hideContextMenu(){this.views.contextMenu&&(this.views.contextMenu.remove(),delete this.views.contextMenu)}contextMenuSelect(e){this.hideContextMenu(),i.Events.emit("context-menu-select",e)}showSingleInstanceAlert(){this.hideOpenFile(),c.Alerts.error({header:h.Locale.appTabWarn,body:h.Locale.appTabWarnBody,esc:!1,enter:!1,click:!1,buttons:[]})}dragover(e){e.preventDefault(),e.dataTransfer.dropEffect="none"}drop(e){e.preventDefault()}setTheme(){r.SettingsManager.setTheme(this.model.settings.theme)}setFontSize(){r.SettingsManager.setFontSize(this.model.settings.fontSize)}setLocale(){r.SettingsManager.setLocale(this.model.settings.locale),this.views.settings.isVisible()&&(this.hideSettings(),this.showSettings()),this.$el.find(".app__beta:first").text(h.Locale.appBeta)}extLinkClick(e){a.Launcher&&(e.preventDefault(),a.Launcher.openLink(e.target.href))}bodyClick(e){l.IdleTracker.regUserAction(),i.Events.emit("click",e)}showImportCsv(e){const t=new FileReader,n=new m.Logger("import-csv");n.info("Reading CSV..."),t.onload=t=>{n.info("Parsing CSV...");const s=n.ts(),i=new f.CsvParser;let l;try{l=i.parse(t.target.result)}catch(t){return n.error("Error parsing CSV",t),void c.Alerts.error({header:h.Locale.openFailedRead,body:t.toString()})}n.info(`Parsed CSV: ${l.rows.length} records, ${n.ts(s)}`),this.hideSettings(),this.hidePanelView(),this.hideOpenFile(),this.hideKeyChange(),this.views.menu.hide(),this.views.listWrap.hide(),this.views.list.hide(),this.views.listDrag.hide(),this.views.details.hide(),this.views.importCsv=new E.ImportCsvView(l,{appModel:this.model,fileName:e.name}),this.views.importCsv.render(),this.views.importCsv.on("cancel",()=>{this.model.files.hasOpenFiles()?this.showEntries():this.showOpenFile()}),this.views.importCsv.on("done",()=>{this.model.refresh(),this.showEntries()})},t.onerror=()=>{c.Alerts.error({header:h.Locale.openFailedRead})},t.readAsText(e)}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"DetailsView",(function(){return R}));var s=n(4),i=n.n(s),l=n(7),o=n(1),a=n(29),r=n(40),c=n(15),u=n(155),d=n(8),p=n(5),h=n(16),m=n(3),f=n(50),g=n(6),y=n(0),v=n(63),b=n(24),w=n(97),k=n(37),_=n(165),S=n(166),P=n(167),C=n(168),x=n(42),T=n(170),O=n(75),E=n(84),A=n(14),F=n(241),D=n.n(F),M=n(242),L=n.n(M),I=n(243),K=n.n(I);class R extends l.View{constructor(e,t){super(e,t),this.parent=".app__details",this.fieldViews=[],this.fieldCopyTip=null,this.events={"click .details__colors-popup-item":"selectColor","click .details__header-icon":"toggleIcons","click .details__attachment":"toggleAttachment","click .details__header-title":"editTitle","click .details__history-link":"showHistory","click .details__buttons-trash":"moveToTrash","click .details__buttons-trash-del":"deleteFromTrash","click .details__back-button":"backClick","click .details__attachment-add":"attachmentBtnClick","change .details__attachment-input-file":"attachmentFileChange","dragover .details":"dragover","dragleave .details":"dragleave","drop .details":"drop","contextmenu .details":"contextMenu"},this.initScroll(),this.listenTo(o.Events,"entry-selected",this.showEntry),this.listenTo(o.Events,"copy-password",this.copyPassword),this.listenTo(o.Events,"copy-user",this.copyUserName),this.listenTo(o.Events,"copy-url",this.copyUrl),this.listenTo(o.Events,"copy-otp",this.copyOtp),this.listenTo(o.Events,"toggle-settings",this.settingsToggled),this.listenTo(o.Events,"context-menu-select",this.contextMenuSelect),this.listenTo(o.Events,"set-locale",this.render),this.listenTo(o.Events,"qr-read",this.otpCodeRead),this.listenTo(o.Events,"qr-enter-manually",this.otpEnterManually),this.onKey(p.Keys.DOM_VK_C,this.copyPasswordFromShortcut,c.KeyHandler.SHORTCUT_ACTION,!1,!0),this.onKey(p.Keys.DOM_VK_B,this.copyUserName,c.KeyHandler.SHORTCUT_ACTION),this.onKey(p.Keys.DOM_VK_U,this.copyUrl,c.KeyHandler.SHORTCUT_ACTION),a.AutoType.enabled&&this.onKey(p.Keys.DOM_VK_T,()=>this.autoType(),c.KeyHandler.SHORTCUT_ACTION),this.onKey(p.Keys.DOM_VK_DELETE,this.deleteKeyPress,c.KeyHandler.SHORTCUT_ACTION,!1,!0),this.onKey(p.Keys.DOM_VK_BACK_SPACE,this.deleteKeyPress,c.KeyHandler.SHORTCUT_ACTION,!1,!0),this.once("remove",()=>{this.removeFieldViews()})}removeFieldViews(){this.fieldViews.forEach(e=>e.remove()),this.fieldViews=[],this.hideFieldCopyTip()}render(){if(b.Tip.destroyTips(this.$el),this.removeScroll(),this.removeFieldViews(),this.removeInnerViews(),!this.model)return this.template=L.a,void super.render();if(this.model instanceof f.GroupModel)return this.template=K.a,void super.render();const e=Object.assign({deleted:this.appModel.filter.trash},this.model);this.template=D.a,super.render(e),this.setSelectedColor(this.model.color),this.addFieldViews(),this.createScroll({root:this.$el.find(".details__body")[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]}),this.$el.find(".details").removeClass("details--drag"),this.dragging=!1,this.dragTimeout&&clearTimeout(this.dragTimeout),this.pageResized(),this.showCopyTip()}getFieldView(e){return this.fieldViews.find(t=>t.model.name===e)}addFieldViews(){const{fieldViews:e,fieldViewsAside:t}=Object(T.createDetailsFields)(this),n=m.AppSettingsModel.hideEmptyFields,s=this.$el.find(".details__body-fields"),i=this.$el.find(".details__body-aside");for(const l of[e,t])for(const t of l)if(t.parent=l===e?s[0]:i[0],t.render(),t.on("change",this.fieldChanged.bind(this)),t.on("copy",this.fieldCopied.bind(this)),t.on("autotype",e=>this.autoType(e.source.model.sequence)),n){const e=t.model.value();if(!e||0===e.length||0===e.byteLength){if(this.model.isJustCreated&&["$UserName","$Password"].indexOf(t.model.name)>=0)return;t.hide()}}this.fieldViews=e.concat(t),this.model.external||(this.moreView=new _.DetailsAddFieldView,this.moreView.render(),this.moreView.on("add-field",this.addNewField.bind(this)),this.moreView.on("more-click",this.toggleMoreOptions.bind(this)))}addNewField(){this.moreView.remove(),this.moreView=null;let e=y.Locale.detNetField;if(this.model.fields[e])for(let t=1;;t++){const n=e+t;if(!this.model.fields[n]){e=n;break}}const t=new O.FieldViewCustom({name:"$"+e,title:e,newField:e,multiline:!0,value:()=>""},{parent:this.$el.find(".details__body-fields")[0]});t.on("change",this.fieldChanged.bind(this)),t.render(),t.edit(),this.fieldViews.push(t)}toggleMoreOptions(){this.views.dropdownView?(this.views.dropdownView.remove(),this.views.dropdownView=null):setTimeout(()=>{const e=new x.DropdownView;this.listenTo(e,"cancel",this.toggleMoreOptions),this.listenTo(e,"select",this.moreOptionsSelect);const t=m.AppSettingsModel.hideEmptyFields,n=[];t?(this.fieldViews.forEach(e=>{e.isHidden()&&n.push({value:"add:"+e.model.name,icon:"pencil",text:y.Locale.detMenuAddField.replace("{}",e.model.title)})},this),n.push({value:"add-new",icon:"plus",text:y.Locale.detMenuAddNewField}),n.push({value:"toggle-empty",icon:"eye",text:y.Locale.detMenuShowEmpty})):(n.push({value:"add-new",icon:"plus",text:y.Locale.detMenuAddNewField}),n.push({value:"toggle-empty",icon:"eye-slash",text:y.Locale.detMenuHideEmpty})),n.push({value:"otp",icon:"clock-o",text:y.Locale.detSetupOtp}),a.AutoType.enabled&&n.push({value:"auto-type",icon:"keyboard-o",text:y.Locale.detAutoTypeSettings}),n.push({value:"clone",icon:"clone",text:y.Locale.detClone}),n.push({value:"copy-to-clipboard",icon:"copy",text:y.Locale.detCopyEntryToClipboard});const s=this.moreView.labelEl[0].getBoundingClientRect();e.render({position:{top:s.bottom,left:s.left},options:n}),this.views.dropdownView=e})}moreOptionsSelect(e){switch(this.views.dropdownView.remove(),this.views.dropdownView=null,e.item){case"add-new":this.addNewField();break;case"toggle-empty":{const e=m.AppSettingsModel.hideEmptyFields;m.AppSettingsModel.hideEmptyFields=!e,this.render();break}case"otp":this.setupOtp();break;case"auto-type":this.toggleAutoType();break;case"clone":this.clone();break;case"copy-to-clipboard":this.copyToClipboard();break;default:if(0===e.item.lastIndexOf("add:",0)){const t=e.item.substr(4),n=this.fieldViews.find(e=>e.model.name===t);n.show(),n.edit()}}}getUserNameCompletions(e){return this.appModel.completeUserNames(e)}setSelectedColor(e){this.$el.find(".details__colors-popup > .details__colors-popup-item").removeClass("details__colors-popup-item--active");const t=this.$el.find(".details__header-color")[0];for(const e of t.classList)e.indexOf("color")>0&&0!==e.lastIndexOf("details",0)&&t.classList.remove(e);e&&(this.$el.find(".details__colors-popup > ."+e+"-color").addClass("details__colors-popup-item--active"),t.classList.add(e+"-color"))}selectColor(t){let n=e(t.target).closest(".details__colors-popup-item").data("color");n&&(n===this.model.color&&(n=null),this.model.setColor(n),this.entryUpdated())}toggleIcons(){if(this.model.external)return;if(this.views.sub&&this.views.sub instanceof E.IconSelectView)return void this.render();this.removeSubView();const e=new E.IconSelectView({iconId:this.model.customIconId||this.model.iconId,url:this.model.url,file:this.model.file},{parent:this.scroller[0],replace:!0});this.listenTo(e,"select",this.iconSelected),e.render(),this.pageResized(),this.views.sub=e}toggleAttachment(t){const n=e(t.target).closest(".details__attachment"),s=n.data("id"),i=this.model.attachments[s];if(t.altKey||t.shiftKey||t.ctrlKey||t.metaKey)return void this.downloadAttachment(i);if(this.views.sub&&this.views.sub.attId===s)return void this.render();this.removeSubView();const l=new S.DetailsAttachmentView(i,{parent:this.scroller[0],replace:!0});l.attId=s,l.render(this.pageResized.bind(this)),l.on("download",()=>this.downloadAttachment(i)),this.listenTo(l,"close",this.render.bind(this)),this.views.sub=l,n.addClass("details__attachment--active")}removeSubView(){this.$el.find(".details__attachment").removeClass("details__attachment--active"),this.views.sub&&(this.views.sub.remove(),delete this.views.sub)}downloadAttachment(e){const t=e.getBinary();if(!t)return;const n=e.mimeType||"application/octet-stream",s=new Blob([t],{type:n});v.FileSaver.saveAs(s,e.title)}iconSelected(e){e.custom?e.id!==this.model.customIconId?(this.model.setCustomIcon(e.id),this.entryUpdated()):this.render():e.id!==this.model.iconId?(this.model.setIcon(+e.id),this.entryUpdated()):this.render()}showEntry(e){this.model=e,this.initOtp(),this.render(),e&&!e.title&&e.isJustCreated&&this.editTitle()}initOtp(){var e;this.matchingOtpEntry=null,this.model&&(this.model.external?this.model.initOtpGenerator():(this.matchingOtpEntry=this.appModel.getMatchingOtpEntry(this.model),null===(e=this.matchingOtpEntry)||void 0===e||e.initOtpGenerator()))}copyKeyPress(e){if(!e||this.isHidden())return!1;if(!window.getSelection().toString()){const t=e.getTextValue();if(!t)return;r.CopyPaste.simpleCopy||r.CopyPaste.createHiddenInput(t);const n=r.CopyPaste.copy(t);return this.fieldCopied({source:e,copyRes:n}),!0}return!1}copyPasswordFromShortcut(e){this.model.external&&(this.copyOtp(),e.preventDefault()),this.copyKeyPress(this.getFieldView("$Password"))&&e.preventDefault()}copyPassword(){this.copyKeyPress(this.getFieldView("$Password"))}copyUserName(){this.copyKeyPress(this.getFieldView("$UserName"))}copyUrl(){this.copyKeyPress(this.getFieldView("$URL"))}copyOtp(){const e=this.getFieldView("$otp");if(this.model.external)return!!e&&(e.copyValue(),!0);this.copyKeyPress(e)}showCopyTip(){if(this.helpTipCopyShown)return;if(this.helpTipCopyShown=m.AppSettingsModel.helpTipCopyShown,this.helpTipCopyShown)return;m.AppSettingsModel.helpTipCopyShown=!0,this.helpTipCopyShown=!0;const e=this.moreView.labelEl,t=new b.Tip(e,{title:y.Locale.detCopyHint,placement:"right"});t.show(),this.fieldCopyTip=t,setTimeout(()=>{t.hide()},h.Timeouts.AutoHideHint)}settingsToggled(){this.hideFieldCopyTip()}fieldChanged(e){if(e.field){if("$"===e.field[0]){let t=e.field.substr(1);if("otp"===t){if(this.otpFieldChanged(e.val))return void this.entryUpdated()}else{if(e.newField){t&&this.model.setField(t,void 0),t=e.newField;let n=0;for(;this.model.hasField(t);)n++,t=e.newField+n;const s=this.model.group.isEntryTemplatesGroup();return this.model.setField(t,e.val,s),void this.entryUpdated()}if("File"===t){const t=this.appModel.files.get(e.val);return this.model.moveToFile(t),this.appModel.activeEntryId=this.model.id,this.entryUpdated(),void o.Events.emit("entry-selected",this.model)}t&&this.model.setField(t,e.val)}}else if("Tags"===e.field)this.model.setTags(e.val),this.appModel.updateTags();else if("Expires"===e.field){const t=e.val||void 0;Object(A.isEqual)(t,this.model.expires)||this.model.setExpires(t)}this.entryUpdated(!0),this.fieldViews.forEach((function(e,t){e instanceof O.FieldViewCustom&&!e.model.newField&&!this.model.hasField(e.model.title)?(e.remove(),this.fieldViews.splice(t,1)):e.update()}),this)}else if(e.newField)return void this.render();e.tab&&this.focusNextField(e.tab)}otpFieldChanged(e){let t=this.model.fields.otp;return t&&t.isProtected&&(t=t.getText()),e&&e.isProtected&&(e=e.getText()),t===e?(this.render(),!1):(this.model.setOtpUrl(e),!0)}dragover(e){e.preventDefault(),e.stopPropagation();const t=e.dataTransfer;t.types&&(t.types.indexOf?-1!==t.types.indexOf("Files"):t.types.contains("Files"))?(t.dropEffect="copy",this.dragTimeout&&clearTimeout(this.dragTimeout),this.model&&!this.dragging&&(this.dragging=!0,this.$el.find(".details").addClass("details--drag"))):t.dropEffect="none"}dragleave(){this.dragTimeout&&clearTimeout(this.dragTimeout),this.dragTimeout=setTimeout(()=>{this.$el.find(".details").removeClass("details--drag"),this.dragging=!1},100)}drop(e){if(e.preventDefault(),!this.model)return;this.dragTimeout&&clearTimeout(this.dragTimeout),this.$el.find(".details").removeClass("details--drag"),this.dragging=!1;const t=e.target.files||e.dataTransfer.files;this.addAttachedFiles(t)}attachmentBtnClick(){this.$el.find(".details__attachment-input-file")[0].click()}attachmentFileChange(e){this.addAttachedFiles(e.target.files)}addAttachedFiles(e){for(const t of e){const e=new FileReader;e.onload=()=>{this.addAttachment(t.name,e.result)},e.readAsArrayBuffer(t)}}addAttachment(e,t){this.model.addAttachment(e,t).then(()=>{this.entryUpdated()})}deleteKeyPress(e){if(this.views.sub&&void 0!==this.views.sub.attId){e.preventDefault();const t=this.model.attachments[this.views.sub.attId];this.model.removeAttachment(t.title),this.render()}}editTitle(){if(this.model.external)return;const t=e("<input/>").addClass("details__header-title-input").attr({autocomplete:"off",spellcheck:"false",placeholder:"Title"}).val(this.model.title);t.bind({blur:this.titleInputBlur.bind(this),input:this.titleInputInput.bind(this),keydown:this.titleInputKeydown.bind(this),keypress:this.titleInputInput.bind(this)}),e(".details__header-title").replaceWith(t),t.focus()[0].setSelectionRange(this.model.title.length,this.model.title.length)}titleInputBlur(e){this.setTitle(e.target.value)}titleInputInput(e){e.stopPropagation()}titleInputKeydown(t){c.KeyHandler.reg(),t.stopPropagation();const n=t.keyCode||t.which;if(n===p.Keys.DOM_VK_RETURN)e(t.target).unbind("blur"),this.setTitle(t.target.value);else if(n===p.Keys.DOM_VK_ESCAPE){if(e(t.target).unbind("blur"),this.model.isJustCreated)return this.model.removeWithoutHistory(),void o.Events.emit("refresh");this.render()}else n===p.Keys.DOM_VK_TAB&&(t.preventDefault(),e(t.target).unbind("blur"),this.setTitle(t.target.value),t.shiftKey||this.focusNextField({field:"$Title"}))}setTitle(t){this.model.title instanceof i.a.ProtectedValue&&(t=i.a.ProtectedValue.fromString(t)),t!==this.model.title&&(this.model.setField("Title",t),this.entryUpdated(!0));const n=e('<h1 class="details__header-title"></h1>').text(t||"(no title)");this.$el.find(".details__header-title-input").replaceWith(n)}entryUpdated(e){o.Events.emit("entry-updated",{entry:this.model}),e||this.render()}focusNextField(e){let t,n=!1;"$Title"!==e.field||e.prev||(n=!0);const s=e.prev?this.fieldViews.length-1:0,i=e.prev?-1:this.fieldViews.length,l=e.prev?-1:1;for(let o=s;o!==i;o+=l){const s=this.fieldViews[o];if(s.model.name===e.field)n=!0;else if(n&&!s.readonly&&!s.isHidden()){t=s;break}}t&&t.edit()}showHistory(){this.removeSubView();const e=new C.DetailsHistoryView(this.model,{parent:this.scroller[0],replace:!0});this.listenTo(e,"close",this.historyClosed.bind(this)),e.render(),this.pageResized(),this.views.sub=e}historyClosed(e){e.updated?this.entryUpdated():this.render()}moveToTrash(){const e=()=>{this.model.moveToTrash(),o.Events.emit("refresh")};g.Features.isMobile?d.Alerts.yesno({header:y.Locale.detDelToTrash,body:y.Locale.detDelToTrashBody,icon:"trash",success:e}):e()}clone(){const e=this.model.cloneEntry(" "+y.Locale.detClonedName);o.Events.emit("select-entry",e)}copyToClipboard(){r.CopyPaste.copyHtml(this.model.getHtml())}deleteFromTrash(){d.Alerts.yesno({header:y.Locale.detDelFromTrash,body:y.Locale.detDelFromTrashBody,hint:y.Locale.detDelFromTrashBodyHint,icon:"minus-circle",success:()=>{this.model.deleteFromTrash(),o.Events.emit("refresh")}})}backClick(){o.Events.emit("toggle-details",!1)}contextMenu(e){const t=document.queryCommandSupported("copy"),n=[];t&&(this.model.external?n.push({value:"det-copy-otp",icon:"clipboard",text:y.Locale.detMenuCopyOtp}):n.push({value:"det-copy-password",icon:"clipboard",text:y.Locale.detMenuCopyPassword}),n.push({value:"det-copy-user",icon:"clipboard",text:y.Locale.detMenuCopyUser})),this.model.external||(n.push({value:"det-add-new",icon:"plus",text:y.Locale.detMenuAddNewField}),n.push({value:"det-clone",icon:"clone",text:y.Locale.detClone}),t&&n.push({value:"copy-to-clipboard",icon:"copy",text:y.Locale.detCopyEntryToClipboard})),a.AutoType.enabled&&n.push({value:"det-auto-type",icon:"keyboard-o",text:y.Locale.detAutoType}),o.Events.emit("show-context-menu",Object.assign(e,{options:n}))}contextMenuSelect(e){switch(e.item){case"det-copy-password":this.copyPassword();break;case"det-copy-user":this.copyUserName();break;case"det-copy-otp":this.copyOtp();break;case"det-add-new":this.addNewField();break;case"det-clone":this.clone();break;case"det-auto-type":this.autoType();break;case"copy-to-clipboard":this.copyToClipboard()}}setupOtp(){u.OtpQrReader.read()}otpCodeRead(e){this.model.setOtp(e),this.entryUpdated()}otpEnterManually(){if(this.model.fields.otp){const e=this.fieldViews.find(e=>"$otp"===e.model.name);e&&e.edit()}else{this.moreView.remove(),this.moreView=null;const e=new O.FieldViewCustom({name:"$otp",title:"otp",newField:"otp",value:i.a.ProtectedValue.fromString("")},{parent:this.$el.find(".details__body-fields")[0]});e.on("change",this.fieldChanged.bind(this)),e.render(),e.edit(),this.fieldViews.push(e)}}toggleAutoType(){if(this.views.autoType)return this.views.autoType.remove(),void delete this.views.autoType;this.views.autoType=new P.DetailsAutoTypeView(this.model),this.views.autoType.render()}autoType(e){const t=this.model;if((null==e?void 0:e.includes("{TOTP}"))||t.external&&!e){const n=this.getFieldView("$otp");n.refreshOtp(s=>{s||o.Events.emit("auto-type",{entry:t,sequence:e,context:{resolved:{totp:n.otpValue}}})})}else o.Events.emit("auto-type",{entry:t,sequence:e})}}Object.assign(R.prototype,k.Scrollable),Object.assign(R.prototype,w.Copyable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"DetailsAddFieldView",(function(){return o}));var s=n(7),i=n(231),l=n.n(i);class o extends s.View{constructor(...e){super(...e),this.parent=".details__body-fields",this.template=l.a,this.events={"click .details__field-label":"fieldLabelClick","click .details__field-value":"fieldValueClick"}}render(){super.render(),this.labelEl=this.$el.find(".details__field-label")}fieldLabelClick(){this.emit("more-click")}fieldValueClick(){this.emit("add-field")}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"DetailsAttachmentView",(function(){return r}));var s=n(7),i=n(22),l=n(6),o=n(232),a=n.n(o);class r extends s.View{constructor(...e){super(...e),this.template=a.a,this.events={"click .details__subview-close":"closeAttachment","click .details__attachment-preview-download-btn":"downloadAttachment"}}render(t){super.render({isMobile:l.Features.isMobile}),this.$el.find(".details__attachment-preview-download-text-shortcut").text(i.Shortcuts.actionShortcutSymbol());const n=new Blob([this.model.getBinary()],{type:this.model.mimeType}),s=this.$el.find(".details__attachment-preview-data");switch((this.model.mimeType||"").split("/")[0]){case"text":{const i=new FileReader;return i.addEventListener("loadend",()=>{e("<pre/>").text(i.result).appendTo(s),t()}),void i.readAsText(n)}case"image":return e("<img/>").attr("src",URL.createObjectURL(n)).appendTo(s),void t()}this.$el.addClass("details__attachment-preview--empty"),this.$el.find(".details__attachment-preview-icon").addClass("fa-"+this.model.icon),t()}downloadAttachment(){this.emit("download")}closeAttachment(){this.emit("close")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"DetailsAutoTypeView",(function(){return u}));var s=n(7),i=n(29),l=n(22),o=n(0),a=n(98),r=n(234),c=n.n(r);class u extends s.View{constructor(...e){super(...e),this.parent=".details__body-after",this.template=c.a,this.events={"focus #details__auto-type-sequence":"seqFocus","input #details__auto-type-sequence":"seqInput","keypress #details__auto-type-sequence":"seqKeyPress","keydown #details__auto-type-sequence":"seqKeyDown","change #details__auto-type-enabled":"enabledChange","change #details__auto-type-obfuscation":"obfuscationChange"}}render(){const e=o.Locale.detAutoTypeShortcutsDesc.replace("{}",l.Shortcuts.actionShortcutSymbol()+"T").replace("{}",l.Shortcuts.globalShortcutText("autoType"));super.render({enabled:this.model.getEffectiveEnableAutoType(),obfuscation:this.model.autoTypeObfuscation,sequence:this.model.autoTypeSequence,windows:this.model.autoTypeWindows,defaultSequence:this.model.group.getEffectiveAutoTypeSeq(),detAutoTypeShortcutsDesc:e})}seqInput(t){const n=t.target,s=n.value.trim();i.AutoType.validate(this.model,s,t=>{e(n).toggleClass("input--error",!!t),t||this.model.setAutoTypeSeq(s)})}seqKeyPress(e){e.stopPropagation()}seqKeyDown(e){e.stopPropagation()}seqFocus(e){this.views.hint||(this.views.hint=new a.AutoTypeHintView({input:e.target}),this.views.hint.render(),this.views.hint.on("remove",()=>{delete this.views.hint}))}enabledChange(e){this.model.setEnableAutoType(e.target.checked)}obfuscationChange(e){this.model.setAutoTypeObfuscation(e.target.checked)}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"DetailsHistoryView",(function(){return f}));var s=n(7),i=n(8),l=n(5),o=n(19),a=n(10),r=n(0),c=n(97),u=n(36),d=n(169),p=n(14),h=n(236),m=n.n(h);class f extends s.View{constructor(e,t){super(e,t),this.template=m.a,this.events={"click .details__subview-close":"closeHistory","click .details__history-timeline-item":"timelineItemClick","click .details__history-arrow-prev":"timelinePrevClick","click .details__history-arrow-next":"timelineNextClick","click .details__history-button-revert":"revertClick","click .details__history-button-delete":"deleteClick","click .details__history-button-discard":"discardClick"},this.formats=[{name:"ms",round:1,format:e=>o.DateFormat.dtStr(e)},{name:"sec",round:1e3,format:e=>o.DateFormat.dtStr(e)},{name:"min",round:6e4,format:e=>o.DateFormat.dtStr(e).replace(":00 "," ")},{name:"hour",round:36e5,format:e=>o.DateFormat.dtStr(e).replace(":00","")},{name:"day",round:864e5,format:e=>o.DateFormat.dStr(e)},{name:"month",round:26784e5,format:e=>o.DateFormat.dStr(e)},{name:"year",round:31536e6,format:e=>e.getFullYear()}],this.fieldViews=[],this.visibleRecord=void 0,this.onKey(l.Keys.DOM_VK_ESCAPE,this.closeHistory),this.once("remove",()=>{this.removeFieldViews()})}render(){super.render(),this.history=this.model.getHistory(),this.buildTimeline(),this.timelineEl=this.$el.find(".details__history-timeline"),this.bodyEl=this.$el.find(".details__history-body"),this.timeline.forEach((function(t,n){e("<i/>").addClass("fa fa-circle details__history-timeline-item").css("left",100*t.pos+"%").attr("data-id",n).appendTo(this.timelineEl)}),this),this.labels.forEach((function(t){e("<div/>").addClass("details__history-timeline-label").css("left",100*t.pos+"%").text(t.text).appendTo(this.timelineEl)}),this);let t=this.visibleRecord;void 0===t&&(t=this.history.length-1),this.showRecord(t)}removeFieldViews(){this.fieldViews.forEach(e=>e.remove()),this.fieldViews=[]}showRecord(e){this.activeIx=e,this.record=this.timeline[e].rec,this.timelineEl.find(".details__history-timeline-item").removeClass("details__history-timeline-item--active"),this.timelineEl.find('.details__history-timeline-item[data-id="'+e+'"]').addClass("details__history-timeline-item--active"),this.removeFieldViews(),this.bodyEl.empty();const t=this.record.color?this.record.color+"-color":"";this.fieldViews.push(new u.FieldViewReadOnly({name:"Rev",title:r.Locale.detHistoryVersion,value:e+1})),this.fieldViews.push(new u.FieldViewReadOnly({name:"Updated",title:r.Locale.detHistorySaved,value:o.DateFormat.dtStr(this.record.updated)+(this.record.unsaved?" ("+r.Locale.detHistoryCurUnsavedState+")":"")+(e!==this.history.length-1||this.record.unsaved?"":" ("+r.Locale.detHistoryCurState+")")})),this.fieldViews.push(new d.FieldViewReadOnlyRaw({name:"$Title",title:a.StringFormat.capFirst(r.Locale.title),value:'<i class="fa fa-'+this.record.icon+" "+t+'"></i> '+Object(p.escape)(this.record.title)||!1})),this.fieldViews.push(new u.FieldViewReadOnly({name:"$UserName",title:a.StringFormat.capFirst(r.Locale.user),value:this.record.user})),this.fieldViews.push(new u.FieldViewReadOnly({name:"$Password",title:a.StringFormat.capFirst(r.Locale.password),value:this.record.password})),this.fieldViews.push(new u.FieldViewReadOnly({name:"$URL",title:a.StringFormat.capFirst(r.Locale.website),value:this.record.url})),this.fieldViews.push(new u.FieldViewReadOnly({name:"$Notes",title:a.StringFormat.capFirst(r.Locale.notes),value:this.record.notes})),this.fieldViews.push(new u.FieldViewReadOnly({name:"Tags",title:a.StringFormat.capFirst(r.Locale.tags),value:this.record.tags.join(", ")})),this.fieldViews.push(new u.FieldViewReadOnly({name:"Expires",title:r.Locale.detExpires,value:this.record.expires?o.DateFormat.dtStr(this.record.expires):""}));for(const[e,t]of Object.entries(this.record.fields))this.fieldViews.push(new u.FieldViewReadOnly({name:"$"+e,title:e,value:t}));this.record.attachments.length&&this.fieldViews.push(new u.FieldViewReadOnly({name:"Attachments",title:r.Locale.detAttachments,value:this.record.attachments.map(e=>e.title).join(", ")})),this.fieldViews.forEach(e=>{e.parent=this.bodyEl[0],e.render(),e.on("copy",this.fieldCopied.bind(this))});const n=this.$el.find(".details__history-buttons");n.find(".details__history-button-revert").toggle(e<this.history.length-1),n.find(".details__history-button-delete").toggle(e<this.history.length-1),n.find(".details__history-button-discard").toggle(this.record.unsaved&&e===this.history.length-1&&this.history.length>1||!1)}timelineItemClick(t){const n=e(t.target).closest(".details__history-timeline-item").data("id");this.showRecord(n)}timelinePrevClick(){this.activeIx>0&&this.showRecord(this.activeIx-1)}timelineNextClick(){this.activeIx<this.timeline.length-1&&this.showRecord(this.activeIx+1)}buildTimeline(){const e=this.history[0],t=this.history[this.history.length-1];this.timeline=this.history.map(n=>({pos:(n.updated-e.updated)/(t.updated-e.updated),rec:n}));const n=t.updated-e.updated,s=this.getDateFormat(n);this.labels=this.getLabels(e.updated.getTime(),t.updated.getTime(),s.round).map(n=>({pos:(n-e.updated)/(t.updated-e.updated),val:n,text:s.format(new Date(n))}))}getDateFormat(e){for(let t=0;t<this.formats.length;t++)if(e<1.2*this.formats[t].round)return this.formats[t>0?t-1:0];return this.formats[this.formats.length-1]}getLabels(e,t,n){const s=Math.floor((t-e)/n);s>2&&(n*=Math.ceil(s/2));const i=[];let l=Math.ceil(e/n)*n;for(;l<t;)i.push(l),l+=n;return i.length>1&&(i[0]-e)/(t-e)<.1&&i.shift(),i}closeHistory(e){this.emit("close",{updated:e})}revertClick(){i.Alerts.yesno({header:r.Locale.detHistoryRevertAlert,body:r.Locale.detHistoryRevertAlertBody,success:()=>{this.model.revertToHistoryState(this.record.entry),this.closeHistory(!0)}})}deleteClick(){i.Alerts.yesno({header:r.Locale.detHistoryDeleteAlert,body:r.Locale.detHistoryDeleteAlertBody,success:()=>{this.model.deleteHistory(this.record.entry),this.visibleRecord=this.activeIx,this.render()}})}discardClick(){i.Alerts.yesno({header:r.Locale.detHistoryDiscardChangesAlert,body:r.Locale.detHistoryDiscardChangesAlertBody,success:()=>{this.model.discardUnsaved(),this.closeHistory(!0)}})}}Object.assign(f.prototype,c.Copyable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewReadOnlyRaw",(function(){return i}));var s=n(45);class i extends s.FieldView{constructor(...e){super(...e),this.readonly=!0}renderValue(e){return e}}},function(e,t,n){"use strict";n.r(t),n.d(t,"createDetailsFields",(function(){return v}));var s=n(0),i=n(10),l=n(19),o=n(57),a=n(36),r=n(101),c=n(171),u=n(172),d=n(33),p=n(173),h=n(174),m=n(175),f=n(176),g=n(75),y=n(177);function v(e){const t=e.model,n=e.matchingOtpEntry,v=[],b=[];if(t.external)b.push(new a.FieldViewReadOnly({name:"Device",title:i.StringFormat.capFirst(s.Locale.device),value:()=>t.device.name})),v.push(new y.FieldViewReadOnlyWithOptions({name:"$UserName",title:i.StringFormat.capFirst(s.Locale.user),aside:!1,value:()=>t.user,sequence:"{USERNAME}"})),v.push(new r.FieldViewOtp({name:"$otp",title:s.Locale.detOtpField,value:()=>t.otpGenerator,sequence:"{TOTP}",readonly:!0,needsTouch:t.needsTouch,deviceShortName:t.device.shortName}));else{const y=o.AppModel.instance.files.filter(e=>e.active&&!e.readOnly);if(t.isJustCreated&&y.length>1){const e=y.map(e=>({id:e.id,value:e.name,selected:e===t.file}));v.push(new c.FieldViewSelect({name:"$File",title:i.StringFormat.capFirst(s.Locale.file),value:()=>e}))}else b.push(new a.FieldViewReadOnly({name:"File",title:i.StringFormat.capFirst(s.Locale.file),value:()=>t.fileName}));v.push(new u.FieldViewAutocomplete({name:"$UserName",title:i.StringFormat.capFirst(s.Locale.user),value:()=>t.user,getCompletions:e.getUserNameCompletions.bind(e),sequence:"{USERNAME}"})),v.push(new d.FieldViewText({name:"$Password",title:i.StringFormat.capFirst(s.Locale.password),canGen:!0,value:()=>t.password,sequence:"{PASSWORD}"})),v.push(new p.FieldViewUrl({name:"$URL",title:i.StringFormat.capFirst(s.Locale.website),value:()=>t.url,sequence:"{URL}"})),v.push(new d.FieldViewText({name:"$Notes",title:i.StringFormat.capFirst(s.Locale.notes),multiline:"true",markdown:!0,value:()=>t.notes,sequence:"{NOTES}"})),v.push(new h.FieldViewTags({name:"Tags",title:i.StringFormat.capFirst(s.Locale.tags),tags:o.AppModel.instance.tags,value:()=>t.tags})),v.push(new m.FieldViewDate({name:"Expires",title:s.Locale.detExpires,lessThanNow:"("+s.Locale.detExpired+")",value:()=>t.expires})),b.push(new a.FieldViewReadOnly({name:"Group",title:s.Locale.detGroup,value:()=>t.groupName,tip:()=>t.getGroupPath().join(" / ")})),b.push(new a.FieldViewReadOnly({name:"Created",title:s.Locale.detCreated,value:()=>l.DateFormat.dtStr(t.created)})),b.push(new a.FieldViewReadOnly({name:"Updated",title:s.Locale.detUpdated,value:()=>l.DateFormat.dtStr(t.updated)})),b.push(new f.FieldViewHistory({name:"History",title:i.StringFormat.capFirst(s.Locale.history),value:()=>({length:t.historyLength,unsaved:t.unsaved})})),n&&v.push(new r.FieldViewOtp({name:"$otp",title:s.Locale.detOtpField,value:()=>n.otpGenerator,sequence:"{TOTP}",readonly:!0,needsTouch:n.needsTouch,deviceShortName:n.device.shortName}));for(const e of Object.keys(t.fields))"otp"===e&&t.otpGenerator?n||v.push(Object(r.FieldViewOtp)({name:"$"+e,title:e,value:()=>t.otpGenerator,sequence:"{TOTP}"})):v.push(new g.FieldViewCustom({name:"$"+e,title:e,multiline:!0,value:()=>t.fields[e],sequence:`{S:${e}}`}))}return{fieldViews:v,fieldViewsAside:b}}},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewSelect",(function(){return l}));var s=n(45),i=n(14);class l extends s.FieldView{constructor(...e){super(...e),this.readonly=!0}renderValue(e){return"<select>"+e.map(e=>'<option value="'+Object(i.escape)(e.id)+'" '+(e.selected?"selected ":"")+">"+Object(i.escape)(e.value)+"</option>").join("")+"</select>"}render(){super.render(),this.valueEl.addClass("details__field-value--select"),this.valueEl.find("select:first").change(e=>{this.triggerChange({val:e.target.value,field:this.model.name})})}fieldLabelClick(){}fieldValueClick(){}edit(){}startEdit(){}endEdit(e,t){this.editing&&(delete this.input,super.endEdit(e,t))}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FieldViewAutocomplete",(function(){return a}));var s=n(5),i=n(33),l=n(238),o=n.n(l);class a extends i.FieldViewText{constructor(...e){super(...e),this.hasOptions=!0}endEdit(e,t){this.autocomplete&&(this.autocomplete.remove(),this.autocomplete=null),delete this.selectedCompletionIx,super.endEdit(e,t)}startEdit(){super.startEdit();const t=this.input[0].getBoundingClientRect(),n=parseInt(this.input.css("--focus-shadow-spread"))||0;this.autocomplete=e('<div class="details__field-autocomplete"></div>').appendTo("body"),this.autocomplete.css({top:t.bottom+n,left:t.left,width:t.width-2}),delete this.selectedCompletionIx,this.autocomplete.mousedown(this.autocompleteClick.bind(this)),this.input.val()?this.autocomplete.hide():this.updateAutocomplete()}fieldValueInput(e){e.stopPropagation(),this.updateAutocomplete(),super.fieldValueInput.call(this,e)}fieldValueKeydown(e){switch(e.which){case s.Keys.DOM_VK_UP:this.moveAutocomplete(!1),e.preventDefault();break;case s.Keys.DOM_VK_DOWN:this.moveAutocomplete(!0),e.preventDefault();break;case s.Keys.DOM_VK_RETURN:{const e=this.autocomplete.find(".details__field-autocomplete-item--selected").text();e&&(this.input.val(e),this.endEdit(e));break}default:delete this.selectedCompletionIx}super.fieldValueKeydown(e)}moveAutocomplete(e){const t=this.model.getCompletions(this.input.val());"number"==typeof this.selectedCompletionIx?this.selectedCompletionIx=(t.length+this.selectedCompletionIx+(e?1:-1))%t.length:this.selectedCompletionIx=e?0:t.length-1,this.updateAutocomplete()}updateAutocomplete(){const e=this.model.getCompletions(this.input.val()),t=o()({completions:e,selectedIx:this.selectedCompletionIx});this.autocomplete.html(t),this.autocomplete.toggle(!!t)}autocompleteClick(t){if(t.stopPropagation(),t.target.classList.contains("details__field-autocomplete-item")){const n=e(t.target).text();this.input.val(n),this.endEdit(n)}else this.afterPaint(()=>{this.input.focus()})}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewUrl",(function(){return o}));var s=n(33),i=n(14);const l=["http:","https:","ftp:","ftps:","mailto:"];class o extends s.FieldViewText{constructor(...e){super(...e),this.displayUrlRegex=/^https:\/\//i,this.cssClass="url"}renderValue(e){try{return e?'<a href="'+Object(i.escape)(this.fixUrl(e))+'" rel="noreferrer noopener" target="_blank">'+Object(i.escape)(this.displayUrl(e))+"</a>":""}catch(t){return Object(i.escape)(e)}}fixUrl(e){const t=new URL(e,"ws://x").protocol;if("ws:"===t)return"https://"+e;if(!l.includes(t))throw new Error("Bad url");return e}displayUrl(e){return e.replace(this.displayUrlRegex,"")}getTextValue(){return this.value}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FieldViewTags",(function(){return a}));var s=n(33),i=n(14),l=n(239),o=n.n(l);class a extends s.FieldViewText{constructor(...e){super(...e),this.hasOptions=!1}renderValue(e){return e?Object(i.escape)(e.join(", ")):""}getEditValue(e){return e?e.join(", "):""}getTextValue(){return this.value?this.value.join(", "):""}valueToTags(e){const t={};this.model.tags.forEach(e=>{t[e.toLowerCase()]=e});const n={};return e.split(/\s*[;,:]\s*/).filter(e=>e).map(e=>t[e.toLowerCase()]||e).forEach(e=>{n[e]=e}),Object.keys(n)}endEdit(e,t){void 0!==e&&(e=this.valueToTags(e)),this.tagsAutocomplete&&(this.tagsAutocomplete.remove(),this.tagsAutocomplete=null),super.endEdit(e,t)}startEdit(){super.startEdit();const t=this.input[0].getBoundingClientRect(),n=parseInt(this.input.css("--focus-shadow-spread"))||0;this.tagsAutocomplete=e('<div class="details__field-autocomplete"></div>').appendTo("body"),this.tagsAutocomplete.css({top:t.bottom+n,left:t.left,width:t.width-2}),this.tagsAutocomplete.mousedown(this.tagsAutocompleteClick.bind(this)),this.setTags()}fieldValueInput(e){e.stopPropagation(),this.setTags(),super.fieldValueInput(e)}getAvailableTags(){const e=this.valueToTags(this.input.val()),t=e[e.length-1],n=t&&this.model.tags.indexOf(t)<0;return this.model.tags.filter(s=>e.indexOf(s)<0&&(!n||s.toLowerCase().indexOf(t.toLowerCase())>=0))}setTags(){const e=this.getAvailableTags(),t=o()({tags:e});this.tagsAutocomplete.html(t),this.tagsAutocomplete.toggle(!!t)}tagsAutocompleteClick(t){if(t.stopPropagation(),t.target.classList.contains("details__field-autocomplete-item")){const n=e(t.target).text();let s=this.input.val();if(s){const e=this.valueToTags(s),t=e[e.length-1];t&&this.model.tags.indexOf(t)<0?s=s.substr(0,s.lastIndexOf(t))+n:s+=", "+n}else s=n;this.input.val(s),this.input.focus(),this.setTags()}this.afterPaint(()=>{this.input.focus()})}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewDate",(function(){return r}));var s=n(100),i=n.n(s),l=n(19),o=n(0),a=n(33);class r extends a.FieldViewText{constructor(...e){super(...e),this.hasOptions=!1}renderValue(e){let t=e?l.DateFormat.dStr(e):"";return e&&this.model.lessThanNow&&e<new Date&&(t+=" "+this.model.lessThanNow),t}getEditValue(e){return e?l.DateFormat.dStr(e):""}startEdit(){super.startEdit(),this.picker=new i.a({field:this.input[0],onSelect:this.pickerSelect.bind(this),onClose:this.pickerClose.bind(this),defaultDate:this.value,minDate:new Date,firstDay:1,i18n:{previousMonth:"",nextMonth:"",months:o.Locale.months,weekdays:o.Locale.weekdays,weekdaysShort:o.Locale.weekdaysShort}}),this.picker.adjustPosition=this.adjustPickerPosition.bind(this),setTimeout(()=>this.picker.show(),0)}adjustPickerPosition(...e){window.Pikaday=i.a,i.a.prototype.adjustPosition.apply(this.picker,e);const t=parseInt(this.input.css("--focus-shadow-spread"))||0;if(t){const e=this.picker.el.classList.contains("top-aligned")?-t:t,n=parseInt(this.picker.el.style.top)+e;this.picker.el.style.top=n+"px"}}fieldValueBlur(e){this.picker||super.fieldValueBlur(e)}endEdit(e,t){if(this.picker){try{this.picker.destroy()}catch(e){}this.picker=null}(e=new Date(e))&&!isNaN(e.getTime())||(e=null),super.endEdit(e,t)}pickerClose(){this.endEdit(this.input.val())}pickerSelect(e){this.endEdit(e)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewHistory",(function(){return l}));var s=n(0),i=n(45);class l extends i.FieldView{constructor(...e){super(...e),this.readonly=!0}renderValue(e){if(!e.length)return s.Locale.detHistoryEmpty;let t=e.length+" "+(1===e.length?s.Locale.detHistoryRec:s.Locale.detHistoryRecs);return e.unsaved&&(t+=" ("+s.Locale.detHistoryModified+")"),'<a class="details__history-link">'+t+"</a>"}}},function(e,t,n){"use strict";n.r(t),n.d(t,"FieldViewReadOnlyWithOptions",(function(){return i}));var s=n(33);class i extends s.FieldViewText{constructor(...e){super(...e),this.readonly=!0,this.hasOptions=!0}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"FooterView",(function(){return d}));var s=n(7),i=n(1),l=n(15),o=n(5),a=n(13),r=n(72),c=n(245),u=n.n(c);class d extends s.View{constructor(e,t){super(e,t),this.parent=".app__footer",this.template=u.a,this.events={"click .footer__db-item":"showFile","click .footer__db-open":"openFile","click .footer__btn-help":"toggleHelp","click .footer__btn-settings":"toggleSettings","click .footer__btn-generate":"genPass","click .footer__btn-lock":"lockWorkspace"},this.onKey(o.Keys.DOM_VK_L,this.lockWorkspace,l.KeyHandler.SHORTCUT_ACTION,!1,!0),this.onKey(o.Keys.DOM_VK_G,this.genPass,l.KeyHandler.SHORTCUT_ACTION),this.onKey(o.Keys.DOM_VK_O,this.openFile,l.KeyHandler.SHORTCUT_ACTION),this.onKey(o.Keys.DOM_VK_S,this.saveAll,l.KeyHandler.SHORTCUT_ACTION),this.onKey(o.Keys.DOM_VK_COMMA,this.toggleSettings,l.KeyHandler.SHORTCUT_ACTION),this.listenTo(this,"hide",this.viewHidden),this.listenTo(this.model.files,"change",this.render),this.listenTo(i.Events,"file-changed",this.render),this.listenTo(i.Events,"set-locale",this.render),this.listenTo(a.UpdateModel,"change:updateStatus",this.render)}render(){super.render({files:this.model.files,updateAvailable:["ready","found"].indexOf(a.UpdateModel.updateStatus)>=0})}viewHidden(){this.views.gen&&(this.views.gen.remove(),delete this.views.gen)}lockWorkspace(e){this.model.files.hasOpenFiles()&&(e.preventDefault(),i.Events.emit("lock-workspace"))}genPass(e){if(e.stopPropagation(),this.views.gen)return void this.views.gen.remove();const t=this.$el.find(".footer__btn-generate")[0].getBoundingClientRect(),n=document.body.getBoundingClientRect(),s=n.right-t.right,i=n.bottom-t.top,l=new r.GeneratorView({copy:!0,pos:{right:s,bottom:i}});l.render(),l.once("remove",()=>{delete this.views.gen}),this.views.gen=l}showFile(t){const n=e(t.target).closest(".footer__db-item").data("file-id");n&&i.Events.emit("show-file",{fileId:n})}openFile(){i.Events.emit("open-file")}saveAll(){i.Events.emit("save-all")}toggleHelp(){i.Events.emit("toggle-settings","help")}toggleSettings(){i.Events.emit("toggle-settings","general")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"KeyChangeView",(function(){return d}));var s=n(7),i=n(82),l=n(8),o=n(5),a=n(0),r=n(83),c=n(248),u=n.n(c);class d extends s.View{constructor(e){super(e),this.parent=".app__body",this.template=u.a,this.events={"keydown .key-change__pass":"inputKeydown","keydown .key-change__pass-repeat":"inputKeydown","click .key-change__keyfile":"keyFileClicked","change .key-change__file":"keyFileSelected","click .key-change__btn-ok":"accept","click .key-change__btn-cancel":"cancel"},this.passwordInput=null,this.passwordRepeatInput=null,this.inputEl=null,this.passwordInput=new i.SecureInput}render(){this.keyFileName=this.model.file.keyFileName||null,this.keyFileData=null;const e=this.model.expired;super.render({fileName:this.model.file.name,keyFileName:this.model.file.keyFileName,title:this.model.expired?a.Locale.keyChangeTitleExpired:a.Locale.keyChangeTitleRemote,message:this.model.expired?a.Locale.keyChangeMessageExpired:a.Locale.keyChangeMessageRemote,repeat:e}),this.$el.find(".key-change__keyfile-name").text(this.keyFileName?": "+this.keyFileName:""),this.inputEl=this.$el.find(".key-change__pass"),this.passwordInput.reset(),this.passwordInput.setElement(this.inputEl),this.inputEl.focus(),e&&(this.passwordRepeatInput=new i.SecureInput,this.passwordRepeatInput.reset(),this.passwordRepeatInput.setElement(this.$el.find(".key-change__pass-repeat")))}inputKeydown(e){e.which===o.Keys.DOM_VK_RETURN&&this.accept()}keyFileClicked(){this.keyFileName&&(this.keyFileName=null,this.keyFile=null,this.$el.find(".key-change__keyfile-name").empty()),this.$el.find(".key-change__file").val(null).click(),this.inputEl.focus()}keyFileSelected(e){const t=e.target.files[0];if(t){const e=new FileReader;e.onload=e=>{this.keyFileName=t.name,this.keyFileData=e.target.result,this.$el.find(".key-change__keyfile-name").text(": "+this.keyFileName)},e.onerror=()=>{l.Alerts.error({header:a.Locale.openFailedRead})},e.readAsArrayBuffer(t)}else this.$el.find(".key-change__keyfile-name").empty();this.inputEl.focus()}accept(){return this.passwordInput.value.byteLength?(this.passwordInput.el.removeClass("input--error"),this.passwordRepeatInput&&!this.passwordRepeatInput.value.equals(this.passwordInput.value)?(this.passwordRepeatInput.el.addClass("input--error"),this.passwordRepeatInput.el.focus(),void r.InputFx.shake(this.passwordRepeatInput.el)):void this.emit("accept",{file:this.model.file,expired:this.model.expired,password:this.passwordInput.value,keyFileName:this.keyFileName,keyFileData:this.keyFileData})):(this.passwordInput.el.focus(),this.passwordRepeatInput.el.addClass("input--error"),void r.InputFx.shake(this.passwordInput.el))}cancel(){this.emit("cancel")}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"ListView",(function(){return _}));var s=n(7),i=n(1),l=n(66),o=n(55),a=n(8),r=n(3),c=n(96),u=n(10),d=n(0),p=n(71),h=n(37),m=n(42),f=n(181),g=n(102),y=n.n(g),v=n(250),b=n.n(v),w=n(251),k=n.n(w);class _ extends s.View{constructor(e,t){super(e,t),this.parent=".app__list",this.template=b.a,this.emptyTemplate=k.a,this.events={click:"click","click .list__table-options":"tableOptionsClick","dragstart .list__item":"itemDragStart"},this.minWidth=200,this.minHeight=200,this.maxWidth=500,this.maxHeight=500,this.itemsEl=null,this.tableColumns=[{val:"title",name:"title",enabled:!0},{val:"user",name:"user",enabled:!0},{val:"url",name:"website",enabled:!0},{val:"tags",name:"tags",enabled:!0},{val:"notes",name:"notes",enabled:!0},{val:"groupName",name:"group",enabled:!1},{val:"fileName",name:"file",enabled:!1}],this.throttleSetViewSizeSetting=y()(e=>{r.AppSettingsModel.listViewWidth=e},1e3),this.initScroll(),this.views.search=new f.ListSearchView(this.model),this.listenTo(this.views.search,"select-prev",this.selectPrev),this.listenTo(this.views.search,"select-next",this.selectNext),this.listenTo(this.views.search,"create-entry",this.createEntry),this.listenTo(this.views.search,"create-group",this.createGroup),this.listenTo(this.views.search,"create-template",this.createTemplate),this.listenTo(this,"show",this.viewShown),this.listenTo(this,"hide",this.viewHidden),this.listenTo(this,"view-resize",this.viewResized),this.listenTo(i.Events,"filter",this.filterChanged),this.listenTo(i.Events,"entry-updated",this.entryUpdated),this.listenTo(i.Events,"set-locale",this.render),this.listenTo(this.model.settings,"change:tableView",this.setTableView),this.readTableColumnsEnabled(),this.items=new l.SearchResultCollection}render(){if(this.itemsEl||(super.render(),this.itemsEl=this.$el.find(".list__items>.scroller"),this.views.search.render(),this.setTableView(),this.createScroll({root:this.$el.find(".list__items")[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]})),this.items.length){const e=this.getItemTemplate(),t=this.getItemsTemplate(),n=r.AppSettingsModel.colorfulIcons?"":"grayscale",i=new c.EntryPresenter(this.getDescField(),n,this.model.activeEntryId),l={};this.tableColumns.forEach(e=>{e.enabled&&(l[e.val]=!0)}),i.columns=l;let o="";this.items.forEach(t=>{i.present(t),o+=e(i,s.DefaultTemplateOptions)},this);const a=t({itemsHtml:o,columns:this.tableColumns},s.DefaultTemplateOptions);this.itemsEl.html(a)}else this.itemsEl.html(this.emptyTemplate({},s.DefaultTemplateOptions));this.pageResized()}getItemsTemplate(){return this.model.settings.tableView?n(308):this.renderPlainItems}renderPlainItems(e){return e.itemsHtml}getItemTemplate(){return this.model.settings.tableView?n(309):n(310)}getDescField(){return this.model.sort.replace("-","")}click(e){const t=e.target.closest(".list__item");if(!t)return;const n=t.id,s=this.items.get(n);s.active||this.selectItem(s),i.Events.emit("toggle-details",!0)}selectPrev(){const e=this.items.indexOf(this.items.get(this.model.activeEntryId));e>0&&this.selectItem(this.items[e-1])}selectNext(){const e=this.items.indexOf(this.items.get(this.model.activeEntryId));e<this.items.length-1&&this.selectItem(this.items[e+1])}createEntry(e){const t=this.model.createNewEntry(e);this.items.unshift(t),this.render(),this.selectItem(t),i.Events.emit("toggle-details",!0)}createGroup(){const e=this.model.createNewGroup();i.Events.emit("edit-group",e)}createTemplate(){if(!this.model.settings.templateHelpShown_)return void a.Alerts.yesno({icon:"sticky-note-o",header:d.Locale.listAddTemplateHeader,body:d.Locale.listAddTemplateBody1.replace("{}",'"+"')+"\n"+d.Locale.listAddTemplateBody2.replace("{}","Templates"),buttons:[a.Alerts.buttons.ok,a.Alerts.buttons.cancel],success:()=>{this.model.settings.templateHelpShown=!0,this.createTemplate()}});const e=this.model.createNewTemplateEntry();this.items.unshift(e),this.render(),this.selectItem(e)}selectItem(e){this.model.activeEntryId=e.id,i.Events.emit("entry-selected",e),this.itemsEl.find(".list__item--active").removeClass("list__item--active");const t=document.getElementById(e.id);t.classList.add("list__item--active");const n=this.itemsEl[0],s=t.getBoundingClientRect(),l=n.getBoundingClientRect();s.top<l.top?n.scrollTop+=s.top-l.top:s.bottom>l.bottom&&(n.scrollTop+=s.bottom-l.bottom)}viewShown(){this.views.search.show()}viewHidden(){this.views.search.hide()}setTableView(){const e=this.model.settings.tableView;this.dragView.setCoord(e?"y":"x"),this.setDefaultSize()}setDefaultSize(){this.setSize(this.model.settings.listViewWidth)}setSize(e){this.$el.css({width:"auto",height:"auto"}),e?this.$el.css("flex","0 0 "+e+"px"):this.$el.css("flex","")}viewResized(e){this.setSize(e),this.throttleSetViewSizeSetting(e)}filterChanged(e){this.items=e.entries,this.render()}entryUpdated(){const e=this.itemsEl[0].scrollTop;this.render(),this.itemsEl[0].scrollTop=e}itemDragStart(t){t.stopPropagation();const n=e(t.target).closest(".list__item").attr("id");t.dataTransfer.setData("text/entry",n),t.dataTransfer.effectAllowed="move",o.DragDropInfo.dragObject=this.items.get(n)}tableOptionsClick(e){if(e.stopImmediatePropagation(),this.views.optionsDropdown)return void this.hideOptionsDropdown();const t=new m.DropdownView;this.listenTo(t,"cancel",this.hideOptionsDropdown),this.listenTo(t,"select",this.optionsDropdownSelect);const n=this.$el.find(".list__table-options")[0].getBoundingClientRect(),s=this.tableColumns.map(e=>({value:e.val,icon:e.enabled?"check-square-o":"square-o",text:u.StringFormat.capFirst(d.Locale[e.name])}));t.render({position:{top:n.bottom,left:n.left},options:s}),this.views.optionsDropdown=t}hideOptionsDropdown(){this.views.optionsDropdown&&(this.views.optionsDropdown.remove(),delete this.views.optionsDropdown)}optionsDropdownSelect(e){const t=this.tableColumns.find(t=>t.val===e.item);t.enabled=!t.enabled,e.el.find("i:first").toggleClass("fa-check-square-o fa-square-o"),this.render(),this.saveTableColumnsEnabled()}readTableColumnsEnabled(){const e=r.AppSettingsModel.tableViewColumns;e&&e.length&&this.tableColumns.forEach(t=>{t.enabled=e.indexOf(t.name)>=0})}saveTableColumnsEnabled(){const e=this.tableColumns.filter(e=>e.enabled).map(e=>e.name);r.AppSettingsModel.tableViewColumns=e}}Object.assign(_.prototype,p.Resizable),Object.assign(_.prototype,h.Scrollable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"ListSearchView",(function(){return f}));var s=n(7),i=n(1),l=n(22),o=n(15),a=n(5),r=n(32),c=n(6),u=n(10),d=n(0),p=n(42),h=n(249),m=n.n(h);class f extends s.View{constructor(e){super(e),this.parent=".list__header",this.template=m.a,this.events={"keydown .list__search-field":"inputKeyDown","keypress .list__search-field":"inputKeyPress","input .list__search-field":"inputChange","focus .list__search-field":"inputFocus","click .list__search-btn-new":"createOptionsClick","click .list__search-btn-sort":"sortOptionsClick","click .list__search-icon-search":"advancedSearchClick","click .list__search-btn-menu":"toggleMenu","change .list__search-adv input[type=checkbox]":"toggleAdvCheck"},this.inputEl=null,this.sortOptions=null,this.sortIcons=null,this.createOptions=null,this.advancedSearchEnabled=!1,this.advancedSearch=null,this.sortOptions=[{value:"title",icon:"sort-alpha-asc",loc:()=>u.StringFormat.capFirst(d.Locale.title)+" "+this.addArrow(d.Locale.searchAZ)},{value:"-title",icon:"sort-alpha-desc",loc:()=>u.StringFormat.capFirst(d.Locale.title)+" "+this.addArrow(d.Locale.searchZA)},{value:"website",icon:"sort-alpha-asc",loc:()=>u.StringFormat.capFirst(d.Locale.website)+" "+this.addArrow(d.Locale.searchAZ)},{value:"-website",icon:"sort-alpha-desc",loc:()=>u.StringFormat.capFirst(d.Locale.website)+" "+this.addArrow(d.Locale.searchZA)},{value:"user",icon:"sort-alpha-asc",loc:()=>u.StringFormat.capFirst(d.Locale.user)+" "+this.addArrow(d.Locale.searchAZ)},{value:"-user",icon:"sort-alpha-desc",loc:()=>u.StringFormat.capFirst(d.Locale.user)+" "+this.addArrow(d.Locale.searchZA)},{value:"created",icon:"sort-numeric-asc",loc:()=>d.Locale.searchCreated+" "+this.addArrow(d.Locale.searchON)},{value:"-created",icon:"sort-numeric-desc",loc:()=>d.Locale.searchCreated+" "+this.addArrow(d.Locale.searchNO)},{value:"updated",icon:"sort-numeric-asc",loc:()=>d.Locale.searchUpdated+" "+this.addArrow(d.Locale.searchON)},{value:"-updated",icon:"sort-numeric-desc",loc:()=>d.Locale.searchUpdated+" "+this.addArrow(d.Locale.searchNO)},{value:"-attachments",icon:"sort-amount-desc",loc:()=>d.Locale.searchAttachments},{value:"-rank",icon:"sort-amount-desc",loc:()=>d.Locale.searchRank}],this.sortIcons={},this.sortOptions.forEach(e=>{this.sortIcons[e.value]=e.icon}),this.advancedSearch={user:!0,other:!0,url:!0,protect:!1,notes:!0,pass:!1,cs:!1,regex:!1,history:!1,title:!0},this.model.advancedSearch&&(this.advancedSearch=Object.assign({},this.model.advancedSearch)),this.setLocale(),this.onKey(a.Keys.DOM_VK_F,this.findKeyPress,o.KeyHandler.SHORTCUT_ACTION),this.onKey(a.Keys.DOM_VK_N,this.newKeyPress,o.KeyHandler.SHORTCUT_OPT),this.onKey(a.Keys.DOM_VK_DOWN,this.downKeyPress),this.onKey(a.Keys.DOM_VK_UP,this.upKeyPress),this.listenTo(this,"show",this.viewShown),this.listenTo(this,"hide",this.viewHidden),this.listenTo(i.Events,"filter",this.filterChanged),this.listenTo(i.Events,"set-locale",this.setLocale),this.listenTo(i.Events,"page-blur",this.pageBlur),this.listenTo(this.model.files,"change",this.fileListUpdated),this.once("remove",()=>{this.removeKeypressHandler()})}setLocale(){this.sortOptions.forEach(e=>{e.text=e.loc()}),this.createOptions=[{value:"entry",icon:"key",text:u.StringFormat.capFirst(d.Locale.entry),hint:c.Features.isMobile?null:`(${d.Locale.searchShiftClickOr} ${l.Shortcuts.altShortcutSymbol(!0)})`},{value:"group",icon:"folder",text:u.StringFormat.capFirst(d.Locale.group)}],this.el&&this.render()}pageBlur(){this.inputEl.blur()}removeKeypressHandler(){}viewShown(){const e=e=>this.documentKeyPress(e);i.Events.on("keypress",e),this.removeKeypressHandler=()=>i.Events.off("keypress",e)}viewHidden(){this.removeKeypressHandler()}render(){let e;this.inputEl&&(e=this.inputEl.val()),super.render({adv:this.advancedSearch,advEnabled:this.advancedSearchEnabled,canCreate:this.model.canCreateEntries()}),this.inputEl=this.$el.find(".list__search-field"),e&&this.inputEl.val(e)}inputKeyDown(e){switch(e.which){case a.Keys.DOM_VK_UP:case a.Keys.DOM_VK_DOWN:break;case a.Keys.DOM_VK_RETURN:e.target.blur();break;case a.Keys.DOM_VK_ESCAPE:this.inputEl.val()&&(this.inputEl.val(""),this.inputChange()),e.target.blur();break;default:return}e.preventDefault()}inputKeyPress(e){e.stopPropagation()}inputChange(){i.Events.emit("add-filter",{text:this.inputEl.val()})}inputFocus(t){e(t.target).select()}documentKeyPress(e){if(this.hidden)return;const t=e.charCode;t&&(this.hideSearchOptions(),this.inputEl.val(String.fromCharCode(t)).focus(),this.inputEl[0].setSelectionRange(1,1),this.inputChange(),e.preventDefault())}findKeyPress(e){this.hidden||(e.preventDefault(),this.hideSearchOptions(),this.inputEl.select().focus())}newKeyPress(e){this.hidden||(e.preventDefault(),this.hideSearchOptions(),this.emit("create-entry"))}downKeyPress(e){e.preventDefault(),this.hideSearchOptions(),this.emit("select-next")}upKeyPress(e){e.preventDefault(),this.hideSearchOptions(),this.emit("select-prev")}filterChanged(e){this.hideSearchOptions(),e.filter.text!==this.inputEl.val()&&this.inputEl.val(e.text||"");const t=this.sortIcons[e.sort]||"sort";this.$el.find(".list__search-btn-sort>i").attr("class","fa fa-"+t);let n=!!e.filter.advanced;this.model.advancedSearch&&(n=e.filter.advanced!==this.model.advancedSearch),this.advancedSearchEnabled!==n&&(this.advancedSearchEnabled=n,this.$el.find(".list__search-adv").toggleClass("hide",!this.advancedSearchEnabled))}createOptionsClick(e){if(e.stopImmediatePropagation(),e.shiftKey)return this.hideSearchOptions(),void this.emit("create-entry");this.toggleCreateOptions()}sortOptionsClick(e){this.toggleSortOptions(),e.stopImmediatePropagation()}advancedSearchClick(){this.advancedSearchEnabled=!this.advancedSearchEnabled,this.$el.find(".list__search-adv").toggleClass("hide",!this.advancedSearchEnabled);let e=!1;this.advancedSearchEnabled?e=this.advancedSearch:this.model.advancedSearch&&(e=this.model.advancedSearch),i.Events.emit("add-filter",{advanced:e})}toggleMenu(){i.Events.emit("toggle-menu")}toggleAdvCheck(t){const n=e(t.target).data("id");this.advancedSearch[n]=t.target.checked,i.Events.emit("add-filter",{advanced:this.advancedSearch})}hideSearchOptions(){this.views.searchDropdown&&(this.views.searchDropdown.remove(),this.views.searchDropdown=null,this.$el.find(".list__search-btn-sort,.list__search-btn-new").removeClass("sel--active"))}toggleSortOptions(){if(this.views.searchDropdown&&this.views.searchDropdown.isSort)return void this.hideSearchOptions();this.hideSearchOptions(),this.$el.find(".list__search-btn-sort").addClass("sel--active");const e=new p.DropdownView;e.isSort=!0,this.listenTo(e,"cancel",this.hideSearchOptions),this.listenTo(e,"select",this.sortDropdownSelect),this.sortOptions.forEach((function(e){e.active=this.model.sort===e.value}),this),e.render({position:{top:this.$el.find(".list__search-btn-sort")[0].getBoundingClientRect().bottom,right:this.$el[0].getBoundingClientRect().right+1},options:this.sortOptions}),this.views.searchDropdown=e}toggleCreateOptions(){if(this.views.searchDropdown&&this.views.searchDropdown.isCreate)return void this.hideSearchOptions();this.hideSearchOptions(),this.$el.find(".list__search-btn-new").addClass("sel--active");const e=new p.DropdownView;e.isCreate=!0,this.listenTo(e,"cancel",this.hideSearchOptions),this.listenTo(e,"select",this.createDropdownSelect),e.render({position:{top:this.$el.find(".list__search-btn-new")[0].getBoundingClientRect().bottom,right:this.$el[0].getBoundingClientRect().right+1},options:this.createOptions.concat(this.getCreateEntryTemplateOptions())}),this.views.searchDropdown=e}getCreateEntryTemplateOptions(){const e=this.model.getEntryTemplates(),t=this.model.files.length>1;this.entryTemplates={};const n=[];return e.forEach(e=>{const s="tmpl:"+e.entry.id;n.push({value:s,icon:e.entry.icon,text:t?e.file.name+" / "+e.entry.title:e.entry.title}),this.entryTemplates[s]=e}),n.sort(r.Comparators.stringComparator("text",!0)),n.push({value:"tmpl",icon:"sticky-note-o",text:u.StringFormat.capFirst(d.Locale.template)}),n}sortDropdownSelect(e){this.hideSearchOptions(),i.Events.emit("set-sort",e.item)}createDropdownSelect(e){switch(this.hideSearchOptions(),e.item){case"entry":this.emit("create-entry");break;case"group":this.emit("create-group");break;case"tmpl":this.emit("create-template");break;default:this.entryTemplates[e.item]&&this.emit("create-entry",{template:this.entryTemplates[e.item]})}}addArrow(e){return e.replace("{}","→")}fileListUpdated(){this.render()}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"ListWrapView",(function(){return i}));var s=n(7);class i extends s.View{constructor(e,t){super(e,t),this.parent=".app__list-wrap",this.template=()=>"",this.events={},this.listenTo(this.model.settings,"change:tableView",this.setListLayout)}render(){super.render(),this.setListLayout()}setListLayout(){const e=!!this.model.settings.tableView;this.el.classList.toggle("app__list-wrap--table",e)}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"MenuView",(function(){return f}));var s=n(1),i=n(7),l=n(15),o=n(5),a=n(3),r=n(71),c=n(85),u=n(184),d=n(102),p=n.n(d),h=n(254),m=n.n(h);class f extends i.View{constructor(e,t){super(e,t),this.parent=".app__menu",this.template=m.a,this.events={},this.sectionViews=[],this.minWidth=130,this.maxWidth=300,this.autoWidth=150,this.viewResized=p()(e=>{a.AppSettingsModel.menuViewWidth=e},1e3),this.listenTo(this.model,"change:sections",this.menuChanged),this.listenTo(this,"view-resize",this.viewResized),this.onKey(o.Keys.DOM_VK_UP,this.selectPreviousSection,l.KeyHandler.SHORTCUT_ACTION+l.KeyHandler.SHORTCUT_OPT),this.onKey(o.Keys.DOM_VK_DOWN,this.selectNextSection,l.KeyHandler.SHORTCUT_ACTION+l.KeyHandler.SHORTCUT_OPT),this.once("remove",()=>{this.sectionViews.forEach(e=>e.remove()),this.sectionViews=[]})}render(){super.render();const t=this.$el.find(".menu");this.model.sections.forEach((function(n){const s=new u.MenuSectionView(n,{parent:t[0]});if(s.render(),n.drag){const n=e("<div/>").addClass("menu__drag-section").appendTo(t),i=new c.DragView("y",{parent:n[0]});s.listenDrag(i),i.render(),this.sectionViews.push(i)}this.sectionViews.push(s)}),this),"number"==typeof a.AppSettingsModel.menuViewWidth&&this.$el.width(a.AppSettingsModel.menuViewWidth)}menuChanged(){this.render()}switchVisibility(e){this.$el.toggleClass("menu-visible",e)}selectPreviousSection(){s.Events.emit("select-previous-menu-item")}selectNextSection(){s.Events.emit("select-next-menu-item")}}Object.assign(f.prototype,r.Resizable)}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"MenuSectionView",(function(){return p}));var s=n(7),i=n(3),l=n(71),o=n(37),a=n(185),r=n(102),c=n.n(r),u=n(253),d=n.n(u);class p extends s.View{constructor(e,t){super(e,t),this.template=d.a,this.events={},this.itemViews=[],this.minHeight=55,this.autoHeight="auto",this.saveViewHeight=c()(e=>{i.AppSettingsModel.tagsViewHeight=e},1e3),this.listenTo(this.model,"change-items",this.itemsChanged),this.listenTo(this,"view-resize",this.viewResized),this.once("remove",()=>{this.scroll&&this.scroll.dispose(),this.removeInnerViews()})}render(){if(this.itemsEl?this.removeInnerViews():(super.render(this.model),this.itemsEl=this.model.scrollable?this.$el.find(".scroller"):this.$el,this.model.scrollable&&(this.initScroll(),this.createScroll({root:this.$el[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]}))),this.model.items.forEach(e=>{const t=new a.MenuItemView(e,{parent:this.itemsEl[0]});t.render(),this.itemViews.push(t)}),this.model.drag){const e=i.AppSettingsModel.tagsViewHeight;"number"==typeof e&&(this.$el.height(),this.$el.css("flex","0 0 "+e+"px"))}this.pageResized()}maxHeight(){return this.$el.parent().height()-116}removeInnerViews(){this.itemViews.forEach(e=>e.remove()),this.itemViews=[]}itemsChanged(){this.render()}viewResized(e){this.$el.css("flex","0 0 "+(e?e+"px":"auto")),this.saveViewHeight(e)}}Object.assign(p.prototype,l.Resizable),Object.assign(p.prototype,o.Scrollable)},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"MenuItemView",(function(){return p}));var s=n(1),i=n(7),l=n(55),o=n(15),a=n(8),r=n(5),c=n(0),u=n(252),d=n.n(u);class p extends i.View{constructor(e,t){super(e,t),this.template=d.a,this.events={mouseover:"mouseover",mouseout:"mouseout","click .menu__item-option":"selectOption",click:"selectItem",dblclick:"expandItem","click .menu__item-edit":"editItem","click .menu__item-empty-trash":"emptyTrash",dragstart:"dragstart",dragover:"dragover",dragleave:"dragleave",drop:"drop","dragover .menu__item-drag-top":"dragoverTop","dragleave .menu__item-drag-top":"dragleaveTop"},this.iconEl=null,this.itemViews=[],this.listenTo(this.model,"change:title",this.changeTitle),this.listenTo(this.model,"change:icon",this.changeIcon),this.listenTo(this.model,"change:customIconId",this.render),this.listenTo(this.model,"change:active",this.changeActive),this.listenTo(this.model,"change:expanded",this.changeExpanded),this.listenTo(this.model,"change:cls",this.changeCls),this.listenTo(this.model,"delete",this.remove),this.listenTo(this.model,"insert",this.insertItem);const n=this.model.shortcut;n&&(this.onKey(n,this.selectItem,o.KeyHandler.SHORTCUT_OPT),n!==r.Keys.DOM_VK_C&&this.onKey(n,this.selectItem,o.KeyHandler.SHORTCUT_ACTION)),this.once("remove",()=>{this.removeInnerViews()})}render(){this.removeInnerViews(),super.render(this.model),this.model.options&&(window.model=this.model),this.iconEl=this.$el.find(".menu__item-icon");const e=this.model.items;e&&e.forEach(e=>{e.visible&&this.insertItem(e)}),this.$el.toggleClass("menu__item--collapsed",!this.model.expanded)}insertItem(e){const t=new p(e,{parent:this.el});t.render(),this.itemViews.push(t)}removeInnerViews(){this.itemViews.forEach(e=>e.remove()),this.itemViews=[]}changeTitle(e,t){this.$el.find(".menu__item-title").first().text(t||"(no title)")}changeIcon(e,t){this.iconEl[0].className="menu__item-icon fa "+(t?"fa-"+t:"menu__item-icon--no-icon")}changeActive(e,t){this.$el.toggleClass("menu__item--active",t)}changeExpanded(e,t){this.$el.toggleClass("menu__item--collapsed",!t),this.model.setExpanded(t)}changeCls(e,t,n){n&&this.$el.removeClass(n),this.$el.addClass(t)}mouseover(e){e.button||(this.$el.addClass("menu__item--hover"),e.stopPropagation())}mouseout(e){this.$el.removeClass("menu__item--hover"),e.stopPropagation()}selectItem(e){e.stopPropagation(),e.preventDefault(),this.model.active||(this.model.disabled?a.Alerts.info(this.model.disabled):s.Events.emit("menu-select",{item:this.model}))}selectOption(t){const n=this.model.options,i=e(t.target).data("value");if(n&&n.length){const e=n.find(e=>e.value===i);e&&s.Events.emit("menu-select",{item:this.model,option:e})}t.stopImmediatePropagation(),t.preventDefault()}expandItem(e){this.model.toggleExpanded&&this.model.toggleExpanded(),e.stopPropagation()}editItem(e){if(this.model.active&&this.model.editable)switch(e.stopPropagation(),this.model.filterKey){case"tag":s.Events.emit("edit-tag",this.model);break;case"group":s.Events.emit("edit-group",this.model)}}emptyTrash(e){e.stopPropagation(),a.Alerts.yesno({header:c.Locale.menuEmptyTrashAlert,body:c.Locale.menuEmptyTrashAlertBody,icon:"minus-circle",success(){s.Events.emit("empty-trash")}})}dropAllowed(e){const t=e.dataTransfer.types;for(let e=0;e<t.length;e++)if("text/group"===t[e]||"text/entry"===t[e])return l.DragDropInfo.dragObject&&!l.DragDropInfo.dragObject.readOnly;return!1}dragstart(e){e.stopPropagation(),this.model.drag&&(e.dataTransfer.setData("text/group",this.model.id),e.dataTransfer.effectAllowed="move",l.DragDropInfo.dragObject=this.model)}dragover(e){this.model.drop&&this.dropAllowed(e)&&(e.stopPropagation(),e.preventDefault(),this.$el.addClass("menu__item--drag"))}dragleave(e){e.stopPropagation(),this.model.drop&&this.dropAllowed(e)&&this.$el.removeClass("menu__item--drag menu__item--drag-top")}drop(e){if(e.stopPropagation(),this.model.drop&&this.dropAllowed(e)){const e=this.$el.hasClass("menu__item--drag-top");this.$el.removeClass("menu__item--drag menu__item--drag-top"),e?this.model.moveToTop(l.DragDropInfo.dragObject):"trash"===this.model.filterKey?l.DragDropInfo.dragObject.moveToTrash():this.model.moveHere(l.DragDropInfo.dragObject),s.Events.emit("refresh")}}dropTopAllowed(e){const t=e.dataTransfer.types;for(let e=0;e<t.length;e++)if("text/group"===t[e])return!0;return!1}dragoverTop(e){this.dropTopAllowed(e)&&this.$el.addClass("menu__item--drag-top")}dragleaveTop(e){this.dropTopAllowed(e)&&this.$el.removeClass("menu__item--drag-top")}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"OpenView",(function(){return F}));var s=n(4),i=n.n(s),l=n(7),o=n(1),a=n(12),r=n(154),c=n(88),u=n(15),d=n(82),p=n(2),h=n(8),m=n(23),f=n(26),g=n(5),y=n(32),v=n(6),b=n(30),w=n(0),k=n(9),_=n(83),S=n(99),P=n(187),C=n(188),x=n(14),T=n(72),O=n(258),E=n.n(O);const A=new k.Logger("open-view");class F extends l.View{constructor(t){super(t),this.parent=".app__body",this.modal="open",this.template=E.a,this.events={"change .open__file-ctrl":"fileSelected","click .open__icon-open":"openFile","click .open__icon-new":"createNew","click .open__icon-demo":"createDemo","click .open__icon-yubikey":"openYubiKey","click .open__icon-more":"toggleMore","click .open__icon-storage":"openStorage","click .open__icon-settings":"openSettings","click .open__pass-input[readonly]":"openFile","input .open__pass-input":"inputInput","keydown .open__pass-input":"inputKeydown","keyup .open__pass-input":"inputKeyup","keypress .open__pass-input":"inputKeypress","click .open__pass-enter-btn":"openDb","click .open__settings-key-file":"openKeyFile","click .open__settings-yubikey":"selectYubiKeyChalResp","click .open__last-item":"openLast","click .open__icon-generate":"toggleGenerator",dragover:"dragover",dragleave:"dragleave",drop:"drop"},this.params=null,this.passwordInput=null,this.busy=!1,this.currentSelectedIndex=-1,window.$=e,this.resetParams(),this.passwordInput=new d.SecureInput,this.onKey(g.Keys.DOM_VK_Z,this.undoKeyPress,u.KeyHandler.SHORTCUT_ACTION,"open"),this.onKey(g.Keys.DOM_VK_TAB,this.tabKeyPress,null,"open"),this.onKey(g.Keys.DOM_VK_ENTER,this.enterKeyPress,null,"open"),this.onKey(g.Keys.DOM_VK_RETURN,this.enterKeyPress,null,"open"),this.onKey(g.Keys.DOM_VK_DOWN,this.moveOpenFileSelectionDown,null,"open"),this.onKey(g.Keys.DOM_VK_UP,this.moveOpenFileSelectionUp,null,"open"),this.listenTo(o.Events,"main-window-focus",this.windowFocused.bind(this)),this.listenTo(o.Events,"usb-devices-changed",this.usbDevicesChanged.bind(this)),this.once("remove",()=>{this.passwordInput.reset()}),this.listenTo(o.Events,"user-idle",this.userIdle)}render(){this.dragTimeout&&clearTimeout(this.dragTimeout);const e=[];this.model.settings.canOpenStorage&&Object.keys(a.Storage).forEach(t=>{const n=a.Storage[t];!n.system&&n.enabled&&e.push(n)}),e.sort((e,t)=>(e.uipos||1/0)-(t.uipos||1/0));const t=e.length||this.model.settings.canOpenSettings||this.model.settings.canOpenGenerator,n=!(t||this.model.settings.canOpen||this.model.settings.canCreate||this.model.settings.canOpenDemo&&!this.model.settings.demoOpened),s=!!m.UsbListener.attachedYubiKeys,i=s&&this.model.settings.canOpenOtpDevice&&this.model.settings.yubiKeyShowIcon&&!this.model.files.get("yubikey"),l=s&&this.model.settings.yubiKeyShowChalResp;super.render({lastOpenFiles:this.getLastOpenFiles(),canOpenKeyFromDropbox:!p.Launcher&&a.Storage.dropbox.enabled,demoOpened:this.model.settings.demoOpened,storageProviders:e,canOpen:this.model.settings.canOpen,canOpenDemo:this.model.settings.canOpenDemo,canOpenSettings:this.model.settings.canOpenSettings,canOpenGenerator:this.model.settings.canOpenGenerator,canCreate:this.model.settings.canCreate,canRemoveLatest:this.model.settings.canRemoveLatest,canOpenYubiKey:i,canUseChalRespYubiKey:l,showMore:t,showLogo:n}),this.inputEl=this.$el.find(".open__pass-input"),this.passwordInput.setElement(this.inputEl)}resetParams(){this.params={id:null,name:"",storage:null,path:null,keyFileName:null,keyFileData:null,keyFilePath:null,fileData:null,rev:null,opts:null,chalResp:null}}windowFocused(){this.inputEl.focus()}focusInput(e){!c.FocusDetector.hasFocus()||!e&&v.Features.isMobile||this.inputEl.focus()}getLastOpenFiles(){return this.model.fileInfos.map(e=>{let t="file-text";const n=a.Storage[e.storage];return n&&n.icon&&(t=n.icon),n&&n.iconSvg&&(t=null),{id:e.id,name:e.name,path:this.getDisplayedPath(e),icon:t,iconSvg:n?n.iconSvg:void 0}})}getDisplayedPath(e){const t=e.storage;return"file"===t||"webdav"===t?e.path:null}showLocalFileAlert(){this.model.settings.skipOpenLocalWarn||h.Alerts.alert({header:w.Locale.openLocalFile,body:w.Locale.openLocalFileBody,icon:"file-text",buttons:[{result:"skip",title:w.Locale.openLocalFileDontShow,error:!0},{result:"ok",title:w.Locale.alertOk}],click:"",esc:"",enter:"",success:e=>{this.focusInput(),"skip"===e&&(this.model.settings.skipOpenLocalWarn=!0)}})}fileSelected(e){const t=e.target.files[0];t&&this.processFile(t,e=>{e&&!t.path&&"fileData"===this.reading&&this.showLocalFileAlert()})}processFile(e,t){const n=new FileReader;n.onload=n=>{let s=!1;switch(this.reading){case"fileData":switch(this.getOpenFileFormat(n.target.result)){case"kdbx":this.params.id=null,this.params.fileData=n.target.result,this.params.name=e.name.replace(/(.+)\.\w+$/i,"$1"),this.params.path=e.path||null,this.params.storage=e.path?"file":null,this.params.rev=null,this.params.keyFileData||(this.params.keyFileName=null),this.displayOpenFile(),this.displayOpenKeyFile(),s=!0;break;case"xml":this.params.id=null,this.params.fileXml=i.a.ByteUtils.bytesToString(n.target.result),this.params.name=e.name.replace(/\.\w+$/i,""),this.params.path=null,this.params.storage=null,this.params.rev=null,this.importDbWithXml(),s=!0;break;case"kdb":h.Alerts.error({header:w.Locale.openWrongFile,body:w.Locale.openKdbFileBody});break;default:h.Alerts.error({header:w.Locale.openWrongFile,body:w.Locale.openWrongFileBody})}break;case"keyFileData":this.params.keyFileData=n.target.result,this.params.keyFileName=e.name,"path"===this.model.settings.rememberKeyFiles&&(this.params.keyFilePath=e.path),this.displayOpenKeyFile(),s=!0}t&&t(s)},n.onerror=()=>{h.Alerts.error({header:w.Locale.openFailedRead}),t&&t(!1)},"fileXml"===this.reading?n.readAsText(e):n.readAsArrayBuffer(e)}getOpenFileFormat(e){if(e.byteLength<8)return;const t=new Uint32Array(e,0,2);if(t[0]===i.a.Consts.Signatures.FileMagic)return t[1]===i.a.Consts.Signatures.Sig2Kdb?"kdb":t[1]===i.a.Consts.Signatures.Sig2Kdbx?"kdbx":void 0;if(this.model.settings.canImportXml)try{if(i.a.ByteUtils.bytesToString(t).trim().startsWith("<?xml"))return"xml"}catch(e){}else;}displayOpenFile(){this.$el.addClass("open--file"),this.$el.find(".open__settings-key-file,.open__settings-yubikey").removeClass("hide"),this.inputEl[0].removeAttribute("readonly"),this.inputEl[0].setAttribute("placeholder",w.Locale.openPassFor+" "+this.params.name),this.focusInput()}displayOpenKeyFile(){this.$el.toggleClass("open--key-file",!!this.params.keyFileName),this.$el.find(".open__settings-key-file-name").text(this.params.keyFileName||this.params.keyFilePath||w.Locale.openKeyFile),this.focusInput()}displayOpenChalResp(){this.$el.find(".open__settings-yubikey").toggleClass("open__settings-yubikey--active",!!this.params.chalResp)}setFile(e,t,n){this.reading="fileData",this.processFile(e,e=>{e&&t&&(this.reading="keyFileData",this.processFile(t)),e&&"function"==typeof n&&n()})}openFile(){!1!==this.model.settings.canOpen&&(this.busy||(this.closeConfig(),this.openAny("fileData")))}openKeyFile(t){e(t.target).hasClass("open__settings-key-file-dropbox")?this.openKeyFileFromDropbox():!this.busy&&this.params.name&&(this.params.keyFileName?(this.params.keyFileData=null,this.params.keyFilePath=null,this.params.keyFileName="",this.$el.removeClass("open--key-file"),this.$el.find(".open__settings-key-file-name").text(w.Locale.openKeyFile)):this.openAny("keyFileData"))}openKeyFileFromDropbox(){this.busy||new r.DropboxChooser((e,t)=>{e||(this.params.keyFileData=t.data,this.params.keyFileName=t.name,this.displayOpenKeyFile())}).choose()}openAny(e,t){this.reading=e,this.params[e]=null;const n=this.$el.find(".open__file-ctrl").attr("accept",t||"").val(null);p.Launcher&&p.Launcher.openFileChooser?p.Launcher.openFileChooser((e,t)=>{e?A.error("Error opening file chooser",e):this.processFile(t)}):n.click()}openLast(t){if(this.busy)return;const n=e(t.target).closest(".open__last-item").data("id").toString();if(e(t.target).is(".open__last-item-icon-del")){const e=this.model.fileInfos.get(n);return!e.storage||e.modified?void h.Alerts.yesno({header:w.Locale.openRemoveLastQuestion,body:e.modified?w.Locale.openRemoveLastQuestionModBody:w.Locale.openRemoveLastQuestionBody,buttons:[{result:"yes",title:w.Locale.alertYes},{result:"",title:w.Locale.alertNo}],success:()=>{this.removeFile(n)}}):void this.removeFile(n)}const s=this.model.fileInfos.get(n);this.showOpenFileInfo(s,!0)}removeFile(e){this.model.removeFileInfo(e),this.$el.find('.open__last-item[data-id="'+e+'"]').remove(),this.resetParams(),this.render()}inputKeydown(e){const t=e.keyCode||e.which;t===g.Keys.DOM_VK_RETURN?this.openDb():t===g.Keys.DOM_VK_CAPS_LOCK&&this.toggleCapsLockWarning(!1)}inputKeyup(e){(e.keyCode||e.which)===g.Keys.DOM_VK_CAPS_LOCK&&this.toggleCapsLockWarning(!1)}inputKeypress(e){const t=e.keyCode||e.which,n=String.fromCharCode(t),s=n.toLowerCase();s===n.toUpperCase()||e.shiftKey||this.toggleCapsLockWarning(n!==s)}toggleCapsLockWarning(e){this.$el.find(".open__pass-warning").toggleClass("invisible",!e)}dragover(e){if(!1===this.model.settings.canOpen)return;e.preventDefault(),e.stopPropagation();const t=e.dataTransfer;t.types&&(t.types.indexOf?-1!==t.types.indexOf("Files"):t.types.contains("Files"))?(t.dropEffect="copy",this.dragTimeout&&clearTimeout(this.dragTimeout),this.$el.hasClass("open--drag")||this.$el.addClass("open--drag")):t.dropEffect="none"}dragleave(){!1!==this.model.settings.canOpen&&(this.dragTimeout&&clearTimeout(this.dragTimeout),this.dragTimeout=setTimeout(()=>{this.$el.removeClass("open--drag")},100))}drop(e){if(!1===this.model.settings.canOpen)return;if(e.preventDefault(),this.busy)return;this.dragTimeout&&clearTimeout(this.dragTimeout),this.closeConfig(),this.$el.removeClass("open--drag");const t=[...e.target.files||e.dataTransfer.files],n=t.find(e=>/\.kdbx$/i.test(e.name)),s=t.find(e=>/\.key$/i.test(e.name));if(n)this.setFile(n,s,n.path?null:this.showLocalFileAlert.bind(this));else{if(this.model.settings.canImportXml){const e=t.find(e=>/\.xml$/i.test(e.name));if(e)return void this.setFile(e,null,this.showLocalFileAlert.bind(this))}if(this.model.settings.canImportCsv){const e=t.find(e=>/\.csv$/i.test(e.name));e&&o.Events.emit("import-csv-requested",e)}}}undoKeyPress(e){e.preventDefault()}tabKeyPress(){this.$el.addClass("open--show-focus")}enterKeyPress(e){const t=this.$el.find("[tabindex]:focus");t.length&&t.trigger("click",e)}showOpenFileInfo(e,t){!this.busy&&e&&(this.params.id=e.id,this.params.storage=e.storage,this.params.path=e.path,this.params.name=e.name,this.params.fileData=null,this.params.rev=null,this.params.keyFileName=e.keyFileName,this.params.keyFilePath=e.keyFilePath,this.params.keyFileData=null,this.params.opts=e.opts,this.params.chalResp=e.chalResp,this.displayOpenFile(),this.displayOpenKeyFile(),this.displayOpenChalResp(),this.openFileWithFingerprint(e),t&&this.focusInput(!0))}showOpenLocalFile(e,t){if(!this.busy&&(this.params.id=null,this.params.storage="file",this.params.path=e,this.params.name=e.match(/[^/\\]*$/)[0],this.params.rev=null,this.params.fileData=null,this.displayOpenFile(),t)){const e=p.Launcher.parsePath(t);this.params.keyFileName=e.file,this.params.keyFilePath=t,this.params.keyFileData=null,this.displayOpenKeyFile()}}openFileWithFingerprint(e){e.fingerprint&&p.Launcher&&p.Launcher.fingerprints&&p.Launcher.fingerprints.auth(e.id,e.fingerprint,e=>{this.inputEl.val(e),this.inputEl.trigger("input"),this.openDb()})}createDemo(){this.busy||(this.closeConfig(),this.model.createDemoFile()||this.emit("close"),this.model.settings.demoOpened||(this.model.settings.demoOpened=!0))}createNew(){this.busy||this.model.createNewFile()}openDb(){this.params.id&&this.model.files.get(this.params.id)?this.emit("close"):!this.busy&&this.params.name&&(this.$el.toggleClass("open--opening",!0),this.inputEl.attr("disabled","disabled"),this.busy=!0,this.params.password=this.passwordInput.value,this.afterPaint(()=>{this.model.openFile(this.params,e=>this.openDbComplete(e))}))}openDbComplete(e){this.busy=!1,this.$el.toggleClass("open--opening",!1),this.inputEl.removeAttr("disabled").toggleClass("input--error",!!e),e?(A.error("Error opening file",e),this.focusInput(!0),this.inputEl[0].selectionStart=0,this.inputEl[0].selectionEnd=this.inputEl.val().length,"InvalidKey"===e.code?_.InputFx.shake(this.inputEl):e.userCanceled||(e.notFound&&(e=w.Locale.openErrorFileNotFound),h.Alerts.error({header:w.Locale.openError,body:w.Locale.openErrorDescription,pre:e.toString()}))):this.emit("close")}importDbWithXml(){!this.busy&&this.params.name&&(this.$el.toggleClass("open--opening",!0),this.inputEl.attr("disabled","disabled"),this.busy=!0,this.afterPaint(()=>this.model.importFileWithXml(this.params,e=>{e&&(this.params.name="",this.params.fileXml=null),this.openDbComplete(e)})))}toggleMore(){this.busy||(this.closeConfig(),this.$el.find(".open__icons--lower").toggleClass("hide"))}openSettings(){o.Events.emit("toggle-settings")}openStorage(t){if(this.busy)return;const n=a.Storage[e(t.target).closest(".open__icon").data("storage")];n&&(n.needShowOpenConfig&&n.needShowOpenConfig()?this.showConfig(n):n.list?this.listStorage(n):h.Alerts.notImplemented())}listStorage(e,t){if(this.busy)return;this.closeConfig();const n=this.$el.find(".open__icon-storage[data-storage="+e.name+"]");this.busy=!0,n.toggleClass("flip3d",!0),e.list(t&&t.dir,(s,i)=>{if(n.toggleClass("flip3d",!1),this.busy=!1,s||!i){if("browser-auth-started"===(s=s?s.toString():""))return;return void(0===s.lastIndexOf("OAuth",0)||h.Alerts.alertDisplayed||h.Alerts.error({header:w.Locale.openError,body:w.Locale.openListErrorBody,pre:s.toString()}))}if(!i.length)return void h.Alerts.error({header:w.Locale.openNothingFound,body:w.Locale.openNothingFoundBody});const l=y.Comparators.stringComparator("path",!0);i.sort((e,t)=>e.dir!==t.dir?!!t.dir-!!e.dir:l(e,t)),t&&t.dir&&i.unshift({path:t.prevDir,name:"..",dir:!0});const o=new P.StorageFileListView({files:i,showHiddenFiles:t&&t.showHiddenFiles});o.on("selected",n=>{n.dir?this.listStorage(e,{dir:n.path,prevDir:t&&t.dir||"",showHiddenFiles:!0}):this.openStorageFile(e,n)}),h.Alerts.alert({header:w.Locale.openSelectFile,body:w.Locale.openSelectFileBody,icon:e.icon||"files-o",buttons:[{result:"",title:w.Locale.alertCancel}],esc:"",click:"",view:o})})}openStorageFile(e,t){this.busy||(this.params.id=null,this.params.storage=e.name,this.params.path=t.path,this.params.name=b.UrlFormat.getDataFileName(t.name),this.params.rev=t.rev,this.params.fileData=null,this.displayOpenFile())}showConfig(e){if(this.busy)return;this.views.openConfig&&this.views.openConfig.remove();const t=Object.assign({id:e.name,name:w.Locale[e.name]||e.name,icon:e.icon,buttons:!0},e.getOpenConfig());this.views.openConfig=new S.OpenConfigView(t,{parent:".open__config-wrap"}),this.views.openConfig.on("cancel",this.closeConfig.bind(this)),this.views.openConfig.on("apply",this.applyConfig.bind(this)),this.views.openConfig.render(),this.$el.find(".open__pass-area").addClass("hide"),this.$el.find(".open__icons--lower").addClass("hide")}closeConfig(){this.busy&&(this.storageWaitId=null,this.busy=!1),this.views.openConfig&&(this.views.openConfig.remove(),delete this.views.openConfig),this.$el.find(".open__pass-area").removeClass("hide"),this.$el.find(".open__config").addClass("hide"),this.focusInput()}applyConfig(e){if(this.busy||!e)return;this.busy=!0,this.views.openConfig.setDisabled(!0);const t=a.Storage[e.storage];this.storageWaitId=Math.random();const n=e.path,s=Object(x.omit)(e,["path","storage"]),i={waitId:this.storageWaitId,storage:e.storage,path:n,opts:s};t.applyConfig?t.applyConfig(s,this.storageApplyConfigComplete.bind(this,i)):t.stat(n,s,this.storageStatComplete.bind(this,i))}storageApplyConfigComplete(e,t){this.storageWaitId===e.waitId&&(this.storageWaitId=null,this.busy=!1,t?(this.views.openConfig.setDisabled(!1),this.views.openConfig.setError(t)):this.closeConfig())}storageStatComplete(e,t,n){this.storageWaitId===e.waitId&&(this.storageWaitId=null,this.busy=!1,t?(this.views.openConfig.setDisabled(!1),this.views.openConfig.setError(t)):(this.closeConfig(),this.params.id=null,this.params.storage=e.storage,this.params.path=e.path,this.params.opts=e.opts,this.params.name=b.UrlFormat.getDataFileName(e.path),this.params.rev=n.rev,this.params.fileData=null,this.displayOpenFile()))}moveOpenFileSelection(e){const t=this.getLastOpenFiles();if(this.currentSelectedIndex+e>=0&&this.currentSelectedIndex+e<=t.length-1&&(this.currentSelectedIndex=this.currentSelectedIndex+e),!t[this.currentSelectedIndex])return;const n=this.model.fileInfos.get(t[this.currentSelectedIndex].id);this.showOpenFileInfo(n)}moveOpenFileSelectionDown(){this.moveOpenFileSelection(1)}moveOpenFileSelectionUp(){this.moveOpenFileSelection(-1)}toggleGenerator(e){if(e.stopPropagation(),this.views.gen)return void this.views.gen.remove();const t=this.$el.find(".open__icon-generate")[0].getBoundingClientRect(),n={left:t.left,top:t.top};v.Features.isMobile&&(n.left="50vw",n.top="50vh",n.transform="translate(-50%, -50%)");const s=new T.GeneratorView({copy:!0,noTemplateEditor:!0,pos:n});s.render(),s.once("remove",()=>{delete this.views.gen}),this.views.gen=s}userIdle(){this.inputEl.val(""),this.passwordInput.reset(),this.passwordInput.setElement(this.inputEl)}usbDevicesChanged(){if(this.model.settings.canOpenOtpDevice){const e=!!m.UsbListener.attachedYubiKeys,t=e&&this.model.settings.yubiKeyShowIcon;this.$el.find(".open__icon-yubikey").toggleClass("hide",!t);const n=e&&this.model.settings.yubiKeyShowChalResp;this.$el.find(".open__settings-yubikey").toggleClass("open__settings-yubikey--present",!!n),!e&&this.busy&&this.otpDevice&&this.otpDevice.cancelOpen()}}openYubiKey(){if(this.busy&&this.otpDevice&&this.otpDevice.cancelOpen(),!this.busy){this.busy=!0,this.inputEl.attr("disabled","disabled");const e=this.$el.find(".open__icon-yubikey");e.toggleClass("flip3d",!0),f.YubiKey.checkToolStatus().then(t=>{if("ok"!==t)return e.toggleClass("flip3d",!1),this.inputEl.removeAttr("disabled"),this.busy=!1,o.Events.emit("toggle-settings","devices");this.otpDevice=this.model.openOtpDevice(t=>{t&&!f.YubiKey.aborted&&h.Alerts.error({header:w.Locale.openError,body:w.Locale.openErrorDescription,pre:t.toString()}),this.otpDevice=null,e.toggleClass("flip3d",!1),this.inputEl.removeAttr("disabled"),this.busy=!1})})}}selectYubiKeyChalResp(){if(this.busy)return;if(this.params.chalResp)return this.params.chalResp=null,this.el.querySelector(".open__settings-yubikey").classList.remove("open__settings-yubikey--active"),void this.focusInput();const e=new C.OpenChalRespView;e.on("select",({vid:e,pid:t,serial:n,slot:s})=>{this.params.chalResp={vid:e,pid:t,serial:n,slot:s},this.el.querySelector(".open__settings-yubikey").classList.add("open__settings-yubikey--active"),this.focusInput()}),h.Alerts.alert({header:w.Locale.openChalRespHeader,iconSvg:"usb-token",buttons:[{result:"",title:w.Locale.alertCancel}],esc:"",click:"",view:e})}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"StorageFileListView",(function(){return a}));var s=n(7),i=n(30),l=n(256),o=n.n(l);class a extends s.View{constructor(e){super(e),this.template=o.a,this.events={"click .open-list__file":"fileClick","click .open-list__check-wrap":"showAllCheckClick","change #open-list__check":"showAllCheckChange"},this.allStorageFiles={},this.showHiddenFiles=!!this.model.showHiddenFiles}render(){let e=this.model.files.map(e=>(this.allStorageFiles[e.path]=e,{path:e.path,name:e.name.replace(/\.kdbx$/i,""),kdbx:i.UrlFormat.isKdbx(e.name),dir:e.dir}));const t=e.filter(e=>!e.dir&&e.kdbx),n=t.length&&e.length>t.length;this.showHiddenFiles||(t.length>0?e=t:this.showHiddenFiles=!0);const s=e.length>14?3:e.length>7?2:1;super.render({files:e,density:s,showHiddenFiles:this.showHiddenFiles,canShowHiddenFiles:n})}fileClick(t){const n=e(t.target).closest(".open-list__file").data("path"),s=this.allStorageFiles[n];this.emit("selected",s)}showAllCheckClick(e){e.stopPropagation()}showAllCheckChange(e){this.showHiddenFiles=e.target.checked,this.render()}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"OpenChalRespView",(function(){return d}));var s=n(1),i=n(7),l=n(26),o=n(6),a=n(0),r=n(16),c=n(257),u=n.n(c);class d extends i.View{constructor(){super(),this.template=u.a,this.events={"click .open-chal-resp__item":"itemClick"},this.listenTo(s.Events,"usb-devices-changed",this.usbDevicesChanged),this.checkDevices()}render(){let e=this.error;const t=this.yubiKeys&&!this.yubiKeys.length;t&&(e=a.Locale.openChalRespErrorEmpty),super.render({error:e,showEmptyMacWarning:t&&o.Features.isMac,yubiKeys:this.yubiKeys,loading:!this.yubiKeys&&!this.error})}usbDevicesChanged(){setTimeout(()=>{this.removed||this.checkDevices()},r.Timeouts.ExternalDeviceAfterReconnect)}checkDevices(){l.YubiKey.list((e,t)=>{if(!this.removed){if(this.error=e,this.yubiKeys=[],t)for(const{fullName:e,vid:n,pid:s,serial:i,slots:l}of t)for(const t of l.filter(e=>e.valid))this.yubiKeys.push({fullName:e,vid:n,pid:s,serial:i,slot:t.number});this.render()}})}itemClick(e){const t=e.target.closest("[data-serial]"),n=+t.dataset.vid,s=+t.dataset.pid,i=+t.dataset.serial,l=+t.dataset.slot;this.emit("select",{vid:n,pid:s,serial:i,slot:l})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsView",(function(){return u}));var s=n(7),i=n(1),l=n(5),o=n(37),a=n(10),r=n(259),c=n.n(r);class u extends s.View{constructor(e,t){super(e,t),this.parent=".app__body",this.template=c.a,this.events={"click .settings__back-button":"returnToApp"},this.initScroll(),this.listenTo(i.Events,"set-page",this.setPage),this.onKey(l.Keys.DOM_VK_ESCAPE,this.returnToApp)}render(){super.render(),this.createScroll({root:this.$el.find(".settings")[0],scroller:this.$el.find(".scroller")[0],bar:this.$el.find(".scroller__bar")[0]}),this.pageEl=this.$el.find(".scroller")}setPage(e){let{page:t,file:s}=e;"file"===t&&s&&s.external&&(t="file-external");const i=n(311)("./settings-"+t+"-view")[`Settings${a.StringFormat.pascalCase(t)}View`];this.views.page&&this.views.page.remove(),this.views.page=new i(s,{parent:this.pageEl[0]}),this.views.page.appModel=this.model,this.views.page.render(),this.file=s,this.page=t,this.pageResized()}returnToApp(){i.Events.emit("toggle-settings",!1)}}Object.assign(u.prototype,o.Scrollable)},function(e,t,n){"use strict";n.r(t),n.d(t,"ImportCsvView",(function(){return u}));var s=n(4),i=n.n(s),l=n(7),o=n(37),a=n(271),r=n.n(a),c=n(47);class u extends l.View{constructor(e,t){super(e,t),this.parent=".app__body",this.template=r.a,this.events={"click .back-button":"returnToApp","click .import-csv__button-cancel":"returnToApp","click .import-csv__button-run":"runImport","change .import-csv__field-select":"changeMapping","change .import-csv__target-select":"changeGroup"},this.knownFields=[{field:"Title",re:/title|\bname|account/i},{field:"UserName",re:/user|login/i},{field:"Password",re:/pass/i},{field:"URL",re:/url|site/i},{field:"Notes",re:/notes|comment|extra/i}],this.fieldMapping=[],this.targetGroup=void 0,this.appModel=t.appModel,this.fileName=t.fileName,this.guessFieldMapping(),this.fillGroups(),this.initScroll()}render(){super.render({headers:this.model.headers,rows:this.model.rows,fieldMapping:this.fieldMapping,groups:this.groups}),this.createScroll({root:this.$el.find(".import-csv__body")[0],scroller:this.$el.find(".import-csv__body > .scroller")[0],bar:this.$el.find(".import-csv__body > .scroller__bar-wrapper > .scroller__bar")[0]}),this.pageResized(),this.scroll._update||(this.scroll._update=this.scroll.update,this.scroll.update=this.scrollUpdate.bind(this))}scrollUpdate(){this.scroller.css({width:"auto",minWidth:"auto",maxWidth:"auto"}),this.scroll._update()}returnToApp(){this.emit("cancel")}changeMapping(e){const t=+e.target.dataset.col,n=e.target.value,s=this.knownFields.some(e=>e.field===n),i=n?s?"builtin":"custom":"ignore";if(this.fieldMapping[t]={mapping:i,field:n},n){let e=0;for(const s of this.fieldMapping){if(s.field===n&&t!==e){s.type="ignore",s.field="",this.el.querySelector(`.import-csv__field-select[data-col="${e}"]`).value=""}e++}}}guessFieldMapping(){const e={};for(const t of this.model.headers.map(e=>e.trim())){if(!t||/^(group|grouping)$/i.test(t)){this.fieldMapping.push({type:"ignore"});continue}let n=!1;for(const{field:s,re:i}of this.knownFields)if(!e[s]&&i.test(t)){this.fieldMapping.push({type:"builtin",field:s}),e[s]=!0,n=!0;break}n||this.fieldMapping.push({type:"custom",field:t})}}fillGroups(){this.groups=[];for(const e of this.appModel.files)e.forEachGroup(t=>{const n=t.title,s=[];for(let e=t;e.parentGroup;e=e.parentGroup)s.push(" "," ");this.groups.push({id:t.id,fileId:e.id,spaces:s,title:n})})}changeGroup(e){const t=e.target.value;if(!t)return void(this.targetGroup=void 0);const n=e.target.querySelector(`option[value="${t}"]`).dataset.file,s=this.appModel.files.get(n);this.targetGroup=s.getGroup(t)}runImport(){let e=this.targetGroup,t=e?e.file:void 0;if(!e){const n=this.fileName.replace(/\.csv$/i,"");t=this.appModel.createNewFile(n),e=t.groups[0]}for(const n of this.model.rows){const s=c.EntryModel.newEntry(e,t);for(let e=0;e<n.length;e++){let t=n[e];if(!t)continue;const l=this.fieldMapping[e];"ignore"!==l.type&&l.field&&("Password"===l.field&&(t=i.a.ProtectedValue.fromString(t)),s.setField(l.field,t))}}t.reload(),this.emit("done")}}Object.assign(u.prototype,o.Scrollable)},function(e,t,n){"use strict";n.r(t),n.d(t,"ThemeVars",(function(){return i}));var s=n(59);const i={themeDefaults:null,init(){if(this.themeDefaults)return;this.themeDefaults={};const e=/\s([\w\-]+):\s*([^,\s]+)/g;let t;do{if(t=e.exec("$theme-defaults: (\n mute-percent: 30%,\n light-border-percent: 10%,\n modal-opacity: 0.9,\n color-lightness-shift: 0,\n focus-shadow-blur: 3px,\n focus-shadow-spread: 0,\n button-border-radius: 1px,\n input-border-radius: 1px,\n selected-border-width: 3px,\n accent-border-width: 1px\n);\n"),t){const[,e,n]=t;this.themeDefaults["--"+e]=n}}while(t)},apply(e){this.init();const t="/* prettier-ignore */\n/* This file is also parsed in JS to build theme styles, see theme-vars.js */\n@function set-theme-vars($t) {\n @return map-merge(\n $t,\n (\n muted-color: mix(map-get($t, medium-color), map-get($t, background-color), map-get($t, mute-percent)),\n muted-color-border: mix(map-get($t, medium-color), map-get($t, background-color), semi-mute-percent(map-get($t, mute-percent))),\n text-selection-bg-color: rgba(map-get($t, action-color), 0.3),\n text-selection-bg-color-error: rgba(map-get($t, error-color), 0.8),\n text-semi-muted-color: mix(map-get($t, action-color), map-get($t, text-color), 0.5),\n text-contrast-action-color: text-contrast-color(map-get($t, action-color), map-get($t, color-lightness-shift), map-get($t, background-color), map-get($t, text-color)),\n text-contrast-error-color: text-contrast-color(map-get($t, error-color), map-get($t, color-lightness-shift), map-get($t, background-color), map-get($t, text-color)),\n base-border-color: mix(map-get($t, medium-color), map-get($t, background-color), 50%),\n accent-border-color: mix(map-get($t, medium-color), map-get($t, background-color), 65%),\n light-border-color: mix(map-get($t, medium-color), map-get($t, background-color), map-get($t, light-border-percent)),\n form-box-border-focus: map-get($t, action-color),\n form-box-shadow-color-focus: lightness-alpha(map-get($t, action-color), -5%, -0.3),\n form-box-shadow-color-focus-error: lightness-alpha(map-get($t, error-color), -5%, -0.3),\n dropdown-box-shadow-color: rgba(map-get($t, medium-color), 0.05),\n secondary-background-color: mix(map-get($t, medium-color), map-get($t, background-color), 10%),\n intermediate-background-color: mix(map-get($t, medium-color), map-get($t, background-color), 3%),\n intermediate-pressed-background-color: mix(map-get($t, medium-color), map-get($t, background-color), 2.6%),\n disabled-background-color: shade(map-get($t, background-color), 5%),\n action-background-color-focus: shade(map-get($t, action-color), 20%),\n action-background-color-focus-tr: rgba(shade(map-get($t, action-color), 20%), 0.1),\n error-background-color-focus: shade(map-get($t, error-color), 20%),\n error-background-color-focus-tr: rgba(shade(map-get($t, error-color), 20%), 0.1),\n action-background-color-active: shade(map-get($t, action-color), 25%),\n action-background-color-active-tr: rgba(shade(map-get($t, action-color), 25%), 0.15),\n error-background-color-active: shade(map-get($t, error-color), 25%),\n error-background-color-active-tr: rgba(shade(map-get($t, error-color), 25%), 0.15),\n modal-background-color: rgba(map-get($t, background-color), map-get($t, modal-opacity)),\n modal-background-color-tr: rgba(map-get($t, background-color), 0)\n )\n );\n}\n".split("\n");for(const n of t){const t=n.match(/\s*([^:]+):\s*(.*?),?\s*$/);if(!t)continue;const[,s,i]=t,l="--"+s;if(e.getPropertyValue(l))continue;let o=i.replace(/map-get\(\$t,\s*([\w\-]+)\)/g,"--$1"),a=!0;const r=[];for(;a;)a=!1,o=o.replace(/([\w\-]+)\([^()]+\)/,t=>{a=!0;const[,n,s]=t.match(/([\w\-]+)\((.*)\)/),i=s.trim().split(/\s*,\s*/).filter(e=>e).map(t=>this.resolveArg(t,e,r));return r.push(this.fn[n](...i)),"L"+(r.length-1)});o=r[r.length-1],e.setProperty(l,o)}},resolveArg(e,t,n){if(/^--/.test(e)){let n=t.getPropertyValue(e);if(n&&(n=n.trim()),n)e=n;else{if(!this.themeDefaults[e])throw new Error("Css property missing: "+e);e=this.themeDefaults[e]}}if(/^L/.test(e))return n[e.substr(1)];if(/%$/.test(e))return e.replace(/%$/,"")/100;if(/^-?[\d.]+?$/.test(e))return+e;if(/^(#|rgb)/.test(e))return new s.Color(e);throw new Error("Bad css arg: "+e)},fn:{mix:(e,t,n)=>e.mix(t,n).toRgba(),"semi-mute-percent":e=>e/2,rgba(e,t){const n=new s.Color(e);return n.a=t,n.toRgba()},"text-contrast-color":(e,t,n,s)=>e.l-t>=n.l?s.toRgba():n.toRgba(),"lightness-alpha"(e,t,n){const i=new s.Color(e);return i.l+=Math.min(0,Math.max(1,t)),i.a+=Math.min(0,Math.max(1,n)),i.toHsla()},shade:(e,t)=>s.Color.black.mix(e,t).toRgba()}}},,function(e,t,n){"use strict";n.r(t),function(e){var t=n(1),s=n(41),i=n(87),l=n(120),o=n(122),a=n(123),r=n(51),c=n(23),u=n(124),d=n(88),p=n(61),h=n(15),m=n(125),f=n(2),g=n(25),y=n(8),v=n(16),b=n(57),w=n(3),k=n(89),_=n(13),S=n(34),P=n(6),C=n(162),x=n(0),T=n(163),O=(n(103),n(29)),E=n(12);s.StartProfiler.milestone("loading modules"),(f.Launcher&&f.Launcher.ready||e)(()=>{s.StartProfiler.milestone("document ready");const e=new b.AppModel;function n(){new T.AppView(e).render(),s.StartProfiler.milestone("first view rendering"),t.Events.emit("app-ready"),s.StartProfiler.milestone("app ready event"),s.StartProfiler.report()}s.StartProfiler.milestone("creating app model"),Promise.resolve().then((function(){return Promise.all([w.AppSettingsModel.load(),_.UpdateModel.load(),k.RuntimeDataModel.load(),i.FileInfoCollection.load()]).then(()=>{s.StartProfiler.milestone("loading configs")})})).then((function(){return h.KeyHandler.init(),m.PopupNotifier.init(),C.KdbxwebInit.init(),d.FocusDetector.init(),O.AutoType.init(),window.kw=o.ExportApi,S.PluginManager.init().then(()=>{s.StartProfiler.milestone("initializing modules")})})).then((function(){return Promise.resolve().then(()=>{g.SettingsManager.setBySettings(e.settings);const t=function(){const e=document.head.querySelector("meta[name=kw-config]");if(e&&e.content&&"("!==e.content[0])return e.content;const t=location.search.match(/[?&]config=([^&]+)/i);if(t&&t[1])return t[1]}();if(t)return e.loadConfig(t).then(()=>{g.SettingsManager.setBySettings(e.settings)}).catch(t=>{if(!e.settings.cacheConfigSettings)throw y.Alerts.error({header:x.Locale.appSettingsError,body:x.Locale.appSettingsErrorBody,buttons:[],esc:!1,enter:!1,click:!1}),t})}).then(()=>{s.StartProfiler.milestone("loading remote config")})})).then((function(){if(P.Features.isFrame&&!e.settings.allowIframes)return Promise.reject("Running in iframe is not allowed (this can be changed in the app config).");return u.FeatureTester.test().catch(e=>{throw y.Alerts.error({header:x.Locale.appSettingsError,body:x.Locale.appNotSupportedError,pre:e,buttons:[],esc:!1,enter:!1,click:!1}),"Feature testing failed: "+e}).then(()=>{s.StartProfiler.milestone("checking features")})})).then((function(){for(const e of Object.values(E.Storage))e.init();s.StartProfiler.milestone("initializing storage")})).then((function(){return Promise.resolve().then(()=>{const t=localStorage.skipHttpsWarning||e.settings.skipHttpsWarning,s=["https:","file:","app:"].indexOf(location.protocol)<0,i="localhost"!==location.hostname;return s&&i&&!t?new Promise(e=>{y.Alerts.error({header:x.Locale.appSecWarn,icon:"user-secret",esc:!1,enter:!1,click:!1,body:x.Locale.appSecWarnBody1+"\n\n"+x.Locale.appSecWarnBody2,buttons:[{result:"",title:x.Locale.appSecWarnBtn,error:!0}],complete:()=>{n(),e()}})}):(n(),new Promise(e=>requestAnimationFrame(e)))})})).then((function(){r.Updater.init(),a.SingleInstanceChecker.init(),l.AppRightsChecker.init(),p.IdleTracker.init(),c.UsbListener.init(),setTimeout(()=>{S.PluginManager.runAutoUpdate()},v.Timeouts.AutoUpdatePluginsAfterStart)})).catch(t=>{e.appLogger.error("Error starting app",t)})})}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"Launcher",(function(){return u}));var s=n(1),i=n(41),l=n(21),o=n(0),a=n(9),r=n(14);const c=new a.Logger("launcher"),u={name:"electron",version:window.process.versions.electron,autoTypeSupported:!0,thirdPartyStoragesSupported:!0,clipboardSupported:!0,req:window.require,platform:()=>process.platform,electron(){return this.req("electron")},remoteApp(){return this.electron().remote.app},remReq(e){return this.electron().remote.require(e)},openLink(e){/^(http|https|ftp|sftp|mailto):/i.test(e)&&this.electron().shell.openExternal(e)},devTools:!0,openDevTools(){this.electron().remote.getCurrentWindow().webContents.openDevTools({mode:"bottom"})},getSaveFileName(e,t){if(e){const t=this.remReq("electron").app.getPath("userDesktop");e=this.joinPath(t,e)}this.remReq("electron").dialog.showSaveDialog({title:o.Locale.launcherSave,defaultPath:e,filters:[{name:o.Locale.launcherFileFilter,extensions:["kdbx"]}]}).then(e=>t(e.filePath))},getUserDataPath(e){return this.userDataPath||(this.userDataPath=this.remoteApp().getPath("userData")),this.joinPath(this.userDataPath,e||"")},getTempPath(e){return this.joinPath(this.remoteApp().getPath("temp"),e||"")},getDocumentsPath(e){return this.joinPath(this.remoteApp().getPath("documents"),e||"")},getAppPath(e){const t=this.req("path").dirname,n=__dirname.endsWith("app.asar")?__dirname:this.remoteApp().getAppPath();return this.joinPath(t(n),e||"")},getWorkDirPath(e){return this.joinPath(process.cwd(),e||"")},joinPath(...e){return this.req("path").join(...e)},writeFile(e,t,n){this.req("fs").writeFile(e,window.Buffer.from(t),n)},readFile(e,t,n){this.req("fs").readFile(e,t,(e,t)=>{const s="string"==typeof t?t:new Uint8Array(t);n(s,e)})},fileExists(e,t){const n=this.req("fs");n.access(e,n.constants.F_OK,e=>t(!e))},fileExistsSync(e){const t=this.req("fs");return!t.accessSync(e,t.constants.F_OK)},deleteFile(e,t){this.req("fs").unlink(e,t||r.noop)},statFile(e,t){this.req("fs").stat(e,(e,n)=>t(n,e))},mkdir(e,t){const n=this.req("fs"),s=this.req("path"),i=[],l=function(e,t,i){n.exists(e,n=>{if(n)return i();t.unshift(e);const o=s.dirname(e);if(o===e||!o||"."===o||"/"===o)return i();l(o,t,i)})},o=function(e,t){if(!e.length)return t();n.mkdir(e.shift(),n=>n?t(n):o(e,t))};l(e,i,()=>o(i,t))},parsePath(e){const t=this.req("path");return{path:e,dir:t.dirname(e),file:t.basename(e)}},createFsWatcher(e){return this.req("fs").watch(e,{persistent:!1})},loadConfig(e){return this.remoteApp().loadConfig(e)},saveConfig(e,t){return this.remoteApp().saveConfig(e,t)},ensureRunnable(e){if("win32"!==process.platform){const t=this.req("fs"),n=t.statSync(e);if(0==(73&n.mode)){const s=64|n.mode;c.info(`chmod 0${s.toString(8)} ${e}`),t.chmodSync(e,s)}}},preventExit:e=>(e.returnValue=!1,!1),exit(){this.exitRequested=!0,this.requestExit()},requestExit(){const e=this.remoteApp();e.setHookBeforeQuitEvent(!1),this.restartPending?e.restartApp():e.quit()},requestRestart(){this.restartPending=!0,this.requestExit()},cancelRestart(){this.restartPending=!1},setClipboardText(e){return this.electron().clipboard.writeText(e)},getClipboardText(){return this.electron().clipboard.readText()},clearClipboardText(){const{clipboard:e}=this.electron();e.clear(),"linux"===process.platform&&e.clear("selection")},quitOnRealQuitEventIfMinimizeOnQuitIsEnabled(){return"darwin"===this.platform()},minimizeApp(){this.remoteApp().minimizeApp({restore:o.Locale.menuRestoreApp.replace("{}","KeeWeb"),quit:o.Locale.menuQuitApp.replace("{}","KeeWeb")})},canDetectOsSleep:()=>"linux"!==process.platform,updaterEnabled(){return-1===this.electron().remote.process.argv.indexOf("--disable-updater")},getMainWindow(){return this.remoteApp().getMainWindow()},resolveProxy(e,t){this.getMainWindow().webContents.session.resolveProxy(e).then(e=>{const n=/^proxy\s+([\w\.]+):(\d+)+\s*/i.exec(e);e=n&&n[1]?{host:n[1],port:+n[2]}:null,t(e)})},hideApp(){const e=this.remoteApp();"darwin"===this.platform()?e.hide():e.minimizeThenHideIfInTray()},isAppFocused(){return!!this.electron().remote.BrowserWindow.getFocusedWindow()},showMainWindow(){this.remoteApp().showAndFocusMainWindow()},spawn(e){const t=c.ts();let n=e.complete;const s=this.req("child_process").spawn(e.cmd,e.args);[s.stdin,s.stdout,s.stderr].forEach(e=>e.setEncoding("utf-8"));let i="",l="";if(s.stderr.on("data",t=>{if(i+=t.toString("utf-8"),e.throwOnStdErr)try{s.kill()}catch(e){}}),s.stdout.on("data",e=>{l+=e.toString("utf-8")}),s.on("close",s=>{l=l.trim(),i=i.trim();const o="spawn "+e.cmd+": "+s+", "+c.ts(t);0!==s?c.error(o+"\n"+l+"\n"+i):c.info(o+(l&&!e.noStdOutLogging?"\n"+l:"")),n&&(n(0!==s?"Exit code "+s:null,l,s),n=null)}),s.on("error",s=>{c.error("spawn error: "+e.cmd+", "+c.ts(t),s),n&&(n(s),n=null)}),e.data)try{s.stdin.end(e.data)}catch(e){c.error("spawn write error",e)}return process.nextTick(()=>{s.stdin.destroy()}),s},checkOpenFiles(){this.readyToOpenFiles=!0,this.pendingFileToOpen&&(this.openFile(this.pendingFileToOpen),delete this.pendingFileToOpen)},openFile(e){this.readyToOpenFiles?s.Events.emit("launcher-open-file",e):this.pendingFileToOpen=e},setGlobalShortcuts(e){this.remoteApp().setGlobalShortcuts(e)}};s.Events.on("launcher-exit-request",()=>{setTimeout(()=>u.exit(),0)}),s.Events.on("launcher-minimize",()=>setTimeout(()=>s.Events.emit("app-minimized"),0)),s.Events.on("launcher-started-minimized",()=>setTimeout(()=>u.minimizeApp(),0)),s.Events.on("start-profile",e=>i.StartProfiler.reportAppProfile(e)),s.Events.on("log",e=>new a.Logger(e.category||"remote-app")[e.method||"info"](e.message)),window.launcherOpen=e=>u.openFile(e),window.launcherOpenedFile&&(c.info("Open file request",window.launcherOpenedFile),u.openFile(window.launcherOpenedFile),delete window.launcherOpenedFile),s.Events.on("app-ready",()=>setTimeout(()=>{u.checkOpenFiles(),u.remoteApp().setAboutPanelOptions({applicationVersion:l.RuntimeInfo.version,version:l.RuntimeInfo.commit})},0)),"darwin"===process.platform&&u.remoteApp().setHookBeforeQuitEvent(!0),u.remoteApp().on("remote-app-event",e=>{window.debugRemoteAppEvents&&c.debug("remote-app-event",e.name),s.Events.emit(e.name,e.data)})},function(e,t){e.exports=null},function(e){e.exports=JSON.parse('{"months":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],"monthsShort":["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],"weekdays":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"weekdaysShort":["So","Mo","Di","Mi","Do","Fr","Sa"],"retToApp":"zurück zur App","name":"Name","icon":"Icon","title":"Titel","password":"Passwort","user":"Benutzer","website":"Website","tags":"Tags","notes":"Notizen","entry":"Eintrag","group":"Gruppe","noTitle":"Keinen Titel","or":"oder","history":"Verlauf","template":"Template","notImplemented":"Nicht implementiert","saveChanges":"Änderungen speichern","discardChanges":"Änderungen verwerfen","advanced":"Erweiterte Einstellungen","shortcuts":"Tastenkürzel","help":"Hilfe","settings":"Einstellungen","plugins":"Plugins","ctrlKey":"Strg","shiftKey":"Umschalt","altKey":"Alt","error":"Fehler","cache":"Cache","file":"Datei","device":"Gerät","webdav":"WebDAV","dropbox":"Dropbox","gdrive":"Google Drive","onedrive":"OneDrive","menuAllItems":"Alle Einträge","menuColors":"Farben","menuTrash":"Papierkorb","menuSetGeneral":"Allgemein","menuSetAbout":"Info","menuSetDevices":"Geräte","menuAlertNoTags":"Keine Tags","menuAlertNoTagsBody":"Neue Tags können durch das Bearbeiten von Einträgen (Abschnitt “Tags”) hinzugefügt werden.","menuEmptyTrash":"Leere Papierkorb","menuEmptyTrashAlert":"Papierkorb leeren?","menuEmptyTrashAlertBody":"Die Einträge können nicht wiederhergestellt werden","menuItemCollapsed":"Doppelklick zum Aufklappen","menuRestoreApp":"{} öffnen","menuQuitApp":"{} beenden","alertYes":"Ja","alertNo":"Nein","alertOk":"OK","alertCancel":"Abbrechen","alertSignIn":"Anmelden","alertCopy":"Kopieren","alertClose":"Schließen","alertDoNotAsk":"Nicht mehr nachfragen","appBeta":"ACHTUNG: Beta-Version, nur für Vorschau-Zwecke","footerOpen":"Öffnen / Neu","footerSyncError":"Synchronisierungsfehler","footerTitleGen":"Generieren","footerTitleLock":"Sperren","genLen":"Länge","genNewPass":"Neues Passwort","genPresetDefault":"Standardeinstellung","genPresetDerived":"unverändert","genPresetPronounceable":"aussprechbar","genPresetMed":"durchschnittlich lang","genPresetLong":"lang","genPresetPin4":"4-stellige PIN","genPresetMac":"MAC-Adresse","genPresetHash128":"128-Bit Hash","genPresetHash256":"256-Bit Hash","genHidePass":"Passwort ausblenden","genShowPass":"Passwort einblenden","grpTitle":"Gruppe","grpSearch":"Suche für Einträge in dieser Gruppe aktivieren","grpAutoType":"Auto-Type aktivieren","grpAutoTypeSeq":"Auto-Type Abfolge","grpAutoTypeSeqDefault":"Standard Auto-Type Abfolge verwenden","grpTrash":"Gruppe und alle enthaltenen Einträge löschen","tagTitle":"Tag","tagTrash":"Diesen Tag von allen Einträgen entfernen","tagRename":"Umbenennen","tagTrashQuestion":"Diesen Tag von allen Einträgen entfernen?","tagTrashQuestionBody":"Der Tag wird von allen Einträgen entfernt. Diese Aktion kann nicht rückgängig gemacht werden.","tagExists":"Tag existiert bereits","tagExistsBody":"Ein Tag mit diesem Namen ist bereits vorhanden. Bitte wählen Sie einen anderen Namen.","tagBadName":"Ungültiger Name","tagBadNameBody":"Der Tag-Name darf nicht die folgenden Zeichen enthalten: {}. Bitte entfernen Sie sie.","genPsTitle":"Generator-Voreinstellungen","genPsCreate":"Neue Voreinstellung","genPsDelete":"Voreinstellung löschen","genPsNew":"Voreinstellung","genPsEnabled":"In Voreinstellungs-Liste anzeigen","genPsDefault":"Standardmäßig ausgewählt","genPsDefaultLength":"Standardlänge","genPsUpper":"Lateinische Großbuchstaben","genPsLower":"Lateinische Kleinbuchstaben","genPsDigits":"Ziffern","genPsSpecial":"Sonderzeichen","genPsBrackets":"Klammern","genPsHigh":"Erweiterte ASCII-Zeichen","genPsAmbiguous":"Ähnliche Zeichen","genPsInclude":"Zusätzliche Symbole angeben","genPsExample":"Beispiel für ein generiertes Passwort","genPsPattern":"Muster","genPsPatternHelp":"Mit Mustern können eigene Regeln zur Auswahl von Zeichen festgelegt werden. Beispielsweise werden mit 1-AA Passwörter generiert, die mit einer Ziffer starten, gefolgt von einem Bindestrich und zwei Großbuchstaben. Die folgenden Symbole stehen zur Verfügung:","genPsAllRanges":"Alle Zeichen","genPsIncluded":"Zusätzliche oben hinzugefügte Zeichen","keyChangeTitleRemote":"Hauptschlüssel geändert","keyChangeMessageRemote":"Der Hauptschlüssel für diese Datenbank wurde geändert. Bitte geben Sie das neue Passwort ein.","keyChangeTitleExpired":"Hauptschlüssel abgelaufen","keyChangeMessageExpired":"Der Hauptschlüssel für diese Datenkbank ist abgelaufen. Bitte geben Sie einen neuen Schlüssel ein.","keyChangeRepeatPassword":"Passwort (Wiederholung)","keyEnter":"Enter","iconFavTitle":"Website-Icon herunterladen und verwenden","iconSelCustom":"Eigenes Icon auswählen","listEmptyTitle":"Leer","listEmptyAdd":"Zum Anlegen neuer Einträge den obigen {} Button benutzen","listGroup":"Gruppe","listNoWebsite":"keine Website","listNoUser":"kein Benutzer","listNoAttachments":"keine Anhänge","listAddTemplateHeader":"Templates","listAddTemplateBody1":"Templates ermöglichen es, Einträge mit nur einem Klick zu erstellen. Fügen Sie etwas zum Template-Eintrag hinzu und klicken Sie auf {}, um dieses Template zu benutzen.","listAddTemplateBody2":"Sie können Ihre Templates in der Gruppe “{}” finden.","searchAddNew":"Hinzufügen","searchSort":"Sortierung","searchCreated":"Erstelldatum","searchUpdated":"Änderungsdatum","searchAttachments":"Anhänge","searchAZ":"A {} Z","searchZA":"Z {} A","searchON":"Alt {} Neu","searchNO":"Neu {} Alt","searchShiftClickOr":"Umschalt-Klick oder","searchAdvTitle":"Erweiterte Suche","searchSearchIn":"Durchsuchen","searchOther":"Andere Felder","searchProtect":"Geschützte Felder","searchOptions":"Suchoptionen","searchCase":"Groß/klein","searchRegex":"RegEx","searchRank":"Automatisch","searchExact":"Exakt","openOpen":"Öffnen","openNew":"Neu","openNewFile":"Neu","openMore":"Mehr","openDemo":"Demo","openGenerate":"Generieren","openXml":"XML importieren","openCaps":"Feststelltaste ist aktiviert","openClickToOpen":"Hier klicken, um eine Datei zu öffnen","openKeyFile":"Schlüsseldatei","openKeyFileDropbox":"(von Dropbox)","openDropHere":"Dateien hier ablegen","openFailedRead":"Konnte die Datei nicht lesen","openNothingFound":"Nichts gefunden","openNothingFoundBody":"Es konnten keine kompatiblen Dateien gefunden werden.","openSelectFile":"Datei auswählen","openSelectFileBody":"Wählen Sie eine Datei zum Öffnen aus","openPassFor":"Passwort für","openRemoveLastQuestion":"Lokale Datei löschen?","openRemoveLastQuestionBody":"Die Datei, die Sie löschen möchten, ist nur innerhalb der App gespeichert. Möchten Sie sie unwiederbringlich löschen?","openRemoveLastQuestionModBody":"Die Datei, die Sie löschen möchten, beinhaltet lokale Änderungen. Möchten Sie diese Änderungen verwerfen und die Datei löschen?","openLocalFile":"Lokale Datei","openLocalFileBody":"Sie sind dabei, eine Datei zu öffnen, die innerhalb der App gespeichert wird. Wenn Sie an dieser Datei Änderungen vornehmen, werden diese nicht im Dateisystem gespeichert. Um die Datei mit den Änderungen zu erhalten, können Sie sie aus den Einstellungen heraus exportieren.","openLocalFileDontShow":"Nicht wieder anzeigen","openWrongFile":"Inkompatibles Dateiformat","openWrongFileBody":"Dieses Dateiformat ist nicht kompatibel. Die App unterstützt KeePass-Datenbanken im kdbx-Format.","openKdbFileBody":"Sie versuchen, eine alte KeePass-Datenbank im kdb-Format zu öffnen. Diese App unterstützt nur das neuere kdbx-Format. Bitte verwenden Sie KeePass v2, um diese Datei umzuwandeln.","openConfigHeader":"{} Einstellungen","openUrl":"URL","openUrlDesc":"https://server/pfad/datei.kdbx, oder einfach datei.kdbx","openUser":"Benutzername","openUserDesc":"WebDAV Server Benutzername (falls erforderlich)","openUserPlaceholder":"kein Benutzername","openPass":"Passwort","openPassDesc":"WebDAV Server-Passwort (nicht das KDBX-Datei-Passwort)","openPassPlaceholder":"kein Passwort","openConfigError":"Fehler: {}","openConfigErrorNotFound":"Datei nicht gefunden","openError":"Fehler","openErrorDescription":"Beim Öffnen der Datei ist ein Fehler aufgetreten","openErrorFileNotFound":"Datei nicht gefunden","openListErrorBody":"Dateien konnten nicht geladen werden","openShowAllFiles":"Alle Dateien anzeigen","openFileNoCacheError":"Die Datei wurde im Cache-Speicher nicht gefunden. Möglicherweise wurde Ihr Browser-Speicher geleert. Um die Datei zu öffnen, entfernen Sie sie aus KeeWeb und fügen Sie sie erneut hinzu","openChalRespHeader":"Challenge-Response","openChalRespLoading":"Liste mit YubiKeys wird geladen","openChalRespSelectYubiKey":"Wählen Sie den YubiKey aus, den Sie benutzen wollen","openChalRespErrorEmpty":"Keine YubiKeys gefunden.","detAttDownload":"Umschalttaste + Klick auf den Anhang-Button zum Herunterladen oder","detAttDelToRemove":"Backspace zum entfernen","detAttSave":"Speichern unter...","detEmpty":"Ihre Passwörter werden hier angezeigt","detGroupRestore":"Ziehen Sie diese Gruppe in eine andere Gruppe als den Papierkorb, um sie wiederherzustellen.","detHistoryClickPoint":"Klicken Sie auf einen der Punkte im Verlauf um den entsprechenden Zustand des Eintrags anzuzeigen","detHistoryReturn":"zurück zum Eintrag","detHistoryRevert":"Auf diese Version zurücksetzen","detHistoryDel":"Version löschen","detHistoryEmpty":"leer","detHistoryModified":"geändert","detHistoryRec":"Version","detHistoryRecs":"Versionen","detHistoryVersion":"Version","detHistorySaved":"Gespeichert","detHistoryNoTitle":"keine Bezeichnung","detHistoryCurState":"aktuelle Version","detHistoryCurUnsavedState":"aktuelle ungespeicherte Version","detHistoryRevertAlert":"Zu diesem Stand zurückkehren?","detHistoryRevertAlertBody":"Ihr aktueller Stand wird in der Historie gesichert.","detHistoryDeleteAlert":"Diesen Stand löschen?","detHistoryDeleteAlertBody":"Sie können ihn nicht wiederherstellen.","detHistoryDiscardChangesAlert":"Änderungen an diesem Eintrag verwerfen?","detHistoryDiscardChangesAlertBody":"Ungespeicherte Änderungen gehen dabei unwiderruflich verloren.","detBackToList":"zurück zur Liste","detSetIconColor":"Farbe ändern","detSetIcon":"Icon ändern","detDropAttachments":"Anhänge hier ablegen","detDelEntry":"Löschen","detDelEntryPerm":"Dauerhaft löschen","detExpires":"Ablaufdatum","detExpired":"abgelaufen","detGroup":"Gruppe","detCreated":"Erstellt","detUpdated":"Geändert","detNetField":"Neues Feld","detAttachments":"Anhänge","detDelFromTrash":"Aus dem Papierkorb löschen?","detDelFromTrashBody":"Es wird keine Möglichkeit zur Wiederherstellung geben.","detDelFromTrashBodyHint":"Um alle Dateien aus dem Papierkorb zu entfernen, klicken Sie auf das “Papierkorb” leeren-Icon im Papierkorb-Menüpunkt.","detDelToTrash":"Diesen Eintrag löschen?","detDelToTrashBody":"Der Eintrag wird in den Papierkorb verschoben.","detFieldCopied":"Kopiert","detFieldCopiedTime":"Kopiert für {} Sekunden","detCopyHint":"Sie können den Inhalt eines Feldes kopieren, indem Sie auf seine Beschriftung klicken","detMore":"mehr","detClickToAddField":"Klicken, um ein neues Feld hinzuzufügen","detMenuAddNewField":"Neues Feld hinzufügen","detMenuShowEmpty":"Leere Felder anzeigen","detMenuHideEmpty":"Leere Felder ausblenden","detMenuAddField":"{} hinzufügen","detMenuCopyPassword":"Passwort kopieren","detMenuCopyUser":"Benutzer kopieren","detMenuCopyOtp":"Einmal-Code kopieren","detSetupOtp":"Einmal-Codes","detClone":"Kopie erstellen","detCopyEntryToClipboard":"Alle Felder kopieren","detClonedName":"Kopie","detAutoType":"Auto-Type","detAutoTypeSettings":"Auto-Type Einstellungen","detAutoTypeEnabled":"Auto-Type für diesen Eintrag aktivieren","detAutoTypeSequence":"Tastensequenz","detAutoTypeInput":"Eingabe","detAutoTypeShortcutsDesc":"{} oder {} während die App inaktiv ist","detAutoTypeObfuscation":"Echte Tastenanschläge mit zufälligen mischen","detAutoTypeWindow":"Fenster","detAutoTypeInputWindow":"Fenster-Titel","detSetupOtpAlert":"QR-Code einscannen","detSetupOtpAlertBody":"Bitte kopieren Sie den QR-Code, der auf der Autorisierungsseite angezeigt wird.","detSetupOtpAlertBody1":"1. Gehen Sie zur Autorisierungsseite","detSetupOtpAlertBody2":"2. Erstellen Sie einen Screenshot des QR-Codes {}","detSetupOtpAlertBody3":"3. Fügen Sie ihn hier ein {}","detSetupOtpAlertBody3Mobile":"3. Markieren Sie ihn oder scannen Sie ihn mit Ihrer Kamera mit dem untenstehenden Markieren/Scannen-Button","detSetupOtpAlertBody4":"Wenn Sie den Code nicht einscannen können, klicken Sie bitte auf “Code manuell eingeben”","detSetupOtpManualButton":"Code manuell eingeben","detSetupOtpScanButton":"Markieren/Scannen","detSetupOtpAlertBodyWith":"mit {}","detOtpImageError":"Fehler beim Einlesen des Bildes","detOtpImageErrorBody":"Entschuldigung, wir konnten das Bildformat nicht lesen. Bitte kontaktieren Sie den Hersteller mit Einzelheiten zu diesem Fehler.","detOtpImageReading":"QR-Code wird eingelesen...","detOtpQrError":"QR-Code Lesefehler","detOtpQrErrorBody":"Der QR-Code konnte leider nicht eingelesen werden. Bitte versuchen Sie es noch einmal oder kontaktieren Sie den Hersteller mit Einzelheiten zum aufgetretenen Fehler.","detOtpQrWrong":"Fehlerhafter QR-Code","detOtpQrWrongBody":"Ihr QR-Code wurde erfolgreich eingelesen, enthält jedoch keinen Einmal-Code.","detOtpField":"Einmal-Code","detOtpClickToTouch":"Zum Erzeugen hier klicken","detOtpGenerating":"Wird erzeugt...","detOtpTouch":"Berühren Sie Ihren {}","detLockField":"Dieses Feld sperren, damit der Inhalt nicht durchsuchbar ist und angezeigt wird. Um ihn anzuzeigen, muss er angeklickt werden.","detUnlockField":"Dieses Feld entsperren. Dies führt dazu, dass der Inhalt direkt angezeigt wird und durchsuchbar ist.","detRevealField":"Anzeigen","detHideField":"Verbergen","detAutoTypeField":"Auto-Type","autoTypeEntryFields":"Feld-Platzhalter","autoTypeModifiers":"Hilfstasten","autoTypeKeys":"Tasten","autoTypeLink":"mehr...","autoTypeError":"Auto-Type Fehler","autoTypeErrorGeneric":"Während der Ausführung von Auto-Type ist ein Fehler aufgetreten: {}","autoTypeErrorGlobal":"Um globale Tastenkürzel zu nutzen, wechseln Sie bitte zu der Anwendung, in der Sie das Passwort eingeben wollen.","autoTypeErrorNotInstalled":"{} ist nicht installiert","autoTypeHeader":"Auto-Type: Auswählen","autoTypeMsgNoWindow":"Wir konnten den Titel des aktiven Fensters leider nicht auslesen. Fangen Sie einfach an zu tippen, um nach dem richtigen Eintrag zu suchen.","autoTypeMsgMatchedByWindow":"Passwort auswählen für {}","autoTypeNoMatches":"keine passenden Einträge","autoTypeSelectionHint":"Die Auto-Type Abfolge eintippen","autoTypeSelectionHintAction":"Nur das Passwort eintippen","autoTypeSelectionHintOpt":"Nur den Benutzernamen eintippen","autoTypeSelectionHintShift":"Andere Felder","autoTypeSelectionOtp":"Einmal-Code","appSecWarn":"Unsichere Verbindung!","appSecWarnBody1":"Sie haben diese App über eine ungesicherte Verbindung geöffnet, Sie könnten beobachtet und Ihre Passwörter könnten gestohlen werden. Wir empfehlen Ihnen dringend, die App hier nicht weiter zu nutzen, wenn Sie nicht genau wissen, was Sie tun.","appSecWarnBody2":"Ihre Datenbank ist zwar verschlüsselt, aber es kann nicht sichergestellt werden, dass die App nicht auf dem Web vom Server zu Ihrem Browser manipuliert wurde.","appSecWarnBtn":"Ich habe das Risiko verstanden, trotzdem fortfahren","appUnsavedWarn":"Ungespeicherte Änderungen!","appUnsavedWarnBody":"Sie haben ungespeicherte Änderungen. Wenn Sie die App schließen, gehen diese verloren.","appDontExitBtn":"App nicht verlassen","appCannotLockAutoInit":"Die App kann nicht gesperrt werden, da automatisches Speichern deaktiviert ist.","appCannotLock":"Sie haben ungespeicherte Änderungen, die verloren gehen. Fortfahren?","appAutoSave":"Änderungen automatisch speichern","appSaveError":"Fehler beim Speichern","appSaveErrorBody":"Automatisches Speichern fehlgeschlagen","appSaveErrorBodyMul":"Automatisches Speichern fehlgeschlagen:","appSettingsError":"Fehler beim Laden der App","appSettingsErrorBody":"Es gab einen Fehler beim Laden der App-Einstellungen. Bitte überprüfen Sie die App-URL oder kontaktieren Sie Ihren Systemadministrator.","appNotSupportedError":"Ihr Browser unterstützt einige wichtige Funktionen nicht, die für diese App benötigt werden.","appTabWarn":"Zu viele Tabs","appTabWarnBody":"KeeWeb kann nicht in mehreren Browser-Tabs gleichzeitig genutzt werden, bitte schließen Sie diesen Tab.","appRightsAlert":"Schreibschutz für KeeWeb wird eingerichtet","appRightsAlertBody1":"Ihre KeeWeb-Anwendung ist nicht gegen Änderungen von außen gesichert. Um diesen Schreibschutz einzurichten, benötigt die App Administratorrechte.","appRightsAlertBody2":"Sie möchten der App keine Administratorrechte erteilen? Mit folgendem Befehl können Sie den Schreibschutz auch von Hand im Terminal aktivieren","appBrowserAuthComplete":"Die Authentifizierung ist abgeschlossen, Sie können diesen Tab jetzt schließen.","setGenTitle":"Allgemeine Einstellungen","setGenUpdate":"Update","setGenNewVersion":"Eine neue Version der App ist verfügbar und wurde heruntergeladen","setGenReleaseNotes":"Versionshinweise anzeigen","setGenReloadToUpdate":"Seite aktualisieren, um das Update durchzuführen","setGenUpdateManual":"Eine neue Version ist verfügbar. Sie wird nach Updates suchen und sie automatisch installieren, ein automatisches Update von Ihrer Version ist aber nicht möglich.","setGenDownloadUpdate":"Update herunterladen","setGenUpdateAuto":"Automatisch herunterladen und installieren","setGenUpdateCheck":"Auf Updates überprüfen aber nicht installieren","setGenNoUpdate":"Nie nach Updates suchen","setGenUpdateChecking":"Suche nach Updates","setGenCheckUpdate":"Nach Updates suchen","setGenErrorChecking":"Updatesuche fehlgeschlagen","setGenLastCheckSuccess":"Letzte erfolgreiche Überprüfung am {}","setGenLastCheckVer":"Die aktuelle Version war {}","setGenCheckedAt":"Überprüft am","setGenLatestVer":"Sie haben die aktuellste Version","setGenNewVer":"Neue Version {} verfügbar, veröffentlicht am","setGenDownloadingUpdate":"Update wird heruntergeladen...","setGenExtractingUpdate":"Update wird entpackt...","setGenCheckErr":"Beim Herunterladen der neuen Version ist ein Fehler aufgetreten","setGenNeverChecked":"Nie nach Updates gesucht","setGenRestartToUpdate":"App neu starten, um das Update durchzuführen","setGenDownloadAndRestart":"Update herunterladen und App neu starten","setGenAppearance":"Oberfläche","setGenTheme":"Theme","setGenThemeFb":"Flat blue","setGenThemeDb":"Dark brown","setGenThemeWh":"White","setGenThemeTe":"Terminal","setGenThemeHc":"High contrast","setGenThemeSd":"Solarized dark","setGenThemeSl":"Solarized light","setGenThemeMacDark":"macOS Dunkel","setGenLocale":"Sprache","setGenLocOther":"Andere Sprachen sind als Plugins verfügbar.","setGenFontSize":"Schriftgröße","setGenFontSizeNormal":"Standard","setGenFontSizeLarge":"Groß","setGenFontSizeLargest":"Größte","setGenTitlebarStyle":"Fenster-Stil (erfordert Neustart des Programms)","setGenTitlebarStyleDefault":"Standard","setGenTitlebarStyleHidden":"Eigener Titel","setGenTitlebarStyleHiddenInset":"Eigener Titel, verschiebbares Fenster","setGenShowSubgroups":"Einträge aus allen Untergruppen anzeigen","setGenTableView":"Einträge in Tabellenansicht anzeigen","setGenColorfulIcons":"Eigene Icons in der Listenansicht farbig anzeigen","setGenUseMarkdown":"Markdown in Notizen","setGenUseGroupIconForEntries":"Für neue Einträge automatisch das Gruppen-Icon verwenden","setGenDirectAutotype":"Wenn nur ein passender Eintrag gefunden wird, diesen automatisch für Auto-Type auswählen","setGenFunction":"Arbeitsweise","setGenAutoSyncOnClose":"Beim Schließen speichern und synchronisieren","setGenAutoSyncTimer":"Regelmäßig speichern und synchronisieren","setGenAutoSyncTimerOff":"Abgeschaltet","setGenAutoSyncTimerInterval":"Alle {} Minuten","setGenRememberKeyFiles":"Schlüsseldateien merken","setGenNoRememberKeyFiles":"Nicht merken","setGenRememberKeyFilesData":"Im internen App-Speicher ablegen","setGenRememberKeyFilesPath":"Nur Speicherort der Schlüsseldateien merken","setGenLockInactive":"Wenn die App inaktiv ist","setGenNoAutoLock":"Nicht automatisch sperren","setGenLockMinutes":"Nach {} Minuten","setGenLockHour":"In einer Stunde","setGenLockHours":"Nach {} Stunden","setGenLockDay":"Nach einem Tag","setGenClearClip":"Zwischenablage nach dem Kopieren leeren","setGenNoClear":"Nicht leeren","setGenClearSeconds":"In {} Sekunden","setGenClearMinute":"Nach einer Minute","setGenMinInstead":"App beim Schließen stattdessen minimieren","setGenLock":"Automatisch sperren","setGenLockMinimize":"Beim Minimieren der App","setGenLockCopy":"Nach dem Kopieren eines Passworts","setGenLockAutoType":"Bei Auto-Type","setGenLockOrSleep":"Bei Aktivierung von Bildschirmsperre oder Ruhezustand","setGenStorage":"Synchronisierung","setGenStorageLogout":"Abmelden","setGenShowAdvanced":"Erweiterte Einstellungen anzeigen","setGenDevTools":"Entwicklerwerkzeuge anzeigen","setGenTryBeta":"Beta-Version bis zum Schließen der App ausprobieren","setGenTryBetaWarning":"Ungespeicherte Dateien","setGenTryBetaWarningBody":"Bitte speichern Sie alle Dateien und Klicken Sie erneut auf diesen Button","setGenShowAppLogs":"App-Logs anzeigen","setGenReloadApp":"App neu laden","setGenFieldLabelDblClickAutoType":"Auto-Type durch anklicken von Beschriftungen aktivieren","setFilePath":"Dateipfad","setFileStorage":"Diese Datei wird von {} geladen.","setFileIntl":"Diese Datei ist im internen App-Speicher abgelegt","setFileLocalHint":"Sie wollen nahtlos mit lokalen Dateien arbeiten?","setFileDownloadApp":"Laden Sie die Desktop-App herunter","setFileSave":"Speichern","setFileSaveTo":"Speichern unter...","setFileClose":"Sperren","setFileSync":"Synchronisierung","setFileSyncVerb":"Synchronisieren","setFileSaveToXml":"XML","setFileSaveToHtml":"HTML","setFileLastSync":"Letzte Synchronisierung","setFileLastSyncUnknown":"unbekannt","setFileSyncInProgress":"Synchronisierung läuft","setFileSyncError":"Synchronisierungsfehler","setFilePass":"Hauptpasswort","setFileConfirmPass":"Masterpasswort bestätigen","setFilePassChange":"Um das Passwort zu ändern, geben Sie es im Bestätigungsfeld an","setFilePassChanged":"Das Passwort wurde geändert. Lassen Sie das Feld leer, um das bisherige Passwort zu behalten.","setFilePassNotMatch":"Die Passwörter stimmen nicht überein, bitte geben Sie sie erneut ein","setFileKeyFile":"Schlüsseldatei","setFileSelKeyFile":"Schlüsseldatei auswählen","setFileNames":"Namen","setFileDefUser":"Standard-Benutzername","setFileEnableTrash":"Papierkorb aktivieren","setFileHistMode":"Eintragsverlauf","setFileHistLimited":"Alte Einträge im Verlauf automatisch löschen","setFileHistDisabled":"Keinen Verlauf speichern","setFileHistUnlimited":"Verlauf dauerhaft speichern","setFileHistLen":"Anzahl der im Verlauf gespeicherten Versionen","setFileHistSize":"Maximalgröße des Verlaufs pro Datei in MB","setFileBackups":"Sicherungen","setFileBackupEnable":"Diese Datei sichern","setFileBackupPath":"Sicherungspfad","setFileBackupTime":"Sicherungen anlegen","setFileBackupNow":"Jetzt sichern","setFileBackupNowWorking":"Sichern...","setFileBackupError":"Sicherungsfehler","setFileBackupErrorDescription":"Fehler beim Schreiben der Sicherungsdatei","setFileBackupErrorIsDir":"Der Sicherungspfad ist ungültig","setFileBackupErrorIsDirDescription":"Der Sicherungspfad scheint ein Verzeichnis zu sein. Bitte geben Sie stattdessen einen Dateinamen ein.","setFileBackupOnSave":"Immer, wenn die Datei gespeichert wird","setFileBackupDaily":"Täglich","setFileBackupWeekly":"Wöchentlich","setFileBackupMonthly":"Monatlich","setFileBackupManually":"Manuell, keine automatische Sicherung","setFileRounds":"Verschlüsselungs-Runden","setFileKdfParams":"Schlüsselableitungsfunktion","setFileKdfParamsIter":"Iterationen","setFileKdfParamsMem":"Speicher in KB","setFileKdfParamsPar":"Parallelismus","setFileKeyChangeForce":"Hinweis zum Ändern des Schlüssels nach (Tagen)","setFileUseKeyFile":"Schlüsseldatei benutzen","setFileUseGenKeyFile":"Generierte Schlüsseldatei benutzen","setFileUseOldKeyFile":"Alte Schlüsseldatei benutzen","setFileGenKeyFile":"Neue Schlüsseldatei generieren","setFileDontUseKeyFile":"Keine Schlüsseldatei benutzen","setFileEmptyPass":"Leeres Passwort","setFileEmptyPassBody":"Eine Datenbank ohne Passwort zu speichern macht sie vollkommen ungeschützt. Möchten Sie sie trotzdem speichern?","setFileSaveError":"Fehler beim Speichern","setFileSaveErrorBody":"Schreibfehler beim Speichern","setFileAlreadyExists":"Existiert bereits","setFileAlreadyExistsBody":"Die Datei {} existiert bereits. Überschreiben?","setFileUnsaved":"Ungespeicherte Änderungen","setFileUnsavedBody":"Es gibt ungespeicherte Änderungen in dieser Datei","setFileCloseNoSave":"Sperren und Änderungen verwerfen","setFileDontClose":"Nicht sperren","setFileFormatVersion":"Dateiformat","setFileExportRaw":"Passwörter exportieren","setFileExportRawBody":"Die Exportdatei wird Ihre Passwörter als unverschlüsselten Klartext enthalten. Möchten Sie fortfahren?","setFileDeviceIntro":"Einmal-Codes aus diesem {} werden in der App angezeigt.","setFileDeviceSettings":"Einstellungen","setFileYubiKey":"YubiKey","setFileDontUseYubiKey":"Keinen YubiKey benutzen","setFileRefreshYubiKeyList":"Liste aktualisieren","setFileYubiKeyHeader":"YubiKey","setShTitle":"Tastenkürzel","setShShowAll":"alle Einträge anzeigen","setShColors":"mit Farben markierte Einträge anzeigen","setShTrash":"Papierkorb öffnen","setShFind":"Suchfeld aktivieren; oder: einfach anfangen, den Suchbegriff zu tippen","setShClearSearch":"Suchfeld leeren","setShCopyPass":"Passwort bzw. ausgewähltes Feld kopieren","setShCopyUser":"Benutzername kopieren","setShCopyUrl":"Website kopieren","setShAutoType":"Auto-Type für ausgewählten Eintrag","setShPrev":"zum vorherigen Eintrag gehen","setShNext":"zum nächsten Eintrag gehen","setShCreateEntry":"Neuer Eintrag","setShOpen":"öffnen / neu","setShSave":"alle Dateien speichern","setShGen":"Passwort generieren","setShSet":"App-Einstellungen","setShCopyPassGlobal":"Passwort kopieren","setShCopyOtp":"Einmal-Passwort kopieren","setShAutoTypeGlobal":"Auto-Type","setShCopyPassOnly":"Passwort kopieren","setShRestoreApp":"{} öffnen","setShGlobal":"Diese systemweiten Tastenkürzel funktionieren auch, wenn die App im Hintergrund läuft. Klicken Sie auf einen Eintrag, um ein eigenes Kürzel festzulegen.","setShLock":"Datenbank sperren","setShEdit":"Drücken Sie eine Tastenkombination, um diese als Kürzel zu setzen","setPlInstallTitle":"Neue Plugins installieren","setPlInstallDesc":"KeeWeb-Plugins fügen Funktionen, Themes und Sprachen zu KeeWeb hinzu. Plugins werden mit denselben Rechten ausgeführt wie KeeWeb selbst, sie können auf all Ihre Passwörter zugreifen oder diese ändern. Installieren Sie niemals Plugins, denen Sie nicht vertrauen.","setPlInstallLabel":"Plugin-URL","setPlInstallBtn":"Installieren","setPlInstallBtnProgress":"Installiere","setPlUninstallBtn":"Deinstallieren","setPlDisableBtn":"Deaktivieren","setPlEnableBtn":"Aktivieren","setPlUpdateBtn":"Aktualisieren","setPlLocaleBtn":"Diese Sprache aktivieren","setPlThemeBtn":"Dieses Theme aktivieren","setPlJs":"Code","setPlCss":"Stile","setPlLoc":"Sprache","setPlCreatedBy":"Erstellt von {}","setPlLoadTime":"geladen in {}","setPlLastUpdate":"Letzte Prüfung auf Updates","setPlLoadError":"Fehler beim Laden des Plugins","setPlGalleryLoading":"Plugins werden geladen, bitte warten Sie einen Moment","setPlGalleryLoadError":"Fehler beim Laden der Plugins","setPlInstallUrlTitle":"Plugin von einer URL hinzufügen","setPlInstallUrlDesc":"Wenn das Plugin nicht in der Galerie verfügbar ist, können Sie es manuell von einer URL installieren","setPlOfficial":"Offizielles KeeWeb-Plugin","setPlSearch":"Nach Plugins suchen","setPlDevelop":"Eigene Plugins entwickeln?","setPlDevelopStart":"Hier entlang","setPlTranslate":"Oder {}","setPlTranslateLink":"übersetzen Sie die App in Ihre Sprache","setPlAutoUpdate":"Automatisch aktualisieren","setPlLoadGallery":"Plugin-Galerie laden","setDevicesYubiKeyOtpTitle":"Einmal-Codes","setDevicesYubiKeyOtpDesc":"Ein YubiKey kann genutzt werden, um Einmal-Codes für verschiedene Dienste zu erzeugen.","setDevicesYubiKeyOtpAutoOpen":"Einmal-Codes automatisch laden, wenn Dateien geöffnet sind","setDevicesYubiKeyOtpMatchEntries":"Passende Einmal-Codes in den Einträgen anzeigen","setAboutTitle":"Über","setAboutBuilt":"Diese App wurde mit den folgenden Werkzeugen erstellt","setAboutLic":"Lizenz","setAboutLicComment":"Die App selbst und alle enthaltenen Komponenten, die nicht Public Domain sind, stehen unter der MIT-Lizenz.","setAboutFirst":"Dies ist eine Open-Source App, erstellt von {}","setAboutSecond":"und lizenziert unter {}.","setAboutSource":"Quellcode und Tickets befinden sich auf {}.","setHelpFormat":"Dateiformat","setHelpFormatBody":"Dies ist eine Portierung der {} App, programmiert mit Webtechnologien. Sie ist kompatibel mit Dateien im KeePass-Format (kdbx). Sie können solche Dateien (Passwort-Datenbanken) entweder mit KeePass oder mit dieser App erstellen. Das Dateiformat ist zu 100% kompatibel und sollte in beiden Anwendungen nutzbar sein.","setHelpProblems":"Probleme?","setHelpProblems1":"Falls etwas schief geht, {}","setHelpProblems2":"oder {}","setHelpOpenIssue":"eröffnen Sie bitte ein Ticket auf GitHub (englisch)","setHelpContactLink":"kontaktieren Sie den Entwickler direkt","setHelpAppInfo":"App-Informationen","setHelpOtherPlatforms":"Andere Plattformen","setHelpDesktopApps":"Deskop-Apps","setHelpWebApp":"Web-App","setHelpUpdates":"Neuigkeiten","setHelpTwitter":"Twitter","dropboxSetupDesc":"Etwas Konfiguration ist notwendig, um Dropbox in einer selbst gehosteten Web-App zu verwenden. Bitte erstellen Sie eine eigene Dropbox-App und tragen Sie ihren App-Schlüssel unten ein.","dropboxAppKey":"Dropbox App-Schlüssel","dropboxAppKeyDesc":"Kopieren Sie den Schlüssel aus Ihrer Dropbox-App (Entwicklereinstellungen)","dropboxAppSecret":"Dropbox App Secret","dropboxAppSecretDesc":"Das App Secret ist neben dem App Key zu finden","dropboxFolder":"App-Ordner","dropboxFolderDesc":"Wenn Ihre App mit der gesamten Dropbox verlinkt ist (anstatt mit einem bestimmten Ordner), geben Sie hier den Pfad zum Ordner mit Ihren KDBX-Dateien an.","dropboxFolderSettingsDesc":"Wählen Sie einen Ordner in Ihrer Dropbox, in dem die Dateien gespeichert werden (standardmäßig das Stammverzeichnis)","dropboxFolderPlaceholder":"Standard-Ordner","dropboxLink":"App verlinken mit","dropboxLinkApp":"App-Ordner (Apps/KeeWeb)","dropboxLinkFull":"Gesamte Dropbox oder beliebiger Ordner","dropboxLinkCustom":"Eigene Dropbox-App","gdriveSharedWithMe":"Mit mir geteilt","webdavSaveMethod":"Speichermethode","webdavSaveMove":"Eine temporäre Datei hochladen und verschieben","webdavSavePut":"kdbx-Datei mittels PUT überschreiben","launcherSave":"Passwort-Datenbank speichern","launcherFileFilter":"KeePass-Dateien","authPopupRequired":"Pop-Ups blockiert","authPopupRequiredBody":"Bitte erlauben Sie Pop-Ups in Ihrem Browser.","exportFileInfo":"Dateiinformationen","exportHtmlName":"Name","exportHtmlDate":"Exportdatum","exportGenerator":"Software","exportDescription":"Diese Datei wurde mit {} erstellt.","importCsvTitle":"Aus CSV importieren","importCsvRun":"Importieren","importIgnoreField":"Ignorieren","importTo":"Einträge werden importiert nach:","importNewFile":"Neue Datei"}')},function(e){e.exports=JSON.parse('{"months":["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],"monthsShort":["Janv","Févr","Mars","Avr","Mai","Juin","Juil","Août","Sept","Oct","Nov","Déc"],"weekdays":["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],"weekdaysShort":["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],"retToApp":"retour vers l\'appli","name":"nom","icon":"icône","title":"titre","password":"mot de passe","user":"utilisateur","website":"site web","tags":"tags","notes":"notes","entry":"entrée","group":"groupe","noTitle":"aucun titre","or":"ou","history":"historique","template":"modèle","notImplemented":"Non Implémenté","saveChanges":"Sauvegarder les modifications","discardChanges":"Annuler les modifications","advanced":"Avancé","shortcuts":"Raccourcis","help":"Aide","settings":"Paramètres","plugins":"Modules (plugins)","ctrlKey":"ctrl","shiftKey":"shift","altKey":"alt","error":"erreur","cache":"cache","file":"fichier","device":"appareil","webdav":"WebDAV","dropbox":"Dropbox","gdrive":"Google Drive","onedrive":"OneDrive","menuAllItems":"Tout","menuColors":"Couleurs","menuTrash":"Corbeille","menuSetGeneral":"Général","menuSetAbout":"À propos","menuSetDevices":"Appareils","menuAlertNoTags":"Aucun tag","menuAlertNoTagsBody":"Vous pouvez ajouter de nouveaux tags en éditant les champs, dans la section Tags.","menuEmptyTrash":"Vider la Corbeille","menuEmptyTrashAlert":"Vider la Corbeille?","menuEmptyTrashAlertBody":"Vous ne pourrez plus récupérer ces éléments","menuItemCollapsed":"Double-cliquez pour déplier","menuRestoreApp":"Ouvrir {}","menuQuitApp":"Quitter {}","alertYes":"Oui","alertNo":"Non","alertOk":"OK","alertCancel":"Annuler","alertSignIn":"Connexion","alertCopy":"Copier","alertClose":"Fermer","alertDoNotAsk":"Ne plus me le redemander","appBeta":"ATTENTION: version beta, aperçu seulement","footerOpen":"Ouvrir/Nouveau","footerSyncError":"Erreur de synchronisation","footerTitleGen":"Générer","footerTitleLock":"Verrouiller","genLen":"Longueur","genNewPass":"Nouveau mot de passe","genPresetDefault":"réglages par défaut","genPresetDerived":"identique à l\'ancien mot de passe","genPresetPronounceable":"prononçable","genPresetMed":"longueur moyenne","genPresetLong":"long","genPresetPin4":"code à 4 chiffres","genPresetMac":"adresse MAC","genPresetHash128":"hash 128 bits","genPresetHash256":"hash 256 bits","genHidePass":"Masquer le mot de passe","genShowPass":"Afficher le mot de passe","grpTitle":"Groupe","grpSearch":"Activer la recherche dans les entrées de ce groupe","grpAutoType":"Activer l\'auto-complétion","grpAutoTypeSeq":"Séquence d\'auto-complétion","grpAutoTypeSeqDefault":"Utiliser la séquence d\'auto-complétion par défaut","grpTrash":"Supprimer le groupe et toutes ses entrées","tagTitle":"Tag","tagTrash":"Supprimer le tag de toutes les entrées","tagRename":"Renommer","tagTrashQuestion":"Supprimer le tag de toutes les entrées ?","tagTrashQuestionBody":"Ce tag va être supprimé de toutes les entrées. Il n\'y aura pas de moyen facile pour le remettre.","tagExists":"Ce tag existe déjà","tagExistsBody":"Un tag existe déjà avec ce nom. Merci de choisir un autre nom.","tagBadName":"Nom invalide","tagBadNameBody":"Un nom de tag ne peut pas contenir les caractères {}. Merci de les supprimer.","genPsTitle":"Préréglages du Générateur","genPsCreate":"Nouveau préréglage","genPsDelete":"Supprimer préréglage","genPsNew":"préréglage","genPsEnabled":"Afficher dans la liste des préréglages","genPsDefault":"Sélectionné par défaut","genPsDefaultLength":"Longueur par défaut","genPsUpper":"Lettres latines majuscules","genPsLower":"Lettres latines minuscules","genPsDigits":"Chiffres","genPsSpecial":"Caractères spéciaux","genPsBrackets":"Parenthèses","genPsHigh":"Caractères ASCII étendus","genPsAmbiguous":"Caractères ambigus","genPsInclude":"Caractères additionnels à inclure","genPsExample":"Exemple de mot de passe généré","genPsPattern":"Modèle","genPsPatternHelp":"Des modèles peuvent être utilisés pour spécifier des règles de sélection de caractères. 1-AA générera un mot de passe commençant par un chiffre, suivi d\'un tiret et de 2 lettres. Vous pouvez utiliser ces symboles :","genPsAllRanges":"Tous les caractères","genPsIncluded":"Caractères additionnels ajoutés ci-dessus","keyChangeTitleRemote":"Clé Maître Modifiée","keyChangeMessageRemote":"La clé maître a été modifiée pour cette base de données. Merci de saisir une nouvelle clé.","keyChangeTitleExpired":"Clé Maître Expirée","keyChangeMessageExpired":"La clé maître pour cette base de donnée est expirée. Merci de saisir une nouvelle clé.","keyChangeRepeatPassword":"Mot de passe, encore une fois","keyEnter":"Entrée","iconFavTitle":"Télécharger et utiliser le favicon du site web","iconSelCustom":"Sélectionner une icône personnalisée","listEmptyTitle":"Vide","listEmptyAdd":"ajouter avec le bouton {} au-dessus","listGroup":"Groupe","listNoWebsite":"aucun site web","listNoUser":"aucun utilisateur","listNoAttachments":"aucune pièce-jointe","listAddTemplateHeader":"Templates","listAddTemplateBody1":"Les modèles (templates) vous permettent de créer des nouvelles entrées en un clic. Ajouter quelque chose à l\'entrée du modèle et ensuite cliquer de nouveau sur {} pour utiliser ce modèle.","listAddTemplateBody2":"Vous pouvez toujours retrouver vos modèles dans le groupe {}.","searchAddNew":"Ajouter Nouveau","searchSort":"Trier","searchCreated":"Créé","searchUpdated":"Mis à jour","searchAttachments":"Pièce-jointes","searchAZ":"A {} Z","searchZA":"Z {} A","searchON":"Ancien {} Nouveau","searchNO":"Nouveau {} Ancien","searchShiftClickOr":"maj-click ou","searchAdvTitle":"Afficher/masquer recherche avancée","searchSearchIn":"Rechercher dans","searchOther":"Autres champs","searchProtect":"Champs sécurisés","searchOptions":"Options","searchCase":"Respecte la casse","searchRegex":"RegEx","searchRank":"Auto","searchExact":"Exact","openOpen":"Ouvrir","openNew":"Nouveau","openNewFile":"Nouveau","openMore":"Plus","openDemo":"Démo","openGenerate":"Générer","openXml":"Importer XML","openCaps":"Majuscules activées","openClickToOpen":"Cliquer pour ouvrir un fichier","openKeyFile":"fichier clé","openKeyFileDropbox":"(depuis DropBox)","openDropHere":"déposez les fichiers ici","openFailedRead":"Échec lors de la lecture du fichier","openNothingFound":"Aucun résultat","openNothingFoundBody":"Nous n\'avons trouvé aucun fichier convenable.","openSelectFile":"Sélectionnez un fichier","openSelectFileBody":"Sélectionnez un fichier que vous voudriez ouvrir","openPassFor":"Mot de passe pour","openRemoveLastQuestion":"Supprimer le fichier local ?","openRemoveLastQuestionBody":"Le fichier que vous voulez supprimer est sauvegardé dans l\'appli. Le supprimer de façon définitive ?","openRemoveLastQuestionModBody":"Le fichier que vous voulez supprimer a des modifications locales. Le supprimer et annuler ces modifications ?","openLocalFile":"Fichier local","openLocalFileBody":"Vous allez ouvrir un fichier qui sera stocké dans l\'application. Les modifications apportées ne seront pas sauvegardées vers le système de fichiers. Pour obtenir le fichier avec vos données, exportez-le via les paramètres.","openLocalFileDontShow":"Ne plus afficher","openWrongFile":"Fichier invalide","openWrongFileBody":"Ce format de fichier n\'est pas supporté. Cette application fonctionne avec des fichiers de base de donnée KeePass (kdbx).","openKdbFileBody":"Vous essayez d\'ouvrir un ancien fichier de base de donnée KeePass (KDB). Cette application supporte uniquement le nouveaux format (kdbx), merci d\'utiliser KeePass 2 afin de convertir celui-ci.","openConfigHeader":"Paramètres {}","openUrl":"URL","openUrlDesc":"https://serveur/chemin/fichier.kdbx, ou seulement fichier.kdbx","openUser":"Nom d\'utilisateur","openUserDesc":"Nom d\'utilisateur du serveur WebDAV (si requis)","openUserPlaceholder":"aucun nom d\'utilisateur","openPass":"Mot de passe","openPassDesc":"Mot de passe du serveur WebDAV (ce n\'est pas votre mot de passe de fichier)","openPassPlaceholder":"aucun mot de passe","openConfigError":"Erreur: {}","openConfigErrorNotFound":"Aucun fichier trouvé","openError":"Erreur","openErrorDescription":"Une erreur est survenue à l\'ouverture du fichier","openErrorFileNotFound":"Fichier non trouvé","openListErrorBody":"Erreur au chargement de la liste des fichiers","openShowAllFiles":"Tous les fichiers","openFileNoCacheError":"Fichier non trouvé dans la mémoire cache. Cela peut arriver parce que le stockage du navigateur a été nettoyé. Pour ouvrir le fichier, supprimez-le de KeeWeb et ajoutez-le à nouveau.","openChalRespHeader":"Challenge-Réponse","openChalRespLoading":"Chargement de la liste des YubiKeys","openChalRespSelectYubiKey":"Sélectionnez une YubiKey que vous voudriez utiliser","openChalRespErrorEmpty":"Pas de clé YubiKey trouvée.","openChalRespErrorEmptyMac":"Première fois que vous utilisez cette fonctionnalité sur MacOS ? KeeWeb doit avoir été autorisé dans la section \\"Surveillance de lentrée\\" des paramètres de sécurité.","detAttDownload":"Cliquez sur le bouton de pièce-jointe en pressant la touche Maj pour le télécharger ou","detAttDelToRemove":"Supprimer pour enlever","detAttSave":"Enregistrer sous","detEmpty":"Vos mots de passe seront affichés ici","detGroupRestore":"Pour restaurer ce groupe, veuillez le glisser-déposer dans un des groupes hors de la corbeille","detHistoryClickPoint":"Cliquer sur une entrée de l\'historique pour voir son état","detHistoryReturn":"Retour vers l\'entrée","detHistoryRevert":"Revenir à cet état","detHistoryDel":"Supprimer cet état","detHistoryEmpty":"vide","detHistoryModified":"modifié","detHistoryRec":"archive","detHistoryRecs":"archives","detHistoryVersion":"Version","detHistorySaved":"Sauvegardé","detHistoryNoTitle":"sans titre","detHistoryCurState":"état actuel","detHistoryCurUnsavedState":"état actuel non sauvegardé","detHistoryRevertAlert":"Revenir à cet état de l\'historique ?","detHistoryRevertAlertBody":"L\'état courant sera sauvegardé dans l\'historique.","detHistoryDeleteAlert":"Supprimer cet état de l\'historique ?","detHistoryDeleteAlertBody":"Vous ne pourrez plus le restaurer.","detHistoryDiscardChangesAlert":"Ne pas sauvegarder les modifications de cette entrée ?","detHistoryDiscardChangesAlertBody":"Les changements non sauvegardés seront définitivement perdus, il n\'y a pas de retour en arrière.","detBackToList":"retour vers liste","detSetIconColor":"Changer de couleur","detSetIcon":"Changer d\'icône","detDropAttachments":"Déposer une pièce-jointe ici","detDelEntry":"Supprimer","detDelEntryPerm":"Supprimer définitivement","detExpires":"Expire","detExpired":"expirée","detGroup":"Groupe","detCreated":"Créé le","detUpdated":"Mis à jour","detNetField":"Nouveau champ","detAttachments":"Pièces-jointes","detDelFromTrash":"Supprimer de la Corbeille ?","detDelFromTrashBody":"Vous ne pourrez plus le récupérer.","detDelFromTrashBodyHint":"Pour supprimer tous les éléments de la Corbeille, cliquez licône \\"Vider la corbeille\\" du menu Corbeille.","detDelToTrash":"Supprimer l\'entrée ?","detDelToTrashBody":"L\'entrée sera déplacée dans la corbeille.","detFieldCopied":"Copié","detFieldCopiedTime":"Copié pendant {} secondes","detCopyHint":"Vous pouvez copier la valeur du champ en cliquant sur son titre","detMore":"plus","detClickToAddField":"cliquez pour ajouter un nouveau champ","detMenuAddNewField":"Ajouter nouveau champ","detMenuShowEmpty":"Montrer les champs vides","detMenuHideEmpty":"Cacher les champs vides","detMenuAddField":"Ajouter {}","detMenuCopyPassword":"Copier mot de passe","detMenuCopyUser":"Copier nom","detMenuCopyOtp":"Copier le code à usage unique","detSetupOtp":"Codes à usage unique","detClone":"Dupliquer","detCopyEntryToClipboard":"Copier tous les champs","detClonedName":"Copier","detAutoType":"Saisie auto","detAutoTypeSettings":"Paramètres saisie auto","detAutoTypeEnabled":"Activer la saisie automatique pour cette entrée","detAutoTypeSequence":"Frappes","detAutoTypeInput":"Entrée","detAutoTypeShortcutsDesc":"{} ou {} tant que l\'appli est inactive","detAutoTypeObfuscation":"Mélanger touches réelles et aléatoire","detAutoTypeWindow":"Fenêtre","detAutoTypeInputWindow":"Titre de fenêtre","detSetupOtpAlert":"Scanner le QR code","detSetupOtpAlertBody":"Veuillez copier le QR code qui est affiché sur la page d\'autorisation","detSetupOtpAlertBody1":"1. aller sur la page d\'autorisation","detSetupOtpAlertBody2":"2. faire une capture d\'écran du QR code avec {}","detSetupOtpAlertBody3":"3. collez-la ici avec {}","detSetupOtpAlertBody3Mobile":"3. Sélectionner ou scanner avec votre appareil photo en utilisant Sélectionner/Scan ci-dessous","detSetupOtpAlertBody4":"Si vous ne pouvez pas scanner le code, cliquer sur Entrer le code manuellement","detSetupOtpManualButton":"Entrer le code manuellement","detSetupOtpScanButton":"Sélectionner/Scan","detSetupOtpAlertBodyWith":"avec {}","detOtpImageError":"Erreur de lecture de l\'image","detOtpImageErrorBody":"Désolé, le format de l\'image ne peut pas être lu, merci de contacter les auteurs de l\'application avec le détail de l\'erreur.","detOtpImageReading":"Lecture du QR code...","detOtpQrError":"Erreur lecture du QR code","detOtpQrErrorBody":"Désolé, le QR code n\'a pas pu être lu, essayez à nouveau ou contacter les auteurs de l\'application avec le détail de l\'erreur.","detOtpQrWrong":"QR code incorrect","detOtpQrWrongBody":"Votre QR code a été scanné avec succès mais il ne contient pas d\'information pour un mot de passe à usage unique.","detOtpField":"Code à usage unique","detOtpClickToTouch":"Cliquer pour générer","detOtpGenerating":"Création...","detOtpTouch":"Touchez votre {}","detLockField":"Verrouiller ce champ, ainsi son contenu ne sera pas visible ni ne pourra être cherché. Visualiser son contenu exigera de le cliquer explicitement.","detUnlockField":"Déverrouiller ce champ, rendant son contenu immédiatement visible et pouvant être cherché","detRevealField":"Révéler","detHideField":"Cacher","detAutoTypeField":"Saisie auto","autoTypeEntryFields":"Champs","autoTypeModifiers":"Touches modificatrices","autoTypeKeys":"Clés","autoTypeLink":"plus...","autoTypeError":"Erreur saisie auto","autoTypeErrorGeneric":"Il y a eu une erreur lors de la saisie automatique : {}","autoTypeErrorGlobal":"Pour utiliser un raccourci, sélectionner l\'application là où vous voulez saisir le mot de passe","autoTypeErrorNotInstalled":"{} n\'est pas installé","autoTypeHeader":"Saisie auto : Selectionner","autoTypeMsgNoWindow":"Nous n\'avons pas pu obtenir le titre de la fenêtre active, commencez à taper pour rechercher","autoTypeMsgMatchedByWindow":"Sélectionner un mot de passe pour {}","autoTypeNoMatches":"aucun","autoTypeSelectionHint":"Saisissez la séquence automatique","autoTypeSelectionHintAction":"Entrez seulement le mot de passe","autoTypeSelectionHintOpt":"Entrez seulement le compte","autoTypeSelectionHintShift":"Autres champs","autoTypeSelectionOtp":"code à usage unique","appSecWarn":"Non sécurisé !","appSecWarnBody1":"Vous avez chargé cette appli avec une connexion non sécurisée. Quelqu\'un peut vous observer et voler vos mots de passe. Nous vous recommandons fortement d\'arrêter cette connexion, à moins que vous ne compreniez exactement ce que vous faites.","appSecWarnBody2":"Oui, votre base est chiffrée mais personne ne peut garantir que l\'application n\'a pas été modifiée avant d\'arriver à vous.","appSecWarnBtn":"Je comprends les risques, continuer","appUnsavedWarn":"Modifications non sauvegardées","appUnsavedWarnBody":"Vous avez des fichiers non sauvegardés, si vous fermez l\'appli, les changements seront perdus.","appDontExitBtn":"Ne pas quitter","appCannotLockAutoInit":"L\'appli ne peut pas être verrouillée car la sauvegarde automatique est désactivée.","appCannotLock":"Vous avez des modifications non sauvegardées qui seront perdus. Continuer ?","appAutoSave":"Sauver les modifications automatiquement","appSaveError":"Sauver l\'erreur","appSaveErrorBody":"Échec sauvegarde auto du fichier","appSaveErrorBodyMul":"Échec sauvegarde auto des fichiers","appSettingsError":"Erreur lancement appli","appSettingsErrorBody":"Il y a eu une erreur lors du chargement des paramètres. Merci de revérifier l\'URL de l\'application ou contacter votre administrateur.","appNotSupportedError":"Votre navigateur n\'est pas compatible avec certaines fonctionnalités importantes que nous utilisons.","appTabWarn":"Trop d\'onglets","appTabWarnBody":"KeeWeb ne peut être utilisé dans 2 onglets de navigateurs simultanément. Fermer cet onglet, s\'il vous plait.","appRightsAlert":"Protéger l\'appli KeeWeb","appRightsAlertBody1":"Votre application KeeWeb est accessible en écriture. Nous demandons les droits administrateurs pour le mettre en écriture uniquement pour les administrateurs.","appRightsAlertBody2":"Vous ne voulez pas donner les permissions ? Vous pouvez le faire vous-même à partir d\'un terminal","appBrowserAuthComplete":"Authentification terminée, vous pouvez fermer cet onglet.","setGenTitle":"Paramètres","setGenUpdate":"Mettre à jour","setGenNewVersion":"Une nouvelle version a été téléchargée","setGenReleaseNotes":"Voir les notes de version","setGenReloadToUpdate":"Recharger pour mettre à jour","setGenUpdateManual":"Une nouvelle version est disponible. Elle vérifiera les mises à jour et les installera automatiquement, mais cette mise à jour automatique à partir de votre version n\'est pas possible.","setGenDownloadUpdate":"Télécharger mise à jour","setGenUpdateAuto":"Télécharger et installer automatiquement","setGenUpdateCheck":"Vérifier mais ne pas installer","setGenNoUpdate":"Ne jamais vérifier les mises à jour","setGenUpdateChecking":"Vérification des mises à jour","setGenCheckUpdate":"Vérifier les mises à jour","setGenErrorChecking":"Erreur vérification des mises à jour","setGenLastCheckSuccess":"Dernière vérification réussie fut le {}","setGenLastCheckVer":"la dernière version était {}","setGenCheckedAt":"Vérifié le","setGenLatestVer":"vous utilisez la dernière version","setGenNewVer":"nouvelle version {} disponible","setGenDownloadingUpdate":"Téléchargement de la mise à jour...","setGenExtractingUpdate":"Décompression de la mise à jour...","setGenCheckErr":"Une erreur est intervenue durant le téléchargement de la mise à jour","setGenNeverChecked":"Ne jamais vérifier les mises à jour","setGenRestartToUpdate":"Redémarrer pour mettre à jour","setGenDownloadAndRestart":"Télécharger la mise à jour et redémarrer","setGenAppearance":"Apparence","setGenTheme":"Thème","setGenThemeFb":"Bleu plat","setGenThemeDb":"Marron foncé","setGenThemeWh":"Blanc","setGenThemeTe":"Terminal","setGenThemeHc":"Contraste élevé","setGenThemeSd":"Solarized dark","setGenThemeSl":"Solarized light","setGenThemeMacDark":"Mode sombre de macOS","setGenLocale":"Langue","setGenLocOther":"d\'autres langues sont disponibles en tant que modules","setGenFontSize":"Taille de police","setGenFontSizeNormal":"Normal","setGenFontSizeLarge":"Large","setGenFontSizeLargest":"Très large","setGenTitlebarStyle":"Style de fenêtres (redémarrage requis)","setGenTitlebarStyleDefault":"Par défaut","setGenTitlebarStyleHidden":"Titre personnalisé","setGenTitlebarStyleHiddenInset":"Titre personnalisé, fenêtre déplaçable","setGenShowSubgroups":"Afficher les entrées de tous les sous groupes","setGenTableView":"Voir les entrées en liste","setGenColorfulIcons":"Icônes colorées dans la liste","setGenUseMarkdown":"Markdown dans les notes","setGenUseGroupIconForEntries":"Utilise automatiquement l\'icône de groupe pour les nouvelles entrées","setGenDirectAutotype":"Si une seule entrée correspondante est trouvée, sélectionner celle-ci automatiquement pour l\'autotype.","setGenFunction":"Opérations","setGenAutoSyncOnClose":"Sauvegarde et synchro automatique à la fermeture","setGenAutoSyncTimer":"Sauvegarde et synchro automatique régulièrement","setGenAutoSyncTimerOff":"Désactivé","setGenAutoSyncTimerInterval":"Toutes les {} minute(s)","setGenRememberKeyFiles":"Se souvenir des fichiers clé","setGenNoRememberKeyFiles":"Ne pas se souvenir","setGenRememberKeyFilesData":"Sauvegarder dans le stockage interne de l\'appli","setGenRememberKeyFilesPath":"Se souvenir seulement des chemins des fichiers","setGenLockInactive":"si l\'application est inactive","setGenNoAutoLock":"Ne pas verrouiller automatiquement","setGenLockMinutes":"Dans {} minutes","setGenLockHour":"Dans une heure","setGenLockHours":"Dans {} heures","setGenLockDay":"Dans 1 jour","setGenClearClip":"Vider le presse-papier après une copie","setGenNoClear":"Ne pas effacer","setGenClearSeconds":"Dans {} secondes","setGenClearMinute":"Dans une minute","setGenMinInstead":"Réduire l\'application au lieu de fermer","setGenLock":"Verrou Auto","setGenLockMinimize":"quand l\'appli est en arrière-plan","setGenLockCopy":"sur copie de m.d.p.","setGenLockAutoType":"sur saisie auto","setGenLockOrSleep":"Quand l\'ordinateur est verrouillé ou mis en sommeil","setGenStorage":"Stockage","setGenStorageLogout":"Déconnexion","setGenShowAdvanced":"Afficher les paramètres avancés","setGenDevTools":"Afficher les outils de développement","setGenTryBeta":"Essayer une fois la version beta ","setGenTryBetaWarning":"Fichiers non sauvegardés","setGenTryBetaWarningBody":"Sauvegarder tous les fichiers et re-cliquer ce bouton","setGenShowAppLogs":"Voir les logs","setGenReloadApp":"Recharger l\'application","setGenFieldLabelDblClickAutoType":"Remplissage auto par double clic sur les noms de champ","setFilePath":"Chemin","setFileStorage":"Le fichier est ouvert de {}.","setFileIntl":"Le fichier est conservé dans le stockage interne de l\'application","setFileLocalHint":"Voulez-vous travailler avec des fichiers locaux ?","setFileDownloadApp":"Télécharger l\'application","setFileSave":"Enregistrer","setFileSaveTo":"Enregistrer sous...","setFileClose":"Fermer","setFileSync":"Sync","setFileSyncVerb":"Synchroniser","setFileSaveToXml":"XML","setFileSaveToHtml":"HTML","setFileLastSync":"Dernière synchro","setFileLastSyncUnknown":"inconnu","setFileSyncInProgress":"synchronisation en cours","setFileSyncError":"Sync erreur","setFilePass":"Mot de passe principal","setFileConfirmPass":"Confirmer le mot de passe Maître","setFilePassChange":"pour changer le mot de passe, merci de le saisir dans le champ Confirmation","setFilePassChanged":"Le mot de passe a été changé ; laissez le champ vide pour utiliser l\'ancien mot de passe","setFilePassNotMatch":"les mots de passe ne correspondent pas, veuillez réessayer","setFileKeyFile":"Fichier clé","setFileSelKeyFile":"Sélectionner fichier clé","setFileNames":"Noms","setFileDefUser":"Utilisateur par défaut","setFileEnableTrash":"Activer corbeille","setFileHistMode":"Historique","setFileHistLimited":"Supprimer les anciens enregistrements automatiquement","setFileHistDisabled":"Ne pas sauvegarder l\'historique","setFileHistUnlimited":"Garder les enregistrements de l\'historique pour toujours","setFileHistLen":"Longueur de l\'historique, conserve les derniers enregistrements","setFileHistSize":"Taille de l\'historique, Mo par fichier","setFileBackups":"Sauvegardes","setFileBackupEnable":"Sauvegarder ce fichier","setFileBackupPath":"Chemin","setFileBackupTime":"Lancer sauvegardes ","setFileBackupNow":"Sauvegarder...","setFileBackupNowWorking":"En cours...","setFileBackupError":"Erreur sauvegarde","setFileBackupErrorDescription":"Erreur à l\'écriture du fichier","setFileBackupErrorIsDir":"Chemin de sauvegarde invalide","setFileBackupErrorIsDirDescription":"Le chemin de sauvegarde semble pointer sur un répertoire. Merci de spécifier un fichier dans un répertoire à la place.","setFileBackupOnSave":"A chaque fois que je sauvegarde","setFileBackupDaily":"Quotidien","setFileBackupWeekly":"Chaque semaine","setFileBackupMonthly":"Chaque mois","setFileBackupManually":"Manuellement, pas de sauvegarde automatique","setFileRounds":"Cycles de chiffrement de la clé","setFileKdfParams":"Fonction de dérivation de clé","setFileKdfParamsIter":"Itérations","setFileKdfParamsMem":"Mémoire, Ko","setFileKdfParamsPar":"Parallèlisme","setFileKeyChangeForce":"Demander à changer la clé après (jours)","setFileUseKeyFile":"Utiliser un fichier clé","setFileUseGenKeyFile":"Utiliser le fichier clé généré","setFileUseOldKeyFile":"Utiliser l\'ancien fichier clé","setFileGenKeyFile":"Générer nouveau fichier clé","setFileDontUseKeyFile":"Ne pas utiliser de fichier clé","setFileEmptyPass":"Mot de passe vide","setFileEmptyPassBody":"Sauvegarder la base de données avec un mode de passe vide la laisse sans aucune protection. Voulez-vous vraiment faire cela ?","setFileSaveError":"Erreur sauvegarde","setFileSaveErrorBody":"Erreur sauvegarde dans le fichier","setFileAlreadyExists":"Existe déjà","setFileAlreadyExistsBody":"Le fichier {} existe déjà. L\'écraser ?","setFileUnsaved":"Modif non sauvegardées","setFileUnsavedBody":"Il y a des modifications non sauvegardées dans ce fichier","setFileCloseNoSave":"Fermer et perdre les modifs","setFileDontClose":"Ne pas fermer","setFileFormatVersion":"Format de fichier","setFileExportRaw":"Exporter vos mots de passe","setFileExportRawBody":"Le fichier exporté contiendra vos mots de passe, il n\'y seront plus cryptés. Voulez vous continuer ?","setFileDeviceIntro":"Les codes à usage unique de cette {} vont être affichés dans l\'application.","setFileDeviceSettings":"Paramètres","setFileYubiKey":"YubiKey","setFileDontUseYubiKey":"Ne pas utiliser une YubiKey","setFileRefreshYubiKeyList":"Rafraichir la liste","setFileYubiKeyHeader":"YubiKey","setFileYubiKeyBody":"Utiliser une YubiKey comme partie de la clé maitre est dangeureux, et vous risquez de perdre l\'accès à vos mots de passe si quelque chose tourne mal. Avez vous réalisé une sauvegarde de votre fichier avant de modifier les paramètres ?","setFileYubiKeyErrorEmptyMac":"Il semble qu\'il y a une YubiKey connectée, mais elle est invisible. KeeWeb doit avoir été autorisé dans la section \\"Surveillance de lentrée\\" des paramètres de sécurité pour se connecter à la YubiKey.","setShTitle":"Raccourcis","setShShowAll":"montrer tout","setShColors":"montrer les champs en couleur","setShTrash":"aller à Corbeille","setShFind":"rechercher ou juste commencer à taper","setShClearSearch":"effacer recherche","setShCopyPass":"copier le mot de passe ou le champ sélectionné","setShCopyUser":"copier le nom","setShCopyUrl":"copier le site","setShAutoType":"saisie automatique pour cette entrée","setShPrev":"aller au précédent","setShNext":"aller au prochain","setShCreateEntry":"créer une entrée","setShOpen":"ouvrir/nouveau","setShSave":"sauver tous les fichiers","setShGen":"générer un mot de passe","setShSet":"paramètres","setShCopyPassGlobal":"copier le mot de passe","setShCopyOtp":"Copier l\'OTP","setShAutoTypeGlobal":"saisie automatique","setShCopyPassOnly":"Copier mot de passe","setShRestoreApp":"Ouvrir {}","setShGlobal":"Ces raccourcis à l\'échelle du système fonctionnent lorsque l\'application s\'exécute en arrière-plan. Vous pouvez cliquer dessus pour sélectionner votre propre raccourci.","setShLock":"verrouiller la base","setShEdit":"Appuyez sur une nouvelle combinaison de touches pour la définir comme raccourci.","setPlInstallTitle":"Installer de nouveaux modules","setPlInstallDesc":"Les modules (plugins) de KeeWeb ajoutent des fonctionnalités, thèmes et langues à KeeWeb. Les modules sont lancés avec les même privilèges que KeeWeb : ils peuvent accéder et gérer tous vos mots de passe. Ne jamais installer de modules auxquels vous ne faites pas confiance.","setPlInstallLabel":"URL du module","setPlInstallBtn":"Installer","setPlInstallBtnProgress":"Installation","setPlUninstallBtn":"Désintaller","setPlDisableBtn":"Désactiver","setPlEnableBtn":"Activer","setPlUpdateBtn":"Mettre à jour","setPlLocaleBtn":"Changer pour cette langue","setPlThemeBtn":"Changer pour ce thème","setPlJs":"code","setPlCss":"styles","setPlLoc":"langue","setPlCreatedBy":"Créé par {}","setPlLoadTime":"{} pour charger","setPlLastUpdate":"Dernière vérification des mises à jour","setPlLoadError":"erreur au chargement du module","setPlGalleryLoading":"Chargement des modules, patientez un instant","setPlGalleryLoadError":"erreur au chargement des modules","setPlInstallUrlTitle":"Ajouter un module à partir d\'une URL","setPlInstallUrlDesc":"Si un module n\'est pas dans le catalogue, vous pouvez l\'installer manuellement à partir d\'une URL.","setPlOfficial":"Module officiel KeeWeb","setPlSearch":"Rechercher des modules","setPlDevelop":"Vous souhaitez développer vos propres modules ?","setPlDevelopStart":"Commencez ici","setPlTranslate":"Ou vous pouvez {}","setPlTranslateLink":"traduire l\'appli dans votre langue","setPlAutoUpdate":"Mise à jour automatique","setPlLoadGallery":"Charger le catalogue","setDevicesTitle":"Appareils","setDevicesEnableUsb":"Autoriser les interactions avec les appareils USB","setDevicesYubiKeyIntro":"Il est recommandé de lire {} avant d\'utiliser une YubiKey.","setDevicesYubiKeyIntroLink":"ce document","setDevicesYubiKeyToolsDesc":"Pour permettre l\'utilisation de YubiKey dans ce mode, vous devez installer un outil appelé {}.","setDevicesYubiKeyToolsDesc2":"{} pour avoir plus d\'information sur cet outil.","setDevicesYubiKeyToolsDescLink":"Cliquez ici","setDevicesYubiKeyToolsStatusChecking":"Vérification si {} est installé","setDevicesYubiKeyToolsStatusOk":"{} est installé","setDevicesYubiKeyToolsStatusError":"{} n\'est pas installé, ou ne fonctionne pas","setDevicesYubiKeyOtpTitle":"Codes à usage unique","setDevicesYubiKeyOtpDesc":"YubiKey peut être utilisé pour générer des codes à usage unique pour différents services.","setDevicesYubiKeyOtpShowIcon":"Afficher l\'icône sur l\'écran de démarrage","setDevicesYubiKeyOtpAutoOpen":"Charger automatiquement les codes à usage unique lorsqu\'il y a des fichiers ouverts","setDevicesYubiKeyOtpMatchEntries":"Afficher les codes à usage unique qui correspondent dans les entrées","setDevicesYubiKeyChalRespTitle":"Challenge-Réponse","setDevicesYubiKeyChalRespDesc":"Il est aussi possible d\'utiliser une YubiKey en mode Challenge-Réponse, afin qu\'une partie de la clé privée utilisée pour crypter les fichiers provienne d\'une YubiKey.","setDevicesYubiKeyChalRespShow":"Proposer l\'option d\'utiliser une YubiKey à l\'ouverture des fichiers","setDevicesYubiKeyStuckWorkaround":"Reconnecter la YubiKey si elle semble bloquée au moment du chargement","setDevicesYubiKeyRememberChalResp":"Se souvenir du challenge-réponse le temps que l\'application reste ouverte","setAboutTitle":"À propos","setAboutBuilt":"Cette appli est construite avec ces outils géniaux","setAboutLic":"Licence","setAboutLicComment":"Cette application et tous les composants qu\'elle contient qui ne sont pas dans le domaine public sont sous licence MIT","setAboutFirst":"Ceci est une application open-source créée par {}","setAboutSecond":" et sous licence {}.","setAboutSource":"Le code source et les problèmes sont sur {}.","setHelpFormat":"Format de fichier","setHelpFormatBody":"Ceci est un portage de l\'appli {} développée avec les technologies web. Il interprète les fichiers au format KeePass (kdbx). Vous pouvez créer de tels fichiers (bases de données de mots de passe) soit avec KeePass, soit avec cette appli. Le format de fichier est 100% compatible et devrait être compris par les 2 applications.","setHelpProblems":"Un problème ?","setHelpProblems1":"Si quelque chose ne va pas, merci de {}","setHelpProblems2":"ou {}","setHelpOpenIssue":"faire connaître le problème sur GitHub","setHelpContactLink":"contactez le développeur directement","setHelpAppInfo":"Information","setHelpOtherPlatforms":"Autres plateformes","setHelpDesktopApps":"Applis Desktop","setHelpWebApp":"Appli web","setHelpUpdates":"Mises à jour","setHelpTwitter":"Appli twitter","dropboxSetupDesc":"Une configuration particulière est nécessaire pour utiliser Dropbox dans une application auto-hébergée. Merci de créer votre propre application Dropbox et d\'inscrire sa clé ci-dessous.","dropboxAppKey":"Clé Dropbox","dropboxAppKeyDesc":"Copier la clé de votre appli Dropbox (Réglages développeur)","dropboxAppKeyHint":"Votre \\"Dropbox App Key\\"","dropboxAppSecret":"Votre \\"Dropbox App Secret\\"","dropboxAppSecretDesc":"Votre \\"Dropbox App Secret\\" peut être trouvée à côté de votre \\"Dropbox App Key\\".","dropboxFolder":"Dossier Appli","dropboxFolderDesc":"Si votre appli est liée à l\'espace Dropbox entier (et non un dossier), définir le dossier avec vos fichiers Kdbx ici","dropboxFolderSettingsDesc":"Sélectionner un dossier dans votre Dropbox où les fichiers sont stockés (à la racine par défaut)","dropboxFolderPlaceholder":"dossier par défaut","dropboxLink":"Lier l\'appli à","dropboxLinkApp":"Dossier de l\'appli (Apps/KeeWeb)","dropboxLinkFull":"Tout Dropbox ou n\'importe quel dossier","dropboxLinkCustom":"Votre appli Dropbox","gdriveSharedWithMe":"Partagé avec moi","webdavSaveMethod":"Méthode de sauvegarde","webdavSaveMove":"Envoyer un fichier temporaire et le déplacer","webdavSavePut":"Ecraser le fichier kdbx avec PUT","launcherSave":"Sauvegarder base des mots de passe","launcherFileFilter":"Fichiers Keepass","authPopupRequired":"Les pop-up sont bloquées","authPopupRequiredBody":"Merci d\'autoriser les pop-ups pour cette appli dans votre navigateur ou essayez à nouveau.","exportFileInfo":"Propriétés du fichier","exportHtmlName":"Nom","exportHtmlDate":"Date d\'exportation","exportGenerator":"Logiciel","exportDescription":"Ce fichier est généré par {}.","importCsvTitle":"Import depuis un CSV","importCsvRun":"Importer","importIgnoreField":"Ignorer","importTo":"Les entrées seront importées dans","importNewFile":"Nouveau fichier","yubiKeyStuckError":"La YubiKey semble coincée, la réparation automatique est activable dans les paramètres de l\'application.","yubiKeyNoKeyHeader":"Une YubiKey est requise","yubiKeyNoKeyBody":"Merci d\'insérer votre YubiKey avec le numéro de série {}","yubiKeySlot":"port","yubiKeyTouchRequestedHeader":"Touchez votre YubiKey","yubiKeyTouchRequestedBody":"Merci de toucher votre YubiKey avec le numéro de série {}"}')},function(e,t,n){"use strict";n.r(t);var s=n(11);n.n(s).a.registerHelper("add",(e,t)=>parseInt(e)+parseInt(t))},function(e,t,n){"use strict";n.r(t);var s=n(11);n.n(s).a.registerHelper("cmp",(function(e,t,n,s){let i;switch(n){case"<":i=e<t;break;case">":i=e>t;break;case">=":i=e>=t;break;case"<=":i=e<=t;break;case"===":case"==":i=e===t;break;case"!==":case"!=":i=e!==t}return i?s.fn(this):s.inverse(this)}))},function(e,t,n){"use strict";n.r(t);var s=n(11);n.n(s).a.registerHelper("ifeq",(function(e,t,n){return e===t?n.fn(this):n.inverse(this)}))},function(e,t,n){"use strict";n.r(t);var s=n(11);n.n(s).a.registerHelper("ifneq",(function(e,t,n){return e!==t?n.fn(this):n.inverse(this)}))},function(e,t,n){"use strict";n.r(t);var s=n(11);n.n(s).a.registerHelper("ifemptyoreq",(function(e,t,n){return e&&e!==t?n.inverse(this):n.fn(this)}))},function(e,t,n){"use strict";n.r(t);var s=n(11),i=n.n(s),l=n(0);i.a.registerHelper("res",(function(e,t){let n=l.Locale[e];if(n){n.indexOf("{}")>=0&&(n=n.replace("{}",t.fn(this)))}return n})),i.a.registerHelper("Res",e=>{let t=l.Locale[e];return t&&(t=t[0].toUpperCase()+t.substr(1)),t})},function(e,t,n){"use strict";n.r(t);var s=n(11);n.n(s).a.registerHelper("svg",(e,t)=>{const s=n(296)(`./${e}.svg`).default;return"string"==typeof t?`<svg class="${t}"`+s.substr(4):s})},,function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsAboutView",(function(){return c}));var s=n(7),i=n(21),l=n(20),o=n(6),a=n(260),r=n.n(a);class c extends s.View{constructor(...e){super(...e),this.template=r.a}render(){super.render({version:i.RuntimeInfo.version,licenseLink:l.Links.License,licenseLinkApache:l.Links.LicenseApache,repoLink:l.Links.Repo,donationLink:l.Links.Donation,isDesktop:o.Features.isDesktop})}}},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsDevicesView",(function(){return d}));var s=n(1),i=n(7),l=n(3),o=n(26),a=n(20),r=n(23),c=n(261),u=n.n(c);class d extends i.View{constructor(...e){super(...e),this.template=u.a,this.events={"change .settings__devices-enable-usb":"changeEnableUsb","change .settings__yubikey-show-icon":"changeYubiKeyShowIcon","change .settings__yubikey-auto-open":"changeYubiKeyAutoOpen","change .settings__yubikey-match-entries":"changeYubiKeyMatchEntries","change .settings__yubikey-chalresp-show":"changeYubiKeyShowChalResp","change .settings__yubikey-remember-chalresp":"changeYubiKeyRememberChalResp","change .settings__yubikey-stuck-workaround":"changeYubiKeyStuckWorkaround"},["ok","checking"].includes(o.YubiKey.ykmanStatus)||(this.toolCheckPromise=o.YubiKey.checkToolStatus())}render(){this.toolCheckPromise&&(this.toolCheckPromise.then(()=>this.render()),this.toolCheckPromise=void 0),super.render({supported:r.UsbListener.supported,enableUsb:r.UsbListener.supported&&l.AppSettingsModel.enableUsb,ykmanStatus:o.YubiKey.ykmanStatus,yubiKeyShowIcon:l.AppSettingsModel.yubiKeyShowIcon,yubiKeyAutoOpen:l.AppSettingsModel.yubiKeyAutoOpen,yubiKeyMatchEntries:l.AppSettingsModel.yubiKeyMatchEntries,yubiKeyShowChalResp:l.AppSettingsModel.yubiKeyShowChalResp,yubiKeyRememberChalResp:l.AppSettingsModel.yubiKeyRememberChalResp,yubiKeyStuckWorkaround:l.AppSettingsModel.yubiKeyStuckWorkaround,yubiKeyManualLink:a.Links.YubiKeyManual,ykmanInstallLink:a.Links.YubiKeyManagerInstall})}changeEnableUsb(e){l.AppSettingsModel.enableUsb=e.target.checked,this.render()}changeYubiKeyShowIcon(e){l.AppSettingsModel.yubiKeyShowIcon=e.target.checked,this.render()}changeYubiKeyAutoOpen(e){l.AppSettingsModel.yubiKeyAutoOpen=e.target.checked,this.render()}changeYubiKeyMatchEntries(e){l.AppSettingsModel.yubiKeyMatchEntries=e.target.checked,this.render(),s.Events.emit("refresh")}changeYubiKeyShowChalResp(e){l.AppSettingsModel.yubiKeyShowChalResp=e.target.checked,this.render()}changeYubiKeyRememberChalResp(e){l.AppSettingsModel.yubiKeyRememberChalResp=e.target.checked,this.render()}changeYubiKeyStuckWorkaround(e){l.AppSettingsModel.yubiKeyStuckWorkaround=e.target.checked,this.render()}}},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsFileExternalView",(function(){return a}));var s=n(7),i=n(1),l=n(262),o=n.n(l);class a extends s.View{constructor(...e){super(...e),this.template=o.a,this.events={"click .settings__file-button-settings":"openDevicesSettings","click .settings__file-button-close":"closeFile"}}render(){super.render({name:this.model.name,deviceClassName:this.model.deviceClassName})}openDevicesSettings(){i.Events.emit("toggle-settings","devices")}closeFile(){this.appModel.closeFile(this.model)}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"SettingsFileView",(function(){return P}));var s=n(4),i=n.n(s),l=n(7),o=n(12),a=n(22),r=n(2),c=n(8),u=n(26),d=n(23),p=n(20),h=n(3),m=n(19),f=n(30),g=n(52),y=n(0),v=n(6),b=n(63),w=n(99),k=n(14),_=n(263),S=n.n(_);class P extends l.View{constructor(e,t){super(e,t),this.template=S.a,this.yubiKeys=[],this.events={"click .settings__file-button-save-default":"saveDefault","click .settings__file-button-save-choose":"toggleChooser","click .settings__file-button-close":"closeFile","click .settings__file-save-to-file":"saveToFile","click .settings__file-save-to-xml":"saveToXml","click .settings__file-save-to-html":"saveToHtml","click .settings__file-save-to-storage":"saveToStorage","change #settings__file-key-file":"keyFileChange","click #settings__file-file-select-link":"triggerSelectFile","change #settings__file-file-select":"fileSelected","focus #settings__file-master-pass":"focusMasterPass","input #settings__file-master-pass":"changeMasterPass","blur #settings__file-master-pass":"blurMasterPass","focus #settings__file-confirm-master-pass":"focusConfirmMasterPass","blur #settings__file-confirm-master-pass":"blurConfirmMasterPass","input #settings__file-name":"changeName","input #settings__file-def-user":"changeDefUser","change #settings__file-backup-enabled":"changeBackupEnabled","input #settings__file-backup-path":"changeBackupPath","change #settings__file-backup-storage":"changeBackupStorage","change #settings__file-backup-schedule":"changeBackupSchedule","click .settings__file-button-backup":"backupFile","change #settings__file-trash":"changeTrash","change #settings__file-hist-type":"changeHistoryMode","input #settings__file-hist-len":"changeHistoryLength","input #settings__file-hist-size":"changeHistorySize","change #settings__file-format-version":"changeFormatVersion","change #settings__file-kdf":"changeKdf","input #settings__file-key-rounds":"changeKeyRounds","input #settings__file-key-change-force":"changeKeyChangeForce","input .settings__input-kdf":"changeKdfParameter","change #settings__file-yubikey":"changeYubiKey"};const n=["syncing","syncError","syncDate"];for(const e of n)this.listenTo(this.model,"change:"+e,()=>{setTimeout(()=>this.render(),0)});this.refreshYubiKeys(!1)}render(){const e=[],t=this.model.storage;let n=!1;Object.keys(o.Storage).forEach(s=>{const i=o.Storage[s];!n&&i.backup&&i.enabled&&(n=!0),!i.system&&i.enabled&&e.push({name:i.name,icon:i.icon,iconSvg:i.iconSvg,own:s===t,backup:i.backup})}),e.sort((e,t)=>(e.uipos||1/0)-(t.uipos||1/0));const s=this.model.backup,i=this.model.chalResp?`${this.model.chalResp.serial}:${this.model.chalResp.slot}`:"",l=!!this.model.chalResp||r.Launcher&&h.AppSettingsModel.enableUsb&&h.AppSettingsModel.yubiKeyShowChalResp,c=[];if(l){for(const e of this.yubiKeys)for(const t of e.slots.filter(e=>e.valid))c.push({value:`${e.serial}:${t}`,fullName:e.fullName,vid:e.vid,pid:e.pid,serial:e.serial,slot:t.number});i&&!c.some(e=>e.value===i)&&c.push({value:i,fullName:"YubiKey "+this.model.chalResp.serial,vid:this.model.chalResp.vid,pid:this.model.chalResp.pid,serial:this.model.chalResp.serial,slot:this.model.chalResp.slot})}super.render({cmd:a.Shortcuts.actionShortcutSymbol(!0),supportFiles:!!r.Launcher,desktopLink:p.Links.Desktop,name:this.model.name,path:this.model.path,storage:this.model.storage,syncing:this.model.syncing,syncError:this.model.syncError,syncDate:m.DateFormat.dtStr(this.model.syncDate),password:g.PasswordPresenter.present(this.model.passwordLength),defaultUser:this.model.defaultUser,recycleBinEnabled:this.model.recycleBinEnabled,backupEnabled:s&&s.enabled,backupStorage:s&&s.storage,backupPath:s&&s.path||"Backups/{name}.{date}.bak".replace("{name}",this.model.name),backupSchedule:s?s.schedule:"1w",historyMaxItems:this.model.historyMaxItems,historyMaxSize:Math.round(this.model.historyMaxSize/1024/1024),formatVersion:this.model.formatVersion,kdfName:this.model.kdfName,keyEncryptionRounds:this.model.keyEncryptionRounds,keyChangeForce:this.model.keyChangeForce>0?this.model.keyChangeForce:null,kdfParameters:this.kdfParametersToUi(this.model.kdfParameters),storageProviders:e,canBackup:n,canSaveTo:h.AppSettingsModel.canSaveTo,canExportXml:h.AppSettingsModel.canExportXml,canExportHtml:h.AppSettingsModel.canExportHtml,showYubiKeyBlock:l,selectedYubiKey:i,yubiKeys:c}),this.model.created||(this.$el.find(".settings__file-master-pass-warning").toggle(this.model.passwordChanged),this.$el.find("#settings__file-master-pass-warning-text").text(y.Locale.setFilePassChanged)),this.renderKeyFileSelect()}kdfParametersToUi(e){return e?Object.assign({},e,{memory:Math.round(e.memory/1024)}):null}renderKeyFileSelect(){const t=this.model.keyFileName,n=this.model.oldKeyFileName,s=this.model.keyFileChanged,i=this.$el.find("#settings__file-key-file");if(i.empty(),t&&s){const n="Generated"!==t?y.Locale.setFileUseKeyFile+" "+t:y.Locale.setFileUseGenKeyFile;e("<option/>").val("ex").text(n).appendTo(i)}if(n){const t=s?y.Locale.setFileUseOldKeyFile:y.Locale.setFileUseKeyFile+" "+n;e("<option/>").val("old").text(t).appendTo(i)}e("<option/>").val("gen").text(y.Locale.setFileGenKeyFile).appendTo(i),e("<option/>").val("none").text(y.Locale.setFileDontUseKeyFile).appendTo(i),t&&s?i.val("ex"):t?n&&t===n&&!s&&i.val("old"):i.val("none")}validatePassword(e){return!!this.model.passwordLength||(c.Alerts.yesno({header:y.Locale.setFileEmptyPass,body:y.Locale.setFileEmptyPassBody,success:()=>{e()},cancel:()=>{this.$el.find("#settings__file-master-pass").focus()}}),!1)}save(e){if(e||(e={}),e.startedByUser=!0,!e.skipValidation){if(!this.validatePassword(()=>{e.skipValidation=!0,this.save(e)}))return}this.appModel.syncFile(this.model,e)}saveDefault(){this.save()}toggleChooser(){this.$el.find(".settings__file-save-choose").toggleClass("hide")}saveToFile(e){if(!0!==e&&!this.validatePassword(this.saveToFile.bind(this,!0)))return;const t=this.model.name+".kdbx";r.Launcher&&!this.model.storage?r.Launcher.getSaveFileName(t,e=>{e&&this.save({storage:"file",path:e})}):this.model.getData(e=>{if(e)if(r.Launcher)r.Launcher.getSaveFileName(t,t=>{t&&o.Storage.file.save(t,null,e,e=>{e&&c.Alerts.error({header:y.Locale.setFileSaveError,body:y.Locale.setFileSaveErrorBody+" "+t+":",pre:e})})});else{const n=new Blob([e],{type:"application/octet-stream"});b.FileSaver.saveAs(n,t)}})}saveToXml(){c.Alerts.yesno({header:y.Locale.setFileExportRaw,body:y.Locale.setFileExportRawBody,success:()=>{this.model.getXml(e=>{const t=new Blob([e],{type:"text/xml"});b.FileSaver.saveAs(t,this.model.name+".xml")})}})}saveToHtml(){c.Alerts.yesno({header:y.Locale.setFileExportRaw,body:y.Locale.setFileExportRawBody,success:()=>{this.model.getHtml(e=>{const t=new Blob([e],{type:"text/html"});b.FileSaver.saveAs(t,this.model.name+".html")})}})}saveToStorage(t){if(this.model.syncing||this.model.demo)return;const n=e(t.target).closest(".settings__file-save-to-storage").data("storage"),s=o.Storage[n];if(s)if(this.model.storage===n)this.save();else{if(!s.list){if(s.getOpenConfig){const e=Object.assign({id:s.name,name:y.Locale[s.name]||s.name,icon:s.icon,buttons:!1},s.getOpenConfig()),t=new w.OpenConfigView(e);c.Alerts.alert({header:"",body:"",icon:s.icon||"files-o",buttons:[c.Alerts.buttons.ok,c.Alerts.buttons.cancel],esc:"",opaque:!0,view:t,success:()=>{const e=t.getData();if(!e)return;const s=Object(k.omit)(e,["path","storage"]);s&&Object.keys(s).length&&(this.model.opts=s),this.save({storage:n,path:e.path,opts:s})}})}else c.Alerts.notImplemented();return}this.model.syncing=!0,s.list("",(e,t)=>{if(this.model.syncing=!1,e)return;const i=this.model.name.toLowerCase(),l=[...t].find(e=>!e.dir&&f.UrlFormat.getDataFileName(e.name).toLowerCase()===i);l?c.Alerts.yesno({header:y.Locale.setFileAlreadyExists,body:y.Locale.setFileAlreadyExistsBody.replace("{}",this.model.name),success:()=>{this.model.syncing=!0,s.remove(l.path,e=>{this.model.syncing=!1,e||this.save({storage:n})})}}):this.save({storage:n})})}}closeFile(){this.model.modified?c.Alerts.yesno({header:y.Locale.setFileUnsaved,body:y.Locale.setFileUnsavedBody,buttons:[{result:"close",title:y.Locale.setFileCloseNoSave,error:!0},{result:"",title:y.Locale.setFileDontClose}],success:e=>{"close"===e&&this.closeFileNoCheck()}}):this.closeFileNoCheck()}closeFileNoCheck(){this.appModel.closeFile(this.model)}keyFileChange(e){switch(e.target.value){case"old":this.selectOldKeyFile();break;case"gen":this.generateKeyFile();break;case"none":this.clearKeyFile()}}selectOldKeyFile(){this.model.resetKeyFile(),this.renderKeyFileSelect()}generateKeyFile(){const e=this.model.generateAndSetKeyFile(),t=new Blob([e],{type:"application/octet-stream"});b.FileSaver.saveAs(t,this.model.name+".key"),this.renderKeyFileSelect()}clearKeyFile(){this.model.removeKeyFile(),this.renderKeyFileSelect()}triggerSelectFile(){this.$el.find("#settings__file-file-select").click()}fileSelected(e){const t=e.target.files[0],n=new FileReader;n.onload=e=>{const n=e.target.result;this.model.setKeyFile(n,t.name),this.renderKeyFileSelect()},n.readAsArrayBuffer(t)}focusMasterPass(e){e.target.value="",e.target.setAttribute("type","text"),this.model.passwordChanged=!1}changeMasterPass(e){e.target.value?(this.$el.find("#settings__file-confirm-master-pass-group").show(),this.$el.find("#settings__file-master-pass-warning-text").text(y.Locale.setFilePassChange),this.model.created||this.$el.find(".settings__file-master-pass-warning").show()):(this.model.resetPassword(),this.$el.find(".settings__file-master-pass-warning").hide())}blurMasterPass(e){e.target.value||(this.model.resetPassword(),this.resetConfirmMasterPass(),e.target.value=g.PasswordPresenter.present(this.model.passwordLength),this.$el.find(".settings__file-master-pass-warning").hide()),e.target.setAttribute("type","password")}resetConfirmMasterPass(){this.$el.find("#settings__file-confirm-master-pass").val(""),this.$el.find("#settings__file-confirm-master-pass-group").hide(),this.$el.find("#settings__file-master-pass-warning-text").text(y.Locale.setFilePassChange)}focusConfirmMasterPass(e){e.target.value="",e.target.setAttribute("type","text")}blurConfirmMasterPass(e){e.target.setAttribute("type","password");const t=this.$el.find("#settings__file-master-pass").val(),n=e.target.value;t===n?(this.$el.find("#settings__file-master-pass-warning-text").text(y.Locale.setFilePassChanged),this.$el.find(".settings__file-confirm-master-pass-warning").hide(),this.model.setPassword(i.a.ProtectedValue.fromString(n))):(this.$el.find("#settings__file-master-pass-warning-text").text(y.Locale.setFilePassChange),this.$el.find(".settings__file-confirm-master-pass-warning").show(),this.model.resetPassword())}changeName(t){const n=e.trim(t.target.value);n&&this.model.setName(n)}changeDefUser(t){const n=e.trim(t.target.value);this.model.setDefaultUser(n)}changeBackupEnabled(e){const t=e.target.checked;let n=this.model.backup;if(!n){n={enabled:t,schedule:"1w"};const e="Backups/{name}.{date}.bak".replace("{name}",this.model.name);r.Launcher?(n.storage="file",n.path=r.Launcher.getDocumentsPath(e)):(n.storage="dropbox",n.path=e),this.$el.find("#settings__file-backup-storage").val(n.storage),this.$el.find("#settings__file-backup-path").val(n.path)}this.$el.find(".settings__file-backups").toggleClass("hide",!t),n.enabled=t,this.setBackup(n)}changeBackupPath(e){const t=this.model.backup;t.path=e.target.value.trim(),this.setBackup(t)}changeBackupStorage(e){const t=this.model.backup;t.storage=e.target.value,this.setBackup(t)}changeBackupSchedule(e){const t=this.model.backup;t.schedule=e.target.value,this.setBackup(t)}setBackup(e){this.model.backup=e,this.appModel.setFileBackup(this.model.id,e)}backupFile(){if(this.backupInProgress)return;const e=this.$el.find(".settings__file-button-backup");e.text(y.Locale.setFileBackupNowWorking),this.model.getData(t=>{if(!t)return this.backupInProgress=!1,void e.text(y.Locale.setFileBackupNow);this.appModel.backupFile(this.model,t,t=>{if(this.backupInProgress=!1,e.text(y.Locale.setFileBackupNow),t){let e="",n="";t.isDir?(e=y.Locale.setFileBackupErrorIsDir,n=y.Locale.setFileBackupErrorIsDirDescription):(e=y.Locale.setFileBackupError,n=y.Locale.setFileBackupErrorDescription),c.Alerts.error({title:e,body:n,pre:t.toString()})}})})}changeTrash(e){this.model.setRecycleBinEnabled(e.target.checked)}changeHistoryLength(e){if(!e.target.validity.valid)return;const t=+e.target.value;isNaN(t)?e.target.value=this.model.historyMaxItems:this.model.setHistoryMaxItems(t)}changeHistoryMode(e){let t=+e.target.value;t>0&&(t=10),this.model.setHistoryMaxItems(t),this.render()}changeHistorySize(e){if(!e.target.validity.valid)return;const t=+e.target.value;isNaN(t)?e.target.value=this.model.historyMaxSize/1024/1024:this.model.setHistoryMaxSize(1024*t*1024)}changeFormatVersion(e){const t=+e.target.value;this.model.setFormatVersion(t),this.render()}changeKdf(e){this.model.setKdf(e.target.value),this.render()}changeKeyRounds(e){if(!e.target.validity.valid)return;const t=+e.target.value;isNaN(t)?e.target.value=this.model.keyEncryptionRounds:this.model.setKeyEncryptionRounds(t)}changeKeyChangeForce(e){if(!e.target.validity.valid)return;let t=Math.round(e.target.value);(isNaN(t)||t<=0)&&(t=-1),this.model.setKeyChange(!0,t)}changeKdfParameter(t){if(!t.target.validity.valid)return;const n=e(t.target).data("field"),s=e(t.target).data("mul")||1,i=t.target.value*s;isNaN(i)?t.target.value=Math.round(this.model.kdfParameters[n]/s):i>0&&this.model.setKdfParameter(n,i)}refreshYubiKeys(e){r.Launcher&&h.AppSettingsModel.enableUsb&&h.AppSettingsModel.yubiKeyShowChalResp&&(d.UsbListener.attachedYubiKeys||this.yubiKeys.length&&(this.yubiKeys=[],this.render()),u.YubiKey.list((t,n)=>{t||this.removed||(this.yubiKeys=n,this.render(),e&&d.UsbListener.attachedYubiKeys&&!n.length&&v.Features.isMac&&c.Alerts.error({body:y.Locale.setFileYubiKeyErrorEmptyMac}))}))}changeYubiKey(e){let t=null;const n=e.target.value;if("refresh"===n)return this.render(),void this.refreshYubiKeys(!0);if(n){const n=e.target.selectedOptions[0],s=+n.dataset.vid,i=+n.dataset.pid,l=+n.dataset.serial,o=+n.dataset.slot;t={vid:s,pid:i,serial:l,slot:o}}c.Alerts.yesno({header:y.Locale.setFileYubiKeyHeader,body:y.Locale.setFileYubiKeyBody,success:()=>{this.model.setChallengeResponse(t)},cancel:()=>{this.render()}})}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"SettingsGeneralView",(function(){return P}));var s=n(1),i=n(7),l=n(29),o=n(12),a=n(21),r=n(51),c=n(2),u=n(25),d=n(8),p=n(20),h=n(3),m=n(13),f=n(46),g=n(6),y=n(19),v=n(0),b=n(104),w=n(105),k=n(14),_=n(266),S=n.n(_);class P extends i.View{constructor(e,t){super(e,t),this.template=S.a,this.events={"change .settings__general-theme":"changeTheme","change .settings__general-locale":"changeLocale","change .settings__general-font-size":"changeFontSize","change .settings__general-expand":"changeExpandGroups","change .settings__general-auto-update":"changeAutoUpdate","change .settings__general-idle-minutes":"changeIdleMinutes","change .settings__general-clipboard":"changeClipboard","change .settings__general-auto-save":"changeAutoSave","change .settings__general-auto-save-interval":"changeAutoSaveInterval","change .settings__general-remember-key-files":"changeRememberKeyFiles","change .settings__general-minimize":"changeMinimize","change .settings__general-lock-on-minimize":"changeLockOnMinimize","change .settings__general-lock-on-copy":"changeLockOnCopy","change .settings__general-lock-on-auto-type":"changeLockOnAutoType","change .settings__general-lock-on-os-lock":"changeLockOnOsLock","change .settings__general-table-view":"changeTableView","change .settings__general-colorful-icons":"changeColorfulIcons","change .settings__general-use-markdown":"changeUseMarkdown","change .settings__general-use-group-icon-for-entries":"changeUseGroupIconForEntries","change .settings__general-direct-autotype":"changeDirectAutotype","change .settings__general-field-label-dblclick-autotype":"changeFieldLabelDblClickAutoType","change .settings__general-titlebar-style":"changeTitlebarStyle","click .settings__general-update-btn":"checkUpdate","click .settings__general-restart-btn":"restartApp","click .settings__general-download-update-btn":"downloadUpdate","click .settings__general-update-found-btn":"installFoundUpdate","change .settings__general-prv-check":"changeStorageEnabled","click .settings__general-prv-logout":"logoutFromStorage","click .settings__general-show-advanced":"showAdvancedSettings","click .settings__general-dev-tools-link":"openDevTools","click .settings__general-try-beta-link":"tryBeta","click .settings__general-show-logs-link":"showLogs","click .settings__general-reload-app-link":"reloadApp"},this.listenTo(m.UpdateModel,"change:status",this.render),this.listenTo(m.UpdateModel,"change:updateStatus",this.render)}render(){const e="ready"===m.UpdateModel.updateStatus,t="found"===m.UpdateModel.updateStatus,n=m.UpdateModel.updateManual,s=this.getStorageProviders();super.render({themes:Object(k.mapObject)(u.SettingsManager.allThemes,e=>v.Locale[e]),activeTheme:u.SettingsManager.activeTheme,locales:u.SettingsManager.allLocales,activeLocale:u.SettingsManager.activeLocale,fontSize:h.AppSettingsModel.fontSize,expandGroups:h.AppSettingsModel.expandGroups,canClearClipboard:!!c.Launcher,clipboardSeconds:h.AppSettingsModel.clipboardSeconds,rememberKeyFiles:h.AppSettingsModel.rememberKeyFiles,supportFiles:!!c.Launcher,autoSave:h.AppSettingsModel.autoSave,autoSaveInterval:h.AppSettingsModel.autoSaveInterval,idleMinutes:h.AppSettingsModel.idleMinutes,minimizeOnClose:h.AppSettingsModel.minimizeOnClose,devTools:c.Launcher&&c.Launcher.devTools,canAutoUpdate:r.Updater.enabled,canAutoSaveOnClose:!!c.Launcher,canMinimize:!!c.Launcher,canDetectMinimize:!!c.Launcher,canDetectOsSleep:c.Launcher&&c.Launcher.canDetectOsSleep(),canAutoType:l.AutoType.enabled,lockOnMinimize:c.Launcher&&h.AppSettingsModel.lockOnMinimize,lockOnCopy:h.AppSettingsModel.lockOnCopy,lockOnAutoType:h.AppSettingsModel.lockOnAutoType,lockOnOsLock:h.AppSettingsModel.lockOnOsLock,tableView:h.AppSettingsModel.tableView,canSetTableView:!g.Features.isMobile,autoUpdate:r.Updater.getAutoUpdateType(),updateInProgress:r.Updater.updateInProgress(),updateInfo:this.getUpdateInfo(),updateWaitingReload:e&&!c.Launcher,showUpdateBlock:r.Updater.enabled&&!n,updateReady:e,updateFound:t,updateManual:n,releaseNotesLink:p.Links.ReleaseNotes,colorfulIcons:h.AppSettingsModel.colorfulIcons,useMarkdown:h.AppSettingsModel.useMarkdown,useGroupIconForEntries:h.AppSettingsModel.useGroupIconForEntries,directAutotype:h.AppSettingsModel.directAutotype,fieldLabelDblClickAutoType:h.AppSettingsModel.fieldLabelDblClickAutoType,supportsTitleBarStyles:c.Launcher&&g.Features.supportsTitleBarStyles(),titlebarStyle:h.AppSettingsModel.titlebarStyle,storageProviders:s,showReloadApp:g.Features.isStandalone}),this.renderProviderViews(s)}renderProviderViews(e){e.forEach((function(e){if(this.views[e.name]&&this.views[e.name].remove(),e.hasConfig){const t=new w.SettingsPrvView(e,{parent:this.$el.find(".settings__general-"+e.name)[0]});this.views[e.name]=t,t.render()}}),this)}getUpdateInfo(){switch(m.UpdateModel.status){case"checking":return v.Locale.setGenUpdateChecking+"...";case"error":{let e=v.Locale.setGenErrorChecking;return m.UpdateModel.lastError&&(e+=": "+m.UpdateModel.lastError),m.UpdateModel.lastSuccessCheckDate&&(e+=". "+v.Locale.setGenLastCheckSuccess.replace("{}",y.DateFormat.dtStr(m.UpdateModel.lastSuccessCheckDate))+": "+v.Locale.setGenLastCheckVer.replace("{}",m.UpdateModel.lastVersion)),e}case"ok":{let e=v.Locale.setGenCheckedAt+" "+y.DateFormat.dtStr(m.UpdateModel.lastCheckDate)+": ";switch(e+=f.SemVer.compareVersions(a.RuntimeInfo.version,m.UpdateModel.lastVersion)>=0?v.Locale.setGenLatestVer:v.Locale.setGenNewVer.replace("{}",m.UpdateModel.lastVersion)+" "+y.DateFormat.dStr(m.UpdateModel.lastVersionReleaseDate),m.UpdateModel.updateStatus){case"downloading":return e+". "+v.Locale.setGenDownloadingUpdate;case"extracting":return e+". "+v.Locale.setGenExtractingUpdate;case"error":return e+". "+v.Locale.setGenCheckErr}return e}default:return v.Locale.setGenNeverChecked}}getStorageProviders(){const e=[];return Object.keys(o.Storage).forEach(t=>{const n=o.Storage[t];n.system||e.push(n)}),e.sort((e,t)=>(e.uipos||1/0)-(t.uipos||1/0)),e.map(e=>({name:e.name,enabled:e.enabled,hasConfig:!!e.getSettingsConfig,loggedIn:e.loggedIn}))}changeTheme(e){const t=e.target.value;h.AppSettingsModel.theme=t}changeLocale(e){const t=e.target.value;if("..."===t)return e.target.value=h.AppSettingsModel.locale||"en",void this.appModel.menu.select({item:this.appModel.menu.pluginsSection.items[0]});h.AppSettingsModel.locale=t}changeFontSize(e){const t=+e.target.value;h.AppSettingsModel.fontSize=t}changeTitlebarStyle(e){const t=e.target.value;h.AppSettingsModel.titlebarStyle=t}changeClipboard(e){const t=+e.target.value;h.AppSettingsModel.clipboardSeconds=t}changeIdleMinutes(e){const t=+e.target.value;h.AppSettingsModel.idleMinutes=t}changeAutoUpdate(e){const t=e.target.value||!1;h.AppSettingsModel.autoUpdate=t,t&&r.Updater.scheduleNextCheck()}checkUpdate(){r.Updater.check(!0)}changeAutoSave(e){const t=e.target.checked||!1;h.AppSettingsModel.autoSave=t}changeAutoSaveInterval(e){const t=Number(e.target.value)||0;h.AppSettingsModel.autoSaveInterval=t}changeRememberKeyFiles(e){const t=e.target.value||!1;h.AppSettingsModel.rememberKeyFiles=t,this.appModel.clearStoredKeyFiles()}changeMinimize(e){const t=e.target.checked||!1;h.AppSettingsModel.minimizeOnClose=t}changeLockOnMinimize(e){const t=e.target.checked||!1;h.AppSettingsModel.lockOnMinimize=t}changeLockOnCopy(e){const t=e.target.checked||!1;h.AppSettingsModel.lockOnCopy=t}changeLockOnAutoType(e){const t=e.target.checked||!1;h.AppSettingsModel.lockOnAutoType=t}changeLockOnOsLock(e){const t=e.target.checked||!1;h.AppSettingsModel.lockOnOsLock=t}changeTableView(e){const t=e.target.checked||!1;h.AppSettingsModel.tableView=t,s.Events.emit("refresh")}changeColorfulIcons(e){const t=e.target.checked||!1;h.AppSettingsModel.colorfulIcons=t,s.Events.emit("refresh")}changeUseMarkdown(e){const t=e.target.checked||!1;h.AppSettingsModel.useMarkdown=t,s.Events.emit("refresh")}changeUseGroupIconForEntries(e){const t=e.target.checked||!1;h.AppSettingsModel.useGroupIconForEntries=t,s.Events.emit("refresh")}changeDirectAutotype(e){const t=e.target.checked||!1;h.AppSettingsModel.directAutotype=t,s.Events.emit("refresh")}changeFieldLabelDblClickAutoType(e){const t=e.target.checked||!1;h.AppSettingsModel.fieldLabelDblClickAutoType=t,s.Events.emit("refresh")}restartApp(){c.Launcher?c.Launcher.requestRestart():window.location.reload()}downloadUpdate(){c.Launcher.openLink(p.Links.Desktop)}installFoundUpdate(){r.Updater.update(!0,()=>{c.Launcher.requestRestart()})}changeExpandGroups(e){const t=e.target.checked;h.AppSettingsModel.expandGroups=t,s.Events.emit("refresh")}changeStorageEnabled(t){const n=o.Storage[e(t.target).data("storage")];n&&(n.setEnabled(t.target.checked),h.AppSettingsModel[n.name]=n.enabled,this.$el.find(".settings__general-"+n.name).toggleClass("hide",!t.target.checked))}logoutFromStorage(t){const n=o.Storage[e(t.target).data("storage")];n&&(n.logout(),e(t.target).remove())}showAdvancedSettings(){this.$el.find(".settings__general-show-advanced, .settings__general-advanced").toggleClass("hide"),this.scrollToBottom()}openDevTools(){c.Launcher&&c.Launcher.openDevTools()}tryBeta(){this.appModel.files.hasUnsavedFiles()?d.Alerts.info({header:v.Locale.setGenTryBetaWarning,body:v.Locale.setGenTryBetaWarningBody}):location.href=p.Links.BetaWebApp}showLogs(){this.views.logView&&this.views.logView.remove(),this.views.logView=new b.SettingsLogsView,this.views.logView.render(),this.scrollToBottom()}reloadApp(){location.reload()}scrollToBottom(){this.$el.closest(".scroller").scrollTop(this.$el.height())}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),n.d(t,"SettingsHelpView",(function(){return c}));var s=n(7),i=n(21),l=n(20),o=n(2),a=n(267),r=n.n(a);class c extends s.View{constructor(...e){super(...e),this.template=r.a}render(){const e="KeeWeb v"+i.RuntimeInfo.version+" ("+i.RuntimeInfo.commit+", "+i.RuntimeInfo.buildDate+")\nEnvironment: "+(o.Launcher?o.Launcher.name+" v"+o.Launcher.version:"web")+"\nUser-Agent: "+navigator.userAgent;super.render({issueLink:l.Links.Repo+"/issues/new?body="+encodeURIComponent("!please describe your issue here!\n\n"+e),desktopLink:l.Links.Desktop,webAppLink:l.Links.WebApp,appInfo:e})}}},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"SettingsPluginsView",(function(){return b}));var s=n(7),i=n(1),l=n(21),o=n(2),a=n(25),r=n(20),c=n(3),u=n(49),d=n(34),p=n(32),h=n(46),m=n(6),f=n(19),g=n(0),y=n(268),v=n.n(y);class b extends s.View{constructor(e,t){super(e,t),this.template=v.a,this.events={"click .settings_plugins-install-btn":"installClick","click .settings_plugins-uninstall-btn":"uninstallClick","click .settings_plugins-disable-btn":"disableClick","click .settings_plugins-enable-btn":"enableClick","click .settings_plugins-update-btn":"updateClick","click .settings_plugins-use-locale-btn":"useLocaleClick","click .settings_plugins-use-theme-btn":"useThemeClick","click .settings__plugins-gallery-plugin-install-btn":"galleryInstallClick","input .settings__plugins-gallery-search":"gallerySearchInput","change select.settings__plugins-plugin-input":"pluginSettingChange","change input[type=checkbox].settings__plugins-plugin-input":"pluginSettingChange","input input[type=text].settings__plugins-plugin-input":"pluginSettingChange","change .settings__plugins-plugin-updates":"autoUpdateChange","click .settings__plugins-gallery-load-btn":"loadPluginGalleryClick"},this.searchStr=null,this.installFromUrl=null,this.installing={},this.installErrors={},this.listenTo(d.PluginManager,"change",this.render.bind(this)),this.listenTo(i.Events,"plugin-gallery-load-complete",this.pluginGalleryLoadComplete.bind(this))}render(){super.render({plugins:d.PluginManager.plugins.map(e=>({id:e.id,manifest:e.manifest,status:e.status,installTime:Math.round(e.installTime),updateError:e.updateError,updateCheckDate:f.DateFormat.dtStr(e.updateCheckDate),installError:e.installError,official:e.official,autoUpdate:e.autoUpdate,settings:e.getSettings()})).sort(p.Comparators.stringComparator("id",!0)),installingFromUrl:this.installFromUrl&&!this.installFromUrl.error,installUrl:this.installFromUrl?this.installFromUrl.url:null,installUrlError:this.installFromUrl?this.installFromUrl.error:null,galleryLoading:u.PluginGallery.loading,galleryLoadError:u.PluginGallery.loadError,galleryPlugins:this.getGalleryPlugins(),searchStr:this.searchStr,hasUnicodeFlags:m.Features.hasUnicodeFlags(),pluginDevLink:r.Links.PluginDevelopStart,translateLink:r.Links.Translation}),this.searchStr&&this.showFilterResults()}pluginGalleryLoadComplete(){this.render(),i.Events.emit("page-geometry",{source:"view"})}getGalleryPlugins(){if(!u.PluginGallery.gallery)return null;const e=d.PluginManager.plugins;return u.PluginGallery.gallery.plugins.map(e=>({url:e.url,manifest:e.manifest,installing:this.installing[e.url],installError:this.installErrors[e.url],official:e.official})).filter(t=>!e.get(t.manifest.name)&&this.canInstallPlugin(t)).sort((e,t)=>e.manifest.name.localeCompare(t.manifest.name))}canInstallPlugin(e){return(!e.manifest.locale||!a.SettingsManager.allLocales[e.manifest.locale.name])&&(!(e.manifest.desktop&&!o.Launcher)&&(!(e.manifest.versionMin&&h.SemVer.compareVersions(e.manifest.versionMin,l.RuntimeInfo.version)>0)&&!(e.manifest.versionMax&&h.SemVer.compareVersions(e.manifest.versionMax,l.RuntimeInfo.version)>0)))}loadPluginGalleryClick(){u.PluginGallery.loading||(u.PluginGallery.loadPlugins(),this.render())}installClick(){const e=this.$el.find(".settings_plugins-install-btn"),t=this.$el.find("#settings__plugins-install-url");this.$el.find(".settings__plugins-install-error").empty();const n=t.val().trim();n&&(t.prop("disabled",!0),e.text(g.Locale.setPlInstallBtnProgress+"...").prop("disabled",!0),this.installFromUrl={url:n},d.PluginManager.install(n,void 0,!0).then(()=>{this.installFinished(),this.installFromUrl=null,this.render(),this.$el.closest(".scroller").scrollTop(0)}).catch(e=>{this.installFinished(),this.installFromUrl.error=e,this.$el.find(".settings__plugins-install-error").text(e.toString()),this.$el.closest(".scroller").scrollTop(this.$el.height())}))}installFinished(){const e=this.$el.find(".settings_plugins-install-btn");this.$el.find("#settings__plugins-install-url").prop("disabled",!1),e.text(g.Locale.setPlInstallBtn).prop("disabled",!1)}uninstallClick(t){const n=e(t.target).data("plugin");d.PluginManager.uninstall(n)}disableClick(t){const n=e(t.target).data("plugin");d.PluginManager.disable(n)}enableClick(t){const n=e(t.target).data("plugin");d.PluginManager.activate(n)}updateClick(t){const n=e(t.target).data("plugin");d.PluginManager.update(n)}useLocaleClick(t){const n=e(t.target).data("locale");c.AppSettingsModel.locale=n}useThemeClick(t){const n=e(t.target).data("theme");c.AppSettingsModel.theme=n}galleryInstallClick(t){const n=e(t.target),s=n.data("plugin"),i=u.PluginGallery.gallery.plugins.find(e=>e.manifest.name===s);n.text(g.Locale.setPlInstallBtnProgress+"...").prop("disabled",!0),this.installing[i.url]=!0,delete this.installErrors[i.url],d.PluginManager.install(i.url,i.manifest).catch(e=>{this.installErrors[i.url]=e,delete this.installing[i.url],this.render()}).then(()=>{n.prop("disabled",!0),delete this.installing[i.url]})}gallerySearchInput(e){this.searchStr=e.target.value.toLowerCase(),this.showFilterResults()}showFilterResults(){const t={};for(const e of u.PluginGallery.gallery.plugins)t[e.manifest.name]=e;for(const n of e(".settings__plugins-gallery-plugin",this.$el)){const s=n.dataset.plugin,i=this.pluginMatchesFilter(t[s]);e(n).toggle(i)}}pluginMatchesFilter(e){const t=this.searchStr,n=e.manifest;return!!(!t||n.name.toLowerCase().indexOf(t)>=0||n.description&&n.description.toLowerCase().indexOf(t)>=0||n.locale&&(n.locale.name.toLowerCase().indexOf(t)>=0||n.locale.title.toLowerCase().indexOf(t)>=0))}pluginSettingChange(t){const n=t.target,s=e(n).closest(".settings__plugins-plugin-setting"),i=s.data("setting"),l=s.data("plugin"),o="checkbox"===n.type?n.checked:n.value;d.PluginManager.getPlugin(l).setSettings({[i]:o})}autoUpdateChange(t){const n=e(t.target).data("plugin"),s=t.target.checked;d.PluginManager.setAutoUpdate(n,s)}}}.call(this,n(17))},function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"SettingsShortcutsView",(function(){return d}));var s=n(7),i=n(22),l=n(2),o=n(5),a=n(6),r=n(0),c=n(269),u=n.n(c);class d extends s.View{constructor(...e){super(...e),this.template=u.a,this.systemShortcuts=["Meta+A","Alt+A","Alt+C","Alt+D","Meta+F","Meta+C","Meta+B","Meta+U","Meta+T","Alt+N","Meta+O","Meta+S","Meta+G","Meta+,","Meta+L"],this.events={"click button.shortcut":"shortcutClick"}}render(){super.render({cmd:i.Shortcuts.actionShortcutSymbol(!0),alt:i.Shortcuts.altShortcutSymbol(!0),globalIsLarge:!a.Features.isMac,autoTypeSupported:!!l.Launcher,globalShortcuts:l.Launcher?{autoType:i.Shortcuts.globalShortcutText("autoType",!0),copyPassword:i.Shortcuts.globalShortcutText("copyPassword",!0),copyUser:i.Shortcuts.globalShortcutText("copyUser",!0),copyUrl:i.Shortcuts.globalShortcutText("copyUrl",!0),copyOtp:i.Shortcuts.globalShortcutText("copyOtp",!0),restoreApp:i.Shortcuts.globalShortcutText("restoreApp",!0)}:void 0})}shortcutClick(t){const n=t.target.dataset.shortcut,s=e(`.shortcut__editor[data-shortcut=${n}]`);if(s.length)return void s.remove();const l=e("<div/>").addClass("shortcut__editor").attr("data-shortcut",n);e("<div/>").text(r.Locale.setShEdit).appendTo(l);const c=e("<input/>").addClass("shortcut__editor-input").val(i.Shortcuts.globalShortcutText(n)).appendTo(l);a.Features.isMac||c.addClass("shortcut__editor-input--large"),l.insertAfter(e(t.target).parent()),c.focus(),c.on("keypress",e=>e.preventDefault()),c.on("keydown",e=>{if(e.preventDefault(),e.stopImmediatePropagation(),e.which===o.Keys.DOM_VK_DELETE||e.which===o.Keys.DOM_VK_BACK_SPACE)return i.Shortcuts.setGlobalShortcut(n,void 0),void this.render();if(e.which===o.Keys.DOM_VK_ESCAPE)return void c.blur();const t=i.Shortcuts.keyEventToShortcut(e),s=i.Shortcuts.presentShortcut(t.value);c.val(s);const l=this.systemShortcuts.includes(t.text);c.toggleClass("input--error",l),t.valid&&!l&&(i.Shortcuts.setGlobalShortcut(n,t.value),this.render())})}}}.call(this,n(17))},,,,,,,,,,,,function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"modal--opaque"},3:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <i class="modal__icon fa fa-'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"icon")||(null!=t?o(t,"icon"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"icon",hash:{},data:i,loc:{start:{line:4,column:40},end:{line:4,column:48}}}):l)+'"></i>\n'},5:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"iconSvg"):t,{name:"if",hash:{},fn:e.program(6,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:8},end:{line:7,column:8}}}))?l:""},6:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+(null!=(l=o(n,"svg").call(null!=t?t:e.nullContext||{},null!=t?o(t,"iconSvg"):t,"modal__icon modal__icon--svg",{name:"svg",hash:{},data:i,loc:{start:{line:6,column:12},end:{line:6,column:60}}}))?l:"")+"\n "},8:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+e.escapeExpression(e.lambda(l[0][0],t))+"\n "+(null!=(o=a(n,"unless").call(null!=t?t:e.nullContext||{},i&&a(i,"last"),{name:"unless",hash:{},fn:e.program(9,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:12,column:16},end:{line:12,column:49}}}))?o:"")+"\n"},9:function(e,t,n,s,i){return"<br/>"},11:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<pre class="modal__pre">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"pre")||(null!=t?o(t,"pre"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"pre",hash:{},data:i,loc:{start:{line:14,column:47},end:{line:14,column:54}}}):l)+"</pre>"},13:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<p class="muted-color">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"hint")||(null!=t?o(t,"hint"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"hint",hash:{},data:i,loc:{start:{line:15,column:47},end:{line:15,column:55}}}):l)+"</p>"},15:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="modal__check-wrap"><input type="checkbox" id="modal__check" /><label for="modal__check">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"checkbox")||(null!=t?o(t,"checkbox"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"checkbox",hash:{},data:i,loc:{start:{line:17,column:112},end:{line:17,column:124}}}):l)+"</label></div>\n"},17:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="'+(null!=(o=u(n,"unless").call(a,null!=(o=l[0][0])?u(o,"result"):o,{name:"unless",hash:{},fn:e.program(18,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:22,column:31},end:{line:22,column:73}}}))?o:"")+" "+(null!=(o=u(n,"if").call(a,null!=(o=l[0][0])?u(o,"error"):o,{name:"if",hash:{},fn:e.program(18,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:22,column:74},end:{line:22,column:107}}}))?o:"")+" "+(null!=(o=u(n,"if").call(a,null!=(o=l[0][0])?u(o,"silent"):o,{name:"if",hash:{},fn:e.program(20,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:22,column:108},end:{line:22,column:143}}}))?o:"")+'"\n data-result="'+c(r(null!=(o=l[0][0])?u(o,"result"):o,t))+'">'+c(r(null!=(o=l[0][0])?u(o,"title"):o,t))+"</button>\n"},18:function(e,t,n,s,i){return"btn-error"},20:function(e,t,n,s,i){return"btn-silent"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="modal modal--hidden '+(null!=(o=c(n,"if").call(r,null!=t?c(t,"opaque"):t,{name:"if",hash:{},fn:e.program(1,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:1,column:32},end:{line:1,column:66}}}))?o:"")+'">\n <div class="modal__content">\n'+(null!=(o=c(n,"if").call(r,null!=t?c(t,"icon"):t,{name:"if",hash:{},fn:e.program(3,i,0,l),inverse:e.program(5,i,0,l),data:i,blockParams:l,loc:{start:{line:3,column:8},end:{line:7,column:15}}}))?o:"")+' <div class="modal__header">'+e.escapeExpression("function"==typeof(a=null!=(a=c(n,"header")||(null!=t?c(t,"header"):t))?a:e.hooks.helperMissing)?a.call(r,{name:"header",hash:{},data:i,blockParams:l,loc:{start:{line:8,column:35},end:{line:8,column:45}}}):a)+'</div>\n <div class="modal__body">\n'+(null!=(o=c(n,"each").call(r,null!=t?c(t,"body"):t,{name:"each",hash:{},fn:e.program(8,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:10,column:12},end:{line:13,column:21}}}))?o:"")+" "+(null!=(o=c(n,"if").call(r,null!=t?c(t,"pre"):t,{name:"if",hash:{},fn:e.program(11,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:14,column:12},end:{line:14,column:67}}}))?o:"")+"\n "+(null!=(o=c(n,"if").call(r,null!=t?c(t,"hint"):t,{name:"if",hash:{},fn:e.program(13,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:15,column:12},end:{line:15,column:66}}}))?o:"")+"\n"+(null!=(o=c(n,"if").call(r,null!=t?c(t,"checkbox"):t,{name:"if",hash:{},fn:e.program(15,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:12},end:{line:18,column:19}}}))?o:"")+' </div>\n <div class="modal__buttons">\n'+(null!=(o=c(n,"each").call(r,null!=t?c(t,"buttons"):t,{name:"each",hash:{},fn:e.program(17,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:21,column:12},end:{line:24,column:21}}}))?o:"")+" </div>\n </div>\n</div>\n"},useData:!0,useBlockParams:!0})},function(e,t){e.exports="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"},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="dropdown__item '+(null!=(o=u(n,"if").call(a,null!=(o=l[0][0])?u(o,"active"):o,{name:"if",hash:{},fn:e.program(2,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:3,column:31},end:{line:3,column:81}}}))?o:"")+'" data-value="'+c(r(null!=(o=l[0][0])?u(o,"value"):o,t))+'">\n <i class="fa fa-'+c(r(null!=(o=l[0][0])?u(o,"icon"):o,t))+' dropdown__item-icon"></i>\n <span class="dropdown__item-text">\n '+c(r(null!=(o=l[0][0])?u(o,"text"):o,t))+(null!=(o=u(n,"if").call(a,null!=(o=l[0][0])?u(o,"hint"):o,{name:"if",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:7,column:12},end:{line:9,column:21}}}))?o:"")+"</span>\n </div>\n"},2:function(e,t,n,s,i){return"dropdown__item--active"},4:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'&nbsp;<span class="muted-color">'+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"hint"):o,t))+"</span>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="dropdown">\n'+(null!=(o=a(n,"each").call(null!=t?t:e.nullContext||{},null!=t?a(t,"options"):t,{name:"each",hash:{},fn:e.program(1,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:2,column:4},end:{line:12,column:13}}}))?o:"")+"</div>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="at-select__header-filter" id="at-select__header-filter">\n <input type="text" readonly value="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"filterText")||(null!=t?o(t,"filterText"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"filterText",hash:{},data:i,loc:{start:{line:12,column:47},end:{line:12,column:61}}}):l)+'" class="at-select__header-filter-input" />\n <i class="at-select__header-filter-clear fa fa-times"></i>\n </div>\n'},3:function(e,t,n,s,i){var l,o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <table class="at-select__table">'+(null!=(l="function"==typeof(o=null!=(o=a(n,"itemsHtml")||(null!=t?a(t,"itemsHtml"):t))?o:e.hooks.helperMissing)?o.call(null!=t?t:e.nullContext||{},{name:"itemsHtml",hash:{},data:i,loc:{start:{line:23,column:48},end:{line:23,column:63}}}):o)?l:"")+"</table>\n"},5:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <h1 class="at-select__empty-title muted-color">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"autoTypeNoMatches",{name:"res",hash:{},data:i,loc:{start:{line:25,column:63},end:{line:25,column:90}}}))+"</h1>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u="function",d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="at-select">\n <div class="at-select__header">\n <h1 class="at-select__header-text">'+r(d(n,"res").call(a,"autoTypeHeader",{name:"res",hash:{},data:i,loc:{start:{line:3,column:43},end:{line:3,column:67}}}))+'</h1>\n <div class="at-select__hint" id="at-select__hint">\n <div class="at-select__hint-text"><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"keyEnter")||(null!=t?d(t,"keyEnter"):t))?o:c)===u?o.call(a,{name:"keyEnter",hash:{},data:i,loc:{start:{line:5,column:69},end:{line:5,column:81}}}):o)+"</span>: "+r(d(n,"res").call(a,"autoTypeSelectionHint",{name:"res",hash:{},data:i,loc:{start:{line:5,column:90},end:{line:5,column:121}}}))+'</div>\n <div class="at-select__hint-text"><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"actionSymbol")||(null!=t?d(t,"actionSymbol"):t))?o:c)===u?o.call(a,{name:"actionSymbol",hash:{},data:i,loc:{start:{line:6,column:69},end:{line:6,column:85}}}):o)+" "+r(typeof(o=null!=(o=d(n,"keyEnter")||(null!=t?d(t,"keyEnter"):t))?o:c)===u?o.call(a,{name:"keyEnter",hash:{},data:i,loc:{start:{line:6,column:86},end:{line:6,column:98}}}):o)+"</span>: "+r(d(n,"res").call(a,"autoTypeSelectionHintAction",{name:"res",hash:{},data:i,loc:{start:{line:6,column:107},end:{line:6,column:144}}}))+'</div>\n <div class="at-select__hint-text"><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"altSymbol")||(null!=t?d(t,"altSymbol"):t))?o:c)===u?o.call(a,{name:"altSymbol",hash:{},data:i,loc:{start:{line:7,column:69},end:{line:7,column:82}}}):o)+" "+r(typeof(o=null!=(o=d(n,"keyEnter")||(null!=t?d(t,"keyEnter"):t))?o:c)===u?o.call(a,{name:"keyEnter",hash:{},data:i,loc:{start:{line:7,column:83},end:{line:7,column:95}}}):o)+"</span>: "+r(d(n,"res").call(a,"autoTypeSelectionHintOpt",{name:"res",hash:{},data:i,loc:{start:{line:7,column:104},end:{line:7,column:138}}}))+'</div>\n <div class="at-select__hint-text"><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"shiftSymbol")||(null!=t?d(t,"shiftSymbol"):t))?o:c)===u?o.call(a,{name:"shiftSymbol",hash:{},data:i,loc:{start:{line:8,column:69},end:{line:8,column:84}}}):o)+" "+r(typeof(o=null!=(o=d(n,"keyEnter")||(null!=t?d(t,"keyEnter"):t))?o:c)===u?o.call(a,{name:"keyEnter",hash:{},data:i,loc:{start:{line:8,column:85},end:{line:8,column:97}}}):o)+"</span>: "+r(d(n,"res").call(a,"autoTypeSelectionHintShift",{name:"res",hash:{},data:i,loc:{start:{line:8,column:106},end:{line:8,column:142}}}))+"</div>\n </div>\n"+(null!=(l=d(n,"if").call(a,null!=t?d(t,"filterText"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:10,column:8},end:{line:15,column:15}}}))?l:"")+' </div>\n <div class="at-select__message">\n <div class="at-select__message-text">'+r(typeof(o=null!=(o=d(n,"topMessage")||(null!=t?d(t,"topMessage"):t))?o:c)===u?o.call(a,{name:"topMessage",hash:{},data:i,loc:{start:{line:18,column:45},end:{line:18,column:59}}}):o)+'</div>\n </div>\n <div class="at-select__items">\n <div class="scroller">\n'+(null!=(l=d(n,"if").call(a,null!=t?d(t,"itemsHtml"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.program(5,i,0),data:i,loc:{start:{line:22,column:12},end:{line:26,column:19}}}))?l:"")+' </div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n </div>\n</div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"at-select__item--active"},3:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<img src="'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"customIcon")||(null!=t?r(t,"customIcon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"customIcon",hash:{},data:i,loc:{start:{line:5,column:22},end:{line:5,column:36}}}):o)+'" class="at-select__item-icon at-select__item-icon--custom '+(null!=(l=r(n,"if").call(a,null!=t?r(t,"color"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:95},end:{line:5,column:124}}}))?l:"")+'" />'},4:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"color")||(null!=t?o(t,"color"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"color",hash:{},data:i,loc:{start:{line:5,column:108},end:{line:5,column:117}}}):l)},6:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa fa-'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"icon")||(null!=t?r(t,"icon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"icon",hash:{},data:i,loc:{start:{line:7,column:28},end:{line:7,column:36}}}):o)+" "+(null!=(l=r(n,"if").call(a,null!=t?r(t,"color"):t,{name:"if",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:7,column:37},end:{line:7,column:72}}}))?l:"")+' at-select__item-icon"></i>'},7:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"color")||(null!=t?o(t,"color"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"color",hash:{},data:i,loc:{start:{line:7,column:50},end:{line:7,column:59}}}):l)+"-color"},9:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"title")||(null!=t?o(t,"title"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"title",hash:{},data:i,loc:{start:{line:10,column:21},end:{line:10,column:30}}}):l)},11:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"("+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"noTitle",{name:"res",hash:{},data:i,loc:{start:{line:10,column:39},end:{line:10,column:56}}}))+")"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<tr class="at-select__item '+(null!=(l=u(n,"if").call(a,null!=t?u(t,"active"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:27},end:{line:1,column:71}}}))?l:"")+'" data-id="'+c("function"==typeof(o=null!=(o=u(n,"id")||(null!=t?u(t,"id"):t))?o:r)?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:1,column:82},end:{line:1,column:88}}}):o)+'"\n id="at-select__item--'+c("function"==typeof(o=null!=(o=u(n,"id")||(null!=t?u(t,"id"):t))?o:r)?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:2,column:25},end:{line:2,column:31}}}):o)+'">\n <td>'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"customIcon"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.program(6,i,0),data:i,loc:{start:{line:4,column:8},end:{line:8,column:17}}}))?l:"")+"</td>\n <td>"+(null!=(l=u(n,"if").call(a,null!=t?u(t,"title"):t,{name:"if",hash:{},fn:e.program(9,i,0),inverse:e.program(11,i,0),data:i,loc:{start:{line:10,column:8},end:{line:10,column:64}}}))?l:"")+"</td>\n <td>"+c("function"==typeof(o=null!=(o=u(n,"user")||(null!=t?u(t,"user"):t))?o:r)?o.call(a,{name:"user",hash:{},data:i,loc:{start:{line:11,column:8},end:{line:11,column:16}}}):o)+"</td>\n <td>"+c("function"==typeof(o=null!=(o=u(n,"url")||(null!=t?u(t,"url"):t))?o:r)?o.call(a,{name:"url",hash:{},data:i,loc:{start:{line:12,column:8},end:{line:12,column:15}}}):o)+'</td>\n <td class="at-select__item-options">\n <i class="fa fa-ellipsis-h"></i>\n </td>\n</tr>\n'},useData:!0})},,function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l=null!=t?t:e.nullContext||{},o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="details__field details__field--editable details__field--no-select">\n <div class="details__field-label">'+o(a(n,"res").call(l,"detMore",{name:"res",hash:{},data:i,loc:{start:{line:2,column:38},end:{line:2,column:55}}}))+'&hellip;</div>\n <div class="details__field-value">\n <div class="details__field-value-add-label">'+o(a(n,"res").call(l,"detClickToAddField",{name:"res",hash:{},data:i,loc:{start:{line:4,column:52},end:{line:4,column:80}}}))+"</div>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__attachment-preview-buttons">\n <button class="btn-silent details__attachment-preview-download-btn">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detAttSave",{name:"res",hash:{},data:i,loc:{start:{line:9,column:80},end:{line:9,column:100}}}))+"</button>\n </div>\n"},3:function(e,t,n,s,i){var l=null!=t?t:e.nullContext||{},o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__attachment-preview-download-text">'+o(a(n,"res").call(l,"detAttDownload",{name:"res",hash:{},data:i,loc:{start:{line:12,column:63},end:{line:12,column:87}}}))+'\n &nbsp;<span class="details__attachment-preview-download-text-shortcut"></span>'+o(a(n,"res").call(l,"detAttDelToRemove",{name:"res",hash:{},data:i,loc:{start:{line:13,column:90},end:{line:13,column:117}}}))+"</div>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="details__attachment-preview">\n <div class="details__subview-close">\n <i class="fa fa-chevron-left details__subview-close-pre"></i>'+e.escapeExpression(a(n,"res").call(o,"detHistoryReturn",{name:"res",hash:{},data:i,loc:{start:{line:3,column:69},end:{line:3,column:95}}}))+' <i class="fa fa-external-link-square details__subview-close-post"></i>\n </div>\n <div class="details__attachment-preview-data"></div>\n <i class="fa details__attachment-preview-icon"></i>\n'+(null!=(l=a(n,"if").call(o,null!=t?a(t,"isMobile"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.program(3,i,0),data:i,loc:{start:{line:7,column:4},end:{line:14,column:11}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"<a>^^ (ctrl)</a>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="auto-type-hint">\n <a href="'+c("function"==typeof(o=null!=(o=u(n,"link")||(null!=t?u(t,"link"):t))?o:r)?o.call(a,{name:"link",hash:{},data:i,loc:{start:{line:2,column:13},end:{line:2,column:21}}}):o)+'" class="auto-type-hint__link-details" target="_blank">'+c(u(n,"res").call(a,"autoTypeLink",{name:"res",hash:{},data:i,loc:{start:{line:2,column:76},end:{line:2,column:98}}}))+'</a>\n <div class="auto-type-hint__block">\n <div>'+c(u(n,"res").call(a,"autoTypeEntryFields",{name:"res",hash:{},data:i,loc:{start:{line:4,column:13},end:{line:4,column:42}}}))+':</div>\n <a>{TITLE}</a><a>{USERNAME}</a><a>{URL}</a><a>{PASSWORD}</a><a>{NOTES}</a><a>{GROUP}</a>\n <a>{TOTP}</a><a>{S:Custom Field Name}</a>\n </div>\n <div class="auto-type-hint__block">\n <div>'+c(u(n,"res").call(a,"autoTypeModifiers",{name:"res",hash:{},data:i,loc:{start:{line:9,column:13},end:{line:9,column:40}}}))+":</div>\n <a>+ (shift)</a><a>% (alt)</a><a>^ ("+c("function"==typeof(o=null!=(o=u(n,"cmd")||(null!=t?u(t,"cmd"):t))?o:r)?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:10,column:44},end:{line:10,column:51}}}):o)+")</a>"+(null!=(l=u(n,"if").call(a,null!=t?u(t,"hasCtrl"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:10,column:56},end:{line:10,column:94}}}))?l:"")+'\n </div>\n <div class="auto-type-hint__block">\n <div>'+c(u(n,"res").call(a,"autoTypeKeys",{name:"res",hash:{},data:i,loc:{start:{line:13,column:13},end:{line:13,column:35}}}))+":</div>\n <a>{TAB}</a><a>{ENTER}</a><a>{SPACE}</a><a>{UP}</a><a>{DOWN}</a><a>{LEFT}</a><a>{RIGHT}</a><a>{HOME}</a><a>{END}</a>\n <a>{+}</a><a>{%}</a><a>{^}</a><a>{~}</a><a>{(}</a><a>{)}</a><a>{[}</a><a>{]}</a><a>{{}</a><a>{}}</a>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"checked"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="details__auto-type">\n <div class="details__field">\n <div class="details__field-label">'+r(u(n,"res").call(a,"detAutoType",{name:"res",hash:{},data:i,loc:{start:{line:3,column:42},end:{line:3,column:63}}}))+'</div>\n <div class="details__field-value">\n <input type="checkbox" class="input-base" id="details__auto-type-enabled" '+(null!=(l=u(n,"if").call(a,null!=t?u(t,"enabled"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:86},end:{line:5,column:115}}}))?l:"")+' />\n <label for="details__auto-type-enabled">'+r(u(n,"res").call(a,"detAutoTypeEnabled",{name:"res",hash:{},data:i,loc:{start:{line:6,column:52},end:{line:6,column:80}}}))+'</label>\n </div>\n </div>\n <div class="details__field">\n <div class="details__field-label">'+r(u(n,"res").call(a,"detAutoTypeSequence",{name:"res",hash:{},data:i,loc:{start:{line:10,column:42},end:{line:10,column:71}}}))+'</div>\n <div class="details__field-value">\n <input type="text" id="details__auto-type-sequence" maxlength="1024"\n value="'+r("function"==typeof(o=null!=(o=u(n,"sequence")||(null!=t?u(t,"sequence"):t))?o:c)?o.call(a,{name:"sequence",hash:{},data:i,loc:{start:{line:13,column:26},end:{line:13,column:38}}}):o)+'" placeholder="'+r("function"==typeof(o=null!=(o=u(n,"defaultSequence")||(null!=t?u(t,"defaultSequence"):t))?o:c)?o.call(a,{name:"defaultSequence",hash:{},data:i,loc:{start:{line:13,column:53},end:{line:13,column:72}}}):o)+'" />\n </div>\n </div>\n <div class="details__field">\n <div class="details__field-label">'+r(u(n,"res").call(a,"detAutoTypeInput",{name:"res",hash:{},data:i,loc:{start:{line:17,column:42},end:{line:17,column:68}}}))+'</div>\n <div class="details__field-value">\n <input type="checkbox" class="input-base" id="details__auto-type-obfuscation" '+(null!=(l=u(n,"if").call(a,null!=t?u(t,"obfuscation"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:19,column:90},end:{line:19,column:123}}}))?l:"")+' />\n <label for="details__auto-type-obfuscation">'+r(u(n,"res").call(a,"detAutoTypeObfuscation",{name:"res",hash:{},data:i,loc:{start:{line:20,column:56},end:{line:20,column:88}}}))+'</label>\n </div>\n </div>\n <div class="details__field">\n <div class="details__field-label">'+r(u(n,"res").call(a,"shortcuts",{name:"res",hash:{},data:i,loc:{start:{line:24,column:42},end:{line:24,column:61}}}))+'</div>\n <div class="details__field-value">'+r("function"==typeof(o=null!=(o=u(n,"detAutoTypeShortcutsDesc")||(null!=t?u(t,"detAutoTypeShortcutsDesc"):t))?o:c)?o.call(a,{name:"detAutoTypeShortcutsDesc",hash:{},data:i,loc:{start:{line:25,column:42},end:{line:25,column:70}}}):o)+"</div>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" details__field--"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"cls")||(null!=t?o(t,"cls"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"cls",hash:{},data:i,loc:{start:{line:2,column:33},end:{line:2,column:40}}}):l)},3:function(e,t,n,s,i){return" details__field--editable"},5:function(e,t,n,s,i){return" details__field--multiline"},7:function(e,t,n,s,i){return" details__field--can-edit-title"},9:function(e,t,n,s,i){return" details__field--protect"},11:function(e,t,n,s,i){return" details__field--options"},13:function(e,t,n,s,i){return'<i class="details__field-options fa fa-chevron-down"></i>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="details__field'+(null!=(l=r(n,"if").call(a,null!=t?r(t,"cls"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:2,column:4},end:{line:2,column:48}}}))?l:"")+(null!=(l=r(n,"if").call(a,null!=t?r(t,"editable"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:3,column:4},end:{line:3,column:54}}}))?l:"")+(null!=(l=r(n,"if").call(a,null!=t?r(t,"multiline"):t,{name:"if",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:4},end:{line:4,column:56}}}))?l:"")+(null!=(l=r(n,"if").call(a,null!=t?r(t,"canEditTitle"):t,{name:"if",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:4},end:{line:5,column:64}}}))?l:"")+(null!=(l=r(n,"if").call(a,null!=t?r(t,"protect"):t,{name:"if",hash:{},fn:e.program(9,i,0),inverse:e.noop,data:i,loc:{start:{line:6,column:4},end:{line:6,column:52}}}))?l:"")+(null!=(l=r(n,"if").call(a,null!=t?r(t,"hasOptions"):t,{name:"if",hash:{},fn:e.program(11,i,0),inverse:e.noop,data:i,loc:{start:{line:7,column:4},end:{line:7,column:55}}}))?l:"")+'">\n <div class="details__field-label" draggable="true">'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"title")||(null!=t?r(t,"title"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"title",hash:{},data:i,loc:{start:{line:9,column:55},end:{line:9,column:64}}}):o)+'</div>\n <div class="details__field-value">\n </div>\n '+(null!=(l=r(n,"if").call(a,null!=t?r(t,"hasOptions"):t,{name:"if",hash:{},fn:e.program(13,i,0),inverse:e.noop,data:i,loc:{start:{line:12,column:4},end:{line:12,column:86}}}))?l:"")+"\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l=null!=t?t:e.nullContext||{},o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="details__history">\n <div class="details__subview-close">\n <i class="fa fa-chevron-left details__subview-close-pre"></i>'+o(a(n,"res").call(l,"detHistoryReturn",{name:"res",hash:{},data:i,loc:{start:{line:3,column:69},end:{line:3,column:95}}}))+' <i class="fa fa-external-link-square details__subview-close-post"></i>\n </div>\n <div class="details__history-desc muted-color">'+o(a(n,"res").call(l,"detHistoryClickPoint",{name:"res",hash:{},data:i,loc:{start:{line:5,column:51},end:{line:5,column:81}}}))+'</div>\n <div class="details__history-top">\n <div class="details__history-timeline">\n <div class="details__history-timeline-axis"></div>\n <div class="details__history-arrow-prev"><i class="fa fa-long-arrow-left"></i></div>\n <div class="details__history-arrow-next"><i class="fa fa-long-arrow-right"></i></div>\n </div>\n </div>\n <div class="details__history-body">\n <div class="details__field">\n <div class="details__field-label">'+o((a(n,"Res")||t&&a(t,"Res")||e.hooks.helperMissing).call(l,"title",{name:"Res",hash:{},data:i,loc:{start:{line:15,column:46},end:{line:15,column:61}}}))+'</div>\n <div class="details__field-value"><i class="fa fa-key"></i> </div>\n </div>\n </div>\n <div class="details__history-buttons">\n <button class="details__history-button details__history-button-revert btn-silent">'+o(a(n,"res").call(l,"detHistoryRevert",{name:"res",hash:{},data:i,loc:{start:{line:20,column:90},end:{line:20,column:116}}}))+'</button>\n <button class="details__history-button details__history-button-delete btn-error">'+o(a(n,"res").call(l,"detHistoryDel",{name:"res",hash:{},data:i,loc:{start:{line:21,column:89},end:{line:21,column:112}}}))+'</button>\n <button class="details__history-button details__history-button-discard btn-error">'+o(a(n,"res").call(l,"discardChanges",{name:"res",hash:{},data:i,loc:{start:{line:22,column:90},end:{line:22,column:114}}}))+"</button>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <input type="checkbox" id="gen__check-hide" class="gen__check-hide" '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"hide"):t,{name:"if",hash:{},fn:e.program(2,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:80},end:{line:5,column:106}}}))?l:"")+'>\n <label for="gen__check-hide" class="fa gen__top-btn gen__check-hide-label"\n'+(null!=(l=a(n,"if").call(o,null!=t?a(t,"hide"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.program(6,i,0),data:i,loc:{start:{line:7,column:16},end:{line:11,column:23}}}))?l:"")+" > </label>\n"},2:function(e,t,n,s,i){return"checked"},4:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"genShowPass",{name:"res",hash:{},data:i,loc:{start:{line:8,column:27},end:{line:8,column:48}}}))+'"\n'},6:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"genHidePass",{name:"res",hash:{},data:i,loc:{start:{line:10,column:27},end:{line:10,column:48}}}))+'"\n'},8:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+c(r(null!=(a=l[0][0])?u(a,"name"):a,t))+'" '+(null!=(a=u(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=(a=l[0][0])?u(a,"name"):a,null!=o[1]?u(o[1],"preset"):o[1],{name:"ifeq",hash:{},fn:e.program(9,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:40},end:{line:17,column:84}}}))?a:"")+">"+c(r(null!=(a=l[0][0])?u(a,"title"):a,t))+"</option>\n"},9:function(e,t,n,s,i){return"selected"},11:function(e,t,n,s,i){return' <option value="...">...</option>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.escapeExpression,d=e.lambda,p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="gen">\n <div>'+u(p(n,"res").call(c,"genLen",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:2,column:9},end:{line:2,column:25}}}))+': <span class="gen__length-range-val">'+u(d(null!=(a=null!=t?p(t,"opt"):t)?p(a,"length"):a,t))+'</span>\n <i class="fa fa-refresh gen__btn-refresh gen__top-btn" title="'+u(p(n,"res").call(c,"genNewPass",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:3,column:70},end:{line:3,column:90}}}))+'"></i>\n'+(null!=(a=p(n,"unless").call(c,null!=t?p(t,"showToggleButton"):t,{name:"unless",hash:{},fn:e.program(1,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:4,column:8},end:{line:13,column:19}}}))?a:"")+' </div>\n <select class="gen__sel-tpl input-base">\n'+(null!=(a=p(n,"each").call(c,null!=t?p(t,"presets"):t,{name:"each",hash:{},fn:e.program(8,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:8},end:{line:18,column:17}}}))?a:"")+(null!=(a=p(n,"if").call(c,null!=t?p(t,"showTemplateEditor"):t,{name:"if",hash:{},fn:e.program(11,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:19,column:8},end:{line:21,column:15}}}))?a:"")+' </select>\n <input type="range" class="gen__length-range" value="'+u(d(null!=(a=null!=t?p(t,"opt"):t)?p(a,"pseudoLength"):a,t))+'" min="0" max="25" />\n <div>\n <div class="gen__check"><input type="checkbox" id="gen__check-upper"\n data-id="upper" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"upper"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:26,column:28},end:{line:26,column:59}}}))?a:"")+'><label for="gen__check-upper">ABC</label></div>\n <div class="gen__check"><input type="checkbox" id="gen__check-lower"\n data-id="lower" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"lower"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:28,column:28},end:{line:28,column:59}}}))?a:"")+'><label for="gen__check-lower">abc</label></div>\n <div class="gen__check"><input type="checkbox" id="gen__check-digits"\n data-id="digits" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"digits"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:30,column:29},end:{line:30,column:61}}}))?a:"")+'><label for="gen__check-digits">123</label></div>\n <div class="gen__check"><input type="checkbox" id="gen__check-special"\n data-id="special" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"special"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:32,column:30},end:{line:32,column:63}}}))?a:"")+'><label for="gen__check-special">!@#</label></div>\n <div class="gen__check"><input type="checkbox" id="gen__check-brackets"\n data-id="brackets" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"brackets"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:34,column:31},end:{line:34,column:65}}}))?a:"")+'><label for="gen__check-brackets">({&lt;</label></div>\n <div class="gen__check"><input type="checkbox" id="gen__check-high"\n data-id="high" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"high"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:36,column:27},end:{line:36,column:57}}}))?a:"")+'><label for="gen__check-high">äæ±</label></div>\n <div class="gen__check"><input type="checkbox" id="gen__check-ambiguous"\n data-id="ambiguous" '+(null!=(a=p(n,"if").call(c,null!=(a=null!=t?p(t,"opt"):t)?p(a,"ambiguous"):a,{name:"if",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:38,column:32},end:{line:38,column:67}}}))?a:"")+'><label for="gen__check-ambiguous">0Oo</label></div>\n </div>\n <div class="gen__result"></div>\n <div class="gen__btn-wrap"><button class="gen__btn-ok">'+u("function"==typeof(r=null!=(r=p(n,"btnTitle")||(null!=t?p(t,"btnTitle"):t))?r:e.hooks.helperMissing)?r.call(c,{name:"btnTitle",hash:{},data:i,blockParams:l,loc:{start:{line:41,column:59},end:{line:41,column:71}}}):r)+"</button></div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l,o){var a,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__field-autocomplete-item '+(null!=(a=r(n,"ifeq").call(null!=t?t:e.nullContext||{},i&&r(i,"index"),null!=o[1]?r(o[1],"selectedIx"):o[1],{name:"ifeq",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,loc:{start:{line:2,column:49},end:{line:2,column:130}}}))?a:"")+'">\n '+e.escapeExpression(e.lambda(l[0][0],t))+"\n </div>\n"},2:function(e,t,n,s,i){return"details__field-autocomplete-item--selected"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(a=r(n,"each").call(null!=t?t:e.nullContext||{},null!=t?r(t,"completions"):t,{name:"each",hash:{},fn:e.program(1,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:1,column:0},end:{line:5,column:9}}}))?a:""},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l){return'<div class="details__field-autocomplete-item">'+e.escapeExpression(e.lambda(l[0][0],t))+"</div>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"each").call(null!=t?t:e.nullContext||{},null!=t?a(t,"tags"):t,{name:"each",hash:{},fn:e.program(1,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:1,column:0},end:{line:5,column:11}}}))?o:""},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <i class="fa fa-'+c(r(l[0][0],t))+" icon-select__icon "+(null!=(a=u(n,"ifeq").call(null!=t?t:e.nullContext||{},l[0][1],null!=o[1]?u(o[1],"sel"):o[1],{name:"ifeq",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:4,column:51},end:{line:4,column:104}}}))?a:"")+'" data-val="'+c(r(l[0][1],t))+'"></i>\n'},2:function(e,t,n,s,i){return"icon-select__icon--active"},4:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <span class="icon-select__icon icon-select__icon-btn icon-select__icon-download"\n data-val="special" data-special="download" title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"iconFavTitle",{name:"res",hash:{},data:i,loc:{start:{line:11,column:64},end:{line:11,column:86}}}))+'">\n <i class="fa fa-cloud-download"></i>\n </span>\n'},6:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <span class="icon-select__icon icon-select__icon-btn icon-select__icon-custom '+(null!=(a=u(n,"ifeq").call(null!=t?t:e.nullContext||{},l[0][1],null!=o[1]?u(o[1],"sel"):o[1],{name:"ifeq",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:20,column:86},end:{line:20,column:139}}}))?a:"")+'"\n data-val="'+c(r(l[0][1],t))+'">\n <img src="'+c(r(l[0][0],t))+'" />\n </span>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="icon-select">\n <div class="icon-select__items">\n'+(null!=(a=c(n,"each").call(r,null!=t?c(t,"icons"):t,{name:"each",hash:{},fn:e.program(1,i,2,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:3,column:8},end:{line:5,column:17}}}))?a:"")+' </div>\n <div class="icon-select__items icon-select__items--custom">\n <input type="file" class="icon-select__file-input hide-by-pos" accept="image/*" />\n'+(null!=(a=c(n,"if").call(r,null!=t?c(t,"canDownloadFavicon"):t,{name:"if",hash:{},fn:e.program(4,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:9,column:8},end:{line:14,column:15}}}))?a:"")+' <span class="icon-select__icon icon-select__icon-btn icon-select__icon-select"\n data-val="special" data-special="select" title="'+e.escapeExpression(c(n,"res").call(r,"iconSelCustom",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:16,column:62},end:{line:16,column:85}}}))+'">\n <i class="fa fa-ellipsis-h"></i>\n </span>\n'+(null!=(a=c(n,"each").call(r,null!=t?c(t,"customIcons"):t,{name:"each",hash:{},fn:e.program(6,i,2,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:19,column:8},end:{line:24,column:17}}}))?a:"")+" </div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detSetIconColor",{name:"res",hash:{},data:i,loc:{start:{line:8,column:23},end:{line:8,column:48}}}))+'" tip-placement="left"\n'},3:function(e,t,n,s,i){return' <span class="details__colors-popup">\n <span class="details__colors-popup-item yellow-color fa fa-bookmark-o" data-color="yellow"></span>\n <span class="details__colors-popup-item green-color fa fa-bookmark-o" data-color="green"></span>\n <span class="details__colors-popup-item red-color fa fa-bookmark-o" data-color="red"></span>\n <span class="details__colors-popup-item orange-color fa fa-bookmark-o" data-color="orange"></span>\n <span class="details__colors-popup-item blue-color fa fa-bookmark-o" data-color="blue"></span>\n <span class="details__colors-popup-item violet-color fa fa-bookmark-o" data-color="violet"></span>\n </span>\n'},5:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"title")||(null!=t?o(t,"title"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"title",hash:{},data:i,loc:{start:{line:22,column:55},end:{line:22,column:64}}}):l)},7:function(e,t,n,s,i){return"(no title)"},9:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__header-icon details__header-icon--icon"\n '+(null!=(l=r(n,"unless").call(a,null!=t?r(t,"readOnly"):t,{name:"unless",hash:{},fn:e.program(10,i,0),inverse:e.noop,data:i,loc:{start:{line:25,column:13},end:{line:25,column:72}}}))?l:"")+'\n >\n <img class="details__header-icon-img" src="'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"customIcon")||(null!=t?r(t,"customIcon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"customIcon",hash:{},data:i,loc:{start:{line:27,column:55},end:{line:27,column:69}}}):o)+'" />\n </div>\n'},10:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detSetIcon",{name:"res",hash:{},data:i,loc:{start:{line:25,column:40},end:{line:25,column:60}}}))+'"'},12:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <i class="details__header-icon fa fa-'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"icon")||(null!=t?r(t,"icon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"icon",hash:{},data:i,loc:{start:{line:30,column:45},end:{line:30,column:53}}}):o)+'"\n '+(null!=(l=r(n,"unless").call(a,null!=t?r(t,"readOnly"):t,{name:"unless",hash:{},fn:e.program(10,i,0),inverse:e.noop,data:i,loc:{start:{line:31,column:11},end:{line:31,column:70}}}))?l:"")+"\n ></i>\n"},14:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__buttons">\n'+(null!=(o=r(n,"if").call(a,null!=t?r(t,"deleted"):t,{name:"if",hash:{},fn:e.program(15,i,0,l),inverse:e.program(17,i,0,l),data:i,blockParams:l,loc:{start:{line:47,column:12},end:{line:51,column:21}}}))?o:"")+'<div class="details__attachments">\n <input type="file" class="details__attachment-input-file hide-by-pos" multiple />\n'+(null!=(o=r(n,"ifneq").call(a,null!=(o=null!=t?r(t,"attachments"):t)?r(o,"length"):o,0,{name:"ifneq",hash:{},fn:e.program(19,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:54,column:16},end:{line:58,column:26}}}))?o:"")+(null!=(o=r(n,"each").call(a,null!=t?r(t,"attachments"):t,{name:"each",hash:{},fn:e.program(21,i,2,l),inverse:e.program(23,i,0,l),data:i,blockParams:l,loc:{start:{line:59,column:16},end:{line:65,column:25}}}))?o:"")+" </div>\n </div>\n"},15:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="details__buttons-trash-del fa fa-minus-circle" title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detDelEntryPerm",{name:"res",hash:{},data:i,loc:{start:{line:48,column:80},end:{line:48,column:105}}}))+'" tip-placement="top"></i>'},17:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="details__buttons-trash fa fa-trash-o" title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detDelEntry",{name:"res",hash:{},data:i,loc:{start:{line:50,column:71},end:{line:50,column:92}}}))+'" tip-placement="top"></i>'},19:function(e,t,n,s,i){return' <div class="details__attachment-add">\n <i class="fa fa-paperclip"></i>\n </div>\n'},21:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__attachment" data-id="'+r(a(l[0][1],t))+'"><i class="fa fa-'+r(a(null!=(o=l[0][0])?c(o,"icon"):o,t))+'"></i> '+r(a(null!=(o=l[0][0])?c(o,"title"):o,t))+"</div>\n"},23:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="details__attachment-add">\n <span class="details__attachment-add-title">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detDropAttachments",{name:"res",hash:{},data:i,loc:{start:{line:63,column:68},end:{line:63,column:96}}}))+'</span> <i class="fa fa-paperclip"></i>\n </div>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="details">\n <div class="details__back-button">\n <i class="fa fa-chevron-left"></i>'+r(c(n,"res").call(a,"detBackToList",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:3,column:42},end:{line:3,column:65}}}))+'\n </div>\n <div class="details__header">\n <i class="details__header-color fa fa-bookmark-o"\n'+(null!=(o=c(n,"unless").call(a,null!=t?c(t,"readOnly"):t,{name:"unless",hash:{},fn:e.program(1,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:7,column:12},end:{line:9,column:23}}}))?o:"")+" >\n"+(null!=(o=c(n,"unless").call(a,null!=t?c(t,"readOnly"):t,{name:"unless",hash:{},fn:e.program(3,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:11,column:12},end:{line:20,column:23}}}))?o:"")+' </i>\n <h1 class="details__header-title">'+(null!=(o=c(n,"if").call(a,null!=t?c(t,"title"):t,{name:"if",hash:{},fn:e.program(5,i,0,l),inverse:e.program(7,i,0,l),data:i,blockParams:l,loc:{start:{line:22,column:42},end:{line:22,column:89}}}))?o:"")+"</h1>\n"+(null!=(o=c(n,"if").call(a,null!=t?c(t,"customIcon"):t,{name:"if",hash:{},fn:e.program(9,i,0,l),inverse:e.program(12,i,0,l),data:i,blockParams:l,loc:{start:{line:23,column:8},end:{line:33,column:15}}}))?o:"")+' </div>\n <div class="details__body">\n <div class="scroller">\n <div class="details__body-fields">\n </div>\n <div class="details__body-aside">\n </div>\n <div class="details__body-after"></div>\n </div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n </div>\n'+(null!=(o=c(n,"unless").call(a,null!=t?c(t,"readOnly"):t,{name:"unless",hash:{},fn:e.program(14,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:45,column:4},end:{line:68,column:15}}}))?o:"")+' <div class="details__dropzone">\n <i class="fa fa-paperclip muted-color details__dropzone-icon"></i>\n <h1 class="muted-color details__dropzone-header">'+r(c(n,"res").call(a,"detDropAttachments",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:71,column:57},end:{line:71,column:85}}}))+"</h1>\n </div>\n</div>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="empty-block muted-color">\n <h1 class="empty-block__title">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detEmpty",{name:"res",hash:{},data:i,loc:{start:{line:2,column:35},end:{line:2,column:53}}}))+"</h1>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="empty-block muted-color">\n <h1 class="empty-block__title">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"detGroupRestore",{name:"res",hash:{},data:i,loc:{start:{line:2,column:35},end:{line:2,column:60}}}))+'</h1>\n <div class="empty-block__lower-btns">\n <i class="details__buttons-trash-del fa fa-minus-circle"></i>\n </div>\n</div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="drag-handle__inner drag-handle__inner--'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"coord")||(null!=t?o(t,"coord"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"coord",hash:{},data:i,loc:{start:{line:1,column:51},end:{line:1,column:60}}}):l)+'"></div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="footer__db footer__db-item '+(null!=(o=u(n,"unless").call(a,null!=(o=l[0][0])?u(o,"active"):o,{name:"unless",hash:{},fn:e.program(2,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:3,column:43},end:{line:3,column:95}}}))?o:"")+'"\n data-file-id="'+c(r(null!=(o=l[0][0])?u(o,"id"):o,t))+'" id="footer__db--'+c(r(null!=(o=l[0][0])?u(o,"id"):o,t))+'">\n <i class="fa fa-'+(null!=(o=u(n,"if").call(a,null!=(o=l[0][0])?u(o,"active"):o,{name:"if",hash:{},fn:e.program(4,i,0,l),inverse:e.program(6,i,0,l),data:i,blockParams:l,loc:{start:{line:5,column:24},end:{line:5,column:68}}}))?o:"")+'"></i> '+c(r(null!=(o=l[0][0])?u(o,"name"):o,t))+"\n"+(null!=(o=u(n,"if").call(a,null!=(o=l[0][0])?u(o,"syncing"):o,{name:"if",hash:{},fn:e.program(8,i,0,l),inverse:e.program(10,i,0,l),data:i,blockParams:l,loc:{start:{line:6,column:8},end:{line:13,column:16}}}))?o:"")+" </div>\n"},2:function(e,t,n,s,i){return"footer__db--dimmed"},4:function(e,t,n,s,i){return"unlock"},6:function(e,t,n,s,i){return"lock"},8:function(e,t,n,s,i){return'<i class="fa fa-refresh fa-spin footer__db-sign"></i>'},10:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=l[1][0])?a(o,"syncError"):o,{name:"if",hash:{},fn:e.program(11,i,0,l),inverse:e.program(16,i,0,l),data:i,blockParams:l,loc:{start:{line:8,column:8},end:{line:13,column:8}}}))?o:""},11:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa '+(null!=(o=c(n,"if").call(a,null!=(o=l[2][0])?c(o,"modified"):o,{name:"if",hash:{},fn:e.program(12,i,0,l),inverse:e.program(14,i,0,l),data:i,blockParams:l,loc:{start:{line:9,column:25},end:{line:9,column:84}}}))?o:"")+' footer__db-sign footer__db-sign--error"\n title="'+r(c(n,"res").call(a,"footerSyncError",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:10,column:22},end:{line:10,column:47}}}))+": "+r(e.lambda(null!=(o=l[2][0])?c(o,"syncError"):o,t))+'"></i>'},12:function(e,t,n,s,i){return"fa-circle"},14:function(e,t,n,s,i){return"fa-circle-thin"},16:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=l[2][0])?a(o,"modified"):o,{name:"if",hash:{},fn:e.program(17,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:11,column:8},end:{line:13,column:8}}}))?o:""},17:function(e,t,n,s,i){return'<i class="fa fa-circle footer__db-sign"></i>'},19:function(e,t,n,s,i){return' <i class="fa fa-bell footer__update-icon"></i>\n'},21:function(e,t,n,s,i){return' <i class="fa fa-cog"></i>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="footer">\n'+(null!=(o=c(n,"each").call(a,null!=t?c(t,"files"):t,{name:"each",hash:{},fn:e.program(1,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:2,column:4},end:{line:15,column:13}}}))?o:"")+' <div class="footer__db footer__db--dimmed footer__db--expanded footer__db-open" id="footer__db-open">\n <i class="fa fa-plus"></i><span class="footer__db-text">&nbsp;'+r(c(n,"res").call(a,"footerOpen",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:17,column:70},end:{line:17,column:90}}}))+'</span>\n </div>\n <div class="footer__btn footer__btn-help" title="'+r(c(n,"res").call(a,"help",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:19,column:53},end:{line:19,column:67}}}))+'" tip-placement="top" id="footer__btn-help"><i class="fa fa-question"></i></div>\n <div class="footer__btn footer__btn-settings" title="'+r(c(n,"res").call(a,"settings",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:20,column:57},end:{line:20,column:75}}}))+'" tip-placement="top" id="footer__btn-settings">\n'+(null!=(o=c(n,"if").call(a,null!=t?c(t,"updateAvailable"):t,{name:"if",hash:{},fn:e.program(19,i,0,l),inverse:e.program(21,i,0,l),data:i,blockParams:l,loc:{start:{line:21,column:8},end:{line:25,column:15}}}))?o:"")+' </div>\n <div class="footer__btn footer__btn-generate" title="'+r(c(n,"res").call(a,"footerTitleGen",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:27,column:57},end:{line:27,column:81}}}))+'" tip-placement="top" id="footer__btn-generate"><i class="fa fa-bolt"></i></div>\n <div class="footer__btn footer__btn-lock" title="'+r(c(n,"res").call(a,"footerTitleLock",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:28,column:53},end:{line:28,column:78}}}))+'" tip-placement="top-left" id="footer__btn-lock"><i class="fa fa-sign-out"></i></div>\n</div>\n'},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'" '+(null!=(a=d(n,"ifeq").call(u,l[0][0],null!=o[1]?d(o[1],"selected"):o[1],{name:"ifeq",hash:{},fn:e.program(2,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:10,column:48},end:{line:10,column:89}}}))?a:"")+">"+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"builtIn"):a,{name:"if",hash:{},fn:e.program(4,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:10,column:90},end:{line:10,column:117}}}))?a:"")+c(r(null!=(a=l[0][0])?d(a,"title"):a,t))+"</option>\n"},2:function(e,t,n,s,i){return"selected"},4:function(e,t,n,s,i){return"* "},6:function(e,t,n,s,i){return"checked"},8:function(e,t,n,s,i){return"readonly"},10:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="gen-ps__field">\n <input type="checkbox" class="input-base gen-ps__check-range" id="gen-ps__check-'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'"\n data-range="'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'"\n '+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"enabled"):a,{name:"if",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:35,column:20},end:{line:35,column:55}}}))?a:"")+" "+(null!=(a=d(n,"if").call(u,null!=(a=null!=o[1]?d(o[1],"selected"):o[1])?d(a,"builtIn"):a,{name:"if",hash:{},fn:e.program(11,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:35,column:56},end:{line:35,column:98}}}))?a:"")+' />\n <label for="gen-ps__check-'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'">'+c(r(null!=(a=l[0][0])?d(a,"title"):a,t))+'<span class="gen-ps__sample"> '+c(r(null!=(a=l[0][0])?d(a,"sample"):a,t))+"</span></label>\n </div>\n"},11:function(e,t,n,s,i){return"disabled"},13:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="gen-ps__btn-delete btn-error">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"genPsDelete",{name:"res",hash:{},data:i,loc:{start:{line:72,column:81},end:{line:72,column:102}}}))+"</button>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lambda,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="gen-ps">\n <div class="back-button">\n '+c(d(n,"res").call(r,"retToApp",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:3,column:8},end:{line:3,column:26}}}))+' <i class="fa fa-external-link-square"></i>\n </div>\n <div class="scroller">\n <div class="gen-ps__content">\n <h1>'+c(d(n,"res").call(r,"genPsTitle",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:7,column:16},end:{line:7,column:36}}}))+'</h1>\n <select class="gen-ps__list input-base">\n'+(null!=(a=d(n,"each").call(r,null!=t?d(t,"presets"):t,{name:"each",hash:{},fn:e.program(1,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:9,column:16},end:{line:11,column:25}}}))?a:"")+' </select>\n <div class="gen-ps__field">\n <input type="checkbox" class="input-base" id="gen-ps__check-enabled" '+(null!=(a=d(n,"unless").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"disabled"):a,{name:"unless",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:14,column:85},end:{line:14,column:132}}}))?a:"")+' />\n <label for="gen-ps__check-enabled">'+c(d(n,"res").call(r,"genPsEnabled",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:15,column:51},end:{line:15,column:73}}}))+'</label>\n </div>\n <div class="gen-ps__field">\n <input type="checkbox" class="input-base" id="gen-ps__check-default" '+(null!=(a=d(n,"if").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"default"):a,{name:"if",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:18,column:85},end:{line:18,column:123}}}))?a:"")+' />\n <label for="gen-ps__check-default">'+c(d(n,"res").call(r,"genPsDefault",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:19,column:51},end:{line:19,column:73}}}))+'</label>\n </div>\n <div class="gen-ps__field">\n <label for="gen-ps__field-title">'+c((d(n,"Res")||t&&d(t,"Res")||e.hooks.helperMissing).call(r,"name",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:22,column:49},end:{line:22,column:63}}}))+':</label>\n <input type="text" class="input-base" id="gen-ps__field-title" value="'+c(u(null!=(a=null!=t?d(t,"selected"):t)?d(a,"title"):a,t))+'"\n size="50" maxlength="64" required '+(null!=(a=d(n,"if").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"builtIn"):a,{name:"if",hash:{},fn:e.program(8,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:24,column:57},end:{line:24,column:96}}}))?a:"")+' />\n </div>\n <div class="gen-ps__field">\n <label for="gen-ps__field-length">'+c(d(n,"res").call(r,"genPsDefaultLength",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:27,column:50},end:{line:27,column:78}}}))+':</label>\n <input type="text" class="input-base" id="gen-ps__field-length" value="'+c(u(null!=(a=null!=t?d(t,"selected"):t)?d(a,"length"):a,t))+'"\n size="50" maxlength="3" required pattern="\\d+" '+(null!=(a=d(n,"if").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"builtIn"):a,{name:"if",hash:{},fn:e.program(8,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:29,column:70},end:{line:29,column:109}}}))?a:"")+" />\n </div>\n"+(null!=(a=d(n,"each").call(r,null!=t?d(t,"ranges"):t,{name:"each",hash:{},fn:e.program(10,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:31,column:12},end:{line:38,column:21}}}))?a:"")+' <div class="gen-ps__field">\n <label for="gen-ps__field-include">'+c(d(n,"res").call(r,"genPsInclude",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:40,column:51},end:{line:40,column:73}}}))+':</label>\n <input type="text" class="input-base" id="gen-ps__field-include" value="'+c(u(null!=(a=null!=t?d(t,"selected"):t)?d(a,"include"):a,t))+'"\n '+(null!=(a=d(n,"if").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"builtIn"):a,{name:"if",hash:{},fn:e.program(8,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:42,column:23},end:{line:42,column:62}}}))?a:"")+' />\n </div>\n <div class="gen-ps__field">\n <label for="gen-ps__field-pattern">'+c(d(n,"res").call(r,"genPsPattern",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:45,column:51},end:{line:45,column:73}}}))+': <i class="fa fa-info-circle info-btn info-btn--pattern"></i></label>\n <div class="gen-ps__pattern-help hide">\n <p>'+c(d(n,"res").call(r,"genPsPatternHelp",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:47,column:23},end:{line:47,column:49}}}))+"</p>\n <p>\n <code>X</code> "+c(d(n,"res").call(r,"genPsAllRanges",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:49,column:41},end:{line:49,column:65}}}))+"<br/>\n <code>A</code> "+c(d(n,"res").call(r,"genPsUpper",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:50,column:41},end:{line:50,column:61}}}))+"<br/>\n <code>a</code> "+c(d(n,"res").call(r,"genPsLower",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:51,column:41},end:{line:51,column:61}}}))+"<br/>\n <code>1</code> "+c(d(n,"res").call(r,"genPsDigits",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:52,column:41},end:{line:52,column:62}}}))+"<br/>\n <code>*</code> "+c(d(n,"res").call(r,"genPsSpecial",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:53,column:41},end:{line:53,column:63}}}))+"<br/>\n <code>[</code> "+c(d(n,"res").call(r,"genPsBrackets",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:54,column:41},end:{line:54,column:64}}}))+"<br/>\n <code>Ä</code> "+c(d(n,"res").call(r,"genPsHigh",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:55,column:41},end:{line:55,column:60}}}))+"<br/>\n <code>0</code> "+c(d(n,"res").call(r,"genPsAmbiguous",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:56,column:41},end:{line:56,column:65}}}))+"<br/>\n <code>I</code> "+c(d(n,"res").call(r,"genPsIncluded",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:57,column:41},end:{line:57,column:64}}}))+'\n </p>\n </div>\n <input type="text" class="input-base" id="gen-ps__field-pattern" value="'+c(u(null!=(a=null!=t?d(t,"selected"):t)?d(a,"pattern"):a,t))+'"\n '+(null!=(a=d(n,"if").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"builtIn"):a,{name:"if",hash:{},fn:e.program(8,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:61,column:23},end:{line:61,column:62}}}))?a:"")+' />\n </div>\n <div class="gen-ps__field">\n <label>'+c(d(n,"res").call(r,"genPsExample",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:64,column:23},end:{line:64,column:45}}}))+':</label>\n <div class="gen-ps__example"></div>\n </div>\n </div>\n </div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n <div class="gen-ps__buttons">\n <button class="gen-ps__btn-create">'+c(d(n,"res").call(r,"genPsCreate",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:71,column:43},end:{line:71,column:64}}}))+"</button>\n "+(null!=(a=d(n,"unless").call(r,null!=(a=null!=t?d(t,"selected"):t)?d(a,"builtIn"):a,{name:"unless",hash:{},fn:e.program(13,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:72,column:8},end:{line:72,column:122}}}))?a:"")+"\n </div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"readonly"},3:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="input-base" id="grp__check-search" '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"enableSearching"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:15,column:81},end:{line:15,column:118}}}))?l:"")+' />\n <label for="grp__check-search">'+e.escapeExpression(a(n,"res").call(o,"grpSearch",{name:"res",hash:{},data:i,loc:{start:{line:16,column:47},end:{line:16,column:66}}}))+"</label>\n </div>\n"},4:function(e,t,n,s,i){return"checked"},6:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <img src="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"customIcon")||(null!=t?o(t,"customIcon"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"customIcon",hash:{},data:i,loc:{start:{line:22,column:26},end:{line:22,column:40}}}):l)+'" class="grp__icon grp__icon--image" />\n'},8:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <i class="fa fa-'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"icon")||(null!=t?o(t,"icon"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"icon",hash:{},data:i,loc:{start:{line:24,column:32},end:{line:24,column:40}}}):l)+' grp__icon"></i>\n'},10:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(l=u(n,"unless").call(a,null!=t?u(t,"readonly"):t,{name:"unless",hash:{},fn:e.program(11,i,0),inverse:e.noop,data:i,loc:{start:{line:29,column:12},end:{line:34,column:23}}}))?l:"")+' <div class="grp__field">\n <label for="grp__field-auto-type-seq">'+r(u(n,"res").call(a,"grpAutoTypeSeq",{name:"res",hash:{},data:i,loc:{start:{line:36,column:54},end:{line:36,column:78}}}))+':</label>\n <input type="text" class="input-base" id="grp__field-auto-type-seq" value="'+r("function"==typeof(o=null!=(o=u(n,"autoTypeSeq")||(null!=t?u(t,"autoTypeSeq"):t))?o:c)?o.call(a,{name:"autoTypeSeq",hash:{},data:i,loc:{start:{line:37,column:91},end:{line:37,column:106}}}):o)+'"\n size="50" maxlength="1024" placeholder="'+r(u(n,"res").call(a,"grpAutoTypeSeqDefault",{name:"res",hash:{},data:i,loc:{start:{line:38,column:63},end:{line:38,column:94}}}))+": "+r("function"==typeof(o=null!=(o=u(n,"defaultAutoTypeSeq")||(null!=t?u(t,"defaultAutoTypeSeq"):t))?o:c)?o.call(a,{name:"defaultAutoTypeSeq",hash:{},data:i,loc:{start:{line:38,column:96},end:{line:38,column:118}}}):o)+'" />\n </div>\n'},11:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="input-base" id="grp__check-auto-type" '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"autoTypeEnabled"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:31,column:84},end:{line:31,column:121}}}))?l:"")+' />\n <label for="grp__check-auto-type">'+e.escapeExpression(a(n,"res").call(o,"grpAutoType",{name:"res",hash:{},data:i,loc:{start:{line:32,column:50},end:{line:32,column:71}}}))+"</label>\n </div>\n"},13:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="grp__buttons">\n <i class="grp__buttons-trash fa fa-trash-o" title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"grpTrash",{name:"res",hash:{},data:i,loc:{start:{line:46,column:59},end:{line:46,column:77}}}))+'" tip-placement="right"></i>\n </div>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="grp">\n <div class="back-button">\n '+r(u(n,"res").call(a,"retToApp",{name:"res",hash:{},data:i,loc:{start:{line:3,column:8},end:{line:3,column:26}}}))+' <i class="fa fa-external-link-square"></i>\n </div>\n <div class="scroller">\n <div class="grp__content">\n <h1>'+r(u(n,"res").call(a,"grpTitle",{name:"res",hash:{},data:i,loc:{start:{line:7,column:16},end:{line:7,column:34}}}))+'</h1>\n <div class="grp__field">\n <label for="grp__field-title">'+r((u(n,"Res")||t&&u(t,"Res")||c).call(a,"name",{name:"Res",hash:{},data:i,loc:{start:{line:9,column:46},end:{line:9,column:60}}}))+':</label>\n <input type="text" class="input-base" id="grp__field-title" value="'+r("function"==typeof(o=null!=(o=u(n,"title")||(null!=t?u(t,"title"):t))?o:c)?o.call(a,{name:"title",hash:{},data:i,loc:{start:{line:10,column:83},end:{line:10,column:92}}}):o)+'" size="50" maxlength="1024"\n required '+(null!=(l=u(n,"if").call(a,null!=t?u(t,"readonly"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:11,column:32},end:{line:11,column:63}}}))?l:"")+" />\n </div>\n"+(null!=(l=u(n,"unless").call(a,null!=t?u(t,"readonly"):t,{name:"unless",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:13,column:12},end:{line:18,column:23}}}))?l:"")+" <label>"+r((u(n,"Res")||t&&u(t,"Res")||c).call(a,"icon",{name:"Res",hash:{},data:i,loc:{start:{line:19,column:19},end:{line:19,column:33}}}))+':</label>\n <div class="grp__icon-wrap">\n'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"customIcon"):t,{name:"if",hash:{},fn:e.program(6,i,0),inverse:e.program(8,i,0),data:i,loc:{start:{line:21,column:16},end:{line:25,column:23}}}))?l:"")+' </div>\n <div class="grp__icons"></div>\n'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"canAutoType"):t,{name:"if",hash:{},fn:e.program(10,i,0),inverse:e.noop,data:i,loc:{start:{line:28,column:12},end:{line:40,column:19}}}))?l:"")+' </div>\n </div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n'+(null!=(l=u(n,"unless").call(a,null!=t?u(t,"readonly"):t,{name:"unless",hash:{},fn:e.program(13,i,0),inverse:e.noop,data:i,loc:{start:{line:44,column:4},end:{line:48,column:15}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return' <input class="key-change__pass-repeat" type="password" size="30" autocomplete="new-password" maxlength="1024"\n placeholder="Repeat password" />\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="key-change">\n <i class="key-change__icon fa fa-lock"></i>\n <div class="key-change__header">'+c("function"==typeof(o=null!=(o=u(n,"fileName")||(null!=t?u(t,"fileName"):t))?o:r)?o.call(a,{name:"fileName",hash:{},data:i,loc:{start:{line:3,column:36},end:{line:3,column:48}}}):o)+": "+c("function"==typeof(o=null!=(o=u(n,"title")||(null!=t?u(t,"title"):t))?o:r)?o.call(a,{name:"title",hash:{},data:i,loc:{start:{line:3,column:50},end:{line:3,column:59}}}):o)+'</div>\n <div class="key-change__body">\n <div class="key-change__message">'+c("function"==typeof(o=null!=(o=u(n,"message")||(null!=t?u(t,"message"):t))?o:r)?o.call(a,{name:"message",hash:{},data:i,loc:{start:{line:5,column:41},end:{line:5,column:52}}}):o)+':</div>\n <div class="key-change__input">\n <input class="key-change__file hide-by-pos" type="file" />\n <input class="key-change__pass" type="password" size="30" autocomplete="new-password" maxlength="1024" autofocus\n placeholder="'+c((u(n,"Res")||t&&u(t,"Res")||r).call(a,"password",{name:"Res",hash:{},data:i,loc:{start:{line:9,column:29},end:{line:9,column:47}}}))+'" />\n <div class="key-change__keyfile">\n <i class="fa fa-key"></i> '+c(u(n,"res").call(a,"openKeyFile",{name:"res",hash:{},data:i,loc:{start:{line:11,column:42},end:{line:11,column:63}}}))+'<span class="key-change__keyfile-name"></span>\n </div>\n'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"repeat"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:13,column:12},end:{line:16,column:19}}}))?l:"")+' </div>\n </div>\n <div class="key-change__buttons">\n <button class="key-change__btn-ok" data-result="ok">'+c(u(n,"res").call(a,"alertOk",{name:"res",hash:{},data:i,loc:{start:{line:20,column:60},end:{line:20,column:77}}}))+'</button>\n <button class="btn-error key-change__btn-cancel" data-result="">'+c(u(n,"res").call(a,"alertCancel",{name:"res",hash:{},data:i,loc:{start:{line:21,column:72},end:{line:21,column:93}}}))+"</button>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"hide"},3:function(e,t,n,s,i){return"checked"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.hooks.helperMissing,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="list__search">\n <div class="list__search-header">\n <div class="list__search-btn-menu">\n <i class="fa fa-bars"></i>\n </div>\n <div class="list__search-field-wrap">\n <input type="text" class="list__search-field input-padding-right" autocomplete="off" spellcheck="false">\n <div class="list__search-icon-search" title="'+a(c(n,"res").call(o,"searchAdvTitle",{name:"res",hash:{},data:i,loc:{start:{line:8,column:57},end:{line:8,column:81}}}))+'">\n <i class="fa fa-search"></i>\n <i class="fa fa-caret-down"></i>\n </div>\n </div>\n <div class="list__search-btn-new '+(null!=(l=c(n,"unless").call(o,null!=t?c(t,"canCreate"):t,{name:"unless",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:13,column:41},end:{line:13,column:77}}}))?l:"")+'" title="'+a(c(n,"res").call(o,"searchAddNew",{name:"res",hash:{},data:i,loc:{start:{line:13,column:86},end:{line:13,column:108}}}))+'">\n <i class="fa fa-plus"></i>\n </div>\n <div class="list__search-btn-sort" title="'+a(c(n,"res").call(o,"searchSort",{name:"res",hash:{},data:i,loc:{start:{line:16,column:50},end:{line:16,column:70}}}))+'">\n <i class="fa fa-sort-alpha-asc"></i>\n </div>\n <div class="list__search-adv '+(null!=(l=c(n,"unless").call(o,null!=t?c(t,"advEnabled"):t,{name:"unless",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:19,column:37},end:{line:19,column:74}}}))?l:"")+'">\n <div class="list__search-adv-text">'+a(c(n,"res").call(o,"searchSearchIn",{name:"res",hash:{},data:i,loc:{start:{line:20,column:47},end:{line:20,column:71}}}))+':</div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-user" data-id="user"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"user"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:22,column:15},end:{line:22,column:45}}}))?l:"")+'><label for="list__search-adv-check-user">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"user",{name:"Res",hash:{},data:i,loc:{start:{line:22,column:87},end:{line:22,column:101}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-other" data-id="other"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"other"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:24,column:16},end:{line:24,column:47}}}))?l:"")+'><label for="list__search-adv-check-other">'+a(c(n,"res").call(o,"searchOther",{name:"res",hash:{},data:i,loc:{start:{line:24,column:90},end:{line:24,column:111}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-website" data-id="url"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"url"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:26,column:16},end:{line:26,column:45}}}))?l:"")+'><label for="list__search-adv-check-website">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"website",{name:"Res",hash:{},data:i,loc:{start:{line:26,column:90},end:{line:26,column:107}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-protect" data-id="protect"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"protect"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:28,column:16},end:{line:28,column:49}}}))?l:"")+'><label for="list__search-adv-check-protect">'+a(c(n,"res").call(o,"searchProtect",{name:"res",hash:{},data:i,loc:{start:{line:28,column:94},end:{line:28,column:117}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-notes" data-id="notes"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"notes"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:30,column:16},end:{line:30,column:47}}}))?l:"")+'><label for="list__search-adv-check-notes">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"notes",{name:"Res",hash:{},data:i,loc:{start:{line:30,column:90},end:{line:30,column:105}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-pass" data-id="pass"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"pass"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:32,column:16},end:{line:32,column:46}}}))?l:"")+'><label for="list__search-adv-check-pass">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"password",{name:"Res",hash:{},data:i,loc:{start:{line:32,column:88},end:{line:32,column:106}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-title" data-id="title"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"title"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:34,column:16},end:{line:34,column:47}}}))?l:"")+'><label for="list__search-adv-check-title">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"title",{name:"Res",hash:{},data:i,loc:{start:{line:34,column:90},end:{line:34,column:105}}}))+'</label></div>\n <div class="list__search-adv-text">'+a(c(n,"res").call(o,"searchOptions",{name:"res",hash:{},data:i,loc:{start:{line:35,column:47},end:{line:35,column:70}}}))+':</div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-cs" data-id="cs"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"cs"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:37,column:16},end:{line:37,column:44}}}))?l:"")+'><label for="list__search-adv-check-cs">'+a(c(n,"res").call(o,"searchCase",{name:"res",hash:{},data:i,loc:{start:{line:37,column:84},end:{line:37,column:104}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-regex" data-id="regex"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"regex"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:39,column:16},end:{line:39,column:47}}}))?l:"")+'><label for="list__search-adv-check-regex">'+a(c(n,"res").call(o,"searchRegex",{name:"res",hash:{},data:i,loc:{start:{line:39,column:90},end:{line:39,column:111}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-history" data-id="history"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"history"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:41,column:16},end:{line:41,column:49}}}))?l:"")+'><label for="list__search-adv-check-history">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"history",{name:"Res",hash:{},data:i,loc:{start:{line:41,column:94},end:{line:41,column:111}}}))+'</label></div>\n <div class="list__search-check"><input type="checkbox" id="list__search-adv-check-exact" data-id="exact"\n '+(null!=(l=c(n,"if").call(o,null!=(l=null!=t?c(t,"adv"):t)?c(l,"exact"):l,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:43,column:16},end:{line:43,column:47}}}))?l:"")+'><label for="list__search-adv-check-exact">'+a(c(n,"res").call(o,"searchExact",{name:"res",hash:{},data:i,loc:{start:{line:43,column:90},end:{line:43,column:111}}}))+"</label></div>\n </div>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){return'<div class="list">\n <div class="list__header"></div>\n <div class="list__items">\n <div class="scroller"></div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n </div>\n</div>'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return' <i class="fa fa-plus"></i>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="empty-block muted-color">\n <div class="empty-block__icon"><i class="fa fa-key"></i></div>\n <h1 class="empty-block__title">'+e.escapeExpression(a(n,"res").call(o,"listEmptyTitle",{name:"res",hash:{},data:i,loc:{start:{line:3,column:35},end:{line:3,column:59}}}))+'</h1>\n <p class="empty-block__text">\n '+(null!=(l=a(n,"res").call(o,"listEmptyAdd",{name:"res",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:8},end:{line:5,column:66}}}))?l:"")+"\n </p>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return" menu__item--active"},3:function(e,t,n,s,i){return" menu__item--disabled"},5:function(e,t,n,s,i){return" menu__item--with-options "},7:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"cls")||(null!=t?o(t,"cls"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"cls",hash:{},data:i,loc:{start:{line:5,column:17},end:{line:5,column:24}}}):l)},9:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="menu__item-collapse fa fa-ellipsis-v muted-color" title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"menuItemCollapsed",{name:"res",hash:{},data:i,loc:{start:{line:7,column:90},end:{line:7,column:117}}}))+'"></i>'},11:function(e,t,n,s,i){return'draggable="true"'},13:function(e,t,n,s,i){return'<div class="menu__item-drag-top"></div>'},15:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<img src="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"customIcon")||(null!=t?o(t,"customIcon"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"customIcon",hash:{},data:i,loc:{start:{line:11,column:22},end:{line:11,column:36}}}):l)+'" class="menu__item-icon menu__item-icon--image" />'},17:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="menu__item-icon fa '+(null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"icon"):t,{name:"if",hash:{},fn:e.program(18,i,0),inverse:e.program(20,i,0),data:i,loc:{start:{line:13,column:41},end:{line:13,column:103}}}))?l:"")+'"></i>'},18:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"fa-"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"icon")||(null!=t?o(t,"icon"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"icon",hash:{},data:i,loc:{start:{line:13,column:56},end:{line:13,column:64}}}):l)},20:function(e,t,n,s,i){return"menu__item-icon--no-icon"},22:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"title")||(null!=t?o(t,"title"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"title",hash:{},data:i,loc:{start:{line:15,column:52},end:{line:15,column:61}}}):l)},24:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"("+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"noTitle",{name:"res",hash:{},data:i,loc:{start:{line:15,column:70},end:{line:15,column:87}}}))+")"},26:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="menu__item-options">\n'+(null!=(o=a(n,"each").call(null!=t?t:e.nullContext||{},null!=t?a(t,"options"):t,{name:"each",hash:{},fn:e.program(27,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:18,column:12},end:{line:21,column:21}}}))?o:"")+" </div>\n"},27:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="menu__item-option '+(null!=(o=c(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=l[0][0])?c(o,"cls"):o,{name:"if",hash:{},fn:e.program(28,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:19,column:42},end:{line:19,column:75}}}))?o:"")+'"\n data-value="'+r(a(null!=(o=l[0][0])?c(o,"value"):o,t))+'">'+r(a(null!=(o=l[0][0])?c(o,"title"):o,t))+"</div>\n"},28:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"cls"):o,t))},30:function(e,t,n,s,i){return'<i class="menu__item-edit fa fa-cog"></i>'},32:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="menu__item-empty-trash fa fa-minus-circle" title="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"menuEmptyTrash",{name:"res",hash:{},data:i,loc:{start:{line:25,column:95},end:{line:25,column:119}}}))+'"\n tip-placement="right"></i>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="menu__item'+(null!=(o=r(n,"if").call(a,null!=t?r(t,"active"):t,{name:"if",hash:{},fn:e.program(1,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:2,column:4},end:{line:2,column:46}}}))?o:"")+(null!=(o=r(n,"if").call(a,null!=t?r(t,"disabled"):t,{name:"if",hash:{},fn:e.program(3,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:3,column:4},end:{line:3,column:50}}}))?o:"")+(null!=(o=r(n,"if").call(a,null!=(o=null!=t?r(t,"options"):t)?r(o,"length"):o,{name:"if",hash:{},fn:e.program(5,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:4,column:4},end:{line:4,column:61}}}))?o:"")+(null!=(o=r(n,"if").call(a,null!=t?r(t,"cls"):t,{name:"if",hash:{},fn:e.program(7,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:5,column:4},end:{line:5,column:32}}}))?o:"")+'">\n '+(null!=(o=r(n,"if").call(a,null!=t?r(t,"collapsible"):t,{name:"if",hash:{},fn:e.program(9,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:7,column:4},end:{line:7,column:130}}}))?o:"")+'\n <div class="menu__item-body" '+(null!=(o=r(n,"if").call(a,null!=t?r(t,"drag"):t,{name:"if",hash:{},fn:e.program(11,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:8,column:33},end:{line:8,column:68}}}))?o:"")+">\n "+(null!=(o=r(n,"if").call(a,null!=t?r(t,"drag"):t,{name:"if",hash:{},fn:e.program(13,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:9,column:8},end:{line:9,column:66}}}))?o:"")+"\n"+(null!=(o=r(n,"if").call(a,null!=t?r(t,"customIcon"):t,{name:"if",hash:{},fn:e.program(15,i,0,l),inverse:e.program(17,i,0,l),data:i,blockParams:l,loc:{start:{line:10,column:8},end:{line:14,column:16}}}))?o:"")+' <span class="menu__item-title">'+(null!=(o=r(n,"if").call(a,null!=t?r(t,"title"):t,{name:"if",hash:{},fn:e.program(22,i,0,l),inverse:e.program(24,i,0,l),data:i,blockParams:l,loc:{start:{line:15,column:39},end:{line:15,column:95}}}))?o:"")+"</span>\n"+(null!=(o=r(n,"if").call(a,null!=t?r(t,"options"):t,{name:"if",hash:{},fn:e.program(26,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:8},end:{line:23,column:15}}}))?o:"")+" "+(null!=(o=r(n,"if").call(a,null!=t?r(t,"editable"):t,{name:"if",hash:{},fn:e.program(30,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:24,column:8},end:{line:24,column:72}}}))?o:"")+"\n "+(null!=(o=r(n,"ifeq").call(a,null!=t?r(t,"filterKey"):t,"trash",{name:"ifeq",hash:{},fn:e.program(32,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:25,column:8},end:{line:26,column:47}}}))?o:"")+"\n </div>\n</div>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return" menu__section--scrollable"},3:function(e,t,n,s,i){return" menu__section--grow"},5:function(e,t,n,s,i){return" menu__section--drag"},7:function(e,t,n,s,i){return' <div class="scroller"></div><div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="menu__section'+(null!=(l=a(n,"if").call(o,null!=t?a(t,"scrollable"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:2,column:4},end:{line:2,column:57}}}))?l:"")+(null!=(l=a(n,"if").call(o,null!=t?a(t,"grow"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:3,column:4},end:{line:3,column:45}}}))?l:"")+(null!=(l=a(n,"if").call(o,null!=t?a(t,"drag"):t,{name:"if",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:4},end:{line:4,column:45}}}))?l:"")+'">'+(null!=(l=a(n,"if").call(o,null!=t?a(t,"scrollable"):t,{name:"if",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:6,column:4},end:{line:8,column:11}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){return'<div class="menu">\n</div>'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"name")||(null!=t?o(t,"name"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:i,loc:{start:{line:2,column:94},end:{line:2,column:102}}}):l)},3:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open__config-desc">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"desc"):t,{name:"res",hash:{},data:i,loc:{start:{line:3,column:47},end:{line:3,column:59}}}))+"</div>"},5:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <label for="open__config-field-'+c("function"==typeof(o=null!=(o=u(n,"id")||(null!=t?u(t,"id"):t))?o:r)?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:6,column:39},end:{line:6,column:45}}}):o)+'">'+c(u(n,"res").call(a,null!=t?u(t,"title"):t,{name:"res",hash:{},data:i,loc:{start:{line:6,column:47},end:{line:6,column:60}}}))+":</label>\n "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"desc"):t,{name:"if",hash:{},fn:e.program(6,i,0),inverse:e.noop,data:i,loc:{start:{line:7,column:8},end:{line:7,column:94}}}))?l:"")+'\n <input type="'+c("function"==typeof(o=null!=(o=u(n,"type")||(null!=t?u(t,"type"):t))?o:r)?o.call(a,{name:"type",hash:{},data:i,loc:{start:{line:8,column:21},end:{line:8,column:29}}}):o)+'" class="open__config-field input-base" id="open__config-field-'+c("function"==typeof(o=null!=(o=u(n,"id")||(null!=t?u(t,"id"):t))?o:r)?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:8,column:92},end:{line:8,column:98}}}):o)+'"\n autocomplete="off" autocapitalize="off"\n '+(null!=(l=u(n,"if").call(a,null!=t?u(t,"placeholder"):t,{name:"if",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:10,column:12},end:{line:10,column:71}}}))?l:"")+"\n "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"required"):t,{name:"if",hash:{},fn:e.program(10,i,0),inverse:e.noop,data:i,loc:{start:{line:11,column:12},end:{line:11,column:43}}}))?l:"")+"\n "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"pattern"):t,{name:"if",hash:{},fn:e.program(12,i,0),inverse:e.noop,data:i,loc:{start:{line:12,column:12},end:{line:12,column:55}}}))?l:"")+"\n />\n"},6:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open__config-field-desc muted-color">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"desc"):t,{name:"res",hash:{},data:i,loc:{start:{line:7,column:69},end:{line:7,column:81}}}))+"</div>"},8:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'placeholder="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"placeholder"):t,{name:"res",hash:{},data:i,loc:{start:{line:10,column:44},end:{line:10,column:63}}}))+'"'},10:function(e,t,n,s,i){return"required"},12:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'pattern="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"pattern")||(null!=t?o(t,"pattern"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"pattern",hash:{},data:i,loc:{start:{line:12,column:36},end:{line:12,column:47}}}):l)+'"'},14:function(e,t,n,s,i){var l=null!=t?t:e.nullContext||{},o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__config-buttons">\n <button class="btn-silent open__config-btn-cancel">'+o(a(n,"res").call(l,"alertCancel",{name:"res",hash:{},data:i,loc:{start:{line:19,column:59},end:{line:19,column:80}}}))+'</button>\n <button class="open__config-btn-ok">\n <span class="open__config-btn-ok-text">'+o(a(n,"res").call(l,"alertOk",{name:"res",hash:{},data:i,loc:{start:{line:21,column:51},end:{line:21,column:68}}}))+'</span>\n <i class="open__config-btn-ok-spinner fa fa-spinner fa-spin"></i>\n </button>\n </div>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open__config">\n <h2 class="open__config-header"><i class="fa fa-'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"icon")||(null!=t?r(t,"icon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"icon",hash:{},data:i,loc:{start:{line:2,column:52},end:{line:2,column:60}}}):o)+'"></i> '+(null!=(l=r(n,"res").call(a,"openConfigHeader",{name:"res",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:2,column:67},end:{line:2,column:110}}}))?l:"")+"</h2>\n "+(null!=(l=r(n,"if").call(a,null!=t?r(t,"desc"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:3,column:4},end:{line:3,column:72}}}))?l:"")+'\n <div class="open__config-fields">\n'+(null!=(l=r(n,"each").call(a,null!=t?r(t,"fields"):t,{name:"each",hash:{},fn:e.program(5,i,2),inverse:e.noop,data:i,loc:{start:{line:5,column:8},end:{line:14,column:17}}}))?l:"")+' </div>\n <div class="open__config-error error-color"></div>\n'+(null!=(l=r(n,"if").call(a,null!=t?r(t,"buttons"):t,{name:"if",hash:{},fn:e.program(14,i,0),inverse:e.noop,data:i,loc:{start:{line:17,column:4},end:{line:25,column:11}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=l[0][0])?a(o,"dir"):o,{name:"if",hash:{},fn:e.program(2,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:6,column:20},end:{line:11,column:27}}}))?o:""},2:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-list__file" data-path="'+r(a(null!=(o=l[1][0])?c(o,"path"):o,t))+'">\n <i class="open-list__file-icon fa fa-'+(null!=(o=c(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=(o=l[1][0])?c(o,"name"):o,"..",{name:"ifeq",hash:{},fn:e.program(3,i,0,l),inverse:e.program(5,i,0,l),data:i,blockParams:l,loc:{start:{line:8,column:61},end:{line:8,column:120}}}))?o:"")+'"></i>\n <span class="open-list__file-text">'+r(a(null!=(o=l[1][0])?c(o,"name"):o,t))+"</span>\n </div>\n"},3:function(e,t,n,s,i){return"arrow-left"},5:function(e,t,n,s,i){return"folder-o"},7:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"unless").call(null!=t?t:e.nullContext||{},null!=(o=l[0][0])?a(o,"dir"):o,{name:"unless",hash:{},fn:e.program(8,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:20},end:{line:21,column:31}}}))?o:""},8:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-list__file '+(null!=(o=u(n,"unless").call(a,null!=(o=l[1][0])?u(o,"kdbx"):o,{name:"unless",hash:{},fn:e.program(9,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:48},end:{line:17,column:104}}}))?o:"")+'" data-path="'+c(r(null!=(o=l[1][0])?u(o,"path"):o,t))+'">\n <i class="open-list__file-icon fa fa-'+(null!=(o=u(n,"if").call(a,null!=(o=l[1][0])?u(o,"kdbx"):o,{name:"if",hash:{},fn:e.program(11,i,0,l),inverse:e.program(13,i,0,l),data:i,blockParams:l,loc:{start:{line:18,column:61},end:{line:18,column:107}}}))?o:"")+'"></i>\n <span class="open-list__file-text">'+c(r(null!=(o=l[1][0])?u(o,"name"):o,t))+"</span>\n </div>\n"},9:function(e,t,n,s,i){return"open-list__file--another"},11:function(e,t,n,s,i){return"key"},13:function(e,t,n,s,i){return"file-text-o"},15:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-list__check-wrap">\n <input type="checkbox" id="open-list__check" '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"showHiddenFiles"):t,{name:"if",hash:{},fn:e.program(16,i,0),inverse:e.noop,data:i,loc:{start:{line:28,column:53},end:{line:28,column:90}}}))?l:"")+'\n /><label class="open-list__check-label" for="open-list__check">'+e.escapeExpression(a(n,"res").call(o,"openShowAllFiles",{name:"res",hash:{},data:i,loc:{start:{line:29,column:71},end:{line:29,column:97}}}))+"</label>\n </div>\n"},16:function(e,t,n,s,i){return"checked"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open-list open-list--density'+e.escapeExpression("function"==typeof(a=null!=(a=c(n,"density")||(null!=t?c(t,"density"):t))?a:e.hooks.helperMissing)?a.call(r,{name:"density",hash:{},data:i,blockParams:l,loc:{start:{line:1,column:40},end:{line:1,column:51}}}):a)+'">\n <div class="open-list__content">\n <div class="open-list__scrollable">\n <div class="open-list__files">\n'+(null!=(o=c(n,"each").call(r,null!=t?c(t,"files"):t,{name:"each",hash:{},fn:e.program(1,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:5,column:16},end:{line:12,column:25}}}))?o:"")+' </div>\n <div class="open-list__files">\n'+(null!=(o=c(n,"each").call(r,null!=t?c(t,"files"):t,{name:"each",hash:{},fn:e.program(7,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:15,column:16},end:{line:22,column:25}}}))?o:"")+" </div>\n </div>\n </div>\n"+(null!=(o=c(n,"if").call(r,null!=t?c(t,"canShowHiddenFiles"):t,{name:"if",hash:{},fn:e.program(15,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:26,column:4},end:{line:31,column:11}}}))?o:"")+"</div>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-chal-resp__head">\n <p>\n <i class="open-chal-resp__icon fa fa-spinner fa-spin"></i> '+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openChalRespLoading",{name:"res",hash:{},data:i,loc:{start:{line:5,column:75},end:{line:5,column:104}}}))+"\n </p>\n </div>\n"},3:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=t?a(t,"error"):t,{name:"if",hash:{},fn:e.program(4,i,0,l),inverse:e.program(7,i,0,l),data:i,blockParams:l,loc:{start:{line:8,column:4},end:{line:35,column:4}}}))?o:""},4:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-chal-resp__head">\n <p>\n <i class="open-chal-resp__icon fa fa-ban"></i> '+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"error")||(null!=t?r(t,"error"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"error",hash:{},data:i,loc:{start:{line:11,column:63},end:{line:11,column:72}}}):o)+"\n </p>\n"+(null!=(l=r(n,"if").call(a,null!=t?r(t,"showEmptyMacWarning"):t,{name:"if",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:13,column:12},end:{line:15,column:19}}}))?l:"")+" </div>\n"},5:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <p>"+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openChalRespErrorEmptyMac",{name:"res",hash:{},data:i,loc:{start:{line:14,column:19},end:{line:14,column:54}}}))+"</p>\n"},7:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-chal-resp__head">\n <p>\n '+e.escapeExpression(r(n,"res").call(a,"openChalRespSelectYubiKey",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:20,column:16},end:{line:20,column:51}}}))+":\n </p>\n </div>\n <div>\n"+(null!=(o=r(n,"each").call(a,null!=t?r(t,"yubiKeys"):t,{name:"each",hash:{},fn:e.program(8,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:24,column:12},end:{line:33,column:21}}}))?o:"")+" </div>\n "},8:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open-chal-resp__item"\n data-vid="'+r(a(null!=(o=l[0][0])?c(o,"vid"):o,t))+'"\n data-pid="'+r(a(null!=(o=l[0][0])?c(o,"pid"):o,t))+'"\n data-serial="'+r(a(null!=(o=l[0][0])?c(o,"serial"):o,t))+'"\n data-slot="'+r(a(null!=(o=l[0][0])?c(o,"slot"):o,t))+'"\n >\n '+r(a(null!=(o=l[0][0])?c(o,"fullName"):o,t))+", "+r(c(n,"res").call(null!=t?t:e.nullContext||{},"yubiKeySlot",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:31,column:37},end:{line:31,column:58}}}))+" "+r(a(null!=(o=l[0][0])?c(o,"slot"):o,t))+"\n </div>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open-chal-resp">\n'+(null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=t?a(t,"loading"):t,{name:"if",hash:{},fn:e.program(1,i,0,l),inverse:e.program(3,i,0,l),data:i,blockParams:l,loc:{start:{line:2,column:4},end:{line:35,column:11}}}))?o:"")+"</div>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-open" tabindex="1" id="open__icon-open">\n <i class="fa fa-lock open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openOpen",{name:"res",hash:{},data:i,loc:{start:{line:7,column:45},end:{line:7,column:63}}}))+"</div>\n </div>\n"},3:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-new" tabindex="2" id="open__icon-new">\n <i class="fa fa-plus open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openNew",{name:"res",hash:{},data:i,loc:{start:{line:13,column:45},end:{line:13,column:62}}}))+"</div>\n </div>\n"},5:function(e,t,n,s,i){return"hide"},7:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=t?o(t,"demoOpened"):t,!1,{name:"ifeq",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:22,column:12},end:{line:27,column:21}}}))?l:""},8:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-demo" tabindex="4" id="open__icon-demo">\n <i class="fa fa-magic open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openDemo",{name:"res",hash:{},data:i,loc:{start:{line:25,column:49},end:{line:25,column:67}}}))+"</div>\n </div>\n"},10:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-more" tabindex="5" id="open__icon-more">\n <i class="fa fa-ellipsis-h open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openMore",{name:"res",hash:{},data:i,loc:{start:{line:32,column:45},end:{line:32,column:63}}}))+"</div>\n </div>\n"},12:function(e,t,n,s,i){return' <div class="open__icon open__icon-more id=open__icon-more">\n <i class="fa fa-key open__icon-i"></i>\n <div class="open__icon-text">KeeWeb</div>\n </div>\n'},14:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=null!=t?t:e.nullContext||{},u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-storage svg-btn" data-storage="'+r(a(null!=(o=l[0][0])?u(o,"name"):o,t))+'" tabindex="'+r(u(n,"add").call(c,i&&u(i,"index"),6,{name:"add",hash:{},data:i,blockParams:l,loc:{start:{line:44,column:101},end:{line:44,column:117}}}))+'"\n id="open__icon-storage--'+r(a(null!=(o=l[0][0])?u(o,"name"):o,t))+'">\n '+(null!=(o=u(n,"if").call(c,null!=(o=l[0][0])?u(o,"icon"):o,{name:"if",hash:{},fn:e.program(15,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:46,column:16},end:{line:46,column:86}}}))?o:"")+"\n "+(null!=(o=u(n,"if").call(c,null!=(o=l[0][0])?u(o,"iconSvg"):o,{name:"if",hash:{},fn:e.program(17,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:47,column:16},end:{line:47,column:97}}}))?o:"")+'\n <div class="open__icon-text">'+r(u(n,"res").call(c,null!=(o=l[0][0])?u(o,"name"):o,{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:48,column:45},end:{line:48,column:61}}}))+"</div>\n </div>\n"},15:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa fa-'+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"icon"):o,t))+' open__icon-i"></i>'},17:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open__icon-svg">'+(null!=(o=a(n,"svg").call(null!=t?t:e.nullContext||{},null!=(o=l[1][0])?a(o,"iconSvg"):o,{name:"svg",hash:{},data:i,blockParams:l,loc:{start:{line:47,column:63},end:{line:47,column:84}}}))?o:"")+"</div>"},19:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"demoOpened"):t,{name:"if",hash:{},fn:e.program(20,i,0),inverse:e.noop,data:i,loc:{start:{line:52,column:12},end:{line:57,column:19}}}))?l:""},20:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-demo" tabindex="20" id="open__icon-demo">\n <i class="fa fa-magic open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openDemo",{name:"res",hash:{},data:i,loc:{start:{line:55,column:49},end:{line:55,column:67}}}))+"</div>\n </div>\n"},22:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-generate" tabindex="21" id="open__icon-generate">\n <i class="fa fa-bolt open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openGenerate",{name:"res",hash:{},data:i,loc:{start:{line:62,column:45},end:{line:62,column:67}}}))+"</div>\n </div>\n"},24:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__icon open__icon-settings" tabindex="22" id="open__icon-settings">\n <i class="fa fa-cog open__icon-i"></i>\n <div class="open__icon-text">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"settings",{name:"res",hash:{},data:i,loc:{start:{line:68,column:45},end:{line:68,column:63}}}))+"</div>\n </div>\n"},26:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openClickToOpen",{name:"res",hash:{},data:i,loc:{start:{line:83,column:47},end:{line:83,column:72}}}))},28:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<span class="open__settings-key-file-dropbox"> '+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"openKeyFileDropbox",{name:"res",hash:{},data:i,loc:{start:{line:91,column:92},end:{line:91,column:120}}}))+"</span>"},30:function(e,t,n,s,i){return"open__settings-yubikey--present"},32:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="open__last-item" data-id="'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'" title="'+c(r(null!=(a=l[0][0])?d(a,"path"):a,t))+'" tabindex="'+c(d(n,"add").call(u,i&&d(i,"index"),30,{name:"add",hash:{},data:i,blockParams:l,loc:{start:{line:100,column:99},end:{line:100,column:116}}}))+'"\n id="open__last-item--'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'">\n '+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"icon"):a,{name:"if",hash:{},fn:e.program(33,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:102,column:20},end:{line:102,column:100}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"iconSvg"):a,{name:"if",hash:{},fn:e.program(35,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:103,column:20},end:{line:103,column:135}}}))?a:"")+'\n <span class="open__last-item-text">'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+"</span>\n "+(null!=(a=d(n,"if").call(u,null!=o[1]?d(o[1],"canRemoveLatest"):o[1],{name:"if",hash:{},fn:e.program(37,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:105,column:20},end:{line:105,column:105}}}))?a:"")+"\n </div>\n"},33:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa fa-'+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"icon"):o,t))+' open__last-item-icon"></i>'},35:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open__last-item-icon open__last-item-icon--svg">'+(null!=(o=a(n,"svg").call(null!=t?t:e.nullContext||{},null!=(o=l[1][0])?a(o,"iconSvg"):o,{name:"svg",hash:{},data:i,blockParams:l,loc:{start:{line:103,column:100},end:{line:103,column:122}}}))?o:"")+"</div>"},37:function(e,t,n,s,i){return'<i class="fa fa-times open__last-item-icon-del"></i>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="open">\n <input type="file" class="open__file-ctrl hide-by-pos" />\n <div class="open__icons">\n'+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpen"):t,{name:"if",hash:{},fn:e.program(1,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:4,column:8},end:{line:9,column:15}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canCreate"):t,{name:"if",hash:{},fn:e.program(3,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:10,column:8},end:{line:15,column:15}}}))?a:"")+' <div class="open__icon open__icon-yubikey svg-btn '+(null!=(a=u(n,"unless").call(r,null!=t?u(t,"canOpenYubiKey"):t,{name:"unless",hash:{},fn:e.program(5,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:58},end:{line:16,column:99}}}))?a:"")+'"\n tabindex="3" id="open__icon-yubikey">\n <div class="open__icon-svg">'+(null!=(a=u(n,"svg").call(r,"usb-token",{name:"svg",hash:{},data:i,blockParams:l,loc:{start:{line:18,column:40},end:{line:18,column:61}}}))?a:"")+'</div>\n <div class="open__icon-text">YubiKey</div>\n </div>\n'+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpenDemo"):t,{name:"if",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:21,column:8},end:{line:28,column:15}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"showMore"):t,{name:"if",hash:{},fn:e.program(10,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:29,column:8},end:{line:34,column:15}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"showLogo"):t,{name:"if",hash:{},fn:e.program(12,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:35,column:8},end:{line:40,column:15}}}))?a:"")+' </div>\n <div class="open__icons open__icons--lower hide">\n'+(null!=(a=u(n,"each").call(r,null!=t?u(t,"storageProviders"):t,{name:"each",hash:{},fn:e.program(14,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:43,column:8},end:{line:50,column:17}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpenDemo"):t,{name:"if",hash:{},fn:e.program(19,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:51,column:8},end:{line:58,column:15}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpenGenerator"):t,{name:"if",hash:{},fn:e.program(22,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:59,column:8},end:{line:64,column:15}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpenSettings"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:65,column:8},end:{line:70,column:15}}}))?a:"")+' </div>\n <div class="open__pass-area">\n <div class="hide">\n <input type="text" name="username">\n <input type="password" name="password">\n </div>\n <div class="open__pass-warn-wrap">\n <div class="open__pass-warning muted-color invisible"><i class="fa fa-exclamation-triangle"></i> '+c(u(n,"res").call(r,"openCaps",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:79,column:109},end:{line:79,column:127}}}))+'</div>\n </div>\n <div class="open__pass-field-wrap">\n <input class="open__pass-input" name="password" type="password" size="30" autocomplete="new-password" maxlength="1024"\n placeholder="'+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpen"):t,{name:"if",hash:{},fn:e.program(26,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:83,column:32},end:{line:83,column:79}}}))?a:"")+'" readonly tabindex="23" />\n <div class="open__pass-enter-btn" tabindex="24"><i class="fa fa-level-down fa-rotate-90"></i></div>\n <div class="open__pass-opening-icon"><i class="fa fa-spinner fa-spin"></i></div>\n </div>\n <div class="open__settings">\n <div class="open__settings-key-file hide" tabindex="25">\n <i class="fa fa-key open__settings-key-file-icon">\n </i><span class="open__settings-key-file-name">'+c(u(n,"res").call(r,"openKeyFile",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:90,column:63},end:{line:90,column:84}}}))+"</span>\n "+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canOpenKeyFromDropbox"):t,{name:"if",hash:{},fn:e.program(28,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:91,column:16},end:{line:91,column:134}}}))?a:"")+'\n </div>\n <div class="open__settings-yubikey '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canUseChalRespYubiKey"):t,{name:"if",hash:{},fn:e.program(30,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:93,column:47},end:{line:93,column:114}}}))?a:"")+' hide"\n tabindex="26" title="YubiKey">\n <div class="open__settings-yubikey__text">YK</div> '+(null!=(a=u(n,"svg").call(r,"usb-token","open__settings-yubikey-img",{name:"svg",hash:{},data:i,blockParams:l,loc:{start:{line:95,column:67},end:{line:95,column:117}}}))?a:"")+'\n </div>\n </div>\n <div class="open__last">\n'+(null!=(a=u(n,"each").call(r,null!=t?u(t,"lastOpenFiles"):t,{name:"each",hash:{},fn:e.program(32,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:99,column:12},end:{line:107,column:21}}}))?a:"")+' </div>\n </div>\n <div class="open__config-wrap">\n </div>\n <div class="open__dropzone">\n <i class="fa fa-lock muted-color open__dropzone-icon"></i>\n <h1 class="muted-color open__dropzone-header">'+c(u(n,"res").call(r,"openDropHere",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:114,column:54},end:{line:114,column:76}}}))+"</h1>\n </div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings">\n <div class="settings__back-button">\n <i class="fa fa-chevron-left settings__back-button-pre"></i>'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"retToApp",{name:"res",hash:{},data:i,loc:{start:{line:3,column:68},end:{line:3,column:86}}}))+' <i class="fa fa-external-link-square settings__back-button-post"></i>\n </div>\n <div class="scroller">\n </div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n</div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return'<a href="https://antelle.net" target="_blank">Antelle</a>'},3:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"licenseLink")||(null!=t?o(t,"licenseLink"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"licenseLink",hash:{},data:i,loc:{start:{line:4,column:43},end:{line:4,column:58}}}):l)+'" target="_blank">MIT</a>'},5:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"repoLink")||(null!=t?o(t,"repoLink"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"repoLink",hash:{},data:i,loc:{start:{line:5,column:42},end:{line:5,column:54}}}):l)+'" target="_blank">GitHub <i class="fa fa-github-alt"></i></a>'},7:function(e,t,n,s,i){return'<li><a href="https://electron.atom.io/" target="_blank">electron</a><span class="muted-color">, cross-platform desktop apps framework</span></li>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-info settings__head-icon"></i> '+r(u(n,"res").call(a,"setAboutTitle",{name:"res",hash:{},data:i,loc:{start:{line:2,column:55},end:{line:2,column:78}}}))+" KeeWeb v"+r("function"==typeof(o=null!=(o=u(n,"version")||(null!=t?u(t,"version"):t))?o:c)?o.call(a,{name:"version",hash:{},data:i,loc:{start:{line:2,column:87},end:{line:2,column:98}}}):o)+"</h1>\n <p>"+(null!=(l=u(n,"res").call(a,"setAboutFirst",{name:"res",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:3,column:7},end:{line:3,column:97}}}))?l:"")+"&nbsp;"+(null!=(l=u(n,"res").call(a,"setAboutSecond",{name:"res",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:8},end:{line:4,column:91}}}))?l:"")+"\n "+(null!=(l=u(n,"res").call(a,"setAboutSource",{name:"res",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:8},end:{line:5,column:123}}}))?l:"")+'</p>\n <a href="'+r("function"==typeof(o=null!=(o=u(n,"donationLink")||(null!=t?u(t,"donationLink"):t))?o:c)?o.call(a,{name:"donationLink",hash:{},data:i,loc:{start:{line:6,column:13},end:{line:6,column:29}}}):o)+'" target="_blank" class="settings__donate-btn no-border">\n <span class="settings__donate-btn-top">Become a</span><span class="settings__donate-btn-bottom">Backer</span>\n </a>\n <p>'+r(u(n,"res").call(a,"setAboutBuilt",{name:"res",hash:{},data:i,loc:{start:{line:9,column:7},end:{line:9,column:30}}}))+":</p>\n <h3>Libraries</h3>\n <ul>\n "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"isDesktop"):t,{name:"if",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:12,column:8},end:{line:12,column:177}}}))?l:"")+'\n <li><a href="https://handlebarsjs.com/" target="_blank">handlebars</a><span class="muted-color">, semantic templates</span></li>\n <li><a href="https://github.com/patrick-steele-idem/morphdom" target="_blank">morphdom</a><span class="muted-color">, fast and lightweight DOM diffing/patching</span></li>\n <li><a href="https://lodash.com/" target="_blank">lodash</a><span class="muted-color">, a modern JavaScript utility library delivering modularity, performance & extras</span></li>\n <li><a href="https://jquery.com/" target="_blank">jQuery</a><span class="muted-color">, fast, small, and feature-rich JavaScript library</span></li>\n <li><a href="https://marked.js.org/" target="_blank">marked</a><span class="muted-color">, a markdown parser and compiler</span></li>\n <li><a href="https://github.com/cure53/DOMPurify" target="_blank">dompurify</a><span class="muted-color">, a DOM-only, super-fast, uber-tolerant XSS sanitizer</span></li>\n <li><a href="https://github.com/TomFrost/node-phonetic" target="_blank">node-phonetic</a><span class="muted-color">, generates unique, pronounceable names</span></li>\n </ul>\n\n <h3>Core components</h3>\n <ul>\n <li><a href="https://github.com/keeweb/kdbxweb" target="_blank">kdbxweb</a><span class="muted-color">, web kdbx library</span></li>\n <li><a href="https://nodeca.github.io/pako/" target="_blank">pako</a><span class="muted-color">, zlib port to JavaScript, very fast</span></li>\n <li><a href="https://github.com/jindw/xmldom" target="_blank">xmldom</a><span class="muted-color">, a pure JS W3C Standard based DOMParser and XMLSerializer</span></li>\n </ul>\n\n <h3>UI components</h3>\n <ul>\n <li><a href="https://github.com/Diokuz/baron" target="_blank">baron</a><span class="muted-color">, native scroll with custom scrollbar</span></li>\n <li><a href="https://dbushell.github.io/Pikaday/" target="_blank">pikaday</a><span class="muted-color">, a refreshing JavaScript datepicker</span></li>\n </ul>\n\n <h3>Desktop modules</h3>\n <ul>\n <li><a href="https://github.com/antelle/node-stream-zip" target="_blank">node-stream-zip</a><span class="muted-color">, node.js library for fast reading of large ZIPs</span></li>\n <li><a href="https://github.com/ranisalt/node-argon2" target="_blank">node-argon2</a><span class="muted-color">, node.js bindings for Argon2 hashing algorithm</span></li>\n <li><a href="https://github.com/tessel/node-usb" target="_blank">node-usb</a><span class="muted-color">, improved USB library for Node.js</span></li>\n <li><a href="https://github.com/atom/node-keytar" target="_blank">node-keytar</a><span class="muted-color">, node module to manage system keychain</span></li>\n <li><a href="https://github.com/antelle/node-yubikey-chalresp" target="_blank">node-yubikey-chalresp</a><span class="muted-color">, YubiKey challenge-response API for node.js</span></li>\n </ul>\n\n <h3>Utils</h3>\n <ul>\n <li><a href="https://github.com/LazarSoft/jsqrcode" target="_blank">jsqrcode</a><span class="muted-color">, QR code scanner,\n <a href="'+r("function"==typeof(o=null!=(o=u(n,"licenseLinkApache")||(null!=t?u(t,"licenseLinkApache"):t))?o:c)?o.call(a,{name:"licenseLinkApache",hash:{},data:i,loc:{start:{line:47,column:21},end:{line:47,column:42}}}):o)+'" class="muted-color" target="_blank">Apache-2.0 license</a></span></li>\n </ul>\n\n <h3>Styles</h3>\n <ul>\n <li><a href="https://sass-lang.com/" target="_blank">sass</a><span class="muted-color">, syntactically awesome stylesheets</span></li>\n <li><a href="https://bourbon.io/" target="_blank">bourbon</a><span class="muted-color">, a simple and lightweight mixin library for Sass</span></li>\n <li><a href="https://github.com/thoughtbot/bitters" target="_blank">bitters</a><span class="muted-color">, styles, variables and structure for\n Bourbon projects</span></li>\n <li><a href="https://necolas.github.io/normalize.css/" target="_blank">normalize.css</a><span class="muted-color">, a modern, HTML5-ready alternative\n to CSS resets</span></li>\n </ul>\n\n <h3>Graphics</h3>\n <ul>\n <li><a href="https://fortawesome.github.io/Font-Awesome/" target="_blank">fontawesome</a><span class="muted-color">, the iconic font\n and CSS toolkit</span></li>\n </ul>\n\n <h2>'+r(u(n,"res").call(a,"setAboutLic",{name:"res",hash:{},data:i,loc:{start:{line:66,column:8},end:{line:66,column:29}}}))+"</h2>\n <p>"+r(u(n,"res").call(a,"setAboutLicComment",{name:"res",hash:{},data:i,loc:{start:{line:67,column:7},end:{line:67,column:35}}}))+':</p>\n <p></p>\n <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated\n documentation files (the "Software"), to deal in the Software without restriction, including without limitation\n the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,\n and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>\n <p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>\n <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO\n THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS\n OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,\n ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>\n</div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"checked"},3:function(e,t,n,s,i){return"disabled"},5:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <h2>YubiKey</h2>\n <p>"+(null!=(l=r(n,"res").call(o,"setDevicesYubiKeyIntro",{name:"res",hash:{},fn:e.program(6,i,0),inverse:e.noop,data:i,loc:{start:{line:11,column:11},end:{line:11,column:140}}}))?l:"")+"</p>\n <h3>"+a(r(n,"res").call(o,"setDevicesYubiKeyOtpTitle",{name:"res",hash:{},data:i,loc:{start:{line:12,column:12},end:{line:12,column:47}}}))+"</h3>\n <p>"+a(r(n,"res").call(o,"setDevicesYubiKeyOtpDesc",{name:"res",hash:{},data:i,loc:{start:{line:13,column:11},end:{line:13,column:45}}}))+"</p>\n <p>\n "+(null!=(l=r(n,"res").call(o,"setDevicesYubiKeyToolsDesc",{name:"res",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:15,column:12},end:{line:15,column:75}}}))?l:"")+"\n "+(null!=(l=r(n,"res").call(o,"setDevicesYubiKeyToolsDesc2",{name:"res",hash:{},fn:e.program(10,i,0),inverse:e.noop,data:i,loc:{start:{line:16,column:12},end:{line:16,column:149}}}))?l:"")+"\n </p>\n <p>\n "+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"ykmanStatus"):t,"checking",{name:"ifeq",hash:{},fn:e.program(12,i,0),inverse:e.noop,data:i,loc:{start:{line:19,column:12},end:{line:19,column:129}}}))?l:"")+"\n "+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"ykmanStatus"):t,"ok",{name:"ifeq",hash:{},fn:e.program(14,i,0),inverse:e.noop,data:i,loc:{start:{line:20,column:12},end:{line:20,column:114}}}))?l:"")+"\n "+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"ykmanStatus"):t,"error",{name:"ifeq",hash:{},fn:e.program(16,i,0),inverse:e.noop,data:i,loc:{start:{line:21,column:12},end:{line:21,column:120}}}))?l:"")+'\n </p>\n <div>\n <input type="checkbox" class="settings__input input-base settings__yubikey-show-icon" id="settings__yubikey-show-icon"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"yubiKeyShowIcon"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:25,column:19},end:{line:25,column:56}}}))?l:"")+' />\n <label for="settings__yubikey-show-icon">'+a(r(n,"res").call(o,"setDevicesYubiKeyOtpShowIcon",{name:"res",hash:{},data:i,loc:{start:{line:26,column:53},end:{line:26,column:91}}}))+'</label>\n </div>\n <div>\n <input type="checkbox" class="settings__input input-base settings__yubikey-match-entries" id="settings__yubikey-match-entries"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"yubiKeyMatchEntries"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:30,column:19},end:{line:30,column:60}}}))?l:"")+' />\n <label for="settings__yubikey-match-entries">'+a(r(n,"res").call(o,"setDevicesYubiKeyOtpMatchEntries",{name:"res",hash:{},data:i,loc:{start:{line:31,column:57},end:{line:31,column:99}}}))+'</label>\n </div>\n <div>\n <input type="checkbox" class="settings__input input-base settings__yubikey-auto-open" id="settings__yubikey-auto-open"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"yubiKeyAutoOpen"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:35,column:19},end:{line:35,column:56}}}))?l:"")+' />\n <label for="settings__yubikey-auto-open">'+a(r(n,"res").call(o,"setDevicesYubiKeyOtpAutoOpen",{name:"res",hash:{},data:i,loc:{start:{line:36,column:53},end:{line:36,column:91}}}))+'</label>\n </div>\n <div>\n <input type="checkbox" class="settings__input input-base settings__yubikey-stuck-workaround" id="settings__yubikey-stuck-workaround"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"yubiKeyStuckWorkaround"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:40,column:19},end:{line:40,column:63}}}))?l:"")+' />\n <label for="settings__yubikey-stuck-workaround">'+a(r(n,"res").call(o,"setDevicesYubiKeyStuckWorkaround",{name:"res",hash:{},data:i,loc:{start:{line:41,column:60},end:{line:41,column:102}}}))+"</label>\n </div>\n <h3>"+a(r(n,"res").call(o,"setDevicesYubiKeyChalRespTitle",{name:"res",hash:{},data:i,loc:{start:{line:43,column:12},end:{line:43,column:52}}}))+"</h3>\n <p>"+a(r(n,"res").call(o,"setDevicesYubiKeyChalRespDesc",{name:"res",hash:{},data:i,loc:{start:{line:44,column:11},end:{line:44,column:50}}}))+'</p>\n <div>\n <input type="checkbox" class="settings__input input-base settings__yubikey-chalresp-show" id="settings__yubikey-chalresp-show"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"yubiKeyShowChalResp"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:47,column:19},end:{line:47,column:60}}}))?l:"")+' />\n <label for="settings__yubikey-chalresp-show">'+a(r(n,"res").call(o,"setDevicesYubiKeyChalRespShow",{name:"res",hash:{},data:i,loc:{start:{line:48,column:57},end:{line:48,column:96}}}))+'</label>\n </div>\n <div>\n <input type="checkbox" class="settings__input input-base settings__yubikey-remember-chalresp" id="settings__yubikey-remember-chalresp"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"yubiKeyRememberChalResp"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:52,column:19},end:{line:52,column:64}}}))?l:"")+' />\n <label for="settings__yubikey-remember-chalresp">'+a(r(n,"res").call(o,"setDevicesYubiKeyRememberChalResp",{name:"res",hash:{},data:i,loc:{start:{line:53,column:61},end:{line:53,column:104}}}))+"</label>\n </div>\n"},6:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+a("function"==typeof(l=null!=(l=r(n,"yubiKeyManualLink")||(null!=t?r(t,"yubiKeyManualLink"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"yubiKeyManualLink",hash:{},data:i,loc:{start:{line:11,column:53},end:{line:11,column:74}}}):l)+'" target="_blank">'+a(r(n,"res").call(o,"setDevicesYubiKeyIntroLink",{name:"res",hash:{},data:i,loc:{start:{line:11,column:92},end:{line:11,column:128}}}))+"</a>"},8:function(e,t,n,s,i){return"<code>ykman</code>"},10:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+a("function"==typeof(l=null!=(l=r(n,"ykmanInstallLink")||(null!=t?r(t,"ykmanInstallLink"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"ykmanInstallLink",hash:{},data:i,loc:{start:{line:16,column:59},end:{line:16,column:79}}}):l)+'" target="_blank">'+a(r(n,"res").call(o,"setDevicesYubiKeyToolsDescLink",{name:"res",hash:{},data:i,loc:{start:{line:16,column:97},end:{line:16,column:137}}}))+"</a>"},12:function(e,t,n,s,i){var l;return(null!=(l=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"res").call(null!=t?t:e.nullContext||{},"setDevicesYubiKeyToolsStatusChecking",{name:"res",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:19,column:44},end:{line:19,column:117}}}))?l:"")+"..."},14:function(e,t,n,s,i){var l;return null!=(l=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"res").call(null!=t?t:e.nullContext||{},"setDevicesYubiKeyToolsStatusOk",{name:"res",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:20,column:38},end:{line:20,column:105}}}))?l:""},16:function(e,t,n,s,i){var l;return null!=(l=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"res").call(null!=t?t:e.nullContext||{},"setDevicesYubiKeyToolsStatusError",{name:"res",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:21,column:41},end:{line:21,column:111}}}))?l:""},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-usb settings__head-icon"></i> '+a(r(n,"res").call(o,"setDevicesTitle",{name:"res",hash:{},data:i,loc:{start:{line:2,column:54},end:{line:2,column:79}}}))+'</h1>\n <div>\n <input type="checkbox" class="settings__input input-base settings__devices-enable-usb" id="settings__devices-enable-usb"\n '+(null!=(l=r(n,"if").call(o,null!=t?r(t,"enableUsb"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:15},end:{line:5,column:46}}}))?l:"")+" "+(null!=(l=r(n,"unless").call(o,null!=t?r(t,"supported"):t,{name:"unless",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:47},end:{line:5,column:87}}}))?l:"")+' />\n <label for="settings__devices-enable-usb">'+a(r(n,"res").call(o,"setDevicesEnableUsb",{name:"res",hash:{},data:i,loc:{start:{line:6,column:50},end:{line:6,column:79}}}))+"</label>\n </div>\n\n"+(null!=(l=r(n,"if").call(o,null!=t?r(t,"enableUsb"):t,{name:"if",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:9,column:4},end:{line:55,column:11}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"deviceClassName")||(null!=t?o(t,"deviceClassName"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"deviceClassName",hash:{},data:i,loc:{start:{line:4,column:36},end:{line:4,column:55}}}):l)},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-lock settings__head-icon"></i> '+r("function"==typeof(o=null!=(o=c(n,"name")||(null!=t?c(t,"name"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"name",hash:{},data:i,loc:{start:{line:2,column:55},end:{line:2,column:63}}}):o)+"</h1>\n\n <p>"+(null!=(l=c(n,"res").call(a,"setFileDeviceIntro",{name:"res",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:7},end:{line:4,column:63}}}))?l:"")+'</p>\n\n <div class="settings__file-buttons">\n <button class="settings__file-button-settings btn-silent">'+r(c(n,"res").call(a,"setFileDeviceSettings",{name:"res",hash:{},data:i,loc:{start:{line:7,column:66},end:{line:7,column:97}}}))+'</button>\n <button class="settings__file-button-close btn-silent">'+r(c(n,"res").call(a,"setFileClose",{name:"res",hash:{},data:i,loc:{start:{line:8,column:63},end:{line:8,column:85}}}))+"</button>\n </div>\n</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+(null!=(l=a(n,"ifeq").call(o,null!=t?a(t,"storage"):t,"file",{name:"ifeq",hash:{},fn:e.program(2,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:8},end:{line:4,column:79}}}))?l:"")+"\n "+(null!=(l=a(n,"ifneq").call(o,null!=t?a(t,"storage"):t,"file",{name:"ifneq",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:8},end:{line:5,column:98}}}))?l:"")+"\n"},2:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<p>"+a(r(n,"res").call(o,"setFilePath",{name:"res",hash:{},data:i,loc:{start:{line:4,column:35},end:{line:4,column:56}}}))+": "+a("function"==typeof(l=null!=(l=r(n,"path")||(null!=t?r(t,"path"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"path",hash:{},data:i,loc:{start:{line:4,column:58},end:{line:4,column:66}}}):l)+"</p>"},4:function(e,t,n,s,i){var l;return"<p>"+(null!=(l=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"res").call(null!=t?t:e.nullContext||{},"setFileStorage",{name:"res",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:36},end:{line:5,column:84}}}))?l:"")+"</p>"},5:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"storage"):t,{name:"res",hash:{},data:i,loc:{start:{line:5,column:61},end:{line:5,column:76}}}))},7:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <p>"+e.escapeExpression(a(n,"res").call(o,"setFileIntl",{name:"res",hash:{},data:i,loc:{start:{line:7,column:11},end:{line:7,column:32}}}))+".</p>\n"+(null!=(l=a(n,"unless").call(o,null!=t?a(t,"supportFiles"):t,{name:"unless",hash:{},fn:e.program(8,i,0),inverse:e.noop,data:i,loc:{start:{line:8,column:8},end:{line:10,column:19}}}))?l:"")},8:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <p>"+a(r(n,"res").call(o,"setFileLocalHint",{name:"res",hash:{},data:i,loc:{start:{line:9,column:15},end:{line:9,column:41}}}))+' <a href="'+a("function"==typeof(l=null!=(l=r(n,"desktopLink")||(null!=t?r(t,"desktopLink"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"desktopLink",hash:{},data:i,loc:{start:{line:9,column:51},end:{line:9,column:66}}}):l)+'" target="_blank">'+a(r(n,"res").call(o,"setFileDownloadApp",{name:"res",hash:{},data:i,loc:{start:{line:9,column:84},end:{line:9,column:112}}}))+"</a></p>\n"},10:function(e,t,n,s,i){return"disabled"},12:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setFileSave",{name:"res",hash:{},data:i,loc:{start:{line:15,column:36},end:{line:15,column:57}}}))},14:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setFileSyncVerb",{name:"res",hash:{},data:i,loc:{start:{line:16,column:37},end:{line:16,column:62}}}))},16:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="settings__file-button-save-choose btn-silent"\n '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"syncing"):t,{name:"if",hash:{},fn:e.program(10,i,0),inverse:e.noop,data:i,loc:{start:{line:20,column:16},end:{line:20,column:46}}}))?l:"")+">"+e.escapeExpression(a(n,"res").call(o,"setFileSaveTo",{name:"res",hash:{},data:i,loc:{start:{line:20,column:47},end:{line:20,column:70}}}))+"</button>\n"},18:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__file-save-to settings__file-save-to-file">\n <i class="fa fa-file-text-o"></i>'+e.escapeExpression((l(n,"Res")||t&&l(t,"Res")||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"file",{name:"Res",hash:{},data:i,loc:{start:{line:29,column:45},end:{line:29,column:59}}}))+"\n </div>\n"},20:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"unless").call(null!=t?t:e.nullContext||{},null!=(o=l[0][0])?a(o,"own"):o,{name:"unless",hash:{},fn:e.program(21,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:33,column:12},end:{line:39,column:23}}}))?o:""},21:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__file-save-to settings__file-save-to-storage svg-btn" data-storage="'+a(e.lambda(null!=(o=l[1][0])?c(o,"name"):o,t))+'">\n '+(null!=(o=c(n,"if").call(r,null!=(o=l[1][0])?c(o,"icon"):o,{name:"if",hash:{},fn:e.program(22,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:35,column:16},end:{line:35,column:73}}}))?o:"")+"\n "+(null!=(o=c(n,"if").call(r,null!=(o=l[1][0])?c(o,"iconSvg"):o,{name:"if",hash:{},fn:e.program(24,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:36,column:16},end:{line:36,column:63}}}))?o:"")+"\n <span>"+a(c(n,"res").call(r,null!=(o=l[1][0])?c(o,"name"):o,{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:37,column:22},end:{line:37,column:38}}}))+"</span>\n </div>\n"},22:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa fa-'+e.escapeExpression(e.lambda(null!=(o=l[2][0])?a(o,"icon"):o,t))+'"></i>'},24:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"svg").call(null!=t?t:e.nullContext||{},null!=(o=l[2][0])?a(o,"iconSvg"):o,{name:"svg",hash:{},data:i,blockParams:l,loc:{start:{line:36,column:35},end:{line:36,column:56}}}))?o:""},26:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__file-save-to settings__file-save-to-xml">\n <i class="fa fa-code"></i>'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setFileSaveToXml",{name:"res",hash:{},data:i,loc:{start:{line:43,column:38},end:{line:43,column:64}}}))+"\n </div>\n"},28:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__file-save-to settings__file-save-to-html">\n <i class="fa fa-html5"></i>'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setFileSaveToHtml",{name:"res",hash:{},data:i,loc:{start:{line:48,column:43},end:{line:48,column:70}}}))+"\n </div>\n"},30:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <h2>"+a(r(n,"res").call(o,"setFileSync",{name:"res",hash:{},data:i,loc:{start:{line:54,column:8},end:{line:54,column:29}}}))+"</h2>\n <div>"+a(r(n,"res").call(o,"setFileLastSync",{name:"res",hash:{},data:i,loc:{start:{line:55,column:9},end:{line:55,column:34}}}))+": "+(null!=(l=r(n,"if").call(o,null!=t?r(t,"syncDate"):t,{name:"if",hash:{},fn:e.program(31,i,0),inverse:e.program(33,i,0),data:i,loc:{start:{line:55,column:36},end:{line:55,column:111}}}))?l:"")+" "+(null!=(l=r(n,"if").call(o,null!=t?r(t,"syncing"):t,{name:"if",hash:{},fn:e.program(35,i,0),inverse:e.noop,data:i,loc:{start:{line:55,column:112},end:{line:55,column:170}}}))?l:"")+"</div>\n "+(null!=(l=r(n,"if").call(o,null!=t?r(t,"syncError"):t,{name:"if",hash:{},fn:e.program(37,i,0),inverse:e.noop,data:i,loc:{start:{line:56,column:4},end:{line:56,column:80}}}))?l:"")+"\n"},31:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"syncDate")||(null!=t?o(t,"syncDate"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"syncDate",hash:{},data:i,loc:{start:{line:55,column:52},end:{line:55,column:64}}}):l)},33:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setFileLastSyncUnknown",{name:"res",hash:{},data:i,loc:{start:{line:55,column:72},end:{line:55,column:104}}}))},35:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"("+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setFileSyncInProgress",{name:"res",hash:{},data:i,loc:{start:{line:55,column:128},end:{line:55,column:159}}}))+"...)"},37:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<div>"+a(r(n,"res").call(o,"setFileSyncError",{name:"res",hash:{},data:i,loc:{start:{line:56,column:26},end:{line:56,column:52}}}))+": "+a("function"==typeof(l=null!=(l=r(n,"syncError")||(null!=t?r(t,"syncError"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"syncError",hash:{},data:i,loc:{start:{line:56,column:54},end:{line:56,column:67}}}):l)+"</div>"},39:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <p>\n <label for="settings__file-yubikey">'+c(u(n,"res").call(r,"setFileYubiKey",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:87,column:48},end:{line:87,column:72}}}))+':</label>\n <select class="settings__select settings__select-no-margin input-base" id="settings__file-yubikey">\n <option value="" '+(null!=(a=u(n,"unless").call(r,null!=t?u(t,"selectedYubiKey"):t,{name:"unless",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:89,column:33},end:{line:89,column:79}}}))?a:"")+">"+c(u(n,"res").call(r,"setFileDontUseYubiKey",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:89,column:80},end:{line:89,column:111}}}))+"</option>\n"+(null!=(a=u(n,"each").call(r,null!=t?u(t,"yubiKeys"):t,{name:"each",hash:{},fn:e.program(42,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:90,column:16},end:{line:100,column:25}}}))?a:"")+' <option value="refresh">'+c(u(n,"res").call(r,"setFileRefreshYubiKeyList",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:101,column:40},end:{line:101,column:75}}}))+"</option>\n </select>\n </p>\n"},40:function(e,t,n,s,i){return"selected"},42:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+c(r(null!=(a=l[0][0])?d(a,"value"):a,t))+'"\n '+(null!=(a=d(n,"ifeq").call(u,null!=o[1]?d(o[1],"selectedYubiKey"):o[1],null!=(a=l[0][0])?d(a,"value"):a,{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:92,column:28},end:{line:92,column:82}}}))?a:"")+'\n data-vid="'+c(r(null!=(a=l[0][0])?d(a,"vid"):a,t))+'"\n data-pid="'+c(r(null!=(a=l[0][0])?d(a,"pid"):a,t))+'"\n data-serial="'+c(r(null!=(a=l[0][0])?d(a,"serial"):a,t))+'"\n data-slot="'+c(r(null!=(a=l[0][0])?d(a,"slot"):a,t))+'"\n >\n '+c(r(null!=(a=l[0][0])?d(a,"fullName"):a,t))+", "+c(d(n,"res").call(u,"yubiKeySlot",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:98,column:41},end:{line:98,column:62}}}))+" "+c(r(null!=(a=l[0][0])?d(a,"slot"):a,t))+"\n </option>\n"},44:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.escapeExpression,d=e.hooks.helperMissing,p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <h2>"+u(p(n,"res").call(c,"setFileBackups",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:113,column:8},end:{line:113,column:32}}}))+'</h2>\n <div>\n <input type="checkbox" class="settings__input input-base" id="settings__file-backup-enabled" '+(null!=(a=p(n,"if").call(c,null!=t?p(t,"backupEnabled"):t,{name:"if",hash:{},fn:e.program(45,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:115,column:101},end:{line:115,column:136}}}))?a:"")+' />\n <label for="settings__file-backup-enabled">'+u(p(n,"res").call(c,"setFileBackupEnable",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:116,column:51},end:{line:116,column:80}}}))+'</label>\n </div>\n <div class="settings__file-backups '+(null!=(a=p(n,"unless").call(c,null!=t?p(t,"backupEnabled"):t,{name:"unless",hash:{},fn:e.program(47,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:118,column:39},end:{line:118,column:79}}}))?a:"")+'">\n <select class="settings__select input-base" id="settings__file-backup-storage">\n '+(null!=(a=p(n,"if").call(c,null!=t?p(t,"supportFiles"):t,{name:"if",hash:{},fn:e.program(49,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:120,column:12},end:{line:120,column:131}}}))?a:"")+"\n"+(null!=(a=p(n,"each").call(c,null!=t?p(t,"storageProviders"):t,{name:"each",hash:{},fn:e.program(51,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:121,column:12},end:{line:125,column:21}}}))?a:"")+' </select>\n <label for="settings__file-backup-path">'+u(p(n,"res").call(c,"setFileBackupPath",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:127,column:48},end:{line:127,column:75}}}))+':</label>\n <input type="text" class="settings__input input-base" id="settings__file-backup-path" value="'+u("function"==typeof(r=null!=(r=p(n,"backupPath")||(null!=t?p(t,"backupPath"):t))?r:d)?r.call(c,{name:"backupPath",hash:{},data:i,blockParams:l,loc:{start:{line:128,column:101},end:{line:128,column:115}}}):r)+'"\n placeholder="'+u("function"==typeof(r=null!=(r=p(n,"backupPath")||(null!=t?p(t,"backupPath"):t))?r:d)?r.call(c,{name:"backupPath",hash:{},data:i,blockParams:l,loc:{start:{line:129,column:25},end:{line:129,column:39}}}):r)+'" />\n <label for="settings__file-backup-schedule">'+u(p(n,"res").call(c,"setFileBackupTime",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:130,column:52},end:{line:130,column:79}}}))+':</label>\n <select class="settings__select input-base" id="settings__file-backup-schedule">\n <option value="0" '+(null!=(a=p(n,"ifeq").call(c,null!=t?p(t,"backupSchedule"):t,"0",{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:132,column:30},end:{line:132,column:75}}}))?a:"")+">"+u(p(n,"res").call(c,"setFileBackupOnSave",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:132,column:76},end:{line:132,column:105}}}))+'</option>\n <option value="1d" '+(null!=(a=p(n,"ifeq").call(c,null!=t?p(t,"backupSchedule"):t,"1d",{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:133,column:31},end:{line:133,column:77}}}))?a:"")+">"+u(p(n,"res").call(c,"setFileBackupDaily",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:133,column:78},end:{line:133,column:106}}}))+'</option>\n <option value="1w" '+(null!=(a=p(n,"ifeq").call(c,null!=t?p(t,"backupSchedule"):t,"1w",{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:134,column:31},end:{line:134,column:77}}}))?a:"")+">"+u(p(n,"res").call(c,"setFileBackupWeekly",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:134,column:78},end:{line:134,column:107}}}))+'</option>\n <option value="1m" '+(null!=(a=p(n,"ifeq").call(c,null!=t?p(t,"backupSchedule"):t,"1m",{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:135,column:31},end:{line:135,column:77}}}))?a:"")+">"+u(p(n,"res").call(c,"setFileBackupMonthly",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:135,column:78},end:{line:135,column:108}}}))+'</option>\n <option value="" '+(null!=(a=p(n,"unless").call(c,null!=t?p(t,"backupSchedule"):t,{name:"unless",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:136,column:29},end:{line:136,column:74}}}))?a:"")+">"+u(p(n,"res").call(c,"setFileBackupManually",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:136,column:75},end:{line:136,column:106}}}))+'</option>\n </select>\n <button class="btn-silent settings__file-button-backup">'+u(p(n,"res").call(c,"setFileBackupNow",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:138,column:64},end:{line:138,column:90}}}))+"</button>\n </div>\n"},45:function(e,t,n,s,i){return"checked"},47:function(e,t,n,s,i){return"hide"},49:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<option value="file" '+(null!=(l=a(n,"ifeq").call(o,null!=t?a(t,"backupStorage"):t,"file",{name:"ifeq",hash:{},fn:e.program(40,i,0),inverse:e.noop,data:i,loc:{start:{line:120,column:53},end:{line:120,column:100}}}))?l:"")+">"+e.escapeExpression((a(n,"Res")||t&&a(t,"Res")||e.hooks.helperMissing).call(o,"file",{name:"Res",hash:{},data:i,loc:{start:{line:120,column:101},end:{line:120,column:115}}}))+"</option>"},51:function(e,t,n,s,i,l,o){var a,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(a=r(n,"if").call(null!=t?t:e.nullContext||{},null!=(a=l[0][0])?r(a,"backup"):a,{name:"if",hash:{},fn:e.program(52,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:122,column:16},end:{line:124,column:23}}}))?a:""},52:function(e,t,n,s,i,l,o){var a,r=e.escapeExpression,c=null!=t?t:e.nullContext||{},u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+r(e.lambda(null!=(a=l[1][0])?u(a,"name"):a,t))+'" '+(null!=(a=u(n,"ifeq").call(c,null!=o[1]?u(o[1],"backupStorage"):o[1],null!=(a=l[1][0])?u(a,"name"):a,{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:123,column:45},end:{line:123,column:97}}}))?a:"")+">"+r(u(n,"res").call(c,null!=(a=l[1][0])?u(a,"name"):a,{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:123,column:98},end:{line:123,column:114}}}))+"</option>\n"},54:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <label for="settings__file-hist-len">'+a(r(n,"res").call(o,"setFileHistLen",{name:"res",hash:{},data:i,loc:{start:{line:154,column:45},end:{line:154,column:69}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base" id="settings__file-hist-len" value="'+a("function"==typeof(l=null!=(l=r(n,"historyMaxItems")||(null!=t?r(t,"historyMaxItems"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"historyMaxItems",hash:{},data:i,loc:{start:{line:155,column:121},end:{line:155,column:140}}}):l)+'" maxlength="6" />\n'},56:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<option value="Argon2" '+(null!=(l=o(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=t?o(t,"kdfName"):t,"Argon2",{name:"ifeq",hash:{},fn:e.program(40,i,0),inverse:e.noop,data:i,loc:{start:{line:169,column:56},end:{line:169,column:99}}}))?l:"")+">Argon2</option>"},58:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <label for="settings__file-key-rounds">'+a(r(n,"res").call(o,"setFileRounds",{name:"res",hash:{},data:i,loc:{start:{line:172,column:43},end:{line:172,column:66}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base" id="settings__file-key-rounds" value="'+a("function"==typeof(l=null!=(l=r(n,"keyEncryptionRounds")||(null!=t?r(t,"keyEncryptionRounds"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"keyEncryptionRounds",hash:{},data:i,loc:{start:{line:173,column:119},end:{line:173,column:142}}}):l)+'" maxlength="10" />\n'},60:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"kdfParameters"):t,{name:"if",hash:{},fn:e.program(61,i,0),inverse:e.noop,data:i,loc:{start:{line:174,column:4},end:{line:201,column:4}}}))?l:""},61:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(l=a(n,"ifeq").call(o,null!=t?a(t,"kdfName"):t,"Aes",{name:"ifeq",hash:{},fn:e.program(62,i,0),inverse:e.noop,data:i,loc:{start:{line:175,column:8},end:{line:181,column:17}}}))?l:"")+(null!=(l=a(n,"ifeq").call(o,null!=t?a(t,"kdfName"):t,"Argon2",{name:"ifeq",hash:{},fn:e.program(64,i,0),inverse:e.noop,data:i,loc:{start:{line:182,column:8},end:{line:200,column:17}}}))?l:"")+" "},62:function(e,t,n,s,i){var l,o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <label for="settings__file-kdf-rounds">'+o(a(n,"res").call(null!=t?t:e.nullContext||{},"setFileRounds",{name:"res",hash:{},data:i,loc:{start:{line:177,column:55},end:{line:177,column:78}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base settings__input-kdf"\n id="settings__file-kdf-rounds" data-field="rounds" value="'+o(e.lambda(null!=(l=null!=t?a(t,"kdfParameters"):t)?a(l,"rounds"):l,t))+'" maxlength="10" />\n </div>\n'},64:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lambda,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__row">\n <div class="settings__col-small">\n <label class="settings__col-small-label" for="settings__file-kdf-iter">'+a(c(n,"res").call(o,"setFileKdfParamsIter",{name:"res",hash:{},data:i,loc:{start:{line:185,column:91},end:{line:185,column:121}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base settings__input-kdf"\n data-field="iterations" id="settings__file-kdf-iter" value="'+a(r(null!=(l=null!=t?c(t,"kdfParameters"):t)?c(l,"iterations"):l,t))+'" maxlength="10" />\n </div>\n <div class="settings__col-small">\n <label class="settings__col-small-label" for="settings__file-kdf-mem">'+a(c(n,"res").call(o,"setFileKdfParamsMem",{name:"res",hash:{},data:i,loc:{start:{line:190,column:90},end:{line:190,column:119}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base settings__input-kdf"\n data-field="memory" data-mul="1024" id="settings__file-kdf-mem" value="'+a(r(null!=(l=null!=t?c(t,"kdfParameters"):t)?c(l,"memory"):l,t))+'" maxlength="10" />\n </div>\n <div class="settings__col-small">\n <label class="settings__col-small-label" for="settings__file-kdf-par">'+a(c(n,"res").call(o,"setFileKdfParamsPar",{name:"res",hash:{},data:i,loc:{start:{line:195,column:90},end:{line:195,column:119}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base settings__input-kdf"\n data-field="parallelism" id="settings__file-kdf-par" value="'+a(r(null!=(l=null!=t?c(t,"kdfParameters"):t)?c(l,"parallelism"):l,t))+'" maxlength="2" />\n </div>\n </div>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.hooks.helperMissing,d="function",p=e.escapeExpression,h=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-lock settings__head-icon"></i> '+p(typeof(r=null!=(r=h(n,"name")||(null!=t?h(t,"name"):t))?r:u)===d?r.call(c,{name:"name",hash:{},data:i,blockParams:l,loc:{start:{line:2,column:55},end:{line:2,column:63}}}):r)+"</h1>\n"+(null!=(a=h(n,"if").call(c,null!=t?h(t,"storage"):t,{name:"if",hash:{},fn:e.program(1,i,0,l,o),inverse:e.program(7,i,0,l,o),data:i,blockParams:l,loc:{start:{line:3,column:4},end:{line:11,column:11}}}))?a:"")+'\n <div class="settings__file-buttons">\n <button class="settings__file-button-save-default" '+(null!=(a=h(n,"if").call(c,null!=t?h(t,"syncing"):t,{name:"if",hash:{},fn:e.program(10,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:14,column:59},end:{line:14,column:89}}}))?a:"")+">\n "+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"storage"):t,"file",{name:"ifeq",hash:{},fn:e.program(12,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:15,column:12},end:{line:15,column:66}}}))?a:"")+"\n "+(null!=(a=h(n,"ifneq").call(c,null!=t?h(t,"storage"):t,"file",{name:"ifneq",hash:{},fn:e.program(14,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:12},end:{line:16,column:72}}}))?a:"")+"\n </button>\n"+(null!=(a=h(n,"if").call(c,null!=t?h(t,"canSaveTo"):t,{name:"if",hash:{},fn:e.program(16,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:18,column:8},end:{line:21,column:15}}}))?a:"")+' <button class="settings__file-button-close btn-silent">'+p(h(n,"res").call(c,"setFileClose",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:22,column:63},end:{line:22,column:85}}}))+'</button>\n </div>\n\n <div class="settings__file-save-choose hide">\n <h2>'+p(h(n,"res").call(c,"setFileSaveTo",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:26,column:12},end:{line:26,column:35}}}))+"</h2>\n"+(null!=(a=h(n,"ifneq").call(c,null!=t?h(t,"storage"):t,"file",{name:"ifneq",hash:{},fn:e.program(18,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:27,column:8},end:{line:31,column:18}}}))?a:"")+(null!=(a=h(n,"each").call(c,null!=t?h(t,"storageProviders"):t,{name:"each",hash:{},fn:e.program(20,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:32,column:8},end:{line:40,column:17}}}))?a:"")+(null!=(a=h(n,"if").call(c,null!=t?h(t,"canExportXml"):t,{name:"if",hash:{},fn:e.program(26,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:41,column:8},end:{line:45,column:15}}}))?a:"")+(null!=(a=h(n,"if").call(c,null!=t?h(t,"canExportHtml"):t,{name:"if",hash:{},fn:e.program(28,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:46,column:8},end:{line:50,column:15}}}))?a:"")+" </div>\n\n"+(null!=(a=h(n,"if").call(c,null!=t?h(t,"storage"):t,{name:"if",hash:{},fn:e.program(30,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:53,column:4},end:{line:57,column:11}}}))?a:"")+"\n <h2>"+p(h(n,"res").call(c,"settings",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:59,column:8},end:{line:59,column:26}}}))+'</h2>\n <label for="settings__file-master-pass" class="settings__file-master-pass-label input-base">'+p(h(n,"res").call(c,"setFilePass",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:60,column:96},end:{line:60,column:117}}}))+':\n <span class="settings__file-master-pass-warning">\n <i class="fa fa-warning"></i> <span id="settings__file-master-pass-warning-text">'+p(h(n,"res").call(c,"setFilePassChange",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:62,column:93},end:{line:62,column:120}}}))+'</span>\n </span>\n </label>\n <div class="hide">\n <input type="text" name="username">\n <input type="password" name="password">\n </div>\n <input type="password" class="settings__input input-base" id="settings__file-master-pass" value="'+p(typeof(r=null!=(r=h(n,"password")||(null!=t?h(t,"password"):t))?r:u)===d?r.call(c,{name:"password",hash:{},data:i,blockParams:l,loc:{start:{line:70,column:101},end:{line:70,column:113}}}):r)+'" autocomplete="new-password" />\n <div id="settings__file-confirm-master-pass-group">\n <label for="settings__file-confirm-master-pass" class="settings__file-master-pass-label input-base">'+p(h(n,"res").call(c,"setFileConfirmPass",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:72,column:108},end:{line:72,column:136}}}))+':\n <span class="settings__file-confirm-master-pass-warning">\n <i class="fa fa-warning"></i> '+p(h(n,"res").call(c,"setFilePassNotMatch",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:74,column:46},end:{line:74,column:75}}}))+'\n </span>\n </label>\n <input type="password" class="settings__input input-base" id="settings__file-confirm-master-pass" autocomplete="confirm-password" />\n </div>\n <p>\n <label for="settings__file-key-file">'+p(h(n,"res").call(c,"setFileKeyFile",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:80,column:45},end:{line:80,column:69}}}))+':</label>\n <select class="settings__select settings__select-no-margin input-base" id="settings__file-key-file"></select>\n <a id="settings__file-file-select-link">'+p(h(n,"res").call(c,"setFileSelKeyFile",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:82,column:48},end:{line:82,column:75}}}))+'</a>\n <input type="file" id="settings__file-file-select" class="hide-by-pos" />\n </p>\n'+(null!=(a=h(n,"if").call(c,null!=t?h(t,"showYubiKeyBlock"):t,{name:"if",hash:{},fn:e.program(39,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:85,column:4},end:{line:104,column:11}}}))?a:"")+"\n <h2>"+p(h(n,"res").call(c,"setFileNames",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:106,column:8},end:{line:106,column:30}}}))+'</h2>\n <label for="settings__file-name">'+p((h(n,"Res")||t&&h(t,"Res")||u).call(c,"name",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:107,column:37},end:{line:107,column:51}}}))+':</label>\n <input type="text" class="settings__input input-base" id="settings__file-name" value="'+p(typeof(r=null!=(r=h(n,"name")||(null!=t?h(t,"name"):t))?r:u)===d?r.call(c,{name:"name",hash:{},data:i,blockParams:l,loc:{start:{line:108,column:90},end:{line:108,column:98}}}):r)+'" required />\n <label for="settings__file-def-user">'+p(h(n,"res").call(c,"setFileDefUser",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:109,column:41},end:{line:109,column:65}}}))+':</label>\n <input type="text" class="settings__input input-base" id="settings__file-def-user" value="'+p(typeof(r=null!=(r=h(n,"defaultUser")||(null!=t?h(t,"defaultUser"):t))?r:u)===d?r.call(c,{name:"defaultUser",hash:{},data:i,blockParams:l,loc:{start:{line:110,column:94},end:{line:110,column:109}}}):r)+'" />\n\n'+(null!=(a=h(n,"if").call(c,null!=t?h(t,"canBackup"):t,{name:"if",hash:{},fn:e.program(44,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:112,column:4},end:{line:140,column:11}}}))?a:"")+"\n <h2>"+p((h(n,"Res")||t&&h(t,"Res")||u).call(c,"history",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:142,column:8},end:{line:142,column:25}}}))+'</h2>\n <div>\n <input type="checkbox" class="settings__input input-base" id="settings__file-trash" '+(null!=(a=h(n,"if").call(c,null!=t?h(t,"recycleBinEnabled"):t,{name:"if",hash:{},fn:e.program(45,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:144,column:92},end:{line:144,column:131}}}))?a:"")+' />\n <label for="settings__file-trash">'+p(h(n,"res").call(c,"setFileEnableTrash",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:145,column:42},end:{line:145,column:70}}}))+'</label>\n </div>\n <label for="settings__file-hist-type">'+p(h(n,"res").call(c,"setFileHistMode",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:147,column:42},end:{line:147,column:67}}}))+'</label>\n <select class="settings__select input-base" id="settings__file-hist-type">\n <option value="1" '+(null!=(a=h(n,"cmp").call(c,null!=t?h(t,"historyMaxItems"):t,0,">",{name:"cmp",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:149,column:26},end:{line:149,column:72}}}))?a:"")+">"+p(h(n,"res").call(c,"setFileHistLimited",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:149,column:73},end:{line:149,column:101}}}))+'</option>\n <option value="0" '+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"historyMaxItems"):t,0,{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:150,column:26},end:{line:150,column:70}}}))?a:"")+">"+p(h(n,"res").call(c,"setFileHistDisabled",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:150,column:71},end:{line:150,column:100}}}))+'</option>\n <option value="-1" '+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"historyMaxItems"):t,-1,{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:151,column:27},end:{line:151,column:72}}}))?a:"")+">"+p(h(n,"res").call(c,"setFileHistUnlimited",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:151,column:73},end:{line:151,column:103}}}))+"</option>\n </select>\n"+(null!=(a=h(n,"cmp").call(c,null!=t?h(t,"historyMaxItems"):t,0,">",{name:"cmp",hash:{},fn:e.program(54,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:153,column:4},end:{line:156,column:12}}}))?a:"")+' <label for="settings__file-hist-size">'+p(h(n,"res").call(c,"setFileHistSize",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:157,column:42},end:{line:157,column:67}}}))+':</label>\n <input type="text" pattern="\\d+" required class="settings__input input-base" id="settings__file-hist-size" value="'+p(typeof(r=null!=(r=h(n,"historyMaxSize")||(null!=t?h(t,"historyMaxSize"):t))?r:u)===d?r.call(c,{name:"historyMaxSize",hash:{},data:i,blockParams:l,loc:{start:{line:158,column:118},end:{line:158,column:136}}}):r)+'" maxlength="3" />\n\n <h2>'+p(h(n,"res").call(c,"advanced",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:160,column:8},end:{line:160,column:26}}}))+'</h2>\n <label for="settings__file-format-version">'+p(h(n,"res").call(c,"setFileFormatVersion",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:161,column:47},end:{line:161,column:77}}}))+'</label>\n <select class="settings__select input-base" id="settings__file-format-version">\n <option value="3" '+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"formatVersion"):t,3,{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:163,column:26},end:{line:163,column:68}}}))?a:"")+'>KDBX 3</option>\n <option value="4" '+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"formatVersion"):t,4,{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:164,column:26},end:{line:164,column:68}}}))?a:"")+'>KDBX 4</option>\n </select>\n <label for="settings__file-kdf">'+p(h(n,"res").call(c,"setFileKdfParams",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:166,column:36},end:{line:166,column:62}}}))+'</label>\n <select class="settings__select input-base" id="settings__file-kdf" '+(null!=(a=h(n,"ifneq").call(c,null!=t?h(t,"formatVersion"):t,4,{name:"ifneq",hash:{},fn:e.program(10,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:167,column:72},end:{line:167,column:116}}}))?a:"")+'>\n <option value="Aes" '+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"kdfName"):t,"AES",{name:"ifeq",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:168,column:28},end:{line:168,column:68}}}))?a:"")+">AES</option>\n "+(null!=(a=h(n,"ifeq").call(c,null!=t?h(t,"formatVersion"):t,4,{name:"ifeq",hash:{},fn:e.program(56,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:169,column:8},end:{line:169,column:124}}}))?a:"")+"\n </select>\n"+(null!=(a=h(n,"if").call(c,null!=t?h(t,"keyEncryptionRounds"):t,{name:"if",hash:{},fn:e.program(58,i,0,l,o),inverse:e.program(60,i,0,l,o),data:i,blockParams:l,loc:{start:{line:171,column:4},end:{line:201,column:11}}}))?a:"")+'\n <label for="settings__file-key-change-force">'+p(h(n,"res").call(c,"setFileKeyChangeForce",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:203,column:49},end:{line:203,column:80}}}))+':</label>\n <input type="text" pattern="\\d*" class="settings__input input-base" id="settings__file-key-change-force" value="'+p(typeof(r=null!=(r=h(n,"keyChangeForce")||(null!=t?h(t,"keyChangeForce"):t))?r:u)===d?r.call(c,{name:"keyChangeForce",hash:{},data:i,blockParams:l,loc:{start:{line:204,column:116},end:{line:204,column:134}}}):r)+'" maxlength="6" />\n</div>\n'},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.hooks.helperMissing,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <pre class="settings__logs-log settings__logs-log--'+r("function"==typeof(l=null!=(l=c(n,"level")||(null!=t?c(t,"level"):t))?l:a)?l.call(o,{name:"level",hash:{},data:i,loc:{start:{line:3,column:55},end:{line:3,column:64}}}):l)+'">'+r("function"==typeof(l=null!=(l=c(n,"msg")||(null!=t?c(t,"msg"):t))?l:a)?l.call(o,{name:"msg",hash:{},data:i,loc:{start:{line:3,column:66},end:{line:3,column:73}}}):l)+"</pre>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__logs">\n'+(null!=(l=o(n,"each").call(null!=t?t:e.nullContext||{},null!=t?o(t,"logs"):t,{name:"each",hash:{},fn:e.program(1,i,1),inverse:e.noop,data:i,loc:{start:{line:2,column:4},end:{line:4,column:13}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__general-prv-desc">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"desc"):t,{name:"res",hash:{},data:i,loc:{start:{line:2,column:56},end:{line:2,column:68}}}))+"</div>"},3:function(e,t,n,s,i,l,o){var a,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(a=r(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=t?r(t,"type"):t,"select",{name:"ifeq",hash:{},fn:e.program(4,i,0,l,o),inverse:e.program(8,i,0,l,o),data:i,blockParams:l,loc:{start:{line:5,column:12},end:{line:30,column:21}}}))?a:""},4:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.hooks.helperMissing,d=e.escapeExpression,p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <label for="settings__general-prv-field-sel-'+d("function"==typeof(r=null!=(r=p(n,"id")||(null!=t?p(t,"id"):t))?r:u)?r.call(c,{name:"id",hash:{},data:i,blockParams:l,loc:{start:{line:7,column:64},end:{line:7,column:70}}}):r)+'">'+d(p(n,"res").call(c,null!=t?p(t,"title"):t,{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:7,column:72},end:{line:7,column:85}}}))+':</label>\n <select\n class="settings__select input-base settings__general-prv-field settings__general-prv-field-sel"\n id="settings__general-prv-field-sel-'+d("function"==typeof(r=null!=(r=p(n,"id")||(null!=t?p(t,"id"):t))?r:u)?r.call(c,{name:"id",hash:{},data:i,blockParams:l,loc:{start:{line:10,column:64},end:{line:10,column:70}}}):r)+'"\n data-id="'+d("function"==typeof(r=null!=(r=p(n,"id")||(null!=t?p(t,"id"):t))?r:u)?r.call(c,{name:"id",hash:{},data:i,blockParams:l,loc:{start:{line:11,column:37},end:{line:11,column:43}}}):r)+'">\n'+(null!=(a=p(n,"each").call(c,null!=t?p(t,"options"):t,{name:"each",hash:{},fn:e.program(5,i,2,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:12,column:20},end:{line:14,column:29}}}))?a:"")+" </select>\n </div>\n"},5:function(e,t,n,s,i,l,o){var a,r=e.escapeExpression,c=null!=t?t:e.nullContext||{},u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+r(e.lambda(l[0][1],t))+'" '+(null!=(a=u(n,"ifeq").call(c,null!=o[1]?u(o[1],"value"):o[1],l[0][1],{name:"ifeq",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:13,column:48},end:{line:13,column:87}}}))?a:"")+">"+r(u(n,"res").call(c,l[0][0],{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:13,column:88},end:{line:13,column:101}}}))+"</option>\n"},6:function(e,t,n,s,i){return"selected"},8:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c="function",u=e.escapeExpression,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <label for="settings__general-prv-field-txt-'+u(typeof(o=null!=(o=d(n,"id")||(null!=t?d(t,"id"):t))?o:r)===c?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:18,column:60},end:{line:18,column:66}}}):o)+'">'+u(d(n,"res").call(a,null!=t?d(t,"title"):t,{name:"res",hash:{},data:i,loc:{start:{line:18,column:68},end:{line:18,column:81}}}))+":</label>\n "+(null!=(l=d(n,"if").call(a,null!=t?d(t,"desc"):t,{name:"if",hash:{},fn:e.program(9,i,0),inverse:e.noop,data:i,loc:{start:{line:19,column:16},end:{line:19,column:111}}}))?l:"")+'\n <input type="'+u(typeof(o=null!=(o=d(n,"type")||(null!=t?d(t,"type"):t))?o:r)===c?o.call(a,{name:"type",hash:{},data:i,loc:{start:{line:20,column:29},end:{line:20,column:37}}}):o)+'"\n class="input-base settings__general-prv-field settings__input settings__general-prv-field-txt"\n id="settings__general-prv-field-txt-'+u(typeof(o=null!=(o=d(n,"id")||(null!=t?d(t,"id"):t))?o:r)===c?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:22,column:59},end:{line:22,column:65}}}):o)+'"\n autocomplete="off"\n value="'+u(typeof(o=null!=(o=d(n,"value")||(null!=t?d(t,"value"):t))?o:r)===c?o.call(a,{name:"value",hash:{},data:i,loc:{start:{line:24,column:30},end:{line:24,column:39}}}):o)+'"\n data-id="'+u(typeof(o=null!=(o=d(n,"id")||(null!=t?d(t,"id"):t))?o:r)===c?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:25,column:32},end:{line:25,column:38}}}):o)+'"\n '+(null!=(l=d(n,"if").call(a,null!=t?d(t,"placeholder"):t,{name:"if",hash:{},fn:e.program(11,i,0),inverse:e.noop,data:i,loc:{start:{line:26,column:23},end:{line:26,column:82}}}))?l:"")+"\n "+(null!=(l=d(n,"if").call(a,null!=t?d(t,"required"):t,{name:"if",hash:{},fn:e.program(13,i,0),inverse:e.noop,data:i,loc:{start:{line:27,column:20},end:{line:27,column:51}}}))?l:"")+"\n "+(null!=(l=d(n,"if").call(a,null!=t?d(t,"pattern"):t,{name:"if",hash:{},fn:e.program(15,i,0),inverse:e.noop,data:i,loc:{start:{line:28,column:20},end:{line:28,column:63}}}))?l:"")+"\n />\n"},9:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__general-prv-field-desc muted-color">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"desc"):t,{name:"res",hash:{},data:i,loc:{start:{line:19,column:86},end:{line:19,column:98}}}))+"</div>"},11:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'placeholder="'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},null!=t?l(t,"placeholder"):t,{name:"res",hash:{},data:i,loc:{start:{line:26,column:55},end:{line:26,column:74}}}))+'"'},13:function(e,t,n,s,i){return"required"},15:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'pattern="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"pattern")||(null!=t?o(t,"pattern"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"pattern",hash:{},data:i,loc:{start:{line:28,column:44},end:{line:28,column:55}}}):l)+'"'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__general-prv settings__general-prv-'+e.escapeExpression("function"==typeof(r=null!=(r=u(n,"name")||(null!=t?u(t,"name"):t))?r:e.hooks.helperMissing)?r.call(c,{name:"name",hash:{},data:i,blockParams:l,loc:{start:{line:1,column:56},end:{line:1,column:64}}}):r)+'">\n '+(null!=(a=u(n,"if").call(c,null!=t?u(t,"desc"):t,{name:"if",hash:{},fn:e.program(1,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:2,column:4},end:{line:2,column:81}}}))?a:"")+'\n <div class="settings__general-prv-fields">\n'+(null!=(a=u(n,"each").call(c,null!=t?u(t,"fields"):t,{name:"each",hash:{},fn:e.program(3,i,2,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:4,column:8},end:{line:31,column:17}}}))?a:"")+" </div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <h2 class="action-color">'+a(r(n,"res").call(o,"setGenUpdate",{name:"res",hash:{},data:i,loc:{start:{line:5,column:29},end:{line:5,column:51}}}))+"</h2>\n <div>"+a(r(n,"res").call(o,"setGenNewVersion",{name:"res",hash:{},data:i,loc:{start:{line:6,column:9},end:{line:6,column:35}}}))+'. <a href="'+a("function"==typeof(l=null!=(l=r(n,"releaseNotesLink")||(null!=t?r(t,"releaseNotesLink"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"releaseNotesLink",hash:{},data:i,loc:{start:{line:6,column:46},end:{line:6,column:66}}}):l)+'" target="_blank">'+a(r(n,"res").call(o,"setGenReleaseNotes",{name:"res",hash:{},data:i,loc:{start:{line:6,column:84},end:{line:6,column:112}}}))+'</a></div>\n <div class="settings__general-update-buttons">\n <button class="settings__general-restart-btn">'+a(r(n,"res").call(o,"setGenReloadToUpdate",{name:"res",hash:{},data:i,loc:{start:{line:8,column:54},end:{line:8,column:84}}}))+"</button>\n </div>\n"},3:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"updateManual"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:10,column:4},end:{line:16,column:4}}}))?l:""},4:function(e,t,n,s,i){var l=null!=t?t:e.nullContext||{},o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <h2 class="action-color">'+o(a(n,"res").call(l,"setGenUpdate",{name:"res",hash:{},data:i,loc:{start:{line:11,column:29},end:{line:11,column:51}}}))+"</h2>\n <div>"+o(a(n,"res").call(l,"setGenUpdateManual",{name:"res",hash:{},data:i,loc:{start:{line:12,column:9},end:{line:12,column:37}}}))+'</div>\n <div class="settings__general-update-buttons">\n <button class="settings__general-download-update-btn">'+o(a(n,"res").call(l,"setGenDownloadUpdate",{name:"res",hash:{},data:i,loc:{start:{line:14,column:62},end:{line:14,column:92}}}))+"</button>\n </div>\n "},6:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <h2>"+r(u(n,"res").call(a,"setGenUpdate",{name:"res",hash:{},data:i,loc:{start:{line:18,column:8},end:{line:18,column:30}}}))+'</h2>\n <div>\n <select class="settings__general-auto-update settings__select input-base">\n <option value="install" '+(null!=(l=u(n,"ifeq").call(a,null!=t?u(t,"autoUpdate"):t,"install",{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:21,column:36},end:{line:21,column:83}}}))?l:"")+">"+r(u(n,"res").call(a,"setGenUpdateAuto",{name:"res",hash:{},data:i,loc:{start:{line:21,column:84},end:{line:21,column:110}}}))+'</option>\n <option value="check" '+(null!=(l=u(n,"ifeq").call(a,null!=t?u(t,"autoUpdate"):t,"check",{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:22,column:34},end:{line:22,column:79}}}))?l:"")+">"+r(u(n,"res").call(a,"setGenUpdateCheck",{name:"res",hash:{},data:i,loc:{start:{line:22,column:80},end:{line:22,column:107}}}))+'</option>\n <option value="" '+(null!=(l=u(n,"unless").call(a,null!=t?u(t,"autoUpdate"):t,{name:"unless",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:23,column:29},end:{line:23,column:70}}}))?l:"")+">"+r(u(n,"res").call(a,"setGenNoUpdate",{name:"res",hash:{},data:i,loc:{start:{line:23,column:71},end:{line:23,column:95}}}))+"</option>\n </select>\n <div>"+r("function"==typeof(o=null!=(o=u(n,"updateInfo")||(null!=t?u(t,"updateInfo"):t))?o:c)?o.call(a,{name:"updateInfo",hash:{},data:i,loc:{start:{line:25,column:13},end:{line:25,column:27}}}):o)+'</div>\n <a href="'+r("function"==typeof(o=null!=(o=u(n,"releaseNotesLink")||(null!=t?u(t,"releaseNotesLink"):t))?o:c)?o.call(a,{name:"releaseNotesLink",hash:{},data:i,loc:{start:{line:26,column:17},end:{line:26,column:37}}}):o)+'" target="_blank">'+r(u(n,"res").call(a,"setGenReleaseNotes",{name:"res",hash:{},data:i,loc:{start:{line:26,column:55},end:{line:26,column:83}}}))+'</a>\n </div>\n <div class="settings__general-update-buttons">\n'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"updateInProgress"):t,{name:"if",hash:{},fn:e.program(9,i,0),inverse:e.program(11,i,0),data:i,loc:{start:{line:29,column:8},end:{line:33,column:15}}}))?l:"")+" "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"updateReady"):t,{name:"if",hash:{},fn:e.program(13,i,0),inverse:e.noop,data:i,loc:{start:{line:34,column:8},end:{line:34,column:120}}}))?l:"")+"\n "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"updateFound"):t,{name:"if",hash:{},fn:e.program(15,i,0),inverse:e.noop,data:i,loc:{start:{line:35,column:8},end:{line:35,column:128}}}))?l:"")+"\n </div>\n"},7:function(e,t,n,s,i){return"selected"},9:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="settings__general-update-btn btn-silent" disabled>'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setGenUpdateChecking",{name:"res",hash:{},data:i,loc:{start:{line:30,column:73},end:{line:30,column:103}}}))+"</button>\n"},11:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="settings__general-update-btn btn-silent">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setGenCheckUpdate",{name:"res",hash:{},data:i,loc:{start:{line:32,column:64},end:{line:32,column:91}}}))+"</button>\n"},13:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="settings__general-restart-btn">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setGenRestartToUpdate",{name:"res",hash:{},data:i,loc:{start:{line:34,column:73},end:{line:34,column:104}}}))+"</button>"},15:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="settings__general-update-found-btn">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setGenDownloadAndRestart",{name:"res",hash:{},data:i,loc:{start:{line:35,column:78},end:{line:35,column:112}}}))+"</button>"},17:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <label for="settings__general-locale">'+c(u(n,"res").call(r,"setGenLocale",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:42,column:46},end:{line:42,column:68}}}))+':</label>\n <select class="settings__general-locale settings__select input-base" id="settings__general-locale">\n'+(null!=(a=u(n,"each").call(r,null!=t?u(t,"locales"):t,{name:"each",hash:{},fn:e.program(18,i,2,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:44,column:12},end:{line:46,column:21}}}))?a:"")+' <option value="...">('+c(u(n,"res").call(r,"setGenLocOther",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:47,column:33},end:{line:47,column:57}}}))+")</option>\n </select>\n </div>\n"},18:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+c(r(l[0][1],t))+'" '+(null!=(a=u(n,"ifeq").call(null!=t?t:e.nullContext||{},l[0][1],null!=o[1]?u(o[1],"activeLocale"):o[1],{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:45,column:40},end:{line:45,column:86}}}))?a:"")+">"+c(r(l[0][0],t))+"</option>\n"},20:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+c(r(l[0][1],t))+'" '+(null!=(a=u(n,"ifeq").call(null!=t?t:e.nullContext||{},l[0][1],null!=o[1]?u(o[1],"activeTheme"):o[1],{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:55,column:36},end:{line:55,column:81}}}))?a:"")+">"+c(r(l[0][0],t))+"</option>\n"},22:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <label for="settings__general-titlebar-style">'+a(r(n,"res").call(o,"setGenTitlebarStyle",{name:"res",hash:{},data:i,loc:{start:{line:69,column:54},end:{line:69,column:83}}}))+':</label>\n <select class="settings__general-titlebar-style settings__select input-base" id="settings__general-titlebar-style">\n <option value="default" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"titlebarStyle"):t,"default",{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:71,column:36},end:{line:71,column:86}}}))?l:"")+">"+a(r(n,"res").call(o,"setGenTitlebarStyleDefault",{name:"res",hash:{},data:i,loc:{start:{line:71,column:87},end:{line:71,column:123}}}))+'</option>\n <option value="hidden" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"titlebarStyle"):t,"hidden",{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:72,column:35},end:{line:72,column:84}}}))?l:"")+">"+a(r(n,"res").call(o,"setGenTitlebarStyleHidden",{name:"res",hash:{},data:i,loc:{start:{line:72,column:85},end:{line:72,column:120}}}))+'</option>\n <option value="hidden-inset" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"titlebarStyle"):t,"hidden-inset",{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:73,column:41},end:{line:73,column:96}}}))?l:"")+">"+a(r(n,"res").call(o,"setGenTitlebarStyleHiddenInset",{name:"res",hash:{},data:i,loc:{start:{line:73,column:97},end:{line:73,column:137}}}))+"</option>\n </select>\n </div>\n"},24:function(e,t,n,s,i){return"checked"},26:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-table-view" id="settings__general-table-view" '+(null!=(a=c(n,"if").call(r,null!=t?c(t,"tableView"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:83,column:129},end:{line:83,column:160}}}))?a:"")+' />\n <label for="settings__general-table-view">'+e.escapeExpression(c(n,"res").call(r,"setGenTableView",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:84,column:50},end:{line:84,column:75}}}))+"</label>\n </div>\n"},28:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-auto-save" id="settings__general-auto-save"\n '+(null!=(a=c(n,"if").call(r,null!=t?c(t,"autoSave"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:96,column:12},end:{line:96,column:42}}}))?a:"")+' />\n <label for="settings__general-auto-save">'+e.escapeExpression(c(n,"res").call(r,"setGenAutoSyncOnClose",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:97,column:49},end:{line:97,column:80}}}))+"</label>\n </div>\n"},30:function(e,t,n,s,i){return"\n 1"},32:function(e,t,n,s,i){return"\n 5"},34:function(e,t,n,s,i){return"\n 15"},36:function(e,t,n,s,i){return"\n 30"},38:function(e,t,n,s,i){return"\n 60"},40:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<option value="path" '+(null!=(l=a(n,"ifeq").call(o,null!=t?a(t,"rememberKeyFiles"):t,"path",{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:122,column:53},end:{line:122,column:103}}}))?l:"")+">"+e.escapeExpression(a(n,"res").call(o,"setGenRememberKeyFilesPath",{name:"res",hash:{},data:i,loc:{start:{line:122,column:104},end:{line:122,column:140}}}))+"</option>"},42:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <label for="settings__general-clipboard">'+a(r(n,"res").call(o,"setGenClearClip",{name:"res",hash:{},data:i,loc:{start:{line:127,column:49},end:{line:127,column:74}}}))+':</label>\n <select class="settings__general-clipboard settings__select input-base" id="settings__general-clipboard">\n <option value="0" '+(null!=(l=r(n,"unless").call(o,null!=t?r(t,"clipboardSeconds"):t,{name:"unless",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:129,column:30},end:{line:129,column:77}}}))?l:"")+">"+a(r(n,"res").call(o,"setGenNoClear",{name:"res",hash:{},data:i,loc:{start:{line:129,column:78},end:{line:129,column:101}}}))+'</option>\n <option value="5" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"clipboardSeconds"):t,5,{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:130,column:30},end:{line:130,column:75}}}))?l:"")+">"+(null!=(l=r(n,"res").call(o,"setGenClearSeconds",{name:"res",hash:{},fn:e.program(43,i,0),inverse:e.noop,data:i,loc:{start:{line:130,column:76},end:{line:130,column:114}}}))?l:"")+'</option>\n <option value="10" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"clipboardSeconds"):t,10,{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:131,column:31},end:{line:131,column:77}}}))?l:"")+">"+(null!=(l=r(n,"res").call(o,"setGenClearSeconds",{name:"res",hash:{},fn:e.program(45,i,0),inverse:e.noop,data:i,loc:{start:{line:131,column:78},end:{line:131,column:117}}}))?l:"")+'</option>\n <option value="15" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"clipboardSeconds"):t,15,{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:132,column:31},end:{line:132,column:77}}}))?l:"")+">"+(null!=(l=r(n,"res").call(o,"setGenClearSeconds",{name:"res",hash:{},fn:e.program(47,i,0),inverse:e.noop,data:i,loc:{start:{line:132,column:78},end:{line:132,column:117}}}))?l:"")+'</option>\n <option value="60" '+(null!=(l=r(n,"ifeq").call(o,null!=t?r(t,"clipboardSeconds"):t,60,{name:"ifeq",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:133,column:31},end:{line:133,column:77}}}))?l:"")+">"+a(r(n,"res").call(o,"setGenClearMinute",{name:"res",hash:{},data:i,loc:{start:{line:133,column:78},end:{line:133,column:105}}}))+"</option>\n </select>\n </div>\n"},43:function(e,t,n,s,i){return"5"},45:function(e,t,n,s,i){return"10"},47:function(e,t,n,s,i){return"15"},49:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-minimize" id="settings__general-minimize"\n '+(null!=(a=c(n,"if").call(r,null!=t?c(t,"minimizeOnClose"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:140,column:12},end:{line:140,column:49}}}))?a:"")+' />\n <label for="settings__general-minimize">'+e.escapeExpression(c(n,"res").call(r,"setGenMinInstead",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:141,column:48},end:{line:141,column:74}}}))+"</label>\n </div>\n"},51:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-direct-autotype"\n id="settings__general-direct-autotype" '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"directAutotype"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:147,column:51},end:{line:147,column:87}}}))?a:"")+' />\n <label for="settings__general-direct-autotype">'+c(u(n,"res").call(r,"setGenDirectAutotype",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:148,column:55},end:{line:148,column:85}}}))+'</label>\n </div>\n <div>\n <input type="checkbox" class="settings__input input-base settings__general-field-label-dblclick-autotype"\n id="settings__general-field-label-dblclick-autotype" '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"fieldLabelDblClickAutoType"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:152,column:68},end:{line:152,column:116}}}))?a:"")+' />\n <label for="settings__general-field-label-dblclick-autotype">'+c(u(n,"res").call(r,"setGenFieldLabelDblClickAutoType",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:153,column:69},end:{line:153,column:111}}}))+"</label>\n </div>\n"},53:function(e,t,n,s,i){return"30"},55:function(e,t,n,s,i){return"12"},57:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-lock-on-minimize" id="settings__general-lock-on-minimize"\n '+(null!=(a=c(n,"if").call(r,null!=t?c(t,"lockOnMinimize"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:183,column:15},end:{line:183,column:51}}}))?a:"")+' />\n <label for="settings__general-lock-on-minimize">'+e.escapeExpression(c(n,"res").call(r,"setGenLockMinimize",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:184,column:56},end:{line:184,column:84}}}))+"</label>\n </div>\n"},59:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-lock-on-auto-type" id="settings__general-lock-on-auto-type"\n '+(null!=(a=c(n,"if").call(r,null!=t?c(t,"lockOnAutoType"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:195,column:15},end:{line:195,column:51}}}))?a:"")+' />\n <label for="settings__general-lock-on-auto-type">'+e.escapeExpression(c(n,"res").call(r,"setGenLockAutoType",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:196,column:57},end:{line:196,column:85}}}))+"</label>\n </div>\n"},61:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div>\n <input type="checkbox" class="settings__input input-base settings__general-lock-on-os-lock" id="settings__general-lock-on-os-lock"\n '+(null!=(a=c(n,"if").call(r,null!=t?c(t,"lockOnOsLock"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:202,column:19},end:{line:202,column:53}}}))?a:"")+' />\n <label for="settings__general-lock-on-os-lock">'+e.escapeExpression(c(n,"res").call(r,"setGenLockOrSleep",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:203,column:59},end:{line:203,column:86}}}))+"</label>\n </div>\n"},63:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <h4 class="settings__general-storage-header"><input\n type="checkbox" id="settings__general-prv-check-'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'" class="settings__general-prv-check"\n data-storage="'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'" '+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"enabled"):a,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:210,column:40},end:{line:210,column:73}}}))?a:"")+'\n /><label for="settings__general-prv-check-'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'">'+c(d(n,"res").call(u,null!=(a=l[0][0])?d(a,"name"):a,{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:211,column:60},end:{line:211,column:76}}}))+'</label></h4>\n <div class="settings__general-prv-wrap settings__general-'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+" "+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"enabled"):a,!1,{name:"ifeq",hash:{},fn:e.program(64,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:212,column:74},end:{line:212,column:114}}}))?a:"")+'"></div>\n '+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"loggedIn"):a,{name:"if",hash:{},fn:e.program(66,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:213,column:4},end:{line:214,column:105}}}))?a:"")+"\n"},64:function(e,t,n,s,i){return"hide"},66:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="btn-silent settings__general-prv-logout"\n data-storage="'+a(e.lambda(null!=(o=l[1][0])?r(o,"name"):o,t))+'">'+a(r(n,"res").call(null!=t?t:e.nullContext||{},"setGenStorageLogout",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:214,column:60},end:{line:214,column:89}}}))+"</button>"},68:function(e,t,n,s,i){var l=null!=t?t:e.nullContext||{},o=e.escapeExpression,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="btn-silent settings__general-dev-tools-link">'+o(a(n,"res").call(l,"setGenDevTools",{name:"res",hash:{},data:i,loc:{start:{line:221,column:72},end:{line:221,column:96}}}))+'</button>\n <button class="btn-silent settings__general-try-beta-link">'+o(a(n,"res").call(l,"setGenTryBeta",{name:"res",hash:{},data:i,loc:{start:{line:222,column:71},end:{line:222,column:94}}}))+"</button>\n"},70:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="btn-silent settings__general-reload-app-link">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setGenReloadApp",{name:"res",hash:{},data:i,loc:{start:{line:225,column:73},end:{line:225,column:98}}}))+"</button>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-cog settings__head-icon"></i> '+c(u(n,"res").call(r,"setGenTitle",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:2,column:54},end:{line:2,column:75}}}))+"</h1>\n\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"updateWaitingReload"):t,{name:"if",hash:{},fn:e.program(1,i,0,l,o),inverse:e.program(3,i,0,l,o),data:i,blockParams:l,loc:{start:{line:4,column:4},end:{line:16,column:11}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"showUpdateBlock"):t,{name:"if",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:4},end:{line:37,column:11}}}))?a:"")+"\n <h2>"+c(u(n,"res").call(r,"setGenAppearance",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:39,column:8},end:{line:39,column:34}}}))+"</h2>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"locales"):t,{name:"if",hash:{},fn:e.program(17,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:40,column:4},end:{line:50,column:11}}}))?a:"")+' <div>\n <label for="settings__general-theme">'+c(u(n,"res").call(r,"setGenTheme",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:52,column:45},end:{line:52,column:66}}}))+':</label>\n <select class="settings__general-theme settings__select input-base" id="settings__general-theme">\n'+(null!=(a=u(n,"each").call(r,null!=t?u(t,"themes"):t,{name:"each",hash:{},fn:e.program(20,i,2,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:54,column:12},end:{line:56,column:21}}}))?a:"")+' </select>\n </div>\n <div>\n <label for="settings__general-font-size">'+c(u(n,"res").call(r,"setGenFontSize",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:60,column:49},end:{line:60,column:73}}}))+':</label>\n <select class="settings__general-font-size settings__select input-base" id="settings__general-font-size">\n <option value="0" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"fontSize"):t,0,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:62,column:30},end:{line:62,column:67}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenFontSizeNormal",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:62,column:68},end:{line:62,column:98}}}))+'</option>\n <option value="1" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"fontSize"):t,1,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:63,column:30},end:{line:63,column:67}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenFontSizeLarge",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:63,column:68},end:{line:63,column:97}}}))+'</option>\n <option value="2" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"fontSize"):t,2,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:64,column:30},end:{line:64,column:67}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenFontSizeLargest",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:64,column:68},end:{line:64,column:99}}}))+"</option>\n </select>\n </div>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"supportsTitleBarStyles"):t,{name:"if",hash:{},fn:e.program(22,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:67,column:4},end:{line:76,column:11}}}))?a:"")+' <div>\n <input type="checkbox" class="settings__input input-base settings__general-expand" id="settings__general-expand" '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"expandGroups"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:78,column:121},end:{line:78,column:155}}}))?a:"")+' />\n <label for="settings__general-expand">'+c(u(n,"res").call(r,"setGenShowSubgroups",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:79,column:46},end:{line:79,column:75}}}))+"</label>\n </div>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canSetTableView"):t,{name:"if",hash:{},fn:e.program(26,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:81,column:4},end:{line:86,column:11}}}))?a:"")+' <div>\n <input type="checkbox" class="settings__input input-base settings__general-colorful-icons" id="settings__general-colorful-icons" '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"colorfulIcons"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:88,column:137},end:{line:88,column:172}}}))?a:"")+' />\n <label for="settings__general-colorful-icons">'+c(u(n,"res").call(r,"setGenColorfulIcons",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:89,column:54},end:{line:89,column:83}}}))+"</label>\n </div>\n\n <h2>"+c(u(n,"res").call(r,"setGenFunction",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:92,column:8},end:{line:92,column:32}}}))+"</h2>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canAutoSaveOnClose"):t,{name:"if",hash:{},fn:e.program(28,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:93,column:4},end:{line:99,column:11}}}))?a:"")+' <div>\n <label for="settings__general-auto-save-interval">'+c(u(n,"res").call(r,"setGenAutoSyncTimer",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:101,column:58},end:{line:101,column:87}}}))+'</label>\n <select class="settings__select input-base settings__general-auto-save-interval"\n id="settings__general-auto-save-interval">\n <option value="0" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"autoSaveInterval"):t,0,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:104,column:30},end:{line:104,column:75}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenAutoSyncTimerOff",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:104,column:76},end:{line:104,column:108}}}))+'</option>\n <option value="1" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"autoSaveInterval"):t,1,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:105,column:30},end:{line:105,column:75}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenAutoSyncTimerInterval",{name:"res",hash:{},fn:e.program(30,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:105,column:76},end:{line:106,column:25}}}))?a:"")+'</option>\n <option value="5" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"autoSaveInterval"):t,5,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:107,column:30},end:{line:107,column:75}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenAutoSyncTimerInterval",{name:"res",hash:{},fn:e.program(32,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:107,column:76},end:{line:108,column:25}}}))?a:"")+'</option>\n <option value="15" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"autoSaveInterval"):t,15,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:109,column:31},end:{line:109,column:77}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenAutoSyncTimerInterval",{name:"res",hash:{},fn:e.program(34,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:109,column:78},end:{line:110,column:26}}}))?a:"")+'</option>\n <option value="30" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"autoSaveInterval"):t,30,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:111,column:31},end:{line:111,column:77}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenAutoSyncTimerInterval",{name:"res",hash:{},fn:e.program(36,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:111,column:78},end:{line:112,column:26}}}))?a:"")+'</option>\n <option value="60" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"autoSaveInterval"):t,60,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:113,column:31},end:{line:113,column:77}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenAutoSyncTimerInterval",{name:"res",hash:{},fn:e.program(38,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:113,column:78},end:{line:114,column:26}}}))?a:"")+'</option>\n </select>\n </div>\n <div>\n <label for="settings__general-remember-key-files">'+c(u(n,"res").call(r,"setGenRememberKeyFiles",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:118,column:58},end:{line:118,column:90}}}))+':</label>\n <select class="settings__general-remember-key-files settings__select input-base" id="settings__general-remember-key-files">\n <option value="" '+(null!=(a=u(n,"unless").call(r,null!=t?u(t,"rememberKeyFiles"):t,{name:"unless",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:120,column:29},end:{line:120,column:76}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenNoRememberKeyFiles",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:120,column:77},end:{line:120,column:111}}}))+'</option>\n <option value="data" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"rememberKeyFiles"):t,"data",{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:121,column:33},end:{line:121,column:83}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenRememberKeyFilesData",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:121,column:84},end:{line:121,column:120}}}))+"</option>\n "+(null!=(a=u(n,"if").call(r,null!=t?u(t,"supportFiles"):t,{name:"if",hash:{},fn:e.program(40,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:122,column:12},end:{line:122,column:156}}}))?a:"")+"\n </select>\n </div>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canClearClipboard"):t,{name:"if",hash:{},fn:e.program(42,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:125,column:4},end:{line:136,column:11}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canMinimize"):t,{name:"if",hash:{},fn:e.program(49,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:137,column:4},end:{line:143,column:11}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canAutoType"):t,{name:"if",hash:{},fn:e.program(51,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:144,column:4},end:{line:155,column:11}}}))?a:"")+' <div>\n <input type="checkbox" class="settings__input input-base settings__general-use-markdown" id="settings__general-use-markdown" '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"useMarkdown"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:157,column:133},end:{line:157,column:166}}}))?a:"")+' />\n <label for="settings__general-use-markdown">'+c(u(n,"res").call(r,"setGenUseMarkdown",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:158,column:52},end:{line:158,column:79}}}))+'</label>\n </div>\n <div>\n <input type="checkbox" class="settings__input input-base settings__general-use-group-icon-for-entries"\n id="settings__general-use-group-icon-for-entries" '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"useGroupIconForEntries"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:162,column:65},end:{line:162,column:109}}}))?a:"")+' />\n <label for="settings__general-use-group-icon-for-entries">'+c(u(n,"res").call(r,"setGenUseGroupIconForEntries",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:163,column:66},end:{line:163,column:104}}}))+"</label>\n </div>\n\n <h2>"+c(u(n,"res").call(r,"setGenLock",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:166,column:8},end:{line:166,column:28}}}))+'</h2>\n <div>\n <label for="settings__general-idle-minutes">'+c(u(n,"res").call(r,"setGenLockInactive",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:168,column:52},end:{line:168,column:80}}}))+':</label>\n <select class="settings__general-idle-minutes settings__select input-base" id="settings__general-idle-minutes">\n <option value="0" '+(null!=(a=u(n,"cmp").call(r,null!=t?u(t,"idleMinutes"):t,0,"<=",{name:"cmp",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:170,column:30},end:{line:170,column:73}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenNoAutoLock",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:170,column:74},end:{line:170,column:100}}}))+'</option>\n <option value="5" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,5,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:171,column:30},end:{line:171,column:70}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenLockMinutes",{name:"res",hash:{},fn:e.program(43,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:171,column:71},end:{line:171,column:108}}}))?a:"")+'</option>\n <option value="10" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,10,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:172,column:31},end:{line:172,column:72}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenLockMinutes",{name:"res",hash:{},fn:e.program(45,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:172,column:73},end:{line:172,column:111}}}))?a:"")+'</option>\n <option value="15" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,15,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:173,column:31},end:{line:173,column:72}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenLockMinutes",{name:"res",hash:{},fn:e.program(47,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:173,column:73},end:{line:173,column:111}}}))?a:"")+'</option>\n <option value="30" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,30,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:174,column:31},end:{line:174,column:72}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenLockMinutes",{name:"res",hash:{},fn:e.program(53,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:174,column:73},end:{line:174,column:111}}}))?a:"")+'</option>\n <option value="60" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,60,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:175,column:31},end:{line:175,column:72}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenLockHour",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:175,column:73},end:{line:175,column:97}}}))+'</option>\n <option value="720" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,720,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:176,column:32},end:{line:176,column:74}}}))?a:"")+">"+(null!=(a=u(n,"res").call(r,"setGenLockHours",{name:"res",hash:{},fn:e.program(55,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:176,column:75},end:{line:176,column:111}}}))?a:"")+'</option>\n <option value="1440" '+(null!=(a=u(n,"ifeq").call(r,null!=t?u(t,"idleMinutes"):t,1440,{name:"ifeq",hash:{},fn:e.program(7,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:177,column:33},end:{line:177,column:76}}}))?a:"")+">"+c(u(n,"res").call(r,"setGenLockDay",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:177,column:77},end:{line:177,column:100}}}))+"</option>\n </select>\n </div>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canDetectMinimize"):t,{name:"if",hash:{},fn:e.program(57,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:180,column:4},end:{line:186,column:11}}}))?a:"")+' <div>\n <input type="checkbox" class="settings__input input-base settings__general-lock-on-copy" id="settings__general-lock-on-copy"\n '+(null!=(a=u(n,"if").call(r,null!=t?u(t,"lockOnCopy"):t,{name:"if",hash:{},fn:e.program(24,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:189,column:15},end:{line:189,column:47}}}))?a:"")+' />\n <label for="settings__general-lock-on-copy">'+c(u(n,"res").call(r,"setGenLockCopy",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:190,column:52},end:{line:190,column:76}}}))+"</label>\n </div>\n"+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canAutoType"):t,{name:"if",hash:{},fn:e.program(59,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:192,column:4},end:{line:198,column:11}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"canDetectOsSleep"):t,{name:"if",hash:{},fn:e.program(61,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:199,column:4},end:{line:205,column:11}}}))?a:"")+" <h2>"+c(u(n,"res").call(r,"setGenStorage",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:206,column:8},end:{line:206,column:31}}}))+"</h2>\n"+(null!=(a=u(n,"each").call(r,null!=t?u(t,"storageProviders"):t,{name:"each",hash:{},fn:e.program(63,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:207,column:4},end:{line:215,column:13}}}))?a:"")+"\n <h2>"+c(u(n,"res").call(r,"advanced",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:217,column:8},end:{line:217,column:26}}}))+'</h2>\n <a class="settings__general-show-advanced">'+c(u(n,"res").call(r,"setGenShowAdvanced",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:218,column:47},end:{line:218,column:75}}}))+'</a>\n <div class="settings__general-advanced hide">\n'+(null!=(a=u(n,"if").call(r,null!=t?u(t,"devTools"):t,{name:"if",hash:{},fn:e.program(68,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:220,column:8},end:{line:223,column:15}}}))?a:"")+(null!=(a=u(n,"if").call(r,null!=t?u(t,"showReloadApp"):t,{name:"if",hash:{},fn:e.program(70,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:224,column:8},end:{line:226,column:15}}}))?a:"")+' <button class="btn-silent settings__general-show-logs-link">'+c(u(n,"res").call(r,"setGenShowAppLogs",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:227,column:68},end:{line:227,column:95}}}))+"</button>\n </div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return'<a href="https://keepass.info/" target="_blank">KeePass</a>'},3:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <a href="'+a("function"==typeof(l=null!=(l=r(n,"issueLink")||(null!=t?r(t,"issueLink"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"issueLink",hash:{},data:i,loc:{start:{line:6,column:44},end:{line:6,column:57}}}):l)+'" target="_blank">'+a(r(n,"res").call(o,"setHelpOpenIssue",{name:"res",hash:{},data:i,loc:{start:{line:6,column:75},end:{line:6,column:101}}}))+"</a>"},5:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="https://antelle.net/" target="_blank">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setHelpContactLink",{name:"res",hash:{},data:i,loc:{start:{line:7,column:82},end:{line:7,column:110}}}))+"</a>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-question settings__head-icon"></i> '+r(u(n,"res").call(a,"help",{name:"res",hash:{},data:i,loc:{start:{line:2,column:59},end:{line:2,column:73}}}))+"</h1>\n <h2>"+r(u(n,"res").call(a,"setHelpFormat",{name:"res",hash:{},data:i,loc:{start:{line:3,column:8},end:{line:3,column:31}}}))+"</h2>\n <p>"+(null!=(l=u(n,"res").call(a,"setHelpFormatBody",{name:"res",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:7},end:{line:4,column:102}}}))?l:"")+"</p>\n <h2>"+r(u(n,"res").call(a,"setHelpProblems",{name:"res",hash:{},data:i,loc:{start:{line:5,column:8},end:{line:5,column:33}}}))+"</h2>\n <p>"+(null!=(l=u(n,"res").call(a,"setHelpProblems1",{name:"res",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:6,column:7},end:{line:6,column:113}}}))?l:"")+"\n "+(null!=(l=u(n,"res").call(a,"setHelpProblems2",{name:"res",hash:{},fn:e.program(5,i,0),inverse:e.noop,data:i,loc:{start:{line:7,column:8},end:{line:7,column:122}}}))?l:"")+".\n </p>\n <p>"+r(u(n,"res").call(a,"setHelpAppInfo",{name:"res",hash:{},data:i,loc:{start:{line:9,column:7},end:{line:9,column:31}}}))+':</p>\n <pre class="settings__pre input-base">'+r("function"==typeof(o=null!=(o=u(n,"appInfo")||(null!=t?u(t,"appInfo"):t))?o:c)?o.call(a,{name:"appInfo",hash:{},data:i,loc:{start:{line:10,column:42},end:{line:10,column:53}}}):o)+"</pre>\n <h2>"+r(u(n,"res").call(a,"setHelpOtherPlatforms",{name:"res",hash:{},data:i,loc:{start:{line:11,column:8},end:{line:11,column:39}}}))+'</h2>\n <ul>\n <li>\n <i class="fa fa-windows"></i>\n <i class="fa fa-apple"></i>\n <i class="fa fa-linux"></i>\n <a href="'+r("function"==typeof(o=null!=(o=u(n,"desktopLink")||(null!=t?u(t,"desktopLink"):t))?o:c)?o.call(a,{name:"desktopLink",hash:{},data:i,loc:{start:{line:17,column:21},end:{line:17,column:36}}}):o)+'" target="_blank">'+r(u(n,"res").call(a,"setHelpDesktopApps",{name:"res",hash:{},data:i,loc:{start:{line:17,column:54},end:{line:17,column:82}}}))+'</a>\n </li>\n <li>\n <i class="fa fa-chrome"></i>\n <i class="fa fa-firefox"></i>\n <i class="fa fa-opera"></i>\n <i class="fa fa-compass"></i>\n <i class="fa fa-edge"></i>\n <a href="'+r("function"==typeof(o=null!=(o=u(n,"webAppLink")||(null!=t?u(t,"webAppLink"):t))?o:c)?o.call(a,{name:"webAppLink",hash:{},data:i,loc:{start:{line:25,column:21},end:{line:25,column:35}}}):o)+'" target="_blank">'+r(u(n,"res").call(a,"setHelpWebApp",{name:"res",hash:{},data:i,loc:{start:{line:25,column:53},end:{line:25,column:76}}}))+"</a>\n </li>\n </ul>\n <h2>"+r(u(n,"res").call(a,"setHelpUpdates",{name:"res",hash:{},data:i,loc:{start:{line:28,column:8},end:{line:28,column:32}}}))+' <i class="fa fa-twitter"></i></h2>\n <p>'+r(u(n,"res").call(a,"setHelpTwitter",{name:"res",hash:{},data:i,loc:{start:{line:29,column:7},end:{line:29,column:31}}}))+': <a href="https://twitter.com/kee_web" target="_blank">kee_web</a></p>\n</div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+a("function"==typeof(l=null!=(l=r(n,"translateLink")||(null!=t?r(t,"translateLink"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"translateLink",hash:{},data:i,loc:{start:{line:5,column:42},end:{line:5,column:59}}}):l)+'" target="_blank">'+a(r(n,"res").call(o,"setPlTranslateLink",{name:"res",hash:{},data:i,loc:{start:{line:5,column:77},end:{line:5,column:105}}}))+"</a>"},3:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__plugins-plugin" id="settings__plugins-plugin--'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'">\n <h2>'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+"</h2>\n <div>"+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"description"):a,t))+'</div>\n <div>\n <ul class="settings__plugins-plugin-files">\n '+(null!=(a=d(n,"if").call(u,null!=(a=null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"resources"):a)?d(a,"js"):a,{name:"if",hash:{},fn:e.program(4,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:14,column:20},end:{line:14,column:154}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"resources"):a)?d(a,"css"):a,{name:"if",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:15,column:20},end:{line:15,column:163}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"resources"):a)?d(a,"loc"):a,{name:"if",hash:{},fn:e.program(8,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:16,column:20},end:{line:18,column:27}}}))?a:"")+' </ul>\n </div>\n <div class="settings__plugins-plugin-desc">\n <a href="'+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"url"):a,t))+'" target="_blank">'+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"url"):a,t))+"</a>, v"+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"version"):a,t))+".\n"+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"official"):a,{name:"if",hash:{},fn:e.program(13,i,0,l,o),inverse:e.program(15,i,0,l,o),data:i,blockParams:l,loc:{start:{line:23,column:16},end:{line:27,column:23}}}))?a:"")+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"status"):a,"active",{name:"ifeq",hash:{},fn:e.program(18,i,0,l,o),inverse:e.program(21,i,0,l,o),data:i,blockParams:l,loc:{start:{line:28,column:16},end:{line:36,column:25}}}))?a:"")+(null!=(a=d(n,"if").call(u,null!=t?d(t,"updateCheckDate"):t,{name:"if",hash:{},fn:e.program(26,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:37,column:16},end:{line:39,column:23}}}))?a:"")+" "+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"installError"):a,{name:"if",hash:{},fn:e.program(28,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:40,column:16},end:{line:40,column:147}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"updateError"):a,{name:"if",hash:{},fn:e.program(30,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:41,column:16},end:{line:41,column:145}}}))?a:"")+'\n </div>\n <div class="settings__plugins-plugin-updates">\n <input type="checkbox" class="settings__plugins-plugin-update-check settings__input input-base"\n id="plugin-'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'-auto-update" data-plugin="'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'"\n '+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"autoUpdate"):a,{name:"if",hash:{},fn:e.program(32,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:46,column:20},end:{line:46,column:59}}}))?a:"")+' />\n <label for="plugin-'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'-auto-update">'+c(d(n,"res").call(u,"setPlAutoUpdate",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:47,column:62},end:{line:47,column:87}}}))+"</label>\n </div>\n"+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"settings"):a,{name:"if",hash:{},fn:e.program(34,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:49,column:12},end:{line:88,column:19}}}))?a:"")+' <div class="settings__plugins-plugin-buttons">\n <button class="settings_plugins-uninstall-btn btn-error" data-plugin="'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'">'+c(d(n,"res").call(u,"setPlUninstallBtn",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:90,column:101},end:{line:90,column:128}}}))+"</button>\n "+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"status"):a,"active",{name:"ifeq",hash:{},fn:e.program(47,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:91,column:16},end:{line:91,column:175}}}))?a:"")+"\n "+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"status"):a,"inactive",{name:"ifeq",hash:{},fn:e.program(49,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:92,column:16},end:{line:92,column:175}}}))?a:"")+'\n <button class="settings_plugins-update-btn btn-silent" data-plugin="'+c(r(null!=(a=l[0][0])?d(a,"id"):a,t))+'">'+c(d(n,"res").call(u,"setPlUpdateBtn",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:93,column:99},end:{line:93,column:123}}}))+"</button>\n"+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"status"):a,"active",{name:"ifeq",hash:{},fn:e.program(51,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:94,column:16},end:{line:97,column:25}}}))?a:"")+" </div>\n </div>\n"},4:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<li class="settings__plugins-plugin-file"><i class="fa fa-code"></i> '+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlJs",{name:"res",hash:{},data:i,loc:{start:{line:14,column:125},end:{line:14,column:142}}}))+"</li>"},6:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<li class="settings__plugins-plugin-file"><i class="fa fa-paint-brush"></i> '+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlCss",{name:"res",hash:{},data:i,loc:{start:{line:15,column:133},end:{line:15,column:151}}}))+"</li>"},8:function(e,t,n,s,i,l,o){var a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<li class="settings__plugins-plugin-file"><i class="fa fa-language"></i>&nbsp;\n '+c(u(n,"res").call(r,"setPlLoc",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:17,column:24},end:{line:17,column:42}}}))+": "+c(e.lambda(null!=(a=null!=(a=null!=(a=l[1][0])?u(a,"manifest"):a)?u(a,"locale"):a)?u(a,"title"):a,t))+" "+(null!=(a=u(n,"if").call(r,null!=o[1]?u(o[1],"hasUnicodeFlags"):o[1],{name:"if",hash:{},fn:e.program(9,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:77},end:{line:17,column:226}}}))?a:"")+"</li>\n"},9:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=null!=(o=l[2][0])?a(o,"manifest"):o)?a(o,"locale"):o,{name:"if",hash:{},fn:e.program(10,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:103},end:{line:17,column:219}}}))?o:""},10:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=null!=(o=null!=(o=l[3][0])?a(o,"manifest"):o)?a(o,"locale"):o)?a(o,"flag"):o,{name:"if",hash:{},fn:e.program(11,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:133},end:{line:17,column:212}}}))?o:""},11:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"&nbsp;"+e.escapeExpression(e.lambda(null!=(o=null!=(o=null!=(o=l[4][0])?a(o,"manifest"):o)?a(o,"locale"):o)?a(o,"flag"):o,t))},13:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlOfficial",{name:"res",hash:{},data:i,loc:{start:{line:24,column:20},end:{line:24,column:43}}}))+",\n"},15:function(e,t,n,s,i,l){var o;return" "+(null!=(o=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"res").call(null!=t?t:e.nullContext||{},"setPlCreatedBy",{name:"res",hash:{},fn:e.program(16,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:26,column:20},end:{line:26,column:180}}}))?o:"")+",\n"},16:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+r(a(null!=(o=null!=(o=null!=(o=l[2][0])?c(o,"manifest"):o)?c(o,"author"):o)?c(o,"url"):o,t))+'" target="_blank">'+r(a(null!=(o=null!=(o=null!=(o=l[2][0])?c(o,"manifest"):o)?c(o,"author"):o)?c(o,"name"):o,t))+"</a> ("+r(a(null!=(o=null!=(o=null!=(o=l[2][0])?c(o,"manifest"):o)?c(o,"author"):o)?c(o,"email"):o,t))+")"},18:function(e,t,n,s,i,l){var o;return" "+(null!=(o=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"res").call(null!=t?t:e.nullContext||{},"setPlLoadTime",{name:"res",hash:{},fn:e.program(19,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:29,column:20},end:{line:29,column:76}}}))?o:"")+"\n"},19:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(e.lambda(null!=(o=l[2][0])?a(o,"installTime"):o,t))+"ms"},21:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=(o=l[1][0])?a(o,"status"):o,"error",{name:"ifeq",hash:{},fn:e.program(22,i,0,l),inverse:e.program(24,i,0,l),data:i,blockParams:l,loc:{start:{line:31,column:20},end:{line:35,column:29}}}))?o:""},22:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <span class="error-color">&nbsp;'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlLoadError",{name:"res",hash:{},data:i,loc:{start:{line:32,column:56},end:{line:32,column:80}}}))+"</span>\n"},24:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+e.escapeExpression(e.lambda(null!=(o=l[2][0])?a(o,"status"):o,t))+"\n"},26:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <div>"+a(r(n,"res").call(o,"setPlLastUpdate",{name:"res",hash:{},data:i,loc:{start:{line:38,column:25},end:{line:38,column:50}}}))+": "+a("function"==typeof(l=null!=(l=r(n,"updateCheckDate")||(null!=t?r(t,"updateCheckDate"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"updateCheckDate",hash:{},data:i,loc:{start:{line:38,column:52},end:{line:38,column:71}}}):l)+"</div>\n"},28:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="error-color settings__plugins-install-error"><pre>'+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"installError"):o,t))+"</pre></div>"},30:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="error-color settings__plugins-install-error"><pre>'+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"updateError"):o,t))+"</pre></div>"},32:function(e,t,n,s,i){return"checked"},34:function(e,t,n,s,i,l,o){var a,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__plugins-plugin-settings">\n'+(null!=(a=r(n,"each").call(null!=t?t:e.nullContext||{},null!=(a=l[1][0])?r(a,"settings"):a,{name:"each",hash:{},fn:e.program(35,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:51,column:20},end:{line:86,column:29}}}))?a:"")+" </div>\n"},35:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__plugins-plugin-setting"\n data-setting="'+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'"\n data-plugin="'+c(r(null!=o[1]?d(o[1],"id"):o[1],t))+'"\n >\n'+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"type"):a,"checkbox",{name:"ifeq",hash:{},fn:e.program(36,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:56,column:24},end:{line:62,column:33}}}))?a:"")+' <label\n class="settings__plugins-plugin-label"\n for="plugin-'+c(r(null!=o[1]?d(o[1],"id"):o[1],t))+"-setting-"+c(r(null!=(a=l[0][0])?d(a,"name"):a,t))+'"\n >'+c(r(null!=(a=l[0][0])?d(a,"label"):a,t))+"</label>\n"+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"type"):a,"text",{name:"ifeq",hash:{},fn:e.program(38,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:67,column:24},end:{line:75,column:33}}}))?a:"")+(null!=(a=d(n,"ifeq").call(u,null!=(a=l[0][0])?d(a,"type"):a,"select",{name:"ifeq",hash:{},fn:e.program(43,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:76,column:24},end:{line:84,column:33}}}))?a:"")+" </div>\n"},36:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <input type="checkbox"\n class="settings__plugins-plugin-input settings__input input-base"\n id="plugin-'+c(r(null!=o[1]?u(o[1],"id"):o[1],t))+"-setting-"+c(r(null!=(a=l[1][0])?u(a,"name"):a,t))+'"\n '+(null!=(a=u(n,"if").call(null!=t?t:e.nullContext||{},null!=(a=l[1][0])?u(a,"value"):a,{name:"if",hash:{},fn:e.program(32,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:60,column:35},end:{line:60,column:70}}}))?a:"")+"\n />\n"},38:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <input type="text"\n class="settings__plugins-plugin-input settings__input input-base"\n id="plugin-'+c(r(null!=o[1]?d(o[1],"id"):o[1],t))+"-setting-"+c(r(null!=(a=l[1][0])?d(a,"name"):a,t))+'"\n '+(null!=(a=d(n,"if").call(u,null!=(a=l[1][0])?d(a,"placeholder"):a,{name:"if",hash:{},fn:e.program(39,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:71,column:35},end:{line:71,column:106}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=l[1][0])?d(a,"maxlength"):a,{name:"if",hash:{},fn:e.program(41,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:72,column:35},end:{line:72,column:100}}}))?a:"")+'\n value="'+c(r(null!=(a=l[1][0])?d(a,"value"):a,t))+'"\n />\n'},39:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'placeholder="'+e.escapeExpression(e.lambda(null!=(o=l[2][0])?a(o,"placeholder"):o,t))+'"'},41:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'maxlength="'+e.escapeExpression(e.lambda(null!=(o=l[2][0])?a(o,"maxlength"):o,t))+'"'},43:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <select class="settings__plugins-plugin-input settings__select input-base"\n id="plugin-'+c(r(null!=o[1]?u(o[1],"name"):o[1],t))+"-setting-"+c(r(null!=(a=l[1][0])?u(a,"name"):a,t))+'"\n >\n'+(null!=(a=u(n,"each").call(null!=t?t:e.nullContext||{},null!=(a=l[1][0])?u(a,"options"):a,{name:"each",hash:{},fn:e.program(44,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:80,column:32},end:{line:82,column:41}}}))?a:"")+" </select>\n"},44:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+c(r(null!=(a=l[0][0])?u(a,"value"):a,t))+'" '+(null!=(a=u(n,"ifeq").call(null!=t?t:e.nullContext||{},null!=(a=l[0][0])?u(a,"value"):a,null!=o[1]?u(o[1],"value"):o[1],{name:"ifeq",hash:{},fn:e.program(45,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:81,column:66},end:{line:81,column:111}}}))?a:"")+">"+c(r(null!=(a=l[0][0])?u(a,"label"):a,t))+"</option>\n"},45:function(e,t,n,s,i){return"selected"},47:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="settings_plugins-disable-btn btn-silent" data-plugin="'+a(e.lambda(null!=(o=l[1][0])?r(o,"id"):o,t))+'">'+a(r(n,"res").call(null!=t?t:e.nullContext||{},"setPlDisableBtn",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:91,column:132},end:{line:91,column:157}}}))+"</button>"},49:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="settings_plugins-enable-btn btn-silent" data-plugin="'+a(e.lambda(null!=(o=l[1][0])?r(o,"id"):o,t))+'">'+a(r(n,"res").call(null!=t?t:e.nullContext||{},"setPlEnableBtn",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:92,column:133},end:{line:92,column:157}}}))+"</button>"},51:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+(null!=(o=r(n,"if").call(a,null!=(o=null!=(o=l[1][0])?r(o,"manifest"):o)?r(o,"locale"):o,{name:"if",hash:{},fn:e.program(52,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:95,column:20},end:{line:95,column:195}}}))?o:"")+"\n "+(null!=(o=r(n,"if").call(a,null!=(o=null!=(o=l[1][0])?r(o,"manifest"):o)?r(o,"theme"):o,{name:"if",hash:{},fn:e.program(54,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:96,column:20},end:{line:96,column:190}}}))?o:"")+"\n"},52:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="settings_plugins-use-locale-btn btn-silent" data-locale="'+a(e.lambda(null!=(o=null!=(o=null!=(o=l[2][0])?r(o,"manifest"):o)?r(o,"locale"):o)?r(o,"name"):o,t))+'">'+a(r(n,"res").call(null!=t?t:e.nullContext||{},"setPlLocaleBtn",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:95,column:155},end:{line:95,column:179}}}))+"</button>"},54:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<button class="settings_plugins-use-theme-btn btn-silent" data-theme="'+a(e.lambda(null!=(o=null!=(o=null!=(o=l[2][0])?r(o,"manifest"):o)?r(o,"theme"):o)?r(o,"name"):o,t))+'">'+a(r(n,"res").call(null!=t?t:e.nullContext||{},"setPlThemeBtn",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:96,column:151},end:{line:96,column:174}}}))+"</button>"},56:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlGalleryLoading",{name:"res",hash:{},data:i,loc:{start:{line:103,column:30},end:{line:103,column:59}}}))+"..."},58:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlInstallTitle",{name:"res",hash:{},data:i,loc:{start:{line:103,column:70},end:{line:103,column:97}}}))},60:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="error-color">'+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlGalleryLoadError",{name:"res",hash:{},data:i,loc:{start:{line:107,column:57},end:{line:107,column:88}}}))+"</div>"},62:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.escapeExpression,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <input type="text" class="input-base settings__plugins-gallery-search" placeholder="'+u(d(n,"res").call(c,"setPlSearch",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:109,column:96},end:{line:109,column:117}}}))+'" value="'+u("function"==typeof(r=null!=(r=d(n,"searchStr")||(null!=t?d(t,"searchStr"):t))?r:e.hooks.helperMissing)?r.call(c,{name:"searchStr",hash:{},data:i,blockParams:l,loc:{start:{line:109,column:126},end:{line:109,column:139}}}):r)+'" />\n <div class="settings__plugins-gallery">\n'+(null!=(a=d(n,"each").call(c,null!=t?d(t,"galleryPlugins"):t,{name:"each",hash:{},fn:e.program(63,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:111,column:12},end:{line:150,column:21}}}))?a:"")+" </div>\n"},63:function(e,t,n,s,i,l,o){var a,r=e.lambda,c=e.escapeExpression,u=null!=t?t:e.nullContext||{},d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__plugins-gallery-plugin" data-plugin="'+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"name"):a,t))+'">\n <h4 class="settings__plugins-gallery-plugin-title">\n <a href="'+c(r(null!=(a=l[0][0])?d(a,"url"):a,t))+'" target="_blank" class="settings__plugins-gallery-plugin-title-link">'+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"name"):a,t))+"</a>\n </h4>\n"+(null!=(a=d(n,"if").call(u,null!=o[1]?d(o[1],"hasUnicodeFlags"):o[1],{name:"if",hash:{},fn:e.program(64,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:116,column:20},end:{line:122,column:27}}}))?a:"")+' <div class="settings__plugins-gallery-plugin-desc">'+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"description"):a,t))+'</div>\n <ul class="settings__plugins-plugin-files">\n '+(null!=(a=d(n,"if").call(u,null!=(a=null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"resources"):a)?d(a,"js"):a,{name:"if",hash:{},fn:e.program(4,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:125,column:24},end:{line:125,column:158}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"resources"):a)?d(a,"css"):a,{name:"if",hash:{},fn:e.program(6,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:126,column:24},end:{line:126,column:167}}}))?a:"")+"\n "+(null!=(a=d(n,"if").call(u,null!=(a=null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"resources"):a)?d(a,"loc"):a,{name:"if",hash:{},fn:e.program(68,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:127,column:24},end:{line:127,column:198}}}))?a:"")+'\n </ul>\n <div class="settings__plugins-gallery-plugin-author muted-color">\n'+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"official"):a,{name:"if",hash:{},fn:e.program(70,i,0,l,o),inverse:e.program(72,i,0,l,o),data:i,blockParams:l,loc:{start:{line:130,column:24},end:{line:134,column:31}}}))?a:"")+" </div>\n"+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"installError"):a,{name:"if",hash:{},fn:e.program(74,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:136,column:20},end:{line:138,column:27}}}))?a:"")+' <button class="settings__plugins-gallery-plugin-install-btn"\n data-plugin="'+c(r(null!=(a=null!=(a=l[0][0])?d(a,"manifest"):a)?d(a,"name"):a,t))+'"\n '+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"installing"):a,{name:"if",hash:{},fn:e.program(76,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:141,column:28},end:{line:141,column:68}}}))?a:"")+"\n >\n"+(null!=(a=d(n,"if").call(u,null!=(a=l[0][0])?d(a,"installing"):a,{name:"if",hash:{},fn:e.program(78,i,0,l,o),inverse:e.program(80,i,0,l,o),data:i,blockParams:l,loc:{start:{line:143,column:24},end:{line:147,column:31}}}))?a:"")+" </button>\n </div>\n"},64:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=null!=(o=l[1][0])?a(o,"manifest"):o)?a(o,"locale"):o,{name:"if",hash:{},fn:e.program(65,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:117,column:24},end:{line:121,column:31}}}))?o:""},65:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=null!=(o=null!=(o=l[2][0])?a(o,"manifest"):o)?a(o,"locale"):o)?a(o,"flag"):o,{name:"if",hash:{},fn:e.program(66,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:118,column:28},end:{line:120,column:35}}}))?o:""},66:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="settings__plugins-gallery-plugin-country-flag">'+e.escapeExpression(e.lambda(null!=(o=null!=(o=null!=(o=l[3][0])?a(o,"manifest"):o)?a(o,"locale"):o)?a(o,"flag"):o,t))+"</div>\n"},68:function(e,t,n,s,i,l){var o,a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<li class="settings__plugins-plugin-file"><i class="fa fa-language"></i> '+a(r(n,"res").call(null!=t?t:e.nullContext||{},"setPlLoc",{name:"res",hash:{},data:i,loc:{start:{line:127,column:134},end:{line:127,column:152}}}))+": "+a(e.lambda(null!=(o=null!=(o=null!=(o=l[1][0])?r(o,"manifest"):o)?r(o,"locale"):o)?r(o,"title"):o,t))+"</li>"},70:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <i class="fa fa-check"></i> '+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlOfficial",{name:"res",hash:{},data:i,loc:{start:{line:131,column:56},end:{line:131,column:79}}}))+"\n"},72:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <i class="fa fa-at"></i> <a href="'+r(a(null!=(o=null!=(o=null!=(o=l[1][0])?c(o,"manifest"):o)?c(o,"author"):o)?c(o,"url"):o,t))+'" target="_blank">'+r(a(null!=(o=null!=(o=null!=(o=l[1][0])?c(o,"manifest"):o)?c(o,"author"):o)?c(o,"name"):o,t))+"</a> ("+r(a(null!=(o=null!=(o=null!=(o=l[1][0])?c(o,"manifest"):o)?c(o,"author"):o)?c(o,"email"):o,t))+")\n"},74:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="error-color">'+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"installError"):o,t))+"</div>\n"},76:function(e,t,n,s,i){return"disabled"},78:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlInstallBtnProgress",{name:"res",hash:{},data:i,loc:{start:{line:144,column:28},end:{line:144,column:61}}}))+"...\n"},80:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlInstallBtn",{name:"res",hash:{},data:i,loc:{start:{line:146,column:28},end:{line:146,column:53}}}))+"\n"},82:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <button class="settings__plugins-gallery-load-btn" '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"galleryLoading"):t,{name:"if",hash:{},fn:e.program(83,i,0),inverse:e.noop,data:i,loc:{start:{line:153,column:63},end:{line:153,column:111}}}))?l:"")+">"+e.escapeExpression(a(n,"res").call(o,"setPlLoadGallery",{name:"res",hash:{},data:i,loc:{start:{line:153,column:112},end:{line:153,column:138}}}))+"</button>\n"},83:function(e,t,n,s,i){return'disabled="disabled"'},85:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlInstallBtnProgress",{name:"res",hash:{},data:i,loc:{start:{line:162,column:37},end:{line:162,column:70}}}))},87:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"setPlInstallBtn",{name:"res",hash:{},data:i,loc:{start:{line:162,column:78},end:{line:162,column:103}}}))},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l,o){var a,r,c=null!=t?t:e.nullContext||{},u=e.escapeExpression,d=e.hooks.helperMissing,p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-puzzle-piece settings__head-icon"></i> '+u(p(n,"res").call(c,"plugins",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:2,column:63},end:{line:2,column:80}}}))+"</h1>\n <div>\n "+u(p(n,"res").call(c,"setPlDevelop",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:4,column:8},end:{line:4,column:30}}}))+' <a href="'+u("function"==typeof(r=null!=(r=p(n,"pluginDevLink")||(null!=t?p(t,"pluginDevLink"):t))?r:d)?r.call(c,{name:"pluginDevLink",hash:{},data:i,blockParams:l,loc:{start:{line:4,column:40},end:{line:4,column:57}}}):r)+'" target="_blank">'+u(p(n,"res").call(c,"setPlDevelopStart",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:4,column:75},end:{line:4,column:102}}}))+"</a>.\n "+(null!=(a=p(n,"res").call(c,"setPlTranslate",{name:"res",hash:{},fn:e.program(1,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:5,column:8},end:{line:5,column:117}}}))?a:"")+'.\n </div>\n <div class="settings__plugins-list">\n'+(null!=(a=p(n,"each").call(c,null!=t?p(t,"plugins"):t,{name:"each",hash:{},fn:e.program(3,i,1,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:8,column:8},end:{line:100,column:17}}}))?a:"")+" </div>\n <h2>\n "+(null!=(a=p(n,"if").call(c,null!=t?p(t,"galleryLoading"):t,{name:"if",hash:{},fn:e.program(56,i,0,l,o),inverse:e.program(58,i,0,l,o),data:i,blockParams:l,loc:{start:{line:103,column:8},end:{line:103,column:104}}}))?a:"")+'\n </h2>\n <div class="settings__plugins-install">\n <div>'+u(p(n,"res").call(c,"setPlInstallDesc",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:106,column:13},end:{line:106,column:39}}}))+"</div>\n "+(null!=(a=p(n,"if").call(c,null!=t?p(t,"galleryLoadError"):t,{name:"if",hash:{},fn:e.program(60,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:107,column:8},end:{line:107,column:101}}}))?a:"")+"\n"+(null!=(a=p(n,"if").call(c,null!=t?p(t,"galleryPlugins"):t,{name:"if",hash:{},fn:e.program(62,i,0,l,o),inverse:e.program(82,i,0,l,o),data:i,blockParams:l,loc:{start:{line:108,column:8},end:{line:154,column:15}}}))?a:"")+" </div>\n <h2>"+u(p(n,"res").call(c,"setPlInstallUrlTitle",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:156,column:8},end:{line:156,column:38}}}))+'</h2>\n <div class="settings__plugins-install-url">\n <div>'+u(p(n,"res").call(c,"setPlInstallUrlDesc",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:158,column:13},end:{line:158,column:42}}}))+'</div>\n <label for="settings__plugins-install-url">'+u(p(n,"res").call(c,"setPlInstallLabel",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:159,column:51},end:{line:159,column:78}}}))+'</label>\n <input type="text" class="settings__input input-base" id="settings__plugins-install-url" value="'+u("function"==typeof(r=null!=(r=p(n,"installUrl")||(null!=t?p(t,"installUrl"):t))?r:d)?r.call(c,{name:"installUrl",hash:{},data:i,blockParams:l,loc:{start:{line:160,column:104},end:{line:160,column:118}}}):r)+'" />\n <button class="settings_plugins-install-btn" '+(null!=(a=p(n,"if").call(c,null!=t?p(t,"installingFromUrl"):t,{name:"if",hash:{},fn:e.program(76,i,0,l,o),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:161,column:53},end:{line:161,column:93}}}))?a:"")+">\n "+(null!=(a=p(n,"if").call(c,null!=t?p(t,"installingFromUrl"):t,{name:"if",hash:{},fn:e.program(85,i,0,l,o),inverse:e.program(87,i,0,l,o),data:i,blockParams:l,loc:{start:{line:162,column:12},end:{line:162,column:110}}}))?a:"")+'\n </button>\n <div class="error-color settings__plugins-install-error">'+u("function"==typeof(r=null!=(r=p(n,"installUrlError")||(null!=t?p(t,"installUrlError"):t))?r:d)?r.call(c,{name:"installUrlError",hash:{},data:i,blockParams:l,loc:{start:{line:164,column:65},end:{line:164,column:84}}}):r)+"</div>\n </div>\n</div>\n"},useData:!0,useDepths:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div><span class="shortcut">'+a("function"==typeof(l=null!=(l=r(n,"cmd")||(null!=t?r(t,"cmd"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"cmd",hash:{},data:i,loc:{start:{line:12,column:36},end:{line:12,column:43}}}):l)+"T</span> "+a(r(n,"res").call(o,"setShAutoType",{name:"res",hash:{},data:i,loc:{start:{line:12,column:52},end:{line:12,column:75}}}))+"</div>\n"},3:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lambda,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <p>"+a(c(n,"res").call(o,"setShGlobal",{name:"res",hash:{},data:i,loc:{start:{line:23,column:11},end:{line:23,column:32}}}))+'</p>\n <div><button class="shortcut btn-silent '+(null!=(l=c(n,"if").call(o,null!=t?c(t,"globalIsLarge"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:24,column:48},end:{line:24,column:90}}}))?l:"")+'"\n data-shortcut="autoType">'+a(r(null!=(l=null!=t?c(t,"globalShortcuts"):t)?c(l,"autoType"):l,t))+"</button> "+a(c(n,"res").call(o,"setShAutoTypeGlobal",{name:"res",hash:{},data:i,loc:{start:{line:25,column:84},end:{line:25,column:113}}}))+'</div>\n <div><button class="shortcut btn-silent '+(null!=(l=c(n,"if").call(o,null!=t?c(t,"globalIsLarge"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:26,column:48},end:{line:26,column:90}}}))?l:"")+'"\n data-shortcut="copyPassword">'+a(r(null!=(l=null!=t?c(t,"globalShortcuts"):t)?c(l,"copyPassword"):l,t))+"</button> "+a(c(n,"res").call(o,"setShCopyPassOnly",{name:"res",hash:{},data:i,loc:{start:{line:27,column:92},end:{line:27,column:119}}}))+'</div>\n <div><button class="shortcut btn-silent '+(null!=(l=c(n,"if").call(o,null!=t?c(t,"globalIsLarge"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:28,column:48},end:{line:28,column:90}}}))?l:"")+'"\n data-shortcut="copyUser">'+a(r(null!=(l=null!=t?c(t,"globalShortcuts"):t)?c(l,"copyUser"):l,t))+"</button> "+a(c(n,"res").call(o,"setShCopyUser",{name:"res",hash:{},data:i,loc:{start:{line:29,column:84},end:{line:29,column:107}}}))+'</div>\n <div><button class="shortcut btn-silent '+(null!=(l=c(n,"if").call(o,null!=t?c(t,"globalIsLarge"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:30,column:48},end:{line:30,column:90}}}))?l:"")+'"\n data-shortcut="copyUrl">'+a(r(null!=(l=null!=t?c(t,"globalShortcuts"):t)?c(l,"copyUrl"):l,t))+"</button> "+a(c(n,"res").call(o,"setShCopyUrl",{name:"res",hash:{},data:i,loc:{start:{line:31,column:82},end:{line:31,column:104}}}))+'</div>\n <div><button class="shortcut btn-silent '+(null!=(l=c(n,"if").call(o,null!=t?c(t,"globalIsLarge"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:32,column:48},end:{line:32,column:90}}}))?l:"")+'"\n data-shortcut="copyOtp">'+a(r(null!=(l=null!=t?c(t,"globalShortcuts"):t)?c(l,"copyOtp"):l,t))+"</button> "+a(c(n,"res").call(o,"setShCopyOtp",{name:"res",hash:{},data:i,loc:{start:{line:33,column:82},end:{line:33,column:104}}}))+'</div>\n <div><button class="shortcut btn-silent '+(null!=(l=c(n,"if").call(o,null!=t?c(t,"globalIsLarge"):t,{name:"if",hash:{},fn:e.program(4,i,0),inverse:e.noop,data:i,loc:{start:{line:34,column:48},end:{line:34,column:90}}}))?l:"")+'"\n data-shortcut="restoreApp">'+a(r(null!=(l=null!=t?c(t,"globalShortcuts"):t)?c(l,"restoreApp"):l,t))+"</button> "+(null!=(l=c(n,"res").call(o,"setShRestoreApp",{name:"res",hash:{},fn:e.program(6,i,0),inverse:e.noop,data:i,loc:{start:{line:35,column:88},end:{line:35,column:128}}}))?l:"")+"</div>\n"},4:function(e,t,n,s,i){return"shortcut-large"},6:function(e,t,n,s,i){return"KeeWeb"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.hooks.helperMissing,u="function",d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="settings__content">\n <h1><i class="fa fa-keyboard-o settings__head-icon"></i> '+r(d(n,"res").call(a,"setShTitle",{name:"res",hash:{},data:i,loc:{start:{line:2,column:61},end:{line:2,column:81}}}))+'</h1>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:3,column:32},end:{line:3,column:39}}}):o)+"A</span> "+r(d(n,"res").call(a,"or",{name:"res",hash:{},data:i,loc:{start:{line:3,column:48},end:{line:3,column:60}}}))+' <span class="shortcut">'+r(typeof(o=null!=(o=d(n,"alt")||(null!=t?d(t,"alt"):t))?o:c)===u?o.call(a,{name:"alt",hash:{},data:i,loc:{start:{line:3,column:84},end:{line:3,column:91}}}):o)+"A</span> "+r(d(n,"res").call(a,"setShShowAll",{name:"res",hash:{},data:i,loc:{start:{line:3,column:100},end:{line:3,column:122}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"alt")||(null!=t?d(t,"alt"):t))?o:c)===u?o.call(a,{name:"alt",hash:{},data:i,loc:{start:{line:4,column:32},end:{line:4,column:39}}}):o)+"C</span> "+r(d(n,"res").call(a,"setShColors",{name:"res",hash:{},data:i,loc:{start:{line:4,column:48},end:{line:4,column:69}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"alt")||(null!=t?d(t,"alt"):t))?o:c)===u?o.call(a,{name:"alt",hash:{},data:i,loc:{start:{line:5,column:32},end:{line:5,column:39}}}):o)+"D</span> "+r(d(n,"res").call(a,"setShTrash",{name:"res",hash:{},data:i,loc:{start:{line:5,column:48},end:{line:5,column:68}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:6,column:32},end:{line:6,column:39}}}):o)+"F</span> "+r(d(n,"res").call(a,"setShFind",{name:"res",hash:{},data:i,loc:{start:{line:6,column:48},end:{line:6,column:67}}}))+'</div>\n <div><span class="shortcut">esc</span> '+r(d(n,"res").call(a,"setShClearSearch",{name:"res",hash:{},data:i,loc:{start:{line:7,column:43},end:{line:7,column:69}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:8,column:32},end:{line:8,column:39}}}):o)+"C</span> "+r(d(n,"res").call(a,"setShCopyPass",{name:"res",hash:{},data:i,loc:{start:{line:8,column:48},end:{line:8,column:71}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:9,column:32},end:{line:9,column:39}}}):o)+"B</span> "+r(d(n,"res").call(a,"setShCopyUser",{name:"res",hash:{},data:i,loc:{start:{line:9,column:48},end:{line:9,column:71}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:10,column:32},end:{line:10,column:39}}}):o)+"U</span> "+r(d(n,"res").call(a,"setShCopyUrl",{name:"res",hash:{},data:i,loc:{start:{line:10,column:48},end:{line:10,column:70}}}))+"</div>\n"+(null!=(l=d(n,"if").call(a,null!=t?d(t,"autoTypeSupported"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:11,column:4},end:{line:13,column:11}}}))?l:"")+' <div><span class="shortcut">&uarr;</span> '+r(d(n,"res").call(a,"setShPrev",{name:"res",hash:{},data:i,loc:{start:{line:14,column:46},end:{line:14,column:65}}}))+'</div>\n <div><span class="shortcut">&darr;</span> '+r(d(n,"res").call(a,"setShNext",{name:"res",hash:{},data:i,loc:{start:{line:15,column:46},end:{line:15,column:65}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"alt")||(null!=t?d(t,"alt"):t))?o:c)===u?o.call(a,{name:"alt",hash:{},data:i,loc:{start:{line:16,column:32},end:{line:16,column:39}}}):o)+"N</span> "+r(d(n,"res").call(a,"setShCreateEntry",{name:"res",hash:{},data:i,loc:{start:{line:16,column:48},end:{line:16,column:74}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:17,column:32},end:{line:17,column:39}}}):o)+"O</span> "+r(d(n,"res").call(a,"setShOpen",{name:"res",hash:{},data:i,loc:{start:{line:17,column:48},end:{line:17,column:67}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:18,column:32},end:{line:18,column:39}}}):o)+"S</span> "+r(d(n,"res").call(a,"setShSave",{name:"res",hash:{},data:i,loc:{start:{line:18,column:48},end:{line:18,column:67}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:19,column:32},end:{line:19,column:39}}}):o)+"G</span> "+r(d(n,"res").call(a,"setShGen",{name:"res",hash:{},data:i,loc:{start:{line:19,column:48},end:{line:19,column:66}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:20,column:32},end:{line:20,column:39}}}):o)+",</span> "+r(d(n,"res").call(a,"setShSet",{name:"res",hash:{},data:i,loc:{start:{line:20,column:48},end:{line:20,column:66}}}))+'</div>\n <div><span class="shortcut">'+r(typeof(o=null!=(o=d(n,"cmd")||(null!=t?d(t,"cmd"):t))?o:c)===u?o.call(a,{name:"cmd",hash:{},data:i,loc:{start:{line:21,column:32},end:{line:21,column:39}}}):o)+"L</span> "+r(d(n,"res").call(a,"setShLock",{name:"res",hash:{},data:i,loc:{start:{line:21,column:48},end:{line:21,column:67}}}))+"</div>\n"+(null!=(l=d(n,"if").call(a,null!=t?d(t,"globalShortcuts"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:22,column:4},end:{line:36,column:11}}}))?l:"")+"</div>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.hooks.helperMissing,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="tag">\n <div class="back-button">\n '+a(c(n,"res").call(o,"retToApp",{name:"res",hash:{},data:i,loc:{start:{line:3,column:8},end:{line:3,column:26}}}))+' <i class="fa fa-external-link-square"></i>\n </div>\n <h1>'+a(c(n,"res").call(o,"tagTitle",{name:"res",hash:{},data:i,loc:{start:{line:5,column:8},end:{line:5,column:26}}}))+'</h1>\n <div class="tag__field">\n <label for="tag__field-title">'+a((c(n,"Res")||t&&c(t,"Res")||r).call(o,"name",{name:"Res",hash:{},data:i,loc:{start:{line:7,column:38},end:{line:7,column:52}}}))+':</label>\n <input type="text" class="input-base" id="tag__field-title" value="'+a("function"==typeof(l=null!=(l=c(n,"title")||(null!=t?c(t,"title"):t))?l:r)?l.call(o,{name:"title",hash:{},data:i,loc:{start:{line:8,column:75},end:{line:8,column:84}}}):l)+'" size="50" maxlength="128" required />\n <button class="tag__btn-rename">'+a(c(n,"res").call(o,"tagRename",{name:"res",hash:{},data:i,loc:{start:{line:9,column:40},end:{line:9,column:59}}}))+'</button>\n </div>\n <div class="tag__space"></div>\n <div class="tag__buttons">\n <i class="tag__buttons-trash fa fa-trash-o" title="'+a(c(n,"res").call(o,"tagTrash",{name:"res",hash:{},data:i,loc:{start:{line:13,column:59},end:{line:13,column:77}}}))+'" tip-placement="right"></i>\n </div>\n</div>\n'},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l){return" <th>"+e.escapeExpression(e.lambda(l[0][0],t))+"</th>\n"},3:function(e,t,n,s,i,l){var o,a,r=null!=t?t:e.nullContext||{},c=e.hooks.helperMissing,u=e.escapeExpression,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <th>\n <select data-col="'+u("function"==typeof(a=null!=(a=d(n,"index")||i&&d(i,"index"))?a:c)?a.call(r,{name:"index",hash:{},data:i,blockParams:l,loc:{start:{line:22,column:58},end:{line:22,column:68}}}):a)+'" class="import-csv__field-select">\n <option value="" '+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"type"):o,"ignore",{name:"ifeq",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:23,column:61},end:{line:23,column:108}}}))?o:"")+">("+u(d(n,"res").call(r,"importIgnoreField",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:23,column:110},end:{line:23,column:137}}}))+')</option>\n <option value="Title" '+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"field"):o,"Title",{name:"ifeq",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:24,column:66},end:{line:24,column:113}}}))?o:"")+">"+u((d(n,"Res")||t&&d(t,"Res")||c).call(r,"title",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:24,column:114},end:{line:24,column:129}}}))+'</option>\n <option value="UserName" '+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"field"):o,"UserName",{name:"ifeq",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:25,column:69},end:{line:25,column:119}}}))?o:"")+">"+u((d(n,"Res")||t&&d(t,"Res")||c).call(r,"user",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:25,column:120},end:{line:25,column:134}}}))+'</option>\n <option value="Password" '+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"field"):o,"Password",{name:"ifeq",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:26,column:69},end:{line:26,column:119}}}))?o:"")+">"+u((d(n,"Res")||t&&d(t,"Res")||c).call(r,"password",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:26,column:120},end:{line:26,column:138}}}))+'</option>\n <option value="URL" '+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"field"):o,"URL",{name:"ifeq",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:27,column:64},end:{line:27,column:109}}}))?o:"")+">"+u((d(n,"Res")||t&&d(t,"Res")||c).call(r,"website",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:27,column:110},end:{line:27,column:127}}}))+'</option>\n <option value="Notes" '+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"field"):o,"Notes",{name:"ifeq",hash:{},fn:e.program(4,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:28,column:66},end:{line:28,column:113}}}))?o:"")+">"+u((d(n,"Res")||t&&d(t,"Res")||c).call(r,"notes",{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:28,column:114},end:{line:28,column:129}}}))+"</option>\n"+(null!=(o=d(n,"ifeq").call(r,null!=(o=l[0][0])?d(o,"type"):o,"custom",{name:"ifeq",hash:{},fn:e.program(6,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:29,column:44},end:{line:31,column:53}}}))?o:"")+" </select>\n </th>\n"},4:function(e,t,n,s,i){return"selected"},6:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+r(a(null!=(o=l[1][0])?c(o,"field"):o,t))+'" selected>'+r(a(null!=(o=l[1][0])?c(o,"field"):o,t))+"</option>\n"},8:function(e,t,n,s,i,l){var o;return" <tr>\n"+(null!=(o=(e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]})(n,"each").call(null!=t?t:e.nullContext||{},l[0][0],{name:"each",hash:{},fn:e.program(9,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:40,column:36},end:{line:42,column:45}}}))?o:"")+" </tr>\n"},9:function(e,t,n,s,i,l){return" <td>"+e.escapeExpression(e.lambda(l[0][0],t))+"</td>\n"},11:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <option value="'+r(a(null!=(o=l[0][0])?c(o,"id"):o,t))+'" data-file="'+r(a(null!=(o=l[0][0])?c(o,"fileId"):o,t))+'">\n '+(null!=(o=c(n,"if").call(null!=t?t:e.nullContext||{},null!=t?c(t,"spaces"):t,{name:"if",hash:{},fn:e.program(12,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:61,column:24},end:{line:61,column:76}}}))?o:"")+"\n "+r(a(null!=(o=l[0][0])?c(o,"title"):o,t))+"\n </option>\n"},12:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"each").call(null!=t?t:e.nullContext||{},null!=t?o(t,"spaces"):t,{name:"each",hash:{},fn:e.program(13,i,0),inverse:e.noop,data:i,loc:{start:{line:61,column:38},end:{line:61,column:69}}}))?l:""},13:function(e,t,n,s,i){return"&nbsp;"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="import-csv">\n <div class="import-csv__top">\n <div class="back-button">\n '+r(c(n,"res").call(a,"retToApp",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:4,column:12},end:{line:4,column:30}}}))+' <i class="fa fa-external-link-square"></i>\n </div>\n <h1>'+r(c(n,"res").call(a,"importCsvTitle",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:6,column:12},end:{line:6,column:36}}}))+'</h1>\n </div>\n <div class="import-csv__body">\n <div class="scroller">\n <div class="import-csv__table-wrap">\n <div class="scroller">\n <table class="import-csv__table">\n <thead>\n <tr>\n'+(null!=(o=c(n,"each").call(a,null!=t?c(t,"headers"):t,{name:"each",hash:{},fn:e.program(1,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:15,column:32},end:{line:17,column:41}}}))?o:"")+" </tr>\n <tr>\n"+(null!=(o=c(n,"each").call(a,null!=t?c(t,"fieldMapping"):t,{name:"each",hash:{},fn:e.program(3,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:20,column:32},end:{line:34,column:41}}}))?o:"")+" </tr>\n </thead>\n <tbody>\n"+(null!=(o=c(n,"each").call(a,null!=t?c(t,"rows"):t,{name:"each",hash:{},fn:e.program(8,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:38,column:28},end:{line:44,column:37}}}))?o:"")+' </tbody>\n </table>\n </div>\n </div>\n </div>\n <div class="scroller__bar-wrapper"><div class="scroller__bar"></div></div>\n </div>\n <div class="import-csv__bottom">\n <div class="import-csv__target">\n <label for="import-csv__target-select">\n '+r(c(n,"res").call(a,"importTo",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:55,column:16},end:{line:55,column:34}}}))+'\n </label>\n <select class="import-csv__target-select" id="import-csv__target-select">\n <option value="" selected>'+r(c(n,"res").call(a,"importNewFile",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:58,column:42},end:{line:58,column:65}}}))+"</option>\n"+(null!=(o=c(n,"each").call(a,null!=t?c(t,"groups"):t,{name:"each",hash:{},fn:e.program(11,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:59,column:16},end:{line:64,column:25}}}))?o:"")+' </select>\n </div>\n <div class="import-csv__bottom-buttons">\n <button class="import-csv__button-cancel btn-silent">'+r(c(n,"res").call(a,"alertCancel",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:68,column:65},end:{line:68,column:86}}}))+'</button>\n <button class="import-csv__button-run">'+r(c(n,"res").call(a,"importCsvRun",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:69,column:51},end:{line:69,column:73}}}))+"</button>\n </div>\n </div>\n</div>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="app__beta"><i class="fa fa-exclamation-triangle"></i> '+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"appBeta",{name:"res",hash:{},data:i,loc:{start:{line:2,column:82},end:{line:2,column:99}}}))+"</div>"},3:function(e,t,n,s,i){return'<div class="app__titlebar-drag"></div>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="app">\n '+(null!=(l=a(n,"if").call(o,null!=t?a(t,"beta"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:2,column:4},end:{line:2,column:112}}}))?l:"")+"\n "+(null!=(l=a(n,"ifeq").call(o,null!=t?a(t,"titlebarStyle"):t,"hidden",{name:"ifeq",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:3,column:4},end:{line:3,column:83}}}))?l:"")+'\n <div class="app__body">\n <div class="app__menu"></div>\n <div class="app__menu-drag"></div>\n <div class="app__list-wrap">\n <div class="app__list"></div>\n <div class="app__list-drag"></div>\n <div class="app__details"></div>\n </div>\n <div class="app__panel hide"></div>\n </div>\n <div class="app__footer"></div>\n</div>\n'},useData:!0})},function(e,t,n){n(274),n(193),e.exports=n(312)},function(e,t,n){(function(t){!function(e){var t=e.babelHelpers={};t.typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t.defineProperty=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},t.slicedToArray=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],s=!0,i=!1,l=void 0;try{for(var o,a=e[Symbol.iterator]();!(s=(o=a.next()).done)&&(n.push(o.value),!t||n.length!==t);s=!0);}catch(e){i=!0,l=e}finally{try{!s&&a.return&&a.return()}finally{if(i)throw l}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},t.toConsumableArray=function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}}(void 0===t?self:t),e.exports=t.babelHelpers,delete t.babelHelpers}).call(this,n(78))},,,,,,,,,,,,,,,,function(e,t,n){var s={"./base.json":65,"./de-DE.json":196,"./fr-FR.json":197};function i(e){var t=l(e);return n(t)}function l(e){if(!n.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}i.keys=function(){return Object.keys(s)},i.resolve=l,e.exports=i,i.id=290},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<a href="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"appLink")||(null!=t?o(t,"appLink"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"appLink",hash:{},data:i,loc:{start:{line:56,column:45},end:{line:56,column:56}}}):l)+'" rel="noreferrer noopener" target="_blank">KeeWeb</a>'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c="function",u=e.escapeExpression,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<!DOCTYPE html>\n<html>\n <head>\n <meta charset="UTF-8" />\n <title>'+u(typeof(o=null!=(o=d(n,"name")||(null!=t?d(t,"name"):t))?o:r)===c?o.call(a,{name:"name",hash:{},data:i,loc:{start:{line:5,column:15},end:{line:5,column:23}}}):o)+'</title>\n <meta http-equiv="Content-Security-Policy" content="script-src \'none\'; img-src data:; style-src \'unsafe-inline\';" />\n <link href="data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAF0lEQVRIx2NgGAWjYBSMglEwCkbBSAcACBAAAeaR9cIAAAAASUVORK5CYII=" rel="icon" type="image/x-icon" />\n <style>\n body {\n font-family: -apple-system, "BlinkMacSystemFont", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;\n font-size: 14px;\n padding: 10px 20px;\n }\n table {\n border-collapse: collapse;\n border: 1px solid #ccc;\n width: 100%;\n }\n td {\n border: 1px solid #ccc;\n padding: 8px 16px;\n }\n tr:nth-of-type(even) {\n background: #fafafa;\n }\n td:first-of-type {\n width: 30%;\n }\n td.field {\n white-space: pre-wrap;\n }\n </style>\n </head>\n <body>\n <h1>'+u(typeof(o=null!=(o=d(n,"name")||(null!=t?d(t,"name"):t))?o:r)===c?o.call(a,{name:"name",hash:{},data:i,loc:{start:{line:35,column:8},end:{line:35,column:16}}}):o)+"</h1>\n <h2>"+u(d(n,"res").call(a,"exportFileInfo",{name:"res",hash:{},data:i,loc:{start:{line:36,column:8},end:{line:36,column:32}}}))+"</h2>\n <table>\n <tr>\n <td>"+u(d(n,"res").call(a,"exportHtmlName",{name:"res",hash:{},data:i,loc:{start:{line:39,column:16},end:{line:39,column:40}}}))+"</td>\n <td>"+u(typeof(o=null!=(o=d(n,"name")||(null!=t?d(t,"name"):t))?o:r)===c?o.call(a,{name:"name",hash:{},data:i,loc:{start:{line:40,column:16},end:{line:40,column:24}}}):o)+"</td>\n </tr>\n <tr>\n <td>"+u(d(n,"res").call(a,"exportHtmlDate",{name:"res",hash:{},data:i,loc:{start:{line:43,column:16},end:{line:43,column:40}}}))+"</td>\n <td>"+u(typeof(o=null!=(o=d(n,"date")||(null!=t?d(t,"date"):t))?o:r)===c?o.call(a,{name:"date",hash:{},data:i,loc:{start:{line:44,column:16},end:{line:44,column:24}}}):o)+"</td>\n </tr>\n <tr>\n <td>"+u(d(n,"res").call(a,"exportGenerator",{name:"res",hash:{},data:i,loc:{start:{line:47,column:16},end:{line:47,column:41}}}))+"</td>\n <td>KeeWeb v"+u(typeof(o=null!=(o=d(n,"appVersion")||(null!=t?d(t,"appVersion"):t))?o:r)===c?o.call(a,{name:"appVersion",hash:{},data:i,loc:{start:{line:48,column:24},end:{line:48,column:38}}}):o)+"</td>\n </tr>\n </table>\n <h2>"+u(d(n,"res").call(a,"exportEntries",{name:"res",hash:{},data:i,loc:{start:{line:51,column:8},end:{line:51,column:31}}}))+"</h2>\n <p>\n "+(null!=(l=typeof(o=null!=(o=d(n,"contentHtml")||(null!=t?d(t,"contentHtml"):t))?o:r)===c?o.call(a,{name:"contentHtml",hash:{},data:i,loc:{start:{line:53,column:8},end:{line:53,column:25}}}):o)?l:"")+"\n </p>\n <p>\n "+(null!=(l=d(n,"res").call(a,"exportDescription",{name:"res",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:56,column:8},end:{line:56,column:118}}}))?l:"")+"\n </p>\n </body>\n</html>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"title")||(null!=t?o(t,"title"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"title",hash:{},data:i,loc:{start:{line:2,column:17},end:{line:2,column:26}}}):l)},3:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"("+e.escapeExpression((l(n,"Res")||t&&l(t,"Res")||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"noTitle",{name:"Res",hash:{},data:i,loc:{start:{line:2,column:35},end:{line:2,column:52}}}))+")"},5:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <tr>\n <td>"+e.escapeExpression(e.lambda(null!=(o=l[0][0])?a(o,"title"):o,t))+'</td>\n <td class="field">'+(null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=l[0][0])?a(o,"protect"):o,{name:"if",hash:{},fn:e.program(6,i,0,l),inverse:e.program(8,i,0,l),data:i,blockParams:l,loc:{start:{line:9,column:16},end:{line:13,column:25}}}))?o:"")+"</td>\n </tr>\n"},6:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<code>"+e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"value"):o,t))+"</code>"},8:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression(e.lambda(null!=(o=l[1][0])?a(o,"value"):o,t))},10:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.hooks.helperMissing,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <tr>\n <td>"+r((c(n,"Res")||t&&c(t,"Res")||a).call(o,"tags",{name:"Res",hash:{},data:i,loc:{start:{line:19,column:16},end:{line:19,column:30}}}))+"</td>\n <td>"+r("function"==typeof(l=null!=(l=c(n,"tags")||(null!=t?c(t,"tags"):t))?l:a)?l.call(o,{name:"tags",hash:{},data:i,loc:{start:{line:20,column:16},end:{line:20,column:24}}}):l)+"</td>\n </tr>\n"},12:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.hooks.helperMissing,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <tr>\n <td>"+r((c(n,"Res")||t&&c(t,"Res")||a).call(o,"group",{name:"Res",hash:{},data:i,loc:{start:{line:25,column:16},end:{line:25,column:31}}}))+"</td>\n <td>"+r("function"==typeof(l=null!=(l=c(n,"path")||(null!=t?c(t,"path"):t))?l:a)?l.call(o,{name:"path",hash:{},data:i,loc:{start:{line:26,column:16},end:{line:26,column:24}}}):l)+"</td>\n </tr>\n"},14:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=null!=t?a(t,"attachments"):t)?a(o,"length"):o,{name:"if",hash:{},fn:e.program(15,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:30,column:8},end:{line:40,column:15}}}))?o:""},15:function(e,t,n,s,i,l){var o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <tr>\n <td>"+e.escapeExpression(r(n,"res").call(a,"detAttachments",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:32,column:20},end:{line:32,column:44}}}))+"</td>\n <td>\n"+(null!=(o=r(n,"each").call(a,null!=t?r(t,"attachments"):t,{name:"each",hash:{},fn:e.program(16,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:34,column:20},end:{line:37,column:29}}}))?o:"")+" </td>\n </tr>\n"},16:function(e,t,n,s,i,l){var o,a=e.lambda,r=e.escapeExpression,c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <a href="'+r(a(null!=(o=l[0][0])?c(o,"data"):o,t))+'" download="'+r(a(null!=(o=l[0][0])?c(o,"name"):o,t))+'">'+r(a(null!=(o=l[0][0])?c(o,"name"):o,t))+"</a>"+(null!=(o=c(n,"unless").call(null!=t?t:e.nullContext||{},i&&c(i,"last"),{name:"unless",hash:{},fn:e.program(17,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:36,column:24},end:{line:36,column:60}}}))?o:"")+"\n"},17:function(e,t,n,s,i){return",&nbsp;"},19:function(e,t,n,s,i){var l,o=null!=t?t:e.nullContext||{},a=e.escapeExpression,r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <tr>\n <td>"+a(r(n,"res").call(o,"detExpires",{name:"res",hash:{},data:i,loc:{start:{line:52,column:16},end:{line:52,column:36}}}))+"</td>\n <td>"+a("function"==typeof(l=null!=(l=r(n,"expires")||(null!=t?r(t,"expires"):t))?l:e.hooks.helperMissing)?l.call(o,{name:"expires",hash:{},data:i,loc:{start:{line:53,column:16},end:{line:53,column:27}}}):l)+"</td>\n </tr>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a,r=null!=t?t:e.nullContext||{},c=e.escapeExpression,u=e.hooks.helperMissing,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<h2>\n "+(null!=(o=d(n,"if").call(r,null!=t?d(t,"title"):t,{name:"if",hash:{},fn:e.program(1,i,0,l),inverse:e.program(3,i,0,l),data:i,blockParams:l,loc:{start:{line:2,column:4},end:{line:2,column:60}}}))?o:"")+"\n</h2>\n<table>\n"+(null!=(o=d(n,"each").call(r,null!=t?d(t,"fields"):t,{name:"each",hash:{},fn:e.program(5,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:5,column:4},end:{line:16,column:13}}}))?o:"")+(null!=(o=d(n,"if").call(r,null!=t?d(t,"tags"):t,{name:"if",hash:{},fn:e.program(10,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:17,column:4},end:{line:22,column:11}}}))?o:"")+(null!=(o=d(n,"if").call(r,null!=t?d(t,"path"):t,{name:"if",hash:{},fn:e.program(12,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:23,column:4},end:{line:28,column:11}}}))?o:"")+(null!=(o=d(n,"if").call(r,null!=t?d(t,"attachments"):t,{name:"if",hash:{},fn:e.program(14,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:29,column:4},end:{line:41,column:11}}}))?o:"")+" <tr>\n <td>"+c(d(n,"res").call(r,"detCreated",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:43,column:12},end:{line:43,column:32}}}))+"</td>\n <td>"+c("function"==typeof(a=null!=(a=d(n,"created")||(null!=t?d(t,"created"):t))?a:u)?a.call(r,{name:"created",hash:{},data:i,blockParams:l,loc:{start:{line:44,column:12},end:{line:44,column:23}}}):a)+"</td>\n </tr>\n <tr>\n <td>"+c(d(n,"res").call(r,"detUpdated",{name:"res",hash:{},data:i,blockParams:l,loc:{start:{line:47,column:12},end:{line:47,column:32}}}))+"</td>\n <td>"+c("function"==typeof(a=null!=(a=d(n,"modified")||(null!=t?d(t,"modified"):t))?a:u)?a.call(r,{name:"modified",hash:{},data:i,blockParams:l,loc:{start:{line:48,column:12},end:{line:48,column:24}}}):a)+"</td>\n </tr>\n"+(null!=(o=d(n,"if").call(r,null!=t?d(t,"expires"):t,{name:"if",hash:{},fn:e.program(19,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:50,column:4},end:{line:55,column:11}}}))?o:"")+"</table>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s={"./app":193,"./app.js":193,"./auto-type":29,"./auto-type/":29,"./auto-type/auto-type-emitter-factory":151,"./auto-type/auto-type-emitter-factory.js":151,"./auto-type/auto-type-filter":148,"./auto-type/auto-type-filter.js":148,"./auto-type/auto-type-helper-factory":149,"./auto-type/auto-type-helper-factory.js":149,"./auto-type/auto-type-obfuscator":152,"./auto-type/auto-type-obfuscator.js":152,"./auto-type/auto-type-parser":109,"./auto-type/auto-type-parser.js":109,"./auto-type/auto-type-runner":150,"./auto-type/auto-type-runner.js":150,"./auto-type/emitter/auto-type-emitter-darwin":116,"./auto-type/emitter/auto-type-emitter-darwin.js":116,"./auto-type/emitter/auto-type-emitter-linux":117,"./auto-type/emitter/auto-type-emitter-linux.js":117,"./auto-type/emitter/auto-type-emitter-win32":118,"./auto-type/emitter/auto-type-emitter-win32.js":118,"./auto-type/helper/auto-type-helper-darwin":113,"./auto-type/helper/auto-type-helper-darwin.js":113,"./auto-type/helper/auto-type-helper-linux":114,"./auto-type/helper/auto-type-helper-linux.js":114,"./auto-type/helper/auto-type-helper-win32":115,"./auto-type/helper/auto-type-helper-win32.js":115,"./auto-type/helper/auto-type-native-helper":70,"./auto-type/helper/auto-type-native-helper.js":70,"./auto-type/index":29,"./auto-type/index.js":29,"./collections/entry-collection":137,"./collections/entry-collection.js":137,"./collections/external-entry-collection":141,"./collections/external-entry-collection.js":141,"./collections/file-collection":134,"./collections/file-collection.js":134,"./collections/file-info-collection":87,"./collections/file-info-collection.js":87,"./collections/group-collection":69,"./collections/group-collection.js":69,"./collections/menu/menu-item-collection":144,"./collections/menu/menu-item-collection.js":144,"./collections/menu/menu-option-collection":136,"./collections/menu/menu-option-collection.js":136,"./collections/menu/menu-section-collection":108,"./collections/menu/menu-section-collection.js":108,"./collections/search-result-collection":66,"./collections/search-result-collection.js":66,"./comp/app/app-rights-checker":120,"./comp/app/app-rights-checker.js":120,"./comp/app/chal-resp-calculator":86,"./comp/app/chal-resp-calculator.js":86,"./comp/app/drag-drop-info":55,"./comp/app/drag-drop-info.js":55,"./comp/app/dropbox-chooser":154,"./comp/app/dropbox-chooser.js":154,"./comp/app/export-api":122,"./comp/app/export-api.js":122,"./comp/app/focus-manager":43,"./comp/app/focus-manager.js":43,"./comp/app/generator-presets":35,"./comp/app/generator-presets.js":35,"./comp/app/shortcuts":22,"./comp/app/shortcuts.js":22,"./comp/app/single-instance-checker":123,"./comp/app/single-instance-checker.js":123,"./comp/app/start-profiler":41,"./comp/app/start-profiler.js":41,"./comp/app/updater":51,"./comp/app/updater.js":51,"./comp/app/usb-listener":23,"./comp/app/usb-listener.js":23,"./comp/app/yubikey":26,"./comp/app/yubikey.js":26,"./comp/browser/copy-paste":40,"./comp/browser/copy-paste.js":40,"./comp/browser/feature-tester":124,"./comp/browser/feature-tester.js":124,"./comp/browser/focus-detector":88,"./comp/browser/focus-detector.js":88,"./comp/browser/idle-tracker":61,"./comp/browser/idle-tracker.js":61,"./comp/browser/key-handler":15,"./comp/browser/key-handler.js":15,"./comp/browser/popup-notifier":125,"./comp/browser/popup-notifier.js":125,"./comp/browser/secure-input":82,"./comp/browser/secure-input.js":82,"./comp/browser/transport":107,"./comp/browser/transport.js":107,"./comp/format/kdbx-to-html":91,"./comp/format/kdbx-to-html.js":91,"./comp/format/otp-qr-reader":155,"./comp/format/otp-qr-reader.js":155,"./comp/launcher":2,"./comp/launcher/":2,"./comp/launcher/index":2,"./comp/launcher/index.js":2,"./comp/launcher/launcher-electron":194,"./comp/launcher/launcher-electron.js":194,"./comp/launcher/native-modules":54,"./comp/launcher/native-modules.js":54,"./comp/settings/settings-manager":25,"./comp/settings/settings-manager.js":25,"./comp/settings/settings-store":31,"./comp/settings/settings-store.js":31,"./comp/ui/alerts":8,"./comp/ui/alerts.js":8,"./const/cloud-storage-apps":27,"./const/cloud-storage-apps.js":27,"./const/colors":73,"./const/colors.js":73,"./const/default-app-settings":106,"./const/default-app-settings.js":106,"./const/entry-fields":81,"./const/entry-fields.js":81,"./const/hardware":77,"./const/hardware.js":77,"./const/icon-map":67,"./const/icon-map.js":67,"./const/keys":5,"./const/keys.js":5,"./const/links":20,"./const/links.js":20,"./const/runtime-info":21,"./const/runtime-info.js":21,"./const/timeouts":16,"./const/timeouts.js":16,"./framework/collection":28,"./framework/collection.js":28,"./framework/events":1,"./framework/events.js":1,"./framework/model":18,"./framework/model.js":18,"./framework/views/copyable":97,"./framework/views/copyable.js":97,"./framework/views/resizable":71,"./framework/views/resizable.js":71,"./framework/views/scrollable":37,"./framework/views/scrollable.js":37,"./framework/views/view":7,"./framework/views/view.js":7,"./hbs-helpers":103,"./hbs-helpers/":103,"./hbs-helpers/add":198,"./hbs-helpers/add.js":198,"./hbs-helpers/cmp":199,"./hbs-helpers/cmp.js":199,"./hbs-helpers/ifemptyoreq":202,"./hbs-helpers/ifemptyoreq.js":202,"./hbs-helpers/ifeq":200,"./hbs-helpers/ifeq.js":200,"./hbs-helpers/ifneq":201,"./hbs-helpers/ifneq.js":201,"./hbs-helpers/index":103,"./hbs-helpers/index.js":103,"./hbs-helpers/res":203,"./hbs-helpers/res.js":203,"./hbs-helpers/svg":204,"./hbs-helpers/svg.js":204,"./locales/base":65,"./locales/base.json":65,"./locales/de-DE":196,"./locales/de-DE.json":196,"./locales/fr-FR":197,"./locales/fr-FR.json":197,"./models/app-model":57,"./models/app-model.js":57,"./models/app-settings-model":3,"./models/app-settings-model.js":3,"./models/attachment-model":135,"./models/attachment-model.js":135,"./models/entry-model":47,"./models/entry-model.js":47,"./models/external/external-device-model":140,"./models/external/external-device-model.js":140,"./models/external/external-entry-model":95,"./models/external/external-entry-model.js":95,"./models/external/external-otp-device-model":139,"./models/external/external-otp-device-model.js":139,"./models/external/external-otp-entry-model":142,"./models/external/external-otp-entry-model.js":142,"./models/external/yubikey-otp-model":138,"./models/external/yubikey-otp-model.js":138,"./models/file-info-model":62,"./models/file-info-model.js":62,"./models/file-model":76,"./models/file-model.js":76,"./models/group-model":50,"./models/group-model.js":50,"./models/menu/groups-menu-model":145,"./models/menu/groups-menu-model.js":145,"./models/menu/menu-item-model":58,"./models/menu/menu-item-model.js":58,"./models/menu/menu-model":143,"./models/menu/menu-model.js":143,"./models/menu/menu-option-model":94,"./models/menu/menu-option-model.js":94,"./models/menu/menu-section-model":38,"./models/menu/menu-section-model.js":38,"./models/runtime-data-model":89,"./models/runtime-data-model.js":89,"./models/update-model":13,"./models/update-model.js":13,"./plugins/plugin":44,"./plugins/plugin-api":146,"./plugins/plugin-api.js":146,"./plugins/plugin-collection":156,"./plugins/plugin-collection.js":156,"./plugins/plugin-gallery":49,"./plugins/plugin-gallery.js":49,"./plugins/plugin-manager":34,"./plugins/plugin-manager.js":34,"./plugins/plugin.js":44,"./plugins/theme-vars":191,"./plugins/theme-vars.js":191,"./presenters/entry-presenter":96,"./presenters/entry-presenter.js":96,"./storage":12,"./storage/":12,"./storage/impl/storage-cache":126,"./storage/impl/storage-cache.js":126,"./storage/impl/storage-dropbox":128,"./storage/impl/storage-dropbox.js":128,"./storage/impl/storage-file":129,"./storage/impl/storage-file-cache":130,"./storage/impl/storage-file-cache.js":130,"./storage/impl/storage-file.js":129,"./storage/impl/storage-gdrive":131,"./storage/impl/storage-gdrive.js":131,"./storage/impl/storage-onedrive":132,"./storage/impl/storage-onedrive.js":132,"./storage/impl/storage-webdav":133,"./storage/impl/storage-webdav.js":133,"./storage/index":12,"./storage/index.js":12,"./storage/io-browser-cache":80,"./storage/io-browser-cache.js":80,"./storage/io-cache":157,"./storage/io-cache.js":157,"./storage/io-file-cache":158,"./storage/io-file-cache.js":158,"./storage/pkce":90,"./storage/pkce.js":90,"./storage/storage-base":39,"./storage/storage-base.js":39,"./storage/storage-oauth-listener":127,"./storage/storage-oauth-listener.js":127,"./util/data/color":59,"./util/data/color.js":59,"./util/data/comparators":32,"./util/data/comparators.js":32,"./util/data/csv-parser":159,"./util/data/csv-parser.js":159,"./util/data/otp":60,"./util/data/otp.js":60,"./util/data/ranking":92,"./util/data/ranking.js":92,"./util/data/semver":46,"./util/data/semver.js":46,"./util/data/signature-verifier":48,"./util/data/signature-verifier.js":48,"./util/entry-search":93,"./util/entry-search.js":93,"./util/features":6,"./util/features.js":6,"./util/fn":14,"./util/fn.js":14,"./util/formatting/date-format":19,"./util/formatting/date-format.js":19,"./util/formatting/icon-url-format":68,"./util/formatting/icon-url-format.js":68,"./util/formatting/md-to-html":160,"./util/formatting/md-to-html.js":160,"./util/formatting/password-presenter":52,"./util/formatting/password-presenter.js":52,"./util/formatting/string-format":10,"./util/formatting/string-format.js":10,"./util/formatting/url-format":30,"./util/formatting/url-format.js":30,"./util/generators/id-generator":64,"./util/generators/id-generator.js":64,"./util/generators/password-generator":74,"./util/generators/password-generator.js":74,"./util/generators/phonetic":161,"./util/generators/phonetic.js":161,"./util/kdbxweb/kdbxweb-init":162,"./util/kdbxweb/kdbxweb-init.js":162,"./util/kdbxweb/protected-value-ex":119,"./util/kdbxweb/protected-value-ex.js":119,"./util/locale":0,"./util/locale.js":0,"./util/logger":9,"./util/logger.js":9,"./util/ui/file-saver":63,"./util/ui/file-saver.js":63,"./util/ui/input-fx":83,"./util/ui/input-fx.js":83,"./util/ui/tip":24,"./util/ui/tip.js":24,"./views/app-view":163,"./views/app-view.js":163,"./views/auto-type/auto-type-hint-view":98,"./views/auto-type/auto-type-hint-view.js":98,"./views/auto-type/auto-type-select-view":153,"./views/auto-type/auto-type-select-view.js":153,"./views/details/details-add-field-view":165,"./views/details/details-add-field-view.js":165,"./views/details/details-attachment-view":166,"./views/details/details-attachment-view.js":166,"./views/details/details-auto-type-view":167,"./views/details/details-auto-type-view.js":167,"./views/details/details-fields":170,"./views/details/details-fields.js":170,"./views/details/details-history-view":168,"./views/details/details-history-view.js":168,"./views/details/details-view":164,"./views/details/details-view.js":164,"./views/drag-view":85,"./views/drag-view.js":85,"./views/dropdown-view":42,"./views/dropdown-view.js":42,"./views/fields/field-view":45,"./views/fields/field-view-autocomplete":172,"./views/fields/field-view-autocomplete.js":172,"./views/fields/field-view-custom":75,"./views/fields/field-view-custom.js":75,"./views/fields/field-view-date":175,"./views/fields/field-view-date.js":175,"./views/fields/field-view-history":176,"./views/fields/field-view-history.js":176,"./views/fields/field-view-otp":101,"./views/fields/field-view-otp.js":101,"./views/fields/field-view-read-only":36,"./views/fields/field-view-read-only-raw":169,"./views/fields/field-view-read-only-raw.js":169,"./views/fields/field-view-read-only-with-options":177,"./views/fields/field-view-read-only-with-options.js":177,"./views/fields/field-view-read-only.js":36,"./views/fields/field-view-select":171,"./views/fields/field-view-select.js":171,"./views/fields/field-view-tags":174,"./views/fields/field-view-tags.js":174,"./views/fields/field-view-text":33,"./views/fields/field-view-text.js":33,"./views/fields/field-view-url":173,"./views/fields/field-view-url.js":173,"./views/fields/field-view.js":45,"./views/footer-view":178,"./views/footer-view.js":178,"./views/generator-presets-view":110,"./views/generator-presets-view.js":110,"./views/generator-view":72,"./views/generator-view.js":72,"./views/grp-view":111,"./views/grp-view.js":111,"./views/icon-select-view":84,"./views/icon-select-view.js":84,"./views/import-csv-view":190,"./views/import-csv-view.js":190,"./views/key-change-view":179,"./views/key-change-view.js":179,"./views/list-search-view":181,"./views/list-search-view.js":181,"./views/list-view":180,"./views/list-view.js":180,"./views/list-wrap-view":182,"./views/list-wrap-view.js":182,"./views/menu/menu-item-view":185,"./views/menu/menu-item-view.js":185,"./views/menu/menu-section-view":184,"./views/menu/menu-section-view.js":184,"./views/menu/menu-view":183,"./views/menu/menu-view.js":183,"./views/modal-view":121,"./views/modal-view.js":121,"./views/open-chal-resp-view":188,"./views/open-chal-resp-view.js":188,"./views/open-config-view":99,"./views/open-config-view.js":99,"./views/open-view":186,"./views/open-view.js":186,"./views/settings/settings-about-view":206,"./views/settings/settings-about-view.js":206,"./views/settings/settings-devices-view":207,"./views/settings/settings-devices-view.js":207,"./views/settings/settings-file-external-view":208,"./views/settings/settings-file-external-view.js":208,"./views/settings/settings-file-view":209,"./views/settings/settings-file-view.js":209,"./views/settings/settings-general-view":210,"./views/settings/settings-general-view.js":210,"./views/settings/settings-help-view":211,"./views/settings/settings-help-view.js":211,"./views/settings/settings-logs-view":104,"./views/settings/settings-logs-view.js":104,"./views/settings/settings-plugins-view":212,"./views/settings/settings-plugins-view.js":212,"./views/settings/settings-prv-view":105,"./views/settings/settings-prv-view.js":105,"./views/settings/settings-shortcuts-view":213,"./views/settings/settings-shortcuts-view.js":213,"./views/settings/settings-view":189,"./views/settings/settings-view.js":189,"./views/storage-file-list-view":187,"./views/storage-file-list-view.js":187,"./views/tag-view":112,"./views/tag-view.js":112};function i(e){var t=l(e);return n(t)}function l(e){if(!n.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}i.keys=function(){return Object.keys(s)},i.resolve=l,e.exports=i,i.id=293},function(e,t,n){var s={"./auto-type-helper-darwin":113,"./auto-type-helper-darwin.js":113,"./auto-type-helper-linux":114,"./auto-type-helper-linux.js":114,"./auto-type-helper-win32":115,"./auto-type-helper-win32.js":115};function i(e){var t=l(e);return n(t)}function l(e){if(!n.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}i.keys=function(){return Object.keys(s)},i.resolve=l,e.exports=i,i.id=294},function(e,t,n){var s={"./auto-type-emitter-darwin":116,"./auto-type-emitter-darwin.js":116,"./auto-type-emitter-linux":117,"./auto-type-emitter-linux.js":117,"./auto-type-emitter-win32":118,"./auto-type-emitter-win32.js":118};function i(e){var t=l(e);return n(t)}function l(e){if(!n.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}i.keys=function(){return Object.keys(s)},i.resolve=l,e.exports=i,i.id=295},function(e,t,n){var s={"./google-drive.svg":297,"./onedrive.svg":298,"./usb-token.svg":299};function i(e){var t=l(e);return n(t)}function l(e){if(!n.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}i.keys=function(){return Object.keys(s)},i.resolve=l,e.exports=i,i.id=296},function(e,t,n){"use strict";n.r(t),t.default='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z"/></svg>'},function(e,t,n){"use strict";n.r(t),t.default='<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" width="256" height="256" version="1.1" viewBox="0 0 256 256"><g transform="translate(296.64282,-100.61434)"><g transform="translate(222.85714,-11.428576)"><g transform="matrix(0.83394139,0,0,0.83394139,-86.101383,10.950635)"><path d="m-419.5 365.94c-18.48-4.62-28.77-19.31-28.81-41.1-0.01-6.97 0.49-10.31 2.23-14.79 4.26-10.99 15.55-19.27 30.41-22.33 7.39-1.52 9.67-3.15 9.67-6.92 0-1.18 0.88-4.71 1.95-7.83 4.88-14.2 13.93-26.03 23.59-30.87 10.11-5.07 15.22-6.21 27.45-6.14 17.38 0.09 26.04 3.86 38.17 16.6l6.67 7 5.97-2.07c28.91-10.01 57.73 7.03 60.06 35.49l0.64 7.79 5.69 2.04c16.26 5.83 23.9 18.06 22.52 36.04-0.91 11.76-6.4 21.15-15.11 25.81l-4.09 2.19-91 0.18c-69.93 0.13-92.16-0.11-96-1.07zM-487.72 353.36" fill="#000"/><path d="m-487.72 353.36c-10.79-2.56-22.22-12.09-27.58-22.99-3.04-6.18-3.2-7.09-3.2-18.03 0-10.4 0.26-12.07 2.68-17.23 5.1-10.89 14.88-18.75 27.15-21.84 2.59-0.65 5.02-1.69 5.41-2.31 0.38-0.62 0.81-4 0.95-7.5 0.85-21.78 15.15-40.97 35.1-47.14 10.78-3.33 24.33-2.51 36.05 2.18 3.72 1.49 3.3 1.81 11.16-8.5 4.65-6.1 14.05-13.68 21.74-17.55 8.3-4.17 16.94-6.09 27.26-6.07 28.86 0.07 53.73 18.12 62.92 45.67 2.94 8.8 2.79 11.27-0.67 11.34-1.51 0.03-5.85 0.86-9.63 1.85l-6.88 1.79-6.28-6.28c-17.7-17.7-46.59-21.53-71.15-9.42-9.81 4.84-17.7 11.78-23.65 20.83-4.25 6.45-9.66 18.48-9.66 21.47 0 2.12-1.72 3.18-9.05 5.58-22.69 7.44-35.94 24.63-35.93 46.62 0 8 2.06 17.8 4.93 23.41 1.08 2.11 1.68 4.13 1.34 4.47-0.88 0.88-29.11 0.58-33.01-0.35z" /></g></g></g></svg>\n'},function(e,t,n){"use strict";n.r(t),t.default='<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M465.69 311.917V200.083H363.175v111.834zm-69.897-18.639a4.66 4.66 0 01-4.659-4.659v-65.237a4.66 4.66 0 014.659-4.66h37.278a4.66 4.66 0 014.66 4.66v65.237a4.66 4.66 0 01-4.66 4.66h-37.278z"/><path d="M400.453 251.34v-23.299h27.959v23.299zm0 32.618v-23.299h27.959v23.299zM46.31 187.656v136.688c0 8.564 6.968 15.532 15.532 15.532h21.746V204.742a4.66 4.66 0 019.319 0v135.134h245.415c8.565 0 15.533-6.968 15.533-15.532V187.656c0-8.564-6.968-15.532-15.533-15.532H61.842c-8.565 0-15.532 6.968-15.532 15.532zm241.936 68.6c.122 9.637-7.529 17.293-17.166 17.416-9.359-.354-17.016-8.006-16.662-17.366-.122-9.636 7.529-17.293 16.889-16.938 9.637-.124 17.293 7.528 16.939 16.888zm-41.921-28.528a4.658 4.658 0 011.679 6.372c-3.865 6.631-5.909 14.266-5.909 22.082v.014c-.143 8.152 1.746 15.601 5.603 22.206a4.66 4.66 0 01-8.048 4.7c-4.73-8.099-7.057-17.196-6.873-26.984v-.021c0-9.381 2.48-18.637 7.176-26.69a4.657 4.657 0 016.372-1.679zm-23.7-17.48a4.659 4.659 0 011.395 6.441c-7.725 11.993-11.78 25.622-11.613 39.406-.164 14.287 3.794 28.031 11.327 39.791a4.66 4.66 0 01-7.849 5.027c-8.511-13.288-12.909-28.806-12.799-44.815-.13-15.503 4.387-30.927 13.099-44.455a4.66 4.66 0 016.44-1.395zm-22.433-16.741a4.656 4.656 0 011.272 6.466c-11.136 16.59-17.074 35.936-17.174 55.945-.244 20.163 5.497 39.619 16.606 56.34a4.66 4.66 0 01-7.762 5.158c-11.901-17.914-18.172-38.71-18.172-60.224 0-.452.003-.901.008-1.354.108-21.815 6.594-42.941 18.756-61.059a4.66 4.66 0 016.466-1.272z"/></svg>\n'},,,,,,,,,function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" "+(null!=(o=a(n,"if").call(null!=t?t:e.nullContext||{},null!=(o=l[0][0])?a(o,"enabled"):o,{name:"if",hash:{},fn:e.program(2,i,0,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:6,column:16},end:{line:6,column:67}}}))?o:"")+"\n"},2:function(e,t,n,s,i,l){var o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<th>"+e.escapeExpression((a(n,"Res")||t&&a(t,"Res")||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},null!=(o=l[1][0])?a(o,"name"):o,{name:"Res",hash:{},data:i,blockParams:l,loc:{start:{line:6,column:39},end:{line:6,column:55}}}))+"</th>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i,l){var o,a,r=null!=t?t:e.nullContext||{},c=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<table class="list__table">\n <thead>\n <tr>\n <th><i class="fa fa-bars muted-color list__table-options"></i></th>\n'+(null!=(o=c(n,"each").call(r,null!=t?c(t,"columns"):t,{name:"each",hash:{},fn:e.program(1,i,1,l),inverse:e.noop,data:i,blockParams:l,loc:{start:{line:5,column:12},end:{line:7,column:21}}}))?o:"")+" </tr>\n </thead>\n <tbody>\n "+(null!=(o="function"==typeof(a=null!=(a=c(n,"itemsHtml")||(null!=t?c(t,"itemsHtml"):t))?a:e.hooks.helperMissing)?a.call(r,{name:"itemsHtml",hash:{},data:i,blockParams:l,loc:{start:{line:11,column:8},end:{line:11,column:23}}}):a)?o:"")+"\n </tbody>\n</table>\n"},useData:!0,useBlockParams:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"list__item--active"},3:function(e,t,n,s,i){return"list__item--expired"},5:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<img src="'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"customIcon")||(null!=t?r(t,"customIcon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"customIcon",hash:{},data:i,loc:{start:{line:4,column:22},end:{line:4,column:36}}}):o)+'" class="list__item-icon list__item-icon--custom '+(null!=(l=r(n,"if").call(a,null!=t?r(t,"color"):t,{name:"if",hash:{},fn:e.program(6,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:85},end:{line:4,column:114}}}))?l:"")+'" />'},6:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"color")||(null!=t?o(t,"color"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"color",hash:{},data:i,loc:{start:{line:4,column:98},end:{line:4,column:107}}}):l)},8:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa fa-'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"icon")||(null!=t?r(t,"icon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"icon",hash:{},data:i,loc:{start:{line:6,column:28},end:{line:6,column:36}}}):o)+" "+(null!=(l=r(n,"if").call(a,null!=t?r(t,"color"):t,{name:"if",hash:{},fn:e.program(9,i,0),inverse:e.noop,data:i,loc:{start:{line:6,column:37},end:{line:6,column:72}}}))?l:"")+' list__item-icon"></i>'},9:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"color")||(null!=t?o(t,"color"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"color",hash:{},data:i,loc:{start:{line:6,column:50},end:{line:6,column:59}}}):l)+"-color"},11:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+(null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"title"):t,{name:"if",hash:{},fn:e.program(12,i,0),inverse:e.program(14,i,0),data:i,loc:{start:{line:9,column:29},end:{line:9,column:85}}}))?l:"")+"</td>"},12:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"title")||(null!=t?o(t,"title"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"title",hash:{},data:i,loc:{start:{line:9,column:42},end:{line:9,column:51}}}):l)},14:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"("+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"noTitle",{name:"res",hash:{},data:i,loc:{start:{line:9,column:60},end:{line:9,column:77}}}))+")"},16:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"user")||(null!=t?o(t,"user"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"user",hash:{},data:i,loc:{start:{line:10,column:28},end:{line:10,column:36}}}):l)+"</td>"},18:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"url")||(null!=t?o(t,"url"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"url",hash:{},data:i,loc:{start:{line:11,column:27},end:{line:11,column:34}}}):l)+"</td>"},20:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"tags")||(null!=t?o(t,"tags"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"tags",hash:{},data:i,loc:{start:{line:12,column:28},end:{line:12,column:36}}}):l)+"</td>"},22:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"notes")||(null!=t?o(t,"notes"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"notes",hash:{},data:i,loc:{start:{line:13,column:29},end:{line:13,column:38}}}):l)+"</td>"},24:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"groupName")||(null!=t?o(t,"groupName"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"groupName",hash:{},data:i,loc:{start:{line:14,column:33},end:{line:14,column:46}}}):l)+"</td>"},26:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"<td>"+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"fileName")||(null!=t?o(t,"fileName"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"fileName",hash:{},data:i,loc:{start:{line:15,column:32},end:{line:15,column:44}}}):l)+"</td>"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<tr class="list__item list__item--table '+(null!=(l=r(n,"if").call(a,null!=t?r(t,"active"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:40},end:{line:1,column:79}}}))?l:"")+" "+(null!=(l=r(n,"if").call(a,null!=t?r(t,"expired"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:80},end:{line:1,column:121}}}))?l:"")+'" id="'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"id")||(null!=t?r(t,"id"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:1,column:127},end:{line:1,column:133}}}):o)+'" draggable="true">\n <td>'+(null!=(l=r(n,"if").call(a,null!=t?r(t,"customIcon"):t,{name:"if",hash:{},fn:e.program(5,i,0),inverse:e.program(8,i,0),data:i,loc:{start:{line:3,column:8},end:{line:7,column:17}}}))?l:"")+"</td>\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"title"):l,{name:"if",hash:{},fn:e.program(11,i,0),inverse:e.noop,data:i,loc:{start:{line:9,column:4},end:{line:9,column:97}}}))?l:"")+"\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"user"):l,{name:"if",hash:{},fn:e.program(16,i,0),inverse:e.noop,data:i,loc:{start:{line:10,column:4},end:{line:10,column:48}}}))?l:"")+"\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"url"):l,{name:"if",hash:{},fn:e.program(18,i,0),inverse:e.noop,data:i,loc:{start:{line:11,column:4},end:{line:11,column:46}}}))?l:"")+"\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"tags"):l,{name:"if",hash:{},fn:e.program(20,i,0),inverse:e.noop,data:i,loc:{start:{line:12,column:4},end:{line:12,column:48}}}))?l:"")+"\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"notes"):l,{name:"if",hash:{},fn:e.program(22,i,0),inverse:e.noop,data:i,loc:{start:{line:13,column:4},end:{line:13,column:50}}}))?l:"")+"\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"groupName"):l,{name:"if",hash:{},fn:e.program(24,i,0),inverse:e.noop,data:i,loc:{start:{line:14,column:4},end:{line:14,column:58}}}))?l:"")+"\n "+(null!=(l=r(n,"if").call(a,null!=(l=null!=t?r(t,"columns"):t)?r(l,"fileName"):l,{name:"if",hash:{},fn:e.program(26,i,0),inverse:e.noop,data:i,loc:{start:{line:15,column:4},end:{line:15,column:56}}}))?l:"")+"\n</tr>\n"},useData:!0})},function(e,t,n){var s=n(11);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return"list__item--active"},3:function(e,t,n,s,i){return"list__item--expired"},5:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<img src="'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"customIcon")||(null!=t?r(t,"customIcon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"customIcon",hash:{},data:i,loc:{start:{line:3,column:18},end:{line:3,column:32}}}):o)+'" class="list__item-icon list__item-icon--custom '+(null!=(l=r(n,"if").call(a,null!=t?r(t,"color"):t,{name:"if",hash:{},fn:e.program(6,i,0),inverse:e.noop,data:i,loc:{start:{line:3,column:81},end:{line:3,column:110}}}))?l:"")+'" />'},6:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"color")||(null!=t?o(t,"color"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"color",hash:{},data:i,loc:{start:{line:3,column:94},end:{line:3,column:103}}}):l)},8:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<i class="fa fa-'+e.escapeExpression("function"==typeof(o=null!=(o=r(n,"icon")||(null!=t?r(t,"icon"):t))?o:e.hooks.helperMissing)?o.call(a,{name:"icon",hash:{},data:i,loc:{start:{line:5,column:24},end:{line:5,column:32}}}):o)+" "+(null!=(l=r(n,"if").call(a,null!=t?r(t,"color"):t,{name:"if",hash:{},fn:e.program(9,i,0),inverse:e.noop,data:i,loc:{start:{line:5,column:33},end:{line:5,column:68}}}))?l:"")+' list__item-icon"></i>'},9:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"color")||(null!=t?o(t,"color"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"color",hash:{},data:i,loc:{start:{line:5,column:46},end:{line:5,column:55}}}):l)+"-color"},11:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return e.escapeExpression("function"==typeof(l=null!=(l=o(n,"title")||(null!=t?o(t,"title"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"title",hash:{},data:i,loc:{start:{line:7,column:48},end:{line:7,column:57}}}):l)},13:function(e,t,n,s,i){var l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"("+e.escapeExpression(l(n,"res").call(null!=t?t:e.nullContext||{},"noTitle",{name:"res",hash:{},data:i,loc:{start:{line:7,column:66},end:{line:7,column:83}}}))+")"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,c=e.escapeExpression,u=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="list__item '+(null!=(l=u(n,"if").call(a,null!=t?u(t,"active"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:23},end:{line:1,column:62}}}))?l:"")+" "+(null!=(l=u(n,"if").call(a,null!=t?u(t,"expired"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:63},end:{line:1,column:104}}}))?l:"")+'" id="'+c("function"==typeof(o=null!=(o=u(n,"id")||(null!=t?u(t,"id"):t))?o:r)?o.call(a,{name:"id",hash:{},data:i,loc:{start:{line:1,column:110},end:{line:1,column:116}}}):o)+'" draggable="true">\n'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"customIcon"):t,{name:"if",hash:{},fn:e.program(5,i,0),inverse:e.program(8,i,0),data:i,loc:{start:{line:2,column:4},end:{line:6,column:12}}}))?l:"")+' <span class="list__item-title">'+(null!=(l=u(n,"if").call(a,null!=t?u(t,"title"):t,{name:"if",hash:{},fn:e.program(11,i,0),inverse:e.program(13,i,0),data:i,loc:{start:{line:7,column:35},end:{line:7,column:91}}}))?l:"")+'</span><span class="list__item-descr thin">'+c("function"==typeof(o=null!=(o=u(n,"description")||(null!=t?u(t,"description"):t))?o:r)?o.call(a,{name:"description",hash:{},data:i,loc:{start:{line:7,column:134},end:{line:7,column:149}}}):o)+"</span>\n</div>\n"},useData:!0})},function(e,t,n){var s={"./settings-about-view":206,"./settings-devices-view":207,"./settings-file-external-view":208,"./settings-file-view":209,"./settings-general-view":210,"./settings-help-view":211,"./settings-logs-view":104,"./settings-plugins-view":212,"./settings-prv-view":105,"./settings-shortcuts-view":213};function i(e){var t=l(e);return n(t)}function l(e){if(!n.o(s,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return s[e]}i.keys=function(){return Object.keys(s)},i.resolve=l,e.exports=i,i.id=311},function(e,t,n){}],[[273,1,2]]]);</script><script>!function(e){function r(r){for(var n,l,f=r[0],i=r[1],a=r[2],c=0,s=[];c<f.length;c++)l=f[c],Object.prototype.hasOwnProperty.call(o,l)&&o[l]&&s.push(o[l][0]),o[l]=0;for(n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n]);for(p&&p(r);s.length;)s.shift()();return u.push.apply(u,a||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,f=1;f<t.length;f++){var i=t[f];0!==o[i]&&(n=!1)}n&&(u.splice(r--,1),e=l(l.s=t[0]))}return e}var n={},o={1:0},u=[];function l(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,l),t.l=!0,t.exports}l.m=e,l.c=n,l.d=function(e,r,t){l.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.t=function(e,r){if(1&r&&(e=l(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(l.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)l.d(t,n,function(r){return e[r]}.bind(null,n));return t},l.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(r,"a",r),r},l.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},l.p="";var f=window.webpackJsonp=window.webpackJsonp||[],i=f.push.bind(f);f.push=r,f=f.slice();for(var a=0;a<f.length;a++)r(f[a]);var p=i;t()}([]);</script></head><body class="th-d"><noscript><h1>KeeWeb</h1><p>KeeWeb is a password manager written in JavaScript. Please enable JavaScript to run it.</p></noscript></body></html>