From 3dd48b8d475f727cb5aa63b09388a3a3553629be Mon Sep 17 00:00:00 2001 From: Mark Otto Date: Tue, 18 Aug 2015 20:28:28 -0700 Subject: [PATCH] js grunt --- js/dist/alert.js | 3 ++- js/dist/alert.js.map | Bin 7693 -> 7696 bytes js/dist/button.js | 1 - js/dist/button.js.map | Bin 8200 -> 8127 bytes js/dist/carousel.js | 20 +++++++++++--------- js/dist/carousel.js.map | Bin 23320 -> 23353 bytes js/dist/collapse.js | 9 +++++---- js/dist/collapse.js.map | Bin 18209 -> 18294 bytes js/dist/dropdown.js | 20 +++++++++++++++----- js/dist/dropdown.js.map | Bin 14576 -> 14638 bytes js/dist/modal.js | 12 ++++++++---- js/dist/modal.js.map | Bin 27441 -> 27462 bytes js/dist/popover.js | 2 +- js/dist/popover.js.map | Bin 8240 -> 8241 bytes js/dist/scrollspy.js.map | Bin 16089 -> 16083 bytes js/dist/tab.js | 4 ++-- js/dist/tab.js.map | Bin 13673 -> 13686 bytes js/dist/tooltip.js | 38 +++++++++++++++++++++++--------------- js/dist/tooltip.js.map | Bin 29585 -> 29630 bytes js/dist/util.js | 33 +++++++++++++++++++-------------- js/dist/util.js.map | Bin 6988 -> 7203 bytes 21 files changed, 86 insertions(+), 56 deletions(-) diff --git a/js/dist/alert.js b/js/dist/alert.js index 8c2f35d48..27f44ed88 100644 --- a/js/dist/alert.js +++ b/js/dist/alert.js @@ -93,8 +93,8 @@ var Alert = (function ($) { }, { key: '_getRootElement', value: function _getRootElement(element) { - var parent = false; var selector = Util.getSelectorFromElement(element); + var parent = false; if (selector) { parent = $(selector)[0]; @@ -110,6 +110,7 @@ var Alert = (function ($) { key: '_triggerCloseEvent', value: function _triggerCloseEvent(element) { var closeEvent = $.Event(Event.CLOSE); + $(element).trigger(closeEvent); return closeEvent; } diff --git a/js/dist/alert.js.map b/js/dist/alert.js.map index b3d86345bdc8cc9796030ef573c03c72aed66231..eaa956d640df9e742463ddd5d67bf637e3978cff 100644 GIT binary patch delta 114 zcmeCRnP9VFC(Gm;Ec&XBj?Q^5I+2c!o;tpcj=nnXj*i|s-XOx+(b3V`+R@Rqz-cot zt1TlNh+X77IgvwrayT3B=3=%^7RH>(f4Phqi#Ho`U*?>wAZj?dUYu=`sMzE{(KnMs PStdJ*DQ`{^Tg?stoGl^S delta 100 zcmbPW(`&O~C(Go|EFvt9j?M*>H?f$pSvxwq=DBRINAEU{>^qnOI(bg`A} E07@w!V*mgE diff --git a/js/dist/button.js b/js/dist/button.js index 391809d3f..3158f46bd 100644 --- a/js/dist/button.js +++ b/js/dist/button.js @@ -25,7 +25,6 @@ var Button = (function ($) { var EVENT_KEY = '.' + DATA_KEY; var DATA_API_KEY = '.data-api'; var JQUERY_NO_CONFLICT = $.fn[NAME]; - var TRANSITION_DURATION = 150; var ClassName = { ACTIVE: 'active', diff --git a/js/dist/button.js.map b/js/dist/button.js.map index 0274f39677a5c6653cf7cab4ca2727c55d171907..035558c36aef269d0b1e4b3d9300da0c31f8db46 100644 GIT binary patch delta 146 zcmeBh*l)ifnvu=g(b2WUd24Nyy6mtkRV6DV9yXwf4_K_&>%+;L%~+T(9~eFqTny)%}S!r*#y!`^O8$4^Yaum hQp-~FN;EeM%h)i=qKhh2$K)x1L0Mwa<}}$zCIG>xL3{uJ diff --git a/js/dist/carousel.js b/js/dist/carousel.js index 761717193..7345cbe77 100644 --- a/js/dist/carousel.js +++ b/js/dist/carousel.js @@ -177,7 +177,7 @@ var Carousel = (function ($) { return; } - if (activeIndex == index) { + if (activeIndex === index) { this.pause(); this.cycle(); return; @@ -219,7 +219,7 @@ var Carousel = (function ($) { $(this._element).on(Event.KEYDOWN, $.proxy(this._keydown, this)); } - if (this._config.pause == 'hover' && !('ontouchstart' in document.documentElement)) { + if (this._config.pause === 'hover' && !('ontouchstart' in document.documentElement)) { $(this._element).on(Event.MOUSEENTER, $.proxy(this.pause, this)).on(Event.MOUSELEAVE, $.proxy(this.cycle, this)); } } @@ -228,7 +228,9 @@ var Carousel = (function ($) { value: function _keydown(event) { event.preventDefault(); - if (/input|textarea/i.test(event.target.tagName)) return; + if (/input|textarea/i.test(event.target.tagName)) { + return; + } switch (event.which) { case 37: @@ -252,13 +254,13 @@ var Carousel = (function ($) { var isPrevDirection = direction === Direction.PREVIOUS; var activeIndex = this._getItemIndex(activeElement); var lastItemIndex = this._items.length - 1; - var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex == lastItemIndex; + var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex; if (isGoingToWrap && !this._config.wrap) { return activeElement; } - var delta = direction == Direction.PREVIOUS ? -1 : 1; + var delta = direction === Direction.PREVIOUS ? -1 : 1; var itemIndex = (activeIndex + delta) % this._items.length; return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex]; @@ -296,9 +298,9 @@ var Carousel = (function ($) { var activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0]; var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement); - var isCycling = !!this._interval; + var isCycling = Boolean(this._interval); - var directionalClassName = direction == Direction.NEXT ? ClassName.LEFT : ClassName.RIGHT; + var directionalClassName = direction === Direction.NEXT ? ClassName.LEFT : ClassName.RIGHT; if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) { this._isSliding = false; @@ -383,7 +385,7 @@ var Carousel = (function ($) { $(this).data(DATA_KEY, data); } - if (typeof config == 'number') { + if (typeof config === 'number') { data.to(config); } else if (action) { data[action](); @@ -409,8 +411,8 @@ var Carousel = (function ($) { } var config = $.extend({}, $(target).data(), $(this).data()); - var slideIndex = this.getAttribute('data-slide-to'); + if (slideIndex) { config.interval = false; } diff --git a/js/dist/carousel.js.map b/js/dist/carousel.js.map index 2d3a723d1ca133f35bb79072e4b75c49e4bd1a09..433672eb94cd921d58798e80690bdc7fd644120c 100644 GIT binary patch delta 430 zcmbQSjdABT#toLdBHoUU-a25y)zQ(_+R@Ru%4ssAtkmXoUS$@3u!O&(qrZ-)qjQGy z=9z*M7{x$}GF)^rog5u~t%Dt%1FV4}uA5DSFEUAjH6%JZCh9l>Rp~ebNw93iWI3^{ z$=^lzCr=ksW2$nQ94ITg`HGl1BX^PxNIA&Nq|M?IADCD`)=gf|B|5oVoJ$B~a+$ME zq@$y!PCn4We5c9sqEcL*Aile!bCJvBeZ2CUtE3g!83QNpXA_;gK}nIZWb-AZ1B{dX zltni$SCL?1^q+h{t%L<=gZ^ZG8R^L(>XIyA7Z<22Ffx`*o~RMcSUCBu#wt!Yo;5_2>svv?T-RSIl&@ycWZo3_EH tnRT;a&`ie7Cxcm;m=zQhCZ7#8p3D?xz1cb}nu%3IQ^D45^TLR7CIA-+h%o>F delta 466 zcmdnFjd8{{#toLdBA$+po;u!+j@~-1j*hO@j*iY1PLl;>r8cMYDzor|W&Ir;{dGJY zo%NkI&lH@%$gKku@U;dib*NNIl3pQ>V>}5+9f*7szr={;$b3c|RAcHQa;@XProp1M{66 z9rK-Z+#Ma=b%GrogMrQgih@}{wayT(yQ6b~%jA8$@|!!Q71$>mX^2hUucXLWu=%0V z0Y+i4jzCApK)6TEH*ZmqVwx-_pfLHJS|}^XL&lTkWTYo2sY@~gP2F6tuE5AxFnNJS zG;3~nijMo_Mn&Pt!kUvgBf$=L*6{|4$ZkHPc~@xiDw_!Avc#gzthOtdH?MPuVq_~y zEh#O^+pOeti)r#-mkFEuT*Da|tu|kGGi4S~R4mEJEY^$9%qvMPDof0ntn6jDIn=9y z32ep%pJvw0p+VCbH@^*LVVYcS&p(+ZOnLH}AdbnpVWyi?!XlZt(@OJ_OEUBG6f`t9 JABrev0s!FLkq!U= diff --git a/js/dist/collapse.js b/js/dist/collapse.js index 859913f61..6774f7431 100644 --- a/js/dist/collapse.js +++ b/js/dist/collapse.js @@ -175,7 +175,8 @@ var Collapse = (function ($) { return; } - var scrollSize = 'scroll' + (dimension[0].toUpperCase() + dimension.slice(1)); + var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + var scrollSize = 'scroll' + capitalizedDimension; $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION); @@ -221,7 +222,8 @@ var Collapse = (function ($) { this._element.style[dimension] = 0; if (!Util.supportsTransitionEnd()) { - return complete(); + complete(); + return; } $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION); @@ -249,7 +251,7 @@ var Collapse = (function ($) { key: '_getConfig', value: function _getConfig(config) { config = $.extend({}, Default, config); - config.toggle = !!config.toggle; // coerce string values + config.toggle = Boolean(config.toggle); // coerce string values Util.typeCheckConfig(NAME, config, DefaultType); return config; } @@ -335,7 +337,6 @@ var Collapse = (function ($) { event.preventDefault(); var target = Collapse._getTargetFromElement(this); - var data = $(target).data(DATA_KEY); var config = data ? 'toggle' : $(this).data(); diff --git a/js/dist/collapse.js.map b/js/dist/collapse.js.map index 64ae53a7d8ab8b506b2b5fc0b5d31a4cffcd155d..dbf06db57d8fed6dd21e4971f0ed581f92e4371e 100644 GIT binary patch delta 492 zcmY+9y-EW?6or{YQ4?GZ{zVHjMUVv7Xov%97-*7`*uk|gl@_BmB>JFcpCX-ea%OUv|HqMCJ-(Gl;i?HL0$n^k&8eZD$>B1 zhbk)W28Kg208p9QeQpjQf1u)ne*~Wc$E1LrP^8-tz?;FSI16qPyz&or+xP~0LkBLP zj{z`;PhFd$xC~8tVwwuD?0V*HS=V3{sIH2)@M0I9#>2QY;Oha~luoE(Z6NB4I05Q8 zhgGzb+RX`$C-E#X#C`mtf5@sdOfj(T{-u diff --git a/js/dist/dropdown.js b/js/dist/dropdown.js index 9c5c2e79d..f90861ec0 100644 --- a/js/dist/dropdown.js +++ b/js/dist/dropdown.js @@ -82,7 +82,7 @@ var Dropdown = (function ($) { value: function toggle() { if (this.disabled || $(this).hasClass(ClassName.DISABLED)) { - return; + return false; } var parent = Dropdown._getParentFromElement(this); @@ -109,7 +109,7 @@ var Dropdown = (function ($) { $(parent).trigger(showEvent); if (showEvent.isDefaultPrevented()) { - return; + return false; } this.focus(); @@ -242,9 +242,19 @@ var Dropdown = (function ($) { var index = items.indexOf(event.target); - if (event.which === 38 && index > 0) index--; // up - if (event.which === 40 && index < items.length - 1) index++; // down - if (! ~index) index = 0; + if (event.which === 38 && index > 0) { + // up + index--; + } + + if (event.which === 40 && index < items.length - 1) { + // down + index++; + } + + if (! ~index) { + index = 0; + } items[index].focus(); } diff --git a/js/dist/dropdown.js.map b/js/dist/dropdown.js.map index 0c41b305e0579ca83f1d3b4d552d5d8157c380d3..1c4be71d6c1d4d247cedb3b728ff7157e3a5c9f9 100644 GIT binary patch delta 352 zcmexRxUOhJ7t7=rR+-InSk#%pjH~Ppd`hm?){c(OdCoeij*i|su8xkbI?j%cj@H4B z&Osn4SC`56MfE1H5#^ekA||W=R-NO5Q}yI-F-a9ykdYA(HSUg%?jRGL;l_r6jh%cz z%!H}TXYw~OBUUrt6dm`;{cNI}oy0dXin{8ALe)Ei9OMl$tza^Tq$#7v`lAP(fy1N@|6!u7ZNTzCvk1Oy1-b6>Jp@HpiG;U=mVDE6qzT$;{7F&`8x(s0Nxm+00yibBOsZMgVcz BWM}{Y diff --git a/js/dist/modal.js b/js/dist/modal.js index b467c40f0..f28df5c76 100644 --- a/js/dist/modal.js +++ b/js/dist/modal.js @@ -230,14 +230,18 @@ var Modal = (function ($) { $(this._element).addClass(ClassName.IN); - if (this._config.focus) this._enforceFocus(); + if (this._config.focus) { + this._enforceFocus(); + } var shownEvent = $.Event(Event.SHOWN, { relatedTarget: relatedTarget }); var transitionComplete = function transitionComplete() { - if (_this2._config.focus) _this2._element.focus(); + if (_this2._config.focus) { + _this2._element.focus(); + } $(_this2._element).trigger(shownEvent); }; @@ -394,7 +398,7 @@ var Modal = (function ($) { } if (this._isBodyOverflowing && !isModalOverflowing) { - this._element.style.paddingRight = this._scrollbarWidth + 'px'; + this._element.style.paddingRight = this._scrollbarWidth + 'px~'; } } }, { @@ -423,7 +427,7 @@ var Modal = (function ($) { this._originalBodyPadding = document.body.style.paddingRight || ''; if (this._isBodyOverflowing) { - document.body.style.paddingRight = bodyPadding + this._scrollbarWidth + 'px'; + document.body.style.paddingRight = bodyPadding + (this._scrollbarWidth + 'px'); } } }, { diff --git a/js/dist/modal.js.map b/js/dist/modal.js.map index 110db41206b382078a3aea30135e88c1b7c5807d..ebc852275731370c2482059ac2575f6c7494f143 100644 GIT binary patch delta 364 zcmdmZjq%tu#toO)xs!Af9UT*`gB_hyHs50}<<+)!baXCp(n)r7^we<%vcd8?u8xkb zAg&`wWs#FLP?f98mEpSil&S=?C{Qb=!p(m))L57*A|`w5s!jINHDS!(T(2u3 zw0W8RXYR?xF+yT_Y57ITsc!knrNtVWF?kALP&;|8x5wmV_9Bxde4Lo8WAY|X^wXRi zoys}6Gemgu-9V1blYICDm=jd0CohN*VW};sNSHj=M`H4t1hL64W87g9tU!sngvkzW a5|ix`**0g!E@FmBLG%D+HrpkB<^%vGLUbMg delta 325 zcmX?hjd9~O#toO)d0cf89UT*`gB_jCoi^WPFXd&@@tk~+Lx#!Jd2+3&JBs||^P=HQ zI{uUO#bj9>ff}4QhlxGl6L;6~baeF8aRv(Mq&hmL>bN^P0>vhKsOC-%(BzRs5`(I9 z1lgzWviYj21hXteH8vA~Vv~PLs%+NO{Ljo(5HUGWS8Z~Dt_f>;RD_QElO!cK zZ`FMv$Y`~>-=2|2q$DG=ST8;`FD<_)In^ycxwKeAbMg*v4@RrW{q{ID_*lQ;TEOg0E+pZqQ+3`ux%LhJ!%B>v=tSh>xS HiElXpu`^^= diff --git a/js/dist/popover.js b/js/dist/popover.js index fcd6bd200..5e057c0fe 100644 --- a/js/dist/popover.js +++ b/js/dist/popover.js @@ -123,7 +123,7 @@ var Popover = (function ($) { }, { key: '_getContent', value: function _getContent() { - return this.element.getAttribute('data-content') || (typeof this.config.content == 'function' ? this.config.content.call(this.element) : this.config.content); + return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content); } // static diff --git a/js/dist/popover.js.map b/js/dist/popover.js.map index de4985130f0545bae8647e20ad061447d4542e7d..c4b9cf3ee205138abe7618c84a8bb10048c20893 100644 GIT binary patch delta 32 ocmdnsu+d?|CJsJtM@Mg+P)Em59d}3PvdsrLG=(?6koI5!0K6;;@Bjb+ delta 31 ncmdn!u)$%&CJs(dM@LVcP)Enm$$vSNH{avn7T)|y+MNXex}ys= diff --git a/js/dist/scrollspy.js.map b/js/dist/scrollspy.js.map index 5436299262928935f93d4f8f99767aafdcf3d613..0f696895051062a2f44a169049676645f989a994 100644 GIT binary patch delta 30 lcmcavd%1Rlm^7QOwWFhR$z~a8W<^#FO$A%K&003=nE;|`2^atX delta 36 rcmcayd$V?fm^53YwWFi6>1G*eW<~C_(!Au7%=|nB4b9CeHtU%H>iG-M diff --git a/js/dist/tab.js b/js/dist/tab.js index ee689ecdd..33c228058 100644 --- a/js/dist/tab.js +++ b/js/dist/tab.js @@ -83,7 +83,7 @@ var Tab = (function ($) { value: function show() { var _this = this; - if (this._element.parentNode && this._element.parentNode.nodeType == Node.ELEMENT_NODE && $(this._element).parent().hasClass(ClassName.ACTIVE)) { + if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).parent().hasClass(ClassName.ACTIVE)) { return; } @@ -157,7 +157,7 @@ var Tab = (function ($) { key: '_activate', value: function _activate(element, container, callback) { var active = $(container).find(Selector.ACTIVE_CHILD)[0]; - var isTransitioning = callback && Util.supportsTransitionEnd() && (active && $(active).hasClass(ClassName.FADE) || !!$(container).find(Selector.FADE_CHILD)[0]); + var isTransitioning = callback && Util.supportsTransitionEnd() && (active && $(active).hasClass(ClassName.FADE) || Boolean($(container).find(Selector.FADE_CHILD)[0])); var complete = $.proxy(this._transitionComplete, this, element, active, isTransitioning, callback); diff --git a/js/dist/tab.js.map b/js/dist/tab.js.map index 1cf06339c443d05546b8da8d31569c9b7bc88c3c..58eeccb93e6a45df1770a8640056f27f57b4fdd2 100644 GIT binary patch delta 114 zcmaEv^(|{dJd2#SqocQur=z2%jP?p2L#IF}YY+XtE5i zql_a&7O2?K+S<|4wZH|W$5SWJ(J^rH0Z#GFQ+f9bZw^&F%Fd*yI9W+kYqPJWCJz83 Cs2}$L diff --git a/js/dist/tooltip.js b/js/dist/tooltip.js index 9f08af16b..a1bd76873 100644 --- a/js/dist/tooltip.js +++ b/js/dist/tooltip.js @@ -154,11 +154,9 @@ var Tooltip = (function ($) { }, { key: 'toggle', value: function toggle(event) { - var context = this; - var dataKey = this.constructor.DATA_KEY; - if (event) { - context = $(event.currentTarget).data(dataKey); + var dataKey = this.constructor.DATA_KEY; + var context = $(event.currentTarget).data(dataKey); if (!context) { context = new this.constructor(event.currentTarget, this._getDelegateConfig()); @@ -173,7 +171,13 @@ var Tooltip = (function ($) { context._leave(null, context); } } else { - $(context.getTipElement()).hasClass(ClassName.IN) ? context._leave(null, context) : context._enter(null, context); + + if ($(this.getTipElement()).hasClass(ClassName.IN)) { + this._leave(null, this); + return; + } + + this._enter(null, this); } } }, { @@ -238,9 +242,9 @@ var Tooltip = (function ($) { $(this.element).trigger(this.constructor.Event.INSERTED); this._tether = new Tether({ + attachment: attachment, element: tip, target: this.element, - attachment: attachment, classes: TetherClass, classPrefix: CLASS_PREFIX, offset: this.config.offset, @@ -263,7 +267,12 @@ var Tooltip = (function ($) { } }; - Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE) ? $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION) : complete(); + if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) { + $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION); + return; + } + + complete(); } } }, { @@ -310,7 +319,7 @@ var Tooltip = (function ($) { }, { key: 'isWithContent', value: function isWithContent() { - return !!this.getTitle(); + return Boolean(this.getTitle()); } }, { key: 'getTipElement', @@ -373,8 +382,8 @@ var Tooltip = (function ($) { if (trigger === 'click') { $(_this3.element).on(_this3.constructor.Event.CLICK, _this3.config.selector, $.proxy(_this3.toggle, _this3)); } else if (trigger !== Trigger.MANUAL) { - var eventIn = trigger == Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN; - var eventOut = trigger == Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT; + var eventIn = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN; + var eventOut = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT; $(_this3.element).on(eventIn, _this3.config.selector, $.proxy(_this3._enter, _this3)).on(eventOut, _this3.config.selector, $.proxy(_this3._leave, _this3)); } @@ -416,7 +425,7 @@ var Tooltip = (function ($) { } if (event) { - context._activeTrigger[event.type == 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true; + context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true; } if ($(context.getTipElement()).hasClass(ClassName.IN) || context._hoverState === HoverState.IN) { @@ -452,7 +461,7 @@ var Tooltip = (function ($) { } if (event) { - context._activeTrigger[event.type == 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false; + context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false; } if (context._isWithActiveTrigger()) { @@ -508,9 +517,8 @@ var Tooltip = (function ($) { if (this.config) { for (var key in this.config) { - var value = this.config[key]; - if (this.constructor.Default[key] !== value) { - config[key] = value; + if (this.constructor.Default[key] !== this.config[key]) { + config[key] = this.config[key]; } } } diff --git a/js/dist/tooltip.js.map b/js/dist/tooltip.js.map index 10555ae99121112a8f94481a74736420806a68ea..cf68704b5aa3d7ee5bccee617de4be1c8c781860 100644 GIT binary patch delta 698 zcmZuuK}-`t6wR*NVz(t*(xpXO>{<(Kb&6087#m}z+d^t3EiTjsfu=S~X}jzaSR2%s z=*j3s^e5h$=!rxRn9Mj_eEJ?Y@r5*W`QQ#Oxg z%$wDlhd-V%lIAlslzMw$)0=d)ZP!z%1eEB3ZLbTueDZMHZ#9XQO{K~B6)ffA*5FB0 zH-RZjI<-HR=~^JSeL;q4rG4t}gIR&4mn5>|KVgSA$2cy7aRyCb$&joU$-pqz4b4y( zQlb8%EzauPPkKNpX@8hbBVuXYXH9G{0arn4UAi-kYPVOsX40%^QYlEOZ;BNVsb#1X)xms6l%)>=J M2#53lxvBe@e{~tz4*&oF delta 589 zcmaJ+(Q8s+9Od5Kd)HN&u1q(qd0nhYeKvHcsD~c*P!M~F-d6W&&pmu_&iT&ooZs*Du5fQx=;TyX z)PpLWqLeifLXfM5Qkl%i|` zdjS`+HVdY$mVQHsCP)^VmB@L@YK*Vh?)PKJ8F6kTC|x8;N;729KxXR}pLNcOc;qUW zgN-C%5Zvp-23|i)<|&;w?S@Jzoifs{@+WSuB$%c{_;AE7XDMqZ_)pIXWhi6jW+}~@ zZboJ(ogropf}@rHea88Z(dV*cj$_*&6t?(|e^TmkOCTt;`I*2c32z)Dco4EnMs^ss zP}trrFt;=Bm}IDjJOf>=yKI@V8~kZ#S`?!d42H*z_gg%Z zZUUY9826?6M0`mffM+En#Ic<|jJ>o|)M5q<;$_jsKWCmPc$`Z*%er2^R$Hq!bxn(D zJ;rx(MG@aGdT}8?CTelC^S2c(R%~h--WQJIRZ->V7xw!cKA%~9>UvdQsOycYpO=XfX@GGDLSjeyNy*wD5asP1O1HmZ(np{q(k+j^g>L6Oxhe26Iu(T+bRd z@QAY=fE~0mSICq2AX8C_Hh|5zl-~u|O^|58XaTR`yP1uYnBmC`tF!^y$=n5S6C~9V z^w-xR7yFjfW#VE}U0xK_o6G@l*gYXCsbC0K)L0nkXu6JA>w zHrY17B+@NG!f)!Ov*P-yIT4Z3eyerz2(7GF5cf51IKb;NYF!4X%TJ6yX1i&mxfk)L z93!cL7sbc3c`{Wh(`#FCZtjPoKJEB4Ie46}l5t#IXex7N5DdJoUy4RuKkP^Sz%OH1 zXyAuJZKc0QOK#xr^?P@ZhF)0R?}qk)e`gd7y-{>j8lHl3nNGCvXTdSHM5qsLj zbN@HWz4%O{7bqQ5ZxDLPi&H;h_C{Np{nycP$CqaDvu5ELonl2_!;ap>*ZO)&DBxGU Jh`;m)e*nO}rNsaM delta 399 zcmX|+%S!@L6vnyZq~%CyK5|A$ZBZ)Mg0zm@7 z2B4_`teeswgcKoJ{5B=HI>lA4yW)$vXtd+HbEr=Qx{0HfH8b7eSq%3rGo-6uS)ziM zafbd$!HDJ#)Euw|zKtx2JU~NYrFdYCkRo1NW4TB0Dgm*4(JJGy;uj8Uc&ljmrA%U9na8ki1Dn1C-Z-52>O1-cC9rc0