PageSourceSearch

https://crosscapadvisors.com/wp-content/themes/fug-theme/dist/js/bundle.js?ver=1.0.0

js crosscapadvisors.com collected 2026-10-04 02:21:32 UTC 76,187 bytes, 827 lines download raw bytes

vendor: 91 bytes, lines 1-4
1/******/ (() => { // webpackBootstrap
2/******/ 	var __webpack_modules__ = ({
3
4/***/ "./src/
4js/components/acc.js":
5/*!**********************************!*\
6  !*** ./src/js/components/acc.js ***!
7  \**********************************/
8/***/ (() => {
9
10$(function () {
11  var Accordion = function Accordion(el, multiple) {
12    this.el = el || {};
13    this.multiple = multiple || false;
14
15    // Variables privadas
16    var links = this.el.find('.link');
17    // Evento
18    links.on('click', {
19      el: this.el,
20      multiple: this.multiple
21    }, this.dropdown);
22  };
23  Accordion.prototype.dropdown = function (e) {
24    var $el = e.data.el;
25    $this = $(this), $next = $this.next();
26    $next.slideToggle(400);
27    $this.parent().toggleClass('open');
28    if (!e.data.multiple) {
29      $el.find('.submenu').not($next).slideUp().parent().removeClass('open');
30    }
31    ;
32  };
33  var accordion = new Accordion($('.accordion-flex'), false);
34});
35
36/***/ }),
37
38/***/ "./src/js/components/blog-dropdown.js":
39/*!********************************************!*\
40  !*** ./src/js/components/blog-dropdown.js ***!
41  \********************************************/
42/***/ (() => {
43
44document.addEventListener("DOMContentLoaded", function () {
45  (function ($) {
46    $(".blogDropdownToggle").click(function () {
47      if ($(".dropdownMenu").hasClass("is-active")) {
48        $(".dropdownMenu").removeClass("is-active");
49        $(".blog-dropdown").removeClass("is-expanded");
50        $(this).attr("aria-expanded", "false");
51        $(this).siblings(".dropdownMenu").attr("aria-hidden", "true");
52      } else {
53        $(".dropdownMenu").addClass("is-active");
54        $(this).attr("aria-expanded", "true");
55        $(".blog-dropdown").addClass("is-expanded");
56        $(this).siblings(".dropdownMenu").attr("aria-hidden", "false");
57      }
58    });
59  })(jQuery);
60}, false);
61
62/***/ }),
63
64/***/ "./src/js/components/cat-toggle.js":
65/*!*****************************************!*\
66  !*** ./src/js/components/cat-toggle.js ***!
67  \*****************************************/
68/***/ (() => {
69
70$(".the-cat").on("mouseenter", function () {
71  $(this).addClass("active");
72  $(this).attr("aria-expanded", "true");
73  $(this).children(".inner-wrap").attr("aria-hidden", "false");
74});
75$(".the-cat").on("mouseleave", function () {
76  $(this).removeClass("active");
77  $(this).attr("aria-expanded", "false");
78  $(this).children(".inner-wrap").attr("aria-hidden", "true");
79});
80
81/***/ }),
82
83/***/ "./src/js/components/checkforjs.js":
84/*!*****************************************!*\
85  !*** ./src/js/components/checkforjs.js ***!
86  \*****************************************/
87/***/ (() => {
88
89document.body.classList.add('js');
90
91/***/ }),
92
93/***/ "./src/js/components/clickEvents.js":
94/*!******************************************!*\
95  !*** ./src/js/components/clickEvents.js ***!
96  \******************************************/
97/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
98
99"use strict";
100__webpack_require__.r(__webpack_exports__);
101/* harmony export */ __webpack_require__.d(__webpack_exports__, {
102/* harmony export */   clickEvents: () => (/* binding */ clickEvents)
103/* harmony export */ });
104/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./src/js/components/index.js");
105
106var clickEvents = function clickEvents() {
107  if (!$("main").hasClass("page-schedule")) {
108    // Clicking on Hash Links
109    $('a[href^="#"]').on("click", function (e) {
110      e.preventDefault();
111      if (screen.width <= 1025) {
112        // If It's A Hash Link on Mobile Scroll and Close Menu
113        gsap.set($(".wrapper"), {
114          height: "auto",
115          overflow: "visible"
116        });
117        menuToggleTL.reverse();
118        (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.smoothScrolling)($(this));
119      } else {
120        // Otherwise just scroll to the hash
121        (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.smoothScrolling)($(this));
122      }
123    });
124  }
125};
126
127/***/ }),
128
129/***/ "./src/js/components/form-pop.js":
130/*!***************************************!*\
131  !*** ./src/js/components/form-pop.js ***!
132  \***************************************/
133/***/ (() => {
134
135(function ($) {
136  $('.toggleForm').click(function () {
137    $('.pop-form').addClass('active');
138  });
139})(jQuery);
140(function ($) {
141  $('.closePopFormModal').click(function () {
142    $('.pop-form').removeClass('active');
143  });
144})(jQuery);
145
146/***/ }),
147
148/***/ "./src/js/components/global.js":
149/*!*************************************!*\
150  !*** ./src/js/components/global.js ***!
151  \*************************************/
152/***/ (() => {
153
154// (function ($) {
155// 	$(".content-shift p img").parent().css({ "padding-left": "0" });
156// 	$(".content-shift p img").parent().addClass("img-border-bg");
157//  })(jQuery);
158
159// (function ($) {
160// 	$(".global-content p > img").parent().addClass("img-border-bg");
161// })(jQuery);
162
163// const player = new Plyr(".plyerPlayer", {
164// 	//    autoplay: true,
165// 	hideControls: false,
166// 	fullscreen: {
167// 		enabled: true,
168// 		iosNative: true,
169// 	},
170// 	playsinline: false,
171//  });
172
173// SPLASH
174
175var acc = document.getElementsByClassName("accordion");
176var i;
177for (i = 0; i < acc.length; i++) {
178  acc[i].addEventListener("click", function () {
179    this.classList.toggle("active");
180    var panel = this.nextElementSibling;
181    if (panel.style.maxHeight) {
182      panel.style.maxHeight = null;
183    } else {
184      panel.style.maxHeight = panel.scrollHeight + "px";
185    }
186  });
187}
188
189/***/ }),
190
191/***/ "./src/js/components/gsapRegisters.js":
192/*!********************************************!*\
193  !*** ./src/js/components/gsapRegisters.js ***!
194  \********************************************/
195/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
196
197"use strict";
198__webpack_require__.r(__webpack_exports__);
199/* harmony export */ __webpack_require__.d(__webpack_exports__, {
200/* harmony export */   gsapRegisters: () => (/* binding */ gsapRegisters)
201/* harmony export */ });
202// Register any GSAP plugins we need
203var gsapRegisters = function gsapRegisters() {
204  gsap.registerPlugin(ScrollToPlugin);
205};
206
207/***/ }),
208
209/***/ "./src/js/components/index.js":
210/*!************************************!*\
211  !*** ./src/js/components/index.js ***!
212  \************************************/
213/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
214
215"use strict";
216__webpack_require__.r(__webpack_exports__);
217/* harmony export */ __webpack_require__.d(__webpack_exports__, {
218/* harmony export */   clickEvents: () => (/* reexport safe */ _clickEvents_js__WEBPACK_IMPORTED_MODULE_3__.clickEvents),
219/* harmony export */   externalLinks: () => (/* reexport safe */ _pageSetup_js__WEBPACK_IMPORTED_MODULE_0__.externalLinks),
220/* harmony export */   gsapRegisters: () => (/* reexport safe */ _gsapRegisters_js__WEBPACK_IMPORTED_MODULE_2__.gsapRegisters),
221/* harmony export */   menuToggle: () => (/* reexport safe */ _menuToggle_js__WEBPACK_IMPORTED_MODULE_1__.menuToggle),
222/* harmony export */   mobileNavSetup: () => (/* reexport safe */ _pageSetup_js__WEBPACK_IMPORTED_MODULE_0__.mobileNavSetup),
223/* harmony export */   navSearchSetup: () => (/* reexport safe */ _pageSetup_js__WEBPACK_IMPORTED_MODULE_0__.navSearchSetup),
224/* harmony export */   preLoader: () => (/* reexport safe */ _pageSetup_js__WEBPACK_IMPORTED_MODULE_0__.preLoader),
225/* harmony export */   searchReveal: () => (/* reexport safe */ _searchReveal_js__WEBPACK_IMPORTED_MODULE_4__.searchReveal),
226/* harmony export */   smoothScrolling: () => (/* reexport safe */ _pageSetup_js__WEBPACK_IMPORTED_MODULE_0__.smoothScrolling)
227/* harmony export */ });
228/* harmony import */ var _pageSetup_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pageSetup.js */ "./src/js/components/pageSetup.js");
229/* harmony import */ var _menuToggle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./menuToggle.js */ "./src/js/components/menuToggle.js");
230/* harmony import */ var _gsapRegisters_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./gsapRegisters.js */ "./src/js/components/gsapRegisters.js");
231/* harmony import */ var _clickEvents_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./clickEvents.js */ "./src/js/components/clickEvents.js");
232/* harmony import */ var _searchReveal_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./searchReveal.js */ "./src/js/components/searchReveal.js");
233// Import All Functions here
234// So they can all be called from: index.js in other files.
235
236
237
238
239
240
241/***/ }),
242
243/***/ "./src/js/components/menuToggle.js":
244/*!*****************************************!*\
245  !*** ./src/js/components/menuToggle.js ***!
246  \*****************************************/
247/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
248
249"use strict";
250__webpack_require__.r(__webpack_exports__);
251/* harmony export */ __webpack_require__.d(__webpack_exports__, {
252/* harmony export */   menuToggle: () => (/* binding */ menuToggle)
253/* harmony export */ });
254// Animate The Mobile Nav open and closed - called in clickEvents.js
255var menuToggle = function menuToggle() {
256  var tl = new gsap.timeline({
257    paused: true,
258    defaults: {
259      ease: 'circ.out()',
260      duration: 0.3
261    }
262  });
263  var menuWidth = $('.menuToggle').outerWidth();
264  var menuHeight = $('.menuToggle').outerHeight();
265  var toggledWidth = menuWidth / 4 * 3;
266  var toggledX = menuWidth / 4;
267  var angledWidth = menuWidth / 3;
268  var angledY = menuHeight / 3 - 1;
269  var angledX = menuWidth - angledWidth + 1;
270  tl.to('.main-nav', {
271    duration: 0.3,
272    x: '0%'
273  }, 'menuOpen');
274  tl.to('nav .menu-item', {
275    opacity: 1,
276    x: '0%',
277    stagger: {
278      amount: 0.1
279    }
280  }, 'menuOpen+=0.2');
281  tl.to('.hamTop', {
282    rotation: 45,
283    x: angledX,
284    y: angledY,
285    width: angledWidth,
286    transformOrigin: '50% 50%'
287  }, 'menuOpen');
288  tl.to('.hamMid', {
289    x: toggledX,
290    width: toggledWidth
291  }, 'menuOpen');
292  tl.to('.hamBot', {
293    rotation: -45,
294    x: angledX,
295    y: -angledY,
296    width: angledWidth,
297    transformOrigin: '50% 50%'
298  }, 'menuOpen');
299  return tl;
300};
301
302/***/ }),
303
304/***/ "./src/js/components/nav-class-scroll.js":
305/*!***********************************************!*\
306  !*** ./src/js/components/nav-class-scroll.js ***!
307  \***********************************************/
308/***/ (() => {
309
310$(window).scroll(function () {
311  if ($(this).scrollTop() > 100) {
312    $(".masthead").addClass("add-bg");
313  } else {
314    $(".masthead").removeClass("add-bg");
315  }
316});
317
318/***/ }),
319
320/***/ "./src/js/components/nav-toggle.js":
321/*!*****************************************!*\
322  !*** ./src/js/components/nav-toggle.js ***!
323  \*****************************************/
324/***/ (() => {
325
326var toggle = document.querySelector("#switch");
327var menu = document.querySelector("#menu");
328var menuItems = document.querySelectorAll("#menu li a");
329toggle.addEventListener("click", function () {
330  if (menu.classList.contains("is-active")) {
331    this.setAttribute("aria-expanded", "false");
332    $("body").removeClass("noScroll");
333    menu.classList.remove("is-active");
334  } else {
335    menu.classList.add("is-active");
336    $("body").addClass("noScroll");
337    this.setAttribute("aria-expanded", "true");
338    //menuItems[0].focus();
339  }
340});
341(function ($) {
342  $("#switch").click(function () {
343    $(".hamburger").toggleClass("menu-open");
344    $(".header").toggleClass("drawer-open");
345    $(".filterExpand").removeClass("expanded");
346  });
347})(jQuery);
348(function ($) {
349  $(".filterToggle").click(function () {
350    $(".filterExpand").addClass("expanded");
351  });
352})(jQuery);
353(function ($) {
354  $(".closeFilter").click(function () {
355    $(".filterExpand").removeClass("expanded");
356  });
357})(jQuery);
358
359/***/ }),
360
361/***/ "./src/js/components/pageSetup.js":
362/*!****************************************!*\
363  !*** ./src/js/components/pageSetup.js ***!
364  \****************************************/
365/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
366
367"use strict";
368__webpack_require__.r(__webpack_exports__);
369/* harmony export */ __webpack_require__.d(__webpack_exports__, {
370/* harmony export */   externalLinks: () => (/* binding */ externalLinks),
371/* harmony export */   mobileNavSetup: () => (/* binding */ mobileNavSetup),
372/* harmony export */   navSearchSetup: () => (/* binding */ navSearchSetup),
373/* harmony export */   preLoader: () => (/* binding */ preLoader),
374/* harmony export */   smoothScrolling: () => (/* binding */ smoothScrolling)
375/* harmony export */ });
376// Show and Hide the Preloader - Called on windowLoad.js
377var preLoader = function preLoader() {
378  var tl = new gsap.timeline({
379    defaults: {
380      duration: 0.3,
381      ease: 'power1.in'
382    },
383    onComplete: function onComplete() {
384      $('#preloader').remove();
385    }
386  });
387  tl.to('#preloader svg', {
388    rotateY: 90
389  });
390  tl.to('#preloader', {
391    opacity: 0
392  }, "+=0.05");
393};
394
395// Hide Each of the Mobile Nav Links - called in windowLoad.js
396var mobileNavSetup = function mobileNavSetup() {
397  gsap.set('nav .menu-item', {
398    opacity: 0,
399    x: '50%'
400  });
401};
402
403// Hide Each of the Mobile Nav Links - called in windowLoad.js
404var navSearchSetup = function navSearchSetup() {
405  var container = $('.headerSearchContainer');
406  var headline = container.find('h4');
407  var thisForm = container.find('.searchform');
408  var searchContainerHeight = container.outerHeight();
409  var close = $('.mobile-search-close');
410  container.attr('data-height', searchContainerHeight);
411  gsap.set([headline, thisForm], {
412    opacity: 0,
413    y: -10
414  });
415  gsap.set(close, {
416    opacity: 0,
417    y: -10
418  });
419  gsap.set(container, {
420    height: 0
421  });
422};
423
424// Always Open External Links in a new tab - called in windowLoad.js
425var externalLinks = function externalLinks() {
426  $('a').each(function () {
427    var a = new RegExp('/' + window.location.host + '/');
428    if (!a.test(this.href)) {
429      $(this).on('click', function (event) {
430        event.preventDefault();
431        event.stopPropagation();
432        window.open(this.href, '_blank');
433      });
434    }
435  });
436};
437
438// Function for SmoothScrolling - Called in clickEvents.js
439var smoothScrolling = function smoothScrolling(theLink) {
440  var target = $(theLink).attr('href');
441  var headerHeight = $('.header').outerHeight();
442  gsap.to(window, {
443    duration: .5,
444    ease: 'circ.out',
445    scrollTo: {
446      y: target
447      // Activate if Header Is Fixed
448      // offsetY:headerHeight
449    }
450  });
451  return false;
452};
453
454/***/ }),
455
456/***/ "./src/js/components/pop-team.js":
457/*!***************************************!*\
458  !*** ./src/js/components/pop-team.js ***!
459  \***************************************/
460/***/ (() => {
461
462/*trigger*/
463$('.pop-team-trigger').click(function (event) {
464  var current_id = $(this).attr('id');
465  $('.hidden-modal').removeClass('displayMe');
466  $('.hidden-modal[id="' + current_id + '"]').addClass('displayMe');
467  // var selected_current_id = $('.pop-team ').attr('id');
468  $('.pop-overlay').addClass('on');
469});
470$('.closeHiddenModal').click(function (event) {
471  $('.hidden-modal').removeClass('displayMe');
472  $('.pop-overlay').removeClass('on');
473});
474$('.pop-overlay').click(function (event) {
475  $('.hidden-modal').removeClass('displayMe');
476  $('.pop-overlay').removeClass('on');
477});
478
479/*trigger*/
480$('.portToggle').click(function (event) {
481  var current_id_port = $(this).attr('id');
482  $('.hidden-port-modal').removeClass('displayPortfolio');
483  $('.hidden-port-modal[id="' + current_id_port + '"]').addClass('displayPortfolio');
484  // var selected_current_id = $('.pop-team ').attr('id');
485});
486$('.closePortfolio').click(function (event) {
487  $('.hidden-port-modal').removeClass('displayPortfolio');
488});
489
490/***/ }),
491
492/***/ "./src/js/components/searchReveal.js":
493/*!*******************************************!*\
494  !*** ./src/js/components/searchReveal.js ***!
495  \*******************************************/
496/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
497
498"use strict";
499__webpack_require__.r(__webpack_exports__);
500/* harmony export */ __webpack_require__.d(__webpack_exports__, {
501/* harmony export */   searchReveal: () => (/* binding */ searchReveal)
502/* harmony export */ });
503var searchReveal = function searchReveal() {
504  var tl = new gsap.timeline({
505    paused: true,
506    defaults: {
507      ease: 'Power4.in()',
508      duration: 0.3
509    }
510  });
511  var container = $('.headerSearchContainer');
512  var headline = container.find('h4');
513  var form = container.find('.searchform');
514  var close = $('.mobile-search-close');
515  var toggleHeight = container.attr('data-height');
516
517  // Rotate Main Nav Item / Different Class than click event trigger
518  tl.to('.searchNavItem', {
519    rotation: 90
520  }, 'searchOpen');
521  tl.to(container, {
522    height: toggleHeight
523  }, 'searchOpen');
524  tl.to([headline, form, close], {
525    opacity: 1,
526    y: 0,
527    duration: 0.2
528  }, 'searchOpen+=0.1');
529  return tl;
530};
531
532/***/ }),
533
534/***/ "./src/js/components/swiper.js":
535/*!*************************************!*\
536  !*** ./src/js/components/swiper.js ***!
537  \*************************************/
538/***/ (() => {
539
540var swiper = new Swiper(".swiper", {
541  // Optional parameters
542
543  loop: "true",
544  speed: 1000,
545  autoplay: {
546    delay: 3000
547  },
548  // Navigation arrows
549  navigation: {
550    nextEl: ".swiper-button-next",
551    prevEl: ".swiper-button-prev"
552  }
553});
554
555/***/ }),
556
557/***/ "./src/js/components/tabs.js":
558/*!***********************************!*\
559  !*** ./src/js/components/tabs.js ***!
560  \***********************************/
561/***/ (() => {
562
563tabControl();
564
565/*
566We also apply the switch when a viewport change is detected on the fly
567(e.g. when you resize the browser window or flip your device from 
568portrait mode to landscape). We set a timer with a small delay to run 
569it only once when the resizing ends. It's not perfect, but it's better
570than have it running constantly during the action of resizing.
571*/
572var resizeTimer;
573$(window).on("resize", function (e) {
574  clearTimeout(resizeTimer);
575  resizeTimer = setTimeout(function () {
576    tabControl();
577  }, 250);
578});
579
580/*
581The function below is responsible for switching the tabs when clicked.
582It switches both the tabs and the accordion buttons even if 
583only the one or the other can be visible on a screen. We prefer
584that in order to have a consistent selection in case the viewport
585changes (e.g. when you esize the browser window or flip your 
586device from portrait mode to landscape).
587*/
588function tabControl() {
589  var tabs = $(".tabbed-content").find(".tabs");
590  if (tabs.is(":visible")) {
591    tabs.find("a").on("click", function (event) {
592      event.preventDefault();
593      var target = $(this).attr("href"),
594        tabs = $(this).parents(".tabs"),
595        buttons = tabs.find("a"),
596        item = tabs.parents(".tabbed-content").find(".item");
597      buttons.removeClass("active");
598      item.removeClass("active");
599      $(this).addClass("active");
600      $(target).addClass("active");
601    });
602  } else {
603    $(".item").on("click", function () {
604      var container = $(this).parents(".tabbed-content"),
605        currId = $(this).attr("id"),
606        items = container.find(".item");
607      container.find(".tabs a").removeClass("active");
608      items.removeClass("active");
609      $(this).addClass("active");
610      container.find('.tabs a[href$="#' + currId + '"]').addClass("active");
611    });
612  }
613}
614
615/***/ }),
616
617/***/ "./src/js/components/video-pop.js":
618/*!****************************************!*\
619  !*** ./src/js/components/video-pop.js ***!
620  \****************************************/
621/***/ (() => {
622
623// (function( $ ) {
624//   $('.play-icon').click(function() {
625//     $('.videoModal').addClass('showModal');
626//   }
627// );
628// })(jQuery);
629// (function( $ ) {
630//   $('.closeModal').click(function() {
631//
632//     var video1 = $(".video-modal iframe").attr("src");
633//     $(".video-modal iframe").attr("src","");
634//     $(".video-modal iframe").attr("src",video1);
635//
636//
637//     $('.videoModal').removeClass('showModal');
638//   }
639// );
640// })(jQuery);
641
642document.addEventListener("DOMContentLoaded", function () {
643  var player = new Plyr(".plyerPlayer", {
644    autoplay: false,
645    hideControls: false,
646    fullscreen: {
647      enabled: true,
648      iosNative: true
649    },
650    playsinline: false
651  });
652  (function ($) {
653    $(".playHomeVideo").on("click", function () {
654      $(".videoModalHome").addClass("overlay-on");
655      player.play();
656      //$(".plyerPlayer").get(0).play();
657      //      $('.masthead').addClass('slideUp slide-up');
658      $(".cta-row").addClass("slideDown slide-down");
659      //  $(".stopElementClass").toggleClass('stopElementClass playElementClass');
660    });
661  })(jQuery);
662  (function ($) {
663    $(".closeVideoOverlayHome").on("click", function () {
664      $(".videoModalHome").removeClass("overlay-on");
665      player.stop();
666      //$("#player").get(0).pause();
667      //    $('.masthead').removeClass('slideUp slide-up');
668      $(".cta-row").removeClass("slideDown slide-down");
669      //  $(".stopElementClass").toggleClass('stopElementClass playElementClass');
670    });
671  })(jQuery);
672}, false);
673
674/***/ }),
675
676/***/ "./src/js/components/windowLoad.js":
677/*!*****************************************!*\
678  !*** ./src/js/components/windowLoad.js ***!
679  \*****************************************/
680/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
681
682"use strict";
683__webpack_require__.r(__webpack_exports__);
684/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ "./src/js/components/index.js");
685
686window.addEventListener("load", function () {
687  // Setup Basic Functionality
688  (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.preLoader)();
689  (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.externalLinks)();
690  (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.gsapRegisters)();
691  (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.navSearchSetup)();
692  (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.clickEvents)();
693});
694window.addEventListener("resize", function () {
695  if ($(window).width() < 1024) {} else {}
696});
697
698/***/ })
vendor: 7,160 bytes, lines 698-799
698
699
700/******/ 	});
701/************************************************************************/
702/******/ 	// The module cache
703/******/ 	var __webpack_module_cache__ = {};
704/******/ 	
705/******/ 	// The require function
706/******/ 	function __webpack_require__(moduleId) {
707/******/ 		// Check if module is in cache
708/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
709/******/ 		if (cachedModule !== undefined) {
710/******/ 			return cachedModule.exports;
711/******/ 		}
712/******/ 		// Create a new module (and put it into the cache)
713/******/ 		var module = __webpack_module_cache__[moduleId] = {
714/******/ 			// no module.id needed
715/******/ 			// no module.loaded needed
716/******/ 			exports: {}
717/******/ 		};
718/******/ 	
719/******/ 		// Execute the module function
720/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
721/******/ 	
722/******/ 		// Return the exports of the module
723/******/ 		return module.exports;
724/******/ 	}
725/******/ 	
726/************************************************************************/
727/******/ 	/* webpack/runtime/compat get default export */
728/******/ 	(() => {
729/******/ 		// getDefaultExport function for compatibility with non-harmony modules
730/******/ 		__webpack_require__.n = (module) => {
731/******/ 			var getter = module && module.__esModule ?
732/******/ 				() => (module['default']) :
733/******/ 				() => (module);
734/******/ 			__webpack_require__.d(getter, { a: getter });
735/******/ 			return getter;
736/******/ 		};
737/******/ 	})();
738/******/ 	
739/******/ 	/* webpack/runtime/define property getters */
740/******/ 	(() => {
741/******/ 		// define getter functions for harmony exports
742/******/ 		__webpack_require__.d = (exports, definition) => {
743/******/ 			for(var key in definition) {
744/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
745/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
746/******/ 				}
747/******/ 			}
748/******/ 		};
749/******/ 	})();
750/******/ 	
751/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
752/******/ 	(() => {
753/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
754/******/ 	})();
755/******/ 	
756/******/ 	/* webpack/runtime/make namespace object */
757/******/ 	(() => {
758/******/ 		// define __esModule on exports
759/******/ 		__webpack_require__.r = (exports) => {
760/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
761/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
762/******/ 			}
763/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
764/******/ 		};
765/******/ 	})();
766/******/ 	
767/************************************************************************/
768var __webpack_exports__ = {};
769// This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
770(() => {
771"use strict";
772/*!**************************!*\
773  !*** ./src/js/bundle.js ***!
774  \**************************/
775__webpack_require__.r(__webpack_exports__);
776/* harmony import */ var _components_windowLoad_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/windowLoad.js */ "./src/js/components/windowLoad.js");
777/* harmony import */ var _components_checkforjs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/checkforjs.js */ "./src/js/components/checkforjs.js");
778/* harmony import */ var _components_checkforjs_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_components_checkforjs_js__WEBPACK_IMPORTED_MODULE_1__);
779/* harmony import */ var _components_nav_toggle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/nav-toggle.js */ "./src/js/components/nav-toggle.js");
780/* harmony import */ var _components_nav_toggle_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_components_nav_toggle_js__WEBPACK_IMPORTED_MODULE_2__);
781/* harmony import */ var _components_nav_class_scroll_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/nav-class-scroll.js */ "./src/js/components/nav-class-scroll.js");
782/* harmony import */ var _components_nav_class_scroll_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_components_nav_class_scroll_js__WEBPACK_IMPORTED_MODULE_3__);
783/* harmony import */ var _components_form_pop_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/form-pop.js */ "./src/js/components/form-pop.js");
784/* harmony import */ var _components_form_pop_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_components_form_pop_js__WEBPACK_IMPORTED_MODULE_4__);
785/* harmony import */ var _components_cat_toggle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/cat-toggle.js */ "./src/js/components/cat-toggle.js");
786/* harmony import */ var _components_cat_toggle_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_components_cat_toggle_js__WEBPACK_IMPORTED_MODULE_5__);
787/* harmony import */ var _components_swiper_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/swiper.js */ "./src/js/components/swiper.js");
788/* harmony import */ var _components_swiper_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_components_swiper_js__WEBPACK_IMPORTED_MODULE_6__);
789/* harmony import */ var _components_global_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/global.js */ "./src/js/components/global.js");
790/* harmony import */ var _components_global_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_components_global_js__WEBPACK_IMPORTED_MODULE_7__);
791/* harmony import */ var _components_pop_team_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/pop-team.js */ "./src/js/components/pop-team.js");
792/* harmony import */ var _components_pop_team_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_components_pop_team_js__WEBPACK_IMPORTED_MODULE_8__);
793/* harmony import */ var _components_blog_dropdown_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/blog-dropdown.js */ "./src/js/components/blog-dropdown.js");
794/* harmony import */ var _components_blog_dropdown_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_components_blog_dropdown_js__WEBPACK_IMPORTED_MODULE_9__);
795/* harmony import */ var _components_tabs_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./components/tabs.js */ "./src/js/components/tabs.js");
796/* harmony import */ var _components_tabs_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_components_tabs_js__WEBPACK_IMPORTED_MODULE_10__);
797/* harmony import */ var _components_video_pop_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./components/video-pop.js */ "./src/js/components/video-pop.js");
798/* harmony import */ var _components_video_pop_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_components_video_pop_js__WEBPACK_IMPORTED_MODULE_11__);
799/* harmony import */ var _components_acc_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./components/
799acc.js */ "./src/js/components/acc.js");
800/* harmony import */ var _components_acc_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_components_acc_js__WEBPACK_IMPORTED_MODULE_12__);
801
802// GLOBALS
803
804// import "./components/nav-color.js";
805// import './components/nav-drop-accessible.js';
806
807// import './components/video-pop.js';
808// import "./components/header-color.js";
809
810
811// import "./components/smooth-scroll.js";
812
813// import "./components/smooth-scroll.js";
814
815// SITE
816
817// import "./components/gallery-lightbox.js";
818
819
820
821
822
823})();
824
825/******/ })()
826;
827//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBQSxDQUFDLENBQUMsWUFBVztFQUNaLElBQUlDLFNBQVMsR0FBRyxTQUFaQSxTQUFTQSxDQUFZQyxFQUFFLEVBQUVDLFFBQVEsRUFBRTtJQUN0QyxJQUFJLENBQUNELEVBQUUsR0FBR0EsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsQixJQUFJLENBQUNDLFFBQVEsR0FBR0EsUUFBUSxJQUFJLEtBQUs7O0lBRWpDO0lBQ0EsSUFBSUMsS0FBSyxHQUFHLElBQUksQ0FBQ0YsRUFBRSxDQUFDRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ2pDO0lBQ0FELEtBQUssQ0FBQ0UsRUFBRSxDQUFDLE9BQU8sRUFBRTtNQUFDSixFQUFFLEVBQUUsSUFBSSxDQUFDQSxFQUFFO01BQUVDLFFBQVEsRUFBRSxJQUFJLENBQUNBO0lBQVEsQ0FBQyxFQUFFLElBQUksQ0FBQ0ksUUFBUSxDQUFDO0VBQ3pFLENBQUM7RUFFRE4sU0FBUyxDQUFDTyxTQUFTLENBQUNELFFBQVEsR0FBRyxVQUFTRSxDQUFDLEVBQUU7SUFDMUMsSUFBSUMsR0FBRyxHQUFHRCxDQUFDLENBQUNFLElBQUksQ0FBQ1QsRUFBRTtJQUNsQlUsS0FBSyxHQUFHWixDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ2ZhLEtBQUssR0FBR0QsS0FBSyxDQUFDRSxJQUFJLENBQUMsQ0FBQztJQUVyQkQsS0FBSyxDQUFDRSxXQUFXLENBQUMsR0FBRyxDQUFDO0lBQ3RCSCxLQUFLLENBQUNJLE1BQU0sQ0FBQyxDQUFDLENBQUNDLFdBQVcsQ0FBQyxNQUFNLENBQUM7SUFFbEMsSUFBSSxDQUFDUixDQUFDLENBQUNFLElBQUksQ0FBQ1IsUUFBUSxFQUFFO01BQ3JCTyxHQUFHLENBQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQ2EsR0FBRyxDQUFDTCxLQUFLLENBQUMsQ0FBQ00sT0FBTyxDQUFDLENBQUMsQ0FBQ0gsTUFBTSxDQUFDLENBQUMsQ0FBQ0ksV0FBVyxDQUFDLE1BQU0sQ0FBQztJQUN2RTtJQUFDO0VBQ0YsQ0FBQztFQUVELElBQUlDLFNBQVMsR0FBRyxJQUFJcEIsU0FBUyxDQUFDRCxDQUFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxLQUFLLENBQUM7QUFDM0QsQ0FBQyxDQUFDOzs7Ozs7Ozs7O0FDekJGc0IsUUFBUSxDQUFDQyxnQkFBZ0IsQ0FDeEIsa0JBQWtCLEVBQ2xCLFlBQVk7RUFDWCxDQUFDLFVBQVV2QixDQUFDLEVBQUU7SUFDYkEsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUN3QixLQUFLLENBQUMsWUFBWTtNQUMxQyxJQUFJeEIsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDeUIsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQzdDekIsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDb0IsV0FBVyxDQUFDLFdBQVcsQ0FBQztRQUMzQ3BCLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDb0IsV0FBVyxDQUFDLGFBQWEsQ0FBQztRQUM5Q3BCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzBCLElBQUksQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDO1FBQ3RDMUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDMkIsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDRCxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztNQUM5RCxDQUFDLE1BQU07UUFDTjFCLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQzRCLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDeEM1QixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMwQixJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQztRQUNyQzFCLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDNEIsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUMzQzVCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzJCLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQ0QsSUFBSSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUM7TUFDL0Q7SUFDRCxDQUFDLENBQUM7RUFDSCxDQUFDLEVBQUVHLE1BQU0sQ0FBQztBQUNYLENBQUMsRUFDRCxLQUNELENBQUM7Ozs7Ozs7Ozs7QUNwQkQ3QixDQUFDLENBQUMsVUFBVSxDQUFDLENBQUNNLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWTtFQUMxQ04sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDNEIsUUFBUSxDQUFDLFFBQVEsQ0FBQztFQUMxQjVCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzBCLElBQUksQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDO0VBQ3JDMUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDOEIsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDSixJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQztBQUM3RCxDQUFDLENBQUM7QUFFRjFCLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQ00sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZO0VBQzFDTixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUNvQixXQUFXLENBQUMsUUFBUSxDQUFDO0VBQzdCcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDMEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUM7RUFDdEMxQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM4QixRQUFRLENBQUMsYUFBYSxDQUFDLENBQUNKLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDO0FBQzVELENBQUMsQ0FBQzs7Ozs7Ozs7OztBQ1ZGSixRQUFRLENBQUNTLElBQUksQ0FBQ0MsU0FBUyxDQUFDQyxHQUFHLENBQUMsSUFBSSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FDQXNDO0FBRWhFLElBQUlJLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFBLEVBQVM7RUFDOUIsSUFBSSxDQUFDckMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDeUIsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFO0lBQ3pDO0lBQ0F6QixDQUFDLENBQUMsY0FBYyxDQUFDLENBQUNNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsVUFBVUcsQ0FBQyxFQUFFO01BQzFDQSxDQUFDLENBQUM2QixjQUFjLENBQUMsQ0FBQztNQUNsQixJQUFJQyxNQUFNLENBQUNDLEtBQUssSUFBSSxJQUFJLEVBQUU7UUFDekI7UUFDQUMsSUFBSSxDQUFDQyxHQUFHLENBQUMxQyxDQUFDLENBQUMsVUFBVSxDQUFDLEVBQUU7VUFBRTJDLE1BQU0sRUFBRSxNQUFNO1VBQUVDLFFBQVEsRUFBRTtRQUFVLENBQUMsQ0FBQztRQUNoRUMsWUFBWSxDQUFDQyxPQUFPLENBQUMsQ0FBQztRQUN0QlgsMERBQWUsQ0FBQ25DLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztNQUN6QixDQUFDLE1BQU07UUFDTjtRQUNBbUMsMERBQWUsQ0FBQ25DLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztNQUN6QjtJQUNELENBQUMsQ0FBQztFQUNIO0FBQ0QsQ0FBQzs7Ozs7Ozs7OztBQ2xCRCxDQUFDLFVBQVVBLENBQUMsRUFBRztFQUNiQSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUN3QixLQUFLLENBQUMsWUFBVztJQUNoQ3hCLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzRCLFFBQVEsQ0FBQyxRQUFRLENBQUM7RUFDbkMsQ0FDRixDQUFDO0FBQ0QsQ0FBQyxFQUFFQyxNQUFNLENBQUM7QUFDVixDQUFDLFVBQVU3QixDQUFDLEVBQUc7RUFDYkEsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUN3QixLQUFLLENBQUMsWUFBVztJQUl2Q3hCLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxRQUFRLENBQUM7RUFDdEMsQ0FDRixDQUFDO0FBQ0QsQ0FBQyxFQUFFUyxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUNkVjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0F
827BRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBLElBQUlrQixHQUFHLEdBQUd6QixRQUFRLENBQUMwQixzQkFBc0IsQ0FBQyxXQUFXLENBQUM7QUFDdEQsSUFBSUMsQ0FBQztBQUVMLEtBQUtBLENBQUMsR0FBRyxDQUFDLEVBQUVBLENBQUMsR0FBR0YsR0FBRyxDQUFDRyxNQUFNLEVBQUVELENBQUMsRUFBRSxFQUFFO0VBQ2hDRixHQUFHLENBQUNFLENBQUMsQ0FBQyxDQUFDMUIsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLFlBQVk7SUFDNUMsSUFBSSxDQUFDUyxTQUFTLENBQUNtQixNQUFNLENBQUMsUUFBUSxDQUFDO0lBQy9CLElBQUlDLEtBQUssR0FBRyxJQUFJLENBQUNDLGtCQUFrQjtJQUNuQyxJQUFJRCxLQUFLLENBQUNFLEtBQUssQ0FBQ0MsU0FBUyxFQUFFO01BQzFCSCxLQUFLLENBQUNFLEtBQUssQ0FBQ0MsU0FBUyxHQUFHLElBQUk7SUFDN0IsQ0FBQyxNQUFNO01BQ05ILEtBQUssQ0FBQ0UsS0FBSyxDQUFDQyxTQUFTLEdBQUdILEtBQUssQ0FBQ0ksWUFBWSxHQUFHLElBQUk7SUFDbEQ7RUFDRCxDQUFDLENBQUM7QUFDSDs7Ozs7Ozs7Ozs7Ozs7O0FDbENBO0FBQ08sSUFBSUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBLEVBQVM7RUFDL0JoQixJQUFJLENBQUNpQixjQUFjLENBQUNDLGNBQWMsQ0FBQztBQUNyQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDSEQ7QUFDQTtBQU91QjtBQUlDO0FBSUc7QUFJRjs7Ozs7Ozs7Ozs7Ozs7OztBQ3BCekI7QUFDTyxJQUFJekIsVUFBVSxHQUFHLFNBQWJBLFVBQVVBLENBQUEsRUFBUztFQUM3QixJQUFJOEIsRUFBRSxHQU
827FHLElBQUl2QixJQUFJLENBQUN3QixRQUFRLENBQUM7SUFDMUJDLE1BQU0sRUFBQyxJQUFJO0lBQ1hDLFFBQVEsRUFBRTtNQUNUQyxJQUFJLEVBQUUsWUFBWTtNQUNsQkMsUUFBUSxFQUFDO0lBQ1Y7RUFDRCxDQUFDLENBQUM7RUFFRixJQUFJQyxTQUFTLEdBQUd0RSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUN1RSxVQUFVLENBQUMsQ0FBQztFQUM3QyxJQUFJQyxVQUFVLEdBQUd4RSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUN5RSxXQUFXLENBQUMsQ0FBQztFQUMvQyxJQUFJQyxZQUFZLEdBQUlKLFNBQVMsR0FBRyxDQUFDLEdBQUksQ0FBQztFQUN0QyxJQUFJSyxRQUFRLEdBQUdMLFNBQVMsR0FBRyxDQUFDO0VBQzVCLElBQUlNLFdBQVcsR0FBR04sU0FBUyxHQUFHLENBQUM7RUFDL0IsSUFBSU8sT0FBTyxHQUFJTCxVQUFVLEdBQUcsQ0FBQyxHQUFJLENBQUM7RUFDbEMsSUFBSU0sT0FBTyxHQUFJUixTQUFTLEdBQUdNLFdBQVcsR0FBSSxDQUFDO0VBRTNDWixFQUFFLENBQUNlLEVBQUUsQ0FBQyxXQUFXLEVBQUU7SUFBQ1YsUUFBUSxFQUFDLEdBQUc7SUFBRVcsQ0FBQyxFQUFDO0VBQUksQ0FBQyxFQUFFLFVBQVUsQ0FBQztFQUN0RGhCLEVBQUUsQ0FBQ2UsRUFBRSxDQUFDLGdCQUFnQixFQUFFO0lBQUNFLE9BQU8sRUFBQyxDQUFDO0lBQUVELENBQUMsRUFBQyxJQUFJO0lBQUVFLE9BQU8sRUFBRTtNQUFDQyxNQUFNLEVBQUM7SUFBRztFQUFDLENBQUMsRUFBRSxlQUFlLENBQUM7RUFDcEZuQixFQUFFLENBQUNlLEVBQUUsQ0FBQyxTQUFTLEVBQUU7SUFBQ0ssUUFBUSxFQUFDLEVBQUU7SUFBQ0osQ0FBQyxFQUFDRixPQUFPO0lBQUVPLENBQUMsRUFBQ1IsT0FBTztJQUFFckMsS0FBSyxFQUFDb0MsV0FBVztJQUFFVSxlQUFlLEVBQUM7RUFBUyxDQUFDLEVBQUUsVUFBVSxDQUFDO0VBQzlHdEIsRUFBRSxDQUFDZSxFQUFFLENBQUMsU0FBUyxFQUFFO0lBQUNDLENBQUMsRUFBQ0wsUUFBUTtJQUFFbkMsS0FBSyxFQUFDa0M7RUFBWSxDQUFDLEVBQUUsVUFBVSxDQUFDO0VBQzlEVixFQUFFLENBQUNlLEVBQUUsQ0FBQyxTQUFTLEVBQUU7SUFBQ0ssUUFBUSxFQUFDLENBQUMsRUFBRTtJQUFFSixDQUFDLEVBQUNGLE9BQU87SUFBRU8sQ0FBQyxFQUFDLENBQUNSLE9BQU87SUFBRXJDLEtBQUssRUFBQ29DLFdBQVc7SUFBRVUsZUFBZSxFQUFDO0VBQVMsQ0FBQyxFQUFFLFVBQVUsQ0FBQztFQUVqSCxPQUFPdEIsRUFBRTtBQUNWLENBQUM7Ozs7Ozs7Ozs7QUN6QkRoRSxDQUFDLENBQUN1RixNQUFNLENBQUMsQ0FBQ0MsTUFBTSxDQUFDLFlBQVk7RUFDNUIsSUFBSXhGLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQ3lGLFNBQVMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxFQUFFO0lBQzlCekYsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDNEIsUUFBUSxDQUFDLFFBQVEsQ0FBQztFQUNsQyxDQUFDLE1BQU07SUFDTjVCLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxRQUFRLENBQUM7RUFDckM7QUFDRCxDQUFDLENBQUM7Ozs7Ozs7Ozs7QUNORixJQUFJK0IsTUFBTSxHQUFHN0IsUUFBUSxDQUFDb0UsYUFBYSxDQUFDLFNBQVMsQ0FBQztBQUM5QyxJQUFJQyxJQUFJLEdBQUdyRSxRQUFRLENBQUNvRSxhQUFhLENBQUMsT0FBTyxDQUFDO0FBQzFDLElBQUlFLFNBQVMsR0FBR3RFLFFBQVEsQ0FBQ3VFLGdCQUFnQixDQUFDLFlBQVksQ0FBQztBQUV2RDFDLE1BQU0sQ0FBQzVCLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxZQUFZO0VBQzVDLElBQUlvRSxJQUFJLENBQUMzRCxTQUFTLENBQUM4RCxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUU7SUFDekMsSUFBSSxDQUFDQyxZQUFZLENBQUMsZUFBZSxFQUFFLE9BQU8sQ0FBQztJQUMzQy9GLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxVQUFVLENBQUM7SUFDakN1RSxJQUFJLENBQUMzRCxTQUFTLENBQUNnRSxNQUFNLENBQUMsV0FBVyxDQUFDO0VBQ25DLENBQUMsTUFBTTtJQUNOTCxJQUFJLENBQUMzRCxTQUFTLENBQUNDLEdBQUcsQ0FBQyxXQUFXLENBQUM7SUFDL0JqQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM0QixRQUFRLENBQUMsVUFBVSxDQUFDO0lBQzlCLElBQUksQ0FBQ21FLFlBQVksQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDO0lBQzFDO0VBQ0Q7QUFDRCxDQUFDLENBQUM7QUFFRixDQUFDLFVBQVUvRixDQUFDLEVBQUU7RUFDYkEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDd0IsS0FBSyxDQUFDLFlBQVk7SUFDOUJ4QixDQUFDLENBQUMsWUFBWSxDQUFDLENBQUNpQixXQUFXLENBQUMsV0FBVyxDQUFDO0lBQ3hDakIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDaUIsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN2Q2pCLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxVQUFVLENBQUM7RUFDM0MsQ0FBQyxDQUFDO0FBQ0gsQ0FBQyxFQUFFUyxNQUFNLENBQUM7QUFFVixDQUFDLFVBQVU3QixDQUFDLEVBQUU7RUFDYkEsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDd0IsS0FBSyxDQUFDLFlBQVk7SUFDcEN4QixDQUFDLENBQUMsZUFBZSxDQUFDLENBQUM0QixRQUFRLENBQUMsVUFBVSxDQUFDO0VBQ3hDLENBQUMsQ0FBQztBQUNILENBQUMsRUFBRUMsTUFBTSxDQUFDO0FBRVYsQ0FBQyxVQUFVN0IsQ0FBQyxFQUFFO0VBQ2JBLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQ3dCLEtBQUssQ0FBQyxZQUFZO0lBQ25DeEIsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDb0IsV0FBVyxDQUFDLFVBQVUsQ0FBQztFQUMzQyxDQUFDLENBQUM7QUFDSCxDQUFDLEVBQUVTLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ25DVjtBQUNPLElBQUkrQixTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBQSxFQUFTO0VBQzNCLElBQUlJLEVBQUUsR0FBRyxJQUFJdkIsSUFBSSxDQUFDd0IsUUFBUSxDQUFDO0lBQ3pCRSxRQUFRLEVBQUU7TUFDUkUsUUFBUSxFQUFDLEdBQUc7TUFDWkQsSUFBSSxFQUFDO0lBQ1AsQ0FBQztJQUNENkIsVUFBVSxFQUFFLFNBQVpBLFVBQVVBLENBQUEsRUFBWTtNQUNwQmpHLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQ2dHLE1BQU0sQ0FBQyxDQUFDO0lBQzFCO0VBQ0YsQ0FBQyxDQUFDO0VBQ0ZoQyxFQUFFLENBQUNlLEVBQUUsQ0FBQyxnQkFBZ0IsRU
827FBRTtJQUFDbUIsT0FBTyxFQUFDO0VBQUUsQ0FBQyxDQUFDO0VBQ3RDbEMsRUFBRSxDQUFDZSxFQUFFLENBQUMsWUFBWSxFQUFFO0lBQUNFLE9BQU8sRUFBQztFQUFDLENBQUMsRUFBQyxRQUFRLENBQUM7QUFDMUMsQ0FBQzs7QUFHRDtBQUNPLElBQUluQixjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUEsRUFBUztFQUNoQ3JCLElBQUksQ0FBQ0MsR0FBRyxDQUFDLGdCQUFnQixFQUFFO0lBQUN1QyxPQUFPLEVBQUMsQ0FBQztJQUFFRCxDQUFDLEVBQUM7RUFBSyxDQUFDLENBQUM7QUFDbEQsQ0FBQzs7QUFFRDtBQUNPLElBQUlqQixjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUEsRUFBUztFQUNoQyxJQUFJb0MsU0FBUyxHQUFHbkcsQ0FBQyxDQUFDLHdCQUF3QixDQUFDO0VBQzNDLElBQUlvRyxRQUFRLEdBQUdELFNBQVMsQ0FBRTlGLElBQUksQ0FBQyxJQUFJLENBQUM7RUFDcEMsSUFBSWdHLFFBQVEsR0FBR0YsU0FBUyxDQUFFOUYsSUFBSSxDQUFDLGFBQWEsQ0FBQztFQUM3QyxJQUFJaUcscUJBQXFCLEdBQUdILFNBQVMsQ0FBQzFCLFdBQVcsQ0FBQyxDQUFDO0VBQ25ELElBQUk4QixLQUFLLEdBQUd2RyxDQUFDLENBQUMsc0JBQXNCLENBQUM7RUFDckNtRyxTQUFTLENBQUN6RSxJQUFJLENBQUMsYUFBYSxFQUFFNEUscUJBQXFCLENBQUM7RUFDckQ3RCxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDMEQsUUFBUSxFQUFFQyxRQUFRLENBQUMsRUFBRTtJQUFDcEIsT0FBTyxFQUFDLENBQUM7SUFBRUksQ0FBQyxFQUFFLENBQUM7RUFBRSxDQUFDLENBQUM7RUFDbEQ1QyxJQUFJLENBQUNDLEdBQUcsQ0FBQzZELEtBQUssRUFBRTtJQUFDdEIsT0FBTyxFQUFDLENBQUM7SUFBRUksQ0FBQyxFQUFDLENBQUM7RUFBRSxDQUFDLENBQUM7RUFDbkM1QyxJQUFJLENBQUNDLEdBQUcsQ0FBQ3lELFNBQVMsRUFBRTtJQUFDeEQsTUFBTSxFQUFDO0VBQUMsQ0FBQyxDQUFDO0FBQ2pDLENBQUM7O0FBR0Q7QUFDTyxJQUFJa0IsYUFBYSxHQUFFLFNBQWZBLGFBQWFBLENBQUEsRUFBUTtFQUM5QjdELENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQ3dHLElBQUksQ0FBQyxZQUFXO0lBQ3JCLElBQUlDLENBQUMsR0FBRyxJQUFJQyxNQUFNLENBQUMsR0FBRyxHQUFHbkIsTUFBTSxDQUFDb0IsUUFBUSxDQUFDQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ3BELElBQUcsQ0FBQ0gsQ0FBQyxDQUFDSSxJQUFJLENBQUMsSUFBSSxDQUFDQyxJQUFJLENBQUMsRUFBRTtNQUNyQjlHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQ00sRUFBRSxDQUFDLE9BQU8sRUFBRSxVQUFTeUcsS0FBSyxFQUFFO1FBQ2xDQSxLQUFLLENBQUN6RSxjQUFjLENBQUMsQ0FBQztRQUN0QnlFLEtBQUssQ0FBQ0MsZUFBZSxDQUFDLENBQUM7UUFDdkJ6QixNQUFNLENBQUMwQixJQUFJLENBQUMsSUFBSSxDQUFDSCxJQUFJLEVBQUUsUUFBUSxDQUFDO01BQ2xDLENBQUMsQ0FBQztJQUNKO0VBQ0YsQ0FBQyxDQUFDO0FBQ0osQ0FBQzs7QUFFRDtBQUNPLElBQUkzRSxlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUkrRSxPQUFPLEVBQUs7RUFFeEMsSUFBSUMsTUFBTSxHQUFHbkgsQ0FBQyxDQUFDa0gsT0FBTyxDQUFDLENBQUN4RixJQUFJLENBQUMsTUFBTSxDQUFDO0VBQ3BDLElBQUkwRixZQUFZLEdBQUdwSCxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUN5RSxXQUFXLENBQUMsQ0FBQztFQUM3Q2hDLElBQUksQ0FBQ3NDLEVBQUUsQ0FBQ1EsTUFBTSxFQUFFO0lBQUNsQixRQUFRLEVBQUMsRUFBRTtJQUFFRCxJQUFJLEVBQUUsVUFBVTtJQUM1Q2lELFFBQVEsRUFBQztNQUNQaEMsQ0FBQyxFQUFDOEI7TUFDRjtNQUNBO0lBQ0Y7RUFDRixDQUFDLENBQUM7RUFDRixPQUFPLEtBQUs7QUFDZCxDQUFDOzs7Ozs7Ozs7O0FDOUREO0FBQ0FuSCxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQ3dCLEtBQUssQ0FBQyxVQUFTdUYsS0FBSyxFQUFFO0VBQzNDLElBQUlPLFVBQVUsR0FBR3RILENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzBCLElBQUksQ0FBQyxJQUFJLENBQUM7RUFDbkMxQixDQUFDLENBQUMsZUFBZSxDQUFDLENBQUNvQixXQUFXLENBQUMsV0FBVyxDQUFDO0VBQzNDcEIsQ0FBQyxDQUFDLG9CQUFvQixHQUFDc0gsVUFBVSxHQUFDLElBQUksQ0FBQyxDQUFDMUYsUUFBUSxDQUFDLFdBQVcsQ0FBQztFQUM3RDtFQUNBNUIsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDNEIsUUFBUSxDQUFDLElBQUksQ0FBQztBQUNsQyxDQUFDLENBQUM7QUFDRjVCLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDd0IsS0FBSyxDQUFDLFVBQVN1RixLQUFLLEVBQUU7RUFDM0MvRyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUNvQixXQUFXLENBQUMsV0FBVyxDQUFDO0VBQzNDcEIsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDb0IsV0FBVyxDQUFDLElBQUksQ0FBQztBQUNyQyxDQUFDLENBQUM7QUFDRnBCLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQ3dCLEtBQUssQ0FBQyxVQUFTdUYsS0FBSyxFQUFFO0VBQ3RDL0csQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDb0IsV0FBVyxDQUFDLFdBQVcsQ0FBQztFQUMzQ3BCLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxJQUFJLENBQUM7QUFDckMsQ0FBQyxDQUFDOztBQUlGO0FBQ0FwQixDQUFDLENBQUMsYUFBYSxDQUFDLENBQUN3QixLQUFLLENBQUMsVUFBU3VGLEtBQUssRUFBRTtFQUNyQyxJQUFJUSxlQUFlLEdBQUd2SCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMwQixJQUFJLENBQUMsSUFBSSxDQUFDO0VBQ3hDMUIsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUNvQixXQUFXLENBQUMsa0JBQWtCLENBQUM7RUFDdkRwQixDQUFDLENBQUMseUJBQXlCLEdBQUN1SCxlQUFlLEdBQUMsSUFBSSxDQUFDLENBQUMzRixRQUFRLENBQUMsa0JBQWtCLENBQUM7RUFDOUU7QUFFRixDQUFDLENBQUM7QUFDRjVCLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDd0IsS0FBSyxDQUFDLFVBQVN1RixLQUFLLEVBQUU7RUFDek
827MvRyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQztBQUV6RCxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQzlCSyxJQUFJZ0IsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUEsRUFBUztFQUM5QixJQUFJNEIsRUFBRSxHQUFHLElBQUl2QixJQUFJLENBQUN3QixRQUFRLENBQUM7SUFDM0JDLE1BQU0sRUFBQyxJQUFJO0lBQ1hDLFFBQVEsRUFBRTtNQUNUQyxJQUFJLEVBQUUsYUFBYTtNQUNuQkMsUUFBUSxFQUFDO0lBQ1Y7RUFDRCxDQUFDLENBQUM7RUFFRCxJQUFJOEIsU0FBUyxHQUFHbkcsQ0FBQyxDQUFDLHdCQUF3QixDQUFDO0VBQzNDLElBQUlvRyxRQUFRLEdBQUdELFNBQVMsQ0FBQzlGLElBQUksQ0FBQyxJQUFJLENBQUM7RUFDbkMsSUFBSW1ILElBQUksR0FBR3JCLFNBQVMsQ0FBQzlGLElBQUksQ0FBQyxhQUFhLENBQUM7RUFDeEMsSUFBSWtHLEtBQUssR0FBR3ZHLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQztFQUNyQyxJQUFJeUgsWUFBWSxHQUFHdEIsU0FBUyxDQUFDekUsSUFBSSxDQUFDLGFBQWEsQ0FBQzs7RUFFaEQ7RUFDQXNDLEVBQUUsQ0FBQ2UsRUFBRSxDQUFDLGdCQUFnQixFQUFFO0lBQUNLLFFBQVEsRUFBQztFQUFFLENBQUMsRUFBRSxZQUFZLENBQUM7RUFDckRwQixFQUFFLENBQUNlLEVBQUUsQ0FBQ29CLFNBQVMsRUFBRTtJQUFDeEQsTUFBTSxFQUFDOEU7RUFBWSxDQUFDLEVBQUUsWUFBWSxDQUFDO0VBQ3BEekQsRUFBRSxDQUFDZSxFQUFFLENBQUMsQ0FBQ3FCLFFBQVEsRUFBRW9CLElBQUksRUFBRWpCLEtBQUssQ0FBQyxFQUFFO0lBQUN0QixPQUFPLEVBQUMsQ0FBQztJQUFFSSxDQUFDLEVBQUMsQ0FBQztJQUFFaEIsUUFBUSxFQUFDO0VBQUcsQ0FBQyxFQUFFLGlCQUFpQixDQUFDO0VBRWxGLE9BQU9MLEVBQUU7QUFDVixDQUFDOzs7Ozs7Ozs7O0FDckJELElBQU0wRCxNQUFNLEdBQUcsSUFBSUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtFQUNwQzs7RUFFQUMsSUFBSSxFQUFFLE1BQU07RUFDWkMsS0FBSyxFQUFFLElBQUk7RUFDWEMsUUFBUSxFQUFFO0lBQ1RDLEtBQUssRUFBRTtFQUNSLENBQUM7RUFDRDtFQUNBQyxVQUFVLEVBQUU7SUFDWEMsTUFBTSxFQUFFLHFCQUFxQjtJQUM3QkMsTUFBTSxFQUFFO0VBQ1Q7QUFDRCxDQUFDLENBQUM7Ozs7Ozs7Ozs7QUNiRkMsVUFBVSxDQUFDLENBQUM7O0FBRVo7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJQyxXQUFXO0FBQ2ZwSSxDQUFDLENBQUN1RixNQUFNLENBQUMsQ0FBQ2pGLEVBQUUsQ0FBQyxRQUFRLEVBQUUsVUFBVUcsQ0FBQyxFQUFFO0VBQ25DNEgsWUFBWSxDQUFDRCxXQUFXLENBQUM7RUFDekJBLFdBQVcsR0FBR0UsVUFBVSxDQUFDLFlBQVk7SUFDcENILFVBQVUsQ0FBQyxDQUFDO0VBQ2IsQ0FBQyxFQUFFLEdBQUcsQ0FBQztBQUNSLENBQUMsQ0FBQzs7QUFFRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsVUFBVUEsQ0FBQSxFQUFHO0VBQ3JCLElBQUlJLElBQUksR0FBR3ZJLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDSyxJQUFJLENBQUMsT0FBTyxDQUFDO0VBQzdDLElBQUlrSSxJQUFJLENBQUNDLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRTtJQUN4QkQsSUFBSSxDQUFDbEksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDQyxFQUFFLENBQUMsT0FBTyxFQUFFLFVBQVV5RyxLQUFLLEVBQUU7TUFDM0NBLEtBQUssQ0FBQ3pFLGNBQWMsQ0FBQyxDQUFDO01BQ3RCLElBQUk2RSxNQUFNLEdBQUduSCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMwQixJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ2hDNkcsSUFBSSxHQUFHdkksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDeUksT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUMvQkMsT0FBTyxHQUFHSCxJQUFJLENBQUNsSSxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ3hCc0ksSUFBSSxHQUFHSixJQUFJLENBQUNFLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDcEksSUFBSSxDQUFDLE9BQU8sQ0FBQztNQUNyRHFJLE9BQU8sQ0FBQ3RILFdBQVcsQ0FBQyxRQUFRLENBQUM7TUFDN0J1SCxJQUFJLENBQUN2SCxXQUFXLENBQUMsUUFBUSxDQUFDO01BQzFCcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDNEIsUUFBUSxDQUFDLFFBQVEsQ0FBQztNQUMxQjVCLENBQUMsQ0FBQ21ILE1BQU0sQ0FBQyxDQUFDdkYsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUM3QixDQUFDLENBQUM7RUFDSCxDQUFDLE1BQU07SUFDTjVCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQ00sRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZO01BQ2xDLElBQUk2RixTQUFTLEdBQUduRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUN5SSxPQUFPLENBQUMsaUJBQWlCLENBQUM7UUFDakRHLE1BQU0sR0FBRzVJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzBCLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDM0JtSCxLQUFLLEdBQUcxQyxTQUFTLENBQUM5RixJQUFJLENBQUMsT0FBTyxDQUFDO01BQ2hDOEYsU0FBUyxDQUFDOUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDZSxXQUFXLENBQUMsUUFBUSxDQUFDO01BQy9DeUgsS0FBSyxDQUFDekgsV0FBVyxDQUFDLFFBQVEsQ0FBQztNQUMzQnBCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzRCLFFBQVEsQ0FBQyxRQUFRLENBQUM7TUFDMUJ1RSxTQUFTLENBQUM5RixJQUFJLENBQUMsa0JBQWtCLEdBQUd1SSxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUNoSCxRQUFRLENBQUMsUUFBUSxDQUFDO0lBQ3RFLENBQUMsQ0FBQztFQUNIO0FBQ0Q7Ozs7Ozs7Ozs7QUNsREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBTixRQUFRLENBQUNDLGdCQUFnQixDQUN4QixrQkFBa0IsRUFDbEIsWUFBWTtFQUNYLElBQU11SCxNQUFNLEdBQUcsSUFBSUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtJQUN2Q2pCLFFBQVEsRUFBRSxLQUFLO0lBQ2ZrQixZQUFZLEVBQUUsS0FBSztJQUNuQkMsVUFBVSxFQUFFO01BQ1hDLE9BQU8sRUFBRSxJQUFJO01BQ2JDLFNBQVMsRUFBRTtJQUNaLENBQUM7SUFDREMsV0FBVyxFQUFFO0VBQ2QsQ0FBQyxDQUFDO0VBQ0YsQ0FBQyxVQUFVcEosQ0FBQyxFQUFFO0lBQ2JBLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDT
827SxFQUFFLENBQUMsT0FBTyxFQUFFLFlBQVk7TUFDM0NOLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDNEIsUUFBUSxDQUFDLFlBQVksQ0FBQztNQUMzQ2tILE1BQU0sQ0FBQ08sSUFBSSxDQUFDLENBQUM7TUFDYjtNQUNBO01BQ0FySixDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM0QixRQUFRLENBQUMsc0JBQXNCLENBQUM7TUFDOUM7SUFDRCxDQUFDLENBQUM7RUFDSCxDQUFDLEVBQUVDLE1BQU0sQ0FBQztFQUNWLENBQUMsVUFBVTdCLENBQUMsRUFBRTtJQUNiQSxDQUFDLENBQUMsd0JBQXdCLENBQUMsQ0FBQ00sRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZO01BQ25ETixDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQ29CLFdBQVcsQ0FBQyxZQUFZLENBQUM7TUFDOUMwSCxNQUFNLENBQUNRLElBQUksQ0FBQyxDQUFDO01BQ2I7TUFDQTtNQUNBdEosQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDb0IsV0FBVyxDQUFDLHNCQUFzQixDQUFDO01BQ2pEO0lBQ0QsQ0FBQyxDQUFDO0VBQ0gsQ0FBQyxFQUFFUyxNQUFNLENBQUM7QUFDWCxDQUFDLEVBQ0QsS0FDRCxDQUFDOzs7Ozs7Ozs7Ozs7O0FDOUNtQjtBQUVwQjBELE1BQU0sQ0FBQ2hFLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxZQUFZO0VBQzNDO0VBQ0FxQyxvREFBUyxDQUFDLENBQUM7RUFDWEMsd0RBQWEsQ0FBQyxDQUFDO0VBQ2ZKLHdEQUFhLENBQUMsQ0FBQztFQUNmTSx5REFBYyxDQUFDLENBQUM7RUFDaEIxQixzREFBVyxDQUFDLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRmtELE1BQU0sQ0FBQ2hFLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxZQUFZO0VBQzdDLElBQUl2QixDQUFDLENBQUN1RixNQUFNLENBQUMsQ0FBQy9DLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQzlCLENBQUMsTUFBTSxDQUNQO0FBQ0QsQ0FBQyxDQUFDOzs7Ozs7VUN0QkY7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTs7VUFFQTtVQUNBOztVQUVBO1VBQ0E7VUFDQTs7Ozs7V0N0QkE7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBLGlDQUFpQyxXQUFXO1dBQzVDO1dBQ0E7Ozs7O1dDUEE7V0FDQTtXQUNBO1dBQ0E7V0FDQSx5Q0FBeUMsd0NBQXdDO1dBQ2pGO1dBQ0E7V0FDQTs7Ozs7V0NQQTs7Ozs7V0NBQTtXQUNBO1dBQ0E7V0FDQSx1REFBdUQsaUJBQWlCO1dBQ3hFO1dBQ0EsZ0RBQWdELGFBQWE7V0FDN0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNOb0M7QUFDcEM7QUFDb0M7QUFDcEM7QUFDQTtBQUNvQztBQUNwQztBQUNBO0FBQzBDO0FBQ1I7QUFDbEM7QUFDb0M7QUFDcEM7QUFDZ0M7QUFDaEM7QUFDZ0M7QUFDaEM7QUFDa0M7QUFDSztBQUNUO0FBQ0siLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9mdWdfdGhlbWUvLi9zcmMvanMvY29tcG9uZW50cy9hY2MuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvYmxvZy1kcm9wZG93bi5qcyIsIndlYnBhY2s6Ly9mdWdfdGhlbWUvLi9zcmMvanMvY29tcG9uZW50cy9jYXQtdG9nZ2xlLmpzIiwid2VicGFjazovL2Z1Z190aGVtZS8uL3NyYy9qcy9jb21wb25lbnRzL2NoZWNrZm9yanMuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvY2xpY2tFdmVudHMuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvZm9ybS1wb3AuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvZ2xvYmFsLmpzIiwid2VicGFjazovL2Z1Z190aGVtZS8uL3NyYy9qcy9jb21wb25lbnRzL2dzYXBSZWdpc3RlcnMuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvbWVudVRvZ2dsZS5qcyIsIndlYnBhY2s6Ly9mdWdfdGhlbWUvLi9zcmMvanMvY29tcG9uZW50cy9uYXYtY2xhc3Mtc2Nyb2xsLmpzIiwid2VicGFjazovL2Z1Z190aGVtZS8uL3NyYy9qcy9jb21wb25lbnRzL25hdi10b2dnbGUuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvcGFnZVNldHVwLmpzIiwid2VicGFjazovL2Z1Z190aGVtZS8uL3NyYy9qcy9jb21wb25lbnRzL3BvcC10ZWFtLmpzIiwid2VicGFjazovL2Z1Z190aGVtZS8uL3NyYy9qcy9jb21wb25lbnRzL3NlYXJjaFJldmVhbC5qcyIsIndlYnBhY2s6Ly9mdWdfdGhlbWUvLi9zcmMvanMvY29tcG9uZW50cy9zd2lwZXIuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvdGFicy5qcyIsIndlYnBhY2s6Ly9mdWdfdGhlbWUvLi9zcmMvanMvY29tcG9uZW50cy92aWRlby1wb3AuanMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2NvbXBvbmVudHMvd2luZG93TG9hZC5qcyIsIndlYnBhY2s6Ly9mdWdfdGhlbWUvd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lL3dlYnBhY2svcnVudGltZS9jb21wYXQgZ2V0IGRlZmF1bHQgZXhwb3J0Iiwid2VicGFjazovL2Z1Z190aGVtZS93ZWJwYWNrL3J1bnRpbWUvZGVmaW5lIHByb3BlcnR5IGdldHRlcnMiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lL3dlYnBhY2svcnVudGltZS9oYXNPd25Qcm9wZXJ0eSBzaG9ydGhhbmQiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lL3dlYnBhY2svcnVudGltZS9tYWtlIG5hbWVzcGFjZSBvYmplY3QiLCJ3ZWJwYWNrOi8vZnVnX3RoZW1lLy4vc3JjL2pzL2J1bmRsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIkKGZ1bmN0aW9uKCkge1xuXHR2YXIgQWNjb3JkaW9uID0gZnVuY3Rpb24oZWwsIG11bHRpcGxlKSB7XG5cdFx0dGhpcy5lbCA9IGVsIHx8IHt9O1xuXHRcdHRoaXMubXVsdGlwbGUgPSBtdWx0aXBsZSB8fCBmYWxzZTtcblxuXHRcdC8vIFZhcmlhYmxlcyBwcml2YWRhc1xuXHRcdHZhciBsaW5rcyA9IHRoaXMuZWwuZmluZCgnLmxpbmsnKTtcblx0XHQvLyBFdmVudG9cblx0XHRsaW5rcy5vbignY2xpY2snLCB7ZWw6IHRoaXMuZWwsIG11bHRpcGxlOiB0aGlzLm11bHRpcGxlfSwgdGhpcy5kcm9wZG93bilcblx0fVxuXG5cdEFjY29yZGlvbi5wcm90b3R5cGUuZHJvcGRvd24gPSBmdW5jdGlvbihlKSB7XG5cdFx0dmFyICRlbCA9IGUuZGF0YS5lbDtcblx0XHRcdCR0aGlzID0gJCh0aGlzKSxcblx0XHRcdCRuZXh0ID0gJHRoaXMubmV4dCgpO1xuXG5cdFx0JG5leHQuc2xpZGVUb2dnbGUoNDAwKTtcblx0XHQkdGhpcy5wYXJlbnQoKS50b2dnbGVDbGFzcygnb3BlbicpO1xuXG5cdFx0aWYgKCFlLmRhdGEubXVsdGlwbGUpIHtcblx0XHRcdCRlbC5maW5kKCcuc3VibWVudScpLm5vdCgkbmV4dCkuc2xpZGVVcCgpLnBhcmVudCgpLnJlbW92ZUNsYXNzKCdvcGVuJyk7XG5cdFx0fTtcblx0fVx0XG5cblx0dmFyIGFjY29yZGlvbiA9IG5ldyBBY2NvcmRpb24oJCgnLmFjY29yZGlvbi1mbGV4JyksIGZhbHNlKTtcbn0pO1xuIiwiZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcblx0XCJET01Db250ZW50TG9hZGVkXCIsXG5cdGZ1bmN0aW9uICgpIHtcblx0XHQoZnVuY3Rpb24gKCQpIHtcblx0XHRcdCQoXCIuYmxvZ0Ryb3Bkb3duVG9nZ2xlXCIpLmNsaWNrKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0aWYgKCQoXCIuZHJvcGRvd25NZW51XCIpLmhhc0NsYXNzKFwiaXMtYWN0aXZlXCIpKSB7XG5cdFx0XHRcdFx0JChcIi
8275kcm9wZG93bk1lbnVcIikucmVtb3ZlQ2xhc3MoXCJpcy1hY3RpdmVcIik7XG5cdFx0XHRcdFx0JChcIi5ibG9nLWRyb3Bkb3duXCIpLnJlbW92ZUNsYXNzKFwiaXMtZXhwYW5kZWRcIik7XG5cdFx0XHRcdFx0JCh0aGlzKS5hdHRyKFwiYXJpYS1leHBhbmRlZFwiLCBcImZhbHNlXCIpO1xuXHRcdFx0XHRcdCQodGhpcykuc2libGluZ3MoXCIuZHJvcGRvd25NZW51XCIpLmF0dHIoXCJhcmlhLWhpZGRlblwiLCBcInRydWVcIik7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0JChcIi5kcm9wZG93bk1lbnVcIikuYWRkQ2xhc3MoXCJpcy1hY3RpdmVcIik7XG5cdFx0XHRcdFx0JCh0aGlzKS5hdHRyKFwiYXJpYS1leHBhbmRlZFwiLCBcInRydWVcIik7XG5cdFx0XHRcdFx0JChcIi5ibG9nLWRyb3Bkb3duXCIpLmFkZENsYXNzKFwiaXMtZXhwYW5kZWRcIik7XG5cdFx0XHRcdFx0JCh0aGlzKS5zaWJsaW5ncyhcIi5kcm9wZG93bk1lbnVcIikuYXR0cihcImFyaWEtaGlkZGVuXCIsIFwiZmFsc2VcIik7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH0pKGpRdWVyeSk7XG5cdH0sXG5cdGZhbHNlXG4pO1xuIiwiJChcIi50aGUtY2F0XCIpLm9uKFwibW91c2VlbnRlclwiLCBmdW5jdGlvbiAoKSB7XG5cdCQodGhpcykuYWRkQ2xhc3MoXCJhY3RpdmVcIik7XG5cdCQodGhpcykuYXR0cihcImFyaWEtZXhwYW5kZWRcIiwgXCJ0cnVlXCIpO1xuXHQkKHRoaXMpLmNoaWxkcmVuKFwiLmlubmVyLXdyYXBcIikuYXR0cihcImFyaWEtaGlkZGVuXCIsIFwiZmFsc2VcIik7XG59KTtcblxuJChcIi50aGUtY2F0XCIpLm9uKFwibW91c2VsZWF2ZVwiLCBmdW5jdGlvbiAoKSB7XG5cdCQodGhpcykucmVtb3ZlQ2xhc3MoXCJhY3RpdmVcIik7XG5cdCQodGhpcykuYXR0cihcImFyaWEtZXhwYW5kZWRcIiwgXCJmYWxzZVwiKTtcblx0JCh0aGlzKS5jaGlsZHJlbihcIi5pbm5lci13cmFwXCIpLmF0dHIoXCJhcmlhLWhpZGRlblwiLCBcInRydWVcIik7XG59KTtcbiIsImRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnanMnKTtcbiIsImltcG9ydCB7IG1lbnVUb2dnbGUsIHNtb290aFNjcm9sbGluZywgc2VhcmNoUmV2ZWFsIH0gZnJvbSBcIi4vaW5kZXguanNcIjtcblxuZXhwb3J0IGxldCBjbGlja0V2ZW50cyA9ICgpID0+IHtcblx0aWYgKCEkKFwibWFpblwiKS5oYXNDbGFzcyhcInBhZ2Utc2NoZWR1bGVcIikpIHtcblx0XHQvLyBDbGlja2luZyBvbiBIYXNoIExpbmtzXG5cdFx0JCgnYVtocmVmXj1cIiNcIl0nKS5vbihcImNsaWNrXCIsIGZ1bmN0aW9uIChlKSB7XG5cdFx0XHRlLnByZXZlbnREZWZhdWx0KCk7XG5cdFx0XHRpZiAoc2NyZWVuLndpZHRoIDw9IDEwMjUpIHtcblx0XHRcdFx0Ly8gSWYgSXQncyBBIEhhc2ggTGluayBvbiBNb2JpbGUgU2Nyb2xsIGFuZCBDbG9zZSBNZW51XG5cdFx0XHRcdGdzYXAuc2V0KCQoXCIud3JhcHBlclwiKSwgeyBoZWlnaHQ6IFwiYXV0b1wiLCBvdmVyZmxvdzogXCJ2aXNpYmxlXCIgfSk7XG5cdFx0XHRcdG1lbnVUb2dnbGVUTC5yZXZlcnNlKCk7XG5cdFx0XHRcdHNtb290aFNjcm9sbGluZygkKHRoaXMpKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdC8vIE90aGVyd2lzZSBqdXN0IHNjcm9sbCB0byB0aGUgaGFzaFxuXHRcdFx0XHRzbW9vdGhTY3JvbGxpbmcoJCh0aGlzKSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cbn07XG4iLCIoZnVuY3Rpb24oICQgKSB7XG4gICQoJy50b2dnbGVGb3JtJykuY2xpY2soZnVuY3Rpb24oKSB7XG4gICAgJCgnLnBvcC1mb3JtJykuYWRkQ2xhc3MoJ2FjdGl2ZScpO1xuICB9XG4pO1xufSkoalF1ZXJ5KTtcbihmdW5jdGlvbiggJCApIHtcbiAgJCgnLmNsb3NlUG9wRm9ybU1vZGFsJykuY2xpY2soZnVuY3Rpb24oKSB7XG5cblxuXG4gICAgJCgnLnBvcC1mb3JtJykucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICB9XG4pO1xufSkoalF1ZXJ5KTtcbiIsIi8vIChmdW5jdGlvbiAoJCkge1xuLy8gXHQkKFwiLmNvbnRlbnQtc2hpZnQgcCBpbWdcIikucGFyZW50KCkuY3NzKHsgXCJwYWRkaW5nLWxlZnRcIjogXCIwXCIgfSk7XG4vLyBcdCQoXCIuY29udGVudC1zaGlmdCBwIGltZ1wiKS5wYXJlbnQoKS5hZGRDbGFzcyhcImltZy1ib3JkZXItYmdcIik7XG4vLyAgfSkoalF1ZXJ5KTtcblxuLy8gKGZ1bmN0aW9uICgkKSB7XG4vLyBcdCQoXCIuZ2xvYmFsLWNvbnRlbnQgcCA+IGltZ1wiKS5wYXJlbnQoKS5hZGRDbGFzcyhcImltZy1ib3JkZXItYmdcIik7XG4vLyB9KShqUXVlcnkpO1xuXG4vLyBjb25zdCBwbGF5ZXIgPSBuZXcgUGx5cihcIi5wbHllclBsYXllclwiLCB7XG4vLyBcdC8vICAgIGF1dG9wbGF5OiB0cnVlLFxuLy8gXHRoaWRlQ29udHJvbHM6IGZhbHNlLFxuLy8gXHRmdWxsc2NyZWVuOiB7XG4vLyBcdFx0ZW5hYmxlZDogdHJ1ZSxcbi8vIFx0XHRpb3NOYXRpdmU6IHRydWUsXG4vLyBcdH0sXG4vLyBcdHBsYXlzaW5saW5lOiBmYWxzZSxcbi8vICB9KTtcblxuLy8gU1BMQVNIXG5cbnZhciBhY2MgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiYWNjb3JkaW9uXCIpO1xudmFyIGk7XG5cbmZvciAoaSA9IDA7IGkgPCBhY2MubGVuZ3RoOyBpKyspIHtcblx0YWNjW2ldLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCBmdW5jdGlvbiAoKSB7XG5cdFx0dGhpcy5jbGFzc0xpc3QudG9nZ2xlKFwiYWN0aXZlXCIpO1xuXHRcdHZhciBwYW5lbCA9IHRoaXMubmV4dEVsZW1lbnRTaWJsaW5nO1xuXHRcdGlmIChwYW5lbC5zdHlsZS5tYXhIZWlnaHQpIHtcblx0XHRcdHBhbmVsLnN0eWxlLm1heEhlaWdodCA9IG51bGw7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHBhbmVsLnN0eWxlLm1heEhlaWdodCA9IHBhbmVsLnNjcm9sbEhlaWdodCArIFwicHhcIjtcblx0XHR9XG5cdH0pO1xufVxuIiwiLy8gUmVnaXN0ZXIgYW55IEdTQVAgcGx1Z2lucyB3ZSBuZWVkXG5leHBvcnQgbGV0IGdzYXBSZWdpc3RlcnMgPSAoKSA9PiB7XG4gIGdzYXAucmVnaXN0ZXJQbHVnaW4oU2Nyb2xsVG9QbHVnaW4pO1xufSIsIi8vIEltcG9ydCBBbGwgRnVuY3Rpb25zIGhlcmVcbi8vIFNvIHRoZXkgY2FuIGFsbCBiZSBjYWxsZWQgZnJvbTogaW5kZXguanMgaW4gb3RoZXIgZmlsZXMuXG5leHBvcnQge1xuICBwcmVMb2FkZXIsXG4gIGV4dGVybmFsTGlua3MsXG4gIHNtb290aFNjcm9sbGluZyxcbiAgbW9iaWxlTmF2U2V0dXAsXG4gIG5hdlNlYXJjaFNldHVwXG59IGZyb20gJy4vcGFnZVNldHVwLmpzJ1xuXG5leHBvcnQge1xuICBtZW51VG9nZ2xlXG59IGZyb20gJy4vbWVudVRvZ2dsZS5qcydcblxuZXhwb3J0IHtcbiAgZ3NhcFJlZ2lzdGVyc1xufSBmcm9tICcuL2dzYXBSZWdpc3RlcnMuanMnXG5cbmV4cG9ydCB7XG4gIGNsaWNrRXZlbnRzLFxufSBmcm9tICcuL2NsaWNrRXZlbnRzLmpzJ1xuXG5leHBvcnQge1xuICBzZWFyY2hSZXZlYWwsXG59IGZyb20gJy4vc2VhcmNoUmV2ZWFsLmpzJ1xuIiwiLy8gQW5pbWF0ZSBUaGUgTW9iaWxlIE5hdiBvcGVuIGFuZCBjbG9zZWQgLSBjYWxsZWQgaW4gY2xpY2tFdmVudHMuanNcbmV4cG9ydCBsZXQgbWVudVRvZ2dsZSA9ICgpID0+IHtcblx0bGV0IHRsID0gbmV3IGdzYXAudGltZWxpbmUoe1xuXHRcdHBhdXNlZDp0cnVlLFxuXHRcdGRlZmF1bHRzOiB7XG5cdFx0XHRlYXNlOiAnY2lyYy5vdXQoKScsXG5cdFx0XHRkdXJhdGlvbj
827owLjMsXG5cdFx0fVxuXHR9KTtcblxuXHRsZXQgbWVudVdpZHRoID0gJCgnLm1lbnVUb2dnbGUnKS5vdXRlcldpZHRoKCk7XG5cdGxldCBtZW51SGVpZ2h0ID0gJCgnLm1lbnVUb2dnbGUnKS5vdXRlckhlaWdodCgpO1xuXHRsZXQgdG9nZ2xlZFdpZHRoID0gKG1lbnVXaWR0aCAvIDQpICogMztcblx0bGV0IHRvZ2dsZWRYID0gbWVudVdpZHRoIC8gNDtcblx0bGV0IGFuZ2xlZFdpZHRoID0gbWVudVdpZHRoIC8gMztcblx0bGV0IGFuZ2xlZFkgPSAobWVudUhlaWdodCAvIDMpIC0gMTtcblx0bGV0IGFuZ2xlZFggPSAobWVudVdpZHRoIC0gYW5nbGVkV2lkdGgpICsgMTtcblxuXHR0bC50bygnLm1haW4tbmF2Jywge2R1cmF0aW9uOjAuMywgeDonMCUnfSwgJ21lbnVPcGVuJyk7XG5cdHRsLnRvKCduYXYgLm1lbnUtaXRlbScsIHtvcGFjaXR5OjEsIHg6JzAlJywgc3RhZ2dlcjoge2Ftb3VudDowLjF9fSwgJ21lbnVPcGVuKz0wLjInKTtcblx0dGwudG8oJy5oYW1Ub3AnLCB7cm90YXRpb246NDUseDphbmdsZWRYICx5OmFuZ2xlZFksIHdpZHRoOmFuZ2xlZFdpZHRoLCB0cmFuc2Zvcm1PcmlnaW46JzUwJSA1MCUnfSwgJ21lbnVPcGVuJyk7XG5cdHRsLnRvKCcuaGFtTWlkJywge3g6dG9nZ2xlZFgsIHdpZHRoOnRvZ2dsZWRXaWR0aH0sICdtZW51T3BlbicpO1xuXHR0bC50bygnLmhhbUJvdCcsIHtyb3RhdGlvbjotNDUsIHg6YW5nbGVkWCwgeTotYW5nbGVkWSwgd2lkdGg6YW5nbGVkV2lkdGgsIHRyYW5zZm9ybU9yaWdpbjonNTAlIDUwJSd9LCAnbWVudU9wZW4nKTtcblxuXHRyZXR1cm4gdGw7XG59IiwiJCh3aW5kb3cpLnNjcm9sbChmdW5jdGlvbiAoKSB7XG5cdGlmICgkKHRoaXMpLnNjcm9sbFRvcCgpID4gMTAwKSB7XG5cdFx0JChcIi5tYXN0aGVhZFwiKS5hZGRDbGFzcyhcImFkZC1iZ1wiKTtcblx0fSBlbHNlIHtcblx0XHQkKFwiLm1hc3RoZWFkXCIpLnJlbW92ZUNsYXNzKFwiYWRkLWJnXCIpO1xuXHR9XG59KTtcbiIsInZhciB0b2dnbGUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiI3N3aXRjaFwiKTtcbnZhciBtZW51ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNtZW51XCIpO1xudmFyIG1lbnVJdGVtcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIjbWVudSBsaSBhXCIpO1xuXG50b2dnbGUuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uICgpIHtcblx0aWYgKG1lbnUuY2xhc3NMaXN0LmNvbnRhaW5zKFwiaXMtYWN0aXZlXCIpKSB7XG5cdFx0dGhpcy5zZXRBdHRyaWJ1dGUoXCJhcmlhLWV4cGFuZGVkXCIsIFwiZmFsc2VcIik7XG5cdFx0JChcImJvZHlcIikucmVtb3ZlQ2xhc3MoXCJub1Njcm9sbFwiKTtcblx0XHRtZW51LmNsYXNzTGlzdC5yZW1vdmUoXCJpcy1hY3RpdmVcIik7XG5cdH0gZWxzZSB7XG5cdFx0bWVudS5jbGFzc0xpc3QuYWRkKFwiaXMtYWN0aXZlXCIpO1xuXHRcdCQoXCJib2R5XCIpLmFkZENsYXNzKFwibm9TY3JvbGxcIik7XG5cdFx0dGhpcy5zZXRBdHRyaWJ1dGUoXCJhcmlhLWV4cGFuZGVkXCIsIFwidHJ1ZVwiKTtcblx0XHQvL21lbnVJdGVtc1swXS5mb2N1cygpO1xuXHR9XG59KTtcblxuKGZ1bmN0aW9uICgkKSB7XG5cdCQoXCIjc3dpdGNoXCIpLmNsaWNrKGZ1bmN0aW9uICgpIHtcblx0XHQkKFwiLmhhbWJ1cmdlclwiKS50b2dnbGVDbGFzcyhcIm1lbnUtb3BlblwiKTtcblx0XHQkKFwiLmhlYWRlclwiKS50b2dnbGVDbGFzcyhcImRyYXdlci1vcGVuXCIpO1xuXHRcdCQoXCIuZmlsdGVyRXhwYW5kXCIpLnJlbW92ZUNsYXNzKFwiZXhwYW5kZWRcIik7XG5cdH0pO1xufSkoalF1ZXJ5KTtcblxuKGZ1bmN0aW9uICgkKSB7XG5cdCQoXCIuZmlsdGVyVG9nZ2xlXCIpLmNsaWNrKGZ1bmN0aW9uICgpIHtcblx0XHQkKFwiLmZpbHRlckV4cGFuZFwiKS5hZGRDbGFzcyhcImV4cGFuZGVkXCIpO1xuXHR9KTtcbn0pKGpRdWVyeSk7XG5cbihmdW5jdGlvbiAoJCkge1xuXHQkKFwiLmNsb3NlRmlsdGVyXCIpLmNsaWNrKGZ1bmN0aW9uICgpIHtcblx0XHQkKFwiLmZpbHRlckV4cGFuZFwiKS5yZW1vdmVDbGFzcyhcImV4cGFuZGVkXCIpO1xuXHR9KTtcbn0pKGpRdWVyeSk7XG4iLCIvLyBTaG93IGFuZCBIaWRlIHRoZSBQcmVsb2FkZXIgLSBDYWxsZWQgb24gd2luZG93TG9hZC5qc1xuZXhwb3J0IGxldCBwcmVMb2FkZXIgPSAoKSA9PiB7XG4gIGxldCB0bCA9IG5ldyBnc2FwLnRpbWVsaW5lKHtcbiAgICBkZWZhdWx0czoge1xuICAgICAgZHVyYXRpb246MC4zLFxuICAgICAgZWFzZToncG93ZXIxLmluJyxcbiAgICB9LFxuICAgIG9uQ29tcGxldGU6IGZ1bmN0aW9uKCl7XG4gICAgICAkKCcjcHJlbG9hZGVyJykucmVtb3ZlKCk7XG4gICAgfVxuICB9KVxuICB0bC50bygnI3ByZWxvYWRlciBzdmcnLCB7cm90YXRlWTo5MH0pO1xuXHR0bC50bygnI3ByZWxvYWRlcicsIHtvcGFjaXR5OjB9LFwiKz0wLjA1XCIpO1xufVxuXG5cbi8vIEhpZGUgRWFjaCBvZiB0aGUgTW9iaWxlIE5hdiBMaW5rcyAtIGNhbGxlZCBpbiB3aW5kb3dMb2FkLmpzXG5leHBvcnQgbGV0IG1vYmlsZU5hdlNldHVwID0gKCkgPT4ge1xuICBnc2FwLnNldCgnbmF2IC5tZW51LWl0ZW0nLCB7b3BhY2l0eTowLCB4Oic1MCUnfSk7XG59XG5cbi8vIEhpZGUgRWFjaCBvZiB0aGUgTW9iaWxlIE5hdiBMaW5rcyAtIGNhbGxlZCBpbiB3aW5kb3dMb2FkLmpzXG5leHBvcnQgbGV0IG5hdlNlYXJjaFNldHVwID0gKCkgPT4ge1xuICBsZXQgY29udGFpbmVyID0gJCgnLmhlYWRlclNlYXJjaENvbnRhaW5lcicpXG4gIGxldCBoZWFkbGluZSA9IGNvbnRhaW5lciAuZmluZCgnaDQnKTtcbiAgbGV0IHRoaXNGb3JtID0gY29udGFpbmVyIC5maW5kKCcuc2VhcmNoZm9ybScpO1xuICBsZXQgc2VhcmNoQ29udGFpbmVySGVpZ2h0ID0gY29udGFpbmVyLm91dGVySGVpZ2h0KCk7XG4gIGxldCBjbG9zZSA9ICQoJy5tb2JpbGUtc2VhcmNoLWNsb3NlJyk7XG4gIGNvbnRhaW5lci5hdHRyKCdkYXRhLWhlaWdodCcsIHNlYXJjaENvbnRhaW5lckhlaWdodClcblx0Z3NhcC5zZXQoW2hlYWRsaW5lLCB0aGlzRm9ybV0sIHtvcGFjaXR5OjAsIHk6IC0xMH0pO1xuICBnc2FwLnNldChjbG9zZSwge29wYWNpdHk6MCwgeTotMTB9KTtcbiAgZ3NhcC5zZXQoY29udGFpbmVyLCB7aGVpZ2h0OjB9KTtcbn1cblxuXG4vLyBBbHdheXMgT3BlbiBFeHRlcm5hbCBMaW5rcyBpbiBhIG5ldyB0YWIgLSBjYWxsZWQgaW4gd2luZG93TG9hZC5qc1xuZXhwb3J0IGxldCBleHRlcm5hbExpbmtzPSAoKSA9PiB7XG4gICQoJ2EnKS5lYWNoKGZ1bmN0aW9uKCkge1xuICAgIGxldCBhID0gbmV3IFJlZ0V4cCgnLycgKyB3aW5kb3cubG9jYXRpb24uaG9zdCArICcvJyk7XG4gICAgaWYoIWEudGVzdCh0aGlzLmhyZWYpKSB7XG4gICAgICAkKHRoaXMpLm9uKCdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbn
827REZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB3aW5kb3cub3Blbih0aGlzLmhyZWYsICdfYmxhbmsnKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG59XG5cbi8vIEZ1bmN0aW9uIGZvciBTbW9vdGhTY3JvbGxpbmcgLSBDYWxsZWQgaW4gY2xpY2tFdmVudHMuanNcbmV4cG9ydCBsZXQgc21vb3RoU2Nyb2xsaW5nID0gKHRoZUxpbmspID0+IHtcbiAgXG4gIGxldCB0YXJnZXQgPSAkKHRoZUxpbmspLmF0dHIoJ2hyZWYnKTtcbiAgbGV0IGhlYWRlckhlaWdodCA9ICQoJy5oZWFkZXInKS5vdXRlckhlaWdodCgpOyBcbiAgZ3NhcC50byh3aW5kb3csIHtkdXJhdGlvbjouNSwgZWFzZTogJ2NpcmMub3V0JywgXG4gICAgc2Nyb2xsVG86e1xuICAgICAgeTp0YXJnZXQsIFxuICAgICAgLy8gQWN0aXZhdGUgaWYgSGVhZGVyIElzIEZpeGVkXG4gICAgICAvLyBvZmZzZXRZOmhlYWRlckhlaWdodFxuICAgIH1cbiAgfSk7XG4gIHJldHVybiBmYWxzZTtcbn0iLCIvKnRyaWdnZXIqL1xuJCgnLnBvcC10ZWFtLXRyaWdnZXInKS5jbGljayhmdW5jdGlvbihldmVudCkge1xuICB2YXIgY3VycmVudF9pZCA9ICQodGhpcykuYXR0cignaWQnKTtcbiAgJCgnLmhpZGRlbi1tb2RhbCcpLnJlbW92ZUNsYXNzKCdkaXNwbGF5TWUnKTtcbiAgJCgnLmhpZGRlbi1tb2RhbFtpZD1cIicrY3VycmVudF9pZCsnXCJdJykuYWRkQ2xhc3MoJ2Rpc3BsYXlNZScpO1xuICAvLyB2YXIgc2VsZWN0ZWRfY3VycmVudF9pZCA9ICQoJy5wb3AtdGVhbSAnKS5hdHRyKCdpZCcpO1xuICAkKCcucG9wLW92ZXJsYXknKS5hZGRDbGFzcygnb24nKTtcbn0pO1xuJCgnLmNsb3NlSGlkZGVuTW9kYWwnKS5jbGljayhmdW5jdGlvbihldmVudCkge1xuICAkKCcuaGlkZGVuLW1vZGFsJykucmVtb3ZlQ2xhc3MoJ2Rpc3BsYXlNZScpO1xuICAkKCcucG9wLW92ZXJsYXknKS5yZW1vdmVDbGFzcygnb24nKTtcbn0pO1xuJCgnLnBvcC1vdmVybGF5JykuY2xpY2soZnVuY3Rpb24oZXZlbnQpIHtcbiAgJCgnLmhpZGRlbi1tb2RhbCcpLnJlbW92ZUNsYXNzKCdkaXNwbGF5TWUnKTtcbiAgJCgnLnBvcC1vdmVybGF5JykucmVtb3ZlQ2xhc3MoJ29uJyk7XG59KTtcblxuXG5cbi8qdHJpZ2dlciovXG4kKCcucG9ydFRvZ2dsZScpLmNsaWNrKGZ1bmN0aW9uKGV2ZW50KSB7XG4gIHZhciBjdXJyZW50X2lkX3BvcnQgPSAkKHRoaXMpLmF0dHIoJ2lkJyk7XG4gICQoJy5oaWRkZW4tcG9ydC1tb2RhbCcpLnJlbW92ZUNsYXNzKCdkaXNwbGF5UG9ydGZvbGlvJyk7XG4gICQoJy5oaWRkZW4tcG9ydC1tb2RhbFtpZD1cIicrY3VycmVudF9pZF9wb3J0KydcIl0nKS5hZGRDbGFzcygnZGlzcGxheVBvcnRmb2xpbycpO1xuICAvLyB2YXIgc2VsZWN0ZWRfY3VycmVudF9pZCA9ICQoJy5wb3AtdGVhbSAnKS5hdHRyKCdpZCcpO1xuXG59KTtcbiQoJy5jbG9zZVBvcnRmb2xpbycpLmNsaWNrKGZ1bmN0aW9uKGV2ZW50KSB7XG4gICQoJy5oaWRkZW4tcG9ydC1tb2RhbCcpLnJlbW92ZUNsYXNzKCdkaXNwbGF5UG9ydGZvbGlvJyk7XG5cbn0pO1xuIiwiZXhwb3J0IGxldCBzZWFyY2hSZXZlYWwgPSAoKSA9PiB7XG4gIGxldCB0bCA9IG5ldyBnc2FwLnRpbWVsaW5lKHtcblx0XHRwYXVzZWQ6dHJ1ZSxcblx0XHRkZWZhdWx0czoge1xuXHRcdFx0ZWFzZTogJ1Bvd2VyNC5pbigpJyxcblx0XHRcdGR1cmF0aW9uOjAuMyxcblx0XHR9XG5cdH0pO1xuXG4gIGxldCBjb250YWluZXIgPSAkKCcuaGVhZGVyU2VhcmNoQ29udGFpbmVyJyk7XG4gIGxldCBoZWFkbGluZSA9IGNvbnRhaW5lci5maW5kKCdoNCcpO1xuICBsZXQgZm9ybSA9IGNvbnRhaW5lci5maW5kKCcuc2VhcmNoZm9ybScpO1xuICBsZXQgY2xvc2UgPSAkKCcubW9iaWxlLXNlYXJjaC1jbG9zZScpO1xuICBsZXQgdG9nZ2xlSGVpZ2h0ID0gY29udGFpbmVyLmF0dHIoJ2RhdGEtaGVpZ2h0Jyk7XG5cbiAgLy8gUm90YXRlIE1haW4gTmF2IEl0ZW0gLyBEaWZmZXJlbnQgQ2xhc3MgdGhhbiBjbGljayBldmVudCB0cmlnZ2VyXG4gIHRsLnRvKCcuc2VhcmNoTmF2SXRlbScsIHtyb3RhdGlvbjo5MH0sICdzZWFyY2hPcGVuJyk7XG5cdHRsLnRvKGNvbnRhaW5lciwge2hlaWdodDp0b2dnbGVIZWlnaHR9LCAnc2VhcmNoT3BlbicpO1xuICB0bC50byhbaGVhZGxpbmUsIGZvcm0sIGNsb3NlXSwge29wYWNpdHk6MSwgeTowLCBkdXJhdGlvbjowLjJ9LCAnc2VhcmNoT3Blbis9MC4xJyk7XG4gIFxuXHRyZXR1cm4gdGw7XG59IiwiY29uc3Qgc3dpcGVyID0gbmV3IFN3aXBlcihcIi5zd2lwZXJcIiwge1xuXHQvLyBPcHRpb25hbCBwYXJhbWV0ZXJzXG5cblx0bG9vcDogXCJ0cnVlXCIsXG5cdHNwZWVkOiAxMDAwLFxuXHRhdXRvcGxheToge1xuXHRcdGRlbGF5OiAzMDAwLFxuXHR9LFxuXHQvLyBOYXZpZ2F0aW9uIGFycm93c1xuXHRuYXZpZ2F0aW9uOiB7XG5cdFx0bmV4dEVsOiBcIi5zd2lwZXItYnV0dG9uLW5leHRcIixcblx0XHRwcmV2RWw6IFwiLnN3aXBlci1idXR0b24tcHJldlwiLFxuXHR9LFxufSk7XG4iLCJ0YWJDb250cm9sKCk7XG5cbi8qXG5XZSBhbHNvIGFwcGx5IHRoZSBzd2l0Y2ggd2hlbiBhIHZpZXdwb3J0IGNoYW5nZSBpcyBkZXRlY3RlZCBvbiB0aGUgZmx5XG4oZS5nLiB3aGVuIHlvdSByZXNpemUgdGhlIGJyb3dzZXIgd2luZG93IG9yIGZsaXAgeW91ciBkZXZpY2UgZnJvbSBcbnBvcnRyYWl0IG1vZGUgdG8gbGFuZHNjYXBlKS4gV2Ugc2V0IGEgdGltZXIgd2l0aCBhIHNtYWxsIGRlbGF5IHRvIHJ1biBcbml0IG9ubHkgb25jZSB3aGVuIHRoZSByZXNpemluZyBlbmRzLiBJdCdzIG5vdCBwZXJmZWN0LCBidXQgaXQncyBiZXR0ZXJcbnRoYW4gaGF2ZSBpdCBydW5uaW5nIGNvbnN0YW50bHkgZHVyaW5nIHRoZSBhY3Rpb24gb2YgcmVzaXppbmcuXG4qL1xudmFyIHJlc2l6ZVRpbWVyO1xuJCh3aW5kb3cpLm9uKFwicmVzaXplXCIsIGZ1bmN0aW9uIChlKSB7XG5cdGNsZWFyVGltZW91dChyZXNpemVUaW1lcik7XG5cdHJlc2l6ZVRpbWVyID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0dGFiQ29udHJvbCgpO1xuXHR9LCAyNTApO1xufSk7XG5cbi8qXG5UaGUgZnVuY3Rpb24gYmVsb3cgaXMgcmVzcG9uc2libGUgZm9yIHN3aXRjaGluZyB0aGUgdGFicyB3aGVuIGNsaWNrZWQuXG5JdCBzd2l0Y2hlcyBib3RoIHRoZSB0YWJzIGFuZCB0aGUgYWNjb3JkaW9uIGJ1dHRvbnMgZXZlbiBpZiBcbm9ubHkgdGhlIG9uZSBvciB0aGUgb3RoZXIgY2FuIGJlIHZpc2libGUgb24gYSBzY3JlZW4uIFdlIHByZWZlclxudGhhdCBpbiBvcmRlciB0byBoYXZlIGEgY29uc2lzdGVudCBzZWxlY3Rpb24gaW4gY2FzZSB0aGUgdmlld3BvcnRcbmNoYW5nZXMgKGUuZy4gd2hlbiB5b3UgZXNpemUgdGhlIGJyb3dzZXIgd2luZG93IG9yIGZsaXAgeW91ciBcbmRldmljZSBmcm9tIHBvcnRyYWl0IG1vZGUgdG8gbGFuZHNjYXBlKS5cbiovXG5mdW5jdGlvbiB0YWJDb250cm9sKCkge1xuXHR2YXIgdGFicyA9ICQoXCIudGFiYmVkLWNvbnRlbn
827RcIikuZmluZChcIi50YWJzXCIpO1xuXHRpZiAodGFicy5pcyhcIjp2aXNpYmxlXCIpKSB7XG5cdFx0dGFicy5maW5kKFwiYVwiKS5vbihcImNsaWNrXCIsIGZ1bmN0aW9uIChldmVudCkge1xuXHRcdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTtcblx0XHRcdHZhciB0YXJnZXQgPSAkKHRoaXMpLmF0dHIoXCJocmVmXCIpLFxuXHRcdFx0XHR0YWJzID0gJCh0aGlzKS5wYXJlbnRzKFwiLnRhYnNcIiksXG5cdFx0XHRcdGJ1dHRvbnMgPSB0YWJzLmZpbmQoXCJhXCIpLFxuXHRcdFx0XHRpdGVtID0gdGFicy5wYXJlbnRzKFwiLnRhYmJlZC1jb250ZW50XCIpLmZpbmQoXCIuaXRlbVwiKTtcblx0XHRcdGJ1dHRvbnMucmVtb3ZlQ2xhc3MoXCJhY3RpdmVcIik7XG5cdFx0XHRpdGVtLnJlbW92ZUNsYXNzKFwiYWN0aXZlXCIpO1xuXHRcdFx0JCh0aGlzKS5hZGRDbGFzcyhcImFjdGl2ZVwiKTtcblx0XHRcdCQodGFyZ2V0KS5hZGRDbGFzcyhcImFjdGl2ZVwiKTtcblx0XHR9KTtcblx0fSBlbHNlIHtcblx0XHQkKFwiLml0ZW1cIikub24oXCJjbGlja1wiLCBmdW5jdGlvbiAoKSB7XG5cdFx0XHR2YXIgY29udGFpbmVyID0gJCh0aGlzKS5wYXJlbnRzKFwiLnRhYmJlZC1jb250ZW50XCIpLFxuXHRcdFx0XHRjdXJySWQgPSAkKHRoaXMpLmF0dHIoXCJpZFwiKSxcblx0XHRcdFx0aXRlbXMgPSBjb250YWluZXIuZmluZChcIi5pdGVtXCIpO1xuXHRcdFx0Y29udGFpbmVyLmZpbmQoXCIudGFicyBhXCIpLnJlbW92ZUNsYXNzKFwiYWN0aXZlXCIpO1xuXHRcdFx0aXRlbXMucmVtb3ZlQ2xhc3MoXCJhY3RpdmVcIik7XG5cdFx0XHQkKHRoaXMpLmFkZENsYXNzKFwiYWN0aXZlXCIpO1xuXHRcdFx0Y29udGFpbmVyLmZpbmQoJy50YWJzIGFbaHJlZiQ9XCIjJyArIGN1cnJJZCArICdcIl0nKS5hZGRDbGFzcyhcImFjdGl2ZVwiKTtcblx0XHR9KTtcblx0fVxufVxuIiwiLy8gKGZ1bmN0aW9uKCAkICkge1xuLy8gICAkKCcucGxheS1pY29uJykuY2xpY2soZnVuY3Rpb24oKSB7XG4vLyAgICAgJCgnLnZpZGVvTW9kYWwnKS5hZGRDbGFzcygnc2hvd01vZGFsJyk7XG4vLyAgIH1cbi8vICk7XG4vLyB9KShqUXVlcnkpO1xuLy8gKGZ1bmN0aW9uKCAkICkge1xuLy8gICAkKCcuY2xvc2VNb2RhbCcpLmNsaWNrKGZ1bmN0aW9uKCkge1xuLy9cbi8vICAgICB2YXIgdmlkZW8xID0gJChcIi52aWRlby1tb2RhbCBpZnJhbWVcIikuYXR0cihcInNyY1wiKTtcbi8vICAgICAkKFwiLnZpZGVvLW1vZGFsIGlmcmFtZVwiKS5hdHRyKFwic3JjXCIsXCJcIik7XG4vLyAgICAgJChcIi52aWRlby1tb2RhbCBpZnJhbWVcIikuYXR0cihcInNyY1wiLHZpZGVvMSk7XG4vL1xuLy9cbi8vICAgICAkKCcudmlkZW9Nb2RhbCcpLnJlbW92ZUNsYXNzKCdzaG93TW9kYWwnKTtcbi8vICAgfVxuLy8gKTtcbi8vIH0pKGpRdWVyeSk7XG5cbmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG5cdFwiRE9NQ29udGVudExvYWRlZFwiLFxuXHRmdW5jdGlvbiAoKSB7XG5cdFx0Y29uc3QgcGxheWVyID0gbmV3IFBseXIoXCIucGx5ZXJQbGF5ZXJcIiwge1xuXHRcdFx0YXV0b3BsYXk6IGZhbHNlLFxuXHRcdFx0aGlkZUNvbnRyb2xzOiBmYWxzZSxcblx0XHRcdGZ1bGxzY3JlZW46IHtcblx0XHRcdFx0ZW5hYmxlZDogdHJ1ZSxcblx0XHRcdFx0aW9zTmF0aXZlOiB0cnVlLFxuXHRcdFx0fSxcblx0XHRcdHBsYXlzaW5saW5lOiBmYWxzZSxcblx0XHR9KTtcblx0XHQoZnVuY3Rpb24gKCQpIHtcblx0XHRcdCQoXCIucGxheUhvbWVWaWRlb1wiKS5vbihcImNsaWNrXCIsIGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0JChcIi52aWRlb01vZGFsSG9tZVwiKS5hZGRDbGFzcyhcIm92ZXJsYXktb25cIik7XG5cdFx0XHRcdHBsYXllci5wbGF5KCk7XG5cdFx0XHRcdC8vJChcIi5wbHllclBsYXllclwiKS5nZXQoMCkucGxheSgpO1xuXHRcdFx0XHQvLyAgICAgICQoJy5tYXN0aGVhZCcpLmFkZENsYXNzKCdzbGlkZVVwIHNsaWRlLXVwJyk7XG5cdFx0XHRcdCQoXCIuY3RhLXJvd1wiKS5hZGRDbGFzcyhcInNsaWRlRG93biBzbGlkZS1kb3duXCIpO1xuXHRcdFx0XHQvLyAgJChcIi5zdG9wRWxlbWVudENsYXNzXCIpLnRvZ2dsZUNsYXNzKCdzdG9wRWxlbWVudENsYXNzIHBsYXlFbGVtZW50Q2xhc3MnKTtcblx0XHRcdH0pO1xuXHRcdH0pKGpRdWVyeSk7XG5cdFx0KGZ1bmN0aW9uICgkKSB7XG5cdFx0XHQkKFwiLmNsb3NlVmlkZW9PdmVybGF5SG9tZVwiKS5vbihcImNsaWNrXCIsIGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0JChcIi52aWRlb01vZGFsSG9tZVwiKS5yZW1vdmVDbGFzcyhcIm92ZXJsYXktb25cIik7XG5cdFx0XHRcdHBsYXllci5zdG9wKCk7XG5cdFx0XHRcdC8vJChcIiNwbGF5ZXJcIikuZ2V0KDApLnBhdXNlKCk7XG5cdFx0XHRcdC8vICAgICQoJy5tYXN0aGVhZCcpLnJlbW92ZUNsYXNzKCdzbGlkZVVwIHNsaWRlLXVwJyk7XG5cdFx0XHRcdCQoXCIuY3RhLXJvd1wiKS5yZW1vdmVDbGFzcyhcInNsaWRlRG93biBzbGlkZS1kb3duXCIpO1xuXHRcdFx0XHQvLyAgJChcIi5zdG9wRWxlbWVudENsYXNzXCIpLnRvZ2dsZUNsYXNzKCdzdG9wRWxlbWVudENsYXNzIHBsYXlFbGVtZW50Q2xhc3MnKTtcblx0XHRcdH0pO1xuXHRcdH0pKGpRdWVyeSk7XG5cdH0sXG5cdGZhbHNlXG4pO1xuIiwiaW1wb3J0IHtcblx0cHJlTG9hZGVyLFxuXHQvLyBtb2JpbGVOYXZTZXR1cCxcblx0ZXh0ZXJuYWxMaW5rcyxcblx0Z3NhcFJlZ2lzdGVycyxcblx0Y2xpY2tFdmVudHMsXG5cdG5hdlNlYXJjaFNldHVwLFxufSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuXG53aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImxvYWRcIiwgZnVuY3Rpb24gKCkge1xuXHQvLyBTZXR1cCBCYXNpYyBGdW5jdGlvbmFsaXR5XG5cdHByZUxvYWRlcigpO1xuXHRleHRlcm5hbExpbmtzKCk7XG5cdGdzYXBSZWdpc3RlcnMoKTtcblx0bmF2U2VhcmNoU2V0dXAoKTtcblx0Y2xpY2tFdmVudHMoKTtcbn0pO1xuXG53aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBmdW5jdGlvbiAoKSB7XG5cdGlmICgkKHdpbmRvdykud2lkdGgoKSA8IDEwMjQpIHtcblx0fSBlbHNlIHtcblx0fVxufSk7XG4iLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG5cdHZhciBtb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdID0ge1xuXHRcdC8vIG5vIG1vZHVsZS5pZCBuZWVkZWRcblx0XHQvLyBubyBtb2R1bGUubG9hZGVkIG5lZWRlZFxuXHRcdGV4cG9ydHM6IHt9XG5cdH07XG5cblx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG5cdF9fd2VicGFja19tb2R1bGVzX19bbW9kdWxlSWRdKG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG5cdC8vIFJldHVybi
827B0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG5cdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbn1cblxuIiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiaW1wb3J0IFwiLi9jb21wb25lbnRzL3dpbmRvd0xvYWQuanNcIjtcbi8vIEdMT0JBTFNcbmltcG9ydCBcIi4vY29tcG9uZW50cy9jaGVja2ZvcmpzLmpzXCI7XG4vLyBpbXBvcnQgXCIuL2NvbXBvbmVudHMvbmF2LWNvbG9yLmpzXCI7XG4vLyBpbXBvcnQgJy4vY29tcG9uZW50cy9uYXYtZHJvcC1hY2Nlc3NpYmxlLmpzJztcbmltcG9ydCBcIi4vY29tcG9uZW50cy9uYXYtdG9nZ2xlLmpzXCI7XG4vLyBpbXBvcnQgJy4vY29tcG9uZW50cy92aWRlby1wb3AuanMnO1xuLy8gaW1wb3J0IFwiLi9jb21wb25lbnRzL2hlYWRlci1jb2xvci5qc1wiO1xuaW1wb3J0IFwiLi9jb21wb25lbnRzL25hdi1jbGFzcy1zY3JvbGwuanNcIjtcbmltcG9ydCBcIi4vY29tcG9uZW50cy9mb3JtLXBvcC5qc1wiO1xuLy8gaW1wb3J0IFwiLi9jb21wb25lbnRzL3Ntb290aC1zY3JvbGwuanNcIjtcbmltcG9ydCBcIi4vY29tcG9uZW50cy9jYXQtdG9nZ2xlLmpzXCI7XG4vLyBpbXBvcnQgXCIuL2NvbXBvbmVudHMvc21vb3RoLXNjcm9sbC5qc1wiO1xuaW1wb3J0IFwiLi9jb21wb25lbnRzL3N3aXBlci5qc1wiO1xuLy8gU0lURVxuaW1wb3J0IFwiLi9jb21wb25lbnRzL2dsb2JhbC5qc1wiO1xuLy8gaW1wb3J0IFwiLi9jb21wb25lbnRzL2dhbGxlcnktbGlnaHRib3guanNcIjtcbmltcG9ydCBcIi4vY29tcG9uZW50cy9wb3AtdGVhbS5qc1wiO1xuaW1wb3J0IFwiLi9jb21wb25lbnRzL2Jsb2ctZHJvcGRvd24uanNcIjtcbmltcG9ydCBcIi4vY29tcG9uZW50cy90YWJzLmpzXCI7XG5pbXBvcnQgXCIuL2NvbXBvbmVudHMvdmlkZW8tcG9wLmpzXCI7XG5pbXBvcnQgXCIuL2NvbXBvbmVudHMvYWNjLmpzXCI7XG4iXSwibmFtZXMiOlsiJCIsIkFjY29yZGlvbiIsImVsIiwibXVsdGlwbGUiLCJsaW5rcyIsImZpbmQiLCJvbiIsImRyb3Bkb3duIiwicHJvdG90eXBlIiwiZSIsIiRlbCIsImRhdGEiLCIkdGhpcyIsIiRuZXh0IiwibmV4dCIsInNsaWRlVG9nZ2xlIiwicGFyZW50IiwidG9nZ2xlQ2xhc3MiLCJub3QiLCJzbGlkZVVwIiwicmVtb3ZlQ2xhc3MiLCJhY2NvcmRpb24iLCJkb2N1bWVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJjbGljayIsImhhc0NsYXNzIiwiYXR0ciIsInNpYmxpbmdzIiwiYWRkQ2xhc3MiLCJqUXVlcnkiLCJjaGlsZHJlbiIsImJvZHkiLCJjbGFzc0xpc3QiLCJhZGQiLCJtZW51VG9nZ2xlIiwic21vb3RoU2Nyb2xsaW5nIiwic2VhcmNoUmV2ZWFsIiwiY2xpY2tFdmVudHMiLCJwcmV2ZW50RGVmYXVsdCIsInNjcmVlbiIsIndpZHRoIiwiZ3NhcCIsInNldCIsImhlaWdodCIsIm92ZXJmbG93IiwibWVudVRvZ2dsZVRMIiwicmV2ZXJzZSIsImFjYyIsImdldEVsZW1lbnRzQnlDbGFzc05hbWUiLCJpIiwibGVuZ3RoIiwidG9nZ2xlIiwicGFuZWwiLCJuZXh0RWxlbWVudFNpYmxpbmciLCJzdHlsZSIsIm1heEhlaWdodCIsInNjcm9sbEhlaWdodCIsImdzYXBSZWdpc3RlcnMiLCJyZWdpc3RlclBsdWdpbiIsIlNjcm9sbFRvUGx1Z2luIiwicHJlTG9hZGVyIiwiZXh0ZXJuYWxMaW5rcyIsIm1vYmlsZU5hdlNldHVwIiwibmF2U2VhcmNoU2V0dXAiLCJ0bCIsInRpbWVsaW5lIiwicGF1c2VkIiwiZGVmYXVsdHMiLCJlYXNlIiwiZHVyYXRpb24iLCJtZW51V2lkdGgiLCJvdXRlcldpZHRoIiwibWVudUhlaWdodCIsIm91dGVySGVpZ2h0IiwidG9nZ2xlZFdpZHRoIiwidG9nZ2xlZFgiLCJhbmdsZWRXaWR0aCIsImFuZ2xlZFkiLCJhbmdsZWRYIiwidG8iLCJ4Iiwib3BhY2l0eSIsInN0YWdnZXIiLCJhbW91bnQiLCJyb3RhdGlvbiIsInkiLCJ0cmFuc2Zvcm1PcmlnaW4iLCJ3aW5kb3ciLCJzY3JvbGwiLCJzY3JvbGxUb3AiLCJxdWVyeVNlbGVjdG9yIiwibWVudSIsIm1lbnVJdGVtcyIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJjb250YWlucyIsInNldEF0dHJpYnV0ZSIsInJlbW92ZSIsIm9uQ29tcGxldGUiLCJyb3RhdGVZIiwiY29udGFpbmVyIiwiaGVhZGxpbmUiLCJ0aGlzRm9ybSIsInNlYXJjaENvbnRhaW5lckhlaWdodCIsImNsb3NlIiwiZWFjaCIsImEiLCJSZWdFeHAiLCJsb2NhdGlvbiIsImhvc3QiLCJ0ZXN0IiwiaHJlZiIsImV2ZW50Iiwic3RvcFByb3BhZ2F0aW9uIiwib3BlbiIsInRoZUxpbmsiLCJ0YXJnZXQiLCJoZWFkZXJIZWlnaHQiLCJzY3JvbGxUbyIsImN1cnJlbnRfaWQiLCJjdXJyZW50X2lkX3BvcnQiLCJmb3JtIiwidG9nZ2xlSGVpZ2h0Iiwic3dpcGVyIiwiU3dpcGVyIiwibG9vcCIsInNwZWVkIiwiYXV0b3BsYXkiLCJkZWxheSIsIm5hdmlnYXRpb24iLCJuZXh0RWwiLCJwcmV2RWwiLCJ0YWJDb250cm9sIiwicmVzaXplVGltZXIiLCJjbGVhclRpbWVvdXQiLCJzZXRUaW1lb3V0IiwidGFicyIsImlzIiwicGFyZW50cyIsImJ1dHRvbnMiLCJpdGVtIiwiY3VycklkIiwiaXRlbXMiLCJwbGF5ZXIiLCJQbHlyIiwiaGlkZUNvb
827nRyb2xzIiwiZnVsbHNjcmVlbiIsImVuYWJsZWQiLCJpb3NOYXRpdmUiLCJwbGF5c2lubGluZSIsInBsYXkiLCJzdG9wIl0sInNvdXJjZVJvb3QiOiIifQ==

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.