PageSourceSearch

https://brona.cz/wp-content/cache/wpfc-minified/7ydpt2bx/hggrw.js

js brona.cz collected 2026-09-24 18:42:42 UTC 151,288 bytes, 1,803 lines download raw bytes

1(function(document, $){
2var $cache={};
3function generate_cache(){
4$cache.document=$(document);
5$cache.first_payment_date=$('.first-payment-date');
6$cache.subscription_details=$(
7'.woocommerce-subscriptions-product-details'
8);
9$cache.is_variable_subscription =
100 < $('.product-type-variable-subscription').length;
11}
12function attach_events(){
13if($cache.is_variable_subscription){
14$cache.document.on('found_variation', update_variation_elements);
15$cache.document.on('reset_data', clear_variation_elements);
16}}
17function update_variation_elements(event, variation_data){
18var details=variation_data.subscription_details_html||'';
19var has_details=''!==details;
20$cache.first_payment_date.html(variation_data.first_payment_html);
21$cache.subscription_details.html(details).toggle(has_details);
22tighten_variation_price_spacing(has_details);
23}
24function clear_variation_elements(){
25$cache.first_payment_date.html('');
26$cache.subscription_details.empty().hide();
27tighten_variation_price_spacing(false);
28}
29function tighten_variation_price_spacing(tighten){
30$cache.subscription_details
31.closest('.single_variation_wrap')
vendor: 49,087 bytes, lines 32-1585
32.toggleClass('wcsatt-variation-has-details', tighten);
33}
34function init(){
35generate_cache();
36attach_events();
37}
38$(init);
39})(document, jQuery);
40+function ($){
41'use strict';
42function transitionEnd(){
43var el=document.createElement('bootstrap')
44var transEndEventNames={
45WebkitTransition:'webkitTransitionEnd',
46MozTransition:'transitionend',
47OTransition:'oTransitionEnd otransitionend',
48transition:'transitionend'
49}
50for (var name in transEndEventNames){
51if(el.style[name]!==undefined){
52return { end: transEndEventNames[name] }}
53}
54return false
55}
56$.fn.emulateTransitionEnd=function (duration){
57var called=false
58var $el=this
59$(this).one('bsTransitionEnd', function (){ called=true })
60var callback=function (){ if(!called) $($el).trigger($.support.transition.end) }
61setTimeout(callback, duration)
62return this
63}
64$(function (){
65$.support.transition=transitionEnd()
66if(!$.support.transition) return
67$.event.special.bsTransitionEnd={
68bindType: $.support.transition.end,
69delegateType: $.support.transition.end,
70handle: function (e){
71if($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)
72}}
73})
74}(jQuery);
75+function ($){
76'use strict';
77var dismiss='[data-dismiss="alert"]'
78var Alert=function (el){
79$(el).on('click', dismiss, this.close)
80}
81Alert.TRANSITION_DURATION=150
82Alert.prototype.close=function (e){
83var $this=$(this)
84var selector=$this.attr('data-target')
85if(!selector){
86selector=$this.attr('href')
87selector=selector&&selector.replace(/.*(?=#[^\s]*$)/, '')
88}
89var $parent=$(selector)
90if(e) e.preventDefault()
91if(!$parent.length){
92$parent=$this.closest('.alert')
93}
94$parent.trigger(e=$.Event('close.bs.alert'))
95if(e.isDefaultPrevented()) return
96$parent.removeClass('in')
97function removeElement(){
98$parent.detach().trigger('closed.bs.alert').remove()
99}
100$.support.transition&&$parent.hasClass('fade') ?
101$parent
102.one('bsTransitionEnd', removeElement)
103.emulateTransitionEnd(Alert.TRANSITION_DURATION) :
104removeElement()
105}
106function Plugin(option){
107return this.each(function (){
108var $this=$(this)
109var data=$this.data('bs.alert')
110if(!data) $this.data('bs.alert', (data=new Alert(this)))
111if(typeof option=='string') data[option].call($this)
112})
113}
114var old=$.fn.alert
115$.fn.alert=Plugin
116$.fn.alert.Constructor=Alert
117$.fn.alert.noConflict=function (){
118$.fn.alert=old
119return this
120}
121$(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)
122}(jQuery);
123+function ($){
124'use strict';
125var Button=function (element, options){
126this.$element=$(element)
127this.options=$.extend({}, Button.DEFAULTS, options)
128this.isLoading=false
129}
130Button.DEFAULTS={
131loadingText: 'loading...'
132}
133Button.prototype.setState=function (state){
134var d='disabled'
135var $el=this.$element
136var val=$el.is('input') ? 'val':'html'
137var data=$el.data()
138state +='Text'
139if(data.resetText==null) $el.data('resetText', $el[val]())
140setTimeout($.proxy(function (){
141$el[val](data[state]==null ? this.options[state]:data[state])
142if(state=='loadingText'){
143this.isLoading=true
144$el.addClass(d).attr(d, d)
145}else if(this.isLoading){
146this.isLoading=false
147$el.removeClass(d).removeAttr(d)
148}}, this), 0)
149}
150Button.prototype.toggle=function (){
151var changed=true
152var $parent=this.$element.closest('[data-toggle="buttons"]')
153if($parent.length){
154var $input=this.$element.find('input')
155if($input.prop('type')=='radio'){
156if($input.prop('checked')) changed=false
157$parent.find('.active').removeClass('active')
158this.$element.addClass('active')
159}else if($input.prop('type')=='checkbox'){
160if(($input.prop('checked'))!==this.$element.hasClass('active')) changed=false
161this.$element.toggleClass('active')
162}
163$input.prop('checked', this.$element.hasClass('active'))
164if(changed) $input.trigger('change')
165}else{
166this.$element.attr('aria-pressed', !this.$element.hasClass('active'))
167this.$element.toggleClass('active')
168}}
169function Plugin(option){
170return this.each(function (){
171var $this=$(this)
172var data=$this.data('bs.button')
173var options=typeof option=='object'&&option
174if(!data) $this.data('bs.button', (data=new Button(this, options)))
175if(option=='toggle') data.toggle()
176else if(option) data.setState(option)
177})
178}
179var old=$.fn.button
180$.fn.button=Plugin
181$.fn.button.Constructor=Button
182$.fn.button.noConflict=function (){
183$.fn.button=old
184return this
185}
186$(document)
187.on('click.bs.button.data-api', '[data-toggle^="button"]', function (e){
188var $btn=$(e.target)
189if(!$btn.hasClass('btn')) $btn=$btn.closest('.btn')
190Plugin.call($btn, 'toggle')
191if(!($(e.target).is('input[type="radio"]')||$(e.target).is('input[type="checkbox"]'))) e.preventDefault()
192})
193.on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e){
194$(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))
195})
196}(jQuery);
197+function ($){
198'use strict';
199var Carousel=function (element, options){
200this.$element=$(element)
201this.$indicators=this.$element.find('.carousel-indicators')
202this.options=options
203this.paused=null
204this.sliding=null
205this.interval=null
206this.$active=null
207this.$items=null
208this.options.keyboard&&this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this))
209this.options.pause=='hover'&&!('ontouchstart' in document.documentElement)&&this.$element
210.on('mouseenter.bs.carousel', $.proxy(this.pause, this))
211.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
212}
213Carousel.TRANSITION_DURATION=600
214Carousel.DEFAULTS={
215interval: 5000,
216pause: 'hover',
217wrap: true,
218keyboard: true
219}
220Carousel.prototype.keydown=function (e){
221if(/input|textarea/i.test(e.target.tagName)) return
222switch (e.which){
223case 37: this.prev(); break
224case 39: this.next(); break
225default: return
226}
227e.preventDefault()
228}
229Carousel.prototype.cycle=function (e){
230e||(this.paused=false)
231this.interval&&clearInterval(this.interval)
232this.options.interval
233&& !this.paused
234&& (this.interval=setInterval($.proxy(this.next, this), this.options.interval))
235return this
236}
237Carousel.prototype.getItemIndex=function (item){
238this.$items=item.parent().children('.item')
239return this.$items.index(item||this.$active)
240}
241Carousel.prototype.getItemForDirection=function (direction, active){
242var activeIndex=this.getItemIndex(active)
243var willWrap=(direction=='prev'&&activeIndex===0)
244|| (direction=='next'&&activeIndex==(this.$items.length - 1))
245if(willWrap&&!this.options.wrap) return active
246var delta=direction=='prev' ? -1:1
247var itemIndex=(activeIndex + delta) % this.$items.length
248return this.$items.eq(itemIndex)
249}
250Carousel.prototype.to=function (pos){
251var that=this
252var activeIndex=this.getItemIndex(this.$active=this.$element.find('.item.active'))
253if(pos > (this.$items.length - 1)||pos < 0) return
254if(this.sliding)       return this.$element.one('slid.bs.carousel', function (){ that.to(pos) })
255if(activeIndex==pos) return this.pause().cycle()
256return this.slide(pos > activeIndex ? 'next':'prev', this.$items.eq(pos))
257}
258Carousel.prototype.pause=function (e){
259e||(this.paused=true)
260if(this.$element.find('.next, .prev').length&&$.support.transition){
261this.$element.trigger($.support.transition.end)
262this.cycle(true)
263}
264this.interval=clearInterval(this.interval)
265return this
266}
267Carousel.prototype.next=function (){
268if(this.sliding) return
269return this.slide('next')
270}
271Carousel.prototype.prev=function (){
272if(this.sliding) return
273return this.slide('prev')
274}
275Carousel.prototype.slide=function (type, next){
276var $active=this.$element.find('.item.active')
277var $next=next||this.getItemForDirection(type, $active)
278var isCycling=this.interval
279var direction=type=='next' ? 'left':'right'
280var that=this
281if($next.hasClass('active')) return (this.sliding=false)
282var relatedTarget=$next[0]
283var slideEvent=$.Event('slide.bs.carousel', {
284relatedTarget: relatedTarget,
285direction: direction
286})
287this.$element.trigger(slideEvent)
288if(slideEvent.isDefaultPrevented()) return
289this.sliding=true
290isCycling&&this.pause()
291if(this.$indicators.length){
292this.$indicators.find('.active').removeClass('active')
293var $nextIndicator=$(this.$indicators.children()[this.getItemIndex($next)])
294$nextIndicator&&$nextIndicator.addClass('active')
295}
296var slidEvent=$.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction })
297if($.support.transition&&this.$element.hasClass('slide')){
298$next.addClass(type)
299$next[0].offsetWidth
300$active.addClass(direction)
301$next.addClass(direction)
302$active
303.one('bsTransitionEnd', function (){
304$next.removeClass([type, direction].join(' ')).addClass('active')
305$active.removeClass(['active', direction].join(' '))
306that.sliding=false
307setTimeout(function (){
308that.$element.trigger(slidEvent)
309}, 0)
310})
311.emulateTransitionEnd(Carousel.TRANSITION_DURATION)
312}else{
313$active.removeClass('active')
314$next.addClass('active')
315this.sliding=false
316this.$element.trigger(slidEvent)
317}
318isCycling&&this.cycle()
319return this
320}
321function Plugin(option){
322return this.each(function (){
323var $this=$(this)
324var data=$this.data('bs.carousel')
325var options=$.extend({}, Carousel.DEFAULTS, $this.data(), typeof option=='object'&&option)
326var action=typeof option=='string' ? option:options.slide
327if(!data) $this.data('bs.carousel', (data=new Carousel(this, options)))
328if(typeof option=='number') data.to(option)
329else if(action) data[action]()
330else if(options.interval) data.pause().cycle()
331})
332}
333var old=$.fn.carousel
334$.fn.carousel=Plugin
335$.fn.carousel.Constructor=Carousel
336$.fn.carousel.noConflict=function (){
337$.fn.carousel=old
338return this
339}
340var clickHandler=function (e){
341var href
342var $this=$(this)
343var $target=$($this.attr('data-target')||(href=$this.attr('href'))&&href.replace(/.*(?=#[^\s]+$)/, ''))
344if(!$target.hasClass('carousel')) return
345var options=$.extend({}, $target.data(), $this.data())
346var slideIndex=$this.attr('data-slide-to')
347if(slideIndex) options.interval=false
348Plugin.call($target, options)
349if(slideIndex){
350$target.data('bs.carousel').to(slideIndex)
351}
352e.preventDefault()
353}
354$(document)
355.on('click.bs.carousel.data-api', '[data-slide]', clickHandler)
356.on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler)
357$(window).on('load', function (){
358$('[data-ride="carousel"]').each(function (){
359var $carousel=$(this)
360Plugin.call($carousel, $carousel.data())
361})
362})
363}(jQuery);
364+function ($){
365'use strict';
366var Collapse=function (element, options){
367this.$element=$(element)
368this.options=$.extend({}, Collapse.DEFAULTS, options)
369this.$trigger=$('[data-toggle="collapse"][href="#' + element.id + '"],' +
370'[data-toggle="collapse"][data-target="#' + element.id + '"]')
371this.transitioning=null
372if(this.options.parent){
373this.$parent=this.getParent()
374}else{
375this.addAriaAndCollapsedClass(this.$element, this.$trigger)
376}
377if(this.options.toggle) this.toggle()
378}
379Collapse.TRANSITION_DURATION=350
380Collapse.DEFAULTS={
381toggle: true
382}
383Collapse.prototype.dimension=function (){
384var hasWidth=this.$element.hasClass('width')
385return hasWidth ? 'width':'height'
386}
387Collapse.prototype.show=function (){
388if(this.transitioning||this.$element.hasClass('in')) return
389var activesData
390var actives=this.$parent&&this.$parent.children('.wpsm_panel').children('.in, .collapsing')
391if(actives&&actives.length){
392activesData=actives.data('bs.collapse')
393if(activesData&&activesData.transitioning) return
394}
395var startEvent=$.Event('show.bs.collapse')
396this.$element.trigger(startEvent)
397if(startEvent.isDefaultPrevented()) return
398if(actives&&actives.length){
399Plugin.call(actives, 'hide')
400activesData||actives.data('bs.collapse', null)
401}
402var dimension=this.dimension()
403this.$element
404.removeClass('collapse')
405.addClass('collapsing')[dimension](0)
406.attr('aria-expanded', true)
407this.$trigger
408.removeClass('collapsed')
409.attr('aria-expanded', true)
410this.transitioning=1
411var complete=function (){
412this.$element
413.removeClass('collapsing')
414.addClass('collapse in')[dimension]('')
415this.transitioning=0
416this.$element
417.trigger('shown.bs.collapse')
418}
419if(!$.support.transition) return complete.call(this)
420var scrollSize=$.camelCase(['scroll', dimension].join('-'))
421this.$element
422.one('bsTransitionEnd', $.proxy(complete, this))
423.emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize])
424}
425Collapse.prototype.hide=function (){
426if(this.transitioning||!this.$element.hasClass('in')) return
427var startEvent=$.Event('hide.bs.collapse')
428this.$element.trigger(startEvent)
429if(startEvent.isDefaultPrevented()) return
430var dimension=this.dimension()
431this.$element[dimension](this.$element[dimension]())[0].offsetHeight
432this.$element
433.addClass('collapsing')
434.removeClass('collapse in')
435.attr('aria-expanded', false)
436this.$trigger
437.addClass('collapsed')
438.attr('aria-expanded', false)
439this.transitioning=1
440var complete=function (){
441this.transitioning=0
442this.$element
443.removeClass('collapsing')
444.addClass('collapse')
445.trigger('hidden.bs.collapse')
446}
447if(!$.support.transition) return complete.call(this)
448this.$element
449[dimension](0)
450.one('bsTransitionEnd', $.proxy(complete, this))
451.emulateTransitionEnd(Collapse.TRANSITION_DURATION)
452}
453Collapse.prototype.toggle=function (){
454this[this.$element.hasClass('in') ? 'hide':'show']()
455}
456Collapse.prototype.getParent=function (){
457return $(this.options.parent)
458.find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]')
459.each($.proxy(function (i, element){
460var $element=$(element)
461this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element)
462}, this))
463.end()
464}
465Collapse.prototype.addAriaAndCollapsedClass=function ($element, $trigger){
466var isOpen=$element.hasClass('in')
467$element.attr('aria-expanded', isOpen)
468$trigger
469.toggleClass('collapsed', !isOpen)
470.attr('aria-expanded', isOpen)
471}
472function getTargetFromTrigger($trigger){
473var href
474var target=$trigger.attr('data-target')
475|| (href=$trigger.attr('href'))&&href.replace(/.*(?=#[^\s]+$)/, '')
476return $(target)
477}
478function Plugin(option){
479return this.each(function (){
480var $this=$(this)
481var data=$this.data('bs.collapse')
482var options=$.extend({}, Collapse.DEFAULTS, $this.data(), typeof option=='object'&&option)
483if(!data&&options.toggle&&/show|hide/.test(option)) options.toggle=false
484if(!data) $this.data('bs.collapse', (data=new Collapse(this, options)))
485if(typeof option=='string') data[option]()
486})
487}
488var old=$.fn.collapse
489$.fn.collapse=Plugin
490$.fn.collapse.Constructor=Collapse
491$.fn.collapse.noConflict=function (){
492$.fn.collapse=old
493return this
494}
495$(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e){
496var $this=$(this)
497if(!$this.attr('data-target')) e.preventDefault()
498var $target=getTargetFromTrigger($this)
499var data=$target.data('bs.collapse')
500var option=data ? 'toggle':$this.data()
501Plugin.call($target, option)
502})
503}(jQuery);
504+function ($){
505'use strict';
506var backdrop='.dropdown-backdrop'
507var toggle='[data-toggle="dropdown"]'
508var Dropdown=function (element){
509$(element).on('click.bs.dropdown', this.toggle)
510}
511function getParent($this){
512var selector=$this.attr('data-target')
513if(!selector){
514selector=$this.attr('href')
515selector=selector&&/#[A-Za-z]/.test(selector)&&selector.replace(/.*(?=#[^\s]*$)/, '')
516}
517var $parent=selector&&$(selector)
518return $parent&&$parent.length ? $parent:$this.parent()
519}
520function clearMenus(e){
521if(e&&e.which===3) return
522$(backdrop).remove()
523$(toggle).each(function (){
524var $this=$(this)
525var $parent=getParent($this)
526var relatedTarget={ relatedTarget: this }
527if(!$parent.hasClass('open')) return
528if(e&&e.type=='click'&&/input|textarea/i.test(e.target.tagName)&&$.contains($parent[0], e.target)) return
529$parent.trigger(e=$.Event('hide.bs.dropdown', relatedTarget))
530if(e.isDefaultPrevented()) return
531$this.attr('aria-expanded', 'false')
532$parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
533})
534}
535Dropdown.prototype.toggle=function (e){
536var $this=$(this)
537if($this.is('.disabled, :disabled')) return
538var $parent=getParent($this)
539var isActive=$parent.hasClass('open')
540clearMenus()
541if(!isActive){
542if('ontouchstart' in document.documentElement&&!$parent.closest('.navbar-nav').length){
543$(document.createElement('div'))
544.addClass('dropdown-backdrop')
545.insertAfter($(this))
546.on('click', clearMenus)
547}
548var relatedTarget={ relatedTarget: this }
549$parent.trigger(e=$.Event('show.bs.dropdown', relatedTarget))
550if(e.isDefaultPrevented()) return
551$this
552.trigger('focus')
553.attr('aria-expanded', 'true')
554$parent
555.toggleClass('open')
556.trigger($.Event('shown.bs.dropdown', relatedTarget))
557}
558return false
559}
560Dropdown.prototype.keydown=function (e){
561if(!/(38|40|27|32)/.test(e.which)||/input|textarea/i.test(e.target.tagName)) return
562var $this=$(this)
563e.preventDefault()
564e.stopPropagation()
565if($this.is('.disabled, :disabled')) return
566var $parent=getParent($this)
567var isActive=$parent.hasClass('open')
568if(!isActive&&e.which!=27||isActive&&e.which==27){
569if(e.which==27) $parent.find(toggle).trigger('focus')
570return $this.trigger('click')
571}
572var desc=' li:not(.disabled):visible a'
573var $items=$parent.find('.dropdown-menu' + desc)
574if(!$items.length) return
575var index=$items.index(e.target)
576if(e.which==38&&index > 0)                 index--
577if(e.which==40&&index < $items.length - 1) index++
578if(!~index)                                    index=0
579$items.eq(index).trigger('focus')
580}
581function Plugin(option){
582return this.each(function (){
583var $this=$(this)
584var data=$this.data('bs.dropdown')
585if(!data) $this.data('bs.dropdown', (data=new Dropdown(this)))
586if(typeof option=='string') data[option].call($this)
587})
588}
589var old=$.fn.dropdown
590$.fn.dropdown=Plugin
591$.fn.dropdown.Constructor=Dropdown
592$.fn.dropdown.noConflict=function (){
593$.fn.dropdown=old
594return this
595}
596$(document)
597.on('click.bs.dropdown.data-api', clearMenus)
598.on('click.bs.dropdown.data-api', '.dropdown form', function (e){ e.stopPropagation() })
599.on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
600.on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)
601.on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)
602}(jQuery);
603+function ($){
604'use strict';
605var Modal=function (element, options){
606this.options=options
607this.$body=$(document.body)
608this.$element=$(element)
609this.$dialog=this.$element.find('.modal-dialog')
610this.$backdrop=null
611this.isShown=null
612this.originalBodyPad=null
613this.scrollbarWidth=0
614this.ignoreBackdropClick=false
615if(this.options.remote){
616this.$element
617.find('.modal-content')
618.load(this.options.remote, $.proxy(function (){
619this.$element.trigger('loaded.bs.modal')
620}, this))
621}}
622Modal.TRANSITION_DURATION=300
623Modal.BACKDROP_TRANSITION_DURATION=150
624Modal.DEFAULTS={
625backdrop: true,
626keyboard: true,
627show: true
628}
629Modal.prototype.toggle=function (_relatedTarget){
630return this.isShown ? this.hide():this.show(_relatedTarget)
631}
632Modal.prototype.show=function (_relatedTarget){
633var that=this
634var e=$.Event('show.bs.modal', { relatedTarget: _relatedTarget })
635this.$element.trigger(e)
636if(this.isShown||e.isDefaultPrevented()) return
637this.isShown=true
638this.checkScrollbar()
639this.setScrollbar()
640this.$body.addClass('modal-open')
641this.escape()
642this.resize()
643this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this))
644this.$dialog.on('mousedown.dismiss.bs.modal', function (){
645that.$element.one('mouseup.dismiss.bs.modal', function (e){
646if($(e.target).is(that.$element)) that.ignoreBackdropClick=true
647})
648})
649this.backdrop(function (){
650var transition=$.support.transition&&that.$element.hasClass('fade')
651if(!that.$element.parent().length){
652that.$element.appendTo(that.$body)
653}
654that.$element
655.show()
656.scrollTop(0)
657that.adjustDialog()
658if(transition){
659that.$element[0].offsetWidth
660}
661that.$element.addClass('in')
662that.enforceFocus()
663var e=$.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
664transition ?
665that.$dialog
666.one('bsTransitionEnd', function (){
667that.$element.trigger('focus').trigger(e)
668})
669.emulateTransitionEnd(Modal.TRANSITION_DURATION) :
670that.$element.trigger('focus').trigger(e)
671})
672}
673Modal.prototype.hide=function (e){
674if(e) e.preventDefault()
675e=$.Event('hide.bs.modal')
676this.$element.trigger(e)
677if(!this.isShown||e.isDefaultPrevented()) return
678this.isShown=false
679this.escape()
680this.resize()
681$(document).off('focusin.bs.modal')
682this.$element
683.removeClass('in')
684.off('click.dismiss.bs.modal')
685.off('mouseup.dismiss.bs.modal')
686this.$dialog.off('mousedown.dismiss.bs.modal')
687$.support.transition&&this.$element.hasClass('fade') ?
688this.$element
689.one('bsTransitionEnd', $.proxy(this.hideModal, this))
690.emulateTransitionEnd(Modal.TRANSITION_DURATION) :
691this.hideModal()
692}
693Modal.prototype.enforceFocus=function (){
694$(document)
695.off('focusin.bs.modal')
696.on('focusin.bs.modal', $.proxy(function (e){
697if(this.$element[0]!==e.target&&!this.$element.has(e.target).length){
698this.$element.trigger('focus')
699}}, this))
700}
701Modal.prototype.escape=function (){
702if(this.isShown&&this.options.keyboard){
703this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e){
704e.which==27&&this.hide()
705}, this))
706}else if(!this.isShown){
707this.$element.off('keydown.dismiss.bs.modal')
708}}
709Modal.prototype.resize=function (){
710if(this.isShown){
711$(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this))
712}else{
713$(window).off('resize.bs.modal')
714}}
715Modal.prototype.hideModal=function (){
716var that=this
717this.$element.hide()
718this.backdrop(function (){
719that.$body.removeClass('modal-open')
720that.resetAdjustments()
721that.resetScrollbar()
722that.$element.trigger('hidden.bs.modal')
723})
724}
725Modal.prototype.removeBackdrop=function (){
726this.$backdrop&&this.$backdrop.remove()
727this.$backdrop=null
728}
729Modal.prototype.backdrop=function (callback){
730var that=this
731var animate=this.$element.hasClass('fade') ? 'fade':''
732if(this.isShown&&this.options.backdrop){
733var doAnimate=$.support.transition&&animate
734this.$backdrop=$(document.createElement('div'))
735.addClass('modal-backdrop ' + animate)
736.appendTo(this.$body)
737this.$element.on('click.dismiss.bs.modal', $.proxy(function (e){
738if(this.ignoreBackdropClick){
739this.ignoreBackdropClick=false
740return
741}
742if(e.target!==e.currentTarget) return
743this.options.backdrop=='static'
744? this.$element[0].focus()
745: this.hide()
746}, this))
747if(doAnimate) this.$backdrop[0].offsetWidth
748this.$backdrop.addClass('in')
749if(!callback) return
750doAnimate ?
751this.$backdrop
752.one('bsTransitionEnd', callback)
753.emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :
754callback()
755}else if(!this.isShown&&this.$backdrop){
756this.$backdrop.removeClass('in')
757var callbackRemove=function (){
758that.removeBackdrop()
759callback&&callback()
760}
761$.support.transition&&this.$element.hasClass('fade') ?
762this.$backdrop
763.one('bsTransitionEnd', callbackRemove)
764.emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :
765callbackRemove()
766}else if(callback){
767callback()
768}}
769Modal.prototype.handleUpdate=function (){
770this.adjustDialog()
771}
772Modal.prototype.adjustDialog=function (){
773var modalIsOverflowing=this.$element[0].scrollHeight > document.documentElement.clientHeight
774this.$element.css({
775paddingLeft:  !this.bodyIsOverflowing&&modalIsOverflowing ? this.scrollbarWidth:'',
776paddingRight: this.bodyIsOverflowing&&!modalIsOverflowing ? this.scrollbarWidth:''
777})
778}
779Modal.prototype.resetAdjustments=function (){
780this.$element.css({
781paddingLeft: '',
782paddingRight: ''
783})
784}
785Modal.prototype.checkScrollbar=function (){
786var fullWindowWidth=window.innerWidth
787if(!fullWindowWidth){
788var documentElementRect=document.documentElement.getBoundingClientRect()
789fullWindowWidth=documentElementRect.right - Math.abs(documentElementRect.left)
790}
791this.bodyIsOverflowing=document.body.clientWidth < fullWindowWidth
792this.scrollbarWidth=this.measureScrollbar()
793}
794Modal.prototype.setScrollbar=function (){
795var bodyPad=parseInt((this.$body.css('padding-right')||0), 10)
796this.originalBodyPad=document.body.style.paddingRight||''
797if(this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)
798}
799Modal.prototype.resetScrollbar=function (){
800this.$body.css('padding-right', this.originalBodyPad)
801}
802Modal.prototype.measureScrollbar=function (){
803var scrollDiv=document.createElement('div')
804scrollDiv.className='modal-scrollbar-measure'
805this.$body.append(scrollDiv)
806var scrollbarWidth=scrollDiv.offsetWidth - scrollDiv.clientWidth
807this.$body[0].removeChild(scrollDiv)
808return scrollbarWidth
809}
810function Plugin(option, _relatedTarget){
811return this.each(function (){
812var $this=$(this)
813var data=$this.data('bs.modal')
814var options=$.extend({}, Modal.DEFAULTS, $this.data(), typeof option=='object'&&option)
815if(!data) $this.data('bs.modal', (data=new Modal(this, options)))
816if(typeof option=='string') data[option](_relatedTarget)
817else if(options.show) data.show(_relatedTarget)
818})
819}
820var old=$.fn.modal
821$.fn.modal=Plugin
822$.fn.modal.Constructor=Modal
823$.fn.modal.noConflict=function (){
824$.fn.modal=old
825return this
826}
827$(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e){
828var $this=$(this)
829var href=$this.attr('href')
830var $target=$($this.attr('data-target')||(href&&href.replace(/.*(?=#[^\s]+$)/, '')))
831var option=$target.data('bs.modal') ? 'toggle':$.extend({ remote: !/#/.test(href)&&href }, $target.data(), $this.data())
832if($this.is('a')) e.preventDefault()
833$target.one('show.bs.modal', function (showEvent){
834if(showEvent.isDefaultPrevented()) return
835$target.one('hidden.bs.modal', function (){
836$this.is(':visible')&&$this.trigger('focus')
837})
838})
839Plugin.call($target, option, this)
840})
841}(jQuery);
842+function ($){
843'use strict';
844var Tooltip=function (element, options){
845this.type=null
846this.options=null
847this.enabled=null
848this.timeout=null
849this.hoverState=null
850this.$element=null
851this.inState=null
852this.init('tooltip', element, options)
853}
854Tooltip.TRANSITION_DURATION=150
855Tooltip.DEFAULTS={
856animation: true,
857placement: 'top',
858selector: false,
859template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
860trigger: 'hover focus',
861title: '',
862delay: 0,
863html: false,
864container: false,
865viewport: {
866selector: 'body',
867padding: 0
868}}
869Tooltip.prototype.init=function (type, element, options){
870this.enabled=true
871this.type=type
872this.$element=$(element)
873this.options=this.getOptions(options)
874this.$viewport=this.options.viewport&&$($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element):(this.options.viewport.selector||this.options.viewport))
875this.inState={ click: false, hover: false, focus: false }
876if(this.$element[0] instanceof document.constructor&&!this.options.selector){
877throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!')
878}
879var triggers=this.options.trigger.split(' ')
880for (var i=triggers.length; i--;){
881var trigger=triggers[i]
882if(trigger=='click'){
883this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
884}else if(trigger!='manual'){
885var eventIn=trigger=='hover' ? 'mouseenter':'focusin'
886var eventOut=trigger=='hover' ? 'mouseleave':'focusout'
887this.$element.on(eventIn  + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
888this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
889}}
890this.options.selector ?
891(this._options=$.extend({}, this.options, { trigger: 'manual', selector: '' })) :
892this.fixTitle()
893}
894Tooltip.prototype.getDefaults=function (){
895return Tooltip.DEFAULTS
896}
897Tooltip.prototype.getOptions=function (options){
898options=$.extend({}, this.getDefaults(), this.$element.data(), options)
899if(options.delay&&typeof options.delay=='number'){
900options.delay={
901show: options.delay,
902hide: options.delay
903}}
904return options
905}
906Tooltip.prototype.getDelegateOptions=function (){
907var options={}
908var defaults=this.getDefaults()
909this._options&&$.each(this._options, function (key, value){
910if(defaults[key]!=value) options[key]=value
911})
912return options
913}
914Tooltip.prototype.enter=function (obj){
915var self=obj instanceof this.constructor ?
916obj:$(obj.currentTarget).data('bs.' + this.type)
917if(!self){
918self=new this.constructor(obj.currentTarget, this.getDelegateOptions())
919$(obj.currentTarget).data('bs.' + this.type, self)
920}
921if(obj instanceof $.Event){
922self.inState[obj.type=='focusin' ? 'focus':'hover']=true
923}
924if(self.tip().hasClass('in')||self.hoverState=='in'){
925self.hoverState='in'
926return
927}
928clearTimeout(self.timeout)
929self.hoverState='in'
930if(!self.options.delay||!self.options.delay.show) return self.show()
931self.timeout=setTimeout(function (){
932if(self.hoverState=='in') self.show()
933}, self.options.delay.show)
934}
935Tooltip.prototype.isInStateTrue=function (){
936for (var key in this.inState){
937if(this.inState[key]) return true
938}
939return false
940}
941Tooltip.prototype.leave=function (obj){
942var self=obj instanceof this.constructor ?
943obj:$(obj.currentTarget).data('bs.' + this.type)
944if(!self){
945self=new this.constructor(obj.currentTarget, this.getDelegateOptions())
946$(obj.currentTarget).data('bs.' + this.type, self)
947}
948if(obj instanceof $.Event){
949self.inState[obj.type=='focusout' ? 'focus':'hover']=false
950}
951if(self.isInStateTrue()) return
952clearTimeout(self.timeout)
953self.hoverState='out'
954if(!self.options.delay||!self.options.delay.hide) return self.hide()
955self.timeout=setTimeout(function (){
956if(self.hoverState=='out') self.hide()
957}, self.options.delay.hide)
958}
959Tooltip.prototype.show=function (){
960var e=$.Event('show.bs.' + this.type)
961if(this.hasContent()&&this.enabled){
962this.$element.trigger(e)
963var inDom=$.contains(this.$element[0].ownerDocument.documentElement, this.$element[0])
964if(e.isDefaultPrevented()||!inDom) return
965var that=this
966var $tip=this.tip()
967var tipId=this.getUID(this.type)
968this.setContent()
969$tip.attr('id', tipId)
970this.$element.attr('aria-describedby', tipId)
971if(this.options.animation) $tip.addClass('fade')
972var placement=typeof this.options.placement=='function' ?
973this.options.placement.call(this, $tip[0], this.$element[0]) :
974this.options.placement
975var autoToken=/\s?auto?\s?/i
976var autoPlace=autoToken.test(placement)
977if(autoPlace) placement=placement.replace(autoToken, '')||'top'
978$tip
979.detach()
980.css({ top: 0, left: 0, display: 'block' })
981.addClass(placement)
982.data('bs.' + this.type, this)
983this.options.container ? $tip.appendTo(this.options.container):$tip.insertAfter(this.$element)
984this.$element.trigger('inserted.bs.' + this.type)
985var pos=this.getPosition()
986var actualWidth=$tip[0].offsetWidth
987var actualHeight=$tip[0].offsetHeight
988if(autoPlace){
989var orgPlacement=placement
990var viewportDim=this.getPosition(this.$viewport)
991placement=placement=='bottom'&&pos.bottom + actualHeight > viewportDim.bottom ? 'top'    :
992placement=='top'&&pos.top    - actualHeight < viewportDim.top    ? 'bottom' :
993placement=='right'&&pos.right  + actualWidth  > viewportDim.width  ? 'left'   :
994placement=='left'&&pos.left   - actualWidth  < viewportDim.left   ? 'right'  :
995placement
996$tip
997.removeClass(orgPlacement)
998.addClass(placement)
999}
1000var calculatedOffset=this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)
1001this.applyPlacement(calculatedOffset, placement)
1002var complete=function (){
1003var prevHoverState=that.hoverState
1004that.$element.trigger('shown.bs.' + that.type)
1005that.hoverState=null
1006if(prevHoverState=='out') that.leave(that)
1007}
1008$.support.transition&&this.$tip.hasClass('fade') ?
1009$tip
1010.one('bsTransitionEnd', complete)
1011.emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :
1012complete()
1013}}
1014Tooltip.prototype.applyPlacement=function (offset, placement){
1015var $tip=this.tip()
1016var width=$tip[0].offsetWidth
1017var height=$tip[0].offsetHeight
1018var marginTop=parseInt($tip.css('margin-top'), 10)
1019var marginLeft=parseInt($tip.css('margin-left'), 10)
1020if(isNaN(marginTop))  marginTop=0
1021if(isNaN(marginLeft)) marginLeft=0
1022offset.top  +=marginTop
1023offset.left +=marginLeft
1024$.offset.setOffset($tip[0], $.extend({
1025using: function (props){
1026$tip.css({
1027top: Math.round(props.top),
1028left: Math.round(props.left)
1029})
1030}}, offset), 0)
1031$tip.addClass('in')
1032var actualWidth=$tip[0].offsetWidth
1033var actualHeight=$tip[0].offsetHeight
1034if(placement=='top'&&actualHeight!=height){
1035offset.top=offset.top + height - actualHeight
1036}
1037var delta=this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight)
1038if(delta.left) offset.left +=delta.left
1039else offset.top +=delta.top
1040var isVertical=/top|bottom/.test(placement)
1041var arrowDelta=isVertical ? delta.left * 2 - width + actualWidth:delta.top * 2 - height + actualHeight
1042var arrowOffsetPosition=isVertical ? 'offsetWidth':'offsetHeight'
1043$tip.offset(offset)
1044this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical)
1045}
1046Tooltip.prototype.replaceArrow=function (delta, dimension, isVertical){
1047this.arrow()
1048.css(isVertical ? 'left':'top', 50 * (1 - delta / dimension) + '%')
1049.css(isVertical ? 'top':'left', '')
1050}
1051Tooltip.prototype.setContent=function (){
1052var $tip=this.tip()
1053var title=this.getTitle()
1054$tip.find('.tooltip-inner')[this.options.html ? 'html':'text'](title)
1055$tip.removeClass('fade in top bottom left right')
1056}
1057Tooltip.prototype.hide=function (callback){
1058var that=this
1059var $tip=$(this.$tip)
1060var e=$.Event('hide.bs.' + this.type)
1061function complete(){
1062if(that.hoverState!='in') $tip.detach()
1063that.$element
1064.removeAttr('aria-describedby')
1065.trigger('hidden.bs.' + that.type)
1066callback&&callback()
1067}
1068this.$element.trigger(e)
1069if(e.isDefaultPrevented()) return
1070$tip.removeClass('in')
1071$.support.transition&&$tip.hasClass('fade') ?
1072$tip
1073.one('bsTransitionEnd', complete)
1074.emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :
1075complete()
1076this.hoverState=null
1077return this
1078}
1079Tooltip.prototype.fixTitle=function (){
1080var $e=this.$element
1081if($e.attr('title')||typeof $e.attr('data-original-title')!='string'){
1082$e.attr('data-original-title', $e.attr('title')||'').attr('title', '')
1083}}
1084Tooltip.prototype.hasContent=function (){
1085return this.getTitle()
1086}
1087Tooltip.prototype.getPosition=function ($element){
1088$element=$element||this.$element
1089var el=$element[0]
1090var isBody=el.tagName=='BODY'
1091var elRect=el.getBoundingClientRect()
1092if(elRect.width==null){
1093elRect=$.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top })
1094}
1095var elOffset=isBody ? { top: 0, left: 0 }:$element.offset()
1096var scroll={ scroll: isBody ? document.documentElement.scrollTop||document.body.scrollTop:$element.scrollTop() }
1097var outerDims=isBody ? { width: $(window).width(), height: $(window).height() }:null
1098return $.extend({}, elRect, scroll, outerDims, elOffset)
1099}
1100Tooltip.prototype.getCalculatedOffset=function (placement, pos, actualWidth, actualHeight){
1101return placement=='bottom' ? { top: pos.top + pos.height,   left: pos.left + pos.width / 2 - actualWidth / 2 } :
1102placement=='top'    ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :
1103placement=='left'   ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :
1104{ top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }}
1105Tooltip.prototype.getViewportAdjustedDelta=function (placement, pos, actualWidth, actualHeight){
1106var delta={ top: 0, left: 0 }
1107if(!this.$viewport) return delta
1108var viewportPadding=this.options.viewport&&this.options.viewport.padding||0
1109var viewportDimensions=this.getPosition(this.$viewport)
1110if(/right|left/.test(placement)){
1111var topEdgeOffset=pos.top - viewportPadding - viewportDimensions.scroll
1112var bottomEdgeOffset=pos.top + viewportPadding - viewportDimensions.scroll + actualHeight
1113if(topEdgeOffset < viewportDimensions.top){
1114delta.top=viewportDimensions.top - topEdgeOffset
1115}else if(bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height){
1116delta.top=viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset
1117}}else{
1118var leftEdgeOffset=pos.left - viewportPadding
1119var rightEdgeOffset=pos.left + viewportPadding + actualWidth
1120if(leftEdgeOffset < viewportDimensions.left){
1121delta.left=viewportDimensions.left - leftEdgeOffset
1122}else if(rightEdgeOffset > viewportDimensions.right){
1123delta.left=viewportDimensions.left + viewportDimensions.width - rightEdgeOffset
1124}}
1125return delta
1126}
1127Tooltip.prototype.getTitle=function (){
1128var title
1129var $e=this.$element
1130var o=this.options
1131title=$e.attr('data-original-title')
1132|| (typeof o.title=='function' ? o.title.call($e[0]):o.title)
1133return title
1134}
1135Tooltip.prototype.getUID=function (prefix){
1136do prefix +=~~(Math.random() * 1000000)
1137while (document.getElementById(prefix))
1138return prefix
1139}
1140Tooltip.prototype.tip=function (){
1141if(!this.$tip){
1142this.$tip=$(this.options.template)
1143if(this.$tip.length!=1){
1144throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!')
1145}}
1146return this.$tip
1147}
1148Tooltip.prototype.arrow=function (){
1149return (this.$arrow=this.$arrow||this.tip().find('.tooltip-arrow'))
1150}
1151Tooltip.prototype.enable=function (){
1152this.enabled=true
1153}
1154Tooltip.prototype.disable=function (){
1155this.enabled=false
1156}
1157Tooltip.prototype.toggleEnabled=function (){
1158this.enabled = !this.enabled
1159}
1160Tooltip.prototype.toggle=function (e){
1161var self=this
1162if(e){
1163self=$(e.currentTarget).data('bs.' + this.type)
1164if(!self){
1165self=new this.constructor(e.currentTarget, this.getDelegateOptions())
1166$(e.currentTarget).data('bs.' + this.type, self)
1167}}
1168if(e){
1169self.inState.click = !self.inState.click
1170if(self.isInStateTrue()) self.enter(self)
1171else self.leave(self)
1172}else{
1173self.tip().hasClass('in') ? self.leave(self):self.enter(self)
1174}}
1175Tooltip.prototype.destroy=function (){
1176var that=this
1177clearTimeout(this.timeout)
1178this.hide(function (){
1179that.$element.off('.' + that.type).removeData('bs.' + that.type)
1180if(that.$tip){
1181that.$tip.detach()
1182}
1183that.$tip=null
1184that.$arrow=null
1185that.$viewport=null
1186})
1187}
1188function Plugin(option){
1189return this.each(function (){
1190var $this=$(this)
1191var data=$this.data('bs.tooltip')
1192var options=typeof option=='object'&&option
1193if(!data&&/destroy|hide/.test(option)) return
1194if(!data) $this.data('bs.tooltip', (data=new Tooltip(this, options)))
1195if(typeof option=='string') data[option]()
1196})
1197}
1198var old=$.fn.tooltip
1199$.fn.tooltip=Plugin
1200$.fn.tooltip.Constructor=Tooltip
1201$.fn.tooltip.noConflict=function (){
1202$.fn.tooltip=old
1203return this
1204}}(jQuery);
1205+function ($){
1206'use strict';
1207var Popover=function (element, options){
1208this.init('popover', element, options)
1209}
1210if(!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
1211Popover.DEFAULTS=$.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
1212placement: 'right',
1213trigger: 'click',
1214content: '',
1215template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
1216})
1217Popover.prototype=$.extend({}, $.fn.tooltip.Constructor.prototype)
1218Popover.prototype.constructor=Popover
1219Popover.prototype.getDefaults=function (){
1220return Popover.DEFAULTS
1221}
1222Popover.prototype.setContent=function (){
1223var $tip=this.tip()
1224var title=this.getTitle()
1225var content=this.getContent()
1226$tip.find('.popover-title')[this.options.html ? 'html':'text'](title)
1227$tip.find('.popover-content').children().detach().end()[
1228this.options.html ? (typeof content=='string' ? 'html':'append'):'text'
1229](content)
1230$tip.removeClass('fade top bottom left right in')
1231if(!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()
1232}
1233Popover.prototype.hasContent=function (){
1234return this.getTitle()||this.getContent()
1235}
1236Popover.prototype.getContent=function (){
1237var $e=this.$element
1238var o=this.options
1239return $e.attr('data-content')
1240|| (typeof o.content=='function' ?
1241o.content.call($e[0]) :
1242o.content)
1243}
1244Popover.prototype.arrow=function (){
1245return (this.$arrow=this.$arrow||this.tip().find('.arrow'))
1246}
1247function Plugin(option){
1248return this.each(function (){
1249var $this=$(this)
1250var data=$this.data('bs.popover')
1251var options=typeof option=='object'&&option
1252if(!data&&/destroy|hide/.test(option)) return
1253if(!data) $this.data('bs.popover', (data=new Popover(this, options)))
1254if(typeof option=='string') data[option]()
1255})
1256}
1257var old=$.fn.popover
1258$.fn.popover=Plugin
1259$.fn.popover.Constructor=Popover
1260$.fn.popover.noConflict=function (){
1261$.fn.popover=old
1262return this
1263}}(jQuery);
1264+function ($){
1265'use strict';
1266function ScrollSpy(element, options){
1267this.$body=$(document.body)
1268this.$scrollElement=$(element).is(document.body) ? $(window):$(element)
1269this.options=$.extend({}, ScrollSpy.DEFAULTS, options)
1270this.selector=(this.options.target||'') + ' .nav li > a'
1271this.offsets=[]
1272this.targets=[]
1273this.activeTarget=null
1274this.scrollHeight=0
1275this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this))
1276this.refresh()
1277this.process()
1278}
1279ScrollSpy.DEFAULTS={
1280offset: 10
1281}
1282ScrollSpy.prototype.getScrollHeight=function (){
1283return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight)
1284}
1285ScrollSpy.prototype.refresh=function (){
1286var that=this
1287var offsetMethod='offset'
1288var offsetBase=0
1289this.offsets=[]
1290this.targets=[]
1291this.scrollHeight=this.getScrollHeight()
1292if(!$.isWindow(this.$scrollElement[0])){
1293offsetMethod='position'
1294offsetBase=this.$scrollElement.scrollTop()
1295}
1296this.$body
1297.find(this.selector)
1298.map(function (){
1299var $el=$(this)
1300var href=$el.data('target')||$el.attr('href')
1301var $href=/^#./.test(href)&&$(href)
1302return ($href
1303&& $href.length
1304&& $href.is(':visible')
1305&& [[$href[offsetMethod]().top + offsetBase, href]])||null
1306})
1307.sort(function (a, b){ return a[0] - b[0] })
1308.each(function (){
1309that.offsets.push(this[0])
1310that.targets.push(this[1])
1311})
1312}
1313ScrollSpy.prototype.process=function (){
1314var scrollTop=this.$scrollElement.scrollTop() + this.options.offset
1315var scrollHeight=this.getScrollHeight()
1316var maxScroll=this.options.offset + scrollHeight - this.$scrollElement.height()
1317var offsets=this.offsets
1318var targets=this.targets
1319var activeTarget=this.activeTarget
1320var i
1321if(this.scrollHeight!=scrollHeight){
1322this.refresh()
1323}
1324if(scrollTop >=maxScroll){
1325return activeTarget!=(i=targets[targets.length - 1])&&this.activate(i)
1326}
1327if(activeTarget&&scrollTop < offsets[0]){
1328this.activeTarget=null
1329return this.clear()
1330}
1331for (i=offsets.length; i--;){
1332activeTarget!=targets[i]
1333&& scrollTop >=offsets[i]
1334&& (offsets[i + 1]===undefined||scrollTop < offsets[i + 1])
1335&& this.activate(targets[i])
1336}}
1337ScrollSpy.prototype.activate=function (target){
1338this.activeTarget=target
1339this.clear()
1340var selector=this.selector +
1341'[data-target="' + target + '"],' +
1342this.selector + '[href="' + target + '"]'
1343var active=$(selector)
1344.parents('li')
1345.addClass('active')
1346if(active.parent('.dropdown-menu').length){
1347active=active
1348.closest('li.dropdown')
1349.addClass('active')
1350}
1351active.trigger('activate.bs.scrollspy')
1352}
1353ScrollSpy.prototype.clear=function (){
1354$(this.selector)
1355.parentsUntil(this.options.target, '.active')
1356.removeClass('active')
1357}
1358function Plugin(option){
1359return this.each(function (){
1360var $this=$(this)
1361var data=$this.data('bs.scrollspy')
1362var options=typeof option=='object'&&option
1363if(!data) $this.data('bs.scrollspy', (data=new ScrollSpy(this, options)))
1364if(typeof option=='string') data[option]()
1365})
1366}
1367var old=$.fn.scrollspy
1368$.fn.scrollspy=Plugin
1369$.fn.scrollspy.Constructor=ScrollSpy
1370$.fn.scrollspy.noConflict=function (){
1371$.fn.scrollspy=old
1372return this
1373}
1374$(window).on('load.bs.scrollspy.data-api', function (){
1375$('[data-spy="scroll"]').each(function (){
1376var $spy=$(this)
1377Plugin.call($spy, $spy.data())
1378})
1379})
1380}(jQuery);
1381+function ($){
1382'use strict';
1383var Tab=function (element){
1384this.element=$(element)
1385}
1386Tab.TRANSITION_DURATION=150
1387Tab.prototype.show=function (){
1388var $this=this.element
1389var $ul=$this.closest('ul:not(.dropdown-menu)')
1390var selector=$this.data('target')
1391if(!selector){
1392selector=$this.attr('href')
1393selector=selector&&selector.replace(/.*(?=#[^\s]*$)/, '')
1394}
1395if($this.parent('li').hasClass('active')) return
1396var $previous=$ul.find('.active:last a')
1397var hideEvent=$.Event('hide.bs.tab', {
1398relatedTarget: $this[0]
1399})
1400var showEvent=$.Event('show.bs.tab', {
1401relatedTarget: $previous[0]
1402})
1403$previous.trigger(hideEvent)
1404$this.trigger(showEvent)
1405if(showEvent.isDefaultPrevented()||hideEvent.isDefaultPrevented()) return
1406var $target=$(selector)
1407this.activate($this.closest('li'), $ul)
1408this.activate($target, $target.parent(), function (){
1409$previous.trigger({
1410type: 'hidden.bs.tab',
1411relatedTarget: $this[0]
1412})
1413$this.trigger({
1414type: 'shown.bs.tab',
1415relatedTarget: $previous[0]
1416})
1417})
1418}
1419Tab.prototype.activate=function (element, container, callback){
1420var $active=container.find('> .active')
1421var transition=callback
1422&& $.support.transition
1423&& ($active.length&&$active.hasClass('fade')||!!container.find('> .fade').length)
1424function next(){
1425$active
1426.removeClass('active')
1427.find('> .dropdown-menu > .active')
1428.removeClass('active')
1429.end()
1430.find('[data-toggle="tab"]')
1431.attr('aria-expanded', false)
1432element
1433.addClass('active')
1434.find('[data-toggle="tab"]')
1435.attr('aria-expanded', true)
1436if(transition){
1437element[0].offsetWidth
1438element.addClass('in')
1439}else{
1440element.removeClass('fade')
1441}
1442if(element.parent('.dropdown-menu').length){
1443element
1444.closest('li.dropdown')
1445.addClass('active')
1446.end()
1447.find('[data-toggle="tab"]')
1448.attr('aria-expanded', true)
1449}
1450callback&&callback()
1451}
1452$active.length&&transition ?
1453$active
1454.one('bsTransitionEnd', next)
1455.emulateTransitionEnd(Tab.TRANSITION_DURATION) :
1456next()
1457$active.removeClass('in')
1458}
1459function Plugin(option){
1460return this.each(function (){
1461var $this=$(this)
1462var data=$this.data('bs.tab')
1463if(!data) $this.data('bs.tab', (data=new Tab(this)))
1464if(typeof option=='string') data[option]()
1465})
1466}
1467var old=$.fn.tab
1468$.fn.tab=Plugin
1469$.fn.tab.Constructor=Tab
1470$.fn.tab.noConflict=function (){
1471$.fn.tab=old
1472return this
1473}
1474var clickHandler=function (e){
1475e.preventDefault()
1476Plugin.call($(this), 'show')
1477}
1478$(document)
1479.on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler)
1480.on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler)
1481}(jQuery);
1482+function ($){
1483'use strict';
1484var Affix=function (element, options){
1485this.options=$.extend({}, Affix.DEFAULTS, options)
1486this.$target=$(this.options.target)
1487.on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))
1488.on('click.bs.affix.data-api',  $.proxy(this.checkPositionWithEventLoop, this))
1489this.$element=$(element)
1490this.affixed=null
1491this.unpin=null
1492this.pinnedOffset=null
1493this.checkPosition()
1494}
1495Affix.RESET='affix affix-top affix-bottom'
1496Affix.DEFAULTS={
1497offset: 0,
1498target: window
1499}
1500Affix.prototype.getState=function (scrollHeight, height, offsetTop, offsetBottom){
1501var scrollTop=this.$target.scrollTop()
1502var position=this.$element.offset()
1503var targetHeight=this.$target.height()
1504if(offsetTop!=null&&this.affixed=='top') return scrollTop < offsetTop ? 'top':false
1505if(this.affixed=='bottom'){
1506if(offsetTop!=null) return (scrollTop + this.unpin <=position.top) ? false:'bottom'
1507return (scrollTop + targetHeight <=scrollHeight - offsetBottom) ? false:'bottom'
1508}
1509var initializing=this.affixed==null
1510var colliderTop=initializing ? scrollTop:position.top
1511var colliderHeight=initializing ? targetHeight:height
1512if(offsetTop!=null&&scrollTop <=offsetTop) return 'top'
1513if(offsetBottom!=null&&(colliderTop + colliderHeight >=scrollHeight - offsetBottom)) return 'bottom'
1514return false
1515}
1516Affix.prototype.getPinnedOffset=function (){
1517if(this.pinnedOffset) return this.pinnedOffset
1518this.$element.removeClass(Affix.RESET).addClass('affix')
1519var scrollTop=this.$target.scrollTop()
1520var position=this.$element.offset()
1521return (this.pinnedOffset=position.top - scrollTop)
1522}
1523Affix.prototype.checkPositionWithEventLoop=function (){
1524setTimeout($.proxy(this.checkPosition, this), 1)
1525}
1526Affix.prototype.checkPosition=function (){
1527if(!this.$element.is(':visible')) return
1528var height=this.$element.height()
1529var offset=this.options.offset
1530var offsetTop=offset.top
1531var offsetBottom=offset.bottom
1532var scrollHeight=Math.max($(document).height(), $(document.body).height())
1533if(typeof offset!='object')         offsetBottom=offsetTop=offset
1534if(typeof offsetTop=='function')    offsetTop=offset.top(this.$element)
1535if(typeof offsetBottom=='function') offsetBottom=offset.bottom(this.$element)
1536var affix=this.getState(scrollHeight, height, offsetTop, offsetBottom)
1537if(this.affixed!=affix){
1538if(this.unpin!=null) this.$element.css('top', '')
1539var affixType='affix' + (affix ? '-' + affix:'')
1540var e=$.Event(affixType + '.bs.affix')
1541this.$element.trigger(e)
1542if(e.isDefaultPrevented()) return
1543this.affixed=affix
1544this.unpin=affix=='bottom' ? this.getPinnedOffset():null
1545this.$element
1546.removeClass(Affix.RESET)
1547.addClass(affixType)
1548.trigger(affixType.replace('affix', 'affixed') + '.bs.affix')
1549}
1550if(affix=='bottom'){
1551this.$element.offset({
1552top: scrollHeight - height - offsetBottom
1553})
1554}}
1555function Plugin(option){
1556return this.each(function (){
1557var $this=$(this)
1558var data=$this.data('bs.affix')
1559var options=typeof option=='object'&&option
1560if(!data) $this.data('bs.affix', (data=new Affix(this, options)))
1561if(typeof option=='string') data[option]()
1562})
1563}
1564var old=$.fn.affix
1565$.fn.affix=Plugin
1566$.fn.affix.Constructor=Affix
1567$.fn.affix.noConflict=function (){
1568$.fn.affix=old
1569return this
1570}
1571$(window).on('load', function (){
1572$('[data-spy="affix"]').each(function (){
1573var $spy=$(this)
1574var data=$spy.data()
1575data.offset=data.offset||{}
1576if(data.offsetBottom!=null) data.offset.bottom=data.offsetBottom
1577if(data.offsetTop!=null) data.offset.top=data.offsetTop
1578Plugin.call($spy, data)
1579})
1580})
1581}(jQuery);
1582jQuery(document).ready(function(){
1583jQuery('.collapse').on('shown.bs.collapse', function(){jQuery(this).parent().find(".fa-plus").removeClass("fa-plus").addClass("fa-minus"); jQuery(this).parent().find(".wpsm_panel-heading").addClass("acc-a"); }).on('hidden.bs.collapse', function(){jQuery(this).parent().find(".fa-minus").removeClass("fa-minus").addClass("fa-plus"); jQuery(this).parent().find(".wpsm_panel-heading").removeClass("acc-a");});
1584});
1585!function(n,t){var r,e;"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define("underscore",t):(n="undefined"!=typeof globalThis?globalThis:n||self,r=n._,(e=n._=t()).noConflict=function(){return n._=r,e})}
vendor: 6,147 bytes, line 1585
1585(this,function(){var n="1.13.8",t="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},e=Array.prototype,V=Object.prototype,F="undefined"!=typeof Symbol?Symbol.prototype:null,P=e.push,f=e.slice,s=V.toString,q=V.hasOwnProperty,r="undefined"!=typeof ArrayBuffer,u="undefined"!=typeof DataView,U=Array.isArray,W=Object.keys,z=Object.create,L=r&&ArrayBuffer.isView,$=isNaN,C=isFinite,K=!{toString:null}.propertyIsEnumerable("toString"),J=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],G=Math.pow(2,53)-1;function l(u,i){return i=null==i?u.length-1:+i,function(){for(var n=Math.max(arguments.length-i,0),t=Array(n),r=0;r<n;r++)t[r]=arguments[r+i];switch(i){case 0:return u.call(this,t);case 1:return u.call(this,arguments[0],t);case 2:return u.call(this,arguments[0],arguments[1],t)}for(var e=Array(i+1),r=0;r<i;r++)e[r]=arguments[r];return e[i]=t,u.apply(this,e)}}function i(n){var t=typeof n;return"function"==t||"object"==t&&!!n}function H(n){return void 0===n}function Q(n){return!0===n||!1===n||"[object Boolean]"===s.call(n)}function o(n){var t="[object "+n+"]";return function(n){return s.call(n)===t}}var X=o("String"),Y=o("Number"),Z=o("Date"),nn=o("RegExp"),tn=o("Error"),rn=o("Symbol"),en=o("ArrayBuffer"),a=o("Function"),t=t.document&&t.document.childNodes,p=a="function"!=typeof/./&&"object"!=typeof Int8Array&&"function"!=typeof t?function(n){return"function"==typeof n||!1}:a,t=o("Object"),un=u&&(!/\[native code\]/.test(String(DataView))||t(new DataView(new ArrayBuffer(8)))),a="undefined"!=typeof Map&&t(new Map),u=o("DataView");var h=un?function(n){return null!=n&&p(n.getInt8)&&en(n.buffer)}:u,c=U||o("Array");function v(n,t){return null!=n&&q.call(n,t)}var on=o("Arguments"),an=(!function(){on(arguments)||(on=function(n){return v(n,"callee")})}(),on);function fn(n){return Y(n)&&$(n)}function cn(n){return function(){return n}}function ln(t){return function(n){n=t(n);return"number"==typeof n&&0<=n&&n<=G}}function sn(t){return function(n){return null==n?void 0:n[t]}}var y=sn("byteLength"),pn=ln(y),hn=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var vn=r?function(n){return L?L(n)&&!h(n):pn(n)&&hn.test(s.call(n))}:cn(!1),d=sn("length");function yn(n,t){t=function(t){for(var r={},n=t.length,e=0;e<n;++e)r[t[e]]=!0;return{contains:function(n){return!0===r[n]},push:function(n){return r[n]=!0,t.push(n)}}}(t);var r=J.length,e=n.constructor,u=p(e)&&e.prototype||V,i="constructor";for(v(n,i)&&!t.contains(i)&&t.push(i);r--;)(i=J[r])in n&&n[i]!==u[i]&&!t.contains(i)&&t.push(i)}function g(n){if(!i(n))return[];if(W)return W(n);var t,r=[];for(t in n)v(n,t)&&r.push(t);return K&&yn(n,r),r}function dn(n,t){var r=g(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;i<e;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0}function b(n){return n instanceof b?n:this instanceof b?void(this._wrapped=n):new b(n)}function gn(n){return new Uint8Array(n.buffer||n,n.byteOffset||0,y(n))}b.VERSION=n,b.prototype.valueOf=b.prototype.toJSON=b.prototype.value=function(){return this._wrapped},b.prototype.toString=function(){return String(this._wrapped)};var bn="[object DataView]";function m(n){if(!i(n))return[];var t,r=[];for(t in n)r.push(t);return K&&yn(n,r),r}function mn(e){var u=d(e);return function(n){if(null==n)return!1;var t=m(n);if(d(t))return!1;for(var r=0;r<u;r++)if(!p(n[e[r]]))return!1;return e!==wn||!p(n[jn])}}var jn="forEach",t=["clear","delete"],u=["get","has","set"],U=t.concat(jn,u),wn=t.concat(u),r=["add"].concat(t,jn,"has"),u=a?mn(U):o("Map"),t=a?mn(wn):o("WeakMap"),U=a?mn(r):o("Set"),a=o("WeakSet");function j(n){for(var t=g(n),r=t.length,e=Array(r),u=0;u<r;u++)e[u]=n[t[u]];return e}function _n(n){for(var t={},r=g(n),e=0,u=r.length;e<u;e++)t[n[r[e]]]=r[e];return t}function An(n){var t,r=[];for(t in n)p(n[t])&&r.push(t);return r.sort()}function xn(f,c){return function(n){var t=arguments.length;if(c&&(n=Object(n)),!(t<2||null==n))for(var r=1;r<t;r++)for(var e=arguments[r],u=f(e),i=u.length,o=0;o<i;o++){var a=u[o];c&&void 0!==n[a]||(n[a]=e[a])}return n}}var Sn=xn(m),w=xn(g),On=xn(m,!0);function Mn(n){var t;return i(n)?z?z(n):((t=function(){}).prototype=n,n=new t,t.prototype=null,n):{}}function En(n){return c(n)?n:[n]}function _(n){return b.toPath(n)}function Bn(n,t){for(var r=t.length,e=0;e<r;e++){if(null==n)return;n=n[t[e]]}return r?n:void 0}function Nn(n,t,r){n=Bn(n,_(t));return H(n)?r:n}function kn(n){return n}function A(t){return t=w({},t),function(n){return dn(n,t)}}function In(t){return t=_(t),function(n){return Bn(n,t)}}function x(u,i,n){if(void 0===i)return u;switch(null==n?3:n){case 1:return function(n){return u.call(i,n)};case 3:return function(n,t,r){return u.call(i,n,t,r)};case 4:return function(n,t,r,e){return u.call(i,n,t,r,e)}}return function(){return u.apply(i,arguments)}}function Tn(n,t,r){return null==n?kn:p(n)?x(n,t,r):(i(n)&&!c(n)?A:In)(n)}function Dn(n,t){return Tn(n,t,1/0)}function S(n,t,r){return b.iteratee!==Dn?b.iteratee(n,t):Tn(n,t,r)}function Rn(){}function Vn(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))}b.toPath=En,b.iteratee=Dn;var O=Date.now||function(){return(new Date).getTime()};function Fn(t){function r(n){return t[n]}var n="(?:"+g(t).join("|")+")",e=RegExp(n),u=RegExp(n,"g");return function(n){return e.test(n=null==n?"":""+n)?n.replace(u,r):n}}var r={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},Pn=Fn(r),r=Fn(_n(r)),qn=b.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Un=/(.)^/,Wn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},zn=/\\|'|\r|\n|\u2028|\u2029/g;function Ln(n){return"\\"+Wn[n]}var $n=/^\s*(\w|\$)+\s*$/;var Cn=0;function Kn(n,t,r,e,u){return e instanceof t?(e=Mn(n.prototype),i(t=n.apply(e,u))?t:e):n.apply(r,u)}var M=l(function(u,i){function o(){for(var n=0,t=i.length,r=Array(t),e=0;e<t;e++)r[e]=i[e]===a?arguments[n++]:i[e];for(;n<arguments.length;)r.push(arguments[n++]);return Kn(u,o,this,this,r)}var a=M.placeholder;return o}
1585),Jn=(M.placeholder=b,l(function(t,r,e){var u;if(p(t))return u=l(function(n){return Kn(t,u,r,this,e.concat(n))});throw new TypeError("Bind must be called on a function")})),E=ln(d);function B(n,t,r){t||0===t||(t=1/0);for(var e=[],u=0,i=0,o=d(n)||0,a=[];;){if(o<=i){if(a.length){var f=a.pop(),i=f.i,o=d(n=f.v);continue}break}f=n[i++];t<=a.length?e[u++]=f:E(f)&&(c(f)||an(f))?(a.push({i:i,v:n}),i=0,o=d(n=f)):r||(e[u++]=f)}return e}var Gn=l(function(n,t){var r=(t=B(t,!1,!1)).length;if(r<1)throw new Error("bindAll must be passed function names");for(;r--;){var e=t[r];n[e]=Jn(n[e],n)}return n});var Hn=l(function(n,t,r){return setTimeout(function(){return n.apply(null,r)},t)}),Qn=M(Hn,b,1);function Xn(n){return function(){return!n.apply(this,arguments)}}function Yn(n,t){var r;return function(){return 0<--n&&(r=t.apply(this,arguments)),n<=1&&(t=null),r}}var Zn=M(Yn,2);function nt(n,t,r){t=S(t,r);for(var e,u=g(n),i=0,o=u.length;i<o;i++)if(t(n[e=u[i]],e,n))return e}function tt(i){return function(n,t,r){t=S(t,r);for(var e=d(n),u=0<i?0:e-1;0<=u&&u<e;u+=i)if(t(n[u],u,n))return u;return-1}}var rt=tt(1),et=tt(-1);function ut(n,t,r,e){for(var u=(r=S(r,e,1))(t),i=0,o=d(n);i<o;){var a=Math.floor((i+o)/2);r(n[a])<u?i=a+1:o=a}return i}function it(i,o,a){return function(n,t,r){var e=0,u=d(n);if("number"==typeof r)0<i?e=0<=r?r:Math.max(r+u,e):u=0<=r?Math.min(r+1,u):r+u+1;else if(a&&r&&u)return n[r=a(n,t)]===t?r:-1;if(t!=t)return 0<=(r=o(f.call(n,e,u),fn))?r+e:-1;for(r=0<i?e:u-1;0<=r&&r<u;r+=i)if(n[r]===t)return r;return-1}}var ot=it(1,rt,ut),at=it(-1,et);function ft(n,t,r){t=(E(n)?rt:nt)(n,t,r);if(void 0!==t&&-1!==t)return n[t]}function N(n,t,r){if(t=x(t,r),E(n))for(u=0,i=n.length;u<i;u++)t(n[u],u,n);else for(var e=g(n),u=0,i=e.length;u<i;u++)t(n[e[u]],e[u],n);return n}function k(n,t,r){t=S(t,r);for(var e=!E(n)&&g(n),u=(e||n).length,i=Array(u),o=0;o<u;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i}function ct(f){return function(n,t,r,e){var u=3<=arguments.length;return function(n,t,r,e){var u=!E(n)&&g(n),i=(u||n).length,o=0<f?0:i-1;for(e||(r=n[u?u[o]:o],o+=f);0<=o&&o<i;o+=f){var a=u?u[o]:o;r=t(r,n[a],a,n)}return r}(n,x(t,e,4),r,u)}}var lt=ct(1),st=ct(-1);function I(n,e,t){var u=[];return e=S(e,t),N(n,function(n,t,r){e(n,t,r)&&u.push(n)}),u}function pt(n,t,r){t=S(t,r);for(var e=!E(n)&&g(n),u=(e||n).length,i=0;i<u;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0}function ht(n,t,r){t=S(t,r);for(var e=!E(n)&&g(n),u=(e||n).length,i=0;i<u;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1}function T(n,t,r,e){return E(n)||(n=j(n)),0<=ot(n,t,r="number"==typeof r&&!e?r:0)}var vt=l(function(n,r,e){var u,i;return p(r)?i=r:(r=_(r),u=r.slice(0,-1),r=r[r.length-1]),k(n,function(n){var t=i;if(!t){if(null==(n=u&&u.length?Bn(n,u):n))return;t=n[r]}return null==t?t:t.apply(n,e)})});function yt(n,t){return k(n,In(t))}function dt(n,e,t){var r,u,i=-1/0,o=-1/0;if(null==e||"number"==typeof e&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=E(n)?n:j(n)).length;a<f;a++)null!=(r=n[a])&&i<r&&(i=r);else e=S(e,t),N(n,function(n,t,r){u=e(n,t,r),(o<u||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i}var gt=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function bt(n){return n?c(n)?f.call(n):X(n)?n.match(gt):E(n)?k(n,kn):j(n):[]}function mt(n,t,r){if(null==t||r)return(n=E(n)?n:j(n))[Vn(n.length-1)];for(var e=bt(n),r=d(e),u=(t=Math.max(Math.min(t,r),0),r-1),i=0;i<t;i++){var o=Vn(i,u),a=e[i];
1585e[i]=e[o],e[o]=a}return e.slice(0,t)}function D(i,t){return function(r,e,n){var u=t?[[],[]]:{};return e=S(e,n),N(r,function(n,t){t=e(n,t,r);i(u,n,t)}),u}}var jt=D(function(n,t,r){v(n,r)?n[r].push(t):n[r]=[t]}),wt=D(function(n,t,r){n[r]=t}),_t=D(function(n,t,r){v(n,r)?n[r]++:n[r]=1}),At=D(function(n,t,r){n[r?0:1].push(t)},!0);function xt(n,t,r){return t in r}var St=l(function(n,t){var r={},e=t[0];if(null!=n){p(e)?(1<t.length&&(e=x(e,t[1])),t=m(n)):(e=xt,t=B(t,!1,!1),n=Object(n));for(var u=0,i=t.length;u<i;u++){var o=t[u],a=n[o];e(a,o,n)&&(r[o]=a)}}return r}),Ot=l(function(n,r){var t,e=r[0];return p(e)?(e=Xn(e),1<r.length&&(t=r[1])):(r=k(B(r,!1,!1),String),e=function(n,t){return!T(r,t)}),St(n,e,t)});function Mt(n,t,r){return f.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))}function Et(n,t,r){return null==n||n.length<1?null==t||r?void 0:[]:null==t||r?n[0]:Mt(n,n.length-t)}function R(n,t,r){return f.call(n,null==t||r?1:t)}var Bt=l(function(n,t){return t=B(t,!0,!0),I(n,function(n){return!T(t,n)})}),Nt=l(function(n,t){return Bt(n,t)});function kt(n,t,r,e){Q(t)||(e=r,r=t,t=!1),null!=r&&(r=S(r,e));for(var u=[],i=[],o=0,a=d(n);o<a;o++){var f=n[o],c=r?r(f,o,n):f;t&&!r?(o&&i===c||u.push(f),i=c):r?T(i,c)||(i.push(c),u.push(f)):T(u,f)||u.push(f)}return u}var It=l(function(n){return kt(B(n,!0,!0))});function Tt(n){for(var t=n&&dt(n,d).length||0,r=Array(t),e=0;e<t;e++)r[e]=yt(n,e);return r}var Dt=l(Tt);function Rt(n,t){return n._chain?b(t).chain():t}function Vt(r){return N(An(r),function(n){var t=b[n]=r[n];b.prototype[n]=function(){var n=[this._wrapped];return P.apply(n,arguments),Rt(this,t.apply(b,n))}}),b}N(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var r=e[t];b.prototype[t]=function(){var n=this._wrapped;return null!=n&&(r.apply(n,arguments),"shift"!==t&&"splice"!==t||0!==n.length||delete n[0]),Rt(this,n)}}),N(["concat","join","slice"],function(n){var t=e[n];b.prototype[n]=function(){var n=this._wrapped;return Rt(this,n=null!=n?t.apply(n,arguments):n)}});n=Vt({__proto__:null,VERSION:n,restArguments:l,isObject:i,isNull:function(n){return null===n},isUndefined:H,isBoolean:Q,isElement:function(n){return!(!n||1!==n.nodeType)},isString:X,isNumber:Y,isDate:Z,isRegExp:nn,isError:tn,isSymbol:rn,isArrayBuffer:en,isDataView:h,isArray:c,isFunction:p,isArguments:an,isFinite:function(n){return!rn(n)&&C(n)&&!isNaN(parseFloat(n))},isNaN:fn,isTypedArray:vn,isEmpty:function(n){var t;return null==n||("number"==typeof(t=d(n))&&(c(n)||X(n)||an(n))?0===t:0===d(g(n)))},isMatch:dn,isEqual:function(n,t){for(var r=[{a:n,b:t}],e=[],u=[];r.length;){var i=r.pop();if(!0===i)e.pop(),u.pop();else{if((n=i.a)===(t=i.b)){if(0!==n||1/n==1/t)continue;return!1}if(null==n||null==t)return!1;if(n!=n){if(t!=t)continue;return!1}i=typeof n;if("function"!=i&&"object"!=i&&"object"!=typeof t)return!1;n instanceof b&&(n=n._wrapped),t instanceof b&&(t=t._wrapped);i=s.call(n);if(i!==s.call(t))return!1;if(un&&"[object Object]"==i&&h(n)){if(!h(t))return!1;i=bn}switch(i){case"[object RegExp]":case"[object String]":if(""+n==""+t)continue;return!1;case"[object Number]":r.push({a:+n,b:+t});continue;case"[object Date]":case"[object Boolean]":if(+n==+t)continue;return!1;case"[object Symbol]":if(F.valueOf.call(n)===F.valueOf.call(t))continue;return!1;case"[object ArrayBuffer]":case bn:r.push({a:gn(n),b:gn(t)});continue}i="[object Array]"===i;if(!i&&vn(n)){if(y(n)!==y(t))return!1;if(n.buffer===t.buffer&&n.byteOffset===t.byteOffset)continue;i=!0}if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(p(o)&&o instanceof o&&p(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}for(var f=e.length;f--;)if(e[f]===n){if(u[f]===t)break;return!1}if(!(0<=f))if(e.push(n),u.push(t),r.push(!0),i){if((f=n.length)!==t.length)return!1;for(;f--;)r.push({a:n[f],b:t[f]})}else{var c,l=g(n),f=l.length;if(g(t).length!==f)return!1;for(;f--;){if(!v(t,c=l[f]))return!1;r.push({a:n[c],b:t[c]})}}}}return!0},isMap:u,isWeakMap:t,isSet:U,isWeakSet:a,keys:g,allKeys:m,values:j,pairs:function(n){for(var t=g(n),r=t.length,e=Array(r),u=0;u<r;u++)e[u]=[t[u],n[t[u]]];return e},invert:_n,functions:An,methods:An,extend:Sn,extendOwn:w,assign:w,defaults:On,create:function(n,t){return n=Mn(n),t&&w(n,t),n},clone:function(n){return i(n)?c(n)?n.slice():Sn({},n):n},tap:function(n,t){return t(n),n},get:Nn,has:function(n,t){for(var r=(t=_(t)).length,e=0;e<r;e++){var u=t[e];if(!v(n,u))return!1;n=n[u]}return!!r},mapObject:function(n,t,r){t=S(t,r);for(var e=g(n),u=e.length,i={},o=0;o<u;o++){var a=e[o];i[a]=t(n[a],a,n)}return i},identity:kn,constant:cn,noop:Rn,toPath:En,property:In,propertyOf:function(t){return null==t?Rn:function(n){return Nn(t,n)}},matcher:A,matches:A,times:function(n,t,r){var e=Array(Math.max(0,n));t=x(t,r,1);for(var u=0;u<n;u++)e[u]=t(u);return e},random:Vn,now:O,escape:Pn,unescape:r,templateSettings:qn,template:function(i,n,t){n=On({},n=!n&&t?t:n,b.templateSettings);var r,t=RegExp([(n.escape||Un).source,(n.interpolate||Un).source,(n.evaluate||Un).source].join("|")+"|$","g"),o=0,a="__p+='";if(i.replace(t,function(n,t,r,e,u){return a+=i.slice(o,u).replace(zn,Ln),o=u+n.length,t?a+="'+\n((__t=("+t+"))==null?'':_.escape(__t))+\n'":r?a+="'+\n((__t=("+r+"))==null?'':__t)+\n'":e&&(a+="';\n"+e+"\n__p+='"),n}),a+="';\n",t=n.variable){if(!$n.test(t))throw new Error("variable is not a bare identifier: "+t)}else a="with(obj||{}){\n"+a+"}\n",t="obj";a="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{r=new Function(t,"_",a)}catch(n){throw n.source=a,n}function e(n){return r.call(this,n,b)}return e.source="function("+t+"){\n"+a+"}",e},result:function(n,t,r){var e=(t=_(t)).length;if(!e)return p(r)?r.call(n):r;for(var u=0;u<e;u++){var i=null==n?void 0:n[t[u]];void 0===i&&(i=r,u=e),n=p(i)?i.call(n):i}return n},uniqueId:function(n){var t=++Cn+"";return n?n+t:t},chain:function(n){return(n=b(n))._chain=!0,n},iteratee:Dn,partial:M,bind:Jn,bindAll:Gn,memoize:function(e,u){function i(n){var t=i.cache,r=""+(u?u.apply(this,arguments):n);return v(t,r)||(t[r]=e.apply(this,arguments)),t[r]}return i.cache={},i},delay:Hn,defer:Qn,throttle:function(r,e,u){function i(){l=!1===u.leading?0:O(),o=null,c=r.apply(a,f),o||(a=f=null)}function n(){var n=O(),t=(l||!1!==u.leading||(l=n),e-(n-l));return a=this,f=arguments,t<=0||e<t?(o&&(clearTimeout(o),o=null),l=n,c=r.apply(a,f),o||(a=f=null)):o||!1===u.trailing||(o=setTimeout(i,t)),c}var o,a,f,c,l=0;return u=u||{},n.cancel=function(){clearTimeout(o),l=0,o=a=f=null},n},debounce:function(t,r,e){function u(){var n=O()-o;n<r?i=setTimeout(u,r-n):(i=null,e||(f=t.apply(c,a)),i||(a=c=null))}var i,o,a,f,c,n=l(function(n){return c=this,a=n,o=O(),i||(i=setTimeout(u,r),e&&(f=t.apply(c,a))),f});return n.cancel=function(){clearTimeout(i),i=a=c=null},n},wrap:function(n,t){return M(t,n)},negate:Xn,compose:function(){var r=arguments,e=r.length-1;return function(){for(var n=e,t=r[e].apply(this,arguments);n--;)t=r[n].call(this,t);return t}},after:function(n,t){return function(){if(--n<1)return t.apply(this,arguments)}},before:Yn,once:Zn,findKey:nt,findIndex:rt,findLastIndex:et,sortedIndex:ut,indexOf:ot,lastIndexOf:at,find:ft,detect:ft,findWhere:function(n,t){return ft(n,A(t))},each:N,forEach:N,map:k,collect:k,reduce:lt,foldl:lt,inject:lt,reduceRight:st,foldr:st,filter:I,select:I,reject:function(n,t,r){return I(n,Xn(S(t)),r)},every:pt,all:pt,some:ht,any:ht,contains:T,includes:T,include:T,invoke:vt,pluck:yt,where:function(n,t){return I(n,A(t))},max:dt,min:function(n,e,t){var r,u,i=1/0,o=1/0;
1585if(null==e||"number"==typeof e&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=E(n)?n:j(n)).length;a<f;a++)null!=(r=n[a])&&r<i&&(i=r);else e=S(e,t),N(n,function(n,t,r){((u=e(n,t,r))<o||u===1/0&&i===1/0)&&(i=n,o=u)});return i},shuffle:function(n){return mt(n,1/0)},sample:mt,sortBy:function(n,e,t){var u=0;return e=S(e,t),yt(k(n,function(n,t,r){return{value:n,index:u++,criteria:e(n,t,r)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(e<r||void 0===r)return 1;if(r<e||void 0===e)return-1}return n.index-t.index}),"value")},groupBy:jt,indexBy:wt,countBy:_t,partition:At,toArray:bt,size:function(n){return null==n?0:(E(n)?n:g(n)).length},pick:St,omit:Ot,first:Et,head:Et,take:Et,initial:Mt,last:function(n,t,r){return null==n||n.length<1?null==t||r?void 0:[]:null==t||r?n[n.length-1]:R(n,Math.max(0,n.length-t))},rest:R,tail:R,drop:R,compact:function(n){return I(n,Boolean)},flatten:function(n,t){return B(n,t,!1)},without:Nt,uniq:kt,unique:kt,union:It,intersection:function(n){for(var t=[],r=arguments.length,e=0,u=d(n);e<u;e++){var i=n[e];if(!T(t,i)){for(var o=1;o<r&&T(arguments[o],i);o++);o===r&&t.push(i)}}return t},difference:Bt,unzip:Tt,transpose:Tt,zip:Dt,object:function(n,t){for(var r={},e=0,u=d(n);e<u;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},range:function(n,t,r){null==t&&(t=n||0,n=0),r=r||(t<n?-1:1);for(var e=Math.max(Math.ceil((t-n)/r),0),u=Array(e),i=0;i<e;i++,n+=r)u[i]=n;return u},chunk:function(n,t){if(null==t||t<1)return[];for(var r=[],e=0,u=n.length;e<u;)r.push(f.call(n,e,e+=t));return r},mixin:Vt,default:b});return n._=n});
1586!function(n){var s="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global;if("function"==typeof define&&define.amd)define(["underscore","jquery","exports"],function(t,e,i){s.Backbone=n(s,i,t,e)});else if("undefined"!=typeof exports){var t,e=require("underscore");try{t=require("jquery")}catch(t){}n(s,exports,e,t)}else s.Backbone=n(s,{},s._,s.jQuery||s.Zepto||s.ender||s.$)}(function(t,h,b,e){function a(t,e,i,n,s){var r,o=0;if(i&&"object"==typeof i){void 0!==n&&"context"in s&&void 0===s.context&&(s.context=n);for(r=b.keys(i);o<r.length;o++)e=a(t,e,r[o],i[r[o]],s)}else if(i&&l.test(i))for(r=i.split(l);o<r.length;o++)e=t(e,r[o],n,s);else e=t(e,i,n,s);return e}function x(t,e,i){i=Math.min(Math.max(i,0),t.length);for(var n=Array(t.length-i),s=e.length,r=0;r<n.length;r++)n[r]=t[r+i];for(r=0;r<s;r++)t[r+i]=e[r];for(r=0;r<n.length;r++)t[r+s+i]=n[r]}function s(i,n,t,s){b.each(t,function(t,e){n[e]&&(i.prototype[e]=function(n,t,s,r){switch(t){case 1:return function(){return n[s](this[r])};case 2:return function(t){return n[s](this[r],t)};case 3:return function(t,e){return n[s](this[r],T(t,this),e)};case 4:return function(t,e,i){return n[s](this[r],T(t,this),e,i)};default:return function(){var t=u.call(arguments);return t.unshift(this[r]),n[s].apply(n,t)}}}(n,t,e,s))})}var o,i=t.Backbone,u=Array.prototype.slice,e=(h.VERSION="1.6.1",h.$=e,h.noConflict=function(){return t.Backbone=i,this},h.emulateHTTP=!1,h.emulateJSON=!1,h.Events={}),l=/\s+/,n=(e.on=function(t,e,i){return this._events=a(n,this._events||{},t,e,{context:i,ctx:this,listening:o}),o&&(((this._listeners||(this._listeners={}))[o.id]=o).interop=!1),this},e.listenTo=function(t,e,i){if(t){var n=t._listenId||(t._listenId=b.uniqueId("l")),s=this._listeningTo||(this._listeningTo={}),r=o=s[n],s=(r||(this._listenId||(this._listenId=b.uniqueId("l")),r=o=s[n]=new g(this,t)),c(t,e,i,this));if(o=void 0,s)throw s;r.interop&&r.on(e,i)}return this},function(t,e,i,n){var s,r;return i&&(e=t[e]||(t[e]=[]),s=n.context,r=n.ctx,(n=n.listening)&&n.count++,e.push({callback:i,context:s,ctx:s||r,listening:n})),t}),c=function(t,e,i,n){try{t.on(e,i,n)}catch(t){return t}},r=(e.off=function(t,e,i){return this._events&&(this._events=a(r,this._events,t,e,{context:i,listeners:this._listeners})),this},e.stopListening=function(t,e,i){var n=this._listeningTo;if(n){for(var s=t?[t._listenId]:b.keys(n),r=0;r<s.length;r++){var o=n[s[r]];if(!o)break;o.obj.off(e,i,this),o.interop&&o.off(e,i)}b.isEmpty(n)&&(this._listeningTo=void 0)}return this}
1586,function(t,e,i,n){if(t){var s,r=n.context,o=n.listeners,h=0;if(e||r||i){for(s=e?[e]:b.keys(t);h<s.length;h++){var a=t[e=s[h]];if(!a)break;for(var u=[],l=0;l<a.length;l++){var c=a[l];i&&i!==c.callback&&i!==c.callback._callback||r&&r!==c.context?u.push(c):(c=c.listening)&&c.off(e,i)}u.length?t[e]=u:delete t[e]}return t}for(s=b.keys(o);h<s.length;h++)o[s[h]].cleanup()}}),d=(e.once=function(t,e,i){var n=a(d,{},t,e,this.off.bind(this));return this.on(n,e="string"==typeof t&&null==i?void 0:e,i)},e.listenToOnce=function(t,e,i){e=a(d,{},e,i,this.stopListening.bind(this,t));return this.listenTo(t,e)},function(t,e,i,n){var s;return i&&((s=t[e]=b.once(function(){n(e,s),i.apply(this,arguments)}))._callback=i),t}),f=(e.trigger=function(t){if(this._events){for(var e=Math.max(0,arguments.length-1),i=Array(e),n=0;n<e;n++)i[n]=arguments[n+1];a(f,this._events,t,void 0,i)}return this},function(t,e,i,n){var s,r;return t&&(s=t[e],r=t.all,s&&(r=r&&r.slice()),s&&p(s,n),r)&&p(r,[e].concat(n)),t}),p=function(t,e){var i,n=-1,s=t.length,r=e[0],o=e[1],h=e[2];switch(e.length){case 0:for(;++n<s;)(i=t[n]).callback.call(i.ctx);return;case 1:for(;++n<s;)(i=t[n]).callback.call(i.ctx,r);return;case 2:for(;++n<s;)(i=t[n]).callback.call(i.ctx,r,o);return;case 3:for(;++n<s;)(i=t[n]).callback.call(i.ctx,r,o,h);return;default:for(;++n<s;)(i=t[n]).callback.apply(i.ctx,e);return}},g=function(t,e){this.id=t._listenId,this.listener=t,this.obj=e,this.interop=!0,this.count=0,this._events=void 0},v=(g.prototype.on=e.on,g.prototype.off=function(t,e){t=this.interop?(this._events=a(r,this._events,t,e,{context:void 0,listeners:void 0}),!this._events):(this.count--,0===this.count);t&&this.cleanup()},g.prototype.cleanup=function(){delete this.listener._listeningTo[this.obj._listenId],this.interop||delete this.obj._listeners[this.id]},e.bind=e.on,e.unbind=e.off,b.extend(h,e),h.Model=function(t,e){var i=t||{},n=(e=e||{},this.preinitialize.apply(this,arguments),this.cid=b.uniqueId(this.cidPrefix),this.attributes={},e.collection&&(this.collection=e.collection),e.parse&&(i=this.parse(i,e)||{}),b.result(this,"defaults")),i=b.defaults(b.extend({},n,i),n);this.set(i,e),this.changed={},this.initialize.apply(this,arguments)}),m=(b.extend(v.prototype,e,{changed:null,validationError:null,idAttribute:"id",cidPrefix:"c",preinitialize:function(){},initialize:function(){},toJSON:function(t){return b.clone(this.attributes)},sync:function(){return h.sync.apply(this,arguments)},get:function(t){return this.attributes[t]},escape:function(t){return b.escape(this.get(t))},has:function(t){return null!=this.get(t)},matches:function(t){return!!b.iteratee(t,this)(this.attributes)},set:function(t,e,i){if(null!=t){var n;if("object"==typeof t?(n=t,i=e):(n={})[t]=e,!this._validate(n,i=i||{}))return!1;var s,r,o=i.unset,t=i.silent,h=[],a=this._changing,u=(this._changing=!0,a||(this._previousAttributes=b.clone(this.attributes),this.changed={}),this.attributes),l=this.changed,c=this._previousAttributes;for(s in n)e=n[s],b.isEqual(u[s],e)||h.push(s),b.isEqual(c[s],e)?delete l[s]:l[s]=e,o?delete u[s]:u[s]=e;if(this.idAttribute in n&&(r=this.id,this.id=this.get(this.idAttribute),this.id!==r)&&this.trigger("changeId",this,r,i),!t){h.length&&(this._pending=i);for(var d=0;d<h.length;d++)this.trigger("change:"+h[d],this,u[h[d]],i)}if(!a){if(!t)for(;this._pending;)i=this._pending,this._pending=!1,this.trigger("change",this,i);this._pending=!1,this._changing=!1}}return this},unset:function(t,e){return this.set(t,void 0,b.extend({},e,{unset:!0}))},clear:function(t){var e,i={};for(e in this.attributes)i[e]=void 0;return this.set(i,b.extend({},t,{unset:!0}))},hasChanged:function(t){return null==t?!b.isEmpty(this.changed):b.has(this.changed,t)},changedAttributes:function(t){if(!t)return!!this.hasChanged()&&b.clone(this.changed);var e,i,n=this._changing?this._previousAttributes:this.attributes,s={};for(i in t){var r=t[i];b.isEqual(n[i],r)||(s[i]=r,e=!0)}return!!e&&s},previous:function(t){return null!=t&&this._previousAttributes?this._previousAttributes[t]:null},previousAttributes:function(){return b.clone(this._previousAttributes)},fetch:function(i){i=b.extend({parse:!0},i);var n=this,s=i.success;return i.success=function(t){var e=i.parse?n.parse(t,i):t;if(!n.set(e,i))return!1;s&&s.call(i.context,n,t,i),n.trigger("sync",n,t,i)},N(this,i),this.sync("read",this,i)}
1586,save:function(t,e,i){null==t||"object"==typeof t?(n=t,i=e):(n={})[t]=e;var n,s=(i=b.extend({validate:!0,parse:!0},i)).wait;if(n&&!s){if(!this.set(n,i))return!1}else if(!this._validate(n,i))return!1;var r=this,o=i.success,h=this.attributes,t=(i.success=function(t){r.attributes=h;var e=i.parse?r.parse(t,i):t;if((e=s?b.extend({},n,e):e)&&!r.set(e,i))return!1;o&&o.call(i.context,r,t,i),r.trigger("sync",r,t,i)},N(this,i),n&&s&&(this.attributes=b.extend({},h,n)),this.isNew()?"create":i.patch?"patch":"update"),e=("patch"!=t||i.attrs||(i.attrs=n),this.sync(t,this,i));return this.attributes=h,e},destroy:function(e){e=e?b.clone(e):{};function i(){n.stopListening(),n.trigger("destroy",n,n.collection,e)}var n=this,s=e.success,r=e.wait,t=!(e.success=function(t){r&&i(),s&&s.call(e.context,n,t,e),n.isNew()||n.trigger("sync",n,t,e)});return this.isNew()?b.defer(e.success):(N(this,e),t=this.sync("delete",this,e)),r||i(),t},url:function(){var t,e=b.result(this,"urlRoot")||b.result(this.collection,"url")||M();return this.isNew()?e:(t=this.get(this.idAttribute),e.replace(/[^\/]$/,"$&/")+encodeURIComponent(t))},parse:function(t,e){return t},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return!this.has(this.idAttribute)},isValid:function(t){return this._validate({},b.extend({},t,{validate:!0}))},_validate:function(t,e){if(!e.validate||!this.validate)return!0;t=b.extend({},this.attributes,t);t=this.validationError=this.validate(t,e)||null;return!t||(this.trigger("invalid",this,t,b.extend(e,{validationError:t})),!1)}}),h.Collection=function(t,e){e=e||{},this.preinitialize.apply(this,arguments),e.model&&(this.model=e.model),void 0!==e.comparator&&(this.comparator=e.comparator),this._reset(),this.initialize.apply(this,arguments),t&&this.reset(t,b.extend({silent:!0},e))}),w={add:!0,remove:!0,merge:!0},_={add:!0,remove:!1},y=(b.extend(m.prototype,e,{model:v,preinitialize:function(){},initialize:function(){},toJSON:function(e){return this.map(function(t){return t.toJSON(e)})},sync:function(){return h.sync.apply(this,arguments)},add:function(t,e){return this.set(t,b.extend({merge:!1},e,_))},remove:function(t,e){e=b.extend({},e);var i=!b.isArray(t),t=(t=i?[t]:t.slice(),this._removeModels(t,e));return!e.silent&&t.length&&(e.changes={added:[],merged:[],removed:t},this.trigger("update",this,e)),i?t[0]:t},set:function(t,e){if(null!=t){(e=b.extend({},w,e)).parse&&!this._isModel(t)&&(t=this.parse(t,e)||[]);for(var i=!b.isArray(t),n=(t=i?[t]:t.slice(),e.at),s=((n=(n=null!=n?+n:n)>this.length?this.length:n)<0&&(n+=this.length+1),[]),r=[],o=[],h=[],a={},u=e.add,l=e.merge,c=e.remove,d=!1,f=this.comparator&&null==n&&!1!==e.sort,p=b.isString(this.comparator)?this.comparator:null,g=0;g<t.length;g++){var v,m=t[g],_=this.get(m);_?(l&&m!==_&&(v=this._isModel(m)?m.attributes:m,e.parse&&(v=_.parse(v,e)),_.set(v,e),o.push(_),f)&&!d&&(d=_.hasChanged(p)),a[_.cid]||(a[_.cid]=!0,s.push(_)),t[g]=_):u&&(m=t[g]=this._prepareModel(m,e))&&(r.push(m),this._addReference(m,e),a[m.cid]=!0,s.push(m))}if(c){for(g=0;g<this.length;g++)a[(m=this.models[g]).cid]||h.push(m);h.length&&this._removeModels(h,e)}var y=!1;if(s.length&&(!f&&u&&c)?(y=this.length!==s.length||b.some(this.models,function(t,e){return t!==s[e]}),this.models.length=0,x(this.models,s,0),this.length=this.models.length):r.length&&(f&&(d=!0),x(this.models,r,null==n?this.length:n),this.length=this.models.length),d&&this.sort({silent:!0}),!e.silent){for(g=0;g<r.length;g++)null!=n&&(e.index=n+g),(m=r[g]).trigger("add",m,this,e);(d||y)&&this.trigger("sort",this,e),(r.length||h.length||o.length)&&(e.changes={added:r,removed:h,merged:o},this.trigger("update",this,e))}return i?t[0]:t}},reset:function(t,e){e=e?b.clone(e):{};for(var i=0;i<this.models.length;i++)this._removeReference(this.models[i],e);return e.previousModels=this.models,this._reset(),t=this.add(t,b.extend({silent:!0},e)),e.silent||this.trigger("reset",this,e),t},push:function(t,e){return this.add(t,b.extend({at:this.length},e))},pop:function(t){var e=this.at(this.length-1);return this.remove(e,t)},unshift:function(t,e){return this.add(t,b.extend({at:0},e))},shift:function(t){var e=this.at(0);return this.remove(e,t)},slice:function(){return u.apply(this.models,arguments)},get:function(t){if(null!=t)return this._byId[t]||this._byId[this.modelId(this._isModel(t)?t.attributes:t,t.idAttribute)]||t.cid&&this._byId[t.cid]},has:function(t){return null!=this.get(t)},at:function(t){return t<0&&(t+=this.length),this.models[t]},where:function(t,e){return this[e?"find":"filter"](t)},findWhere:function(t){return this.where(t,!0)},sort:function(t){var e=this.comparator;if(!e)throw new Error("Cannot sort a set without a comparator");t=t||{};var i=e.length;return b.isFunction(e)&&(e=e.bind(this)),1===i||b.isString(e)?this.models=this.sortBy(e):this.models.sort(e),t.silent||this.trigger("sort",this,t),this},pluck:function(t){return this.map(t+"")},fetch:function(i){var n=(i=b.extend({parse:!0},i)).success,s=this;return i.success=function(t){var e=i.reset?"reset":"set";s[e](t,i),n&&n.call(i.context,s,t,i),s.trigger("sync",s,t,i)},N(this,i),this.sync("read",this,i)},create:function(t,e){var n=(e=e?b.clone(e):{}).wait;if(!(t=this._prepareModel(t,e)))return!1;n||this.add(t,e);var s=this,r=e.success;
1586return e.success=function(t,e,i){n&&(t.off("error",s._forwardPristineError,s),s.add(t,i)),r&&r.call(i.context,t,e,i)},n&&t.once("error",this._forwardPristineError,this),t.save(null,e),t},parse:function(t,e){return t},clone:function(){return new this.constructor(this.models,{model:this.model,comparator:this.comparator})},modelId:function(t,e){return t[e||this.model.prototype.idAttribute||"id"]},values:function(){return new E(this,S)},keys:function(){return new E(this,I)},entries:function(){return new E(this,k)},_reset:function(){this.length=0,this.models=[],this._byId={}},_prepareModel:function(t,e){return this._isModel(t)?(t.collection||(t.collection=this),t):(t=((e=e?b.clone(e):{}).collection=this).model.prototype?new this.model(t,e):this.model(t,e)).validationError?(this.trigger("invalid",this,t.validationError,e),!1):t},_removeModels:function(t,e){for(var i=[],n=0;n<t.length;n++){var s,r,o=this.get(t[n]);o&&(s=this.indexOf(o),this.models.splice(s,1),this.length--,delete this._byId[o.cid],null!=(r=this.modelId(o.attributes,o.idAttribute))&&delete this._byId[r],e.silent||(e.index=s,o.trigger("remove",o,this,e)),i.push(o),this._removeReference(o,e))}return 0<t.length&&!e.silent&&delete e.index,i},_isModel:function(t){return t instanceof v},_addReference:function(t,e){this._byId[t.cid]=t;var i=this.modelId(t.attributes,t.idAttribute);null!=i&&(this._byId[i]=t),t.on("all",this._onModelEvent,this)},_removeReference:function(t,e){delete this._byId[t.cid];var i=this.modelId(t.attributes,t.idAttribute);null!=i&&delete this._byId[i],this===t.collection&&delete t.collection,t.off("all",this._onModelEvent,this)},_onModelEvent:function(t,e,i,n){if(e){if(("add"===t||"remove"===t)&&i!==this)return;var s,r;"destroy"===t&&this.remove(e,n),"changeId"===t&&(s=this.modelId(e.previousAttributes(),e.idAttribute),r=this.modelId(e.attributes,e.idAttribute),null!=s&&delete this._byId[s],null!=r)&&(this._byId[r]=e)}this.trigger.apply(this,arguments)},_forwardPristineError:function(t,e,i){this.has(t)||this._onModelEvent("error",t,e,i)}}),"function"==typeof Symbol&&Symbol.iterator),E=(y&&(m.prototype[y]=m.prototype.values),function(t,e){this._collection=t,this._kind=e,this._index=0}),S=1,I=2,k=3,y=(y&&(E.prototype[y]=function(){return this}),E.prototype.next=function(){if(this._collection){var t,e;if(this._index<this._collection.length)return t=this._collection.at(this._index),this._index++,{value:this._kind===S?t:(e=this._collection.modelId(t.attributes,t.idAttribute),this._kind===I?e:[e,t]),done:!1};this._collection=void 0}return{value:void 0,done:!0}},h.View=function(t){this.cid=b.uniqueId("view"),this.preinitialize.apply(this,arguments),b.extend(this,b.pick(t,P)),this._ensureElement(),this.initialize.apply(this,arguments)}),A=/^(\S+)\s*(.*)$/,P=["model","collection","el","id","attributes","className","tagName","events"],T=(b.extend(y.prototype,e,{tagName:"div",$:function(t){return this.$el.find(t)},preinitialize:function(){},initialize:function(){},render:function(){return this},remove:function(){return this._removeElement(),this.stopListening(),this},_removeElement:function(){this.$el.remove()},setElement:function(t){return this.undelegateEvents(),this._setElement(t),this.delegateEvents(),this},_setElement:function(t){this.$el=t instanceof h.$?t:h.$(t),this.el=this.$el[0]},delegateEvents:function(t){if(t=t||b.result(this,"events"))for(var e in this.undelegateEvents(),t){var i=t[e];(i=b.isFunction(i)?i:this[i])&&(e=e.match(A),this.delegate(e[1],e[2],i.bind(this)))}return this},delegate:function(t,e,i){return this.$el.on(t+".delegateEvents"+this.cid,e,i),this},undelegateEvents:function(){return this.$el&&this.$el.off(".delegateEvents"+this.cid),this},undelegate:function(t,e,i){return this.$el.off(t+".delegateEvents"+this.cid,e,i),this},_createElement:function(t){return document.createElement(t)},_ensureElement:function(){var t;this.el?this.setElement(b.result(this,"el")):(t=b.extend({},b.result(this,"attributes")),this.id&&(t.id=b.result(this,"id")),this.className&&(t.class=b.result(this,"className")),this.setElement(this._createElement(b.result(this,"tagName"))),this._setAttributes(t))},_setAttributes:function(t){this.$el.attr(t)}}),function(e,t){return b.isFunction(e)?e:b.isObject(e)&&!t._isModel(e)?H(e):b.isString(e)?function(t){return t.get(e)}:e}),H=function(t){var e=b.matches(t);return function(t){return e(t.attributes)}}
1586,$=(b.each([[m,{forEach:3,each:3,map:3,collect:3,reduce:0,foldl:0,inject:0,reduceRight:0,foldr:0,find:3,detect:3,filter:3,select:3,reject:3,every:3,all:3,some:3,any:3,include:3,includes:3,contains:3,invoke:0,max:3,min:3,toArray:1,size:1,first:3,head:3,take:3,initial:3,rest:3,tail:3,drop:3,last:3,without:0,difference:0,indexOf:3,shuffle:1,lastIndexOf:3,isEmpty:1,chain:1,sample:3,partition:3,groupBy:3,countBy:3,sortBy:3,indexBy:3,findIndex:3,findLastIndex:3},"models"],[v,{keys:1,values:1,pairs:1,invert:1,pick:0,omit:0,chain:1,isEmpty:1},"attributes"]],function(t){var i=t[0],e=t[1],n=t[2];i.mixin=function(t){var e=b.reduce(b.functions(t),function(t,e){return t[e]=0,t},{});s(i,t,e,n)},s(i,b,e,n)}),h.sync=function(t,e,n){var i,s=$[t],r=(b.defaults(n=n||{},{emulateHTTP:h.emulateHTTP,emulateJSON:h.emulateJSON}),{type:s,dataType:"json"}),o=(n.url||(r.url=b.result(e,"url")||M()),null!=n.data||!e||"create"!==t&&"update"!==t&&"patch"!==t||(r.contentType="application/json",r.data=JSON.stringify(n.attrs||e.toJSON(n))),n.emulateJSON&&(r.contentType="application/x-www-form-urlencoded",r.data=r.data?{model:r.data}:{}),!n.emulateHTTP||"PUT"!==s&&"DELETE"!==s&&"PATCH"!==s||(r.type="POST",n.emulateJSON&&(r.data._method=s),i=n.beforeSend,n.beforeSend=function(t){if(t.setRequestHeader("X-HTTP-Method-Override",s),i)return i.apply(this,arguments)}),"GET"===r.type||n.emulateJSON||(r.processData=!1),n.error),t=(n.error=function(t,e,i){n.textStatus=e,n.errorThrown=i,o&&o.call(n.context,t,e,i)},n.xhr=h.ajax(b.extend(r,n)));return e.trigger("request",e,t,n),t},{create:"POST",update:"PUT",patch:"PATCH",delete:"DELETE",read:"GET"}),C=(h.ajax=function(){return h.$.ajax.apply(h.$,arguments)},h.Router=function(t){t=t||{},this.preinitialize.apply(this,arguments),t.routes&&(this.routes=t.routes),this._bindRoutes(),this.initialize.apply(this,arguments)}),j=/\((.*?)\)/g,O=/(\(\?)?:\w+/g,U=/\*\w+/g,z=/[\-{}\[\]+?.,\\\^$|#\s]/g,R=(b.extend(C.prototype,e,{preinitialize:function(){},initialize:function(){},route:function(e,i,n){b.isRegExp(e)||(e=this._routeToRegExp(e)),b.isFunction(i)&&(n=i,i=""),n=n||this[i];var s=this;return h.history.route(e,function(t){t=s._extractParameters(e,t);!1!==s.execute(n,t,i)&&(s.trigger.apply(s,["route:"+i].concat(t)),s.trigger("route",i,t),h.history.trigger("route",s,i,t))}),this},execute:function(t,e,i){t&&t.apply(this,e)},navigate:function(t,e){return h.history.navigate(t,e),this},_bindRoutes:function(){if(this.routes){this.routes=b.result(this,"routes");for(var t,e=b.keys(this.routes);null!=(t=e.pop());)this.route(t,this.routes[t])}},_routeToRegExp:function(t){return t=t.replace(z,"\\$&").replace(j,"(?:$1)?").replace(O,function(t,e){return e?t:"([^/?]+)"}).replace(U,"([^?]*?)"),new RegExp("^"+t+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(t,e){var i=t.exec(e).slice(1);return b.map(i,function(t,e){return e===i.length-1?t||null:t?decodeURIComponent(t):null})}}),h.History=function(){this.handlers=[],this.checkUrl=this.checkUrl.bind(this),"undefined"!=typeof window&&(this.location=window.location,this.history=window.history)}),q=/^[#\/]|\s+$/g,F=/^\/+|\/+$/g,B=/#.*$/,M=(R.started=!1,b.extend(R.prototype,e,{interval:50,atRoot:function(){return this.location.pathname.replace(/[^\/]$/,"$&/")===this.root&&!this.getSearch()},matchRoot:function(){return this.decodeFragment(this.location.pathname).slice(0,this.root.length-1)+"/"===this.root},decodeFragment:function(t){return decodeURI(t.replace(/%25/g,"%2525"))},getSearch:function(){var t=this.location.href.replace(/#.*/,"").match(/\?.+/);return t?t[0]:""},getHash:function(t){t=(t||this).location.href.match(/#(.*)$/);return t?t[1]:""},getPath:function(){var t=this.decodeFragment(this.location.pathname+this.getSearch()).slice(this.root.length-1);return"/"===t.charAt(0)?t.slice(1):t},getFragment:function(t){return(t=null==t?this._usePushState||!this._wantsHashChange?this.getPath():this.getHash():t).replace(q,"")},start:function(t){if(R.started)throw new Error("Backbone.history has already been started");if(R.started=!0,this.options=b.extend({root:"/"},this.options,t),this.root=this.options.root,this._trailingSlash=this.options.trailingSlash,this._wantsHashChange=!1!==this.options.hashChange,this._hasHashChange="onhashchange"in window&&(void 0===document.documentMode||7<document.documentMode),this._useHashChange=this._wantsHashChange&&this._hasHashChange,this._wantsPushState=!!this.options.pushState,this._hasPushState=!(!this.history||
1586!this.history.pushState),this._usePushState=this._wantsPushState&&this._hasPushState,this.fragment=this.getFragment(),this.root=("/"+this.root+"/").replace(F,"/"),this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot())return t=this.root.slice(0,-1)||"/",this.location.replace(t+"#"+this.getPath()),!0;this._hasPushState&&this.atRoot()&&this.navigate(this.getHash(),{replace:!0})}this._hasHashChange||!this._wantsHashChange||this._usePushState||(this.iframe=document.createElement("iframe"),this.iframe.src="javascript:0",this.iframe.style.display="none",this.iframe.tabIndex=-1,(t=(t=document.body).insertBefore(this.iframe,t.firstChild).contentWindow).document.open(),t.document.close(),t.location.hash="#"+this.fragment);t=window.addEventListener||function(t,e){return attachEvent("on"+t,e)};if(this._usePushState?t("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe?t("hashchange",this.checkUrl,!1):this._wantsHashChange&&(this._checkUrlInterval=setInterval(this.checkUrl,this.interval)),!this.options.silent)return this.loadUrl()},stop:function(){var t=window.removeEventListener||function(t,e){return detachEvent("on"+t,e)};this._usePushState?t("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe&&t("hashchange",this.checkUrl,!1),this.iframe&&(document.body.removeChild(this.iframe),this.iframe=null),this._checkUrlInterval&&clearInterval(this._checkUrlInterval),R.started=!1},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();if((e=e===this.fragment&&this.iframe?this.getHash(this.iframe.contentWindow):e)===this.fragment)return!this.matchRoot()&&this.notfound();this.iframe&&this.navigate(e),this.loadUrl()},loadUrl:function(e){return this.matchRoot()&&(e=this.fragment=this.getFragment(e),b.some(this.handlers,function(t){if(t.route.test(e))return t.callback(e),!0}))||this.notfound()},notfound:function(){return this.trigger("notfound"),!1},navigate:function(t,e){if(!R.started)return!1;e&&!0!==e||(e={trigger:!!e}),t=this.getFragment(t||"");var i=this.root,i=(i=this._trailingSlash||""!==t&&"?"!==t.charAt(0)?i:i.slice(0,-1)||"/")+t,n=(t=t.replace(B,""),this.decodeFragment(t));if(this.fragment!==n){if(this.fragment=n,this._usePushState)this.history[e.replace?"replaceState":"pushState"]({},document.title,i);else{if(!this._wantsHashChange)return this.location.assign(i);this._updateHash(this.location,t,e.replace),this.iframe&&t!==this.getHash(this.iframe.contentWindow)&&(n=this.iframe.contentWindow,e.replace||(n.document.open(),n.document.close()),this._updateHash(n.location,t,e.replace))}return e.trigger?this.loadUrl(t):void 0}},_updateHash:function(t,e,i){i?(i=t.href.replace(/(javascript:|#).*$/,""),t.replace(i+"#"+e)):t.hash="#"+e}}),h.history=new R,v.extend=m.extend=C.extend=y.extend=R.extend=function(t,e){var i=this,n=t&&b.has(t,"constructor")?t.constructor:function(){return i.apply(this,arguments)};return b.extend(n,i,e),n.prototype=b.create(i.prototype,t),(n.prototype.constructor=n).__super__=i.prototype,n},function(){throw new Error('A "url" property or function must be specified')}),N=function(e,i){var n=i.error;i.error=function(t){n&&n.call(i.context,e,t,i),e.trigger("error",e,t,i)}};return h._debug=function(){return{root:t,_:b}},h});
1587jQuery(function(e){if("undefined"==typeof wc_address_i18n_params)return!1;var a=wc_address_i18n_params.locale.replace(/&quot;/g,'"'),i=JSON.parse(a);function d(e,a){a?(e.find("label .optional").remove(),e.addClass("validate-required"),0===e.find('label .required[aria-hidden="true"]').length&&e.find("label").append('&nbsp;<span class="required" aria-hidden="true">*</span>')):(e.find("label .required").remove(),e.removeClass("validate-required woocommerce-invalid woocommerce-invalid-required-field"),0===e.find("label .optional").length&&e.find("label").append('&nbsp;<span class="optional">('+wc_address_i18n_params.i18n_optional_text+")</span>"))}e(document.body).on("country_to_state_changing",function(a,r,t){var l,n=t;l="undefined"!=typeof i[r]?i[r]:i["default"];var o=n.find("#billing_postcode_field, #shipping_postcode_field, #calc_shipping_postcode_field"),s=n.find("#billing_city_field, #shipping_city_field, #calc_shipping_city_field"),p=n.find("#billing_state_field, #shipping_state_field, #calc_shipping_state_field");o.attr("data-o_class")||(o.attr("data-o_class",o.attr("class")),s.attr("data-o_class",s.attr("class")),p.attr("data-o_class",p.attr("class")));var c=JSON.parse(wc_address_i18n_params.locale_fields);e.each(c,function(a,r){var t=n.find(r),o=e.extend(!0,{},i["default"][a],l[a]);"undefined"!=typeof o.label&&t.find("label").html(o.label),"undefined"!=typeof o.placeholder&&(t.find(":input").attr("placeholder",o.placeholder),t.find(":input").attr("data-placeholder",o.placeholder),t.find(".select2-selection__placeholder").text(o.placeholder)),"undefined"!=typeof o.placeholder||"undefined"==typeof o.label||t.find("label:not(.screen-reader-text)").length||(t.find(":input").attr("placeholder",o.label),t.find(":input").attr("data-placeholder",o.label),t.find(".select2-selection__placeholder").text(o.label)),"undefined"!=typeof o.required?d(t,o.required):d(t,!1),"undefined"!=typeof o.priority&&t.data("priority",o.priority),!0===o.hidden?t.hide().find(":input").val(""):"state"!==a&&t.show(),Array.isArray(o["class"])&&(t.removeClass("form-row-first form-row-last form-row-wide"),t.addClass(o["class"].join(" ")))}
1587),e(".woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper .woocommerce-account-fields").each(function(a,i){var d=e(i).find(".form-row"),r=d.first().parent(),t=0;d.each(function(){e(this).data("priority")||e(this).data("priority",t+1),t=e(this).data("priority")}),d.sort(function(a,i){var d=parseInt(e(a).data("priority"),10),r=parseInt(e(i).data("priority"),10);return d>r?1:d<r?-1:0}),d.detach().appendTo(r)})}).trigger("wc_address_i18n_ready")});
1588(()=>{"use strict";jQuery(function(t){t(".product form.cart").length&&function(t){var e=function(t){return new(Backbone.Model.extend({get_schemes_count:function(){var t=this.get("schemes"),e=0;for(var i in t)t.hasOwnProperty(i)&&e++;return e},get_active_scheme_key:function(){return this.get("active_scheme_key")},get_last_active_scheme_key:function(){return this.previous("active_scheme_key")},set_active_scheme:function(t){this.set({active_scheme_key:"0"!==t&&t})},set_schemes:function(t){this.set({schemes:t})},is_active_scheme_prorated:function(){return this.get_scheme_prop(this.get_active_scheme_key(),"is_prorated")},was_last_active_scheme_prorated:function(){return this.get_scheme_prop(this.get_last_active_scheme_key(),"is_prorated")},active_scheme_has_signup_fee:function(){var t=this.get_scheme_prop(this.get_active_scheme_key(),"signup_fee");return parseFloat(t)>0},last_active_scheme_had_signup_fee:function(){var t=this.get_scheme_prop(this.get_last_active_scheme_key(),"signup_fee");return parseFloat(t)>0},active_scheme_requires_upfront_charge:function(){return this.is_active_scheme_prorated()||this.active_scheme_has_signup_fee()},last_active_scheme_required_upfront_charge:function(){return this.was_last_active_scheme_prorated()||this.last_active_scheme_had_signup_fee()},get_scheme_prop:function(t,e){var i=this.get("schemes");return void 0===i[t]||void 0===i[t][e]?null:i[t][e]},initialize:function(){this.set({schemes:{},active_scheme_key:""})}}))(t)},i=function(e){return new(Backbone.View.extend({product:!1,$el_content:!1,$el_options:!1,$el_dropdown:!1,$el_prompt:!1,$el_option_items:!1,$el_option_inputs:!1,$el_button:!1,add_to_cart_button_text:!1,sign_up_button_text:!1,prompt_type:"",variation:!1,variation_options_render_location:"price_html",events:{"change select.wcsatt-options-product-dropdown":"dropdown_scheme_changed","change .wcsatt-options-prompt-action-input":"action_link_clicked","change .wcsatt-options-product-wrapper input":"active_scheme_changed",show_variation:"variation_found",reset_data:"reset_schemes"},action_link_clicked:function(t){var e=this.model,i="one-time"===this.get_prompt_val(),s=!1;if(e.get_active_scheme_key()){if(!i)return!1;e.set_active_scheme(!1),this.$el_option_inputs.filter('[value="0"]').prop("checked",!0),this.has_dropdown()&&this.$el_dropdown.val("0"),s=this.maybe_toggle_options()}else{if(i)return!1;var o=this.$el_option_inputs.filter(":checked");if("0"===o.val()){var a=this.$el_option_inputs.filter('[value!="0"]').first();a.prop("checked",!0).trigger("change"),this.has_dropdown()&&this.$el_dropdown.val(a.val())}else e.set_active_scheme(o.val()),this.has_dropdown()&&this.$el_dropdown.val(o.val());s=this.maybe_toggle_options()}if(!s)return!1},dropdown_scheme_changed:function(t){var e=this.$el_dropdown.val();this.$el_option_inputs.filter('[value="'+e+'"]').prop("checked",!0).trigger("change")},active_scheme_changed:function(t){this.model.set_active_scheme(t.currentTarget.value)},variation_found:function(t,e){this.$el.hasClass("variations_form")&&(this.variation=e,"before_add_to_cart_button"===this.variation_options_render_location&&this.$el_content.replaceWith(e.satt_options_html),this.initialize({$el_content:this.$el.find(".wcsatt-options-wrapper")}),"before_add_to_cart_button"===this.variation_options_render_location&&this.$el_option_inputs.length>1&&this.$el_content.slideDown(200))},variation_selected:function(){return!1!==this.variation},reset_schemes:function(){this.$el.hasClass("variations_form")&&(this.variation=!1,"before_add_to_cart_button"===this.variation_options_render_location&&this.$el_content.slideUp(200),this.model.set_schemes({}),this.model.set_active_scheme(!1))},has_schemes:function(){return this.$el_content.length>0},has_prompt:function(t){return this.$el_prompt.length>0&&(!t||t===this.get_prompt_type())},has_dropdown:function(){return this.$el_dropdown&&this.$el_dropdown.length>0},get_prompt_type:function(){return this.$el_prompt.data("prompt_type")},get_prompt_val:function(){var t=!1;return this.has_prompt("radio")||this.has_prompt("checkbox")?((this.has_prompt("checkbox")&&!1===this.$el_prompt.find(".wcsatt-options-prompt-action-input").is(":checked")||this.has_prompt("radio")&&this.$el_prompt.find('.wcsatt-options-prompt-action-input[value="no"]').is(":checked"))&&(t=!0),t?"one-time":"subscribe"):null}
1588,find_schemes:function(){var e={};return this.has_schemes()&&(this.$el_option_items=this.$el_options.find("li"),this.$el_option_inputs=this.$el_options.find("input"),this.$el_option_inputs.filter('[value!="0"]').each(function(){var i=t(this).data("custom_data");e[i.subscription_scheme.key]=i.subscription_scheme})),e},maybe_toggle_options:function(t){var e=this,i=(t=void 0!==t&&t)?0:200;if(!0===e.$el_content.data("animating"))return!1;if(e.$el_content.hasClass("closed")){if(e.$el_content.removeClass("closed").addClass("open"),e.model.get_schemes_count()<2)return e.$el_options.find(".wcsatt-options-product-dropdown, .wcsatt-options-product-dropdown-label").hide(),e.$el_options.show(),!0;t?e.$el_options.show():(e.$el_content.data("animating",!0),setTimeout(function(){e.$el_options.slideDown({duration:i,queue:!1,always:function(){e.$el_content.data("animating",!1)}})},10))}else t?e.$el_options.hide():(e.$el_content.data("animating",!0),setTimeout(function(){e.$el_options.slideUp({duration:i,queue:!1,always:function(){e.$el_content.data("animating",!1)}})},10)),e.$el_content.removeClass("open").addClass("closed");return!0},schemes_visible:function(){return this.$el_content.hasClass("open")},update_button_text:function(){this.model.get_active_scheme_key()?!this.model.get_last_active_scheme_key()&&this.sign_up_button_text&&this.$el_button.text(this.sign_up_button_text):this.model.get_last_active_scheme_key()&&this.$el_button.text(this.add_to_cart_button_text)},update_detail_lines:function(){var t=this.model.get_active_scheme_key(),e=this.model.get("schemes"),i=e&&t?e[t]:null;this.update_detail_line("trial",i&&i.trial_length>0&&i.trial_label?wcsatt_single_product_params.i18n_free_trial_label.replace("%s",i.trial_label):""),this.update_detail_line("signup-fee",i&&i.signup_fee>0&&i.signup_fee_formatted?wcsatt_single_product_params.i18n_signup_fee_label.replace("%s",i.signup_fee_formatted):"")},update_detail_line:function(e,i){var s="woocommerce-subscriptions-apfs-product__"+e,o=this.$el_options.find(".wcsatt-options-product-details"),a=o.find("."+s);i?(a.length||(a=t("<p>").addClass(s),o.append(a)),a.text(i)):a.remove()},initialize:function(t){if(this.variation_options_render_location=t.$el_content.hasClass("wcsatt-options-wrapper--variation")?"before_add_to_cart_button":"price_html",this.$el_content=t.$el_content,this.$el_options=t.$el_content.find(".wcsatt-options-product-wrapper"),this.$el_prompt=t.$el_content.find(".wcsatt-options-product-prompt"),this.$el_dropdown=t.$el_content.find(".wcsatt-options-product-dropdown"),this.model.set_schemes(this.find_schemes()),t.product&&(this.product=t.product,this.$el_button=t.product.$form.find(".single_add_to_cart_button").last(),this.add_to_cart_button_text=this.$el_button.text(),this.listenTo(this.model,"change:active_scheme_key",this.update_button_text),this.listenTo(this.model,"change:active_scheme_key",this.update_detail_lines)),this.has_schemes()){this.sign_up_button_text=this.$el_content.data("sign_up_text");var e=this.$el_option_inputs.filter('[value="'+this.model.get_active_scheme_key()+'"]');if(e.length>0?e.prop("checked",!0):this.$el_option_inputs.filter(":checked").trigger("change"),this.$el_option_inputs.length<=1&&this.$el_content.hide(),this.has_dropdown()&&(this.schemes_visible()?this.$el_options.show():this.$el_options.hide(),this.model.get_active_scheme_key()?(this.schemes_visible()||this.maybe_toggle_options(!0),this.has_prompt("checkbox")?this.$el_prompt.find(".wcsatt-options-prompt-action-input").prop("checked",!0):this.has_prompt("radio")&&this.$el_prompt.find('.wcsatt-options-prompt-action-input[value="yes"]').prop("checked",!0),this.$el_dropdown.val(this.model.get_active_scheme_key())):this.model.get_active_scheme_key()||(this.schemes_visible()&&this.maybe_toggle_options(!0),this.has_prompt("checkbox")?this.$el_prompt.find(".wcsatt-options-prompt-action-input").prop("checked",!1):this.has_prompt("radio")&&this.$el_prompt.find('.wcsatt-options-prompt-action-input[value="no"]').prop("checked",!0))),this.has_dropdown()){var i=this;setTimeout(function(){i.has_prompt("checkbox")?i.$el_prompt.find(".wcsatt-options-prompt-action-input").trigger("change"):i.$el_prompt.find(".wcsatt-options-prompt-action-input").filter(":checked").trigger("change")},10)}}else this.variation_selected()?this.model.set_active_scheme(null):this.model.set_active_scheme(!1)}}))(e)},s=function(e){return new(Backbone.Model.extend({product:!1,xhr:!1,cached_responses:{},set_scheme_key:function(t){this.set({scheme_key:t})},get_scheme_key:function(){return this.get("scheme_key")},get_matching_subscriptions_html:function(){var e=this,i=this.product.schemes_model.get_active_scheme_key();if(this.xhr&&this.xhr.abort(),i=!1===i?"0":i,void 0!==this.cached_responses[i])e.set({html:this.cached_responses[i]}),e.trigger("matching_subscriptions_loaded");else{var s={action:"wcsatt_load_subscriptions_matching_product",product_id:this.product.get_product_id(),subscription_scheme:i};this.xhr=t.post(wcsatt_single_product_params.wc_ajax_url.toString().replace("%%endpoint%%",s.action),s,function(t){"success"===t.result?(e.set({html:t.html}),e.cached_responses[s.subscription_scheme]=t.html):(e.set({html:!1}),e.attributes.scheme_key=!1),e.trigger("matching_subscriptions_loaded")})}},active_scheme_changed:function(){this.xhr&&this.xhr.abort()},initialize:function(t){this.product=t.product,this.set({scheme_key:"",html:!1}),this.listenTo(this.product.schemes_model,"change:active_scheme_key",this.active_scheme_changed),this.on("change:scheme_key",this.get_matching_subscriptions_html)}}))(e)},o=function(t){return new(Backbone.View.extend({$el_content:!1,product:!1,block_params:{message:null,fadeIn:0,fadeOut:0,overlayCSS:{background:"rgba(255, 255, 255, 0)",opacity:1}},events:{"click .wcsatt-add-to-subscription-action-input":"action_link_clicked"},action_link_clicked:function(){var t=this.model,e=this,i=!1;if(this.matching_subscriptions_visible()||this.model.get_scheme_key()===this.product.schemes_model.get_active_scheme_key()?i=this.toggle():(i=!0,this.$el.block(this.block_params),setTimeout(function(){t.set_scheme_key(e.product.schemes_model.get_active_scheme_key())},200)),!i)return!1},active_scheme_changed:function(){var t=this,e=!0;(!1===this.product.schemes_model.get_active_scheme_key()||this.product.schemes_model.active_scheme_requires_upfront_charge())&&(e=!1),e?(t.$el.hasClass("open")&&t.model.get_scheme_key()!==t.product.schemes_model.get_active_scheme_key()&&(t.$el.block(t.block_params),(!1===t.product.schemes_model.get_last_active_scheme_key()||this.product.schemes_model.last_active_scheme_required_upfront_charge())&&t.toggle(!0),setTimeout(function(){t.model.set_scheme_key(t.product.schemes_model.get_active_scheme_key())},250)),setTimeout(function(){t.$el.slideDown(200).removeClass("inactive").addClass("active")},50)):this.$el.slideUp(200).removeClass("active").addClass("inactive")},add_to_subscription_button_clicked:function(t){var e=t.data.view.product.$form.find(".single_add_to_cart_button").last();if(e.hasClass("disabled"))return e.click(),!1},toggle:function(t){var e=this,i=(t=void 0!==t&&t)?0:200;return!0!==e.$el.data("animating")&&(e.$el.hasClass("closed")?(setTimeout(function(){e.$el_content.slideDown({duration:i,queue:!1,always:function(){e.$el.data("animating",!1)}})},10),e.$el.removeClass("closed").addClass("open"),e.$el.data("animating",!0)):(setTimeout(function(){e.$el_content.slideUp({duration:i,queue:!1,always:function(){e.$el.data("animating",!1)}})},10),e.$el.removeClass("open").addClass("closed"),e.$el.data("animating",!0)),!0)},matching_subscriptions_visible:function(){return this.$el_content.is(":visible")},matching_subscriptions_loaded:function(){this.render()},render:function(){var t=this.model.get("html");this.$el.unblock(),!1===t?(window.alert(wcsatt_single_product_params.i18n_subs_load_error),this.matching_subscriptions_visible()&&this.toggle(),this.$el.find("input.wcsatt-add-to-subscription-action-input").prop("checked",!1)):(this.$el_content.html(t),this.matching_subscriptions_visible()||this.toggle())},initialize:function(t){this.product=t.product,this.$el_content=t.$el_content,this.listenTo(this.model,"matching_subscriptions_loaded",this.matching_subscriptions_loaded),this.listenTo(this.product.schemes_model,"change:active_scheme_key",this.active_scheme_changed),this.$el_content.on("click",".wcsatt-add-to-subscription-button",{view:this},this.add_to_subscription_button_clicked)}}))(t)},a=function(t){this.$form=t,this.schemes_model=!1,this.schemes_view=!1,this.matching_subscriptions_model=!1,this.matching_subscriptions_view=!1,this.initialize=function(){this.schemes_model=new e({product:this}),this.matching_subscriptions_model=new s({product:this}),this.schemes_view=new i({product:this,model:this.schemes_model,el:t,$el_content:t.find(".wcsatt-options-wrapper")}),this.matching_subscriptions_view=new o({product:this,model:this.matching_subscriptions_model,el:t.find(".wcsatt-add-to-subscription-wrapper"),$el_content:t.find(".wcsatt-add-to-subscription-options")}),-1!=window.location.href.indexOf("switch-subscription")&&-1!=window.location.href.indexOf("item")&&t.prop("action",""),t.on("submit",{view:this.schemes_view},this.form_submitted),this.pao=new n(this)},this.get_product_id=function(){return t.find(".wcsatt-add-to-subscription-wrapper").data("product_id")},this.form_submitted=function(t){var e=t.data.view;"one-time"===e.get_prompt_val()&&e.$el_option_inputs.filter('[value="0"]').prop("checked",!0)},this.round_number=function(t,e){var i=Math.pow(10,e),s=t*i;return Math.round(s)/i}},n=function(t){var e=this;this.$addons_totals=!1,this.$discount_addons_data=t.$form.find(".wcsatt-pao-data"),this.initialize=function(){if(!t.$form.hasClass("bundle_form")&&!t.$form.hasClass("composite_form")){var e=t.$form.find("#product-addons-total");if(e.length>0&&1==e.data("show-sub-total")){var i="yes"===this.$discount_addons_data.data("discount_addons");this.$addons_totals=e,i?(t.schemes_view.$el_content.insertAfter(e),e.addClass("subscription-detail
1588s-hidden")):t.schemes_view.$el_content.insertBefore(t.$form.find(".wc-pao-addon-container").first()),i||(t.schemes_model.on("change:active_scheme_key",this.active_scheme_changed),t.$form.on("show_variation",this.variation_changed)),t.schemes_model.get_active_scheme_key()&&this.active_scheme_changed()}}},this.active_scheme_changed=function(){var i=!1===t.schemes_model.get_active_scheme_key()?"0":t.schemes_model.get_active_scheme_key(),s=t.schemes_view.$el_options.find('input[value="'+i+'"]').data("custom_data"),o=!!s&&s.display_price,a=!!s&&s.raw_price;!1!==o&&!1!==a&&(e.$addons_totals.data("price",o),e.$addons_totals.data("raw-price",a),t.$form.trigger("woocommerce-product-addons-update"))},this.variation_changed=function(){e.active_scheme_changed()},this.initialize()},c=function(t){if(!t.schemes_view.has_prompt("radio")&&!t.schemes_view.has_prompt("checkbox"))return null;var e=t.schemes_view.$el_prompt.find('.wcsatt-options-prompt-action-input[value="yes"]').closest(".wcsatt-options-prompt-label").find(".wcsatt-options-prompt-action");return e.find(".wcsatt-sub-discount").length>0?e:null},_=function(t,e,i){return"fixed_discount"===t.data.subscription_scheme.pricing_mode?i(e,!0):t.data.subscription_scheme.discount+"%"},r=function(e){var i=this,s=e.$bundle_form.data("satt_script");this.initialize_ui=function(){s.schemes_view.$el_content.length>0&&(!1!==e.$addons_totals?e.$addons_totals.after(s.schemes_view.$el_content):e.$bundle_price.after(s.schemes_view.$el_content))},this.initialize_schemes=function(){e.satt_schemes=[],e.satt_scheme_one_time=!1;var i=s.schemes_view.$el_option_items.filter(".one-time-option");i.length&&(e.satt_scheme_one_time={$el:i,data:i.find("input").data("custom_data")}),s.schemes_view.$el_option_items.filter(".subscription-option").each(function(){var i=t(this),s=i.find("input").data("custom_data");e.satt_schemes.push({$el:i,data:s})})},this.integrate=function(){s.schemes_view.has_schemes()&&(i.initialize_ui(),i.initialize_schemes(),e.satt_schemes.length>0&&(e.$bundle_data.on("woocommerce-product-bundle-updated-totals",i.update_subscription_totals),"no"!==e.price_data.hide_total_on_validation_fail&&e.$bundle_data.on("woocommerce-product-bundle-validation-status-changed",i.maybe_hide_subscription_options)))},this.has_single_forced_susbcription=function(){return 1===e.satt_schemes.length&&!1===e.satt_scheme_one_time},this.maybe_hide_subscription_options=function(){e.passes_validation()?i.has_single_forced_susbcription()||s.schemes_view.$el_content.slideDown(200):s.schemes_view.$el_content.slideUp(200)},this.update_subscription_totals=function(e,o){if(o.passes_validation()||"no"===o.price_data.hide_total_on_validation_fail){var a=o.get_price_html(),n=t(a).html();if(!1!==o.satt_scheme_one_time){var r=o.satt_scheme_one_time.$el.find(".price.one-time-price"),d=o.satt_scheme_one_time.data.option_details_html.replace(/%p/g,n);if(r.length&&r.html(d).find("span.total").remove(),s.schemes_view.has_prompt("radio")||s.schemes_view.has_prompt("checkbox")){var p=s.schemes_view.$el_prompt.find('.wcsatt-options-prompt-action-input[value="no"]').closest(".wcsatt-options-prompt-label").find(".wcsatt-options-prompt-action");p.find(".price").length>0&&p.html(o.satt_scheme_one_time.data.prompt_details_html.replace(/%p/g,n)).find("span.total").remove()}}if(i.has_single_forced_susbcription())o.$bundle_price.find(".price").html(o.satt_schemes[0].data.option_details_html.replace(/%p/g,n));else{var h=c(s),l=0,u=null;t.each(o.satt_schemes,function(e,c){if(c.data.option_has_price||s.schemes_view.has_prompt("radio")||s.schemes_view.has_prompt("checkbox")){var r=t.extend(!0,{},o.price_data),d=a,p=n;if(c.data.subscription_scheme.has_price_filter){if("inherit"===c.data.subscription_scheme.pricing_mode&&c.data.subscription_scheme.discount>0){t.each(o.bundled_items,function(t,e){var i=e.bundled_item_id;c.data.discount_from_regular?r.prices[i]=r.regular_prices[i]*(1-c.data.subscription_scheme.discount/100):(r.regular_prices[i]=r.prices[i],r.prices[i]=r.prices[i]*(1-c.data.subscription_scheme.discount/100)),r.addons_prices[i]=r.addons_prices[i]*(1-c.data.subscription_scheme.discount/100)}),c.data.discount_from_regular?r.base_price=r.base_regular_price*(1-c.data.subscription_scheme.discount/100):r.base_price=r.base_price*(1-c.data.subscription_scheme.discount/100);var m=o.get_addons_raw_price();r.addons_regular_price=o.has_addons()&&"yes"===s.pao.$discount_addons_data.data("discount_addons")?m:0,r.addons_price=o.has_addons()&&"yes"===s.pao.$discount_addons_data.data("discount_addons")?m*(1-c.data.subscription_scheme.discount/100):0}else"override"===c.data.subscription_scheme.pricing_mode&&(r.base_regular_price=Number(c.data.subscription_scheme.regular_price),r.base_price=Number(c.data.subscription_scheme.price));if(r=o.calculate_subtotals(!1,r),r=o.calculate_totals(r),"fixed_discount"===c.data.subscription_scheme.pricing_mode&&c.data.subscription_scheme.discount>
15880&&(r.totals.regular_price=r.totals.price,r.totals.price=Math.max(0,r.totals.price-c.data.subscription_scheme.discount)),d=o.get_price_html(r),p=t(d).html(),h){var f=Math.max(0,r.totals.regular_price-r.totals.price);f>l&&(l=f,u=_(c,f,wc_pb_price_format))}}var v=c.$el.find(".subscription-price"),g=c.data.option_details_html.replace(/%p/g,p);if(c.data.subscription_scheme.is_base&&(s.schemes_view.has_prompt("radio")||s.schemes_view.has_prompt("checkbox"))){var b=s.schemes_view.$el_prompt.find('.wcsatt-options-prompt-action-input[value="yes"]').closest(".wcsatt-options-prompt-label").find(".wcsatt-options-prompt-action");b.find(".subscription-price").length>0&&b.html(c.data.prompt_details_html.replace(/%p/g,p)).find("span.total").remove()}if(c.data.option_has_price&&(v.html(g).find("span.total").remove(),s.schemes_view.has_dropdown())){var w=wc_pb_price_format(r.totals.price,!0),$="";if(w=c.data.dropdown_format.replace("%p",w),c.data.subscription_scheme.has_price_filter)if("inherit"===c.data.subscription_scheme.pricing_mode&&c.data.subscription_scheme.discount>0)$=s.round_number(c.data.subscription_scheme.discount,c.data.dropdown_discount_decimals),w=c.data.dropdown_discounted_format.replace("%d",$).replace("%p",w);else if("fixed_discount"===c.data.subscription_scheme.pricing_mode&&c.data.dropdown_fixed_discounted_format)w=c.data.dropdown_fixed_discounted_format.replace("%p",w);else if(r.totals.regular_price>r.totals.price){var k=wc_pb_price_format(r.totals.regular_price,!0);w=c.data.dropdown_sale_format.replace("%r",k).replace("%p",w)}s.schemes_view.$el_dropdown.find("option[value="+c.data.subscription_scheme.key+"]").text(w)}v.trigger("wcsatt-updated-bundle-price",[d,c,o,i])}}),h&&u&&h.find(".wcsatt-sub-discount").html(u)}}},s&&this.integrate()},d=function(e){var i=this,s=e.$composite_form.data("satt_script");this.initialize_ui=function(){s.schemes_view.$el_content.length>0&&(!1!==e.composite_price_view.$addons_totals?e.composite_price_view.$addons_totals.after(s.schemes_view.$el_content):e.$composite_price.after(s.schemes_view.$el_content))},this.initialize_schemes=function(){e.satt_schemes=[],e.satt_scheme_one_time=!1;var i=s.schemes_view.$el_option_items.filter(".one-time-option");i.length&&(e.satt_scheme_one_time={$el:i,data:i.find("input").data("custom_data")}),s.schemes_view.$el_option_items.filter(".subscription-option").each(function(){var i=t(this),s=i.find("input").data("custom_data");e.satt_schemes.push({$el:i,data:s})})},this.integrate=function(){s.schemes_view.has_schemes()&&(i.initialize_schemes(),e.actions.add_action("initialize_composite",function(){i.initialize_ui(),e.satt_schemes.length>0&&(i.has_single_forced_susbcription()?e.filters.add_filter("composite_price_html",i.filter_price_html,10,i):(e.actions.add_action("composite_totals_changed",i.update_subscription_totals,101,i),"no"!==e.settings.hide_total_on_validation_fail&&(e.actions.add_action("composite_validation_status_changed",i.maybe_hide_subscription_options,101,i),e.actions.add_action("composite_initialized",i.maybe_hide_subscription_options,101,i))))},51,this))},this.has_single_forced_susbcription=function(){return 1===e.satt_schemes.length&&!1===e.satt_scheme_one_time},this.maybe_hide_subscription_options=function(){"pass"===e.api.get_composite_validation_status()?i.has_single_forced_susbcription()||s.schemes_view.$el_content.slideDown(200):s.schemes_view.$el_content.slideUp(200)},this.filter_price_html=function(i,s,o){var a=t(i).html();return'<p class="price">'+e.satt_schemes[0].data.option_details_html.replace(/%p/g,a)+"</p>"},this.update_subscription_totals=function(){if("pass"===e.api.get_composite_validation_status()||"no"===e.settings.hide_total_on_validation_fail){var o=e.composite_price_view.get_price_html(),a=e.data_model.calculate_totals(),n=t(o).html();if(!1!==e.satt_scheme_one_time){var r=e.satt_scheme_one_time.$el.find(".price.one-time-price"),d=e.satt_scheme_one_time.data.option_details_html.replace(/%p/g,n);if(r.length&&r.html(d).find("span.total").remove(),s.schemes_view.has_prompt("radio")||s.schemes_view.has_prompt("checkbox")){var p=s.schemes_view.$el_prompt.find('.wcsatt-options-prompt-action-input[value="no"]').closest(".wcsatt-options-prompt-label").find(".wcsatt-options-prompt-action");p.find(".price").length>0&&p.html(e.satt_scheme_one_time.data.prompt_details_html.replace(/%p/g,n)).find("span.total").remove()}}var h=c(s),l=0,u=null;t.each(e.satt_schemes,function(c,r){if(r.data.option_has_price||s.schemes_view.has_prompt("radio")||s.schemes_view.has_prompt("checkbox")){var d=t.extend(!0,{},e.data_model.price_data),p=o,m=n,f=a;if(r.data.subscription_scheme.has_price_filter){if(i.maybe_add_bundle_totals_filters(r),"inherit"===r.data.subscription_scheme.pricing_mode&&r.data.subscription_scheme.discount>0){t.each(e.get_components(),function(t,e){var i=e.component_id;r.data.discount_from_regular?d.prices[i]=d.regular_prices[i]*(1-r.data.subscription_scheme.discount/100):(d.regular_prices[i]=d.prices[i],d.prices[i]=d.prices[i]*(1-r.data.subscription_scheme.discount/100)),d.addons_prices[i]=d.addons_prices[i]*(1-r.data.subscription_scheme.discount/100)}),r.data.discount_from_regular?d.base_price=d.base_regular_price*(1-r.data.subscription_scheme.discount/100):d.base_price=d.base_price*(1-r.data.subscription_scheme.discount/100);var v=e.composite_price_view.get_addons_raw_price();d.addons_regular_price=e.composite_price_view.has_addons()&&"yes"===s.pao.$discount_addons_data.data("discount_addons")?v:0,d.addons_price=e.composite_price_view.has_addons()&&"yes"===s.pao.$discount_addons_data.data("discount_addons")?v*(1-r.data.subscription_scheme.discount/100):0}else"override"===r.data.subscription_scheme.pricing_mode&&(d.base_regular_price=Number(r.data.subscription_scheme.regular_price),d.base_price=Number(r.data.subscription_scheme.price));if(d=e.data_model.calculate_subtotals(!1,d),i.maybe_remove_bundle_totals_filters(r),f=e.data_model.calculate_totals(d),d.totals=f,"fixed_discount"===r.data.subscription_scheme.pricing_mode&&r.data.subscription_scheme.discount>
15880&&(d.totals.regular_price=d.totals.price,d.totals.price=Math.max(0,d.totals.price-r.data.subscription_scheme.discount)),p=e.composite_price_view.get_price_html(d),m=t(p).html(),h){var g=Math.max(0,d.totals.regular_price-d.totals.price);g>l&&(l=g,u=_(r,g,wc_cp_price_format))}}var b=r.$el.find(".subscription-price"),w=r.data.option_details_html.replace(/%p/g,m);if(r.data.subscription_scheme.is_base&&(s.schemes_view.has_prompt("radio")||s.schemes_view.has_prompt("checkbox"))){var $=s.schemes_view.$el_prompt.find('.wcsatt-options-prompt-action-input[value="yes"]').closest(".wcsatt-options-prompt-label").find(".wcsatt-options-prompt-action");$.find(".subscription-price").length>0&&$.html(r.data.prompt_details_html.replace(/%p/g,m)).find("span.total").remove()}if(r.data.option_has_price&&(b.html(w).find("span.total").remove(),s.schemes_view.has_dropdown())){var k=wc_cp_price_format(f.price,!0),y="";if(k=r.data.dropdown_format.replace("%p",k),r.data.subscription_scheme.has_price_filter)if("inherit"===r.data.subscription_scheme.pricing_mode&&r.data.subscription_scheme.discount>0)y=s.round_number(r.data.subscription_scheme.discount,r.data.dropdown_discount_decimals),k=r.data.dropdown_discounted_format.replace("%d",y).replace("%p",k);else if("fixed_discount"===r.data.subscription_scheme.pricing_mode&&r.data.dropdown_fixed_discounted_format)k=r.data.dropdown_fixed_discounted_format.replace("%p",k);else if(d.totals.regular_price>d.totals.price){var x=wc_cp_price_format(d.totals.regular_price,!0);k=r.data.dropdown_sale_format.replace("%r",x).replace("%p",k)}s.schemes_view.$el_dropdown.find("option[value="+r.data.subscription_scheme.key+"]").text(k)}b.trigger("wcsatt-updated-composite-price",[p,r,e,i])}}),h&&u&&h.find(".wcsatt-sub-discount").html(u)}},this.maybe_add_bundle_totals_filters=function(s){"inherit"===s.data.subscription_scheme.pricing_mode&&s.data.subscription_scheme.discount>0&&t.each(e.get_components(),function(t,e){if("bundle"===e.get_selected_product_type()){var o=e.get_bundle_script();o&&(o.satt_scheme=s,o.filters.add_filter("bundle_totals",i.filter_bundle_totals,10,i))}})},this.maybe_remove_bundle_totals_filters=function(s){"inherit"===s.data.subscription_scheme.pricing_mode&&s.data.subscription_scheme.discount>0&&t.each(e.get_components(),function(t,e){if("bundle"===e.get_selected_product_type()){var s=e.get_bundle_script();s&&(s.satt_scheme=!1,s.filters.remove_filter("bundle_totals",i.filter_bundle_totals))}})},this.filter_bundle_totals=function(e,i,s,o){if(!s.satt_scheme)return e;var a=s.satt_scheme.data,n=a.subscription_scheme.discount,c=t.extend(!0,{},i);return o=void 0===o?s.composite_data.component.get_selected_quantity():o,t.each(s.bundled_items,function(t,e){a.discount_from_regular?c.prices[e.bundled_item_id]=c.regular_prices[e.bundled_item_id]*(1-n/100):c.prices[e.bundled_item_id]=c.prices[e.bundled_item_id]*(1-n/100)}),c.base_price&&(a.discount_from_regular?c.base_price=Number(c.base_regular_price)*(1-n/100):c.base_price=Number(c.base_price)*(1-n/100)),s.satt_scheme=!1,c=s.calculate_subtotals(!1,c,o),(c=s.calculate_totals(c)).totals},this.integrate()};function p(){t(".product form.cart").each(function(){h(t(this))})}function h(t){var e;t.data("satt_script")||((e=new a(t)).initialize(),t.data("satt_script",e))}p(),t(".bundle_form .bundle_data").each(function(){t(this).on("woocommerce-product-bundle-initializing",function(t,e){e.is_composited()||new r(e)})}),t(".composite_form .composite_data").each(function(){t(this).on("wc-composite-initializing",function(t,e){new d(e)})}),t(document.body).on("wcsatt-initialize",function(){p()}),t.fn.wcsatt_initialize=function(){t(this).find(".product form.cart").each(function(){h(t(this))})}}(t),window.wcsatt_cart_params&&function(t){var e=t(document),i=t(document.body);e.on("change",".wcsatt-add-cart-to-subscription-action-input",function(){t("div.cart_totals");var e=t(this),i=e.closest(".wcsatt-add-cart-to-subscription-wrapper"),s=i.find(".wcsatt-add-cart-to-subscription-options");if(e.is(":checked")){i.block({message:null,overlayCSS:{background:"#fff",opacity:.6}});var o={add_to_subscription_checked:e.is(":checked")?"yes":"no",action:"wcsatt_load_subscriptions_matching_cart"};t.post(wcsatt_cart_params.wc_ajax_url.toString().replace("%%endpoint%%",o.action),o,function(t){"success"===t.result?(s.html(t.html),i.removeClass("closed"),i.addClass("open"),s.slideDown(200)):window.alert(wcsatt_cart_params.i18n_subs_load_error),i.unblock()})}else i.removeClass("open"),i.addClass("closed"),s.slideUp(200)}),e.on("click",".woocommerce-checkout .wcsatt-add-to-subscription-button",function(e){e.preventDefault();var s=t(this),o=s.closest(".wcsatt-add-cart-to-subscription-options"),a=t(".woocommerce-checkout form");a.block({message:null,overlayCSS:{background:"#fff",opacity:.6}});var n={"add-cart-to-subscription":parseInt(s.val(),10),"add-to-subscription-checked":"yes",action:"wcsatt_add_cart_to_subscription_from_checkout",wcsatt_nonce:o.find("#wcsatt_nonce").val()};t.post(wcsatt_cart_params.wc_ajax_url.toString().replace("%%endpoint%%",n.action),n,function(t){"success"===t.result?c(t.url)&&(location.href=t.url):i.trigger("update_checkout"),a.unblock()});var c=function(t){try{return new URL(t),!0}catch(t){return!1}}})}(t)})})();
1589document.addEventListener('DOMContentLoaded', function (){
1590document.body.addEventListener('click', function (e){
1591const card=e.target.closest('.course-item');
1592if(!card||e.target.closest('a')) return;
1593const link=card.querySelector('a[href]');
1594if(link){
1595window.location.href=link.href;
1596}});
1597});
1598document.addEventListener('DOMContentLoaded', function(){
1599const menuToggle=document.querySelector('.menu-toggle');
1600const menuContainer=document.querySelector('.mobile-navigation');
1601menuToggle.addEventListener('click', function(){
1602menuContainer.classList.toggle('show');
1603});
1604});
1605document.addEventListener('DOMContentLoaded', ()=> {
1606const track=document.querySelector('.carousel-track');
1607if(!track) return;
1608const items=Array.from(track.children);
1609const nextButton=document.querySelector('.carousel-button.next');
1610const prevButton=document.querySelector('.carousel-button.prev');
1611const pagerDots=document.querySelectorAll('.pager-dot');
1612const firstClone=items[0].cloneNode(true);
1613const lastClone=items[items.length - 1].cloneNode(true);
1614firstClone.classList.add("clone");
1615lastClone.classList.add("clone");
1616track.appendChild(firstClone);
1617track.insertBefore(lastClone, items[0]);
1618const allItems=Array.from(track.children);
1619let currentIndex=1;
1620const getItemWidth=()=> {
1621const item=document.querySelector('.reference-item');
1622const itemStyle=window.getComputedStyle(item);
1623const itemWidth=item.offsetWidth;
1624const margin=parseFloat(itemStyle.marginLeft) + parseFloat(itemStyle.marginRight);
1625return itemWidth + margin;
1626};
1627const updateCarousel=(instant=false)=> {
1628const itemWidth=getItemWidth();
1629if(instant){
1630track.style.transition='none';
1631}else{
1632track.style.transition='transform 0.5s ease';
1633}
1634track.style.transform=`translateX(-${currentIndex * itemWidth}px)`;
1635pagerDots.forEach(dot=> dot.classList.remove('active'));
1636let realIndex=currentIndex - 1;
1637if(realIndex >=items.length){
1638realIndex=0;
1639}else if(realIndex < 0){
1640realIndex=items.length - 1;
1641}
1642pagerDots[realIndex]?.classList.add('active');
1643};
1644const nextSlide=()=> {
1645if(currentIndex >=allItems.length - 1) return;
1646currentIndex++;
1647updateCarousel();
1648if(currentIndex===allItems.length - 1){
1649setTimeout(()=> {
1650track.style.transition="none";
1651currentIndex=1;
1652updateCarousel(true);
1653}, 500);
1654}};
1655const prevSlide=()=> {
1656if(currentIndex <=0) return;
1657currentIndex--;
1658updateCarousel();
1659if(currentIndex===0){
1660setTimeout(()=> {
1661track.style.transition="none";
1662currentIndex=allItems.length - 2;
1663updateCarousel(true);
1664}, 500);
1665}};
1666nextButton.addEventListener('click', nextSlide);
1667prevButton.addEventListener('click', prevSlide);
1668pagerDots.forEach((dot, index)=> {
1669dot.addEventListener('click', ()=> {
1670currentIndex=index + 1;
1671updateCarousel();
1672});
1673});
1674window.addEventListener('resize', updateCarousel);
1675updateCarousel(true);
1676});
1677document.addEventListener('DOMContentLoaded', ()=> {
1678const galleries=document.querySelectorAll('.my-gallery-carousel');
1679if(!galleries.length) return;
1680galleries.forEach(gallery=> {
1681const track=gallery.querySelector('.carousel-track');
1682const items=Array.from(track.children);
1683const nextButton=gallery.querySelector('.carousel-button.next');
1684const prevButton=gallery.querySelector('.carousel-button.prev');
1685if(!track||items.length===0) return;
1686const firstClone=items[0].cloneNode(true);
1687const lastClone=items[items.length - 1].cloneNode(true);
1688firstClone.classList.add('clone');
1689lastClone.classList.add('clone');
1690track.appendChild(firstClone);
1691track.insertBefore(lastClone, items[0]);
1692const allItems=Array.from(track.children);
1693let currentIndex=1;
1694const getItemWidth=()=> {
1695const item=track.querySelector('.gallery-item');
1696const itemStyle=window.getComputedStyle(item);
1697const itemWidth=item.offsetWidth;
1698const gap=parseFloat(itemStyle.marginLeft) + parseFloat(itemStyle.marginRight);
1699return itemWidth + gap;
1700};
1701const slidesPerView=()=> {
1702return window.innerWidth < 768 ? 1:3;
1703};
1704const updateCarousel=(instant=false)=> {
1705const itemWidth=getItemWidth();
1706const visibleItems=slidesPerView();
1707const translateX=currentIndex * itemWidth;
1708track.style.transition=instant ? 'none':'transform 0.5s ease';
1709track.style.transform=`translateX(-${translateX}px)`;
1710};
1711const nextSlide=()=> {
1712currentIndex++;
1713updateCarousel();
1714if(currentIndex >=allItems.length - 1){
1715setTimeout(()=> {
1716track.style.transition='none';
1717currentIndex=1;
1718updateCarousel(true);
1719}, 500);
1720}};
1721const prevSlide=()=> {
1722currentIndex--;
1723updateCarousel();
1724if(currentIndex <=0){
1725setTimeout(()=> {
1726track.style.transition='none';
1727currentIndex=allItems.length - 2;
1728updateCarousel(true);
1729}, 500);
1730}};
1731if(nextButton) nextButton.addEventListener('click', nextSlide);
1732if(prevButton) prevButton.addEventListener('click', prevSlide);
1733window.addEventListener('resize', updateCarousel);
1734updateCarousel(true);
1735});
1736});
1737document.addEventListener("DOMContentLoaded", function (){
1738const filterBoxes=document.querySelectorAll(".filter-box");
1739filterBoxes.forEach(filterBox=> {
1740const filterToggle=filterBox.querySelector(".filter-toggle");
1741const filterContainer=filterBox.querySelector(".filter-box-container");
1742filterToggle.addEventListener("click", function (){
1743filterBox.classList.toggle("open");
1744filterContainer.style.display=filterContainer.style.display==="block" ? "none":"block";
1745});
1746});
1747});
1748document.addEventListener("DOMContentLoaded", function (){
1749const toggleBtn=document.querySelector(".toggle-review");
1750const reviewWrapper=document.getElementById("review_form_wrapper");
1751if(toggleBtn&&reviewWrapper){
1752toggleBtn.addEventListener("click", function (e){
1753e.preventDefault();
1754reviewWrapper.style.display="block";
1755reviewWrapper.scrollIntoView({
1756behavior: "smooth",
1757block: "start"
1758});
1759});
1760}});
1761document.addEventListener('DOMContentLoaded', function (){
1762const loadMoreBtn=document.getElementById('load-more-reviews');
1763const reviewList=document.getElementById('review-list');
1764if(loadMoreBtn&&reviewList){
1765loadMoreBtn.addEventListener('click', function (){
1766const productId=reviewList.dataset.productId;
1767let offset=parseInt(reviewList.dataset.offset);
1768loadMoreBtn.disabled=true;
1769loadMoreBtn.textContent='Načítám...';
1770fetch(`${ajax_object.ajax_url}?action=load_more_reviews&product_id=${productId}&offset=${offset}`)
1771.then(response=> response.json())
1772.then(data=> {
1773reviewList.insertAdjacentHTML('beforeend', data.html);
1774offset +=10;
1775reviewList.dataset.offset=offset;
1776if(!data.more){
1777loadMoreBtn.remove();
1778}else{
1779loadMoreBtn.disabled=false;
1780loadMoreBtn.textContent='Načíst další recenze';
1781}});
1782});
1783}});
1784(function (){
1785'use strict';
1786document.addEventListener('DOMContentLoaded', function (){
1787const checkbox=document.querySelector('#billing_iscomp');
1788if(!checkbox){
1789return;
1790}
1791const businessFields=document.querySelectorAll('.woolab-ic-dic-toggle, #billing_address_1_field, #billing_city_field, #billing_postcode_field'
1792);
1793function toggleBusinessFields(){
1794businessFields.forEach(function (field){
1795field.style.setProperty('display', checkbox.checked ? 'block':'none', 'important');
1796});
1797}
1798toggleBusinessFields();
1799checkbox.addEventListener('change', toggleBusinessFields);
1800});
1801})();
1802!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.sbjs=e()}}(function(){return function e(t,r,n){function a(s,o){if(!r[s]){if(!t[s]){var c="function"==typeof require&&require;if(!o&&c)return c(s,!0);if(i)return i(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var p=r[s]={exports:{}};t[s][0].call(p.exports,function(e){var r=t[s][1][e];return a(r||e)},p,p.exports,e,t,r,n)}return r[s].exports}for(var i="function"==typeof require&&require,s=0;s<n.length;s++)a(n[s]);return a}({1:[function(e,t,r){"use strict";var n=e("./init"),a={init:function(e){this.get=n(e),e&&e.callback&&"function"==typeof e.callback&&e.callback(this.get)}};t.exports=a},{"./init":6}],2:[function(e,t,r){"use strict";var n=e("./terms"),a=e("./helpers/utils"),i={containers:{current:"sbjs_current",current_extra:"sbjs_current_add",first:"sbjs_first",first_extra:"sbjs_first_add",session:"sbjs_session",udata:"sbjs_udata",promocode:"sbjs_promo"},service:{migrations:"sbjs_migrations"},delimiter:"|||",aliases:{main:{type:"typ",source:"src",medium:"mdm",campaign:"cmp",content:"cnt",term:"trm",id:"id",platform:"plt",format:"fmt",tactic:"tct"},extra:{fire_date:"fd",entrance_point:"ep",referer:"rf"},session:{pages_seen:"pgs",current_page:"cpg"},udata:{visits:"vst",ip:"uip",agent:"uag"},promo:"code"},pack:{main:function(e){return i.aliases.main.type+"="+e.type+i.delimiter+i.aliases.main.source+"="+e.source+i.delimiter+i.aliases.main.medium+"="+e.medium+i.delimiter+i.aliases.main.campaign+"="+e.campaign+i.delimiter+i.aliases.main.content+"="+e.content+i.delimiter+i.aliases.main.term+"="+e.term+i.delimiter+i.aliases.main.id+"="+e.id+i.delimiter+i.aliases.main.platform+"="+e.platform+i.delimiter+i.aliases.main.format+"="+e.format+i.delimiter+i.aliases.main.tactic+"="+e.tactic},extra:function(e){return i.aliases.extra.fire_date+"="+a.setDate(new Date,e)+i.delimiter+i.aliases.extra.entrance_point+"="+document.location.href+i.delimiter+i.aliases.extra.referer+"="+(document.referrer||n.none)},user:function(e,t){return i.aliases.udata.visits+"="+e+i.delimiter+i.aliases.udata.ip+"="+t+i.delimiter+i.aliases.udata.agent+"="+navigator.userAgent},session:function(e){return i.aliases.session.pages_seen+"="+e+i.delimiter+i.aliases.session.current_page+"="+document.location.href},promo:function(e){return i.aliases.promo+"="+a.setLeadingZeroToInt(a.randomInt(e.min,e.max),e.max.toString().length)}}};t.exports=i},{"./helpers/utils":5,"./terms":9}],3:[function(e,t,r){"use strict";var n=e("../data").delimiter;t.exports={useBase64:!1,setBase64Flag:function(e){this.useBase64=e},encodeData:function(e){return encodeURIComponent(e).replace(/\!/g,"%21").replace(/\~/g,"%7E").replace(/\*/g,"%2A").replace(/\'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29")},decodeData:function(e){try{return decodeURIComponent(e).replace(/\%21/g,"!").replace(/\%7E/g,"~").replace(/\%2A/g,"*").replace(/\%27/g,"'").replace(/\%28/g,"(").replace(/\%29/g,")")}catch(t){try{return unescape(e)}catch(r){return""}}},set:function(e,t,r,n,a){var i,s;if(r){var o=new Date;o.setTime(o.getTime()+60*r*1e3),i="; expires="+o.toGMTString()}else i="";s=n&&!a?";domain=."+n:"";var c=this.encodeData(t);this.useBase64&&(c=btoa(c).replace(/=+$/,"")),document.cookie=this.encodeData(e)+"="+c+i+s+"; path=/"},get:function(e){for(var t=this.encodeData(e)+"=",r=document.cookie.split(";"),n=0;n<r.length;n++){for(var a=r[n];" "===a.charAt(0);)a=a.substring(1,a.length);if(0===a.indexOf(t)){var i=a.substring(t.length,a.length);if(/^[A-Za-z0-9+/]+$/.test(i))try{i=atob(i.padEnd(4*Math.ceil(i.length/4),"="))}catch(s){}return this.decodeData(i)}}return null},destroy:function(e,t,r){this.set(e,"",-1,t,r)},parse:function(e){var t=[],r={};if("string"==typeof e)t.push(e);
vendor: 8,661 bytes, line 1802
1802else for(var a in e)e.hasOwnProperty(a)&&t.push(e[a]);for(var i=0;i<t.length;i++){var s;r[this.unsbjs(t[i])]={},s=this.get(t[i])?this.get(t[i]).split(n):[];for(var o=0;o<s.length;o++){var c=s[o].split("="),u=c.splice(0,1);u.push(c.join("=")),r[this.unsbjs(t[i])][u[0]]=this.decodeData(u[1])}}return r},unsbjs:function(e){return e.replace("sbjs_","")}}},{"../data":2}],4:[function(e,t,r){"use strict";t.exports={parse:function(e){for(var t=this.parseOptions,r=t.parser[t.strictMode?"strict":"loose"].exec(e),n={},a=14;a--;)n[t.key[a]]=r[a]||"";return n[t.q.name]={},n[t.key[12]].replace(t.q.parser,function(e,r,a){r&&(n[t.q.name][r]=a)}),n},parseOptions:{strictMode:!1,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}},getParam:function(e){for(var t={},r=(e||window.location.search.substring(1)).split("&"),n=0;n<r.length;n++){var a=r[n].split("=");if("undefined"==typeof t[a[0]])t[a[0]]=a[1];else if("string"==typeof t[a[0]]){var i=[t[a[0]],a[1]];t[a[0]]=i}else t[a[0]].push(a[1])}return t},getHost:function(e){return this.parse(e).host.replace("www.","")}}},{}],5:[function(e,t,r){"use strict";t.exports={escapeRegexp:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},setDate:function(e,t){var r=e.getTimezoneOffset()/60,n=e.getHours(),a=t||0===t?t:-r;return e.setHours(n+r+a),e.getFullYear()+"-"+this.setLeadingZeroToInt(e.getMonth()+1,2)+"-"+this.setLeadingZeroToInt(e.getDate(),2)+" "+this.setLeadingZeroToInt(e.getHours(),2)+":"+this.setLeadingZeroToInt(e.getMinutes(),2)+":"+this.setLeadingZeroToInt(e.getSeconds(),2)},setLeadingZeroToInt:function(e,t){for(var r=e+"";r.length<t;)r="0"+r;return r},randomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e}}},{}],6:[function(e,t,r){"use strict";var n=e("./data"),a=e("./terms"),i=e("./helpers/cookies"),s=e("./helpers/uri"),o=e("./helpers/utils"),c=e("./params"),u=e("./migrations");t.exports=function(e){var t,r,p,f,m,d,l,g,h,y,_,v,b,x=c.fetch(e),k=s.getParam(),w=x.domain.host,q=x.domain.isolate,I=x.lifetime;function j(e){switch(e){case a.traffic.utm:t=a.traffic.utm,r="undefined"!=typeof k.utm_source?k.utm_source:"undefined"!=typeof k.gclid?"google":"undefined"!=typeof k.yclid?"yandex":a.none,p="undefined"!=typeof k.utm_medium?k.utm_medium:"undefined"!=typeof k.gclid?"cpc":"undefined"!=typeof k.yclid?"cpc":a.none,f="undefined"!=typeof k.utm_campaign?k.utm_campaign:"undefined"!=typeof k[x.campaign_param]?k[x.campaign_param]:"undefined"!=typeof k.gclid?"google_cpc":"undefined"!=typeof k.yclid?"yandex_cpc":a.none,m="undefined"!=typeof k.utm_content?k.utm_content:"undefined"!=typeof k[x.content_param]?k[x.content_param]:a.none,l=k.utm_id||a.none,g=k.utm_source_platform||a.none,h=k.utm_creative_format||a.none,y=k.utm_marketing_tactic||a.none,d="undefined"!=typeof k.utm_term?k.utm_term:"undefined"!=typeof k[x.term_param]?k[x.term_param]:function(){var e=document.referrer;if(k.utm_term)return k.utm_term;if(!(e&&s.parse(e).host&&s.parse(e).host.match(/^(?:.*\.)?yandex\..{2,9}$/i)))return!1;try{return s.getParam(s.parse(document.referrer).query).text}catch(t){return!1}}()||a.none;break;case a.traffic.organic:t=a.traffic.organic,r=r||s.getHost(document.referrer),p=a.referer.organic,f=a.none,m=a.none,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;case a.traffic.referral:t=a.traffic.referral,r=r||s.getHost(document.referrer),p=p||a.referer.referral,f=a.none,m=s.parse(document.referrer).path,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;case a.traffic.typein:t=a.traffic.typein,r=x.typein_attributes.source,p=x.typein_attributes.medium,f=a.none,m=a.none,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;default:t=a.oops,r=a.oops,p=a.oops,f=a.oops,m=a.oops,d=a.oops,l=a.oops,g=a.oops,h=a.oops,y=a.oops}var i={type:t,source:r,medium:p,campaign:f,content:m,term:d,id:l,platform:g,format:h,tactic:y};return n.pack.main(i)}function R(e){var t=document.referrer;switch(e){case a.traffic.organic:return!!t&&H(t)&&function(e){var t=new RegExp("^(?:.*\\.)?"+o.escapeRegexp("yandex")+"\\..{2,9}$"),n=new RegExp(".*"+o.escapeRegexp("text")+"=.*"),a=new RegExp("^(?:www\\.)?"+o.escapeRegexp("google")+"\\..{2,9}$");if(s.parse(e).query&&s.parse(e).host.match(t)&&s.parse(e).query.match(n))return r="yandex",!0;if(s.parse(e).host.match(a))return r="google",!0;if(!s.parse(e).query)return!1;for(var i=0;i<x.organics.length;i++){if(s.parse(e).host.match(new RegExp("^(?:.*\\.)?"+o.escapeRegexp(x.organics[i].host)+"$","i"))&&s.parse(e).query.match(new RegExp(".*"+o.escapeRegexp(x.organics[i].param)+"=.*","i")))return r=x.organics[i].display||x.organics[i].host,!0;if(i+1===x.organics.length)return!1}}(t);case a.traffic.referral:return!!t&&H(t)&&function(e){if(!(x.referrals.length>0))return r=s.getHost(e),!0;for(var t=0;t<x.referrals.length;t++){if(s.parse(e).host.match(new RegExp("^(?:.*\\.)?"+o.escapeRegexp(x.referrals[t].host)+"$","i")))return r=x.referrals[t].display||x.referrals[t].host,p=x.referrals[t].medium||a.referer.referral,!0;if(t+1===x.referrals.length)return r=s.getHost(e),!0}}(t);default:return!1}}function H(e){if(x.domain){if(q)return s.getHost(e)!==s.getHost(w);var t=new RegExp("^(?:.*\\.)?"+o.escapeRegexp(w)+"$","i");return!s.getHost(e).match(t)}return s.getHost(e)!==s.getHost(document.location.href)}function D(){i.set(n.containers.current_extra,n.pack.extra(x.timezone_offset),I,w,q),i.get(n.containers.first_extra)||i.set(n.containers.first_extra,n.pack.extra(x.timezone_offset),I,w,q)}return i.setBase64Flag(x.base64),u.go(I,w,q),i.set(n.containers.current,function(){var e;if("undefined"!=typeof k.utm_source||"undefined"!=typeof k.utm_medium||"undefined"!=typeof k.utm_campaign||"undefined"!=typeof k.utm_content||"undefined"!=typeof k.utm_term||"undefined"!=typeof k.utm_id||"undefined"!=typeof k.utm_source_platform||"undefined"!=typeof k.utm_creative_format||"undefined"!=typeof k.utm_marketing_tactic||"undefined"!=typeof k.gclid||"undefined"!=typeof k.yclid||"undefined"!=typeof k[x.campaign_param]||"undefined"!=typeof k[x.term_param]||"undefined"!=typeof k[x.content_param])D(),e=j(a.traffic.utm);else if(R(a.traffic.organic))D(),e=j(a.traffic.organic);else if(!i.get(n.containers.session)&&R(a.traffic.referral))D(),e=j(a.traffic.referral);else{if(i.get(n.containers.first)||i.get(n.containers.current))return i.get(n.containers.current);D(),e=j(a.traffic.typein)}return e}(),I,w,q),i.get(n.containers.first)||i.set(n.containers.first,i.get(n.containers.current),I,w,q),i.get(n.containers.udata)?(_=parseInt(i.parse(n.containers.udata)[i.unsbjs(n.containers.udata)][n.aliases.udata.visits])||1,_=i.get(n.containers.session)?_:_+1,v=n.pack.user(_,x.user_ip)):(_=1,v=n.pack.user(_,x.user_ip)),i.set(n.containers.udata,v,I,w,q),i.get(n.containers.session)?(b=parseInt(i.parse(n.containers.session)[i.unsbjs(n.containers.session)][n.aliases.session.pages_seen])||1,b+=1):b=1,i.set(n.containers.session,n.pack.session(b),x.session_length,w,q),x.promocode&&!i.get(n.containers.promocode)&&i.set(n.containers.promocode,n.pack.promo(x.promocode),I,w,q),i.parse(n.containers)}},{"./data":2,"./helpers/cookies":3,"./helpers/uri":4,"./helpers/utils":5,"./migrations":7,"./params":8,"./terms":9}],7:[function(e,t,r){"use strict";var n=e("./data"),a=e("./helpers/cookies");t.exports={go:function(e,t,r){var i,s=this.migrations,o={l:e,d:t,i:r};if(a.get(n.containers.first)||a.get(n.service.migrations)){if(!a.get(n.service.migrations))for(i=0;i<s.length;i++)s[i].go(s[i].id,o)}else{var c=[];for(i=0;i<s.length;i++)c.push(s[i].id);var u="";for(i=0;i<c.length;i++)u+=c[i]+"=1",i<c.length-1&&(u+=n.delimiter);a.set(n.service.migrations,u,o.l,o.d,o.i)}},migrations:[{id:"1418474375998",version:"1.0.0-beta",go:function(e,t){var r=e+"=1",i=e+"=0",s=function(e,t,r){return t||r?e:n.delimiter};try{var o=[];for(var c in n.containers)n.containers.hasOwnProperty(c)&&o.push(n.containers[c]);for(var u=0;u<o.length;u++)if(a.get(o[u])){var p=a.get(o[u]).replace(/(\|)?\|(\|)?/g,s);a.destroy(o[u],t.d,t.i),a.destroy(o[u],t.d,!t.i),a.set(o[u],p,t.l,t.d,t.i)}a.get(n.containers.session)&&a.set(n.containers.session,n.pack.session(0),t.l,t.d,t.i),a.set(n.service.migrations,r,t.l,t.d,t.i)}catch(f){a.set(n.service.migrations,i,t.l,t.d,t.i)}}}]}}
1802,{"./data":2,"./helpers/cookies":3}],8:[function(e,t,r){"use strict";var n=e("./terms"),a=e("./helpers/uri");t.exports={fetch:function(e){var t=e||{},r={};if(r.lifetime=this.validate.checkFloat(t.lifetime)||6,r.lifetime=parseInt(30*r.lifetime*24*60),r.session_length=this.validate.checkInt(t.session_length)||30,r.timezone_offset=this.validate.checkInt(t.timezone_offset),r.base64=t.base64||!1,r.campaign_param=t.campaign_param||!1,r.term_param=t.term_param||!1,r.content_param=t.content_param||!1,r.user_ip=t.user_ip||n.none,t.promocode?(r.promocode={},r.promocode.min=parseInt(t.promocode.min)||1e5,r.promocode.max=parseInt(t.promocode.max)||999999):r.promocode=!1,t.typein_attributes&&t.typein_attributes.source&&t.typein_attributes.medium?(r.typein_attributes={},r.typein_attributes.source=t.typein_attributes.source,r.typein_attributes.medium=t.typein_attributes.medium):r.typein_attributes={source:"(direct)",medium:"(none)"},t.domain&&this.validate.isString(t.domain)?r.domain={host:t.domain,isolate:!1}:t.domain&&t.domain.host?r.domain=t.domain:r.domain={host:a.getHost(document.location.hostname),isolate:!1},r.referrals=[],t.referrals&&t.referrals.length>0)for(var i=0;i<t.referrals.length;i++)t.referrals[i].host&&r.referrals.push(t.referrals[i]);if(r.organics=[],t.organics&&t.organics.length>0)for(var s=0;s<t.organics.length;s++)t.organics[s].host&&t.organics[s].param&&r.organics.push(t.organics[s]);return r.organics.push({host:"bing.com",param:"q",display:"bing"}),r.organics.push({host:"yahoo.com",param:"p",display:"yahoo"}),r.organics.push({host:"about.com",param:"q",display:"about"}),r.organics.push({host:"aol.com",param:"q",display:"aol"}),r.organics.push({host:"ask.com",param:"q",display:"ask"}),r.organics.push({host:"globososo.com",param:"q",display:"globo"}),r.organics.push({host:"go.mail.ru",param:"q",display:"go.mail.ru"}),r.organics.push({host:"rambler.ru",param:"query",display:"rambler"}),r.organics.push({host:"tut.by",param:"query",display:"tut.by"}),r.referrals.push({host:"t.co",display:"twitter.com"}),r.referrals.push({host:"plus.url.google.com",display:"plus.google.com"}),r},validate:{checkFloat:function(e){return!(!e||!this.isNumeric(parseFloat(e)))&&parseFloat(e)},checkInt:function(e){return!(!e||!this.isNumeric(parseInt(e)))&&parseInt(e)},isNumeric:function(e){return!isNaN(e)},isString:function(e){return"[object String]"===Object.prototype.toString.call(e)}}}},{"./helpers/uri":4,"./terms":9}],9:[function(e,t,r){"use strict";t.exports={traffic:{utm:"utm",organic:"organic",referral:"referral",typein:"typein"},referer:{referral:"referral",organic:"organic",social:"social"},none:"(none)",oops:"(Houston, we have a problem)"}},{}]},{},[1])(1)});
1803!function(t){"use strict";const e=t.params,n=(document.querySelector.bind(document),(t,e)=>e.split(".").reduce((t,e)=>t&&t[e],t)),i=()=>null,s=t=>null===t||t===undefined?"":t,o="wc/store/checkout";function a(t){document.querySelectorAll("wc-order-attribution-inputs").forEach((t,e)=>{e>0&&t.remove()});for(const e of document.querySelectorAll("wc-order-attribution-inputs"))e.values=t}function r(t){window.wp&&window.wp.data&&window.wp.data.dispatch&&window.wc&&window.wc.wcBlocksData&&window.wp.data.dispatch(window.wc.wcBlocksData.CHECKOUT_STORE_KEY).setExtensionData("woocommerce/order-attribution",t,!0)}function c(){return"undefined"!=typeof sbjs}function d(){if(window.wp&&window.wp.data&&"function"==typeof window.wp.data.subscribe){const e=window.wp.data.subscribe(function(){e(),r(t.getAttributionData())},o)}}t.getAttributionData=function(){const s=e.allowTracking&&c()?n:i,o=c()?sbjs.get:{},a=Object.entries(t.fields).map(([t,e])=>[t,s(o,e)]);return Object.fromEntries(a)},t.setOrderTracking=function(n){if(e.allowTracking=n,n){if(!c())return;sbjs.init({lifetime:Number(e.lifetime),session_length:Number(e.session),base64:Boolean(e.base64),timezone_offset:"0"})}else!function(){const t=window.location.hostname;["sbjs_current","sbjs_current_add","sbjs_first","sbjs_first_add","sbjs_session","sbjs_udata","sbjs_migrations","sbjs_promo"].forEach(e=>{document.cookie=`${e}=; path=/; max-age=-999; domain=.${t};`})}();const i=t.getAttributionData();a(i),r(i)},t.setOrderTracking(e.allowTracking),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",d):d(),window.customElements.define("wc-order-attribution-inputs",class extends HTMLElement{constructor(){if(super(),this._fieldNames=Object.keys(t.fields),this.hasOwnProperty("_values")){let t=this.values;delete this.values,this.values=t||{}}}connectedCallback(){this.innerHTML="";const t=new DocumentFragment;for(const n of this._fieldNames){const i=document.createElement("input");i.type="hidden",i.name=`${e.prefix}${n}`,i.value=s(this.values&&this.values[n]||""),t.appendChild(i)}this.appendChild(t)}set values(t){if(this._values=t,this.isConnected)for(const t of this._fieldNames){const n=this.querySelector(`input[name="${e.prefix}${t}"]`);n?n.value=s(this.values[t]):console.warn(`Field "${t}" not found. `+"Most likely, the '<wc-order-attribution-inputs>' element was manipulated.")}}get values(){return this._values}})}(window.wc_order_attribution);

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