1"use strict"; 2 3// ------------------------------------------------------------------- 4// commonï¼é»è©±çªå·ãªã³ã¯ã®å¶å¾¡(PCã®å ´åã¯telãªã³ã¯ãç¡å¹å) 5// jsTelLinkã¯ã©ã¹ãæã¤ããªã³ã¯ã¿ã°(aã¿ã°)ã®ã¿ã«æå¹ 6// ------------------------------------------------------------------- 7jQuery(document).ready(function ($) { 8 //å¤å®ã¢ã¼ã 9 //ã»ã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãå¤å®ï¼ua 10 //ã»ç»é¢å¹ å¤å®ï¼width(ua以å¤ãªãä½ã§ã) 11 var strMode = 'ua'; 12 var switchTelLink = function switchTelLink() { 13 var bDisable = true; 14 switch (strMode) { 15 //ã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãå¤å® 16 case 'ua': 17 { 18 var ua = navigator.userAgent.toLowerCase(); 19 20 //ã©ãã«ãå½ã¦ã¯ã¾ããªããã°ãPC(ãªã³ã¯ç¡å¹) 21 bDisable = ua.indexOf('phone') == -1 && 22 //iPhoneã¨Windows phone 23 ua.indexOf('ipad') == -1 && 24 //iPad 25 ua.indexOf('android') == -1; //Androidã¨Androidã¿ãã¬ãã 26 27 break; 28 } 29 30 //ç»é¢å¹ å¤å® 31 default: 32 { 33 bDisable = $(window).width() > SP_MAX_WIDTH; 34 break; 35 } 36 } 37 38 //ãªã³ã¯ãç¡å¹ã«ãã 39 if (bDisable) { 40 $('a.jsTelLink').each(function () { 41 var elmNew = $('<span/>', { 42 'class': $(this).attr('class') 43 }); 44 elmNew.html($(this).html()); 45 $(this).replaceWith(elmNew); 46 }); 47 } 48 //ãªã³ã¯ãæå¹ã«ãã 49 else { 50 $('span.jsTelLink').each(function () { 51 var elmNew = $('<a/>', { 52 'class': $(this).attr('class') 53 }); 54 elmNew.html($(this).html()); 55 $(this).replaceWith(elmNew); 56 }); 57 } 58 }; 59 switchTelLink(); 60 61 //ãªãµã¤ãºæã«å®è¡ 62 if (strMode != 'ua') { 63 $(window).on('resize', switchTelLink); 64 } 65 66}); 67"use strict"; 68 69function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } 70function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } 71function _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, _toPropertyKey(descriptor.key), descriptor); } } 72function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } 73function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } 74function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } 75// jQuery start 76jQuery(function ($) { 77 // SP 100vh(ã¹ã¯ãã¼ã«ãã¼å¯¾ç) 78 // $('.loadingLogo').css('height',$(window).height()); 79 80 // Smooth scroll 81 // ãã¼ã¸å ãªã³ã¯ 82 var width = $(window).width(); 83 if (width <= 1023) { 84 var headerHight = 60; //ãããã®é«ã 85 } else { 86 var headerHight = 100; //ãããã®é«ã 87 } 88 89 if (!$('.single-menu').length) { 90 //ãã£ãå ´åã®å¦çãæ¸ã 91 92 $('a[href^="#"]').click(function () { 93 var speed = 800; 94 var href = $(this).attr("href"); 95 var target = $(href == "#" || href == "" ? 'html' : href); 96 var position = target.offset().top - headerHight; 97 $("html, body").animate({ 98 scrollTop: position 99 }, speed, "swing"); 100 return false;
101 }); 102 103 // ãã¼ã¸å¤ãªã³ã¯ 104 $(window).on('load', function () { 105 if (document.URL.match("#")) { 106 var str = location.href; 107 var cut_str = "#"; 108 var index = str.indexOf(cut_str); 109 var href = str.slice(index); 110 var target = href; 111 var position = $(target).offset().top - headerHight; 112 $("html, body").scrollTop(position); 113 return false; 114 } 115 }); 116 } 117 118 // loading Fast 119 $(document).ready(function () { 120 jQuery(".loading").addClass("active"); 121 }); 122 123 // loading Slow 124 // $(window).on('load', function () { 125 // jQuery(".loading").addClass("active"); 126 // }); 127 128 // scroll class add 129 jQuery(window).on("load scroll resize", function () { 130 var st = jQuery(window).scrollTop(); 131 var wh = jQuery(window).height(); 132 var ww = jQuery(window).width(); 133 134 // fast(<1) slow(>1) 135 jQuery(".fade, .fadeMask, .fadeUp, .fadeIn, fadeAnimation").each(function (i) { 136 var tg = jQuery(this).offset().top - wh * 0.9; 137 if (st > tg) { 138 jQuery(this).addClass("active"); 139 } 140 }); 141 jQuery(".fade-up-fast").each(function (i) { 142 var tg = jQuery(this).offset().top - wh * 0.8; 143 if (st > tg) { 144 jQuery(this).addClass("active"); 145 } 146 }); 147 }); // scroll class add END 148 149 // Procuct List Toggle 150 jQuery('.product__ttl').click(function () { 151 jQuery(this).delay(5000).toggleClass('open'); 152 jQuery(this).next('.product__answer').slideToggle(); 153 }); 154 jQuery('.stockList__shop').click(function () { 155 jQuery(this).delay(5000).toggleClass('open'); 156 jQuery(this).next('.stockList__info').slideToggle(); 157 }); 158 159 // **************************************** 160 // ãã³ãã¼ã¬ã¼ã¡ãã¥ã¼ 161 // **************************************** 162 163 jQuery(".navBar").click(function () { 164 jQuery(".navBar__line").toggleClass("active"); 165 jQuery(".drawer").toggleClass("active"); 166 }); 167 168 // ******************************************** 169 // ããã¿ã¼ + ãããã¼ ã¢ã³ã¼ãã£ãªã³ 170 // ******************************************** 171 172 if (width <= 767) { 173 jQuery(function ($) { 174 $(".footer__list").css("display", "none"); 175 $(".footer__subTtl").click(function () { 176 $(".footer__subTtl").not(this).removeClass("open"); 177 $(".footer__subTtl").not(this).next().slideUp(300); 178 $(this).toggleClass("open"); 179 $(this).next(".footer__list").slideToggle(300); 180 }); 181 }); 182 } 183 184 // **************************************** 185 // ãããã¸æ»ã 186 // **************************************** 187 188 $(function () { 189 var pagetop = $(".pageTop"); 190 pagetop.click(function () { 191 $("body, html").animate({ 192 scrollTop: 0 193 }, 500); 194 return false; 195 }); 196 }); 197 198 // **************************************** 199 // stickyBtn表示 200 // **************************************** 201 202 // $(function () { 203 // var stickyBtn = $('.stickyBtn-sp'); 204 // $(window).scroll(function () { 205 // if ($(this).scrollTop() > 200) { 206 // stickyBtn.addClass("active"); 207 // } else { 208 // stickyBtn.removeClass("active"); 209 // } 210 // }); 211 // }); 212 213 $('.stickyBtn-sp').addClass("active"); 214 215 // **************************************** 216 // stickyMenu表示 217 // **************************************** 218 219 // $('.topKv__search').click(function () { 220 // $('.stickyMenu').toggleClass("active"); 221 // }); 222 223 $(function () { 224 $('.topKv__search').click(function () { 225 $('.stickyMenu').addClass("active"); 226 }); 227 var pos = 0; 228 $(window).on('scroll', function () { 229 if ($(this).scrollTop() > pos) { 230 $('.stickyMenu').removeClass("active"); 231 } 232 pos = $(this).scrollTop(); 233 }); 234 }); 235 236 // **************************************** 237 // ãããã¼èæ¯ 238 // **************************************** 239 240 $(window).on("scroll", function () { 241 var scrollPosition = $(this).scrollTop(); 242 var headerHeight = $(".header").innerHeight(); 243 var kvHeight = $(".js-kv").outerHeight(); 244 245 // if (scrollPosition > headerHeight + kvHeight) { 246 if (scrollPosition > 130) { 247 $(".header").addClass("active"); 248 } else { 249 $(".header").removeClass("active"); 250 } 251 }); 252 253 // **************************************** 254 // ç¶ããèªã
255 // **************************************** 256 257 $(function () { 258 var card = $(".card"); 259 var textHeight = $('.card .wp-block-group').innerHeight(); 260 var lineHeight = parseFloat($('.text').css('line-height')); 261 var lineNum = 4; 262 var textNewHeight = lineHeight * lineNum; 263 var windowWidthSp = $(window).width() * 400 / 375; 264 var windowWidthPc = 450; 265 var width = $(window).width(); 266 console.log(textHeight); 267 console.log(card); 268 269 // card.each(function(){ 270 // if ($(this).innerHeight() > windowWidthSp){ 271 // $(this).addClass("hide"); 272 273 // $(this).click(function(){ 274 // $(this).toggleClass("is-show"); 275 // }) 276 // } 277 // }) 278 279 if (width <= 1024) { 280 card.each(function () { 281 if ($(this).innerHeight() > windowWidthSp) { 282 $(this).addClass("hide"); 283 $(this).click(function () { 284 $(this).toggleClass("is-show"); 285 }); 286 } 287 }); 288 } else { 289 card.each(function () { 290 if ($(this).innerHeight() > windowWidthPc) { 291 $(this).addClass("hide"); 292 $(this).click(function () { 293 $(this).toggleClass("is-show"); 294 }); 295 } 296 }); 297 } 298 299 // if (textHeight > 350) { 300 // // card.each(function(){ 301 // // $(this).addClass("hide") 302 // // }) 303 // // card.addClass("hide"); 304 // // $('.text').css({ 305 // // 'height': textNewHeight, 306 // // 'overflow':'hidden' 307 // // }); 308 // // $('.readmore-btn').show(); 309 // $('.readmore-btn').click(function() { 310 // $(this).hide(); 311 // $('.text').css({ 312 // 'height': textHeight, 313 // 'overflow': 'visible' 314 // }); 315 // return false; 316 // }); 317 // }; 318 }); 319 320 // **************************************** 321 // FAQã®ã¢ã³ã¼ãã£ãªã³å¦ç 322 // **************************************** 323 324 $(".qa__answer, .qaqnothing__answer").css("display", "none"); 325 $(".qa__question, .qaqnothing__question").click(function () { 326 $(this).toggleClass("open"); 327 $(this).next().slideToggle(300); 328 }); 329 330 // **************************************** 331 // ã¢ã³ã¼ãã£ãªã³å¦ç 332 // **************************************** 333 334 $(".js-accordion-item").css("display", "none"); 335 $(".js-accordion-btn").click(function () { 336 $(this).toggleClass("open"); 337 $(this).parent().toggleClass("brown"); 338 $(this).parent().next().slideToggle(300); 339 }); 340 $(function () { 341 //ã¯ãªãã¯ã§åã 342 $('.photosAll__wrapper').css("display", "none"); 343 $('.photosAll__btn').click(function () { 344 $(this).toggleClass('open'); 345 $(this).next('.photosAll__wrapper').slideToggle(); 346 }); 347 }); 348 349 // **************************************** 350 // ã³ã©ã ã«ãã´ãªã¼ 351 // **************************************** 352 $(function () { 353 var num = $('.columnCategory__list li').length; 354 if (num > 10) { 355 $('.columnCategory__content').addClass('hide'); 356 $('.columnCategory__btn').addClass('active'); 357 } 358 $('.columnCategory__btn').on('click', function () { 359 $('.columnCategory__content').toggleClass('hide'); 360 $('.columnCategory__btn').toggleClass('close'); 361 // $(this).find('span').toggleClass('hide'); 362 }); 363 }); 364 365 // **************************************** 366 // photoSearch 空ç½åé¤ 367 // **************************************** 368 369 $("option").html(function (i, html) { 370 return html.replace(/ /g, ''); 371 }); 372 $('.photoSearch__select--category .feas_clevel_01').wrap('<span class="search-option"></span>'); 373 $('.photoSearch__select--category .feas_clevel_03').wrap('<span class="search-option"></span>'); 374 $("span:has(.feas_clevel_01)").addClass("no-display"); 375 $("span:has(.feas_clevel_03)").addClass("no-display"); 376 377 // **************************************** 378 // Slick 379 // **************************************** 380 381 // å½é¢æ¨ãçä¾åçã¹ã©ã¤ãã¼å¦ç 382 383 // function checkBreakPoint01() { 384 // let w = $(window).width(); 385 // if (w <= 1024) { 386 // $('.topPicture__ranking').not('.slick-initialized').slick({ 387 // slidesToShow: 1, 388 // slidesToScroll: 1, 389 // arrows: true, 390 // // autoplay: true, 391 // autoplaySpeed: 6000 392 // }); 393 // } else { 394 // $('.topPicture__ranking.slick-initialized').slick('unslick'); 395 // } 396 // } 397 // $(window).resize(function(){ 398 // checkBreakPoint01(); 399 // }); 400 401 // checkBreakPoint01(); 402 403 // function checkBreakPoint() { 404 // let w = $(window).width(); 405 // if (w <= 1024) { 406 // $('.photosPickup__ranking').not('.slick-initialized').slick({ 407 // slidesToShow: 1, 408 // slidesToScroll: 1, 409 // arrows: true, 410 // // autoplay: true, 411 // autoplaySpeed: 6000 412 // }); 413 // } else { 414 // $('.photosPickup__ranking.slick-initialized').slick('unslick'); 415 // } 416 // } 417 // $(window).resize(function(){ 418 // checkBreakPoint(); 419 // }); 420 421 // checkBreakPoint(); 422 423 // $(".topKv__slider").slick({ 424 // // autoplay: true, 425 // autoplaySpeed: 3000, 426 // speed: 1000, 427 // infinite: true, 428 // pauseOnHover: false, 429 // slidesToShow: 5,
430 // arrows: false, 431 // centerMode: true, 432 // centerPadding: "12%", 433 434 // responsive: [ 435 // { 436 // breakpoint: 1024, // 399px以ä¸ã®ãµã¤ãºã«é©ç¨ 437 438 // settings: { 439 // centerPadding: "12%", 440 // slidesToShow: 1, 441 // }, 442 // }, 443 // ], 444 // }) 445 446 // $('.topKv__slider').on('init', function(event, slick, currentSlide, nextSlide){ 447 // $('.slick-active').prev().addClass('prev'); 448 // $('.slick-active').next().addClass('next'); 449 // }) 450 // .on('beforeChange', function(event, slick, currentSlide, nextSlide){ 451 // // then let's do this before changing slides 452 // $('.slick-slide').removeClass('prev next'); 453 // }) 454 // .on('afterChange', function(event, slick, currentSlide, nextSlide){ 455 // // finally let's do this after changing slides 456 // $('.slick-active').prev().addClass('prev'); 457 // $('.slick-active').next().addClass('next'); 458 // }); 459 460 $(function () { 461 $(".topKv__slider").on("init", function (event, slick) { 462 $(this).append('<div class="topKv__numWrap"><div class="topKv__numBox"><span class="topKv__currentNum"></span><span class="topKv__allNum"></span></div></div>'); 463 $(".topKv__currentNum").text("0".concat(slick.currentSlide + 1)); // ç¾å¨ã®ã¹ã©ã¤ãçªå·(+1ãç¡ãã¨0ããã¹ã¿ã¼ããã¦ãã¾ã) 464 $(".topKv__allNum").text("0".concat(slick.slideCount)); // ã¹ã©ã¤ãã®ç·æ° 465 }); 466 467 $(".topKv__slider").slick({ 468 fade: true, 469 autoplay: true, 470 autoplaySpeed: 4000, 471 speed: 2500, 472 infinite: true, 473 pauseOnHover: false, 474 slidesToShow: 1, 475 arrows: true 476 }).on("beforeChange", function (event, slick, currentSlide, nextSlide) { 477 $(".topKv__currentNum").text("0".concat(nextSlide + 1)); // ç¾å¨ã®ã¹ã©ã¤ãçªå·ã®æ¬¡ã®ã¹ã©ã¤ãã«ãªã£ããçªå·ã+1 478 }); 479 }); 480 481 $(".js-kvSliderSp").slick({ 482 autoplay: true, 483 autoplaySpeed: 6100, 484 speed: 1000, 485 infinite: true, 486 dots: false, 487 arrows: true, 488 centerMode: true, 489 centerPadding: '60px' 490 }); 491 $(".js-kvSlider").slick({ 492 autoplay: true, 493 autoplaySpeed: 6100, 494 speed: 1000, 495 infinite: true, 496 dots: false, 497 arrows: false, 498 centerMode: true, 499 centerPadding: "15%", 500 slidesToShow: 1, 501 asNavFor: ".js-kvSliderThumb", 502 }); 503 $(".js-kvSliderThumb").slick({ 504 autoplaySpeed: 3000, 505 speed: 1000, 506 infinite: true, 507 dots: false, 508 arrows: false, 509 slidesToShow: 15, 510 centerMode: true, 511 centerPadding: "0%", 512 asNavFor: ".js-kvSlider", 513 focusOnSelect: true, 514 }); 515 516 $(".photosAll__slick").slick({ 517 autoplay: true, 518 autoplaySpeed: 3000, 519 speed: 1000, 520 infinite: true, 521 pauseOnHover: false, 522 slidesToShow: 1 523 }); 524 $(".slider-square").slick({ 525 autoplay: true, 526 autoplaySpeed: 3000, 527 speed: 1000, 528 infinite: true, 529 pauseOnHover: false, 530 slidesToShow: 3, 531 responsive: [{ 532 breakpoint: 1024, 533 // 399px以ä¸ã®ãµã¤ãºã«é©ç¨ 534 535 settings: { 536 centerMode: true, 537 centerPadding: "12%", 538 arrows: false, 539 slidesToShow: 1 540 } 541 }] 542 }); 543 $(".topPicture__ranking").slick({ 544 autoplay: true, 545 autoplaySpeed: 3000, 546 speed: 1000, 547 infinite: true, 548 pauseOnHover: false, 549 slidesToShow: 1, 550 dots: false 551 }); 552 $(".slider-basic").slick({ 553 autoplay: true, 554 autoplaySpeed: 3000, 555 speed: 1000, 556 infinite: true, 557 pauseOnHover: false, 558 slidesToShow: 5, 559 // centerMode: true, 560 centerPadding: "5%", 561 dots: true, 562 responsive: [{ 563 breakpoint: 1024, 564 settings: { 565 centerMode: true, 566 slidesToShow: 1, 567 centerPadding: '60px' 568 } 569 }] 570 }); 571 $(".topCalendar__slick").slick({ 572 autoplay: true, 573 autoplaySpeed: 3000, 574 speed: 1000, 575 infinite: true, 576 pauseOnHover: false, 577 slidesToShow: 3, 578 centerPadding: "5%", 579 dots: true, 580 responsive: [{ 581 breakpoint: 1024, 582 settings: { 583 settings: "slick", 584 centerMode: false, 585 slidesToShow: 1 586 } 587 }] 588 }); 589 // ã¹ã©ã¤ãã®ææ°ãåå¾ãã 590 const slideLength = document.querySelectorAll('.topCalendar__slick-item').length; 591 592 // ã¹ã©ã¤ãã1æã ã£ãã... 593 if (slideLength == 1) { 594 $('.topCalendar__slick').addClass('slide-one'); 595 } 596 $(".others__slick").slick({ 597 autoplay: true, 598 autoplaySpeed: 3000, 599 speed: 1000, 600 infinite: true, 601 slidesToShow: 1 602 }); 603 $(".others__slick02").slick({ 604 autoplay: true, 605 autoplaySpeed: 3000, 606 speed: 1000, 607 infinite: true, 608 slidesToShow: 1 609 }); 610$(".sliderPhoto-block").slick({ 611 autoplay: false, 612 autoplaySpeed: 3000, 613 speed: 1000, 614 infinite: true, 615 pauseOnHover: false, 616 slidesToShow: 3, 617 // centerMode: true, 618 // centerPadding: "5%", 619 dots: true, 620 responsive: [ 621 // { 622 // breakpoint: 1366, // 399px以ä¸ã®ãµã¤ãºã«é©ç¨ 623 624 // settings: { 625 // slidesToShow: 3, 626 // }, 627 // }, 628 { 629 breakpoint: 1024, 630 // 631 632 settings: { 633 centerMode: true, 634 slidesToShow: 1, 635 centerPadding: "10%" 636 } 637 }] 638}); 639 $(function () { 640 function sliderSetting() { 641 var width = $(window).width(); 642 if (width <= 1024) { 643 $('.topPicture__ranking').not('.slick-initialized').slick({ 644 autoplay: true, 645 autoplaySpeed: 3000, 646 speed: 1000, 647 infinite: true, 648 pauseOnHover: false, 649 slidesToShow: 1, 650 dots: false 651 }); 652 } else { 653 $('.topPicture__ranking.slick-initialized').slick('unslick'); 654 } 655 } 656 sliderSetting(); 657 $(window).resize(function () { 658 sliderSetting(); 659 }); 660 }); 661 662$(".doctorPick__slider").slick({ 663 autoplay: true, 664 autoplaySpeed: 3000, 665 speed: 1000, 666 infinite: true, 667 pauseOnHover: false, 668 slidesToShow: 3, 669 centerPadding: "5%", 670 dots: true, 671 responsive: [{ 672 breakpoint: 1024, 673 settings: { 674 centerMode: true, 675 slidesToShow: 1, 676 centerPadding: '60px' 677 } 678 }] 679 }); 680 var slideLengthDoc = document.querySelectorAll('.doctorPick__slider__item').length; 681 682 if (slideLengthDoc == 1) { 683 $('.doctorPick__slider').addClass('slide-one'); 684 } 685 686 //Instagram ç¶ããè¦ã 687 // $(function () { 688 // var min_height = 1000; //initial height. 689 // var ani_duration = 500; 690 // $('.topInstagram__content').each(function (index) { 691 // if ($(this).height() > min_height + 500) { 692 // $(this).height(min_height).append('<div class="show_more"></div>'); 693 // } 694 // }); 695 696 // $('.show_more').click(function () { 697 // var athis = $(this); 698 // var show_text = athis.parent('.topInstagram__content'); 699 // var original_height = show_text.css({ height: 'auto' }).height(); 700 701 // if (show_text.hasClass('open')) { 702 // //--CLOSE-- 703 // var scroll_offset = $("html,body").scrollTop() - original_height + min_height; 704 705 // $("html,body").animate({ scrollTop: scroll_offset }, ani_duration); 706 // show_text.animate({ height: min_height }, ani_duration, function () { 707 // }); 708 // show_text.removeClass('active').removeClass('open'); 709 // } else { 710 // //--OPEN-- 711 // show_text.height(min_height).animate({ height: original_height }, ani_duration, function () { 712 // show_text.height('auto').addClass('open'); 713 // }); 714 // show_text.addClass('active'); 715 // } 716 // }); 717 // }) 718 719 //çä¾åçãããã¢ãã 720 jQuery(function ($) { 721 const modal = $('#topPicture__modal'); 722 const img = modal.find('img'); 723 724 $('img.topPicture__popup').each(function (index) { 725 $(this).click(function () { 726 img.attr('src', $(this).attr('src')); 727 modal.show(); 728 }) 729 }); 730 731 modal.click(function () { 732 $(this).hide(); 733 }); 734 }); 735 736 // **************************************** 737 // ãã¼ãã«
738 // **************************************** 739 $(function () { 740 var min_height = 200; //é«ãèª¿æ´ 741 var ani_duration = 300; //ã¢ãã¡ã¼ã·ã§ã³å®è¡æéï¼ããªç§ï¼ 742 743 $('.tb__box').each(function (index) { 744 if ($(this).height() > min_height + 230) { 745 //min_height + 50px以ä¸ã«ãªã£ãã追å 746 $(this).height(min_height).append('<div class="tb__boxMore"></div>'); 747 } 748 }); 749 $('.tb__boxMore').click(function () { 750 var athis = $(this); 751 var show_text = athis.parent('.tb__box'); 752 var original_height = show_text.css({ 753 height: 'auto' 754 }).height(); 755 if (show_text.hasClass('is-open')) { 756 //--CLOSE-- 757 var scroll_offset = $("html,body").scrollTop() - original_height + min_height; 758 $("html,body").animate({ 759 scrollTop: scroll_offset 760 }, ani_duration); 761 show_text.animate({ 762 height: min_height 763 }, ani_duration, function () {}); 764 show_text.removeClass('is-active').removeClass('is-open'); 765 } else { 766 //--OPEN-- 767 show_text.height(min_height).animate({ 768 height: original_height 769 }, ani_duration, function () { 770 show_text.height('auto').addClass('is-open'); 771 }); 772 show_text.addClass('is-active'); 773 } 774 }); 775 }); 776 777 // **************************************** 778 // TOP æ½è¡ã«ãã´ãª ã¢ã³ã¼ãã£ãªã³ 779 // **************************************** 780 $(function () { 781 /*ã¿ã¤ãã«ãã¯ãªãã¯ããã¨*/ 782 $(".topSearch__accordionTitle").on("click", function () { 783 /*ã¯ãªãã¯ããé£ã®è¦ç´ ãééãã*/ 784 $(this).next().slideToggle(200); 785 /*ã¿ã¤ãã«ã«openã¯ã©ã¹ã®è¿½å ãåé¤ãè¡ã£ã¦ç¢å°ã®åããå¤ãã*/ 786 $(this).toggleClass("open", 200); 787 }); 788 }); 789 790 // **************************************** 791 // TOP ã¢ã¤ã³ã³hover 792 // **************************************** 793 document.querySelectorAll('.topInfo__link.-hover').forEach(el => { 794 const img = el.querySelector('img'); 795 const defaultImg = el.dataset.default; 796 const hoverImg = el.dataset.hover; 797 798 el.addEventListener('mouseenter', () => { 799 img.src = hoverImg; 800 }); 801 802 el.addEventListener('mouseleave', () => { 803 img.src = defaultImg; 804 }); 805 }); 806 807 const isTouch = window.matchMedia("(hover: none)").matches; 808 809 if (!isTouch) { 810 document.querySelectorAll('.topInfo__link.-hover').forEach(el => { 811 const img = el.querySelector('img'); 812 const defaultImg = el.dataset.default; 813 const hoverImg = el.dataset.hover; 814 815 el.addEventListener('mouseenter', () => { 816 img.src = hoverImg; 817 }); 818 819 el.addEventListener('mouseleave', () => { 820 img.src = defaultImg; 821 }); 822 }); 823 } 824 825}); 826// jQuery End 827 828// **************************************** 829// ã¿ãåãæ¿ã 830// **************************************** 831var TabChange = /*#__PURE__*/function () { 832 function TabChange(tab, content) { 833 _classCallCheck(this, TabChange); 834 this.tab = tab; 835 this.content = content; 836 } 837 _createClass(TabChange, [{ 838 key: "tabClick", 839 value: function tabClick() { 840 var tabBtn = document.querySelectorAll(this.tab); 841 var tabContent = document.querySelectorAll(this.content); 842 for (var i = 0; i < tabBtn.length; i++) { 843 tabBtn[i].addEventListener("click", function () { 844 for (var _i = 0; _i < tabBtn.length; _i++) { 845 tabBtn[_i].classList.remove("active"); 846 } 847 for (var _i2 = 0; _i2 < tabContent.length; _i2++) { 848 tabContent[_i2].classList.remove("active"); 849 } 850 this.classList.add("active"); 851 var arrayTabs = Array.prototype.slice.call(tabBtn); 852 var index = arrayTabs.indexOf(this); 853 tabContent[index].classList.add("active"); 854 }); 855 } 856 } 857 }]); 858 return TabChange; 859}(); 860var topPhotoTabToggle = new TabChange(".topTreatment__btn", ".topTreatment__box"); 861topPhotoTabToggle.tabClick(); 862 863 864// ************** 865// FullCalendar 866// ************** 867document.addEventListener('DOMContentLoaded', function () { 868 // 彿 869 var calendarEl1 = document.getElementById('calendar1'); 870 var calendar1 = new FullCalendar.Calendar(calendarEl1, { 871 initialView: 'dayGridMonth', 872 navLinks: false, 873 businessHours: false, 874 editable: false, 875 eventResizableFromStart: false, // ã¤ãã³ãã®éå§æ¥å´ã®ãã©ãã°ç§»åãç¡å¹ã«ãã 876 eventResizableFromEnd: false, // ã¤ãã³ãã®çµäºæ¥å´ã®ãã©ãã°ç§»åãç¡å¹ã«ãã 877 locale: 'ja', 878 events: '[email protected]', 879 googleCalendarApiKey: 'AIzaSyD4l92kaP3fEoZbB2LB-lNJ3eiB98OqF7I', 880 eventTimeFormat: { hour: 'numeric', minute: '2-digit' }, 881 eventClick: function (info) { 882 info.jsEvent.preventDefault(); 883 }, 884 eventDidMount: (e) => { 885 tippy(e.el, { 886 content: e.event.title, 887 }); 888 }, 889 // æ¡ä»¶ã«ãã£ã¦ã¯ã©ã¹åãåå²ãããå ´å 890 eventClassNames: function (data) { 891 if (data.event.title === 'éæ²¢æ¬é¢') { 892 return ['kanazawa']; 893 } else if (data.event.title === 'å¯å±±é¢') { 894 return ['toyama']; 895 } else if (data.event.title === 'æ±äº¬é¢') { 896 return ['tokyo']; 897 } else if (data.event.title === '大éªé¢') { 898 return ['osaka']; 899 } 900 }, 901 }); 902 calendar1.render(); 903 904 // ç¿æ 905 var calendarEl2 = document.getElementById('calendar2'); 906 var today = new Date; 907 var myYear = today.getFullYear();//å¹´ãåå¾ 908 var myMonth = today.getMonth() + 1;//æãåå¾ã1æã0ããå§ã¾ãããããããã
909 var nextMonth = myMonth + 1; 910 if (nextMonth > 12) { nextMonth -= 12; myYear += 1; }; 911 //10以ä¸ãäºã±ã¿ã« 912 if (nextMonth < 10) { nextMonth = "0" + nextMonth; }; 913 914 //æ¥ä»ãåºå 915 var dates1 = String(myYear) + "-" + String(nextMonth) + "-" + "01"; 916 var calendar2 = new FullCalendar.Calendar(calendarEl2, { 917 initialView: 'dayGridMonth', 918 navLinks: false, 919 businessHours: false, 920 editable: false, 921 eventResizableFromStart: false, // ã¤ãã³ãã®éå§æ¥å´ã®ãã©ãã°ç§»åãç¡å¹ã«ãã 922 eventResizableFromEnd: false, // ã¤ãã³ãã®çµäºæ¥å´ã®ãã©ãã°ç§»åãç¡å¹ã«ãã 923 locale: 'ja', 924 initialDate: dates1, 925 events: '[email protected]', 926 googleCalendarApiKey: 'AIzaSyD4l92kaP3fEoZbB2LB-lNJ3eiB98OqF7I', 927 eventTimeFormat: { hour: 'numeric', minute: '2-digit' }, 928 eventClick: function (info) { 929 info.jsEvent.preventDefault(); 930 }, 931 eventDidMount: (e) => { 932 tippy(e.el, { 933 content: e.event.title, 934 }); 935 }, 936 // æ¡ä»¶ã«ãã£ã¦ã¯ã©ã¹åãåå²ãããå ´å 937 eventClassNames: function (data) { 938 if (data.event.title === 'éæ²¢æ¬é¢') { 939 return ['kanazawa']; 940 } else if (data.event.title === 'å¯å±±é¢') { 941 return ['toyama']; 942 } else if (data.event.title === 'æ±äº¬é¢') { 943 return ['tokyo']; 944 } else if (data.event.title === '大éªé¢') { 945 return ['osaka']; 946 } 947 } 948 }); 949 calendar2.render(); 950 // ç¿ã æ 951 var next2Month = myMonth + 2; 952 if (next2Month > 12) { 953 next2Month -= 12; 954 if (nextMonth == 12) { myYear += 1; }; 955 }; 956 if (next2Month < 10) { next2Month = "0" + next2Month; }; 957 var calendarEl3 = document.getElementById('calendar3'); 958 var dates2 = String(myYear) + "-" + String(next2Month) + "-" + "01"; 959 var calendar3 = new FullCalendar.Calendar(calendarEl3, { 960 initialView: 'dayGridMonth', 961 navLinks: false, 962 businessHours: false, 963 editable: false, 964 eventResizableFromStart: false, // ã¤ãã³ãã®éå§æ¥å´ã®ãã©ãã°ç§»åãç¡å¹ã«ãã 965 eventResizableFromEnd: false, // ã¤ãã³ãã®çµäºæ¥å´ã®ãã©ãã°ç§»åãç¡å¹ã«ãã 966 locale: 'ja', 967 initialDate: dates2, 968 events: '[email protected]', 969 googleCalendarApiKey: 'AIzaSyD4l92kaP3fEoZbB2LB-lNJ3eiB98OqF7I', 970 eventTimeFormat: { hour: 'numeric', minute: '2-digit' }, 971 eventClick: function (info) { 972 info.jsEvent.preventDefault(); 973 }, 974 eventDidMount: (e) => { 975 tippy(e.el, { 976 content: e.event.title, 977 }); 978 }, 979 // æ¡ä»¶ã«ãã£ã¦ã¯ã©ã¹åãåå²ãããå ´å 980 eventClassNames: function (data) { 981 if (data.event.title === 'éæ²¢æ¬é¢') { 982 return ['kanazawa']; 983 } else if (data.event.title === 'å¯å±±é¢') { 984 return ['toyama']; 985 } else if (data.event.title === 'æ±äº¬é¢') { 986 return ['tokyo']; 987 } else if (data.event.title === '大éªé¢') { 988 return ['osaka']; 989 } 990 } 991 }); 992 calendar3.render(); 993 994 995}); 996 997// // scroll = class add 998// window.onscroll = function () { 999// // go to top btn 1000// var page_top = document.getElementById('pageTop'); 1001// if (window.pageYOffset > 800) { 1002// page_top.classList.add("active"); 1003// } else { 1004// page_top.classList.remove("active"); 1005// } 1006// } 1007//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9qc1RlbExpbmsuanMiLCJiYXNlLmpzIl0sIm5hbWVzIjpbImpRdWVyeSIsImRvY3VtZW50IiwicmVhZHkiLCIkIiwic3RyTW9kZSIsInN3aXRjaFRlbExpbmsiLCJiRGlzYWJsZSIsInVhIiwibmF2aWdhdG9yIiwidXNlckFnZW50IiwidG9Mb3dlckNhc2UiLCJpbmRleE9mIiwid2luZG93Iiwid2lkdGgiLCJTUF9NQVhfV0lEVEgiLCJlYWNoIiwiZWxtTmV3IiwiYXR0ciIsImh0bWwiLCJyZXBsYWNlV2l0aCIsIm9uIiwiaGVhZGVySGlnaHQiLCJsZW5ndGgiLCJjbGljayIsInNwZWVkIiwiaHJlZiIsInRhcmdldCIsInBvc2l0aW9uIiwib2Zmc2V0IiwidG9wIiwiYW5pbWF0ZSIsInNjcm9sbFRvcCIsIlVSTCIsIm1hdGNoIiwic3RyIiwibG9jYXRpb24iLCJjdXRfc3RyIiwiaW5kZXgiLCJzbGljZSIsImFkZENsYXNzIiwic3QiLCJ3aCIsImhlaWdodCIsInd3IiwiaSIsInRnIiwiZGVsYXkiLCJ0b2dnbGVDbGFzcyIsIm5leHQiLCJzbGlkZVRvZ2dsZSIsImNzcyIsIm5vdCIsInJlbW92ZUNsYXNzIiwic2xpZGVVcCIsInBhZ2V0b3AiLCJzdGlja3lCdG4iLCJzY3JvbGwiLCJwb3MiLCJzY3JvbGxQb3NpdGlvbiIsImhlYWRlckhlaWdodCIsImlubmVySGVpZ2h0Iiwia3ZIZWlnaHQiLCJvdXRlckhlaWdodCIsImNhcmQiLCJ0ZXh0SGVpZ2h0IiwibGluZUhlaWdodCIsInBhcnNlRmxvYXQiLCJsaW5lTnVtIiwidGV4dE5ld0hlaWdodCIsIndpbmRvd1dpZHRoU3AiLCJ3aW5kb3dXaWR0aFBjIiwiY29uc29sZSIsImxvZyIsInBhcmVudCIsIm51bSIsInJlcGxhY2UiLCJ3cmFwIiwiZXZlbnQiLCJzbGljayIsImFwcGVuZCIsInRleHQiLCJ
1007jdXJyZW50U2xpZGUiLCJzbGlkZUNvdW50IiwiZmFkZSIsImF1dG9wbGF5IiwiYXV0b3BsYXlTcGVlZCIsImluZmluaXRlIiwicGF1c2VPbkhvdmVyIiwic2xpZGVzVG9TaG93IiwiYXJyb3dzIiwibmV4dFNsaWRlIiwicmVzcG9uc2l2ZSIsImJyZWFrcG9pbnQiLCJzZXR0aW5ncyIsImNlbnRlck1vZGUiLCJjZW50ZXJQYWRkaW5nIiwiZG90cyIsInNsaWRlclNldHRpbmciLCJyZXNpemUiLCJUYWJDaGFuZ2UiLCJ0YWIiLCJjb250ZW50IiwidGFiQnRuIiwicXVlcnlTZWxlY3RvckFsbCIsInRhYkNvbnRlbnQiLCJhZGRFdmVudExpc3RlbmVyIiwiY2xhc3NMaXN0IiwicmVtb3ZlIiwiYWRkIiwiYXJyYXlUYWJzIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJjYWxsIiwidG9wUGhvdG9UYWJUb2dnbGUiLCJ0YWJDbGljayJdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBQSxNQUFNLENBQUNDLFFBQVEsQ0FBQyxDQUFDQyxLQUFLLENBQUMsVUFBU0MsQ0FBQyxFQUFDO0VBQ2pDO0VBQ0E7RUFDQTtFQUNBLElBQUlDLE9BQU8sR0FBRyxJQUFJO0VBR2xCLElBQUlDLGFBQWEsR0FBRyxTQUFoQkEsYUFBYSxHQUFhO0lBQzdCLElBQUlDLFFBQVEsR0FBRyxJQUFJO0lBQ25CLFFBQU9GLE9BQU87TUFDYjtNQUNBLEtBQUssSUFBSTtRQUFFO1VBQ1YsSUFBSUcsRUFBRSxHQUFHQyxTQUFTLENBQUNDLFNBQVMsQ0FBQ0MsV0FBVyxFQUFFOztVQUUxQztVQUNBSixRQUFRLEdBQUlDLEVBQUUsQ0FBQ0ksT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztVQUFHO1VBQ3JDSixFQUFFLENBQUNJLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7VUFBRztVQUMzQkosRUFBRSxDQUFDSSxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFFLENBQUMsQ0F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yxDQUFDQyxNQUFNLENBQUMsUUFBUSxDQUFDO1VBQzFDO1VBQ0EsSUFBSSxDQUFDRCxTQUFTLENBQUNFLEdBQUcsQ0FBQyxRQUFRLENBQUM7VUFDNUIsSUFBTUMsU0FBUyxHQUFHQyxLQUFLLENBQUNDLFNBQVMsQ0FBQ3pFLEtBQUssQ0FBQzBFLElBQUksQ0FBQ1YsTUFBTSxDQUFDO1VBQ3BELElBQU1qRSxLQUFLLEdBQUd3RSxTQUFTLENBQUNsRyxPQUFPLENBQUMsSUFBSSxDQUFDO1VBQ3JDNkYsVUFBVSxDQUFDbkUsS0FBSyxDQUFDLENBQUNxRSxTQUFTLENBQUNFLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDM0MsQ0FBQyxDQUFDO01BQ0o7SUFDRjtFQUFDO0VBQUE7QUFBQTtBQUdILElBQU1LLGlCQUFpQixHQUFHLElBQUlkLFNBQVMsQ0FDckMsb0JBQW9CLEVBQ3BCLG9CQUFvQixDQUNyQjtBQUVEYyxpQkFBaUIsQ0FBQ0MsUUFBUSxFQUFFOztBQUk1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiJiYXNlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gY29tbW9u77ya6Zu76Kmx55Wq5Y+344Oq44Oz44Kv44Gu5Yi25b6hKFBD44Gu5aC05ZCI44GvdGVs44Oq44Oz44Kv44KS54Sh5Yq55YyWKVxuLy8ganNUZWxMaW5r44Kv44Op44K544KS5oyB44Gk44CB44Oq44Oz44Kv44K/44KwKGHjgr/jgrAp44Gu44G/44Gr5pyJ5Yq5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5qUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpe1xuXHQvL+WIpOWumuODouODvOODiVxuXHQvL+ODu+ODpuODvOOCtuODvOOCqOODvOOCuOOCp+ODs+ODiOWIpOWumu+8mnVhXG5cdC8v44O755S76Z2i5bmF5Yik5a6a77yad2lkdGgodWHku6XlpJbjgarjgonkvZXjgafjgoIpXG5cdHZhciBzdHJNb2RlID0gJ3VhJztcblxuXG5cdHZhciBzd2l0Y2hUZWxMaW5rID0gZnVuY3Rpb24oKXtcblx0XHR2YXIgYkRpc2FibGUgPSB0cnVlO1xuXHRcdHN3aXRjaChzdHJNb2RlKXtcblx0XHRcdC8v44Om44O844K244O844Ko44O844K444Kn44Oz44OI5Yik5a6aXG5cdFx0XHRjYXNlICd1YSc6IHtcblx0XHRcdFx0dmFyIHVhID0gbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpO1xuXG5cdFx0XHRcdC8v44Gp44KM44Gr44KC5b2T44Gm44Gv44G+44KJ44Gq44GR44KM44Gw44CBUEMo44Oq44Oz44Kv54Sh5Yq5KVxuXHRcdFx0XHRiRGlzYWJsZSA9ICh1YS5pbmRleE9mKCdwaG9uZScpID09IC0xICYmLy9pUGhvbmXjgahXaW5kb3dzIHBob25lXG5cdFx0XHRcdFx0XHRcdHVhLmluZGV4T2YoJ2lwYWQnKSA9PSAtMSAmJi8vaVBhZFxuXHRcdFx0XHRcdFx0XHR1YS5pbmRleE9mKCdhbmRyb2lkJykgPT0gLTEpOyAvL0FuZHJvaWTjgahBbmRyb2lk44K/44OW44Os44OD44OIXG5cblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cblx0XHRcdC8v55S76Z2i5bmF5Yik5a6aXG5cdFx0XHRkZWZhdWx0OiB7XG5cdFx0XHRcdGJEaXNhYmxlID0gKCQod2luZG93KS53aWR0aCgpID4gU1BfTUFYX1dJRFRIKTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly/jg6rjg7Pjgq/jgpLnhKHlirnjgavjgZnjgotcblx0XHRpZihiRGlzYWJsZSl7XG5cdFx0XHQkKCdhLmpzVGVsTGluaycpLmVhY2goZnVuY3Rpb24oKXtcblx0XHRcdFx0dmFyIGVsbU5ldyA9ICQoJzxzcGFuLz4nLCB7XG5cdFx0XHRcdFx0J2NsYXNzJzogJCh0aGlzKS5hdHRyKCdjbGFzcycpXG5cdFx0XHRcdH0pO1xuXHRcdFx0XHRlbG1OZXcuaHRtbCgkKHRoaXMpLmh0bWwoKSk7XG5cblx0XHRcdFx0JCh0aGlzKS5yZXBsYWNlV2l0aChlbG1OZXcpO1xuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdC8v44Oq44Oz44Kv44KS5pyJ5Yq544Gr44GZ44KLXG5cdFx0ZWxzZXtcblx0XHRcdCQoJ3NwYW4uanNUZWxMaW5rJykuZWFjaChmdW5jdGlvbigpe1xuXHRcdFx0XHR2YXIgZWxtTmV3ID0gJCgnPGEvPicsIHtcblx0XHRcdFx0XHQnY2xhc3MnOiAkKHRoaXMpLmF0dHIoJ2NsYXNzJylcblx0XHRcdFx0fSk7XG5cdFx0XHRcdGVsbU5ldy5odG1sKCQodGhpcykuaHRtbCgpKTtcblxuXHRcdFx0XHQkKHRoaXMpLnJlcGxhY2VXaXRoKGVsbU5ldyk7XG5cdFx0XHR9KTtcblx0XHR9XG5cdH07XG5cdHN3aXRjaFRlb
1007ExpbmsoKTtcblxuXHQvL+ODquOCteOCpOOCuuaZguOBq+Wun+ihjFxuXHRpZihzdHJNb2RlICE9ICd1YScpe1xuXHRcdCQod2luZG93KS5vbigncmVzaXplJywgc3dpdGNoVGVsTGluayk7XG5cdH1cbn0pO1xuIiwiLy8galF1ZXJ5IHN0YXJ0XG5qUXVlcnkoZnVuY3Rpb24gKCQpIHtcblxuICAvLyBTUCAxMDB2aCjjgrnjgq/jg63jg7zjg6vjg5Djg7zlr77nrZYpXG4gIC8vICQoJy5sb2FkaW5nTG9nbycpLmNzcygnaGVpZ2h0JywkKHdpbmRvdykuaGVpZ2h0KCkpO1xuXG5cbiAgLy8gU21vb3RoIHNjcm9sbFxuICAvLyDjg5rjg7zjgrjlhoXjg6rjg7Pjgq9cbiAgdmFyIHdpZHRoID0gJCh3aW5kb3cpLndpZHRoKCk7XG4gIGlmICh3aWR0aCA8PSAxMDIzKSB7XG4gICAgdmFyIGhlYWRlckhpZ2h0ID0gNjA7IC8v44OY44OD44OA44Gu6auY44GVXG4gIH0gZWxzZSB7XG4gICAgdmFyIGhlYWRlckhpZ2h0ID0gMTAwOyAvL+ODmOODg+ODgOOBrumrmOOBlVxuICB9XG5cbiAgaWYoISQoJy5zaW5nbGUtbWVudScpLmxlbmd0aCApIHtcbiAgICAvL+OBguOBo+OBn+WgtOWQiOOBruWHpueQhuOCkuabuOOBj1xuXG4gICAgJCgnYVtocmVmXj1cIiNcIl0nKS5jbGljayhmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgc3BlZWQgPSA4MDA7XG4gICAgICB2YXIgaHJlZiA9ICQodGhpcykuYXR0cihcImhyZWZcIik7XG4gICAgICB2YXIgdGFyZ2V0ID0gJChocmVmID09IFwiI1wiIHx8IGhyZWYgPT0gXCJcIiA/ICdodG1sJyA6IGhyZWYpO1xuICAgICAgdmFyIHBvc2l0aW9uID0gdGFyZ2V0Lm9mZnNldCgpLnRvcCAtIGhlYWRlckhpZ2h0O1xuICAgICAgJChcImh0bWwsIGJvZHlcIikuYW5pbWF0ZSh7XG4gICAgICAgIHNjcm9sbFRvcDogcG9zaXRpb25cbiAgICAgIH0sIHNwZWVkLCBcInN3aW5nXCIpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0pO1xuXG4gICAgLy8g44Oa44O844K45aSW44Oq44Oz44KvXG4gICQod2luZG93KS5vbignbG9hZCcsIGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoZG9jdW1lbnQuVVJMLm1hdGNoKFwiI1wiKSkge1xuICAgICAgdmFyIHN0ciA9IGxvY2F0aW9uLmhyZWY7XG4gICAgICB2Y
1007XIgY3V0X3N0ciA9IFwiI1wiO1xuICAgICAgdmFyIGluZGV4ID0gc3RyLmluZGV4T2YoY3V0X3N0cik7XG4gICAgICB2YXIgaHJlZiA9IHN0ci5zbGljZShpbmRleCk7XG4gICAgICB2YXIgdGFyZ2V0ID0gaHJlZjtcbiAgICAgIHZhciBwb3NpdGlvbiA9ICQodGFyZ2V0KS5vZmZzZXQoKS50b3AgLSBoZWFkZXJIaWdodDtcbiAgICAgICQoXCJodG1sLCBib2R5XCIpLnNjcm9sbFRvcChwb3NpdGlvbik7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9KTtcblxuICB9XG5cblxuXG5cblxuICAvLyBsb2FkaW5nIEZhc3RcbiAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkge1xuICAgIGpRdWVyeShcIi5sb2FkaW5nXCIpLmFkZENsYXNzKFwiYWN0aXZlXCIpO1xuICB9KTtcblxuICAvLyBsb2FkaW5nIFNsb3dcbiAgLy8gJCh3aW5kb3cpLm9uKCdsb2FkJywgZnVuY3Rpb24gKCkge1xuICAvLyAgIGpRdWVyeShcIi5sb2FkaW5nXCIpLmFkZENsYXNzKFwiYWN0aXZlXCIpO1xuICAvLyB9KTtcblxuICAvLyBzY3JvbGwgY2xhc3MgYWRkXG4gIGpRdWVyeSh3aW5kb3cpLm9uKFwibG9hZCBzY3JvbGwgcmVzaXplXCIsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBzdCA9IGpRdWVyeSh3aW5kb3cpLnNjcm9sbFRvcCgpO1xuICAgIHZhciB3aCA9IGpRdWVyeSh3aW5kb3cpLmhlaWdodCgpO1xuICAgIHZhciB3dyA9IGpRdWVyeSh3aW5kb3cpLndpZHRoKCk7XG5cbiAgICAvLyBmYXN0KDwxKSBzbG93KD4xKVxuICAgIGpRdWVyeShcIi5mYWRlLCAuZmFkZU1hc2ssIC5mYWRlVXAsIC5mYWRlSW4sIGZhZGVBbmltYXRpb25cIikuZWFjaChmdW5jdGlvbiAoaSkge1xuICAgICAgdmFyIHRnID0galF1ZXJ5KHRoaXMpLm9mZnNldCgpLnRvcCAtIHdoICogMC45O1xuICAgICAgaWYgKHN0ID4gdGcpIHtcbiAgICAgICAgalF1ZXJ5KHRoaXMpLmFkZENsYXNzKFwiYWN0aXZlXCIpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgalF1ZXJ5KFwiLmZhZGUtdXAtZmFzdFwiKS5lYWNoKGZ1bmN0aW9uIChpKSB7XG4gICAgICB2Y
1007XIgdGcgPSBqUXVlcnkodGhpcykub2Zmc2V0KCkudG9wIC0gd2ggKiAwLjg7XG4gICAgICBpZiAoc3QgPiB0Zykge1xuICAgICAgICBqUXVlcnkodGhpcykuYWRkQ2xhc3MoXCJhY3RpdmVcIik7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgfSk7IC8vIHNjcm9sbCBjbGFzcyBhZGQgRU5EXG5cbiAgLy8gUHJvY3VjdCBMaXN0IFRvZ2dsZVxuICBqUXVlcnkoJy5wcm9kdWN0X190dGwnKS5jbGljayhmdW5jdGlvbiAoKSB7XG4gICAgalF1ZXJ5KHRoaXMpLmRlbGF5KDUwMDApLnRvZ2dsZUNsYXNzKCdvcGVuJyk7XG4gICAgalF1ZXJ5KHRoaXMpLm5leHQoJy5wcm9kdWN0X19hbnN3ZXInKS5zbGlkZVRvZ2dsZSgpO1xuICB9KTtcbiAgalF1ZXJ5KCcuc3RvY2tMaXN0X19zaG9wJykuY2xpY2soZnVuY3Rpb24gKCkge1xuICAgIGpRdWVyeSh0aGlzKS5kZWxheSg1MDAwKS50b2dnbGVDbGFzcygnb3BlbicpO1xuICAgIGpRdWVyeSh0aGlzKS5uZXh0KCcuc3RvY2tMaXN0X19pbmZvJykuc2xpZGVUb2dnbGUoKTtcbiAgfSk7XG5cblxuICAgIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgLy8g44OP44Oz44OQ44O844Ks44O844Oh44OL44Ol44O8XG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuICBqUXVlcnkoXCIubmF2QmFyXCIpLmNsaWNrKGZ1bmN0aW9uICgpIHtcbiAgICBqUXVlcnkoXCIubmF2QmFyX19saW5lXCIpLnRvZ2dsZUNsYXNzKFwiYWN0aXZlXCIpO1xuICAgIGpRdWVyeShcIi5kcmF3ZXJcIikudG9nZ2xlQ2xhc3MoXCJhY3RpdmVcIik7XG4gIH0pO1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8g44OV44OD44K/44O8ICsg44OY44OD44OA44O8IOOCouOCs+ODvOODh+OCo+OCquODs1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuaWYgKHdpZHRoIDw9IDc2Nyl7XG5qUXVlcnkoZnVuY3Rpb24gKCQpIHtcbiAgJChcIi5mb290ZXJfX2xpc3RcIikuY3NzKFwiZGlzcGxheVwiLCBcIm5vbmVcIik7XG5cbiAgJChcIi5mb290ZXJfX3N1YlR0bFwiKS5jbGljayhmdW5jdGlvbiAoKSB7XG4gICAgJChcIi5mb290ZXJfX3N1YlR0bFwiKS5ub3QodGhpcykucmVtb3ZlQ2xhc3MoXCJvcGVuXCIpO1xuICAgICQoXCIuZm9vdGVyX19zdWJUdGxcIikubm90KHRoaXMpLm5leHQoKS5zbGlkZVVwKDMwMCk7XG4gICAgJCh0aGlzKS50b2dnbGVDbGFzcyhcIm9wZW5cIik7XG4gICAgJCh0aGlzKS5uZXh0KFwiLmZvb3Rlcl9fbGlzdFwiKS5zbGlkZVRvZ2dsZSgzMDApO1xuICB9KTtcbn0pO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyDjg4jjg4Pjg5fjgbjmiLvjgotcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJChmdW5jdGlvbiAoKSB7XG4gIHZhciBwYWdldG9wID0gJChcIi5wYWdlVG9wXCIpO1xuICBwYWdldG9wLmNsaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAkKFwiYm9keSwgaHRtbFwiKS5hbmltYXRlKHtcbiAgICAgIHNjcm9sbFRvcDogMFxuICAgIH0sIDUwMCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9KTtcbn0pO1xuXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIHN0aWNreUJ0buihqOekulxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kKGZ1bmN0aW9uICgpIHtcbiAgdmFyIHN0aWNreUJ0biA9ICQoJy5zdGlja3lCdG4tc3AnKTtcbiAgJCh3aW5kb3cpLnNjcm9sbChmdW5jdGlvbiAoKSB7XG4gICAgaWYgKCQodGhpcykuc2Nyb2xsVG9wKCkgPiAyMDApIHtcbiAgICAgIHN0aWNreUJ0bi5hZGRDbGFzcyhcImFjdGl2ZVwiKVxuICAgIH0gZWxzZSB7XG4gICAgICBzdGlja3lCdG4ucmVtb3ZlQ2xhc3MoXCJhY3RpdmVcIilcbiAgICB9XG4gIH0pO1xufSk7XG5cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gc3RpY2t5TWVudeihqOekulxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4vLyAkKCcudG9wS3ZfX3NlYXJjaCcpLmNsaWNrKGZ1bmN0aW9uICgpIHtcbi8vICAgJCgnLnN0aWNreU1lbnUnKS50b2dnbGVDbGFzcyhcImFjdGl2ZVwiKTtcbi8vIH0pO1xuXG5cblxuXG5cblxuJChmdW5jdGlvbigpe1xuXG4gICQoJy50b3BLdl9fc2VhcmNoJykuY2xpY2soZnVuY3Rpb24gKCkge1xuICAgICQoJy5zdGlja3lNZW51JykuYWRkQ2xhc3MoXCJhY3RpdmVcIik7XG4gIH0pO1xuXG4gIHZhciBwb3MgPSAwO1xuICAkKHdpbmRvdykub24oJ3Njcm9sbCcsIGZ1bmN0aW9uKCl7XG4gICAgaWYoJCh0aGlzKS5zY3JvbGxUb3AoKSA+IHBvcyApe1xuICAgICAgJCgnLnN0aWNreU1lbnUnKS5yZW1vdmVDbGFzcyhcImFjdGl2ZVwiKTtcbiAgICB9XG4gICAgcG9zID0gJCh0aGlzKS5zY3JvbGxUb3AoKTtcbiAgfSk7XG5cbn0pO1xuXG5cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8g44OY44OD44OA44O86IOM5pmvXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiQod2luZG93KS5vbihcInNjcm9sbFwiLCBmdW5jdGlvbigpIHtcbiAgdmFyIHNjcm9sbFBvc2l0aW9uID0gJCh0aGlzKS5zY3JvbGxUb3AoKTtcbiAgdmFyIGhlYWRlckhlaWdodCA9ICQoXCIuaGVhZGVyXCIpLmlubmVySGVpZ2h0KCk7XG4gIHZhciBrdkhlaWdodCA9ICQoXCIuanMta3ZcIikub3V0ZXJIZWlnaHQoKTtcblxuICAvLyBpZiAoc2Nyb2xsUG9zaXRpb24gPiBoZWFkZXJIZWlnaHQgKyBrdkhlaWdodCkge1xuICBpZiAoc2Nyb2xsUG9zaXRpb24gPiAxMzApIHtcbiAgICAkKFwiLmhlYWRlclwiKS5hZGRDbGFzcyhcImFjdGl2ZVwiKTtcbiAgfWVsc2V7XG4gICAgJChcIi5oZWFkZXJcIikucmVtb3ZlQ2xhc3MoXCJhY3RpdmVcIik7XG4gIH1cbn0pO1xuXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgLy8g57aa44GN44KS6Kqt44KAXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuICAkKGZ1bmN0aW9uKCkge1xuICAgIGxldCBjYXJkID0gJ
1007ChcIi5jYXJkXCIpO1xuICAgIHZhciB0ZXh0SGVpZ2h0ID0gJCgnLmNhcmQgLndwLWJsb2NrLWdyb3VwJykuaW5uZXJIZWlnaHQoKTtcbiAgICB2YXIgbGluZUhlaWdodCA9IHBhcnNlRmxvYXQoJCgnLnRleHQnKS5jc3MoJ2xpbmUtaGVpZ2h0JykpO1xuICAgIHZhciBsaW5lTnVtID0gNDtcbiAgICB2YXIgdGV4dE5ld0hlaWdodCA9IGxpbmVIZWlnaHQgKiBsaW5lTnVtO1xuICAgIHZhciB3aW5kb3dXaWR0aFNwID0gJCh3aW5kb3cpLndpZHRoKCkgKiA0MDAgLyAzNzU7XG4gICAgdmFyIHdpbmRvd1dpZHRoUGMgPSA0NTA7XG4gICAgbGV0IHdpZHRoID0gJCh3aW5kb3cpLndpZHRoKCk7XG5cbiAgICBjb25zb2xlLmxvZyh0ZXh0SGVpZ2h0KVxuICAgIGNvbnNvbGUubG9nKGNhcmQpXG5cbiAgICAvLyBjYXJkLmVhY2goZnVuY3Rpb24oKXtcbiAgICAvLyAgIGlmICgkKHRoaXMpLmlubmVySGVpZ2h0KCkgPiB3aW5kb3dXaWR0aFNwKXtcbiAgICAvLyAgICAgJCh0aGlzKS5hZGRDbGFzcyhcImhpZGVcIik7XG5cbiAgICAvLyAgICAgJCh0aGlzKS5jbGljayhmdW5jdGlvbigpe1xuICAgIC8vICAgICAgICQodGhpcykudG9nZ2xlQ2xhc3MoXCJpcy1zaG93XCIpO1xuICAgIC8vICAgICB9KVxuICAgIC8vICAgfVxuICAgIC8vIH0pXG5cbiAgICBpZiAod2lkdGggPD0gMTAyNCkge1xuICAgICAgY2FyZC5lYWNoKGZ1bmN0aW9uKCl7XG4gICAgICAgIGlmICgkKHRoaXMpLmlubmVySGVpZ2h0KCkgPiB3aW5kb3dXaWR0aFNwKXtcbiAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKFwiaGlkZVwiKTtcblxuICAgICAgICAgICQodGhpcykuY2xpY2soZnVuY3Rpb24oKXtcbiAgICAgICAgICAgICQodGhpcykudG9nZ2xlQ2xhc3MoXCJpcy1zaG93XCIpO1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIGNhcmQuZWFjaChmdW5jdGlvbigpe1xuICAgICAgICBpZiAoJCh0aGlzKS5pbm5lckhlaWdodCgpID4gd2luZG93V2lkdGhQYyl7XG4gICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcyhcImhpZGVcIik7XG5cbiAgICAgICAgICAkKHRoaXMpLmNsaWNrKGZ1bmN0aW9uKCl7XG4gICAgICAgICAgICAkKHRoaXMpLnRvZ2dsZUNsYXNzKFwiaXMtc2hvd1wiKTtcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIGlmICh0ZXh0SGVpZ2h0ID4gMzUwKSB7XG4gICAgLy8gICAvLyBjYXJkLmVhY2goZnVuY3Rpb24oKXtcbiAgICAvLyAgIC8vICAgJCh0aGlzKS5hZGRDbGFzcyhcImhpZGVcIilcbiAgICAvLyAgIC8vIH0pXG4gICAgLy8gICAvLyBjYXJkLmFkZENsYXNzKFwiaGlkZVwiKTtcbiAgICAvLyAgIC8vICQoJy50ZXh0JykuY3NzKHtcbiAgICAvLyAgIC8vICAgICAnaGVpZ2h0JzogdGV4dE5ld0hlaWdodCxcbiAgICAvLyAgIC8vICAgICAnb3ZlcmZsb3cnOidoaWRkZW4nXG4gICAgLy8gICAvLyAgfSk7XG4gICAgLy8gICAvLyAkKCcucmVhZG1vcmUtYnRuJykuc2hvdygpO1xuICAgIC8vICAgJCgnLnJlYWRtb3JlLWJ0bicpLmNsaWNrKGZ1bmN0aW9uKCkge1xuICAgIC8vICAgICAkKHRoaXMpLmhpZGUoKTtcbiAgICAvLyAgICAgJCgnLnRleHQnKS5jc3Moe1xuICAgIC8vICAgICAgICdoZWlnaHQnOiB0ZXh0SGVpZ2h0LFxuICAgIC8vICAgICAgICdvdmVyZmxvdyc6ICd2aXNpYmxlJ1xuICAgIC8vICAgICAgfSk7XG4gICAgLy8gICAgIHJldHVybiBmYWxzZTtcbiAgICAvLyAgIH0pO1xuICAgIC8vIH07XG4gIH0pO1xuXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgLy8gRkFR44Gu44Ki44Kz44O844OH44Kj44Kq44Oz5Yem55CGXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuICAkKFwiLnFhX19hbnN3ZXJcIikuY3NzKFwiZGlzcGxheVwiLCBcIm5vbmVcIik7XG4gICQoXCIucWFfX3F1ZXN0aW9uXCIpLmNsaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAkKHRoaXMpLnRvZ2dsZUNsYXNzKFwib3BlblwiKTtcbiAgICAkKHRoaXMpLm5leHQoKS5zbGlkZVRvZ2dsZSgzMDApO1xuICB9KTtcblxuXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgLy8g44Ki44Kz44O844OH44Kj44Kq44Oz5Yem55CGXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuICAkKFwiLmpzLWFjY29yZGlvbi1pdGVtXCIpLmNzcyhcImRpc3BsYXlcIiwgXCJub25lXCIpO1xuICAkKFwiLmpzLWFjY29yZGlvbi1idG5cIikuY2xpY2soZnVuY3Rpb24gKCkge1xuICAgICQodGhpcykudG9nZ2xlQ2xhc3MoXCJvcGVuXCIpO1xuICAgICQodGhpcykucGFyZW50KCkudG9nZ2xlQ2xhc3MoXCJicm93blwiKVxuICAgICQodGhpcykucGFyZW50KCkubmV4dCgpLnNsaWRlVG9nZ2xlKDMwMCk7XG4gIH0pO1xuXG4gICQoZnVuY3Rpb24oKXtcblx0XHQvL+OCr+ODquODg+OCr+OBp+WLleOBj1xuICAgICQoJy5waG90b3NBbGxfX3dyYXBwZXInKS5jc3MoXCJkaXNwbGF5XCIsIFwibm9uZVwiKTtcblxuXHRcdCQoJy5waG90b3NBbGxfX2J0bicpLmNsaWNrKGZ1bmN0aW9uKCl7XG5cdFx0XHQkKHRoaXMpLnRvZ2dsZUNsYXNzKCdvcGVuJyk7XG5cdFx0XHQkKHRoaXMpLm5leHQoJy5waG90b3NBbGxfX3dyYXBwZXInKS5zbGlkZVRvZ2dsZSgpO1xuXHRcdH0pO1xuXHR9KTtcblxuXG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgLy8g44Kz44Op44Og44Kr44OG44K044Oq44O8XG4gIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgJChmdW5jdGlvbigpIHtcbiAgICBsZXQgbnVtID0gJCgnLmNvbHVtbkNhdGVnb3J5X19saXN0IGxpJykubGVuZ3RoO1xuXG4gICAgaWYobnVtID4gMTApe1xuICAgICAgJCgnLmNvbHVtbkNhdGVnb3J5X19jb250ZW50JykuYWRkQ2xhc3MoJ2hpZGUnKTtcbiAgICAgICQoJy5jb2x1bW5DYXRlZ29yeV9fYnRuJykuYWRkQ2xhc3MoJ2FjdGl2ZScpO1xuICAgIH1cblxuICAgICQoJy5jb2x1bW5DYXRlZ29yeV9fYnRuJykub24oJ2NsaWNrJyxmdW5jdGlvbigpe1xuICAgICAgJCgnLmNvbHVtbkNhdGVnb3J5X19jb250ZW50JykudG9nZ2xlQ2xhc3MoJ2hpZGUnKTtcbiAgICAgICQoJy5jb2x1bW5DYXRlZ29yeV9fYnRuJykudG9nZ2xlQ2xhc3MoJ2Nsb3NlJyk7XG4gICAgICAvLyAkKHRoaXMpLmZpbmQoJ3NwYW4nKS50b2dnbGVDbGFzcygnaGlkZScpO1xuICAgIH0pO1xuICB9KTtcblxuICAgLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAvLyBwaG90b1NlYXJjaCDnqbrnmb3liYrpmaRcbiAgLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4gICQoXCJvcHRpb25cIikuaH
1007RtbChmdW5jdGlvbiAoaSwgaHRtbCkge1xuICAgIHJldHVybiBodG1sLnJlcGxhY2UoLyZuYnNwOy9nLCAnJyk7XG4gIH0pO1xuICAkKCcucGhvdG9TZWFyY2hfX3NlbGVjdC0tY2F0ZWdvcnkgLmZlYXNfY2xldmVsXzAxJykud3JhcCgnPHNwYW4gY2xhc3M9XCJzZWFyY2gtb3B0aW9uXCI+PC9zcGFuPicpO1xuICAkKCcucGhvdG9TZWFyY2hfX3NlbGVjdC0tY2F0ZWdvcnkgLmZlYXNfY2xldmVsXzAzJykud3JhcCgnPHNwYW4gY2xhc3M9XCJzZWFyY2gtb3B0aW9uXCI+PC9zcGFuPicpO1xuICAkKFwic3BhbjpoYXMoLmZlYXNfY2xldmVsXzAxKVwiKS5hZGRDbGFzcyhcIm5vLWRpc3BsYXlcIik7XG4gICQoXCJzcGFuOmhhcyguZmVhc19jbGV2ZWxfMDMpXCIpLmFkZENsYXNzKFwibm8tZGlzcGxheVwiKTtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gU2xpY2tcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8g5b2T6Zmi5o6o44GX55eH5L6L5YaZ55yf44K544Op44Kk44OA44O85Yem55CGXG5cbi8vIGZ1bmN0aW9uIGNoZWNrQnJlYWtQb2ludDAxKCkge1xuLy8gXHRsZXQgdyA9ICQod2luZG93KS53aWR0aCgpO1xuLy8gXHRpZiAodyA8PSAxMDI0KSB7XG4vLyBcdFx0JCgnLnRvcFBpY3R1cmVfX3JhbmtpbmcnKS5ub3QoJy5zbGljay1pbml0aWFsaXplZCcpLnNsaWNrKHtcbi8vIFx0XHRcdHNsaWRlc1RvU2hvdzogMSxcbi8vIFx0XHRcdHNsaWRlc1RvU2Nyb2xsOiAxLFxuLy8gXHRcdFx0YXJyb3dzOiB0cnVlLFxuLy8gXHRcdFx0Ly8gYXV0b3BsYXk6IHRydWUsXG4vLyBcdFx0XHRhdXRvcGxheVNwZWVkOiA2MDAwXG4vLyBcdFx0fSk7XG4vLyBcdH0gZWxzZSB7XG4vLyBcdFx0JCgnLnRvcFBpY3R1cmVfX3Jhbmtpbmcuc2xpY2staW5pdGlhbGl6ZWQnKS5zbGljaygndW5zbGljaycpO1xuLy8gXHR9XG4vLyB9XG4vLyAkKHdpbmRvdykucmVzaXplKGZ1bmN0aW9uKCl7XG4vLyBcdGNoZWNrQnJlYWtQb2ludDAxKCk7XG4vLyB9KTtcblxuLy8gY2hlY2tCcmVha1BvaW50MDEoKTtcblxuLy8gZnVuY3Rpb24gY2hlY2tCcmVha1BvaW50KCkge1xuLy8gXHRsZXQgdyA9ICQod2luZG93KS53aWR0aCgpO1xuLy8gXHRpZiAodyA8PSAxMDI0KSB7XG4vLyBcdFx0JCgnLnBob3Rvc1BpY2t1cF9fcmFua2luZycpLm5vdCgnLnNsaWNrLWluaXRpYWxpemVkJykuc2xpY2soe1xuLy8gXHRcdFx0c2xpZGVzVG9TaG93OiAxLFxuLy8gXHRcdFx0c2xpZGVzVG9TY3JvbGw6IDEsXG4vLyBcdFx0XHRhcnJvd3M6IHRydWUsXG4vLyBcdFx0XHQvLyBhdXRvcGxheTogdHJ1ZSxcbi8vIFx0XHRcdGF1dG9wbGF5U3BlZWQ6IDYwMDBcbi8vIFx0XHR9KTtcbi8vIFx0fSBlbHNlIHtcbi8vIFx0XHQkKCcucGhvdG9zUGlja3VwX19yYW5raW5nLnNsaWNrLWluaXRpYWxpemVkJykuc2xpY2soJ3Vuc2xpY2snKTtcbi8vIFx0fVxuLy8gfVxuLy8gJCh3aW5kb3cpLnJlc2l6ZShmdW5jdGlvbigpe1xuLy8gXHRjaGVja0JyZWFrUG9pbnQoKTtcbi8vIH0pO1xuXG4vLyBjaGVja0JyZWFrUG9pbnQoKTtcblxuLy8gJChcIi50b3BLdl9fc2xpZGVyXCIpLnNsaWNrKHtcbi8vICAgLy8gYXV0b3BsYXk6IHRydWUsXG4vLyAgIGF1dG9wbGF5U3BlZWQ6IDMwMDAsXG4vLyAgIHNwZWVkOiAxMDAwLFxuLy8gICBpbmZpbml0ZTogdHJ1ZSxcbi8vICAgcGF1c2VPbkhvdmVyOiBmYWxzZSxcbi8vICAgc2xpZGVzVG9TaG93OiA1LFxuLy8gICBhcnJvd3M6IGZhbHNlLFxuLy8gICBjZW50ZXJNb2RlOiB0cnVlLFxuLy8gICBjZW50ZXJQYWRkaW5nOiBcIjEyJVwiLFxuXG4vLyAgIHJlc3BvbnNpdmU6IFtcbi8vICAgICB7XG4vLyAgICAgICBicmVha3BvaW50OiAxMDI0LCAvLyAzOTlweOS7peS4i+OBruOCteOCpOOCuuOBq+mBqeeUqFxuXG4vLyAgICAgICBzZXR0aW5nczoge1xuLy8gICAgICAgICBjZW50ZXJQYWRkaW5nOiBcIjEyJVwiLFxuLy8gICAgICAgICBzbGlkZXNUb1Nob3c6IDEsXG4vLyAgICAgICB9LFxuLy8gICAgIH0sXG4vLyAgIF0sXG4vLyB9KVxuXG5cbi8vICQoJy50b3BLdl9fc2xpZGVyJykub24oJ2luaXQnLCBmdW5jdGlvbihldmVudCwgc2xpY2ssIGN1cnJlbnRTbGlkZSwgbmV4dFNsaWRlKXtcbi8vICAgJCgnLnNsaWNrLWFjdGl2ZScpLnByZXYoKS5hZGRDbGFzcygncHJldicpO1xuLy8gICAkKCcuc2xpY2stYWN0aXZlJykubmV4dCgpLmFkZENsYXNzKCduZXh0Jyk7XG4vLyB9KVxuLy8gLm9uKCdiZWZvcmVDaGFuZ2UnLCBmdW5jdGlvbihldmVudCwgc2xpY2ssIGN1cnJlbnRTbGlkZSwgbmV4dFNsaWRlKXtcbi8vICAgLy8gdGhlbiBsZXQncyBkbyB0aGlzIGJlZm9yZSBjaGFuZ2luZyBzbGlkZXNcbi8vICAgJCgnLnNsaWNrLXNsaWRlJykucmVtb3ZlQ2xhc3MoJ3ByZXYgbmV4dCcpO1xuLy8gfSlcbi8vIC5vbignYWZ0ZXJDaGFuZ2UnLCBmdW5jdGlvbihldmVudCwgc2xpY2ssIGN1cnJlbnRTbGlkZSwgbmV4dFNsaWRlKXtcbi8vICAgLy8gZmluYWxseSBsZXQncyBkbyB0aGlzIGFmdGVyIGNoYW5naW5nIHNsaWRlc1xuLy8gICAkKCcuc2xpY2stYWN0aXZlJykucHJldigpLmFkZENsYXNzKCdwcmV2Jyk7XG4vLyAgICQoJy5zbGljay1hY3RpdmUnKS5uZXh0KCkuYWRkQ2xhc3MoJ25leHQnKTtcbi8vIH0pO1xuXG5cblxuJChmdW5jdGlvbiAoKSB7XG4gICQoXCIudG9wS3ZfX3NsaWRlclwiKVxuICAgIC5vbihcImluaXRcIiwgZnVuY3Rpb24gKGV2ZW50LCBzbGljaykge1xuICAgICAgJCh0aGlzKS5hcHBlbmQoJzxkaXYgY2xhc3M9XCJ0b3BLdl9fbnVtV3JhcFwiPjxkaXYgY2xhc3M9XCJ0b3BLdl9fbnVtQm94XCI+PHNwYW4gY2xhc3M9XCJ0b3BLdl9fY3VycmVudE51bVwiPjwvc3Bhbj48c3BhbiBjbGFzcz1cInRvcEt2X19hbGxOdW1cIj48L3NwYW4+PC9kaXY+PC9kaXY+Jyk7XG4gICAgICAkKFwiLnRvcEt2X19jdXJyZW50TnVtXCIpLnRleHQoYDAke3NsaWNrLmN1cnJlbnRTbGlkZSArIDF9YCApOyAvLyDnj77lnKjjga7jgrnjg6njgqTjg4nnlarlj7coKzHjgYznhKHjgYTjgagw44GL44KJ44K544K/44O844OI44GX44Gm44GX44G+44GGKVxuICAgICAgJChcIi50b3BLdl9fYWxsTnVtXCIpLnRleHQoYDAke3NsaWNrLnNsaWRlQ291bnR9YCApOyAvLyDjgrnjg6njgqTjg4njga7nt4/mlbBcbiAgICB9KVxuXG4gICAgJChcIi50b3BLdl9fc2xpZGVyXCIpLnNsaWNrKHtcbiAgICAgIGZhZGU6IHRydWUsXG4gICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgIGF1dG9wbGF5U3BlZWQ6IDQwMDAsXG4gICAgICBzcGVlZDogMjUwMCxcbiAgICAgIGluZmluaXRlOiB0cnVlLFxuICAgICAgcGF1c2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIHNsaWRlc1RvU2hvdzogMSxcbiAgICAgIGFycm93czogdHJ1ZVxuICAgIH0pXG5cbiAgICAub24oXCJiZWZvcmVDaGFuZ2VcIiwgZnVuY3Rpb24gKGV2ZW50LCBzbGljaywgY3VycmVudFNsaWRlLCBuZXh0U2xpZGUpIHtcbiAgICAgICQoXCIudG9wS3ZfX2N1cnJlbnROdW1cIikudGV4dChgMCR7bmV4dFNsaWRlICsgMX1gKTsgLy8g54++5Zyo44Gu44K544Op44Kk44OJ55Wq5Y+344Gu5qyh44Gu44K544Op44Kk44OJ44Gr44Gq44Gj44Gf44KJ55Wq5Y+344KSKzFcbiAgICB9KTtcbn0pO1xuXG4kKFwiLnBob3Rvc0FsbF9fc2xpY2tcIikuc2xpY2soe1xuICBhdXRvcGxheTogdHJ1ZSxcbiAgYXV0b3BsYXlTcGVlZDogMzAwMCxcbiAgc3BlZWQ6IDEwMDAsXG4gIGluZmluaXRlOiB0cnVlLFxuICBwYXVzZU9uSG92ZXI6IGZhbHNlLFxuICBzbGlkZXNUb1Nob3c6IDEsXG59KTtcblxuJChcIi5zbGlkZXItc3F1YXJlXCIpLnNsaWNrKHtcbiAgYXV0b3BsYXk6IHRydWUsXG4gIGF1dG9wbGF5U3BlZWQ6IDMwMDAsXG4gIHNwZWVkOiAxMDAwLFxuICBpbmZpbml0ZTogdHJ1ZSxcbiAgcGF1c2VPbkhvdmVyOiBmYWxzZSxcbiAgc2xpZGVzVG9TaG93OiAzLFxuXG4gIHJlc3BvbnNpdmU6IFtcbiAgICB7XG4gICAgICBicmVha3BvaW50OiAxMDI0LCAvLyAzOTlweOS7peS4i+OBruOCteOCpOOCuuOBq+mBqeeUqFxuXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBjZW50ZXJNb2RlOiB0cnVlLFxuICAgICAgICBjZW50ZXJQYWRkaW5nOiBcIjEyJVwiLFxuICAgICAgICBhcnJvd3M6IGZhbHNlLFxuICAgICAgICBzbGlkZXNUb1Nob3c6IDEsXG4gICAgICB9LFxuICAgIH0sXG4gIF0sXG59KTtcblxuJChcIi50b3BQaWN0dXJlX19yYW5raW5nXCIpLnNsaWNrKHtcbiAgYXV0b3BsYXk6IHRydWUsXG4gIGF1dG9wbGF5U3BlZWQ6IDMwMDAsXG4gIHNwZWVkOiAxMDAwLFxuICBpbmZpbml0ZTogdHJ1ZSxcbiAgcGF1c2VPbkhvdmVyOiBmYWxzZSxcbiAgc2xpZGVzVG9TaG93OiAxLFxuICBkb3RzOiBmYWxzZSxcbn0pO1xuXG4kKFwiLnNsaWRlci1iYXNpY1wiKS5zbGljayh7XG4gIGF1dG9wbGF5OiB0cnVlLFxuICBhdXRvcGxheVNwZWVkOiAzMDAwLFxuICBzcGVlZDogMTAwMCxcbiAgaW5maW5pdGU6IHRydWUsXG4gIHBhdXNlT25Ib3ZlcjogZmFsc2UsXG4gIHNsaWRlc1RvU2hvdzogNSxcbiAgLy8gY2VudGVyTW9kZTogdHJ1ZSxcbiAgY2VudGVyUGFkZGluZzogXCI1JVwiLFxuICBkb3RzOiB0cnVlLFxuXG4gIHJlc3BvbnNpdmU6IFtcbiAgICB7XG4gICAgICBicmVha3BvaW50OiAxMDI0LFxuXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBjZW50ZXJNb2RlOiBmYWxzZSxcbiAgICAgICAgc2xpZGVzVG9TaG93OiAxLFxuICAgICAgfSxcbiAgICB9LFxuICBdLFxufSk7XG5cbiQoXCIub3RoZXJzX19zbGlja1wiKS5zbGljayh7XG4gIGF1dG9wbGF5OiB0cnVlLFxuICBhdXRvcGxheVNwZWVkOiAzMDAwLFxuICBzcGVlZDogMTAwMCxcbiAgaW5maW5pdGU6IHRydWUsXG4gIHNsaWRlc1RvU2hvdzogMSxcbn0pO1xuXG4kKGZ1bmN0aW9uKCl7XG4gIGZ1bmN0aW9uIHNsaWRlclNldHRpbmcoKXtcbiAgICBsZXQgd2lkdGggPSAkKHdpbmRvdykud2lkdGgoKTtcbiAgICAgIGlmKHdpZHRoIDw9IDEwMjQpe1xuICAgICAgICAgICQoJy50b3BQaWN0dXJlX19yYW5raW5nJykubm90KCcuc2xpY2staW5pdGlhbGl6ZWQnKS5zbGljayh7XG4gICAgICAgICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIGF1dG9wbGF5U3BlZWQ6IDMwMDAsXG4gICAgICAgICAgICBzcGVlZDogMTAwMCxcbiAgICAgICAgICAgIGluZmluaXRlOiB0cnVlLFxuICAgICAgICAgICAgcGF1c2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgICAgICAgI
1007HNsaWRlc1RvU2hvdzogMSxcbiAgICAgICAgICAgIGRvdHM6IGZhbHNlLFxuICAgICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAkKCcudG9wUGljdHVyZV9fcmFua2luZy5zbGljay1pbml0aWFsaXplZCcpLnNsaWNrKCd1bnNsaWNrJyk7XG4gICAgICB9XG4gICAgfVxuICAgIHNsaWRlclNldHRpbmcoKTtcblxuICAgICQod2luZG93KS5yZXNpemUoIGZ1bmN0aW9uKCkge1xuICAgICAgICBzbGlkZXJTZXR0aW5nKCk7XG4gICAgfSk7XG59KTtcblxufSk7XG4vLyBqUXVlcnkgRW5kXG5cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8g44K/44OW5YiH44KK5pu/44GIXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmNsYXNzIFRhYkNoYW5nZSB7XG4gIGNvbnN0cnVjdG9yKHRhYiwgY29udGVudCkge1xuICAgIHRoaXMudGFiID0gdGFiO1xuICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7XG4gIH1cbiAgdGFiQ2xpY2soKSB7XG4gICAgY29uc3QgdGFiQnRuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh0aGlzLnRhYik7XG4gICAgY29uc3QgdGFiQ29udGVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5jb250ZW50KTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGFiQnRuLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0YWJCdG5baV0uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0YWJCdG4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICB0YWJCdG5baV0uY2xhc3NMaXN0LnJlbW92ZShcImFjdGl2ZVwiKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRhYkNvbnRlbnQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICB0YWJDb250ZW50W2ldLmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmVcIik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jbGFzc0xpc3QuYWRkKFwiYWN0aXZlXCIpO1xuICAgICAgICBjb25zdCBhcnJheVRhYnMgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0YWJCdG4pO1xuICAgICAgICBjb25zdCBpbmRleCA9IGFycmF5VGFicy5pbmRleE9mKHRoaXMpO1xuICAgICAgICB0YWJDb250ZW50W2luZGV4XS5jbGFzc0xpc3QuYWRkKFwiYWN0aXZlXCIpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IHRvcFBob3RvVGFiVG9nZ2xlID0gbmV3IFRhYkNoYW5nZShcbiAgXCIudG9wVHJlYXRtZW50X19idG5cIixcbiAgXCIudG9wVHJlYXRtZW50X19ib3hcIlxuKTtcblxudG9wUGhvdG9UYWJUb2dnbGUudGFiQ2xpY2soKTtcblxuXG5cbi8vIC8vIHNjcm9sbCA9IGNsYXNzIGFkZFxuLy8gd2luZG93Lm9uc2Nyb2xsID0gZnVuY3Rpb24gKCkge1xuLy8gICAvLyBnbyB0byB0b3AgYnRuXG4vLyAgIHZhciBwYWdlX3RvcCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWdlVG9wJyk7XG4vLyAgIGlmICh3aW5kb3cucGFnZVlPZmZzZXQgPiA4MDApIHtcbi8vICAgICBwYWdlX3RvcC5jbGFzc0xpc3QuYWRkKFwiYWN0aXZlXCIpO1xuLy8gICB9IGVsc2Uge1xuLy8gICAgIHBhZ2VfdG9wLmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmVcIik7XG4vLyAgIH1cbi8vIH1cblxuXG4iXX0=
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.