/*! * Bootstrap v3.4.1 (https://getbootstrap.com/) * Copyright 2011-2019 Twitter, Inc. * Licensed under the MIT license */ if ('undefined' == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); !(function (t) { 'use strict'; var e = jQuery.fn.jquery.split(' ')[0].split('.'); if ( (e[0] < 2 && e[1] < 9) || (1 == e[0] && 9 == e[1] && e[2] < 1) || 3 < e[0] ) throw new Error( "Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4" ); })(), (function (n) { 'use strict'; (n.fn.emulateTransitionEnd = function (t) { var e = !1, i = this; n(this).one('bsTransitionEnd', function () { e = !0; }); return ( setTimeout(function () { e || n(i).trigger(n.support.transition.end); }, t), this ); }), n(function () { (n.support.transition = (function o() { var t = document.createElement('bootstrap'), e = { WebkitTransition: 'webkitTransitionEnd', MozTransition: 'transitionend', OTransition: 'oTransitionEnd otransitionend', transition: 'transitionend', }; for (var i in e) if (t.style[i] !== undefined) return { end: e[i] }; return !1; })()), n.support.transition && (n.event.special.bsTransitionEnd = { bindType: n.support.transition.end, delegateType: n.support.transition.end, handle: function (t) { if (n(t.target).is(this)) return t.handleObj.handler.apply(this, arguments); }, }); }); })(jQuery), (function (s) { 'use strict'; var e = '[data-dismiss="alert"]', a = function (t) { s(t).on('click', e, this.close); }; (a.VERSION = '3.4.1'), (a.TRANSITION_DURATION = 150), (a.prototype.close = function (t) { var e = s(this), i = e.attr('data-target'); i || (i = (i = e.attr('href')) && i.replace(/.*(?=#[^\s]*$)/, '')), (i = '#' === i ? [] : i); var o = s(document).find(i); function n() { o.detach().trigger('closed.bs.alert').remove(); } t && t.preventDefault(), o.length || (o = e.closest('.alert')), o.trigger((t = s.Event('close.bs.alert'))), t.isDefaultPrevented() || (o.removeClass('in'), s.support.transition && o.hasClass('fade') ? o .one('bsTransitionEnd', n) .emulateTransitionEnd(a.TRANSITION_DURATION) : n()); }); var t = s.fn.alert; (s.fn.alert = function o(i) { return this.each(function () { var t = s(this), e = t.data('bs.alert'); e || t.data('bs.alert', (e = new a(this))), 'string' == typeof i && e[i].call(t); }); }), (s.fn.alert.Constructor = a), (s.fn.alert.noConflict = function () { return (s.fn.alert = t), this; }), s(document).on('click.bs.alert.data-api', e, a.prototype.close); })(jQuery), (function (s) { 'use strict'; var n = function (t, e) { (this.$element = s(t)), (this.options = s.extend({}, n.DEFAULTS, e)), (this.isLoading = !1); }; function i(o) { return this.each(function () { var t = s(this), e = t.data('bs.button'), i = 'object' == typeof o && o; e || t.data('bs.button', (e = new n(this, i))), 'toggle' == o ? e.toggle() : o && e.setState(o); }); } (n.VERSION = '3.4.1'), (n.DEFAULTS = { loadingText: 'loading...' }), (n.prototype.setState = function (t) { var e = 'disabled', i = this.$element, o = i.is('input') ? 'val' : 'html', n = i.data(); (t += 'Text'), null == n.resetText && i.data('resetText', i[o]()), setTimeout( s.proxy(function () { i[o](null == n[t] ? this.options[t] : n[t]), 'loadingText' == t ? ((this.isLoading = !0), i.addClass(e).attr(e, e).prop(e, !0)) : this.isLoading && ((this.isLoading = !1), i.removeClass(e).removeAttr(e).prop(e, !1)); }, this), 0 ); }), (n.prototype.toggle = function () { var t = !0, e = this.$element.closest('[data-toggle="buttons"]'); if (e.length) { var i = this.$element.find('input'); 'radio' == i.prop('type') ? (i.prop('checked') && (t = !1), e.find('.active').removeClass('active'), this.$element.addClass('active')) : 'checkbox' == i.prop('type') && (i.prop('checked') !== this.$element.hasClass('active') && (t = !1), this.$element.toggleClass('active')), i.prop('checked', this.$element.hasClass('active')), t && i.trigger('change'); } else this.$element.attr('aria-pressed', !this.$element.hasClass('active')), this.$element.toggleClass('active'); }); var t = s.fn.button; (s.fn.button = i), (s.fn.button.Constructor = n), (s.fn.button.noConflict = function () { return (s.fn.button = t), this; }), s(document) .on( 'click.bs.button.data-api', '[data-toggle^="button"]', function (t) { var e = s(t.target).closest('.btn'); i.call(e, 'toggle'), s(t.target).is('input[type="radio"], input[type="checkbox"]') || (t.preventDefault(), e.is('input,button') ? e.trigger('focus') : e .find('input:visible,button:visible') .first() .trigger('focus')); } ) .on( 'focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (t) { s(t.target) .closest('.btn') .toggleClass('focus', /^focus(in)?$/.test(t.type)); } ); })(jQuery), (function (p) { 'use strict'; var c = function (t, e) { (this.$element = p(t)), (this.$indicators = this.$element.find('.carousel-indicators')), (this.options = e), (this.paused = null), (this.sliding = null), (this.interval = null), (this.$active = null), (this.$items = null), this.options.keyboard && this.$element.on('keydown.bs.carousel', p.proxy(this.keydown, this)), 'hover' == this.options.pause && !('ontouchstart' in document.documentElement) && this.$element .on('mouseenter.bs.carousel', p.proxy(this.pause, this)) .on('mouseleave.bs.carousel', p.proxy(this.cycle, this)); }; function r(n) { return this.each(function () { var t = p(this), e = t.data('bs.carousel'), i = p.extend({}, c.DEFAULTS, t.data(), 'object' == typeof n && n), o = 'string' == typeof n ? n : i.slide; e || t.data('bs.carousel', (e = new c(this, i))), 'number' == typeof n ? e.to(n) : o ? e[o]() : i.interval && e.pause().cycle(); }); } (c.VERSION = '3.4.1'), (c.TRANSITION_DURATION = 600), (c.DEFAULTS = { interval: 5e3, pause: 'hover', wrap: !0, keyboard: !0 }), (c.prototype.keydown = function (t) { if (!/input|textarea/i.test(t.target.tagName)) { switch (t.which) { case 37: this.prev(); break; case 39: this.next(); break; default: return; } t.preventDefault(); } }), (c.prototype.cycle = function (t) { return ( t || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval( p.proxy(this.next, this), this.options.interval )), this ); }), (c.prototype.getItemIndex = function (t) { return ( (this.$items = t.parent().children('.item')), this.$items.index(t || this.$active) ); }), (c.prototype.getItemForDirection = function (t, e) { var i = this.getItemIndex(e); if ( (('prev' == t && 0 === i) || ('next' == t && i == this.$items.length - 1)) && !this.options.wrap ) return e; var o = (i + ('prev' == t ? -1 : 1)) % this.$items.length; return this.$items.eq(o); }), (c.prototype.to = function (t) { var e = this, i = this.getItemIndex( (this.$active = this.$element.find('.item.active')) ); if (!(t > this.$items.length - 1 || t < 0)) return this.sliding ? this.$element.one('slid.bs.carousel', function () { e.to(t); }) : i == t ? this.pause().cycle() : this.slide(i < t ? 'next' : 'prev', this.$items.eq(t)); }), (c.prototype.pause = function (t) { return ( t || (this.paused = !0), this.$element.find('.next, .prev').length && p.support.transition && (this.$element.trigger(p.support.transition.end), this.cycle(!0)), (this.interval = clearInterval(this.interval)), this ); }), (c.prototype.next = function () { if (!this.sliding) return this.slide('next'); }), (c.prototype.prev = function () { if (!this.sliding) return this.slide('prev'); }), (c.prototype.slide = function (t, e) { var i = this.$element.find('.item.active'), o = e || this.getItemForDirection(t, i), n = this.interval, s = 'next' == t ? 'left' : 'right', a = this; if (o.hasClass('active')) return (this.sliding = !1); var r = o[0], l = p.Event('slide.bs.carousel', { relatedTarget: r, direction: s }); if ((this.$element.trigger(l), !l.isDefaultPrevented())) { if ( ((this.sliding = !0), n && this.pause(), this.$indicators.length) ) { this.$indicators.find('.active').removeClass('active'); var h = p(this.$indicators.children()[this.getItemIndex(o)]); h && h.addClass('active'); } var d = p.Event('slid.bs.carousel', { relatedTarget: r, direction: s, }); return ( p.support.transition && this.$element.hasClass('slide') ? (o.addClass(t), 'object' == typeof o && o.length && o[0].offsetWidth, i.addClass(s), o.addClass(s), i .one('bsTransitionEnd', function () { o.removeClass([t, s].join(' ')).addClass('active'), i.removeClass(['active', s].join(' ')), (a.sliding = !1), setTimeout(function () { a.$element.trigger(d); }, 0); }) .emulateTransitionEnd(c.TRANSITION_DURATION)) : (i.removeClass('active'), o.addClass('active'), (this.sliding = !1), this.$element.trigger(d)), n && this.cycle(), this ); } }); var t = p.fn.carousel; (p.fn.carousel = r), (p.fn.carousel.Constructor = c), (p.fn.carousel.noConflict = function () { return (p.fn.carousel = t), this; }); var e = function (t) { var e = p(this), i = e.attr('href'); i && (i = i.replace(/.*(?=#[^\s]+$)/, '')); var o = e.attr('data-target') || i, n = p(document).find(o); if (n.hasClass('carousel')) { var s = p.extend({}, n.data(), e.data()), a = e.attr('data-slide-to'); a && (s.interval = !1), r.call(n, s), a && n.data('bs.carousel').to(a), t.preventDefault(); } }; p(document) .on('click.bs.carousel.data-api', '[data-slide]', e) .on('click.bs.carousel.data-api', '[data-slide-to]', e), p(window).on('load', function () { p('[data-ride="carousel"]').each(function () { var t = p(this); r.call(t, t.data()); }); }); })(jQuery), (function (a) { 'use strict'; var r = function (t, e) { (this.$element = a(t)), (this.options = a.extend({}, r.DEFAULTS, e)), (this.$trigger = a( '[data-toggle="collapse"][href="#' + t.id + '"],[data-toggle="collapse"][data-target="#' + t.id + '"]' )), (this.transitioning = null), this.options.parent ? (this.$parent = this.getParent()) : this.addAriaAndCollapsedClass(this.$element, this.$trigger), this.options.toggle && this.toggle(); }; function n(t) { var e, i = t.attr('data-target') || ((e = t.attr('href')) && e.replace(/.*(?=#[^\s]+$)/, '')); return a(document).find(i); } function l(o) { return this.each(function () { var t = a(this), e = t.data('bs.collapse'), i = a.extend({}, r.DEFAULTS, t.data(), 'object' == typeof o && o); !e && i.toggle && /show|hide/.test(o) && (i.toggle = !1), e || t.data('bs.collapse', (e = new r(this, i))), 'string' == typeof o && e[o](); }); } (r.VERSION = '3.4.1'), (r.TRANSITION_DURATION = 350), (r.DEFAULTS = { toggle: !0 }), (r.prototype.dimension = function () { return this.$element.hasClass('width') ? 'width' : 'height'; }), (r.prototype.show = function () { if (!this.transitioning && !this.$element.hasClass('in')) { var t, e = this.$parent && this.$parent.children('.panel').children('.in, .collapsing'); if ( !(e && e.length && (t = e.data('bs.collapse')) && t.transitioning) ) { var i = a.Event('show.bs.collapse'); if ((this.$element.trigger(i), !i.isDefaultPrevented())) { e && e.length && (l.call(e, 'hide'), t || e.data('bs.collapse', null)); var o = this.dimension(); this.$element .removeClass('collapse') .addClass('collapsing') [o](0) .attr('aria-expanded', !0), this.$trigger .removeClass('collapsed') .attr('aria-expanded', !0), (this.transitioning = 1); var n = function () { this.$element .removeClass('collapsing') .addClass('collapse in') [o](''), (this.transitioning = 0), this.$element.trigger('shown.bs.collapse'); }; if (!a.support.transition) return n.call(this); var s = a.camelCase(['scroll', o].join('-')); this.$element .one('bsTransitionEnd', a.proxy(n, this)) .emulateTransitionEnd(r.TRANSITION_DURATION) [o](this.$element[0][s]); } } } }), (r.prototype.hide = function () { if (!this.transitioning && this.$element.hasClass('in')) { var t = a.Event('hide.bs.collapse'); if ((this.$element.trigger(t), !t.isDefaultPrevented())) { var e = this.dimension(); this.$element[e](this.$element[e]())[0].offsetHeight, this.$element .addClass('collapsing') .removeClass('collapse in') .attr('aria-expanded', !1), this.$trigger.addClass('collapsed').attr('aria-expanded', !1), (this.transitioning = 1); var i = function () { (this.transitioning = 0), this.$element .removeClass('collapsing') .addClass('collapse') .trigger('hidden.bs.collapse'); }; if (!a.support.transition) return i.call(this); this.$element[e](0) .one('bsTransitionEnd', a.proxy(i, this)) .emulateTransitionEnd(r.TRANSITION_DURATION); } } }), (r.prototype.toggle = function () { this[this.$element.hasClass('in') ? 'hide' : 'show'](); }), (r.prototype.getParent = function () { return a(document) .find(this.options.parent) .find( '[data-toggle="collapse"][data-parent="' + this.options.parent + '"]' ) .each( a.proxy(function (t, e) { var i = a(e); this.addAriaAndCollapsedClass(n(i), i); }, this) ) .end(); }), (r.prototype.addAriaAndCollapsedClass = function (t, e) { var i = t.hasClass('in'); t.attr('aria-expanded', i), e.toggleClass('collapsed', !i).attr('aria-expanded', i); }); var t = a.fn.collapse; (a.fn.collapse = l), (a.fn.collapse.Constructor = r), (a.fn.collapse.noConflict = function () { return (a.fn.collapse = t), this; }), a(document).on( 'click.bs.collapse.data-api', '[data-toggle="collapse"]', function (t) { var e = a(this); e.attr('data-target') || t.preventDefault(); var i = n(e), o = i.data('bs.collapse') ? 'toggle' : e.data(); l.call(i, o); } ); })(jQuery), (function (a) { 'use strict'; var r = '[data-toggle="dropdown"]', o = function (t) { a(t).on('click.bs.dropdown', this.toggle); }; function l(t) { var e = t.attr('data-target'); e || (e = (e = t.attr('href')) && /#[A-Za-z]/.test(e) && e.replace(/.*(?=#[^\s]*$)/, '')); var i = '#' !== e ? a(document).find(e) : null; return i && i.length ? i : t.parent(); } function s(o) { (o && 3 === o.which) || (a('.dropdown-backdrop').remove(), a(r).each(function () { var t = a(this), e = l(t), i = { relatedTarget: this }; e.hasClass('open') && ((o && 'click' == o.type && /input|textarea/i.test(o.target.tagName) && a.contains(e[0], o.target)) || (e.trigger((o = a.Event('hide.bs.dropdown', i))), o.isDefaultPrevented() || (t.attr('aria-expanded', 'false'), e .removeClass('open') .trigger(a.Event('hidden.bs.dropdown', i))))); })); } (o.VERSION = '3.4.1'), (o.prototype.toggle = function (t) { var e = a(this); if (!e.is('.disabled, :disabled')) { var i = l(e), o = i.hasClass('open'); if ((s(), !o)) { 'ontouchstart' in document.documentElement && !i.closest('.navbar-nav').length && a(document.createElement('div')) .addClass('dropdown-backdrop') .insertAfter(a(this)) .on('click', s); var n = { relatedTarget: this }; if ( (i.trigger((t = a.Event('show.bs.dropdown', n))), t.isDefaultPrevented()) ) return; e.trigger('focus').attr('aria-expanded', 'true'), i.toggleClass('open').trigger(a.Event('shown.bs.dropdown', n)); } return !1; } }), (o.prototype.keydown = function (t) { if ( /(38|40|27|32)/.test(t.which) && !/input|textarea/i.test(t.target.tagName) ) { var e = a(this); if ( (t.preventDefault(), t.stopPropagation(), !e.is('.disabled, :disabled')) ) { var i = l(e), o = i.hasClass('open'); if ((!o && 27 != t.which) || (o && 27 == t.which)) return ( 27 == t.which && i.find(r).trigger('focus'), e.trigger('click') ); var n = i.find('.dropdown-menu li:not(.disabled):visible a'); if (n.length) { var s = n.index(t.target); 38 == t.which && 0 < s && s--, 40 == t.which && s < n.length - 1 && s++, ~s || (s = 0), n.eq(s).trigger('focus'); } } } }); var t = a.fn.dropdown; (a.fn.dropdown = function e(i) { return this.each(function () { var t = a(this), e = t.data('bs.dropdown'); e || t.data('bs.dropdown', (e = new o(this))), 'string' == typeof i && e[i].call(t); }); }), (a.fn.dropdown.Constructor = o), (a.fn.dropdown.noConflict = function () { return (a.fn.dropdown = t), this; }), a(document) .on('click.bs.dropdown.data-api', s) .on('click.bs.dropdown.data-api', '.dropdown form', function (t) { t.stopPropagation(); }) .on('click.bs.dropdown.data-api', r, o.prototype.toggle) .on('keydown.bs.dropdown.data-api', r, o.prototype.keydown) .on( 'keydown.bs.dropdown.data-api', '.dropdown-menu', o.prototype.keydown ); })(jQuery), (function (a) { 'use strict'; var s = function (t, e) { (this.options = e), (this.$body = a(document.body)), (this.$element = a(t)), (this.$dialog = this.$element.find('.modal-dialog')), (this.$backdrop = null), (this.isShown = null), (this.originalBodyPad = null), (this.scrollbarWidth = 0), (this.ignoreBackdropClick = !1), (this.fixedContent = '.navbar-fixed-top, .navbar-fixed-bottom'), this.options.remote && this.$element.find('.modal-content').load( this.options.remote, a.proxy(function () { this.$element.trigger('loaded.bs.modal'); }, this) ); }; function r(o, n) { return this.each(function () { var t = a(this), e = t.data('bs.modal'), i = a.extend({}, s.DEFAULTS, t.data(), 'object' == typeof o && o); e || t.data('bs.modal', (e = new s(this, i))), 'string' == typeof o ? e[o](n) : i.show && e.show(n); }); } (s.VERSION = '3.4.1'), (s.TRANSITION_DURATION = 300), (s.BACKDROP_TRANSITION_DURATION = 150), (s.DEFAULTS = { backdrop: !0, keyboard: !0, show: !0 }), (s.prototype.toggle = function (t) { return this.isShown ? this.hide() : this.show(t); }), (s.prototype.show = function (i) { var o = this, t = a.Event('show.bs.modal', { relatedTarget: i }); this.$element.trigger(t), this.isShown || t.isDefaultPrevented() || ((this.isShown = !0), this.checkScrollbar(), this.setScrollbar(), this.$body.addClass('modal-open'), this.escape(), this.resize(), this.$element.on( 'click.dismiss.bs.modal', '[data-dismiss="modal"]', a.proxy(this.hide, this) ), this.$dialog.on('mousedown.dismiss.bs.modal', function () { o.$element.one('mouseup.dismiss.bs.modal', function (t) { a(t.target).is(o.$element) && (o.ignoreBackdropClick = !0); }); }), this.backdrop(function () { var t = a.support.transition && o.$element.hasClass('fade'); o.$element.parent().length || o.$element.appendTo(o.$body), o.$element.show().scrollTop(0), o.adjustDialog(), t && o.$element[0].offsetWidth, o.$element.addClass('in'), o.enforceFocus(); var e = a.Event('shown.bs.modal', { relatedTarget: i }); t ? o.$dialog .one('bsTransitionEnd', function () { o.$element.trigger('focus').trigger(e); }) .emulateTransitionEnd(s.TRANSITION_DURATION) : o.$element.trigger('focus').trigger(e); })); }), (s.prototype.hide = function (t) { t && t.preventDefault(), (t = a.Event('hide.bs.modal')), this.$element.trigger(t), this.isShown && !t.isDefaultPrevented() && ((this.isShown = !1), this.escape(), this.resize(), a(document).off('focusin.bs.modal'), this.$element .removeClass('in') .off('click.dismiss.bs.modal') .off('mouseup.dismiss.bs.modal'), this.$dialog.off('mousedown.dismiss.bs.modal'), a.support.transition && this.$element.hasClass('fade') ? this.$element .one('bsTransitionEnd', a.proxy(this.hideModal, this)) .emulateTransitionEnd(s.TRANSITION_DURATION) : this.hideModal()); }), (s.prototype.enforceFocus = function () { a(document) .off('focusin.bs.modal') .on( 'focusin.bs.modal', a.proxy(function (t) { document === t.target || this.$element[0] === t.target || this.$element.has(t.target).length || this.$element.trigger('focus'); }, this) ); }), (s.prototype.escape = function () { this.isShown && this.options.keyboard ? this.$element.on( 'keydown.dismiss.bs.modal', a.proxy(function (t) { 27 == t.which && this.hide(); }, this) ) : this.isShown || this.$element.off('keydown.dismiss.bs.modal'); }), (s.prototype.resize = function () { this.isShown ? a(window).on('resize.bs.modal', a.proxy(this.handleUpdate, this)) : a(window).off('resize.bs.modal'); }), (s.prototype.hideModal = function () { var t = this; this.$element.hide(), this.backdrop(function () { t.$body.removeClass('modal-open'), t.resetAdjustments(), t.resetScrollbar(), t.$element.trigger('hidden.bs.modal'); }); }), (s.prototype.removeBackdrop = function () { this.$backdrop && this.$backdrop.remove(), (this.$backdrop = null); }), (s.prototype.backdrop = function (t) { var e = this, i = this.$element.hasClass('fade') ? 'fade' : ''; if (this.isShown && this.options.backdrop) { var o = a.support.transition && i; if ( ((this.$backdrop = a(document.createElement('div')) .addClass('modal-backdrop ' + i) .appendTo(this.$body)), this.$element.on( 'click.dismiss.bs.modal', a.proxy(function (t) { this.ignoreBackdropClick ? (this.ignoreBackdropClick = !1) : t.target === t.currentTarget && ('static' == this.options.backdrop ? this.$element[0].focus() : this.hide()); }, this) ), o && this.$backdrop[0].offsetWidth, this.$backdrop.addClass('in'), !t) ) return; o ? this.$backdrop .one('bsTransitionEnd', t) .emulateTransitionEnd(s.BACKDROP_TRANSITION_DURATION) : t(); } else if (!this.isShown && this.$backdrop) { this.$backdrop.removeClass('in'); var n = function () { e.removeBackdrop(), t && t(); }; a.support.transition && this.$element.hasClass('fade') ? this.$backdrop .one('bsTransitionEnd', n) .emulateTransitionEnd(s.BACKDROP_TRANSITION_DURATION) : n(); } else t && t(); }), (s.prototype.handleUpdate = function () { this.adjustDialog(); }), (s.prototype.adjustDialog = function () { var t = this.$element[0].scrollHeight > document.documentElement.clientHeight; this.$element.css({ paddingLeft: !this.bodyIsOverflowing && t ? this.scrollbarWidth : '', paddingRight: this.bodyIsOverflowing && !t ? this.scrollbarWidth : '', }); }), (s.prototype.resetAdjustments = function () { this.$element.css({ paddingLeft: '', paddingRight: '' }); }), (s.prototype.checkScrollbar = function () { var t = window.innerWidth; if (!t) { var e = document.documentElement.getBoundingClientRect(); t = e.right - Math.abs(e.left); } (this.bodyIsOverflowing = document.body.clientWidth < t), (this.scrollbarWidth = this.measureScrollbar()); }), (s.prototype.setScrollbar = function () { var t = parseInt(this.$body.css('padding-right') || 0, 10); this.originalBodyPad = document.body.style.paddingRight || ''; var n = this.scrollbarWidth; this.bodyIsOverflowing && (this.$body.css('padding-right', t + n), a(this.fixedContent).each(function (t, e) { var i = e.style.paddingRight, o = a(e).css('padding-right'); a(e) .data('padding-right', i) .css('padding-right', parseFloat(o) + n + 'px'); })); }), (s.prototype.resetScrollbar = function () { this.$body.css('padding-right', this.originalBodyPad), a(this.fixedContent).each(function (t, e) { var i = a(e).data('padding-right'); a(e).removeData('padding-right'), (e.style.paddingRight = i || ''); }); }), (s.prototype.measureScrollbar = function () { var t = document.createElement('div'); (t.className = 'modal-scrollbar-measure'), this.$body.append(t); var e = t.offsetWidth - t.clientWidth; return this.$body[0].removeChild(t), e; }); var t = a.fn.modal; (a.fn.modal = r), (a.fn.modal.Constructor = s), (a.fn.modal.noConflict = function () { return (a.fn.modal = t), this; }), a(document).on( 'click.bs.modal.data-api', '[data-toggle="modal"]', function (t) { var e = a(this), i = e.attr('href'), o = e.attr('data-target') || (i && i.replace(/.*(?=#[^\s]+$)/, '')), n = a(document).find(o), s = n.data('bs.modal') ? 'toggle' : a.extend({ remote: !/#/.test(i) && i }, n.data(), e.data()); e.is('a') && t.preventDefault(), n.one('show.bs.modal', function (t) { t.isDefaultPrevented() || n.one('hidden.bs.modal', function () { e.is(':visible') && e.trigger('focus'); }); }), r.call(n, s, this); } ); })(jQuery), (function (g) { 'use strict'; var o = ['sanitize', 'whiteList', 'sanitizeFn'], a = [ 'background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href', ], t = { '*': ['class', 'dir', 'id', 'lang', 'role', /^aria-[\w-]*$/i], a: ['target', 'href', 'title', 'rel'], area: [], b: [], br: [], col: [], code: [], div: [], em: [], hr: [], h1: [], h2: [], h3: [], h4: [], h5: [], h6: [], i: [], img: ['src', 'alt', 'title', 'width', 'height'], li: [], ol: [], p: [], pre: [], s: [], small: [], span: [], sub: [], sup: [], strong: [], u: [], ul: [], }, r = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi, l = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i; function u(t, e) { var i = t.nodeName.toLowerCase(); if (-1 !== g.inArray(i, e)) return ( -1 === g.inArray(i, a) || Boolean(t.nodeValue.match(r) || t.nodeValue.match(l)) ); for ( var o = g(e).filter(function (t, e) { return e instanceof RegExp; }), n = 0, s = o.length; n < s; n++ ) if (i.match(o[n])) return !0; return !1; } function n(t, e, i) { if (0 === t.length) return t; if (i && 'function' == typeof i) return i(t); if ( !document.implementation || !document.implementation.createHTMLDocument ) return t; var o = document.implementation.createHTMLDocument('sanitization'); o.body.innerHTML = t; for ( var n = g.map(e, function (t, e) { return e; }), s = g(o.body).find('*'), a = 0, r = s.length; a < r; a++ ) { var l = s[a], h = l.nodeName.toLowerCase(); if (-1 !== g.inArray(h, n)) for ( var d = g.map(l.attributes, function (t) { return t; }), p = [].concat(e['*'] || [], e[h] || []), c = 0, f = d.length; c < f; c++ ) u(d[c], p) || l.removeAttribute(d[c].nodeName); else l.parentNode.removeChild(l); } return o.body.innerHTML; } var m = function (t, e) { (this.type = null), (this.options = null), (this.enabled = null), (this.timeout = null), (this.hoverState = null), (this.$element = null), (this.inState = null), this.init('tooltip', t, e); }; (m.VERSION = '3.4.1'), (m.TRANSITION_DURATION = 150), (m.DEFAULTS = { animation: !0, placement: 'top', selector: !1, template: '', trigger: 'hover focus', title: '', delay: 0, html: !1, container: !1, viewport: { selector: 'body', padding: 0 }, sanitize: !0, sanitizeFn: null, whiteList: t, }), (m.prototype.init = function (t, e, i) { if ( ((this.enabled = !0), (this.type = t), (this.$element = g(e)), (this.options = this.getOptions(i)), (this.$viewport = this.options.viewport && g(document).find( g.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : this.options.viewport.selector || this.options.viewport )), (this.inState = { click: !1, hover: !1, focus: !1 }), this.$element[0] instanceof document.constructor && !this.options.selector) ) throw new Error( '`selector` option must be specified when initializing ' + this.type + ' on the window.document object!' ); for (var o = this.options.trigger.split(' '), n = o.length; n--; ) { var s = o[n]; if ('click' == s) this.$element.on( 'click.' + this.type, this.options.selector, g.proxy(this.toggle, this) ); else if ('manual' != s) { var a = 'hover' == s ? 'mouseenter' : 'focusin', r = 'hover' == s ? 'mouseleave' : 'focusout'; this.$element.on( a + '.' + this.type, this.options.selector, g.proxy(this.enter, this) ), this.$element.on( r + '.' + this.type, this.options.selector, g.proxy(this.leave, this) ); } } this.options.selector ? (this._options = g.extend({}, this.options, { trigger: 'manual', selector: '', })) : this.fixTitle(); }), (m.prototype.getDefaults = function () { return m.DEFAULTS; }), (m.prototype.getOptions = function (t) { var e = this.$element.data(); for (var i in e) e.hasOwnProperty(i) && -1 !== g.inArray(i, o) && delete e[i]; return ( (t = g.extend({}, this.getDefaults(), e, t)).delay && 'number' == typeof t.delay && (t.delay = { show: t.delay, hide: t.delay }), t.sanitize && (t.template = n(t.template, t.whiteList, t.sanitizeFn)), t ); }), (m.prototype.getDelegateOptions = function () { var i = {}, o = this.getDefaults(); return ( this._options && g.each(this._options, function (t, e) { o[t] != e && (i[t] = e); }), i ); }), (m.prototype.enter = function (t) { var e = t instanceof this.constructor ? t : g(t.currentTarget).data('bs.' + this.type); if ( (e || ((e = new this.constructor( t.currentTarget, this.getDelegateOptions() )), g(t.currentTarget).data('bs.' + this.type, e)), t instanceof g.Event && (e.inState['focusin' == t.type ? 'focus' : 'hover'] = !0), e.tip().hasClass('in') || 'in' == e.hoverState) ) e.hoverState = 'in'; else { if ( (clearTimeout(e.timeout), (e.hoverState = 'in'), !e.options.delay || !e.options.delay.show) ) return e.show(); e.timeout = setTimeout(function () { 'in' == e.hoverState && e.show(); }, e.options.delay.show); } }), (m.prototype.isInStateTrue = function () { for (var t in this.inState) if (this.inState[t]) return !0; return !1; }), (m.prototype.leave = function (t) { var e = t instanceof this.constructor ? t : g(t.currentTarget).data('bs.' + this.type); if ( (e || ((e = new this.constructor( t.currentTarget, this.getDelegateOptions() )), g(t.currentTarget).data('bs.' + this.type, e)), t instanceof g.Event && (e.inState['focusout' == t.type ? 'focus' : 'hover'] = !1), !e.isInStateTrue()) ) { if ( (clearTimeout(e.timeout), (e.hoverState = 'out'), !e.options.delay || !e.options.delay.hide) ) return e.hide(); e.timeout = setTimeout(function () { 'out' == e.hoverState && e.hide(); }, e.options.delay.hide); } }), (m.prototype.show = function () { var t = g.Event('show.bs.' + this.type); if (this.hasContent() && this.enabled) { this.$element.trigger(t); var e = g.contains( this.$element[0].ownerDocument.documentElement, this.$element[0] ); if (t.isDefaultPrevented() || !e) return; var i = this, o = this.tip(), n = this.getUID(this.type); this.setContent(), o.attr('id', n), this.$element.attr('aria-describedby', n), this.options.animation && o.addClass('fade'); var s = 'function' == typeof this.options.placement ? this.options.placement.call(this, o[0], this.$element[0]) : this.options.placement, a = /\s?auto?\s?/i, r = a.test(s); r && (s = s.replace(a, '') || 'top'), o .detach() .css({ top: 0, left: 0, display: 'block' }) .addClass(s) .data('bs.' + this.type, this), this.options.container ? o.appendTo(g(document).find(this.options.container)) : o.insertAfter(this.$element), this.$element.trigger('inserted.bs.' + this.type); var l = this.getPosition(), h = o[0].offsetWidth, d = o[0].offsetHeight; if (r) { var p = s, c = this.getPosition(this.$viewport); (s = 'bottom' == s && l.bottom + d > c.bottom ? 'top' : 'top' == s && l.top - d < c.top ? 'bottom' : 'right' == s && l.right + h > c.width ? 'left' : 'left' == s && l.left - h < c.left ? 'right' : s), o.removeClass(p).addClass(s); } var f = this.getCalculatedOffset(s, l, h, d); this.applyPlacement(f, s); var u = function () { var t = i.hoverState; i.$element.trigger('shown.bs.' + i.type), (i.hoverState = null), 'out' == t && i.leave(i); }; g.support.transition && this.$tip.hasClass('fade') ? o .one('bsTransitionEnd', u) .emulateTransitionEnd(m.TRANSITION_DURATION) : u(); } }), (m.prototype.applyPlacement = function (t, e) { var i = this.tip(), o = i[0].offsetWidth, n = i[0].offsetHeight, s = parseInt(i.css('margin-top'), 10), a = parseInt(i.css('margin-left'), 10); isNaN(s) && (s = 0), isNaN(a) && (a = 0), (t.top += s), (t.left += a), g.offset.setOffset( i[0], g.extend( { using: function (t) { i.css({ top: Math.round(t.top), left: Math.round(t.left) }); }, }, t ), 0 ), i.addClass('in'); var r = i[0].offsetWidth, l = i[0].offsetHeight; 'top' == e && l != n && (t.top = t.top + n - l); var h = this.getViewportAdjustedDelta(e, t, r, l); h.left ? (t.left += h.left) : (t.top += h.top); var d = /top|bottom/.test(e), p = d ? 2 * h.left - o + r : 2 * h.top - n + l, c = d ? 'offsetWidth' : 'offsetHeight'; i.offset(t), this.replaceArrow(p, i[0][c], d); }), (m.prototype.replaceArrow = function (t, e, i) { this.arrow() .css(i ? 'left' : 'top', 50 * (1 - t / e) + '%') .css(i ? 'top' : 'left', ''); }), (m.prototype.setContent = function () { var t = this.tip(), e = this.getTitle(); this.options.html ? (this.options.sanitize && (e = n(e, this.options.whiteList, this.options.sanitizeFn)), t.find('.tooltip-inner').html(e)) : t.find('.tooltip-inner').text(e), t.removeClass('fade in top bottom left right'); }), (m.prototype.hide = function (t) { var e = this, i = g(this.$tip), o = g.Event('hide.bs.' + this.type); function n() { 'in' != e.hoverState && i.detach(), e.$element && e.$element .removeAttr('aria-describedby') .trigger('hidden.bs.' + e.type), t && t(); } if ((this.$element.trigger(o), !o.isDefaultPrevented())) return ( i.removeClass('in'), g.support.transition && i.hasClass('fade') ? i .one('bsTransitionEnd', n) .emulateTransitionEnd(m.TRANSITION_DURATION) : n(), (this.hoverState = null), this ); }), (m.prototype.fixTitle = function () { var t = this.$element; (t.attr('title') || 'string' != typeof t.attr('data-original-title')) && t .attr('data-original-title', t.attr('title') || '') .attr('title', ''); }), (m.prototype.hasContent = function () { return this.getTitle(); }), (m.prototype.getPosition = function (t) { var e = (t = t || this.$element)[0], i = 'BODY' == e.tagName, o = e.getBoundingClientRect(); null == o.width && (o = g.extend({}, o, { width: o.right - o.left, height: o.bottom - o.top, })); var n = window.SVGElement && e instanceof window.SVGElement, s = i ? { top: 0, left: 0 } : n ? null : t.offset(), a = { scroll: i ? document.documentElement.scrollTop || document.body.scrollTop : t.scrollTop(), }, r = i ? { width: g(window).width(), height: g(window).height() } : null; return g.extend({}, o, a, r, s); }), (m.prototype.getCalculatedOffset = function (t, e, i, o) { return 'bottom' == t ? { top: e.top + e.height, left: e.left + e.width / 2 - i / 2 } : 'top' == t ? { top: e.top - o, left: e.left + e.width / 2 - i / 2 } : 'left' == t ? { top: e.top + e.height / 2 - o / 2, left: e.left - i } : { top: e.top + e.height / 2 - o / 2, left: e.left + e.width }; }), (m.prototype.getViewportAdjustedDelta = function (t, e, i, o) { var n = { top: 0, left: 0 }; if (!this.$viewport) return n; var s = (this.options.viewport && this.options.viewport.padding) || 0, a = this.getPosition(this.$viewport); if (/right|left/.test(t)) { var r = e.top - s - a.scroll, l = e.top + s - a.scroll + o; r < a.top ? (n.top = a.top - r) : l > a.top + a.height && (n.top = a.top + a.height - l); } else { var h = e.left - s, d = e.left + s + i; h < a.left ? (n.left = a.left - h) : d > a.right && (n.left = a.left + a.width - d); } return n; }), (m.prototype.getTitle = function () { var t = this.$element, e = this.options; return ( t.attr('data-original-title') || ('function' == typeof e.title ? e.title.call(t[0]) : e.title) ); }), (m.prototype.getUID = function (t) { for (; (t += ~~(1e6 * Math.random())), document.getElementById(t); ); return t; }), (m.prototype.tip = function () { if ( !this.$tip && ((this.$tip = g(this.options.template)), 1 != this.$tip.length) ) throw new Error( this.type + ' `template` option must consist of exactly 1 top-level element!' ); return this.$tip; }), (m.prototype.arrow = function () { return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')); }), (m.prototype.enable = function () { this.enabled = !0; }), (m.prototype.disable = function () { this.enabled = !1; }), (m.prototype.toggleEnabled = function () { this.enabled = !this.enabled; }), (m.prototype.toggle = function (t) { var e = this; t && ((e = g(t.currentTarget).data('bs.' + this.type)) || ((e = new this.constructor( t.currentTarget, this.getDelegateOptions() )), g(t.currentTarget).data('bs.' + this.type, e))), t ? ((e.inState.click = !e.inState.click), e.isInStateTrue() ? e.enter(e) : e.leave(e)) : e.tip().hasClass('in') ? e.leave(e) : e.enter(e); }), (m.prototype.destroy = function () { var t = this; clearTimeout(this.timeout), this.hide(function () { t.$element.off('.' + t.type).removeData('bs.' + t.type), t.$tip && t.$tip.detach(), (t.$tip = null), (t.$arrow = null), (t.$viewport = null), (t.$element = null); }); }), (m.prototype.sanitizeHtml = function (t) { return n(t, this.options.whiteList, this.options.sanitizeFn); }); var e = g.fn.tooltip; (g.fn.tooltip = function i(o) { return this.each(function () { var t = g(this), e = t.data('bs.tooltip'), i = 'object' == typeof o && o; (!e && /destroy|hide/.test(o)) || (e || t.data('bs.tooltip', (e = new m(this, i))), 'string' == typeof o && e[o]()); }); }), (g.fn.tooltip.Constructor = m), (g.fn.tooltip.noConflict = function () { return (g.fn.tooltip = e), this; }); })(jQuery), (function (n) { 'use strict'; var s = function (t, e) { this.init('popover', t, e); }; if (!n.fn.tooltip) throw new Error('Popover requires tooltip.js'); (s.VERSION = '3.4.1'), (s.DEFAULTS = n.extend({}, n.fn.tooltip.Constructor.DEFAULTS, { placement: 'right', trigger: 'click', content: '', template: '', })), (((s.prototype = n.extend( {}, n.fn.tooltip.Constructor.prototype )).constructor = s).prototype.getDefaults = function () { return s.DEFAULTS; }), (s.prototype.setContent = function () { var t = this.tip(), e = this.getTitle(), i = this.getContent(); if (this.options.html) { var o = typeof i; this.options.sanitize && ((e = this.sanitizeHtml(e)), 'string' === o && (i = this.sanitizeHtml(i))), t.find('.popover-title').html(e), t .find('.popover-content') .children() .detach() .end() ['string' === o ? 'html' : 'append'](i); } else t.find('.popover-title').text(e), t.find('.popover-content').children().detach().end().text(i); t.removeClass('fade top bottom left right in'), t.find('.popover-title').html() || t.find('.popover-title').hide(); }), (s.prototype.hasContent = function () { return this.getTitle() || this.getContent(); }), (s.prototype.getContent = function () { var t = this.$element, e = this.options; return ( t.attr('data-content') || ('function' == typeof e.content ? e.content.call(t[0]) : e.content) ); }), (s.prototype.arrow = function () { return (this.$arrow = this.$arrow || this.tip().find('.arrow')); }); var t = n.fn.popover; (n.fn.popover = function e(o) { return this.each(function () { var t = n(this), e = t.data('bs.popover'), i = 'object' == typeof o && o; (!e && /destroy|hide/.test(o)) || (e || t.data('bs.popover', (e = new s(this, i))), 'string' == typeof o && e[o]()); }); }), (n.fn.popover.Constructor = s), (n.fn.popover.noConflict = function () { return (n.fn.popover = t), this; }); })(jQuery), (function (s) { 'use strict'; function n(t, e) { (this.$body = s(document.body)), (this.$scrollElement = s(t).is(document.body) ? s(window) : s(t)), (this.options = s.extend({}, n.DEFAULTS, e)), (this.selector = (this.options.target || '') + ' .nav li > a'), (this.offsets = []), (this.targets = []), (this.activeTarget = null), (this.scrollHeight = 0), this.$scrollElement.on( 'scroll.bs.scrollspy', s.proxy(this.process, this) ), this.refresh(), this.process(); } function e(o) { return this.each(function () { var t = s(this), e = t.data('bs.scrollspy'), i = 'object' == typeof o && o; e || t.data('bs.scrollspy', (e = new n(this, i))), 'string' == typeof o && e[o](); }); } (n.VERSION = '3.4.1'), (n.DEFAULTS = { offset: 10 }), (n.prototype.getScrollHeight = function () { return ( this.$scrollElement[0].scrollHeight || Math.max( this.$body[0].scrollHeight, document.documentElement.scrollHeight ) ); }), (n.prototype.refresh = function () { var t = this, o = 'offset', n = 0; (this.offsets = []), (this.targets = []), (this.scrollHeight = this.getScrollHeight()), s.isWindow(this.$scrollElement[0]) || ((o = 'position'), (n = this.$scrollElement.scrollTop())), this.$body .find(this.selector) .map(function () { var t = s(this), e = t.data('target') || t.attr('href'), i = /^#./.test(e) && s(e); return ( (i && i.length && i.is(':visible') && [[i[o]().top + n, e]]) || null ); }) .sort(function (t, e) { return t[0] - e[0]; }) .each(function () { t.offsets.push(this[0]), t.targets.push(this[1]); }); }), (n.prototype.process = function () { var t, e = this.$scrollElement.scrollTop() + this.options.offset, i = this.getScrollHeight(), o = this.options.offset + i - this.$scrollElement.height(), n = this.offsets, s = this.targets, a = this.activeTarget; if ((this.scrollHeight != i && this.refresh(), o <= e)) return a != (t = s[s.length - 1]) && this.activate(t); if (a && e < n[0]) return (this.activeTarget = null), this.clear(); for (t = n.length; t--; ) a != s[t] && e >= n[t] && (n[t + 1] === undefined || e < n[t + 1]) && this.activate(s[t]); }), (n.prototype.activate = function (t) { (this.activeTarget = t), this.clear(); var e = this.selector + '[data-target="' + t + '"],' + this.selector + '[href="' + t + '"]', i = s(e).parents('li').addClass('active'); i.parent('.dropdown-menu').length && (i = i.closest('li.dropdown').addClass('active')), i.trigger('activate.bs.scrollspy'); }), (n.prototype.clear = function () { s(this.selector) .parentsUntil(this.options.target, '.active') .removeClass('active'); }); var t = s.fn.scrollspy; (s.fn.scrollspy = e), (s.fn.scrollspy.Constructor = n), (s.fn.scrollspy.noConflict = function () { return (s.fn.scrollspy = t), this; }), s(window).on('load.bs.scrollspy.data-api', function () { s('[data-spy="scroll"]').each(function () { var t = s(this); e.call(t, t.data()); }); }); })(jQuery), (function (r) { 'use strict'; var a = function (t) { this.element = r(t); }; function e(i) { return this.each(function () { var t = r(this), e = t.data('bs.tab'); e || t.data('bs.tab', (e = new a(this))), 'string' == typeof i && e[i](); }); } (a.VERSION = '3.4.1'), (a.TRANSITION_DURATION = 150), (a.prototype.show = function () { var t = this.element, e = t.closest('ul:not(.dropdown-menu)'), i = t.data('target'); if ( (i || (i = (i = t.attr('href')) && i.replace(/.*(?=#[^\s]*$)/, '')), !t.parent('li').hasClass('active')) ) { var o = e.find('.active:last a'), n = r.Event('hide.bs.tab', { relatedTarget: t[0] }), s = r.Event('show.bs.tab', { relatedTarget: o[0] }); if ( (o.trigger(n), t.trigger(s), !s.isDefaultPrevented() && !n.isDefaultPrevented()) ) { var a = r(document).find(i); this.activate(t.closest('li'), e), this.activate(a, a.parent(), function () { o.trigger({ type: 'hidden.bs.tab', relatedTarget: t[0] }), t.trigger({ type: 'shown.bs.tab', relatedTarget: o[0] }); }); } } }), (a.prototype.activate = function (t, e, i) { var o = e.find('> .active'), n = i && r.support.transition && ((o.length && o.hasClass('fade')) || !!e.find('> .fade').length); function s() { o .removeClass('active') .find('> .dropdown-menu > .active') .removeClass('active') .end() .find('[data-toggle="tab"]') .attr('aria-expanded', !1), t .addClass('active') .find('[data-toggle="tab"]') .attr('aria-expanded', !0), n ? (t[0].offsetWidth, t.addClass('in')) : t.removeClass('fade'), t.parent('.dropdown-menu').length && t .closest('li.dropdown') .addClass('active') .end() .find('[data-toggle="tab"]') .attr('aria-expanded', !0), i && i(); } o.length && n ? o .one('bsTransitionEnd', s) .emulateTransitionEnd(a.TRANSITION_DURATION) : s(), o.removeClass('in'); }); var t = r.fn.tab; (r.fn.tab = e), (r.fn.tab.Constructor = a), (r.fn.tab.noConflict = function () { return (r.fn.tab = t), this; }); var i = function (t) { t.preventDefault(), e.call(r(this), 'show'); }; r(document) .on('click.bs.tab.data-api', '[data-toggle="tab"]', i) .on('click.bs.tab.data-api', '[data-toggle="pill"]', i); })(jQuery), (function (l) { 'use strict'; var h = function (t, e) { this.options = l.extend({}, h.DEFAULTS, e); var i = this.options.target === h.DEFAULTS.target ? l(this.options.target) : l(document).find(this.options.target); (this.$target = i .on('scroll.bs.affix.data-api', l.proxy(this.checkPosition, this)) .on( 'click.bs.affix.data-api', l.proxy(this.checkPositionWithEventLoop, this) )), (this.$element = l(t)), (this.affixed = null), (this.unpin = null), (this.pinnedOffset = null), this.checkPosition(); }; function i(o) { return this.each(function () { var t = l(this), e = t.data('bs.affix'), i = 'object' == typeof o && o; e || t.data('bs.affix', (e = new h(this, i))), 'string' == typeof o && e[o](); }); } (h.VERSION = '3.4.1'), (h.RESET = 'affix affix-top affix-bottom'), (h.DEFAULTS = { offset: 0, target: window }), (h.prototype.getState = function (t, e, i, o) { var n = this.$target.scrollTop(), s = this.$element.offset(), a = this.$target.height(); if (null != i && 'top' == this.affixed) return n < i && 'top'; if ('bottom' == this.affixed) return null != i ? !(n + this.unpin <= s.top) && 'bottom' : !(n + a <= t - o) && 'bottom'; var r = null == this.affixed, l = r ? n : s.top; return null != i && n <= i ? 'top' : null != o && t - o <= l + (r ? a : e) && 'bottom'; }), (h.prototype.getPinnedOffset = function () { if (this.pinnedOffset) return this.pinnedOffset; this.$element.removeClass(h.RESET).addClass('affix'); var t = this.$target.scrollTop(), e = this.$element.offset(); return (this.pinnedOffset = e.top - t); }), (h.prototype.checkPositionWithEventLoop = function () { setTimeout(l.proxy(this.checkPosition, this), 1); }), (h.prototype.checkPosition = function () { if (this.$element.is(':visible')) { var t = this.$element.height(), e = this.options.offset, i = e.top, o = e.bottom, n = Math.max(l(document).height(), l(document.body).height()); 'object' != typeof e && (o = i = e), 'function' == typeof i && (i = e.top(this.$element)), 'function' == typeof o && (o = e.bottom(this.$element)); var s = this.getState(n, t, i, o); if (this.affixed != s) { null != this.unpin && this.$element.css('top', ''); var a = 'affix' + (s ? '-' + s : ''), r = l.Event(a + '.bs.affix'); if ((this.$element.trigger(r), r.isDefaultPrevented())) return; (this.affixed = s), (this.unpin = 'bottom' == s ? this.getPinnedOffset() : null), this.$element .removeClass(h.RESET) .addClass(a) .trigger(a.replace('affix', 'affixed') + '.bs.affix'); } 'bottom' == s && this.$element.offset({ top: n - t - o }); } }); var t = l.fn.affix; (l.fn.affix = i), (l.fn.affix.Constructor = h), (l.fn.affix.noConflict = function () { return (l.fn.affix = t), this; }), l(window).on('load', function () { l('[data-spy="affix"]').each(function () { var t = l(this), e = t.data(); (e.offset = e.offset || {}), null != e.offsetBottom && (e.offset.bottom = e.offsetBottom), null != e.offsetTop && (e.offset.top = e.offsetTop), i.call(t, e); }); }); })(jQuery);