Browse code

Add deny all button

Benjamin Roth authored on08/06/2020 13:49:53
Showing1 changed files
... ...
@@ -2646,12 +2646,12 @@ function () {
2646 2646
   _createClass(Interface, [{
2647 2647
     key: "buildStyle",
2648 2648
     value: function buildStyle() {
2649
-      return (0, _redom.el)('style', '#cconsent-bar, #cconsent-bar * { box-sizing:border-box }', '#cconsent-bar { background-color:' + window.CookieConsent.config.theme.barColor + '; color:' + window.CookieConsent.config.theme.barTextColor + '; padding:15px; text-align:right; font-family:sans-serif; font-size:14px; line-height:18px; position:fixed; bottom:0; left:0; width:100%; z-index:9998; transform: translateY(0); transition: transform .6s ease-in-out; transition-delay: .3s;}', '#cconsent-bar.ccb--hidden {transform: translateY(100%); display:block;}', '#cconsent-bar .ccb__wrapper { display:flex; flex-wrap:wrap; justify-content:space-between; max-width:1800px; margin:0 auto;}', '#cconsent-bar .ccb__left { align-self:center; text-align:left; margin: 15px 0;}', '#cconsent-bar .ccb__right { align-self:center; white-space: nowrap;}', '#cconsent-bar .ccb__right > div {display:inline-block; color:#FFF;}', '#cconsent-bar a { text-decoration:underline; color:' + window.CookieConsent.config.theme.barTextColor + '; }', '#cconsent-bar .ccb__button button, #cconsent-bar .ccb__button a { line-height:normal; font-size:14px; border:none; text-decoration: none; padding:10px 10px; color:' + window.CookieConsent.config.theme.barMainButtonTextColor + '; background-color:' + window.CookieConsent.config.theme.barMainButtonColor + ';}', '#cconsent-bar a.ccb__edit { margin-right:15px }', '#cconsent-bar a:hover, #cconsent-bar button:hover { cursor:pointer; }', '#cconsent-modal { display:none; font-size:14px; line-height:18px; color:#666; width: 100vw; height: 100vh; position:fixed; left:0; top:0; right:0; bottom:0; font-family:sans-serif; font-size:14px; background-color:rgba(0,0,0,0.6); z-index:9999; align-items:center; justify-content:center;}', '@media (max-width: 600px) { #cconsent-modal { height: 100% } }', '#cconsent-modal h2, #cconsent-modal h3 {color:#333}', '#cconsent-modal.ccm--visible {display:flex}', '#cconsent-modal .ccm__content { max-width:600px; min-height:500px; max-height:600px; overflow-Y:auto; background-color:#EFEFEF; }', '@media (max-width: 600px) { #cconsent-modal .ccm__content { max-width:100vw; height:100%; max-height:initial; }}', '#cconsent-modal .ccm__content > .ccm__content__heading { border-bottom:1px solid #D8D8D8; padding:35px 35px 20px; background-color:#EFEFEF; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__heading h2 { font-size:21px; font-weight:600; color:#333; margin:0 }', '#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {font-weight:600; color:#888; cursor:pointer; font-size:26px; position: absolute; right:15px; top: 15px;}', '#cconsent-modal h2, #cconsent-modal h3 {margin-top:0}', '#cconsent-modal .ccm__content > .ccm__content__body { background-color:#FFF;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {margin:0; border-bottom: 1px solid #D8D8D8; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head::before { position:absolute; left:35px; font-size:1.4em; font-weight: 600; color:#E56385; content:"×"; display:inline-block; margin-right: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.checked-5jhk .ccm__tab-head::before {font-size:1em; content:"✔"; color:#28A834}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge { transition: transform .3s ease-out; transform-origin: 16px 6px 0; position:absolute;right:25px; top:50%; transform:rotate(0deg); transform:translateY(-50%)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg { pointer-events: none; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {transform:rotate(-180deg)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {color:#333; padding:17px 35px 17px 56px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {padding:25px 35px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head { transition: background-color .5s ease-out }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {font-weight:600; cursor:pointer; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {display:flex;}', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {flex-direction:column} }', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left { margin-bottom:20px; } }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component {display:flex; margin-right:35px; align-items:center;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component > div {font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-group {width:40px; height:20px; margin:0 10px; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {position: absolute; top:0; right:0; display: inline-block; width: 40px; height: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider  {position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; border-radius:10px; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider:before  {position: absolute; content: ""; height: 12px; width: 12px; left: 4px; bottom: 4px; background-color: white; border-radius:50%; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider  {background-color: #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:focus + .ccm__switch__slider  {box-shadow: 0 0 1px #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider:before  {-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {font-size:18px; margin-bottom:10px; line-height:1;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {color:#444; margin-bottom:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {color:#333; font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul { margin:15px 0; padding-left:15px }', '#cconsent-modal .ccm__footer { padding:35px; background-color:#EFEFEF; text-align:center; display: flex; align-items:center; justify-content:flex-end; }', '#cconsent-modal .ccm__footer button { line-height:normal; font-size:14px; transition: background-color .5s ease-out; background-color:' + window.CookieConsent.config.theme.modalMainButtonColor + '; color:' + window.CookieConsent.config.theme.modalMainButtonTextColor + '; border:none; padding:13px; min-width:110px; border-radius: 2px; cursor:pointer; }', '#cconsent-modal .ccm__footer button:hover { background-color:' + _Utilities.default.lightenDarkenColor(window.CookieConsent.config.theme.modalMainButtonColor, -20) + '; }', '#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit {  margin-right:10px; }');
2649
+      return (0, _redom.el)('style', '#cconsent-bar, #cconsent-bar * { box-sizing:border-box }', '#cconsent-bar { background-color:' + window.CookieConsent.config.theme.barColor + '; color:' + window.CookieConsent.config.theme.barTextColor + '; padding:15px; text-align:right; font-family:sans-serif; font-size:14px; line-height:18px; position:fixed; bottom:0; left:0; width:100%; z-index:9998; transform: translateY(0); transition: transform .6s ease-in-out; transition-delay: .3s;}', '#cconsent-bar.ccb--hidden {transform: translateY(100%); display:block;}', '#cconsent-bar .ccb__wrapper { display:flex; flex-wrap:wrap; justify-content:space-between; max-width:1800px; margin:0 auto;}', '#cconsent-bar .ccb__left { align-self:center; text-align:left; margin: 15px 0;}', '#cconsent-bar .ccb__right { align-self:center; white-space: nowrap;}', '#cconsent-bar .ccb__right > div {display:inline-block; color:#FFF;}', '#cconsent-bar a { text-decoration:underline; color:' + window.CookieConsent.config.theme.barTextColor + '; }', '#cconsent-bar .ccb__button button, #cconsent-bar .ccb__button a.btn { line-height:normal; font-size:14px; border:none; text-decoration: none; padding:10px 10px; color:' + window.CookieConsent.config.theme.barMainButtonTextColor + '; background-color:' + window.CookieConsent.config.theme.barMainButtonColor + ';}', '#cconsent-bar .ccb__button > * { margin-right:15px }', '#cconsent-bar .ccb__button > *:last-child { margin-right:0 }', '#cconsent-bar a:hover, #cconsent-bar button:hover { cursor:pointer; }', '#cconsent-modal { display:none; font-size:14px; line-height:18px; color:#666; width: 100vw; height: 100vh; position:fixed; left:0; top:0; right:0; bottom:0; font-family:sans-serif; font-size:14px; background-color:rgba(0,0,0,0.6); z-index:9999; align-items:center; justify-content:center;}', '@media (max-width: 600px) { #cconsent-modal { height: 100% } }', '#cconsent-modal h2, #cconsent-modal h3 {color:#333}', '#cconsent-modal.ccm--visible {display:flex}', '#cconsent-modal .ccm__content { max-width:600px; min-height:500px; max-height:600px; overflow-Y:auto; background-color:#EFEFEF; }', '@media (max-width: 600px) { #cconsent-modal .ccm__content { max-width:100vw; height:100%; max-height:initial; }}', '#cconsent-modal .ccm__content > .ccm__content__heading { border-bottom:1px solid #D8D8D8; padding:35px 35px 20px; background-color:#EFEFEF; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__heading h2 { font-size:21px; font-weight:600; color:#333; margin:0 }', '#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {font-weight:600; color:#888; cursor:pointer; font-size:26px; position: absolute; right:15px; top: 15px;}', '#cconsent-modal h2, #cconsent-modal h3 {margin-top:0}', '#cconsent-modal .ccm__content > .ccm__content__body { background-color:#FFF;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {margin:0; border-bottom: 1px solid #D8D8D8; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head::before { position:absolute; left:35px; font-size:1.4em; font-weight: 600; color:#E56385; content:"×"; display:inline-block; margin-right: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.checked-5jhk .ccm__tab-head::before {font-size:1em; content:"✔"; color:#28A834}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge { transition: transform .3s ease-out; transform-origin: 16px 6px 0; position:absolute;right:25px; top:50%; transform:rotate(0deg); transform:translateY(-50%)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg { pointer-events: none; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {transform:rotate(-180deg)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {color:#333; padding:17px 35px 17px 56px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {padding:25px 35px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head { transition: background-color .5s ease-out }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {font-weight:600; cursor:pointer; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {display:flex;}', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {flex-direction:column} }', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left { margin-bottom:20px; } }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component {display:flex; margin-right:35px; align-items:center;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component > div {font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-group {width:40px; height:20px; margin:0 10px; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {position: absolute; top:0; right:0; display: inline-block; width: 40px; height: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider  {position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; border-radius:10px; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider:before  {position: absolute; content: ""; height: 12px; width: 12px; left: 4px; bottom: 4px; background-color: white; border-radius:50%; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider  {background-color: #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:focus + .ccm__switch__slider  {box-shadow: 0 0 1px #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider:before  {-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {font-size:18px; margin-bottom:10px; line-height:1;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {color:#444; margin-bottom:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {color:#333; font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul { margin:15px 0; padding-left:15px }', '#cconsent-modal .ccm__footer { padding:35px; background-color:#EFEFEF; text-align:center; display: flex; align-items:center; justify-content:flex-end; }', '#cconsent-modal .ccm__footer button { line-height:normal; font-size:14px; transition: background-color .5s ease-out; background-color:' + window.CookieConsent.config.theme.modalMainButtonColor + '; color:' + window.CookieConsent.config.theme.modalMainButtonTextColor + '; border:none; padding:13px; min-width:110px; border-radius: 2px; cursor:pointer; }', '#cconsent-modal .ccm__footer button:hover { background-color:' + _Utilities.default.lightenDarkenColor(window.CookieConsent.config.theme.modalMainButtonColor, -20) + '; }', '#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit {  margin-right:10px; }');
2650 2650
     }
2651 2651
   }, {
2652 2652
     key: "buildBar",
2653 2653
     value: function buildBar() {
2654
-      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)('a.ccb__edit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll'))))));
2654
+      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)((window.CookieConsent.config.theme.barLinkAsButton ? 'a.ccb__edit.btn' : 'a.ccb__edit'), _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (window.CookieConsent.config.theme.barShowDenyButton ? (0, _redom.el)('button.consent-deny', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnDenyAll')) : ''), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll'))))));
2655 2655
     }
2656 2656
   }, {
2657 2657
     key: "buildModal",
... ...
@@ -2841,6 +2841,52 @@ function () {
2841 2841
         }
2842 2842
       }
2843 2843
 
2844
+      // If you click Deny all cookies
2845
+      var buttonConsentDeny = document.querySelectorAll('.consent-deny');
2846
+      var _iteratorNormalCompletion2 = true;
2847
+      var _didIteratorError2 = false;
2848
+      var _iteratorError2 = undefined;
2849
+
2850
+      try {
2851
+        for (var _iterator2 = buttonConsentDeny[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
2852
+          var button = _step2.value;
2853
+          button.addEventListener('click', function () {
2854
+            // We set config to full consent
2855
+            for (var key in window.CookieConsent.config.categories) {
2856
+              if (key == 'necessary')
2857
+                continue;
2858
+              window.CookieConsent.config.categories[key].wanted = window.CookieConsent.config.categories[key].checked = false;
2859
+            }
2860
+
2861
+            _this.writeBufferToDOM();
2862
+
2863
+            _this.buildCookie(function (cookie) {
2864
+              _this.setCookie(cookie);
2865
+            });
2866
+
2867
+            _this.elements['bar'].classList.add('ccb--hidden');
2868
+
2869
+            _this.elements['modal'].classList.remove('ccm--visible');
2870
+
2871
+            _this.modalRedrawIcons();
2872
+          });
2873
+        } // If you click Cookie settings and open modal
2874
+
2875
+      } catch (err) {
2876
+        _didIteratorError2 = true;
2877
+        _iteratorError2 = err;
2878
+      } finally {
2879
+        try {
2880
+          if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
2881
+            _iterator2.return();
2882
+          }
2883
+        } finally {
2884
+          if (_didIteratorError2) {
2885
+            throw _iteratorError2;
2886
+          }
2887
+        }
2888
+      }
2889
+
2844 2890
       Array.prototype.forEach.call(document.getElementsByClassName('ccb__edit'), function (edit) {
2845 2891
         edit.addEventListener('click', function () {
2846 2892
           _this.elements['modal'].classList.add('ccm--visible');
... ...
@@ -5658,6 +5704,7 @@ function () {
5658 5704
             barMainText: 'This website uses cookies to ensure you get the best experience on our website.',
5659 5705
             barLinkSetting: 'Cookie Settings',
5660 5706
             barBtnAcceptAll: 'Accept all cookies',
5707
+            barBtnDenyAll: 'Deny all cookies',
5661 5708
             modalMainTitle: 'Cookie settings',
5662 5709
             modalMainText: 'Cookies are small piece of data sent from a website and stored on the user\'s computer by the user\'s web browser while the user is browsing. Your browser stores each message in a small file, called cookie. When you request another page from the server, your browser sends the cookie back to the server. Cookies were designed to be a reliable mechanism for websites to remember information or to record the user\'s browsing activity.',
5663 5710
             modalBtnSave: 'Save current settings',
... ...
@@ -5671,6 +5718,7 @@ function () {
5671 5718
             barMainText: 'Ez a weboldal Sütiket használ a jobb felhasználói élmény érdekében.',
5672 5719
             barLinkSetting: 'Süti beállítások',
5673 5720
             barBtnAcceptAll: 'Minden süti elfogadása',
5721
+            barBtnDenyAll: 'Minden süti elutasítása',
5674 5722
             modalMainTitle: 'Süti beállítások',
5675 5723
             modalMainText: 'A HTTP-süti (általában egyszerűen süti, illetve angolul cookie) egy információcsomag, amelyet a szerver küld a webböngészőnek, majd a böngésző visszaküld a szervernek minden, a szerver felé irányított kérés alkalmával. Amikor egy weboldalt kérünk le a szervertől, akkor a böngésző elküldi a számára elérhető sütiket. A süti-ket úgy tervezték, hogy megbízható mechanizmust biztosítsanak a webhelyek számára az információk megőrzésére vagy a felhasználók böngészési tevékenységének rögzítésére.',
5676 5724
             modalBtnSave: 'Beállítások mentése',
Browse code

Another approach for setting data attribute

Benjamin Roth authored on19/05/2020 15:13:04
Showing1 changed files
... ...
@@ -2781,6 +2781,7 @@ function () {
2781 2781
         that.render('style', that.buildStyle());
2782 2782
         that.render('bar', that.buildBar(), function (bar) {
2783 2783
           // Show the bar after a while
2784
+          bar.setAttribute("data-nosnippet","");
2784 2785
           if (!window.CookieConsent.config.cookieExists) {
2785 2786
             setTimeout(function () {
2786 2787
               bar.classList.remove('ccb--hidden');
Browse code

Revert Test setting data attribute

Benjamin Roth authored on19/05/2020 15:07:03
Showing1 changed files
... ...
@@ -2651,7 +2651,7 @@ function () {
2651 2651
   }, {
2652 2652
     key: "buildBar",
2653 2653
     value: function buildBar() {
2654
-      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)('a.ccb__edit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll')))))).setAttribute("data-nosnippet","");
2654
+      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)('a.ccb__edit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll'))))));
2655 2655
     }
2656 2656
   }, {
2657 2657
     key: "buildModal",
Browse code

Test setting data attribute

Benjamin Roth authored on19/05/2020 14:51:17
Showing1 changed files
... ...
@@ -2651,7 +2651,7 @@ function () {
2651 2651
   }, {
2652 2652
     key: "buildBar",
2653 2653
     value: function buildBar() {
2654
-      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)('a.ccb__edit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll'))))));
2654
+      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)('a.ccb__edit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll')))))).setAttribute("data-nosnippet","");
2655 2655
     }
