{"version":3,"sources":["common.js","Animations.js","BaseComponent.js","BaseGLAnimation.js","Pswp.js","Scroll.js","ScrollAnimation.js","SetText.js","Slider.js","PJAX/PJAX Animate Clonned Image.js","PJAX/PJAX Clone Image.js","PJAX/PJAX Finish Loading.js","PJAX/PJAX Init New Page.js","PJAX/PJAX Set Next Container.js","PJAX/PJAX Start Loading.js","PJAX/PJAX Transition Flying Image.js","PJAX/PJAX Transition Fullscreen Slider.js","PJAX/PJAX Transition General.js","PJAX/PJAX Transition List Hover.js","PJAX/PJAX Transition Overlay Menu.js","PJAX/PJAX Update Admin Bar.js","PJAX/PJAX Update Audio Background.js","PJAX/PJAX Update Body.js","PJAX/PJAX Update Head.js","PJAX/PJAX Update Language Switcher.js","PJAX/PJAX Update Nodes.js","PJAX/PJAX Update Trackers.js","PJAX/PJAX.js","arrow/Arrow.js","asideCounters/AsideCounters.js","changeTextHover/ChangeTextHover.js","circleButton/CircleButton.js","counter/Counter.js","effects/EffectDistortion.js","effects/EffectStretch.js","cursor/Cursor.js","filter/Filter.js","fontObserver/fontObserver.js","form/Form.js","form/FormAJAX.js","gmap/gmap.js","grid/grid.js","header/Header.js","lazy/lazyLoad.js","magnetic/Magnetic.js","pageIndicator/PageIndicator.js","parallax/ArtsParallax.js","preloader/Preloader.js","pswp/PSWPAlbum.js","pswp/PSWPGallery.js","scroll/SmoothScroll.js","scrollDown/ScrollDown.js","sectionContent/SectionContent.js","sectionGrid/SectionGrid.js","sectionList/SectionList.js","sectionMasthead/SectionMasthead.js","sectionNavProjects/SectionNavProjects.js","sectionProjectsSlider/SectionProjectsSlider.js","sectionSliderImages/SectionSliderImages.js","sectionTestimonials/SectionTestimonials.js","sectionVideo/SectionVideo.js","slider/SliderCategories.js","slider/SliderCounter.js","slider/SliderDistortionEffect.js","slider/SliderDots.js","slider/SliderHoverBackgrounds.js","slider/SliderTextTransitions.js","sliderImages/SliderImages.js","sliderFullscreenProjects/SliderFullscreenProjects.js","sliderTestimonials/SliderTestimonials.js","utilities/MobileBarHeight.js","utilities/debounce.js","utilities/distributeByPosition.js","utilities/getStaggerFrom.js","utilities/isAnchor.js","utilities/math.js","utilities/runOnHighPerformanceGPU.js","utilities/syncAttributes.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxcA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3RA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC9IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"components.js","sourcesContent":["/**\n * Try to use high performance GPU on dual-GPU systems\n */\nrunOnHighPerformanceGPU();\n\n/**\n * Use passive listeners to improve scrolling performance\n */\njQuery.event.special.touchstart = {\n setup: function( _, ns, handle ){\n if ( ns.includes('noPreventDefault') ) {\n this.addEventListener('touchstart', handle, { passive: false });\n } else {\n this.addEventListener('touchstart', handle, { passive: true });\n }\n }\n};\n\njQuery.event.special.touchend = {\n setup: function( _, ns, handle ){\n if ( ns.includes('noPreventDefault') ) {\n this.addEventListener('touchend', handle, { passive: false });\n } else {\n this.addEventListener('touchend', handle, { passive: true });\n }\n }\n};\n\n/**\n * GSAP: turn off console warnings\n */\ngsap.config({\n\tnullTargetWarn: false\n});\n\n/**\n * Global Vars\n */\nwindow.$document = $(document);\nwindow.$window = $(window);\nwindow.$body = $('body');\nwindow.$html = $('html');\nwindow.$spinner = $('#js-spinner');\nwindow.$barbaWrapper = $('[data-barba=\"wrapper\"]');\nwindow.$pageWrapper = $('#page-wrapper');\nwindow.$pageContent = $('.page-wrapper__content');\nwindow.$pagePreloader = $('#js-preloader');\nwindow.PagePreloader = new Preloader({\n\tscope: window.$document,\n\ttarget: window.$pagePreloader,\n\tcurtain: {\n\t\telement: $('#js-page-transition-curtain'),\n\t\tbackground: $('.section-masthead').attr('data-background-color')\n\t},\n\tcounter: {\n\t\teasing: 'power4.out',\n\t\tduration: 25,\n\t\tstart: 0,\n\t\ttarget: 100,\n\t\tprefix: '',\n\t\tsuffix: ''\n\t}\n});\n\n/**\n * Begin Page Load\n */\nwindow.PagePreloader.start();\n\n/**\n * Default Theme Options\n * Used to prevent errors if there is\n * no data provided from backend\n */\nif (typeof window.theme === 'undefined') {\n\twindow.theme = {\n\t\tfonts: ['Raleway', 'Cinzel'], // declare your fonts to be loaded here\n\t\tajax: {\n\t\t\tenabled: true,\n\t\t\tpreventRules: '' // jQuery selectors of the elements to exclude them from AJAX transitions\n\t\t},\n\t\tanimations: {\n\t\t\ttriggerHook: 0.85, // more info https://scrollmagic.io/docs/ScrollMagic.Scene.html#triggerHook\n\t\t\ttimeScale: {\n\t\t\t\tonScrollReveal: 1, // on-scroll animations global speed\n\t\t\t\toverlayMenuOpen: 1, // fullscreen menu open speed\n\t\t\t\toverlayMenuClose: 1, // fullscreen menu close speed\n\t\t\t}\n\t\t},\n\t\tcursorFollower: {\n\t\t\tenabled: true,\n\t\t\tlabels: {\n\t\t\t\tslider: 'Drag'\n\t\t\t}\n\t\t},\n\t\tsmoothScroll: { // more info https://github.com/idiotWu/smooth-scrollbar/tree/develop/docs\n\t\t\tenabled: true,\n\t\t\tdamping: 0.12,\n\t\t\trenderByPixels: true,\n\t\t\tcontinuousScrolling: false,\n\t\t\tplugins: {\n\t\t\t\tedgeEasing: true\n\t\t\t}\n\t\t},\n\t\tcontactForm7: {\n\t\t\tcustomModals: true\n\t\t}\n\t}\n}\n\n/**\n * ScrollMagic Setup\n */\nwindow.SMController = new ScrollMagic.Controller();\nwindow.SMController.enabled(false); // don't start animations yet\nwindow.SMSceneTriggerHook = window.theme.animations.triggerHook;\nwindow.SMSceneReverse = false;\n\n/**\n * Don't save scroll position\n * after AJAX transition\n */\nif ('scrollRestoration' in history) {\n\thistory.scrollRestoration = 'manual';\n}\n\n/**\n * Page Load Strategy\n */\nwindow.$window.on('load', function () {\n\n\tnew Animations();\n\n\t// load fonts first\n\tfontObserver()\n\t\t// prepare all the texts\n\t\t.then(() => SetText.splitText({\n\t\t\ttarget: window.$document.find('.js-split-text')\n\t\t}))\n\t\t.then(() => SetText.setLines({\n\t\t\ttarget: window.$document.find('.split-text[data-split-text-set=\"lines\"]')\n\t\t}))\n\t\t.then(() => SetText.setWords({\n\t\t\ttarget: window.$document.find('.split-text[data-split-text-set=\"words\"]')\n\t\t}))\n\t\t.then(() => SetText.setChars({\n\t\t\ttarget: window.$document.find('.split-text[data-split-text-set=\"chars\"]')\n\t\t}))\n\t\t// init template components\n\t\t.then(() => {\n\t\t\tnew LazyLoad({\n\t\t\t\tscope: window.$document,\n\t\t\t\tsetPaddingBottom: true,\n\t\t\t\trun: true\n\t\t\t});\n\t\t\tinitComponents(window.$document);\n\t\t})\n\t\t.then(() => window.PagePreloader.finish())\n\t\t.then(() => {\n\t\t\t// init cursor only on non-touch browsers\n\t\t\tif (window.theme.cursorFollower.enabled && !window.Modernizr.touchevents) {\n\t\t\t\tnew Cursor({\n\t\t\t\t\tscope: window.$document,\n\t\t\t\t\ttarget: $('#js-cursor'),\n\t\t\t\t\tcursorElements: '[data-arts-cursor]',\n\t\t\t\t\thighlightElements: 'a:not(a[data-arts-cursor]):not(.social__item a):not(.section-video__link):not(.no-highlight), button:not(button[data-arts-cursor]), .filter__item, .section-nav-projects__header', // links to highlight\n\t\t\t\t\thighlightScale: 1.5, // default highlight scaling\n\t\t\t\t\tmagneticElements: '[data-arts-cursor-magnetic]', // magnetic elements \n\t\t\t\t\tmagneticScaleCursorBy: 1.3, // default magnetic scaling\n\t\t\t\t\tanimDuration: 0.25,\n\t\t\t\t});\n\t\t\t}\n\t\t\t// begin animations \n\t\t\twindow.SMController.enabled(true);\n\t\t\twindow.SMController.update(true);\n\t\t});\n\n\t// init AJAX navigation\n\tif (window.theme.ajax.enabled) {\n\t\tnew PJAX({\n\t\t\ttarget: window.$barbaWrapper,\n\t\t\tscope: window.$document\n\t\t});\n\t}\n\n});\n\n/**\n * Init Template Components\n * You can init your custom scripts here\n * in that function\n */\nfunction initComponents({\n\tscope = window.$document,\n\tcontainer = window.$pageWrapper\n}) {\n\n\t// init page header one time only\n\tif (typeof window.theme.header === 'undefined') {\n\t\twindow.theme.header = new Header();\n\t}\n\n\tnew MobileBarHeight();\n\tnew SmoothScroll({\n\t\ttarget: container.filter('.js-smooth-scroll'),\n\t\tadminBar: $('#wpadminbar'),\n\t\tabsoluteElements: $('[data-arts-scroll-absolute]'), // correct handling of absolute elements OUTSIDE scrolling container\n\t\tfixedElements: $('[data-arts-scroll-fixed]') // correct handling of fixed elements INSIDE scrolling container\n\t});\n\tnew ScrollDown({\n\t\ttarget: scope.find('[data-arts-scroll-down]'),\n\t\tscope,\n\t\tduration: 0.8\n\t})\n\tnew ArtsParallax({\n\t\ttarget: scope.find('[data-arts-parallax]'),\n\t\tfactor: 0.3,\n\t\tScrollMagicController: window.SMController,\n\t\tSmoothScrollBarController: window.SB\n\t});\n\tnew AsideCounters({\n\t\ttarget: scope.find('.aside-counters'),\n\t\tscope\n\t});\n\tnew Arrow({\n\t\ttarget: scope.find('.js-arrow')\n\t});\n\tnew SectionMasthead({\n\t\ttarget: scope.find('.section-masthead'),\n\t\tscope\n\t});\n\tnew SectionContent({\n\t\ttarget: scope.find('.section-content'),\n\t\tscope\n\t});\n\tnew SectionProjectsSlider({\n\t\ttarget: scope.find('.section-projects-slider'),\n\t\tscope\n\t});\n\tnew SectionList({\n\t\ttarget: scope.find('.section-list'),\n\t\tscope\n\t});\n\tnew ChangeTextHover({\n\t\ttarget: scope.find('.js-change-text-hover:not(.js-change-text-hover .js-change-text-hover)'), // exclude nested elements\n\t\tscope,\n\t\tpageIndicator: scope.find('.js-page-indicator'), // fixed page indicator\n\t\ttriggers: scope.find('.js-page-indicator-trigger'), // elements that triggers the change of page indicator\n\t});\n\tnew PageIndicator(scope);\n\tnew PSWPGallery({\n\t\ttarget: scope.find('.js-gallery'),\n\t\tscope,\n\t\toptions: { // Pass your custom PhotoSwipe options here https://photoswipe.com/documentation/options.html\n\t\t\thistory: window.theme.ajax.enabled ? false : true, // galleries URLs navigation is NOT compatible with AJAX\n\t\t\tshowAnimationDuration: 300,\n\t\t}\n\t});\n\tnew PSWPAlbum({\n\t\ttarget: scope.find('.js-album'),\n\t\tscope,\n\t\toptions: { // Pass your custom PhotoSwipe options here https://photoswipe.com/documentation/options.html\n\t\t\thistory: window.theme.ajax.enabled ? false : true, // galleries URLs navigation is NOT compatible with AJAX\n\t\t\tshowAnimationDuration: 300,\n\t\t}\n\t});\n\tnew GMap({\n\t\ttarget: scope.find('.js-gmap'),\n\t\tscope\n\t});\n\tnew Form({\n\t\ttarget: scope,\n\t\tscope\n\t});\n\tnew FormAJAX({\n\t\ttarget: scope.find('.js-ajax-form'),\n\t\tscope\n\t});\n\tnew SectionSliderImages({\n\t\ttarget: scope.find('.section-slider-images'),\n\t\tscope\n\t});\n\tnew SectionTestimonials({\n\t\ttarget: scope.find('.section-testimonials'),\n\t\tscope\n\t});\n\tnew SectionGrid({\n\t\ttarget: scope.find('.section-grid'),\n\t\tscope\n\t});\n\n\tnew SectionNavProjects({\n\t\ttarget: scope.find('.section-nav-projects'),\n\t\tscope\n\t});\n\n\tnew CircleButton({\n\t\ttarget: scope.find('.js-circle-button:not(.js-circle-button_curved)'),\n\t\tscope\n\t});\n\n\t//\n\t// your custom plugins init here\n\t//\n\n}\n","/* ======================================================================== */\n/* 1. Animations */\n/* ======================================================================== */\nclass Animations {\n constructor() {\n this._revealCurtain();\n this._moveCurtain();\n this._setCurtain();\n this._animateChars();\n this._animateLines();\n this._animateWords();\n this._hideChars();\n this._hideLines();\n this._hideWords();\n this._animateHeadline();\n }\n\n _setCurtain() {\n gsap.registerEffect({\n name: 'setCurtain',\n effect: (target, config) => {\n const\n tl = new gsap.timeline(),\n $target = $(target);\n\n if (!$target.length) {\n return tl;\n }\n\n const\n $svg = $target.find('.curtain-svg'),\n $normal = $target.find('.curtain-svg__normal'),\n $curve = $target.find('.curtain-svg__curve'),\n $rect = $target.find('.curtain__rect');\n\n tl\n .set($target, {\n display: 'none',\n autoAlpha: 1,\n y: config.y\n })\n .set($svg, {\n fill: config.background,\n });\n\n return tl;\n\n },\n extendTimeline: true,\n defaults: {\n y: '100%'\n }\n });\n }\n\n _moveCurtain() {\n gsap.registerEffect({\n name: 'moveCurtain',\n effect: (target, config) => {\n const\n tl = new gsap.timeline(),\n $target = $(target);\n\n if (!$target.length) {\n return tl;\n }\n\n const\n $svg = $target.find('.curtain-svg'),\n $normal = $svg.find('.curtain-svg__normal');\n\n let $curveTop, $curveBottom;\n\n if (window.innerWidth / window.innerHeight >= 1) {\n $curveTop = $target.find('.curtain-svg__curve_top-desktop');\n $curveBottom = $svg.find('.curtain-svg__curve_bottom-desktop');\n } else {\n $curveTop = $svg.find('.curtain-svg__curve_top-mobile');\n $curveBottom = $svg.find('.curtain-svg__curve_bottom-mobile');\n }\n\n tl\n .set($target, {\n display: 'block',\n autoAlpha: 1\n })\n .set([$curveTop, $curveBottom], {\n visibility: 'hidden',\n })\n .to($target, {\n y: config.y,\n duration: 1.8,\n ease: 'expo.inOut'\n });\n\n if (config.curve === 'top') {\n tl\n .set($normal, {\n visibility: 'visible'\n }, '0')\n .to($normal, {\n duration: 0.9,\n ease: 'power2.out',\n morphSVG: $curveTop[0]\n }, '-=1.8')\n .to($normal, {\n duration: 0.9,\n ease: 'power2.out',\n morphSVG: $normal[0],\n overwrite: 'all'\n }, '-=0.9');\n } else {\n tl\n .set($normal, {\n visibility: 'visible',\n }, '0')\n .to($normal, {\n duration: 0.9,\n ease: 'power2.out',\n morphSVG: $curveBottom[0],\n overwrite: 'all',\n }, '-=1.8')\n .to($normal, {\n duration: 0.9,\n ease: 'power2.out',\n morphSVG: $normal[0],\n });\n }\n\n tl.totalDuration(config.duration);\n\n return tl;\n\n },\n extendTimeline: true,\n defaults: {\n duration: 2.4,\n curve: 'top',\n y: '0%'\n }\n });\n }\n\n _revealCurtain() {\n gsap.registerEffect({\n name: 'revealCurtain',\n effect: (target, config) => {\n const\n tl = new gsap.timeline(),\n $target = $(target);\n\n if (!$target.length) {\n return tl;\n }\n\n const\n $normal = $target.find('.curtain-svg__normal'),\n $curve = $target.find('.curtain-svg__curve');\n\n tl\n .set($target, {\n y: '100%',\n autoAlpha: 1\n })\n .set($normal, {\n visibility: 'visible'\n })\n .set($curve, {\n visibility: 'hidden',\n })\n .to($target, {\n y: '0%',\n duration: 1.8,\n ease: 'expo.inOut'\n })\n .to($normal, {\n duration: 0.9,\n ease: 'power2.out',\n morphSVG: $curve[0]\n }, '-=1.8')\n .to($normal, {\n duration: 0.9,\n ease: 'power2.out',\n morphSVG: $normal[0],\n overwrite: 'all'\n }, '-=0.9');\n\n tl.totalDuration(config.duration)\n\n return tl;\n\n },\n extendTimeline: true,\n defaults: {\n duration: 2.4\n }\n });\n }\n\n _animateChars() {\n gsap.registerEffect({\n name: 'animateChars',\n effect: (target, config) => {\n const\n $target = $(target),\n $chars = $target.find('.split-text__char');\n\n let textAlign;\n\n if (!$chars.length) {\n return;\n }\n\n textAlign = $target.css('text-align');\n\n if (!config.stagger.from) {\n\n switch (textAlign) {\n case 'left':\n config.stagger.from = 'start';\n break;\n case 'center':\n config.stagger.from = 'center';\n break;\n case 'right':\n config.stagger.from = 'end';\n break;\n }\n\n }\n\n return gsap.to($chars, config);\n },\n defaults: {\n xPercent: 0,\n yPercent: 0,\n x: '0%',\n y: '0%',\n autoAlpha: 1,\n duration: 1,\n ease: 'power3.inOut',\n stagger: distributeByPosition({\n from: 'start',\n amount: 0.3\n })\n },\n extendTimeline: true,\n });\n }\n\n _animateLines() {\n gsap.registerEffect({\n name: 'animateLines',\n effect: (target, config) => {\n const $target = $(target);\n let $lines = $target.find('.split-text__line');\n\n if (!$lines.length) {\n return;\n }\n\n if (config.excludeEl) {\n $lines = $lines.not(config.excludeEl);\n delete config.excludeEl;\n }\n\n return gsap.to($lines, config);\n },\n defaults: {\n xPercent: 0,\n yPercent: 0,\n x: '0%',\n y: '0%',\n autoAlpha: 1,\n duration: 1.2,\n ease: 'power3.out',\n stagger: {\n amount: 0.08\n }\n },\n extendTimeline: true,\n });\n }\n\n _animateWords() {\n gsap.registerEffect({\n name: 'animateWords',\n effect: (target, config) => {\n const\n $target = $(target),\n $words = $target.find('.split-text__word');\n\n if (!$words.length) {\n return;\n }\n\n return gsap.to($words, config);\n },\n defaults: {\n duration: 1.2,\n y: '0%',\n ease: 'power3.out',\n stagger: {\n amount: 0.2\n }\n },\n extendTimeline: true,\n });\n }\n\n _hideChars() {\n gsap.registerEffect({\n name: 'hideChars',\n effect: (target, config) => {\n const\n $target = $(target),\n $chars = $target.find('.split-text__char'),\n textAlign = $target.css('text-align');\n\n if (!$chars.length) {\n return;\n }\n\n if (!config.stagger.from) {\n\n switch (textAlign) {\n case 'left':\n config.stagger.from = 'start';\n break;\n case 'center':\n config.stagger.from = 'center';\n break;\n case 'right':\n config.stagger.from = 'end';\n break;\n }\n\n }\n\n if (config.duration === 0) {\n config.stagger = 0;\n }\n\n return gsap.to($chars, config);\n },\n defaults: {\n duration: 1.2,\n x: '0%',\n y: '100%',\n autoAlpha: 0,\n ease: 'power3.inOut',\n stagger: distributeByPosition({\n from: 'center',\n amount: 0.3\n })\n },\n extendTimeline: true,\n });\n }\n\n _hideLines() {\n gsap.registerEffect({\n name: 'hideLines',\n effect: (target, config) => {\n const\n $target = $(target),\n $lines = $target.find('.split-text__line');\n\n if (!$lines.length) {\n return;\n }\n\n if (config.duration === 0) {\n config.stagger = 0;\n }\n\n return gsap.to($lines, config);\n },\n defaults: {\n y: '-100%',\n autoAlpha: 1,\n duration: 1.2,\n ease: 'power3.out',\n stagger: {\n amount: 0.02\n }\n },\n extendTimeline: true,\n });\n }\n\n _hideWords() {\n gsap.registerEffect({\n name: 'hideWords',\n effect: (target, config) => {\n const\n $target = $(target),\n $words = $target.find('.split-text__word');\n\n if (!$words.length) {\n return;\n }\n\n return gsap.to($words, config);\n },\n defaults: {\n y: '-100%',\n autoAlpha: 0,\n duration: 1.2,\n ease: 'power3.out',\n stagger: {\n amount: 0.02\n }\n },\n extendTimeline: true,\n });\n }\n\n _animateHeadline() {\n gsap.registerEffect({\n name: 'animateHeadline',\n effect: (target, config) => {\n const\n $target = $(target);\n\n let textAlign;\n textAlign = $target.css('text-align');\n\n if (!config.transformOrigin) {\n\n switch (textAlign) {\n case 'left':\n config.transformOrigin = 'left center';\n break;\n case 'center':\n config.transformOrigin = 'center center';\n break;\n case 'right':\n config.transformOrigin = 'right center';\n break;\n }\n\n }\n\n return gsap.to($target, config);\n },\n defaults: {\n scaleX: 1,\n scaleY: 1,\n duration: 1.2,\n ease: 'power3.inOut',\n },\n extendTimeline: true,\n });\n }\n}\n","/* ======================================================================== */\n/* 2. BaseComponent */\n/* ======================================================================== */\nclass BaseComponent {\n\n constructor({\n target,\n scope = window.$document\n }) {\n const self = this;\n\n this.$scope = scope;\n this.$target = this.$scope.find(target);\n this.$el;\n\n if (this.$target && this.$target.length) {\n this.$target.each(function () {\n self.$el = $(this);\n self.set(self.$el);\n self.run(self.$el);\n });\n }\n }\n\n set($el) {\n\n }\n\n run($el) {\n\n }\n\n}\n","/* ======================================================================== */\n/* 3. BaseGLAnimation */\n/* ======================================================================== */\nclass BaseGLAnimation {\n\n\tconstructor({\n\t\ttarget,\n\t\tcanvas,\n\t\taspect\n\t}) {\n\t\tthis.target = target;\n\t\tthis.canvas = canvas;\n\n\t\tif (!BaseGLAnimation.isThreeLoaded() || !this.canvas) {\n\t\t\treturn false;\n\t\t}\n\t\tthis.coverMode = aspect ? true : false;\n\t\tthis.aspect = aspect || window.innerWidth / window.innerHeight;\n\t\tthis.scene = this._getScene();\n\t\tthis.viewport = this.coverMode ? this._getViewportCover() : this._getViewport();\n\t\tthis.camera = this._getCamera();\n\t\tthis.viewSize = this._getViewSize();\n\t\tthis.position = this._calculatePosition();\n\n\t\tthis.renderer = this._getRenderer();\n\t\tthis.renderer.setPixelRatio(1); // window.devicePixelRatio\n\t\tthis.renderer.setClearColor(0xffffff, 0.0);\n\t\tthis.renderer.setSize(this.viewport.width, this.viewport.height);\n\t\tthis.renderer.setAnimationLoop(this._render.bind(this));\n\n\t\tthis.loader = this._getTextureLoader();\n\n\t\tthis.camera.position.z = 1;\n\t\tthis.camera.updateProjectionMatrix();\n\t\tthis._updateScene();\n\n\t\tthis._bindEvents();\n\t}\n\n\t_bindEvents() {\n\t\twindow.$window.on('resize', debounce(() => {\n\t\t\tthis._updateScene();\n\t\t}, 250));\n\n\t\twindow.$window.on('arts/barba/transition/start', () => {\n\t\t\tthis.destroy();\n\t\t});\n\t}\n\n\t_render() {\n\t\tthis.renderer.render(this.scene, this.camera);\n\t}\n\n\t_getRenderer() {\n\t\treturn new THREE.WebGLRenderer({\n\t\t\tcanvas: this.canvas,\n\t\t\tpowerPreference: 'high-performance',\n\t\t\talpha: true\n\t\t});\n\t}\n\n\t_getScene() {\n\t\treturn new THREE.Scene();\n\t}\n\n\t_getCamera() {\n\t\treturn new THREE.PerspectiveCamera(\n\t\t\t53.1,\n\t\t\tthis.viewport.aspectRatio,\n\t\t\t0.1,\n\t\t\t1000\n\t\t);\n\t}\n\n\t_getTextureLoader() {\n\t\treturn new THREE.TextureLoader();\n\t}\n\n\t_getPlane({\n\t\tgeometry,\n\t\tmaterial\n\t}) {\n\t\treturn new THREE.Mesh(geometry, material);\n\t}\n\n\t_updateScene() {\n\t\tthis.viewport = this.coverMode ? this._getViewportCover() : this._getViewport();\n\t\tthis.viewSize = this._getViewSize();\n\t\tthis.camera.aspect = this.viewport.aspectRatio;\n\t\tthis.camera.updateProjectionMatrix();\n\t\tthis.renderer.setSize(this.viewport.width, this.viewport.height);\n\t}\n\n\t_getViewport() {\n\n\t\tconst width = window.innerWidth;\n\t\tconst height = window.innerHeight;\n\t\tconst aspectRatio = width / height;\n\n\t\treturn {\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio\n\t\t}\n\t}\n\n\t_getViewportCover() {\n\t\tlet\n\t\t\theight = parseFloat(window.innerHeight),\n\t\t\twidth = parseFloat(height * this.aspect),\n\t\t\taspectRatio = this.aspect,\n\t\t\tmultiplier = 1\n\n\t\tif (this.aspect > 1) {\n\t\t\tmultiplier = window.innerWidth > width ? window.innerWidth / width : 1;\n\t\t} else {\n\t\t\tmultiplier = this.canvas.clientWidth / width;\n\t\t}\n\n\t\tif (multiplier < 1) {\n\t\t\tmultiplier = 1;\n\t\t}\n\n\t\twidth = width * multiplier;\n\t\theight = height * multiplier;\n\n\t\treturn {\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio\n\t\t};\n\t}\n\n\t_getViewSize() {\n\t\t// fit plane to screen\n\t\t// https://gist.github.com/ayamflow/96a1f554c3f88eef2f9d0024fc42940f\n\n\t\tconst distance = this.camera.position.z;\n\t\tconst vFov = (this.camera.fov * Math.PI) / 180;\n\t\tconst height = 2 * Math.tan(vFov / 2) * distance;\n\t\tconst width = height * this.viewport.aspectRatio;\n\n\t\treturn {\n\t\t\twidth,\n\t\t\theight,\n\t\t\tvFov\n\t\t};\n\t}\n\n\t_calculatePosition() {\n\t\tlet\n\t\t\theight = parseFloat(window.innerHeight),\n\t\t\twidth = parseFloat(height * this.viewport.aspectRatio),\n\t\t\tmultiplier = 1;\n\n\t\tif (this.viewport.aspectRatio > 1) {\n\t\t\tmultiplier = window.innerWidth > width ? window.innerWidth / width : 1;\n\t\t} else {\n\t\t\tmultiplier = this.canvas.clientWidth / width;\n\t\t}\n\n\t\tif (multiplier < 1) {\n\t\t\tmultiplier = 1;\n\t\t}\n\n\t\twidth = width * multiplier;\n\t\theight = height * multiplier;\n\n\t\treturn {\n\t\t\twidth,\n\t\t\theight\n\t\t};\n\t}\n\n\t_loadTextures() {\n\t\tconst self = this,\n\t\t\tpromises = [];\n\n\t\tthis.items.each(function (index) {\n\t\t\tconst url = $(this).find('[data-texture-src]').attr('data-texture-src');\n\n\t\t\tpromises.push(\n\t\t\t\tself._loadTexture({\n\t\t\t\t\tloader: self.loader,\n\t\t\t\t\turl,\n\t\t\t\t\tindex\n\t\t\t\t})\n\t\t\t);\n\t\t});\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\t// resolve textures promises\n\t\t\tPromise.all(promises).then(promises => {\n\t\t\t\t// all textures are loaded\n\t\t\t\tpromises.forEach((promise, index) => {\n\t\t\t\t\tconst $img = $(this.items[index]).find('[data-texture-src]');\n\t\t\t\t\t// assign texture to item\n\t\t\t\t\tthis.items[index].texture = promise.texture;\n\t\t\t\t\tthis.items[index].texture.magFilter = THREE.LinearFilter;\n\t\t\t\t\tthis.items[index].texture.minFilter = THREE.LinearFilter;\n\t\t\t\t\tthis.items[index].texture.anisotropy = this.renderer.capabilities.getMaxAnisotropy();\n\n\t\t\t\t\tif ($img.is('img')) {\n\t\t\t\t\t\t// load texture back to src (needed for AJAX transition)\n\t\t\t\t\t\t$img.attr('src', $img.attr('data-texture-src'));\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tresolve();\n\t\t\t});\n\t\t});\n\t}\n\n\t_loadTexture({\n\t\tloader,\n\t\turl,\n\t\tindex\n\t}) {\n\t\t// https://threejs.org/docs/#api/en/loaders/TextureLoader\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tif (!url) {\n\t\t\t\tresolve({\n\t\t\t\t\ttexture: null,\n\t\t\t\t\tindex\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// load a resource\n\t\t\tloader.load(\n\t\t\t\t// resource URL\n\t\t\t\turl,\n\n\t\t\t\t// onLoad callback\n\t\t\t\ttexture => {\n\t\t\t\t\tresolve({\n\t\t\t\t\t\ttexture,\n\t\t\t\t\t\tindex\n\t\t\t\t\t});\n\t\t\t\t},\n\n\t\t\t\t// onProgress callback currently not supported\n\t\t\t\tundefined,\n\n\t\t\t\t// onError callback\n\t\t\t\terror => {\n\t\t\t\t\tconsole.error('An error happened during loading a texture to the canvas.', error);\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\t\t\t)\n\t\t})\n\t}\n\n\t_getVertexShader(id) {\n\t\treturn document.getElementById(id).textContent || false;\n\t}\n\n\t_getFragmentShader(id) {\n\t\treturn document.getElementById(id).textContent || false;\n\t}\n\n\tstatic isThreeLoaded() {\n\t\treturn (typeof window.THREE === 'object');\n\t}\n\n\tdestroy() {\n\t\tthis.renderer.setAnimationLoop(null);\n\t\tthis.camera = undefined;\n\t\tthis.scene = undefined;\n\t\tthis.loader = undefined;\n\t\tthis.material = undefined;\n\t\t// this.renderer = undefined;\n\t\twindow.$window.off('resize');\n\t}\n}\n","/* ======================================================================== */\n/* 4. Pswp */\n/* ======================================================================== */\nclass Pswp extends BaseComponent {\n\tconstructor({\n\t\tscope,\n\t\ttarget,\n\t\toptions\n\t}) {\n\t\tsuper({\n\t\t\tscope,\n\t\t\ttarget\n\t\t});\n\t\tthis.options = options || {\n\t\t\thistory: false,\n\t\t\tshowAnimationDuration: 300,\n\t\t};\n\t\tthis._setGalleriesID();\n\t\tthis.$pswpEl = $('.pswp');\n\t\tthis.$container = this.$pswpEl.find('.pswp__container');\n\t\tthis.pswpEl = this.$pswpEl.get(0);\n\t}\n\n\t_bindEvents() {\n\t\tconst eventTouchUp = new CustomEvent('arts/pswp/touchUp', {\n\t\t\t\tdetail: {\n\t\t\t\t\tdirection: 'all'\n\t\t\t\t}\n\t\t\t}),\n\t\t\teventTouchDown = new CustomEvent('arts/pswp/touchDown', {\n\t\t\t\tdetail: {\n\t\t\t\t\tdirection: 'all'\n\t\t\t\t}\n\t\t\t}),\n\t\t\teventClose = new CustomEvent('arts/pswp/close'),\n\t\t\teventSlideChange = new CustomEvent('arts/pswp/slideChange');\n\n\t\tthis.$pswpEl\n\t\t\t.off('click')\n\t\t\t.on('click', '.pswp__button--arrow--left', (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.gallery.prev();\n\t\t\t}).on('click', '.pswp__button--arrow--right', (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.gallery.next();\n\t\t\t});\n\n\t\twindow.$window.on('arts/barba/transition/start', () => {\n\t\t\tif (typeof this.gallery === 'object' && this.gallery.destroy === 'function') {\n\t\t\t\tthis.gallery.destroy();\n\t\t\t}\n\t\t});\n\n\t\t// Dispatch cursor events\n\t\tthis.gallery.listen('preventDragEvent', (e, isDown, preventObj) => {\n\t\t\tpreventObj.prevent = false;\n\t\t\tif ($(e.target).is('.pswp--zoomed-in .pswp__img')) {\n\t\t\t\tif (isDown) {\n\t\t\t\t\tdocument.dispatchEvent(eventTouchDown);\n\t\t\t\t} else {\n\t\t\t\t\tdocument.dispatchEvent(eventTouchUp);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis.gallery.listen('close', () => {\n\t\t\tdocument.dispatchEvent(eventClose);\n\t\t\tthis.$pswpEl.find('iframe, video').remove();\n\t\t});\n\n\t\tthis.gallery.listen('beforeChange', (e) => {\n\t\t\tdocument.dispatchEvent(eventSlideChange);\n\t\t\tthis._stopVideo();\n\t\t});\n\t}\n\n\t_openPhotoSwipe({\n\t\tindex = 0,\n\t\tgalleryElement = null,\n\t\tdisableAnimation = false,\n\t\tfromURL = false\n\t}) {\n\t\tconst\n\t\t\titems = this._getItems(galleryElement),\n\t\t\toptions = {\n\t\t\t\tgalleryUID: galleryElement.attr('data-pswp-uid')\n\t\t\t};\n\n\t\tif (typeof items[index] !== 'undefined' && 'el' in items[index]) {\n\t\t\toptions.getThumbBoundsFn = function (index) {\n\t\t\t\tlet\n\t\t\t\t\tpageYScroll = window.pageYOffset || document.documentElement.scrollTop,\n\t\t\t\t\timg = items[index].el.querySelector('img'),\n\t\t\t\t\trect;\n\n\t\t\t\tif (img) {\n\t\t\t\t\trect = img.getBoundingClientRect();\n\t\t\t\t\treturn {\n\t\t\t\t\t\tx: rect.left,\n\t\t\t\t\t\ty: rect.top + pageYScroll,\n\t\t\t\t\t\tw: rect.width\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// PhotoSwipe opened from URL\n\t\tif (fromURL) {\n\t\t\tif (options.galleryPIDs) {\n\t\t\t\t// parse real index when custom PIDs are used \n\t\t\t\t// http://photoswipe.com/documentation/faq.html#custom-pid-in-url\n\t\t\t\tfor (let j = 0; j < items.length; j++) {\n\t\t\t\t\tif (items[j].pid == index) {\n\t\t\t\t\t\toptions.index = j;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// in URL indexes start from 1\n\t\t\t\toptions.index = parseInt(index, 10) - 1;\n\t\t\t}\n\t\t} else {\n\t\t\toptions.index = parseInt(index, 10);\n\t\t}\n\n\t\t// exit if index not found\n\t\tif (isNaN(options.index)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (disableAnimation) {\n\t\t\toptions.showAnimationDuration = 0;\n\t\t}\n\n\t\t// Pass data to PhotoSwipe and initialize it\n\t\tthis.gallery = new PhotoSwipe(this.pswpEl, PhotoSwipeUI_Default, items, $.extend(options, this.options));\n\t\tthis.gallery.init();\n\n\t\tthis._bindEvents();\n\t}\n\n\t_getMediaTypeFromURL(url, size, autoplay = false) {\n\t\tconst\n\t\t\tresult = {\n\t\t\t\ttype: false,\n\t\t\t\thtml: null\n\t\t\t},\n\t\t\tiframeSize = size ? size.split('x') : [640, 360],\n\t\t\tattr = {\n\t\t\t\tvideo: autoplay ? 'muted playsinline loop autoplay' : '',\n\t\t\t},\n\t\t\tparam = {\n\t\t\t\tyoutube: autoplay ? 'autoplay=1' : '',\n\t\t\t\tvimeo: autoplay ? 'autoplay=1' : ''\n\t\t\t},\n\t\t\tpattern = {\n\t\t\t\timage: /([-a-zA-Z0-9@:%_\\+.~#?&\\/\\/=]{2,256}(\\/[-a-zA-Z0-9@:%_\\+.~#?&\\/\\/=]*)?\\.(?:jpg|jpeg|jfif|pjpeg|pjp|bmp|gif|png|apng|webp|svg))/gi,\n\t\t\t\tvideo: /([-a-zA-Z0-9@:%_\\+.~#?&\\/\\/=]{2,256}(\\/[-a-zA-Z0-9@:%_\\+.~#?&\\/\\/=]*)?\\.(?:mp4|ogv|webm))/gi,\n\t\t\t\tyoutube: /(?:http?s?:\\/\\/)?(?:www\\.)?(?:youtube\\.com|youtu\\.be)\\/(?:watch\\?v=|embed\\/)([^&|?|\\/]*)/g,\n\t\t\t\tvimeo: /(?:http?s?:\\/\\/)?(?:www\\.)?(?:vimeo\\.com)\\/(?:.*\\/)?(.+)/g,\n\t\t\t};\n\n\t\t/**\n\t\t * Image\n\t\t */\n\t\tif (pattern.image.test(url)) {\n\t\t\tresult.type = 'image';\n\t\t\treturn result;\n\t\t}\n\n\t\t/**\n\t\t * HTML5 video\n\t\t */\n\t\tif (pattern.video.test(url)) {\n\t\t\tresult.type = 'video';\n\t\t\tresult.html = ``;\n\t\t\treturn result;\n\t\t}\n\n\t\t/**\n\t\t * YouTube link\n\t\t */\n\t\tif (pattern.youtube.test(url)) {\n\t\t\tresult.type = 'youtube';\n\t\t\tresult.html = url.replace(pattern.youtube, ``);\n\t\t\treturn result;\n\t\t}\n\n\t\t/**\n\t\t * Vimeo link\n\t\t */\n\t\tif (pattern.vimeo.test(url)) {\n\t\t\tresult.type = 'vimeo';\n\t\t\tresult.html = url.replace(pattern.vimeo, ``);\n\t\t\treturn result;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t_getItems($galleryElement) {\n\t\tconst\n\t\t\tself = this,\n\t\t\t$items = $galleryElement.find('a'),\n\t\t\titems = [];\n\n\t\t$items.each(function () {\n\t\t\tconst $el = $(this),\n\t\t\t\titem = {},\n\t\t\t\tsize = $el.attr('data-size'),\n\t\t\t\tautoplay = $el.attr('data-autoplay'),\n\t\t\t\tsrc = $el.attr('href'),\n\t\t\t\tmedia = self._getMediaTypeFromURL(src, size, autoplay),\n\t\t\t\ttitle = $el.attr('data-title');\n\n\t\t\tif (size) {\n\t\t\t\tconst sizeSplit = size.split('x');\n\t\t\t\titem.w = parseInt(sizeSplit[0], 10);\n\t\t\t\titem.h = parseInt(sizeSplit[1], 10);\n\t\t\t}\n\n\t\t\tif (title) {\n\t\t\t\titem.title = title;\n\t\t\t}\n\n\t\t\tswitch (media.type) {\n\t\t\t\tcase 'youtube':\n\t\t\t\t\titem.html = `
`;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'vimeo':\n\t\t\t\t\titem.html = ` `;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'video':\n\t\t\t\t\titem.html = ` `;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'image':\n\t\t\t\t\titem.el = $el.get(0);\n\t\t\t\t\titem.src = src;\n\t\t\t\t\titem.msrc = $el.find('img').attr('src');\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t}\n\t\t\titems.push(item);\n\t\t});\n\n\t\treturn items;\n\t}\n\n\t_photoswipeParseHash() {\n\t\tconst\n\t\t\thash = window.location.hash.substring(1),\n\t\t\tparams = {};\n\n\t\tif (hash.length < 5) {\n\t\t\treturn params;\n\t\t}\n\n\t\tconst vars = hash.split('&');\n\t\tfor (let i = 0; i < vars.length; i++) {\n\t\t\tif (!vars[i]) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tlet pair = vars[i].split('=');\n\t\t\tif (pair.length < 2) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tparams[pair[0]] = pair[1];\n\t\t}\n\n\t\tif (params.gid) {\n\t\t\tparams.gid = parseInt(params.gid, 10);\n\t\t}\n\n\t\treturn params;\n\t}\n\n\t_setGalleriesID() {\n\t\tthis.$target.each(function (index) {\n\t\t\t$(this).attr('data-pswp-uid', index + 1);\n\t\t});\n\t}\n\n\t_stopVideo() {\n\t\tconst\n\t\t\t$iframeYoutube = this.$pswpEl.find('.iframe-youtube'),\n\t\t\t$iframeVimeo = this.$pswpEl.find('.iframe-vimeo'),\n\t\t\t$video = this.$pswpEl.find('video');\n\n\t\tif ($iframeYoutube.length) {\n\t\t\t$iframeYoutube.each(function () {\n\t\t\t\t$(this).get(0).contentWindow.postMessage('{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*');\n\t\t\t});\n\t\t}\n\n\t\tif ($iframeVimeo.length) {\n\t\t\t$iframeVimeo.each(function () {\n\t\t\t\t$(this).get(0).contentWindow.postMessage('{\"method\":\"pause\"}', '*');\n\t\t\t});\n\t\t}\n\n\t\tif ($video.length) {\n\t\t\t$video.each(function () {\n\t\t\t\t$(this).get(0).pause();\n\t\t\t});\n\t\t}\n\t}\n}\n","/* ======================================================================== */\n/* 5. Scroll */\n/* ======================================================================== */\nclass Scroll {\n static getEasingScroll(pos) {\n if (pos === 0) return 0;\n if (pos === 1) return 1;\n if ((pos /= 0.5) < 1) return 0.5 * Math.pow(2, 10 * (pos - 1));\n return 0.5 * (-Math.pow(2, -10 * --pos) + 2);\n }\n\n static scrollTo({\n x = 0,\n y = 0,\n duration = 0\n }) {\n if (typeof window.SB !== 'undefined') {\n window.SB.scrollTo(x, y, duration, {\n easing: (pos) => Scroll.getEasingScroll(pos)\n });\n } else {\n $('html, body').animate({\n scrollLeft: x,\n scrollTop: y\n }, duration);\n }\n }\n\n static scrollToTop() {\n\n // safari fix\n try {\n window.top.scrollTo(0, 0);\n } catch (error) {}\n\n if (typeof window.SB !== 'undefined') {\n window.SB.scrollTop = 0;\n } else {\n window.scrollTo(0, 0);\n }\n\n // window.pageYOffset = 0;\n }\n\n static getScrollTop() {\n if (typeof window.SB !== 'undefined') {\n window.lastTop = window.SB.scrollTop;\n } else {\n window.lastTop = Math.max(document.body.scrollTop, document.documentElement.scrollTop);\n }\n\n return window.lastTop;\n }\n\n static restoreScrollTop() {\n if (typeof window.SB !== 'undefined') {\n setTimeout(() => {\n window.SB.scrollTop = window.lastTop;\n }, 100);\n } else {\n $('html, body').animate({\n scrollTop: window.lastTop\n });\n }\n }\n\n static lock(lock = true) {\n const lockClass = 'body_lock-scroll';\n\n if (lock === true) {\n if (typeof window.SB !== 'undefined') {\n window.SB.updatePluginOptions('lockscroll', {\n lock: true\n });\n }\n\n window.$body.addClass(lockClass);\n }\n\n if (lock === false) {\n window.$body.removeClass(lockClass);\n\n if (typeof window.SB !== 'undefined') {\n window.SB.updatePluginOptions('lockscroll', {\n lock: false\n });\n }\n }\n }\n}\n","/* ======================================================================== */\n/* 6. ScrollAnimation */\n/* ======================================================================== */\nclass ScrollAnimation extends BaseComponent {\n\n constructor({\n target,\n scope\n }) {\n super({\n target,\n scope\n });\n\n }\n\n _hasAnimationScene($el) {\n return $el.attr('data-arts-os-animation');\n }\n\n _createScene({\n element,\n timeline,\n customTrigger = false,\n reveal = true,\n delay = 0,\n reverse = false,\n duration = 0,\n triggerHook\n }) {\n\n const masterTL = new gsap.timeline({\n delay: delay\n });\n\n let\n $trigger = element,\n scale = 1;\n\n if (customTrigger && customTrigger.length) {\n $trigger = customTrigger;\n }\n\n if (reveal === true) {\n // reveal hidden element first\n element.attr('data-arts-os-animation', 'animated');\n }\n\n masterTL.add(timeline, '0');\n\n if (window.theme !== 'undefined') {\n scale = window.theme.animations.timeScale.onScrollReveal || scale;\n masterTL.timeScale(scale);\n }\n\n return new $.ScrollMagic.Scene({\n triggerElement: $trigger,\n triggerHook: triggerHook || window.SMSceneTriggerHook,\n reverse: reverse || window.SMSceneReverse,\n duration: duration\n })\n .setTween(masterTL)\n .addTo(window.SMController);\n }\n}\n","/* ======================================================================== */\n/* 7. SetText */\n/* ======================================================================== */\nclass SetText {\n static splitText({\n target\n }) {\n return new Promise((resolve) => {\n if (!target || !target.length) {\n resolve(true);\n return;\n }\n\n target.each(function () {\n const\n $el = $(this),\n type = $el.data('split-text-type'),\n set = $el.data('split-text-set');\n\n let $content = $el;\n\n // split children elements if they are exist\n // instead of the actual element\n if ($el.children(':not(br)').length > 0) {\n $content = $el.find(' > *');\n }\n\n // handle texts with drop cap\n const $contentWithDropcap = $content.filter('.has-drop-cap');\n const firstChar = $contentWithDropcap.text()[0];\n\n // remove first char\n $contentWithDropcap.text($contentWithDropcap.text().substring(1));\n $contentWithDropcap.prepend(`${firstChar}`).addClass('has-drop-cap_split');\n\n new SplitText($content, {\n type: type,\n linesClass: ($contentWithDropcap.length || set === 'words') ? 'split-text__line overflow' : 'split-text__line',\n wordsClass: 'split-text__word',\n charsClass: 'split-text__char',\n reduceWhiteSpace: false,\n });\n\n // double wrapper for \"only lines\" split type\n if (type === 'lines') {\n new SplitText($content, {\n type: type,\n linesClass: 'overflow',\n reduceWhiteSpace: false,\n });\n }\n\n $el.removeClass('js-split-text');\n });\n\n resolve(true);\n\n });\n }\n\n static setLines({\n target,\n y = '100%'\n }) {\n return new Promise((resolve) => {\n if (!target || !target.length) {\n resolve(true);\n return;\n }\n\n gsap.set(target.find('.split-text__line'), {\n y,\n onComplete: resolve(true)\n });\n });\n }\n\n static setWords({\n target,\n y = '100%'\n }) {\n return new Promise((resolve) => {\n if (!target || !target.length) {\n resolve(true);\n return;\n }\n\n gsap.set(target.find('.split-text__word'), {\n y,\n onComplete: resolve(true)\n });\n });\n }\n\n static setChars({\n target,\n x = 0,\n y = 0,\n distribute = true\n }) {\n return new Promise((resolve) => {\n if (!target || !target.length) {\n resolve(true);\n return;\n }\n\n const instance = new SetText();\n\n gsap.set(target, {\n clearProps: 'all'\n });\n\n target.each(function () {\n const\n $el = $(this),\n $lines = $el.find('.split-text__line'),\n textAlign = $el.css('text-align');\n\n if (distribute === true) {\n switch (textAlign) {\n case 'left':\n instance._setFromLeft({\n lines: $lines,\n x,\n y\n });\n break;\n case 'center':\n instance._setFromCenter({\n lines: $lines,\n x,\n y\n });\n break;\n case 'right':\n instance._setFromRight({\n lines: $lines,\n x,\n y\n });\n break;\n }\n } else {\n instance._setFromLeft({\n lines: $lines,\n x,\n y\n });\n }\n });\n\n resolve(true);\n });\n }\n\n _setFromLeft({\n lines,\n x,\n y\n }) {\n if (!lines || !lines.length) {\n return;\n }\n\n gsap.set(lines.find('.split-text__char'), {\n x,\n y,\n autoAlpha: 0\n });\n }\n\n _setFromRight({\n lines,\n x,\n y\n }) {\n if (!lines || !lines.length) {\n return;\n }\n\n gsap.set(lines.find('.split-text__char'), {\n x: -x,\n y: -y,\n autoAlpha: 0\n });\n }\n\n _setFromCenter({\n lines,\n x,\n y\n }) {\n const self = this;\n\n if (!lines || !lines.length) {\n return;\n }\n\n lines.each(function () {\n const\n $currentLine = $(this),\n $wordsInCurrentLine = $currentLine.find('.split-text__word');\n\n /**\n * 1. Only 1 word in the current line\n */\n if ($wordsInCurrentLine.length === 1) {\n self._setCharsSingleWord({\n words: $wordsInCurrentLine,\n x,\n y\n });\n }\n\n /**\n * 2. Even number of words in the current line\n */\n if ($wordsInCurrentLine.length !== 1 && $wordsInCurrentLine.length % 2 === 0) {\n self._setCharsEvenWords({\n words: $wordsInCurrentLine,\n x,\n y\n });\n }\n\n /**\n * 3. Odd number of words in the current line\n */\n if ($wordsInCurrentLine.length !== 1 && $wordsInCurrentLine.length % 2 !== 0) {\n self._setCharsOddWords({\n words: $wordsInCurrentLine,\n x,\n y\n });\n }\n });\n }\n\n _setCharsSingleWord({\n words,\n x,\n y\n }) {\n const\n $charsInWord = words.find('.split-text__char'),\n halfWord = Math.ceil($charsInWord.length / 2),\n $fistHalfWord = $charsInWord.slice(0, halfWord),\n $secondHalfWord = $charsInWord.slice(halfWord, $charsInWord.length);\n\n // first half of word to the left\n gsap.set($fistHalfWord, {\n x: -x,\n y: -y,\n autoAlpha: 0\n });\n\n // second half of word to the right\n gsap.set($secondHalfWord, {\n x,\n y,\n autoAlpha: 0\n });\n }\n\n _setCharsOddWords({\n words,\n x,\n y\n }) {\n const\n halfLine = Math.ceil(words.length / 2),\n $fistHalf = words.slice(0, halfLine),\n $secondHalf = words.slice(halfLine, words.length),\n $middleWord = words.eq(halfLine - 1),\n $charsInMiddleWord = $middleWord.find('.split-text__char'),\n halfLineMiddleWord = Math.ceil($charsInMiddleWord.length / 2),\n $fistHalfMiddleWord = $charsInMiddleWord.slice(0, halfLineMiddleWord),\n $secondHalfMiddleWord = $charsInMiddleWord.slice(halfLineMiddleWord, $charsInMiddleWord.length);\n\n // first half\n $fistHalf.each(function () {\n const $charsInWord = $(this).find('.split-text__char');\n\n gsap.set($charsInWord, {\n x: -x,\n y: -y,\n autoAlpha: 0\n });\n });\n\n // second half\n $secondHalf.each(function () {\n const $charsInWord = $(this).find('.split-text__char');\n\n gsap.set($charsInWord, {\n x,\n y,\n autoAlpha: 0\n });\n });\n\n // middle word: first half\n $fistHalfMiddleWord.each(function () {\n const $charsInWord = $(this);\n\n gsap.set($charsInWord, {\n x: -x,\n y: -y,\n autoAlpha: 0\n });\n });\n\n // middle word: second half\n $secondHalfMiddleWord.each(function () {\n const $charsInWord = $(this);\n\n gsap.set($charsInWord, {\n x,\n y,\n autoAlpha: 0\n });\n });\n }\n\n _setCharsEvenWords({\n words,\n x,\n y\n }) {\n const\n halfLine = Math.ceil(words.length / 2),\n $fistHalf = words.slice(0, halfLine),\n $secondHalf = words.slice(halfLine, words.length);\n\n // first half\n $fistHalf.each(function () {\n const $charsInWord = $(this).find('.split-text__char');\n\n gsap.set($charsInWord, {\n x: -x,\n y: y,\n autoAlpha: 0\n });\n });\n\n // second half\n $secondHalf.each(function () {\n const $charsInWord = $(this).find('.split-text__char');\n\n gsap.set($charsInWord, {\n x: x,\n y: y,\n autoAlpha: 0\n });\n });\n }\n}\n","/* ======================================================================== */\n/* 8. Slider */\n/* ======================================================================== */\nclass Slider extends BaseComponent {\n\n constructor({\n scope,\n target\n }) {\n super({\n target,\n scope\n });\n }\n\n _getSliderDots({\n slider,\n container\n }) {\n return new SliderDots({\n slider,\n container\n });\n }\n\n _getSliderCounter({\n slider,\n counter = {\n current,\n total,\n style,\n zeros\n }\n }) {\n return new SliderCounter({\n slider: slider,\n sliderCounter: counter.current,\n total: counter.total,\n style: counter.style,\n addZeros: counter.zeros\n });\n }\n\n _emitDragEvents({\n slider,\n target,\n customClass\n }) {\n const eventTouchUp = new CustomEvent('arts/slider/touchUp', {\n detail: {\n direction: slider.params.direction\n }\n });\n const eventTouchDown = new CustomEvent('arts/slider/touchDown', {\n detail: {\n direction: slider.params.direction\n }\n });\n\n slider\n .on('touchStart', () => {\n if (slider.params.autoplay.enabled) {\n slider.autoplay.stop();\n }\n\n if (customClass) {\n slider.$el.addClass(customClass);\n }\n\n target.dispatchEvent(eventTouchDown);\n })\n .on('touchEnd', () => {\n if (slider.params.autoplay.enabled) {\n slider.autoplay.start();\n }\n\n if (customClass) {\n slider.$el.removeClass(customClass);\n }\n\n target.dispatchEvent(eventTouchUp);\n });\n }\n\n _pauseAutoplay({\n slider\n }) {\n if (slider && slider.params.autoplay && slider.params.autoplay.enabled === true) {\n window.$window.on('arts/barba/transition/start', () => {\n slider.autoplay.stop();\n });\n\n if (window.$pagePreloader && window.$pagePreloader.length && window.$pagePreloader.is(':visible')) {\n window.$window\n .on('arts/preloader/start', () => {\n slider.autoplay.stop();\n })\n .on('arts/preloader/end', () => {\n slider.autoplay.start();\n });\n }\n }\n }\n}\n","/* ======================================================================== */\n/* 9. PJAX Animate Clonned Image */\n/* ======================================================================== */\nfunction PJAXAnimateClonnedImage(data, duration = 2.0) {\n return new Promise((resolve) => {\n const\n tl = new gsap.timeline(),\n $nextContainer = $(data.next.container),\n $curtain = $('#js-page-transition-curtain'),\n $nextMasthead = $nextContainer.find('.section-masthead'),\n background = $nextMasthead.attr('data-background-color'),\n $target = $nextMasthead.find('.js-transition-img'),\n $clone = $('.clone'),\n bgClone = $clone.find('.js-transition-img__transformed-el'),\n bgTarget = $target.find('.js-transition-img__transformed-el'),\n bgTargetProperties = bgTarget.css(['transform', 'width', 'height', 'transformOrigin']),\n {\n top,\n left,\n width,\n height,\n } = $target.get(0).getBoundingClientRect();\n\n if (!$target.length || !$clone.length) {\n resolve(true);\n return;\n }\n\n tl\n .setCurtain($curtain, {\n background\n })\n .set($clone, {\n maxWidth: '100%',\n maxHeight: '100%',\n })\n .add([\n gsap.to(bgClone, {\n paddingBottom: 0,\n transform: bgTargetProperties.transform,\n width: bgTargetProperties.width,\n height: bgTargetProperties.height,\n duration: 1.2,\n ease: 'expo.inOut',\n transition: 'none',\n top: 'auto',\n left: 'auto',\n right: 'auto',\n bottom: 'auto',\n }),\n gsap.to($clone, {\n transform: $target.css('transform'),\n transformOrigin: 'center center',\n top,\n left,\n width,\n height,\n duration: 1.2,\n ease: 'expo.inOut',\n transition: 'none',\n onComplete: () => {\n Scroll.scrollToTop();\n }\n }),\n gsap.effects.moveCurtain($curtain, {\n y: '0%',\n duration: 1.2\n }),\n gsap.to($clone, {\n borderRadius: $target.css('borderRadius'),\n duration: 0.6\n })\n ])\n .to($nextContainer, {\n duration: 0.2,\n clearProps: 'all',\n autoAlpha: 1,\n }, '-=0.3')\n .setCurtain($curtain)\n .add(() => {\n resolve(true)\n })\n .totalDuration(duration);\n\n });\n}\n","/* ======================================================================== */\n/* 10. PJAX Clone Image */\n/* ======================================================================== */\nfunction PJAXCloneImage(target, customCoordinates) {\n return new Promise((resolve) => {\n if (!target.length) {\n resolve(true);\n return;\n }\n\n const\n tl = new gsap.timeline(),\n $clone = target.clone(),\n {\n top,\n left,\n width,\n height\n } = target.get(0).getBoundingClientRect();\n\n // Scroll.lock(true);\n $clone.addClass('clone').appendTo(window.$barbaWrapper);\n\n tl\n .set($clone, {\n delay: 0.1,\n transform: target.css('transform'),\n transformOrigin: 'center center',\n position: 'fixed',\n display: 'block',\n top: customCoordinates ? customCoordinates.top : top,\n left: customCoordinates ? customCoordinates.left : left,\n width: customCoordinates ? customCoordinates.width : width,\n height: customCoordinates ? customCoordinates.height : height,\n zIndex: 350\n })\n .set(target, {\n autoAlpha: 0\n })\n .add(() => {\n resolve(true);\n })\n\n });\n}\n","/* ======================================================================== */\n/* 11. PJAX Finish Loading */\n/* ======================================================================== */\nfunction PJAXFinishLoading(data) {\n\treturn new Promise((resolve) => {\n\n\t\t// Transition ended event\n\t\twindow.dispatchEvent(new CustomEvent('arts/barba/transition/end'));\n\n\t\t// Hide spinner\n\t\tif (typeof window.$spinner !== 'undefined' && window.$spinner.length) {\n\t\t\tgsap.to(window.$spinner, 0.6, {\n\t\t\t\tautoAlpha: 0\n\t\t\t});\n\t\t}\n\n\t\t// audio backgrounds\n\t\tif (typeof window.AudioBackground !== 'undefined') {\n\n\t\t\tif (window.AudioBackground.isAudioSrc()) {\n\t\t\t\twindow.AudioBackground.controller.reveal(true);\n\t\t\t} else {\n\t\t\t\twindow.AudioBackground.controller.reveal(false);\n\t\t\t}\n\t\t}\n\n\t\tif (typeof window.theme.header !== 'undefined') {\n\t\t\twindow.theme.header.run();\n\t\t}\n\n\n\t\t// re-enable ScrollMagic scenes\n\t\twindow.SMController.enabled(true);\n\t\twindow.SMController.update(true);\n\n\t\tsetTimeout(() => {\n\n\t\t\t// remove clonned image if it exists\n\t\t\t$('.clone').remove();\n\n\t\t\t// unlock scroll\n\t\t\tScroll.lock(false);\n\n\t\t\twindow.$barbaWrapper.removeClass('cursor-progress');\n\t\t\t$('.menu').removeClass('menu_disabled');\n\n\t\t}, 100);\n\n\t\tresolve(true);\n\n\t});\n\n}\n","/* ======================================================================== */\n/* 12. PJAX Init New Page */\n/* ======================================================================== */\nfunction PJAXInitNewPage(data) {\n\treturn new Promise((resolve) => {\n\n\t\tconst $nextContainer = $(data.next.container);\n\t\tPJAXUpdateAudioBackground(data).then(() => {\n\n\t\t\tPromise\n\t\t\t\t.all([\n\t\t\t\t\tPJAXUpdateBody(data),\n\t\t\t\t\tPJAXUpdateNodes(data),\n\t\t\t\t\tPJAXUpdateHead(data),\n\t\t\t\t\tPJAXUpdateAdminBar(data),\n\t\t\t\t\tPJAXUpdateLanguageSwitcher(data),\n\t\t\t\t\tfontObserver(),\n\t\t\t\t])\n\t\t\t\t.then(() => SetText.splitText({\n\t\t\t\t\ttarget: $nextContainer.find('.js-split-text')\n\t\t\t\t}))\n\t\t\t\t.then(() => SetText.setLines({\n\t\t\t\t\ttarget: $nextContainer.find('.split-text[data-split-text-set=\"lines\"]')\n\t\t\t\t}))\n\t\t\t\t.then(() => SetText.setWords({\n\t\t\t\t\ttarget: $nextContainer.find('.split-text[data-split-text-set=\"words\"]')\n\t\t\t\t}))\n\t\t\t\t.then(() => SetText.setChars({\n\t\t\t\t\ttarget: $nextContainer.find('.split-text[data-split-text-set=\"chars\"]')\n\t\t\t\t}))\n\t\t\t\t.then(() => {\n\t\t\t\t\t// re-init Contact Form 7\n\t\t\t\t\tif (typeof wpcf7 !== 'undefined') {\n\t\t\t\t\t\twpcf7.initForm(jQuery('.wpcf7-form'));\n\t\t\t\t\t}\n\n\t\t\t\t\t// scroll at the page beginning\n\t\t\t\t\tScroll.scrollToTop();\n\n\t\t\t\t\t// load images\n\t\t\t\t\tnew LazyLoad({\n\t\t\t\t\t\tscope: $nextContainer,\n\t\t\t\t\t\tsetPaddingBottom: true,\n\t\t\t\t\t\trun: true\n\t\t\t\t\t});\n\n\t\t\t\t\t// clear & re-init ScrollMagic\n\t\t\t\t\twindow.SMController.destroy();\n\t\t\t\t\twindow.SMController = null;\n\t\t\t\t\twindow.SMController = new ScrollMagic.Controller();\n\n\t\t\t\t\t// re-init components\n\t\t\t\t\tinitComponents({\n\t\t\t\t\t\tscope: $nextContainer,\n\t\t\t\t\t\tcontainer: $nextContainer\n\t\t\t\t\t});\n\n\t\t\t\t\t// don't start animations immediately\n\t\t\t\t\twindow.SMController.enabled(false);\n\n\t\t\t\t\t// ensure that scroll is still locked\n\t\t\t\t\tScroll.lock(true);\n\n\t\t\t\t\t// init Elementor frontend\n\t\t\t\t\tif (typeof window.elementorFrontend !== 'undefined') {\n\t\t\t\t\t\telementorFrontend.init();\n\t\t\t\t\t}\n\n\t\t\t\t\t// update ad trackers\n\t\t\t\t\tPJAXUpdateTrackers();\n\n\t\t\t\t\tresolve(true);\n\t\t\t\t});\n\t\t});\n\t});\n}\n","/* ======================================================================== */\n/* 13. PJAX Set Next Container */\n/* ======================================================================== */\nfunction PJAXSetNextContainer(data) {\n return new Promise((resolve) => {\n const\n $nextContainer = $(data.next.container),\n tl = new gsap.timeline();\n\n tl.add(() => {\n $nextContainer.find('.section-masthead .section-masthead__background').addClass('js-cancel-animation');\n })\n .set($nextContainer, {\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n zIndex: 300,\n autoAlpha: 0\n })\n .add(() => {\n resolve(true);\n });\n\n });\n}\n","/* ======================================================================== */\n/* 14. PJAX Start Loading */\n/* ======================================================================== */\nfunction PJAXStartLoading(data) {\n\treturn new Promise((resolve) => {\n\t\twindow.dispatchEvent(new CustomEvent('arts/barba/transition/start'));\n\t\twindow.$barbaWrapper.addClass('cursor-progress');\n\t\t$('.menu').addClass('menu_disabled');\n\n\t\tScroll.lock(true);\n\t\twindow.$document.off('click resize');\n\n\t\tif (typeof window.$spinner !== 'undefined' && window.$spinner.length) {\n\t\t\tgsap.to(window.$spinner, 0.6, {\n\t\t\t\tautoAlpha: 1\n\t\t\t});\n\t\t}\n\n\t\tresolve(true);\n\t});\n}\n","/* ======================================================================== */\n/* 15. PJAX Transition Flying Image */\n/* ======================================================================== */\nconst PJAXTransitionFlyingImage = {\n name: 'flyingImage',\n\n custom: ({\n trigger\n }) => {\n return $(trigger).data('pjax-link') === 'flyingImage';\n },\n\n before: (data) => {\n return new Promise((resolve) => {\n PJAXStartLoading(data).then(() => resolve(true));\n });\n },\n\n beforeLeave: (data) => {\n return new Promise((resolve) => {\n const\n $currentContainer = $(data.current.container),\n $content = $currentContainer.find('.page-wrapper__content'),\n $trigger = $(data.trigger),\n isNavProjectsLink = $trigger.hasClass('section-nav-projects__link'),\n isListHoverLink = $trigger.hasClass('js-list-hover__link');\n\n let $image, delay;\n\n if (isNavProjectsLink) {\n $image = $currentContainer.find('.section-nav-projects .js-transition-img');\n delay = 0;\n } else {\n $image = $trigger.find('.js-transition-img');\n delay = 150;\n }\n\n if (isListHoverLink) {\n $image = $trigger.find('.js-transition-img');\n\n PJAXCloneImage($image, $trigger.data('coordinates')).then(() => {\n gsap.to($content, {\n duration: 0.3,\n autoAlpha: 0,\n onComplete: () => {\n resolve(true);\n }\n });\n });\n\n } else {\n setTimeout(() => {\n PJAXCloneImage($image).then(() => {\n gsap.to($content, {\n duration: 0.3,\n autoAlpha: 0,\n onComplete: () => {\n resolve(true);\n }\n });\n });\n }, delay);\n }\n });\n },\n\n beforeEnter: (data) => {\n return new Promise((resolve) => {\n PJAXSetNextContainer(data).then(() => resolve(true));\n });\n },\n\n enter: (data) => {\n return new Promise((resolve) => {\n PJAXInitNewPage(data).then(() => resolve(true));\n });\n },\n\n afterEnter: (data) => {\n return new Promise((resolve) => {\n PJAXAnimateClonnedImage(data).then(() => resolve(true));\n });\n },\n\n after: (data) => {\n return new Promise((resolve) => {\n PJAXFinishLoading(data).then(() => resolve(true));\n });\n }\n}\n","/* ======================================================================== */\n/* 16. PJAX Transition Fullscreen Slider */\n/* ======================================================================== */\nconst PJAXTransitionFullscreenSlider = {\n name: 'fullscreenSlider',\n\n custom: ({\n trigger\n }) => {\n return $(trigger).data('pjax-link') === 'fullscreenSlider';\n },\n\n before: (data) => {\n return new Promise((resolve) => {\n PJAXStartLoading(data).then(() => resolve(true));\n });\n },\n\n beforeLeave: (data) => {\n return new Promise((resolve) => {\n const\n tl = new gsap.timeline(),\n $currentContainer = $(data.current.container),\n $content = $currentContainer.find('.page-wrapper__content'),\n $trigger = $(data.trigger),\n $slider = $trigger.closest('.js-slider'),\n $image = $slider.find('.swiper-slide-active .js-transition-img'),\n $bg = $image.find('.slider__bg'),\n imageSrc = $bg.attr('data-texture-src');\n\n if (imageSrc) {\n tl\n .set($bg, {\n backgroundImage: `url(${imageSrc})`\n })\n .add(() => {\n PJAXCloneImage($image).then(() => {\n gsap.to($content, {\n duration: 0.3,\n autoAlpha: 0,\n onComplete: () => {\n resolve(true);\n }\n });\n });\n });\n } else {\n PJAXCloneImage($image).then(() => {\n gsap.to($content, {\n duration: 0.3,\n autoAlpha: 0,\n onComplete: () => {\n resolve(true);\n }\n });\n });\n }\n });\n },\n\n beforeEnter: (data) => {\n return new Promise((resolve) => {\n PJAXSetNextContainer(data).then(() => resolve(true));\n });\n },\n\n enter: (data) => {\n return new Promise((resolve) => {\n PJAXInitNewPage(data).then(() => resolve(true));\n });\n },\n\n afterEnter: (data) => {\n return new Promise((resolve) => {\n PJAXAnimateClonnedImage(data).then(() => resolve(true));\n });\n },\n\n after: (data) => {\n return new Promise((resolve) => {\n PJAXFinishLoading(data).then(() => resolve(true));\n });\n }\n\n}\n","/* ======================================================================== */\n/* 17. PJAX Transition General */\n/* ======================================================================== */\nconst PJAXTransitionGeneral = {\n\tbefore: (data) => {\n\t\treturn new Promise((resolve) => {\n\t\t\tPJAXStartLoading(data).then(() => resolve(true));\n\t\t});\n\t},\n\n\tbeforeLeave: (data) => {\n\t\treturn new Promise((resolve) => {\n\t\t\tconst tl = new gsap.timeline();\n\n\t\t\ttl\n\t\t\t\t.setCurtain()\n\t\t\t\t.add(() => {\n\t\t\t\t\tresolve(true)\n\t\t\t\t})\n\t\t});\n\t},\n\n\tbeforeEnter: (data) => {\n\t\treturn new Promise((resolve) => {\n\t\t\tconst $nextContainer = $(data.next.container);\n\n\t\t\t$nextContainer.find('.section-masthead .section-masthead__background').addClass('js-cancel-animation');\n\t\t\tresolve(true)\n\t\t});\n\t},\n\n\tenter: (data) => {\n\t\treturn new Promise((resolve) => {\n\t\t\tPJAXInitNewPage(data).then(() => resolve(true));\n\t\t});\n\t},\n\n\tbeforeEnter: (data) => {\n\t\treturn new Promise((resolve) => {\n\t\t\tconst\n\t\t\t\ttl = new gsap.timeline(),\n\t\t\t\t$nextContainer = $(data.next.container),\n\t\t\t\t$curtain = $('#js-page-transition-curtain'),\n\t\t\t\t$nextMasthead = $nextContainer.find('.section-masthead'),\n\t\t\t\tbackground = $nextMasthead.attr('data-background-color');\n\n\t\t\ttl\n\t\t\t\t.setCurtain($curtain, {\n\t\t\t\t\tbackground\n\t\t\t\t})\n\t\t\t\t.moveCurtain($curtain, {\n\t\t\t\t\ty: '0%',\n\t\t\t\t\tduration: 1.2\n\t\t\t\t})\n\t\t\t\t.setCurtain($curtain)\n\t\t\t\t.set($nextContainer, {\n\t\t\t\t\tclearProps: 'all',\n\t\t\t\t\tautoAlpha: 1,\n\t\t\t\t})\n\t\t\t\t.add(() => {\n\t\t\t\t\tresolve(true);\n\t\t\t\t});\n\n\t\t});\n\t},\n\n\tafter: (data) => {\n\t\treturn new Promise((resolve) => {\n\t\t\tPJAXFinishLoading(data).then(() => resolve(true));\n\t\t});\n\t}\n\n}\n","/* ======================================================================== */\n/* 18. PJAX Transition List Hover */\n/* ======================================================================== */\nconst PJAXTransitionListHover = {\n name: 'listHover',\n\n custom: ({\n trigger\n }) => {\n return $(trigger).data('pjax-link') === 'listHover';\n },\n\n before: (data) => {\n return new Promise((resolve) => {\n PJAXStartLoading(data).then(() => resolve(true));\n });\n },\n\n beforeLeave: (data) => {\n return new Promise((resolve) => {\n const\n $currentContainer = $(data.current.container),\n $content = $currentContainer.find('.page-wrapper__content'),\n $trigger = $(data.trigger),\n $image = $trigger.find('.js-transition-img');\n\n let coordinates;\n if (!$image.is(':visible')) {\n coordinates = $trigger.data('coordinates');\n }\n\n PJAXCloneImage($image, coordinates).then(() => {\n gsap.to($content, {\n duration: 0.3,\n autoAlpha: 0,\n onComplete: () => resolve(true)\n });\n });\n });\n },\n\n beforeEnter: (data) => {\n return new Promise((resolve) => {\n PJAXSetNextContainer(data).then(() => resolve(true));\n });\n },\n\n enter: (data) => {\n return new Promise((resolve) => {\n PJAXInitNewPage(data).then(() => resolve(true));\n });\n },\n\n afterEnter: (data) => {\n return new Promise((resolve) => {\n PJAXAnimateClonnedImage(data).then(() => resolve(true));\n });\n },\n\n after: (data) => {\n return new Promise((resolve) => {\n PJAXFinishLoading(data).then(() => resolve(true));\n });\n }\n}\n","/* ======================================================================== */\n/* 19. PJAX Transition Overlay Menu */\n/* ======================================================================== */\nconst PJAXTransitionOverlayMenu = {\n name: 'overlayMenu',\n\n custom: ({\n trigger\n }) => {\n return window.theme.header.isOverlayOpened() || $(trigger).data('pjax-link') === 'overlayMenu';\n },\n\n before: (data) => {\n return new Promise((resolve) => {\n PJAXStartLoading(data).then(() => {\n resolve(true);\n });\n });\n },\n\n enter: (data) => {\n return new Promise((resolve) => {\n PJAXInitNewPage(data).then(() => {\n resolve(true);\n });\n });\n },\n\n afterEnter: (data) => {\n return new Promise((resolve) => {\n const\n tl = new gsap.timeline(),\n $currentContainer = $(data.current.container),\n $nextContainer = $(data.next.container),\n $curtain = $('#js-header-curtain-transition'),\n closeTl = window.theme.header.closeMenuTransition(true),\n $nextMasthead = $nextContainer.find('.section-masthead'),\n background = $nextMasthead.attr('data-background-color');\n\n window.theme.header.setBurger();\n\n tl\n .set([$nextContainer, $currentContainer], {\n autoAlpha: 0,\n })\n .setCurtain($curtain, {\n background\n })\n .moveCurtain($curtain, {\n duration: 1.2,\n y: '0%',\n curve: 'top',\n })\n .add(closeTl, '-=0.8')\n .setCurtain($curtain)\n .set($nextContainer, {\n clearProps: 'all',\n autoAlpha: 1,\n })\n .add(() => {\n resolve(true);\n });\n\n });\n },\n\n after: (data) => {\n return new Promise((resolve) => {\n PJAXFinishLoading(data).then(() => {\n resolve(true);\n });\n });\n }\n\n}\n","/* ======================================================================== */\n/* 20. PJAX Update Admin Bar */\n/* ======================================================================== */\nfunction PJAXUpdateAdminBar(data) {\n\treturn new Promise(function (resolve, reject) {\n\t\tconst $currentBar = $('#wpadminbar');\n\n\t\tif (!$currentBar.length) {\n\t\t\tresolve(true);\n\t\t\treturn;\n\t\t}\n\n\t\tconst\n\t\t\trawHTML = $.parseHTML(data.next.html),\n\t\t\t$newBar = $(rawHTML).filter('#wpadminbar');\n\n\t\t$newBar.find('.hide-if-no-customize').removeClass('hide-if-no-customize');\n\t\t$currentBar.replaceWith($newBar);\n\n\t\tresolve(true);\n\t});\n}\n","/* ======================================================================== */\n/* 21. PJAX Update Audio Background */\n/* ======================================================================== */\nfunction PJAXUpdateAudioBackground(data) {\n return new Promise((resolve) => {\n const\n $nextContainer = $($.parseHTML(data.next.html)),\n $audioBackground = $('#js-audio-background'),\n $audioBackgroundOptions = $nextContainer.find('#js-audio-background__options');\n\n if (typeof window.AudioBackground !== 'undefined') {\n\n switch ($audioBackgroundOptions.data('options')) {\n case 'music_off':\n window.AudioBackground.fadeOut().then(() => {\n // the next page audio source is different\n // just update audio src but don't start playback\n if ($nextContainer.find('#js-audio-background').attr('src') !== $audioBackground.attr('src')) {\n syncAttributes($nextContainer.find('#js-audio-background'), $audioBackground);\n }\n\n window.AudioBackground.el.currentTime = 0;\n window.AudioBackground.el.pause();\n window.AudioBackground.controller.pause();\n });\n break;\n case 'play':\n // audio autoplay is enabled\n if (window.AudioBackground.el.autoplay === true) {\n\n // the next page audio source is different\n // fade out current volume, update src, start playback\n if ($nextContainer.find('#js-audio-background').attr('src') !== $audioBackground.attr('src')) {\n window.AudioBackground.fadeOut().then(() => {\n syncAttributes($nextContainer.find('#js-audio-background'), $audioBackground);\n window.AudioBackground.fadeIn();\n });\n }\n\n // the next page audio source is the same as current\n // reset position and start playback if it's paused\n if (window.AudioBackground.el.paused) {\n window.AudioBackground.el.currentTime = 0;\n window.AudioBackground.fadeIn();\n }\n\n } else { // audio autoplay is disabled\n\n if (window.AudioBackground.el.paused) { // playback is paused\n\n // the next page audio source is different\n // just update audio src but don't start playback\n if ($nextContainer.find('#js-audio-background').attr('src') !== $audioBackground.attr('src')) {\n syncAttributes($nextContainer.find('#js-audio-background'), $audioBackground);\n }\n\n } else { // playback is running\n\n // the next page audio source is different\n // fade out current volume, update src, start playback\n if ($nextContainer.find('#js-audio-background').attr('src') !== $audioBackground.attr('src')) {\n window.AudioBackground.fadeOut().then(() => {\n syncAttributes($nextContainer.find('#js-audio-background'), $audioBackground);\n window.AudioBackground.fadeIn();\n });\n }\n\n }\n\n }\n break;\n default:\n window.AudioBackground.el.currentTime = 0;\n window.AudioBackground.fadeIn();\n break;\n }\n }\n\n resolve(true);\n });\n}\n","/* ======================================================================== */\n/* 22. PJAX Update Body */\n/* ======================================================================== */\nfunction PJAXUpdateBody(data) {\n\treturn new Promise((resolve) => {\n\t\tconst\n\t\t\tregexp = /\\