2656 2656
   }, {
2657 2657
     key: "buildModal",
Browse code

Update js

Benjamin Roth authored on19/05/2020 12:44:21
Showing1 changed files
... ...
@@ -2691,7 +2691,7 @@ function () {
2691 2691
             style: "opacity: 1; mix-blend-mode: normal; fill: rgb(51, 51, 51); width: 32px; height: 32px;"
2692 2692
           }, (0, _redom.el)(document.createElementNS("http://www.w3.org/2000/svg", "path"), {
2693 2693
             'xmlns:default': "http://www.w3.org/2000/svg",
2694
-            id: "angle-down",
2694
+            class: "icon-wedge-angle-down",
2695 2695
             d: "M17.2,9.84c0-0.09-0.04-0.18-0.1-0.24l-0.52-0.52c-0.13-0.13-0.33-0.14-0.47-0.01c0,0-0.01,0.01-0.01,0.01  l-4.1,4.1l-4.09-4.1C7.78,8.94,7.57,8.94,7.44,9.06c0,0-0.01,0.01-0.01,0.01L6.91,9.6c-0.13,0.13-0.14,0.33-0.01,0.47  c0,0,0.01,0.01,0.01,0.01l4.85,4.85c0.13,0.13,0.33,0.14,0.47,0.01c0,0,0.01-0.01,0.01-0.01l4.85-4.85c0.06-0.06,0.1-0.15,0.1-0.24  l0,0H17.2z",
2696 2696
             style: "fill: rgb(51, 51, 51);"
2697 2697
           })))), (0, _redom.el)('dd.ccm__tab-content', (0, _redom.el)('div.ccm__tab-content__left', !window.CookieConsent.config.categories[key].needed && (0, _redom.el)('div.ccm__switch-component', (0, _redom.el)('div.status-off', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'off')), (0, _redom.el)('div.ccm__switch-group', (0, _redom.el)('label.ccm__switch', (0, _redom.el)('input.category-onoff', {
... ...
@@ -5751,7 +5751,88 @@ function () {
5751 5751
 }();
5752 5752
 
5753 5753
 exports.default = Configuration;
5754
-},{"./Utilities":"/6wJ","lodash/merge":"yubd"}],"ylk/":[function(require,module,exports) {
5754
+},{"./Utilities":"/6wJ","lodash/merge":"yubd"}],"xR4A":[function(require,module,exports) {
5755
+  "use strict";
5756
+
5757
+  Object.defineProperty(exports, "__esModule", {
5758
+    value: true
5759
+  });
5760
+  exports.default = void 0;
5761
+
5762
+  var _Utilities = _interopRequireDefault(require("./Utilities"));
5763
+
5764
+  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5765
+
5766
+  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5767
+
5768
+  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
5769
+
5770
+  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
5771
+
5772
+  var RemoveCookies =
5773
+    /*#__PURE__*/
5774
+    function () {
5775
+      function RemoveCookies() {
5776
+        _classCallCheck(this, RemoveCookies);
5777
+      }
5778
+
5779
+      _createClass(RemoveCookies, [{
5780
+        key: "init",
5781
+        value: function init() {
5782
+          this.removeUnwantedCookies();
5783
+        }
5784
+      }, {
5785
+        key: "removeUnwantedCookies",
5786
+        value: function removeUnwantedCookies() {
5787
+          var cookieList = [];
5788
+          var config = window.CookieConsent.config;
5789
+          document.cookie.split(';').map(function (a) {
5790
+            cookieList.push(a.split('=')[0].replace(/(^\s*)|(\s*&)/, ''));
5791
+          });
5792
+
5793
+          for (var service in config.services) {
5794
+            if (_Utilities.default.objectType(config.services[service].cookies) === 'Array') {
5795
+              // Remove cookies if they are not wanted by user
5796
+              if (!config.categories[config.services[service].category].wanted) {
5797
+                for (var i in config.services[service].cookies) {
5798
+                  var type = _Utilities.default.objectType(config.services[service].cookies[i].name);
5799
+
5800
+                  if (type === 'String') {
5801
+                    if (cookieList.indexOf(config.services[service].cookies[i].name) > -1) {
5802
+                      this.removeCookie(config.services[service].cookies[i]);
5803
+                    }
5804
+                  } else if (type === 'RegExp') {
5805
+                    // Searching cookie list for cookies matching specified RegExp
5806
+                    var cookieDef = config.services[service].cookies[i];
5807
+
5808
+                    for (var c in cookieList) {
5809
+                      if (cookieList[c].match(cookieDef.name)) {
5810
+                        this.removeCookie({
5811
+                          name: cookieList[c],
5812
+                          domain: _Utilities.default.objectType(cookieDef.domain) === 'String' ? cookieDef.domain : null
5813
+                        });
5814
+                      }
5815
+                    }
5816
+                  }
5817
+                }
5818
+              }
5819
+            }
5820
+          }
5821
+        }
5822
+      }, {
5823
+        key: "removeCookie",
5824
+        value: function removeCookie(cookie) {
5825
+          // Removing cookies from domain and .domain
5826
+          var domain = _Utilities.default.objectType(cookie.domain) === 'String' ? "domain=".concat(cookie.domain, ";") : '';
5827
+          document.cookie = "".concat(cookie.name, "=; expires=Thu, 01 Jan 1980 00:00:00 UTC; ").concat(domain, " path=/;");
5828
+        }
5829
+      }]);
5830
+
5831
+      return RemoveCookies;
5832
+    }();
5833
+
5834
+  exports.default = RemoveCookies;
5835
+},{"./Utilities":"/6wJ"}],"ylk/":[function(require,module,exports) {
5755 5836
 "use strict";
5756 5837
 
5757 5838
 Object.defineProperty(exports, "__esModule", {
... ...
@@ -5771,6 +5852,8 @@ var _Interface = _interopRequireDefault(require("./Interface"));
5771 5852
 
5772 5853
 var _Configuration = _interopRequireDefault(require("./Configuration"));
5773 5854
 
5855
+var _RemoveCookies = _interopRequireDefault(require("./RemoveCookies"));
5856
+
5774 5857
 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5775 5858
 
5776 5859
 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
... ...
@@ -5790,10 +5873,12 @@ function () {
5790 5873
     key: "init",
5791 5874
     value: function init(configObject) {
5792 5875
       new _Configuration.default(configObject);
5876
+      var removeCookies = new _RemoveCookies.default();
5793 5877
       var insertScriptFilter = new _InsertScriptFilter.default();
5794 5878
       var scriptTagFilter = new _ScriptTagFilter.default();
5795 5879
       var wrapperFilter = new _WrapperFilter.default();
5796 5880
       var localCookieFilter = new _LocalCookieFilter.default();
5881
+      removeCookies.init();
5797 5882
       insertScriptFilter.init();
5798 5883
       scriptTagFilter.init();
5799 5884
       wrapperFilter.init();
... ...
@@ -5809,7 +5894,7 @@ function () {
5809 5894
 }();
5810 5895
 
5811 5896
 exports.default = CookieConsent;
5812
-},{"./InsertScriptFilter":"UWvR","./ScriptTagFilter":"ob2e","./WrapperFilter":"935K","./LocalCookieFilter":"2E//","./Interface":"/Qw2","./Configuration":"duLQ"}],"Focm":[function(require,module,exports) {
5897
+},{"./InsertScriptFilter":"UWvR","./ScriptTagFilter":"ob2e","./WrapperFilter":"935K","./LocalCookieFilter":"2E//","./Interface":"/Qw2","./Configuration":"duLQ","./RemoveCookies":"xR4A"}],"Focm":[function(require,module,exports) {
5813 5898
 "use strict";
5814 5899
 
5815 5900
 require("core-js/es6/symbol");
Browse code

Adjust link styles

Benjamin Roth authored on19/05/2020 12:29:45
Showing1 changed files
... ...
@@ -2646,7 +2646,7 @@ function () {
2646 2646
   _createClass(Interface, [{
2647 2647
     key: "buildStyle",
2648 2648
     value: function buildStyle() {
2649
-      return (0, _redom.el)('style', '#cconsent-bar, #cconsent-bar * { box-sizing:border-box }', '#cconsent-bar { background-color:' + window.CookieConsent.config.theme.barColor + '; color:' + window.CookieConsent.config.theme.barTextColor + '; padding:15px; text-align:right; font-family:sans-serif; font-size:14px; line-height:18px; position:fixed; bottom:0; left:0; width:100%; z-index:9998; transform: translateY(0); transition: transform .6s ease-in-out; transition-delay: .3s;}', '#cconsent-bar.ccb--hidden {transform: translateY(100%); display:block;}', '#cconsent-bar .ccb__wrapper { display:flex; flex-wrap:wrap; justify-content:space-between; max-width:1800px; margin:0 auto;}', '#cconsent-bar .ccb__left { align-self:center; text-align:left; margin: 15px 0;}', '#cconsent-bar .ccb__right { align-self:center; white-space: nowrap;}', '#cconsent-bar .ccb__right > div {display:inline-block; color:#FFF;}', '#cconsent-bar a { text-decoration:underline; color:' + window.CookieConsent.config.theme.barTextColor + '; }', '#cconsent-bar button { line-height:normal; font-size:14px; border:none; padding:10px 10px; color:' + window.CookieConsent.config.theme.barMainButtonTextColor + '; background-color:' + window.CookieConsent.config.theme.barMainButtonColor + ';}', '#cconsent-bar a.ccb__edit { margin-right:15px }', '#cconsent-bar a:hover, #cconsent-bar button:hover { cursor:pointer; }', '#cconsent-modal { display:none; font-size:14px; line-height:18px; color:#666; width: 100vw; height: 100vh; position:fixed; left:0; top:0; right:0; bottom:0; font-family:sans-serif; font-size:14px; background-color:rgba(0,0,0,0.6); z-index:9999; align-items:center; justify-content:center;}', '@media (max-width: 600px) { #cconsent-modal { height: 100% } }', '#cconsent-modal h2, #cconsent-modal h3 {color:#333}', '#cconsent-modal.ccm--visible {display:flex}', '#cconsent-modal .ccm__content { max-width:600px; min-height:500px; max-height:600px; overflow-Y:auto; background-color:#EFEFEF; }', '@media (max-width: 600px) { #cconsent-modal .ccm__content { max-width:100vw; height:100%; max-height:initial; }}', '#cconsent-modal .ccm__content > .ccm__content__heading { border-bottom:1px solid #D8D8D8; padding:35px 35px 20px; background-color:#EFEFEF; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__heading h2 { font-size:21px; font-weight:600; color:#333; margin:0 }', '#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {font-weight:600; color:#888; cursor:pointer; font-size:26px; position: absolute; right:15px; top: 15px;}', '#cconsent-modal h2, #cconsent-modal h3 {margin-top:0}', '#cconsent-modal .ccm__content > .ccm__content__body { background-color:#FFF;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {margin:0; border-bottom: 1px solid #D8D8D8; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head::before { position:absolute; left:35px; font-size:1.4em; font-weight: 600; color:#E56385; content:"×"; display:inline-block; margin-right: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.checked-5jhk .ccm__tab-head::before {font-size:1em; content:"✔"; color:#28A834}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge { transition: transform .3s ease-out; transform-origin: 16px 6px 0; position:absolute;right:25px; top:50%; transform:rotate(0deg); transform:translateY(-50%)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg { pointer-events: none; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {transform:rotate(-180deg)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {color:#333; padding:17px 35px 17px 56px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {padding:25px 35px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head { transition: background-color .5s ease-out }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {font-weight:600; cursor:pointer; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {display:flex;}', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {flex-direction:column} }', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left { margin-bottom:20px; } }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component {display:flex; margin-right:35px; align-items:center;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component > div {font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-group {width:40px; height:20px; margin:0 10px; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {position: absolute; top:0; right:0; display: inline-block; width: 40px; height: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider  {position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; border-radius:10px; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider:before  {position: absolute; content: ""; height: 12px; width: 12px; left: 4px; bottom: 4px; background-color: white; border-radius:50%; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider  {background-color: #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:focus + .ccm__switch__slider  {box-shadow: 0 0 1px #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider:before  {-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {font-size:18px; margin-bottom:10px; line-height:1;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {color:#444; margin-bottom:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {color:#333; font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul { margin:15px 0; padding-left:15px }', '#cconsent-modal .ccm__footer { padding:35px; background-color:#EFEFEF; text-align:center; display: flex; align-items:center; justify-content:flex-end; }', '#cconsent-modal .ccm__footer button { line-height:normal; font-size:14px; transition: background-color .5s ease-out; background-color:' + window.CookieConsent.config.theme.modalMainButtonColor + '; color:' + window.CookieConsent.config.theme.modalMainButtonTextColor + '; border:none; padding:13px; min-width:110px; border-radius: 2px; cursor:pointer; }', '#cconsent-modal .ccm__footer button:hover { background-color:' + _Utilities.default.lightenDarkenColor(window.CookieConsent.config.theme.modalMainButtonColor, -20) + '; }', '#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit {  margin-right:10px; }');
2649
+      return (0, _redom.el)('style', '#cconsent-bar, #cconsent-bar * { box-sizing:border-box }', '#cconsent-bar { background-color:' + window.CookieConsent.config.theme.barColor + '; color:' + window.CookieConsent.config.theme.barTextColor + '; padding:15px; text-align:right; font-family:sans-serif; font-size:14px; line-height:18px; position:fixed; bottom:0; left:0; width:100%; z-index:9998; transform: translateY(0); transition: transform .6s ease-in-out; transition-delay: .3s;}', '#cconsent-bar.ccb--hidden {transform: translateY(100%); display:block;}', '#cconsent-bar .ccb__wrapper { display:flex; flex-wrap:wrap; justify-content:space-between; max-width:1800px; margin:0 auto;}', '#cconsent-bar .ccb__left { align-self:center; text-align:left; margin: 15px 0;}', '#cconsent-bar .ccb__right { align-self:center; white-space: nowrap;}', '#cconsent-bar .ccb__right > div {display:inline-block; color:#FFF;}', '#cconsent-bar a { text-decoration:underline; color:' + window.CookieConsent.config.theme.barTextColor + '; }', '#cconsent-bar .ccb__button button, #cconsent-bar .ccb__button a { line-height:normal; font-size:14px; border:none; text-decoration: none; padding:10px 10px; color:' + window.CookieConsent.config.theme.barMainButtonTextColor + '; background-color:' + window.CookieConsent.config.theme.barMainButtonColor + ';}', '#cconsent-bar a.ccb__edit { margin-right:15px }', '#cconsent-bar a:hover, #cconsent-bar button:hover { cursor:pointer; }', '#cconsent-modal { display:none; font-size:14px; line-height:18px; color:#666; width: 100vw; height: 100vh; position:fixed; left:0; top:0; right:0; bottom:0; font-family:sans-serif; font-size:14px; background-color:rgba(0,0,0,0.6); z-index:9999; align-items:center; justify-content:center;}', '@media (max-width: 600px) { #cconsent-modal { height: 100% } }', '#cconsent-modal h2, #cconsent-modal h3 {color:#333}', '#cconsent-modal.ccm--visible {display:flex}', '#cconsent-modal .ccm__content { max-width:600px; min-height:500px; max-height:600px; overflow-Y:auto; background-color:#EFEFEF; }', '@media (max-width: 600px) { #cconsent-modal .ccm__content { max-width:100vw; height:100%; max-height:initial; }}', '#cconsent-modal .ccm__content > .ccm__content__heading { border-bottom:1px solid #D8D8D8; padding:35px 35px 20px; background-color:#EFEFEF; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__heading h2 { font-size:21px; font-weight:600; color:#333; margin:0 }', '#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {font-weight:600; color:#888; cursor:pointer; font-size:26px; position: absolute; right:15px; top: 15px;}', '#cconsent-modal h2, #cconsent-modal h3 {margin-top:0}', '#cconsent-modal .ccm__content > .ccm__content__body { background-color:#FFF;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {margin:0; border-bottom: 1px solid #D8D8D8; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head::before { position:absolute; left:35px; font-size:1.4em; font-weight: 600; color:#E56385; content:"×"; display:inline-block; margin-right: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.checked-5jhk .ccm__tab-head::before {font-size:1em; content:"✔"; color:#28A834}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge { transition: transform .3s ease-out; transform-origin: 16px 6px 0; position:absolute;right:25px; top:50%; transform:rotate(0deg); transform:translateY(-50%)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg { pointer-events: none; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {transform:rotate(-180deg)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {color:#333; padding:17px 35px 17px 56px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {padding:25px 35px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head { transition: background-color .5s ease-out }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {font-weight:600; cursor:pointer; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {display:flex;}', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {flex-direction:column} }', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left { margin-bottom:20px; } }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component {display:flex; margin-right:35px; align-items:center;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component > div {font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-group {width:40px; height:20px; margin:0 10px; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {position: absolute; top:0; right:0; display: inline-block; width: 40px; height: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider  {position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; border-radius:10px; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider:before  {position: absolute; content: ""; height: 12px; width: 12px; left: 4px; bottom: 4px; background-color: white; border-radius:50%; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider  {background-color: #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:focus + .ccm__switch__slider  {box-shadow: 0 0 1px #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider:before  {-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {font-size:18px; margin-bottom:10px; line-height:1;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {color:#444; margin-bottom:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {color:#333; font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul { margin:15px 0; padding-left:15px }', '#cconsent-modal .ccm__footer { padding:35px; background-color:#EFEFEF; text-align:center; display: flex; align-items:center; justify-content:flex-end; }', '#cconsent-modal .ccm__footer button { line-height:normal; font-size:14px; transition: background-color .5s ease-out; background-color:' + window.CookieConsent.config.theme.modalMainButtonColor + '; color:' + window.CookieConsent.config.theme.modalMainButtonTextColor + '; border:none; padding:13px; min-width:110px; border-radius: 2px; cursor:pointer; }', '#cconsent-modal .ccm__footer button:hover { background-color:' + _Utilities.default.lightenDarkenColor(window.CookieConsent.config.theme.modalMainButtonColor, -20) + '; }', '#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit {  margin-right:10px; }');
2650 2650
     }
2651 2651
   }, {
2652 2652
     key: "buildBar",
Browse code

Temporarily fix wrong use of language variable in cookieconsent js

Benjamin Roth authored on11/12/2019 21:36:45
Showing1 changed files
... ...
@@ -2709,7 +2709,7 @@ function () {
2709 2709
         href: window.CookieConsent.config.modalMainTextMoreLink,
2710 2710
         target: '_blank',
2711 2711
         rel: 'noopener noreferrer'
2712
-      }, _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalMainTitle')) : null), (0, _redom.el)('div.ccm__cheading__close', '×')), (0, _redom.el)('div.ccm__content__body', (0, _redom.el)('div.ccm__tabs', modalTabGroups())), (0, _redom.el)('div.ccm__footer', (0, _redom.el)('button#ccm__footer__consent-modal-submit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnSave')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnAcceptAll')))));
2712
+      }, _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'learnMore')) : null), (0, _redom.el)('div.ccm__cheading__close', '×')), (0, _redom.el)('div.ccm__content__body', (0, _redom.el)('div.ccm__tabs', modalTabGroups())), (0, _redom.el)('div.ccm__footer', (0, _redom.el)('button#ccm__footer__consent-modal-submit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnSave')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnAcceptAll')))));
2713 2713
     }
2714 2714
   }, {
2715 2715
     key: "modalRedrawIcons",
Browse code

Initial commit

Benjamin Roth authored on11/12/2019 13:27:07
Showing1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,5827 @@
1
+// modules are defined as an array
2
+// [ module function, map of requires ]
3
+//
4
+// map of requires is short require name -> numeric require
5
+//
6
+// anything defined in a previous bundle is accessed via the
7
+// orig method which is the require for previous bundles
8
+
9
+// eslint-disable-next-line no-global-assign
10
+parcelRequire = (function (modules, cache, entry, globalName) {
11
+  // Save the require from previous bundle to this closure if any
12
+  var previousRequire = typeof parcelRequire === 'function' && parcelRequire;
13
+  var nodeRequire = typeof require === 'function' && require;
14
+
15
+  function newRequire(name, jumped) {
16
+    if (!cache[name]) {
17
+      if (!modules[name]) {
18
+        // if we cannot find the module within our internal map or
19
+        // cache jump to the current global require ie. the last bundle
20
+        // that was added to the page.
21
+        var currentRequire = typeof parcelRequire === 'function' && parcelRequire;
22
+        if (!jumped && currentRequire) {
23
+          return currentRequire(name, true);
24
+        }
25
+
26
+        // If there are other bundles on this page the require from the
27
+        // previous one is saved to 'previousRequire'. Repeat this as
28
+        // many times as there are bundles until the module is found or
29
+        // we exhaust the require chain.
30
+        if (previousRequire) {
31
+          return previousRequire(name, true);
32
+        }
33
+
34
+        // Try the node require function if it exists.
35
+        if (nodeRequire && typeof name === 'string') {
36
+          return nodeRequire(name);
37
+        }
38
+
39
+        var err = new Error('Cannot find module \'' + name + '\'');
40
+        err.code = 'MODULE_NOT_FOUND';
41
+        throw err;
42
+      }
43
+
44
+      localRequire.resolve = resolve;
45
+      localRequire.cache = {};
46
+
47
+      var module = cache[name] = new newRequire.Module(name);
48
+
49
+      modules[name][0].call(module.exports, localRequire, module, module.exports, this);
50
+    }
51
+
52
+    return cache[name].exports;
53
+
54
+    function localRequire(x){
55
+      return newRequire(localRequire.resolve(x));
56
+    }
57
+
58
+    function resolve(x){
59
+      return modules[name][1][x] || x;
60
+    }
61
+  }
62
+
63
+  function Module(moduleName) {
64
+    this.id = moduleName;
65
+    this.bundle = newRequire;
66
+    this.exports = {};
67
+  }
68
+
69
+  newRequire.isParcelRequire = true;
70
+  newRequire.Module = Module;
71
+  newRequire.modules = modules;
72
+  newRequire.cache = cache;
73
+  newRequire.parent = previousRequire;
74
+  newRequire.register = function (id, exports) {
75
+    modules[id] = [function (require, module) {
76
+      module.exports = exports;
77
+    }, {}];
78
+  };
79
+
80
+  for (var i = 0; i < entry.length; i++) {
81
+    newRequire(entry[i]);
82
+  }
83
+
84
+  if (entry.length) {
85
+    // Expose entry point to Node, AMD or browser globals
86
+    // Based on https://github.com/ForbesLindesay/umd/blob/master/template.js
87
+    var mainExports = newRequire(entry[entry.length - 1]);
88
+
89
+    // CommonJS
90
+    if (typeof exports === "object" && typeof module !== "undefined") {
91
+      module.exports = mainExports;
92
+
93
+    // RequireJS
94
+    } else if (typeof define === "function" && define.amd) {
95
+     define(function () {
96
+       return mainExports;
97
+     });
98
+
99
+    // <script>
100
+    } else if (globalName) {
101
+      this[globalName] = mainExports;
102
+    }
103
+  }
104
+
105
+  // Override the current require with this new one
106
+  return newRequire;
107
+})({"5qf4":[function(require,module,exports) {
108
+
109
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
110
+var global = module.exports = typeof window != 'undefined' && window.Math == Math
111
+  ? window : typeof self != 'undefined' && self.Math == Math ? self
112
+  // eslint-disable-next-line no-new-func
113
+  : Function('return this')();
114
+if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
115
+
116
+},{}],"2uHg":[function(require,module,exports) {
117
+var hasOwnProperty = {}.hasOwnProperty;
118
+module.exports = function (it, key) {
119
+  return hasOwnProperty.call(it, key);
120
+};
121
+
122
+},{}],"5BXi":[function(require,module,exports) {
123
+module.exports = function (exec) {
124
+  try {
125
+    return !!exec();
126
+  } catch (e) {
127
+    return true;
128
+  }
129
+};
130
+
131
+},{}],"P9Ib":[function(require,module,exports) {
132
+// Thank's IE8 for his funny defineProperty
133
+module.exports = !require('./_fails')(function () {
134
+  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
135
+});
136
+
137
+},{"./_fails":"5BXi"}],"ss9A":[function(require,module,exports) {
138
+var core = module.exports = { version: '2.6.5' };
139
+if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
140
+
141
+},{}],"M7z6":[function(require,module,exports) {
142
+module.exports = function (it) {
143
+  return typeof it === 'object' ? it !== null : typeof it === 'function';
144
+};
145
+
146
+},{}],"eT53":[function(require,module,exports) {
147
+var isObject = require('./_is-object');
148
+module.exports = function (it) {
149
+  if (!isObject(it)) throw TypeError(it + ' is not an object!');
150
+  return it;
151
+};
152
+
153
+},{"./_is-object":"M7z6"}],"/vZ6":[function(require,module,exports) {
154
+var isObject = require('./_is-object');
155
+var document = require('./_global').document;
156
+// typeof document.createElement is 'object' in old IE
157
+var is = isObject(document) && isObject(document.createElement);
158
+module.exports = function (it) {
159
+  return is ? document.createElement(it) : {};
160
+};
161
+
162
+},{"./_is-object":"M7z6","./_global":"5qf4"}],"/o6G":[function(require,module,exports) {
163
+module.exports = !require('./_descriptors') && !require('./_fails')(function () {
164
+  return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;
165
+});
166
+
167
+},{"./_descriptors":"P9Ib","./_fails":"5BXi","./_dom-create":"/vZ6"}],"9y37":[function(require,module,exports) {
168
+// 7.1.1 ToPrimitive(input [, PreferredType])
169
+var isObject = require('./_is-object');
170
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
171
+// and the second argument - flag - preferred type is a string
172
+module.exports = function (it, S) {
173
+  if (!isObject(it)) return it;
174
+  var fn, val;
175
+  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
176
+  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
177
+  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
178
+  throw TypeError("Can't convert object to primitive value");
179
+};
180
+
181
+},{"./_is-object":"M7z6"}],"nw8e":[function(require,module,exports) {
182
+var anObject = require('./_an-object');
183
+var IE8_DOM_DEFINE = require('./_ie8-dom-define');
184
+var toPrimitive = require('./_to-primitive');
185
+var dP = Object.defineProperty;
186
+
187
+exports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {
188
+  anObject(O);
189
+  P = toPrimitive(P, true);
190
+  anObject(Attributes);
191
+  if (IE8_DOM_DEFINE) try {
192
+    return dP(O, P, Attributes);
193
+  } catch (e) { /* empty */ }
194
+  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
195
+  if ('value' in Attributes) O[P] = Attributes.value;
196
+  return O;
197
+};
198
+
199
+},{"./_an-object":"eT53","./_ie8-dom-define":"/o6G","./_to-primitive":"9y37","./_descriptors":"P9Ib"}],"uJ6d":[function(require,module,exports) {
200
+module.exports = function (bitmap, value) {
201
+  return {
202
+    enumerable: !(bitmap & 1),
203
+    configurable: !(bitmap & 2),
204
+    writable: !(bitmap & 4),
205
+    value: value
206
+  };
207
+};
208
+
209
+},{}],"0NXb":[function(require,module,exports) {
210
+var dP = require('./_object-dp');
211
+var createDesc = require('./_property-desc');
212
+module.exports = require('./_descriptors') ? function (object, key, value) {
213
+  return dP.f(object, key, createDesc(1, value));
214
+} : function (object, key, value) {
215
+  object[key] = value;
216
+  return object;
217
+};
218
+
219
+},{"./_object-dp":"nw8e","./_property-desc":"uJ6d","./_descriptors":"P9Ib"}],"U49f":[function(require,module,exports) {
220
+var id = 0;
221
+var px = Math.random();
222
+module.exports = function (key) {
223
+  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
224
+};
225
+
226
+},{}],"H21C":[function(require,module,exports) {
227
+module.exports = false;
228
+
229
+},{}],"6zGc":[function(require,module,exports) {
230
+
231
+var core = require('./_core');
232
+var global = require('./_global');
233
+var SHARED = '__core-js_shared__';
234
+var store = global[SHARED] || (global[SHARED] = {});
235
+
236
+(module.exports = function (key, value) {
237
+  return store[key] || (store[key] = value !== undefined ? value : {});
238
+})('versions', []).push({
239
+  version: core.version,
240
+  mode: require('./_library') ? 'pure' : 'global',
241
+  copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
242
+});
243
+
244
+},{"./_core":"ss9A","./_global":"5qf4","./_library":"H21C"}],"d5RU":[function(require,module,exports) {
245
+module.exports = require('./_shared')('native-function-to-string', Function.toString);
246
+
247
+},{"./_shared":"6zGc"}],"PHot":[function(require,module,exports) {
248
+
249
+var global = require('./_global');
250
+var hide = require('./_hide');
251
+var has = require('./_has');
252
+var SRC = require('./_uid')('src');
253
+var $toString = require('./_function-to-string');
254
+var TO_STRING = 'toString';
255
+var TPL = ('' + $toString).split(TO_STRING);
256
+
257
+require('./_core').inspectSource = function (it) {
258
+  return $toString.call(it);
259
+};
260
+
261
+(module.exports = function (O, key, val, safe) {
262
+  var isFunction = typeof val == 'function';
263
+  if (isFunction) has(val, 'name') || hide(val, 'name', key);
264
+  if (O[key] === val) return;
265
+  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
266
+  if (O === global) {
267
+    O[key] = val;
268
+  } else if (!safe) {
269
+    delete O[key];
270
+    hide(O, key, val);
271
+  } else if (O[key]) {
272
+    O[key] = val;
273
+  } else {
274
+    hide(O, key, val);
275
+  }
276
+// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
277
+})(Function.prototype, TO_STRING, function toString() {
278
+  return typeof this == 'function' && this[SRC] || $toString.call(this);
279
+});
280
+
281
+},{"./_global":"5qf4","./_hide":"0NXb","./_has":"2uHg","./_uid":"U49f","./_function-to-string":"d5RU","./_core":"ss9A"}],"6kYj":[function(require,module,exports) {
282
+module.exports = function (it) {
283
+  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
284
+  return it;
285
+};
286
+
287
+},{}],"E3Kh":[function(require,module,exports) {
288
+// optional / simple context binding
289
+var aFunction = require('./_a-function');
290
+module.exports = function (fn, that, length) {
291
+  aFunction(fn);
292
+  if (that === undefined) return fn;
293
+  switch (length) {
294
+    case 1: return function (a) {
295
+      return fn.call(that, a);
296
+    };
297
+    case 2: return function (a, b) {
298
+      return fn.call(that, a, b);
299
+    };
300
+    case 3: return function (a, b, c) {
301
+      return fn.call(that, a, b, c);
302
+    };
303
+  }
304
+  return function (/* ...args */) {
305
+    return fn.apply(that, arguments);
306
+  };
307
+};
308
+
309
+},{"./_a-function":"6kYj"}],"izCb":[function(require,module,exports) {
310
+
311
+var global = require('./_global');
312
+var core = require('./_core');
313
+var hide = require('./_hide');
314
+var redefine = require('./_redefine');
315
+var ctx = require('./_ctx');
316
+var PROTOTYPE = 'prototype';
317
+
318
+var $export = function (type, name, source) {
319
+  var IS_FORCED = type & $export.F;
320
+  var IS_GLOBAL = type & $export.G;
321
+  var IS_STATIC = type & $export.S;
322
+  var IS_PROTO = type & $export.P;
323
+  var IS_BIND = type & $export.B;
324
+  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
325
+  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
326
+  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
327
+  var key, own, out, exp;
328
+  if (IS_GLOBAL) source = name;
329
+  for (key in source) {
330
+    // contains in native
331
+    own = !IS_FORCED && target && target[key] !== undefined;
332
+    // export native or passed
333
+    out = (own ? target : source)[key];
334
+    // bind timers to global for call from export context
335
+    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
336
+    // extend global
337
+    if (target) redefine(target, key, out, type & $export.U);
338
+    // export
339
+    if (exports[key] != out) hide(exports, key, exp);
340
+    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
341
+  }
342
+};
343
+global.core = core;
344
+// type bitmap
345
+$export.F = 1;   // forced
346
+$export.G = 2;   // global
347
+$export.S = 4;   // static
348
+$export.P = 8;   // proto
349
+$export.B = 16;  // bind
350
+$export.W = 32;  // wrap
351
+$export.U = 64;  // safe
352
+$export.R = 128; // real proto method for `library`
353
+module.exports = $export;
354
+
355
+},{"./_global":"5qf4","./_core":"ss9A","./_hide":"0NXb","./_redefine":"PHot","./_ctx":"E3Kh"}],"AoVy":[function(require,module,exports) {
356
+var META = require('./_uid')('meta');
357
+var isObject = require('./_is-object');
358
+var has = require('./_has');
359
+var setDesc = require('./_object-dp').f;
360
+var id = 0;
361
+var isExtensible = Object.isExtensible || function () {
362
+  return true;
363
+};
364
+var FREEZE = !require('./_fails')(function () {
365
+  return isExtensible(Object.preventExtensions({}));
366
+});
367
+var setMeta = function (it) {
368
+  setDesc(it, META, { value: {
369
+    i: 'O' + ++id, // object ID
370
+    w: {}          // weak collections IDs
371
+  } });
372
+};
373
+var fastKey = function (it, create) {
374
+  // return primitive with prefix
375
+  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
376
+  if (!has(it, META)) {
377
+    // can't set metadata to uncaught frozen object
378
+    if (!isExtensible(it)) return 'F';
379
+    // not necessary to add metadata
380
+    if (!create) return 'E';
381
+    // add missing metadata
382
+    setMeta(it);
383
+  // return object ID
384
+  } return it[META].i;
385
+};
386
+var getWeak = function (it, create) {
387
+  if (!has(it, META)) {
388
+    // can't set metadata to uncaught frozen object
389
+    if (!isExtensible(it)) return true;
390
+    // not necessary to add metadata
391
+    if (!create) return false;
392
+    // add missing metadata
393
+    setMeta(it);
394
+  // return hash weak collections IDs
395
+  } return it[META].w;
396
+};
397
+// add metadata on freeze-family methods calling
398
+var onFreeze = function (it) {
399
+  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
400
+  return it;
401
+};
402
+var meta = module.exports = {
403
+  KEY: META,
404
+  NEED: false,
405
+  fastKey: fastKey,
406
+  getWeak: getWeak,
407
+  onFreeze: onFreeze
408
+};
409
+
410
+},{"./_uid":"U49f","./_is-object":"M7z6","./_has":"2uHg","./_object-dp":"nw8e","./_fails":"5BXi"}],"44AI":[function(require,module,exports) {
411
+var store = require('./_shared')('wks');
412
+var uid = require('./_uid');
413
+var Symbol = require('./_global').Symbol;
414
+var USE_SYMBOL = typeof Symbol == 'function';
415
+
416
+var $exports = module.exports = function (name) {
417
+  return store[name] || (store[name] =
418
+    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
419
+};
420
+
421
+$exports.store = store;
422
+
423
+},{"./_shared":"6zGc","./_uid":"U49f","./_global":"5qf4"}],"rq3q":[function(require,module,exports) {
424
+var def = require('./_object-dp').f;
425
+var has = require('./_has');
426
+var TAG = require('./_wks')('toStringTag');
427
+
428
+module.exports = function (it, tag, stat) {
429
+  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
430
+};
431
+
432
+},{"./_object-dp":"nw8e","./_has":"2uHg","./_wks":"44AI"}],"AuE7":[function(require,module,exports) {
433
+exports.f = require('./_wks');
434
+
435
+},{"./_wks":"44AI"}],"r4vV":[function(require,module,exports) {
436
+
437
+var global = require('./_global');
438
+var core = require('./_core');
439
+var LIBRARY = require('./_library');
440
+var wksExt = require('./_wks-ext');
441
+var defineProperty = require('./_object-dp').f;
442
+module.exports = function (name) {
443
+  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
444
+  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
445
+};
446
+
447
+},{"./_global":"5qf4","./_core":"ss9A","./_library":"H21C","./_wks-ext":"AuE7","./_object-dp":"nw8e"}],"Z5df":[function(require,module,exports) {
448
+var toString = {}.toString;
449
+
450
+module.exports = function (it) {
451
+  return toString.call(it).slice(8, -1);
452
+};
453
+
454
+},{}],"nGau":[function(require,module,exports) {
455
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
456
+var cof = require('./_cof');
457
+// eslint-disable-next-line no-prototype-builtins
458
+module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
459
+  return cof(it) == 'String' ? it.split('') : Object(it);
460
+};
461
+
462
+},{"./_cof":"Z5df"}],"+Bjj":[function(require,module,exports) {
463
+// 7.2.1 RequireObjectCoercible(argument)
464
+module.exports = function (it) {
465
+  if (it == undefined) throw TypeError("Can't call method on  " + it);
466
+  return it;
467
+};
468
+
469
+},{}],"g6sb":[function(require,module,exports) {
470
+// to indexed object, toObject with fallback for non-array-like ES3 strings
471
+var IObject = require('./_iobject');
472
+var defined = require('./_defined');
473
+module.exports = function (it) {
474
+  return IObject(defined(it));
475
+};
476
+
477
+},{"./_iobject":"nGau","./_defined":"+Bjj"}],"yjVO":[function(require,module,exports) {
478
+// 7.1.4 ToInteger
479
+var ceil = Math.ceil;
480
+var floor = Math.floor;
481
+module.exports = function (it) {
482
+  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
483
+};
484
+
485
+},{}],"dJBs":[function(require,module,exports) {
486
+// 7.1.15 ToLength
487
+var toInteger = require('./_to-integer');
488
+var min = Math.min;
489
+module.exports = function (it) {
490
+  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
491
+};
492
+
493
+},{"./_to-integer":"yjVO"}],"vfEH":[function(require,module,exports) {
494
+var toInteger = require('./_to-integer');
495
+var max = Math.max;
496
+var min = Math.min;
497
+module.exports = function (index, length) {
498
+  index = toInteger(index);
499
+  return index < 0 ? max(index + length, 0) : min(index, length);
500
+};
501
+
502
+},{"./_to-integer":"yjVO"}],"4Ca7":[function(require,module,exports) {
503
+// false -> Array#indexOf
504
+// true  -> Array#includes
505
+var toIObject = require('./_to-iobject');
506
+var toLength = require('./_to-length');
507
+var toAbsoluteIndex = require('./_to-absolute-index');
508
+module.exports = function (IS_INCLUDES) {
509
+  return function ($this, el, fromIndex) {
510
+    var O = toIObject($this);
511
+    var length = toLength(O.length);
512
+    var index = toAbsoluteIndex(fromIndex, length);
513
+    var value;
514
+    // Array#includes uses SameValueZero equality algorithm
515
+    // eslint-disable-next-line no-self-compare
516
+    if (IS_INCLUDES && el != el) while (length > index) {
517
+      value = O[index++];
518
+      // eslint-disable-next-line no-self-compare
519
+      if (value != value) return true;
520
+    // Array#indexOf ignores holes, Array#includes - not
521
+    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
522
+      if (O[index] === el) return IS_INCLUDES || index || 0;
523
+    } return !IS_INCLUDES && -1;
524
+  };
525
+};
526
+
527
+},{"./_to-iobject":"g6sb","./_to-length":"dJBs","./_to-absolute-index":"vfEH"}],"NaGB":[function(require,module,exports) {
528
+var shared = require('./_shared')('keys');
529
+var uid = require('./_uid');
530
+module.exports = function (key) {
531
+  return shared[key] || (shared[key] = uid(key));
532
+};
533
+
534
+},{"./_shared":"6zGc","./_uid":"U49f"}],"vL0Z":[function(require,module,exports) {
535
+var has = require('./_has');
536
+var toIObject = require('./_to-iobject');
537
+var arrayIndexOf = require('./_array-includes')(false);
538
+var IE_PROTO = require('./_shared-key')('IE_PROTO');
539
+
540
+module.exports = function (object, names) {
541
+  var O = toIObject(object);
542
+  var i = 0;
543
+  var result = [];
544
+  var key;
545
+  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
546
+  // Don't enum bug & hidden keys
547
+  while (names.length > i) if (has(O, key = names[i++])) {
548
+    ~arrayIndexOf(result, key) || result.push(key);
549
+  }
550
+  return result;
551
+};
552
+
553
+},{"./_has":"2uHg","./_to-iobject":"g6sb","./_array-includes":"4Ca7","./_shared-key":"NaGB"}],"9bbv":[function(require,module,exports) {
554
+// IE 8- don't enum bug keys
555
+module.exports = (
556
+  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
557
+).split(',');
558
+
559
+},{}],"U9a7":[function(require,module,exports) {
560
+// 19.1.2.14 / 15.2.3.14 Object.keys(O)
561
+var $keys = require('./_object-keys-internal');
562
+var enumBugKeys = require('./_enum-bug-keys');
563
+
564
+module.exports = Object.keys || function keys(O) {
565
+  return $keys(O, enumBugKeys);
566
+};
567
+
568
+},{"./_object-keys-internal":"vL0Z","./_enum-bug-keys":"9bbv"}],"EWMd":[function(require,module,exports) {
569
+exports.f = Object.getOwnPropertySymbols;
570
+
571
+},{}],"vjRp":[function(require,module,exports) {
572
+exports.f = {}.propertyIsEnumerable;
573
+
574
+},{}],"0jjw":[function(require,module,exports) {
575
+// all enumerable object keys, includes symbols
576
+var getKeys = require('./_object-keys');
577
+var gOPS = require('./_object-gops');
578
+var pIE = require('./_object-pie');
579
+module.exports = function (it) {
580
+  var result = getKeys(it);
581
+  var getSymbols = gOPS.f;
582
+  if (getSymbols) {
583
+    var symbols = getSymbols(it);
584
+    var isEnum = pIE.f;
585
+    var i = 0;
586
+    var key;
587
+    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
588
+  } return result;
589
+};
590
+
591
+},{"./_object-keys":"U9a7","./_object-gops":"EWMd","./_object-pie":"vjRp"}],"JTrm":[function(require,module,exports) {
592
+// 7.2.2 IsArray(argument)
593
+var cof = require('./_cof');
594
+module.exports = Array.isArray || function isArray(arg) {
595
+  return cof(arg) == 'Array';
596
+};
597
+
598
+},{"./_cof":"Z5df"}],"MiMz":[function(require,module,exports) {
599
+var dP = require('./_object-dp');
600
+var anObject = require('./_an-object');
601
+var getKeys = require('./_object-keys');
602
+
603
+module.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {
604
+  anObject(O);
605
+  var keys = getKeys(Properties);
606
+  var length = keys.length;
607
+  var i = 0;
608
+  var P;
609
+  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
610
+  return O;
611
+};
612
+
613
+},{"./_object-dp":"nw8e","./_an-object":"eT53","./_object-keys":"U9a7","./_descriptors":"P9Ib"}],"xj/b":[function(require,module,exports) {
614
+var document = require('./_global').document;
615
+module.exports = document && document.documentElement;
616
+
617
+},{"./_global":"5qf4"}],"sYaK":[function(require,module,exports) {
618
+// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
619
+var anObject = require('./_an-object');
620
+var dPs = require('./_object-dps');
621
+var enumBugKeys = require('./_enum-bug-keys');
622
+var IE_PROTO = require('./_shared-key')('IE_PROTO');
623
+var Empty = function () { /* empty */ };
624
+var PROTOTYPE = 'prototype';
625
+
626
+// Create object with fake `null` prototype: use iframe Object with cleared prototype
627
+var createDict = function () {
628
+  // Thrash, waste and sodomy: IE GC bug
629
+  var iframe = require('./_dom-create')('iframe');
630
+  var i = enumBugKeys.length;
631
+  var lt = '<';
632
+  var gt = '>';
633
+  var iframeDocument;
634
+  iframe.style.display = 'none';
635
+  require('./_html').appendChild(iframe);
636
+  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
637
+  // createDict = iframe.contentWindow.Object;
638
+  // html.removeChild(iframe);
639
+  iframeDocument = iframe.contentWindow.document;
640
+  iframeDocument.open();
641
+  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
642
+  iframeDocument.close();
643
+  createDict = iframeDocument.F;
644
+  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
645
+  return createDict();
646
+};
647
+
648
+module.exports = Object.create || function create(O, Properties) {
649
+  var result;
650
+  if (O !== null) {
651
+    Empty[PROTOTYPE] = anObject(O);
652
+    result = new Empty();
653
+    Empty[PROTOTYPE] = null;
654
+    // add "__proto__" for Object.getPrototypeOf polyfill
655
+    result[IE_PROTO] = O;
656
+  } else result = createDict();
657
+  return Properties === undefined ? result : dPs(result, Properties);
658
+};
659
+
660
+},{"./_an-object":"eT53","./_object-dps":"MiMz","./_enum-bug-keys":"9bbv","./_shared-key":"NaGB","./_dom-create":"/vZ6","./_html":"xj/b"}],"Vzm0":[function(require,module,exports) {
661
+// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
662
+var $keys = require('./_object-keys-internal');
663
+var hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');
664
+
665
+exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
666
+  return $keys(O, hiddenKeys);
667
+};
668
+
669
+},{"./_object-keys-internal":"vL0Z","./_enum-bug-keys":"9bbv"}],"dvol":[function(require,module,exports) {
670
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
671
+var toIObject = require('./_to-iobject');
672
+var gOPN = require('./_object-gopn').f;
673
+var toString = {}.toString;
674
+
675
+var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
676
+  ? Object.getOwnPropertyNames(window) : [];
677
+
678
+var getWindowNames = function (it) {
679
+  try {
680
+    return gOPN(it);
681
+  } catch (e) {
682
+    return windowNames.slice();
683
+  }
684
+};
685
+
686
+module.exports.f = function getOwnPropertyNames(it) {
687
+  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
688
+};
689
+
690
+},{"./_to-iobject":"g6sb","./_object-gopn":"Vzm0"}],"uIjZ":[function(require,module,exports) {
691
+var pIE = require('./_object-pie');
692
+var createDesc = require('./_property-desc');
693
+var toIObject = require('./_to-iobject');
694
+var toPrimitive = require('./_to-primitive');
695
+var has = require('./_has');
696
+var IE8_DOM_DEFINE = require('./_ie8-dom-define');
697
+var gOPD = Object.getOwnPropertyDescriptor;
698
+
699
+exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {
700
+  O = toIObject(O);
701
+  P = toPrimitive(P, true);
702
+  if (IE8_DOM_DEFINE) try {
703
+    return gOPD(O, P);
704
+  } catch (e) { /* empty */ }
705
+  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
706
+};
707
+
708
+},{"./_object-pie":"vjRp","./_property-desc":"uJ6d","./_to-iobject":"g6sb","./_to-primitive":"9y37","./_has":"2uHg","./_ie8-dom-define":"/o6G","./_descriptors":"P9Ib"}],"uVn9":[function(require,module,exports) {
709
+
710
+'use strict';
711
+// ECMAScript 6 symbols shim
712
+var global = require('./_global');
713
+var has = require('./_has');
714
+var DESCRIPTORS = require('./_descriptors');
715
+var $export = require('./_export');
716
+var redefine = require('./_redefine');
717
+var META = require('./_meta').KEY;
718
+var $fails = require('./_fails');
719
+var shared = require('./_shared');
720
+var setToStringTag = require('./_set-to-string-tag');
721
+var uid = require('./_uid');
722
+var wks = require('./_wks');
723
+var wksExt = require('./_wks-ext');
724
+var wksDefine = require('./_wks-define');
725
+var enumKeys = require('./_enum-keys');
726
+var isArray = require('./_is-array');
727
+var anObject = require('./_an-object');
728
+var isObject = require('./_is-object');
729
+var toIObject = require('./_to-iobject');
730
+var toPrimitive = require('./_to-primitive');
731
+var createDesc = require('./_property-desc');
732
+var _create = require('./_object-create');
733
+var gOPNExt = require('./_object-gopn-ext');
734
+var $GOPD = require('./_object-gopd');
735
+var $DP = require('./_object-dp');
736
+var $keys = require('./_object-keys');
737
+var gOPD = $GOPD.f;
738
+var dP = $DP.f;
739
+var gOPN = gOPNExt.f;
740
+var $Symbol = global.Symbol;
741
+var $JSON = global.JSON;
742
+var _stringify = $JSON && $JSON.stringify;
743
+var PROTOTYPE = 'prototype';
744
+var HIDDEN = wks('_hidden');
745
+var TO_PRIMITIVE = wks('toPrimitive');
746
+var isEnum = {}.propertyIsEnumerable;
747
+var SymbolRegistry = shared('symbol-registry');
748
+var AllSymbols = shared('symbols');
749
+var OPSymbols = shared('op-symbols');
750
+var ObjectProto = Object[PROTOTYPE];
751
+var USE_NATIVE = typeof $Symbol == 'function';
752
+var QObject = global.QObject;
753
+// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
754
+var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
755
+
756
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
757
+var setSymbolDesc = DESCRIPTORS && $fails(function () {
758
+  return _create(dP({}, 'a', {
759
+    get: function () { return dP(this, 'a', { value: 7 }).a; }
760
+  })).a != 7;
761
+}) ? function (it, key, D) {
762
+  var protoDesc = gOPD(ObjectProto, key);
763
+  if (protoDesc) delete ObjectProto[key];
764
+  dP(it, key, D);
765
+  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
766
+} : dP;
767
+
768
+var wrap = function (tag) {
769
+  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
770
+  sym._k = tag;
771
+  return sym;
772
+};
773
+
774
+var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
775
+  return typeof it == 'symbol';
776
+} : function (it) {
777
+  return it instanceof $Symbol;
778
+};
779
+
780
+var $defineProperty = function defineProperty(it, key, D) {
781
+  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
782
+  anObject(it);
783
+  key = toPrimitive(key, true);
784
+  anObject(D);
785
+  if (has(AllSymbols, key)) {
786
+    if (!D.enumerable) {
787
+      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
788
+      it[HIDDEN][key] = true;
789
+    } else {
790
+      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
791
+      D = _create(D, { enumerable: createDesc(0, false) });
792
+    } return setSymbolDesc(it, key, D);
793
+  } return dP(it, key, D);
794
+};
795
+var $defineProperties = function defineProperties(it, P) {
796
+  anObject(it);
797
+  var keys = enumKeys(P = toIObject(P));
798
+  var i = 0;
799
+  var l = keys.length;
800
+  var key;
801
+  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
802
+  return it;
803
+};
804
+var $create = function create(it, P) {
805
+  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
806
+};
807
+var $propertyIsEnumerable = function propertyIsEnumerable(key) {
808
+  var E = isEnum.call(this, key = toPrimitive(key, true));
809
+  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
810
+  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
811
+};
812
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
813
+  it = toIObject(it);
814
+  key = toPrimitive(key, true);
815
+  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
816
+  var D = gOPD(it, key);
817
+  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
818
+  return D;
819
+};
820
+var $getOwnPropertyNames = function getOwnPropertyNames(it) {
821
+  var names = gOPN(toIObject(it));
822
+  var result = [];
823
+  var i = 0;
824
+  var key;
825
+  while (names.length > i) {
826
+    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
827
+  } return result;
828
+};
829
+var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
830
+  var IS_OP = it === ObjectProto;
831
+  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
832
+  var result = [];
833
+  var i = 0;
834
+  var key;
835
+  while (names.length > i) {
836
+    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
837
+  } return result;
838
+};
839
+
840
+// 19.4.1.1 Symbol([description])
841
+if (!USE_NATIVE) {
842
+  $Symbol = function Symbol() {
843
+    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
844
+    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
845
+    var $set = function (value) {
846
+      if (this === ObjectProto) $set.call(OPSymbols, value);
847
+      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
848
+      setSymbolDesc(this, tag, createDesc(1, value));
849
+    };
850
+    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
851
+    return wrap(tag);
852
+  };
853
+  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
854
+    return this._k;
855
+  });
856
+
857
+  $GOPD.f = $getOwnPropertyDescriptor;
858
+  $DP.f = $defineProperty;
859
+  require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;
860
+  require('./_object-pie').f = $propertyIsEnumerable;
861
+  require('./_object-gops').f = $getOwnPropertySymbols;
862
+
863
+  if (DESCRIPTORS && !require('./_library')) {
864
+    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
865
+  }
866
+
867
+  wksExt.f = function (name) {
868
+    return wrap(wks(name));
869
+  };
870
+}
871
+
872
+$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
873
+
874
+for (var es6Symbols = (
875
+  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
876
+  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
877
+).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
878
+
879
+for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
880
+
881
+$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
882
+  // 19.4.2.1 Symbol.for(key)
883
+  'for': function (key) {
884
+    return has(SymbolRegistry, key += '')
885
+      ? SymbolRegistry[key]
886
+      : SymbolRegistry[key] = $Symbol(key);
887
+  },
888
+  // 19.4.2.5 Symbol.keyFor(sym)
889
+  keyFor: function keyFor(sym) {
890
+    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
891
+    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
892
+  },
893
+  useSetter: function () { setter = true; },
894
+  useSimple: function () { setter = false; }
895
+});
896
+
897
+$export($export.S + $export.F * !USE_NATIVE, 'Object', {
898
+  // 19.1.2.2 Object.create(O [, Properties])
899
+  create: $create,
900
+  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
901
+  defineProperty: $defineProperty,
902
+  // 19.1.2.3 Object.defineProperties(O, Properties)
903
+  defineProperties: $defineProperties,
904
+  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
905
+  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
906
+  // 19.1.2.7 Object.getOwnPropertyNames(O)
907
+  getOwnPropertyNames: $getOwnPropertyNames,
908
+  // 19.1.2.8 Object.getOwnPropertySymbols(O)
909
+  getOwnPropertySymbols: $getOwnPropertySymbols
910
+});
911
+
912
+// 24.3.2 JSON.stringify(value [, replacer [, space]])
913
+$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
914
+  var S = $Symbol();
915
+  // MS Edge converts symbol values to JSON as {}
916
+  // WebKit converts symbol values to JSON as null
917
+  // V8 throws on boxed symbols
918
+  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
919
+})), 'JSON', {
920
+  stringify: function stringify(it) {
921
+    var args = [it];
922
+    var i = 1;
923
+    var replacer, $replacer;
924
+    while (arguments.length > i) args.push(arguments[i++]);
925
+    $replacer = replacer = args[1];
926
+    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
927
+    if (!isArray(replacer)) replacer = function (key, value) {
928
+      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
929
+      if (!isSymbol(value)) return value;
930
+    };
931
+    args[1] = replacer;
932
+    return _stringify.apply($JSON, args);
933
+  }
934
+});
935
+
936
+// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
937
+$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
938
+// 19.4.3.5 Symbol.prototype[@@toStringTag]
939
+setToStringTag($Symbol, 'Symbol');
940
+// 20.2.1.9 Math[@@toStringTag]
941
+setToStringTag(Math, 'Math', true);
942
+// 24.3.3 JSON[@@toStringTag]
943
+setToStringTag(global.JSON, 'JSON', true);
944
+
945
+},{"./_global":"5qf4","./_has":"2uHg","./_descriptors":"P9Ib","./_export":"izCb","./_redefine":"PHot","./_meta":"AoVy","./_fails":"5BXi","./_shared":"6zGc","./_set-to-string-tag":"rq3q","./_uid":"U49f","./_wks":"44AI","./_wks-ext":"AuE7","./_wks-define":"r4vV","./_enum-keys":"0jjw","./_is-array":"JTrm","./_an-object":"eT53","./_is-object":"M7z6","./_to-iobject":"g6sb","./_to-primitive":"9y37","./_property-desc":"uJ6d","./_object-create":"sYaK","./_object-gopn-ext":"dvol","./_object-gopd":"uIjZ","./_object-dp":"nw8e","./_object-keys":"U9a7","./_object-gopn":"Vzm0","./_object-pie":"vjRp","./_object-gops":"EWMd","./_library":"H21C","./_hide":"0NXb"}],"GM7B":[function(require,module,exports) {
946
+// getting tag from 19.1.3.6 Object.prototype.toString()
947
+var cof = require('./_cof');
948
+var TAG = require('./_wks')('toStringTag');
949
+// ES3 wrong here
950
+var ARG = cof(function () { return arguments; }()) == 'Arguments';
951
+
952
+// fallback for IE11 Script Access Denied error
953
+var tryGet = function (it, key) {
954
+  try {
955
+    return it[key];
956
+  } catch (e) { /* empty */ }
957
+};
958
+
959
+module.exports = function (it) {
960
+  var O, T, B;
961
+  return it === undefined ? 'Undefined' : it === null ? 'Null'
962
+    // @@toStringTag case
963
+    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
964
+    // builtinTag case
965
+    : ARG ? cof(O)
966
+    // ES3 arguments fallback
967
+    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
968
+};
969
+
970
+},{"./_cof":"Z5df","./_wks":"44AI"}],"4zTK":[function(require,module,exports) {
971
+'use strict';
972
+// 19.1.3.6 Object.prototype.toString()
973
+var classof = require('./_classof');
974
+var test = {};
975
+test[require('./_wks')('toStringTag')] = 'z';
976
+if (test + '' != '[object z]') {
977
+  require('./_redefine')(Object.prototype, 'toString', function toString() {
978
+    return '[object ' + classof(this) + ']';
979
+  }, true);
980
+}
981
+
982
+},{"./_classof":"GM7B","./_wks":"44AI","./_redefine":"PHot"}],"CtPZ":[function(require,module,exports) {
983
+require('../modules/es6.symbol');
984
+require('../modules/es6.object.to-string');
985
+module.exports = require('../modules/_core').Symbol;
986
+
987
+},{"../modules/es6.symbol":"uVn9","../modules/es6.object.to-string":"4zTK","../modules/_core":"ss9A"}],"x5yM":[function(require,module,exports) {
988
+var toInteger = require('./_to-integer');
989
+var defined = require('./_defined');
990
+// true  -> String#at
991
+// false -> String#codePointAt
992
+module.exports = function (TO_STRING) {
993
+  return function (that, pos) {
994
+    var s = String(defined(that));
995
+    var i = toInteger(pos);
996
+    var l = s.length;
997
+    var a, b;
998
+    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
999
+    a = s.charCodeAt(i);
1000
+    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
1001
+      ? TO_STRING ? s.charAt(i) : a
1002
+      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
1003
+  };
1004
+};
1005
+
1006
+},{"./_to-integer":"yjVO","./_defined":"+Bjj"}],"JO4d":[function(require,module,exports) {
1007
+module.exports = {};
1008
+
1009
+},{}],"ebgP":[function(require,module,exports) {
1010
+'use strict';
1011
+var create = require('./_object-create');
1012
+var descriptor = require('./_property-desc');
1013
+var setToStringTag = require('./_set-to-string-tag');
1014
+var IteratorPrototype = {};
1015
+
1016
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
1017
+require('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });
1018
+
1019
+module.exports = function (Constructor, NAME, next) {
1020
+  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
1021
+  setToStringTag(Constructor, NAME + ' Iterator');
1022
+};
1023
+
1024
+},{"./_object-create":"sYaK","./_property-desc":"uJ6d","./_set-to-string-tag":"rq3q","./_hide":"0NXb","./_wks":"44AI"}],"rfVX":[function(require,module,exports) {
1025
+// 7.1.13 ToObject(argument)
1026
+var defined = require('./_defined');
1027
+module.exports = function (it) {
1028
+  return Object(defined(it));
1029
+};
1030
+
1031
+},{"./_defined":"+Bjj"}],"8q6y":[function(require,module,exports) {
1032
+// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
1033
+var has = require('./_has');
1034
+var toObject = require('./_to-object');
1035
+var IE_PROTO = require('./_shared-key')('IE_PROTO');
1036
+var ObjectProto = Object.prototype;
1037
+
1038
+module.exports = Object.getPrototypeOf || function (O) {
1039
+  O = toObject(O);
1040
+  if (has(O, IE_PROTO)) return O[IE_PROTO];
1041
+  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
1042
+    return O.constructor.prototype;
1043
+  } return O instanceof Object ? ObjectProto : null;
1044
+};
1045
+
1046
+},{"./_has":"2uHg","./_to-object":"rfVX","./_shared-key":"NaGB"}],"mH0U":[function(require,module,exports) {
1047
+'use strict';
1048
+var LIBRARY = require('./_library');
1049
+var $export = require('./_export');
1050
+var redefine = require('./_redefine');
1051
+var hide = require('./_hide');
1052
+var Iterators = require('./_iterators');
1053
+var $iterCreate = require('./_iter-create');
1054
+var setToStringTag = require('./_set-to-string-tag');
1055
+var getPrototypeOf = require('./_object-gpo');
1056
+var ITERATOR = require('./_wks')('iterator');
1057
+var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
1058
+var FF_ITERATOR = '@@iterator';
1059
+var KEYS = 'keys';
1060
+var VALUES = 'values';
1061
+
1062
+var returnThis = function () { return this; };
1063
+
1064
+module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
1065
+  $iterCreate(Constructor, NAME, next);
1066
+  var getMethod = function (kind) {
1067
+    if (!BUGGY && kind in proto) return proto[kind];
1068
+    switch (kind) {
1069
+      case KEYS: return function keys() { return new Constructor(this, kind); };
1070
+      case VALUES: return function values() { return new Constructor(this, kind); };
1071
+    } return function entries() { return new Constructor(this, kind); };
1072
+  };
1073
+  var TAG = NAME + ' Iterator';
1074
+  var DEF_VALUES = DEFAULT == VALUES;
1075
+  var VALUES_BUG = false;
1076
+  var proto = Base.prototype;
1077
+  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
1078
+  var $default = $native || getMethod(DEFAULT);
1079
+  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
1080
+  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
1081
+  var methods, key, IteratorPrototype;
1082
+  // Fix native
1083
+  if ($anyNative) {
1084
+    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
1085
+    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
1086
+      // Set @@toStringTag to native iterators
1087
+      setToStringTag(IteratorPrototype, TAG, true);
1088
+      // fix for some old engines
1089
+      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
1090
+    }
1091
+  }
1092
+  // fix Array#{values, @@iterator}.name in V8 / FF
1093
+  if (DEF_VALUES && $native && $native.name !== VALUES) {
1094
+    VALUES_BUG = true;
1095
+    $default = function values() { return $native.call(this); };
1096
+  }
1097
+  // Define iterator
1098
+  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
1099
+    hide(proto, ITERATOR, $default);
1100
+  }
1101
+  // Plug for library
1102
+  Iterators[NAME] = $default;
1103
+  Iterators[TAG] = returnThis;
1104
+  if (DEFAULT) {
1105
+    methods = {
1106
+      values: DEF_VALUES ? $default : getMethod(VALUES),
1107
+      keys: IS_SET ? $default : getMethod(KEYS),
1108
+      entries: $entries
1109
+    };
1110
+    if (FORCED) for (key in methods) {
1111
+      if (!(key in proto)) redefine(proto, key, methods[key]);
1112
+    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
1113
+  }
1114
+  return methods;
1115
+};
1116
+
1117
+},{"./_library":"H21C","./_export":"izCb","./_redefine":"PHot","./_hide":"0NXb","./_iterators":"JO4d","./_iter-create":"ebgP","./_set-to-string-tag":"rq3q","./_object-gpo":"8q6y","./_wks":"44AI"}],"tbKg":[function(require,module,exports) {
1118
+'use strict';
1119
+var $at = require('./_string-at')(true);
1120
+
1121
+// 21.1.3.27 String.prototype[@@iterator]()
1122
+require('./_iter-define')(String, 'String', function (iterated) {
1123
+  this._t = String(iterated); // target
1124
+  this._i = 0;                // next index
1125
+// 21.1.5.2.1 %StringIteratorPrototype%.next()
1126
+}, function () {
1127
+  var O = this._t;
1128
+  var index = this._i;
1129
+  var point;
1130
+  if (index >= O.length) return { value: undefined, done: true };
1131
+  point = $at(O, index);
1132
+  this._i += point.length;
1133
+  return { value: point, done: false };
1134
+});
1135
+
1136
+},{"./_string-at":"x5yM","./_iter-define":"mH0U"}],"Z7e/":[function(require,module,exports) {
1137
+// 22.1.3.31 Array.prototype[@@unscopables]
1138
+var UNSCOPABLES = require('./_wks')('unscopables');
1139
+var ArrayProto = Array.prototype;
1140
+if (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});
1141
+module.exports = function (key) {
1142
+  ArrayProto[UNSCOPABLES][key] = true;
1143
+};
1144
+
1145
+},{"./_wks":"44AI","./_hide":"0NXb"}],"x8b3":[function(require,module,exports) {
1146
+module.exports = function (done, value) {
1147
+  return { value: value, done: !!done };
1148
+};
1149
+
1150
+},{}],"6w+v":[function(require,module,exports) {
1151
+'use strict';
1152
+var addToUnscopables = require('./_add-to-unscopables');
1153
+var step = require('./_iter-step');
1154
+var Iterators = require('./_iterators');
1155
+var toIObject = require('./_to-iobject');
1156
+
1157
+// 22.1.3.4 Array.prototype.entries()
1158
+// 22.1.3.13 Array.prototype.keys()
1159
+// 22.1.3.29 Array.prototype.values()
1160
+// 22.1.3.30 Array.prototype[@@iterator]()
1161
+module.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {
1162
+  this._t = toIObject(iterated); // target
1163
+  this._i = 0;                   // next index
1164
+  this._k = kind;                // kind
1165
+// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
1166
+}, function () {
1167
+  var O = this._t;
1168
+  var kind = this._k;
1169
+  var index = this._i++;
1170
+  if (!O || index >= O.length) {
1171
+    this._t = undefined;
1172
+    return step(1);
1173
+  }
1174
+  if (kind == 'keys') return step(0, index);
1175
+  if (kind == 'values') return step(0, O[index]);
1176
+  return step(0, [index, O[index]]);
1177
+}, 'values');
1178
+
1179
+// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
1180
+Iterators.Arguments = Iterators.Array;
1181
+
1182
+addToUnscopables('keys');
1183
+addToUnscopables('values');
1184
+addToUnscopables('entries');
1185
+
1186
+},{"./_add-to-unscopables":"Z7e/","./_iter-step":"x8b3","./_iterators":"JO4d","./_to-iobject":"g6sb","./_iter-define":"mH0U"}],"v6Aj":[function(require,module,exports) {
1187
+
1188
+var $iterators = require('./es6.array.iterator');
1189
+var getKeys = require('./_object-keys');
1190
+var redefine = require('./_redefine');
1191
+var global = require('./_global');
1192
+var hide = require('./_hide');
1193
+var Iterators = require('./_iterators');
1194
+var wks = require('./_wks');
1195
+var ITERATOR = wks('iterator');
1196
+var TO_STRING_TAG = wks('toStringTag');
1197
+var ArrayValues = Iterators.Array;
1198
+
1199
+var DOMIterables = {
1200
+  CSSRuleList: true, // TODO: Not spec compliant, should be false.
1201
+  CSSStyleDeclaration: false,
1202
+  CSSValueList: false,
1203
+  ClientRectList: false,
1204
+  DOMRectList: false,
1205
+  DOMStringList: false,
1206
+  DOMTokenList: true,
1207
+  DataTransferItemList: false,
1208
+  FileList: false,
1209
+  HTMLAllCollection: false,
1210
+  HTMLCollection: false,
1211
+  HTMLFormElement: false,
1212
+  HTMLSelectElement: false,
1213
+  MediaList: true, // TODO: Not spec compliant, should be false.
1214
+  MimeTypeArray: false,
1215
+  NamedNodeMap: false,
1216
+  NodeList: true,
1217
+  PaintRequestList: false,
1218
+  Plugin: false,
1219
+  PluginArray: false,
1220
+  SVGLengthList: false,
1221
+  SVGNumberList: false,
1222
+  SVGPathSegList: false,
1223
+  SVGPointList: false,
1224
+  SVGStringList: false,
1225
+  SVGTransformList: false,
1226
+  SourceBufferList: false,
1227
+  StyleSheetList: true, // TODO: Not spec compliant, should be false.
1228
+  TextTrackCueList: false,
1229
+  TextTrackList: false,
1230
+  TouchList: false
1231
+};
1232
+
1233
+for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
1234
+  var NAME = collections[i];
1235
+  var explicit = DOMIterables[NAME];
1236
+  var Collection = global[NAME];
1237
+  var proto = Collection && Collection.prototype;
1238
+  var key;
1239
+  if (proto) {
1240
+    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
1241
+    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
1242
+    Iterators[NAME] = ArrayValues;
1243
+    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
1244
+  }
1245
+}
1246
+
1247
+},{"./es6.array.iterator":"6w+v","./_object-keys":"U9a7","./_redefine":"PHot","./_global":"5qf4","./_hide":"0NXb","./_iterators":"JO4d","./_wks":"44AI"}],"KQqW":[function(require,module,exports) {
1248
+require('../../modules/es6.string.iterator');
1249
+require('../../modules/web.dom.iterable');
1250
+module.exports = require('../../modules/_wks-ext').f('iterator');
1251
+
1252
+},{"../../modules/es6.string.iterator":"tbKg","../../modules/web.dom.iterable":"v6Aj","../../modules/_wks-ext":"AuE7"}],"/6wJ":[function(require,module,exports) {
1253
+"use strict";
1254
+
1255
+Object.defineProperty(exports, "__esModule", {
1256
+  value: true
1257
+});
1258
+exports.default = void 0;
1259
+
1260
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1261
+
1262
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
1263
+
1264
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
1265
+
1266
+var Utilities =
1267
+/*#__PURE__*/
1268
+function () {
1269
+  function Utilities() {
1270
+    _classCallCheck(this, Utilities);
1271
+  }
1272
+
1273
+  _createClass(Utilities, null, [{
1274
+    key: "ready",
1275
+    value: function ready(fn) {
1276
+      if (document.attachEvent ? document.readyState === "complete" : document.readyState !== "loading") {
1277
+        fn();
1278
+      } else {
1279
+        document.addEventListener('DOMContentLoaded', fn);
1280
+      }
1281
+    }
1282
+  }, {
1283
+    key: "objectType",
1284
+    value: function objectType(obj) {
1285
+      return Object.prototype.toString.call(obj).slice(8, -1);
1286
+    }
1287
+  }, {
1288
+    key: "lightenDarkenColor",
1289
+    value: function lightenDarkenColor(col, amt) {
1290
+      var usePound = false;
1291
+
1292
+      if (col[0] == "#") {
1293
+        col = col.slice(1);
1294
+        usePound = true;
1295
+      }
1296
+
1297
+      var num = parseInt(col, 16);
1298
+      var r = (num >> 16) + amt;
1299
+
1300
+      if (r > 255) {
1301
+        r = 255;
1302
+      } else if (r < 0) {
1303
+        r = 0;
1304
+      }
1305
+
1306
+      var b = (num >> 8 & 0x00FF) + amt;
1307
+
1308
+      if (b > 255) {
1309
+        b = 255;
1310
+      } else if (b < 0) {
1311
+        b = 0;
1312
+      }
1313
+
1314
+      var g = (num & 0x0000FF) + amt;
1315
+
1316
+      if (g > 255) {
1317
+        g = 255;
1318
+      } else if (g < 0) {
1319
+        g = 0;
1320
+      }
1321
+
1322
+      return (usePound ? "#" : "") + (g | b << 8 | r << 16).toString(16);
1323
+    }
1324
+  }, {
1325
+    key: "removeCookie",
1326
+    value: function removeCookie() {
1327
+      document.cookie = "cconsent=; expires=Thu, 01 Jan 1980 00:00:00 UTC; path=/;";
1328
+    } // Create an array of services from Cookieconsent global object
1329
+    // Filter based on category or leave empty is all is wanted
1330
+
1331
+  }, {
1332
+    key: "listGlobalServices",
1333
+    value: function listGlobalServices(category) {
1334
+      var categories = []; // Global config objectnot set
1335
+
1336
+      if (typeof window.CookieConsent === 'undefined') return categories; // Category is not specified or opposite
1337
+
1338
+      if (typeof category === 'undefined') {
1339
+        for (var key in window.CookieConsent.config.services) {
1340
+          categories.push(key);
1341
+        }
1342
+      } else {
1343
+        for (var _key in window.CookieConsent.config.services) {
1344
+          if (window.CookieConsent.config.services[_key].category === category) categories.push(_key);
1345
+        }
1346
+      }
1347
+
1348
+      return categories;
1349
+    }
1350
+  }, {
1351
+    key: "dispatchEvent",
1352
+    value: function dispatchEvent(elem, event) {
1353
+      var event;
1354
+
1355
+      if (typeof Event === 'function') {
1356
+        event = new Event(event);
1357
+      } else {
1358
+        event = document.createEvent('Event');
1359
+        event.initEvent(event, true, true);
1360
+      }
1361
+
1362
+      elem.dispatchEvent(event);
1363
+    }
1364
+  }]);
1365
+
1366
+  return Utilities;
1367
+}();
1368
+
1369
+exports.default = Utilities;
1370
+},{}],"aJ5U":[function(require,module,exports) {
1371
+"use strict";
1372
+
1373
+Object.defineProperty(exports, "__esModule", {
1374
+  value: true
1375
+});
1376
+exports.default = void 0;
1377
+
1378
+var _Utilities = _interopRequireDefault(require("./Utilities"));
1379
+
1380
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1381
+
1382
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1383
+
1384
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
1385
+
1386
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
1387
+
1388
+var Filter =
1389
+/*#__PURE__*/
1390
+function () {
1391
+  function Filter() {
1392
+    _classCallCheck(this, Filter);
1393
+  }
1394
+
1395
+  _createClass(Filter, [{
1396
+    key: "createBlacklist",
1397
+    value: function createBlacklist(type) {
1398
+      var services = {};
1399
+
1400
+      for (var service in window.CookieConsent.config.services) {
1401
+        if (window.CookieConsent.config.services[service].type === type) {
1402
+          if (window.CookieConsent.config.categories[window.CookieConsent.config.services[service].category].needed === false) {
1403
+            if (window.CookieConsent.config.categories[window.CookieConsent.config.services[service].category].wanted === false) {
1404
+              services[service] = window.CookieConsent.config.services[service];
1405
+            }
1406
+          }
1407
+        }
1408
+      }
1409
+
1410
+      var blacklist = [];
1411
+
1412
+      for (var service in services) {
1413
+        var type = _Utilities.default.objectType(services[service].search);
1414
+
1415
+        if (type === 'String') {
1416
+          blacklist.push(services[service].search);
1417
+        } else if (type === 'Array') {
1418
+          for (var i = 0; i < services[service].search.length; i++) {
1419
+            blacklist.push(services[service].search[i]);
1420
+          }
1421
+        }
1422
+      }
1423
+
1424
+      return blacklist;
1425
+    }
1426
+  }]);
1427
+
1428
+  return Filter;
1429
+}();
1430
+
1431
+exports.default = Filter;
1432
+},{"./Utilities":"/6wJ"}],"UWvR":[function(require,module,exports) {
1433
+"use strict";
1434
+
1435
+Object.defineProperty(exports, "__esModule", {
1436
+  value: true
1437
+});
1438
+exports.default = void 0;
1439
+
1440
+var _Filter2 = _interopRequireDefault(require("./Filter"));
1441
+
1442
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1443
+
1444
+function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
1445
+
1446
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1447
+
1448
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
1449
+
1450
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
1451
+
1452
+function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
1453
+
1454
+function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
1455
+
1456
+function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
1457
+
1458
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
1459
+
1460
+function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
1461
+
1462
+var InsertScriptFilter =
1463
+/*#__PURE__*/
1464
+function (_Filter) {
1465
+  _inherits(InsertScriptFilter, _Filter);
1466
+
1467
+  function InsertScriptFilter() {
1468
+    _classCallCheck(this, InsertScriptFilter);
1469
+
1470
+    return _possibleConstructorReturn(this, _getPrototypeOf(InsertScriptFilter).call(this));
1471
+  }
1472
+
1473
+  _createClass(InsertScriptFilter, [{
1474
+    key: "init",
1475
+    value: function init() {
1476
+      this.overrideAppendChild();
1477
+      this.overrideInsertBefore();
1478
+    }
1479
+  }, {
1480
+    key: "overrideAppendChild",
1481
+    value: function overrideAppendChild() {
1482
+      Element.prototype.appendChild = function (elem) {
1483
+        if (arguments[0].tagName === 'SCRIPT') {
1484
+          //console.log('Appending:', arguments);
1485
+          for (var key in window.CookieConsent.config.services) {
1486
+            // Did user opt-in?
1487
+            if (window.CookieConsent.config.services[key].type === 'dynamic-script') {
1488
+              if (arguments[0].outerHTML.indexOf(window.CookieConsent.config.services[key].search) >= 0) {
1489
+                if (window.CookieConsent.config.categories[window.CookieConsent.config.services[key].category].wanted === false) {
1490
+                  window.CookieConsent.buffer.appendChild.push({
1491
+                    'this': this,
1492
+                    'category': window.CookieConsent.config.services[key].category,
1493
+                    arguments: arguments
1494
+                  });
1495
+                  return undefined;
1496
+                }
1497
+              }
1498
+            }
1499
+          }
1500
+        }
1501
+
1502
+        return Node.prototype.appendChild.apply(this, arguments);
1503
+      };
1504
+    }
1505
+  }, {
1506
+    key: "overrideInsertBefore",
1507
+    value: function overrideInsertBefore() {
1508
+      Element.prototype.insertBefore = function (elem) {
1509
+        if (arguments[0].tagName === 'SCRIPT') {
1510
+          //console.log('Inserting:', arguments);
1511
+          for (var key in window.CookieConsent.config.services) {
1512
+            // Did user opt-in?
1513
+            if (window.CookieConsent.config.services[key].type === 'dynamic-script') {
1514
+              if (arguments[0].outerHTML.indexOf(window.CookieConsent.config.services[key].search) >= 0) {
1515
+                if (window.CookieConsent.config.categories[window.CookieConsent.config.services[key].category].wanted === false) {
1516
+                  window.CookieConsent.buffer.insertBefore.push({
1517
+                    'this': this,
1518
+                    'category': window.CookieConsent.config.services[key].category,
1519
+                    arguments: arguments
1520
+                  });
1521
+                  return undefined;
1522
+                }
1523
+              }
1524
+            }
1525
+          }
1526
+        }
1527
+
1528
+        return Node.prototype.insertBefore.apply(this, arguments);
1529
+      };
1530
+    }
1531
+  }]);
1532
+
1533
+  return InsertScriptFilter;
1534
+}(_Filter2.default);
1535
+
1536
+exports.default = InsertScriptFilter;
1537
+},{"./Filter":"aJ5U"}],"ob2e":[function(require,module,exports) {
1538
+"use strict";
1539
+
1540
+Object.defineProperty(exports, "__esModule", {
1541
+  value: true
1542
+});
1543
+exports.default = void 0;
1544
+
1545
+var _Utilities = _interopRequireDefault(require("./Utilities"));
1546
+
1547
+var _Filter2 = _interopRequireDefault(require("./Filter"));
1548
+
1549
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1550
+
1551
+function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
1552
+
1553
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1554
+
1555
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
1556
+
1557
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
1558
+
1559
+function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
1560
+
1561
+function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
1562
+
1563
+function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }
1564
+
1565
+function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
1566
+
1567
+function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
1568
+
1569
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
1570
+
1571
+function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
1572
+
1573
+var ScriptTagFilter =
1574
+/*#__PURE__*/
1575
+function (_Filter) {
1576
+  _inherits(ScriptTagFilter, _Filter);
1577
+
1578
+  function ScriptTagFilter() {
1579
+    _classCallCheck(this, ScriptTagFilter);
1580
+
1581
+    return _possibleConstructorReturn(this, _getPrototypeOf(ScriptTagFilter).call(this));
1582
+  }
1583
+
1584
+  _createClass(ScriptTagFilter, [{
1585
+    key: "init",
1586
+    value: function init() {
1587
+      this.filterTags();
1588
+    }
1589
+  }, {
1590
+    key: "filterTags",
1591
+    value: function filterTags() {
1592
+      var _this = this;
1593
+
1594
+      _Utilities.default.ready(function () {
1595
+        var blacklist = _get(_getPrototypeOf(ScriptTagFilter.prototype), "createBlacklist", _this).call(_this, 'script-tag');
1596
+
1597
+        var scriptTags = document.querySelectorAll('script[type="text/plain"]');
1598
+        var _iteratorNormalCompletion = true;
1599
+        var _didIteratorError = false;
1600
+        var _iteratorError = undefined;
1601
+
1602
+        try {
1603
+          for (var _iterator = scriptTags[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
1604
+            var scriptTag = _step.value;
1605
+
1606
+            if (blacklist.indexOf(scriptTag.dataset.consent) < 0) {
1607
+              var newtag = document.createElement('script');
1608
+              var parentNode = scriptTag.parentNode;
1609
+              scriptTag.type = 'text/javascript';
1610
+              var _iteratorNormalCompletion2 = true;
1611
+              var _didIteratorError2 = false;
1612
+              var _iteratorError2 = undefined;
1613
+
1614
+              try {
1615
+                for (var _iterator2 = scriptTag.attributes[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
1616
+                  var attribute = _step2.value;
1617
+                  newtag.setAttribute(attribute.nodeName, attribute.nodeValue);
1618
+                }
1619
+              } catch (err) {
1620
+                _didIteratorError2 = true;
1621
+                _iteratorError2 = err;
1622
+              } finally {
1623
+                try {
1624
+                  if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
1625
+                    _iterator2.return();
1626
+                  }
1627
+                } finally {
1628
+                  if (_didIteratorError2) {
1629
+                    throw _iteratorError2;
1630
+                  }
1631
+                }
1632
+              }
1633
+
1634
+              newtag.innerHTML = scriptTag.innerHTML;
1635
+              parentNode.insertBefore(newtag, scriptTag);
1636
+              parentNode.removeChild(scriptTag);
1637
+            }
1638
+          }
1639
+        } catch (err) {
1640
+          _didIteratorError = true;
1641
+          _iteratorError = err;
1642
+        } finally {
1643
+          try {
1644
+            if (!_iteratorNormalCompletion && _iterator.return != null) {
1645
+              _iterator.return();
1646
+            }
1647
+          } finally {
1648
+            if (_didIteratorError) {
1649
+              throw _iteratorError;
1650
+            }
1651
+          }
1652
+        }
1653
+      });
1654
+    }
1655
+  }]);
1656
+
1657
+  return ScriptTagFilter;
1658
+}(_Filter2.default);
1659
+
1660
+exports.default = ScriptTagFilter;
1661
+},{"./Utilities":"/6wJ","./Filter":"aJ5U"}],"935K":[function(require,module,exports) {
1662
+"use strict";
1663
+
1664
+Object.defineProperty(exports, "__esModule", {
1665
+  value: true
1666
+});
1667
+exports.default = void 0;
1668
+
1669
+var _Filter2 = _interopRequireDefault(require("./Filter"));
1670
+
1671
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1672
+
1673
+function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
1674
+
1675
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1676
+
1677
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
1678
+
1679
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
1680
+
1681
+function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
1682
+
1683
+function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
1684
+
1685
+function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }
1686
+
1687
+function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
1688
+
1689
+function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
1690
+
1691
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
1692
+
1693
+function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
1694
+
1695
+var WrapperFilter =
1696
+/*#__PURE__*/
1697
+function (_Filter) {
1698
+  _inherits(WrapperFilter, _Filter);
1699
+
1700
+  function WrapperFilter() {
1701
+    _classCallCheck(this, WrapperFilter);
1702
+
1703
+    return _possibleConstructorReturn(this, _getPrototypeOf(WrapperFilter).call(this));
1704
+  }
1705
+
1706
+  _createClass(WrapperFilter, [{
1707
+    key: "init",
1708
+    value: function init() {
1709
+      this.filterWrappers();
1710
+    }
1711
+  }, {
1712
+    key: "filterWrappers",
1713
+    value: function filterWrappers() {
1714
+      var blacklist = _get(_getPrototypeOf(WrapperFilter.prototype), "createBlacklist", this).call(this, 'wrapped');
1715
+
1716
+      function wrapper() {
1717
+        var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
1718
+        var callback = arguments.length > 1 ? arguments[1] : undefined;
1719
+
1720
+        if (blacklist.indexOf(name) < 0) {
1721
+          callback();
1722
+        }
1723
+      }
1724
+
1725
+      window.CookieConsent.wrapper = wrapper;
1726
+    }
1727
+  }]);
1728
+
1729
+  return WrapperFilter;
1730
+}(_Filter2.default);
1731
+
1732
+exports.default = WrapperFilter;
1733
+},{"./Filter":"aJ5U"}],"2E//":[function(require,module,exports) {
1734
+"use strict";
1735
+
1736
+Object.defineProperty(exports, "__esModule", {
1737
+  value: true
1738
+});
1739
+exports.default = void 0;
1740
+
1741
+var _Filter2 = _interopRequireDefault(require("./Filter"));
1742
+
1743
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1744
+
1745
+function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
1746
+
1747
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1748
+
1749
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
1750
+
1751
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
1752
+
1753
+function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
1754
+
1755
+function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
1756
+
1757
+function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }
1758
+
1759
+function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
1760
+
1761
+function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
1762
+
1763
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
1764
+
1765
+function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
1766
+
1767
+var LocalCookieFilter =
1768
+/*#__PURE__*/
1769
+function (_Filter) {
1770
+  _inherits(LocalCookieFilter, _Filter);
1771
+
1772
+  function LocalCookieFilter() {
1773
+    _classCallCheck(this, LocalCookieFilter);
1774
+
1775
+    return _possibleConstructorReturn(this, _getPrototypeOf(LocalCookieFilter).call(this));
1776
+  }
1777
+
1778
+  _createClass(LocalCookieFilter, [{
1779
+    key: "init",
1780
+    value: function init() {
1781
+      this.filterlocalCookies();
1782
+    }
1783
+  }, {
1784
+    key: "getCookieDescriptor",
1785
+    value: function getCookieDescriptor() {
1786
+      var cookieDescriptor;
1787
+      cookieDescriptor = Object.getOwnPropertyDescriptor(document, 'cookie') || Object.getOwnPropertyDescriptor(HTMLDocument.prototype, 'cookie');
1788
+
1789
+      if (!cookieDescriptor) {
1790
+        cookieDescriptor = {};
1791
+        cookieDescriptor.get = HTMLDocument.prototype.__lookupGetter__("cookie");
1792
+        cookieDescriptor.set = HTMLDocument.prototype.__lookupSetter__("cookie");
1793
+      }
1794
+
1795
+      return cookieDescriptor;
1796
+    }
1797
+  }, {
1798
+    key: "filterlocalCookies",
1799
+    value: function filterlocalCookies() {
1800
+      // TODO - implement buffer
1801
+      var blacklist = _get(_getPrototypeOf(LocalCookieFilter.prototype), "createBlacklist", this).call(this, 'localcookie');
1802
+
1803
+      var cookieDescriptor = this.getCookieDescriptor();
1804
+      Object.defineProperty(document, "cookie", {
1805
+        configurable: true,
1806
+        get: function get() {
1807
+          return cookieDescriptor.get.apply(document);
1808
+        },
1809
+        set: function set() {
1810
+          var cookieArguments = arguments;
1811
+
1812
+          if (blacklist.length) {
1813
+            var cookieName = arguments[0].split('=')[0];
1814
+            Array.prototype.forEach.call(blacklist, function (blacklistItem) {
1815
+              if (cookieName.indexOf(blacklistItem) < 0) cookieDescriptor.set.apply(document, cookieArguments);
1816
+            });
1817
+          } else {
1818
+            cookieDescriptor.set.apply(document, cookieArguments);
1819
+          }
1820
+        }
1821
+      });
1822
+    }
1823
+  }]);
1824
+
1825
+  return LocalCookieFilter;
1826
+}(_Filter2.default);
1827
+
1828
+exports.default = LocalCookieFilter;
1829
+},{"./Filter":"aJ5U"}],"GuEK":[function(require,module,exports) {
1830
+"use strict";
1831
+
1832
+Object.defineProperty(exports, "__esModule", {
1833
+  value: true
1834
+});
1835
+exports.text = exports.svg = exports.s = exports.setChildren = exports.setStyle = exports.setAttr = exports.Router = exports.router = exports.Place = exports.place = exports.unmount = exports.mount = exports.ListPool = exports.listPool = exports.List = exports.list = exports.html = exports.h = exports.el = void 0;
1836
+var HASH = '#'.charCodeAt(0);
1837
+var DOT = '.'.charCodeAt(0);
1838
+var TAG_NAME = 0;
1839
+var ID = 1;
1840
+var CLASS_NAME = 2;
1841
+
1842
+var parseQuery = function (query) {
1843
+  var tag = null;
1844
+  var id = null;
1845
+  var className = null;
1846
+  var mode = TAG_NAME;
1847
+  var offset = 0;
1848
+
1849
+  for (var i = 0; i <= query.length; i++) {
1850
+    var char = query.charCodeAt(i);
1851
+    var isHash = char === HASH;
1852
+    var isDot = char === DOT;
1853
+    var isEnd = !char;
1854
+
1855
+    if (isHash || isDot || isEnd) {
1856
+      if (mode === TAG_NAME) {
1857
+        if (i === 0) {
1858
+          tag = 'div';
1859
+        } else {
1860
+          tag = query.substring(offset, i);
1861
+        }
1862
+      } else if (mode === ID) {
1863
+        id = query.substring(offset, i);
1864
+      } else {
1865
+        if (className) {
1866
+          className += ' ' + query.substring(offset, i);
1867
+        } else {
1868
+          className = query.substring(offset, i);
1869
+        }
1870
+      }
1871
+
1872
+      if (isHash) {
1873
+        mode = ID;
1874
+      } else if (isDot) {
1875
+        mode = CLASS_NAME;
1876
+      }
1877
+
1878
+      offset = i + 1;
1879
+    }
1880
+  }
1881
+
1882
+  return {
1883
+    tag: tag,
1884
+    id: id,
1885
+    className: className
1886
+  };
1887
+};
1888
+
1889
+var createElement = function (query, ns) {
1890
+  var ref = parseQuery(query);
1891
+  var tag = ref.tag;
1892
+  var id = ref.id;
1893
+  var className = ref.className;
1894
+  var element = ns ? document.createElementNS(ns, tag) : document.createElement(tag);
1895
+
1896
+  if (id) {
1897
+    element.id = id;
1898
+  }
1899
+
1900
+  if (className) {
1901
+    if (ns) {
1902
+      element.setAttribute('class', className);
1903
+    } else {
1904
+      element.className = className;
1905
+    }
1906
+  }
1907
+
1908
+  return element;
1909
+};
1910
+
1911
+var unmount = function (parent, child) {
1912
+  var parentEl = getEl(parent);
1913
+  var childEl = getEl(child);
1914
+
1915
+  if (child === childEl && childEl.__redom_view) {
1916
+    // try to look up the view if not provided
1917
+    child = childEl.__redom_view;
1918
+  }
1919
+
1920
+  if (childEl.parentNode) {
1921
+    doUnmount(child, childEl, parentEl);
1922
+    parentEl.removeChild(childEl);
1923
+  }
1924
+
1925
+  return child;
1926
+};
1927
+
1928
+exports.unmount = unmount;
1929
+
1930
+var doUnmount = function (child, childEl, parentEl) {
1931
+  var hooks = childEl.__redom_lifecycle;
1932
+
1933
+  if (hooksAreEmpty(hooks)) {
1934
+    childEl.__redom_mounted = false;
1935
+    return;
1936
+  }
1937
+
1938
+  var traverse = parentEl;
1939
+
1940
+  if (childEl.__redom_mounted) {
1941
+    trigger(childEl, 'onunmount');
1942
+  }
1943
+
1944
+  while (traverse) {
1945
+    var parentHooks = traverse.__redom_lifecycle || {};
1946
+
1947
+    for (var hook in hooks) {
1948
+      if (parentHooks[hook]) {
1949
+        parentHooks[hook] -= hooks[hook];
1950
+      }
1951
+    }
1952
+
1953
+    if (hooksAreEmpty(parentHooks)) {
1954
+      traverse.__redom_lifecycle = null;
1955
+    }
1956
+
1957
+    traverse = traverse.parentNode;
1958
+  }
1959
+};
1960
+
1961
+var hooksAreEmpty = function (hooks) {
1962
+  if (hooks == null) {
1963
+    return true;
1964
+  }
1965
+
1966
+  for (var key in hooks) {
1967
+    if (hooks[key]) {
1968
+      return false;
1969
+    }
1970
+  }
1971
+
1972
+  return true;
1973
+};
1974
+
1975
+var hookNames = ['onmount', 'onremount', 'onunmount'];
1976
+var shadowRootAvailable = typeof window !== 'undefined' && 'ShadowRoot' in window;
1977
+
1978
+var mount = function (parent, child, before, replace) {
1979
+  var parentEl = getEl(parent);
1980
+  var childEl = getEl(child);
1981
+
1982
+  if (child === childEl && childEl.__redom_view) {
1983
+    // try to look up the view if not provided
1984
+    child = childEl.__redom_view;
1985
+  }
1986
+
1987
+  if (child !== childEl) {
1988
+    childEl.__redom_view = child;
1989
+  }
1990
+
1991
+  var wasMounted = childEl.__redom_mounted;
1992
+  var oldParent = childEl.parentNode;
1993
+
1994
+  if (wasMounted && oldParent !== parentEl) {
1995
+    doUnmount(child, childEl, oldParent);
1996
+  }
1997
+
1998
+  if (before != null) {
1999
+    if (replace) {
2000
+      parentEl.replaceChild(childEl, getEl(before));
2001
+    } else {
2002
+      parentEl.insertBefore(childEl, getEl(before));
2003
+    }
2004
+  } else {
2005
+    parentEl.appendChild(childEl);
2006
+  }
2007
+
2008
+  doMount(child, childEl, parentEl, oldParent);
2009
+  return child;
2010
+};
2011
+
2012
+exports.mount = mount;
2013
+
2014
+var doMount = function (child, childEl, parentEl, oldParent) {
2015
+  var hooks = childEl.__redom_lifecycle || (childEl.__redom_lifecycle = {});
2016
+  var remount = parentEl === oldParent;
2017
+  var hooksFound = false;
2018
+
2019
+  for (var i = 0, list = hookNames; i < list.length; i += 1) {
2020
+    var hookName = list[i];
2021
+
2022
+    if (!remount) {
2023
+      // if already mounted, skip this phase
2024
+      if (child !== childEl) {
2025
+        // only Views can have lifecycle events
2026
+        if (hookName in child) {
2027
+          hooks[hookName] = (hooks[hookName] || 0) + 1;
2028
+        }
2029
+      }
2030
+    }
2031
+
2032
+    if (hooks[hookName]) {
2033
+      hooksFound = true;
2034
+    }
2035
+  }
2036
+
2037
+  if (!hooksFound) {
2038
+    childEl.__redom_mounted = true;
2039
+    return;
2040
+  }
2041
+
2042
+  var traverse = parentEl;
2043
+  var triggered = false;
2044
+
2045
+  if (remount || traverse && traverse.__redom_mounted) {
2046
+    trigger(childEl, remount ? 'onremount' : 'onmount');
2047
+    triggered = true;
2048
+  }
2049
+
2050
+  while (traverse) {
2051
+    var parent = traverse.parentNode;
2052
+    var parentHooks = traverse.__redom_lifecycle || (traverse.__redom_lifecycle = {});
2053
+
2054
+    for (var hook in hooks) {
2055
+      parentHooks[hook] = (parentHooks[hook] || 0) + hooks[hook];
2056
+    }
2057
+
2058
+    if (triggered) {
2059
+      break;
2060
+    } else {
2061
+      if (traverse === document || shadowRootAvailable && traverse instanceof window.ShadowRoot || parent && parent.__redom_mounted) {
2062
+        trigger(traverse, remount ? 'onremount' : 'onmount');
2063
+        triggered = true;
2064
+      }
2065
+
2066
+      traverse = parent;
2067
+    }
2068
+  }
2069
+};
2070
+
2071
+var trigger = function (el, eventName) {
2072
+  if (eventName === 'onmount' || eventName === 'onremount') {
2073
+    el.__redom_mounted = true;
2074
+  } else if (eventName === 'onunmount') {
2075
+    el.__redom_mounted = false;
2076
+  }
2077
+
2078
+  var hooks = el.__redom_lifecycle;
2079
+
2080
+  if (!hooks) {
2081
+    return;
2082
+  }
2083
+
2084
+  var view = el.__redom_view;
2085
+  var hookCount = 0;
2086
+  view && view[eventName] && view[eventName]();
2087
+
2088
+  for (var hook in hooks) {
2089
+    if (hook) {
2090
+      hookCount++;
2091
+    }
2092
+  }
2093
+
2094
+  if (hookCount) {
2095
+    var traverse = el.firstChild;
2096
+
2097
+    while (traverse) {
2098
+      var next = traverse.nextSibling;
2099
+      trigger(traverse, eventName);
2100
+      traverse = next;
2101
+    }
2102
+  }
2103
+};
2104
+
2105
+var setStyle = function (view, arg1, arg2) {
2106
+  var el = getEl(view);
2107
+
2108
+  if (arg2 !== undefined) {
2109
+    el.style[arg1] = arg2;
2110
+  } else if (typeof arg1 === 'string') {
2111
+    el.setAttribute('style', arg1);
2112
+  } else {
2113
+    for (var key in arg1) {
2114
+      setStyle(el, key, arg1[key]);
2115
+    }
2116
+  }
2117
+};
2118
+/* global SVGElement */
2119
+
2120
+
2121
+exports.setStyle = setStyle;
2122
+var xlinkns = 'http://www.w3.org/1999/xlink';
2123
+
2124
+var setAttr = function (view, arg1, arg2) {
2125
+  var el = getEl(view);
2126
+  var isSVG = el instanceof SVGElement;
2127
+  var isFunc = typeof arg2 === 'function';
2128
+
2129
+  if (arg2 !== undefined) {
2130
+    if (arg1 === 'style') {
2131
+      setStyle(el, arg2);
2132
+    } else if (isSVG && isFunc) {
2133
+      el[arg1] = arg2;
2134
+    } else if (arg1 === 'dataset') {
2135
+      setData(el, arg2);
2136
+    } else if (!isSVG && (arg1 in el || isFunc)) {
2137
+      el[arg1] = arg2;
2138
+    } else {
2139
+      if (isSVG && arg1 === 'xlink') {
2140
+        setXlink(el, arg2);
2141
+        return;
2142
+      }
2143
+
2144
+      el.setAttribute(arg1, arg2);
2145
+    }
2146
+  } else {
2147
+    for (var key in arg1) {
2148
+      setAttr(el, key, arg1[key]);
2149
+    }
2150
+  }
2151
+};
2152
+
2153
+exports.setAttr = setAttr;
2154
+
2155
+function setXlink(el, obj) {
2156
+  for (var key in obj) {
2157
+    el.setAttributeNS(xlinkns, key, obj[key]);
2158
+  }
2159
+}
2160
+
2161
+function setData(el, obj) {
2162
+  for (var key in obj) {
2163
+    el.dataset[key] = obj[key];
2164
+  }
2165
+}
2166
+
2167
+var text = function (str) {
2168
+  return document.createTextNode(str != null ? str : '');
2169
+};
2170
+
2171
+exports.text = text;
2172
+
2173
+var parseArguments = function (element, args) {
2174
+  for (var i = 0, list = args; i < list.length; i += 1) {
2175
+    var arg = list[i];
2176
+
2177
+    if (arg !== 0 && !arg) {
2178
+      continue;
2179
+    }
2180
+
2181
+    var type = typeof arg; // support middleware
2182
+
2183
+    if (type === 'function') {
2184
+      arg(element);
2185
+    } else if (type === 'string' || type === 'number') {
2186
+      element.appendChild(text(arg));
2187
+    } else if (isNode(getEl(arg))) {
2188
+      mount(element, arg);
2189
+    } else if (arg.length) {
2190
+      parseArguments(element, arg);
2191
+    } else if (type === 'object') {
2192
+      setAttr(element, arg);
2193
+    }
2194
+  }
2195
+};
2196
+
2197
+var ensureEl = function (parent) {
2198
+  return typeof parent === 'string' ? html(parent) : getEl(parent);
2199
+};
2200
+
2201
+var getEl = function (parent) {
2202
+  return parent.nodeType && parent || !parent.el && parent || getEl(parent.el);
2203
+};
2204
+
2205
+var isNode = function (a) {
2206
+  return a && a.nodeType;
2207
+};
2208
+
2209
+var htmlCache = {};
2210
+
2211
+var memoizeHTML = function (query) {
2212
+  return htmlCache[query] || (htmlCache[query] = createElement(query));
2213
+};
2214
+
2215
+var html = function (query) {
2216
+  var args = [],
2217
+      len = arguments.length - 1;
2218
+
2219
+  while (len-- > 0) args[len] = arguments[len + 1];
2220
+
2221
+  var element;
2222
+  var type = typeof query;
2223
+
2224
+  if (type === 'string') {
2225
+    element = memoizeHTML(query).cloneNode(false);
2226
+  } else if (isNode(query)) {
2227
+    element = query.cloneNode(false);
2228
+  } else if (type === 'function') {
2229
+    var Query = query;
2230
+    element = new (Function.prototype.bind.apply(Query, [null].concat(args)))();
2231
+  } else {
2232
+    throw new Error('At least one argument required');
2233
+  }
2234
+
2235
+  parseArguments(getEl(element), args);
2236
+  return element;
2237
+};
2238
+
2239
+exports.html = html;
2240
+
2241
+html.extend = function (query) {
2242
+  var args = [],
2243
+      len = arguments.length - 1;
2244
+
2245
+  while (len-- > 0) args[len] = arguments[len + 1];
2246
+
2247
+  var clone = memoizeHTML(query);
2248
+  return html.bind.apply(html, [this, clone].concat(args));
2249
+};
2250
+
2251
+var el = html;
2252
+exports.el = el;
2253
+var h = html;
2254
+exports.h = h;
2255
+
2256
+var setChildren = function (parent) {
2257
+  var children = [],
2258
+      len = arguments.length - 1;
2259
+
2260
+  while (len-- > 0) children[len] = arguments[len + 1];
2261
+
2262
+  var parentEl = getEl(parent);
2263
+  var current = traverse(parent, children, parentEl.firstChild);
2264
+
2265
+  while (current) {
2266
+    var next = current.nextSibling;
2267
+    unmount(parent, current);
2268
+    current = next;
2269
+  }
2270
+};
2271
+
2272
+exports.setChildren = setChildren;
2273
+
2274
+function traverse(parent, children, _current) {
2275
+  var current = _current;
2276
+  var childEls = new Array(children.length);
2277
+
2278
+  for (var i = 0; i < children.length; i++) {
2279
+    childEls[i] = children[i] && getEl(children[i]);
2280
+  }
2281
+
2282
+  for (var i$1 = 0; i$1 < children.length; i$1++) {
2283
+    var child = children[i$1];
2284
+
2285
+    if (!child) {
2286
+      continue;
2287
+    }
2288
+
2289
+    var childEl = childEls[i$1];
2290
+
2291
+    if (childEl === current) {
2292
+      current = current.nextSibling;
2293
+      continue;
2294
+    }
2295
+
2296
+    if (isNode(childEl)) {
2297
+      var next = current && current.nextSibling;
2298
+      var exists = child.__redom_index != null;
2299
+      var replace = exists && next === childEls[i$1 + 1];
2300
+      mount(parent, child, current, replace);
2301
+
2302
+      if (replace) {
2303
+        current = next;
2304
+      }
2305
+
2306
+      continue;
2307
+    }
2308
+
2309
+    if (child.length != null) {
2310
+      current = traverse(parent, child, current);
2311
+    }
2312
+  }
2313
+
2314
+  return current;
2315
+}
2316
+
2317
+var propKey = function (key) {
2318
+  return function (item) {
2319
+    return item[key];
2320
+  };
2321
+};
2322
+
2323
+var listPool = function (View, key, initData) {
2324
+  return new ListPool(View, key, initData);
2325
+};
2326
+
2327
+exports.listPool = listPool;
2328
+
2329
+var ListPool = function ListPool(View, key, initData) {
2330
+  this.View = View;
2331
+  this.initData = initData;
2332
+  this.oldLookup = {};
2333
+  this.lookup = {};
2334
+  this.oldViews = [];
2335
+  this.views = [];
2336
+
2337
+  if (key != null) {
2338
+    this.key = typeof key === 'function' ? key : propKey(key);
2339
+  }
2340
+};
2341
+
2342
+exports.ListPool = ListPool;
2343
+
2344
+ListPool.prototype.update = function update(data, context) {
2345
+  var ref = this;
2346
+  var View = ref.View;
2347
+  var key = ref.key;
2348
+  var initData = ref.initData;
2349
+  var keySet = key != null;
2350
+  var oldLookup = this.lookup;
2351
+  var newLookup = {};
2352
+  var newViews = new Array(data.length);
2353
+  var oldViews = this.views;
2354
+
2355
+  for (var i = 0; i < data.length; i++) {
2356
+    var item = data[i];
2357
+    var view = void 0;
2358
+
2359
+    if (keySet) {
2360
+      var id = key(item);
2361
+      view = oldLookup[id] || new View(initData, item, i, data);
2362
+      newLookup[id] = view;
2363
+      view.__redom_id = id;
2364
+    } else {
2365
+      view = oldViews[i] || new View(initData, item, i, data);
2366
+    }
2367
+
2368
+    view.update && view.update(item, i, data, context);
2369
+    var el = getEl(view.el);
2370
+    el.__redom_view = view;
2371
+    newViews[i] = view;
2372
+  }
2373
+
2374
+  this.oldViews = oldViews;
2375
+  this.views = newViews;
2376
+  this.oldLookup = oldLookup;
2377
+  this.lookup = newLookup;
2378
+};
2379
+
2380
+var list = function (parent, View, key, initData) {
2381
+  return new List(parent, View, key, initData);
2382
+};
2383
+
2384
+exports.list = list;
2385
+
2386
+var List = function List(parent, View, key, initData) {
2387
+  this.__redom_list = true;
2388
+  this.View = View;
2389
+  this.initData = initData;
2390
+  this.views = [];
2391
+  this.pool = new ListPool(View, key, initData);
2392
+  this.el = ensureEl(parent);
2393
+  this.keySet = key != null;
2394
+};
2395
+
2396
+exports.List = List;
2397
+
2398
+List.prototype.update = function update(data, context) {
2399
+  if (data === void 0) data = [];
2400
+  var ref = this;
2401
+  var keySet = ref.keySet;
2402
+  var oldViews = this.views;
2403
+  this.pool.update(data, context);
2404
+  var ref$1 = this.pool;
2405
+  var views = ref$1.views;
2406
+  var lookup = ref$1.lookup;
2407
+
2408
+  if (keySet) {
2409
+    for (var i = 0; i < oldViews.length; i++) {
2410
+      var oldView = oldViews[i];
2411
+      var id = oldView.__redom_id;
2412
+
2413
+      if (lookup[id] == null) {
2414
+        oldView.__redom_index = null;
2415
+        unmount(this, oldView);
2416
+      }
2417
+    }
2418
+  }
2419
+
2420
+  for (var i$1 = 0; i$1 < views.length; i$1++) {
2421
+    var view = views[i$1];
2422
+    view.__redom_index = i$1;
2423
+  }
2424
+
2425
+  setChildren(this, views);
2426
+
2427
+  if (keySet) {
2428
+    this.lookup = lookup;
2429
+  }
2430
+
2431
+  this.views = views;
2432
+};
2433
+
2434
+List.extend = function (parent, View, key, initData) {
2435
+  return List.bind(List, parent, View, key, initData);
2436
+};
2437
+
2438
+list.extend = List.extend;
2439
+/* global Node */
2440
+
2441
+var place = function (View, initData) {
2442
+  return new Place(View, initData);
2443
+};
2444
+
2445
+exports.place = place;
2446
+
2447
+var Place = function Place(View, initData) {
2448
+  this.el = text('');
2449
+  this.visible = false;
2450
+  this.view = null;
2451
+  this._placeholder = this.el;
2452
+
2453
+  if (View instanceof Node) {
2454
+    this._el = View;
2455
+  } else {
2456
+    this._View = View;
2457
+  }
2458
+
2459
+  this._initData = initData;
2460
+};
2461
+
2462
+exports.Place = Place;
2463
+
2464
+Place.prototype.update = function update(visible, data) {
2465
+  var placeholder = this._placeholder;
2466
+  var parentNode = this.el.parentNode;
2467
+
2468
+  if (visible) {
2469
+    if (!this.visible) {
2470
+      if (this._el) {
2471
+        mount(parentNode, this._el, placeholder);
2472
+        unmount(parentNode, placeholder);
2473
+        this.el = this._el;
2474
+        this.visible = visible;
2475
+        return;
2476
+      }
2477
+
2478
+      var View = this._View;
2479
+      var view = new View(this._initData);
2480
+      this.el = getEl(view);
2481
+      this.view = view;
2482
+      mount(parentNode, view, placeholder);
2483
+      unmount(parentNode, placeholder);
2484
+    }
2485
+
2486
+    this.view && this.view.update && this.view.update(data);
2487
+  } else {
2488
+    if (this.visible) {
2489
+      if (this._el) {
2490
+        mount(parentNode, placeholder, this._el);
2491
+        unmount(parentNode, this._el);
2492
+        this.el = placeholder;
2493
+        this.visible = visible;
2494
+        return;
2495
+      }
2496
+
2497
+      mount(parentNode, placeholder, this.view);
2498
+      unmount(parentNode, this.view);
2499
+      this.el = placeholder;
2500
+      this.view = null;
2501
+    }
2502
+  }
2503
+
2504
+  this.visible = visible;
2505
+};
2506
+
2507
+var router = function (parent, Views, initData) {
2508
+  return new Router(parent, Views, initData);
2509
+};
2510
+
2511
+exports.router = router;
2512
+
2513
+var Router = function Router(parent, Views, initData) {
2514
+  this.el = ensureEl(parent);
2515
+  this.Views = Views;
2516
+  this.initData = initData;
2517
+};
2518
+
2519
+exports.Router = Router;
2520
+
2521
+Router.prototype.update = function update(route, data) {
2522
+  if (route !== this.route) {
2523
+    var Views = this.Views;
2524
+    var View = Views[route];
2525
+    this.route = route;
2526
+    this.view = View && new View(this.initData, data);
2527
+    setChildren(this.el, [this.view]);
2528
+  }
2529
+
2530
+  this.view && this.view.update && this.view.update(data, route);
2531
+};
2532
+
2533
+var ns = 'http://www.w3.org/2000/svg';
2534
+var svgCache = {};
2535
+
2536
+var memoizeSVG = function (query) {
2537
+  return svgCache[query] || (svgCache[query] = createElement(query, ns));
2538
+};
2539
+
2540
+var svg = function (query) {
2541
+  var args = [],
2542
+      len = arguments.length - 1;
2543
+
2544
+  while (len-- > 0) args[len] = arguments[len + 1];
2545
+
2546
+  var element;
2547
+  var type = typeof query;
2548
+
2549
+  if (type === 'string') {
2550
+    element = memoizeSVG(query).cloneNode(false);
2551
+  } else if (isNode(query)) {
2552
+    element = query.cloneNode(false);
2553
+  } else if (type === 'function') {
2554
+    var Query = query;
2555
+    element = new (Function.prototype.bind.apply(Query, [null].concat(args)))();
2556
+  } else {
2557
+    throw new Error('At least one argument required');
2558
+  }
2559
+
2560
+  parseArguments(getEl(element), args);
2561
+  return element;
2562
+};
2563
+
2564
+exports.svg = svg;
2565
+
2566
+svg.extend = function (query) {
2567
+  var clone = memoizeSVG(query);
2568
+  return svg.bind(this, clone);
2569
+};
2570
+
2571
+svg.ns = ns;
2572
+var s = svg;
2573
+exports.s = s;
2574
+},{}],"4LWe":[function(require,module,exports) {
2575
+"use strict";
2576
+
2577
+Object.defineProperty(exports, "__esModule", {
2578
+  value: true
2579
+});
2580
+exports.default = void 0;
2581
+
2582
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2583
+
2584
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
2585
+
2586
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
2587
+
2588
+var Language =
2589
+/*#__PURE__*/
2590
+function () {
2591
+  function Language() {
2592
+    _classCallCheck(this, Language);
2593
+  }
2594
+
2595
+  _createClass(Language, [{
2596
+    key: "setLocale",
2597
+    value: function setLocale(locale) {
2598
+      window.CookieConsent.config.language.current = locale;
2599
+    }
2600
+  }], [{
2601
+    key: "getTranslation",
2602
+    value: function getTranslation(object, locale, key) {
2603
+      var currentLocale;
2604
+      if (!object.hasOwnProperty('language')) return '[Missing language object]';
2605
+      if (!object.language.hasOwnProperty('locale')) return '[Missing locale object]';
2606
+      currentLocale = object.language.locale.hasOwnProperty(locale) ? locale : 'en';
2607
+      return object.language.locale[currentLocale].hasOwnProperty(key) ? object.language.locale[currentLocale][key] : '[Missing translation]';
2608
+    }
2609
+  }]);
2610
+
2611
+  return Language;
2612
+}();
2613
+
2614
+exports.default = Language;
2615
+},{}],"/Qw2":[function(require,module,exports) {
2616
+"use strict";
2617
+
2618
+Object.defineProperty(exports, "__esModule", {
2619
+  value: true
2620
+});
2621
+exports.default = void 0;
2622
+
2623
+var _redom = require("redom");
2624
+
2625
+var _Language = _interopRequireDefault(require("./Language"));
2626
+
2627
+var _Utilities = _interopRequireDefault(require("./Utilities"));
2628
+
2629
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2630
+
2631
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2632
+
2633
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
2634
+
2635
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
2636
+
2637
+var Interface =
2638
+/*#__PURE__*/
2639
+function () {
2640
+  function Interface() {
2641
+    _classCallCheck(this, Interface);
2642
+
2643
+    this.elements = {};
2644
+  }
2645
+
2646
+  _createClass(Interface, [{
2647
+    key: "buildStyle",
2648
+    value: function buildStyle() {
2649
+      return (0, _redom.el)('style', '#cconsent-bar, #cconsent-bar * { box-sizing:border-box }', '#cconsent-bar { background-color:' + window.CookieConsent.config.theme.barColor + '; color:' + window.CookieConsent.config.theme.barTextColor + '; padding:15px; text-align:right; font-family:sans-serif; font-size:14px; line-height:18px; position:fixed; bottom:0; left:0; width:100%; z-index:9998; transform: translateY(0); transition: transform .6s ease-in-out; transition-delay: .3s;}', '#cconsent-bar.ccb--hidden {transform: translateY(100%); display:block;}', '#cconsent-bar .ccb__wrapper { display:flex; flex-wrap:wrap; justify-content:space-between; max-width:1800px; margin:0 auto;}', '#cconsent-bar .ccb__left { align-self:center; text-align:left; margin: 15px 0;}', '#cconsent-bar .ccb__right { align-self:center; white-space: nowrap;}', '#cconsent-bar .ccb__right > div {display:inline-block; color:#FFF;}', '#cconsent-bar a { text-decoration:underline; color:' + window.CookieConsent.config.theme.barTextColor + '; }', '#cconsent-bar button { line-height:normal; font-size:14px; border:none; padding:10px 10px; color:' + window.CookieConsent.config.theme.barMainButtonTextColor + '; background-color:' + window.CookieConsent.config.theme.barMainButtonColor + ';}', '#cconsent-bar a.ccb__edit { margin-right:15px }', '#cconsent-bar a:hover, #cconsent-bar button:hover { cursor:pointer; }', '#cconsent-modal { display:none; font-size:14px; line-height:18px; color:#666; width: 100vw; height: 100vh; position:fixed; left:0; top:0; right:0; bottom:0; font-family:sans-serif; font-size:14px; background-color:rgba(0,0,0,0.6); z-index:9999; align-items:center; justify-content:center;}', '@media (max-width: 600px) { #cconsent-modal { height: 100% } }', '#cconsent-modal h2, #cconsent-modal h3 {color:#333}', '#cconsent-modal.ccm--visible {display:flex}', '#cconsent-modal .ccm__content { max-width:600px; min-height:500px; max-height:600px; overflow-Y:auto; background-color:#EFEFEF; }', '@media (max-width: 600px) { #cconsent-modal .ccm__content { max-width:100vw; height:100%; max-height:initial; }}', '#cconsent-modal .ccm__content > .ccm__content__heading { border-bottom:1px solid #D8D8D8; padding:35px 35px 20px; background-color:#EFEFEF; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__heading h2 { font-size:21px; font-weight:600; color:#333; margin:0 }', '#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {font-weight:600; color:#888; cursor:pointer; font-size:26px; position: absolute; right:15px; top: 15px;}', '#cconsent-modal h2, #cconsent-modal h3 {margin-top:0}', '#cconsent-modal .ccm__content > .ccm__content__body { background-color:#FFF;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {margin:0; border-bottom: 1px solid #D8D8D8; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head::before { position:absolute; left:35px; font-size:1.4em; font-weight: 600; color:#E56385; content:"×"; display:inline-block; margin-right: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.checked-5jhk .ccm__tab-head::before {font-size:1em; content:"✔"; color:#28A834}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge { transition: transform .3s ease-out; transform-origin: 16px 6px 0; position:absolute;right:25px; top:50%; transform:rotate(0deg); transform:translateY(-50%)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg { pointer-events: none; }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {transform:rotate(-180deg)}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {color:#333; padding:17px 35px 17px 56px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {padding:25px 35px; margin:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head { transition: background-color .5s ease-out }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {font-weight:600; cursor:pointer; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head { background-color:#F9F9F9 }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {display:flex;}', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {flex-direction:column} }', '@media (max-width: 600px) { #cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left { margin-bottom:20px; } }', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component {display:flex; margin-right:35px; align-items:center;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-component > div {font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch-group {width:40px; height:20px; margin:0 10px; position:relative;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {position: absolute; top:0; right:0; display: inline-block; width: 40px; height: 20px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {display:none;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider  {position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; border-radius:10px; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch .ccm__switch__slider:before  {position: absolute; content: ""; height: 12px; width: 12px; left: 4px; bottom: 4px; background-color: white; border-radius:50%; -webkit-transition: .4s; transition: .4s;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider  {background-color: #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:focus + .ccm__switch__slider  {box-shadow: 0 0 1px #28A834;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input:checked + .ccm__switch__slider:before  {-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {font-size:18px; margin-bottom:10px; line-height:1;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {color:#444; margin-bottom:0}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {color:#333; font-weight:600;}', '#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul { margin:15px 0; padding-left:15px }', '#cconsent-modal .ccm__footer { padding:35px; background-color:#EFEFEF; text-align:center; display: flex; align-items:center; justify-content:flex-end; }', '#cconsent-modal .ccm__footer button { line-height:normal; font-size:14px; transition: background-color .5s ease-out; background-color:' + window.CookieConsent.config.theme.modalMainButtonColor + '; color:' + window.CookieConsent.config.theme.modalMainButtonTextColor + '; border:none; padding:13px; min-width:110px; border-radius: 2px; cursor:pointer; }', '#cconsent-modal .ccm__footer button:hover { background-color:' + _Utilities.default.lightenDarkenColor(window.CookieConsent.config.theme.modalMainButtonColor, -20) + '; }', '#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit {  margin-right:10px; }');
2650
+    }
2651
+  }, {
2652
+    key: "buildBar",
2653
+    value: function buildBar() {
2654
+      return (0, _redom.el)('div#cconsent-bar.ccb--hidden', (0, _redom.el)("div.ccb__wrapper", (0, _redom.el)('div.ccb__left', (0, _redom.el)('div.cc-text', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barMainText'))), (0, _redom.el)('div.ccb__right', (0, _redom.el)('div.ccb__button', (0, _redom.el)('a.ccb__edit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barLinkSetting')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'barBtnAcceptAll'))))));
2655
+    }
2656
+  }, {
2657
+    key: "buildModal",
2658
+    value: function buildModal() {
2659
+      // Cookie names list middleware
2660
+      var listCookies = function listCookies(category) {
2661
+        var list = [];
2662
+
2663
+        for (var service in window.CookieConsent.config.services) {
2664
+          window.CookieConsent.config.services[service].category === category && list.push(window.CookieConsent.config.services[service]);
2665
+        }
2666
+
2667
+        if (list.length) {
2668
+          var listItems = [];
2669
+
2670
+          for (var item in list) {
2671
+            listItems.push((0, _redom.el)('li', _Language.default.getTranslation(list[item], window.CookieConsent.config.language.current, 'name')));
2672
+          }
2673
+
2674
+          return [(0, _redom.el)('div.ccm__list', (0, _redom.el)('span.ccm__list__title', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalAffectedSolutions')), (0, _redom.el)('ul', listItems))];
2675
+        }
2676
+      };
2677
+
2678
+      function modalTabGroups() {
2679
+        var contentItems = [];
2680
+        var i = 0;
2681
+
2682
+        for (var key in window.CookieConsent.config.categories) {
2683
+          contentItems.push((0, _redom.el)('dl.ccm__tabgroup' + '.' + key + (window.CookieConsent.config.categories[key].checked ? '.checked-5jhk' : ''), {
2684
+            'data-category': key
2685
+          }, (0, _redom.el)('dt.ccm__tab-head', _Language.default.getTranslation(window.CookieConsent.config.categories[key], window.CookieConsent.config.language.current, 'name'), (0, _redom.el)('a.ccm__tab-head__icon-wedge', (0, _redom.el)(document.createElementNS("http://www.w3.org/2000/svg", "svg"), {
2686
+            version: "1.2",
2687
+            preserveAspectRatio: "none",
2688
+            viewBox: "0 0 24 24",
2689
+            class: "icon-wedge-svg",
2690
+            "data-id": "e9b3c566e8c14cfea38af128759b91a3",
2691
+            style: "opacity: 1; mix-blend-mode: normal; fill: rgb(51, 51, 51); width: 32px; height: 32px;"
2692
+          }, (0, _redom.el)(document.createElementNS("http://www.w3.org/2000/svg", "path"), {
2693
+            'xmlns:default': "http://www.w3.org/2000/svg",
2694
+            id: "angle-down",
2695
+            d: "M17.2,9.84c0-0.09-0.04-0.18-0.1-0.24l-0.52-0.52c-0.13-0.13-0.33-0.14-0.47-0.01c0,0-0.01,0.01-0.01,0.01  l-4.1,4.1l-4.09-4.1C7.78,8.94,7.57,8.94,7.44,9.06c0,0-0.01,0.01-0.01,0.01L6.91,9.6c-0.13,0.13-0.14,0.33-0.01,0.47  c0,0,0.01,0.01,0.01,0.01l4.85,4.85c0.13,0.13,0.33,0.14,0.47,0.01c0,0,0.01-0.01,0.01-0.01l4.85-4.85c0.06-0.06,0.1-0.15,0.1-0.24  l0,0H17.2z",
2696
+            style: "fill: rgb(51, 51, 51);"
2697
+          })))), (0, _redom.el)('dd.ccm__tab-content', (0, _redom.el)('div.ccm__tab-content__left', !window.CookieConsent.config.categories[key].needed && (0, _redom.el)('div.ccm__switch-component', (0, _redom.el)('div.status-off', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'off')), (0, _redom.el)('div.ccm__switch-group', (0, _redom.el)('label.ccm__switch', (0, _redom.el)('input.category-onoff', {
2698
+            type: 'checkbox',
2699
+            'data-category': key,
2700
+            'checked': window.CookieConsent.config.categories[key].checked
2701
+          }), (0, _redom.el)('span.ccm__switch__slider'))), (0, _redom.el)('div.status-on', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'on')))), (0, _redom.el)('div.right', (0, _redom.el)('h3', _Language.default.getTranslation(window.CookieConsent.config.categories[key], window.CookieConsent.config.language.current, 'name')), (0, _redom.el)('p', _Language.default.getTranslation(window.CookieConsent.config.categories[key], window.CookieConsent.config.language.current, 'description')), (0, _redom.el)('div.ccm__list', listCookies(key))))));
2702
+          i++;
2703
+        }
2704
+
2705
+        return contentItems;
2706
+      }
2707
+
2708
+      return (0, _redom.el)('div#cconsent-modal', (0, _redom.el)('div.ccm__content', (0, _redom.el)('div.ccm__content__heading', (0, _redom.el)('h2', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalMainTitle')), (0, _redom.el)('p', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalMainText'), window.CookieConsent.config.modalMainTextMoreLink ? (0, _redom.el)('a', {
2709
+        href: window.CookieConsent.config.modalMainTextMoreLink,
2710
+        target: '_blank',
2711
+        rel: 'noopener noreferrer'
2712
+      }, _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalMainTitle')) : null), (0, _redom.el)('div.ccm__cheading__close', '×')), (0, _redom.el)('div.ccm__content__body', (0, _redom.el)('div.ccm__tabs', modalTabGroups())), (0, _redom.el)('div.ccm__footer', (0, _redom.el)('button#ccm__footer__consent-modal-submit', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnSave')), (0, _redom.el)('button.consent-give', _Language.default.getTranslation(window.CookieConsent.config, window.CookieConsent.config.language.current, 'modalBtnAcceptAll')))));
2713
+    }
2714
+  }, {
2715
+    key: "modalRedrawIcons",
2716
+    value: function modalRedrawIcons() {
2717
+      var tabGroups = this.elements['modal'].querySelectorAll('.ccm__tabgroup');
2718
+      var _iteratorNormalCompletion = true;
2719
+      var _didIteratorError = false;
2720
+      var _iteratorError = undefined;
2721
+
2722
+      try {
2723
+        for (var _iterator = tabGroups[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
2724
+          var tabGroup = _step.value;
2725
+
2726
+          if (window.CookieConsent.config.categories[tabGroup.dataset.category].checked) {
2727
+            if (!tabGroup.classList.contains('checked-5jhk')) {
2728
+              tabGroup.classList.add('checked-5jhk');
2729
+              tabGroup.querySelector('input.category-onoff').checked = true;
2730
+            }
2731
+
2732
+            ;
2733
+          } else {
2734
+            if (tabGroup.classList.contains('checked-5jhk')) tabGroup.classList.remove('checked-5jhk');
2735
+            tabGroup.querySelector('input.category-onoff').checked = false;
2736
+          }
2737
+        }
2738
+      } catch (err) {
2739
+        _didIteratorError = true;
2740
+        _iteratorError = err;
2741
+      } finally {
2742
+        try {
2743
+          if (!_iteratorNormalCompletion && _iterator.return != null) {
2744
+            _iterator.return();
2745
+          }
2746
+        } finally {
2747
+          if (_didIteratorError) {
2748
+            throw _iteratorError;
2749
+          }
2750
+        }
2751
+      }
2752
+    }
2753
+  }, {
2754
+    key: "render",
2755
+    value: function render(name, elem, callback) {
2756
+      if (typeof callback === 'undefined') callback = function callback() {};
2757
+
2758
+      if (typeof this.elements[name] !== 'undefined') {
2759
+        this.elements[name].parentNode.replaceChild(elem, this.elements[name]);
2760
+        this.elements[name] = elem;
2761
+        callback(elem);
2762
+        return elem;
2763
+      } else {
2764
+        var insertedElem = (0, _redom.mount)(document.body, elem);
2765
+
2766
+        if (insertedElem) {
2767
+          this.elements[name] = insertedElem;
2768
+        }
2769
+
2770
+        callback(insertedElem);
2771
+        return insertedElem;
2772
+      }
2773
+    }
2774
+  }, {
2775
+    key: "buildInterface",
2776
+    value: function buildInterface(callback) {
2777
+      if (typeof callback === 'undefined') callback = function callback() {};
2778
+      var that = this;
2779
+
2780
+      _Utilities.default.ready(function () {
2781
+        that.render('style', that.buildStyle());
2782
+        that.render('bar', that.buildBar(), function (bar) {
2783
+          // Show the bar after a while
2784
+          if (!window.CookieConsent.config.cookieExists) {
2785
+            setTimeout(function () {
2786
+              bar.classList.remove('ccb--hidden');
2787
+            }, window.CookieConsent.config.barTimeout);
2788
+          }
2789
+        });
2790
+        that.render('modal', that.buildModal());
2791
+        callback();
2792
+      });
2793
+    }
2794
+  }, {
2795
+    key: "addEventListeners",
2796
+    value: function addEventListeners(elements) {
2797
+      var _this = this;
2798
+
2799
+      // If you click Accept all cookies
2800
+      var buttonConsentGive = document.querySelectorAll('.consent-give');
2801
+      var _iteratorNormalCompletion2 = true;
2802
+      var _didIteratorError2 = false;
2803
+      var _iteratorError2 = undefined;
2804
+
2805
+      try {
2806
+        for (var _iterator2 = buttonConsentGive[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
2807
+          var button = _step2.value;
2808
+          button.addEventListener('click', function () {
2809
+            // We set config to full consent
2810
+            for (var key in window.CookieConsent.config.categories) {
2811
+              window.CookieConsent.config.categories[key].wanted = window.CookieConsent.config.categories[key].checked = true;
2812
+            }
2813
+
2814
+            _this.writeBufferToDOM();
2815
+
2816
+            _this.buildCookie(function (cookie) {
2817
+              _this.setCookie(cookie);
2818
+            });
2819
+
2820
+            _this.elements['bar'].classList.add('ccb--hidden');
2821
+
2822
+            _this.elements['modal'].classList.remove('ccm--visible');
2823
+
2824
+            _this.modalRedrawIcons();
2825
+          });
2826
+        } // If you click Cookie settings and open modal
2827
+
2828
+      } catch (err) {
2829
+        _didIteratorError2 = true;
2830
+        _iteratorError2 = err;
2831
+      } finally {
2832
+        try {
2833
+          if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
2834
+            _iterator2.return();
2835
+          }
2836
+        } finally {
2837
+          if (_didIteratorError2) {
2838
+            throw _iteratorError2;
2839
+          }
2840
+        }
2841
+      }
2842
+
2843
+      Array.prototype.forEach.call(document.getElementsByClassName('ccb__edit'), function (edit) {
2844
+        edit.addEventListener('click', function () {
2845
+          _this.elements['modal'].classList.add('ccm--visible');
2846
+        });
2847
+      }); // If you click trough the tabs on Cookie settings
2848
+      // If you click on/off switch
2849
+
2850
+      this.elements['modal'].querySelector('.ccm__tabs').addEventListener('click', function (event) {
2851
+        // If you click trough the tabs on Cookie settings
2852
+        if (event.target.classList.contains('ccm__tab-head') || event.target.classList.contains('ccm__tab-head__icon-wedge')) {
2853
+          var getDlParent = function getDlParent(eventTarget) {
2854
+            var parent = eventTarget.parentNode;
2855
+
2856
+            if (parent.nodeName !== 'DL') {
2857
+              return getDlParent(parent);
2858
+            } else {
2859
+              return parent;
2860
+            }
2861
+          };
2862
+
2863
+          var parentDl = getDlParent(event.target);
2864
+
2865
+          if (parentDl.classList.contains('ccm__tabgroup--open')) {
2866
+            parentDl.classList.remove('ccm__tabgroup--open');
2867
+          } else {
2868
+            parentDl.classList.add('ccm__tabgroup--open');
2869
+          }
2870
+        } // If you click on/off switch
2871
+
2872
+
2873
+        if (event.target.classList.contains('category-onoff')) {
2874
+          window.CookieConsent.config.categories[event.target.dataset.category].wanted = window.CookieConsent.config.categories[event.target.dataset.category].checked = event.target.checked === true ? true : false;
2875
+          var dt = document.querySelector('.ccm__tabgroup.' + event.target.dataset.category);
2876
+
2877
+          if (event.target.checked === false && dt.classList.contains('checked-5jhk')) {
2878
+            dt.classList.remove('checked-5jhk');
2879
+          } else {
2880
+            dt.classList.add('checked-5jhk');
2881
+          }
2882
+        }
2883
+      }); // If you click close on open modal
2884
+
2885
+      this.elements['modal'].querySelector('.ccm__cheading__close').addEventListener('click', function (event) {
2886
+        _this.elements['modal'].classList.remove('ccm--visible');
2887
+      }); // If you click submit on cookie settings
2888
+
2889
+      document.getElementById('ccm__footer__consent-modal-submit').addEventListener('click', function () {
2890
+        var switchElements = _this.elements['modal'].querySelectorAll('.ccm__switch input');
2891
+
2892
+        Array.prototype.forEach.call(switchElements, function (switchElement) {
2893
+          window.CookieConsent.config.categories[switchElement.dataset.category].wanted = switchElement.checked;
2894
+        });
2895
+
2896
+        _this.buildCookie(function (cookie) {
2897
+          _this.setCookie(cookie, function () {
2898
+            _this.elements['modal'].classList.remove('ccm--visible');
2899
+
2900
+            _this.elements['bar'].classList.add('ccb--hidden');
2901
+          });
2902
+        });
2903
+
2904
+        _this.writeBufferToDOM();
2905
+      });
2906
+    }
2907
+  }, {
2908
+    key: "writeBufferToDOM",
2909
+    value: function writeBufferToDOM() {
2910
+      var _iteratorNormalCompletion3 = true;
2911
+      var _didIteratorError3 = false;
2912
+      var _iteratorError3 = undefined;
2913
+
2914
+      try {
2915
+        for (var _iterator3 = window.CookieConsent.buffer.appendChild[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
2916
+          var action = _step3.value;
2917
+
2918
+          if (window.CookieConsent.config.categories[action.category].wanted === true) {
2919
+            Node.prototype.appendChild.apply(action.this, action.arguments);
2920
+          }
2921
+        }
2922
+      } catch (err) {
2923
+        _didIteratorError3 = true;
2924
+        _iteratorError3 = err;
2925
+      } finally {
2926
+        try {
2927
+          if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
2928
+            _iterator3.return();
2929
+          }
2930
+        } finally {
2931
+          if (_didIteratorError3) {
2932
+            throw _iteratorError3;
2933
+          }
2934
+        }
2935
+      }
2936
+
2937
+      var _iteratorNormalCompletion4 = true;
2938
+      var _didIteratorError4 = false;
2939
+      var _iteratorError4 = undefined;
2940
+
2941
+      try {
2942
+        for (var _iterator4 = window.CookieConsent.buffer.insertBefore[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
2943
+          var _action = _step4.value;
2944
+
2945
+          if (window.CookieConsent.config.categories[_action.category].wanted === true) {
2946
+            _action.arguments[1] = _action.arguments[0].parentNode === null ? _action.this.lastChild : _action.arguments[1];
2947
+            Node.prototype.insertBefore.apply(_action.this, _action.arguments);
2948
+          }
2949
+        }
2950
+      } catch (err) {
2951
+        _didIteratorError4 = true;
2952
+        _iteratorError4 = err;
2953
+      } finally {
2954
+        try {
2955
+          if (!_iteratorNormalCompletion4 && _iterator4.return != null) {
2956
+            _iterator4.return();
2957
+          }
2958
+        } finally {
2959
+          if (_didIteratorError4) {
2960
+            throw _iteratorError4;
2961
+          }
2962
+        }
2963
+      }
2964
+    }
2965
+  }, {
2966
+    key: "buildCookie",
2967
+    value: function buildCookie(callback) {
2968
+      var cookie = {
2969
+        version: window.CookieConsent.config.cookieVersion,
2970
+        categories: {},
2971
+        services: []
2972
+      };
2973
+
2974
+      for (var key in window.CookieConsent.config.categories) {
2975
+        cookie.categories[key] = {
2976
+          wanted: window.CookieConsent.config.categories[key].wanted
2977
+        };
2978
+      }
2979
+
2980
+      cookie.services = _Utilities.default.listGlobalServices();
2981
+      if (callback) callback(cookie);
2982
+      return cookie;
2983
+    }
2984
+  }, {
2985
+    key: "setCookie",
2986
+    value: function setCookie(cookie, callback) {
2987
+      document.cookie = "cconsent=".concat(JSON.stringify(cookie), "; expires=Thu, 01 Jan 2099 00:00:00 UTC; path=/;");
2988
+      if (callback) callback();
2989
+    }
2990
+  }]);
2991
+
2992
+  return Interface;
2993
+}();
2994
+
2995
+exports.default = Interface;
2996
+},{"redom":"GuEK","./Language":"4LWe","./Utilities":"/6wJ"}],"s9iF":[function(require,module,exports) {
2997
+/**
2998
+ * Removes all key-value entries from the list cache.
2999
+ *
3000
+ * @private
3001
+ * @name clear
3002
+ * @memberOf ListCache
3003
+ */
3004
+function listCacheClear() {
3005
+  this.__data__ = [];
3006
+  this.size = 0;
3007
+}
3008
+
3009
+module.exports = listCacheClear;
3010
+
3011
+},{}],"LIpy":[function(require,module,exports) {
3012
+/**
3013
+ * Performs a
3014
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
3015
+ * comparison between two values to determine if they are equivalent.
3016
+ *
3017
+ * @static
3018
+ * @memberOf _
3019
+ * @since 4.0.0
3020
+ * @category Lang
3021
+ * @param {*} value The value to compare.
3022
+ * @param {*} other The other value to compare.
3023
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
3024
+ * @example
3025
+ *
3026
+ * var object = { 'a': 1 };
3027
+ * var other = { 'a': 1 };
3028
+ *
3029
+ * _.eq(object, object);
3030
+ * // => true
3031
+ *
3032
+ * _.eq(object, other);
3033
+ * // => false
3034
+ *
3035
+ * _.eq('a', 'a');
3036
+ * // => true
3037
+ *
3038
+ * _.eq('a', Object('a'));
3039
+ * // => false
3040
+ *
3041
+ * _.eq(NaN, NaN);
3042
+ * // => true
3043
+ */
3044
+function eq(value, other) {
3045
+  return value === other || (value !== value && other !== other);
3046
+}
3047
+
3048
+module.exports = eq;
3049
+
3050
+},{}],"yEjJ":[function(require,module,exports) {
3051
+var eq = require('./eq');
3052
+
3053
+/**
3054
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
3055
+ *
3056
+ * @private
3057
+ * @param {Array} array The array to inspect.
3058
+ * @param {*} key The key to search for.
3059
+ * @returns {number} Returns the index of the matched value, else `-1`.
3060
+ */
3061
+function assocIndexOf(array, key) {
3062
+  var length = array.length;
3063
+  while (length--) {
3064
+    if (eq(array[length][0], key)) {
3065
+      return length;
3066
+    }
3067
+  }
3068
+  return -1;
3069
+}
3070
+
3071
+module.exports = assocIndexOf;
3072
+
3073
+},{"./eq":"LIpy"}],"+bWy":[function(require,module,exports) {
3074
+var assocIndexOf = require('./_assocIndexOf');
3075
+
3076
+/** Used for built-in method references. */
3077
+var arrayProto = Array.prototype;
3078
+
3079
+/** Built-in value references. */
3080
+var splice = arrayProto.splice;
3081
+
3082
+/**
3083
+ * Removes `key` and its value from the list cache.
3084
+ *
3085
+ * @private
3086
+ * @name delete
3087
+ * @memberOf ListCache
3088
+ * @param {string} key The key of the value to remove.
3089
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
3090
+ */
3091
+function listCacheDelete(key) {
3092
+  var data = this.__data__,
3093
+      index = assocIndexOf(data, key);
3094
+
3095
+  if (index < 0) {
3096
+    return false;
3097
+  }
3098
+  var lastIndex = data.length - 1;
3099
+  if (index == lastIndex) {
3100
+    data.pop();
3101
+  } else {
3102
+    splice.call(data, index, 1);
3103
+  }
3104
+  --this.size;
3105
+  return true;
3106
+}
3107
+
3108
+module.exports = listCacheDelete;
3109
+
3110
+},{"./_assocIndexOf":"yEjJ"}],"Ewuv":[function(require,module,exports) {
3111
+var assocIndexOf = require('./_assocIndexOf');
3112
+
3113
+/**
3114
+ * Gets the list cache value for `key`.
3115
+ *
3116
+ * @private
3117
+ * @name get
3118
+ * @memberOf ListCache
3119
+ * @param {string} key The key of the value to get.
3120
+ * @returns {*} Returns the entry value.
3121
+ */
3122
+function listCacheGet(key) {
3123
+  var data = this.__data__,
3124
+      index = assocIndexOf(data, key);
3125
+
3126
+  return index < 0 ? undefined : data[index][1];
3127
+}
3128
+
3129
+module.exports = listCacheGet;
3130
+
3131
+},{"./_assocIndexOf":"yEjJ"}],"xDQX":[function(require,module,exports) {
3132
+var assocIndexOf = require('./_assocIndexOf');
3133
+
3134
+/**
3135
+ * Checks if a list cache value for `key` exists.
3136
+ *
3137
+ * @private
3138
+ * @name has
3139
+ * @memberOf ListCache
3140
+ * @param {string} key The key of the entry to check.
3141
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
3142
+ */
3143
+function listCacheHas(key) {
3144
+  return assocIndexOf(this.__data__, key) > -1;
3145
+}
3146
+
3147
+module.exports = listCacheHas;
3148
+
3149
+},{"./_assocIndexOf":"yEjJ"}],"h0zV":[function(require,module,exports) {
3150
+var assocIndexOf = require('./_assocIndexOf');
3151
+
3152
+/**
3153
+ * Sets the list cache `key` to `value`.
3154
+ *
3155
+ * @private
3156
+ * @name set
3157
+ * @memberOf ListCache
3158
+ * @param {string} key The key of the value to set.
3159
+ * @param {*} value The value to set.
3160
+ * @returns {Object} Returns the list cache instance.
3161
+ */
3162
+function listCacheSet(key, value) {
3163
+  var data = this.__data__,
3164
+      index = assocIndexOf(data, key);
3165
+
3166
+  if (index < 0) {
3167
+    ++this.size;
3168
+    data.push([key, value]);
3169
+  } else {
3170
+    data[index][1] = value;
3171
+  }
3172
+  return this;
3173
+}
3174
+
3175
+module.exports = listCacheSet;
3176
+
3177
+},{"./_assocIndexOf":"yEjJ"}],"Xk23":[function(require,module,exports) {
3178
+var listCacheClear = require('./_listCacheClear'),
3179
+    listCacheDelete = require('./_listCacheDelete'),
3180
+    listCacheGet = require('./_listCacheGet'),
3181
+    listCacheHas = require('./_listCacheHas'),
3182
+    listCacheSet = require('./_listCacheSet');
3183
+
3184
+/**
3185
+ * Creates an list cache object.
3186
+ *
3187
+ * @private
3188
+ * @constructor
3189
+ * @param {Array} [entries] The key-value pairs to cache.
3190
+ */
3191
+function ListCache(entries) {
3192
+  var index = -1,
3193
+      length = entries == null ? 0 : entries.length;
3194
+
3195
+  this.clear();
3196
+  while (++index < length) {
3197
+    var entry = entries[index];
3198
+    this.set(entry[0], entry[1]);
3199
+  }
3200
+}
3201
+
3202
+// Add methods to `ListCache`.
3203
+ListCache.prototype.clear = listCacheClear;
3204
+ListCache.prototype['delete'] = listCacheDelete;
3205
+ListCache.prototype.get = listCacheGet;
3206
+ListCache.prototype.has = listCacheHas;
3207
+ListCache.prototype.set = listCacheSet;
3208
+
3209
+module.exports = ListCache;
3210
+
3211
+},{"./_listCacheClear":"s9iF","./_listCacheDelete":"+bWy","./_listCacheGet":"Ewuv","./_listCacheHas":"xDQX","./_listCacheSet":"h0zV"}],"4y4D":[function(require,module,exports) {
3212
+var ListCache = require('./_ListCache');
3213
+
3214
+/**
3215
+ * Removes all key-value entries from the stack.
3216
+ *
3217
+ * @private
3218
+ * @name clear
3219
+ * @memberOf Stack
3220
+ */
3221
+function stackClear() {
3222
+  this.__data__ = new ListCache;
3223
+  this.size = 0;
3224
+}
3225
+
3226
+module.exports = stackClear;
3227
+
3228
+},{"./_ListCache":"Xk23"}],"TpjK":[function(require,module,exports) {
3229
+/**
3230
+ * Removes `key` and its value from the stack.
3231
+ *
3232
+ * @private
3233
+ * @name delete
3234
+ * @memberOf Stack
3235
+ * @param {string} key The key of the value to remove.
3236
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
3237
+ */
3238
+function stackDelete(key) {
3239
+  var data = this.__data__,
3240
+      result = data['delete'](key);
3241
+
3242
+  this.size = data.size;
3243
+  return result;
3244
+}
3245
+
3246
+module.exports = stackDelete;
3247
+
3248
+},{}],"skbs":[function(require,module,exports) {
3249
+/**
3250
+ * Gets the stack value for `key`.
3251
+ *
3252
+ * @private
3253
+ * @name get
3254
+ * @memberOf Stack
3255
+ * @param {string} key The key of the value to get.
3256
+ * @returns {*} Returns the entry value.
3257
+ */
3258
+function stackGet(key) {
3259
+  return this.__data__.get(key);
3260
+}
3261
+
3262
+module.exports = stackGet;
3263
+
3264
+},{}],"9ocJ":[function(require,module,exports) {
3265
+/**
3266
+ * Checks if a stack value for `key` exists.
3267
+ *
3268
+ * @private
3269
+ * @name has
3270
+ * @memberOf Stack
3271
+ * @param {string} key The key of the entry to check.
3272
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
3273
+ */
3274
+function stackHas(key) {
3275
+  return this.__data__.has(key);
3276
+}
3277
+
3278
+module.exports = stackHas;
3279
+
3280
+},{}],"j3D9":[function(require,module,exports) {
3281
+var global = arguments[3];
3282
+/** Detect free variable `global` from Node.js. */
3283
+var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
3284
+
3285
+module.exports = freeGlobal;
3286
+
3287
+},{}],"MIhM":[function(require,module,exports) {
3288
+var freeGlobal = require('./_freeGlobal');
3289
+
3290
+/** Detect free variable `self`. */
3291
+var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
3292
+
3293
+/** Used as a reference to the global object. */
3294
+var root = freeGlobal || freeSelf || Function('return this')();
3295
+
3296
+module.exports = root;
3297
+
3298
+},{"./_freeGlobal":"j3D9"}],"wppe":[function(require,module,exports) {
3299
+var root = require('./_root');
3300
+
3301
+/** Built-in value references. */
3302
+var Symbol = root.Symbol;
3303
+
3304
+module.exports = Symbol;
3305
+
3306
+},{"./_root":"MIhM"}],"uiOY":[function(require,module,exports) {
3307
+var Symbol = require('./_Symbol');
3308
+
3309
+/** Used for built-in method references. */
3310
+var objectProto = Object.prototype;
3311
+
3312
+/** Used to check objects for own properties. */
3313
+var hasOwnProperty = objectProto.hasOwnProperty;
3314
+
3315
+/**
3316
+ * Used to resolve the
3317
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
3318
+ * of values.
3319
+ */
3320
+var nativeObjectToString = objectProto.toString;
3321
+
3322
+/** Built-in value references. */
3323
+var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
3324
+
3325
+/**
3326
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
3327
+ *
3328
+ * @private
3329
+ * @param {*} value The value to query.
3330
+ * @returns {string} Returns the raw `toStringTag`.
3331
+ */
3332
+function getRawTag(value) {
3333
+  var isOwn = hasOwnProperty.call(value, symToStringTag),
3334
+      tag = value[symToStringTag];
3335
+
3336
+  try {
3337
+    value[symToStringTag] = undefined;
3338
+    var unmasked = true;
3339
+  } catch (e) {}
3340
+
3341
+  var result = nativeObjectToString.call(value);
3342
+  if (unmasked) {
3343
+    if (isOwn) {
3344
+      value[symToStringTag] = tag;
3345
+    } else {
3346
+      delete value[symToStringTag];
3347
+    }
3348
+  }
3349
+  return result;
3350
+}
3351
+
3352
+module.exports = getRawTag;
3353
+
3354
+},{"./_Symbol":"wppe"}],"lPmd":[function(require,module,exports) {
3355
+/** Used for built-in method references. */
3356
+var objectProto = Object.prototype;
3357
+
3358
+/**
3359
+ * Used to resolve the
3360
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
3361
+ * of values.
3362
+ */
3363
+var nativeObjectToString = objectProto.toString;
3364
+
3365
+/**
3366
+ * Converts `value` to a string using `Object.prototype.toString`.
3367
+ *
3368
+ * @private
3369
+ * @param {*} value The value to convert.
3370
+ * @returns {string} Returns the converted string.
3371
+ */
3372
+function objectToString(value) {
3373
+  return nativeObjectToString.call(value);
3374
+}
3375
+
3376
+module.exports = objectToString;
3377
+
3378
+},{}],"e5TX":[function(require,module,exports) {
3379
+var Symbol = require('./_Symbol'),
3380
+    getRawTag = require('./_getRawTag'),
3381
+    objectToString = require('./_objectToString');
3382
+
3383
+/** `Object#toString` result references. */
3384
+var nullTag = '[object Null]',
3385
+    undefinedTag = '[object Undefined]';
3386
+
3387
+/** Built-in value references. */
3388
+var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
3389
+
3390
+/**
3391
+ * The base implementation of `getTag` without fallbacks for buggy environments.
3392
+ *
3393
+ * @private
3394
+ * @param {*} value The value to query.
3395
+ * @returns {string} Returns the `toStringTag`.
3396
+ */
3397
+function baseGetTag(value) {
3398
+  if (value == null) {
3399
+    return value === undefined ? undefinedTag : nullTag;
3400
+  }
3401
+  return (symToStringTag && symToStringTag in Object(value))
3402
+    ? getRawTag(value)
3403
+    : objectToString(value);
3404
+}
3405
+
3406
+module.exports = baseGetTag;
3407
+
3408
+},{"./_Symbol":"wppe","./_getRawTag":"uiOY","./_objectToString":"lPmd"}],"u9vI":[function(require,module,exports) {
3409
+/**
3410
+ * Checks if `value` is the
3411
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
3412
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
3413
+ *
3414
+ * @static
3415
+ * @memberOf _
3416
+ * @since 0.1.0
3417
+ * @category Lang
3418
+ * @param {*} value The value to check.
3419
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
3420
+ * @example
3421
+ *
3422
+ * _.isObject({});
3423
+ * // => true
3424
+ *
3425
+ * _.isObject([1, 2, 3]);
3426
+ * // => true
3427
+ *
3428
+ * _.isObject(_.noop);
3429
+ * // => true
3430
+ *
3431
+ * _.isObject(null);
3432
+ * // => false
3433
+ */
3434
+function isObject(value) {
3435
+  var type = typeof value;
3436
+  return value != null && (type == 'object' || type == 'function');
3437
+}
3438
+
3439
+module.exports = isObject;
3440
+
3441
+},{}],"dRuq":[function(require,module,exports) {
3442
+var baseGetTag = require('./_baseGetTag'),
3443
+    isObject = require('./isObject');
3444
+
3445
+/** `Object#toString` result references. */
3446
+var asyncTag = '[object AsyncFunction]',
3447
+    funcTag = '[object Function]',
3448
+    genTag = '[object GeneratorFunction]',
3449
+    proxyTag = '[object Proxy]';
3450
+
3451
+/**
3452
+ * Checks if `value` is classified as a `Function` object.
3453
+ *
3454
+ * @static
3455
+ * @memberOf _
3456
+ * @since 0.1.0
3457
+ * @category Lang
3458
+ * @param {*} value The value to check.
3459
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
3460
+ * @example
3461
+ *
3462
+ * _.isFunction(_);
3463
+ * // => true
3464
+ *
3465
+ * _.isFunction(/abc/);
3466
+ * // => false
3467
+ */
3468
+function isFunction(value) {
3469
+  if (!isObject(value)) {
3470
+    return false;
3471
+  }
3472
+  // The use of `Object#toString` avoids issues with the `typeof` operator
3473
+  // in Safari 9 which returns 'object' for typed arrays and other constructors.
3474
+  var tag = baseGetTag(value);
3475
+  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
3476
+}
3477
+
3478
+module.exports = isFunction;
3479
+
3480
+},{"./_baseGetTag":"e5TX","./isObject":"u9vI"}],"q3B8":[function(require,module,exports) {
3481
+var root = require('./_root');
3482
+
3483
+/** Used to detect overreaching core-js shims. */
3484
+var coreJsData = root['__core-js_shared__'];
3485
+
3486
+module.exports = coreJsData;
3487
+
3488
+},{"./_root":"MIhM"}],"1qpN":[function(require,module,exports) {
3489
+var coreJsData = require('./_coreJsData');
3490
+
3491
+/** Used to detect methods masquerading as native. */
3492
+var maskSrcKey = (function() {
3493
+  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
3494
+  return uid ? ('Symbol(src)_1.' + uid) : '';
3495
+}());
3496
+
3497
+/**
3498
+ * Checks if `func` has its source masked.
3499
+ *
3500
+ * @private
3501
+ * @param {Function} func The function to check.
3502
+ * @returns {boolean} Returns `true` if `func` is masked, else `false`.
3503
+ */
3504
+function isMasked(func) {
3505
+  return !!maskSrcKey && (maskSrcKey in func);
3506
+}
3507
+
3508
+module.exports = isMasked;
3509
+
3510
+},{"./_coreJsData":"q3B8"}],"g55O":[function(require,module,exports) {
3511
+/** Used for built-in method references. */
3512
+var funcProto = Function.prototype;
3513
+
3514
+/** Used to resolve the decompiled source of functions. */
3515
+var funcToString = funcProto.toString;
3516
+
3517
+/**
3518
+ * Converts `func` to its source code.
3519
+ *
3520
+ * @private
3521
+ * @param {Function} func The function to convert.
3522
+ * @returns {string} Returns the source code.
3523
+ */
3524
+function toSource(func) {
3525
+  if (func != null) {
3526
+    try {
3527
+      return funcToString.call(func);
3528
+    } catch (e) {}
3529
+    try {
3530
+      return (func + '');
3531
+    } catch (e) {}
3532
+  }
3533
+  return '';
3534
+}
3535
+
3536
+module.exports = toSource;
3537
+
3538
+},{}],"iEGD":[function(require,module,exports) {
3539
+var isFunction = require('./isFunction'),
3540
+    isMasked = require('./_isMasked'),
3541
+    isObject = require('./isObject'),
3542
+    toSource = require('./_toSource');
3543
+
3544
+/**
3545
+ * Used to match `RegExp`
3546
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
3547
+ */
3548
+var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
3549
+
3550
+/** Used to detect host constructors (Safari). */
3551
+var reIsHostCtor = /^\[object .+?Constructor\]$/;
3552
+
3553
+/** Used for built-in method references. */
3554
+var funcProto = Function.prototype,
3555
+    objectProto = Object.prototype;
3556
+
3557
+/** Used to resolve the decompiled source of functions. */
3558
+var funcToString = funcProto.toString;
3559
+
3560
+/** Used to check objects for own properties. */
3561
+var hasOwnProperty = objectProto.hasOwnProperty;
3562
+
3563
+/** Used to detect if a method is native. */
3564
+var reIsNative = RegExp('^' +
3565
+  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
3566
+  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
3567
+);
3568
+
3569
+/**
3570
+ * The base implementation of `_.isNative` without bad shim checks.
3571
+ *
3572
+ * @private
3573
+ * @param {*} value The value to check.
3574
+ * @returns {boolean} Returns `true` if `value` is a native function,
3575
+ *  else `false`.
3576
+ */
3577
+function baseIsNative(value) {
3578
+  if (!isObject(value) || isMasked(value)) {
3579
+    return false;
3580
+  }
3581
+  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
3582
+  return pattern.test(toSource(value));
3583
+}
3584
+
3585
+module.exports = baseIsNative;
3586
+
3587
+},{"./isFunction":"dRuq","./_isMasked":"1qpN","./isObject":"u9vI","./_toSource":"g55O"}],"Nk5W":[function(require,module,exports) {
3588
+/**
3589
+ * Gets the value at `key` of `object`.
3590
+ *
3591
+ * @private
3592
+ * @param {Object} [object] The object to query.
3593
+ * @param {string} key The key of the property to get.
3594
+ * @returns {*} Returns the property value.
3595
+ */
3596
+function getValue(object, key) {
3597
+  return object == null ? undefined : object[key];
3598
+}
3599
+
3600
+module.exports = getValue;
3601
+
3602
+},{}],"bViC":[function(require,module,exports) {
3603
+var baseIsNative = require('./_baseIsNative'),
3604
+    getValue = require('./_getValue');
3605
+
3606
+/**
3607
+ * Gets the native function at `key` of `object`.
3608
+ *
3609
+ * @private
3610
+ * @param {Object} object The object to query.
3611
+ * @param {string} key The key of the method to get.
3612
+ * @returns {*} Returns the function if it's native, else `undefined`.
3613
+ */
3614
+function getNative(object, key) {
3615
+  var value = getValue(object, key);
3616
+  return baseIsNative(value) ? value : undefined;
3617
+}
3618
+
3619
+module.exports = getNative;
3620
+
3621
+},{"./_baseIsNative":"iEGD","./_getValue":"Nk5W"}],"K9uV":[function(require,module,exports) {
3622
+var getNative = require('./_getNative'),
3623
+    root = require('./_root');
3624
+
3625
+/* Built-in method references that are verified to be native. */
3626
+var Map = getNative(root, 'Map');
3627
+
3628
+module.exports = Map;
3629
+
3630
+},{"./_getNative":"bViC","./_root":"MIhM"}],"FTXF":[function(require,module,exports) {
3631
+var getNative = require('./_getNative');
3632
+
3633
+/* Built-in method references that are verified to be native. */
3634
+var nativeCreate = getNative(Object, 'create');
3635
+
3636
+module.exports = nativeCreate;
3637
+
3638
+},{"./_getNative":"bViC"}],"1RxS":[function(require,module,exports) {
3639
+var nativeCreate = require('./_nativeCreate');
3640
+
3641
+/**
3642
+ * Removes all key-value entries from the hash.
3643
+ *
3644
+ * @private
3645
+ * @name clear
3646
+ * @memberOf Hash
3647
+ */
3648
+function hashClear() {
3649
+  this.__data__ = nativeCreate ? nativeCreate(null) : {};
3650
+  this.size = 0;
3651
+}
3652
+
3653
+module.exports = hashClear;
3654
+
3655
+},{"./_nativeCreate":"FTXF"}],"qBl2":[function(require,module,exports) {
3656
+/**
3657
+ * Removes `key` and its value from the hash.
3658
+ *
3659
+ * @private
3660
+ * @name delete
3661
+ * @memberOf Hash
3662
+ * @param {Object} hash The hash to modify.
3663
+ * @param {string} key The key of the value to remove.
3664
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
3665
+ */
3666
+function hashDelete(key) {
3667
+  var result = this.has(key) && delete this.__data__[key];
3668
+  this.size -= result ? 1 : 0;
3669
+  return result;
3670
+}
3671
+
3672
+module.exports = hashDelete;
3673
+
3674
+},{}],"hClK":[function(require,module,exports) {
3675
+var nativeCreate = require('./_nativeCreate');
3676
+
3677
+/** Used to stand-in for `undefined` hash values. */
3678
+var HASH_UNDEFINED = '__lodash_hash_undefined__';
3679
+
3680
+/** Used for built-in method references. */
3681
+var objectProto = Object.prototype;
3682
+
3683
+/** Used to check objects for own properties. */
3684
+var hasOwnProperty = objectProto.hasOwnProperty;
3685
+
3686
+/**
3687
+ * Gets the hash value for `key`.
3688
+ *
3689
+ * @private
3690
+ * @name get
3691
+ * @memberOf Hash
3692
+ * @param {string} key The key of the value to get.
3693
+ * @returns {*} Returns the entry value.
3694
+ */
3695
+function hashGet(key) {
3696
+  var data = this.__data__;
3697
+  if (nativeCreate) {
3698
+    var result = data[key];
3699
+    return result === HASH_UNDEFINED ? undefined : result;
3700
+  }
3701
+  return hasOwnProperty.call(data, key) ? data[key] : undefined;
3702
+}
3703
+
3704
+module.exports = hashGet;
3705
+
3706
+},{"./_nativeCreate":"FTXF"}],"YIaf":[function(require,module,exports) {
3707
+var nativeCreate = require('./_nativeCreate');
3708
+
3709
+/** Used for built-in method references. */
3710
+var objectProto = Object.prototype;
3711
+
3712
+/** Used to check objects for own properties. */
3713
+var hasOwnProperty = objectProto.hasOwnProperty;
3714
+
3715
+/**
3716
+ * Checks if a hash value for `key` exists.
3717
+ *
3718
+ * @private
3719
+ * @name has
3720
+ * @memberOf Hash
3721
+ * @param {string} key The key of the entry to check.
3722
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
3723
+ */
3724
+function hashHas(key) {
3725
+  var data = this.__data__;
3726
+  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
3727
+}
3728
+
3729
+module.exports = hashHas;
3730
+
3731
+},{"./_nativeCreate":"FTXF"}],"Ag0p":[function(require,module,exports) {
3732
+var nativeCreate = require('./_nativeCreate');
3733
+
3734
+/** Used to stand-in for `undefined` hash values. */
3735
+var HASH_UNDEFINED = '__lodash_hash_undefined__';
3736
+
3737
+/**
3738
+ * Sets the hash `key` to `value`.
3739
+ *
3740
+ * @private
3741
+ * @name set
3742
+ * @memberOf Hash
3743
+ * @param {string} key The key of the value to set.
3744
+ * @param {*} value The value to set.
3745
+ * @returns {Object} Returns the hash instance.
3746
+ */
3747
+function hashSet(key, value) {
3748
+  var data = this.__data__;
3749
+  this.size += this.has(key) ? 0 : 1;
3750
+  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
3751
+  return this;
3752
+}
3753
+
3754
+module.exports = hashSet;
3755
+
3756
+},{"./_nativeCreate":"FTXF"}],"C8N4":[function(require,module,exports) {
3757
+var hashClear = require('./_hashClear'),
3758
+    hashDelete = require('./_hashDelete'),
3759
+    hashGet = require('./_hashGet'),
3760
+    hashHas = require('./_hashHas'),
3761
+    hashSet = require('./_hashSet');
3762
+
3763
+/**
3764
+ * Creates a hash object.
3765
+ *
3766
+ * @private
3767
+ * @constructor
3768
+ * @param {Array} [entries] The key-value pairs to cache.
3769
+ */
3770
+function Hash(entries) {
3771
+  var index = -1,
3772
+      length = entries == null ? 0 : entries.length;
3773
+
3774
+  this.clear();
3775
+  while (++index < length) {
3776
+    var entry = entries[index];
3777
+    this.set(entry[0], entry[1]);
3778
+  }
3779
+}
3780
+
3781
+// Add methods to `Hash`.
3782
+Hash.prototype.clear = hashClear;
3783
+Hash.prototype['delete'] = hashDelete;
3784
+Hash.prototype.get = hashGet;
3785
+Hash.prototype.has = hashHas;
3786
+Hash.prototype.set = hashSet;
3787
+
3788
+module.exports = Hash;
3789
+
3790
+},{"./_hashClear":"1RxS","./_hashDelete":"qBl2","./_hashGet":"hClK","./_hashHas":"YIaf","./_hashSet":"Ag0p"}],"lBq7":[function(require,module,exports) {
3791
+var Hash = require('./_Hash'),
3792
+    ListCache = require('./_ListCache'),
3793
+    Map = require('./_Map');
3794
+
3795
+/**
3796
+ * Removes all key-value entries from the map.
3797
+ *
3798
+ * @private
3799
+ * @name clear
3800
+ * @memberOf MapCache
3801
+ */
3802
+function mapCacheClear() {
3803
+  this.size = 0;
3804
+  this.__data__ = {
3805
+    'hash': new Hash,
3806
+    'map': new (Map || ListCache),
3807
+    'string': new Hash
3808
+  };
3809
+}
3810
+
3811
+module.exports = mapCacheClear;
3812
+
3813
+},{"./_Hash":"C8N4","./_ListCache":"Xk23","./_Map":"K9uV"}],"XJYD":[function(require,module,exports) {
3814
+/**
3815
+ * Checks if `value` is suitable for use as unique object key.
3816
+ *
3817
+ * @private
3818
+ * @param {*} value The value to check.
3819
+ * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
3820
+ */
3821
+function isKeyable(value) {
3822
+  var type = typeof value;
3823
+  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
3824
+    ? (value !== '__proto__')
3825
+    : (value === null);
3826
+}
3827
+
3828
+module.exports = isKeyable;
3829
+
3830
+},{}],"ZC1a":[function(require,module,exports) {
3831
+var isKeyable = require('./_isKeyable');
3832
+
3833
+/**
3834
+ * Gets the data for `map`.
3835
+ *
3836
+ * @private
3837
+ * @param {Object} map The map to query.
3838
+ * @param {string} key The reference key.
3839
+ * @returns {*} Returns the map data.
3840
+ */
3841
+function getMapData(map, key) {
3842
+  var data = map.__data__;
3843
+  return isKeyable(key)
3844
+    ? data[typeof key == 'string' ? 'string' : 'hash']
3845
+    : data.map;
3846
+}
3847
+
3848
+module.exports = getMapData;
3849
+
3850
+},{"./_isKeyable":"XJYD"}],"cDyG":[function(require,module,exports) {
3851
+var getMapData = require('./_getMapData');
3852
+
3853
+/**
3854
+ * Removes `key` and its value from the map.
3855
+ *
3856
+ * @private
3857
+ * @name delete
3858
+ * @memberOf MapCache
3859
+ * @param {string} key The key of the value to remove.
3860
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
3861
+ */
3862
+function mapCacheDelete(key) {
3863
+  var result = getMapData(this, key)['delete'](key);
3864
+  this.size -= result ? 1 : 0;
3865
+  return result;
3866
+}
3867
+
3868
+module.exports = mapCacheDelete;
3869
+
3870
+},{"./_getMapData":"ZC1a"}],"G3gK":[function(require,module,exports) {
3871
+var getMapData = require('./_getMapData');
3872
+
3873
+/**
3874
+ * Gets the map value for `key`.
3875
+ *
3876
+ * @private
3877
+ * @name get
3878
+ * @memberOf MapCache
3879
+ * @param {string} key The key of the value to get.
3880
+ * @returns {*} Returns the entry value.
3881
+ */
3882
+function mapCacheGet(key) {
3883
+  return getMapData(this, key).get(key);
3884
+}
3885
+
3886
+module.exports = mapCacheGet;
3887
+
3888
+},{"./_getMapData":"ZC1a"}],"85ue":[function(require,module,exports) {
3889
+var getMapData = require('./_getMapData');
3890
+
3891
+/**
3892
+ * Checks if a map value for `key` exists.
3893
+ *
3894
+ * @private
3895
+ * @name has
3896
+ * @memberOf MapCache
3897
+ * @param {string} key The key of the entry to check.
3898
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
3899
+ */
3900
+function mapCacheHas(key) {
3901
+  return getMapData(this, key).has(key);
3902
+}
3903
+
3904
+module.exports = mapCacheHas;
3905
+
3906
+},{"./_getMapData":"ZC1a"}],"UY82":[function(require,module,exports) {
3907
+var getMapData = require('./_getMapData');
3908
+
3909
+/**
3910
+ * Sets the map `key` to `value`.
3911
+ *
3912
+ * @private
3913
+ * @name set
3914
+ * @memberOf MapCache
3915
+ * @param {string} key The key of the value to set.
3916
+ * @param {*} value The value to set.
3917
+ * @returns {Object} Returns the map cache instance.
3918
+ */
3919
+function mapCacheSet(key, value) {
3920
+  var data = getMapData(this, key),
3921
+      size = data.size;
3922
+
3923
+  data.set(key, value);
3924
+  this.size += data.size == size ? 0 : 1;
3925
+  return this;
3926
+}
3927
+
3928
+module.exports = mapCacheSet;
3929
+
3930
+},{"./_getMapData":"ZC1a"}],"wtMJ":[function(require,module,exports) {
3931
+var mapCacheClear = require('./_mapCacheClear'),
3932
+    mapCacheDelete = require('./_mapCacheDelete'),
3933
+    mapCacheGet = require('./_mapCacheGet'),
3934
+    mapCacheHas = require('./_mapCacheHas'),
3935
+    mapCacheSet = require('./_mapCacheSet');
3936
+
3937
+/**
3938
+ * Creates a map cache object to store key-value pairs.
3939
+ *
3940
+ * @private
3941
+ * @constructor
3942
+ * @param {Array} [entries] The key-value pairs to cache.
3943
+ */
3944
+function MapCache(entries) {
3945
+  var index = -1,
3946
+      length = entries == null ? 0 : entries.length;
3947
+
3948
+  this.clear();
3949
+  while (++index < length) {
3950
+    var entry = entries[index];
3951
+    this.set(entry[0], entry[1]);
3952
+  }
3953
+}
3954
+
3955
+// Add methods to `MapCache`.
3956
+MapCache.prototype.clear = mapCacheClear;
3957
+MapCache.prototype['delete'] = mapCacheDelete;
3958
+MapCache.prototype.get = mapCacheGet;
3959
+MapCache.prototype.has = mapCacheHas;
3960
+MapCache.prototype.set = mapCacheSet;
3961
+
3962
+module.exports = MapCache;
3963
+
3964
+},{"./_mapCacheClear":"lBq7","./_mapCacheDelete":"cDyG","./_mapCacheGet":"G3gK","./_mapCacheHas":"85ue","./_mapCacheSet":"UY82"}],"fwYF":[function(require,module,exports) {
3965
+var ListCache = require('./_ListCache'),
3966
+    Map = require('./_Map'),
3967
+    MapCache = require('./_MapCache');
3968
+
3969
+/** Used as the size to enable large array optimizations. */
3970
+var LARGE_ARRAY_SIZE = 200;
3971
+
3972
+/**
3973
+ * Sets the stack `key` to `value`.
3974
+ *
3975
+ * @private
3976
+ * @name set
3977
+ * @memberOf Stack
3978
+ * @param {string} key The key of the value to set.
3979
+ * @param {*} value The value to set.
3980
+ * @returns {Object} Returns the stack cache instance.
3981
+ */
3982
+function stackSet(key, value) {
3983
+  var data = this.__data__;
3984
+  if (data instanceof ListCache) {
3985
+    var pairs = data.__data__;
3986
+    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
3987
+      pairs.push([key, value]);
3988
+      this.size = ++data.size;
3989
+      return this;
3990
+    }
3991
+    data = this.__data__ = new MapCache(pairs);
3992
+  }
3993
+  data.set(key, value);
3994
+  this.size = data.size;
3995
+  return this;
3996
+}
3997
+
3998
+module.exports = stackSet;
3999
+
4000
+},{"./_ListCache":"Xk23","./_Map":"K9uV","./_MapCache":"wtMJ"}],"49I8":[function(require,module,exports) {
4001
+var ListCache = require('./_ListCache'),
4002
+    stackClear = require('./_stackClear'),
4003
+    stackDelete = require('./_stackDelete'),
4004
+    stackGet = require('./_stackGet'),
4005
+    stackHas = require('./_stackHas'),
4006
+    stackSet = require('./_stackSet');
4007
+
4008
+/**
4009
+ * Creates a stack cache object to store key-value pairs.
4010
+ *
4011
+ * @private
4012
+ * @constructor
4013
+ * @param {Array} [entries] The key-value pairs to cache.
4014
+ */
4015
+function Stack(entries) {
4016
+  var data = this.__data__ = new ListCache(entries);
4017
+  this.size = data.size;
4018
+}
4019
+
4020
+// Add methods to `Stack`.
4021
+Stack.prototype.clear = stackClear;
4022
+Stack.prototype['delete'] = stackDelete;
4023
+Stack.prototype.get = stackGet;
4024
+Stack.prototype.has = stackHas;
4025
+Stack.prototype.set = stackSet;
4026
+
4027
+module.exports = Stack;
4028
+
4029
+},{"./_ListCache":"Xk23","./_stackClear":"4y4D","./_stackDelete":"TpjK","./_stackGet":"skbs","./_stackHas":"9ocJ","./_stackSet":"fwYF"}],"kAdy":[function(require,module,exports) {
4030
+var getNative = require('./_getNative');
4031
+
4032
+var defineProperty = (function() {
4033
+  try {
4034
+    var func = getNative(Object, 'defineProperty');
4035
+    func({}, '', {});
4036
+    return func;
4037
+  } catch (e) {}
4038
+}());
4039
+
4040
+module.exports = defineProperty;
4041
+
4042
+},{"./_getNative":"bViC"}],"d05+":[function(require,module,exports) {
4043
+var defineProperty = require('./_defineProperty');
4044
+
4045
+/**
4046
+ * The base implementation of `assignValue` and `assignMergeValue` without
4047
+ * value checks.
4048
+ *
4049
+ * @private
4050
+ * @param {Object} object The object to modify.
4051
+ * @param {string} key The key of the property to assign.
4052
+ * @param {*} value The value to assign.
4053
+ */
4054
+function baseAssignValue(object, key, value) {
4055
+  if (key == '__proto__' && defineProperty) {
4056
+    defineProperty(object, key, {
4057
+      'configurable': true,
4058
+      'enumerable': true,
4059
+      'value': value,
4060
+      'writable': true
4061
+    });
4062
+  } else {
4063
+    object[key] = value;
4064
+  }
4065
+}
4066
+
4067
+module.exports = baseAssignValue;
4068
+
4069
+},{"./_defineProperty":"kAdy"}],"2Tdb":[function(require,module,exports) {
4070
+var baseAssignValue = require('./_baseAssignValue'),
4071
+    eq = require('./eq');
4072
+
4073
+/**
4074
+ * This function is like `assignValue` except that it doesn't assign
4075
+ * `undefined` values.
4076
+ *
4077
+ * @private
4078
+ * @param {Object} object The object to modify.
4079
+ * @param {string} key The key of the property to assign.
4080
+ * @param {*} value The value to assign.
4081
+ */
4082
+function assignMergeValue(object, key, value) {
4083
+  if ((value !== undefined && !eq(object[key], value)) ||
4084
+      (value === undefined && !(key in object))) {
4085
+    baseAssignValue(object, key, value);
4086
+  }
4087
+}
4088
+
4089
+module.exports = assignMergeValue;
4090
+
4091
+},{"./_baseAssignValue":"d05+","./eq":"LIpy"}],"oVe7":[function(require,module,exports) {
4092
+/**
4093
+ * Creates a base function for methods like `_.forIn` and `_.forOwn`.
4094
+ *
4095
+ * @private
4096
+ * @param {boolean} [fromRight] Specify iterating from right to left.
4097
+ * @returns {Function} Returns the new base function.
4098
+ */
4099
+function createBaseFor(fromRight) {
4100
+  return function(object, iteratee, keysFunc) {
4101
+    var index = -1,
4102
+        iterable = Object(object),
4103
+        props = keysFunc(object),
4104
+        length = props.length;
4105
+
4106
+    while (length--) {
4107
+      var key = props[fromRight ? length : ++index];
4108
+      if (iteratee(iterable[key], key, iterable) === false) {
4109
+        break;
4110
+      }
4111
+    }
4112
+    return object;
4113
+  };
4114
+}
4115
+
4116
+module.exports = createBaseFor;
4117
+
4118
+},{}],"mduf":[function(require,module,exports) {
4119
+var createBaseFor = require('./_createBaseFor');
4120
+
4121
+/**
4122
+ * The base implementation of `baseForOwn` which iterates over `object`
4123
+ * properties returned by `keysFunc` and invokes `iteratee` for each property.
4124
+ * Iteratee functions may exit iteration early by explicitly returning `false`.
4125
+ *
4126
+ * @private
4127
+ * @param {Object} object The object to iterate over.
4128
+ * @param {Function} iteratee The function invoked per iteration.
4129
+ * @param {Function} keysFunc The function to get the keys of `object`.
4130
+ * @returns {Object} Returns `object`.
4131
+ */
4132
+var baseFor = createBaseFor();
4133
+
4134
+module.exports = baseFor;
4135
+
4136
+},{"./_createBaseFor":"oVe7"}],"s4SJ":[function(require,module,exports) {
4137
+
4138
+var root = require('./_root');
4139
+
4140
+/** Detect free variable `exports`. */
4141
+var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
4142
+
4143
+/** Detect free variable `module`. */
4144
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
4145
+
4146
+/** Detect the popular CommonJS extension `module.exports`. */
4147
+var moduleExports = freeModule && freeModule.exports === freeExports;
4148
+
4149
+/** Built-in value references. */
4150
+var Buffer = moduleExports ? root.Buffer : undefined,
4151
+    allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;
4152
+
4153
+/**
4154
+ * Creates a clone of  `buffer`.
4155
+ *
4156
+ * @private
4157
+ * @param {Buffer} buffer The buffer to clone.
4158
+ * @param {boolean} [isDeep] Specify a deep clone.
4159
+ * @returns {Buffer} Returns the cloned buffer.
4160
+ */
4161
+function cloneBuffer(buffer, isDeep) {
4162
+  if (isDeep) {
4163
+    return buffer.slice();
4164
+  }
4165
+  var length = buffer.length,
4166
+      result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
4167
+
4168
+  buffer.copy(result);
4169
+  return result;
4170
+}
4171
+
4172
+module.exports = cloneBuffer;
4173
+
4174
+},{"./_root":"MIhM"}],"yfX1":[function(require,module,exports) {
4175
+var root = require('./_root');
4176
+
4177
+/** Built-in value references. */
4178
+var Uint8Array = root.Uint8Array;
4179
+
4180
+module.exports = Uint8Array;
4181
+
4182
+},{"./_root":"MIhM"}],"zb3a":[function(require,module,exports) {
4183
+var Uint8Array = require('./_Uint8Array');
4184
+
4185
+/**
4186
+ * Creates a clone of `arrayBuffer`.
4187
+ *
4188
+ * @private
4189
+ * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
4190
+ * @returns {ArrayBuffer} Returns the cloned array buffer.
4191
+ */
4192
+function cloneArrayBuffer(arrayBuffer) {
4193
+  var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
4194
+  new Uint8Array(result).set(new Uint8Array(arrayBuffer));
4195
+  return result;
4196
+}
4197
+
4198
+module.exports = cloneArrayBuffer;
4199
+
4200
+},{"./_Uint8Array":"yfX1"}],"jXAN":[function(require,module,exports) {
4201
+var cloneArrayBuffer = require('./_cloneArrayBuffer');
4202
+
4203
+/**
4204
+ * Creates a clone of `typedArray`.
4205
+ *
4206
+ * @private
4207
+ * @param {Object} typedArray The typed array to clone.
4208
+ * @param {boolean} [isDeep] Specify a deep clone.
4209
+ * @returns {Object} Returns the cloned typed array.
4210
+ */
4211
+function cloneTypedArray(typedArray, isDeep) {
4212
+  var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
4213
+  return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
4214
+}
4215
+
4216
+module.exports = cloneTypedArray;
4217
+
4218
+},{"./_cloneArrayBuffer":"zb3a"}],"Mkgn":[function(require,module,exports) {
4219
+/**
4220
+ * Copies the values of `source` to `array`.
4221
+ *
4222
+ * @private
4223
+ * @param {Array} source The array to copy values from.
4224
+ * @param {Array} [array=[]] The array to copy values to.
4225
+ * @returns {Array} Returns `array`.
4226
+ */
4227
+function copyArray(source, array) {
4228
+  var index = -1,
4229
+      length = source.length;
4230
+
4231
+  array || (array = Array(length));
4232
+  while (++index < length) {
4233
+    array[index] = source[index];
4234
+  }
4235
+  return array;
4236
+}
4237
+
4238
+module.exports = copyArray;
4239
+
4240
+},{}],"ga8q":[function(require,module,exports) {
4241
+var isObject = require('./isObject');
4242
+
4243
+/** Built-in value references. */
4244
+var objectCreate = Object.create;
4245
+
4246
+/**
4247
+ * The base implementation of `_.create` without support for assigning
4248
+ * properties to the created object.
4249
+ *
4250
+ * @private
4251
+ * @param {Object} proto The object to inherit from.
4252
+ * @returns {Object} Returns the new object.
4253
+ */
4254
+var baseCreate = (function() {
4255
+  function object() {}
4256
+  return function(proto) {
4257
+    if (!isObject(proto)) {
4258
+      return {};
4259
+    }
4260
+    if (objectCreate) {
4261
+      return objectCreate(proto);
4262
+    }
4263
+    object.prototype = proto;
4264
+    var result = new object;
4265
+    object.prototype = undefined;
4266
+    return result;
4267
+  };
4268
+}());
4269
+
4270
+module.exports = baseCreate;
4271
+
4272
+},{"./isObject":"u9vI"}],"4/4o":[function(require,module,exports) {
4273
+/**
4274
+ * Creates a unary function that invokes `func` with its argument transformed.
4275
+ *
4276
+ * @private
4277
+ * @param {Function} func The function to wrap.
4278
+ * @param {Function} transform The argument transform.
4279
+ * @returns {Function} Returns the new function.
4280
+ */
4281
+function overArg(func, transform) {
4282
+  return function(arg) {
4283
+    return func(transform(arg));
4284
+  };
4285
+}
4286
+
4287
+module.exports = overArg;
4288
+
4289
+},{}],"CXf5":[function(require,module,exports) {
4290
+var overArg = require('./_overArg');
4291
+
4292
+/** Built-in value references. */
4293
+var getPrototype = overArg(Object.getPrototypeOf, Object);
4294
+
4295
+module.exports = getPrototype;
4296
+
4297
+},{"./_overArg":"4/4o"}],"nhsl":[function(require,module,exports) {
4298
+/** Used for built-in method references. */
4299
+var objectProto = Object.prototype;
4300
+
4301
+/**
4302
+ * Checks if `value` is likely a prototype object.
4303
+ *
4304
+ * @private
4305
+ * @param {*} value The value to check.
4306
+ * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
4307
+ */
4308
+function isPrototype(value) {
4309
+  var Ctor = value && value.constructor,
4310
+      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
4311
+
4312
+  return value === proto;
4313
+}
4314
+
4315
+module.exports = isPrototype;
4316
+
4317
+},{}],"qE2F":[function(require,module,exports) {
4318
+var baseCreate = require('./_baseCreate'),
4319
+    getPrototype = require('./_getPrototype'),
4320
+    isPrototype = require('./_isPrototype');
4321
+
4322
+/**
4323
+ * Initializes an object clone.
4324
+ *
4325
+ * @private
4326
+ * @param {Object} object The object to clone.
4327
+ * @returns {Object} Returns the initialized clone.
4328
+ */
4329
+function initCloneObject(object) {
4330
+  return (typeof object.constructor == 'function' && !isPrototype(object))
4331
+    ? baseCreate(getPrototype(object))
4332
+    : {};
4333
+}
4334
+
4335
+module.exports = initCloneObject;
4336
+
4337
+},{"./_baseCreate":"ga8q","./_getPrototype":"CXf5","./_isPrototype":"nhsl"}],"OuyB":[function(require,module,exports) {
4338
+/**
4339
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
4340
+ * and has a `typeof` result of "object".
4341
+ *
4342
+ * @static
4343
+ * @memberOf _
4344
+ * @since 4.0.0
4345
+ * @category Lang
4346
+ * @param {*} value The value to check.
4347
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
4348
+ * @example
4349
+ *
4350
+ * _.isObjectLike({});
4351
+ * // => true
4352
+ *
4353
+ * _.isObjectLike([1, 2, 3]);
4354
+ * // => true
4355
+ *
4356
+ * _.isObjectLike(_.noop);
4357
+ * // => false
4358
+ *
4359
+ * _.isObjectLike(null);
4360
+ * // => false
4361
+ */
4362
+function isObjectLike(value) {
4363
+  return value != null && typeof value == 'object';
4364
+}
4365
+
4366
+module.exports = isObjectLike;
4367
+
4368
+},{}],"pK4Y":[function(require,module,exports) {
4369
+var baseGetTag = require('./_baseGetTag'),
4370
+    isObjectLike = require('./isObjectLike');
4371
+
4372
+/** `Object#toString` result references. */
4373
+var argsTag = '[object Arguments]';
4374
+
4375
+/**
4376
+ * The base implementation of `_.isArguments`.
4377
+ *
4378
+ * @private
4379
+ * @param {*} value The value to check.
4380
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
4381
+ */
4382
+function baseIsArguments(value) {
4383
+  return isObjectLike(value) && baseGetTag(value) == argsTag;
4384
+}
4385
+
4386
+module.exports = baseIsArguments;
4387
+
4388
+},{"./_baseGetTag":"e5TX","./isObjectLike":"OuyB"}],"3til":[function(require,module,exports) {
4389
+var baseIsArguments = require('./_baseIsArguments'),
4390
+    isObjectLike = require('./isObjectLike');
4391
+
4392
+/** Used for built-in method references. */
4393
+var objectProto = Object.prototype;
4394
+
4395
+/** Used to check objects for own properties. */
4396
+var hasOwnProperty = objectProto.hasOwnProperty;
4397
+
4398
+/** Built-in value references. */
4399
+var propertyIsEnumerable = objectProto.propertyIsEnumerable;
4400
+
4401
+/**
4402
+ * Checks if `value` is likely an `arguments` object.
4403
+ *
4404
+ * @static
4405
+ * @memberOf _
4406
+ * @since 0.1.0
4407
+ * @category Lang
4408
+ * @param {*} value The value to check.
4409
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
4410
+ *  else `false`.
4411
+ * @example
4412
+ *
4413
+ * _.isArguments(function() { return arguments; }());
4414
+ * // => true
4415
+ *
4416
+ * _.isArguments([1, 2, 3]);
4417
+ * // => false
4418
+ */
4419
+var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
4420
+  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
4421
+    !propertyIsEnumerable.call(value, 'callee');
4422
+};
4423
+
4424
+module.exports = isArguments;
4425
+
4426
+},{"./_baseIsArguments":"pK4Y","./isObjectLike":"OuyB"}],"p/0c":[function(require,module,exports) {
4427
+/**
4428
+ * Checks if `value` is classified as an `Array` object.
4429
+ *
4430
+ * @static
4431
+ * @memberOf _
4432
+ * @since 0.1.0
4433
+ * @category Lang
4434
+ * @param {*} value The value to check.
4435
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
4436
+ * @example
4437
+ *
4438
+ * _.isArray([1, 2, 3]);
4439
+ * // => true
4440
+ *
4441
+ * _.isArray(document.body.children);
4442
+ * // => false
4443
+ *
4444
+ * _.isArray('abc');
4445
+ * // => false
4446
+ *
4447
+ * _.isArray(_.noop);
4448
+ * // => false
4449
+ */
4450
+var isArray = Array.isArray;
4451
+
4452
+module.exports = isArray;
4453
+
4454
+},{}],"GmNU":[function(require,module,exports) {
4455
+/** Used as references for various `Number` constants. */
4456
+var MAX_SAFE_INTEGER = 9007199254740991;
4457
+
4458
+/**
4459
+ * Checks if `value` is a valid array-like length.
4460
+ *
4461
+ * **Note:** This method is loosely based on
4462
+ * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
4463
+ *
4464
+ * @static
4465
+ * @memberOf _
4466
+ * @since 4.0.0
4467
+ * @category Lang
4468
+ * @param {*} value The value to check.
4469
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
4470
+ * @example
4471
+ *
4472
+ * _.isLength(3);
4473
+ * // => true
4474
+ *
4475
+ * _.isLength(Number.MIN_VALUE);
4476
+ * // => false
4477
+ *
4478
+ * _.isLength(Infinity);
4479
+ * // => false
4480
+ *
4481
+ * _.isLength('3');
4482
+ * // => false
4483
+ */
4484
+function isLength(value) {
4485
+  return typeof value == 'number' &&
4486
+    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
4487
+}
4488
+
4489
+module.exports = isLength;
4490
+
4491
+},{}],"LN6c":[function(require,module,exports) {
4492
+var isFunction = require('./isFunction'),
4493
+    isLength = require('./isLength');
4494
+
4495
+/**
4496
+ * Checks if `value` is array-like. A value is considered array-like if it's
4497
+ * not a function and has a `value.length` that's an integer greater than or
4498
+ * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
4499
+ *
4500
+ * @static
4501
+ * @memberOf _
4502
+ * @since 4.0.0
4503
+ * @category Lang
4504
+ * @param {*} value The value to check.
4505
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
4506
+ * @example
4507
+ *
4508
+ * _.isArrayLike([1, 2, 3]);
4509
+ * // => true
4510
+ *
4511
+ * _.isArrayLike(document.body.children);
4512
+ * // => true
4513
+ *
4514
+ * _.isArrayLike('abc');
4515
+ * // => true
4516
+ *
4517
+ * _.isArrayLike(_.noop);
4518
+ * // => false
4519
+ */
4520
+function isArrayLike(value) {
4521
+  return value != null && isLength(value.length) && !isFunction(value);
4522
+}
4523
+
4524
+module.exports = isArrayLike;
4525
+
4526
+},{"./isFunction":"dRuq","./isLength":"GmNU"}],"FwQQ":[function(require,module,exports) {
4527
+var isArrayLike = require('./isArrayLike'),
4528
+    isObjectLike = require('./isObjectLike');
4529
+
4530
+/**
4531
+ * This method is like `_.isArrayLike` except that it also checks if `value`
4532
+ * is an object.
4533
+ *
4534
+ * @static
4535
+ * @memberOf _
4536
+ * @since 4.0.0
4537
+ * @category Lang
4538
+ * @param {*} value The value to check.
4539
+ * @returns {boolean} Returns `true` if `value` is an array-like object,
4540
+ *  else `false`.
4541
+ * @example
4542
+ *
4543
+ * _.isArrayLikeObject([1, 2, 3]);
4544
+ * // => true
4545
+ *
4546
+ * _.isArrayLikeObject(document.body.children);
4547
+ * // => true
4548
+ *
4549
+ * _.isArrayLikeObject('abc');
4550
+ * // => false
4551
+ *
4552
+ * _.isArrayLikeObject(_.noop);
4553
+ * // => false
4554
+ */
4555
+function isArrayLikeObject(value) {
4556
+  return isObjectLike(value) && isArrayLike(value);
4557
+}
4558
+
4559
+module.exports = isArrayLikeObject;
4560
+
4561
+},{"./isArrayLike":"LN6c","./isObjectLike":"OuyB"}],"PYZb":[function(require,module,exports) {
4562
+/**
4563
+ * This method returns `false`.
4564
+ *
4565
+ * @static
4566
+ * @memberOf _
4567
+ * @since 4.13.0
4568
+ * @category Util
4569
+ * @returns {boolean} Returns `false`.
4570
+ * @example
4571
+ *
4572
+ * _.times(2, _.stubFalse);
4573
+ * // => [false, false]
4574
+ */
4575
+function stubFalse() {
4576
+  return false;
4577
+}
4578
+
4579
+module.exports = stubFalse;
4580
+
4581
+},{}],"iyC2":[function(require,module,exports) {
4582
+
4583
+var root = require('./_root'),
4584
+    stubFalse = require('./stubFalse');
4585
+
4586
+/** Detect free variable `exports`. */
4587
+var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
4588
+
4589
+/** Detect free variable `module`. */
4590
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
4591
+
4592
+/** Detect the popular CommonJS extension `module.exports`. */
4593
+var moduleExports = freeModule && freeModule.exports === freeExports;
4594
+
4595
+/** Built-in value references. */
4596
+var Buffer = moduleExports ? root.Buffer : undefined;
4597
+
4598
+/* Built-in method references for those with the same name as other `lodash` methods. */
4599
+var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
4600
+
4601
+/**
4602
+ * Checks if `value` is a buffer.
4603
+ *
4604
+ * @static
4605
+ * @memberOf _
4606
+ * @since 4.3.0
4607
+ * @category Lang
4608
+ * @param {*} value The value to check.
4609
+ * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
4610
+ * @example
4611
+ *
4612
+ * _.isBuffer(new Buffer(2));
4613
+ * // => true
4614
+ *
4615
+ * _.isBuffer(new Uint8Array(2));
4616
+ * // => false
4617
+ */
4618
+var isBuffer = nativeIsBuffer || stubFalse;
4619
+
4620
+module.exports = isBuffer;
4621
+
4622
+},{"./_root":"MIhM","./stubFalse":"PYZb"}],"ES04":[function(require,module,exports) {
4623
+var baseGetTag = require('./_baseGetTag'),
4624
+    getPrototype = require('./_getPrototype'),
4625
+    isObjectLike = require('./isObjectLike');
4626
+
4627
+/** `Object#toString` result references. */
4628
+var objectTag = '[object Object]';
4629
+
4630
+/** Used for built-in method references. */
4631
+var funcProto = Function.prototype,
4632
+    objectProto = Object.prototype;
4633
+
4634
+/** Used to resolve the decompiled source of functions. */
4635
+var funcToString = funcProto.toString;
4636
+
4637
+/** Used to check objects for own properties. */
4638
+var hasOwnProperty = objectProto.hasOwnProperty;
4639
+
4640
+/** Used to infer the `Object` constructor. */
4641
+var objectCtorString = funcToString.call(Object);
4642
+
4643
+/**
4644
+ * Checks if `value` is a plain object, that is, an object created by the
4645
+ * `Object` constructor or one with a `[[Prototype]]` of `null`.
4646
+ *
4647
+ * @static
4648
+ * @memberOf _
4649
+ * @since 0.8.0
4650
+ * @category Lang
4651
+ * @param {*} value The value to check.
4652
+ * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
4653
+ * @example
4654
+ *
4655
+ * function Foo() {
4656
+ *   this.a = 1;
4657
+ * }
4658
+ *
4659
+ * _.isPlainObject(new Foo);
4660
+ * // => false
4661
+ *
4662
+ * _.isPlainObject([1, 2, 3]);
4663
+ * // => false
4664
+ *
4665
+ * _.isPlainObject({ 'x': 0, 'y': 0 });
4666
+ * // => true
4667
+ *
4668
+ * _.isPlainObject(Object.create(null));
4669
+ * // => true
4670
+ */
4671
+function isPlainObject(value) {
4672
+  if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
4673
+    return false;
4674
+  }
4675
+  var proto = getPrototype(value);
4676
+  if (proto === null) {
4677
+    return true;
4678
+  }
4679
+  var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
4680
+  return typeof Ctor == 'function' && Ctor instanceof Ctor &&
4681
+    funcToString.call(Ctor) == objectCtorString;
4682
+}
4683
+
4684
+module.exports = isPlainObject;
4685
+
4686
+},{"./_baseGetTag":"e5TX","./_getPrototype":"CXf5","./isObjectLike":"OuyB"}],"2L2L":[function(require,module,exports) {
4687
+var baseGetTag = require('./_baseGetTag'),
4688
+    isLength = require('./isLength'),
4689
+    isObjectLike = require('./isObjectLike');
4690
+
4691
+/** `Object#toString` result references. */
4692
+var argsTag = '[object Arguments]',
4693
+    arrayTag = '[object Array]',
4694
+    boolTag = '[object Boolean]',
4695
+    dateTag = '[object Date]',
4696
+    errorTag = '[object Error]',
4697
+    funcTag = '[object Function]',
4698
+    mapTag = '[object Map]',
4699
+    numberTag = '[object Number]',
4700
+    objectTag = '[object Object]',
4701
+    regexpTag = '[object RegExp]',
4702
+    setTag = '[object Set]',
4703
+    stringTag = '[object String]',
4704
+    weakMapTag = '[object WeakMap]';
4705
+
4706
+var arrayBufferTag = '[object ArrayBuffer]',
4707
+    dataViewTag = '[object DataView]',
4708
+    float32Tag = '[object Float32Array]',
4709
+    float64Tag = '[object Float64Array]',
4710
+    int8Tag = '[object Int8Array]',
4711
+    int16Tag = '[object Int16Array]',
4712
+    int32Tag = '[object Int32Array]',
4713
+    uint8Tag = '[object Uint8Array]',
4714
+    uint8ClampedTag = '[object Uint8ClampedArray]',
4715
+    uint16Tag = '[object Uint16Array]',
4716
+    uint32Tag = '[object Uint32Array]';
4717
+
4718
+/** Used to identify `toStringTag` values of typed arrays. */
4719
+var typedArrayTags = {};
4720
+typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
4721
+typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
4722
+typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
4723
+typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
4724
+typedArrayTags[uint32Tag] = true;
4725
+typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
4726
+typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
4727
+typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
4728
+typedArrayTags[errorTag] = typedArrayTags[funcTag] =
4729
+typedArrayTags[mapTag] = typedArrayTags[numberTag] =
4730
+typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
4731
+typedArrayTags[setTag] = typedArrayTags[stringTag] =
4732
+typedArrayTags[weakMapTag] = false;
4733
+
4734
+/**
4735
+ * The base implementation of `_.isTypedArray` without Node.js optimizations.
4736
+ *
4737
+ * @private
4738
+ * @param {*} value The value to check.
4739
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
4740
+ */
4741
+function baseIsTypedArray(value) {
4742
+  return isObjectLike(value) &&
4743
+    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
4744
+}
4745
+
4746
+module.exports = baseIsTypedArray;
4747
+
4748
+},{"./_baseGetTag":"e5TX","./isLength":"GmNU","./isObjectLike":"OuyB"}],"PnXa":[function(require,module,exports) {
4749
+/**
4750
+ * The base implementation of `_.unary` without support for storing metadata.
4751
+ *
4752
+ * @private
4753
+ * @param {Function} func The function to cap arguments for.
4754
+ * @returns {Function} Returns the new capped function.
4755
+ */
4756
+function baseUnary(func) {
4757
+  return function(value) {
4758
+    return func(value);
4759
+  };
4760
+}
4761
+
4762
+module.exports = baseUnary;
4763
+
4764
+},{}],"PBPf":[function(require,module,exports) {
4765
+var freeGlobal = require('./_freeGlobal');
4766
+
4767
+/** Detect free variable `exports`. */
4768
+var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
4769
+
4770
+/** Detect free variable `module`. */
4771
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
4772
+
4773
+/** Detect the popular CommonJS extension `module.exports`. */
4774
+var moduleExports = freeModule && freeModule.exports === freeExports;
4775
+
4776
+/** Detect free variable `process` from Node.js. */
4777
+var freeProcess = moduleExports && freeGlobal.process;
4778
+
4779
+/** Used to access faster Node.js helpers. */
4780
+var nodeUtil = (function() {
4781
+  try {
4782
+    // Use `util.types` for Node.js 10+.
4783
+    var types = freeModule && freeModule.require && freeModule.require('util').types;
4784
+
4785
+    if (types) {
4786
+      return types;
4787
+    }
4788
+
4789
+    // Legacy `process.binding('util')` for Node.js < 10.
4790
+    return freeProcess && freeProcess.binding && freeProcess.binding('util');
4791
+  } catch (e) {}
4792
+}());
4793
+
4794
+module.exports = nodeUtil;
4795
+
4796
+},{"./_freeGlobal":"j3D9"}],"kwIb":[function(require,module,exports) {
4797
+var baseIsTypedArray = require('./_baseIsTypedArray'),
4798
+    baseUnary = require('./_baseUnary'),
4799
+    nodeUtil = require('./_nodeUtil');
4800
+
4801
+/* Node.js helper references. */
4802
+var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
4803
+
4804
+/**
4805
+ * Checks if `value` is classified as a typed array.
4806
+ *
4807
+ * @static
4808
+ * @memberOf _
4809
+ * @since 3.0.0
4810
+ * @category Lang
4811
+ * @param {*} value The value to check.
4812
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
4813
+ * @example
4814
+ *
4815
+ * _.isTypedArray(new Uint8Array);
4816
+ * // => true
4817
+ *
4818
+ * _.isTypedArray([]);
4819
+ * // => false
4820
+ */
4821
+var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
4822
+
4823
+module.exports = isTypedArray;
4824
+
4825
+},{"./_baseIsTypedArray":"2L2L","./_baseUnary":"PnXa","./_nodeUtil":"PBPf"}],"vW3g":[function(require,module,exports) {
4826
+/**
4827
+ * Gets the value at `key`, unless `key` is "__proto__".
4828
+ *
4829
+ * @private
4830
+ * @param {Object} object The object to query.
4831
+ * @param {string} key The key of the property to get.
4832
+ * @returns {*} Returns the property value.
4833
+ */
4834
+function safeGet(object, key) {
4835
+  if (key == '__proto__') {
4836
+    return;
4837
+  }
4838
+
4839
+  return object[key];
4840
+}
4841
+
4842
+module.exports = safeGet;
4843
+
4844
+},{}],"p/s9":[function(require,module,exports) {
4845
+var baseAssignValue = require('./_baseAssignValue'),
4846
+    eq = require('./eq');
4847
+
4848
+/** Used for built-in method references. */
4849
+var objectProto = Object.prototype;
4850
+
4851
+/** Used to check objects for own properties. */
4852
+var hasOwnProperty = objectProto.hasOwnProperty;
4853
+
4854
+/**
4855
+ * Assigns `value` to `key` of `object` if the existing value is not equivalent
4856
+ * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
4857
+ * for equality comparisons.
4858
+ *
4859
+ * @private
4860
+ * @param {Object} object The object to modify.
4861
+ * @param {string} key The key of the property to assign.
4862
+ * @param {*} value The value to assign.
4863
+ */
4864
+function assignValue(object, key, value) {
4865
+  var objValue = object[key];
4866
+  if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
4867
+      (value === undefined && !(key in object))) {
4868
+    baseAssignValue(object, key, value);
4869
+  }
4870
+}
4871
+
4872
+module.exports = assignValue;
4873
+
4874
+},{"./_baseAssignValue":"d05+","./eq":"LIpy"}],"dtkN":[function(require,module,exports) {
4875
+var assignValue = require('./_assignValue'),
4876
+    baseAssignValue = require('./_baseAssignValue');
4877
+
4878
+/**
4879
+ * Copies properties of `source` to `object`.
4880
+ *
4881
+ * @private
4882
+ * @param {Object} source The object to copy properties from.
4883
+ * @param {Array} props The property identifiers to copy.
4884
+ * @param {Object} [object={}] The object to copy properties to.
4885
+ * @param {Function} [customizer] The function to customize copied values.
4886
+ * @returns {Object} Returns `object`.
4887
+ */
4888
+function copyObject(source, props, object, customizer) {
4889
+  var isNew = !object;
4890
+  object || (object = {});
4891
+
4892
+  var index = -1,
4893
+      length = props.length;
4894
+
4895
+  while (++index < length) {
4896
+    var key = props[index];
4897
+
4898
+    var newValue = customizer
4899
+      ? customizer(object[key], source[key], key, object, source)
4900
+      : undefined;
4901
+
4902
+    if (newValue === undefined) {
4903
+      newValue = source[key];
4904
+    }
4905
+    if (isNew) {
4906
+      baseAssignValue(object, key, newValue);
4907
+    } else {
4908
+      assignValue(object, key, newValue);
4909
+    }
4910
+  }
4911
+  return object;
4912
+}
4913
+
4914
+module.exports = copyObject;
4915
+
4916
+},{"./_assignValue":"p/s9","./_baseAssignValue":"d05+"}],"r8MY":[function(require,module,exports) {
4917
+/**
4918
+ * The base implementation of `_.times` without support for iteratee shorthands
4919
+ * or max array length checks.
4920
+ *
4921
+ * @private
4922
+ * @param {number} n The number of times to invoke `iteratee`.
4923
+ * @param {Function} iteratee The function invoked per iteration.
4924
+ * @returns {Array} Returns the array of results.
4925
+ */
4926
+function baseTimes(n, iteratee) {
4927
+  var index = -1,
4928
+      result = Array(n);
4929
+
4930
+  while (++index < n) {
4931
+    result[index] = iteratee(index);
4932
+  }
4933
+  return result;
4934
+}
4935
+
4936
+module.exports = baseTimes;
4937
+
4938
+},{}],"A+gr":[function(require,module,exports) {
4939
+/** Used as references for various `Number` constants. */
4940
+var MAX_SAFE_INTEGER = 9007199254740991;
4941
+
4942
+/** Used to detect unsigned integer values. */
4943
+var reIsUint = /^(?:0|[1-9]\d*)$/;
4944
+
4945
+/**
4946
+ * Checks if `value` is a valid array-like index.
4947
+ *
4948
+ * @private
4949
+ * @param {*} value The value to check.
4950
+ * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
4951
+ * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
4952
+ */
4953
+function isIndex(value, length) {
4954
+  var type = typeof value;
4955
+  length = length == null ? MAX_SAFE_INTEGER : length;
4956
+
4957
+  return !!length &&
4958
+    (type == 'number' ||
4959
+      (type != 'symbol' && reIsUint.test(value))) &&
4960
+        (value > -1 && value % 1 == 0 && value < length);
4961
+}
4962
+
4963
+module.exports = isIndex;
4964
+
4965
+},{}],"VcL+":[function(require,module,exports) {
4966
+var baseTimes = require('./_baseTimes'),
4967
+    isArguments = require('./isArguments'),
4968
+    isArray = require('./isArray'),
4969
+    isBuffer = require('./isBuffer'),
4970
+    isIndex = require('./_isIndex'),
4971
+    isTypedArray = require('./isTypedArray');
4972
+
4973
+/** Used for built-in method references. */
4974
+var objectProto = Object.prototype;
4975
+
4976
+/** Used to check objects for own properties. */
4977
+var hasOwnProperty = objectProto.hasOwnProperty;
4978
+
4979
+/**
4980
+ * Creates an array of the enumerable property names of the array-like `value`.
4981
+ *
4982
+ * @private
4983
+ * @param {*} value The value to query.
4984
+ * @param {boolean} inherited Specify returning inherited property names.
4985
+ * @returns {Array} Returns the array of property names.
4986
+ */
4987
+function arrayLikeKeys(value, inherited) {
4988
+  var isArr = isArray(value),
4989
+      isArg = !isArr && isArguments(value),
4990
+      isBuff = !isArr && !isArg && isBuffer(value),
4991
+      isType = !isArr && !isArg && !isBuff && isTypedArray(value),
4992
+      skipIndexes = isArr || isArg || isBuff || isType,
4993
+      result = skipIndexes ? baseTimes(value.length, String) : [],
4994
+      length = result.length;
4995
+
4996
+  for (var key in value) {
4997
+    if ((inherited || hasOwnProperty.call(value, key)) &&
4998
+        !(skipIndexes && (
4999
+           // Safari 9 has enumerable `arguments.length` in strict mode.
5000
+           key == 'length' ||
5001
+           // Node.js 0.10 has enumerable non-index properties on buffers.
5002
+           (isBuff && (key == 'offset' || key == 'parent')) ||
5003
+           // PhantomJS 2 has enumerable non-index properties on typed arrays.
5004
+           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
5005
+           // Skip index properties.
5006
+           isIndex(key, length)
5007
+        ))) {
5008
+      result.push(key);
5009
+    }
5010
+  }
5011
+  return result;
5012
+}
5013
+
5014
+module.exports = arrayLikeKeys;
5015
+
5016
+},{"./_baseTimes":"r8MY","./isArguments":"3til","./isArray":"p/0c","./isBuffer":"iyC2","./_isIndex":"A+gr","./isTypedArray":"kwIb"}],"uy4o":[function(require,module,exports) {
5017
+/**
5018
+ * This function is like
5019
+ * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
5020
+ * except that it includes inherited enumerable properties.
5021
+ *
5022
+ * @private
5023
+ * @param {Object} object The object to query.
5024
+ * @returns {Array} Returns the array of property names.
5025
+ */
5026
+function nativeKeysIn(object) {
5027
+  var result = [];
5028
+  if (object != null) {
5029
+    for (var key in Object(object)) {
5030
+      result.push(key);
5031
+    }
5032
+  }
5033
+  return result;
5034
+}
5035
+
5036
+module.exports = nativeKeysIn;
5037
+
5038
+},{}],"9FAS":[function(require,module,exports) {
5039
+var isObject = require('./isObject'),
5040
+    isPrototype = require('./_isPrototype'),
5041
+    nativeKeysIn = require('./_nativeKeysIn');
5042
+
5043
+/** Used for built-in method references. */
5044
+var objectProto = Object.prototype;
5045
+
5046
+/** Used to check objects for own properties. */
5047
+var hasOwnProperty = objectProto.hasOwnProperty;
5048
+
5049
+/**
5050
+ * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
5051
+ *
5052
+ * @private
5053
+ * @param {Object} object The object to query.
5054
+ * @returns {Array} Returns the array of property names.
5055
+ */
5056
+function baseKeysIn(object) {
5057
+  if (!isObject(object)) {
5058
+    return nativeKeysIn(object);
5059
+  }
5060
+  var isProto = isPrototype(object),
5061
+      result = [];
5062
+
5063
+  for (var key in object) {
5064
+    if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
5065
+      result.push(key);
5066
+    }
5067
+  }
5068
+  return result;
5069
+}
5070
+
5071
+module.exports = baseKeysIn;
5072
+
5073
+},{"./isObject":"u9vI","./_isPrototype":"nhsl","./_nativeKeysIn":"uy4o"}],"+UAC":[function(require,module,exports) {
5074
+var arrayLikeKeys = require('./_arrayLikeKeys'),
5075
+    baseKeysIn = require('./_baseKeysIn'),
5076
+    isArrayLike = require('./isArrayLike');
5077
+
5078
+/**
5079
+ * Creates an array of the own and inherited enumerable property names of `object`.
5080
+ *
5081
+ * **Note:** Non-object values are coerced to objects.
5082
+ *
5083
+ * @static
5084
+ * @memberOf _
5085
+ * @since 3.0.0
5086
+ * @category Object
5087
+ * @param {Object} object The object to query.
5088
+ * @returns {Array} Returns the array of property names.
5089
+ * @example
5090
+ *
5091
+ * function Foo() {
5092
+ *   this.a = 1;
5093
+ *   this.b = 2;
5094
+ * }
5095
+ *
5096
+ * Foo.prototype.c = 3;
5097
+ *
5098
+ * _.keysIn(new Foo);
5099
+ * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
5100
+ */
5101
+function keysIn(object) {
5102
+  return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
5103
+}
5104
+
5105
+module.exports = keysIn;
5106
+
5107
+},{"./_arrayLikeKeys":"VcL+","./_baseKeysIn":"9FAS","./isArrayLike":"LN6c"}],"92s5":[function(require,module,exports) {
5108
+var copyObject = require('./_copyObject'),
5109
+    keysIn = require('./keysIn');
5110
+
5111
+/**
5112
+ * Converts `value` to a plain object flattening inherited enumerable string
5113
+ * keyed properties of `value` to own properties of the plain object.
5114
+ *
5115
+ * @static
5116
+ * @memberOf _
5117
+ * @since 3.0.0
5118
+ * @category Lang
5119
+ * @param {*} value The value to convert.
5120
+ * @returns {Object} Returns the converted plain object.
5121
+ * @example
5122
+ *
5123
+ * function Foo() {
5124
+ *   this.b = 2;
5125
+ * }
5126
+ *
5127
+ * Foo.prototype.c = 3;
5128
+ *
5129
+ * _.assign({ 'a': 1 }, new Foo);
5130
+ * // => { 'a': 1, 'b': 2 }
5131
+ *
5132
+ * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
5133
+ * // => { 'a': 1, 'b': 2, 'c': 3 }
5134
+ */
5135
+function toPlainObject(value) {
5136
+  return copyObject(value, keysIn(value));
5137
+}
5138
+
5139
+module.exports = toPlainObject;
5140
+
5141
+},{"./_copyObject":"dtkN","./keysIn":"+UAC"}],"XsjK":[function(require,module,exports) {
5142
+var assignMergeValue = require('./_assignMergeValue'),
5143
+    cloneBuffer = require('./_cloneBuffer'),
5144
+    cloneTypedArray = require('./_cloneTypedArray'),
5145
+    copyArray = require('./_copyArray'),
5146
+    initCloneObject = require('./_initCloneObject'),
5147
+    isArguments = require('./isArguments'),
5148
+    isArray = require('./isArray'),
5149
+    isArrayLikeObject = require('./isArrayLikeObject'),
5150
+    isBuffer = require('./isBuffer'),
5151
+    isFunction = require('./isFunction'),
5152
+    isObject = require('./isObject'),
5153
+    isPlainObject = require('./isPlainObject'),
5154
+    isTypedArray = require('./isTypedArray'),
5155
+    safeGet = require('./_safeGet'),
5156
+    toPlainObject = require('./toPlainObject');
5157
+
5158
+/**
5159
+ * A specialized version of `baseMerge` for arrays and objects which performs
5160
+ * deep merges and tracks traversed objects enabling objects with circular
5161
+ * references to be merged.
5162
+ *
5163
+ * @private
5164
+ * @param {Object} object The destination object.
5165
+ * @param {Object} source The source object.
5166
+ * @param {string} key The key of the value to merge.
5167
+ * @param {number} srcIndex The index of `source`.
5168
+ * @param {Function} mergeFunc The function to merge values.
5169
+ * @param {Function} [customizer] The function to customize assigned values.
5170
+ * @param {Object} [stack] Tracks traversed source values and their merged
5171
+ *  counterparts.
5172
+ */
5173
+function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {
5174
+  var objValue = safeGet(object, key),
5175
+      srcValue = safeGet(source, key),
5176
+      stacked = stack.get(srcValue);
5177
+
5178
+  if (stacked) {
5179
+    assignMergeValue(object, key, stacked);
5180
+    return;
5181
+  }
5182
+  var newValue = customizer
5183
+    ? customizer(objValue, srcValue, (key + ''), object, source, stack)
5184
+    : undefined;
5185
+
5186
+  var isCommon = newValue === undefined;
5187
+
5188
+  if (isCommon) {
5189
+    var isArr = isArray(srcValue),
5190
+        isBuff = !isArr && isBuffer(srcValue),
5191
+        isTyped = !isArr && !isBuff && isTypedArray(srcValue);
5192
+
5193
+    newValue = srcValue;
5194
+    if (isArr || isBuff || isTyped) {
5195
+      if (isArray(objValue)) {
5196
+        newValue = objValue;
5197
+      }
5198
+      else if (isArrayLikeObject(objValue)) {
5199
+        newValue = copyArray(objValue);
5200
+      }
5201
+      else if (isBuff) {
5202
+        isCommon = false;
5203
+        newValue = cloneBuffer(srcValue, true);
5204
+      }
5205
+      else if (isTyped) {
5206
+        isCommon = false;
5207
+        newValue = cloneTypedArray(srcValue, true);
5208
+      }
5209
+      else {
5210
+        newValue = [];
5211
+      }
5212
+    }
5213
+    else if (isPlainObject(srcValue) || isArguments(srcValue)) {
5214
+      newValue = objValue;
5215
+      if (isArguments(objValue)) {
5216
+        newValue = toPlainObject(objValue);
5217
+      }
5218
+      else if (!isObject(objValue) || isFunction(objValue)) {
5219
+        newValue = initCloneObject(srcValue);
5220
+      }
5221
+    }
5222
+    else {
5223
+      isCommon = false;
5224
+    }
5225
+  }
5226
+  if (isCommon) {
5227
+    // Recursively merge objects and arrays (susceptible to call stack limits).
5228
+    stack.set(srcValue, newValue);
5229
+    mergeFunc(newValue, srcValue, srcIndex, customizer, stack);
5230
+    stack['delete'](srcValue);
5231
+  }
5232
+  assignMergeValue(object, key, newValue);
5233
+}
5234
+
5235
+module.exports = baseMergeDeep;
5236
+
5237
+},{"./_assignMergeValue":"2Tdb","./_cloneBuffer":"s4SJ","./_cloneTypedArray":"jXAN","./_copyArray":"Mkgn","./_initCloneObject":"qE2F","./isArguments":"3til","./isArray":"p/0c","./isArrayLikeObject":"FwQQ","./isBuffer":"iyC2","./isFunction":"dRuq","./isObject":"u9vI","./isPlainObject":"ES04","./isTypedArray":"kwIb","./_safeGet":"vW3g","./toPlainObject":"92s5"}],"WqwZ":[function(require,module,exports) {
5238
+var Stack = require('./_Stack'),
5239
+    assignMergeValue = require('./_assignMergeValue'),
5240
+    baseFor = require('./_baseFor'),
5241
+    baseMergeDeep = require('./_baseMergeDeep'),
5242
+    isObject = require('./isObject'),
5243
+    keysIn = require('./keysIn'),
5244
+    safeGet = require('./_safeGet');
5245
+
5246
+/**
5247
+ * The base implementation of `_.merge` without support for multiple sources.
5248
+ *
5249
+ * @private
5250
+ * @param {Object} object The destination object.
5251
+ * @param {Object} source The source object.
5252
+ * @param {number} srcIndex The index of `source`.
5253
+ * @param {Function} [customizer] The function to customize merged values.
5254
+ * @param {Object} [stack] Tracks traversed source values and their merged
5255
+ *  counterparts.
5256
+ */
5257
+function baseMerge(object, source, srcIndex, customizer, stack) {
5258
+  if (object === source) {
5259
+    return;
5260
+  }
5261
+  baseFor(source, function(srcValue, key) {
5262
+    if (isObject(srcValue)) {
5263
+      stack || (stack = new Stack);
5264
+      baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
5265
+    }
5266
+    else {
5267
+      var newValue = customizer
5268
+        ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)
5269
+        : undefined;
5270
+
5271
+      if (newValue === undefined) {
5272
+        newValue = srcValue;
5273
+      }
5274
+      assignMergeValue(object, key, newValue);
5275
+    }
5276
+  }, keysIn);
5277
+}
5278
+
5279
+module.exports = baseMerge;
5280
+
5281
+},{"./_Stack":"49I8","./_assignMergeValue":"2Tdb","./_baseFor":"mduf","./_baseMergeDeep":"XsjK","./isObject":"u9vI","./keysIn":"+UAC","./_safeGet":"vW3g"}],"Jpv1":[function(require,module,exports) {
5282
+/**
5283
+ * This method returns the first argument it receives.
5284
+ *
5285
+ * @static
5286
+ * @since 0.1.0
5287
+ * @memberOf _
5288
+ * @category Util
5289
+ * @param {*} value Any value.
5290
+ * @returns {*} Returns `value`.
5291
+ * @example
5292
+ *
5293
+ * var object = { 'a': 1 };
5294
+ *
5295
+ * console.log(_.identity(object) === object);
5296
+ * // => true
5297
+ */
5298
+function identity(value) {
5299
+  return value;
5300
+}
5301
+
5302
+module.exports = identity;
5303
+
5304
+},{}],"a+zQ":[function(require,module,exports) {
5305
+/**
5306
+ * A faster alternative to `Function#apply`, this function invokes `func`
5307
+ * with the `this` binding of `thisArg` and the arguments of `args`.
5308
+ *
5309
+ * @private
5310
+ * @param {Function} func The function to invoke.
5311
+ * @param {*} thisArg The `this` binding of `func`.
5312
+ * @param {Array} args The arguments to invoke `func` with.
5313
+ * @returns {*} Returns the result of `func`.
5314
+ */
5315
+function apply(func, thisArg, args) {
5316
+  switch (args.length) {
5317
+    case 0: return func.call(thisArg);
5318
+    case 1: return func.call(thisArg, args[0]);
5319
+    case 2: return func.call(thisArg, args[0], args[1]);
5320
+    case 3: return func.call(thisArg, args[0], args[1], args[2]);
5321
+  }
5322
+  return func.apply(thisArg, args);
5323
+}
5324
+
5325
+module.exports = apply;
5326
+
5327
+},{}],"qXFa":[function(require,module,exports) {
5328
+var apply = require('./_apply');
5329
+
5330
+/* Built-in method references for those with the same name as other `lodash` methods. */
5331
+var nativeMax = Math.max;
5332
+
5333
+/**
5334
+ * A specialized version of `baseRest` which transforms the rest array.
5335
+ *
5336
+ * @private
5337
+ * @param {Function} func The function to apply a rest parameter to.
5338
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
5339
+ * @param {Function} transform The rest array transform.
5340
+ * @returns {Function} Returns the new function.
5341
+ */
5342
+function overRest(func, start, transform) {
5343
+  start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
5344
+  return function() {
5345
+    var args = arguments,
5346
+        index = -1,
5347
+        length = nativeMax(args.length - start, 0),
5348
+        array = Array(length);
5349
+
5350
+    while (++index < length) {
5351
+      array[index] = args[start + index];
5352
+    }
5353
+    index = -1;
5354
+    var otherArgs = Array(start + 1);
5355
+    while (++index < start) {
5356
+      otherArgs[index] = args[index];
5357
+    }
5358
+    otherArgs[start] = transform(array);
5359
+    return apply(func, this, otherArgs);
5360
+  };
5361
+}
5362
+
5363
+module.exports = overRest;
5364
+
5365
+},{"./_apply":"a+zQ"}],"WMV8":[function(require,module,exports) {
5366
+/**
5367
+ * Creates a function that returns `value`.
5368
+ *
5369
+ * @static
5370
+ * @memberOf _
5371
+ * @since 2.4.0
5372
+ * @category Util
5373
+ * @param {*} value The value to return from the new function.
5374
+ * @returns {Function} Returns the new constant function.
5375
+ * @example
5376
+ *
5377
+ * var objects = _.times(2, _.constant({ 'a': 1 }));
5378
+ *
5379
+ * console.log(objects);
5380
+ * // => [{ 'a': 1 }, { 'a': 1 }]
5381
+ *
5382
+ * console.log(objects[0] === objects[1]);
5383
+ * // => true
5384
+ */
5385
+function constant(value) {
5386
+  return function() {
5387
+    return value;
5388
+  };
5389
+}
5390
+
5391
+module.exports = constant;
5392
+
5393
+},{}],"UJWv":[function(require,module,exports) {
5394
+var constant = require('./constant'),
5395
+    defineProperty = require('./_defineProperty'),
5396
+    identity = require('./identity');
5397
+
5398
+/**
5399
+ * The base implementation of `setToString` without support for hot loop shorting.
5400
+ *
5401
+ * @private
5402
+ * @param {Function} func The function to modify.
5403
+ * @param {Function} string The `toString` result.
5404
+ * @returns {Function} Returns `func`.
5405
+ */
5406
+var baseSetToString = !defineProperty ? identity : function(func, string) {
5407
+  return defineProperty(func, 'toString', {
5408
+    'configurable': true,
5409
+    'enumerable': false,
5410
+    'value': constant(string),
5411
+    'writable': true
5412
+  });
5413
+};
5414
+
5415
+module.exports = baseSetToString;
5416
+
5417
+},{"./constant":"WMV8","./_defineProperty":"kAdy","./identity":"Jpv1"}],"2NNl":[function(require,module,exports) {
5418
+/** Used to detect hot functions by number of calls within a span of milliseconds. */
5419
+var HOT_COUNT = 800,
5420
+    HOT_SPAN = 16;
5421
+
5422
+/* Built-in method references for those with the same name as other `lodash` methods. */
5423
+var nativeNow = Date.now;
5424
+
5425
+/**
5426
+ * Creates a function that'll short out and invoke `identity` instead
5427
+ * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
5428
+ * milliseconds.
5429
+ *
5430
+ * @private
5431
+ * @param {Function} func The function to restrict.
5432
+ * @returns {Function} Returns the new shortable function.
5433
+ */
5434
+function shortOut(func) {
5435
+  var count = 0,
5436
+      lastCalled = 0;
5437
+
5438
+  return function() {
5439
+    var stamp = nativeNow(),
5440
+        remaining = HOT_SPAN - (stamp - lastCalled);
5441
+
5442
+    lastCalled = stamp;
5443
+    if (remaining > 0) {
5444
+      if (++count >= HOT_COUNT) {
5445
+        return arguments[0];
5446
+      }
5447
+    } else {
5448
+      count = 0;
5449
+    }
5450
+    return func.apply(undefined, arguments);
5451
+  };
5452
+}
5453
+
5454
+module.exports = shortOut;
5455
+
5456
+},{}],"KRxT":[function(require,module,exports) {
5457
+var baseSetToString = require('./_baseSetToString'),
5458
+    shortOut = require('./_shortOut');
5459
+
5460
+/**
5461
+ * Sets the `toString` method of `func` to return `string`.
5462
+ *
5463
+ * @private
5464
+ * @param {Function} func The function to modify.
5465
+ * @param {Function} string The `toString` result.
5466
+ * @returns {Function} Returns `func`.
5467
+ */
5468
+var setToString = shortOut(baseSetToString);
5469
+
5470
+module.exports = setToString;
5471
+
5472
+},{"./_baseSetToString":"UJWv","./_shortOut":"2NNl"}],"f4Fl":[function(require,module,exports) {
5473
+var identity = require('./identity'),
5474
+    overRest = require('./_overRest'),
5475
+    setToString = require('./_setToString');
5476
+
5477
+/**
5478
+ * The base implementation of `_.rest` which doesn't validate or coerce arguments.
5479
+ *
5480
+ * @private
5481
+ * @param {Function} func The function to apply a rest parameter to.
5482
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
5483
+ * @returns {Function} Returns the new function.
5484
+ */
5485
+function baseRest(func, start) {
5486
+  return setToString(overRest(func, start, identity), func + '');
5487
+}
5488
+
5489
+module.exports = baseRest;
5490
+
5491
+},{"./identity":"Jpv1","./_overRest":"qXFa","./_setToString":"KRxT"}],"R62e":[function(require,module,exports) {
5492
+var eq = require('./eq'),
5493
+    isArrayLike = require('./isArrayLike'),
5494
+    isIndex = require('./_isIndex'),
5495
+    isObject = require('./isObject');
5496
+
5497
+/**
5498
+ * Checks if the given arguments are from an iteratee call.
5499
+ *
5500
+ * @private
5501
+ * @param {*} value The potential iteratee value argument.
5502
+ * @param {*} index The potential iteratee index or key argument.
5503
+ * @param {*} object The potential iteratee object argument.
5504
+ * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
5505
+ *  else `false`.
5506
+ */
5507
+function isIterateeCall(value, index, object) {
5508
+  if (!isObject(object)) {
5509
+    return false;
5510
+  }
5511
+  var type = typeof index;
5512
+  if (type == 'number'
5513
+        ? (isArrayLike(object) && isIndex(index, object.length))
5514
+        : (type == 'string' && index in object)
5515
+      ) {
5516
+    return eq(object[index], value);
5517
+  }
5518
+  return false;
5519
+}
5520
+
5521
+module.exports = isIterateeCall;
5522
+
5523
+},{"./eq":"LIpy","./isArrayLike":"LN6c","./_isIndex":"A+gr","./isObject":"u9vI"}],"gmQJ":[function(require,module,exports) {
5524
+var baseRest = require('./_baseRest'),
5525
+    isIterateeCall = require('./_isIterateeCall');
5526
+
5527
+/**
5528
+ * Creates a function like `_.assign`.
5529
+ *
5530
+ * @private
5531
+ * @param {Function} assigner The function to assign values.
5532
+ * @returns {Function} Returns the new assigner function.
5533
+ */
5534
+function createAssigner(assigner) {
5535
+  return baseRest(function(object, sources) {
5536
+    var index = -1,
5537
+        length = sources.length,
5538
+        customizer = length > 1 ? sources[length - 1] : undefined,
5539
+        guard = length > 2 ? sources[2] : undefined;
5540
+
5541
+    customizer = (assigner.length > 3 && typeof customizer == 'function')
5542
+      ? (length--, customizer)
5543
+      : undefined;
5544
+
5545
+    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
5546
+      customizer = length < 3 ? undefined : customizer;
5547
+      length = 1;
5548
+    }
5549
+    object = Object(object);
5550
+    while (++index < length) {
5551
+      var source = sources[index];
5552
+      if (source) {
5553
+        assigner(object, source, index, customizer);
5554
+      }
5555
+    }
5556
+    return object;
5557
+  });
5558
+}
5559
+
5560
+module.exports = createAssigner;
5561
+
5562
+},{"./_baseRest":"f4Fl","./_isIterateeCall":"R62e"}],"yubd":[function(require,module,exports) {
5563
+var baseMerge = require('./_baseMerge'),
5564
+    createAssigner = require('./_createAssigner');
5565
+
5566
+/**
5567
+ * This method is like `_.assign` except that it recursively merges own and
5568
+ * inherited enumerable string keyed properties of source objects into the
5569
+ * destination object. Source properties that resolve to `undefined` are
5570
+ * skipped if a destination value exists. Array and plain object properties
5571
+ * are merged recursively. Other objects and value types are overridden by
5572
+ * assignment. Source objects are applied from left to right. Subsequent
5573
+ * sources overwrite property assignments of previous sources.
5574
+ *
5575
+ * **Note:** This method mutates `object`.
5576
+ *
5577
+ * @static
5578
+ * @memberOf _
5579
+ * @since 0.5.0
5580
+ * @category Object
5581
+ * @param {Object} object The destination object.
5582
+ * @param {...Object} [sources] The source objects.
5583
+ * @returns {Object} Returns `object`.
5584
+ * @example
5585
+ *
5586
+ * var object = {
5587
+ *   'a': [{ 'b': 2 }, { 'd': 4 }]
5588
+ * };
5589
+ *
5590
+ * var other = {
5591
+ *   'a': [{ 'c': 3 }, { 'e': 5 }]
5592
+ * };
5593
+ *
5594
+ * _.merge(object, other);
5595
+ * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
5596
+ */
5597
+var merge = createAssigner(function(object, source, srcIndex) {
5598
+  baseMerge(object, source, srcIndex);
5599
+});
5600
+
5601
+module.exports = merge;
5602
+
5603
+},{"./_baseMerge":"WqwZ","./_createAssigner":"gmQJ"}],"duLQ":[function(require,module,exports) {
5604
+"use strict";
5605
+
5606
+Object.defineProperty(exports, "__esModule", {
5607
+  value: true
5608
+});
5609
+exports.default = void 0;
5610
+
5611
+var _Utilities = _interopRequireDefault(require("./Utilities"));
5612
+
5613
+var _merge = _interopRequireDefault(require("lodash/merge"));
5614
+
5615
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5616
+
5617
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5618
+
5619
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
5620
+
5621
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
5622
+
5623
+var Configuration =
5624
+/*#__PURE__*/
5625
+function () {
5626
+  function Configuration(configObject) {
5627
+    _classCallCheck(this, Configuration);
5628
+
5629
+    window.CookieConsent.buffer = {
5630
+      appendChild: [],
5631
+      insertBefore: [] // Wrapper filter function
5632
+
5633
+    };
5634
+
5635
+    window.CookieConsent.wrapper = function () {}; // Settings injector for users
5636
+
5637
+
5638
+    window.CookieConsent.setConfiguration = this.setConfiguration.bind(this);
5639
+    window.CookieConsent.config = {
5640
+      active: true,
5641
+      cookieExists: false,
5642
+      cookieVersion: 1,
5643
+      modalMainTextMoreLink: null,
5644
+      barTimeout: 1000,
5645
+      theme: {
5646
+        barColor: '#2C7CBF',
5647
+        barTextColor: '#FFF',
5648
+        barMainButtonColor: '#FFF',
5649
+        barMainButtonTextColor: '#2C7CBF',
5650
+        modalMainButtonColor: '#4285F4',
5651
+        modalMainButtonTextColor: '#FFF'
5652
+      },
5653
+      language: {
5654
+        current: 'en',
5655
+        locale: {
5656
+          en: {
5657
+            barMainText: 'This website uses cookies to ensure you get the best experience on our website.',
5658
+            barLinkSetting: 'Cookie Settings',
5659
+            barBtnAcceptAll: 'Accept all cookies',
5660
+            modalMainTitle: 'Cookie settings',
5661
+            modalMainText: 'Cookies are small piece of data sent from a website and stored on the user\'s computer by the user\'s web browser while the user is browsing. Your browser stores each message in a small file, called cookie. When you request another page from the server, your browser sends the cookie back to the server. Cookies were designed to be a reliable mechanism for websites to remember information or to record the user\'s browsing activity.',
5662
+            modalBtnSave: 'Save current settings',
5663
+            modalBtnAcceptAll: 'Accept all cookies and close',
5664
+            modalAffectedSolutions: 'Affected solutions:',
5665
+            learnMore: 'Learn More',
5666
+            on: 'On',
5667
+            off: 'Off'
5668
+          },
5669
+          hu: {
5670
+            barMainText: 'Ez a weboldal Sütiket használ a jobb felhasználói élmény érdekében.',
5671
+            barLinkSetting: 'Süti beállítások',
5672
+            barBtnAcceptAll: 'Minden süti elfogadása',
5673
+            modalMainTitle: 'Süti beállítások',
5674
+            modalMainText: 'A HTTP-süti (általában egyszerűen süti, illetve angolul cookie) egy információcsomag, amelyet a szerver küld a webböngészőnek, majd a böngésző visszaküld a szervernek minden, a szerver felé irányított kérés alkalmával. Amikor egy weboldalt kérünk le a szervertől, akkor a böngésző elküldi a számára elérhető sütiket. A süti-ket úgy tervezték, hogy megbízható mechanizmust biztosítsanak a webhelyek számára az információk megőrzésére vagy a felhasználók böngészési tevékenységének rögzítésére.',
5675
+            modalBtnSave: 'Beállítások mentése',
5676
+            modalBtnAcceptAll: 'Minden Süti elfogadása',
5677
+            modalAffectedSolutions: 'Mire lesz ez hatással:',
5678
+            learnMore: 'Tudj meg többet',
5679
+            on: 'Be',
5680
+            off: 'Ki'
5681
+          }
5682
+        }
5683
+      },
5684
+      categories: {},
5685
+      services: {}
5686
+    };
5687
+    this.setConfiguration(configObject);
5688
+  }
5689
+
5690
+  _createClass(Configuration, [{
5691
+    key: "setConfiguration",
5692
+    value: function setConfiguration(configObject) {
5693
+      // The user overrides the default config
5694
+      (0, _merge.default)(window.CookieConsent.config, configObject); // The cookie overrides the default and user config
5695
+
5696
+      this.cookieToConfig(); // We tell the world we did this
5697
+
5698
+      _Utilities.default.dispatchEvent(document, 'CCConfigSet');
5699
+    }
5700
+  }, {
5701
+    key: "cookieToConfig",
5702
+    value: function cookieToConfig() {
5703
+      function removeReload() {
5704
+        _Utilities.default.removeCookie();
5705
+
5706
+        location.reload();
5707
+        return false;
5708
+      }
5709
+
5710
+      document.cookie.split(';').filter(function (item) {
5711
+        if (item.indexOf('cconsent') >= 0) {
5712
+          var cookieData = JSON.parse(item.split('=')[1]); // We check cookie version. If older we need to renew cookie.
5713
+
5714
+          if (typeof cookieData.version === 'undefined') {
5715
+            return removeReload();
5716
+          } else {
5717
+            if (cookieData.version !== window.CookieConsent.config.cookieVersion) {
5718
+              return removeReload();
5719
+            }
5720
+          } // We check if cookie data categories also exist in user config
5721
+
5722
+
5723
+          for (var key in cookieData.categories) {
5724
+            // The cookie contains category not present in user config so we invalidate cookie
5725
+            if (typeof window.CookieConsent.config.categories[key] === 'undefined') {
5726
+              return removeReload();
5727
+            }
5728
+          } // We check if cookie data services also exist in user config
5729
+
5730
+
5731
+          cookieData.services.forEach(function (service) {
5732
+            // The cookie contains service not present in user config so we invalidate cookie
5733
+            if (typeof window.CookieConsent.config.services[service] === 'undefined') {
5734
+              return removeReload();
5735
+            }
5736
+          }); // We we integrate cookie data into the global config object
5737
+
5738
+          for (var _key in cookieData.categories) {
5739
+            window.CookieConsent.config.categories[_key].checked = window.CookieConsent.config.categories[_key].wanted = cookieData.categories[_key].wanted === true ? true : false;
5740
+          }
5741
+
5742
+          window.CookieConsent.config.cookieExists = true;
5743
+          return true;
5744
+        }
5745
+      });
5746
+      return false;
5747
+    }
5748
+  }]);
5749
+
5750
+  return Configuration;
5751
+}();
5752
+
5753
+exports.default = Configuration;
5754
+},{"./Utilities":"/6wJ","lodash/merge":"yubd"}],"ylk/":[function(require,module,exports) {
5755
+"use strict";
5756
+
5757
+Object.defineProperty(exports, "__esModule", {
5758
+  value: true
5759
+});
5760
+exports.default = void 0;
5761
+
5762
+var _InsertScriptFilter = _interopRequireDefault(require("./InsertScriptFilter"));
5763
+
5764
+var _ScriptTagFilter = _interopRequireDefault(require("./ScriptTagFilter"));
5765
+
5766
+var _WrapperFilter = _interopRequireDefault(require("./WrapperFilter"));
5767
+
5768
+var _LocalCookieFilter = _interopRequireDefault(require("./LocalCookieFilter"));
5769
+
5770
+var _Interface = _interopRequireDefault(require("./Interface"));
5771
+
5772
+var _Configuration = _interopRequireDefault(require("./Configuration"));
5773
+
5774
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5775
+
5776
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5777
+
5778
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
5779
+
5780
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
5781
+
5782
+var CookieConsent =
5783
+/*#__PURE__*/
5784
+function () {
5785
+  function CookieConsent() {
5786
+    _classCallCheck(this, CookieConsent);
5787
+  }
5788
+
5789
+  _createClass(CookieConsent, [{
5790
+    key: "init",
5791
+    value: function init(configObject) {
5792
+      new _Configuration.default(configObject);
5793
+      var insertScriptFilter = new _InsertScriptFilter.default();
5794
+      var scriptTagFilter = new _ScriptTagFilter.default();
5795
+      var wrapperFilter = new _WrapperFilter.default();
5796
+      var localCookieFilter = new _LocalCookieFilter.default();
5797
+      insertScriptFilter.init();
5798
+      scriptTagFilter.init();
5799
+      wrapperFilter.init();
5800
+      localCookieFilter.init();
5801
+      var UI = new _Interface.default();
5802
+      UI.buildInterface(function () {
5803
+        UI.addEventListeners();
5804
+      });
5805
+    }
5806
+  }]);
5807
+
5808
+  return CookieConsent;
5809
+}();
5810
+
5811
+exports.default = CookieConsent;
5812
+},{"./InsertScriptFilter":"UWvR","./ScriptTagFilter":"ob2e","./WrapperFilter":"935K","./LocalCookieFilter":"2E//","./Interface":"/Qw2","./Configuration":"duLQ"}],"Focm":[function(require,module,exports) {
5813
+"use strict";
5814
+
5815
+require("core-js/es6/symbol");
5816
+
5817
+require("core-js/fn/symbol/iterator");
5818
+
5819
+var _CookieConsent = _interopRequireDefault(require("./lib/CookieConsent"));
5820
+
5821
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5822
+
5823
+var cookieConsent = new _CookieConsent.default();
5824
+window.CookieConsent = window.CookieConsent || {};
5825
+window.CookieConsent.init = cookieConsent.init;
5826
+},{"core-js/es6/symbol":"CtPZ","core-js/fn/symbol/iterator":"KQqW","./lib/CookieConsent":"ylk/"}]},{},["Focm"], null)
5827
+//# sourceMappingURL=cookieconsent.map
0 5828
\ No newline at end of file