From 53970fc4458c14568b3bfcde64225b23e835065e Mon Sep 17 00:00:00 2001 From: tromgy Date: Wed, 25 Nov 2015 17:08:55 -0500 Subject: [PATCH 1/2] added elliptical arc --- src/easeljs/display/Graphics.js | 344 +++++++++++++++++++++++++++++++- 1 file changed, 333 insertions(+), 11 deletions(-) diff --git a/src/easeljs/display/Graphics.js b/src/easeljs/display/Graphics.js index a7a099d19..94088864e 100755 --- a/src/easeljs/display/Graphics.js +++ b/src/easeljs/display/Graphics.js @@ -102,28 +102,29 @@ this.createjs = this.createjs||{}; * lt {{#crossLink "Graphics/lineTo"}}{{/crossLink}} * a/at{{#crossLink "Graphics/arc"}}{{/crossLink}} / {{#crossLink "Graphics/arcTo"}}{{/crossLink}} * bt{{#crossLink "Graphics/bezierCurveTo"}}{{/crossLink}} - * qt{{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} (also curveTo) + * ea{{#crossLink "Graphics/ellipticalArc"}}{{/crossLink}} * r{{#crossLink "Graphics/rect"}}{{/crossLink}} - * cp{{#crossLink "Graphics/closePath"}}{{/crossLink}} + * qt{{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} (also curveTo) * c{{#crossLink "Graphics/clear"}}{{/crossLink}} - * f{{#crossLink "Graphics/beginFill"}}{{/crossLink}} + * cp{{#crossLink "Graphics/closePath"}}{{/crossLink}} * lf{{#crossLink "Graphics/beginLinearGradientFill"}}{{/crossLink}} - * rf{{#crossLink "Graphics/beginRadialGradientFill"}}{{/crossLink}} + * f{{#crossLink "Graphics/beginFill"}}{{/crossLink}} * bf{{#crossLink "Graphics/beginBitmapFill"}}{{/crossLink}} - * ef{{#crossLink "Graphics/endFill"}}{{/crossLink}} + * rf{{#crossLink "Graphics/beginRadialGradientFill"}}{{/crossLink}} * ss / sd{{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} / {{#crossLink "Graphics/setStrokeDash"}}{{/crossLink}} - * s{{#crossLink "Graphics/beginStroke"}}{{/crossLink}} + * ef{{#crossLink "Graphics/endFill"}}{{/crossLink}} * ls{{#crossLink "Graphics/beginLinearGradientStroke"}}{{/crossLink}} - * rs{{#crossLink "Graphics/beginRadialGradientStroke"}}{{/crossLink}} + * s{{#crossLink "Graphics/beginStroke"}}{{/crossLink}} * bs{{#crossLink "Graphics/beginBitmapStroke"}}{{/crossLink}} - * es{{#crossLink "Graphics/endStroke"}}{{/crossLink}} + * rs{{#crossLink "Graphics/beginRadialGradientStroke"}}{{/crossLink}} * dr{{#crossLink "Graphics/drawRect"}}{{/crossLink}} - * rr{{#crossLink "Graphics/drawRoundRect"}}{{/crossLink}} + * es{{#crossLink "Graphics/endStroke"}}{{/crossLink}} * rc{{#crossLink "Graphics/drawRoundRectComplex"}}{{/crossLink}} - * dc{{#crossLink "Graphics/drawCircle"}}{{/crossLink}} + * rr{{#crossLink "Graphics/drawRoundRect"}}{{/crossLink}} * de{{#crossLink "Graphics/drawEllipse"}}{{/crossLink}} - * dp{{#crossLink "Graphics/drawPolyStar"}}{{/crossLink}} + * dc{{#crossLink "Graphics/drawCircle"}}{{/crossLink}} * p{{#crossLink "Graphics/decodePath"}}{{/crossLink}} + * dp{{#crossLink "Graphics/drawPolyStar"}}{{/crossLink}} * * * Here is the above example, using the tiny API instead. @@ -533,6 +534,27 @@ this.createjs = this.createjs||{}; return this.append(new G.Arc(x, y, radius, startAngle, endAngle, anticlockwise)); }; + /** + * Draws an elliptical arc defined by the radii rx and ry, startAngle and endAngle arguments, centered at the position (x, y). + * + * A tiny API method "ea" also exists. + * @method ellipticalArc + * @param {Number} x center X + * @param {Number} y center Y + * @param {Number} rx horizontal radius + * @param {Number} ry vertical radius + * @param {Number} startAngle Measured in radians. + * @param {Number} endAngle Measured in radians. + * @param {Boolean} anticlockwise if true, clockwise if false + * @param {String} closure omit for no closure (just an arc), 'radii' (makes a sector), 'chord' (makes a segment) + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.ellipticalArc = function(x, y, rx, ry, startAngle, endAngle, anticlockwise, closure) { + return this.append(new G.EllipticalArc(x, y, rx, ry, startAngle, endAngle, anticlockwise, closure)); + } + + /** * Draws a quadratic curve from the current drawing point to (x, y) using the control point (cpx, cpy). For detailed * information, read the @@ -1259,6 +1281,23 @@ this.createjs = this.createjs||{}; **/ p.a = p.arc; + /** + * Shortcut to ellipticalArc. + * @method ea + * @param {Number} x + * @param {Number} y + * @param {Number} rx + * @param {Number} ry + * @param {Number} startAngle Measured in radians. + * @param {Number} endAngle Measured in radians. + * @param {Boolean} anticlockwise + * @param {String} closure omit for no closure (just an arc), 'radii' (makes a sector), 'chord' (makes a segment) + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @protected + * @chainable + **/ + p.ea = p.ellipticalArc; + /** * Shortcut to rect. * @method r @@ -1769,6 +1808,289 @@ this.createjs = this.createjs||{}; this.anticlockwise = !!anticlockwise; }).prototype.exec = function(ctx) { ctx.arc(this.x, this.y, this.radius, this.startAngle, this.endAngle, this.anticlockwise); }; + /** + * Graphics command object. See {{#crossLink "Graphics"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class EllipticalArc + * @constructor + * @param {Number} x + * @param {Number} y + * @param {Number} rx + * @param {Number} ry + * @param {Number} startAngle + * @param {Number} endAngle + * @param {Boolean} anticlockwise + * @param {String} closure + **/ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * @property rx + * @type Number + */ + /** + * @property ry + * @Type Number + /** + * @property startAngle + * @type Number + */ + /** + * @property endAngle + * @type Number + */ + /** + * @property anticlockwise + * @type Boolean + */ + /** + * @property closure + * @type String + */ + (G.EllipticalArc = function(x, y, rx, ry, startAngle, endAngle, anticlockwise, closure) { + this.x = x; this.y = y; + this.rx = rx; this.ry = ry; + this.anticlockwise = !!anticlockwise; + this.closure = closure; + + // Map negative angles into positive range + if (startAngle < 0 || endAngle < 0) + { + if (startAngle < -2 * Math.PI) + { + var s = startAngle / (2 * Math.PI); + startAngle = (s + Math.floor(Math.abs(s))) * 2 * Math.PI + 2 * Math.PI; + } + else if (startAngle < 0) + { + startAngle += 2 * Math.PI; + } + + if (endAngle < -2 * Math.PI) + { + var e = endAngle / (2 * Math.PI); + endAngle = (e + Math.floor(Math.abs(e))) * 2 * Math.PI + 2 * Math.PI; + } + else if (endAngle < 0) + { + endAngle += 2 * Math.PI; + } + } + + + // Normalize the angles + if (startAngle <= endAngle) + { + if (this.anticlockwise === true) + { + this.start = -startAngle; + this.end = -endAngle; + } + else + { + this.start = -endAngle; + this.end = -startAngle - 2 * Math.PI; + } + } + else + { + if (this.anticlockwise === true) + { + this.start = -startAngle; + this.end = -endAngle - 2 * Math.PI; + } + else + { + this.start = -endAngle; + this.end = -startAngle; + } + } + + }).prototype.exec = function(ctx) { + // x, y - top left + // xe, ye - bottom right + // xm, ym - center + var x = this.x - this.rx; + var y = this.y - this.ry; + var rx = this.rx; + var ry = this.ry; + var start = this.start; + var end = this.end; + var xe = this.x + rx; + var ye = this.y - ry; + var xm = this.x; + var ym = this.y; + var closure = this.closure; + + var quadrantIncrement = Math.PI / 2; + var quadrantStart = Math.floor(2 * Math.abs(start) / Math.PI); + + // How long is the arc + var span = Math.abs(end); + + // Array of intermediate angles for + // breaking up the arc into segments <= PI/2 + var ia = [0]; + + for (var i = 1; i <= 4; i++) + { + ia[i - 1] = (quadrantStart + i) * Math.PI / 2; + } + + var startPoint; + var chordMidX; + var chordMidY; + + if (closure === 'radii') + { + ctx.moveTo(xm, ym); + } + else if (closure === 'chord') + { + var startEA = eccentricAnomalyFromPolarAngle(start, rx, ry); + var endEA = eccentricAnomalyFromPolarAngle(end, rx, ry); + + chordMidX = xm + rx * (Math.cos(startEA) + Math.cos(endEA)) / 2; + chordMidY = ym + ry * (Math.sin(startEA) + Math.sin(endEA)) / 2; + + ctx.moveTo(chordMidX, chordMidY); + } + + if (span <= ia[0]) // 1 segment + { + startPoint = elarcseg(ctx, xm, ym, rx, ry, start, end, closure); + } + else if (span <= ia[1]) // 2 segments + { + startPoint = elarcseg(ctx, xm, ym, rx, ry, start, -ia[0], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[0], end, closure); + } + else if (span <= ia[2]) // 3 segments + { + startPoint = elarcseg(ctx, xm, ym, rx, ry, start, -ia[0], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[0], -ia[1], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[1], end, closure); + } + else if (span <= ia[3]) // 4 segments + { + startPoint = elarcseg(ctx, xm, ym, rx, ry, start, -ia[0], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[0], -ia[1], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[1], -ia[2], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[2], end, closure); + } + else // 5 segments + { + startPoint = elarcseg(ctx, xm, ym, rx, ry, start, -ia[0], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[0], -ia[1], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[1], -ia[2], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[2], -ia[3], closure); + elarcseg(ctx, xm, ym, rx, ry, -ia[3], end, closure); + } + + if (closure === 'radii') + { + ctx.lineTo(xm, ym); + ctx.closePath(); + } + else if (closure === 'chord') + { + ctx.lineTo(chordMidX, chordMidY); + + ctx.closePath(); + } + }; + + // Elliptical arc segment + function elarcseg(ctx, xm, ym, rx, ry, start, end, closure) { + var startEA = eccentricAnomalyFromPolarAngle(start, rx, ry); + var endEA = eccentricAnomalyFromPolarAngle(end, rx, ry); + + // From parametric equation by L. Maisonobe + var k = -Math.sin(endEA - startEA) * (Math.sqrt(4 + 3 * Math.pow(Math.tan((endEA - startEA) / 2), 2)) - 1) / 3; + + // Starting point of the curve + var r1 = rx * ry / Math.sqrt(Math.pow(ry * Math.cos(start), 2) + Math.pow(rx * Math.sin(start), 2)); + var x1 = xm + r1 * Math.cos(start); + var y1 = ym + r1 * Math.sin(start); + + // End point of the curve + var r2 = rx * ry / Math.sqrt(Math.pow(ry * Math.cos(end), 2) + Math.pow(rx * Math.sin(end), 2)); + var x2 = xm + r2 * Math.cos(end); + var y2 = ym + r2 * Math.sin(end); + + // Control point 1 + var x3 = x1 - k * Math.sin(-startEA) * rx; + var y3 = y1 - k * Math.cos(-startEA) * ry; + + // Control point 2 + var x4 = x2 + k * Math.sin(-endEA) * rx; + var y4 = y2 + k * Math.cos(-endEA) * ry; + + if (closure === 'radii' || closure === 'chord') + { + ctx.lineTo(x1, y1); + } + else + { + ctx.moveTo(x1, y1); + } + + ctx.bezierCurveTo(x3, y3, x4, y4, x2, y2); + + var startPoint = { x: x1, y: y1 }; + + return startPoint; + } + + // Maps from polar angle into the angle used in ellipse + // parametric equations (this angle is called "eccentricAnomaly") + // it is the same as polar angle when the ellipse is a circle + // E = atan((rx/ry)*tan(A)) + // where A is the polar angle and E is the eccentricAnomaly angle + function eccentricAnomalyFromPolarAngle(angle, rx, ry) + { + var sign = 1; + var retval; + var e = 0.00001; + + var cosa = Math.cos(angle); + var sina = Math.sin(angle); + + // circle or near extremeties -- polar angle and + // eccentricAnomaly are the same + if (rx == ry || Math.abs(cosa) < e || Math.abs(sina) < e) + { + return angle; + } + + var tana = rx * Math.tan(angle) / ry; + + // branches of arctan function + if (cosa > 0 && sina > 0) + { + retval = Math.atan(tana); + } + else if (cosa < 0 && sina > 0) + { + retval = Math.PI + Math.atan(tana); + } + else if (cosa < 0 && sina < 0) + { + retval = Math.PI + Math.atan(tana); + } + else if (cosa > 0 && sina < 0) + { + retval = 2 * Math.PI + Math.atan(tana); + } + + return retval; + } + /** * Graphics command object. See {{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. * @class QuadraticCurveTo From 47b04283ba45aea29755cb6451d5e004c672c23b Mon Sep 17 00:00:00 2001 From: Alex Lipatov Date: Mon, 11 Dec 2017 21:24:25 -0500 Subject: [PATCH 2/2] More for elliptical arcs: code cleanup, added test case, added demo file. --- docs/EaselJS_docs-0.8.1.zip | Bin 1223582 -> 1251827 bytes ellipticalArcDemo.htm | 99 + lib/easeljs-0.8.1.combined.js | 24439 ++++++++++++++++-------------- lib/easeljs-0.8.1.min.js | 6 +- lib/webgl-0.8.1.min.js | 2 +- src/easeljs/display/Graphics.js | 187 +- tests/spec/GraphicsSpec.js | 4 + 7 files changed, 12996 insertions(+), 11741 deletions(-) create mode 100644 ellipticalArcDemo.htm diff --git a/docs/EaselJS_docs-0.8.1.zip b/docs/EaselJS_docs-0.8.1.zip index d0bfe518ce5d24ca4636d5ecb2a6ecc31d0dfdc6..b16d203fb2980577c6f3954f3963fc52b37346bc 100644 GIT binary patch delta 1167225 zcmYJa18|_f+XY%}ZQIz|w!JmBwr#)d);6}bZFAdhZQHhe_xu0uog2)YJd;T>nPl?h zQFl&wP)1qFJJR7vldgAK6wNAFqRJ;dg%omC_83Z7`G zcu+R5uZWVRWI-K2|04E0?B=z7WR%_BA773p9~!Ph8=lE5J1zxXB(J$w5s7?-Rx~?S z%bOM<)nA?#B*=0Zy4*-;Ku0|;Mk{UT7!-;5Z5{NCidnf`cxzJg;8sT{x5X#VumSL) z8o!gWT&(H!)n!UHDlISkTxHyyC@#4jw=nX0rX@?XllffQ*3)TDo*|`H)iZz6wv)iby>Jjj9!%B zCgBnpt!eSDmQ2+yN&HZ@7@~jyHDU0qQ2~W8aN@8huvit0N1e$a7VpKCk zK^sTaS;B_j6`;`}5vC~T?`0`^(^P_HraqZWN(#g0+<|xu8NG6Rt^P&CiVm(s`CU+C zAhR32+8F^nYgfu>8^!=)5(wHh@WSPFP(D0!-?KKipd}=~kbCL9cONyqA6O7Ze+F=Z zmPtppUEmfSbgHxpLS2g#pMD#+x#!D`;OaVBXw^uE3YQ6$&!h}m75eUrJt)6Bd4If= z{Pp3mHaZA&iJ>^4*)hR2K3tscaxob&BHk9SB!e*X^!tpQf>14n0<;u_{6&us4qiMr zD|xH*`P_vB4 zM?guy$w~nIlRWSEi9(QZ_Jvn6Yq1MK?9$_UPmt$x92=V;kn@(Sbp&T183f1D?JB_* zk;x%+nY2Ub(OZh(yS1TYN`gWoRSy&UfPsLbNu za1G(BkzS{dmWW}-JVbAN!qjs`j9qX^+fCA6u>9t901f9?hvg@R;LE*BQm13EitXUZ22VH;@xl4UBvEuBBmwnaSbGpDSd)5GF01BC*s>tlIkvg`^X zBj9jj%=3InjhrQfus^c*Py{$~3O)w;@o8b%!YxX6FX7N(3O`kmV+pa-Zv&Y)qtJ$f zZZedxPo*2eH1`9FQ)q%iHMPFL<3%O$>ikj605})0{=C6QCj4!9%PEmO&e9slO5BE` zo<3DXn(M|53lM7$(uX${HrgESe5pWty?k1sZBm6AY!E!U(UU-@9@PxUc~Ug{SJB!a zGyl+JyVB>~X<<%v|FKFU!w9c1ix8CMdnM45aK~Ii`*%wN;#HbQ4+P;a$wJNou{5S( zU_7!VRK4()J4Y>Ed#bdPfACIk%-+A$UqIkUQ~veMy4)$aAJedQpE6zT+Mvk|1wH%N z{>lN(|0OA-ukvQA6RYL$5Qn=8(!OLCctewj&BhT2 zD>0Pgwq{a+5bJuJoq56vixhIqygHzrnKIk09H=qF9PX7rOtt-*=e{oi-+AK=+?;sq zuWAnauJFMiF^*eMnCchgeqK973tCXUT_|k*iWHa_TZFrhV=-LaH_uj?1ZlLDxjM@} zX3~{`AQ3bsljvYoo|3AH|0AdqUAyOj_o(qHJ<*decvKsoF)2oS&2-rSmLz0L>txpv z8_6P4F@(RP--?`Lnw-Pkl-y7X7|y-jiH@0Cx~=Ee^mpQ*CF42!k$z`}4gz-^D!XGV zE{3Y|s+zn!Y0HJ5Snqfscdqte%>h?KXR=I5qX&k;hrFB|U9Nl>7=HM>H(5yOY#}?F zw_#7}a(21fWX?EkMs z2_&vbB=~KGy&!42dXTR`KxA(~4Ad12q-dqE)fdjpFye7VK+J>mfeO{Hz`s9D6qG9x z|4re09B8ky%Z;i07seSIV85j5)$~*s+og!sBP*;9_`TSsQq@lAZhhimf#jqgY38y0 z_3t@tITR!fVU|H`}zt6eSd}B0$7V5Wwdc$PpNpjcPnmadJo*(H{> z?^&j>^tW7R=v}}8@Ch}B{S*t$Hjq{GTx{@ANmjh^Kfc9A(#GHlBfQ<2+4+PRc**%~tNt0jsas4>kuq1G zO+}5(WUsa#Nq(E{+bt%0n|GZ`vD`N9nH40icX&5C6KS5Dtgostqm!(5bLT7l<~M~p z_V@cCK+(13&7koyU`OHSRu$?RC)uI5el-}V$9F!sr^k0va6oqlfHc4{$k z!7|pTM>!UJ#8~l10j<_5K}uxfVw;#TIOoLh5F>noHD<) z-H(Av{EYfuCwX@n{?d7U^&q3k(t$3{LN)s%eZWkc;c=9R{;tSP@@>2)e(&*(44>;R zQoR0NXG~wi^CMPHEZm;oBK>CpoW-L<&HCZ&9Fu0jU_@X0vRK4F(uA{KAZF-~hF^Y@{#)GXF8It+*+wP<}ol zgrUHntqd~PTNQku5fZ5O|%0c!?VeY`2d#v>zg~0~&53 zA><&Llui6r(^CRr$I)`xO=Mj8I7*T5(~H^&!9&%_v#}@0(Jst<0~zgltyF4~SWc85 zrgw`AV8G3T$dgHSeCJun{X^|Rq_pgB<;Sv_Hq5rx^U^9N8&7dF#Sq<&4XVzt6&oZ5 zSet7)bBa#ugI0L*$Fiw2_R1fefCC#TV++fQW>bsYdX^HW7Ari&YcIr%b%_Bqa!cil zPOfm$x=N)zExCe0i;+lU7`T7Q#JwiRJ5eihlHX6Zz4%74*m+XbubNBuXt z+U7~7E1vsQyq@_GKB>Fwb~m>(6N}U(0}ENfhGz^TLH5&K zmEkMU&xQzZXRcoBYhnlYoXWXLdyr>YX^g_qaPDEhlQVo7%#Eg^%WWYHntypx{db9U zA#<^C)Ovm2(MsomZAqRWObBb^;~m@9DsK%0TT=0?yKL&pF@>h@*b^V@1IPyUl<1zP z4WGh&gPz{)93t(G@Xiw8+H9p$K-Am0m^{6QWLS=NeE=QC?;Y{ghbLq>RYh<<2G?Hl zit=3@{bz;Vx1K_2P!CZS=dz&;Dv;}QrXRCmTED-QL#a@m`4ET&Z3z)*bPXf!4x!qt zvfGoIRx8-!ZtBdYB_!XkoWEfvJofd28!k)hL?AgyRp!(|_R%^eRUK#ge zgVk)gw|eYzG;R^am4k~;?3@1GXs!HY89d@=wPEhfNRTCFn~NFmZioBprGIt5gLC_-BT)Luy-LMJk59K%0viyJ%xWuGc~}fgdJS;tbrd=W1JS^7S7z z!auTK8m(3CJK>1B(B9hZ4M^027KV6Nvx4};`A=|%_O#L{m7i`;{F+d1dWRs1o~HW! zSni?l9j!lQaCX48OqwD&8O%NNwL;nB)NqljvmNXs+Elg%*urM9EJ~Wq3qM0Ls0hp| zM-B6}Aw+njjAJUi$QnuZ=iid+50<#LO1f^GW08_n)vqYv7j z&_+#W9VZ(H*kjVX1eJ0%<1rFbXi}k!hkoz3K^im%4WhdU``ZK^;0lhTw{>zKy4p6j ziacvz9ER<`Dq>=j|2?Epid=sCOPzphaTR9KU?x@4C5$~F(8Q9R>4$zQVJiyRP*Lqt z=}EIKV+ky0BE`;6FxpO!S@2He6N%jP$I4;<>bXlAV6L(R-27PYeOlL@!dz3JB9#8Fiqp_2KgBz@|MF#b7jDnB$^vg z;mvu5CK&7;|4KGF*M|>Oq#5yWxr91WmX=_f=+Tq*xPScBkif(U#a>80uGt|$p%XsQ zBPOjGMnGXGjIWYVv}{Krn`AHVjxWN1>%@Lq35fs1bOO-x*zA@~UK`WPSg6#7e z#)4YAu*UQ+K28%}AZRdp*5Y69P-OE`^NvE!Pp7aFYV3(ECA#^MdoNpUDR9|d)3{FkA#-7Ui4r(jtX!}+INl%S=+*Jmbg zCsOEK2C9#3j3S5dr*3`1u~&KmZI&mJ7Z?V8$S5<2uhi7OL93WZtI41nqt!y4SV(gl zdoU{r!t&gXVWWbW8)7f|A@@?}kLsy-0PfRbG11|F;r`bD6*Hro#n>Mcs$H;C6FP=~ z9`HPPA*w~iG=2U`S;z5t6 zYrfrB7G9FVtMf$KO&dai)rVMn$LPwo=4=>Oyyi>WEiu! z*&sCLfg#x?$t1dQZW=54bq3ZtGyogjh=i|S5i-X)b$o;qpNN8{C#6|)HyV05N~?tg zb*OQpJJBcWqee+A)*(56PT`1;`l*Dp?doJ@U!v@6R3Da%TbnnnxqgP@oaE|AgOFQk z;K#0$RDcI|=(gZ^Cp84<)FSepl!f^1J}~e?CFVko$D0hh=nigz%N!PW zsIG>iKh16Y)*=fwqZjl_?l56eHwwpiks5W|PNWsVSPKC?SZOYP)PPUo_x%RUUsL$d zm;F<%m4xH>cOM@ox?VJdF952bPnG<1=Y5qxY`#C?4+*tPLUI0ITJy$&`$BF(c)3cE z%I#lqgCoLVMUdsH4TF2Du4YQ)qSi(ARrXhWv&<>^-=6mSf|T*l@(s&H3FyzV)_K7X z^7g$|#5?rt95Oi5V2rpi3o5i@?x5kP3!IYaQu7@!N8U-s|D>Rqivp%ui7;SqWb(>@ zT*x&vYs%<}50M62_@To$af?crYm$lB=v?)!*Lq-o=pYkP}Q&?+COxHr<^-_Z|hJKwtAilcd!jfA>Rpfz>P9+529Ye>!zSb|Jk zWfOlKUEpm(KZ6U6(*isJERPtlNHhru=XMR)i0k%J^~2um3zD|r1aB3WV%m|>OLb8@ z^Tj8l@!^K@UO!p}Z2$Ssq+1>nw_GY(DJT+^ATyje%K?9^l!%`j;R*yNX{$?|b zlt7_>`dc6}`(-dCy&vEQ3qCMZUmrIiDmW4=_Xo!g4t&}EO8iGCSiEa<5EFnP`Bk94 z(y#C7%O;-G5RYKGEl)Wbf~S-9+5Y#qdQ7Y9?uWVV?EQjxRrPJ_p2M}9qiCV7oia}@ zvA(Oqi`_kwIs~v7b4D`6tUjEC8QFw{I!`(+Ufz<#&t}z7hTE)pj<;NoOOTb}FO}h64K-<$_*k z0S|$BqYZ!)DB8Gl%wrjzC}|-VxoPnIl7&pm+Wm0J&xxSMnIOB85d8shYl}2cn);cU%$XegBLi;og7llQK~3wxI7vsHwZHRLmI`!~wokATU5yER6JGZ~|=a5HxH zLTNNMA2!f)QRD{#u9XKz&TcF`+%$T@4ywSXix*IlN$qIxi$%Fcy-G%@)?QMdhBJ{` z(Lc{&!J0tbv(G}TnxE)(6d{k?)-8yYEI@LiQQq6bqJj*rcCvg{N<2M8!U%`klu%Z; zJol{7Kp3GmdZ6*UqZxXgct(Oe^Os@XxY<~7h!itxx!M`VzE}p<-w+PQI4D~^i9@(T z(F_1rD(GJs%vO(KJoN-c8e48;8?W0jULhop&2>db(Ol}Wt_$sw)TFN||1dvpRWVaF zw^h;9vrs?<;aA^kWz)-coN@DZYJ}jGqJmQ2oD~G zAB7a#-c1Fg(x)izbhOqHSp;^=$iL6e8K(UzsvG=W#c9x0f{Ed>r9RP!z4#a&E)5L> zdnq+piCl)mbZx%~S!zWXimMF#G%Jww){Y#UTaCSwn|M|w(H>w>A-@yLCu(PP@v+uUhQd9rR!)-Hnp)rT`n{qE!CE}$fz10YhRR~SbWJY_ z5;(yv;QOXY3r_T7NvS@d0W#%LgrL>laP~g_o1b+55ut-8#x#k}U7!MEx-wUoT&m35 zGSv1$l^llrI-EN!k-VNgnc5%D(4BtuV108`MCBZHuwAPN$`2SJvexIS2;k4Y4>stk zPE{&Dm406h(}daqh~1$M{3+ic8Cac;sDvUO$46PjFP@+?T0HQmJDB3P{5zrt+E zsbJDVYW8lU^)&Pl@SS11l@PjYd`S8XVs_BZ>7?Y`UR1XxdWUK0h?DmPT$|p#uj1V~ zaxDKIn_Z3AN{W`!&Qoch@G4)1l9f$(>iF4s=s0uB!AMhMFGk0PvO^q1f^P*VV1P6o zuy0*zNh{4Eh!-@yKW^K9Jplhl3G!o4PNATKfUNWVM+yG-()d3D(3@Km;y)^IiGP9r zKUC|jsr4U%UlfD;j}U}kBx-Qpfdv2m_(LpIOIvfs|Nq(Ye~lII%R&8D{qbz*znZ=0 zLAgNx2U9cQK$!vS1Kuzx zOek!y=|S&=E@{yy@-f`0NBR{0MErDZxKt=&Ddb!bMXbd4%a@Oe*GG`tq7|x<)gy8} z%$xhJj`sHU@_*TppGa-*q!X9@(d#T$W5MWsyXWh6;?pm&XM^+o%Q#T@UIP6dE>cjJ?-hf_qhlSa`sKbz}wpc-JZI)i??ht z?W^B{O%ozim*<1twMDEJ=iXqwC!5!*;3*M)<0(Zb)yLeT5`!m}gy8W|z$eqC+C|^S z%qFG58aVOlbN<`2(vu^&KSw))!3vjlO${QEz`F zC;4xNjqhcru>u^3L@g>Fu1#q*G?88(Ej1kryp$hPA1@Z_^x>V>`sbM~PjfF8H{JYa zy7+HLJMUf`*7~T~u9A^?J2Ar(-l=bIsnoXzm8g16SY0o`=VvEx=7UDX)my6CTlp~b z=3{z#bj|Bo`9hZJSx!kR23pVf9>mS6sC=@aF2LqhMhNigR#kX5@m;!e7W9%G2;RS+ zxdI+$;z5lc_%ChBN%!C1ot$?3VSBrqVH- zRVUPw8PfnIwKEwMx{mruUCRyVFa60aSAzX5hSvhC`898oGm#tpkLxV?+FgdnCyfav z`DmP2M zz{6LK-T4OE^Z?9J>taXuO&63yNni$MW}HOzvJXT?i3*r7j1+iK2r20T1^nOMHYZNK zxPVIaih(XkcgbzPBgdK+f48V|B*CZ*V+_sXE#aD*+!?DoUOTL_f|gt|YVW-sHZ29- z*b)1n1BDGq^pht$SSydTQe?D^s|S1gsi@mECngpmgR%D*wu+?&t3mkK_QZqTSF3Mb zIIeFE)LgZ{>MiuY-|R~f*X}%NXUuPf3IfM4AQx6Z4~mujz1P5=yL_0*8S<|!=%&!) z@O+YG1be|hF&Jwg@$~EXICA0(zim?9U+pEriBB%#E#wq%VjifJ@X18yZy+PevmBx4 zJJZ$AEZTbnFG6ffR?PGJ-4VPv9>E&3l`@nkF&`C6=aMK)I*z%jGFXLRb}jYsT!AgM zF^mp7`{hku>kUnG%Pzc~wH;~j@+Aw-A+?;YCaoLptQzxf^tDxVo`%67&9`523@>hM zv7RCpZD|wLD`ZCHk7$_AZR8dgPpsDeBpE59sTbN}JGE9wl6M2A1|HKMT&>xY66Zhd ziwlrKV^{5~H5R0TH@RF90>(~cZUDMhP9o!>YhFXWYD7Guvi|nHq8vf*kJ||aMkFGR zSR{b|aB8IIJm=G~=V7?mw^3`j2Qj_kmc1Ez`+7gFLXeMU`?C`%sV9j>mD435E)pjat zNVtn_HvRT{_yK2FNuU_8w$_-E$A5az$`3j{lQ{^ieNSwR0;XXNHd9uI)9V|Ws^oFAP(Hha3U@Lxo~%<g|jge(X$; z8qMY2VKEyU$@kfH{|nEM7i+<)FM1)8Q1z7NDRtZiTc+_B40A&y{15h8J{GE_~-gMi8 zsN9CW_uCsT>;!V=a}UD~AXW7(6>Zp3iEu>z*pn!6oEAJk8uE!mZllW>ue+ZDNBRieg+j2f4W#ca ztdujIqr@4MgP!|qrKaDsCM08HZSKmnOi{2pk=A4b_>$HWKJ--n^05+GJ1!Ja3|vR- z&{(2PyZqk#VmHrMm!$$?EfkD$B*KS(K(u8rkdio`co)M(Mqr!jEjo^|YgE ztF)(d6_H{S>i(z*{!=$#LjDi`^1>!`%<0Swxx2g5wD&r$r~-|}rKPuzw{;Zcn|A}s zsvna+P)QVpB{dm}M4rXA`IPFs^^xafxU#Bl_|3pKUSFiqLKapr?88 zv0`(hw`*E;+KgdGCTkm|mw@Gh_{-INegC(uXi<;@tN9%$FmyK{Y=Vy%-;3;C+<>u$ zZ(so4DwGsvGZ-(6(TkM*B*Gi?S&9JnvvcAJXzTS`XkRsHnHuC*_#JRJ_qcCD(+{T= z$|x;r-c`m3B{}nm^YSzaw)8gP)0vBaz3(OFuB)r3bobk2^eRdive);q8`?8~otcMS zirb3GW*H_gblYV`uQBxkW7ne)Hsl728oTY{H)E`)j7LLIh;(y47OmLPPg^DpW_%n5 z;Low&{7NNC6ug^g+||Y0&J6NINZMp?*3+bdM9Ia!bM2AdBrf>x_}}jj5r0y+K4gXc zSPjWKxoK0=lPN@gRJA9LsX*9_*o0a zZoc_Iv%OAbgZYZ#OIj{6s(T^U~#-t`Q9&w8WpRfP!umaxxFO&UR(jOcom-my+i}axpt5HRAkEY7kP9 z`+#_Uo4-mXu;kWV_r`BkWl@NX0E*WzFACLV7*%{B zvoy%B!3zuR`-U%F9tO5MajOmCW1vDgQ=X8Un(G8gDVNXb5x1XdpckqHCYQ_?ym-*z zkY6r(IZY_uW@>5ces2{01;_|+N9`+`qiW)ae#%FkVU;GQ=}-OQQF-%nUamIKQ`BRm zs#w&8BZ(@%nTj*{!af0stv%qX@U)orso`(QF z%f+%1W4f$D?}0_b0|JAJ6=%wxw}8XX&(K5D3R@^8ZZn2z zSk;%bJf0{qXLzP%YJonQt*q& z#yGd9Cm4)-GuW;jbcrlJaI`&{G-ZBL6@JEFilti)D+!k4U>ghfoQRh~grg8%IIKao zR?3){lYml@6RtNE`9Iwy-l-1mP;W&wxv!k|oP4#jIGhbv!kvcncW(_B{Lv3P;EOED z3>De~O<)SK-Oj#5`h#E|baBI;et`#16`Wanj~GM1jtvoSlD2UP7-NTk>kFm_W%7!c-$QPD*6!39T1$@KF&CG}-F*^FTA=nqnVpuPhTv!9KZ=*f^ zF(cDp{@@Qrqf(WG$9C^+TRM3xBGU2c7o3e%@X1Vm&+4Ej9hZ5ux1TE&ZbX|sKbzB*YfNF$85m^%Z*x>NG_Z3e&PU{HSk8{)XyqHy}GwW&! zVY0svJbc2kWNNzbt0({>7v3KUI@_NtmM0JLU&gS@1XNSt>h(#NRDmjSL=taOMe2)2 zIxaC7JrQwqC%B}|@(s#RDi;_MAX8Ujo@~WgI0?Mr}7_tVsM46bU`8gwP}{P z196*YAS`@YdDZwtKMIp~O zi@@%gaX&QLM*ZQ4iSPz)H?Jvc(WAq07wv2NtX4lefj1_e#;Bgi7@&3hDc>7LIs!pb zbZ;u7PX3ot_QvK*4aGJ|<>m*4Y0%^KQii?;PjOEdFaI`EwtdXCeRwPHM*-rl2Jrq6 zlel`fIRL!4x;l*Yd`VrCqQ5@`ojdb3`7j0b7Y$r3)|BYEj0W^&P@5U^tc+vB9o$oI zuE~aoCcw_Zd^aPr004q6VrLuHV^^DACbhEu;=w;ji;nbZmb#mD_{z1FY8q^q;}7XM zZ$Sr$hop{>tZI*>V7JxpkoWc95bwHw_lQ>G|E|L~qbD{NqcQIMmUE?|PbzX=&PO7( z;{SByjrkNqiqv>KQk8`(l~m-<}I$wQBb zD?*dFfW#4xQNJo-frYRP<%xnHduKu}1Cx;?@#V0_Up2R5-2W zg1+(=q4q_W0LUH3J8bCHY+U)jw^yG)cO}FZ;OO=mirqz83LnhW{i#e3gy<;#+1KZB z{Di12*93OaE|$J9ABvuX$UN0WjUBrN>q6BU)r-i9I4dzMVr* zB$T;n&sI7V6Fq}oQ0Af-H9yw;T<)1} zG6m0iL@Xd@G)0%mZB>X>;vm3}(kiavPwpyckIp4)2m(cwRA?^ri_3}CHRKQ7fW^aU ztp1*%2b@MGX19{DF&f*@f^Sv%lXVy3=Lz##ihM<|W0ATspX8;fYIPq}yiI2cWA|NL z6cpUdMF^`_$!NjOPMce!mseIX6E~akvM2)I*(D6y>D?$8G#ex^04n;*o+ce}6>FpJa?H)q97&>eC{e_c;*N)S{-Ql2zs1&$o?O7Q*r%abs2 zJTQn+1G7}&e->qkKIC5($z;0BQB}Hv`Ap1Z2t&kyn-zgI5S9^6FfdM9lAmQa?VUOQ zBy-)RMopT6a1_HWi2?GITVY27eTyvQ8!&P_1;;Vw$C8~4%ZN`GZ$0geYDpW05-SEm z9;$aUDSS1gc`V0CX8eJP>mLFxuKycT3Mj8zv)^?4D8zz{@CNNkokIN0G((M`I=hKR zi?;Fo`ROvFI~1E~nn3Qh?Z! zQ7d%vyWt2na$Vb!OFEdTSvaok5WKz=2@3%d(c8Bm?oE;r19K5_)Qt1&xl4>0F5H(h zJy8pJ6Li#$Ytml=W1h z(3VxBnk#=GPR!~E#oo3I1)J3crxlX9Rt|JePdUazHI$3Xy+g^;(G0v=U1bW;DHFXn z5~1nKAk5=MITziUwP1|28vt!V!U&}I2Xk=SZZqkik&%t;IW6YDP>ytmy@6OH^L*n- zjziqJkB^GOT@yE&GicwOP1 zM}XwqN43iMC0_G!stxH>4UP^r*yCc{aT0hM0_{P3fJQ&YC145XGuD>FxId+NCtD9m zU20-1qOrc-ydIC5S8?D!3Sg}{<~jUZm}_g95eeNq)~lnAKc z;XF`bhz9Mi%*r1`LqWoN9Uo880o7WkySOt-bWKzCKj#`o%ivJLYL_sAU7MwyaZbDV zHA!W8eOyWi?H1PMg0*$5Z~GT>nCvO?+G-$AA2OUWD?1Bf2H!kCfLjfShfP9Wvs|>@ zrOTL<-QCZ&*JbY|JvYYk*a}=c6f=pNsy))U7ToWsvdC~ns|@s!mr&{8C$74*8{Z?= z>Nqfs;oKa?Ighe}X3e zc5gOgB)xA~AT=qh0$5ihH9)&KR7eSx_cla((PoMKX?E(XeHaj+>)=?TIA#qXVq*M7 z_KYAtOiUPwRie~5q)29;Hkn6ZlK+gbpi!>Z;WGp!r2jXj>{0P7<@z~{e%#Dkw3M-J z&m)5_yYUYS$<~0V^JzYfoJqLKt~+>M*U)RMtsrg&#Eg~EBk&$`?-F%Q;|5;_HX-i{J$IOM!BtXV##0R<~(8%f-KKOv>*-w zo2-Y)cd0Q>F`zwh7+JY>Kq>#!<>B_$N>>xg|3`K=mf{FjW$R^_a=2w<23rpwZSmOA zKSA*Tdl6;^+nxDF!OPmsscgS_`!6!S`Cul*$B=3=|Lu2+0N z;>XHUFMx;L^s`>Sfpi(u48#hvs(dazfsEtw`a0=?KhdMhk`g=SV^;V_!qkitmKoS`$Ob2MSsP9ULK;hSVncl|j+hAg7lJN0dR)(W{ z-RTKrp)y`5662dFydhRagLe0(PT6L~j{0X(B!HTB54)`GDZo`qm)dusn_Q^eZf^xz8uLk%2kE zO|TOpJ!fav^#9Nn0SunW`PN!)TiJbK8527A9%8wKzzhB9$1yWpvD9&Joy zkLN&+28g9S)El~!{UwaBmWnr3z>3!p(iSwR7Q@z!JleRR(0yRh^HdhWk-mq_ZhZxB zQIK{(#wRqIgvgztny0nL`(xst(!Wvc5$t3+s(6`)_jl#Q z6s;qC1`}wEMBL0S7KlzaZzIY3YWae#(9L;XfSaaoi=b?R&K2aA2mFi?aQdK+*Bmn8 z&1jg-pu{WS`;t>=w%uB`eB=H6UdtrGHP$qre@up(T5 zG8SlY<3f?;L@GZr2X2M@C55%oY&;$^%mYauvBGVnJwQ^RS-bD7RF;N$HU1NpEM`^e zCMmavP0it2#l9pxoY-sJGJZxobW?>o5^pc`HXKy=$ z@mplz;b=3_jGYUR5)FWaA?u%3NA)&){~v7e1Q{1u7%wrfvcKX8#` z2*rpt8Zw9UM0sNeXmwFl=ENWbcNmmvdd}xOXL%))2B|lk1|l$tuYSYuSgPMQ z0tx(>R25V8>(cX(uIYg;rW|cu*u_1_=rm5E*xR;pG$ggy6KzsP5|Go#a^Nexh0Qms zri?5a*QM(mx=?%%;ecmsC9c3JfV`TN;4h0cHEohw(2Rrz7QFB=Z=@hq%X88uy1Smt z;W9`Sk~$Wt9z$0(47j?+49l-jo;d!WtpCxVZ|71J1NORr=#Gd={WX^80 zN-`-j87RMAI$SCjyRIXNMV-nWU14H55tztITv(nI{?OXCVON3r=;-Ox8E>KqTIC7p zzda$(Cx`q6EYH+9ggdNIaX=Xbi;us+a{jnrnF^I{QZcDhnlIS@8#qLtXsB*81m>Y5 zY>p%AG4G;;R6txNDOT4>Xnm&?s~qcV^WgE?MZ4Ti;&}^6 zqYI|S?T}pF(i+Fn8?Zugs#T1QgOU9SbLZvDebt!*#4MVN6zKReRaOn_+H=y7J!uv5 z@jB9#O6@5=pU087iWp*YW4hEK4nkvT4ln*zHEM{6xezdAR$E8$yeuIcoF&+uv~mqm zAJgKu>exgkvSQ#Zj!9uh-ejo$tC|w1m@-t#id!T&wL@EdM%(2t=xmrTgkK_iq#H8xAaT_n8AkHsn6swY zRdJm2$y*T6GkX7#F6q*V%qFcwR8A7+MOB=l=siK)%2GX1LWEV=jLe=!@Q;Rh8(3XR;`A8wz?9 zYV4Fe#!H@7hNrLzqoPj1Gknb12&_4F=GAnRQ;la$dF78T1t9#xixe`gI<$U1$vM`x zn}=rU0vbD^ns>v)_0fm8Vq^Eb6Zi&mQI$&98@GO)wrL$_f&<(xkuL`{omVIjm!QBI zHd8a%O(}mz{EnT-5fV!0Fvhn1VUG*ie6$kwmGgU$)0r~>5%P5u>`VoQ6tljZ{fXA6 z3o4l|VtKxBlt?~4j3u+L>nk1Xccu|ZNyH5QTI)aroEr3#)~E$oO%Pr#k&?;H0?6hc zv9S=k$5)rQFNzow7LeV(9sUJYT5OF~u$Z(MJ!F5Y@wA=uQFji+E)_9ulTPm$>Jo*i z85^H8iclJG8CQ;bS+T#2(BRWn`i@QIh(PRfL}Dm%lxa;3UwpAxjaoIiItxXT=DEZy z2eO9W3G8K!v+$2tFobNibYR78wG6eAv|AE0)vC6Hj^_m?at@+9T680R#`;p2>wwFJ z<;8#KMfpCgI|UYVG^&{QK*$_tk&_J*R)W0#5o-*gGf>ucC*fy^)6M%Fx}F+xtQxYr zNG?ZjAWqcDosU?d^DFA%pKFX9HO1vYo7;vFpYiyU%}+Yb=hTUD5Hc78seO7?RuKd=MffWy}u$ zgrs*~RE{)pb&W}hykgbrV$t9=ZL79B&PH~0OpLU!yK%i9cm9!nS*6@9qN5P1!zVQR z)5}*c|Jxh+?Bc|R5n|qca(r~!{bTF+KR%p>x7w zhMes;*4p=w35e@y`;Cz#ef0-$PqnjVJ5Z7*R9US^8kSj?a+ytCk89|D59Lj00Gk?X z!ki14h}ky@L2k}4vTn)yTM_Mdw_{-|>V{~LP~Gf6fDcw#qMAYeKdQnt4Z7pEx-ijF zIv00pm78-lwR+RX0IRG>iU&NQ47h)@8{B%xG|)#TM`nP#07JVxvh`|2ftw9^sR-BK zg(ja@gev)rG6qn$ljJ74q|_e`1qP>gxREOyUKfgY7KYO&} zDnC0rH-+_=y~qEEOFkAQ#GqQewk7_N0LXuuxd&FGp#=73%jVM;hzh6K*idGQw=+|bUdzn+q3PG6 zSwu~lc5e4DIkT+MQ*92uO=ruHbM9APFK4}TH^35!I9EgqB5PieAk#ACnqmjV`KuxG zBbj@l+qH~$F`bKrwRFxhk(Yphp;{t`e#~;-I`;IQtwJ!N$n}@kF;jm#X3{NasW81O zx)cpIdg8H_%v9cjU|85vwtAJ}4OOFi(*nYxbNz5B64jz?6X_>A1#R)23}g>2NF+%Z z!rLv3zoI(hdbveu1w=2kR1@|KRFt*GLNwKcFI}EC6C7^j2jc@-1&wjMFw#2TL2;r* zL_Cz}yWvy#IL5jk%D7-eMY&+)|AEhfKL+`+d^RAUJ@ zv2Ayzw=&uO1}A^FkD*Rdv2Z&>KZNXV;0nUXw`7s<8HgVUIimOM{Hyf}6T}e?nFBOK zMn@bkk1xEptH1S8cys9=-mOcUayT{OlZ8p6{4F>^Lb#iay`uy`i`H(~s-uU6hi|aB z*v_}OrW&3&LsW}`sjJ1pamr==vNzsh_B%(^7E+5x)}%j!KTG z^QP;H*r*$C7@F=CsdCHdz>&8) zLIF{_(xQI@P%xVuA<%>Uj(|>#RO<%+SAtTr5z@Hyv|SM!2^E!qFW$Ovk5|DOI^OZ& z$`Lm0_=hk)h`A8w2(ZqKf&!Jmu;ZZZF!;kevsWXWnz6_>NP|-^v4M^zwmd{aoB`81 zFDBC&Sgk!dm6X@1I-iCI18roJt%TsE7pD)^`dNQGmx1rq^9x9ieQX$T*W1@nxH}df zWjMaMJG^NyP2BI5?D@5we|e!pFZ{ifc6aWSF_&@ctXbN z4a9%gNCrv#QU!N=Y<)8^p$hGnQtN#MZPa0`UN~W+ji{XvmZ_-uV)F&4wUu(mCg2_w zD;^w;oM#DvoCS|+Y4Qloo)`dmb5^0AWfqM)vq4a;9zvjPsAOg=NQf2jqzcCrvJvi6ejtfON z0Doqbu5|YtMWE5~7B@WNqJ_rf&y|>$XC4tjP>~gDDV4)~b9YLPsAc1d9INx`)-gHt za!#(I^vrI`yp~K>j+MI?GV7ehg`U`MS;$UdRH%)E9P>*6Q{vlwBm+N#(x_g?Cd>54-gB!u&GI zSFz0(hVrS5TrA9BJIbALhVW2SV=@J0G;g{|W3YzR1jfF;0B1SbvaUYs1sPyqBp69& zU_1s=iOS$sz=Yi?WD)mkOti5$jYEHY0tVqzJ^@V56c*^j;;IrKMPGBE_R@3#$yl!4Mc% z%rUT%+BFbdASZ9^keA%mC|?}^;lBh);{i_Ecjdru`_Uf`L8OB}{1ArXYcohrzY|RJWA21)>^8B@8q6D=3~^td5M0=lAq*TQhd6V5FjO z7&%k5EPZT^oJ8^*FV7`sqllpa#bL17f6ZXY4f{-WDXS~-Iij#dPMCj1sZmUB20AE` ztW9mLOCGEcyIDpB1t(Va<1eF05?9`M??De?h(pos43&~MM-UY<4|#Yk4YXVrUqmye zDao1zHwo`_&d_X`-_eVcvr~&?FQ4K#JxW|-B(CyRbz08F72WTpg1M$Ni)lO5AA z@(k;qlpB&c0S#r3BvuFU0fE}^DX?@lb2k>igM4BDxWd3vFaT_d#1MN&F@Fh5K68Hz zo025l914S|vw}hLDtQ-{l@aQAK0sgD?~|_932=gf`1Yjim(G8tkm&;+TED5Yw$8u@ zw5%J{T=O6E6-!BI;)SCOQJ(AwNK^KT@^}Xq8~OYtpYf!b4Kks0KS8I5@3823j=em- zJ=AL7=n}$;d#1IE)>2_3zUf6g#34Cumx~8J&~S2Drj78Pu^=f(^%%~8>r1TC$ak?n z#G8+HISTDo>ZE_%7~ilD>K~~|=Tq`Jtc%zow)q#TAG@U2MNY&iSHjWxR z`^1@y22tyfs;+wWxWrLGguH_|BIQ0Sw~#_Fb&D3R@0^Wgg^Lw5KsvKRxtraa*y~*r zX+isTmqQ*d@M;eq2$?vy&ia!B_=>W;V>yL2Z_PMT1UY|V<=AjCjyvQjbxRt^G-77p zh?5HKHVABw8f|}QVbcUK*;v#EovsvZ90UvyS>qNQcwLjC;tZiN3}o-P@!jG#(+HWZ zp{!y<3Q{n}_ZVH@muecb%~E#Vh9l+4L|(2o4H=ovJXju0jDszW0A-cd(ak`fwyVuB zgAEt5Y~z36-T~XIePWBCn=qh6YIw6oX;pI5Pg2tuza)!?T-*$0WK472KjflozD-oG z=8IfSw2LuggspyS+VR1ir(HQv7#1-g0)kAMM}#5UA;VE9lgSc8a&;yv%&A_F#7j`n zBoBET${1bQ-(6mzz#P5yu&wvJR3aQ7AQ0+dvKN1~+_IMjRog{%3w&4deh;Iqk1SQh zif_bBva4p3^<7mJ(Z@mVTFj<1og%v4V>YEUl`=*0an+{q9}?_?JrE31-=QCoph)nU zl%WXLJo7`)oQq;CxmuNf%2k?yju~dEOnuZl7oA96o~y1sV5S!_%{fAxAvOp6dSkN^ zmVbYJo?YP|Al zUSiQQ*DQwGNBZ&d%`Ip){H*Y?5|>JMP_n0Hp=9oc{89&}zt;@~iE8w!a{8B`B78&5_xutuoW zC;mU*2UQH??C9sSP~iVUcQ&qKH0BWr<-?=|<3RCyUsS0WOP|DS(D z-Joe=%}RP!hMb;#8h;*V-l_z`--|&1p8&?c|978UPLDIcm&`+O*oNMpxjie;P z!?)g9;%FFtk8AgTxKZ~G$9-PlzWW2JiSFVeXh!hLq&F0Tp~W5^LlW3BC^mnfoms%T zt?zvh+u*TEXz+w{bj4QOO;6ZJZ(A-g=5x#GxYZzLvOyN-yN$x0Uo(0H*jKVt>L2Z(oW zx{>nh$}b)~!|5frzsYuzTj7t!?W!r0ebr>$pyLs3Q$-=cCBuJM&)=nu<3e$K z%sbN1XcIl`Jv?bYIDNQFC5IU^Zd=RG%=Qs2a8#ElC#6Fyfs!uUbFgqjMGJp61 zYZV@yYwtCua`DqLBl;sA4wMIDr*6E;J;i+QY3~Vbbwu~rPq5j3wr);4Pt@V9>_kVK zJCuh!pjOz?e^T2j6MK80Jx)fP3U)$md!!#)I&W@dKhD7E#@~N=e%zk&8tLJawjO#t z{D<%m#y{TiLL9~NF_ToVSe*Ja%OcZV56*GzhvB=wx#^EcE%bbGb-Xx?_ndv}aeYGM zO0F zq%O#E9kl&Y&w|hl*r+q$D|v*kKa@@StT#EH=xJPk`*;ymykAF;nl?&aQacVG&Xg?7 z0(`>x7v__TG4AT;dU+d+hQSK~jp3N1XSSsfL#Noit&4xh1J0Tkh`2H7@>H*$#`?@0 z*=w^;j$Kykm-alQ-bTf9mYo{D1+96+aqq3f0h?Gnx9#u0MR`6zNs1r0_RV04;u!bg z>%%APwr>q76tCy2u>0(t48Tk~JrhSJx{#chop6Ti`E;m_s92O=<6e2Ef zoMOm$sEY+BXIQD0K+Es|%uCXzhZSZ7sc)?tJp#`;y)^ea#WxK;k2XrdbU4NF4aON` z{F(6QiT-?nPZB+KJUQloEnY=wp2K_|7AI~BhlPK5gG;OnNIGGSuo@{3h=K@Seu zc~H!DY$g?{`U~C`ENv_NR(HvHX z=WX4gI)nn73h%W7ja47HNB!Y!V#Q>w9xBs{&R%ijmvllph{bAD@78ksMnET|N3j>4xZ^hnF9%V{!9D~hD3Q=EU1;gjKt+fNt`V!=@@bt{UgoN@B(N%(6` zkPe4(LTes(;stgcnBfb)B?uqrg_UXRU5b zW$s-ZjCqOG!U8N0c85?Z(7VLTbFE*F1acOl<1aeF{x7Alb;5t>1m5~gQ>;0BuI_)y zZZCXWCjwS@KPJ3~JL|?M>q;4sO7_m~j%H9?xm8d3dp7`GPUMsgb+#^nr4r!7^_8xC zAI=N7C!B0(K5(-!pFE6c>QN!Ygm;M0j(~|I2%^>JFyek&Zm;Np4L3J?SvD(3t3EJ= zE%NJmCIu|LhaI8et>MzGVce}D+pT{f8{Fmi(XKch7(Q9~Tc@B0!eiE*emL5+XC0bc zP&;2e#5tHcu3HwnGd;9kscrH;tgR2$O-{uMjnRV+*g0PEFOmwT;{q46MuXo$5r8N! z@M3PkWuhlItBU?>KonVSo1u?Zyn3ZIFU`g|?#jd!gVDZN<#0C=nadt543B?n2DiF! zMRPk~Huu`LFYvr(ta|xhb?1y18OQQjj2ko!tONf~dF?HDmz8%aUiW-oLu=ipbJT`@ z*(w`EeoDqE)j_Y(x#V&tryP80J)+b-!*y)r#NIHTZ*6d7-;T7a8BVb-E6nMaBI3$k z?ugz2x12e$O%Y(qmF?x|Pi%kTfxy6g4t?F^`Ye1TuxMcP zg=TRfC$ENTG}I9IaG3BXu;<)5h}FNYu6m7q*d9DvefZ_4Z@;yd=6V$oTdxYDKb_2R zQo*A|9QantillfXR(* z>+}9h`@C7;T-jTYb_J9*B-TrYZ@r1Im4V5mFyv)}y28`Kk9u%kIg7e9?A^;;3Ek;GKXBy-Yj9vgMUR zaZ*qq){EB!A%ZS&XNzT4ji`Plv6DTM^VrR9xN(@d#UHgs0^ENO?`3{uuBuT$0vDb{ zPUr(anQ%hPrQWqrV;LDtto}rOIrnybZZjsC-zpil?5UB>PGRji(#QZDkA_sTa>F{W z1m`B8z{|jSy9vIl6(qs13exyosgT2)0Ku|KQoXd6ITKqmWM95$FU9&rDoBPET|3?g zBc`sgmJCj0k??=m)QY+=y7zGiyEapzI0DGyr#<_!na_>8SbuT?s5RQ3?aa5jW}a7- zZZqL8RDq!a%8STBPmP;gxod2}s));fj;8|M2pi2zG^VvUNTqk_Byw{(9mbN4m%ufO^B=a)ad`Re7@ zuMcm2diJ+NtYQ00yyt$n;wfDAxnIRQG_cw;RsuQdu%U>%_E#^T|MKc{vUBQ$62c3; z_~EZFe|q-np z+zArwrz?L0)77 zrH#wzN-$6?C6&OnL~-8jL-SbR@g|rP!sAV#4RiV>eoMWesIux*t`ANRbs8!Zjvd%JF)8G*}@ z*jS4-_SPC!rF~Yl{{E{f#T|TEX)@+w;%uBFow^AkT#pNPr40o!9kw{k5XJoyr;PG- z9oT>Ldp*d5bDMaFM?I(BI~lOmwbqEXX9>G>Abl8#x#3y&eC&|ab0Vo7jE-HV_rVsYhm zoImrHZZrsc)1b26ZZ0}|3I^2>Vuw7^W1)Wu&cBjC-UKSxb;40jVSjOHoYroROJAGS zigs94&s3Vnq(d!Q+vAq+-vCce8^zanUyH6{V_xSn)K9DMJKxZ)v+>;q)f5`|J8JT- zl@&$d*DCSr01nF}fV;#Td{^vD!?qW-mlWVntQu6hrpW;#hqWqAx3H_eB7sMTytIEP zqT*HeIr!GIJFGIrb^gA+h5`qj-b4(U)cxzlFYuYc8#^=WS-)o=#CdxRQbn=lp{#B< zY$H?WQG{nqHn%#a#BJzJYh>P3hpJT8xIb|Q5%)D!6PxmE>Zz+Na{-&&SUQ}Jgo_NE ztPH=*IYXjRBz!oeCbb67%WYx?5!!!dVvK(jo%4=_ z^!oZMf?GBgE|2COn$bl2j75*&KeCd>1YccXAkM)~??!b>D>Y|yha9?z@El^ksNc3| zqwAJ}@-ggtu9}pVp>nO?G|2d_oIodN3KVIc&e6C8@x3{*5B7YC^I~0HOtkmZIV}r{ zC(`3*xTKJo0G>S1p@F;)k4Aq+K5CFmI^sm_PymISAGs1Y@gB56HD3CZKoPxF8#>ZVmFXQC$ zPWEdV!E(dvfn#88ZUpkYQ6L9uMRIf~6cq-#Y9Dk5wE{8Hv$KM!8cH7|b(?z= zARYOiJG|oVw`e#8m3dZuqf9=z3)*@9@!d8p{i=o;i`3G#g8(XZtxDs;mdj-|g1m3+_oY<`qW zpt+|N%YMx>gG^dT(6D1EN(|a-Y2mF=32T9P7teA``P~fGoiWU0f)JQad`;rn;4^X%>#<{)cW(*(PlQA zq%Fj%7rK7~q%)iF{eAxp4JUN)*w()i9j@;~6+!D?fhrt=;G*hENO0B!+=&eHTA*Zp z63bYpao1W)LTV69KZaT#dLL3n5#>Ls3Zgyig+Ia26*`_AQ@?I9>3=k$-rKDa@h2)qsD>aKfR@Kfq2f`@9<3b?>mQ)HKFv z(OPV;GwOTWTWFPGgJKJbU+s?mv$@*dCZa=zNPi6UShUpEpCM{qRBr{lV(EmP=Mw}| zcpWyc#F`iq<10_g*_jpmeA(T^cxah;*K=)U=Sfo?1^9D_WiYZxavU_2oF_{1P3=4` zR&9T=L|I+TnVpSO-ER&h3+kNfHvoSkqwr?XV_GxCmID_VQZ`O~BsUN2uuDx) z!A3eWyAi{&l{oU+*^#ErHB#FNHn((@bsv`kSau#@JW0*jTQgu0df@OOi3lD1%eaMc`?HNsK z4eoY}fuh8O3Q5Z!2kFMS7LKJgz~E~q7quLW*WM|ds5okD6SSZ`m3^@lTrT2e{47c#c zW_Lf5Cp$6Neu{xV8Uv@8zF^agFe_2^UHg4alzr9yGbSdsHi~0#jIe?Tz3g3c5Wl~# zzwz9q{S~RsKX7V{l?npq2IWCG&Ud9xUA@Hee)NH#S^f%JCJobN9`_Fh3vHqx!k*&9*LuNE3h`SL}SWDRA5_7#s#D9*W zcaAkAH9wB8bg=*4>)*hJLhJ|(7{gs9Va6?eTJ85+F<!xVdf4XF~Yb4nIE?i z%fD_dYRYyLW2U(t!b5+ejh0I62rQMR%_0J43u}bmDZKG066{qD4K>UvTR&PqqsE3B z!oIg^{_We+28kH^y2Tu zZ|v&K_98;2(hj1|?OsKnSQt)TwaQKZ(z@9xb=wlN)6Qs%5;%YU)<$?2RN|%>U;N!D zB1p|-7sr5~P=gCCdH52Uojph z$EHu!e&njAeiwg(cF>cn8~(|TSl)edWti`=^2VnxdE2pm!XkVdYBGHjr`V*4UPbko z6uCKcE*`%|SfiM+DibgwwTI~IS<4)Fgv$^vI6Wjz@p`7CjyS+s3|{IkuU=wavN1h3zy{{JM)*M&Rm#vfjwikoXSR}tZI&uIJUW7$_IbBxp;~4n|teJw;vym@l=^z zzQSUl^nOcJILx%>3{#-G>sxjB1lE8^Jm^ zf}z%5EI?(9#{6MM_fAT$0*Fr3#IFTcs+mPi7bqUcHzugWt=~|AwGZPl1`>I@Yjdh{ zGG0hQFN9RZo%G^kgJv)bBYB4$O&xU4tm`7m8kurkk zsKRF3q%<8bKqM_9T4>@e*~57L4sL7llU%K_K8Ptn_KM*`hzkDt{86E1bk0|o)nYNE z)zLK%XvA7&rzyXPb|f0tP#%GabUqK!0kL+MxbA-n!8*CmdZ0TqW1WkL8-=UEx@2n4 z25`(Nr4YxPVv%*ip+&6auWucL$m(bv4nK#1was(LLnpHAmFX`aoVZP}hh>W7#>w$? z)5D4{v<1cKW{wY_$Q(8-G;3V5WcJYNB&$QF(fSPM-Z3cD$ccou(-9N3AVNDem;ra2 z+EVOh>a?UuS4N7yxUj$R;Vs6HA4JR}oC)Oyzji zI@=tjPG)0atFc_UFbUdNEuO6ut7dJeE;oPY$jB0o*hX_K@+WK$TSw3mot@OubVp5H zwn#VW<5Fg^cA01+XAw}^j`HLhK?uGRgiBo18E|Xomj5$8PFg|`S@6X}87gdPz4N8o?tijj$U*@-lM4}s4O-cQ4uM~*@d#>Z@ZG@UIq z*a`7&o7JN^P?&Ro95D;GC2?}iOmeTlo_oRzc6j$mp3e=>If=s-2$F6i&t#IhG2Nnw zrS0~gXjYm}o$@;^)H5HxW913KVX5rWwL#@bu08d8?4j0rM0?|olD^SdC$jAZsb%CySB!D0pN_TIqzv0!Fo*`cW)CJqa;O+gMyf$k z(ZS_|K45k)ss)%OL~M{qVxrRS7jcGy);gIe!#w*2o`orxQ^wnOu z-+BDPMDnQo)A=>L2hAtP^tlI4=SI5bZWbp_>D=tc5X}@ex-g>C6>gU3?UaBJephJe zKJ`THO?R@x^5#6lTADh!ORh#7*c_$Gp{Ir%RzuFiP8+jt;)?3zXc&K;T+&gWbCAx} zc#(z+J7Q*G$m&(e@=OmMFj$-kZjB-Aw-G#x0qhA&VRG=8l(VBVQb0Cc4)4QfV9mnXjNNNsK?kGYUI^dWfWqB3QCTM$ z86siJ;<=jGDc^~aHjUn1w&#JFgR6;#(9ZpY)6N_)@+)I&UCYw-;#%ppk;X!}bd~hJPU{#MPu646JTpS!& zCpC$4=84Jjbs)D4jfPgaVU#=fE|_lgC*@m0wmL+-Jyr`tQv)w2YdFhU#A&@kn^HWE zr@2I9Pg+`QLQgGx{RXnaS$U*@KqA=qWEr5A*E)lD=eQMkqS_a^u&IY$s&d7NY1c7H z3}dqi$+3)+rd+{&f>@Gq_s9S9axd!j>` zt?&{H_>uv)kn_SYsIfzg4i?<47A~V~B&&sDIF~x`1czoP_SMs06SZ^|JNR=mg&Ep6 zjDzfeGK?gwJ)E6j`y%->AUApMt}Sc=FJ#WFnh^_uY79?n&|$G2~Uh=*1};ArQEKX{Fb zY|nq<(@!gOF8OT;63bvaJPo2U{=RKHP=8{=mps;pWjLI)^A?*48#_MW$SHBaeYT`U zeC%jDd)SHUxnBp?vAj(XeHp}c4XGXrkuoDGJklmQX?vTyHuPAFI2-dEoNEc$YqhY& z7BeH>8dc}>zQ;?366N37ixFOu-KI|t#L zEz^(sddZa(no$=M*#o0Qto5C)?k1f}qzFMvL-okg&4lFkFkGM~ypv|mCK!m*ia37= z$xhl6zSl}DiZV_=Vb76hLv#vZ+?Pvno&y>$TBXxHtJ`B&bRPk;j4@GEcL!YJy)^B~ zH+U-}!Bx(+C|B2-Ep_y6^Z-fLY77?OlgNstaJcFNEoZ3`7cdD)BIN?YfloI+6?MFM|YkGnq6^QwrAFF#yy9Fnd!w;K~!ay?HOZ#7FZ zC00&sNP>6(Zs5UujvSCpUB|Hq>7(UZt#u&9lx)0g&#P4uWnL-Q&$)Uj{%_H~3imAH zEeqYSc!ebeo6v9Ky8PS{qk(5zE(-L5AF+X(!3^bw*R3h%L`q-m3gJgPhUtIQzow$7 zJ)y^3;x+PZm#zs7%~NSy9;ykh>9 zL_NL4;<>quq46Tj)1W%U!OG_WC%#(If9=mu49)CF$JsM;_!1)Ev}}CxA``0NQ&<#(512zH%PFI$6pP5t=;d>8rhmII@@Eu6blxX$CQq00+T zD+jiTBt`b>f2lW;E0omcUH^E*QZRLGM#)Kd&@L(T4(}L`$O;g;GOGx zp38LYLri$_W$!wCgEBAdOj+%GeEPy=Afx#5<~n*hI2s^}y>}#h#}3@Gdf%sdW35kL zP}ihK&V|m7)p&o-^pd`M6?rN?_{;7FD?f+;?VBZHRM>ofbK&@C%iOlU2>{=&N@5O5eeiKu^K{Oo0?YT5Bakh(|AZP!L@ zrG8x_u^`Sm7$d@A@z{JfoWm{|?-9gpl<6MMoSL*Wmc?ulAReCIDqpp3%8;~7B6j97 zV}c@J%x%O{7Nxs5WX7D5@`)%adTeYD_X za1}Z+f&YJ^4f6*^3>1Otc6C)R3g$BvBlcsd8u6Cm18BwF&AK^7`?lp?8D%83%Xf*~ zCSwbyi<+S~786f`QjaWF>PJSObc#4&P;r^1iyBG|WFHK0D(zekug0lYu7AAaB#9GR zfXapoEQ6y^CgZ1Y=+8xDGYH)~3nlKuRO@eW_ql%yO>w&LMIA|lt_7wgc;Pz@w^LWq zYH3GOu#V87$NlBoH}YaJnRop55#A63KI_#xx&7|oSiY*}EG-LpwljR?vclT^`SkMe z25WON>pQ%I;NQc=%-*!N1PrC#$vvk9DjpTW6G;da^~NZ7W*vUr z!}fpPRx07$s1?aw&AF_9+qufNL$|jxsSCM_<#=j&iv$B;Ii%E)F!Wl%9sOOM^{;qM zx16n#4n9wGdg+xian z-9FgZi`oe6!F91mm;E_ju2jR-dH+M~Z@pTBLotF{O&W|LLa0H+4Aa2Wb~(`91!MI^ z&JH3ZAQzDe9#6NR7GEVaKc;@a?l3;-SBG!Rx&3T_G#9!KL!ad=To2vx*aJrd@tJ>> zm;T7kzm4|`;}tHEsBIM5h%pEoPUE@auRw54heNP= zyqN7;S#gm=0#sd*H^lr-183988GOSdfmgrzxF^$}ZGUiamEi7$+g{D{)Rw>I>yRb(gI z4S(5&=W#O%$hMs@g`NT}q;r<6M z21HW$VY=$fudzLx4ymZGAS!`svRLvCt%r4H8NXL+49u&MFHh?6C9tcuMAOPDYmutA z77;4P*FZMoDCw0m~wfc9kic)EaHxrNs#yqANJ_MKA z0?M201}tms2+Xlh5!!!g)b)ZpdTEnXA4;6Tds_(^HX5nLZk6509H)LeUu-?#%jPut zfNHV#*0Is1q25;J2)c|wwhT3=Iclp^s#>6n7^`nj2+O)yl3NQsXRcSC*a@4IP;7|P z^?)6nf=^ISy&k>dQQr}B{VA8#a!+fPmU0$t+>^h^kxCWAt(AYuU4gNlUGr*jR0s^N z*XsrEeH6>mqhJ+n#Ox6s!RW(MwdSmxXR4LX9AT`0C#qI;fvwJ4g!W9ox&c9N#CuHp zzu%XTt=60S$FeEgGpHes8WSp6AmWk-7US`Z;}CU3IpdZoa1^=g?MFpJy@pzzqO8+? zBgeHSYWXubtQUWVrPh0N>ZAVh@Fs8!BlR@14N&)IKM^yQ$P5obTYdh_2c7SK(61z| zt99qO@+`0U^V?bH&(FU9x%2bi>bnqUl-5uNj)&*{chgCKjS6XtBd8boU*5yCrEC)S zS{Oyc`iyacRsJf?X18On)4=YThHV6|wL=p^wk@d0yk&o#wr&q4s@5pOwRU~ibe8>c zfd~ZuY&)4ptryorjVf-I9bZ=>=EglDyiGxcE4|R(2!VjrA#~YaURZ@8+{dsp=aosQ zt$~n=mg@Ra+Qtwb^o3tV(d_~}h>^3{dD~_lHNo@s&YYy$ykpz(>fm;)*SQ_<9o~+o z!Vn8X;NQ6yyXI4#EJ#{))&b3zZ213=Qzf@i{hO_DLLZWzQiPcuU z($$PBqe*Fvi5l7zyT%eX%MF>uf`KJY-=^{accPZ06EqtksuR>J>a>){v1$t>`k<7~ z*-8Y)6M)3!V(v=fBJ1yr)2j%@YWYHq)NVjdZS8-^6e(rw#p+!hVntVMK=yuJB37A_ zM&eoH%{4FX_&Dy8n_>~VI!@QB0KyHSG!u2twM{M1PU_T!=d}W}A5@*z)y2h>ovYZy z>u3TNuPYYSh0jSXXN3xq`H8^M9%~#`6ibOPOBK!DeNTB=2G=X1sY8` z!1;_G6j(zez7-bpl`9K4vNdns(+KDHZ0j0AsmmPHZs;Zjtth%m}okCHCSh}BlM+PW-K zUAe4>wOpIk7A$9xWPSYIa-z0H0S)|9`7OJtL2J;p7-%Q#Rs@tsO~oeU zLLE04C?eu{e?6OV&h;pP!RNIePp@}H+obJE5LkA_UqP64K$?K!11Rg+22Oq4X#;;K zfa=JzQK=8_v#Tqli;apB^nSmtjZ&I~-!A~~NuG^j%;l#_MQzwd$ztw4Rl_bA+6vgH z(s8X;TYd5P)Wlh>Wh~IotJ$c#K#|`s7bWqCkw$hpb>iUt$XNP!)hLqL*&;}apvxM@ zTAX9K6fFXRYJz{t(Xr^zP0w;x^+$iTh{0kc1!FE_@GK)>u8Uk;o>s!uE~FJ0Zq}? z*-TMkfl*mu+wp=C4U|9;cxtPU=rF>1Ylg1(bo}p{iHNFop};gMJCA0H;g}+5QzXdg zmjU7L>E({u-DP)@>kIRdBkD-R`deH^OQB7@N3k|-&Fvm-P5R00cu(&isLlWOUQl3c zNgM7XG{3WOtSgc%f|wM;hA4j};-Kf=I06W?(Z?Tgi@y3fbFHFuSW}Npcvz1%O;f_j zSaZbM1Yc8~poaL16mml;U55S6%h%Rv`_uXApY}5?JB9lK#$R z)p_UHFBa&$c;>&ap8M}NR$|`y=6erYgVntA-GBG+_y3Ro{`hDAef@vRe}7S54AY}F zk>BU)Ex#|m4Zk7$@`Z^!%Wr4NVj*Ba}Ya-L0nEK_Yu(^2P}uk@?!V!G~pBRH9|^Ss~r%Z~&u#93Y}I{&N+ zF0~z9(m%C7AK0HlCpv$hdAt06uMu8}OTC(Pezbs^NLo|Xx?FUA5&%qvy1efEq$xnt zpg*108h|Ms*Jqud1>CiUwqACAR!`n(DDS47ziL{fe&q^z{_4EQ(Q4K+tUG@ePQ-we zwShCY{U1E6T+vyhEH(8&9asGn(jInB31O*htptzXUJD^UtcHJDhw4eYnhDj_le9Fq znkRC*ZAI>CxQO4Xx@dAVO3jQqqfxSu99alR`$uQQ)21QBYm5Gcn>7sX06;*$zbuQC zJs2qQ;<1-Vxs#=&>Z$FvBZ;!1P;Ii5Q*9U=y&GHUxud?3BjxJoKNpEAg+lr^t+bzC z(MzGk`fRyaug$V&H&0@Jt^3$_bRjht$F-FwflAu;Hg;a?vubT8_6~^Dbm(&6s%p9wYRTwgIOf<_-_Gj3aBTq7D>djW0C#$3QKMtjE}s(5o7b#EhfrYFWt!U_-;7 zx*9VEW1L!@DN{LrgjB!=v^#$-PluD8T__uYqV#P8n`ls4^Sq5sY2k|->qoBcB%9Os z_U2>?$^;cp7aR7c=4I#c(ZBz9;X=x=iO>FzPGB%a!~}R`t~eX*8+r4}H&j|EvjHs+ z1>>*+eZq@cZY~~;?zk^fRJXY552tHz=)Q`$BHM_WC|_}Z{i|zzQAPLy8sx6UY~0}} zqh++0d(1tAt<2p&~xOjB1s$zZCUQ!>uw`Q#+f3a(bkTk zb*UFm_zDl0)V7Tx|5k4^sB69TW9K|5O?WLss51`7h38t18j@<4&gU|wHVERLOGr-1 z1CDqgu{a==ZSvc@o$U+^+$ESzP9T=^{lV)PFEGr15*}OT!0N={nXY7~L~a?ZI0sGP zcs%Y!FUgydFzy&$q)^=&*0Zm}%>)nGICq1iV6r@~88NBdee-jiLK6AxJjU>(T~|8oPr zbapgQFmE}xR^*PnyE;>p|9eU}QK*&J1zsC}#XY$`AG(oJ)GE3kzJco0a_7#)W_JN& zHN7-n*t>wYfnvG%C)&Ap4TxlYqO7$UJN#)Z^c?rpnX#j!pS8>m(mDyxtt%y1qE%QegU~kZdx7l6)2VRp zG2B6fTimcsGWf+>u{EE+vrAc9Ti0fm`z4UPU77e1gVnfyJzKw8_OH&S!F8RZZ}Zt$Gded$|ZGZvPAXE#f(?~b(%@oc@mI(+!>{rmUb_g{1u%gMu^ ze|q@(udg0Iei%^kKRoA-?2y;huZI!|f#>7y<3{xMgQr4VvLH{GqfwJ*Y7~tVpqjISvuo`3v^wlnhWT`cKV4%KCrj;_sUat=9#bi zz>v`C_t37)_y2pa-L<(pI+|5~7*Z#z_8cRn)fGG#w*x@9BHoy+k{{VfPvy!yTNO|! zUDS*cPl||I;vBJYEpul=y}fvyG}a~Aw!98%y{>1fRbaMU`9kX!9|d0*uj5+PwX3Z- zO+knKF%Qgwu`409BVYdT9c9q;1UV*gyfM!f@N2@i%~_PGV-ag5t36VGwAWo8bZiPw zxog&}v%xczj{zrqkTwk0ifqxL)EFcESE@jwg8Dm{-av+U5aSn|^l3BNYc>{hjS!Q3 z-GfF^oHkn&-aHMaXRH44seBeDrAXPUI;U1k35>dp-Lb`I(dCfZ;f@=vZNoCaEmj+X zS?r|R=_Ot<++j@(|CBd>B8(M?dUy{c?TbA>R9ccNA{O)+4I+ZZkP~Z-l_JM<5z#gp z_)%=p`7n}_jt`yH`qwpY>h?#SY1A&0=rWJBwD3;U+9~@J`$&=HM~+dk$K(`9KhyC? z307!_jP}GfYc&zM3!3Vn0EFAe9dte?W@JbeNu?W#))<+XAq;ANhl7WhqusE?4##$v zi(r#QS{+QEI|{-3p1kRpKcA=5IpJWOIen*-b_*oP8c2)uS{o%E6nC6Ex^cb>pt&B; zvb|?Uqtyok-bcjmx-$}u#YF?3Q2pb*M?9*bvn-ul1txhiTMYWM?q6R2@I8WH<76>7 z=Sc8@!lx<~oO1(z<@G`~6L?8Qj011nXR@R=UdGM!q3izM4ii42n8Q zDdL4e7R;0J3FxPczdr*T*|ujPo)+$a@bK@4u-=mylt+tyH3<7$u!a+qhw{@lGAJ{j zk2HrkDvL|K`KT43i{r{s0o~CibW@QX5YA~~Db&yIU@M_nQID)ixa#2Iw7$YD+SbRW zm!#S>6}FhP6-l?BsFa?^aJHm}P_kFN7-p4y;mvru5wcnn-rcA)EAzS|w|c+JMulS` zY|YfF-N@*FN}^hhk^tB^YpK2`+0E&K{n^0q0z9?C8w`~P!+o^k#v0S~$!4O{Dh<|~ zLm?SFRn^+GMBl8!Zn3fcs6jM8(oNf2Lr(kl4J(}-1eU<tEOM^eojW2?21vq$}9g26`l$PE=o zXu0r4-lPNlL|ZA}4n=FKa>pUf4ko>3pyDHrM=HTeXVYNC!EXBQ=(4QV-E?6dywXVd zNmkT0a&M&=gGX#1h^C=vUDlU$2BGm>b(GK%9e13!OVE`aAgK4QHn81eFVMR-^0HG! zo-~Yq`)p+Di=#dk(zuJmz0~o>g%f2<#{0#AW5maFifp|qx|60O_iMK)PK}|Cy<&@~ zjkzRaNw6+5K`s$sMT5@PK^COuPP7 zE9EOeradWLTTk4xGU`W(sEBcf&lrdz){wo{MhWuJ8?~W{#WJBzX*MfTua=Ad!Q7jF zwzqX8`JS)ueV+La6kH_%=HVi#HiH6LvLu&v+m_vy+%xSq!KS zYW$w$t|UVm6JH;38c7U;M;D}Igmk@sTs4ZGwXvoa7OUiO{KoR1)y*YIOM)B7a_zezW@t7 zxkY|ucb5j0QGUCOg7&6l1O@6`A+%frL;hM;&PqGSR9og;G>+%fEv>8?qH79&95ya? z2?}8}xeY(8GC<|)ouO$@th4!|d(ncTIv8?|+PFhciS8S#!Lqu$YxZ2$uju5R9o!eG zG2pg-@{v>PEX+r%l7~|aFMO|Q#+F(=N^6Y4mJq5!7aIP&Ybki{E+|0%_~Az$&u7Od7#eeJRvdt`KK?sf$`yR>);CJ<;bjRv(8C$=0COz|tTV zyx8NeT?mPbqE@Y~_%eE{8z`a&JH8_ipvP>cdN4w&WCeazStCbnas{J*u4?*W^)htu zcruZ`o7)zHUtqsbn8Z%%s*?Ejw(&k(I6vZ4mYngGit>Tu_ClE&e3FN}1I98LS$d*c zshF9F^hywxuH2@>D~SGNOg*a_T1rG@T`sf`QW&kOZ^hFXEV25^K`bO1 zTGiCbp@goB0fD89kT+O=Ev9xdvV>*5P!i-cPQMK%>asS1Mc46Uz~@X(`5KEFI4xj2 zoD&Cwvb5yu!ib#1s8xvTyQ;Vm#+K!ahN28ut19=G zQPxsn8Oo*>F_T<40;N|g5gW^Ck)Uc-e=7#7p)HQ}6S!@Cn#{{vjPw(TZ7}~86#NX7 zUIJI>vK&Onb5|RGwUNkJ*$Nj)nrkIZ2~g8LImcn@WNNyY7G;IsF2cc{mja=UrARGT z8%yFn7oroh#&VfMTb3egO_l@JY)As)X-f*JX{9u>k=R5&JL7L-4-Lp+7ENIt{U{k; zv+|*!sG)&(PKe6w`TFOVJ;BM)_TQ8!fMuD96zRf3WP^xpJ_ zSFH^ruZhKfFqXWF&v8k2pH_I;d_+&KCsVG#I(ABoE)xg>9Llm-HOX^vhsm2L1ElV> zq!yO)^e=ig)#h63DpZ&Mz@jUZHM01j*3tra8HN?leowzr`jltJotz1`lYY$m0 zt`#w~by91n31Rfy_?DVOMGZ@73M!) zrBO+m3*T`H{`;_ZGQPO&YaVA&i`(u>qj^!LCcqc(1zK*OszFUVD=9+s)jVo^_vvZU z?G5?=BDSk!S?C`N(MHy6anvP!4_H~Ns#RlYL`&4&>}+UJ`Srb3ui|p;uZ=045Vh&X zmfTH$XF-P@Uv9XWvudOl9-1PwT6k4!9HO6SH9w4Kp>&P8D|uzJjk=yhXOIta^h@dh zh1R9RIK5h7eoaS4LA48tW=$_mXGPQgsx}=PKXYC>rfN7-^qWo#0ZO&P5?8ZpnF`8VDV1!864xmM|}W zaHdu*4lNkh;!rJ7;KE^kOVMOLt+iVlj-$siO5Cz0fy1k{XNTnS^(PUw+l{RT zKL7#uJ6`E-bKW$~EN&owY3(s0?sDvLox{96x~XCr<35J-t+xHJvR{@(_eU{M$bdmA zE;e4QEVgsL^`-u-uJerwlr=b7FIA`QKbHF&-3Tv-n`GkcpZwc+KJJa>$&@d?#@`&z zV*)^$J#IOd`?(yU2Zm2zOp{A1@t}Gkd84(X+mo4fv#~iwc~EhGA@*SSVMD(gtPz?mjx(eaXPrtb;W)M{CpB#oGLM z_MUu9m&3J-*&3OD%+}D?OR2PG<1rAf;r?*}8qYV^ex6fKg#_f@j7v$@x)=85k};gG zkxcFQVr@3!)p)*!(bk&va2zYPs?|qZXS8=fC!};{!-o+Z5 z{T(iDYu)L`H7L^YY%s6%lEGbYb4tZK#dC%%F5x83P4 zePY?&%!O0mA9njxzPVvjj7jfr+wfJl_isp7c~{tV@S5!x21(JOH4tjNVUNllEriEI zrHP+^^GN@Hhc4piH2Vl{9@`c5%E0A>Ei~V}nxFTzlOSHH*+!+16c^5+%ug&vt3Bj? zdTKezO0SjGYq)uNhEi#$ucW+T0M!w@f;BmBa`ktZ)prok7nTclUQWul_NeNH!$N0) zLQ{{q6CG8r0z{gS`hI7q(}HXQkruP}?V!% zW^esIN*54eFfd>@JynGnBiP62ewY?H1h#&e91PZfx3wt^VAC#}A3<*z$k!jA4|t)F zicQyLH@B;izWjSJ=bxb4t0sHIbhmzK?m0;w&aaKkUI)_I`rQ^s>2UKkt^Ej{S1TNk zGHEb>i7g#co&7_*41U06@FPKPI6b;J-WlxI%y#En{Q_0sr6;+S6|;eqX8GlUrz11o3%-kUbS)oqB_ml zkfi7nK6b$#9sELAQ8Jkd;%D#KC>5ovJKGt5rSkCrRI7UP<9FcNZHxhFVrBCnWBZ6@>w|N#SEpl*YQmV> zpEnP`*7dtDXdEQ%&eWC*fyOQpI^_ET~MsUu^5l=Jfb zSGp;V(%j2z`oeDp92T885*=}1bdBJc$TWlb8&97pyP6W$6_1-2-E*Lq3?F+OB9M?# zNgLuWbVA)HD$u38ba3x2@dG7EV_%A~H^DGf=@@^6gr+e)_0&4d%(-titC-Y49L${j zYW7NrVL^1F0i(G1#U>{;2t6o&NQQ)Tm+L}XT94WEhck8kL{8KhSOkd%Mka4ZU%*w2 zPp%h)U{IdPwV>17?`R>6sZ zKmPIgcPJD##Y5<1ilobU3b9+6kofIYlAfZe0h;8AAs5z18WGaL!t|&aQD%i(>i^ofyQpx z+M_Lf-z~*YM1=nN*!BZuizgbCq*rUvIG`8Gn!9^tzbWJ`Zgr7=3@78=dzFxj{M85| z=VhK@+rqDV@Fzb%fBZzi0J;37qCoS@o9Z>Ngy;eSXeJt;+)NRRzBbr|Y36IQS6f0? zwjw5+ayJ`$&jQvr&%5uDNFr4C?%Z#85xB~p;!P>JGqhS!VL)f6-LvK>_XOvw6GHLo zgu@&Sn<$jJ@1>G|8cOPlAcZq)L~1I@!Be9(8(M+g#`u) z`=>v`D?PKEC8kPgjsneq+5FQVTdnoR+TG(J_hOyxG};R#+0y$STG%**=;ntG5&&Dj z7-(n2v+#&``jn<+IDk8VLOK0iz}#vG0JVStj;|QHDf760pR(Lj!OOY385Ao*pX+OA zrH~dy)8kjKetIdrtu1(32EaSH9DXy+ZKcI(E+g#Snw+IG^8!)kqC|8#Bzv zu56988)wJF9u2>jYSPs58m`D)oO3KE_lkgP^Hi_|&gYD(D9@n$_N6qEEvCNp?*7)? z2+`i#&Xt9KOx)b<&n~AIovYLC2j4#P8`4e*&rv}CffTb9P=0$k21xDwhJp;WOGKNZ z=T7ZiMg!s@&=;5GeMEYlymA)EtE-kvM2NrFX3*=nO{IQCe+U=x#*a*!ibx+q!mxdG zlWLtcNi?86C#|nel9YJ@RY=%aPsv!Uyu06^Zq{Fa35`b``a}P*++I7Z<;CK4kuw7>JWZb#Wp~?fhlrWRGO>mYxeToQQMKDLLKFg9d3J#UY1(6Y4Jsr&LsiB~D@zL>4uTR(f&Qla`#c3!l+f9GWij>f`pk@;Vo;o^20gW5L+JcL4l1# zw2j6Hq2um_{?3$h^>K58qc4&uKXDx7v>J)3jZaBaI|R_bJnvMLovEJ?2ipX z3G_c7M-btiaLgChIlZr~GYqD$bE0Vie|md=8~8&PVFA{@?|$qJ*FMfJ5AIDSYscMp z!?hmjTXeIN%l^sQ`|-u`T6b+Q9*u^k=CzHn=Z9=<{&{hvqDpHJcu^T)OdvA|(|!}BM00`JV}2VLnH?pilE3wb;$f8b4s83Y4^14DX6c1 z8lW|Tym;Mt^Xhaw{a1x~erFo0_O?fjYJ<1?uw*CB*4Illstr_r1t+Wqr-Pp$Uc#ra zlZ`GT!MZAI$A*9aasH9>0aK2TqS;v0^ew&8Y0zARw)a#pcU=Fd9T(6s3?Z1I{)wKM z@6GAmyQ{TO1+JS)DUrm>i0*yVH*o=f-R7X&Eo5T7IG_B>@S`@GtbY7#g$3`Km;s5* z(pGO1UzjH_yuP?=5C7cm?;_$hC!y^pa$0TnwKi$yCG^)Ge%0TZTiKcBOu zH-Y-KXyV3{WTG31?>2VZ7;lk4SWGE$f_x#?C2VikCmJUT4Hw^33K`BHio(@@UPm<5 zp->hFx6Pjkof1qCPxB78+c*67hJxmtQ8-)LWTzmRnD%^B8Ng5&SmE=3Q1~woMJ4RL0jUuG#n+hrxr;sH-SBC`T*^p!F!52REyYo4 zc0?GN#i<5^)1tPAA=<=U^+TJtFylKQbTW4aq0ZvzE8 zWVrwS^KF=2z^K-;Y?8=3I{szkYMq$xzk!e8!Bp8_|`Nw;t$Kts5igZ8}-px7n`4kb5a7dm@x!xVr)Gu zVbH?sT>5E$c=YVUS(A1S4leh%H@(VdrRfw6ngB%1__X#B*_(&}Hl3V81tin7=>V8oM-m+-ijuk6SxKl1*BL z2@Kx2$s3wkhvN<4-5;&rKiq3h_(p^44-Pqf);kYc?MdeZTd`T=_fM(`@Bj42-O2U! z$?p9J575=cr?0ljupP=hd~l8W=@>|V;Cpq_s?r;b^^@wW?H28P_2;6USasv!!@H^O zSASN2-TcZb(=D}eLLroeki2XKFLkb6K)cc7A9#`d`-dA{{<+CeJ%v8OQSr|RKbz5` zeuQm;>#WlkTxT@#s57PZ`u#oq>7>EwshaUmt9|P8o_1zz4eZjsaBBE;MZ>3RIIPT@ zrg{J|)X=Vea{}o1`u*?}kzxaWpr}N*z#!0nhFIp%%D6{Fqu8YrZHqWCX&hWDwqhsX z=>Zz?@BS~K{~w>|pQne{!r}dZ)vYhV=WAZDWqiM|af&Tdyvy6;tHX7xvj5BF2Nma` zd2q0|-@em1yryLyS_cQe@Z0+RI&>aiueag`lG@j|GE2w$9pP7U%o+}NkJuDPz9|rY zi}sIfQ#6_)730?W`mt?+H8x5hEn}l;Ms2;;q_d82T9C;dOk2(4-Oglhv_CoQY}{|F z+0L6LhWVSc&_|v7J4cVA8r%l4ai2~{l%>A@bk^5<8Tmec$kk~7So(15w!x}E7_^ap z^DHz8#^UXWYHC8YIb;YrZBkK)!!L4wKIAvVA=PIPK(V_yKAIvPNIir3uNBdY*{xa( z*hl0p z1wUc~3*J&`)W@BxUi&ZAMf zg-HQN&MB#lxgq%dnhw)v=jU>N$!V|&cLG5)lwF@RkAQCrSO#)c9KELj(AQ9|!CvEt zyC8K?<`eyyr*%#z{IN(`Pz}LF!!Jog7ZgGF+aM+^r1`*YCL3TYa3<+cm7~#Ud_KQ0 zMbXZ9XAE*mB!7v&EGoGcdPe6`?_7BM28IN8KK+t^2T|B#_)@a- zA3fs47_P7L`~LOO`no;CK8? z52kzUfX2bJ(P|eT_SX(B4)}PuuCHr?s^||MU2!ngaJ>^7UKp0ExB8teD9ta|2lLhx zy9)+)&V>2(?^;`6Si%;6C%uu!*Q!)keyWIvMaLXZp<>We+y!ONlOa})-+7h4ao=|w z1;k7S)%dVew%DtBP?{fSa}1(8eM~I4Plzj#ihJ_0IWQ|BndQt!A5&j${M+*M>vi0} z!i?qx4)k~WSUpP|Fm6ds+Y!ljdL7aA!Cr5#+wQj?+V8(Pws|RkTQ*$A+G0v0-%hda zo_AWZs?Qy?AAsS+&vg*va*B<{njy1(mNAbi$&2hHr91!(Pd{>WK5!Q;au zqO*cm*{=TBs_vX$U%#cq;zZsuFj~`W7~aQLMY*Qt-#K%y&r4RFalKh*M1i+DcYwX` zsB-mz4`ytCK|;rM;2)h2>+d5Tz1@Ex*5Dth?uOpPc0P3eu@Q^<>OW>anaTQNYv-Hh z@%m*oD_(9_AHel$+^X!``iJU$^<(pKMc3)wKWa7p;pK1qcy+{7t4t7OiV{vbS?G*! zBFP$M0`b3ue9l0CMdq@Mz>2TQWcaU_IR6fud6*M_g70$BS!F)a2lw<}XO{0dQ@oGl zhv0W`&!oZTUI%{m9<2J8BBE9tLVA7B(0{!mtd6+hSg}!5Y{ZII+$x6N4rnx03XOZi z-YD$T;`avMA>q@@$)sxBJ7~~2V!a*Y-*J%NI>p%FKh@#&!GFa1|FJlr|5zB%e`rKY z5RTP<@7bxwoHtibcj0qwwg-)Sw2ck`n_CY=I1Q7P*IHiCzor#oq(I#JQ9};3L&sl< zPjc!$=JJL9+5hE>!)t!r`Qi)5j4!_U zLaVp=Wm=#wN?^pwRK;+|VqNP@o?K4{kdteF;r#Vb%-8jJG~J`b^?2H!Tn>iU;?SF*X&xc3D58vU6jH|-jDZsEpsG4@|)|ZDi z(O*!jeE8$nCXWh(k%^-qY)@Yc8Vj;=QO1!-LbR}beXFtafBnxm3n%3^h(=ZL#0XvM zPu7uK*N4V7BdCcu$z-UbX}*J_YiwhGUX21?9(BZfcV!w?W|O(Xy@JT}%i8tY@5B!x zxg7<{oSS%C@0uySq^9-Z+V9Q0t}L`K+Bal5|Lg3QQ;;Uj_AiNlRt>;@jsqd#SCL~{`z{8IrZ=Wf{-kh(xp+x9a$y8A z76h6s@wBAgWuth?02xqauE>liMuf|}bX)?#LGMH^gt?goklpZ~w0x#aPfxngD4AUP z_*V8OI0{);gcP^Ci0x&=I){?qS+6-HCdJ$diV^KZ$1C@b7-W?ckli`PtNW;Rgx$QT zf(g=Hh`h>ilHmuYV%WidvArn0Blfmi8y2qbi_*8n$8ug46)SW#BrJjgSo$$d5?R`$ ztt@`E`klcJR(%DAX&(d;X>hx|I_zwT60tF-TgVz1Uf&ZN9ewWr&nPV7vv>ut;_|?o z0&iQ<)65}Ieks&DIC948>nE*o^LYOR8rVY$Y;L1}Xu5mXur0V9S=eZ^ z;Z8i*odc3C4Qn=GSd*;L=%8`%NWw-^YMf@(^mav8m^!YnB_&B7N`sp2o*;*uXq_2Y z#hq4iY?OMV)A){n!xLns-=ioxDqtXuPl*L_cnS3zM(R1UC$(}Yf{0u+4>Skfq@Z5k zXQq4Wp!faD=g$s*=1q~+t<53#eK$i;!0cQp0nQ&E!D|VO7);lt(SOwWivbI51&e!x zh*^^vYieRyPxvaWgVB&6ncBeb7 zH^{wcDfxrFWUu*V|8#vF37W@sB-HY$)t+KZvHB++TFPw{TtzgVsiGuP)ko%f+o4tZ z>AaPdm$ID!B@{-@JLjGyEZUi?g=fWj6HeUP(Z!eRodF^>G1a`2!1lq)-8X6ZKEV2r z_A>+dC|9GTa357~rORZ6`S3AuAbqr4=dzu7RXYkgA8i;2qL)IR0V01AeO$v~UcB2? zw4&zEk|5zOo&@Ej-d67z`q%Zd;{$CL)DOM$sPncO?RMVL?pS6wJ-p{(q6dx$GL=sz zAFs4}i)&TWb^TyGLP9E$RLAz6jSV8f(Dz(v)z1?~#K4}TN))-s8YczH&MwdU$Z~^WM}>ckcBqWekltocM?pY- zY;qT1OUk+L`6plFw*rhLNNHM(nk5<9BRoQhUfU?f@*IAOJe`jghjDWgU&Lt!4N4Ed zD$cWSUw!{w2VUXs-S1F?_7#?FsEz(qYm}hS?!if(_J-$@_vh_?@YWX`+5@>RwC^YF z$iKRRHMO5d_)=a_PHWp26%Q+$28*vuI8f(be|*(F(&<9E+y>G12}R}6aJ!$y9(ws1 z(Ov5g{)A@k@;4T4VMhp4%fz-mm`HCGN_k(CFhvge3BY@kV z2Y4aGv*9=x&x0R9yEXzgt@Q5S8ZI6@6}@DdUIR7IE+{!@nk2R&rqg?Gb&-p)E(l)GlO zXavqUH3Wg*@%yc(s?bNhQVB9tjCUY6ra|d;+^>tA75m7#q?NGDNaN`xp_8*pSYH9; zYCOW>_~P<>O1d$n6Mr(DaL)sa$XrAzS(#OLeu3k#ol!J!Nv@qr={+h$!XdRs1od82 zN92mC*wEbMNvtO79z2GJ=M~}W=O741bb{C9fj%3NRvPUjbot`^vd=e*c(4c>I;k$F zoMikPs>q^5+%aj%e2CcQ;FRnd*~(Cyktt%TvU_H^2Kr3>v41?3GS}$d6Hw3s(fJ!P zTvTVwfdR<jq+{tLcTKfv&L1-gOc{gcXXRIbQTQbl&LLMMs#9lF=$dXc&QDEO8o z>JDa8;6g(PS2Z{I;YB>ro)C8g*UR-Z0tKTDaaotzOqaHsNa+%0$-d~0v|6^U;GUM2 zjD#h$R&lF{K}X?{VWZf_PpgJ5mv^KACx5A}ri)wYa!T54UvVD z?KK$oE{}*}U}XSO+yNnjO~py-{c={&4Ag-w0X1OOipHv*PkBM6vg$?m1*q|c=s~7V zYk?#T#zydzi(XU@dKbE3x25H0CQiDr#5wUmQ(z0sh)zEO17iIE0-Ula380CXdn7)D znuY*Qu(#(!`o<9AmFVCLNyV}=+u$Z+jZNqTO(%(<9SqW@Fg}gZ7bU=#V#p$w=ZPLq zD-Z7pa0C;=cmnk1eL4h{7z}vN-Y_cQ=%lgOve#j%T$Ys&I)n01K0d(GhR0TeJ{jcZ zT?7{)*Jzv^so2Tdz`PV((Al;g>Q)%`dKPJ6|{L(Bz9*U95(gAW7{*m)9H-t?Sz56u0VpOdQvp_Wqnq9=+KBb8W;)}= z4Z^s5Sbk{!OSNAY(=ikM(0ty+vX@(@0U96dbG(=J?$N=Wjg7*5w{ZYa{c~`EutIyV zk+Qh2n^~8XrvWrZp~6DFFBu&b>)%>MWztf6ZOKKqR4zZ2bqQ@V)Mh&LvFDbsUmgKc zW;8wo{CPowB84=X7i=2+OK@G|^n?BR5FW$RoJ*Gur~xSiGH9C(mpiBd9|ip4tTAqv zU#I~h9T<6WaKj^lu7nEvokzQTF}y4nbT-9`NNZ{l2LYF!r~zA6ZN>eMdUNXNSGL|T zX3InplWK6;r4419UM@?T-@;2{HDz1y2T`Hg;7Av%9Z(Kov`ip<5Z!m(<i&9wF6yrP0!=e$3_J!5}QF0?OfB^E23OU*YV>|m#3-$GCKXYnofdrGAOD)1@TtBu;y{JyZaIaM932FY zRnR*;VX?q2^@%3=w$A-5?SZ+Qi89K1i2K$D!>@?cKhYb?zTxh?L$miMH)o+%nt zAwcVEdo6QLm-(v!AqH~eWIQ-LmmsVGB@=sp;s#m_BiAr**f6WBhc_*AewSFR0YwWr z7<7e9J{%P_8nc(EtN|cqX`2Y1lHXwuE2y*@YxmpX*d0;ELl%jtiksYP*bvZO$TE>?ytpOQ-X|wxiHt}*xFL6jDLOFWC5)Om^h0l1@YQv|z!Du^G zSj$ZRoOyst>e(Wm@4)Z$*0|bF>1rGMu6tkmCajyq%oBO3CF!DNJKOIa;w&)LpPBwi zjU`U#tz}WHx)mvQ&HDfk6C9YVBAGzm<|;}Jtjy{$SV^NeYhmW}8F-I#D5^L;? zKTO4*&iEZeGr5n@1EeOT}*d_Y7H?IzI2Ur z)kbygy*gFCJ z@7~4pPxeb$8YwAH$o$Ak)jyN<7%cOd9|JyRm#D4*9e)Bnft>C>`K&4`=vB-WHrLT& zu>WwC9{V0t4*QAx8}8sEGY>H9;blbBa?qC&%G49x<0WV}7(7$Tn(riW;ZkGoE-*kH z+v}WzBRE%+LgD(F4T;|b6eN+g1}QbU)-51PG==lobH0IDSaQ<$p1+M7aPhraMo11v z%-=%RHh)oHh+Q1j$-bTrcP6065jQ6x#k?W+$JI^R5R9NwnGVSx6v>`~6GP6LUfx<5 zSX)<3X1C3*9m}8O4oOhS9;_`rx<mf!2NJ?CCG(f-uK_RxVVrHH=$9a{0To$@RQdmI2Dc16&I^aXU!OsF zu~?DVl`}WqWmm8uo;%8KDh=sg6THC%G6zrJZ4Td&KGsDTvZ--0T8=mUyfMPb^*Oi% zD^CB4195Jvhn-Hw&Fr+|lqe=rmyWOj83>723=213b8DBcumMFBK;WSwP4y?F`Xle# z_jYHJ0<;y3mk6-|Cjly#FtGtM2@&dr{O5b+8*-Oyu>lzYi#PIj zM<>eoCQtZS6Fy!LIS7|LvH=PKwwFh;0Y^AuvZ&FzGEA|7X(X1UB*4lJ3K2V(3=sqU z8c^_4?txs$fk3KTCr|OZf=SkmHI3e74_`B^wRXRk#5x-Wsbm95M-{YAL1~s-gRZBjX3bO$wJUTE~Mgv1Zi{`lB4Pm6d!r?_%a<=V; z&(i|B@bWQ2%`kePE!=C3i7f!HB=$7zm0dpu3papn@lQHc$d_!h0Zau_zu~#1m%XzA zG=Jm=cE+7p!9+p=3*?aTDj=(VvdjWh?Eut)?`e(1EZHPq7c+->@^?OS_yT*>osxLt zCC&htiF!H%ZDL_lci_cmh04HuZ!WaVi_ols=X>jmEv)Az5Z?E~)?~H1dwr!>S?`nT z!}n!vPBz4}VPl#`&uFmof&*?jC;QH%|J2^kA7ShIT<) zcn9mA#1n4GZ0F>PT0YU9|y1E65aCO2`fYvKrG& zB$6eH{2ypNZSsII+KI)_&DWs-iG@v*gL9y!d&O+Xm&&yPH5Tb%w|Dv*8ziF}DP^p7 z*qttFF?Imymld`FOGd^di!gVk7Q&@5N+fOJ(j}OEJYkP=d%7K6B&vL)-O-hLE=&Yx zhMbVBRG$YFQ+>t3Rj=zUA&Z6Hy5Xk=@i0w7Y<00fLX2A zusQvg&>eJ{q?h!z0V5bn7HjI<1pWjJ)+&y(s9x~B(mNaPyCR8~FSh|CC8jb&X7(8f zQ8N_s7&)Nn`i}Jy>IRr4kOk2lBUL>2xu=+&sLYpmw*gKv&V67!fiIGuuz`(8gz6mb zAIci@qH!T2yapT@bC+q9%K;2riZ@mu(-18nDLJH8kLj2Aw*ej+(nMutPBCEr8e01N z^V2~b&rgCr1s3rPx|^3UxB*QAn9oy}fVcr7Da_VH)tPt~^jO>NAdHQsK~$;8bISIF zaMbgO-d`^1d9cNv<+9O+&JCB#xB*WA;+Gq_0VfLAl9|=Ey+#sc?w3rt0V)9=mv^}V zA_20Onz;cj0$nke$+-a>8)trJ@F-GP?wDV1_18`7lyv;Q@Vy#(Dp*|Embw8%C=B;$ z1WI1#+1=F8tb_#M~9NR(Mv|G*=#xn=m~!gZ|PGhM2o9G7gm0UHUX(Ae%DbUx^)Po+3u|%tgY}ml?YOSqGp?LWbv- z?U#AG0VqHzXFpUQ9EA9ZR&i3nTt|!sD^gHK!Z`)i< zmrA?=Tme#-r@R3x0o|9=ya6Nu-k12i0V5Ofp?QbB`$2P?X>Kxcfo`U_BNvx0y#X^G zZboU!dg)kee95gF49n2#wFEM^f0(+KYX|vsMoO1|y#ba1+?N)<0Z9S>mtejDF&b&o zCHEE-T9m#QR<9LBmAIO&G0@Oi%jO+!m#e-3fD}KZeGAk#4>*hT3zP@mDe_HFAMTew zzX2lw2bW{N0c!!Bm(RZesw#3v*#`RLdx)Hlhzl_zTva`TFDI4`T=@`Z=X9#)PGf+YPi-Is&I0Wblrm$btHuL!r41N#1^U0#=K!~q%s zDwl@D0W$$tm%79OHUSlv@x%cx0o#`##Q_un@|QKm0Y?dCGyUmxaXvE-;;x z(!jCI5iFA7hMlhhmEkISdHO4kHljj(Cz?NirVU!oHt0xz7m#m50^0Rgv{Fv$U71pDE+p_i4( z0qp^le2hQMFBQHMNY`gTUd9bVXo~7n3l_FeSge>b;d{nuI09% zv}`bvp;%)&aBQOslW@Z*3c4b;%ew*{x{}k;#L{H3NOsy4h^B)Llk|Y;2GsJA%fsJ+ zU&kt(nBbKVHI3g0S676zDF1|{={5bv+q#r#ti&#?gP4xpMov2C91rT-!1|PvhI+sH z`iH0g?qX&JhGBu&>VL(-Z-}p`8cIXFH2To~tO+x7u92L>&Zy`T2tq50ygNhm{!~j| zhStIl3F=LC zlG0(r5{A_J?-$4}EiC@?BuJ4{s@>nAzXsTqL)0n)RTt}~D}-6l|0?m;fn?l!8A>c-mT?m#=oeXkrIyzVU)?sTph z$^tX>YIv(2;eXaMowRjWoMGcp;kET0+@!!V-dQN(3 z+a_T%@bxA4_`xbR-m6r@BuL(VI~*S!7b=HaDji!fuYdJAG?se;ptOgUw7aB`?++u)8UMPnwS@KPBY@D5MOzj55x&`7+f*^+zCkV9DZhUPvUK$dktakkfnpLg> z6OD*GQGfOm!N+C69)a8FYw_<$d|ZdvzPgy5AZ9fVE{EIO+X#!p_7>UH+oYdAJZK)Y zz96Idy@TEL|7;v?9gSfi(XH1j-SD(SL=s#vs70W^JhV9@$7~mAlgqes^EW z4LPF*__P~-y|pQ#%&1WEmC;@oxRJurB2pw=lHRLm0W69aW?PGqsQ1CC!QOVezdOJI zapS)7(H8vcLO)<-*%b&JXu==RPxlUCkoPw3b3=6v&jW*HPNbo@8zJD7uX!q6H{ID}0S}>9ZMBO9z(VAYpS2V8}aQMIe(qEx%<|rCHm~3e8*&o{#!thPuVc`vjhaOaPx2+ z#0l4d5?ZiiPz(*J!t4}82HsLGPEjSpux>4DpjJVCaP&nuk!I(#TPo)>`HVA3FpV#y zufoo^G#jTR5`jGId#f_yuH)*@4F;Af;1<8Q)HT?dSw&Q)MEL@sVjUy^d4I4tQh~z7 zLEObgT{CVoWXvI5y~WYmaiIOw^y5_HldBatrch4QCZ^7iRxC@!wlzvziN_zTv6SIh zNpP2xNl4cmD10p>di2lGb$vER_E9G~Y8}Z@Ywe!A!==E99#%W!-D7S$rQALR%~f;-nt%7IQwmH0JyC=EQvad?NvXV>0>DD*|uSGQHRhUQLsl$O}>hT!Q+!cB<9iJeA`YuuHX_sfS@?yag#pgZoC7&T0)wsd;-`!KO)= zDq{{r0Hp{uSbz2rBWgh5PdJp{o{ZSGD!f^VLtv`sXX20m)n3qFq@jwSkUOrZ#*$jz z&s1W@b=7^kzMv4kYARE(A45Oa2(U)Fe zXQ8&5(Q!&8&t(DwVrH!5&&LxEL2>7Mc&JK;^jOvkr+>T$^ik_#_~ZHP!^iYWSHJ)0 z_aVe^s^XOrp%potlSpUgo3LXwKt$%{pv(mIES?pc$ab#jYxCyF1#$7;#3HIQ9O1uz zvoqP0$J$F-o+l!}A&r7R7i&^m>tckYE*8 z`K#wYyy!GWB=vqiRlRSYKYh0J>4!^nwI%jA2r@Qj2p|eZs>(zYHWF*<*cAkaIA|1) zmpwd-aswi)u?bw!V>neZX3EDgu5vb3*`YYJ?0??epG2@dUb_VPu(9^U7iw9tDr1F_ zxsL;t)F2w$+)aIM{*wt#h);QUk;l|n_`~KA&}82tLA1J7L(?(Qm=ks|@CzmKluUu> zV*je4)50W&W$kxs7f{$ifZ1U&W>T!aHds6klp<1&a@gc-W;Ch?lnn6=8Wyu0>))ab ziGND+8!5|Tpb6>G1R|6Yps?pwLk{ARrUxXlh)ahrthn9+Qpwp^;=XzQ4y16KZ2Ikk zi{J^|>e6oR?@^g1`qWHNr8i?zAc3Hi$+jL^-Or~sI9TtCBc1cdh5#nyg$cApDX=|n zlksjAD6upe%0i-h%HXj?jRVFTQd{JLN`FcsSRnSj9oYc`g_h5P_>KZsg?_SEMaq5m z?k9-4C7S^D8c`DSgSW`Ap49u>$KGXdx+0pC{NRSO=72hU^H-?0)ag0h8f z4Mry$CA>m+ur<5uoyHf9bts9{TYB1TkeV&FL)pun>KHvS|P>qEq`=ett@p6 z=Rga_6F{XSNKx$wRj7bi>M-PoOLiIno^$au#&455CJ7|;foWmtAn#VBDPKh2KzvoF z2s}17|6+*9kU{soJVft~-6X(-&coB{#@n{s6w#EVy3vn3CG0mq_mk5K%^Qvd|G@>a zvAXAwYa~>!>!t#kt<7d$pMMUzQJo86m#)mYVby8h4+T%F5qb@%Q}5Ne>#Li%-rjvI zT1UFjeQ_)m!X)U62W`mkL4A{n)S8%0Opaz6dNnK7)K@g3dAX0}6rT@q=u$YVd$1&I zo5h&NPc+1R6^S(?cNy{=^l8ELv3DYtHN;jfegyGC42*48h34fcB!8rIsA&qEPbZrS zJ(jvi;$s9XhdsWuxhLtc7@K%EGQB#-7=`qr2iJ84+)&Di6bK*G+7O+k(_9Wu%Uq-@ zgA}Ud-JWEnKr#MPaEwk#nrN=UaY!ZB{5OqBY-t|TJmeHHpe_t5MzGi5l=$j6I~3AI z2y-#T$V;N$@6$5yp(4#8etflU99Dq!>|ARk%~g ze^GuaW-8qmCvutJJK}7_%Us$HPnQlp*(zrl44Cx>Zxet1glDj4APJk*q-w1xp?FKW z#$pypcVx#$9u7M%dZy>;$3wE{DNe-BsjM~Bsg<8NqjF3u2!9TRv7Qi;F3x8kF;41H z{h4C@b2?nwb+n09coJO-6&k%T1XtS2)dofs8W|X9JHHo3VBS}G7=_%p)UOL^kQVdb z1nuGm&#;W_i2HQa`UV)aXJd!SF==oq2H-?i9C<0>CuV*R3CR^Q=)PTz(UP)RjLw>PSe4TSx3@d@q$`cu!U;j#!;6p?__bF0p*ae%M2A-s1;ZTcm{p zZ&M{+a99-<|8P^Ab(Fp@VreaO5_b?FU&CV4)s+XjVN2eH9F8?7#0Uou%$K8A;gM)u zSl3ic1!09>tCf=WL7I=;Ngdbqz2a0E4CHaFgvFe@ajy~L;o^F+aoe$-&1x)&^&?eDWqCPG9ccRboq*c~C!6G|6ANhNv|uWrOQ=9#tZj_hq&- zL=uaY)w$Fgo}OJ4$=y?xT-u!cwC>z*9SCBxm9`0IMP?KOWm++UjKx^1RL6HJrWQMQ zK?#l}Lxky)WUBN4J0e%hG%Vi#6pxjfy)&F_h=0ggm|s?eA%ODTFc@J7KMecHJ5wH+ z)4PA<(7ct0O?)TU#4BPV@}AHN^kSZ@#eEKX(dQsTWbS$VZ+50ZUnyWKl`E-oik&jg zfZ;rgoIv7v=aFUQo+NoQ*6;MT&F@GmWs1#czJnwh9h22gF+G$&6>26Oreu6wR^Ns8 zSbr6yBHT+;1|`6m#~F8prR_*8XxzWG4hwK(IvvQM%!3&2aRTVvRroD5tCT#&Q{nu>&34$ltIRl}xjA z*LkA@A$sqSK|vFdT8%WFr)Ri~{C3S=0e^5&9!{oD>-FkACB0sKhIvsUD<=@3__g`R zC5cuHgIwSY8jtXD#u-)ra)=hSEPsLHlCyNh2?&BjrA~nzgl(-n^c+#7q$3rcAQ%T^ zXkj92I=qQxFm)PU_1$>0EWYn#9ZLaA-0WaVFDbS&F)I0IF~NnXfX*9!Q@SW9Vt?(* zVdfDBSB~q~an}y$XW-mYl5)ltUn&2I_CZ4;mg?E3 zm?OuOQ2G)1fNs-G>n>69s5pnaQaL^SXzFP$6t2N7!X*JDOkPUip=pvWdsI>;^Mo!v zYoviz&@2}(Bct2QI_4PsZhyXxR%3H>pJ?+iH?GeSA)OzZJ{qRLbXtMeD-gMkJPw|~ z?JXQp&irMjq1q=kp^06ny^SN~ugl*2Krh)i)WMUO4DHLM15NiqgiKP!YJzR}AaS2* z?YxhWRmw@Aw2D@Gs!Eg82&%;$idaaviX&@BS{fLEfqsdJv>*pQWO!xnQ5G+5 z`(%5E_EpZBF;-l;*To5_8KSzKTBb!HPFq(U<1pL4U!Bd)+S`?QU;fx-bo#3s)c7bP zmi-83)b_S=9+moN@_(I2IN7-}%WDn$lZWmu!FK%Td~n-4E9|UT&=SLGj&9`i3*pS% zVl1-6ss=t-LDLZq_iR=Xfq02Fwy$~hfRM1A}cpQ z3drU;1)KY~WMvZ0TUxf~(~FrW>uiAW&s;N^QrC)gfQC&at!#~lCs9JQUEsr@+RgW08#^Iu$zOBwLXe;%U}Q)^D!P&S1tdVQd{hi2Z#|gOKF3sEA~rq`A%2aG zr<*#c=y9Rlg@0Zbrcw47Mv!xe(eW+rTqy)c)X)J1h#LOrvP-iN0@sO ze)`z*lPem-$09XGh&MwtsRUz8dn;3dpP7qlDF z6)soOY|0}WPDeJGuqBql$7OEKXH$`Fz?2ZuJsYuMnuS^q1#wh-B-M~BjkAp^5i-jO z&DEVraizHt(1eCs0d{HE=QF^@ljh4!QMx_+v&x!-Pb_YPZB_d??goFRzzfH|oIB5| zyIi?k{C|LWtJ_e)G~m)oSTgw%ym~E(^vue}ka)pi%uJX2UI0v3b}#{wYWo8b*r^cv z{)y+c%eCt)5G6uDuC$1aa6s5bO4unovc85bkJu|ANCi+? zI{xtkv|KtuEH1SRNoQ8f$-r&`bxD3;mJzl?H92|R@#p}#w%KbTs;wj3sd1ZimV07shZQhR}171h+9E_|%mEFN9Pyg4!y;vgv`O~}t zsFRk-@i#v%Vyj}}<0;2^1+$SnU%Nfje6YEm1LJZ!nGvzfBP@b-=?(d^5Wg@T_1MyZyFa?N=;4BhC-zPU!;^P>s)}I)8s9 z*duEgdz5}eC^=)S*AbM0`19$RbspC&a}Rlap`#1;8JV8t($m~;!vd$BoGr9!3z+FrO8uRYjAZy}NkKg~YY4GVdM)(`FKj z+!7J@Xfy;odayUty-#@*#Q2#zAAh%D>oUCJ15zg!bxCcmmvZAP6B?$&P>fnosfR0V z%i*r}d1A}!w#q!0T5J7uJ9!vRG5uTHTeu3NXs~vd#cya)BYa%HV54X?ef{loXSGR( zQ`iqy2_Aki6okuvJSKF^B$tdO?w3b?iZVgK)#8a+GE3mSaU_uskK7>Z(eDMOICy2IBJ01J;JD|v3g!ZB9$(anv=P*L|c{}j_m%898pmVzv zVW5#V9Eq0cS8L+-NHWu{);#TU71At4p?vj00r18b@-EB!l*I3^6^oz@Eb0Ypw$AJ& zAz+X-(6U}9u2pKT>2yA7j?^BSqjW1nB2|HYlMb|}FfKw^q$u+KLN94sq2p*T1%{zI zla_`J!!OP;qJQ@4iuW=?2u;zI;xTZR#v~mWz{PInW}qOT#IAZ^;AsE_-w8@X#dNua zMa@e7JmToo{qjC|Ly<0y_aWYb$%nZ{>tGT5f#eyP)1ARCmvnF&HpARhR-sCISde;u` zB@w$mP1!c()}?hdvYxWJDwKi`4 zHo;}%u&}m*mx5r&Q=ne5X*@26Tqx_(J!$2zvdX*cx|LMJc%nv5AT-Rn9kI|fo_ zt%rT7!6$xw0dK6gP0Jc|!o@z?v2feRJCjVcS%9JNMhi5*4B? z$Cs`XYtF$xlGUU`)@6}gzbr|aacQsg0to~_3~mpoE5%pF(#;w&!2?%xK0~uHK<^hD zW7w#6`u%_8lZFbdr7U9Q1k*Hhyzry58mw@i^K+X70q&$^9K4WJsNpU@&B(}oi}|ZH z$$#h!)MkT`PHz^U%3SwwzV8~Edg@61tiSmsHrK5Aiq#^rR^AZsA~0}k20=t z5FO(ZQFIr4Blb^1!~0SME#NZcI-;DWqruM%*sp%UQP01v49@+=JJZ#_4?gjxUw`=E zdaK3M?}jVCeLh%q{C2qV+h)D?`|;8r7#n81ysi|gs=uL&sdQ66(=oa`U6r?gNw8=7CIAEm=uT`p#(vKN<#e@=Cw!Y6sD ziW^^=V~%#E*C37mH)p&)K7T2WMhtN|pS~w79s&n^-g%@sJnr55>qbl$ssa^9id=$F7WT9fd{N!x6g&&e?KroT_x3#daRbr4+;V*KTV8w^s6B0l3g zwDeB7oy^<7_fMqJXFEnp?yGAmeF5u}vW*x4bK(ke5Io+|1wp0+?0^5kL+bM#N;wdz zx%xk<0-MGll7g@tC=UY2h8dfCp*+B3`P@>ilbzl3?s58eQpP_^PLXl~z=XN9ow5~? z&RO|UI{QV*^Fq5oZbmVzBwtEni(ZQ7+to^uCpWl6dGY$PyHt^jv>@W(W`>?n{-NYt zZ`lfMDuLO#%x4#fH-9B8;5sFu+=PPKeIOz9c=htdvu7u-9=&<>%j?$d!QH0)e)^oM zRa7(*n}K`A>XF%RtO;aFgmaW2p4Q-`znJ({WQJNCFSCN+Oyn;Xi!hgWu-}G9EPl0N zdE*DVe?gJR=6t_08kyebv-|JC$4cm%&m`Q0M;ejY&6s&*1%Ff3IP;A{P&KLWRN1V4 zh@dSlo_}G73J1!&k05-|{oyj1tDhPTW4K7_d=}J79&jJq~ z<{epnLUuu}aC4-Yp9SXU(hS1VpitB#;YrM@#DCZ7$8D!wI^j78U5lJHHxG|07=M zU`xTT7w9wIHudNvGowP`dIdgsB37*pRO|fe@{~(s5PMt<3rqu9Lk#c%jE?R^O0q7zN zyezH;gt#(t%mJzjU`&Pvd7W}H@u-ESZyt5Z+Ayv}fI^TReM;^cHpWO<7LvcH*3zhC z#B~Sr1unahZdsv?8@DLPBK%xbzPNFldt(-Jt!_o6kDA9A9GfP1@bOq)UEq25X~19cmuf7V<%WfParQ za6SWwv<5jkt3Rc(-b7Dg zbFIf-il{T`KY)dzG$GzAt!dM^?>t--?@&0^Zs+)kSm+EH(Ku}gC5Zj1i%!^8`JE8N ze1AIcoef}z`DNK{Cp54V&sXFGBXG_|n-`hAOT0^LhhZ2WV>!Yh2s$BW?SGxVF*Rol z^sGI;#~CHbx8NZ0lPtO~IqV3WZAAa3w<1xJi3rMHmLCDpZF=Jni^&_bXaO?iAz&m8 z&|P95{gW;wnxp#4UqcBs{Y3J!gu?ys4jP98bgnFyiwQ)L%0Ui*R(&xSFAfIxdH^&Y zZ!lftcU9RE3f3!^uQ6C0FMmaxhB1e8ic1E7xDj5Y+f8G}g}6qC^;5K8SRT}{9oR-| z;?#*KQ(MDd9n1gNPynlu(6?&L^M}}P^mDH#s8(kq)i9w1T)rWk|JAW0(6C>TWv5EO zcn=S;!wrCH)lI`)3J_7uFmR4Pe02bDhhO*&HmW@08Pbab9XS-C%ztMpRXJJ40D0xc zSquK^rmX?GhEOh+LB?(!(j~Gl_2fAo5T&n=m?e+D^pkDDmwHseX3E0)Ep6uvJNH)YRiIPU|9f$@T+9!3zY`?hY9fx zb}9NI5t#~Z`^x?SixQFd@UT8UtWRu+`q#&eK8g{KkseO441Z9b1s(z=sQ}+(O8sE- zvbeG3u@1Kf8&_D&&;oH%QVlr*IUL#eVh*ODAt|OT+k&-qQE3Z{nkieN{xczZBqi5q z_Qt;FK{XTJZ%$ZU7nJTRwliG6vII3qzgSgJ2pTDC&&hl|nVmvx2Auy$21-THArfnA zSZaRgoUG`g8-K#F_0vdoyttOVT8zXI>jj8)9&|2jY@vMNYpG0n*mp4#aFWswo&*hX z7_I-}whQ3AY?JU`+zv{&aNB=zJCH;flX!&jM*tiEWxo@3678$fA<=M%BxUJRi}Kz}`}g<0MHua544_hjVkx&eOG z?1*phsx&hSkYw!hL%J6pi$qQblqE`RKu`pW$yUzGh&4Fn$j_3V3P8zPI>WfO^$rom zlY+%Soe?mf6H?1=OJE;5x)&d2QfL#T^NDoDa4D)KW69smE>&=OnPai$%sD`{*bBvV zG=Pb>oqtRfQyi}RC6n|^`;TQX=Pg6J)($Kdlt#Dg!oRE9PC`29ikXBDD!&Co?wnFg zpjex$HAQ~LKox@?Sa++wU$@OB@!O0L#R^%A+l&vKNP8_d{S}izb%^VlcyH$Gy8m)O zG7Kmwmfb5ps}84gc!z>SVDhms*bf|hGe|`Eihml+jiLtc5Ogn_@0%ZiW%%`lX&cdp zEcVCq@8EL9W{d*ok^m=E__uqW8P(uGp=}UDjaKSm}y>VgoD>CWt?L7tm zhAVh&72mSDagp1N*zq>%gPo>UPlTIBnD*bP8-ZK^t0 zPp9pgJzvP8moFn$yB!L7)$nvx?7n zD-CGtd+BLz@9_-IVp1xLeVFx%LxN#;)_;QRFMK+X!DxwA4lT$`8UQ^Rf#FQ7n2HE|FhS(~R~Kwka+) z!cx2pGv-c!JYOk3NDBl<3da@qOts?1fV209nkTT+ge9cz+Gc<~?|iJMTQm`7tbg}% zYsH)CX4#!W+S6Fk8O<4ResO+SzbJ1!M)mp4Hy1&Xu~dGIR{b4s1i<0>JEq3MY(Nsr zB^}MMb2$yp4T3q20`iTDX$yBF4!tYe*0RTAWZRN{NzFaA9Y}-K3t3oLm_>g9ACx5NndRTgG{kfSC4px$6InHo>4LM$zOXrMqT0I;v z2EB(qvj;N-Kh!LckO4EQ&%`VlQ;IDySrE+I2Gn(d3S24(6-iVflXAQP_-*Xkq&yR2 z2~uO&6AExe^kB?bW|%*7bi8AbUQFNBt*nj^qYGgNNg`@sf(>dw)h+Sd%EDwh8>4Hi6CCSmUpOeF5I!_zZ+P5KOT=wMnPC33{6cdMh;k z3fxi1dtBg!O$kihCBBd5e@_>Ux zOr3yMCYX#S3Gbm zvDxIx0q8MV8?(V->iBlxN1Pr6Ulae~3cgGl^ff}B_r8s@x^@`JNq^(oVchv|3?tyO zfJ-(y509Od@u?^5mwj9|MpV2bh2|JWWm+V2L3sEd_UC{CBeggLu< zK&W4C-RT;!MJO*kIZ7Ig2GRxhGouCW{MUbxiI5h&zanR!i!ITECum$koAD5K4hQZN zyo8TMg{ijOx5JzJm4D&KAu1DE)ZO4`EX*iVtR&fEbC@QcPZ}Ic?QAd`H9+NDZfkoc zf%4~`gF)G+6IF3%*iT|wr|Q%|H!#U$m62jWXaUQDa{Ss)TWdenA`v@s2GVeiSBe_B ziFv(Q*>bIQDdtVwRwv3ZIfhSxBve&dQ*=xFCwvuDo-j-(uYXMy8t&Amn5~V^+L1Y0 zZA8!0DfeeZn~^b5lcAe<3&M->n<)qjaDZLGDm(2s;Vt=aCkeF36D!AlCgtL%oQOww3 zT9aoe!2z5Jitrak?h%ai!?ofZKK=05D|PH(xE7zPUQu5_fk+#kImHN6KKTJW#N|UL_(7+Gh&H2lE{LQ4WZC0S$>6;Xws0=S>j5fT^Tc% zkcNa{B^E-RIWR#VmWBu3H6n89CoOxhxelWWN%L;w??Ef&dooK(XTS~(Y^?)SARSab zY*NdrNN8hex5$>}+4%4xX8dH&cCEKure@9Hh<_p9uf<>_Ye$h$LnPMJrT%E~$+phn zHUPIP7?c?7a<KE3f;ot{G_8869FwKH@TmU7V`5lrLLfgyh6|Cs|gkB7x<{XmdW9jEj4wG@y#5p(yxd|%nc`L zpF^%6JIYR=VTvc&B0k=w+RBUrX(Dq2V`#d z1+KXZ{t0^;H2;Pqhghfv7Y_$8ewYmgeR>udHb5y~6_=%Cx13rzXpvpaUZISSEi#g; z_a8Xf2)rET2%%E`1wi3tyq()*w{q6t$I7QhJ42YT8iJYglcp>l5pHtN{5*;D`-Z7WV`UiPxs<( za04fqytPKR1m~yCDF+myCAX948Wm*0q9*|ycvI|NbmJBong%(!Q!6GF%;2Kb2M;2F*H(nR$ zc7l1vRT!t4xQ9cfbops+2eLfKsgDM9V8j!Py9;RME@%dNAcJ1GbF2AXb0j_D2yY{z z6+Dnhr?0qq3`HZ_6OG7e*BaNuy_*zzITtA4mx~Ch}BpN7x=#KYKsJ zr3$K>`&UF}fQP+ejf<$BQ-zN~MzA=yvx{7G9!@JRZLxBLxoZH;k3Oyzoh3dJ=Tb*$ z%O}mNh-fTiu^A72>#QjPDSy9^l5q0dB_}R$>5Ql}y6(ar_+e+8Jlp&!!*Vo&&!%cL zIZebEZ_~ku%*4*|QXaEBm|Wyol17@B-q=QZgN<1bjAF>t4rE60jy;vx+5Kj)(CZ{o z-v@Dv<3cj{G5;9H>s8V$tqN*_Yii4am?I=xVOay_5CH|1iI50%xqt6gbWVWUo;tNX z#l85npkN|S`m8c9ISKpNV;N^f-4v3Qje|S`o8U7s5f^|f5vLt7+R|d{GdMCnlrmRDsUHm@X9yQ&$k+R+ylyndBaC3d z3jI|k7CoGIx}0sHDSw=E;W+p~ju7JuF;9znOJJ}A*oO9m(jRDuVfhLcI4_fJa0L4l z6?TXc4V|ZQ{tMwKYm}>AuZ&9r9LZSM#Df8?FQTq_SK^-)a!DPz0?kTp7V&vxd%i|q zkUBTU+bOR$3oR9%g00;hnHSdkP=NQk#T*W&osZx|#3q4sTz|kD?tWRY{=!g^I{c>h z9g_zlwzUI)RI!x>uWiE0vR5eR45!^a-KjcNO>Lr zq%ip9MF%uelYf}_#79??-6pIPP?6{|MO};l#NsYLiq$&H&lP4gZC@GCD!LW~U-N8R zRHJAsduR=-OiG4$K%`|zg+(FMG8LA)U71SZDiahjI*`=i9;rqdp&T{+!#5o$Y)iS!3aae0_d*j~3I)L{-z4xa` zJPU!{%6}`A(YC;qc)#vJ)I0W!YxUd=j?bYQ3M*jLc9lYL#Q{$`Q=52Dl9snLvFdNz zYQy_cfp*@!O6sfD9Z-dt+X&9Ex1iBOpZwz)+YAb|+hM^u)X?E-7JC=h3fxf5V3y1D zV(0QMd^Ib`)0?&6!;G_nen%ZBz&oP#zQS?>$A5F;ZPj7I!Qt?uWiiYk5%;7mG~kd1 zL}WflY~4eEYPe5!y`@TeG(3@qmlkO$bGNu4ykmO8kjmd3Rw0kjH?p&-d5K-*+0VZ| z`_S}%e+6(avlR#{lE(;_Chw{!rM7KiW_X-(AFt(nMH{qKmvcr4G|pq`O=57s;#;W`8f^s+J+m-CY56C(JYSP>kT~J@||Cpf%KL z_KKFOySmYkj^mhD=MrI6*cUOzO_5^n4 zpo8CySTw7V9OvK36UQ`#8hU+iCS`+Ygu|Hz9_d;bkXEI{U{EfC+|aM)sa(-Im46nI z1KKJ+J!#gdNMzt)2$*&=$1R5e)uK{gk zU8zD4P?YOld9%R7#jBBl$?YJ10|Zd{03$dKhXW<8n1sPjXFN1WpsV1koH|;lwX#iw zpX50WUnr09_v~UV@c;m3-&l^oX21^xhFtECs&-V8<3J|*5|?}oGT^KReB~@1dU~rl zg4hFSdNOfHV*+-EjFRr6@F;&0V3jQXk%O$hLBpG`SW#I=zSXx83eje|(tjpT+J`Zp zy_{b-T67D#7@J~4Z1UG^#di2aauNa2vA`IY7U@Vj;>lrTI;~5zj*ZvnwBD!#o@+*V=%fk}TaHK-jnzqRf{H*u?z3h{vqMh`2ZTEVvHh+MFBPhda$NDx22`B zZUtWHARw)lN7WBCsQRdOx+l40a;|NY@;eD*KmK8Wbj#S%m!f$^(_E6K# z0&GGzIBt=*$0Buq^-zmHG&XAc*)(4)5(sAL0XXQA_QCalC-z)@I<+^hNseUy$Z2)* zQ@}pD&y;@Q#%K$*g*XmCXOR3$39-PNC?P8t%OokDZG8;hO`!`C)1rD-*ON1mblI5t zgPug$A(tMSYOAcWa21^NYiEDGDZXHW??JsM?U!#=gL|qGD7UJP>27ss1IkZ$N$-M| z$TeVB$9%xR*H*t+!boA)(8q**$zWpCR_!&Ka620~#CmFKG*9loegYdX=GB)$z^*kJ zR@tEY0$Mu|Veu^W!t3NX}f zzTIWul&_Nh$p^Tt4S!N?Lj_DjBme8pEw!?%frO1F`UlC~Wcgggs+LVPt8NXL@R`h$-|T@MLa zOhX$g&u(k*B~R-5G0-a;E`=$)502G!h=5MRW}gV4>Qj+H-X~#_{nRHpVCa(+giP|M z#kA}?YzZNHHg%gO#;J(N@~c7F5UdlRW&uz*mJ>1Ys;pTIO!|N7jus&yiNg-Y`E=?m za!#tLIAXN*beMY4UE@aF=2OiJjf)7txus~OluSMp zs1&h?_0dib5io*wdU&socDhdjfRUohWF8`LvMs`J)U7LmU!GrFnBS@8GP*HIBKs5e zBdGlN{{w#V!adFD_}d zYQ!u9+W{T@`jCEex9X+6tv5wgNXt(GUN^QZn{K8qZ-Gg~rW?V~8(-)Ua&ivoVgX)oISBeS^(2UFnQZB}&>Y?3jZOy48oo zXs%s!z#xBvbDUhl&|eaPo+qMTOhXCZ7WMCMxvn?$9!3r`-zit^;Ec6ZTJ3TcAc?E5 zjI5JKCM~sw6*Vo}=FOtXO@Mg=`XUdelteTwS!023uQ_8dVu&*v44)1%5wjeaWEmPt z$q%^8Z?7@U8!U3+gtpEn<2<-$OINMoh1bm9QW<~Ot4#7vTGs>;q~PjZDoOGq&y|ec zo3vc6UiEr$eLTNE;H>m8yomhM#?#mvZ`X#zpi(Aogl>PieC$6EYwd;b6DAlV=M2k& z5v=eWtJR>T`F#BJlC^IX-Ta+2;$i&`j>;1Sa34 z31@bTH=te*Y51r!UTVGuw2hOZ(coo^!WZy&)%H;^!(`?1lfg2)|ByIA;~VrR2G0;e%SPRU=>_L) zTZ~XQw_J)oqpmE40Kca704MUV&B2#OtqYsRImF-0LHfMS!RrMZr!E*gd1<=GP;Ay! z9wvkK96P(d2J^&q$s1WHr`5b+cg270`!=FCQf{M4K5kwjwL+M>>AXo34pN)*ALABp zoX%neOuX?iObsk3tPgBVWIa20-C-<86!U)>F+&%t(>wOjyM{#0&_itVOcc5z3MlC2 zV^R}r1< z;!KtftRdw$QN=plNSCkv?XS2R!SdOGgQ1V+Gsx5@XaUnJ~_=_SZR=QN@2G>xt7!wyzWy17s?;YtBJfc zR2zHkT(0KoNlDRU^i>z}9B6+rF6K)tbm(WOIU(&3?#>z)2i*dQF)!M0lE>d_0iFYr zfzgtD<ZBK8YLh1;m2xq){y!Ka-=ve`Y z%4rue=^b4llNeeko+VpcKui}>AY9wB6RPXlfA<^Oe@FXY;9N5!8sQaXMO+KQ)Yce6*TB8GMvaB4^(btq;w0AHiB7L|L!x zA|&_re}B7q`;ULH47#M!e7wZ%@{f(M=jfCwa@Wu(7y z6ig~;VDK30wvQr1!w?!-*{BiZCwH!Wa<}@#eb~igfkqGdKXjv#pikD$uG9mrH26Vv zqV&66yM?xk3)An0iK1f){6PHvhd&xdlo{FeQPpL=+pK^6{`T*0qq?BXPQiskdCk=< z%B;x!jUR4VQ&ItRS#YNOlajMPz`7-Ob)CmjyI%+@5;#ngUs2ba7=l`mVl6zLMD@fZiww^R5t6!wvHa&`_F5r$oyNY)Adymn z!};1Pgl!6b8y}k(Q+&&qex+w5!tFh$*nA3;Z6ALla76oGA6wCUWo%z--Cp#@z0&2+ zdELw{)dZd%ET`3EnfKu3q0d3OWJo~>>Pw%bhs$fvHV^V zQm}<8M_Z|i#V9!Jj&%6+;N$w`e|B8I{FZS6-_>F1hDHSx{ag$v(fV>>#Im0sXJs}x zU$}qF8Bw>Mkwc+L`VP)!$*@_L##LwZ9OpvN%M5L0MW4V?or#59w#OWa$>EHiS~FWc zB=x2CM$uBs!+Z(#VAI6K#)ox6hKQzDR)<+->&WU*D>hD^b{F!jy(qU6wBf(QGU6mU zY`29h%}ZQswBiE#}ZRo`Mg%a?zCv6q63qI_8O9R?TFD8gx|i7LN;_%oFh zV4KZ1?@V(yHHbmaH2tI(DM$Nk2a38u`$&-yK-?+#`r^1*N2fg%Td5oedpM~ptHE9y zQ?+6%WO)jHg_AjP2#%fR%X{tb_RZ%|U+t2tUSI8!$_VoT+_p}OgP2k7(xMPV9|wPg zi88AC_KW7qEqjhy^dScgQT9rDdN}kbrP##c52i)(L`g8EwuvR~0wLL)5{B%O*uC#> z|HaC+-9AvMCTFu>y6n>s2hR)&=9{=Zn^d?(k4*`uJxvg&@!nsJG$@_`*J=s+mWR*9 z3>go1+DMd|1B0>-VcOAX$u0VzA-{hj2NtzUKve-c;PYq>0v_K_6xBOW@wuV{EJ#Xo zi9YQ^&7^{@qiWVCxNN%ApzUS3ZF?tJCvCnJAnnSL+b3Pz{{@+kV{hTO|Gkf@5P@Yh z@FXZ$07+oQkzBX4a1;+BK_xLDlq{wSaqJ!x_;`RONj@D^q_G0^vLjT7iXhnteL5j-*KSK6Cp%fLO^;rNT-TGua%Ii9 zjm-hq)@l!bT#k=l}<$Zt3~lignUKI3gnclu`uP`l0#?TGdx74! zzD5j#^n@iDaNU(*c^zx{M+g-}Ez$v!xO8nw;jA6kVk2#XhLyjvKo|&dS*tLyFF-GP zRZ)eoUwO1PGjXO2TZVIzaTCY~oKN{@R~edirQ$^E%L>?gx5InHsOx_mOm)DO!YRC` z5R$X9gZdebgdT{Z<;~CxN6O}=RYPefML(2LOHwSb^gL;aZMk^)$YZxq*@^}m7U{)`X51I21IY1wR zl7Ky3e@3nWe-@8*iM@X=f?}6s1V++@ie&X1D4mUC6QX&w1K3y4J`^l!9+>%N5h;y* zq+rF2s%Layte8TF3RX;U&W?0pdnrZ&c^J6Fd0~MHNxtt@$Geb!ex!dFJq`ceLU8Gv@MB<*MOXe;~ zu@TX-*Zdi6lF5JKj7Et5JL4;yT+et7x_1U%bGZuQr*n3dYUw$H>Xk%#+z$P!T^n|%;OrsvZh(HGUVsiqRh4}%IqIsl+(j= z=5nt+&7OQ-9A|FB*0}YHz8rWdx%*wH5#P$3QQQ+RLLq5 zBuYi`Z0||I7Hj=rjV}73UM>7T-PlTf{``Lz*`h3-{0+uqSe9&df{#E46u!kJND5(T z7Sb4h;W4bBOjR2Tg{1dSt`jX(mx&wetE6-C&#hAEB`=Z&{@-7twH5lA6@t|*)@XvO z|;1n9lm?g0-nZ+x_hHLtbG^kSVM<++4lti!%OGs)7%Q@q` zi&a8F=9F*Cu$&-NMg{6OzCn>TTi1W%pB`7DLJW)E*u<@IN2OuIiz#m!KV~e&uR38l z=ej<7N|J4Oso17eKqS5seDl?xt!9X2jE_raktDtPKBQMFO?b?wX$?%MuP_6Z5pd32 z?Dx0>9|5R}``37sWck@gu>NLsAelU=62$%*h#LeXKz0OU!*Og<8G+-O_%wgb8wB$! zMy;iLr(L(n7B8jtqv9@dF zg!PO8$*I{A8m-h`Lv>;mcVd4MG_W862UcmT=k`j}j2t42huhDQ+!r@bjt2(CbP&}g zjmt~WUKfrNY0zg&RwJwr@67(-N!9W1%;OKK<<70h@S)eWl!!rz6Hg9useDGt|6sXK zmMAn<(1+m0y}Gx=jeFUU77E?e^0;{!(wd>0@RUY@vBIqs&9OAASJQvQl}X{_X&lx9*-INmXmQGz&-;^yMkNKE~i0u3J)1A{v)aWUJ zKE1w#><0v?{QPwEj(qY9h4AVR!dnAJ&Uf(P+|eKNV1MVZ^qzn5y|)A%@|Eylvm&Ha z!40p?1yVXMexx8Y{qWZ-m4@VhiHe1Zg_0&?gN`LpOy*Rt;bxqn!-Qf-*$ZPvFGK1` z8>Co6=|+TP*x*p7Tu;27eN6K+VkJ&2;n8DD@8-xnBxqFgcH*K1g^+!zi)3#Kd8dFj z+k}uW+H!Q`nLdBzOEQdt8AH}Y0Rk~pJdtKe>3~we1?hm`^HSnbc3?d(s((CE<{wlt zHb=^Y*{FTI>IcVBEOFHoi%K6Rw{xn;S;nErYn;I(cu6wK75Kzi^mWXdmF^LPfxqy! z3g9xqoB%jkt~wekGgO)A;yJ1gbu>V+mFNB)SQd7bY*l}grMwUNuO8uxfGdJmWdA&w z;otdr$-(WdK5KeX`j}r(b<0YCFeRrOmS2=Xyt z1}aQoaDeb)@?qJ@d2ua^o@d<*k;ZYMs-Y5{1>S&roCp%hRap(!#6(mqq%0LIT$&9! z=e7l*s(!-LnFYh)-awhg=Qz>6Ct+auq>-H`s@g$}REkCGK@5wA3_rl5Rcpc>4#cdW zA(w8R;dP^P`yg!8-fbbi%h`l1OBo~>l>%J_)??6j=6K9v)Dc)yuV9pVMk z3%{y5cBxwE_}=hfsIu1ZYS4-yN^E!M3(9{mI6$oRO+rG2wVh>zEvQ$dtX@!d;Z&2qPh-g3540hD#T&2sag!JKsI&w+>}hL zM-b-4+BmuMl~MBaw~tY7^5H~@-2%9XiwmE_%Wv$Qq_eP|<-p^9ky23m)xRV`R&{Ot z=K8RUeN;5BzKdfoHZw47X~WZY`h$NjoRxKap@t(=VzTA974xLl{JjCp&7cv_J|GFZ zL5W>7H6u0z`vEBpGaTBy2)rZ@Ns@a_36VP4vf*-gEjE11vV|Fy(I#Sjw1~J`UsO8# zI>4u==>8Otga@mEIjjf?J+Ssw+S2OiypkyBTp_;7Q=yy{I%m2}#uv_sVr+kkqeZxl zf2+i?Va2$|V&OU%8`EA|TQLJA^vgUtdi(!1S)Y~$Qbx;f_9^;z72@NMKsn$~6dJG$ zTBsp$fz$^q<`?E>2}SX4wyc{woru=ie6Up&CK5adGqLx$vbd-LE<&+i2nFE3*rV_i zS*-%fiYK6Zoi1&=4uG*!@ezL~oxL8(hpL1*f|_UF*BUsNKuctbH}A8+Hz=Qt;%J_b z`PJMySZ^dwCCbU`5L4*VtN{LQV@_FcV+Q z6pHgNST)G!g$Q5Uw>W=UW@hR>MahOsyws7$`YIe|;jteUXarx(dH_Bi>w;o`gsb{{ z6#(y$kxPNG`gO@mc%|FbVtqHurZ%IG{t#GAlj02N>;bWxngoynnmbs@g`+;9jQ4)zCM*pW&QS#dRv z(GJd_Wb#=)^9>iLf7(8`=9{O~Hii@#T)MEfIf~k!ehmG~ua7}~;by&Ci8f<^Dc#$6Ocmj0ah%|XSyIbDA z;k(8fX)i>?$*b?PuI^22K762H#<;X9h;_omY^|zaMUf?7MjzCH`8`;Y1U80L>+)#8 zsO-4jwvZuX3!{$pRbj#D31p;b_iPleMN zKc-PpZZ&^LL;7!@GP<4Oco?DxuxrUIw97Hc3~Pac8BK9iGNYqYSY}Wv%e!gfYb9kT zSY&D|#%I&EUxpJ`>N)8LwDT+)k1MDligm%l5X;HiJumTFS$%-hbLR&a(gj~1P zuPSdaCbi)1hgCQT)+j(h#XLaOpy0@LoU9%UN3kZl?Q~9*WAOr_VQxxbmz8HH?J^T1 zj}?E;QQ#dm`Bcb3H!PXAu@qeUtipj<#?k;MTC^oYu7F@XUj{QIpa-$h_yl0mWo{~- zVveR1`{Mw(Y>lCFt(~5Lfvtub1h>hy?u?8zr^S(dKm@wJ9Uc08QvkC**s;b^LXg#n z27Pa(^CPF8d3MGwDks{HSOtZYC+LQ!UMzpkm)eF;0h?*EhWIV_g9rfH;DTDi-gJ&( zsox7fJ8JmHhCq|4>9rBCOz)ILSXezkm}5=$i)ZJOAq^P`o>+>?oJCS4PWaqqfAfuC zPr-v|ibFcmfaU}4w7tb0QuA?M25do^9Akz!{-@QWJKMUqsAxexM1w@?s^dykq>g_j zmvPNLA?fJsx&N;1Pe`cP=V$`OJKzCO0*ok%=n(3q)di23>vwYppTu{Eb!xF2(h zGltk$v`(X=^iU;3EEdh+ieAxMnIbPoh3JWM<$zGx_!_m=dC(h9-{Y?W;KC7;sS5lB zzCkQy#VK1Y(bbCnjl=_WK*|($S_W?dhi3sF3%*6b9iWdug)IRW9O37K-qU~j_8RP} z>7l(Po-xS<$JP@O+B3VE6(caE5#bdRsL*|7GVo>%|ALRhFZOxa?gnBoBXLbQdN8Gp zQ104B6FXr0iZ4ZY%4Um4CK@Li5kKD;pZ43ew?RyE0>RQ1ZP}7rp}j5eU{pgo1N5~x zd=}>m;}NHxb5>w%P46i(4)cGe))X4{NI5waBA4M4%qf^ph9Wjr+0Tztm~5DgeUHB$ zD614f5m9=)HfAKE{L5bOxW>3m7J1Go71i7 z48&qt%2_F7b@2eTmn{AARV99G)j=CTdPiFc4hSmF9l7=Q;q;pKB z!{WXjzvX|mm;sYu%FKTqir8j!FLe8jt8mtf1Fe&upb5lMQDTnTSCKBYZa0%MfNRzS z36P5f3a#6f`n1@4=Kaa=lcrs45Nxs8gH!?2B|8y3;(&SWzBF5~s>+X9D5JPz4lSVE zETalv^OheH5g%imx{Z;sGaK%J#y;V0WfB;yt`mPmI9;^lV`#6+Gk}yJWZ-K5xi;_w zS*8FBub8Z<4=RW+OfgI^swxkeWjQOkZE&ZYmB@vu0Kpq!Zl=iVB3~hhL_0xzB>ua! zMANTKqLLU8F=;C^DySp!CdBcfR1c>`b2|9fe@R1?4u&0;EUn63S6>MJkaQ46KrW9h zUCVzaQ+!5>PX!fKAl!UHu7&Wg&^~i%E#`{JHCRWj)@3oZ-4KLyPH?evGEy|qpw)X$}8Sv6+djel*b6!ONeC6asb&*h{dK}F*XQ{l3ii_ z&GaPL;!9R0_njLMaF#s(M%U%Tay;VG+p{&DD+Qg*;51u@Fc=F)c{nxKg z9^QX*-*d7g(zC^=88p2Tt!dIEY-uGOWhkT{_E}OJNV393o6sZZtDtOg9i8(FlUJfX zLTi`+090*)k9-GT+73vT@vD8=>kl$)`(6ByrEbo$L2Or=VW_d1ULxOFDrSHGxO`&V zp52~_nX{_`gl+5nJZYTQAkZx0879b6R(@5}1*%=RKDCjbX767gmjLW3Z*X9(OGsb5 zRr$!@R$EUf4&GVx#-HLRP-kwZmC0|0Tlqav*pbU30Yq~jYZ^EW;-Q0ay)v?Jv;5F| z3@xsWqk1(u5$XnpE1 zyjbBZu5VU|`!_UduhFDC01E14KFNbMJ*%WtsVSqm2uf-9Vz)Z_Gxlg3_8i#}b4Se{7Bq23dCK^akAbWb{09u*?eZNX_3W# zMopf1yLB5oQUSBbefxj2!IfKJqiN_MQw$LG+W^uY-4HaM%1IR@<^e_BwIOi8VuB&f zR=B`HGRkei-BR{&Ke9$vg9Xy8Eq0fCcjW?;Hg}koko-aKz}#fdj-pdJdc{c1pr_L# zjIe{*XoUhX&^Tli9;nJl>IwZ5799G4p;xQ!%QuX=GWoCecPW1sg%|^A7F20vDfPZa zWQ&huO=(o3Hmci=P8R1$uLbNatsUy07i6;QBnE@Jkth;tqoGab!=n#Z^v2AY0OTa>JgcDc- zM2XW1D9Gz?JI#Oh8)q=LBE^(*O)OqG&RlJLaWF)Dr0jzJSj?Wi3%J>vN~otN=PY`B z;3^RwxHg5S-~^%)kV4DdaHEy`@neSKmE1&ZTUwCn^5zKy!?f$3+&q1jOv1&&fzy>R zMF7?@cv4b02Vq>+$6lX&tV1n@xM3J`8Q8+S+2ezuj9o*x&5h!30Y6Ik3~60&1h448Qa#@}fBt)kJ8nlJ&wL=m4x_eza9gwXqvg2Sw^7 zR{=i=B{zQs>hYVIT-y$%n>t0Ji`+d&Bbatdc*I|FX_nql&IMh zwvx;w%l=li#-_5ORBj}W9JC#;O{bOA4$nMBDryyyj@DdXyO&)ILax~-+6v{v$=WT2 zu7F_D*(_EO{G-AiU(_i0Zs~O~I0EGNQ?L&98vo6(_1jDd(269on)RehrDF8JDu}JOK{{)%=bZr<oB`g#l$T7q6E~wF!R28mIy|;z@b9n_A8JRILFGp zB1R$@n!Avq9>P{2MZJ67gD%L(mH>ZZsQLOsIH-Vf^Q@~vaon^4f$L#! zTI|%u&J;Hv&%y+F>7k3}k7r@IZG-CwdNvZTdnN^Y+KjZ9c|dG~y`6L!tTbB~Y+$K} zYd#3i<2O>pJF1(MsLruKR`~t~v{vA+P2?tx$5#y0!)p#UUf35G(@$=W&l!KYC=I;z ze!`9kVVK%oM*nmtXxZ27|LgOu;J#rN6(a5SS-v9u<$2I*4ns>kcI$(&s zycRNyzd_i*g9OCW2SilKJ$^4U-S2Kl7O zm|Yzcz6RlDfwBTW3UHW8odqnjv78|_`3DGbXC&Jueg#%~?6ScLNJ4+VSQ=~wJO(x% zT#~(FE=ek~`uqJ)Fh`S~v5gnt)OQG?0jIvZcX4n5P9=z!>NP~OEHb4geq~9vhvp@J z(4vJXBfFKZx$oF!N&=Yz_-3%^3*~`au}}J>y=pWs?HVQ8B_e4tK1m-Q^|nY>3Ul8P zsLN9zN-zLDjt7#aW2b*wlIfr`!+nj;^i)0Thq_2#ijjYcUzgTMj$Y=0KJ}9-=Y;%X zc~Yi4DUWC6u+l!h`FVTdh_2!$WNd9a?0f67q1?zlDFaiHLtB#ZmjE4F0`_oz4#?p% zh0S)-BZvZ7*}G6{tTY;%fwAmo?5MKth8;bQu zI3ns-0CJ8~_W=L!;yfN8dNMylnGc581UNAGcSKM`h0erclzHU|2tavgbdci70mH_l zB}}1YH+HyaL`4ud`h=>}NIY}GA@rV=sVsH=q4%S-YnoM^g}wpAIS{0B9RY%7_s$Q_ z*?kggQF?y@fcXD#MiC??)s<5y2r)vAVTKSww)(H4Q-)I&2~eyMiKv=ac@J9HIBlI< z!)92z)(DB)F>?iA9GruS3_2P^8CjDGlt>fqZQ6-6llG)BTE{I4Ck>=XWuom}*Iqmz^O6J_1R2Q`KmL!XFkn1l$J>`}20Tp=3c~*NwLa^}l6FR~xLV`$f z$Ef$oWVqlP;}}^^sTs(FObQjW22bsgKF-^18rvNN=N+83l|yT$(p2Q=4+#b+ohk&Y z@G(u#RUl~h*52OF)!}&yMAZd5QHwsFc%*-DCCkaNh$L7jYM-gHXN%wqNZI8DeqRG0 zY96LRr3TWIJ!7r&jToyH%>%(*V#H$MH7~Y~%o|I{Q-of%)Sze>MJP5f zt0Nms=c=ZLnn0@n0p;LOYkU9!lF73&YIN|#g6u7!%WYkRl(HCavZ+Z>! z1t~1%q`_FrEE@OQbg%y)uPFeL1ATemg#iBJlFUD^QN5DnN;0F_^wy3)6wZJ6A^yQP z%z=;c3$JX5e3RJMAZ1>iU{f7@e2H!UWe0SkLXxd-j~n%)w;$f_QM&T*=BVlKP&D2~ z(7O4S3YCBV-SM}L{cnGNGe7mBqExUXt=-Yz-`@P)Ve5Fe_4el5o1gVhL-&rqy=ksD z6Cw*SniNz!qC{z^q(m97&ZmFhL!a47fJi?8Del{9FEvYkTrQ@vHu26+uby#exn_rL zwgh8I>d1kfA63`4Q?jbnFH zjV@VO(^xW4zuk%u&ztrnH02)s$R|p~y3xk^aoPT{ieE8;s82j?UIl+0BI-iE;KwWB z9F(}Fo)O)wJiZn0;TbbQctot!3x7gR^x831LVSOVy78s5rJ)4KZ>XZmqLwwITykn4W(VlZRt2HuQI9PP7T#U!Ik4@#-IOterG!NNg zA|3g~yLz*-H$hihU2K0e-z((@Qm0{HWtV{|ves<=rzHaSPV8(+yKX-(FDP0Ivc|pH zAID~cEft{C84K#!46$;o)(0Rqf8)Ag2*$mIFHKOYfp~s5$erCtgnbOW_Zkkt&n0r( zVHk|TJF;4EaDk-R;B|x)ff*!LcS^S-@89{2SM#~t;?RQZSTBE;Itg!`zzH|Z)zWTO zh8LD}h~8Rh*}_Qt80N)A5KRo}av*;?v~Px?8tk?pCl8|1yc1O$P&nW7RW0)*9MH%F z_|jOLU^HJFF(pbLA;u+#)|(qbha1l0fOZ*-%UVpocC%)0bJ7?0SM^(jd9=8<+lgaz zWElwoOO~e=#{z#QH55ws`pOuI%Ct&AJb8CH!0QShB4x|9l`Gzr3@=_SWR z&D;7UdUN87RB6?>z|Y~8tYKZsu`Y>FRDdo?2sy=L1b$nvV2)sgUx{ik7NMf>4enOd zGK=86>`+#D%jA9e!&I0@fW7>xv#I`?0cv1RNn5H-jxc}A7(~eZNW>X+0)$_4X5+Fe z$C#GHKox}9gU!kV$Q$KPetPv(smfudC|RE2=;qs9NMnt<#>|37Y)ZM6K+eKpiUSm* zFYX>j9me|^NOjPM@DOs9VoeWwbrxp{5H~(L;)C=7dh_{z4A)Ga} zkIrEHJ{EZqqlc7KJ0!5G8A$4M^$u}XgVOs4I7cdIWwDU*%yLwvWdpTsWVFKfgw!K_ z1cQOpA*i3?$F*0+4z+GP2%vj|gv&RE^UGPkb)$c_8!}w`Fc#tw$Qld7%NoQFmh6~g z0^|f8fcn6qbA6zUlQ23c(|9smF=_@fA$@l|C{`y`Dj;+roLJHx5(8)F3-)ZFLYy95 zZ2gKUTP8ml)?{Xp^P%_M+lQtJ9n*r&D_MIzJM?YFKp8X+g7uRoU^AzZYaD%AS$q|3 zR~Ua(vCrCeVo!9(0bF|^DX4@Cy&&i-j$}Ru`80Km;#f$JvEZyLvf?Hh^`kFOD; zTFn~|{AEHaQIzV4rF%AKrYa7WkUoV9(9|>*Jytz8EWznL{-;^LG6t;%Y$wD*ZM+>Ni>T5T^DY5-!$9Am3ccX&732YquNJPul*hVV7K;rrx~p3E1jxkvGb@ZB|&txOZ|LM;w2GaHAPWX$4-PQxe)ORxHAJagGwtCA@r%1th|? z__23*GNZ#Wbnjx-W@BM>?Qudx{tf3kk0%ai4a%sM?4oWy&;`JON}^q*U|u;~WH8WCFGax^2Rfiv16ZA6cA=mUReqr7=Z z9VY?5<3omLmj zXuPXs-Z0_3iW$T3vfJrI*lB-X=!s8dl-L2ocSN-V$9BU_!Ln#O0%A#woV%NP^8Sly zmgW6NLSYry?jBAYQ?=kRxKw|3<#EF7_`vT@9D~v15Zw+Nl+=3J>sUCDC-vbjV``F; z`6Qp77D`$xRl4-j@tms4UPOBn^=*@Ll=wu$#y*|eH%JXWmxy=GCY6#Vlbe?bg~`|2 zygdS_G@zqyU6(i#>*6*6U5EgAevFhePXt48tX#s$Ono&TIIL0eemH;AQZq<-LJ&F? zt|=+5mGY|}zQ>#VM2vbk@-k|+t`qFnU;Ki+EwyQt6_D%M`kSEkz@t`Pw){EC!O7-p zCxejV`Sksu3VvBI?855ZRB7%6%eQnA<1TS<^rcCuqHaMYpnNh3s-cA9BzZM+4T*lU z_F)7SG!>9XhJQ1bcDH{Jv{%p4M#8^Be%W8qzN0%bS@w?ZVjkkpcd(>~b)glx5m(WQ zw0~=(i)aP%)8DOQX=M=_yYhnra(0!CQV`T4yTb;y+4Vccy2@{iCWeRO^%hzLn4|`r z%%G*=t;5=3ZFdMSmOIAueMv?s#Nr}scQZ4Cw!l4S|bfw>sL>Cw0;R)~@tR1_J?8@je(E%*(#>N7y zVjF=8Ypg*0O^kn`1a(lwgFoI=1-c8cFNlIh+%>4;W#_y&`!4aQq{oGEV2xJ47_MGp z$U!;Iu;a8vsggo9W24N}hqW;(FG-D}FKcAkQ{Wk%VR9pb*_U3)7+bst(gtd=g`!lpGUO1;2#1p?>(~~hah_;eQ8nrGXaTPZ zLX(4{*af`OWsAS+BwR%Wggp@`N+tiRmyE#}G$+^LJ4n#XCxdZYrsIz75Rr zT>>NT$!328M&X1r^sIo+LynH8QE7_7@I zTFm9%VuUsPy4SwjP!x{~BunyD#ziY9Wg0En_RW8%po2e0H_7G)-Fuybj>7kPI2Diy z3s$Bew<5g(9k}5mZaLO0*~lJX;#I9!3TMPME3I5)ra@XJUF1;>(!2QN=y=ZNUC67Cm0xa&CX$}im!~j6q!>b8oE>1fiy`D`WO|7|KC5PK!W<((d;BFSp6B#tO zspo&-NI;mTLD-~~nRVVz6bz^oQpv53+|nk_iE?9x`l=lYYI5}VLs_xvZx7v^byx@d z8;97mirAZSyX*`{!^^NVy!hz`^q+@uWk+phkPKK+m!Nt46{`Q!Q!_!NaF&hEPV}Z5 znaXedPGQA}%aI!}dKZ|q10{j_AT(cEWQzacLiENRA8)X zvN>~x!|m9T-5$sb4q}|zjNj5Q(3qO$Jgin1E$JIz?I7IH`#<9Wrl7!)uFwwXjirCT zB0<0aY(SI0-udo3aD~65ORh!twJg_cD|9aMyO|P7zvI-8tuuNrGVTz7@?6X3eo(z; zWJrt{DgwSBPfj-IK|$e(0NBakU?hZGQB+WYOvPohoy5v!;7Tf4ZYvqdq}p~N&hy30 zSdntr?uHR-a3ux{FHkGO5Qo?n&lAHT$|Hw=2)=KoTc@=ax`O8!3=r#|Xf<9U(Q_oW z$m+H7UCJwAGGI&c(akU#$y+|G?5m@Me2ev0?&(^0jzdU;v+IQ^>!d-M^v-I5*O||B z5FY53-?6z&bvXDye%U~rnhs`%0^#KGz#-_BqonI98B?+4uy~z)m<5E1fL5#n%G!F(+I^j-aNa_3XcliZ{|O(I#RGh+>I~GEdL4(bf!gBu^_Une)=mn6 zly4y7K8}P-2!>cqZO6iRN;k|t4?RwQ3KbixE_Wc~R@ztPwnXNl*4eM^4zA%#s&F1Z zkxy>1^y&63`Xc3uXay6!Hju)i-i7v3ja&CrF@yhJgfpnMaY2hJu`Y?f^8jR7+w(M` zh1*i#IfX>jQ*cx>0nycTtSp9>nN%dD!3^r0TFpLQNfz|%8^N2`_#5LkfCf>2BCwX! zFc$UIl~ePElR4Q&x$S`x$)UWftl{P$i%&EfC;bk3@qc1_w>=RQntomFV{Y)8fNiAR@Mw$5hZ01+qJbCHGa}t>ibRRUuTk%x>C?BkC;pR zsB4pXtF}AZ-Ibn2T#B$hCTr4vD`7`E^0$rw6`eea6Cq|(NQu4oJgo3bRNI^3%28Wh z_IiUQL7uf?XEME1G9?j1ax8FD3Jd#ob*VQbHe4>>pd980FPKVs?dQ)wKI1b9xCKi$ z!YRGVpH2F$Tg{U(9x7BAZ(Y@X-U~YLL4WT*Co74ewDbfj8ScyYvvN;=6CwmWFh1j$ zutVHOPeXqMc`(bfl&9D%;*$clD_vw&rnjv;jVXg<@TuDz*SYi}8& zy!M(i&$%@p02(Ex4P2Y^)4VXj0ou%pz?!%uT(UPT4LWhI!v>=UWmqOy>zEEu@XtmA zi&4Xn7G7dCx6RmpAjcc9c@@8X2D+h*lfqbfx$Zvy>Vr;K`w9q-F>hZvZUU)f zB!wH?0I(o5WOAsp)g$<%DS+ULBs)ZxunW;UhME!f0#PJ?Fm2)@RRR`4z^?8bAF|p6 zaJvOU3U4M!ISRXBKS=r!e_>@P-)4D6m2$Wiv>TM|s6hqqiikE_K>G~knK`bI7K96O zf(Ybdv14pK@|_|jv~a_t@u!+Ua=o1zyR;d=WR$g;2=4@z0In!-5J*H55>?XX7Qu$s9IbVlweUVXo#B3qF(O`MB=Q*Vx+0mWD@-Y z1F2tBCC*mu-yXeD_EmQ1)2xS+8$lA#7hwAt)HfH2nIeIb6HtKzZ>-EZu{TbVHMc^4 zd|LaNg(f3&YP&sUONuY@E2KgbMHKgECJ?_2{Y1mZdH78PvkvINRFkFxfIH$t*7UjZ zp(9U`hKwp;*e>|J{4f#hQ9+0V?E{;4%dVb0y8p1|mk%F3d-UcJOrtHN`<%^`he?eb zbXnQ61N-LXi`Q?$H!pwE)qcPxOf9f~*R=;8nzX0&k{OLO4ik6ny7_VM!-o%h8t5Ln z3l}!~2RG!>0PMAYdh>Yi&xi}DRh!IE7&Wf~Kk9hKYYCX?Ffdo~Is6C+2V5IgX-5Uk z@|N-bR%R;^%f=O}x_Hg!(tz1PwqE#3(M2N)QtX^EK-l($J(-Z z!N~>Y6yz;wd3Sf*m>&(0h>yjt`BhY+&ZR`XKb^h`GGQ2S=6n-TQfFJ=l>*$FskV`u zK=lx)WoV=NqH!MQFiONGgKB+$L9`2oU;XF&OF*F)c0krZf>*(~ylDsH>rKTJZN2@3 z47F7S8B&k&A@QrQpF^>qYY48K(;+Q5;Te(vNr(_PGUbvGS>wBxC9S z^__n=Z=HWJ-O*&8*U>Ut2t&%w5)}sGwr|y7cV#^9#cid49ETuqnuF$l5uZYE#eB@e ziT%f#ReMp8)G*Z4(-)Q^Bn*U5Zc|1RuP8~bsscdH^t%t|=bgzcumf_Q)w}n55@vr6 z>9o&Ok*Kx??wAJ6JD}R^0Z50;4;o7IN@hz5q^;V=F|l0h;%Q!f7;KKT@_0IjaYfx+ z$-Jv5?Mm&+@7Ulm);X7d;Jj%gt;KVXu+N37zf`_%!>i?%TUQJ&4<$ju_)yzdon7nH zZdO*OUi)!^?shpJu55|lym<+zNyz)s1cPj8dEzZs7CwC7iiOQ@RHE5QX;8Bay3`AQ5W5*SIok=FS7ApI z;tp)Nw$#-!2Z8W`eT;O4;~uD&pHioOX?xrkrH0gfjaW)(NC&5vX$Rg8 zRC!~=WR`=43JP_9Ga`i63v-1KP8q|horAduo<{bOg`nn7A|mP;>!h+8^3s!^eP7D| z$BWL0C<(NFJb=O}HbJ%(f>EW=68=?0>&Q)fE9ouK+$&#)M8D0sWbRSU6Yv(UZ-6kM z9$%7M#`*W~Gb%q^G_&Eewo=o-l()V)hALY`HlDe8Ia!x~<5G(QhEa&*t&7~2!={ne z6!Ub5#MaXFt{K1Ew`^|D~=+UfiaDEbR#CJ28ZJbMOY1lv(i}@s7G};u{aGNfmrR9GIC$GQD z14!^3!zRy}GfEko@@z$P2+aEYRcHkv0|g|DV}6KnP>eE0Lt?v%LGt#bq)eQ@Atz{^g7>dy4?Pj10TC3s% zr*22J;>4i*k5tX<%jo;DNSIQj#^T$nHK?kF1}K`VOpvSGa|2{-A1<2ENWG<3xLM5Q z7?vp~KHXUOsG09?b-sx3lbtW(`<#h@Zp);4<@*Ss;SC#N?zsR#mDNNl&0|s}I?few@GG6g1iSEv<n)QitPe;LF0sm`7raq^EeX; z%?DIn!7ve=F6&(C+HxZpX0@z1ux3O!*QHnQql51|_B7!;dP^WRyG7D;%i8vfH#styADfS zwRB!s5eqqXeBJIAkGQ|TguEqZrDq8DReP3R%3A=a1hx=oIIjYdtdfMxO2SgsC(%R1 zSCYHqD&9NjkvGQnOpQ@V1^Rz5m@Wr5P=M^<9K3uSiW4E~un%S=Cr6Ro{D;b*shxU% z{+cH;zCC{}mAoZ|_b?|{fmr+ag}k&yfKZy2NO_3a8l^ZyR@6J?9XUXlN{gEw5iet- zwR92|M^BhoB-eTdS(&Y^imwUd4mLXK%h@oN62Uu-?Nii5nA46DfaAl#ztRZ$0+?CC z!Ww*hT{+d;@Vm!2R=@(ysY<>-fwAI__Fr11oIi2{5CxE|?XT}rG*R}L$yCM9-fWZ!C&qlg`jSxX3 z>^18EWagT-@-VtRyfURiN?lhD#$38$Cp;}%@WstH;4qJD5g8SWV)+(D@o*o-X6rR( zr7HBJOp<#@06EymjV?F;k@gIBhsxF{laW8_{sM*mGSh47_i!(gn?_ z4rSN8bwr&FY2oIpkwQW2uYs3N?R~k1qD4htX!f}F)sP$%ZebI-Y73V^CT}s@xK5M; z7#-liP%e^OfwAF&&b-P`=tp@1iQ0i_GmKIhwC|_qIkYOkn?v@M*P#7>YTK~G5Iq}x z8e+^wuc!^GDk(tPQai_SjgJolD#>@C?4ciJ-Wza0wu*1Q6PXHCq%#rVz5GV?9CTcU zs%~FGt)2}g2mL4PgFG|yKxA(~67kD?lnfk#^cix(faLvEopF=f*4O`^@6}uUO200& ztM}@7tNCd4{24yTS+rk&1Mf7_Xzq`vN{Oa>ak;VG0Y-o4J4gmS*1W{r>IWzpXcR z-yXd^zWVa{?c3)5;oGHJt-XEwdwFx=rc^Y(rO_KoApGUaf#N3!Wxl|b$S#1`N4A7* zgzT+YU^^jn)y{B#j&i5E_)%eiZU%)x#MdMSJ|UQWxAt5*FY1piC48BO6HL$$zMr?R zPOvqY5)ktiQ3$GaLxfJAjiJ!Qh>(!(#gAZi&kRR23XZYilRB!YI1qS+D|bgQu3>O2 zSK0JlFEWXX`NvOi!hW`zP(*ZT7b|?tER7Ni%<1}Ay1X!dxuGA~8Dygyjq#_FT`GQ| zN>~h~eu!aA-bJ#Fp@gTN-RV9NtP*3WI85XebnFx+q4F`Q;z!gL;%*d=xO3{-%Cp0B zY$GkQStz%tm}BpviPMP{D^{vDU&8v4&rBUk=g8~UHTk7+gr*=ehOmJQE#z^aR5>(K zf8ZYcckmg1q1l)+$eV$2WMS6zlR>WVg3qe|{*JuI6g6sIa(31iN6A@>#gU6!hp{MB zL*-t^{;lJ;9_Un7J=vq)nXAikPC!S3r!YT%u^_U1`(8qbl)R&NESAJmo}TUP zq1;jFnB=x6V!gXNY^Wk4+|sN+#oTa-7n~&;q5w}AACDtZ+&KenpS9mL4m6&r#Q2b^ z!>e-5(-1I?oil{_vD?QMbiKsN8Kk%6J-K6H_B>h~lg4^hbWiO}azm}{Oncf~rEyW< zKK=-Qba2`{nl_POfJ-c%bt3T>Bg>Er2$9%BhR{KMM0PEtK81B((76lsCUGmpNQ7vz zY0u1E2yh}V0LMU87w_;FkBZeC=jncfRU;90U}VmjW0TdD{kQs>gdv}Is@4?=2Z1PWqGif8CMOqV)YzV^I>@)b3%Ke`r4j*04j z3CG+@TS7`0b6`pOqsVr-_dTfB+$|n?LP^XLU?1}~l`6tY%YdC`o^-P#`yRv#p5cJk zy6sdwz7LA6zQf}$1U-()sZ_58LRzc7LNoSYGNUox>f-y%J%6bWFPM6>*9bkuc7Wes zZZEd$e=CiIw)97CEn8{7Q+fPG2u>z{=lUA!Wo6k-)9a3$RYpKtq~O)sN#zx^u=bmm z+gC4NJbQNX^!b}dul{!bS?l{-%{NbfeDva{H?7-)@1VGZ1eSmryk?Xf$^u6X`h{Hw z5_^;*!CICZJtj@at$ecVLU=hC=6P?T3{Yet0M-AkGi{E+G{UXvPJ0Y_xxzz#6jFm; zvqF$t7;VtWmjoXFOUx7>XbPSsG)iee?CcOWf8VcpQM`BQQZ{j?4lzU(h6QyQ{*(1n z@$8T$!a>lvj-$(x@T5bQ;C92s`u5n9S8;iPs!N9s7c2$}f_df`O%>%-kfs^Q!Aw)whn87bDS54W& zI-Ea1)NI&t9WTbn`*2RUf?UOQ_wXB;?adv}2)~L$K=JcZ>y!Ko_DN4C7#bG4M_5rI+br-;>U#|Zs_ojs;^v`XA6F$RB=ao+rXVlEhgcvipT-Uf zpp&+;xR(~M-#Bg+_t}Fu^w3-$dXVTsawp$W)Hrdlsrv|<48uJc;mI9ZS(N$guVA{O zQK`SzHVvymd9Dq3`S7uSgq*c64Y_e%svpRNm)G;a!z5wO&8H-QBCgPI-vM0xefULR zOB_VwF@~fzuLg?lvcVH&^bi(!Z4@^C;-mHPtT*w~#aaXPJ9qwKP9E}0djKrou)u z7~3@cw*6CzNYWUxg1Qx!Q#UVJlW^;&i{`loo!?7yz`+SAuB2oVy2gzOyp_jB_QgX_ zwEfRn$D$&8l2@tjic`P_Vhj8hIfLjVeNT4p|F^q$|8DC>@_m0lcb)%1<~h?XwP=Nu zY(1#ZzK$Oqrya+CV>>;aYiG1JH%W=MM9F&i5y$`g{d}wN+I-kf_nbRx-IbWy8^8t% zK%r1os4AGQCowFnf|5MT88J$HcmziBXGOp#&_-x>;QW_@{zf=q$wgD_sO!+r5JVSn zmsmn~ecvQFL&j{m9xrG-(cVVW#I~DC4uCg|t!k;CPJf<%$_aO7cG)syX5joC{H5*a z&R!rJ$NrdEZ|Ga%ZrPn;Cx@s4;!G?WNyF$wC9!Rg38e6#+(|9<(?0t1$XyFh3aE`$ zS6aeSqdao;cbqEI#ev^TOzvz=;q3RWF`>PW`G!1cAH*~?R3*+qMWzb{!ovK!43Hw3 zTRz;$)yPwSq^JH2x96-Pu6M@XE#dvDE5#^uGsZ6+QKlnFS2UH}dKnlz7{y6}osSV& zc6tpQz3%jZ=RQFmE-pLUc=#CZ@!`D#et*6%L*9e9YUuR@Mi572MB~=M#px9!>RI$A zoc3F+$kTV-D1lG!8&io@P1)o zvkISoFZ^L);io==DlR!O9&F`JES`T?wYq6*B%UT6lxYQxaMr-bs4Nnh2G6Nkt=#oq z7B+@d*w9QquiiZ~wBqnb194YhmJkNHqo@~Iqj)p+Q}6C5@N_oJVy1_z9QzK+MhIDJ zG{=oLLp8H5^tz$Xt7otCR-x_F8StlN&bY88PXnu4(jlt@~RnaFe3?8NZ$^z~@^P@+MU=Om>MII&YND3?3m%4J*7cf{=&Q#{RNa=I!JAq3PnWcuEJ z)E8)zwTHb8m7h8Q1x2+C8c?Yqq±s94WX#?n0i|8%_-SA2k)b+~{Qg-(U2{XXyV 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 z
  • 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

    afBZk@H8E|OjZLB!Dn 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

  • >^Ui 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 K)-MEEVUL5KvBq8&fXp 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 z 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%0AS?>08mQ<1QY-W z00;mrSBp!RF#Zc6f9$<|Z{x<2FZ}l-;C=^Q1z30hTYj6FB#KACyyYYZnan(6XU_@t zUKo@_Tg*_RmZWU!?Cy8JzpCzPc9YbbC0nvABN>WKvf1pes;>7s``;fvzrXnN%SW%5 z^`qARs-4l%i~Pa$n|d&)b4%cNarE$a)(-7924YD`&e^GXI@B`h$*P?Ln%}avl zO+C%VQIPh6Agg=5B)EE0Z!`}56wjoGoisfhkHP~SuamHw9`wUO11Af1a}x}@adJ3J zf-DQK#^%R8yQ5L{eLWH{?BW~3EVxu3QZ=+*oMfF*=7pVjQ1`O&FnCiB`~G!scz2-M ziXVRE-_V5yfBrEYrkx}lW?q_f>?!(7%}^STl1|Y03sZA;sP4p6|9@v$m_z4oZre;|A_3;4!TQ0 z4gHe8v)*y*%-0ap%d%nf@bLEbw$VufKMVd!8=bg+7|?g~oP_;rnYsU?fb0KY#3@hz zfu5emaBz*~p&5Hq*KIVNKK{qs+%e>5XNUL%>ncx){-T>8Nio00&p8YFt@0vV#YxlS z6*@b_e+|`du-|4Tzg?VYdZG1vd5(|Eb8LF!iAlq5(DoCvfco6?hap`rei1E;=>Yc} zL}8lAO=rCmS>pKW>L3cPa0%a^VqQ=5cRCMee)}d2Zq3W(+@6zBBz@v)X*_39n1jc6 zG$3A)05`rTU=HwZT36g=&C}tC$ePt4kW3xue?c5vg;D0hFn@eF7y`u=a;Jfxbb570 z40=>Q;teCe6ZGN;IPj)^0XpDiv8OH)QaWED3q4~rLw^uNGSLP(FgZk*?C+M@LR+eS z(`4km)3fdwf0jLuAk2Ce58p<^p8v@o{>+onpp5`a>NHkN@V(xVeye(kv@ZRYcVX7| ze~0=D)X9qaB$Dd%t7vQq>=v7qchM+uCM0iIe%zxhiwD01(J)A4A`dFs%4eEJJWByL$$BqP1u&hfmwq0u|8kA=MP~D5;XqY{wwGRXgY1H zdc&6_9;SK`^b5FY`TjqD`WOYoxJd7&e_`pqg$+=|OrI^^E4WV?>__^&njUFZ{jAe7 zP{MuZtxLbf0rC|=_TLhJ*b6%X8FISxSf!)J+oYr6!fsk={}*w^8!qD2z2jYQ9S*+u zS+DpWb77V5`d1hv??=f^Q2wrWfpu|p?|dI7ohT@NoN8U+TcS7(s%G)MTv*+^e?CT0 zI7~~Qq?=d#o-FM6Q3agy+vMWv-U-Z)ifct}t9!$5*y_r_r&?F{mQQgNh^yAsz2!?B zjn6Y*m?uMoq#KY7*PM4S-$!jLd_z1MbSqyY7gqPK^DK$K zl~7l;uKFz>{Io>W)tl(bs^4}_e~Pst>Z;fArKR7e80(V{`WnZeG=UGN|6&kD-?3d$;>tNspEWX(hU&i?H*}tfM+v`l~PEQAc() z{=IaMfBY(23Vto$8vrWI#@?qO>&0CGErKVjb*{IZ71hJ6AhlGj{kS`VEz78_S=B0y z3#(f7gNN_gqVe~04Y6`Mf7g(!RJhXb{nZ_MBB*ov6HT@KTiRTWvb6GJg(vyxvZ12F z8044=;vpHZ98LClFTQQ&FFuR>b`W{6t|*0gipvM#0Gbof{cceOerD_OpcUC4^7~aI2o0hgxGJ3F`=1m>2>ya5=IuYZR^_kWi(Gx7?4ldDKKB{KV zm|HD7kfS|T6iN(Df1M;wQ?m2dTh3iXxUBbE*3;>uyCUJwFU`k?;0g+at``oP&IqqU zkYcd_Uv`z|`;vE5Scgf+`(5<%81~&x+zogZn=g;g4*6`6A?BY#bM=Y00Cyxa32xqn z`jyXv03EexW4pDo5CxLlKVT@+?8Sq?ixaOOCxM3r2vRS;fAYHHf!_~1UPkb;H;6M2 zQdZ&x-4KS&D0qPh^s-*y>6yZVY1Z&a4ddNHZ95DHu%M5IL-;ayd!v+2aeIyW|3}!( zdgvhaVDBD#Z9fe=`}tGwFMzJPgJJlCu1D5dj4&EEyx&2S(21XUK3(&CGOP}u)VN{8 zD6Q4LH;zYMe+L(bF}y6uSK*h7PrudpEBrQ;I`pNW@9`~<9(UfLGkBJmZb0SxY1P+Z z0`ylnfFmYO2WS<*0F}T)Tt+cea2N64qPXoxX1BNC-MN8)sivOXr@^YXRw9$JWlY8- za|?CbI6EA+YG=dNS-bTm3gGSFVPW;0()4-V7}HLRe=SQ#v&S&7&#OT*ON(KaonYq* zl*eOt7LV2jE)o3zuWGlviU({EF!Ce7hWfDH%hty`zmGS8w!LiC@TmZ4jRAzI9{co+vCR;nRH*FT z_=$q@e>WJ(tsVt%o+f0k4(nzVd;f@&s9WFn>L*9TJMV20Vj*$%-PP6i-ya>-U;I?# zE*f{<8}In&NKWYs-jP!Yp~V}o?vus49Y76N|H;q}jENUTI5qaIkp)P-+n~)eoO*kN zZ*ZjvyoC5h!h-hf1?t3uLaf18_Nk z7iNqxct|62(9Izw1-w+Q!|a1~N#YKR03cqq6V27^>1;dKB*BzD|=FU5lT;CFyZ zdIh~(Fi}_o(D@J~q~W~_Jpa~56C*W&9Tu~uM~5#b;7G8=fbKAK26uiZ1MtZ_s8N#p ze-U;iW|b5{w6`>Dix~8%lf|wd5j;sCTFWKNvxLa9VHq_B)7uT=sy578z)nqkfA3Vl z3{(@WPrgf-W$v9CW-ce-_DKEYy0n*`ff5d+>mjBJtiT?Y0j;gG+@*ycWfvMuHp3dc znfiXIxBR^{X!?WSi}a2@WZPHQ@_)khPTKBru%Rf4(euTG9}J z6yi_Adpj6I%80@){W~H?9TEp1`ThC1V%q%-WS~8QCSD0zkCWRa9A;mRdQ~E9M}!+ zEN109-S8{5E8c-)8S*_a|HW8l$ypK&L2oDZFxkcIu1(V?b=DiB2V?AZHg7qO%ef8JCm#6m5DEV;90 z9GW2uR~T$nM9i;HKzMpRIWES1#y#W7w!{J+$3Y6q5$Qxa0(qE@)vuR3EMQmNlL|(656vDlRAdLk3{J4sNk8^6hb=V+mzU68 zM`O4wl3Y`7Ij00@e}d$8C&k~>KZEX`en$lxYQJK}!#Ur1rn; zM9_{CnIbsKPj*oBo!}aYa1@omlogZYoNv)Q$)0Xwaq)MV62W2jmNn0q82xiMCwd~t z&`1Ddoo>k49Covk&r0GCQfQU?Wq`MelP>P&&6ye%N3EdCn$A3p(bLw(FUR+h z8iO-D@%(JboZL&JLo=ZjI==+rbr0fYsp-jM*0M80e_G{=*~y!q{S0YkpanYI@{H#N zo?DdPl4pc}Kl!=v^2o;}ReqQhq_??-EG54lYjVW8=6Fc52W5Psu zjPGuSQ2W6-9-d~oUwR+B5RFjK6)h1KrPTUZ3-oY44ol7yN9kR}zfsU0;MP8U?sL=g z(}EVQf7tTuXDG}rpuMlRdg{m1pO4(HDkqjp?h4@mk-2b({ulOz{P$x`mC)qf&cMOR zVfybOhht(bIUYRs zSxACDvQ4~=B8Ovwpg7^eZoX)~oXL{8avGoee>|bkO}&MGcJp9d95EY8qTS6&F3&TN z80r4G&rBBUKKKHqy z1VtA~czsO{W!A|?&r2bY)u=cap-*&LP8&U|pkqO`|KSyskLnI+t`&F1H ze=>;V36f+0a;y$4%wO?Pv4#2#Y>!j3J2}k`Ls>$~oW7)x^0Xa%Ioej$WZU zw#6|}HVz7YArv&fcktxQ5%IJ%KYZNHjWajMrLRi=V1CT+?UUjqlfQ-1$`TvnZfRfB}O5<|dZl*9( zqa>w-_v*Ntk+BvGz}hJZfz$XsPpU!*YB3G?cN^dW#Im~nl}-5NcLn$M%jM^ve?I?s zab9nkpR1b}dU4s&6!kEu1V~FAe^(TGK(AWc2A7)v?zz>Ox!)~AWfp5%UHYrefhior zeI2vq`AfL1zeW8(_FtzTtHXr#f#$NZONi=mVRs8=;-08U1!W{CGXMR&=R=1<(sVra z_(#G0rD+EW4k0xY{rh}jqwn8o(2!qSFc-^11{Y)>P~AY#(!O=Jo1O8cf2tTp|8Bu- z+;fkKM;Xyl1P-VlTQCz#V-1SSa6MOb+|9@sMu%%SZ_vNH+2GlL#S^o!6?V>Lxpb%j zv_?>V?OGooh%c*8TY!<-B=((}79^4O{44n{B|--2608anLeL(K=F z4CZ5pF@!M#e|Qmp3GV`Ae+aQocCdoEQTcxOum$sRPkBaVgQtI=_Z+;9!fS+s(?syk z=RF%z3SLc!oNd9JEG_F&KKGBJAhJ$&b2Gj)soW)#Wuaj=N8`&I$zh{^?B-;Ac~@_7 zrN<}k<*+nu8P{9mjfRJ%A~IdOs(Z!;0zf?vD&2#~c2j;0JD^z(Vo$S?`gloDChTju9(M$*wx&&O!^yk|ote*@>C ze?0Tqh@*(fX`+7Ye`Z4wQ=X1zPfJM+1WnndSNdB>dQ;3i*m<38CzrkQU(D{4)E0K% z)K#VIwC;5xKTY4%{b6{(KMyj$J@f};fp8z?$9pI801}cOM8Oq!mQMjC{3UVjq_T>A zxtofSTweOaVKn}kL)7zOsbP9y7W8vh@Un=8ls_^q<@I#de~G(6%jxs%klP%oGas7c zOwXP%_14}C$Aw<>9p$5$eN-JE$UwL#fE7hxe$Lsc8k@Y#PKbm_fhTo7_WTzO#69Dw z9=3iR^nwJl*!8ZGxL8w@DxshmX z(|tjHR`tuoe@@`lh@ruYQBEd^{z|!Od*qKVo&FntrD`nE@yQRb>#d5FZqgOA+F2i9I8mM>5s_*=EpLQ(#z;C?@67jfBD5Z&T33KSJrib zwpAdC>e5V{rJczKX3v73TqEu&zedBY#3K#yR<viBJV#c_ zwj6BL=jP{hC;d5nZavY{XtzF^clv`%^VEPq@=kv+n7ek8ryv8cVJV5RsrvmAhM)Cb zw!YAne*mdz(k6E2mrR$X2ZpdwBxFu?!jz+k`%}@8pDR8g?i&+GO zhi!8M*?0)qT?ONR4F+B8#-_ac$p?oekeAC*P)^R}IH|of=?4?GE9pp%)$=fUyQ1gH z&n!wQSG_cIkWU)8L$=iF*qn$kK?=Q?<1oB(e#!7w`j`h@*6|5`L?II1*hGBb2^ueV2;N4ln42%E?W2JYUyo}X3yvcIBQ6y$|A65#34 zkzt1NPimssAoz|I;>EJeysO@Cr_&jFyMynmMq>Uv{g2?V-A2DBwcndlDnPxwZ}Lv3 zMj`jfaVD!Y*FI}{vzTp7Rg2h7-1b*Re{d(T+T}iGagRA7%RuN@-AY#;02&JVCVC6~ zRgVFb6d*fn)ykLM7FkWz83tY{7E7!9?3C9RxtlKPllxhx_mSLY43AmK;LNZ1bUHP} zaErMe_E>?ca@9-^Eu=*}m(V%!2*04PCBkucsvVp30@fcxpUntHybWPnkhmIce+Oae z%0n%`cLhrA4ziwP0kql-2kB*TG&xiA<4eQTIHPKw{`k_M@{X@zvTUK|s`(mTr&$z* z$wOJsV;I?9mJQS9;b9lOMO2ca(U1Ry>K=Y0POcAw!QtQi8~>bb35Q>Us{oPNo#60q zTpajPSzgjZbu?RpQ9rOBWHLZGe_<~JVG6Q0^~-kTlU_nSLSXCtx3}8S=z>QgiO(|{ z^+<6vmZ^!6VWI%XSLta-VB__-{+Yz&O=`C(5W~(aM#sFXywx)pIMyO_v;I+jW+wB; zo#qyW2Z8U|`w@>~qaplxLB(7mfr7RbsNTAXe@imAAwHFSsfZbq6mQatf7!jZm=T?2 z8CaeWEWv|Lm(|xgG_nH2hh)PzV?(0YHB<@(uy60vj|WUtJRl@qWoC1@Ey%PkP^ z%Z=rh55W}xu3J)2()YS|=Vw*F3~x2jd!?YVJk3>>LKd5+r)yDIVyZrXzNcP)6lEd1 zVPvF8x3nX!b|asF67#e(f9&4)>82WX3lME^`iXI@(|0fWDu+xLG|d}Gdu1W$C?wZz zo7P^!z-K1D%;pzp_8uG{-X@7ZHr(+%!Z1Ja{G{2rE&D_S3e0OKe zv8)}%bD>o$6fl3IERCX5T1v>Io_2y}k&9JJ7=;Dq*j;nJDc3kHe<5fRAGvB_ZgrzW z*#3senQ9$!yrOTVKWG2iiCrdz{la3`k0-fNMeDSPP{5{gVu;1grlMdjrvR(gInPp# zl|Wwc@SE*6yCu@qOp-leaSST1gyUJty5#7x7?!Pngt%Hw{Bu&f&4WHi`_S}FlBUkt zoE}2j{(aPMBME@8e}(f%SL%_Scx7?#0^s@4)#}*@QRWAEp^H9CurzX zA1uTn>Ss0wHi+zAd08?F_PuT#q~0LTJkGG-WxX)bMW)W+Olfz)Oz-LVgn<Ecn=vg z*m=5aq-Vo3Q8&(@qnoWm4AW2XC=EUj{r?=z@Z6n0ZHd$A3?{+e!X8fQE`y*)@^X$m~bHUhP-HaK}m zRpa@CvBxD?JWhwgOEUu^Q~(>@5QD zmHiUV$Q>~M=AgTqu`O5{o2RQD-Co&owcf(3!6J(~9THceV`OsTrEaipvw4qg_TLf= ze_opv@8tE5#)_v0gH-3Qe>6m3rz&P)_5ppjX3-*6AleA=6k;}VTozpbf5xi)v7U(_ zyNN`7!&xJ$K{eHCyZ~Rsm8>|RaZ+)ktze3Rn+zT&n(|j8aJlv2b?WM!IkO-H#j&1k zHIu;g)Eu86@`NiOV7@d}zYGPLm`2Cxf8Q`He%$l!6ou-`83{9OUR!lu&d2Qy9X-}V^w%ta*C$-xuj)m0gP|Um?XhloRPQOsg z_?dT$grQzr>1Q~1ZP&|U&qpH_G0b%`4euiN7xv&eoCMI&cJXL-8z31!>33A_e_Qww z$GF-Zb*S>zAcgaBhl-hb|K|6HKY4$9kJdCxZN*OU>s>`p@oIS{=Oe`VbJD*((=y{L z$U9;Ds8{O(Tjc1S)!Q;HyG6B@NJTM6>`4xF0>?9!gB&gyZ16|rH z&P<6-!58)!FvNao*ZO=8b`}rUfA_jTeAa05ILV9D6$S;X$H}fxo#2!{T7-@nhN8Q- z+@6EJw8(K{p}IM!GxgyJD+O1-6=JLmmyWWT+ila@@6A?K&zkTT)mO`{i|z=kUdTDN zF`B(O7g8c5CpzWJ4V%LqmzRXUchxF8?)2gOf)?5BXRYT-Me#BbWC!RQWbALmdCr^}u^A;*2Ov*#fB z5udQRa-X=WZ0ra{{U383c~o&}{Rh-F@BJYPVg~#Ypx&ZG8| zhlsUVd3BuCsv&1cxQc4#e-yF$+-95~DL|O%DrxL1N^KP>LMVw@3(PeEf2e%q$2+KqBhY>P zuGP+l37(7mG<{Pi3#5nh4EqAAn`dH{5x+u(8ja#S@6|gIS&;VOa5(5j!FxJ;@l!1y zuhqWClkmd(FZSg>JoNZ(JUJY~EwS6EdH-Y93`3D3kHSC*f*8iaGK{jowl(p6v$kfM zfoZbhO33pT#P;!} z8q1>EEGkOt(r39;SUyyat_Y~^pAi(xH$4W0?~!t37V zmR1p6fbam&X{O*BgEz;Ur_dB-z+y+65qTtSn(O-7f6Mxjq}x-}a9zBD};mSuaZUR5fK{sIaL_6sC_#VZpssZO?9Rv^nwm?b0-7pz&Bu#L+mhqT=`u(1X+isAb*I)(BZ|mV6`CLJ&t@7;txzw!=40!Zv5(z)yPJR{R!`B}*6a-CSEicKUt zyjnqV%YQXfNnNPR+>+mIyIaw zpoPIh4Fo`SOYjpW9cXa@TSxoekpev5OZ;v)f_!%6oxEx)E$%!z+Z!JkK@jM@QOJWy z%Ywhs2ETWY^s{`qah>=>AXM6D2iM^MX*Q$1`hRy}?R)&sE8Oww=*3Tlim(nBbCc`3ufhmGk0i-CILoA*1^re#0D3?>jh_}s zVHqf)GPLLo?|mwnQQS$G$X67}#4rGuwL&$r041zsBq4Mjh&ieyb-&0o2)9-0~=Y`l*u05u@tk@r z5TUIOir@kPx7TzD8`=R+ap8c7L2X#D~@#Z9zR9t&gV-StuyBf)J#~sB9FK zPe6`Q;!`N~fVDN*0dUfyb2tkM@uD zkB`*wo!K)h~Pe zP>2NSA&O@N(O>DM){R~ADnYr#y6x!Xha>SFWI$`8!2p{*(EMd2=FvLkE$(k7&rYb2 zy*l0M?HkJ?mQrZfXj)~@rtxAD(##)p9IL;JkTQmRRQ6kS46UFV4Uzsx4X9rWeH~7u z7j+poSQ--D$H9azkVo9(@$;+9YsFpHJJ3SeAuO_Y*2t3^^hwPIBuVDSH?&`^^m0K5$#Js;TxWbyLe23DN zTQli%tuWw~jv0E`P7wLZN z))0=9AB`2-8B`M&3>AG`t^tgLnYQXE4l+t3e~&m{DI=h=&K0eI^Tk*o6ygt9etq#& zXWCkW3>BsgXIc<$!6xl2sKXLh^W?#S$IETFnwm!@K<=h!0^}R_>aa&cZc0o%}t9L6X5e z0e%1mvFTc)_7C`y5Vl`aGWM{OcL1V77G)@4AfQkNFkm|r9e?oCAm0yi4)MMBtnK*w zc>&`a9?B4#_uyf2joGg`)I*t*VV_nh!{9Yh=!6tMgP;Sl;3s3HTw&w2iDKjNYekI@ zVG^G<#Fvs63iy;76gu=;8mxa4hZ6OsCrF80S;!`KHuw$V!GZW`HF5hjL)TzH?+x8%sf&3-UjUfi+}12wb~SZsSy|*a3YG9!in$( zwjOQL$z4T>fa;J&q&|hh(dbDOCjqy*1XMQ$1C!i_lf%1Qwm?`20}@*8Oy|Nru0ZVw z$4bM*TVXJwO`c%5A%9FG6mPL=aaPd+cgbjJ7Uksbuc2$H9ANLspINU(c{mDM=wJJ9 z<{+2W$A77j+$ywzy}HYw0@v(Im>G zZ)xJ(V5dFKe2foe==y-yEB;g4wzLm#o_>T~`N`~cJ%Ga{yo|}e|0YaBj-~Y@M8NKo zPk1-h-t;E(XQL*BndvF$GKqxr!5)!d6@=dP_J1JwU5z3Z>&V!cgq+nxLeYIP%)e;V ze*b*&v8e<|p?j&VC8tHhtYr(ln}?Bs)^@U{_?ehY1xx80^K zJb&p6FrF9etwLcx-pL0Qi~tM&k! znrkJ}MJ^#;8X^*H%pglQL-Q8gA#5O8+dps4M$?PgbE`RGTb}?5v?focuM&MWQMGOEs8nw|L|IU0(W6a_ zr!#tGl%2u)(OMhYW2y5UW=?qsseS*_tl#=FogaN~jE`nC&11A0ka}D;4s$HL7Jowj z1Y+KmA6XN{eq|YNbq|oB&FTS3oJo=UcRn6e{Fn?*kh2H{F zckGusqfat#E3L7LdF8d-(*cf?Rvb&F*4+EVVZa=H%Pq2u3@};>2+TW4ZtzE0Ofi<7 zd=@F3kn4hCkp_^62~W@=CQhB^Gx#pd`u?zb5(RzeRVu!NBZE2Zg1G;s@hIs8 zL~el;S9yxY7i6gm`~EfN4u6a=_+naM-o5wk-W=_Z-y8u`rjP9$xf3(!1*#U<9$Nu} zG@o$=#VoM&6J#A;A2N^qD@bDR?r=;BF(0F$T#ytU2NRxRTZS>X1{TGPv}a~qXFf`K zRB0~=5dH3FKEhiAEJXx3ufieq5$AM!kz)T$?|;X*YV=nY8i9&hcYhEr&6qEPKC`FH zzlOiUHBpT{SVh|i&+onvcmpLOhYUAHUxP2w2VfcpBV1Q@7+z6B?}0Nj#>nKTdVC*Z z6yYX2rREgD;R(v-fUeitPz}I)gWWwWyd{gN!DpOBD#^R~Pz*YuSrDRh&xh)@OaM!v6bx^}mxHj)DdN z3!D&v_qoi!ptZCH=wI-%(7zal&6$SJpK9=vGX1IbAH=uJMbJ)x zo;5g9S~;*wewQ{2YXSz>h9$)Gv}h?WObxbv(2wCR0SV9VV11}ZMSH+7&^CiCBXIW+ zhjUS7>GE!(@QTJiX)kqp-rS5WsS^*;d6w3ge5C}aw10q-LIJM=DBuPqFwT?Hm*%=Z zey3Qj(rh=_S)P(aVAei=ZPxl@`icgPW3R9>^Err#;7EHX{n>JenyE@pF-^cW-H+ZZ z@j{~AqSmpuRiIRm41~Tjjo=**u%ZxysTS>2{*529H!&+O$itA3i`JJ>wJi9#Eh77? zg(Nl&T7Ololh4IbX?35aXUZ+qTA?9$PX?9`U{?P4`kP@jL}g3@%>sG?yDx*s8>cN; ziNiM+kd)v7^E8prnoWnU5a}q$nB=p_+%VxT(to-C0m}?n3Y`4Ah@>vA#_yHq9zM}l1XvjOjkZZjK06BgaBE{KUCSz4|0 zC{dO{;%#_cH*L3x2OYp3rS$4*mE{*W@TN=eJQMmg2wuGlS(eHt8z5E@enmdfs}H_f z+J9?8Q47!u+f<+l#sMtTkXDO+3eK&{oLZ$xu|a7fcWB@Ae02ZN{8VGyy7FQEm`5Vf zjyz#_P26UX_i=aUzfrUR2oy9B5)IBYN(QcT{d4cot=B>wHSRLmU#-v-e8Vdl^b3qudI4B8||~=l3}Px!n>^x_P4N1 zt@g=>i5Mm~JWuvmef`>0RX_gVsH!Z+SPiU+8w{qdk0lluk==4KJ8ZmPgbVIEPAcrq zuqn*2a+QWz&W^3kKVTTAAtkI%VSmreZrNogPmBuI5X?E;x+&c})M(6pRI%oo+4!vN z0CtH2_9nWB{}#n^RHxPQ(NR(LYCD+{hMf@ANE>*q6xq)6{?}g7;M(EG6 zQ!F4P2nOAc3=0D&$7doOEHr6Co9-zT$h)MQoj@=-*>AO>vAXqvabzh$K!4%5P4EQ4 z=;(frkV3h`KF`e~(&|22?#=W<5}oV5tpL%G>U)}HRWF8h*j^^Tr4~_tX?fnO=l%E1yG{Fx71Q%1dQo1Bd;aXGONGChaYAZRbw?b_S$^k65s{_!Kr;_5> z0G`tuY86@}ci88G9?K_>puGesnBhs&{e=S?s`xN5SWn0#QR-s`7k_3m2#*{@w-Oha z)t0_-{N(b5RlqRsxlR8Tb&GSsjzNzyXbarQvD|_zDik;Y=gIOlwTn+p_%=^Y*Ug2HP0kLJ$ZLG`QAQv<;D814zNhkr+=O6W6^$2Q7wNYV!T{4b-3IGC z)i8vCJV0#%4s8f(Du0s=T~-*Yv8^Kh$eviPPltT#6zsq{8JnBbQ}~i822AylB0V~7B%jSElIXt*(C>OR_rYJb=#tQZZ<9*DIqV1vzv z%Tm%YrxHcyH_fnyin2ZyahGPDm(MB1rpM-?|ry#Qe#WW21 zb6D-&?zr0>Z6ZF`?s#Gn2~|?;=E=#rG7A|w9WQ> zr8Yd14p&$C0e{173H+!{tWg)$NKwF@y7ayJCv0gwBr8N=RjQecjhKtT(jI)=IFTI) zgQCL9Y8#p`M9M7G$DRatc2o_r$(BoYDscPhyR$smor(C02@9&-7Z-%NS|!ZsK=DOj z&KeeK|Modbq8h%`4x#>aH!^`dxx+rs;ZR!LXX%-83xBmTCsk0^Yux$=p_bti@3kXx z7dufggHwKxy{TWeBY*I%-cr)#W;&;o!343Z<;HT$+C;_UDp8RkuX%F336i30R{I6+ z*z8@j_p#(e9v4)r{1#=_hY+Du+&^GP$KKMu1PwUln@ZyL2pbf~`0h5S_+N<8_Zx9? zeHaW5|9_64)pM@wdiXWC3XsF86C5g^luPBbk{+%?!*d_eX>MS!7nLZr{JEGX^j@yo z=PTY7pf>MR1~|W+(iaUXNWVaJo+({1K3yVdsUs*A- zp8|%t=E>_<2JRl$+t8AQw5^Ff>X_{BYiWpcZ+~b-Acb(Ka2t|(DiRV=iVoTa5yfzAse52lx{>toQ_#UL-(r;1Oil8V8 z@qfT|4Yg(wr9{q$h*#(%4b(1bx4-y?whHRA=!W*zEoL(hWN%j12o57N6x)(t@ zQN$q`KcJTfh<0ahbUG|;Q?-AV5B;3sb&hh5m<*>O=P(TaVO#z<#4Df3dMp1up&Lc~ z^KPrpZS_Ca%$IecLFC&<`HWg1%}lGl%YV02RL7g_@(k`=LD9NAbzZ-+wShdACfe4t z=^=*$?@{*VErzLzNt9jbGNo`&gNcTBLaIf&KpaxOgXx@0His;HZxLWQLcx~lKF38~1X)^rJ%eO3Q5e7o8+UK$>t-uMgGG_2z{Ds|N;5t&GL)}wrhnRd^$G%; zV62UO{o#jPOJEPEi3^5`JucUZnKoRsavwDr>AgGFACHj>M+K~_y!xd4R>9rg9_s~O zK${&WNW2e49nx`=3R$I{s+HPBIqt;ntD+IXosVieTt5tsM$l-ZtdCWix*Ncus1GGN zTwjqTOGg*=V=5|P#z(4soqs;x4Gm~uo6SZELhgN!!QQY-D!|@+snPyp?5HDzf*0gO zt3D^MzyW^QytDFs6-+$M3vb3MyLRto>!bQ&I4Hhs)xc)X&bKWA4@%A4xbxn4r$;7y?qCwzbJ_TtM>{pbblu%N{;7L3#jmw3;@~Dd~i!x3O zxwh`x?y!0a=?)Gq5P$xJ`#2b&N=LmlotxrEcfiB^+@wk8Il`_6;IX!@X8=4-Cc+tf z?kqsERHAb-k=}pj8Dv&M!&YHSoq~Wi7HvfuL}La9Y2@+~#3&&q2s<@4Y82e0=-Id* zW@JuP2@4e~q*Ric5kk?T+yw${P!@p;Q`Q>SCxAf6{#!YveSgL&4Cll-ZEaXw>7*9k z6f9wvm@*FxFj|BMuDLw-G#3HZ3*yN;b21aU2EyzyO%Btxxew)X!{{hKA9NToC*W6($lVLbixN z^;Y3-nu!9f%YUgx)i2xsLB(`+;1`z#f2Eg5gpH`8%fcHPf2C?j(dnyG@nbBGtBGp{ zxgS?sQ&|%kdIM-oQ2G)O25)q79^}%DAZVr(NUqf35BCUhZLvw{tD41pE=%HDWznZE z2>5~;KScV-RG`bU znC|*WE0oTnkIj-1$QKt6x(6Mb1YPcH1+Ep3M?d?=Zc2NA)BaRZ8{73EzVwjc8Fh=-4V5rLsa3W zh#0c*4a2)2LS6!-CGewR&-ecAI{V2xA|{#Mn}2h|Vq8Ee-3zLX$Egr>9vyxXnYep? zH@-!zP?)`i^stX~Wa&2*GK9(x+(GbJGVz%3ALq-|Hg$GCn;&SOs{P6}tzoF6LVO~} zG`NxKz7mb>kNLE5jgX%n0tFjw6dfP@3?<%P9ht}KFB&vKH~PfJ9(uZp`G499@__%YazL+)4If5 z+V`BTJGtQ)3oEJ6ZD~%t+4*)QvKcRSHVXgK?88RXMjA#k7ypyQNYq;fAW&YYG^<^O z3FIcIIq@x2FdO<&jE3RN1~IOUJfEG`*neGFz7+M+UY*-{6ac9~9YBQ$ttj|JnK-~#6=BChk5q9M!QV+)*?VVDday`b}r{1M9Aiq=Dy(Afq> z`3O0>pee0#EKk6q%;~DN89S@7tPPGO`mvxY!?GGb0m$0vJnj*vyBc-;qB@Vao_;R~ zRX0RjEBTfQKkQRPdDxD~oekw4v45dzXE{f{$a!R!k*z86rtF3r6y6&SQ0m5y!hhvq zg|=Pm5NWCFVr{h+b}8B`V!mJ56T-1>aD#OGa|Kwo;W-5;<2=oyD^_$ zZ<(Jn#w3iAd$h?N=JqiHaha=~V8zK-Wv%v`<6{#jmX8SGVe5(xJA;Be9)Dc7zJC1l z`QJZ&z)Gug@=WD)3&gx!`8P=50K6ZiL>g2E+E3&25yZ>)5%RTOlC%Xus)OpS8t5Cf z^PswT>mM0XJ7i<;69n$Ks|{NU`!117A{cb5WF&QkWF+?ftrEJXbqrYU1E;Hc)|aU3 z8U-T3r5DL3bY?&DLk8L_Q-2nO2}J{_QmvPb@UJ$+B}}i(+RtpAKmMMxO6P@d(_H!XJu^*(|=b4+BQDGA+@)8c7>FT#z=n- z1=C^I_o$G)LAHi`J?=#?^Cedu%}+o9q#C#YfmeX^d?Y;63*{^@Ykw}V!KC|Q#b&tJD$Q;U<#lR)mlUFn=fyS_&3R6&Gx5{#&cPlXm!id2vrPKJt&?%yx z-;JL(YOE*h#!wQHx_?6_-(f?$uyW9+O@8!rJ= z6>x44nk4q_K6a>kpJnLw0&cN}|$?+p}2*&ziJzpCKLT5nD zA6~D^dyr%-iJ2;zSdI60Db_Q$#p&SA${@}fRHejI&4>)0E7nttvQ(txmy1uod6D0S zIhUAP@L}3`+ker4i%^tNFasR8p+s`6t`MzP8}yk^MXIXa>1Z?-GoMCWrvr<|3QVTH zVqE7-71oIWQ?u#rqB?_u=q1}LQ&L;c_z>QrTWP%0HoG()CD8S_7`%(}B&FY*`VN?E zJTt$Q&d`qXe1^cZi~3Zaca_Yo0Tunj(S`1!K08oUk$;ce-7e}=5n54?Pf#!lIF-d~ zx>DUrR~)b_5c9<&t+fcZxb=B8QJ)qQTm$n>Ouy1!Zl3n(x41(I|8?lm63Qp;$gsgX z-4g*d|1IkHw3WK2mZ~VB;iH-ilv^Kf>I4CHy0M%XSYE-;P&cLsO`xxPNBDRcglI2VEh>VwcP}&KfiY5O%d9O;L}+LyKoDL;uBW4KstRk*4~jOn!;u7;l&X>m|+&^b$**H&0SF_J71DM|vvCjKB$N$b0alXFvKOU&rnj zWDVzid&7*~?KASXH_*RRwCxmaiodcfn(Q>bpf9uKCI1X{BfE5JnoZZt`jWt8ImV0N z_pG$GbFld|(Q``s^4YC8(&?SE$=?cSv+qfrY+XVlEGkOb&D-YHMX%M z6t#k-{e)Nadw&SupkVW=K`6FH7`AzjHh&}cNDg?@g1`u~*O|TVBzL~UP*8q&U5drG zNFRc5&JJQSw1b?guIuE5@D%aeSH@VQY-9G6v+8jqmf8|^v3Z@XgmRrw5)ywv0i)^- zwFZ8w9u;#9<>pzt_3NiEpTAzb{rv))Z@cAP#JbKedJq)$P$&TV37dpf>{&d}Xnzeg zRy^Wt8Qu^sDHL%<<5Xj!XQ;?9qmGZ_%g_p2mR= z10>Mo!V$J0;R+79pkQMO&u%4?@@1FJ5Scme5j1hm^{dU6Zd9yOa-6D1HcqakI76!Y zft^>h^Z_LdwSkOyTKmrhI{OO!&VPYWt}JT*TdlNOpKs%)!A{d>tRyP%XH7H~f*g5> zNx{>}Jue%&K!F@5wUbzUr{r_xXc5ML^4qK7fGLC(hmM$75qa(zFT2QZ`2f$ujw!;%s5l!1;SA8wk)osdd^`bj&4g?~30dqk>orIze! zDtE5ZgSko~vQ4NkN*pO65Pa$M$K1xrx0Diza^_nS&M`)R5D&(b*0e(ZH0XNis7-l7 z+H^PN&M05S3xMo0Q^=3%bc1!cy{4REj+`Qk{D)_mX!ZAgFSps0CRn zE3{LZ1L$7&>YXU;d^5>?-_zN?HyB0HzRE|l@BJ6*+kXzS=IQ_FY`j;ZHdXn6 z`4Qy%&Gs3EOwM1h6@*d^e%d>D;~gVzSO3|0n8^{*dqcT_F{C{EvUi|x8JV}Pd@kUM z$t20Ci@0f3kjHd~^dfuKyU^K@Jq&uOA0bz={#vMjPkF)9|6P|1!+Kymhz8W~`NYVq z74Ad?vL7J@IDZuqj>b(0bXh~emn68RF8_zeSV&B)=(;O9<+R@3w03%5R2el}-b(a$ zJH77>C$rK3?;LU4xX2eL>MKvP*I88`V6IT!}~Ci={fAEngtgepTYWM!;lH9 zk}9c1GfdJ7u>xfcuJ{pUR59|Au1KN;FvZp}0xDU+N_;4kfFa9Cd1zmu-Y_;no&^{z^pEqyNHW=~Vx(XnNw+IKFXhdE{+Cd2Ao?@tKn8_tyC+0c| z#5-lte_H`-G4=Q)Ad}R?E8#zO^m9S_`Haoh1b>k9XA3M!bz13M_f@6j+sFujmEexZ zrweiK@{nb>DVQ+SBv2|5r^~-Dl~UatluhMUz-= z5r1m@Z==W=VQQA?KE4tY`ZPwM?RB6K4-?C&o&@2Q+ohK_?JD5N!Dzm7o0x5Ym2(1| zt=05-^1U&AP8ePjw-{7-bbIJmE~^3ud6AJ!-G55kZlAxP&i2+4_8GftEoeP!Vlg!6WzoYz}im_yw+l`x~ zUJu@s1l zW*zg4N7|%H>Q)RjIi@J7Y!=<{60)NQGc*^wC~}+lUEd} zLY<~PA1Ptp=!z#0%-{FIsJln9vg!Vu?%8|sqJfXz`>$&~h-N;XeeVwIhJMHD;73SF z&^&6qLO76F%jcW|d^VkCs`SvDoYG5_N#^oy*h1cfLdtPcyG{NUl?dK?*TEo2!j2XJ zkT7hJf&3CWS||t?4}X=mRE2~&)DQmC7Gh44T2?JS%*8>;%-J*aMBR^8ws9}xIwUL2 zxp@q$TqnPYWZgx57Ir{RXq1^$jmL;PlP)c5r1iU=&#&5(_Xo>%%k3! zqx*d4Hj&>1DL_-0waEg}Rg>ox-U_&w^~(H687F@@jbJC4M(VUVn@Zi!ojY)=LV_@i5Ux`$w?e z(TF&sN4_9?2Pd!gJ^tqvgp*fCPN%a&U&Y^_wWq;?gJ2KM9_9{s|KecJb zkRM`}msX3)X6fzg5gqqE_JUo z_kRe5@PCew36=E0(5jM3*62BHJ2cg?!ZjTlAa1K3RLgmi82Fn&%`3cCqxM#-a~c*Y+}WoyVxz4ae6MWoW&KP{_3 zY53a$x;Nx!2zk*3+`OLswgc{bvT|wpchGC{q0`*RpKzjbF2_mjHpjZC_a5o2EyBwS z3DYlm+`@U5?7IFn*C>P+@D@_s`Sc~U0FKDC1KhO(F0tK)>^?WJomXSF1KgHKaeq$u zhfq{GPNJ-n+LxucvVK%}5Y;lSlOWhmjy9b~N4kU3&4f~$FTgsYxJ)ODlkMaK@O?8i zwmUf8OgPQifGvm8c`PA2Al*zLwTLN}5ry&+rQRCGA(HxRw_a-=bJz}UHxq6RaorTC zoy%W|po#u$Mtv8yH$iAuQ|124nSaUNg5Ju1H}hOD>Qh>qW=HbA=b7G^yL-p0!7rhs?~$Exa1DU;spNujgk~zwFOY zwS!SiH;Dd9FSP;tlA@CuNIKBV`q6jM$qzq@sb0RQi8ces_E_`xkw{0Nnzy*WX%YlU z)jjq)AwNTvgS16Kd`W(m1b;|7kdjiFO?w=y0pg;$ntE>AeuCdHpS^g2%ielLnm2-llfI9c3rMXKYzS5*=qDqnrJd> z^tj~ieH8c!@kGaP^~SO z*7rZ22s1Xyhtou}f%C^DP|T81_9;cATpvh^kVUysAzAMcT2HB0tdS$QEkmq%MxpgE z1%#+K!qiBWILLZQd`p*tB#Dzo4e6xIpia4?RXA>uNSZncNPmk3Sqdflk`Rf#Fen-@ zM$+&;gR&;KVXBI+x}!&MIy^WL15bA&3>X|Y6XM_wh^|t|fNmmhHT@Oz9m$FKM_q^MIO`uFB@M&qMOk7$rd{j~DSr$q3UI52WZT3L)!xR(+~X z;{v0k2Z%-$KYtHStnpBS#$v?U$AiEgHFgC}?K&~?2!QL(;In`P#Kv4qT(@yb~vj-OpLz;=h+x3&Q5g} zG}UJ3L8EFj7qRhYebJyVMZ*blm*M|%&lW7=y#|S%bAKwcGVo5_O_;;8x5n8Z zZFyavCJb;MhBm|io~7^u)txV{)al7km~Cc9v+0RQ@+HhcB?_miyp|4ADuTy+=Qgsh zUoch-pN7bFiO1g`n<9D+U^j8W0Qckapl^r6h<{SDvQ@$5;dGuN6Sl*`5f#@$`qF*x zI*QwV^u8oL?Ss<^heKjgpxEtsdywV6y-?f>(y4ai+Zt$gk>z7bk=G%`Hc0;42p*z; zZSK=hZ%dIpSsy|~-_Rek@zq<@UL?Un5(T;qepzBJZ(1eMl=#svPcP$9X9lUE38-+h zeSgo}-q&EzMP`7(HKo%6l|T957#w8swnOAcli@Yc@=-y2OP;DTD$ndbBCTBe53+ z!=s~lw{T~zwboAa9Ff+LnrJpC{kROquYZFswsNF1^lp0rwtdzEk(L}WEhw=D`zZ{v z(E8?8Y)H-IXoLc;#zyE$QWSG4I=v%q^#@1`c15bP8s(Bt;S!sAd)PA|lkHQ8Fpip& zk;WkFyl8lDkvNh(Ds+@E89$Q|Y42scoToCRDs1ghyUp4+H4>H7u9mB;cxd<_;(wpm znB8R)xII+3mZORqDaBBCiYRsU*Q-qmI<5=$@<_cj?1vFD(Sv8IVtuB8WY16e@^4VN zQA%*LH&~2N@g8D|_VK+?#zPkc%^$RMN;`>Z43nUyX5b2mKiS~nn|0gwD3Rx1R94Pf zA$!w(b_~|c4TgxlL+I%VXauF+}HwIo(3LI89H zkzjDNfy^EU{dR$_c(wdp^I3E9=cIq?S-#u4YRL}I*)L)>9K@oY5nq|Urz$&Vi>SNa z13gf6+KLw6g(iVozT^Z5Hc%ALb0Cqs+-K>2w?*!wEA%HlsNdYA|6v3pKYxq7(1RiR z{xCdX8^l58x8V{OL{+|3XT1}#RK!8)TcqSr&AVZEkM;pzhD`HY~2t>!*=bOLg!Suk#1jQNYZc8J4v}nmcG~ zG@PqiAz6uhy`0x_IKBC%dVkCOG~KAFD|Y6d+f?(B7~KkmiY$~_!FB1-UcUZ8Y-W1# zn`klsFrB#-z?6kk^H2W@lBv13=X`=coxagYFss_QJ6I{PUB!dz)(4f01~r0p16y2` zkDq$KyWUHv-}6OcL+}Sb^Z)qzn}KS%d~am4do?pY7s_oACsUklT7Lujdj_a$uix6- zFkZeiRSYie0X1>K0M!nSlMK71JwLyGco;K0DsjEhxLA}Cg;xw!Qns6bnkHZDdO;->)VNs3T(9o)8@;gr^Qx3 z%07G!zmh!uXf=W{_qoI0TtO*&Zt=L0d$59tb?v|}PjammvjjYxCYlXEJ%#<3vl14i zGC6luY)a{({#AF_E%ckg#L{N7JUpb5e`3+htG%uOgWaCZw0}R|KK!};7qroatuQ+1 zDSq1Ok!PftuC#Z{;uC-7uHsr=I`q;eA z>McnR%`4lpvwuQ?*XeeL$4`%Ab{24bczkkXl+VtHz&8Ukv{Br@{cAx(xn+t^T&DfBR%*YEF7^M-K||-pKtwk3;nK;V2KA_ zAr^9Xi(%kYUac&BR#122z9jP^NBRC|;7Xy^ac%0NSARJN%Oh#NeD$rptSyoN*`IIUG(UMBm9;U0#|=uOLMQmtaMRhzwQzvc*;Ki^!x^ z%--h;uO^M(%hx%hX+{IL!>7e$J_5>7mV`VebRyn`HwXw4_u~l_r7zvS=0docp{cS_ z$#L3-rGE#BEG;xzv*#(`k`Ahmw$Q(*lY#0{21Z9j1C<-gE$}l%z7}$wE?;w7^0TU6 zv$4d@ae4eIS97{+*2E>VZfh39)R&63W)(iR90xxE#OF=eDAjZ(R)Baqa}m18Jhcz<7+rV37#)*AIw1>wmX70|Qboj0Pb#Y3$-*mty;`R2Ha0uH?yV z04FE_rJy9A$iUY{hJso*fYrZGIeb-st)?|dGT?Q32(!dpNchKrRX45VjJq;9ia^gg>^m?KYvPN;;Mm=$K3KSfZt{~9$7p%b0Yv6kSbLs$AqbvYz;&rAPk(&L zvtYoiQ6F+kz_)YysnjZCUgY2SkFY>J65Qa_0FSrDS?OPx#fdesRKXVj?)~rGa3o#4Xx?y&q{Mk93GOAZ~ zKk{lKu~|I8jdXhmdUvSHnP|%Qp4GFU41eTha7eP#xwbjSrXiQQca^}~^r{B|O%8Z6 zj0R*jOlz#{>MpI!d3YV~6{w*>IH95QsB`GSHBgA1HmAgF<$wHj)h~M=21-}B`nXOE zKNy8At#I>)^(bpea-;X7J|{}`5T0YBpRUB=+o$Vr+EkF}^!4!0dz*xQ1a%HM-c2yf zs>xiXBIcLN&p-cs{_*0x8sYM!e>3)H)6W|4?_tcThJCUt0Npof;N;Fw|1%3a^_DtL zb!4)2j@$3J^ncnoE*Su}%tKj-?$hhKv$q=1Dv z>hNz|%j8mFd3w0R_M&DZ-(rQ#lv@DA<;HT$y6iQ_-@lSzF$;g&zkg+RlgHF#EQ0M^ z17`}hzoQD|WOEfh_HnoOUYNaw3@~AHpI7+Sy_m(AOZc{QEUx1=6<;?4vXm;$UE3o* z%Mz?je12`rAbKdMH?bbu$6L|zX|Yv_rlJ8v6$(l&&FVk)JD_y(tj&WW9IgvgMHOX0 zJ&4A1D_yk(2`PVbYjkOjQtvv*^ak<=l}7p!Q*}>CeP97$)qMnujT*84m_Q{{^O$=+ zin@|Q&Mm@a1p6c)CII(Ts|0l2i%uLT-EaUec9bIY;eN3PhYTtmd)=#%7L?ve-z#%= zOPSH(DAo(9l4-SZ$cNF#eme~^39kQn_$REz`a_5=80~+nn){ln_{w?&dIZHzwb96S zh1SMu^yepC2yfa%C7!Cvlr0PoYCl79>AInDJxKbrjIXMBDAxx`wJ1a?tt*tfVEv~* z$C_8ItAPqyOjJRm*#mo_CJ+{P$aR(imWpK{lq8_VQxK?h$pi&Z#o#}y@&`u7z{nco z_tG)e{0e`@ckO43Z$SN6Qs_b#qtTGM`Tg^Sls|_?2=ZjtYeRd3xlzVC+@K#6?R@^OlDJ>y6RW_?*}oO>l|{P5!mWR6|2zKvSXj%j+r*iHfXC!1|6qSU z^72#SBXHLxiVg3R{|(iA+}6}X5L^hSKzfR+VuMC3Z}mBNVCQ|}cz+4P>t4Rc3MkB@ z$ITx%Yc&_k`7E)u0y#Ha);m2Fgv=MZd3<_m7W**~Gp~R~yDp1rJ%(Iw4^~*H=KP3o z5_Nw_z?!v#>^1<`KuR6DHC2%~TzUF{pCt_sJKM007f5@w&s?15imp7cL!W@t$dlLo z&0q;_<+S-fu5d^L{zur&dexii42`dO+AP}+M-`h?#>jHZrt4!~noZNJGos+uvv;~E z+V}6m{-_Vp1(3`8B9*y=hJ|Dy@~mwK*eriZFe9wGO<-mPZwz)^)rW`WhVD)ck}CY< zCt0c^-XH!b`oYJ=NUFwMjf``1xYWgB7-=bL&U^lFa|eQUV4jT3AM}7>hM)SKv@ShJ3Shsx98LjpAv-1Dh8Aj9|o0G%4>h3 z@evOQTU9~3u*(BG^+Dl=D(Vsx5{0G&u`Iy!vQk9+R;SuiH$Nk# zQcOGH5*2Lzg5fjv8mv)cW)lC|b%oo~<(7*}$~!<^`4#m97GXcVbe3g|@~v9c^wz@!<*N{wbU?GsNr zWY|-vo;$4!Z2JG_oZ-Hh!kMvHzE|dsxpd45*1=np z{PU4%6M+;hK1_9}mnq&bAyBW@+BVo@W1m$cX`URf$2R*Gysh>ES3Y!bi<&9C%!Dj* zAgt=@g`|j$k+0Bj3z)D9=iIzw}X_E!n?}Cl5L28Q!%co*| z_-&e;2hGGft{iid59(qu;vwQz7qV+anKByv_+Lm{vrxFeF5wzdbYt<>MomtPXFrXj zd2+HIr+yNpqu>foq$*m69I7giRvVizRQP=8)GVCFKq-HngFC-Ji~=YkU{5CfwC^1s z9o^x71n|8Jv%Wv{k{BUfLCsI%5$9e(=q^+*L9*|Sk*eS}9>H&yyjf{FJo417B1RQ5 zfuJ3&XI}2f+CQnCr2!1?)zQ+-{{v@jbG|~pjlIJbAt~EalDWwBx#t_kqVVFajij8K zoF_Dn=E;BQdNcq;QYaO`6=Cy3(-XuU5Iw1pUw$<`xd$1^_jH$xV55e*QbiG5|4GE| z3D6TFyHLk0%ckgVcC1Q4ms?g2Jb-4A_fA^Gwb7QBM);AjG*4cxNBklBB7-1}e>Z?4 z0tTH4q-N7M{FJJ?=M?9DTfXXKhn(v`PQ8F@L(P9z#wS&cqI>jc=C}58%~|P8Q=oEF%bHH5-efFdIBK4Jzn*`5 zMROu%&NVMBK|eHF4*cOo{DlfjEXxPyJ*@#ncd;Vb_%h9xU~L@s>8S~0wT9C~vw@1o z^vTU5#Z9CLcx%@!2h1^>;Hl;SyX~=vaI5i&}c!O<5r_69n%K1v5!QCu6j$Fsbw z>Hr+#1zdW7?jBNv1A;raL*(4ff@^>10Kw(MJ>MNjDmppz=p@a8Vk?WY@ep2wA5rG% z0#5!7)7G$ta8<4xm>9|kWt%l5sIgP-1E$V|~Q2USZUSZ*x0tSheMMs ze_Wq%nVW|d#`u&Qz7KCvRaSojEMpzpRgzKVEU1O)Kt8N=OgOuqD*RGc4q0n14wvRd-A35Yfmb!^{v)qr#zS2%A$|cXx29N#Gm4QfA zq{*p87IT$7D(4M3l;}i1>>^1s{o)+X$Y6+SBRE4Cd3=rJXgxkf)M$Ub9cNkGFAxzh z%y2g=WLL>O)`>4%b%jr&%#*XLI7Ea#_mOD`vM{VB-3r!0dNRQEc)a*dg9Z(nwFGO^ zpdJ5coY}46G|_CJ;xS1MqFp&1icZr67*#$c6u5@WDvIiq%+d&VMLKfwOxNkpIn6w7 zL$Ptn#X(6cRQh5>aWQ{AQQ1@nuz;h8Wetfw5D*uV`!-1pI$Me43aQh?)K%gXRhGCN z&@~b+e0bgk-F>`Vjg#x0n`|dEd`>P0F@D75^wJt$!HJX$$~aZB^n93vNYnmri1PW# z`-E`^@5znsDxm;>zk37K0p7gtefa$8V-ygl=G}y8*bbvG8+(5syIn-HUq1zfoT*vx z$%j~eSIrO2t(q(JW3NO!SbE8@5MPSD3oB5u(#$qslJ~sfkNwMIV_M z!Ao}Eag;G*QwiTD_`*YD2gV6Cbcs&D`PPe}0))42;t$fCpV2xqXyiz4Ram+ z0o6QttK$Gm=<t4)a&xO7#(GBkS5%43ji0jhZpX9uV z9!e8U1{xj}^#`S#Zx!zKxhc%l&dwjYeg4dvsY2wX|O!kDwZ^Y(Hr=nLpJ zQY8jJ_em(~a_QKht(saSaHtF=OJnE*``zUAfDZl$)3F3tpu6m&9cEtgae(szvT`(nnaVTUYlWu{b6{(1p*IH!*}Qp z;Qv;U|LlLPcOv{VqWTZmMA7<4iBr?F!`=y=$Y(&_T5c(i>l%nFdE`E|o0|8%DUCKuRjqSFmhuK3MaA9Bb;=T&%s z4B83lhf|cnBL*={R8}WW3hlK=FkwNL45<&-2E;8=YGkgHc?;Dvk|aYdRKZv_YUcs@ zgjIhhnEMptwY(2Z)=QdOICTo|HJqq{iW8|~wcu!(%<1IR8PraXf~ehgv^=g#CkA-7 z6kX*z*T(t1dSwJN8A}swX5ODH(stuf8wkjtI2m;{ewHju+l-)0yAT$fr!Kk=hiG~+ zpt7YXYCd#*IC^R#2hCubuTGbb9^Ckyb<%(K>B;t)7v8b0dS-Kciu)%oG156N#p_BZ z&jLAVvew4&zBXn|ne*nW*UQ^4*NvJwF)4o&SYH2z`QP$BiJBp3RE%bSglZ;;b5dbS zaDhn499oH@YzkrQ{7w~Zxl|8*BGmm1rrAKh6*N=0g*abIPykPfC`F2bid4Bs_uAtSP>3eelM5Uhxp`qzoAEh~xI@V_GKx!cVcH(Z( zB6!Wk+58tp?u!ye$;bJ%{1;tWmwfGz8ctnI{Q7p08XM1ww1%+7X$KJDsq?)T^q4^omT=igK2-F(aijV5F6B7Q{+mxA4Q<GO>Cx4f}skoFdH= z9Aep%?QwL0JlfH4d8{7|4diVz&SR?9#a_HVF^=JS)tYEBv%bUknfN{$Dmlp18=s2p z3jOCnYRFMjk-GNCNSy>kn)33$_u0yI9|pX(6scvZ)`rxlCc;b)1y<(u1eaA=*SbnP zmram&HHIw}c9A<=J+iI2s2zW}7lbPf!`4H%R-~*8!e9MpEY5n>nrJe!zUkYRr9A`m z3zr5ji^ciY3F<7~VQ`JO)_nvmWt2Ib;y9rIyM=zP)(x+8(X+HkaZRR(b9>Z=1x3s_D6Rt5SQjvap`CyHODHy-a}Po} z@iT(HOhKgn*z_mF0a}Awq(uQ29qGJC5+2s145h>1tzw1g=Q~yG7&~jC8Es|USNk#b zQB#j_U>a&6piFirL!M$4F~-;4>1*)a@(|40Yk2>l*;N*JV)WS{|A{o3nExgd5ef&h zhK?REWKCXFsV3-8@v46y#16af1wJKu_Y-)Fb7YCG&kZ*NiUn()ef|x4pJA(p**W{| z*A{!6)9R|v&}v)#?R%=9H|q4o*&!a7^Wk@%^YA6@bz^= zN@>9ZAKw%YFpbC=iw}Z*mcL!eGwP#rA0+!DYV=h(j961BU}ArUXkF8hG?*O=&#JZ5 zRWQ9WCG{3-c6fcU{7Z>=(upD4+sY0S(WS{++iv;2yIW!`%~#()&+XC%+M=3=7HPL( z-fP3mz2PeN%xRk>L8ICa;z7+K;}5$_YKz1Dc1io;Wp_yi$op=SS78Frg!M1ObJW1=?AYZ>UPWd#BCeF=#KZq>(F#gMsGFWsd zC|Jl>8TF%(8kMks90(6xnk13cV1aKI8x|Qe}jS#&}LJjutEg)Re3SDS!tOcCzo>7AeQ;UYmD z$p!&X;v3Oe-3K^rS?kCNfu!^l$QXVS>I`&}XaRrXKQ!f4m?N;uh(pn0r=(xUPm8+P z{ElyggqS#2Fp2(MKlME`4$1eC3_RM&9z26z8C|mu4CBgT4Lb(77+a4X-wiD3BLpT@ zAn^3tgl)9cba?WtHl9lg72HwiA94>k;p=(lG*M{vE&J(b^Nz?Y`o8`rE)kje^?Y(` zZSjAB+a9LFzla#7_*N3;7V8V@hFWCVX1Rg2&;Hty!IJ#CAb8$am}_alfZ5W;&$#Dk z=`!=r<{Ahig30%cS>D-wBlFCs+RLIqmNKcMimMf@EAiY-^(4|{Y@@-j`sm91{8R?c zvu*9kLG@;#e$gi^GVvVN)P3SLl$u&jMS*`j)m%+O8ZE0&^2w1hg2qFohsSsg`FHp_NGkS&_Br}rhA zRox5m-ycv*2MBBHm%q8jKXmT7fV)i8;l2W(w!thmW9JRbMnCIs8=Ij_rwba_=YeGF4c!r zb?qijvi>yl!hSq%d)eJ2IBka`|2pV?IZ$QA4ImyB-3eMj7X%PMG+`E0+dD%JiUVnV=y^Z_RQ83Q@ER4rq z&$|fwpMvD1t6sp|c5l>Fo?OL)JFg#MN>1CDjN^m!Q#d|I{SoyH4-Udx9)v;MH+_|| zn?XDG>a|C;27ie>$gn^UyY){Gjt`!>Pta2eZs<&YCpU*@C%%T6n=G63y4}y8KX>{` z;Ag?_X{R5Lx&eJTk4iYYma+RU1z!J!9;ZA32YP@ylkqhsh{o)+t;=XYef&pj`99dI zlP*5NxywVMzvwndQjBo%b54TMS$P_Uankd6j!wFGpntjrw>2~PSH*#*2A%iIV|-X1 zV^bRsOd1Y?D?c$4sINVL64L$R7tyqs3h>N96sDOxbaHbfQydS62T?G@Eqs59aXr%C znR_|&uWrNOvuRwe-7%R)QYY?~`g0P67CgSA4)Kfxc<>DYbAYyKUh$YSPTeUHHm5)! znJUnoIDZ(1QI>~c{`hb_0g@~9P6I#b-?SMq=vDoSH;Mdya1%$sfz$Q{D1n#7p1MhB znfnTv=sCTa_~Rgwfi}p2!6C}zez%Mk%2IVsgJEl@ck@^LS?)N3H0x39zK$k0{s({Z zBM(N0SOKOqS6DH?4{9U*RMm)-uH4EGVK(w7`hN@5MNM^H1YfdTy;QJz-O)734ag6s zVD-AESr(7~8bp&Ik)At6E7$)fj^cdhosxQL|KMjy_(gY~YgZ+8)}9-FrwvtJLrY-H z;n+;Un^<43T=Uy71qr(QoPh?%}xy;jJd(%E-(UQdlQs(#kLF;K#F+tQU=$pLvykp1t8Ke-9}0vU3-a$lvQ z&g-PF;leGdwf>8^qJ@jNzBYacuEX(1Kf5WmV{X*h)<44_c{5FJgYtL%5I8sMYx7N* z^rN8oajLY&R-!l!sz&jR+^DaucTp5h(tpw?>EfE($-=%LRlqs7CO7MA6POZ&EWQ+I3UWLhhtu4;~Nt$*B} z60DEj>NezZ^?KuJ8n8GcHJgGO>V{$A4al{rT3^>!^T%ik241XRm9E^%$2c_7B%iNb zBjFirxCT_r^~yD$-}r<0vmOX_QAeE<0cun^30ALhlE8i|z2u9U>NI*=u5wdaQ!D3W zJkPbjC3V*R!!#t5Rk;y;qt3Q|%YVX1^n-Jr4gMT1uB)94#`pZkP|51GyY<#mqhmp; z#df63{QA??#mZlO5l{QV)%bkn8h?8)ECpw)*9L$JvperYkln-s0WE?jr*xrKPKxGX zHjp}|)=@l|!kcBx)@*8(!lg~E`o-=W_GtX=Tu+-^F4W~J6RyMof_OqMtehqL{3ia~vkjj_{#6ip@UAF>c#7Kx;TV<^ z(EUNt1b*V$@nK%+f4YjlSWAB4WjHwTL?BL2`L6d;yVHv*sG=el#C$ksX1)}dOdQ*OEu01 zI&DGV&Y=)h{u|2d)7+f(xrJl+@BA|EEXLFc49IcuFv&VB~{^MA4%v`>{v>$ZeDt(qbK zs2@c%=k#eX=Uh7--uL|Rz#I8@)R*FiMe*k#F}1h2hkz=S-GtXS-kXoVc@c)9<2j?q zW9<908>*BnHaY=x~D!7B75;KY*nLAKzqC2WpPe8nL!9gM&e=uMi zm3iB1)7Z85G3?_(6wp&ozHfQM>A26)CAN5v$M=c%2S)*U-LChVAEEJ15}MK&F7&|f z-zXT`^FR3>f9@0YMmY5L{*^1~Oni*kz|=*EF{3`71b>=z)qk2)8X{FeM^*f1%lp$H zCI;b*5JAUvIA}pWbsjFJ^fGdV=!6qXC5```f(LSB5`<7*&pm``8w6i4_7d9ioi2D! z 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

    aRC*4`rz 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%0APtnsCewpz7W%gnya^X><5H}3_B0( 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Ⓢ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 ~Ylp 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%0D2WpaD-Vh9Wlx{+E4VRaF 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 z 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͵v ztc}|Y_I86s5@*=1lEE2;e`sz&h*d8$MByU%>$e!|s6sF6c7Gv%9E3z1?p{Z79!jr4 zKg3$yH1Q}fbO5C0k>31{lHAUDJj~9pP)mSFi+2AO@c7Ikszg8@=mEpZ`x4)u1>d1` z#{w6|$mE7Sz*0R=aRcT-AC6c`V}TKOi7zVfQqom|9*oQ+7zCz|f46*|BxyWVrX-B- zFr5g=jb6gVFFe&3sVHUW z43II3%A3)aDiU=ij;wA)-qMY6#@bzK-Z0m&{yh^RT=QC;#GRXOsxNecqbTx^Nw;4e zZ0QfgNniZ&A$Z`=e_6DRRA&z8hk^FE!y5pxEgoN5nJCvTBOoDzK!BrV9mxYyK_wCM zNX_S{7**w~JaNR>UuxdWQUe7l<8mu76K0!)3B~T_rPR!2X-+6kG2rKHk=)MWNz^er zbh1A^GmmHKIYsm%)i=#WrC?4I!3>Ik4lp{7y{G1CilAVBf3vrH`(YTIL74ltXUq72 zs>Gm4Qo%1SNq8B&31^qkPqK4R_5kVH8K2@> z;a`>m?F3*+vos!BQw535G{pdT%!V*VfRE^gRpJLjr7@$I%*W|DpaG5)LMtHbam5qB zVvc(*B+bI3f3t?)Ni0y-FI$%`xg}g1#;OLVtUmV4OY<`r2&~(-c7%M2{xDj}e*2gA z{!}t9Yac=8ixQS{s(q?2{tkH8P3zum8lY}uyqbHXy_GrZ9tZhw9{JwZ$Sc|8O=gU9 zcfa<2_pEb99S52~l8I&++@^X3wR(y5wL)W|pH;spe<(+0OO>;t?a7fmajxy^RTZ)1 zN7QLiJ|g2CHzAIuBOC+tB79;9hi4jGrVA`2UBJ+gUVtmQ|<6Cc^ zB}3R&sa?a~Ae4ac)P)Nf)ad}_S-Lnq6KI!IF%OU3ckIR`i5UJnXef*uiTOQqN{F8N@6pL95f z7-P&l09%UeMf&(R&O0U&W_6HE3`r)#7YT`$rhhM@1uiG!Rs=a|{$MbPQt_c7!yGBk zf9FDce+4}y7Du4pVEe+lhJpWKekQ&E!Gx4xJ`MR1dL~}Hz-Krq7MG>G$~22wlTH9` zp@uO`4-ZKh?|iY&d)!4tP8LIo`%jI*%`8MVah$@2#^sCQlT=BqY=1w}ov3SPr?M>v zPuT~6MRTtJM`S++6G3{!ZSTVv3d^>{fBW`+Y{ zG`Uj3wFe`QI>9q|Y>ellmk32AaJx99DHTaE(+U)oG=V8*>GTyic6chvo&NA_GKq#U zh;``+Kc_Y${TP(l%8`g>8eKqTB>QhWp%iwZihD#+WQRr@sH^m)!CjXbKN-!?e^v*P z0Hz`Qe+E%^@;@r*(*(R7(mOyuz}C5bH&_oFMIqAxH_G5FcvRp5ybNH-3p*0<)h3d3 z)6uAL2R!)+46;}Q5CnJ#VS##zr;G?J^XuNNIqB*r1aA)#m8fA=QQI^?L+mXgnD{BV z5Rc9I5*I%pkSBp8$nEM z9lgZF+chDT0b6yg=As*HQs62y=*fk($Sz1gT8*_kfTh?wB3`DjPtBMzt^s;)>&4|E z;|qIRN-tzS5mLO@J2_q2Ht#StPpO|8zxYuS6(Pji^QtYto3iU0)~axze?n+TPKAM$YdQj?CItY6i8yZ3CyBEco_Y z`OK}q!8sI+Kz>2!gfQ~bhm(GMx`165hc9b*>rTUKscI@T9I2?p9NkKjXa)2UG`s<%c;2qm5@(0@5?LOKz2Od?!6OnJzWO;B0}#q{4GabK^v;Tp z8Qawbj!@t_KuAF+IMJaU@oCau4&TO|-M^jOqJY&)C=383e_W9gDahcEuVmv@_G-w` zl^sPw)$Elw9Et0zqn{v<2jcl8OlOGehfKbpU z1Mf`f85))yP#n@Qvp}2&su1H55;8iArF(oIOppHx-ujvzi6`{%->M4g)3PqKTvMef zE0*GmZla>%e@}aSIRT_W@%IOMSGGjjTE^Za8V9apt4VthGeqvr{n~TUXtZWKjCtw-`GNWe~HAYxd=&>V8m>@oQlG+W5NPK zl1pJex&=sh2p&9@`lg*frl%&M|6=%?tOQgH zajjUI%m~JGs{G5)xJ&Rlf_ z2jCuSElid}%|>}W zreQp?>_B2>Z>NY?02a{-VT~XR&k)2DZZ3)|f9N$CH*_9>l?LfBu2~dr>tq8?Nem#J z6!_qG$SWJA7wRCL`_L4Wp4($9Ek+j&%REEJkSk{wIgbEmvW{prLwgJrf$So2zOt=S zDB+IcyRO<=18rc!36w*PYWkUSibVaN$mP;G;JRW-F8PIkhjQ2ntPPTiW#PoAVnDK^ ze{oSib|Nc(DbPI$M&s}l*3N`Fgh65$>J$N|P~)k0;n!AU$hMNbs~ zL8pS37KWJQl5s-4t-qZ(Co%4hPr%eZN{+roi;t_6?T@P}ARg_yx?@SM>&w~Cv)KEn z+&KK7Z$&=lt<^iFff~FcKmYWMfWeh9f7c&&Eptm1E3F!C48s^G*i}O?by7J}N}O~~ zRi>xQlHVgm!AFM_P(cczE5a~HJ(q7l7#5-@AF|dXOG2Fg14zjUc*3U$Y2&QC)E(Ui zI5mBjm%d8qfMcCaq|ovq6IvVmSAvTV zHOOd%F&@&?2nI5hH|*vK2ZTbio24zw*xY28doYdR=6wmyN4(SJ^o&7uBP1+KupLlb z;#uH@W(C#Y1^k2YZHgi$upR~^wcj(`QmGy}xr~50i}@!)0TFZ)go`X?oby1!)26&R zhW)xZG?IuIUNJo9h|<+HNg34#fA$JgO^Ch3K67D-;5T5|8f#5rDm&#mbmuCr7;)km z0?B4b*~oGU!|+nV-}sJT614p%b{JS>Hw1sHyRVQKC{QqxElo%V4hXct*^curjbkL> zz-%PJx^myu@N51K83V+MN!S&a>(;6y`sx&zXtD8!V-G_f0YMC4=E3F5~Z?75<#nBMF(?5Md?#qh3O9Afnuk|6=ues zk@Oi=OWnf0Vw62NC%%Jt1!5@m9^}OV!AqAUZ$W+nVp ziF=iX8=D-{<}&N{hP;l6f>+=xAmI)|VqAp3brvRb5_uJeL39zvf6KLqa)MpMe-8z# zACc?}7%-c}VUz2?1|K8nV1cM#P)w-K@P~q9!S9AqVtEtwi%CD4!G{0@*bprbKq?O6 z2>IoB7CamvqVkbj&%>_#T|l6ZM60tu8(u{}45nk`Q6hd`>*U9TSP`_MUgEYa{E7!) z;7^g#bDB0K^~tmsf8Xxy?y7uA1@qh8&OLbC$1t55=I_3wXrRl!`1aneS#>Yrffjay zDZa8hva+lumgKUlQ6WJZ?RBdn?$;EC^XaV zyDcG6NS&e0L_PGR-b%a>uoBJSvVq6hBy~$9eK>r>KtNG9IhbN4E&=eI?v};rDNHc0 zG}RHtK?t|}f01UDzT|2h6jCo~l__un7k2^zLsinMhn6@wzQE`NiR!VJ-;qD+2OMq; zj(`pYVsr{*@T986a{p}Psz=A%-Kyges#Kfw)lTpOV!9>AQ>N`DYD}YrMv0ITAazDz z4Pwoa^=ckItU{o?m>~GiZSaGLkznEzEAj#|3q#1nf1!^dX3MZFh;u!Js6+A}osvjs%Ta z9KoWXfBv9ofoNfNujIZ(voUldLLAXugqMLV*8?QilLAk7dC=Sy7EOP;^`%?M#0Eff zk$uW65+lgJ>7**L6c}cPINU6rDu5`7pm7<=h>%jaIlC6m zy9alq+Ax{BfzcB?iN`SW6>S$j<#=HJVyE!91L;T-J--EPH8s@Bu>;z;I35!uQjXd2 ze^jZJmFOxf_1NImwd}$Mz12Crv?AB%3DiIfW zwVL0Pl8Lx6%%nWb17KN>C{5^%yiuY=5fIJN#NK{OMVb=mMHz(qr4M@-taL`k5W1>j zv)pj73tlIQ#Rt=H99NGdkGLn}I0x%iH+xiqPSN;Ez3 zph3+6@viJy7z4{a$YSNvK-h5-jNO7^t(FXHZAA!B&pe9`J%9z>4f>FcxFZ`SXT<>F zo2Y?elGuvhQ-1<{MAoU~Bqr#cV5^0>w=Y1r87>!&qko!z{|YZpHn;_UpK&lLe|VJs zYxMJM?%(|)!ShJBM|@U|Ewcq-nso;^!n?<%8{ahObGYnHd$aj%krxPH$2Z^iHtpdU zyui+4u-%2a!+npsCS(r~&RDiXE`n;#lHl-0O9oMvrL4vf0OsQ`M^Kb>`vBKToQ@%q zDK$14WCBEicHmC%qsw-qtOf~8e?I3HMTLMdO<}_LN|bFFq8^CkxAB(RyC)$|VvK^1 zl;LGukVgRQlwGc?N?qvg(;B7Xxr4OMwOGr%Q)9eI8>otP)&Y3@T3|qRYKwQ}YL1a2 z;Vytsix1iz4V9p4xCMnJ92Llf2-oK@ZcTCP>8PhDR<6ut_i5Jfz`?`%f2Kh)!u-^E zY}5&ZZ349CidXW)5l%s1Fjk#|823iNx-U?Xpn1noC^>bAi5z1Oos+t4OGZxcCa&0^ z?2KKh%z?@&ehvl5Gyp&hL;`~2NUDaw{00vasGY_sU-I)(ibX=LxjtYGe`J6Mvw~sW z!@u|d7>hQwg^*@Sqo;nXe~DdPZnQb=z!85WFH85@?L8-wo@yBweTev!|Jjv)G%`gb zH8bKnEW;IwvBBb}<%%)8J9o5Rj21>RH_aX-7?52Wv_NFTsEXx&vquZih)9aS#sljo9ZYN&uJdZmkRF`mVHe@q7n)tmT(1-QVz z&rlVf1&Wp!U0`x)*X{w)RMROI*x~B{s=(_fd}@0i)phtkSi*Kt8;1wN5_AZKJhj)3 zM2yq{C5CAKW9lX=;T4fMkmQ7ZguUOQ;~(i146C(+uszB|*mmVROWct;e;|m41kIsY+qWoz@AkB6BHQRF4nk=BAC=sC9L5b)&{d> zU8g`ywr!$>f4CQ+o&;s_NX4dITN2BCQES$q$dx5of(tckm1&CW;)n93V3mK+>R>== zH*GIO6KU>zhgmArwEB5|OwkZmo0%9nA1$(b>q#n=kl+~u9T81Ks)0qqW@0aOBMGZr zm%vjd$S*i!A`a!ZqiGD^gn6<}+1*~j>V9+?W^CQKe;SfmGaH2zcY-WaX4y_n)fRi? zjl5dqM7iONrC<<+UMq0mGSrms(sFhjL%aiZwv{@8fA%v*EEVfxA!QEfQRW@yb!lcL zt|P)HXaUR4)7xW&%0X7J%(9?q!LB_(5d^2$f${+3dx`s`c}M6!ki#7U*60& z1=lClf8!z_RJwr$Nn8hnQeLTJ*b!fYa?%QOC@kdfM_{%L%~W;-0vHbE`jgip%9b~S z+bphN63$+O;J_>m5ikSiD^!9Y4x_6DYW-2>#%JLo?29n$#zM}Gw9c#u>PCqjrUP>t z;`lX{K_6zbM-Q_hsx!(7Nv2wtf7jn$NE)60e=E<@|IHuS#l*_9>Em zAN>aQNLQn_TottOhR@Z=j{g!tcGX?3Av!I|@1GlE57))Dd ze;kaFt^EpowrScNSq3XihT>jL6X9(irlZyw9ZhbUHDBI%#o3+%pTilh$}omUf=s7r z?wS?PR{Y3Mm^~b?@{xQ4{T1g{Ti%)rkJ=}P>bGpte4%KU0yzz}q78j(q8w$#uLjD^ z_uakvB%C**X3hDa5LwHj1fx{ttXYw~f1dAjyyARioLWA6&8lZBex{67%RiHEqQBzo zidV~Ltyw$^6t=(|n6-S`e6hoJB1j30YHZW-)vR&0;;eLWE}J@E=d7I?$~x_gkULR8 z`(lkX4_Etw%A!s4<_jL8fl$jaalubv5JawO(|k3s9kw$WPW&nzUmiiXYnnM{EIT8L}dIxqaeggikD#@0#Y96rJ>e*U?pXdP$6N$n5GLWS{3F_d+Lnv zM{8c0RqZP8=m5xD1(l;~T~w_V`0T)C?f}xLP+E6!gx}&Xm9xPEqYv$P8hke9)kM8{o z?_2f+{p_WtVKyH8$Hk-{&1(Gf<)i2H<@@J8XrtRNn?B`XP1CT}6}cDze!4zC$kBoq zqWrZx4?AXHdAH@b@%kZOh=#=g{yQfc_gZ=q+9R^IFyjqcPBa>I`7d|(fAhP$2efmn zaCLRuvYT5w;>*RYzqnuTdZ6^^_LVMflg;YWytjKzyvqYs)38<+S3UurQybI0eoMO8 zZ`%IHgVOa|5>0Olzp$yjm>Uz~))ARNELS7C-tm@&CC*aDViZ+lvibEbB5q=6{AHJl ztytpc4;q&LFs(_Q@3-hB`Ja6eo=Ac9&Nn`YU>^U#_wwx zAvk>t{r@mzWbI{10K)-u;I19SV28b)3uC|>JW+$!=kff#gRMk(T6F3E>$&t+;1ZQr z${18;8Eu2V@DEF8_;06ae|7(TXxc0IZ$C-deK5U#7PGI)Uq~QP*Z$*3;Ma)VEuG#*MCi8Ym`{}c?OngCJ(%vj z_uE}Y5TZ~E1sqKGuOp=PuOFnYADG@dj7rp|MQ&yg#R@D!hLy3j%o*wid|?Qd8SvjZ zL%4g-gQRD3ypm02e^wu8^GWi78+d2S7(sk#;Q;5?&S-J=zE`vkT|2blvMUg`d~Ep? z$`r0~)E6>GbhZEFWbUh$y!c4&0IqhnB8i-mr0&=Fut(zjYFhtm6QP5spFE2_#?xjV0(_sA-Znzn^?2gwD`EtuGO7Y*0y?pb{`!VXFr$l1{#)lMdJVd#A zg|AQVo}+>}f2tcDvE0y#^r>l>_3f|P5Zc}RTA5PuLa5%#7hXquhgqsURGift_vPx> zUH$#t`|soGyF5BMvd@LfpU1=Oy_*HfXv;HeF`b|@?52X+aD7nPqlo}`Me5!Cws=*z z=k}+TrT>wl4)~|K_zB|cX3x>&bJflYO>nh@)#Qa#e-VJtWPb#d18`jws?aa}vXZ35 zB-fRRuM94)t!zb z`mI_oTKN+2NL$DpI=16fny$a+E@>KeB`Q%}s$d|tSm?E~`;KbcPd3?j1zM7iEibK1 zN*YIff1xBiKl_i>-}d+J-u1xgAytEUaCrvUiizZ(BthAf<>M2|W??@yeeokN?D4f-*n2<9(&4tq=~`uD1-@zq zmhrdDRO^R);i$Y{_8-Sl_xIlyM{O*e@`aCne;Rq!6$qUhx{T5_4f;ar zYDwLl-S;I#*@O68JWF595kR18Ax4$2Khe5nS@RgG^tIEnr}V5H#sArq(|>bzuJA*o zf2gm(Bv4{3jt)_EvY9#LL&{iD7JnN@eGXi~L+q_lL-7pNuR8vLh_+H|i?jGpxtR z{+9uoFioWolXR+JYe!R!AKlDM5%~$a%D4tbwjCO4jiPio7lL`+2T`dXe`U)if2m`S zZngaC$Sebe6J7^>lwcVK+bDFOPSF$;f95s;CVg@XTb985mL4R-SL5)qDz@YWU)gyAOF51FMjA)_5p`eDLEud| zFLWzX#QkI5ImVepGj^$#hH%f($Cqsj@D5LlT^M9y?XDpb8$UJ~_+N5sf8I_OV>Bm5 zw+ZwOLsynR1x63{ci*~37BXYr7<(eEFih=QX`;b?+&59s! z+m|OD^nKcvX3Be&?Plrrf1ei*a0ng!)BWAI(of0!)%?u?U~BrHpR->sf7q_0 zfMED`0q=o{f)n*=bYxj0B&XLdODDUVbEZP>8R#8Um#( z^;YDo2^zXB*badg8QtMQX-Kj#6jTtOL4o`X^b>8iyu1=f8#9woHq5~G=@10 zBivq4659jPF@j>3JXhAamlUVQ3hHJKMTlEW*!ff4O>O?gaSZeU7Ao|M(ROo+aSE;h16g>~BW)2`u0Q_7u<}^d;NW zjB;++dG_Ozr>~yk|9(71qfQ6h&e5|UzkmMp_wRl>c=1&F5*8l)`s3jbPoF5KF##7u z_% zx_G;5oS6$QY#vnz8{&62fi~k1z5G_ypbtRM=V!c``Wk8T6txcdZ{A|dVIiIYiP$s~ z4^@R2s=gpif9CQV*h`+v_f^`p?bpyjkh6l&Lg2-`m##6JX*b#maFeOi49T_OO4R=pWFpA=5Se;g0VpoyL_Gbye?JZri1?30c>Md(!)_?j(sUNR zp@PY~QKG871Y!kry6iF-&Cn)K=7s*^BlecI&ZNLFoyBh;J9(sR3*v;WNAEwX7UOr= zT8L=bf;KQr&zsTGJof-tPW;d*ydgIU2^C21VtxSv3c%2k&KW(lZ;3$_nk;6~zZW8b zg5ZJ~f6xpQQo+Unk_JnIO8JAY2$y=eR~6u1!luJ9dj6@*tW#RK-{PvM$yL?gYFOID zv}2a@ZCR^S06_(D{eGb|$$$6IinbkfJ>0sws49J3z3({*twI)HTw)(svOKxO0&0qs zJTBAS7X1fJPU+E+87{)Df0^A^ti)twN_Q*me}Ka6v_G{7IU3{q&o#Dnfh{pEy1X-* zdZzIOB!bq(Z_XyI3;A`8#iPIZby+<60L|7|`5aCG3v#~7jGrJ9CG_eLFCkF95Q6JB zrCwUbBiB+$AA5JqC-IoT8*#%Z{4}~cfj*>)9Fo#`%V@m2*uR0F#gp`fsj1m=sUw(qzITf-RFKHVBb%f_)NR~jk`~&&>2);P#Xqpy<=xz2 z6~=$1mplH?SsOV!js^yGZ)(B5ZTsPZjj-E27$cP~fz9p>JsSiM&schvT3Fflf1Dm{ zaYvC_1sA|p0fDZnRDRXYqi(7^7L|)C1&U6sWI2JE(te@0A-YcLd6_ z8d8U?tj5l8HI4TOx(YOvW^SX;e?7>S*-h<`8^vz~0#|1^2F=MWMl%v!(9${72dEb! zfyj^ZU^_-1ZC-b4OuwZXX&C4!9-T!H5-lR3<#sTag@MY*1I~|@?^I6G5pDc%lVR4y zd;tz~nNO>WnBM}0ob;i$z_!EA-gp^22Yf?b>;&IomBx!m7eV2Dny$eMf61Z1x4tIn zyTJe4CkN?bOny}Pz+DX7-`y>*d;6|g5d6fm6c#M>0^bkL;?uKRo#0n+43a?0w_vG_ z;RC>q%u6sqPvMGiQve8srK)d(ntu*(2VOEn7!BZg7B<0RP&Le`0Q)LWH+mvX=YA(Z zHj{@?Zyng?jOl907tqe0f9z>jc!-?*wjzKah9lSZ73*(0%F-#6Jy`%z#PThtlqC2~pS@9bO)!I6eVTvGDDh1FysHR>oDBvW9n+ISx5*Ss!w|*qYR2121O> zmN>2fSlxRf-6lzU-34^ejnxx2zHHx>REGHPS{{~?Qpkf+Fo)0WT zwrs1`Gie-q^O(8=e?>EQzths{0_tS>s7UB2{XsfJ?_e1Jixh`K=_ zkO=$mx1of_f5fE?ccfS&z+L-sHVLQTq>OT+KJzRA3gbC(7ba;&QN?fsftEsBFq7Dr zEPr89f}4!kBMKsjGr`A!%^I9Vc15FO{-Iv-Q{njoRT^%qe|tzL-tl+76KD_fW61cp zWy9df%NI|_5i1rzp@xB!fo9ktmJaCvu^;#|v=WK#fWBfBliL(U1f)s}U;KP@%<)l- zP0siy>yo0_LMDPmTVFcwx8)xuf=OA7d_=#Qe+Qbk{dlk~sxPODE(Vc^{1k8UE!+xZ zB~}reQ<5vJf3uyL4?%sw$p19@7b$@XX%B+m5D+3;o_GG3p7yr>1s=)g@{iE3IS7E% z-Fa{i+U8jV`6$C5-xdct!p6a~Me^Xc-JQGt+6n$xOr{ThySMZ8PHzi8WBRvd`nP{G ze-LG`0CZnx%^z)Z8&2Bbd&C*UP~dE8-#WC9YsD4!e{vo>rI2`L)GGvQ$;a*A_uaSi zS1<5oNTApZ)P0~rnw&oRG0ma}54+}XKC1GP79#_#urUEE7{$QLH_?pjlPF-CwE4WD zC~3GodTeRyJ!-K9-1EL_5yw|#kAd8Uw|EbU&1CQ54L%Y;yS>O27NWq|HD1uB?>IAh zjwVe*e@UVW9`+I^WM)BLT|7^$@=Zqlo|3!|u!H zTslmdHao}W+9@3nMe-w7I z6P&0J#y`!X(|?+O|B8Q;)SbWzmSiUd3;}%1yTSkKUX}$o9OR4hX*7sOzzk9Wr^WMx z`HKMrrjl=RCj8;o6S=Pgpq`AvPtZ0@@UMpH12DaNtN`EOJ6fXhdD%ty zR86JB=mHOllgG2bl1^SKU2efH10yW6D0sO5|1+dhz^=x>_0ud%Cxi|!e~uol6Z7xi zbz(mMDBwfJ!459s=|3L?clPB^zdqnYb50NNR1X0`@tjmJUnBR-*$KYk^m7*<{owG; z8BBNNL{_7;N#a;RQl7#SSNMfQ0n%YK9`TCEi@ikX>RqhSM8^=L@8t9nnjj6-$l*~i zi7NXbIJw~Mx#a)V+%CbQe`ipNWt8B(-nm~-43VM{u?OXL0bZ_OsNO3>X5ArUjRQnR z!s2Zw8D(b%pJ_wqKv1BF;Te@94Yn~|2u~}MF4KU&RFd*RTJpul+`B02X|6e}5;q57p27ieK!;1`8T0Um(Gz~ccEIGl~_CAX}C;06fTxHy2 zW7F9Q^gfrt2v5uH6+l;%io@VUFOCylE^`DUN?D1saJ;0Ksd2@Dv% zxo?5m%Lw}i04KkJBtd;07)ny`fOlMfA%G3Csvgo{aUy1TTVv=8u9+A<0VZQu!qi`N zc1g}=;}}H1n4adKC%B?K4b`$PPYS`xbn`_aFh;L6=j8|Egl`MgG2ix8T$ApDE7jY& z3sF#Me;cf-d)>P*i9wDYEBawB=qR!z1f{Au44j*(ptu2dFDip&8-Ep4XUvVD2eqLJ z;{gAPDXZ#|4JXxG&GD9CV?+2*LGUAu#iA5D0|ae@-vGIX_+(8hpMv(+b!&NGdCjVB zE*v(FJAXgehof5+7ccGBX>z2MOl~$ySEB|we>vm}M@NN`;|R?5)a)yF3xQMO`y^jF zg)ln{?(JUO+ZB~WClOXqV2z-rl2Dioah?d?kl-;POyXUY#XC9?FpGw~T7C}pZr{tv zl#;sM76}ZdB7x&bGxYxLuZ3e6w#6sH4ngcdqvYIs84bd@p_>;_c1nfN+pN8KvJNtY ze+Kh5=cr*ExS05P2$`1$#Q%uJdvE8Sow%2&;ro8U@U3I@3e#LH>(w(*%Sx>YTOK*X zx4z_-RB!bz8oM3rX}acrEXDXGoIznYEtsjFsoGAJ8dx9!5w}%q!_mWCful!&dFgku zMMU{r2GMMm&Y-hU(`8ot42k!cgm~9We>52riQ6f-CB=OnpS8!$7my4A{P!i(FX{Rt1vONyK-Y&VL-qznvJd5-De>A-l z!M)El+1w8bLNaYTh`3QPtw5gS!n7LK^QZCwU=->ZooJE|LZ18wUB!xGziOJBtU$4)p8SuiR548jd+G{A-I$K)JZ zw_5|Jqd->gfVRO_8t^O{8q*2Ie?RO8{%|c_t*Y?$?Vo>k<$gYolhlyi8Uvgzym}`4rJiT*Whp zdT7V>s=axyfAe=U+<$D%7O36f74em;j7`^n;&pK zq>PUqbE8S!C&e9hiGMau;PH( z`nH>uQlAsOYQqDBQ<1=IFf^c+`@P4o07Z{gr4viGjG8W#khG*A29zjvmWuqxA#gB| zq{J|_Lz#30(98rqe~p76nu1D_x(*hM18S9W=$|?ix^E+g{u>NYk9jB_fCnp9N1)aENkDWKcsWBu2)IXEX7JLaT== zFahf`D*%qY!_G^vXo$2VU0ovU%HuMEc~O;hBW{#@O8_j9Z2jssUT!ZWTTZY6k+v)X zsl)1{imvMke=vl?b&*`SmhQXAES#WDT5;@{;?7NxJUq_wu|o$pBqPYJE$VaER61CJ z2{2^2nFq+zWh|g>z)j)+-2c@Xz!TV{U}}ac3CD#=rD9=I@gff|;YN)IL55ER+Z4>9 z!NJczj3vJQ7Ci!#GD_NS022hP0?57;Q@7RXkql?de{b;BW5h3Xu49HdeJ)Vx!+AV_ zq29g*m6VYcSO--;e2#WYB#8u69`I3E4d~9HXUpa7(u6^1ft2BGT6? zu(|P}e?f75*njj2LMl8?I2i*IZXW_az{byb$VO<6n8JVb3ea#x2_$Ou2%Sn$8K$of(LQ399&v2X&Jn5XSe?6 zJJKU@QAR?wz=8QIe%3-4P3O5G94ld6y@vjRK1=alHH&D4G0OzC=3zHMToW7Wf4rLm z;p#HmD=iCY!cL?X2ZGi#EfI`(!XxWS=y5bd>^B|EBHDnd=qfZWB@Afjr%(nPqP%1t ztH^~AYXsM7fj-8K(y6Sr_+@fWRaTMNyjR39TQgLaXO~r}zJ*|Rga)&G$!{ghCB1Ah zs>y{ZBPZYDKXtTT*TI)oC18~Wf2~iz`-?tvQ=9I*N5k_#9&7d^uhoSMJJ#tSDkC)D zRI*ep>k$455^o^Mxh%xi6FdbEh;lh>)JPmPjJE_ zE26Q_{R%V<1_Jz-cfrgBERzT;8Xpi-MWs}ET!iwSNIzc5)wMz52DxyZdrvX)8eMoS zXPxWL)nB7~ZZ7DtlptQ?e`;v#DiG6#yVx5djHLB`lr`2W>o5KCukvLtYQA*@swQ^M zO;?a9whm~Lco9y&lhD9s;oKYNEv6JQwtVPK5YkPYC5izSfqQjH{a}g`A+%vilb<;( zf-t0TZrHr0#skBYXoxI`wnDEWQ$b$v8I~D}?k+AsUu5`Bf{-&2e|;DS#U>mQCqNSs zqNb)Sp`i7&K{V+M_g=xL)e1+V`qTH1?Q@uYXveFWL}S9l%=EpOjSz%odqI_QQ)wNd zK@bXvZyhxtoxfIutqT7LZ;u8c--L+^74|{e2MC^p09!z$ztxSpjqy!WkZdp$N^*!v zCl_s$WX1tA1ZCEPR03c>d{&6&7T@uMe*~7mP zN2LE{(Mub9Q<|ODil2~Vx9!GBnM~&Zl(oo)Yev`^Wn1Vvp`_4?f{wRM!ujj>!bDjE>`jr2@=K0o zti?0+W`L=Xui`c#YmBm{;ZsaUM^G!I1QrQ(q5-xANg#Cg8h?%JGx?94OVatwgdA$h ziQ<*NzxrN+vvD!mI)?0BFSbd6diCS?clMcutBj4?%9B%#Fkuuc$R2ZKq>aISLG0ko zVu=PwBjkjp#)`})k=iIiMXGp!4=R7|KYI4!)ytob4}Lsmc;3?o3JE2fHZ~F4t~e`s z&`KN*Gq7x`u74s9{j>Wks*kZY08?S`QPZnZoRs1LTOO@UmZ*}La$A)M@HO^X?~4b@iI9_3B7}l`%cO$Ugn|;+?xS`@(jXI13~=6p(|&09Hu?Ll8sPwv zfpUDqKuh0glMWmcZWa#SMK&M@H|*0B4eBHVOG27N1AiwOEE5cF0P`n8dfcgr@iz^7 z-%R&0dOaAS2swu(F728y6vlY$v!tsw54%ZRHiyCz27AYYqi1x>byQsYppPRWM=6;& zkO!29-H0XBka1Y%Mq$jRyoaxTmc&PiFW4cWMz91kXz|QcLHRd=JeVsPqhJ$zuCUHD zy;kHXdw;7ab$PytXtnVS(cX?LgDW{@`<}LMahr*?d4wbEo;ONSvWq;*$IPNcMq^_> z71=T>f1;nMTKbZ4H%WFVfMJR7(3U^qcudiTTl@(vzJPNFOp)t%T^|J;64dM5Pz=vbEIED0m7(Aq?e96U9z<8S04HdxXK=W_*; z;>11Ypxb1h^t|HVAAuBZL=6#&wSO6imWW?)gJDWKwi%EXDdJ6rsL-~}fV4y=KO>ly z?9YCbR%_l7vVm-IFQb^c`HEp$B51z|kvDVEqPdzuWznogbFCkD<1|+V!__s{SF;q| z4B_cJi^eQxY3tr-A$w+6O!~BaGh!I$w6uHcntMlKw+Vno%B41YE81$yJU z;(xO!Tg)_v)+XPP+m28W9;R|+=TS07j1XeDpu(y>xiLXgb!e9PCP39jK(e^%S zWb5A^OAT}+_s+Mifw-o4XVc;Z0MOcOj1?l#Q16oKRR{K{P^55u(6EL$`@_{tPoNjJ z#xGK6gLV~`{S+v3GN2j47k@3@A#tSdK(?az)HKYqsX1a{RjmTius^lvWGs+2L)G)9 zFM6iHreT|3*gOPQOM#iDZ+^6;oh?>PL1|igE4WH0+s;Mhb-Gbf0o9tdqWp!DB@{uorgshPg@5ieNzo2MY?S$} zK_slBIuZaQm8F@frwv45eC#F76t>ECgmTyUy@ZUC$qCtnoA*0IgHeqEJW+l{ezNI3 zj}$=AoH@9rrjyhyK>=A^!qxq|x_R1s!K)WVhp&N{M(%(qDAb^4B9Lb>y(T7E+JlV% z;l6ulp5pEzFowR%I z4x~}Qe~V(%)jV&8OEj_{^V|b}DO9I^$W3B23W2M07uF&%{eRB2@(tWsBbByUbDkyq z;smiYpnD9C1sOLFZA})0ifVL>81poo)YRUULbGDQldz1T*0<3nDjsH*VuHFdyo#Yl zw?P*)=}n~HGV(gAzo0h1Y(@)?!1YE)iYbCqi6N~D0)KV(j%{7(s+Mnxn+uG;C6vAT zVhca-H<1|6&{zgV|C)hfBfNfaB~T1LM^Fr}1PYW@)@qHP(*?;ct^|t=CAO{=Fg9{U zvQ-PImB|GJn(GgYO$bA;SQ)Na5`WUiWg1-;gK9_I7#T=*zZn5Yi}bNUU5Fm;uKEkC zo)6P>729B10t!wXIuiP5j*B7qq{x`u| z9xt*iP0*DFhTCTDQW{kTdw*FnT{iG0@R&v1ErQ_cOoo@QI1{T&hc*d7ASvJVY$hfutLDK9!4$J4536;6msu%>o+tr=@Q7l_0Z`<|{x!W(2M zlC55-LT*;$f*!=Oi0W>oZrMy7@E5Er=$@uodXNl{vb28X%U^qi#(!beO(4j{IN}j( zf!?G7yfA@FnZjd$HUQC>ZJ>}?2$PYm6p;QV*xGf@eSt}NOXyM6Z5QxN7!K6AtbW)}n z7QmP1$K%7HX>MGQi_JoxKhg33@zeq;T!Q zNb^Tne9QN%*C2v^o#G+ev>3BEUUsWHv1cY^YG z97S)-g{0=sSa?+mTR%s45mpOkC(1EeOmilrZJ^;aZc1~@G;U~o5J?F(*W94!Y=_1YV zCiZZO$fK0~zcgS-F5nDU4p#s!i77g*q_9<3(caNbOS+01-C*fPAO2VkeV@n(9~`%$PWNz4mSx`mdb_@2g$3A#eu?%rGJHrm54etp+_bDZj14fAD|py zG31k9kxr0~SD3~0wv^qlwCwD3Am>}lK~-gYW_T@Re+0P)mVMdx zZMy@)x_=Y=Zxg(%3wbSeR#G8(kv0@PjsBKkk@;<~ z)KPo^IwD$&tm4_zJvd7+IrI?s7^}nYT7vayGGCzetK2zu^6)~$WtCk7cv3&9swJSd z+=YmbD9#GW63|&p*%JhECTqoMU`Z$V6>|?$A+^jv5uFiv9Rn0}$8DBbScq*gou;!) z6@NAbDyTX(ASK}B{-XZu7y;>M6|LC?cpW;Tq2liSc6|vH0t%g{E`jQvM$})V8O1a7 z=yVE?7Nh-R-Vu;=baC4Sscw%s$jsv}K|CJvl1EMHkL zTR?zBdk!^hh3Ekc4AP$PB1TwK6ocA0WiKIJ5Or5=Bj$EPdgp}f=RU|FT;Wbm&wt_p z+%$|B$BRsO!G{r_X6h<}44PEpNogUNqqIsb4bjjDNOx}cVcROa^Fz znV>By+ZJIlq4yIyV9QlQxoXgW(zk7ForNE$GO0b4VMNIZ^(Q6%`I%<`;*Y&8$)i9$ zX^NoC>!D!cI&Y)dci}7~4G5-2>3@XIuc9GT5NXbq>6$KU#0-~UI56o!fE|J@_F)W$w&8@nz0p zgBvmPJOQ?Z8ECg(QgPLM4?RI4IY0AqtVD2hr5Y%drD3+XC1Yl*2C-PI5g zkL+x@h`1E4iHRmV3EQ1Tr>t2I+7&}1Krw_~;ySgE{y8hQ)Io5~lfN!^24fW(=H%jn z`k%bJyL+*}yIbDK_Fc7RgMWGsX6YQ&Y2oMIm-_g(NPSD>y$Ewq6})5NEFJ=s4uY}^ z`Oa7osLNsMj+59^h=Y7z=TWcTE&2wL}4}V^0 z_zT_kp?IACepCQr{+-Q$>Z_Iv7J|wq&$E-KlX-FOn}8jqYu_sA5;SUUmWZ4Y`yJsY zDRntWsQPZP^GceGFZtXDtzg~t0Q}dx-nwgW6drJzg=|A&k$?3=IF9;Sg-}qJW{rMC z@=p~_gl=v1ss$91G(q8k;tNn5#4<{Kflc4e!%NN}cUnx+yx(#xUI_+RQBWUaJjAJV zP)mmk`<6|8@CW>4{Pf=HdI^@7Gl$Q{X7ctU;6i4?< zRSPsmR`{)*D}UJL05my4vox?jeX2$=1H@x}A)kL67Adi6A-Bmc;2e90t2!FqdMAod z`lOG8mNb0M$o_U@cFYx(21w0 zD~RY%c|@rf{atVuTt7%eu^61PO0VL^!!BNT(}1w)&wq9z^I@nAwRcOg2Q3gjN$0NYa>Dx;SNb?a0}?NE+UW7UX>bKLG?aVOn}<#-fLR4I%_v4dHzaD*<&+8J5*G;aN{qW~kZ_j3pCXiVa>c zkDR`|3q{?e-quu)UFUA5G^Dc>2V}esqGLF)(;^aPHtnkEf& z12GKg1(ck0IPYpZk{TqS8Q){@{=1;E69lPLUslKaFhT}|X+8nz4H`ITJ1l~xsrCuf4^2w#6exWq1gn z5}q$*RnK2c7}&n;;4P9JPe0dkfSoVm*({x@5$DOv7r_|A#_(V2Xqah|A&Rde!hbd~ z)fb^|< z`gn&{CtF_U)7xt~y~9x4=A<7c0e{qa4iG#7ABvHI#EztYeo8CUbK_qyZSQ+oFPmIG z&XT2Raklvs(%!OL!Jo8M^FPRVLyYV^TZ~4X4sMu>%ktbQ4FV*mZ?bO-OWxHNx~23ri086bF8oWML$IVlqq^G*_o%<2P3>wlv|bSS%R z#bfDl=e5=)6If%iY$10R^I0K|SB74vgSy+|0)1txAp#<7c}5E=W0+>y0HK!3Go6rznV`!Jkb#)^Fe|7IBO((nWvU0m~Cq*1&0d z=XlZVszh2drzrBH$a6R>gzGVIU#m*<;JHhRd-KjM5BvfvyNgxO-{KK&qE9BS)75CR z?O1p+&~HZY%xtAmG3q&giDJt;V0@O=hp?=1_Dk28ql3T5($Shllz$NPqm#Bg%DFid z=^NiJ@NQaYkx!d@?^ zi8rtU-Dd__ufmiMc1rnN8=e)`=&V zDw&n$13%4Ub7@K&RN@MXY+|`>CEtaA#+cb81$so`>JqO)+53={HGN`p3{kOsEP!R4 zFpGWZX%=$RpplDBT7e{4UOl9^+LLWsh?OU=CKX?I_IbA@Du4W7I8?i>!7>=_BN{Ps zD?-5ZRW;56#VLJCo->+>xiOeQRS=0NwWbWsQPX}~I7%clBM(33dz9|`;ovocMOBv@ z#WShqgU(cEcON~yK*+{8GR?M3jh~_BBzB#DgwpwW`A3Dzl`!ggtvrA&bm$(Z~@OQ;QaCh13;Sec*bzi6;rwzhDy` zM*>dQk`DAcbj{lpQEhgl^%|fUgeEE|ZbSbhHfi{D>+Zi>BvRlj_;1iiBg#Z`1wcUQ zJ=AE{6+yuuT3NkulxU8k87y9vtq8;n*RZXju0o`Zp+WGKV=&D!h%O=+=@4HO z%wds2hks^q z5K--z25)0kVrD4<(okBQi8N$XSXqcKU$S0eaE@$r*a&k$QKPN|Fs z0DOqjN#%WfS+Ny76G>B2WJo4B(bWo-dTyKnCx5{>pDr3lR}%vDPV}(FEDZIs4SA{9fkYR*k@H1+tu$^T}Yka zdHgy$kLNf#=_@Lco2&vr3X5$eC!oPUKK-Q@N*2h`a3?^beMt;Jsw+@QCJ@+hu_8sN z+<&Pugoc9VFIp7PJ~(v}1N|f{8E;1-cSU_LY0^-Pa7P-2xk`tBB7rx_9^8TVMCEoT z)fA))I%{?WZwoFPqH#yw4sL%N?3vel86!H7r$}D`@_cL7q~bn<41(Kwe^`5p zMT?wV<+v4M_0$D~pv~>VmoV3EVGX@39DlF)E?5UjO*=0XR{?17+9rR{u~b#<;qulqNm}eFyd9i*SVdMi!WpJPEP5 z{=$(k5f2kox~Td}NSb9lbr9u4nm=aI7&Nln>5U{Nzfj#$`j!xKch&6_w)%!DIe+$7 zFbwnt9?2`I`f2PVlst)}jtT54$gGt_Gq)>G3oT1UZd9vmRei5TASXLs5z^0)mBC1; z5<^h}ZTOY}NH_wekWon>Gg_dN3`{EP@jH)FF+!ie$){`=;`{sm{MGYy1M7g!G zf`lZzD+2AHEZ&qZplQ_1UTp%cd4B{RfgVouF-8QTRM9H3Z;ia7=d4bel`UKNH5Rkm zJPzF$UFMyz?0u*`xpeDjmSR|*KLZJv2u3XkVt^+O=J`;pkB#S`q2?}^&~6O2Z>o+3 zCi0{t-PU1aMYmcfRN>mGRQvlafptGgV6VBzYOw`8Rr9uN!3qAZ_M0gU2Y=~b&W#ea z^l%s9o=1SgUH@3@3!DP}6|5--r_(Y`Ixfc*=@VWiL>BvF~m zpoX>0DVc})^y0E>hvr|GMZ(}JZ{CK8!A6WSSn^5i3nFT;01b6B-Ti9jJw?J2jul1J zf(-ud(M_eVcx3&Han3U4dVk5wVs?(95I9vBs-p=d4)xs^yIKhz>q$H%cEWjzxbBqks}@_n6+CH(wMeJU#7QM{w=NY!wFi|3BL9qU@@cae1y z;67FBo>k&}FdmnLtGNk@ubEEz!{qBybP{LCO@nWwbe2Ny z?P02ACQnoFslOZoiGP>17}SP-x>2oWgOWhvyY;U7C94E(dQtk0(bg+?5Ex1)v0T-` zMf#ZyDQq;aC~pSi=^5x)>!e&B>OGK5#t>kP@m_l#*;!CnUII33ptYHZ-Vd4BuV`*3 zg|>Fejw^+V<~1LeDcm~CKPDJc*)lD^UlZU<|Y`!Xy52E zQUa9md)bmS6yoIEz*0?k6C6MZs-?~6be-n%uCqMI4ph2@^@ipfxIbrUh_Wk4pG1LK zqr4M!->|oUK!4OG9O!3QEtc{y=?eU)erY+iSxmx9SHvIdyv&JsE5*@p3dB_?>A@dl zlVw8@kJR(O^QRWOc6}ixzQ})kf$hkEO>g&!dHF#XI5wA%Fi`!C@(zQPpm(=n-)WFunPtoPXrYq+=;V1j3G^#w~z`C?%*Q zF-guHHZpo`QwUl!I>+mfz_C}00HqChh<)7yOYYolQPcCPLM|G~)eAsOA%aKHLJnDY zR(cfDQkGMd4hi}45O)oI6@@Q^lsq@#7yeA2uv@u=KfauGg$p1k4E!e&Yhj0V4(jtq z`Fkx9w0|2#dD0mP4lxd8vEN)WS`)riR^$f9N1YA$mw~|uYTGg8F42?B{t#sY)QmqU znYkp~Q_48FXhHEe;Mgk_W~KNZ+VPY%M|vKugaUGCDqZ47U8o2`A{H4BFWY%kue->_ z#|(bKf9LTeW~qHhAa&I#p4bS@S=YbK)c_^!;C~8XY>o~X=tQB68~{RGF)H|rfIN~8 zB!s9VKM4APbK;K$ozz^FZpO#yHRujOaI8M=FC?cTX8mMxu}?^IPE1XaFGNRWQjtr? z=uQFg<<3_=(OKP8`^n~T<`>?-Iv*+b@Xps)KZV~du@o`H-_X^?4}sBlzjyJ1eDd zW`4%h&6Z|l;MDxhRt1+&(t($oO5B`i8t6hHG}??!*8v34+F;&6SpiIjMX>QjE`<<6 zQpS{hCMtwjUdh6$O z_-$|nA^otyPH+!N7@5?9JQY-R;f2?{8%MHj6G0wu=e$L7}AmU6D!Z&a~G*8ICl~8Z% zzurzeKfaz ziqm?uAu_xnNPknmBnHU0c;x1Lt_*(pgSK|K204h9eZu!|o9&)l9Z^cC<2&gDC24)z z?cDEF`fxdulP=!Fo=ue$SWWNRyXzOU^N{w5tCP;_#)|gZzNucw2XMi5U%=>6<*b_L zFD@i7c#R*FJIwS|>H20HpfUi?BqF-`Bwj}BP!0M;L4U`tew#%DjKb_6IcPeh(j}GP z?Q_J*ykIoWsn}IF2bao%iafhb9EB)=jr%CnE{z%zUXd3HR)yL|W!DOK@3oZ=D+T>1 zZX!r34z>$g3J6fGE}`8f#eN927jTv^{U(Xhs0CHb+i6DEy1`=otiM~!5uCO;S*&g4 z;N!$PSbvpYV}F)*%xX7RDcS2ZXj0b-!|vZN3xd7?m`7BFu#8;9lf}e@l<_>sphUoN zF^Ht0{51o=FU8{(jigd6SFGLAhgpnOU|O&&tG(FT^)=aLeu-|Y5QBiECcX(W-5d@8 zn36;j0_lSj9@ZpszTgz1Q{hR`5FGZA2Cvfv^M7#^O~H|+$^<0x5JfHU6q}M*sGvVi z2d}v@nBGu{1(D^!lXRh77n#$Do5%Jbs@V@0F!D0Y5W;4P)NvMV38K*mW2pYW3C9cU zPFj@%h)-yD`t}|yzs!9Er|1g3Zsl z>wg_ib1Z*g@Prg8kxWcPHgc`AIHC+`;D(q9K8&kvbQbsIY@Q;`~F>DM{@a{>T|UbRJ+*H1iB4H7aR*+@=x@Gy4dzB zjWpH*EI>FD(%^5R9kyzwsBoXp3ABE|##*4&>rS%!1-6#X23salZvSpe7oTJBR+Vqm zJS1@}uG5$%a`v+h4E0y8DV1IqEf3HP5TIFPnoTT*8_u{o+Z;3)*5A!)6&Y(`1eg;)*-4l(n+LIe#J6@>!*y z^B000+}UlDV&ticT2f(uMrcgG; zEwNd7U?;_pVrtzsgA3v0M9C6X9G~BUz^O@YV$5{q^68O>r+s^WH^70>xBg?^3v7@r zY^-AGZTPZ9fTc4~W!Jot0C+NrBrz}m?*7A9KL_I!Vh#JN;7hrXp;t)KY{Vc zTc~yzDA^O1Ya8^ku6zX7>7v}-ZK0_!$sjeM^%s6K@K`CGMd(oPtga-?B((TfFUa6%<&LWY!V)X zoTk`S>%k5!FfhZtT}1R*rfV7-GR_QzK~Y4KTc;Fa$)4YhDF*U^fNeZV9he)94KumzeIYGJd3j{(Az=Wk{7zqxdPkuU#>GWaglXRjS zp?^?rr>J~=Uia~Siz9To`AQ>sKAZ*gl_XAhsM)MyUY$#B(g_oX+ zDVpc$$JYprAWy7`Mr$y44>d_O9j~s%gHPFma<{EEP?4GEQeIKG0i}glE-kBV?zm=+ zQzE8(Sx!q1-o#;}S2sp^j<;_iVA{{#-hZPJ)6B#~WM+0qDT-n$cPZ0Z@{7d@nKi*rCi7(d(b9T=R% z`^K?{A^S15GU7riK#8Q%*2BPd=YPN7H|JWbs#aC0BqXrF&>e4(>aiYk&G-B!VSi&| zhcN_80{We{jw>pS<}l1meL=E-mj^UVqtTPo7xmxn zs=%Syz2L5LFI0SJ)s0jhvpW>rU#$TiBo!V~s$~lI^cZ5{ZCTGGDcQHLNgxMo|5I1a z=e%rud!d`n&C2RH_QcL-GL&DHtAE|iFn+#vb_cNq7?2t{G}o3nX2^BgE;OhdGc(3i zW+FZ>TPMTg@s6KW>yhpevV06AGEZ=E>WDda1vOY|>T8vnZdb~KMHYc)_G6%6u(%D* zwBqN}04^&j%L0Kd$2?p$nRl+gJ_q@yVL0E(@&7diIDiE--zDKH%LyE7Fn{Sf;&%gs z^jE3$glFh@r3aGczHmb34{EJzGJa=lq)CHBU`vqi-#Khn7#trBP&E%sqBC$!c%ZDZ zAX5AUJykkwLd(FftYY5Z@I_^6-Zyp=M?&Ntq1L?P=g8CJO-YOpks~aO0JobK*2XI$ zOQSAN(WbHs#1d(?)6qo|t$#{ouXMyoi)>4JaB{oV&D;xfd2Z3|2-$31>G-m>CKS+~ zYT){HLl+}u=z(ty#7?8bm-YOo;j}j~$^wQd9KUmjAa% zbx(a{$ORS;vGD1TQsrA*xSacAfrX<)_y*VP$*ymPEwE;bdOhwAgF|`%;uGa<2lo6U z>M4jv5t5IX4gfs}$rf;opveSlQ|P)v8Ule!q2;wv)s!+m@JEQa|3x5%I=n6>8xT2U zbb!GlW3rdfRp%TiK7RlR8U+H#!8Ag?OKwa*T^`b!I6T#NS4Y#614M1ne>V8?CxHYV zqK8hpmRzzG@OOk~GK8Kcga1%8M|t&oL!9`e-K)kF>hPhUdU1>>w(*;1F=FF;c2POgG?uovTwpYX9- zC`;tnM3?VRuYb?JzQ+^PU8Y{!xUI;yK>ossL{h73tt$4O=`{AH7oqQ~YjtiKgOcO1 zE?DuDbcgiWGE6*>UVZoxjOmER+Vnb);qYX%Kwn^t+*9`95SAu~gG{9hmf|>=nRu;# zC8fw)LI27O>Nw_{mTBH=p6!vu#`TZAtcv%zvNJE!;eP?ro^FCLrN5f_l|9FvD0#q2 zn1D2ut9Yx&u`FR={HIt(Ce+B}>jeW^)%hluRN|G5Bi&{eEH#KcBXoy+A+P#v9&zxf zKI#vyf5boN1Bi@xg=8^dN(d8)79ot@=o0G3B03-Q%SK(KLl59pN5>8Vfl=>ZK4z~A z7m;xVNq;WKM0&`cb}xU^Xa9_h`A;~xZ_9c_D<6ie(D#xRJ zDSt~^?t^87y^HY5#Fk1%m%4+)lO#{%F2@)8UMm@R^r(A5RJb9!Rbw753(_@J@sm}5 z>bwD&{@5xc+j6Cl14@kzPq6te!ppvg-e-}W$$#=bCF;s2BQeMNA?_4a3{RyNX|NS> zrr25NQ)d)jd@`ewINdeXYTn;rYMUhJC#$6RV5~2h@Ju}!hp=f z>3@NoGTR@HNvxR4k(6pIE4yDK*-4jy)}%FIxVbKb_?^(BsKBB%>(wcp6Ak2%7@5_6 zsin3iD)W#J{3CiZ#rWU<>mKW#hYKy;1oG(DG7wM?6}Tx*T0F>(N(YeM79F}g(u_QH zGe(yB%e^*^Q`^)@&mM!NQagy&hCTzd$r0!52)z!i zB>onUdg$r2g~k0}|L^}Ym-|*l-Hb$S0No6^5x02qbAd308MFU@>+1!U=Xg&nQw@$S zvGY9H<5$F{;=!$23(B$=n1tTIS&;oGbFdTYSdPQ9h=lTA#wfVMQRYdP;|b2;#D77X z=56I%OIu8=N&~Tatd2`fyrNM#Wuw^Y`8pN_u~vJ(j~nbT(hIK|ue+0eI4oB;p89x0 zo(f1RMRpDgSXlqVlzmecz={=kHt_FTehmg5d{VXAj@4KZa`a*iF~@h6PXi_V+2tyj zb*Yn?_+MI8`^V#VKgm?A+WS8NKhjBMKa;r?>(U!S#q5lrOYgre0mOX6t@_JRqD!YJ zCTr1eoMMsq$VGSeSyd^RgO8^&2*pt1{n+v`dLR%k+U`8JLqeQ!zYARmy?=RlIxf(O z(q3dU2zccHk{|Cj%S25)Z;YHX9&$?06Iv2Yba^BZArGGe?=A0iv1qi+`FVh1`Ma9UC1Zr&9K_g z<|qF(>qH~Xszfd)2PF{^Zs4#d)u3o^rv{|Up#Uo|^2T<#Qga020e?+XyTr_gc_f@6 z!^(}_=1}etXOJE^Bu4viw$!m+bo($w;n_s4HuX#Jld zUYHVnxbj(8iC0L$Ht_$Mp-P4pPtQ=VIB`{hV`)>sE5pubRyjy6>ud>BL4f1G>U#Ku zp{53CG|Tv@JNigNCV!U_qhHxZc%zZGT6SntH#6E*N>a(iYem;hAF0?=X$~Qw)JxzI zE$G2GC!CuU#`6T6DCw!nuET~5q4D&F=OJ1xoQIwGLQVV0C>)GIGJQ~B<^bUUkY0HR zByC7DG&(^I#0T?M2-0|JsP|Z-65M%mr5z#GkDNIfk9L;utADm9m)^rjTm12l0F_eJ z27}#0M$Kf8Y=b@IkaLl_o4%~j$ECt7s@#3FrKpgLeAMn?qLkTNJd)?f`LoJT6J=BI zKMv5?af$RaOET1J#hG9Qs-lZP{f0+x3S9~Q`!-(%y89j+%lV~1UT9K+Pq-+gEK;Fd z8Pq`TtVI>yKYwucSgYe5)cex1sarTjA zA$fnTT;>&wmS2@pz(f`mY*L0x{hEE$#sW;XfDm)j$-K)WkF~M_nvW}tJlh6ZNP|ZJ z!~|&?25Q0(ek1I`I_O-{8;dX!+R;F!lg+W=v=Rm`LVqJ0BxR$47;p?oa`tw_%qc#p z8L|PiQ3+q3yg~xx%f`to^928LI*}ocanj-XI~#@Qk?Xr)Um_YG56)g0M1U7eb7p6o z3&1B()u5t@=4;&^{kQOB+9_?xRWGCdt9QQ~9lvbg7ds712t%jZ!4@h^(WF6Af7vjv zg3`ipj(^stu<<-+$|b-Vf!nV~8%;!n;$$4EA+F6keWf?^Wkc36ukgZ37B|1o%rbV* zY`sIC?9udkk?4~L68*MGRIS5<0%^Hkgj(e=d*G$_oR=c5v-U)qLy`AQAS8xBErc+a zfPhMfpHz!(iA|ftCR%iTOJL?0;ny;{tv|@j2AV;v znZa-jOSe2QRMmNwHn^DG(6Wsm#b1Mrf?5@t;j{eXWqnY^o0u{OTN|wn|7MSUakl;? zH-8X|nZ2k_{E{AzFYgCO!x4DW(K&MxENy8RMYA8&adp3kSiKUTpposDB)O)(PbhpDDOsu!!$1qZM#*QVL`z_TW~CcfxX7j(1{M`JwL{8 zu+3Tn3DS&*fL|5=fPGm#iv+-1PGjcg@P8`rWnCsnywDs0}Am+WE|jKOzqYc(%Ls%jNl_K z>BGlCt9OjZBV^@p!YV_5oI4zM66k`94_w|p&@Q4J58j8Uy675gybbEEkju=i$VF>Udw-0Z0pSs@zVk?%5?d-x-atBOZ8SBR=9vEj0%&dg zlqT|ksL2wPjYo*&Z*maK;*CL6j&MQt$QmTM08T)$zbeZ?us1zEz9;)uP1lq&YYrgT zO^S6aMOR#mA0x@+M*ShG3Um{L=wE_E4#qFf`_n5W+ha(ESs1JnpuP)LWPm@q60Zp+09$__b&((e z0}qD!$&_43^07?r8u?qpUNvsKP41m3Wo8E}%CmHqqdJ?zQ`t;uov3oJDlQ_HA2k@p zy2i!=z`mG}8?6Wlhtmv!jl(3)&J-exYMhpWFf4|m1gNhnTj~>F?|q8JpebckLlw~!iK`l7D@`U=JWOS zldjl9GpV$Sb@s!{5185!FzkHxXqjiRYFdhlo6=bU@$El!9UU6Y#}$8m*(2R_lbb{*&(ESV($zL!eg4xVJ|EslJ%O@3Ud3X)4{aV;I&8nc;9iCZ5 zvYB;tv-X_^`5jB5T)&*N?zfRbxgO{Cd4-S5>cq%np?_3V;6!^$a%Oz?o3>D9D}(TA z8~|}G*VK0{8Tj)GW^jLd%e9}2b*$rp?e0{>LvDV-w2a}-kl60doL1`1oygRR-4QBl zR@hLtMP>WFo)8+6b$y1omZvk9NIyT@{!P*)3LQ(=FR+chRbz~uKYn_6*=5$yNF-D? zr-IK~8GdxpV3QPLXSHWX;AeHDO&rwIA(ERDgm=uy*5U9(eD5%Pt`LpoYQZd;405hNb>P6HRNOme% zNJsngK(pLKy3h4%T7a2ay7!j#f#e6Q>hxAc&qb>IL|ssNh%yAuD_6$v3r68c-o#Kc zFZYFp*B5&Q@V(6@VWjJkAo)KIXogVS6^wGjMY7AqVFwVYUzKMOasas0 zk`~Qm;qKWP9%8T4if&vj)3Z;_#a+`pu8M$Uu9kn={e5? z<#yP=;z$ZZ1+4+}>OAa?>=pIxKI-EksF@w%X|$XCyid z0D3rKn$BCKX>>Z0FV7SRQ@F3}gqgn_2XcLN^QD&mB;vQ^yx|0i!>K%8$!oWz|1yCQ z8oz%DISNP*I1$K)O}=eyhe_rjeAi{&W|{nF@DAgS4tm|8EhP}36uee?d|S{g0nAVs zWr4lG_c_#njYY_jL;hB%u?oxS7b7@J#o}Pvw`+Av4QAo5fOTSD>L2G@^drrk^5qVt zKiJ#mJX-3Whh4L|IPp#Mo^qU74OPf7FMFgsdUq?R*Xx<*lkntqij)q2BD&99L|`5}Ql^!%$$gv+ zIYDThbtKMVbu7nN-jRM#5Q%@;Y7K~%2-Ib8NO-f85$8D*mcu+6h>y;x3|G$q55Zfm zP%U}ermog8tGN`tL)aqsHAt>PpBJ4gwh-tB*hS2VWr={8?5W2chl>=Vm*HV-*aL?L zV0MA>>~pWQ4{^S{@_Y*G^^*%^OT8h<_TwKvPm9}ZPr_xvn5eWls0b*PV$C?Vbf~9N{89sf$Q9^2Z!`L3%Gx^UXz#A3D?U#1-w7SsP&nS$mrlPqu2GQK{&~85IX?o0Kw@4 z5qZHkrt}M?wW?1LVWog4FTvDO!}refGM43ndYvu>Hd{yIPbbF|W@tbw!|_~*>>jA+z0>0wSjA&`1!Z&KAiSP zRaTrm?QG*^#ar>oEHR_;s&rQK996ncsK;%a_HKKC^LQR`ymBUsJSas}ypg9+diOi+R= z42-0ayv=qWO}8+HM+ufI{)H~9?R5YY`K2|G8~G3Hpc*f#Uj?t^y80C^fXPOh3!48O z0Cu@h%3G$M5<?YI-Yl634k?|9je4_bpx+@3NW zUSWLG0B&W&vM10k?xJqDHPoA`;Ipl4Japm#lemQ_rA{&j@9mXv45gsr(g$tjW*Wk2tHuqNu_ zQhR?0Ru`{HSKF-I{AhZI$Wg1OtCd}5iMog)gqpJ}&X4Aa$?TTBZ&kyZsUof+|9@Vg zjwPgyCT|(ts>r))ba#x(_nH+{et;U9GZTN2Q<5&$a*DWfPRw~EohU7$5Akx9o>iQD zNlNty|GEsgiWC+mRGIvW23IN_W)kT9-Z=zR4ro=qrIzW9c@1kW_8wIv4>@f<6=zNO zdPft%OkG-F)edSdpjBsVGVqGOL&6)kwTv^+0Pz;`h=6P?tZ0kXx(N3e#-7~nD}a9s z@O3i;A8_Ip74*z$pec%EB55E}oRh{w=ak#by^ETT>H?`I=^SDT33dMStF6VF) zA^%J~7;I7zwY#TXR4)(Xu~ej@lZ=0)dTCc`eM_c0y5z346D}CtEZY92IWODjYAeE)y0!*I-Y48lhTQq`}l7D*dL+i?YfATv%g&@LtLGIM3XANq1ZrD0) z=0-X`d{j)90VLLPq=;ZA0)){FLZgrhab zG_QCnd4|TYc}X*dX5CvgeOPkj2kfNC>4-+fzK~{|DfkzM@?yb!jBdmOHwN2*=7e9R zUrC?9A3zMzFk*<(Aoo)6Gr`|r!$&muyn?D@I+$>w2d?rz%L~kM4kDa+>;ld=&snl- zhBOVEFw_iSqIiEgfNm%??a0obxv&lJl6_QQ%v#w3;`8`tIR0bC1AN_P0fi315tYB= zUnn|05T3_VUzRYzuBqJ_pJQT`VsE%H{yfQl_~XQXsn1|xPsTNMxHT9#`K7mmx=L85 z0tJ+pTS0|orqmntDe*7PyFd`jofinWfv~1}u(OS`y%m2nw+*+`vu!x8%6###z@5Am z>~0IQP&Ng`pMSBzhiHCttLFJll+D+Oeb|EmP4l??s#Hzq&JEh=`-4Ct(v;4bW1JT2 zh3Z)meLLEgXJ&`J{^7H|sz&rj-F~-+C@@IR6HhK!&?w?jc|FE9uF^CpA+{nd5MC>x zIwNJEwXuJCDlKMg{RPw=lVDIZfZC=>HZXv6c*>*;jeH2;@d5f}QR=0YMZDK)ivWbm z_p)1bx*~o2hQ&SsT}Kc+$N@?eNl63L--8^emIJpg2r}La%7B&TKa|;x6}Gj1_Cz*W z=Tb%v+%+ctxC&%zv3_KZ(|KCT22_!0PXIPezs!GRp;D4A>m=VeMdd3|v(OJQ>is@$ z7=@+b-ck;L`M6o(D88%n+O0sPv7sVFGkYi^rlKNYpk&R0BZ3(km`nPQ#i*m>$S5vt zN^H4_z6hFPa2LRagsul~2jcu}v5D*1coIH6x@_czsLNie;wu0+A}uK63JK~k@p1EP zq{DyN`N=XHpQ^6!n+75mjA9tq-XnRk`Qxk8Z?TM2K*h@;Yl>1&jibSUg%NI+nad;K z!OrxRfp=iDnis-P#IDr|CTeSt+6(jOvd5@GB4%%N0c~BkN8iOFO7$ARk0-G_ta%aV zlKENgWxcB9sx{nXiz(pO0##YaF`Xi9#PNR&WjYFX>rym%r*pf@6Hdg1NpT}tr}fMI zdHkrdBvJKbv}6Y!u7rkwKsRLm#_wD-3F#1eKk@q}OKYx5q2ou<#DyL#Q);CHCtq8jm2{3<@ z)T!;9mBunt%40TybUp4kU=Mdc{F-=xY0wOA2uen`aIm7_KZ73*AcYX-Eg}jTvE^-; z6dbkL^UVuptCTB3t55igcRFre6{xSm=yIf6MBCuaJ^Nn1@Gfel{n%xv&nT01ynAtdI8Q>HfF8J4HeXb^MSFUeNRAvVjZ+ zWQ?L#%LI7)ASbxAkWUG7qljy`LtDuCyggk~TU|fx?n$onbb;dv?d~-aEIKPp1@DJ& za;)lDypxCR9v0Y)S-#KHTOqJDt?t-n?Uu2MGKt-Z;hLpSFB}dLZxnxjtlG`+#=2bK zBKqXmX45FIm~B-o;KC`Gn0q@+OE{3v;Kt9K;yZmt4&T2s-F(W!56>#15693|@EoIJ z(SX)AZ~k^>oN>lY?1wF#mV7?x_sqz=J#qW-36j7y4B*>`E*;>p`ISTR zF$-9bReTd&I@XE0n-%Cuhf>Ew>yX}MAf{Wc3s-<5;inU}G`fE&vYVk3qB0s{WbAKv z9tsY9C%#aRKq82X@e!rz0?`ho+Z)u%8nVWbEv^~ih@OtRC}Kf^_;eudZFE$cTy3r; zQFAIjFT1`c?x9OZu{|OL4cxgac2bx9pQi-sAX(UVMU_BhNBh z&xNW;#<`(|I+GPTj(=j+`kh#)r@oi}b`G7Ps5`Vy6+AqV`fRZ^fL1^(3+797m|Zi9 z30i<0ozW;BEu$CkiFbmqo>iPc>)n`{YK9PiI#-uivb&fLmr#?x*SGHMYd)`Vn!Zhi z?j;3{h24MFVK zBJi+vY|$>vVPxiYkpd@G`1X!e{cbL4E#u*pS@|1b%T?OFf~3E7l!?1L6)mK{@r~@9 z^bYRMUiw+8p4k4z_fn2FynzG%)UM^htisb{SSo)NB9b1Sn(QP_CGt?2Fri#D3wUc5 zbA@;6sFb_1f@FP|tDDx{*vAT&_qC0VnF6RN>3l88eAm|q(_zEe?y!fuP9UTwl+BpYgL|;(A=x=9#V)ZP+(1>gOW|#MpFq^L`oV@HVz4} z4Q8MTgp?-s$Q=`)ZzP{9s)m0UGsZ(zK7@?PBL{bizi9UBpZ@nLTn!&WIRR45W;uFZ zyVV}VIrr#sg|i7s;wX@n5EqtS6QT(_g+G5Z^GPaOsQ-LM>{be7&yh}IKSju-6F>(V zvmnWq)A_qv00bd#%)?uN+k!L}0(_|2YrO(plNfzX96S$lH>heWeWu{qjIRO-`Y62a##7?9MeRS9;tKMT zw}<|II3lU$3p@V3YrNx6D?Agw$i8y7OPTe%@DFTu_OOowKooRg6Y(y=D#NbMcJ)*p z;BHP0SYS)G?-H+mT4Br-bWI0>3~p;$X7U1J2hSHgBBeLJ|FlzU4;ro zDZ6H?9R>M1ho|R?IrGe0i;UVKc3e$jc#@HIh4brf;=9C+*oDa}qZB40uY`yP1S;J@ z^xtPjXh|eJRF^?#Q#tseCDD~y1A~4iIUy?lTA)M3Y?^E66u_+j$lQO4HetZw{I0ceKA8;1FB*+Ar1Vcu>Ofj<96&%#qQ4w9 zj7PRH8AVY8iT(qU%Fb0&TI z_pdPr&!q(W{>U`6hE|_T6(GqDyg|<jyh6aB~Lgj8MV^0B8 zLV6FPQ{08~fn$IOgaCl^xSG>xPf=@wzLVC5shpQ{b`tSh4nqs(w}>SxLk)X?nsw(J zHM*qB4)C)0P0F~2_`Ze!SqC-{5y<0f~$FmY%lgz3_G8J=7QI5r9&Z- z-q>Z{p(ZKf`&^dSLWX|^=W5QrPgs^PZJL&6E2ONAyG53}I~7LZJ}7TU`~rX(OOMM^ z{o<`cFbePR82e#bgKpSxV}VGj2fw&1Q!17x)3Y;d>r(ti!cg9R+3ozI5FE4EOp)2J zzHDZ<%2U3NGkJ=VTE-4>-e*bSg8c!r@wWDex$H$(CLkL`N*8}{A(|RF4kk@%Y$siC z5}FO> zR)n&TsmMg9fc-u_1tNBtwSh`6mLWpd(q@;^odV5_KtB#;9GlvQNdkXHb7$ug{|zsL z*WF1!90sEpO)`I>j)XvZN03_N8_d;cv=v;%Q&Tg**Rywo#IZf9%rYEY^^X}y#XJX( zcb4KY9EVR^j)v})CA#~lLST?W*b3mr$pdjXQU|iUss0p_M-^54eHK+PJ%W_88uIwZ zH$om&?UqR%a=ht*gq6{W&S26gZh3)pSngDkjo>}s$kKm5_NAC-VQ}eB;W7pj2FC+$ zM#HT0B9R=N$D{7QDYMxeBFnYGb*0Q=jP%Xu?|jg%D*wszT)mQoHRe^5i!L+{9@Rk% zC~s(!7v0X}9GQP{=5@g-)qWT+>Kj3t6WII&BbOKQNntRE&akfl-5&^q{!%oe^H_pH z?vTf7w<>=*dVUHad?pGyD(FLa=T80cToiI1_Sm;MA&~P3?b9bhA<65$3VkfYyzdl! zRCqK!`uGD-o&`KRbDozwoOr{xqE|hw$XA-+?vRj3Du+KJ3NR_kY zx8ehb#|I55Gdg^-DA)XoW9XrJZFI%^^85d3eQ6>}tOu&5cl#-5T&hin1t zPHs2F>KQmq9I2gg2AEV+O?`>%!i`S%$BhS}FFQYK$JvrS_#117wb@mpjCPA2of; zC7pp*#kX>>GLB{4E62;Drk|$gnRiGHf~~YgBzq^B9Lj^b;Yxh>aKS=tFn|ukK1TmA zNHOnbvk%A^X$@+Z@Wg@Sje!j-jpiW!2MT}Nk}((yJEbr;r7X#!;M^a9^k{bu4bZjU zP4#(1<4A)KcMc_mQbjudCfNR2PNl{eYwv6;U&tkdoaIi0di!vtVT(^9;L6eWDyaXe zvRqRu5f6f&B}RrBLRg-|&zp^bBLseNaZ$fOL%)l&dOSL75a(pvxQI@+fhjg_7$kp* zZARl8eROz4;nG>uz@xTR=x&>7)LByXA9kJyBq3hj8t8+iX#_R3)YpunFU7F!vy$$} zr38H6B2SNUX~aH%a%5_OlSrx_Z6CKo>}1G(;^LRI6BD8V|zZar~is8TCvQ zw;(PB4UQ37@hU{p{FU8V1et>O4?%wJ65!sRNoXH$zGyp zS)xf3V3d=XLMW)cK~(z~ITUsGSv@t%;5!-1att%|yi!`bfBM^Ag)l_e8gS6sllc2? z51}Jty-EI*K_;Z0p3~^z@09D2U5lhAY1zih*(tr@Qfnj^%2V1)b7b>DQ_X+SIba%Z zF^ST%h8G%w%F>;dhPr_PVNvZ33^&Atqzfu3m$|-6F*9^A!n)-UFP(ZNDB1T&{ywgv zsQ@-GPPOgrp^I(Rtq@6F;#(&SYfwXGoH7$+$(+wfp_gvbFujNDRg~4ZAgS2A50csv zVA{mUGfzCgIRujK+BL+}k(YnV933KQBYT{gab#zFg5Izk2jYZFS&uB)JtC4P6-wH^ zCnc0f>_%!QUv&dWb|A%#B*cNLaM+m8kDeiHjm%5=t;c0tLc*Nx0i<{xW1rbPTo{Cm zM7k}}M$Hmj37zFwBnU0(-wr)0L}Z6#HbGJQ**VfR%nK#o(dM}3h%bNlSPA5(Nt`2O zWWDhZ$!e2X?32r7m$NmPq86TFn|bZH2UV@XC#f3wWF#}55{^2(Xl#^XoC8AQW#zVM zec^Lk?gb{K-~JagV>T8WBZ`KsH9bCK;@%;ZP7E+I?M2dXw_NI;J(F&Wb)J#{7_}q1 z7L-&JLqK*Gi-`XR9GZV^SZd>Q9@)r^2R!+3Qx(V@$PmdXmWlj~Oj)H{(@ zg>b_%OY%QDT61MS8GNAH<|pHfVsS0f5;3+(FrE&FvGiJ__2~_(BztHnv1P_w%8?G! z$!Pb8Gd-(F%-9bOj*hs6XsNFGmaPrR%ZWy;!O0uC4c#SPebbD<3Z*Mol`ai>2;0<>z~O3HG*k~2t(hnNIaL?jKp z?H!6oqW5@90S%jEaF(Pnr(K3&okvNAI>N{CU|SN-%v#8S^$r~e28Rfr0z+BXjM_e~ zC5NGD16Myg=q-OmtNP?pQoVOJ;`3Pr&UUZ-<*)&Y-$bW_S1!Z7 zTypOse%17H=R$!G%WVsiQIgz)zZFTOdriN1bD`x{bL)Y;uNoN%U0%?Snp8HTa2v&kQoi^biqOQ&i){%?Qp-v4s+=C?P0ee?72(P{<6m{kt#SygPsk(%|*&D(qKCj@!hcm$^+%GiNb zp?JaL;EY{BrPf#+Q|e4QMfLm?*P%@)3eAk0(lkglmeu#3GHmW9&Kd}_4&|}KU9q_@2^4vEBMb3Zmf$EK)Bk(J3U!Ne?moy&dFj^N9 zVX0`j$r13UzML%kCby)ylpSu4r2;znyWt#j3t&E#?!j_fyT)gtxs+SgZU9-=rH{Lp z0Ilf;eUuD$h)_Drary3HPFef*)_>Qpn^}k_5oG0n=^A-M-I0HZU;5iy>PP-kdzt|) zH^qM?@gh`KUqC>oJJK3W=vqVG8>jr3S5JD?p$TO5C zU@7Mn3yiIc+Xyg|uYZg!kZg74NkvE4Am7Pjj0n+3&MF411l1Y%` z*GGh^sm>!%jxShN-r3K11skKd*CYFQA%n<^0Ho5aB@dCM<-qR^A9>>Y*cPQT;M;$F zmRioWrL*beZj#wFXHVQ&Y4x;1JxMVnkWnfnZzdOUr?G5*x02$VQ*s=3M+G!m_tc2gnE051b?RTaN6SUCG zwWv+UOrUM4tOaS?*(L^-&f&B>lJq_n4QLW@LN}=;w4~#PoBB=@X;UYuShRb)IImz| zQ-N%keug{-KCS=l8oQ%%S$=<>JWlQJ!kn^P5I!(Uv4irAQjm>-v{l3<&3Axn3rR29_Wd^2K1dY$`tlLYNpqXkj+Xyb6Yp0r>Ms2UuI9XWv|7tQX>Jd<bJ1D>m6crkn`t%}y z3B?%;_P5YYgElZRbg~1d=v6gON6K#*rW8rZz5~idjXEwEJX)abKL*D!aL^d?ta@PU zI<;O@ihCs{lJkJ`MWrf&N`5;qO@u=kIb^(Z`gEcpTq@|&fUu@P9nia^Cj`AxF8C_? z0v$I>@7IrWa?F1|iQ}1Je~cLCKmVVk3`c+alKX_8Z&>wFJtW@q>@zkz-HVPWqwgr@ zUot(aJu-EFV(wWsbgxwv1sw>pIkdd5YV3d%SzzS4GaN?c7&Wte6=O6zlb;*s=dZ5= z>7X+a(nUOG1Gt< zwpBrl!yON*n}Lu6EZYl2sLtCNXxpHjL+ry5sJe)!K&1gS z*oQGpVY-k>6+~!JxJY8MgLrgn@bmlQH!oD*Gxh&?8B?*L?J@gGU{we=4|9@yo(Lrj znDv1Tg}0@QOl>j+GQ?-Ioei`3On3a(?zoE}oKIm3FdCD$y~>U7Mw8)P=5<-w<#Vq! z=1zals}ca9-%Fm5rO&dozuStskXx zG9FoNTwgVBPkgvr(kOp?F?@`LRPGY&9=d-GvzmIWi_ER{wFP}#N@$nmG-po&Z}UzA zKg#P1{M4BmLO_uu_IiuN%lPBZtDs@1B^l@IvVhb2bht{dEGiF{1Ubanb{*nhh4TT7 zkefwvCKbw+h`%P?`oIwdRUByxLvT)eF`Tr~r74-xn@&R5s&Z^_E~4IP4mwPymRf&f z%UrU`j=Riumn&3>(pRN=>}kzPM%Ut%vzxjvzw3n=^EdS(G`mBzsfYQ&0zy~T`N<)LtjlyG3<#eq174XeFI zK)8a7=sXZJjSCWS-dp4Igas@JH5`AL-cnE}ar=x93#TLUr{qqJ^+7Da<}zgcYxc~p zGg)FY zX|r1B>_`t)aG3V zY4V7&qenDEKVg9q<08Nby9KZ?NkvjvN(|f# zLzfD$y7bsE@due#;b4j*54?Xl>1mu2UcjCsGvJg|*)oTdGO&i!C)K*J4En7IujKRa z3>HEPlT6jWEA`N-pcAyj&s{>Qq7{I^onI*9f(MlTM|Qopu4W4Y%4?a6hCN5dl^?e3_JQGv41?0U!MfsMjWcPg-myN_S+J;FUchv)|{Xs6%l(SZFsiGCl~<*~KR z|2EgjHTAPmIK-J5*H6&&aRB_>Uaht9AE&1~_XlVN$+rI{?R3D4YqO7a^c^n0|EWi z{U8Bpr!%23+4x_^at6dp3F;aX@El|>3#Oc1Ut%5qASHND#{z#ODoxh@k3JDcMq6s> z-^n?Yj?85fFo9h}??CqG6ipRUB{mK`4E)sFd^xm$XqCx$YS$9B#3GgiS+|ADg$tw$ z3KoT#TOq^3nxA1Y{n_QDtk&qQ!gTOkTDVsg1Sr4<*KPPhblzspnu1(!(NDk9lIzJ> zV9;-=Yt&9K?KvkTC#I2NS3!g`l4pkf1s@FwPAY36xjQXMSK|~ms^d!s3 zceZx6(9>7`+a-u7G%3Dr2LFQcu!~N>_%9d|H=jyPFM{`l`hXcZWT$Ete4~&`C$K#$ zl!GEu9g+&3Or*Wjc~TD!qtg&PlL}pP-b0*Kd>!##$5?-D7I1{Ss%1Z~3HX5BS{S+5pc)K3xqZ&=OZ*Xp+AC97?6u^PemP$$EdY- z_9pjOpk0Nsrz0p`$X%gMs3H<11{DaZ9fX;UVspfhYW3hfZW>*5jdGkFev;nA%Tv|D zo_oY9bdZ1IDUV`*m>s5w^}IfJz@e$$Vuo%NE3z4S)G-k;oQJRoIFLX@H*FUt?T@Ak zA8!1TV!U{IvuN<5(Gj#VH!Idp3@uNK2@{XD>rN?bGy-U1^gtogFgV~r6LkQqE4)D8 z%Te-UbdE_YiElALB4^iS13V4VeF=j|90$^pY}h)t;&HRLevQ(+g*(b$pY2uP9tnp~HwN-~6Yi!ptDZG; zm(IEtp<=P@OScY_YO)j+?8b0nh28Ii13kqtv-|4eO_jV zE0Gp)Ku%!5Lj8?fz-xXCIneDhHBTln9ch1Bw}@iCp-A^~ZuO$0e0RL+&z@93864ZT zc6xXd<=|3$;a5p_N!Q#pW!7nn4b!qEOI^-?t}ghXCZX}ov{5K`dm6oZ3~kI^T%4dp zQBz>*QqLmbQqT)eq8>7>ndy&0KviklxDF8@=mtWwC>HE^Bwr7bL-RqdrFuf?uR4Fa zn=~Li*+`r%1=}(BSR@n@RlFcs4XI)vQ6)(Lc~#129%ijH+o*nthFgzzcC7Cz z`{fnBgxX-g)Q7|2A<31s%(YInpqEV7;=7=Kb(rS2^&7I-gRD|W z53RXP3WhHm;8E_lI%`VBL%z|N8;n)e^ojoy=uz~D(_QV^*BLdA7p*M9yB~kd$Ct2R z^Rgu=drbIJ!4w@q%e%8~fjcDYo>gSqTtn7X2rp7DR+d7-d1`0K#JOZ$hw+=f7{S~$ zt4^EJB--l~gsCjFEC;&*5$Cg;>$gc1k2Lo>qNXtYL2n=4q$m{g67eN*7dqA!1QrVlJ5BJvMN zJl$g0P1v6qK`76ZV=joZ0Ecps!0yyDPp=IpbzF&maj|zO77%J?$|6Ypr`)9eQ0KGSUnA8<=Zj>T$zITrjP<$ zI^bE*HKdj(BnuMDP>0jW)x?vbI-O~Tp_mJ8@xdVrZ-*@ZgB1gO?PpJShbl~c#}95H4) zf&yiGRmXp3-)`=RST18Ij+z0R^VwpfOE)-kaEb?=J2R|5q9u_%XIVXQqaSysa;!Gq zfcAQSIZ9R{^}wtuxq-qTp2UraxBNbC7<+ZzF6_^r`DfVEHh(ak8L4dB$=coZRuS|O z_fHU$MHQlTJKJpJtQjp?Q^+Cbw@52*4PY-b*V}(#&%@I^G+|>jempym0L#_`Bvuc1 zw($qb8vwna#f2nH&u@H0gCOrA-emqX_8O&6tpSqBZQ@iiTI(VoqZV><5uxhAk6EL@ zam><8SRayE;k`Mt!BsAAK=Uu_^Y%{qV$282O+2Fk{_E)8`j5N5le%BT*vc5uzQ2K% z((-?MXlV~_oO$?@R2rlhRE~zP#i6nX*UifFEo8VBFIrjt3zc7Y)^w$PF~s*d@otwh zVJI@3>@?Q6KK%Lf3hABZQsxMLV1sc>E#;ibGNx2^lnKk(dwE8`2CwqZ;{2I}ObSjN z?ev29554{Y=Yo}5*`5%|o$vIJR)5CRPq%-&xX3wA-|sCL&kcWkKjJN&^^PW~ru@`1 z&wXYhnIWbW3YpIOYVOUQUB5xCM_tEI2q2Biq0W%*jADNTwEgsLXD&;iHYMxFL9Gig z9v0S!mywQVmG=T66}&K;ipxYZu4o}nl|`ce;i3SC?GQGtbS)__zol~;ec z@}XkoX?DcGWj??842{Y*KS%AAeBq$xTN@}K2WRU=?_#Jyho}j2QE`i2mTk#f3i011Ip%5w1;X51Gyj-U)z&- zTPsxCXqyB?HW*?!!mOz<78v6hhKu>=o=ndJd z_^jw!Vv%YlXiG#Kgek>bhofQIKT%-owAQ8}aOVsoZz-)TA=~O-{a}Dkz`X=ONNUf4 zl43uvnfg_Lfh+)t!e=Y%`py)&xH=TR<%qZ}wav{s=2QD(ON3t}quB~BUr1T(mHv-N zju$)i$A2yv+o4Wb%wSEVYw}f-x(#SVSrC{9@Ey1UYLU*+plT7L3nUd(BwB*8yq1R+SXN^mFH8?lCsI3!xZRrqJ*e&gQtenSKHl#(stTR;K_K9Q@Qpcn`o108KFFk69I&ioPnhU7D#X+X9GrNx~`H zJodws3RgIX2v{cGN%_QXj@-^NO5nSqj)ik00|=*+7~U7KHn)FnXxJ$Y&Az**xm`hv`sw1whn}ja1O<9%kjL#$FYq2<4>*b4jJnP7hcx3}#kni~} zC8YdWn7IUw_$yW+>5*Bp4!KQBHCP%l0^2QB51t`HC^1+W0XxxDFxejr*^&Ls;R&NC z7}}x50?ZjnDPlD{m!??>9i~qmo$u~UDn^@`)@;%_2E~6BjLQ-ZfZRs$C5RKoo(`iP z{Fo$vX;2AyUkxGpP2o_;*2C2R9-kt}4JL4cTs{~1w|87M^l->6N<6R?aR7v(unkwr z;7kHLM){fn69g+vBr8DwL;*?%k8N!LN2Rqfd!~AJuQA`hGW9RX=N0q@J3Ahcaf;f@ z4hytp@a}(hFCJTV6l2xO4mbFZW!eL!FEA{DdnB42u;y@3sejq%o**O$HjQPpf{RDo zRDnw{8XOE8^@)H`fMaIRFBKmap$!a>{SsWn(BM$w@Y|jqfJaE^J@|)o`XCCXI15rY zi*+@iGEH7<#{`?-ngrN7E2Id}*Xy>sXecarh^>DK^>IV;-|^;p>aD2fZcX@EB5({@ zBKzO`2FOeEn-Hb@%MhGA0`=hTsVZy+z&oO>CI`pE4V5uNN!s($T1-|4A`b%@9LM;q zGey01KLS~RVfIlcf;HzulyN|=kmD;trBgr+9R4W68;MK^n-lq{y{rEwiGaj;zq=UH zK{S7D3A~x}1G3`)UqGP0rdR|~ybBt-LdtN3)LeS4no4dFfeD0{2qsW#f|Ypxkt+{G zF^;s(ch$UQU&fGe>+EUJi*y3nFIq%Ty|fG}0}!HwAcv2xsPJ>x1;_#nRvM^G#y}ad zRBIPmDo($5J6NIHuWi)0*?d${PURRrsoapOx4`9p`nyJhy)<@Tg?B+)(ci%k1^K$O zxFYW!M4e4Z+$uGq74l@>bESSw8IM!K9P^?XWdur)s9t8*cm_)qE^`ebfgK0&59tEF zVm#y6<~T&1*FrXH$&ie=^ruRv$bI5Rk1L=J_j@qL6pJ#g*{Z#vHIB*Ihi;@?94sBS za)jD{MyQ5RnaJ}K0>r0fHhl1(kmgXAHbpR;PSIY868tnmnoCDc2;F1%b61)Vy$ zuewocX!ny)dK#L@K&U&MQHxq_H4WkuqTyhF2)yXwWnhr14U9FD_OTddz}}}A@Qp#CA$Mut8Hy>pzjC~p8TetbHIDx`pH{^G6J1lS9ob)Kml-!Yd`1L%Pe&Zc+i9g5 z4%pU&L)>T?SSsC@CNKCouV?RB`X9i&AWBpSm|`)wajAqDju_Nck%bHMfSRNl?UW(x za3&3z!T;K$7#u)G4mU5|d}4W9SY$PSq+vv{yA@1cCq%Rx3vOY%H$>3rxKtE)H-3D{ z*gVD@`tgPZ7^e))qq@b6t<<)_X<YYi z-{fd~C`hGSBJCvh4l5U%KYnF2C1U1Cxl?E$2$Is}6x&P?E{hH_OVKq}OD7X~7C2pX zC%4QnvL~A(Us?FJXla}hHDeGyIl^BXX+}R*W&#ffn!n%g4Ew=!;#_0FkJCP?qLD7W+{PB zsn86^MQg_U_~Rejs)3pf$gopBXZ9glXPV66YA-;Ot8G9ZeV)8O`MqohJQaQ)?GBjs zm~kcuPlcu5K`1+%NM-@FNV=^!QjHxClGaql4*_X!ocp#e#odn}3?5*A;s#JtA&<3@ zK=7Zz4+r4FNRBNMzd~A8v%;jn#0p3`Lq)#Pu-u_uXNr65r>87JaY#r0vFqczZY;N0 zcZ>thBpXDRrlY}JDVPN(%`xP=o*B9ObT2C?7SP;(6H$x2L}r(Ii?k%At@E*b=9d92 za4g}m*Y$e6th3%*?+hbJo-O@?!hi)y?$NjcZ55ci8V8*# z_#BBGhCvfNPd(p<;rRSUX_GHlf6~ka$rn23 zjx--uQ3f=97&Nnr=wLjUr zJASI}LbS;A0^2G3hL&-EGzzcoz&iTQaNk$x>{H~ZsWp;XJmh6`qRW(B0+>+gAvn_z zt)y=1>D>uTBYkrRE7b?#6eZU=*}rZU;_f3qtmi*n!_kEVaIN$H^zQ0tiVZzrCFO4}IVK)`LOsk;l*5hvWzy|+ zCs)C{XmTER#tkHR!9$ma4v;i$5Bb%<7gW)IM`~dH=GK5Y;%H!s+R?GC%K_yff`=lY z?f|t$UG26#0lvhji@a_m`yk5}h3}Z9)YKTTGfuf-uNpVrCil+dGqd|p12%kumv;Z1 zJL=1Enhr6S$!0rnt4b6z6UJCOZ{6;b3P$o#@>uBmJvcg|I~ECDT^0kYQ4eUFp0U0t517XoN0x}vVSmwS?p%KV{m#z!-*bv+sbp3q zKSl1uj_e1oYi;<3NZO*Aeb{t;{reT^fYArf7QTKWL}^bDPdXlB%~_X6az<5uKe89e zt+*4iIY2)!z}Nu5M6C)}EFf`h`W#0H3jerVgVoijoq6l!UR5v`HiIFG_xjG}WP#b7 zuxr>lPe!=W0uxg1RWc(&wm>lMkh=j#4KXcAdcYwdU6TBo$yc#NKj)>w?74CTWI2nG zP#FQmi&mBvvwsI=M!~ka!+j)w!Y-RY>_>;!P33$9DV5n_Khu6G0srICPjd)(2+i|x zFRVR6TuY=TC8x@FlylE3;PHs`6DZ(k%XAE`CZb$~`qQ0aS;xonDqe(ZmXvdNr$<4= zBu3WzO6A;nE(5|H?gHt6tLJ5>*r9ouONOX~ZDi?;A629}jYH^EVuyNvYc^{($xZW4 z3Ojp?lj@<9$7I05sr-6yUjF%`F5>Q4&nZ2~yZI9NuO;v1W1+N>%6RDfHc|l#Euhl7 zE$?!*eI7^Lmm(vaQ<5|e3CMik>{e0Es)lk|YeX*mgyHVymo2Alc z?G%-&9>?#(AvcPUhEMhgqdkI?nhA#326Zb4z@q>Nl-p-}A>h=E7o8O-7 zd8esd_Mf7?T(3YU0E$5;9`vs8RnFjc(IHI)%Wd`A?dV=bTmn0PN>~{64;jypGsO9w zcmmjide#XA<_#2ce|XF0T0ky@#~cnFc*S73!H08-_6|$FYn*}eEdMw#)$_o`sn?UixZcTx_vtNlO3VmXxVpHk4Pe=ECd9b3g z3lRXb-D-C&uC|v;0Q01Ub-Pi{pV<~I=^ch{fefuWT0Wr>CtSg_EEtA!7sH6rQ0%pl=1@2GQIc=hEZQSXeUNKS&dCL17P76Ri9Og!53ud#H?)XiAm{0UsfTgT<=;E8RJ8!de zGfvKRclGb>KFhiseOKe5bo%4bC$LHn?JErLAbgdugajuQ0cODhloD=kIeX5SZeU;s zjK`yYNw7frD0gtBx;Xp!oxv-ah{WPB?a0^3G!8PDu6&Pe%!lNR$(8i*82tSH_{|IL zYOFLx7DaeLW2up$5DT6r8*$|0>Df8Pi%YJEH;YeggQBqWnGT;0KU;=)IT@d8Tt94` z*P@J;R_H7SitcADBf6N|JuS;n!#T5^r^Q z7k_+`wB6aIVM31QTWJ?vMs0KskkqAm@Hf-Xr$=eRBsU+PSKA7J zPKSWSq1J$cf9{+PZ^kNTECSzL3@bhl1RRjS=PNI}DtjGCpb zdqI^X$V4{V7QFRf-#I1?PlU6v56`3Kp+%QSsa!_PG3E5whm%}_ocwYLl?i#NaE$3P zQ4S^F@RLi=TvZ@=*mY41w!1=!SBtyV9gj5hC#P6hndG<0fm~&o>%>UNqdRf z#r%G7)0vGQbC#J%ek=Rz8?w^R(=s+(o793J$=b=mr#{4uXY8vS4Ar5Z!1!@#4LzSVFoA~A2Tjz*zIK_njhtK<<6E%tLnvWv zJM}UQ&H>8(9fHu4$?!#^adB~fQNMt;c5zmZM`sQ4rg7sUI@v~KWZW?D*V`BI=#NGp zeuC~WJc}B5)V6A`+Xnf&em?2<{sZ$F_M%Jeg+1P`QR0q~iGxmp`VQfJFB{=2U#(rh z-lW5Gy?L3c9(S9UEj@>I<7Km(*xo~4mIL}O=4C)^8MTx6Xri3ZC>_OrJr&ce_UM?d zDD^;EzJ6U+(~0}r#%$i+?QCNX2-p@ennKkIwF;|Jt?=fRa-*iF^p~k6WtUm$yh253 z{f2b8TQ+@<$jdIffmK?+A!!q%vL#s6NHX!AqggLI^3O4hVOh zalxR6GE2QoCoR)s%e2=*7TE4i=D{^d@y0)!NiG36tos;A1T5*=LU*yrdHuuN|09J@ z>!ADQ1ro%Oul2SDMTUO3N@3(3_ggUXy*E06bpt%M>{YAcW!aN|%$Zbp$ZvV+RDq3mS~a+}qe zhU>RVH@-#>=1x`{*|=?UrwV$-GUSu!-(5CBUI{lwugvzaDg3y3wJFXpe6V}Dg^GmX zuFs;sj`!VT(K`Qy`SZ!@__L1S2AFem{rC>3mdhni6%IJ@)CSRTT;HTcYS9u1_-?|+n z9Ku^HE^B*#9K5}9H?Q9G@)PmgtGsdk7!fmKbpw51(O;QGKdUHwKIp~FL>A|b;jx-! z8l9ekOaX3-j9IvaBrRy6v>`>3v$vX5IV9(FPtm3t>9G#KRd~AN=aQH&yB7E;CZhVDYwQtTb`Mg4XIOs(oKo!`3tk;rJHtjl1qo@LlCa8_4BNBQ0 zHXVj(@q(-YQbPW=)Ui{;5TYBiX%6~HQK=Y2q)Np6P^N(}LIhX@1QTowP}25obv<8# zK2jW=f(#dCXtY;IqZiH69Ix0ZX<3$fKD{pUa{p9Ud zU;(?6M}`hIe8!Nkpr?|TTkehCYgBB6>DMlQk#ljivq_d-yKLh3CMZepR%V<`FCzpG zQ-BqU02b<)SCI#t^g=Y0$I~y)0bCG#MllvU!zDu-!35@g5?9;Z8KN6R95nfhmMv1o z;XzQ11dl~zk13AqPLgDj6w->E?4M)>An#-Wc+PA8#6i+iBq!?o*2b?}!9OwoCjJ+H z|6?*x@b1kz-}(`nUX35}KYS|x5Tmd-+oQK)-jtt#Pku{ss(AtM_L*UXQg_-vg&5No zriUH}mnX#42G;`5l4a*=2N%*%Q0Wk~Vac;Ku!@Wj0n-&g14NmvG{t8zP;7E^pX9!;{5T;Nslot zmtbZLe*><~st9EqGAqlWq~ugdMim9O;EIPpR0685V?f1MPIz@Lj;n8O#+UPdrVAJC zu>zuN&iNhM7WFLo+S?t(5rRx%ltfLPrV(*{*Jd?kF7ufy~Kn6*KQ|@Ew&qU zXMmkS-%|I6S>Af^4xm;HyY=FbSd75FhGPd8w}JW~jvqKzWp=U?@?0?h=;{^EKkki) z;8!V^e>{HolMM1rFJe)DVDLWyKhgnbKa-K0k5=M#i-yqzo&Ms%oC|94$m#)FS(<*S zXwZb2%i@giJg6rk8@cR|kVaR-ssPSAtOxH0(ocZl6<$jRCHvdSAKRB2a4~;fxroak z-nN(5gTv@F1ZD>IOR&SuW9q@r=(MQn(f5GrJdH1dPK-e609c)WrsEuAH||A<<)q$> zcLg=L^djs!|A8BkZKp7P^fuewK{p39AfG5GUfjGCWgAYCy&k|Lq;rrs@JxD0oj`P&{!kR?U{m-6 zILArK?zYNPfXY*Uj9~Y$fUF;cQ1S-imYcwL;;D8cs%GQsD2F_4-LMb z4g}p6DHQ;}?SO0~Lr4qb_ zKTe{p1bxP{BpBM7q#~in{XsC_cHXExLnzL4y4b7>QR}xg8>%b!o{h&VOT5Sq%9B}3 zB<5m;+kY&7*w;&Qt4$nAm%UO>tS*Mc&LQ6X%k;=Z*`aKsK&Lm>wjP20$dDhu0?*(# zqz^eu~M_^%u+Vhta<|F)2wh-=D3ydx?`4qUuBdecIw$l*oA#gif!1Bvh2ft zx-kg*!bY?)M%gSpb16}E(i>)bYtV&e0209uuwLk>EnP+@7qRXg5dDzo*&5g#WbY0D zzOhe@?4UIK@HfzO0hzgja!uhDO0y4u(4WH2uv;iJb#Hc1=KfO`|1;+DHs+yNqxmpSWA z5N@Mfdk9CE_Ta4kyfjyGU<8^xIzqZnH2-=_Pj(?YBL=Oa&yW)&pt8Bd+u+zfEP%6c z)IsX%7)?uoA1!&>i2)#XMm73{g={G2D==1nr8QW-d%W8j@Te5`IYra)sDJ}Km=)PY zzHPJO>7$B#I??jL4JD~LqwjUX@i|OP@q~d(Ug=~PMlDs%BWdtSz>o9=jk&Urof99S5)HDQ&7R2 zJ9P}DQE%Ytaf<0Z@{-lWT9G6^)TxYr)LAH&jpi*|?C>)+JOf z*6O8Mkub|F^RL;hfsYP-kLPPC%jL87B%F0xRUyl`7$ozzR_5~baRu*v&AzVm**G-- zsVF4RMD#CFN3c3`Hf2Y9CvFLDD>L&R=NN|1YG)+nYSSr6ceVut^gv5l0azV>em^@2 zYrBshvyNb)N`g6!<)epM0@=5Xb%R8I`lJF9-JL%Qgg&ymdV`0AHpOrKC+iKq znS?f~XMQ%@L%jiz1{Il5jIGjtgg(=8@+(zX%$-VBw8szi2B_5j3cLJZR(Yo6Eu-i? zt%{U8wQeN2_^t-e;s&jK#X*9a1aCt{(Lr8!OQ~)e0nMiIr*yY#6eXk|?g~g*G4Y(W zqx_`_^|7>obhKiXu4rlxDxFo`9qiFPDIvWXmCnStNX_beNmZE&E(ofBa@MiVv?LpQ z?egX4E+f4w6M86QP$&9L=gVi+3^KKf?1ig&^ZrXHZS5xXP{<%KOUN3S+3WFJ3oJZq zKF^*FAA-PXz^f``NYcKi14+e8B`=TRYEg&j7|Gz03J&CEW+o%m)Fy=^|3kB%1<)g6 z1ypA$iOiBiqKOMOlU@6NGY0z~-WDSyoj{9(uZt;MODCX;cT-C!R5Mpp|utT zX(3tiorATrq~NO*Q6%LHnX-vxiYPn^%W3PNL%21{uJU5(`IY4JHnQ0{T98q&4-dYK z?E2kydd{;)6(OqYX8kKeMry-6dH>4zYV&0Nug-o)7H=`beaK9IxbfWoXM0aQy7vO^ z@0diyOoY?0-|ck~8{L=kk)!sgJDixB5$Vrx9M^2Mi0#mAs*_IBq&G&UXb+G1^5s9; zqj)?vY-8{!9Gp zmH-=jXu6|ftinQno420M+nJn*TwQ^}L$3nS7wiGD2QsTGc=>r7Qr#1tNa<12<0R{r z1@i1kMUTnBH9wPR^JXEQ@l0tLawnfp=P=*euPXHu;5i&iOqslPrG*@-9fLm#1%eroFM1Dbso4jYD+}?`hcZqfh%Nx^r^8`9Ld~&e>;cPzbwC4@^$D;?_TmJ4 z!5Y6zXJ1`^dx;F+J&2h+>8pFUpgA(P?K~cJ|BcE~pr*Iuc+}~lVoIU|9HKZPL^Mf1 zvFjhItQ02YRVa4z8i$;MgMDA83CzphIe`pNz*kxBd0D?uOtxPYwTIiL4wVbXKg}r_ zj^km_i%us-m0DUvEKJR2ydM`B??{@0rMOaF&zoO=rd@Nuujd``>v%GW`@vd_d0wJ0 zV_qd)JXl*-kOv9=25-4A^X`MMWS0?U{*k9FutYnPp1BcY^YyrNO_C>(*&k zlf=sjPvlwMPYg|eCqZu$^~pV@eiltW{_wgc<#L<3+XN)4^d?hhm${8H+~8RAnU6F* zv?b$zosAY<6+9GrK1o!U4V zwth1mcA!z{0u^FfbyllZ>3ls-dkf0cWmHPoN3)@sxX*?S)y zSn;x}`@pxqGT*L>#T&j2?1WygI|Kk!Ee0lkz^1yyP{eIpTpCTfcCjhOooQ)YJ7@ng z69z?yv@8;uaLarQ6q#1hB{8eSB+7M7HrQ*<_AJhx>O?EUIpbL0=wjSHtD_ZQ^d@I9 zI#xHqmu8#Nprr!j0GuPYMB0<xl|LFA1TxH>#h`k zx98SZYY}7E9oob(fxaF{FNj8)7DU9+7ne8X!BF`DE}-bG=V9+uZ|MTHX)x`dM59}z zkwuJZI?>4TN?1J?40|*P&4kAlWnC z>GGH!>i`ktk^xJ5U&D&<87wZ_gGXeyhQ9zS>9oAZJLL@-#WYeRlGcVcSp0xF9${rN z9emKmhwbp5Yz5oTrC5#@Owecuy7mixh-~RUOmpsZDYrdwGzSysu+6(_ZFE+D*B_hf zW(R-!vi(Cm7Q}SRYKjqx0Q7g@Qdnc5JfBcF8iZCsINl0A|AWiXG zT;K)*lNCdhL8)ix1- zp|e}+C!@7Ia9@8Dev9wPI-zxc7^Y_!Ejgxg+8Xe{^-iMNW^Zk#ZUvmbpqiaT?T|33 zqy)W>4F*uA!OHtdg!&F0;VrHxTItRWwMhbz>+RB|d1=G=;WO}WSQLeM^VX6Jkh&S& zT+#iY%>oyb?5a*@vqQ^jwhubbSJru+`ALmlkpE-Uk3U0Q09^TL_&J_`j!0nIC#H>- zCNu@(exH%u_~duciAkF&Gc(cO0om|*bKgH!3#8O^2Yj!`b-?t8AX{i;9Uw;Mv0c|L z3jh3BMV|V;tQ=F9&J5taxAOLUy08B=jnH#BK(srvKhY%u^5hnXut%2>oxz$*PJnM{ zg$^nl;MJ~#ZHz?(V>m#6;5xdT>>l!E@h}1&GKA?s`!e8(;pn7`9v!1Az)ns=+Y@I9 zOim%833}O=Q3e@#0bKyW0=^G{W>u~|9Z#jR1CX{kB5|Onp&Bs*Kos}zK0Z;x3CBe1 z*Ev#C7l3Z*x{Sg)@HJqb*|37SY78*{DVjc`i4Py59`3CGaOr}7?l0wd7U?_99szNP zj_ByhIqmi)+c+{1%jT50T`|WctJE8?|JDSWG3FZL-LimOWgI!t0;R#g1)K?7XTZ6S z#{m$jJ5yFr$x?8rd=TOW{VQ3Qy0#klj=2s>W= z-mq&{*9X*yh{6AV9_?sILSM_3(h0 z3#Su0Zz(V0xTnviFG(H^s^@UYTA%E(tIY_bhC>T~eAu*(jwqLsFHmYbipK1(gab~nFjy|rs4Hw8X#cQgY5hQOonuzf2ue!wVs(CD z_M8%q>8Q(TrwrsY68WWgx2|Xz8b^zqYslY^c(SYo7=yk==AZ!%3AbP}YVFkeF&nv| zn+Ljo58+Uw7eeG9*EiPr@?eUJqCfc*U$p?T7ZYM{K+=Z z^Cm1^K$^Qc+}duko@2QAM?v$M`Q}mj8`m^{oPD;;E6kd;2CA0H2*$x+?sJ6c+7kd(6GvbGB(lKlsP5&{ zpr(V}G^3eBXE@42`Rpgtb2HV?unXFq5Nu^~E}RHLjKKT#;Ejf1bw)VE;13)xHzuKM zn0*o=FQ4E#< ziAs=OuXzCPH%zp(vHz&OzyEH3y0^c-4^H9sj>ILPnDmhen*s~nCU)D7P%C&Si5VZt zXL!rYlTpxkwI6KjVIa)*&JO%0-4S-_k$zaiN1JZ%@d~BUWHIW2C4*Y(!ZFBynOhIF z1N$+hPc>N~?rJ20gvP+N04>)DIOv z5?5krE!}e3JLpg8@3~tCE`%(B`6o4^)OKM+J8l+lFxNNBl$L83{ zvL)x&y$`$Y2ANtrF5UpkrX+`d5kA6zuw-CpLa3z2j**}qEh@pLmKm%a`!$L`!(+?S zW(hpAC;!*(NwRqU>ggh4V4!s!mwOf0uQ<@L!Z?ShB$ObY#=Jzb7LK6zFzToLDRR4~ zRUc6ls1a3~3r7#A^SYwzR&U(gd0x?G`e+hEMU)Qv~U{KSXuk9iPko1f(1$wjyhD%I(ycr+bU9PC9G{fwx*MicOTF2D59;_{fGv$u&gF~mZE zE{73g{yOS0d}x^I7GxU|h_2*U%$Qcc2vU{E304+eZf?=BK@yvP!4NS%zSVT^lJj3f z5Ih`QZE}FHUDS@@DDARY01bQ(c{u3}3wRWi zhaUS$Q|UIn_%IAi4`5s*sdPUf4zLe3ghu~35F>}835Jg}NkZ-$ym(MvvFUsq1+H+Lg45=4JN;)90FqQnp4MpJ#@0ATntqVdSBrfP;KEQ^ybT<4&zMnx>B7X>CW_ zP-|grx`ztKkq6mviXWD57?W+muPP@M*@`d_!HqK0F#O8+UCkJ&f|zZ%fF>4SnB~Wk z829cdLVt39*!Q61f?bq1;8_x-+kzpeW5fv*XEE1joEe3=!gwU@O38W{qU1txezI?w zd*!Ok-r~9=5|djZL`d=OE36B-v$yER+y!^Zr+QF(%Y`va!Zjbkb` zn^pP4zbH*Y@D8pL@n-!$AQ8~@1x2eh0U-%xH%qvG&(A&B9@w8HxjcJ+TzQeV+5D&?W;$<*=P`zysaCtWIb_Ip z4Z@k5Mcd(8Ow7qU&!O;^0LN+i23y&~s-M8FM3$1rM^NNxJJtJNt(_aF`Fz(Ky_ZCm zKF?~t`3t-N=k2Zac^2LBj-ThH=df<)`KD3x@7a0Y-KlcxrsOl)LLcYE*8;~mT;*|p zp0_K8$5JUZ`Qupp3Z?D(4e4^XZ2BJCF1zdobdvQO(n2*Q*IuayPI;#_pWS9f)^=L+ z$z-Q2p#Yt%kYl!o&3SE_YtwjEHzc2}uuw3ld5x6Y9MtYQuGH@OtHk_OPhY=(6WAW!_!(SS%&gxk-S`^K4aF;mQp{JrOk!<%3670f<`gY8=g@+{x$omTvbiYHP0TSRO7mjlZ2f1K1 zHEI6bfY$=aCwFJCsKV$XsM`JmX>aqQ4|s=C7c#Y!-&X0>x5W7$SL6<)IX{7a50+s4 zerogs>$m4Db<$SnYMmGK>~Gx;QAf11Gq+fPGpabk>c;7(-`hp;Gv!rVX>JAiP-ehLlg{R3jOf>AYHoqRCgA1#9kvnSDbxF(17j8w=&Ef!pYeYJ=GKYQ=O-L{pb3;q?1ddY;C#9l zVe42I;8v5gfs?g;E-ddsim2sXIsT~V(eS5!o-!Nz;+yQqrKPTa?-h2P@|ZLO-7%0R zM$@SzDypzgTN~R%P<`&V2Ycb#;n$7cdz3>N(&aoVhI&9Z!d&~Vld%5&On6K3UnEw}Tv zTdVdPFg7ncqh2^@80R^kqtgZS+sj!iCU|T+;`I-K#?=250<8qW(%%4y28?O}^kt|4 z$v(JI<|K~LD=cfj(nkJ#di+M7eAtb8#Ao<-z#o~nEiufE@|LfPm4xsY@FU2^D8M}vPVCr10z&|$zMlw&mVi2$CrXl80?|TO~HF`1pzp+@CS> zTC)-?we(qnnMZ(7pjL7v$woKD#bQKa1 z%rK>6{_?Ut7l8qeJm44ws&SH1E$+8}$h5GX(Z_x_n1V+p)u_32R;gF}aDXqvVY|!u zeSN4vi}>pOU*^weXkl=5_eJ$UCRw|Q_PGG~Z&adzR$ldTd)3cw;xfGolPhfs>v&9s zExWnLM16i#1eV>O*ikhk$goGHUl3y$br{;#S0IFCl3BdAEJli=C?G918vrsW`$ z|7&OK;r5oREfIigmfqOs(U;lTGJ_zjVU#h!+wNz0VgjH|^B(Bq9-jXWb<sa|5@Hen*xxx!Ic!joA`^52Vw_u1nZUASz9TA`G3U#n~EWRJCMCDLS1v9W@dl z^UBSdzhNq~OSx@c0PMCE)>E?CHlX60$ny{2`y?BGYR7qvN&&w4_U`k?d2!MQwL%Gj zIeTjEtD{7fKs9KKl1#LE9OasS^oPt+5}c_7W)v196PuO<&v>jgr>~WNm$G)xns)ZK zp41etH@TwV#=_PuNdC<|7LhjnJR@u+;&v-#!K)e_GwR~MSQh-<)acN)(gixJvS5ty zGJ}7`!C%lq=$Wfy%4obQ3q~u%H=y#$r!SoIm#N8bZ>L7WQJVbnWx78q@6Lo7B4&C$Yq9MFPFuJST2&9P&|I9qk>~w2^!rQg1hCqo?w_^du6uiR zeYBTSli1idJJ+5=1K(^_Km4ughtta4T*Yvc`r%1obeDUxA?l)kL7;HlC^K(LnpZ*Z zdl&S6TqEd>lDWn@Eh^}=Rmp2!P8YA_b?-@y#3Rpz@0)=!wpVD3D8;N&^7AXNU7<0G zYdCR3S25P*jdXtx>COWHI(C8HsMxzk@!7BdT6*((m{~hencBw0 z#LmCafFP5_<6#@KVMiSNYlhLYT2#7AP)1*b9G_h<@=ibR%SWvIliY0CStpM06Fx;l z0PQc>2h8eb@&j`HX5VDHXI0RT`P<*W;S8IMMBFIb2*&&m{b&GY1o)zN9Gk4}%bYK-8Z`9J6k z(J<1$=(oRt(f8IqagTG#q-vd0g|(_)&zO#8+kO_=&kBBtdDLLXv$U9@ znY!IU3z-1a2)^alum8~+#z}(SgO9)na&1GKsq#Hr`|Gc-UpM_#fBgjr9JW=<`6UVD zF-FTRpjM+hJ%V$Z(a7I+r$$)No$pqiqtcZ*e5_}Gj;#QW?M3J=ec;*~J%7n*B|YC7 zt?fIAC}B^e#>WM$hR6>+o7jlw5^_f_Ys4Z+Ed)UCZ00&NZcy zR{MN^qpeN=06A;)pKCVykZd9r7_hzuA&~=82`DMgb3eooi|fm{8bNYmqM-IUNfvd2 zSrJNvJhSSM7e1*Cq$bQ0;f=U z#@!IGjP}EWbqp0UcM|I7syXx(dK9R{?I3ra~m2jSkg^650dGXO+4)fpEfM-@ll0N|PPgp_!sjty=SMlnF)(G-^H#KT zJHY?-s7X(D^%&Jw{c+Lx!-6LQM7Jzv z3480x;yC`aG|J+M9t~4xry47ZW!kByI#-+Bsg<%wh@bA9fsJJ%Y+=xRmavt|LW2m@ zb}jaYt!42no;UI=zN?*@=2=wo)Q+<9_n4=iZfS7rI?{LjUG3DgQ+O3mm8R_OGhb~_ zJ1?%xb>3Vrj}3adJIxKNk^+5y%DRaFXx-e4+hYT+a!7EM|2)wbe2XB!)7@#I)~ao4 z?AL>z^e!yuHt7QII@V`yI(0ers(=GjXRlaVFxu~5LQ+(W%tbC{4KOVYZ|yZXS|fn- zeeKrcCVCy?COWNd-1_*rg9$p{3xhqLrsG#GPQk^|jIo#|>FG48R$1bDzflV#kqW`=&}d*rjil!ZDc_ts$Nd*rj7CT9M7 zWU@wq+3%6VriN%&PEp=}DOy5HRp`~Iqjei=5CS+ZMZn|P<0iTC#)@Nk_UTEJOu25U zubuf?qJ3(TC)Z8*_jsS4t}^7Vd{$3`E>^!T5BooxR;0CZEAno|K{rmMMRGYz<@0H( zZAIHWZC^&0oj%)Nmx8v>3k6H6<$Rz0=xrq`Y~in;YdG$c=S&5z}`=(SJ@=%wDSY2mh&#>s1(<&lCy>_I7; zgJFc0=>(t^9N7%O6F-qt)I|^i;x|l^&SgIdIzVfS1BJ}St=N=ne{c$@h|IQe)<20N zeXDCC*pz{s(cTAlV-d!|Sx`()~Wued&Ib@4|FH_05q?_Q$g#nCaGD1Slk^^ zC#|c{Of-jTF`BLi{Zj@&;w4hle{OL~7>l#5Hsl`VFD$0x^jO!5C^<|`26Z*S_rICR zcrWjF>icd?hWTdqPQ}`d@I|_DVMw`G;fe(6wf-`v3Rfm0?z2s?YM<`4$(VT__1*2# zcWK4)N}sY?<)`Tee@ZXkHPygG_RiU^m0=x*0{}-SsgIp8=XqK+K{k2*bY{bPE`yaN z?gMBvgl$UBVT264t+UumdH>xQRP(J$2Q@IHbtXU`kCRbw9tGVvY)9>2Fzmny#2L56 zQ!xSQ!XQJ6heXsgFph8`KhuxIy-{y4sz$H;`SkeBQ7^oVe-675{mbCr0e@srJn}#L z4fv(8{ZY!2P6uRI)BPyVqVA{Zv9I<-=stl!e*pI90Ne1;{_mqN{%_Z^6aDy+xuVQh z<|@3uY{B}9icqeK2Ry}xT^MZOwnaJJ#0%yI>9;xtv^&Y58(we1eHD$j@uv<4cs!}+ z&vjjtGCsvHf3<<@I$4ZBHF&Ow9k!4_PCHwTTH_I#LqO~VQ_v;`_g}_wHwyb&#}>oY zOSNgM6dAQ6|7Z_xxd~e}D$@@?f2;7dahdSnx`>-|Gia-fr_i7( zY_WKG;qTI#6{9v)gj>$=^~%6j28DLE_H>olL<5_Nn@$X2tMK(4jjIV@-<47QmLY5v z)N$6$$6j^dc@31bc|=n11@Cu;ViAwQf;V_Ra0J z-R1M>Q`CJJU@%amM_#Sf+3P=JOkw~2cDoTOk!<>#PH`yH{nrT3bZRckYpYuQe69Yn z>HF>NChfmTbjk99iMqrDG4f}+l4@16X|KX$e<^yZcDAPuu5x_|+FrT2aq-0khF9s| zI$KxIuUMWf+gWu5yTg)>(NA(@mWQ~z6{TjUC?0D^7vZ=&veRnWS>u#Pu-=I_0u1_X zLjgR{=%C$>V)svY0+Sh6g=^*h^7G~;DGtg6jw4pp*b zo7Du}t~p-Gl5JL#07$_bb6V@3ieVx2QAZ4!>KrGhZ?r1E?|arn&)YqF|DEmGvnJ}^ z?AgojZqJ%%eYGHp22v-jeV_Bj63i4JhSoeTw11q4Ez>S5eX zf~)wmfmrkp4Z`-Pu-^i{Y-a@cf5lD@WhD-CCzi71U@KTZ`sLN(yF>ivm(vFigY97b zndo)eUy*@O^4MhAu3vu*03XR zG61jlLT3^HzJqJAb%Gp9RdsKjh$|`GIZ1Zhw1Uf zZ>N6tofBj(G@0z2?1elr(Nr(@n?_NMr+R>>XMHN=xwZ_9Calnl9SZ(En zrqLeTN57_A>fLgCUGC^+wz|Om(@O6akOl>xw}b|#pQEV%pC`d7e+&~j8ypYK2KfLE zaNO!ZZrXr(8(k@(*$7T4MEF0!iNi(VcoY+i93V{4aUw?)9xrBR{f-!_mgqUa4Ud4E z3zxdR5$yK?SVujDw*uGPJ@Nb+wzEwLx))(^HHKa-7C+&f$Q z$$rC&&G4r{{+_-Ie-a#v5YzCA`C;oX_qXk>t-l@yyIT+bmU&LEg@^Q`&*_8wUab2I zd#w$>GJLGOYF$>qOV0Wh0}tCA_KCEIYq;0YNW%z{g1=u3f8$>63j^%iD89VJ*8;q+ zADpdyKy~-o8le5+K{Om)pY_KHe@F7XXu#7#VFZ2q0-BsBI%F`31Yyf4eCI1? z$svLUAKRjf4#)k}p3uR*LIu2|P|}Djb`^*H5IUg&d6vW}E7X!sq7F5#r-&g$-oC>W z4I?Oie=1Kp#@S;KZ9kN$!HIR+hn6dWT?W>y(bU#1yE9O?lZ>oWA%~=JFzE82h0D@~ zI1hrn0hfe_rXMpWXQ=BJ=fj`)|IhlbaU8bB*GdX!aE{Tq4_1o1<^S*s?0x*N&vvuE!uR-9UVyf*z*u( zUUWeh*a38ZaqfWQZhS|+h9|24+6~V5e~`y3-c8OJ;r|Qg7*E$av0Q+7p<11V8RaA@ zDZ64Y=k^xW1*~PutS1bRIE6wvkEk)mgSMRPpf~omE(VFXM2c}moj{A&FGIWktIhdFR^Sc8$$<*sNi3qWgp^iW~0Q5&+di@4Y$O;35T!iAnA54uSR%}f7>%5 zQX+dGN6ri2agRCuDgm7blq5tDpnT2a@h~ilKQYs7)piN=qmu%*y*~TK+X(MGTA56MW66CKYa8c;bTRK_ZDTMCoxYQq# z>wfF%?F|~2GaFS1@nkzFJDFd%zQ|U8;ryk({8Pg zNW#$ll7mHy=RI?%-0=FACIyajBjx>}CWgX2Bi3F;0__b>d32rKsn6JDf2LXBi7@ud z13B=7X#VM^;5Y=Qr7a=NoKvk;QZ2P+pQ@kX)Y{w9Il%XfQjcd4EAQ}{lcnCQVO#Dy@f5C}!Sp#}&)(p!rzLC&nLI9ekNP|N5OVAY@ zu`5&8XKR`7J=5dV)|M+Jf3#D;o-5I&itM5_oxp|xQwPwU=IpeNvrIceD5Zzgkr&fk z?%Agunt^C!6XUl*Wb;`|Pv57y1gV<7l2wut6&_q6(KZL}<=4tRPOV5gxfqi;-yk`T zMwDeAL60xa`tk$O2k9ZTk$~H}ms_Db4-rv&*$Kb9RS_2X)n>pHf8MN@_04X09(9u` z1FXFu<3OB@5Q3jd(&^=H$fCZH_i2*W7!9CqWsc3m-kDgJuNLC(G8IE|DQpYVw zRy;?+dqD7=3U|7af8g!03_S1O9kE~8H!5n)i_kXYFqP0*PaS0o$n+F5d&?BW*)24S zE4g<={SfH%$q9F|l8~q9b}`@HPOpa_ZN&J2Q|w5$F(Wl($q#Bs+@=~iXm3U7-f#K7ESg#=Q3I4#9-3|P_pInzjya4e~J|yDd|En%*f*v|86LV zFgN1a9hBB!==jJSlaZY;X~JAJ9g-PQR8Fg`I$lSG3ey`sKBU9HnnJ9proAezm9;XO zADqJeYR+AS81|Bp^KnI$W0ssw7aNiy*5rLJ>^uTbDC9;qk+~*ji8g{GW;R$(N2#0W zwz;QH(eTLOf534E)jpx^2L)qz#p^Cm4TJr6M<^ff4RAz0?{quG5w5jTkfV4Mc3(54 zHd%%zWGQ8jkcY;2q;5z!uNOdhQb@Zoum41eox%;vEPj%;;+I{q5B=F~3Bk(yY zOc9|V$Fu6>b2x;A(pG%?#H6ONe94Ba( zP=%;6DXhfx*O7=7DHKQ0P(d;Rt5a>_Vf^b7z?p21M_dD%7i@6N|PZ#WXY1u@H2zYdW9b9 zSIDzTbTRIVbl4D2n?IXgQCGo)$#15`dH&dHEWFzRLK;|fu?-{+fe2p6G?%*oK$pF=J@n>6d zJq-H^y+v?gPKY1`@=Cls_zcyHDz-K%D}(h6v!QH#IP6Ga|HZg3b)eAGqieRcEgnl# zf2I}xtRb-x_Snw&UpcNJUlrpR!fmc(pf%DU2>dnw=uv#9ppa1_!OkmBA*+0#Vz@3! zc&vSO^SDef>_Ak}dzQ*@WC`peiM{h`9%GQq9NSV3gO;Z@#<}%w_yqe?Er%OCFRfgLP~b)4;3=g6fmhaMD5N2g=0k z#W*%cUyzvOjpimg3+y4my^w^cdr`<;_^)%$RjC@`Re$AJWFpMEKMbgCEE(7CADD@7 z<=L)D6Xae2;zJSeB$Cvg>^U|_Y^LVH+`(bG$zVaZ{^rF~w|fPEis`$;fO3OPe@RBg z7QqGFl&S`^eb@R7X9k`L+hGIt!@8_dYJps^iC$P5twJ>hvrzM5waa)E@Aup9N;vN3 z8r`k@?NEYXij}>dQ0zkOo>rfmNDur^DM;;)d*}2ywQButLMi_)3ym(N0@~9^ z#A@&6%vB9V)iTvdiNts-jfh-vh~Tf1VeB5V-rc zbiUO^nSGN4yF6eCw&__#hSMD`QFkQs7E$F1Z$5!HZw?9)5rJ=E&P4?=oSm~qu`#21 z&uRoNrmm5qY3QsMNg45l3w9AX0m``fa_s^-f`wqj>>K}q=?=Z?H&>t0r_tNtcyJhrqv{%0{Qa;X zc)&1fkAZ!FPzyL2(P>0mgZ~x${Qy5nMhq0XSV$Rv! zjk*t|H;<=|=bi4Wen9l%1a3-UlWuO@;6M}}H_5gs()i1qLtj!N$!nCe!5`&gi~I@y zthtaj;7;(RlU}FJ?vpNatGZbbBP*Zxf$g4bRa6-41581X42V(y=YsKWp8qJ5CPO2k zGX%WH1L-&RoiqY$f1q8A8sXXxz;QS>T{#EDNKgcAU`1tR>T!nECL~7`L<6?LH1=_Olp>acAlzK%q9AVAnKfxw$$Ijzd8Xb@T_$$Y zt7|IY8|JZU9Ft2H>W{yij%t8|b7vW4lyY6f_d?%4*0YLdfA`3MA`uUfJy+YB+oR@M z;azup+3D+d+%?wclgGNfY4&}R@JkVeHtRavn{9fcOXTWoQ%C!94Q#r=o+z%FWYZ^I z=FGMfp3lQ%vwnHf%W7)NvTz;0Pbn<^sKSr<6m|=^uDp$Zbl7Ur;@wV}RoR5#zi+6~ z@1oo*6v`%_oh%`J|B`nbhhnAF5g()l$F*2MTqZAuc(c20|$n9!)bDA4e>*OWV$ z=p@UWjzRw?@8&3Pq9omY2k!Zal>bg1o>0{kBlWCte-~9Lu8Q3}(A2LZ_05uWR(iq{ z>a>G{lM`gdc)55+QzKTD4QYIi;tQ>W^Q;CXbP##L}XUt+SDB?~ZJx?7eN(x4( zeFIKumt7g?%(+{w*s*<)$_(4T8{s|5X6 z0PR&djR@5%Xy`?c@CdM}VoY6&&pNABtb$|T7?IVG5MriitI*1jOa4@8MfbudOh$bX`|ks#)V8v5%GtJ4jC2p6pPiiUsnxo%+C{J!U*~+zr(R(UhZx&H^Z! z@u+b*3GZOqfLR$ebNG zRHb2X(VsfWyCzKoKLoSDkelXZg0Fu;eKY0*_{J=_C3Yg9cwHbPht6`6f9x*^3A&3h zATFVDQ*wDCOFOxWFd}X3ufM*2-E0lxBze>6fBfsOGrSEkDVfM2Ly_=od97=w?Z^E` zN%TKshTS-)Ej#uo?0ycf6O+cG35_n%#XpDal{wJAW-qrUniJ?5MgkQwHM7OoWViHd z=X+YM;FT&!bMKB*1+vxMf94mhkpj>QySfSP;sF~1jj+|5<7r~bI|>k& z&0?P4o*vICLZ0so+KxGZ`7JldJ4TF1i?oYA*ImDnb8j^WU7{H})7+8q;t3pR0r%SCfu;Xw8*@^T#e_*< zQd8Vx1FHj#Axy&qjr`m#&Z{cqWi4!@8Q{vg6o5DOALVSiM1Jfbbui^4Gx?DVC3;w} zo)lBNMhZ6N^~ByN`X8841=vP|q373wvjq-g@bo(vperDfe@xMed(lWY*$?-IOqAY4 zwl$gk0>@@FRl&nZ&kNsPOKlh0ij;FM&>`& z0uPLf`Hjbk+J(w#a$d7U{WH7W)gaNO93;BfGF>$r@WAFmy(*pMykF)2fACM!y0Teq zia$4)a@c8_e|CCF;sPk!y^5^5BaE0rC|aEH8=0~X)|Qo;usM;X+5j#*SsquQEuDPq z46L(6IAEU4obB5Per2Ws2c`^)B3&(Dgri(HJCowiac>|Xtfnu$&qoQNwY+3AQI%4c zU~T)x4(sR4iNN>aFt+`)0y*Ho;Sa$fS)t=gZ{74ce_*a;a9-&6#wXG&e5Vn$?PnEC z@+yVC!XXM%h4_CshYM&G&Zq#z!tn|2ETw#>Uuu zyL_=^>Kj~Af(QSoE$4T-0ol9&;s=aBB#cc15?`LE&-e^dbmN$I^X8M zWU$B9#*>Z3cI%(duAbO1B*3TKVe16iFjEV&e+Mox%_1LBmbj6R>$Fk9Lm$QgygF|O zK}N)uq4fmw@8KEZPLgAyTa)pB)*mollR*GppPtp8stwJ06>F~apiu}sBk82IT0E32Z;RKoq=Jec8Xo(&EY?0PO$Al$F%MVJd^D0g-L zuR21##Qbm6&zdYCry|kmyMWVY^A_;Q!!A>@*US}$!7u~}45li`l+=fIRuC>4_xn+c zlkaEbU)4^W(cAmBH6NSbTz2MEJiSg7rn1l{2mO6bPY@*A|t$AeE$6JuO43==&PeRH;MGEjr@orR|H6AdA$Xv_gczK#aA3`UF548LdP^u<^6DiC-o zp~yf*LScknN~yFom$c(UZ}3EhTgq=EeacoK@i~CHkJ;vcYgnAqz>-cK%(eib{hg;( zY)~>%4NQRf;Mg2ncjwPho;f6FfB8`Ui$RO5M3zXWN#FLRu&TkPW+G}@#BScyA!~a( z+;@2k^r>wTR)EgnCb*hZ;pSvOZuDe zeA5|ji@<)@-n(Yd@yEm%|E3oxsqi{L7u!yQw^WFxH>PI9ze*}giH@) z*`iFP*B8q1-Yv{1Qcjr*)rZ=v@j&QBpT^gvvcD3&O7NsePZ<;MN5tn-VN!L9{zfrQ zycm#9uudv976#9^f-k|-e=X}yODU*nix@_i|NQasmhFfTf5HFa_aFECFHHKtbm9i# zSs$I12G1QQ2J~b7*Own3J>Gg4T>toJ5C8MI(;i*@h-_bgcG1hL(T`8J{@co>lS|DmfUM3DC zFnfeZTQS?NU6Oqu4!CV}O}IoHGbjYiHoKB>EKpqr(At#hH!`e^{rq$+-sG84&;sRP}%@F(1*lT7ye-j;@8licy=vV+D15;0n z*5T$1yR36hs|09bZDmfRbg^4ArmmrT%7)i2luT50&;KGFm7Ratp4;5H0WG#ta8HBj z<1j>sZTmV|{)+KjhE?$!{NI3;{6LHa{DY!xZd^uv?A97oF>RvwDDm#~G8TzGd%LsN zI-0P>*_tN=e+p;M)@+5cKMhz+G9;@}{n+jzBV$t^axC)q2J2|J5yFvxT4#yPnvk?X zEoAxSnILXa-#rYXQETIYrbL#cl?@;~^RYC0-$ir}3t;~_4y!xO$(ii0uaPferF)?R zYoQqDaRu%ZrW{(CcA>6faMhd_P5eF==q`wEmQvHhe=;A)2%6A0w`;P*d57_()SpK> zzctB~AXwT6zW#i1{pkHU9;ph~7t7;|$9(YtrT499e+dpH^& zP}zeJe?hLa^QjUqJ>^s4o@Vle9^)>*c{JSPoqRPKnLH2()ko_V9o@Ew; zJ)c+L)Rhi$Mxln)>@LpT#qb40x!?A2)RZ~NKv0xxP_1cGH~zyP+8;a&UUo*kaNz#; z6pc?341V?Y_^=yEiwgh*QR3K*KO+cC%oFs`f5=qj9y_zHLS_tH;M1s>L{OLD=i5FS zt0`GL)I|j($`^rF5(eoj9^ko0tf|c2e-$SE|2+ay8ool380?%F`U~8+4-=oA~=#Uo2+JY1j>ns+Jkm>*ul&M>Z(?;BN$Y30RWJQp=Eu ze*;_^^f2(JgNLO%jE2A%QQRNodOp1J*}$P9AhvrIz6!hU{`KH*nki>@tK7HfC*0h# zsylDn@uF*&lugrCODKT}9{(sqQDk@wE$VAMLVY3|SsaZrV*V6fcuCp`if$3(k*qD$8W3wJx3PRvFrC+pC zgEOf?r!e+M>p}8sO=_s$(OOB$B67#hS#gk~o z30k(c#1)C^3- z7T$hZ;d8s~U139$Yvqql2K#MR0(BdQe2H32@l&d>qL2FRP76K-ivF)6f7%J2XiT*W zd_XvLERw>hp$&kAu#I@P7Vuh;mR8L3#%LlEb9p3ftp>2C?8gG^`_qaJpFG5;1SAP+ zNso;YEf_+J4O!X~hijO6pyJI0$^^sJfg^6D&*c1oxdOHNN9&Dt5#G`oM=d6cLaJw) zR9O$ADt4IS*%j(1nniBie^#0a-Fbt)s5@DR*VNic;i}ax?riCKjpP%{lf8TK0CQgMrNl_R9kB&MK%5`W!|^L zl}ojkg{qJGd-)F*&#$&}XSb2>(;xR=N}1CVN`zuLx~XBDM(%yC-KSOb@vk3ZQas~|I- zOmf{Zv-uYtfD`!i07uJv<%b` zaC$L{M1tEkY~@Bhf1>vbaT-)iAh2R$;EcwE0TX)>OP_+nFOpDZeSqIx&af3A;KD8w$foJpNbL?O;4 zQ*iOKCeuNYFVm4@p@P0?*k&uqvMfyc{F<8V!qu+R#1JGVPe^03(mufY3p?Khm_g96y^HJD)0I_&)grZBK44 zVs$fq*&S4?e{if?o#V?#J$PS5Ub5_?{p(87sb-ZfnMzD@&lwiWhJC-94*rQQ=z6n) z8&zz(AhNW(RUu2iS`fd<48Q4Xq>~?9K)lHP-a0~@UC*7|(Dia}6AE;sno7S#CtX1!S0qw$P; zoe@T?f29ZsTh6^UPY}P7gV;Eo5WIl)wbri#=!;4?vphEj>^y1CYPr^&d50J1_ds9mo9_zGuqLpK- zr{jxF+~#h_%cC}|8SY?hF?&xzRZhrcoq(LJ%Wou$oBK+cJ@*n0`!LtKG6w%l3I$(` zf8+3%(ME8j=5@*-51Afr2U636mf0cBdU*Uyd;&j;$RZo|?JqX5QHts6>63leAgP~n zbA2LhYDL$VLaz}K$ONUkYgNg&R~#WU8bTbMmg7;uCNeyUs#h|S!I?87hO?A|$tYXD zR|sWZ_mU`tCpwQ(sSu0~5PVRIqQMs;f3MrY%>;jPjV$KcjIW+@q_ z295wLxL}Tk(FF?j(VRiHN?&ia4%Elzs}9PS`5UWM5@-ih6X%4S&%q-7^R2crukgr6 zavC6>#bJtaZS#{n zp-kLF?KnT9%m(v4IAi*gJ`Je^V384tqz%0MP^|J~j;t@`K;`gT1XF3v(yU24|xg zpzV|#)HCWLod%~)Kj-FV{hP~Z(WR(}rcv0?Gtt$GYLZeZ!_K2ZZN&o&4g*VAb;=v|7NFdAM`e;HMW9ncx6 zsR}IJh9x{6?aex4Yt=*G*g9CyP~u)y@c1OnXR;sI1b702U)vhRyvBa{P_}rBg%rec@)r>lC%1<^)7nNIHco7J zdfFX^5FvFuoj<7iPb{B7b_f$-AGNv>`o(0({Xe4fzrR5@67D9}e;vZ!Lzd=91`Vfe zhWr2uNzjVyQ+|1SI_XKj@z~Bc8D#4=a}s}i2)l!;@UYK>Rr?SA_5%II5nh0dCK3$1 zh@H)!L(>V*y#60t>H$|8{Ae!!L#v~lVR5kyEj$v^!=SehD9cHr;irfL7NPK7jxP{d z(N{NP9p@T@lg&q(%dl&GuswFZsZAPn4o#^u*9*%CY5o;keop;1b+J$HW;@}7^nX!8jg$#g(_`z zI|G(~Gm;FoX>eeJLFY@qpKNk3>#G?PWYcNLQMUDGt_5)rS^ z6Qty`2)UG%f96}_ocrYtZ$H*YeZ?#y>2Vjd zv=sCm4LP~@9AnR8%@lw<iSsu2n#VK4mB>5Y4t;wviGG5c6N9g!j% zel)_3vrE9C^DMOMHlropd}?3yE*kQ{dP_8|_J+6hn-|pjKCS3o$`Vu;X`aVlK+^$w z0f5IRf9O-N%#44V0tn0uohxZy@^$azZQq)@OJt#+>4wu1rCXF(L)!I3avuptKBLjV zQ5SNB${Pg3`yln)B-fDl8;k7{5f*dta+y<|t;kAl-xpS+f~G@I@jD=>_8d)Y! zJJ{HZu`j~8;;5v|ykT{SPgz%o0v;_%EMVuc9+y%*4&R?1{`14T_ix|fZ%2nG`hlqUhcC_a zyE+L2(K+mv{JctN>oi#}Mv2KzRWk)OZidVzRtI{90rW4XGQ{Udo{SS9g#6HGfBfRR zw@1I6o_qkMKD>Ne0D4Ui zKl^AAH3bMpnHp(>d8D6%0tM+%NuWWW_!G&G!A|-cRPJq))=fx#^vkQGgTs|XPA(1I zEnxqa5Z8sq6M(1L^c9Z$D9w}De~m5QvVN?QUi7VRKMBq|Bh02rP|XQOfGZST7Kcaa2$lrW91q zF@n!N!&v}+9_QlO27h;junHOh^UPsVpBdg+&&GuFFFLw<8#(PaUbM7-yijl;<=rhwp;SfweG;m|>&ZiDlAf`O*;Tupj zJtpR+gv!#7K^h_k;oO?{f1Y9SY;0yR*Qcm^-N@E)OW}%81sdPv=$C`{hsTG%oUWwD z)vpGwfOU6I`_M{yaD-MfXccnwJz*tho&H8o!7!=(Dyk|UM zC9CL6VHR5kUEqXiu6iB4+DT*qnkD>6VNwasVy5$VpHw6T_e+NMe~rG?JW)5{4aY@{ z*gXFAX6R=)ujY1E0nLiq zQ+|%~1IucMoG{y#e`k2=U_I@J`3E?MiLk}f<~iphwYbrS0LNQ6O={tI- zK@;;N4j@i2{vUF-n%?z0y|G?u;+3i>z;`SNcT`PteTC$qf7x^d$u4c<7iqvSL+65! zbGDHP2MGz#%7O5KX~bsCg44!7b&?L6ux(}wD1fNKi$5CxK*T)y2~NH}6AH>6XfY$Z z{5*?c*ci>wLGchG#NoIrgbUfs=DM2B`VI$+y)F)-Rtm&8(!oF+M$%x| z5lpy?abFtZf6zoTx_*F#o%PXte)t10IKe1}`s}0Wg&mnPfx8)`93pSV=olkC@%ZwJ ztLy>D(&Tp8anARI?N5Z-YV*qJZFAGvj31-9?B+lot&xtGd*h^H8FC2l%|VX(shyKe zX8O9)+L;z3-P^VEDz9g`4y9}PqbkF9iT1?kfI&vJe@VQVf3(#u#%Rdr@-;ECN4dsv z12cd#_O&m_Xz^8GmDeC~^d)4!`9l*bCDHj97r~P&gLUW{fCF&)2KnS-821oh#BG@D zYAb{t(_2vUPY4Vf%SH>Wbg^%m z25C*YT%F@|**CBF&33LU25%6qkmaezc~((+VA5sIm;FVm=I0^HX1gZ6Z(hsF@v{z+ zEGG9pF2LES&9F|Biv@xKedSRMl@q}-BA+u5f4g*v3n(YvUX0n!D_&j`|NjFHtg`I~<@gIV zh8L70o>Yjaa0HBO>O(rF;K{%X?HmPh0!Q3Od3;h;hUDcDehs$U%HbTa5vF_Sluq%! zO2H9s?)_+-1!utYX?EY$t)54t&k=^se;J_dZOvu={`tG@dPb~&m2y%SV5#RNdXCFo zz+Kga;di&IQ$68(sap!MbH%v_0$Oh4qxsHaCdhHzx|C6mP&&H5W5#CV3MFIA^@+TC zLc{URRn6=n!Aa8Nbjl2#0@-+a0O>w**wZQ`bjM*hsTux~I3YcWGyrcV>uJSaeNi?)3sK>f4p897ZLNtJeWS+t3anRxeepKxVrRaC{-v{=ZG?s zo-hx#ENDVfR6v~kVv5+iQU4Of^DNA7#G*KA9p~B)ly14-HcV#hs4t#o6S)7J;y9^i zL!MV@A0}F~@9vcF^y!T8pG+1;44liw=)JDvxqc@eG|&u^b<^th-`^G=e;ABR?CUo_YiJ>wkHjZ(Rr;&^{q8I-h&Lsi zTU(y)n|^>Vi|p9(Z>0$2e|{TP1c<87+{j>0H$F!Nn6GFvB|`>Oy^=2GwWY;RIT_cL z3HLE9@_cs&8Bfu}EUF4Cry_t?uyInbRjt%lA*fWu*eF$}F&?5Mvw@s1xaiy~eq$bg zau@rP=Xt%Sqdw(Dfu9f53KUo9o*Me#g`y z{MwWpv!oQ9`l1!Lqo1Vs_{FCDT?VW6!v5Gi7+Kz7+%+#?N`IXZ9htR_mw#fH^GJqD zN@`1Bg?UvE)v+DaA_lT%$c&lI#F^-Bg?P>x#&Ao?qA7MQHvQT5nNOIDWIp~!Imemc zz@N#+3AcIuY|VW1e^L8v?ZMydJ#zhqufle7mHwv1sZQUif0}-XvvTECkD#uU3$uuk zb;0`X^c;Wt)gROOvZ{Y9<8qVN3{9jW+T@eLQ5(UrqP?)(70etEHCPn_t}yg^7@VWM zowKld;{@~hItgcH$*?WSVVb&Slw0#Myzi`k(HY`G^IFpjf5>WVBsm}lAEAKPO|z;n#dK#ucNLpEViwIkJ14T_)h_tlIp-R(fC*1g~+e6%ZLnEZ#uxT9|&r zyy(^2<3rZ+e*zY_sX zK{sGd9$!F=a`d%P8b!-#-TwI>#wh0H(SFv zN#1n&AOHG`c<^ZP8C`?sXMk#vCR{tMSe$dwf79d~W1u&kha~2~&QKbog^b96M4IdL z!J26D3eGW1a(ZsVy;_spDfrC756vi3eWg# ze;eDqOj$R~C~%BP;c+3h!Y+pZ6R@?qSMPEia`8a&wr^6M`Z=>xYq3v@+f~@Zo>)d! zdgyh{9ebFt>GaVk3nHYn^F^}eu8e!EIk=2z&9%E15jzrJ zV#c;Pa9@pjUBtfG6mA?P5NpU8q0|CAfy0@(Oe7@Lj>n8A*x%)kU}ybPIb&g>8NkpG zK(p@KAGSI6l?mCbKlnq;D>`n4T<9N1cdVSaO|T&zBfthAzYg-(IF>!Y`M!gAe*$7- z@CEa))by>RPVA~q-2Uii-5ZrM3j+34XS7du-1#uC9sB)3yoa|?YDYwDfwNHD$E=Qs%~<8aR!`Ov zP7caruZsX*K%l>)Lw2^cGgxaMkue;JW!GCXpWQ2c^a5?(j#j|6HjiFp=@)(w~)6Xj}3GH7Vu+UMTctFY%hTZAKG z)u(9oa?&Lu8h2Vuia5&Ign{8Yy4#9-j;Dk*a7G6EntXe}`aU_m0u5hqqEc^tD$V6$ zO;G35CfspZF+V_Gg|dKF#DDULt&JxeTl%*Pq<^d60w6XZh$0X0WW8lLs=4M9%aB_~xrRRUVf7D8z=r3ieab;qwk>cjTk?0)kLk^se_Q5n;?*!=QL2RSAy8HxOw0Bg|c^`dqMj<;ASh`RA!m;|*x zBykQ-2&W+Yxtb$?4IY6xk(V-s!q4 z_k;9 zh0%((02g2KNDA(SVy0JxPn3fVOdkLUVsHhQ_l^3x969jQtZe114}%jHv);ee@!^(kNkLQ3_@2 zEHo`mGemSUStG5lae-y8GV}#5A^KIes8EryI6>vzs(7T-(u_K2og}Z?BbUjr(E6K_ zSJNOMR5LOo2Pl;TkgeFH174Oi8uw+O?8JLqJ?oT$O0Fl{WMq+fux=_cOocM%h<}^| z13uz+8Lph_luXYmnT^qGaC59Ea^9@C2=92Ut9KIZNGpr6KHO^*5hBE8dJD#h>8pjI z4|TBi6xT+>B4z9m+8lVLvJn$II$boy+B2{u>_VuU?kKH_(>v+01e{=)f*G}6{wg)0 zBbP|yMbj}y7D&3P4!|Uxge9QVGk-Ay@Z^LTg=y^pqpKEd1T2jHEEOQbokilF^>0D! z#BDikA?gJ92_>iSGMB)?f07+;_2;I4$g*Dryhlx8wVbmuZU~|KN5cf6!0Dn#KK3 z_dMr#TRUl_e)Z7P& z18?49>fSLLPzHgcg9RtTo_{Io1c^H%aZ}Dl?7PR~;lZ1iY{-+>A8bIyuYbM7AP>6C zKb);yMX2mNTYDJLD&ybiW$v=5!K@m~a!Zrb2M$DdixM8sI(t~Eg-wixBVrr#9wgp#s=j9&wqYpLXAf8mF;xy zf{EK+xQaCJ1Yivay7V@>@g;x0AzImd1(%su(k5iipButt6_8QxX6y7r-QGVWWj46$ z<_#H2{t#HYu(O=hkZn=wKG*a+-Mn(Y_1$-4T=$V4m*QhX?2LMn6G_^&H(5)S+h4oq zSt(hWSLo;Np9y;n8Gn}F6qj)_lF44xq!1UoH=AtY9&`d>G^`wh`Q;_r9Wu`9B)jS6 z;mNVNpzU)aI#uc0*a#h02B1+zj_P%Z$3V-(m_o>d57ZUga}%oZ(5}`uTSDREOe>W# z%wf>zF;k%|nBlde(P85!UJSj)xox6O5%Lf>%-q6hxrcoE8-M%ojD4``(!iczS|F;y z%+?|*!F5w@woulEpTfz804FxWAV)l$-SI(v>i|#*@e=zfUgF>v;C|;fIHxGq4Xfr} zOJDTgaC@Q<4YU^)V@4F8#h8&;m4Tiagb41m-Os(XY*sODmLa>QRhIL9U)y1e`uB_D zx$Zr#=*tk06n}&~9sOB|p2?Xo!}{*0+|Ab+P|Gp#aB?`ycykfb`GBP*8uQ?7)zKUN#(c@mPnl`X z6K$2UwttcdU%3Ss>bS!vi9cU*6gQvS$f=}u1*}EQZ9xfiWiBM5@eyl)t~%X;FnmUL zlzp(rVzs=NTY*MlT_8hNHSN?OOh7%NXx-$6l7C)I-FlD>%daa( zEARSA8it|mNr!#|9X`V|#-mA(cp&afnzRvL5MMC$p}f4|y5telmc^R8Trl4{^`_Q_ zBA?=rIkQ9fG32F?-Gt_KniknP3DP3`j|hvUk>m=jywGJvgQv@LI74T50?(!rry1m$ zqklGs38Pq_0pUJR^dPDb3jcLooE+bccpRSUR4HbpyXR-ZDiZ3t1?0f8vZNr5-uSUc4PJag9z8vHI5gxTf@x1`emcFVl5} zyf8=5{eBC?oDAczjjT1|J%*fQ@J$p1ntwAz!a`56J6pWkvQbu+9l!Xr6wn02FP+}F zM??O23#LAxF&}1F4ZmR8f{04VfGO2aNb(Ue5N5;tDmZxeYneI~o$t(fY2TdREXRYT zeI?neGWKI)nOD740OWJQ;nTo4L_j~H6UII9>cV<5#9KsUJPfKOheBdQ0KQz{P~bx4H)IoJ0!<1?3^tY# zB?p{o;(3}kYi!ggEXEqYP5!ThX_pPcxo!%2HMl z*m~5tAO)YbER`cqcC_lPL0gl7kczxxoPyL|HJnKP?S)r9?2uWhC6?U+9z<>WTJc>Z z3g5o?7K5i1k!#KUH&rN;_@6)I=?Jqg83B?Qg#-#QO{VjFVQCo}J{_ zpT+}N5Fd640M8C~j$H@`tp92U|I3y#*}`Kwfo;q*VUwU7(aU^6zCPm*f|yIJgr4Xm zZw)16Y9p)?dS@~27RA)86cO08LNk8HiYVt6>g?I#1VW!Y*B$gVV& z{k*L4eQ*JvZt1qn+SIk$cX8;u(!14qS2~}Sp`=&AKYAA1q|00!!$os*3XKm^33>jg z!W^u8t^YhpUAfHu<@asvqSF<$Fv2UyhWNz2UJZa!kjsVReCgv>)XS6E4 zdDOR#yMwMlCX*i;bQn`z-XoR)Yk7jrz}2k<>z!x=z&^J0TqEn#+u5+OL?wJwQ9Fr@pksN8m7?Dq&qNB5-#2oIp$5PJdvnnH#h?$Np!9nP9bD ziB~dx=757~6!GqN_Ge{~sP-0!l?!b|HCUN7b%deL1bg!I{bsyuI-ZndO;U@KE^}x2 zSJ}qk^n~IbS6_3>gY!G(9;Q`x)!NEx{rRl=i#i{lV;K;=@;o@pOgb{D(BkLt1L`u^MA`Pcp(+yR5a}Yu6LNgD ze49z6C>P=hdsF!-xsUtr{8R2ytDj;r#N@W?rxjx|=?9MR1Y0Z3PHye+l} z4CQk4PMdid#jvSEGebc!n>XRbUK*ZDhTl(ueY|i``Ie(v$g-&;!jb~j|Ky20uWd;o?Zqc z+e&JB5Ptw$+wGnRYX~DW>r0mvFDD(JS0F=^j#ro^^Dl5Jx`>2;Xvw|oOLwxg=%N() zYzSHtMyN8p}}MuQ(VH$Q*=yzv(xW0*1&hQ~^7)N{qTHvFZ_tQH6ol7fY!8I$bXyjYO9pLzO~lUx+NPMsB#M37V2j>$E38S zGWDTPzpZ1qUDe`aRFe6WsoS4tNqL7Vy1DRUW~ z(7RP<$L+KABbH>tcXh9XG6>o7(Fi@H0I|cgEI0%}DRy=O0Vy-N&JRMe+AMh>_Z$}@ZSwtz+o>z;zBpuy%CH3Td~eS^3CY+eS1P=+{B>%7DTn8z(Ct@bLW z4drQ-*S90ISVHGCzNK`}+0C;pvGciX)=3d{HHavY;6ZvQD~J#$(Tgr{4~Oe-CTCcNb1bZ#MA+VSXL-hZAR{s8nG*hK@6z<6R0pmKo4p|X+82yt29lh6T`xmkD{ zvH0;W{FKu|#N@U=v3t7BpG^-_O~+yAB)^&6(2Au-r#DbC8tu7ywWKwiUMo#JW!O$G zUKoA!T$ckWr}q_35T?q8azJt$IQ;b3KztJU)ny;?H83&oCUrVIUAV#X~7$(R{`5f|54bg}2|xjf zKDeNSC=}W!f^*5K3j4be{0ej=9Ex8WXI6{~;JI*c8^-6rh&Lx^&C8s-~t#16D8kRsvp=7Zf*dVlYdhVl|D-^2_km(N}-`&>riZz%Amhm4`^P~-0F=q}jD!wI)@Qb8x33i z7DiZ~H$dETg7*gJH%0XZj>YVGC-qLU2mg4+u3;2v3m=u%r1#h4blb9$V{Cqh;(s{) zs6zg9#}aShpSn$OWk~=&XF6E%{V-p9Te`%ep0DI;DF4A!fZ~t_QgIjjmgB(x&Wpst z>pOvmNH){{&B;|XPc)RZ5?F>^kt^;Y)&DO<7QdhiBk7p=0VXSfXa&kuOftweOnnZo zkrj#%UqeXRT!nNarXI?4AGyKA-hZZgIyRc8<=E%2)*+v-uFfghZQDKm!vmAq6TjrxXFW)mh$`E@e9kjR9pV1iy%&phiJbF)q+6 z7hn)Ky8-;g|1>Fc=HkteD)WdQ0dJL36sWPj-85*wy7 za%IX*8<7>?y8L2QRUGJunvtjGME!lCiMsrf`g|5+g;FG>Mp6auXBB!RaXW(4p$U-yKOFh7#;1fU}~q-MP3xYS%ZH3^4&b8cL!GqUdZD%$k{sEuAH%s_v|B0S+@) zK@+fX!43G%EK%l)g@FNc$bWoABZ;024dJ!*&*)@L_e>kb%V_-0%DkM**i3gq?at{n?oHD8wIOj^1Epp;`QtNp?qNo9}(JzVI{PA8vf#!<8QZ&#OhSk(V%0EzMFVw@56HaZ3 z!Fn8tu4%uB9)H1J4SHpc1@?HgaP*q!&fgb$J+7cvnQP$Y3{!8q8Rg>lV`8{?be;YH zh3#w`PsVJ{cVxv+o5@foIpqtqAXJ*=Ws{<(GZ)U}iinQs7$0&j+yYiO&9FF09XMj9 z*XNURDoc?T%w%p*q2xP17d@+xDrdD;g-;~8{JAqa0)J8r&StW?&(^);aPV6GJvn$^ zH3FFKGmuKI6L=Rm=JpV&2Mh^Lv(mo$fFa^}Z+u1_Ow}deyeQ3z2=a zaJ5Df=Y*?*(B>KZXux?T(%WubR^zNRI_k)Zun&`zDksGr@vH2(*njf}Ce!H#$SQI3 zeo20d^?wWIB9(Qi`AkPFvdOk8C;P*sy=s<;bQKx9vAk}hf5i#z z*+Dn#0SCpDeJl|NZ*S>}{zaCz?ZSxWg@hkAnFV5Y zARYpd84os2)4}MA$stGt@1L8$2U5Qo(K$Tpw_^0v)BW0bfjFYPQSayM!p6|)wc$+t zkbk?V86{6=a1!zkX%dfztw^)8_sShx-ezfA9oUCVjL&|DODvcVK?_N%P~2Pinu+yh zc|U;n&8Y&8G|0re7GmwvE~XgLZByo72PhJT+?RW`CKiC^~bngg*7~$k4M!xjI;z0h*DSKZ^sD z!QNa86y=7Dv{s4tU%anE-ptD6h9}vPT81J---dUmEVw)JoDCJvK)sZ)E)l2Dl~d2?n{zZuBBlC+}nwnFEGY#0L z->n}o*CR*zn#tSytm1h0n?o|bm4D6ED)*jkZXu$lEr~~Lk=+Gr8ptvf@V!Pr+(VLu zHvWyI@3txC0q3^IfK>N1r=< zPyzrJG?c@y0se~C*R?7u{s$-)K;YA?ospYu{k!Fpo62z!5+-G-goEiZw0}t?i6P|9 zLhm-(@Z(?Kd^p{I`Q~uaww8u$o5ie9DpY~2`x0zceuTesC099w!4oUF>ReddxZ9xA z$ok4`jIK3u9q$wMoqxw>-TNe+`uA%etK3S+4JyFr%Z%rE<~`fRijpGtVZX zf~XQ4Y*yn4J^5CqT4)Woj5>0=s`VtVByVFsMPuHl9o24-;?JDAynl@irS7~(`&l)J zEU!3kV?#xY-lHAe(+x-7QP22QTD#r7|F*q1v5;!9*7+u5Gq8RX`B!c@{i-|6N2m>bdjh0z=l6G6ShY2 z@DCJ&oJ5hvb^dh(tbf+gb#ROUC~-U41Za-Tx&7;}uU|J?!#GKR9rW?9zoZTM>(~GA zKLUKZz868s9%eKZ0in-0sWdS2a5~N5_oG8;!A444`HcksVmg zQ2=NLbM4Cb4qUh$bw@TdZGvUYkq<+3qs}d~`Ree^>HdeKUtS#+@-WW3 z`zFE7g(BGV3J2#1V_-)Va?DnMLb8GAsq#{l89RD)_{-_h>F*zo_fOv+t!VRSAeSfkVMbvbNCZulEzl5%XHbK2^QiU#8e4S3bgvRFfHhR8g4ZjK!okezS!oA%8lgWpvcSE$wQoVH~;9{Bt(| zf;9?*sMj)5o(c|S#<*kj|KKTf5eWh?Kz6Ddf|u~g;Lh^b$;N{cLiqBb%u6cz9{Eth zF;Fcpg(tRMJvYWHCTrV~zX!sHG53x25y~MWjiFg*+QNzlL^M%OMxI;4q_e2|XR_(a z%QBoh`G1hOy;tGgom`B{;pQXzGp>zb$HOJ^huioTL2bF>o+2Q|; zF%TK<2Z};a*$Szn^qJ@UJdW0J)dNfgk>?&*FMr)>@CQT_kzc*^=4L&8xxewmzj-}f z1b!=U6Mz)~&O}AZZ2B?IEf0Q^QWy=tIu2Q%>EQnC0cNpiioT8KSq0Z=Z@fPhe6$YENO9wuX!qRbq+9?>YpK zhkD4ycI2>$t;DFmOCK`m^-d5{0Rm{uvZ>GONd+Fy719Q8RuG{)uOD3+$iTwY7^d6~ zhkqaEpebK^ZLL&W19d6ORgZHVr+rjcuIS(kAMHGT9Q?0<|IN*$^2tJO{`QZ@!`vrF!CIBWy-%E7%%uk@Hju1@?RVkKGHpsvo_)Mm}B z(M}a0Uskekn#c*0aTm3U&2>-A!s9q`FA8%%6SMJbWj4TA8UIK4Z268uJ5MW04u25a zVZNGZpGmN8TURi;7N}e>7-_1*MjItFFJlETU$z0;!#l%k=g0GAdFpwj8UJXliJ7pW zNofyDBi8!6%v10j=P{WKbnZyOYo^cQSsgO&^pLSr1*`Jj;^OAU%pyUN4bm!xs-f4L z4!_;c4!@ngDzctu&CKf4bDS_|K7ZP{prt4~&-JJ$<>nfyAzN-U=R1#s^~YZxKd=(* z#um%*&!&__T^R-Ozmr*NA*NgGQCwPpQbWAG{<(^~HpT=BSFA8cWZOkW8ZXx@xgl4*T+(g_l-1;dM(Wf|9Hot#H8@| z(|y`z)w21b_wwEO1}5rpMd#-+Q#i>O<;*r!6XLI#A%p3mNyZI63>Y-HB2Z4y?evh% zK{Rgr*%lBPd^(1OG01`dZGR7@4}&lG#FEf$4cmqR^HJFUEksUAQT~ns(hN-zWvefc z7itaUEdKG_H@|$ZZ1JSmDQA*v?1f)Cy>ZVZpy+s*1*0UQk1<;YJgkS>Bwhn5@d`u5 z{}Vjg*3O6ds#(4(cX-tKsCy|^Rf$=ORbu4IxKj8RChR5#%-{cFMs*D_CvqXlB>9(Y9_?0)eU%DsDr-$t!{UqrK*^*s@~+?F#d!h zY79`dMPJsjH^9m8`Yy}_6d=i>YPEwoj92kzpuS)9H znNB}EN;{nohX6d)0cQezRx9z@PnVa`=w*z#e7fJGftyc&Xn(aJ@7O9M3^Y)G+%eNB zVF|gHZM3Ym(BgT?i7)6$4g0{H^8-u23{WtKYfxs#4RqTc_V6X>yJ0n*iKj+wy)}L% z&UpIwOj>d!eC$+TyhdCXn-K+(QOFIo`vfE!vb6n;Pr=ro!^RayU}Ms z=Qi7Bb8YGN7=Nx5NOm{aw-3k0@+=r?7@?{gRf%?PPRh6?TjP&j>Hg*RVPZUa0pz)= z|FI5YzS^3cS2sPbv%;)*vY7qfH8*ebi`rRtk$A13yYhPj3e;b~ui&;;;&(EBg1vi{!t$*+_p!M%FDt%EW%(6FPA2U0% z?6~vXg}ipT$u5*)u~VUW55Vfpd~(>Uyt{OtM)+dqP2WDU`~r9~+dDc0p&aa0im;>% z&y_YT0s&_ozpcxR%-a3gNIN$*{Ls0U8liDwjJZx|3$0jSPJ>uNEX@I8yHN8x`+@tz zt@!=Y4u4iM&(W)4r58?RCRZS1M|s;sM)D7E=VgCOzCMiCO;7gLI0=`y{@&WuoBnZ& zB7Pagz0FscUEd9_5dj(`lXDS|D+)PyJLV=_k#BX+{i^g(y$N0 z1%SQc`)y!osun;XL0+OZ*B`j#Rr;5X>ZLY5Eq}JiZi9ZrToMX3Hv36M;%D+^Cs$z` zfw?=`ZSyX@S8lscWF`8yK32a_+g(v{IeEKVac{sL*XV7UXq%PM&-%Z|V@a}KbP(-h zX#@Za5F~{Y-vP3=dvxHFcnAxQemLvD2!pF(bn)Za+SO<@NPgJdY)7A>E-%~Y#sBJb zyMN(EJiOeD`kQ7V-vDz8FE+!UG;y;Qq)Jr%=lPw}PxFiMn zxXqm3iL#uY{yvtvxSdy;5DUrWRk@`1QGW_9c{d1Rzp=<`j_IFrvG9JRazuZ#5-T#S z{TF|elc`cS#9yUC4SAN%UX>XwM3l`EPquh(zJuLA&4sJWyeEH=`sV%a;L74)euFRG zp2z2wx-S#IH!%K;KV$&82X%7Y?l<^)zIGlPP-%iEZ$|M}Qwe$xcBNENPu_`AlYf#Q zrHZ7t$0svSpD)wo%pO-dw?pjd6%wc}cfAq(niTsROoGsY)+zJFwfIAC&f(83xsYd_ z1+*^rxV);H&p^x?$F=S43f}|SSU>|9Tj+}g{K40{%4j)dtu1#P=mAk5m3tT?3XE%H zvk7p<`QSJuw5~ecHd=wwyO339-G2r{R{y&R6er$*RVo@bD59umMPXnhac}Q3`a~^; z48=d5shoqF<0oFBc#1!oqxExZHK7f$`&BEQUuL$J-Eu26H_f)G#?pOL3*(mU?M!+I zp79&Zp>Ym;QOh2Lf%D|O+N@#>cf+LXlt)O$~i(7U$Q_wD(gDE0cA`yF49;P))zBDT~h`ZL+c z8tU~2a&0>fzVe>4(dH&TOn?ecAT=@m84o-4n#r{VhZ5PMN7K#-{*PGT>u<_1R+oo=}=YORw(e|-gD2s zqAzj6*W+PXe%n6(EZw$}0@+~O!if2c;dA`WvkvcI;->(PA-HFoW`8e#1UC?o!t6LYz) zBU6^~BZ(cZ-B=!dy?=VW9lSzWBnlUpIE9SBv>S8yki`(~XlWqF+vb!MvR$H}dh-g| zgi|?3asC@cV@w&hj~$P37R&Txfup*Bs`Lfs00h*4?{4BUq0#Q&?g!yHVxfqARmEv$ z-lf%Tb=Gp08K5BTJqVTV_za@%torMVW0&p?)1mpb9_(9?^N6ePjT9u(1WG)yG!hQeHT%2t}^>o?zj`uP6ShvQOm z&(x8D(1F7~G&?=9Yc{Wd!?l+t{X43J`d)kOJG2jYR*mg3Ay74)p@5Y7TA}x2m0GHv6D>K)6+L8_%D(xTtV&#J@ zW-a8O$|ZL#B-KgVYyMp`L2OMeE6g%C)|%$W}sV^rRr(N(6w|ys)NgpqpzQh zUZ97tP7^gVuE8v|`(K~smfQ^fZ}2SBT+Dkme}A2+EY4O{7M&(Hubwie?omJ@Qm#TI zepDkP=T#RTZ%6Y=?Z?~Eyu$PGb~LvPd&DhicNdY5KUxRB_m&FS-j<&`Ce$j=`JF4} zDQry<;gWIl7d0l}l$16DuNmxoevVz@&}7?rHvTKv|19C4FsMPGci{gs?D=lk?@sziNfYm~ z&&gLAPIMmGoPO6JcQS%4J7?nk6&z8_UVqPJw@adZRcd=}>b=?;a*2ij7}KqCi+f^NKQgqpTODF@~k!aZ|AgIuG5xN}Z63lz)Zz z8M`GH_m?AhL)3I9yIZv7Gx)={+3ZJ`CkZ;dWqHe;)WCq}L_hoAe&KJ!bS#AfZ7N&T zI~PZvI>*RJ-{$gnam67I?zbq%{%Q=SkzA^R`O^bRw)M->ZOfti(rs+?IlB3IDR;Gm zml$2l3##{$3?0thjiaEBlZuo`HoO|3^7lrdjWHAfCW&$Sh9v%|u~@bk#}qv8cty^@>VF#-_byM& zGNsY%PG!b!sbw9kcM4Wjc^TOf6i&Biso(CUSXIfA=Ej!46TQ;??X9&wS1&%+`W$7f z|EUwU)_hSo>b~C8QMWilVXe=(JHWqnm$=sFEU*^apzF%yrnYO(ptpZiGm$$(bxNd%LT;|DaDTByf4C;HQ&3xG zgAwo|y*G zODCq=Ibt^P@0^q=CV%?Rh>LKHBw8Gp=*;f+q4~mP*oW~RkG17HKfX66*E4mvdg%h!G8;_KksV}EZYnIL%zql$s-Qq3+} zDzcRi$Dtr{Yz?uBy4_997#mny)5><6Htn)z-=EHeKG>_t{C+Dn^LdWAgB0*V=GhSzv+VR?LPg?pCg>Ldmu##L3y^7e#^^FZo6O zc;s-jQgmNEP7loPf z=;qrl=~PEE|wyCvKEK;NN(65yoB z{5Wxm&_d;dJ7IE|EQzK*a1xBu?cnWskY2@OcKZxX`eod8U%H9Mm%;6hFG*(@z)hbt z+C$W|6U7nvor@m+vub2}(xjlj$?ZEsGKD@-e8z6it+de)O4 zcs7uK35x)bAuQ8de0DIOHsWgw-%KYLvcR1|PJdWhy-C-U3XH-lyfGd@#GfVx@7rX1 z^c;i~8n@t~V;R7!*7Ibc=$VW(m2m+S4m1c2MOQ-3Qa6o7LMdWe>40oqJc<$qRW@n;%e zzJG*A;a&s1qMHu17;QlbW_M~gvnU}u4mXl#8a#WgV0u?sW4>UF&eXR*om=E^uf{j# z3^Uc_+uaKk6f}-Yx+S}$35K$*xk9NXrgGD*5qmtRaR(`yOUun`>WTxiI~&PxsH~-+ z$p8`GCXn6;8BK!?Zf=~ORE{h*dMCSE0lboyVK8Hl43br&SK$urCJI9D32#tz z&gmHrb>kp@hRuaR+lU9wycw5?s|m-=IMwk?kMWhA`?7o|qcJOQ&ElG7)&S?|P`z29 z%P)%oPDvuF*pS+U_oY28aO$Q>th*BbS-KKGEgn9vu~B_IEh{HC2IZ3XQPnJyLVt!o z+G8`FL!0Mw>P029^-n2>N|Ed2pUSmKT}b0Y&Hwzn=4QA48#6hle`--DEy(zP6#>>n zXA}>US1#JA{e~C|J1c1)^9=fZTB7dk)&xlBwqOV1BBw)&Zan#~nVQV(CWMQ%Uu8E+ zW%5X>ke`kmf0lb$uRn?_zknHh*?(gFqz1ri6h;^MPL1}M8AgS1TXIcPO^pWj(1Isv z&E6L=$t(30m{#IJeGCm_izV}{;+>DC;dl1tjMUGx4F9aw>jU522PC3OUBz_s^{B>S zG+j9=5Yj`Lul@vz$!{zU!Tl>{0I8;k;fc*ye}X3kQk^;bQ`|#Ij^1K^(tko765VhG zy}(R`HS>ck35;r51pPINFD^?N;*BWnQkGb0C_S$sx3y#B&*B(a4yvuSrPdx2ueq*0 zBvj-}W4nv$xjbT@TC^{yN=W+mRhY!`JQLv=;rH~W<+NX6rnvP_Ey_Ps23t7<#h3ai zIhE4SZ>!??<_pVu{(`SzNq_uf9!F|otn>KDvbBmg{kZCVr!H##=5`zm_2q<8+|7xd4*ntQ3`Lk16h2 zl%amHCsW4y(fPbt^DBD7A>B38_WosD;#oQ#r&lX=#x;B1c*D6He>=%k^ao(ib(wE- zN0>dA_T^XplNRiHv44?fzoR)Rfzf9F9iHo65$6w1eq|Tw*!p6l&VH*hPyBq+HF9~aYK6io;%i1!YjPXLKe{}rP zB(`OLWich4;h9zG|E59Mz#?kg_|Z;bAlnjr(P#6^ITZQu z2+GK@6d-zdqksM9s5^|$q%+tWC3{#+) z!N*{-V+=;UK=m+2P~)=|?ycv_Jz43h8cNlnA@KIpzc)tvjfH~*ir_e{nc3)&2^e{t4lPQUT69%Z+q!OoX^ z6kbK8Wv?#SScSkgNIwj0xEh^~Wsi+`NIZnu!0?x_k$UR@2_;MNwLqF%qZ!nOIwi|(l2 z0n63dNalRVUy{kySu~{g+YJl7VNV>|9Oy4J4A2*!KGAeCc78(x*zMqTbRME%mgLr) zZcr~f-Ov)G(T#D5zjKQklFqs{T?cSumHwd&|Ci@hUer|Hw7nHTOs;CmolM4UuVga* z!hde0v#Wy{#xj>7kEHecUJ0hGjf7GR@l@YPFTF`xUI~}@;_jrTydB;6Xe-)&U3v00 zz0EkUBDhG$>2cEgu^)0Q&3SMh_DA>%ItfcpFR(H9$O+OqJpZEhE04C~T?4#Tv#ng( zu)IM3-LW-iA}R0I5(=44M_*Kv+MrMI=zm8cl3qhdV0I#Ci^K_`KZaEul~)KaTpJd> z_%gzAPkR7gK%l?H8^ZBD7{5Me4LW^!K-|~m^NoNQB@Awt5y^(2rV!t|}(Ujc|>3R`VlP>0h^uR$y zj23@fh0CZmcaF52QA*lBAk1l^sFAmM&0xn8_>2L%t~Vk_U5&=D_hza9vs3>^(fCa@ zN4bCczqIgC$l$Gg1(9iwX{k`SdoDKHO}vW8Q)hH7AM#vGMV?_ao(vNZZZTn-7pG&$ z6&T>%9Zs4RZeRNVSMaX)c54i5LzD1d4C#O0pu{%;SnzcEna(GP#9+a8$A~QzOg9D3 zMy`w+<>KG=KK{_}SVCQOuTxX%y>`WxYNVD?rta-&nVMIZXA3t3u6q6G%{8VJXpFtT zbc?R_V&rQ4(VUGg8Sz5~5w}2RrP+~|*XHZF=wnq^Yd$nv=(W?gmXU@JwY{mdhqr&p zZ(>$6sEaOQ(rtV@ptT+iuPw_QU^El-V8p}5RKAANUp_?27E~X75d~&B8@E2m0vfGW z=n6ijlkVm8D9BOGAZf=wf2C^vs|-rwf^ zow&s{=o_dUZPXgAWa zyVL1x2Nri&U5!yFBc%ReHFFZY0z)hi7mB|!A8^SLMzrSYv!|Tr9YakbWXgwpDo!=7fJnY1H_7e*p^uxzN4@k{N%hMC^R%Md@pHYHz&UHQT%* zN6&((#RLRCqYMy!R5o+?sqYI$S#+An%jqvGgpnc5B>R!;pjgQ! z?|~vk)xg-t>rDjgga#T+1_tFA3nYsDDqLdQu&QU9 zzY?&_7OH?}18vnh5foLmsNZ@xCT+Lco=eXp1?+!`wXjZU2JQSt@29u#Pd-)4BHBUWZbjM@KGBSC$!~jKyQ&)A_7v(~U-wd)Se<`T=(6E;KZska2}8dx zjTY4rl5LIN+{6q}KDN3&K81^I$=T3zU5?%aFW;&Pv_( zzMfp&jI`GhNBd_O+ffonyR}QI>ssV^kigVs$ArD3S-Eht-Hx9OQl7vSqXTk}WY^ZI z7}y#dnFT&U05pGhjKwD$f-T#A^~-g9loHIQD0OQ3E_qw1PTI7Br6de5vWS6VZPasizK zmf>xHGNjps zw@8%53rEOhKw=1k!FVG&HZ!>aySImOaq}+9q`7xQGm|L7F17Jih^^JtY~$@eH6I|A ztFz;ol|q{3VwP`RKf0LQpvEY6G)JL4KqDw-yNiFgB%w8qQOe~d)EqeW*L%$0T6rX! zryE0_1KIF82-|b0?cgKl%R1VZ)?;T8P!ahd$jkyGCCg%hSw9knmdkHw#TU%JgkNit zb*Uja;?|FN+bj2sW&8TkCt?84Yw{l`V@619V3J)B4hG0$lJuJ1FuY-|gD`RtD|`Sv zTgiVCxi(ylKqNg}r=;j^IpsL-e*p z_(ZoM?;D~b^_ap$i<~fHTGeoZH6d6GT468fgWCt@P^_IM+%mrtb>s86i|nK8xXb3u zqqILUJ@S}$G-ig(IJjn>;#u5}HrpW;0jhryz@d{hNQ&kMe3z0H1&7;4M}KqqvFybh zSe6^k09^w&J-&&M4rcTQivqYj_Ge)SYTP;d9xzE9m?Y(kA@l2)Y(wNsf@|cJBTbTx zJdwHF>cZ^aG~mDFE9=zNH=!A)Y2b1`Os~*fY`4QZ+1-Be!V+38LmO0xemz}W1N47V z>E>eS5!Y;#VCscbF$<(l;$*77^nZagAgS7SLIFh&%arq#u(17I9&ih~&I{YYcR&Kq zDkS~SBwC&zVK)kl@{09#xA)Q4lJ6)iLGH1)D-0z6t}X0V_}>6hANmngQLx6&;gxwv zmI$8h@BVL|HoOMMAqSCVkPbTJ+wyW2l~6q&u40f zf*;%acHCuG+MEJ&na~$|j3pM}UN694P{4-^G&mtQ_f?0L5>D%2b4VC8r^y+al_{i# z0@CX8+?zH0=Vmuwl|;l`Ev1%LN$Kp(igeeh-JgsI(a>z?Rd;uBJRFwWudIInq3rAG z)h33_r!XPMqn*BnDy=~4z%0+CY6R6@I1bnFEWmSC;b<-0Cm4z-Rs@R0A{|uRSPcDF zYwIh(07`Y4jZhV$at%@ASog#~GZCT|S*fuN-@bkr`d?WrE%_%KVX1f*)(|D0dMvH0 z4qZ20`m;1$T3&Vkg;w`fj?{nacr*yd-AlOe#2M*~G3Wm+mGc$c^pf+Zxq@rq=a$fa zzklV7sWVjT8PNfuEP5jS+bVW$ zvnkQXu6BG@IJt)RiUMsERZB0n%%=@<%zUY6RnWR(xL5QZlhkhgMq}LBy3pjD6t*!$CE3IED3cIcjAW2rZ2a6d^vcb1t3lcYo}tr4!PPEZ^<~|WTNq(I z2HW5`hcA4TP7o4skwLtWCJ+)o*l6Pl9;U&hkGHXlGW_K+y1jpQFA?WO7aDF6GeQ%D z67Wa-hYJ%Uf8_ieRoUoMW5Y(LNFgZ#+q@MMzsJKc86kpf9a+J%+pPfYo5g0>3efEr zFGur{{@^n7JqCjK0+X*I#2=&EZZyDau(e@y@$=3v0Im&?;vjBmyagY+lUl*fRw#rp z!xdKud<@v;z&C%|$wx1-n-~$!y8u0&0Vy0-nk0o96JD9wo@|4!Te2X72Co~0@MGK1 zs(+Z7GrU0qk(qL2b{fA6)-Fzvm@TRGJbS9pJS;9LDx@?;cWk2%m0=U`b_9PdBm`+R zApC0`S1hbrp}{m}>t^#Dmon#xk2M1LQ7aXPMC90v>E(Z2v#Ar@wi1H71j$*rIXK{7 zK4sv*%q{XGADz!Sn)lQ6v*3OheA`8roxh-sidDC|Fyr8~%PLY=vM zLO!{HrwTa{Vm|rly zL1ID3+!M}8#I<`4X*yAf)O-z3eJzyhPNLwvC;)$QZ}S3gcosue4UvZHwQ#WJ=yW`i^vWLLJg_6BkEE*f6%u&a=ay zo8ETt&;6~Vt;2r>H$o0(UEFd0_L)h;tRH`Z( znP_`~Bk*{NocK`CRg@m0g9izQf)%XCDB; z>`J1Q79p?9($Kg-Fv6Hc3_e zF7F-bHYAFsKKf+tarhY+8e~K9+}M9h!yxD|py_Wo8&J7tM#+g`E!S+5^|k|6k4HzNgGa?nd)*DawvzLT;$@+!n$VX-^}*ph(51aL6ff6ls>LBylUIZxhJm^eZJ2ci93cm z#XtZ7LEVmqL;ND)O~mM`Fv_cAxtA3cGUc6E0cYR-UR?w{my>^j@T35dc%tHOIgnHY zrW^+eW+9Rjf~QGcAr=f9OzJ`Cm);rh8G1?RoDI(Itb)f+r6|hkc-z5G>=e(iYF0bU z|D@ElF?aGP9{_{rrr$pc%l3Z*i$q{`O!#ReZ;^N74yKm$YL%kvlZdm^aWW4PAD}bz z40yQPsls_tubh7w(nwV+a7->UJC$VlT^;)ey0MjpH9U9**p5Y(6S_2v8=w;%gq7H| z0-!sr@e<|O$4gr#>aY^@Y8r{a?cD7nBwXUn4PYn>DAHL4E`6x0V-)JS0T2jbjoCC1 znw6AHqY5`m0syI-yp$G5I8G})$4$ic%so<}H2xC3$pU{TstTm6pzxhp^DtX^`Xt_e zAr_6#?aG~&pPQiDP|@gWzyLmp4f>8AidS$@d`EkEvG8jcr#9W3{tL|xVq5-BX^qiq zGx6U_;)0A_J^VjtGdKfzNGA&)W4*pSxcBF4S$5E-OZ7R_?homWro8*>#l{#_>rrIz zNBilgJ?4M(+=a!S=Z$vOZK#Uec`!xt{HVtH6klCTdzn%xrak6>^w*E?{{EKD=ic-q zv~n94E#dp^j#){gK7W?`5AQX;OMP+#-4 z`T5${+RV!rqSh#7@Nxb*RkG(TTEoNLqe!b|#r}WttFVV{26`~i_Cq}lnFR}?vJ|y1O5+S>=7L+EUCdVdkgN~u-q5$bxn-m+q1t&fD)9?K*}x3 zI^d>;@2T&LLzvEWg$z_U@y;d}7k8NZ-j5JfqN56hDqtF;2_`syyL0xJZ_kE1=KoHU zH@Sh%(Jh8@(zi9rcYTD*{~U(=fPbLnoDP5E3)Y&L$U2$`;)CB=G}Z5;4pCArfxee0OBu5G4QH{fkAnX)s|D0gO@)TM6A=ghjLnXc#7=m)CgV?-xF#TxwQF{5kwg5=jB|hO zry*mzwnopisS_S-)D+}!<$?JfBgLkX<~Q>BX_E818X^Q3z9Tpz)0A`c?CLJ}3?jfN zjWPef`QN9>M*uuL!?XsQT*>?PmrZ_ zg>or3wj9l_B`8Fk!J$&1EJNuW`h6J=dpA5Hb@RUMuZ?YC$nYi}1vPMwXe@_8<#1~T zqdr|cSf&?U4CUfLCrHyaDrOCx#g13}) zS1HTZkZIk8;siTOk{K)pF#pnuKXqQ)ytX=FqnxV&F~m%ZP%8(trG~n?8L03^@#C{ig8op>Q z$+qaF#-tKc%pyA`sg0F=+p%HojWq}Dt&_&qXh8JkOdbrF%d>i#g00Ni;RRou7CE9;Pi8Avh=xmQves_wI zPPcs?Q`8fLIdSg8zf{lc<~`=H-a*5nBuI0MEkZXCrtyAw>}&xAME`o_1m>{}ze!B% zZ0McdRxqiK*#Tv83Q*ZUV5&%{@_9CeWVQr&K@2~Shpt}2aWnr-pB-vpH;3k7{L%lZ z3aN|!F;kp1@EU(9zQo)u9L688Xx6csNAckb$b0Q+b}&MzP?avH<#Bg(_H}q$;nuro z$dNyU-tgi~`lBRd9)PHHOkhyP z1MsCP6dFj>J5B!f;~OgtrN=&a8TE{AirETc6Pve%0fc|%{vPuGlay_&*lwk3`7`S2 zFpELHW;SF@>7OWTx-iPg9;piR6ewo0Lya7F@5O=-;6mUZ+b4*Lkml{}WXcT%89kVfw!v2R~-ovvC3FxU; z&0=wKQNc5yfwOya7ftK~BpvPvJb-7l9DFu03r{L4&HSjw#1o`j`00wYh3kH*;~D7B zd2#Q3uMya>p8vwDWBCF67ha4AU!Zzs7(K*^?G=B6niJvA=FR?jn~y!$9lsLgW_tK| zQG(~#B4@@EEtf+*g78Y`)>G_IWRR_fV3mc{NAX)u$EZ4KK`hNUrIt(1_G@MveoRv^ z|Iq}#BkWjkTsVg9l|}yK*q}8Qj7th7>LLN0*^Al@BLhab@3ZulE-RAo`Gj4o^f{kI zi2i@$?dutV8eQU$*OHxvuSjIW2WnUeT<*#2yfZdtUt~Lr3cBD_dRq&Ov&@89sgbo( zHC%*`cp$aXlO#qRe-O7x!bRqmK5qjx@?&W$YB5R!Pk~j*7Mkp)x;(uDYbywQ=vL;#sx8=`f+yMHKR&+V=TLB4L08`L8ZXg+aBOFZ;rq##`c22)ny}%C zgujv0&z6OkXw zzepsU2S^>AIipzcijw%!z;{n)4^+T+#mW6%uofO@qZ1p>Gl^KkKRt6Snp7L;*y_R& z2->4fDSZHNWTr#(K;ZR-yY6H}HF*pzLES)`z}hRDE!^ zZ#vIA?KflW1s9keKw)pXm5)$QWjlv^?YFZC*!T?{E!&2^UciO5gAkL1;Lvi|{Pk1c zSaCm{*3_j%=2SBJei#mr)WGbzZ#qZ&yKMn6_lvE8&KZ<^_rZSaGq>d^j$VKE4j� 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 Pg+irZIfuePwS)c-(S4NK diff --git a/ellipticalArcDemo.htm b/ellipticalArcDemo.htm new file mode 100644 index 000000000..cc9fba880 --- /dev/null +++ b/ellipticalArcDemo.htm @@ -0,0 +1,99 @@ + + + + + + diff --git a/lib/easeljs-0.8.1.combined.js b/lib/easeljs-0.8.1.combined.js index d32fd5c64..1fd048864 100644 --- a/lib/easeljs-0.8.1.combined.js +++ b/lib/easeljs-0.8.1.combined.js @@ -1,385 +1,385 @@ -/*! -* EaselJS -* Visit http://createjs.com/ for documentation, updates and examples. -* -* Copyright (c) 2010 gskinner.com, inc. -* -* Permission is hereby granted, free of charge, to any person -* obtaining a copy of this software and associated documentation -* files (the "Software"), to deal in the Software without -* restriction, including without limitation the rights to use, -* copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the -* Software is furnished to do so, subject to the following -* conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -* OTHER DEALINGS IN THE SOFTWARE. -*/ +/*! +* EaselJS +* Visit http://createjs.com/ for documentation, updates and examples. +* +* Copyright (c) 2010 gskinner.com, inc. +* +* Permission is hereby granted, free of charge, to any person +* obtaining a copy of this software and associated documentation +* files (the "Software"), to deal in the Software without +* restriction, including without limitation the rights to use, +* copy, modify, merge, publish, distribute, sublicense, and/or sell +* copies of the Software, and to permit persons to whom the +* Software is furnished to do so, subject to the following +* conditions: +* +* The above copyright notice and this permission notice shall be +* included in all copies or substantial portions of the Software. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +* OTHER DEALINGS IN THE SOFTWARE. +*/ //############################################################################## // extend.js //############################################################################## -this.createjs = this.createjs||{}; - -/** - * @class Utility Methods - */ - -/** - * Sets up the prototype chain and constructor property for a new class. - * - * This should be called right after creating the class constructor. - * - * function MySubClass() {} - * createjs.extend(MySubClass, MySuperClass); - * ClassB.prototype.doSomething = function() { } - * - * var foo = new MySubClass(); - * console.log(foo instanceof MySuperClass); // true - * console.log(foo.prototype.constructor === MySubClass); // true - * - * @method extend - * @param {Function} subclass The subclass. - * @param {Function} superclass The superclass to extend. - * @return {Function} Returns the subclass's new prototype. - */ -createjs.extend = function(subclass, superclass) { - "use strict"; - - function o() { this.constructor = subclass; } - o.prototype = superclass.prototype; - return (subclass.prototype = new o()); +this.createjs = this.createjs||{}; + +/** + * @class Utility Methods + */ + +/** + * Sets up the prototype chain and constructor property for a new class. + * + * This should be called right after creating the class constructor. + * + * function MySubClass() {} + * createjs.extend(MySubClass, MySuperClass); + * MySubClass.prototype.doSomething = function() { } + * + * var foo = new MySubClass(); + * console.log(foo instanceof MySuperClass); // true + * console.log(foo.prototype.constructor === MySubClass); // true + * + * @method extend + * @param {Function} subclass The subclass. + * @param {Function} superclass The superclass to extend. + * @return {Function} Returns the subclass's new prototype. + */ +createjs.extend = function(subclass, superclass) { + "use strict"; + + function o() { this.constructor = subclass; } + o.prototype = superclass.prototype; + return (subclass.prototype = new o()); }; //############################################################################## // promote.js //############################################################################## -this.createjs = this.createjs||{}; - -/** - * @class Utility Methods - */ - -/** - * Promotes any methods on the super class that were overridden, by creating an alias in the format `prefix_methodName`. - * It is recommended to use the super class's name as the prefix. - * An alias to the super class's constructor is always added in the format `prefix_constructor`. - * This allows the subclass to call super class methods without using `function.call`, providing better performance. - * - * For example, if `MySubClass` extends `MySuperClass`, and both define a `draw` method, then calling `promote(MySubClass, "MySuperClass")` - * would add a `MySuperClass_constructor` method to MySubClass and promote the `draw` method on `MySuperClass` to the - * prototype of `MySubClass` as `MySuperClass_draw`. - * - * This should be called after the class's prototype is fully defined. - * - * function ClassA(name) { - * this.name = name; - * } - * ClassA.prototype.greet = function() { - * return "Hello "+this.name; - * } - * - * function ClassB(name, punctuation) { - * this.ClassA_constructor(name); - * this.punctuation = punctuation; - * } - * createjs.extend(ClassB, ClassA); - * ClassB.prototype.greet = function() { - * return this.ClassA_greet()+this.punctuation; - * } - * createjs.promote(ClassB, "ClassA"); - * - * var foo = new ClassB("World", "!?!"); - * console.log(foo.greet()); // Hello World!?! - * - * @method promote - * @param {Function} subclass The class to promote super class methods on. - * @param {String} prefix The prefix to add to the promoted method names. Usually the name of the superclass. - * @return {Function} Returns the subclass. - */ -createjs.promote = function(subclass, prefix) { - "use strict"; - - var subP = subclass.prototype, supP = (Object.getPrototypeOf&&Object.getPrototypeOf(subP))||subP.__proto__; - if (supP) { - subP[(prefix+="_") + "constructor"] = supP.constructor; // constructor is not always innumerable - for (var n in supP) { - if (subP.hasOwnProperty(n) && (typeof supP[n] == "function")) { subP[prefix + n] = supP[n]; } - } - } - return subclass; +this.createjs = this.createjs||{}; + +/** + * @class Utility Methods + */ + +/** + * Promotes any methods on the super class that were overridden, by creating an alias in the format `prefix_methodName`. + * It is recommended to use the super class's name as the prefix. + * An alias to the super class's constructor is always added in the format `prefix_constructor`. + * This allows the subclass to call super class methods without using `function.call`, providing better performance. + * + * For example, if `MySubClass` extends `MySuperClass`, and both define a `draw` method, then calling `promote(MySubClass, "MySuperClass")` + * would add a `MySuperClass_constructor` method to MySubClass and promote the `draw` method on `MySuperClass` to the + * prototype of `MySubClass` as `MySuperClass_draw`. + * + * This should be called after the class's prototype is fully defined. + * + * function ClassA(name) { + * this.name = name; + * } + * ClassA.prototype.greet = function() { + * return "Hello "+this.name; + * } + * + * function ClassB(name, punctuation) { + * this.ClassA_constructor(name); + * this.punctuation = punctuation; + * } + * createjs.extend(ClassB, ClassA); + * ClassB.prototype.greet = function() { + * return this.ClassA_greet()+this.punctuation; + * } + * createjs.promote(ClassB, "ClassA"); + * + * var foo = new ClassB("World", "!?!"); + * console.log(foo.greet()); // Hello World!?! + * + * @method promote + * @param {Function} subclass The class to promote super class methods on. + * @param {String} prefix The prefix to add to the promoted method names. Usually the name of the superclass. + * @return {Function} Returns the subclass. + */ +createjs.promote = function(subclass, prefix) { + "use strict"; + + var subP = subclass.prototype, supP = (Object.getPrototypeOf&&Object.getPrototypeOf(subP))||subP.__proto__; + if (supP) { + subP[(prefix+="_") + "constructor"] = supP.constructor; // constructor is not always innumerable + for (var n in supP) { + if (subP.hasOwnProperty(n) && (typeof supP[n] == "function")) { subP[prefix + n] = supP[n]; } + } + } + return subclass; }; //############################################################################## // indexOf.js //############################################################################## -this.createjs = this.createjs||{}; - -/** - * @class Utility Methods - */ - -/** - * Finds the first occurrence of a specified value searchElement in the passed in array, and returns the index of - * that value. Returns -1 if value is not found. - * - * var i = createjs.indexOf(myArray, myElementToFind); - * - * @method indexOf - * @param {Array} array Array to search for searchElement - * @param searchElement Element to find in array. - * @return {Number} The first index of searchElement in array. - */ -createjs.indexOf = function (array, searchElement){ - "use strict"; - - for (var i = 0,l=array.length; i < l; i++) { - if (searchElement === array[i]) { - return i; - } - } - return -1; +this.createjs = this.createjs||{}; + +/** + * @class Utility Methods + */ + +/** + * Finds the first occurrence of a specified value searchElement in the passed in array, and returns the index of + * that value. Returns -1 if value is not found. + * + * var i = createjs.indexOf(myArray, myElementToFind); + * + * @method indexOf + * @param {Array} array Array to search for searchElement + * @param searchElement Element to find in array. + * @return {Number} The first index of searchElement in array. + */ +createjs.indexOf = function (array, searchElement){ + "use strict"; + + for (var i = 0,l=array.length; i < l; i++) { + if (searchElement === array[i]) { + return i; + } + } + return -1; }; //############################################################################## // Event.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - -// constructor: - /** - * Contains properties and methods shared by all events for use with - * {{#crossLink "EventDispatcher"}}{{/crossLink}}. - * - * Note that Event objects are often reused, so you should never - * rely on an event object's state outside of the call stack it was received in. - * @class Event - * @param {String} type The event type. - * @param {Boolean} bubbles Indicates whether the event will bubble through the display list. - * @param {Boolean} cancelable Indicates whether the default behaviour of this event can be cancelled. - * @constructor - **/ - function Event(type, bubbles, cancelable) { - - - // public properties: - /** - * The type of event. - * @property type - * @type String - **/ - this.type = type; - - /** - * The object that generated an event. - * @property target - * @type Object - * @default null - * @readonly - */ - this.target = null; - - /** - * The current target that a bubbling event is being dispatched from. For non-bubbling events, this will - * always be the same as target. For example, if childObj.parent = parentObj, and a bubbling event - * is generated from childObj, then a listener on parentObj would receive the event with - * target=childObj (the original target) and currentTarget=parentObj (where the listener was added). - * @property currentTarget - * @type Object - * @default null - * @readonly - */ - this.currentTarget = null; - - /** - * For bubbling events, this indicates the current event phase:

      - *
    1. capture phase: starting from the top parent to the target
    2. - *
    3. at target phase: currently being dispatched from the target
    4. - *
    5. bubbling phase: from the target to the top parent
    6. - *
    - * @property eventPhase - * @type Number - * @default 0 - * @readonly - */ - this.eventPhase = 0; - - /** - * Indicates whether the event will bubble through the display list. - * @property bubbles - * @type Boolean - * @default false - * @readonly - */ - this.bubbles = !!bubbles; - - /** - * Indicates whether the default behaviour of this event can be cancelled via - * {{#crossLink "Event/preventDefault"}}{{/crossLink}}. This is set via the Event constructor. - * @property cancelable - * @type Boolean - * @default false - * @readonly - */ - this.cancelable = !!cancelable; - - /** - * The epoch time at which this event was created. - * @property timeStamp - * @type Number - * @default 0 - * @readonly - */ - this.timeStamp = (new Date()).getTime(); - - /** - * Indicates if {{#crossLink "Event/preventDefault"}}{{/crossLink}} has been called - * on this event. - * @property defaultPrevented - * @type Boolean - * @default false - * @readonly - */ - this.defaultPrevented = false; - - /** - * Indicates if {{#crossLink "Event/stopPropagation"}}{{/crossLink}} or - * {{#crossLink "Event/stopImmediatePropagation"}}{{/crossLink}} has been called on this event. - * @property propagationStopped - * @type Boolean - * @default false - * @readonly - */ - this.propagationStopped = false; - - /** - * Indicates if {{#crossLink "Event/stopImmediatePropagation"}}{{/crossLink}} has been called - * on this event. - * @property immediatePropagationStopped - * @type Boolean - * @default false - * @readonly - */ - this.immediatePropagationStopped = false; - - /** - * Indicates if {{#crossLink "Event/remove"}}{{/crossLink}} has been called on this event. - * @property removed - * @type Boolean - * @default false - * @readonly - */ - this.removed = false; - } - var p = Event.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - -// public methods: - /** - * Sets {{#crossLink "Event/defaultPrevented"}}{{/crossLink}} to true if the event is cancelable. - * Mirrors the DOM level 2 event standard. In general, cancelable events that have `preventDefault()` called will - * cancel the default behaviour associated with the event. - * @method preventDefault - **/ - p.preventDefault = function() { - this.defaultPrevented = this.cancelable&&true; - }; - - /** - * Sets {{#crossLink "Event/propagationStopped"}}{{/crossLink}} to true. - * Mirrors the DOM event standard. - * @method stopPropagation - **/ - p.stopPropagation = function() { - this.propagationStopped = true; - }; - - /** - * Sets {{#crossLink "Event/propagationStopped"}}{{/crossLink}} and - * {{#crossLink "Event/immediatePropagationStopped"}}{{/crossLink}} to true. - * Mirrors the DOM event standard. - * @method stopImmediatePropagation - **/ - p.stopImmediatePropagation = function() { - this.immediatePropagationStopped = this.propagationStopped = true; - }; - - /** - * Causes the active listener to be removed via removeEventListener(); - * - * myBtn.addEventListener("click", function(evt) { - * // do stuff... - * evt.remove(); // removes this listener. - * }); - * - * @method remove - **/ - p.remove = function() { - this.removed = true; - }; - - /** - * Returns a clone of the Event instance. - * @method clone - * @return {Event} a clone of the Event instance. - **/ - p.clone = function() { - return new Event(this.type, this.bubbles, this.cancelable); - }; - - /** - * Provides a chainable shortcut method for setting a number of properties on the instance. - * - * @method set - * @param {Object} props A generic object containing properties to copy to the instance. - * @return {Event} Returns the instance the method is called on (useful for chaining calls.) - * @chainable - */ - p.set = function(props) { - for (var n in props) { this[n] = props[n]; } - return this; - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Event (type="+this.type+")]"; - }; - - createjs.Event = Event; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + +// constructor: + /** + * Contains properties and methods shared by all events for use with + * {{#crossLink "EventDispatcher"}}{{/crossLink}}. + * + * Note that Event objects are often reused, so you should never + * rely on an event object's state outside of the call stack it was received in. + * @class Event + * @param {String} type The event type. + * @param {Boolean} bubbles Indicates whether the event will bubble through the display list. + * @param {Boolean} cancelable Indicates whether the default behaviour of this event can be cancelled. + * @constructor + **/ + function Event(type, bubbles, cancelable) { + + + // public properties: + /** + * The type of event. + * @property type + * @type String + **/ + this.type = type; + + /** + * The object that generated an event. + * @property target + * @type Object + * @default null + * @readonly + */ + this.target = null; + + /** + * The current target that a bubbling event is being dispatched from. For non-bubbling events, this will + * always be the same as target. For example, if childObj.parent = parentObj, and a bubbling event + * is generated from childObj, then a listener on parentObj would receive the event with + * target=childObj (the original target) and currentTarget=parentObj (where the listener was added). + * @property currentTarget + * @type Object + * @default null + * @readonly + */ + this.currentTarget = null; + + /** + * For bubbling events, this indicates the current event phase:
      + *
    1. capture phase: starting from the top parent to the target
    2. + *
    3. at target phase: currently being dispatched from the target
    4. + *
    5. bubbling phase: from the target to the top parent
    6. + *
    + * @property eventPhase + * @type Number + * @default 0 + * @readonly + */ + this.eventPhase = 0; + + /** + * Indicates whether the event will bubble through the display list. + * @property bubbles + * @type Boolean + * @default false + * @readonly + */ + this.bubbles = !!bubbles; + + /** + * Indicates whether the default behaviour of this event can be cancelled via + * {{#crossLink "Event/preventDefault"}}{{/crossLink}}. This is set via the Event constructor. + * @property cancelable + * @type Boolean + * @default false + * @readonly + */ + this.cancelable = !!cancelable; + + /** + * The epoch time at which this event was created. + * @property timeStamp + * @type Number + * @default 0 + * @readonly + */ + this.timeStamp = (new Date()).getTime(); + + /** + * Indicates if {{#crossLink "Event/preventDefault"}}{{/crossLink}} has been called + * on this event. + * @property defaultPrevented + * @type Boolean + * @default false + * @readonly + */ + this.defaultPrevented = false; + + /** + * Indicates if {{#crossLink "Event/stopPropagation"}}{{/crossLink}} or + * {{#crossLink "Event/stopImmediatePropagation"}}{{/crossLink}} has been called on this event. + * @property propagationStopped + * @type Boolean + * @default false + * @readonly + */ + this.propagationStopped = false; + + /** + * Indicates if {{#crossLink "Event/stopImmediatePropagation"}}{{/crossLink}} has been called + * on this event. + * @property immediatePropagationStopped + * @type Boolean + * @default false + * @readonly + */ + this.immediatePropagationStopped = false; + + /** + * Indicates if {{#crossLink "Event/remove"}}{{/crossLink}} has been called on this event. + * @property removed + * @type Boolean + * @default false + * @readonly + */ + this.removed = false; + } + var p = Event.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + +// public methods: + /** + * Sets {{#crossLink "Event/defaultPrevented"}}{{/crossLink}} to true if the event is cancelable. + * Mirrors the DOM level 2 event standard. In general, cancelable events that have `preventDefault()` called will + * cancel the default behaviour associated with the event. + * @method preventDefault + **/ + p.preventDefault = function() { + this.defaultPrevented = this.cancelable&&true; + }; + + /** + * Sets {{#crossLink "Event/propagationStopped"}}{{/crossLink}} to true. + * Mirrors the DOM event standard. + * @method stopPropagation + **/ + p.stopPropagation = function() { + this.propagationStopped = true; + }; + + /** + * Sets {{#crossLink "Event/propagationStopped"}}{{/crossLink}} and + * {{#crossLink "Event/immediatePropagationStopped"}}{{/crossLink}} to true. + * Mirrors the DOM event standard. + * @method stopImmediatePropagation + **/ + p.stopImmediatePropagation = function() { + this.immediatePropagationStopped = this.propagationStopped = true; + }; + + /** + * Causes the active listener to be removed via removeEventListener(); + * + * myBtn.addEventListener("click", function(evt) { + * // do stuff... + * evt.remove(); // removes this listener. + * }); + * + * @method remove + **/ + p.remove = function() { + this.removed = true; + }; + + /** + * Returns a clone of the Event instance. + * @method clone + * @return {Event} a clone of the Event instance. + **/ + p.clone = function() { + return new Event(this.type, this.bubbles, this.cancelable); + }; + + /** + * Provides a chainable shortcut method for setting a number of properties on the instance. + * + * @method set + * @param {Object} props A generic object containing properties to copy to the instance. + * @return {Event} Returns the instance the method is called on (useful for chaining calls.) + * @chainable + */ + p.set = function(props) { + for (var n in props) { this[n] = props[n]; } + return this; + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Event (type="+this.type+")]"; + }; + + createjs.Event = Event; }()); //############################################################################## @@ -436,7 +436,12 @@ this.createjs = this.createjs||{}; * console.log(instance == this); // true, "on" uses dispatcher scope by default. * }); * - * If you want to use addEventListener instead, you may want to use function.bind() or a similar proxy to manage scope. + * If you want to use addEventListener instead, you may want to use function.bind() or a similar proxy to manage + * scope. + * + * Browser support + * The event model in CreateJS can be used separately from the suite in any project, however the inheritance model + * requires modern browsers (IE9+). * * * @class EventDispatcher @@ -777,6115 +782,9256 @@ this.createjs = this.createjs||{}; // Ticker.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * The Ticker provides a centralized tick or heartbeat broadcast at a set interval. Listeners can subscribe to the tick - * event to be notified when a set time interval has elapsed. - * - * Note that the interval that the tick event is called is a target interval, and may be broadcast at a slower interval - * when under high CPU load. The Ticker class uses a static interface (ex. `Ticker.framerate = 30;`) and - * can not be instantiated. - * - *

    Example

    - * - * createjs.Ticker.addEventListener("tick", handleTick); - * function handleTick(event) { - * // Actions carried out each tick (aka frame) - * if (!event.paused) { - * // Actions carried out when the Ticker is not paused. - * } - * } - * - * @class Ticker - * @uses EventDispatcher - * @static - **/ - function Ticker() { - throw "Ticker cannot be instantiated."; - } - - -// constants: - /** - * In this mode, Ticker uses the requestAnimationFrame API, but attempts to synch the ticks to target framerate. It - * uses a simple heuristic that compares the time of the RAF return to the target time for the current frame and - * dispatches the tick when the time is within a certain threshold. - * - * This mode has a higher variance for time between frames than {{#crossLink "Ticker/TIMEOUT:property"}}{{/crossLink}}, - * but does not require that content be time based as with {{#crossLink "Ticker/RAF:property"}}{{/crossLink}} while - * gaining the benefits of that API (screen synch, background throttling). - * - * Variance is usually lowest for framerates that are a divisor of the RAF frequency. This is usually 60, so - * framerates of 10, 12, 15, 20, and 30 work well. - * - * Falls back to {{#crossLink "Ticker/TIMEOUT:property"}}{{/crossLink}} if the requestAnimationFrame API is not - * supported. - * @property RAF_SYNCHED - * @static - * @type {String} - * @default "synched" - * @readonly - **/ - Ticker.RAF_SYNCHED = "synched"; - - /** - * In this mode, Ticker passes through the requestAnimationFrame heartbeat, ignoring the target framerate completely. - * Because requestAnimationFrame frequency is not deterministic, any content using this mode should be time based. - * You can leverage {{#crossLink "Ticker/getTime"}}{{/crossLink}} and the {{#crossLink "Ticker/tick:event"}}{{/crossLink}} - * event object's "delta" properties to make this easier. - * - * Falls back on {{#crossLink "Ticker/TIMEOUT:property"}}{{/crossLink}} if the requestAnimationFrame API is not - * supported. - * @property RAF - * @static - * @type {String} - * @default "raf" - * @readonly - **/ - Ticker.RAF = "raf"; - - /** - * In this mode, Ticker uses the setTimeout API. This provides predictable, adaptive frame timing, but does not - * provide the benefits of requestAnimationFrame (screen synch, background throttling). - * @property TIMEOUT - * @static - * @type {String} - * @default "timeout" - * @readonly - **/ - Ticker.TIMEOUT = "timeout"; - - -// static events: - /** - * Dispatched each tick. The event will be dispatched to each listener even when the Ticker has been paused using - * {{#crossLink "Ticker/setPaused"}}{{/crossLink}}. - * - *

    Example

    - * - * createjs.Ticker.addEventListener("tick", handleTick); - * function handleTick(event) { - * console.log("Paused:", event.paused, event.delta); - * } - * - * @event tick - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - * @param {Boolean} paused Indicates whether the ticker is currently paused. - * @param {Number} delta The time elapsed in ms since the last tick. - * @param {Number} time The total time in ms since Ticker was initialized. - * @param {Number} runTime The total time in ms that Ticker was not paused since it was initialized. For example, - * you could determine the amount of time that the Ticker has been paused since initialization with `time-runTime`. - * @since 0.6.0 - */ - - -// public static properties: - /** - * Deprecated in favour of {{#crossLink "Ticker/timingMode"}}{{/crossLink}}, and will be removed in a future version. If true, timingMode will - * use {{#crossLink "Ticker/RAF_SYNCHED"}}{{/crossLink}} by default. - * @deprecated Deprecated in favour of {{#crossLink "Ticker/timingMode"}}{{/crossLink}}. - * @property useRAF - * @static - * @type {Boolean} - * @default false - **/ - Ticker.useRAF = false; - - /** - * Specifies the timing api (setTimeout or requestAnimationFrame) and mode to use. See - * {{#crossLink "Ticker/TIMEOUT"}}{{/crossLink}}, {{#crossLink "Ticker/RAF"}}{{/crossLink}}, and - * {{#crossLink "Ticker/RAF_SYNCHED"}}{{/crossLink}} for mode details. - * @property timingMode - * @static - * @type {String} - * @default Ticker.TIMEOUT - **/ - Ticker.timingMode = null; - - /** - * Specifies a maximum value for the delta property in the tick event object. This is useful when building time - * based animations and systems to prevent issues caused by large time gaps caused by background tabs, system sleep, - * alert dialogs, or other blocking routines. Double the expected frame duration is often an effective value - * (ex. maxDelta=50 when running at 40fps). - * - * This does not impact any other values (ex. time, runTime, etc), so you may experience issues if you enable maxDelta - * when using both delta and other values. - * - * If 0, there is no maximum. - * @property maxDelta - * @static - * @type {number} - * @default 0 - */ - Ticker.maxDelta = 0; - - /** - * When the ticker is paused, all listeners will still receive a tick event, but the paused property - * of the event will be `true`. Also, while paused the `runTime` will not increase. See {{#crossLink "Ticker/tick:event"}}{{/crossLink}}, - * {{#crossLink "Ticker/getTime"}}{{/crossLink}}, and {{#crossLink "Ticker/getEventTime"}}{{/crossLink}} for more - * info. - * - *

    Example

    - * - * createjs.Ticker.addEventListener("tick", handleTick); - * createjs.Ticker.paused = true; - * function handleTick(event) { - * console.log(event.paused, - * createjs.Ticker.getTime(false), - * createjs.Ticker.getTime(true)); - * } - * - * @property paused - * @static - * @type {Boolean} - * @default false - **/ - Ticker.paused = false; - - -// mix-ins: - // EventDispatcher methods: - Ticker.removeEventListener = null; - Ticker.removeAllEventListeners = null; - Ticker.dispatchEvent = null; - Ticker.hasEventListener = null; - Ticker._listeners = null; - createjs.EventDispatcher.initialize(Ticker); // inject EventDispatcher methods. - Ticker._addEventListener = Ticker.addEventListener; - Ticker.addEventListener = function() { - !Ticker._inited&&Ticker.init(); - return Ticker._addEventListener.apply(Ticker, arguments); - }; - - -// private static properties: - /** - * @property _inited - * @static - * @type {Boolean} - * @protected - **/ - Ticker._inited = false; - - /** - * @property _startTime - * @static - * @type {Number} - * @protected - **/ - Ticker._startTime = 0; - - /** - * @property _pausedTime - * @static - * @type {Number} - * @protected - **/ - Ticker._pausedTime=0; - - /** - * The number of ticks that have passed - * @property _ticks - * @static - * @type {Number} - * @protected - **/ - Ticker._ticks = 0; - - /** - * The number of ticks that have passed while Ticker has been paused - * @property _pausedTicks - * @static - * @type {Number} - * @protected - **/ - Ticker._pausedTicks = 0; - - /** - * @property _interval - * @static - * @type {Number} - * @protected - **/ - Ticker._interval = 50; - - /** - * @property _lastTime - * @static - * @type {Number} - * @protected - **/ - Ticker._lastTime = 0; - - /** - * @property _times - * @static - * @type {Array} - * @protected - **/ - Ticker._times = null; - - /** - * @property _tickTimes - * @static - * @type {Array} - * @protected - **/ - Ticker._tickTimes = null; - - /** - * Stores the timeout or requestAnimationFrame id. - * @property _timerId - * @static - * @type {Number} - * @protected - **/ - Ticker._timerId = null; - - /** - * True if currently using requestAnimationFrame, false if using setTimeout. This may be different than timingMode - * if that property changed and a tick hasn't fired. - * @property _raf - * @static - * @type {Boolean} - * @protected - **/ - Ticker._raf = true; - - -// static getter / setters: - /** - * Use the {{#crossLink "Ticker/interval:property"}}{{/crossLink}} property instead. - * @method setInterval - * @static - * @param {Number} interval - * @deprecated - **/ - Ticker.setInterval = function(interval) { - Ticker._interval = interval; - if (!Ticker._inited) { return; } - Ticker._setupTick(); - }; - - /** - * Use the {{#crossLink "Ticker/interval:property"}}{{/crossLink}} property instead. - * @method getInterval - * @static - * @return {Number} - * @deprecated - **/ - Ticker.getInterval = function() { - return Ticker._interval; - }; - - /** - * Use the {{#crossLink "Ticker/framerate:property"}}{{/crossLink}} property instead. - * @method setFPS - * @static - * @param {Number} value - * @deprecated - **/ - Ticker.setFPS = function(value) { - Ticker.setInterval(1000/value); - }; - - /** - * Use the {{#crossLink "Ticker/framerate:property"}}{{/crossLink}} property instead. - * @method getFPS - * @static - * @return {Number} - * @deprecated - **/ - Ticker.getFPS = function() { - return 1000/Ticker._interval; - }; - - /** - * Indicates the target time (in milliseconds) between ticks. Default is 50 (20 FPS). - * Note that actual time between ticks may be more than specified depending on CPU load. - * This property is ignored if the ticker is using the `RAF` timing mode. - * @property interval - * @static - * @type {Number} - **/ - - /** - * Indicates the target frame rate in frames per second (FPS). Effectively just a shortcut to `interval`, where - * `framerate == 1000/interval`. - * @property framerate - * @static - * @type {Number} - **/ - try { - Object.defineProperties(Ticker, { - interval: { get: Ticker.getInterval, set: Ticker.setInterval }, - framerate: { get: Ticker.getFPS, set: Ticker.setFPS } - }); - } catch (e) { console.log(e); } - - -// public static methods: - /** - * Starts the tick. This is called automatically when the first listener is added. - * @method init - * @static - **/ - Ticker.init = function() { - if (Ticker._inited) { return; } - Ticker._inited = true; - Ticker._times = []; - Ticker._tickTimes = []; - Ticker._startTime = Ticker._getTime(); - Ticker._times.push(Ticker._lastTime = 0); - Ticker.interval = Ticker._interval; - }; - - /** - * Stops the Ticker and removes all listeners. Use init() to restart the Ticker. - * @method reset - * @static - **/ - Ticker.reset = function() { - if (Ticker._raf) { - var f = window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || window.oCancelAnimationFrame || window.msCancelAnimationFrame; - f&&f(Ticker._timerId); - } else { - clearTimeout(Ticker._timerId); - } - Ticker.removeAllEventListeners("tick"); - Ticker._timerId = Ticker._times = Ticker._tickTimes = null; - Ticker._startTime = Ticker._lastTime = Ticker._ticks = 0; - Ticker._inited = false; - }; - - /** - * Returns the average time spent within a tick. This can vary significantly from the value provided by getMeasuredFPS - * because it only measures the time spent within the tick execution stack. - * - * Example 1: With a target FPS of 20, getMeasuredFPS() returns 20fps, which indicates an average of 50ms between - * the end of one tick and the end of the next. However, getMeasuredTickTime() returns 15ms. This indicates that - * there may be up to 35ms of "idle" time between the end of one tick and the start of the next. - * - * Example 2: With a target FPS of 30, getFPS() returns 10fps, which indicates an average of 100ms between the end of - * one tick and the end of the next. However, getMeasuredTickTime() returns 20ms. This would indicate that something - * other than the tick is using ~80ms (another script, DOM rendering, etc). - * @method getMeasuredTickTime - * @static - * @param {Number} [ticks] The number of previous ticks over which to measure the average time spent in a tick. - * Defaults to the number of ticks per second. To get only the last tick's time, pass in 1. - * @return {Number} The average time spent in a tick in milliseconds. - **/ - Ticker.getMeasuredTickTime = function(ticks) { - var ttl=0, times=Ticker._tickTimes; - if (!times || times.length < 1) { return -1; } - - // by default, calculate average for the past ~1 second: - ticks = Math.min(times.length, ticks||(Ticker.getFPS()|0)); - for (var i=0; i= (Ticker._interval-1)*0.97) { - Ticker._tick(); - } - }; - - /** - * @method _handleRAF - * @static - * @protected - **/ - Ticker._handleRAF = function() { - Ticker._timerId = null; - Ticker._setupTick(); - Ticker._tick(); - }; - - /** - * @method _handleTimeout - * @static - * @protected - **/ - Ticker._handleTimeout = function() { - Ticker._timerId = null; - Ticker._setupTick(); - Ticker._tick(); - }; - - /** - * @method _setupTick - * @static - * @protected - **/ - Ticker._setupTick = function() { - if (Ticker._timerId != null) { return; } // avoid duplicates - - var mode = Ticker.timingMode||(Ticker.useRAF&&Ticker.RAF_SYNCHED); - if (mode == Ticker.RAF_SYNCHED || mode == Ticker.RAF) { - var f = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame; - if (f) { - Ticker._timerId = f(mode == Ticker.RAF ? Ticker._handleRAF : Ticker._handleSynch); - Ticker._raf = true; - return; - } - } - Ticker._raf = false; - Ticker._timerId = setTimeout(Ticker._handleTimeout, Ticker._interval); - }; - - /** - * @method _tick - * @static - * @protected - **/ - Ticker._tick = function() { - var paused = Ticker.paused; - var time = Ticker._getTime(); - var elapsedTime = time-Ticker._lastTime; - Ticker._lastTime = time; - Ticker._ticks++; - - if (paused) { - Ticker._pausedTicks++; - Ticker._pausedTime += elapsedTime; - } - - if (Ticker.hasEventListener("tick")) { - var event = new createjs.Event("tick"); - var maxDelta = Ticker.maxDelta; - event.delta = (maxDelta && elapsedTime > maxDelta) ? maxDelta : elapsedTime; - event.paused = paused; - event.time = time; - event.runTime = time-Ticker._pausedTime; - Ticker.dispatchEvent(event); - } - - Ticker._tickTimes.unshift(Ticker._getTime()-time); - while (Ticker._tickTimes.length > 100) { Ticker._tickTimes.pop(); } - - Ticker._times.unshift(time); - while (Ticker._times.length > 100) { Ticker._times.pop(); } - }; - - /** - * @method _getTime - * @static - * @protected - **/ - var now = window.performance && (performance.now || performance.mozNow || performance.msNow || performance.oNow || performance.webkitNow); - Ticker._getTime = function() { - return ((now&&now.call(performance))||(new Date().getTime())) - Ticker._startTime; - }; - - - createjs.Ticker = Ticker; -}()); - -//############################################################################## -// UID.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Global utility for generating sequential unique ID numbers. The UID class uses a static interface (ex. UID.get()) - * and should not be instantiated. - * @class UID - * @static - **/ - function UID() { - throw "UID cannot be instantiated"; - } - - -// private static properties: - /** - * @property _nextID - * @type Number - * @protected - **/ - UID._nextID = 0; - - -// public static methods: - /** - * Returns the next unique id. - * @method get - * @return {Number} The next unique id - * @static - **/ - UID.get = function() { - return UID._nextID++; - }; - - - createjs.UID = UID; -}()); - -//############################################################################## -// MouseEvent.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Passed as the parameter to all mouse/pointer/touch related events. For a listing of mouse events and their properties, - * see the {{#crossLink "DisplayObject"}}{{/crossLink}} and {{#crossLink "Stage"}}{{/crossLink}} event listings. - * @class MouseEvent - * @param {String} type The event type. - * @param {Boolean} bubbles Indicates whether the event will bubble through the display list. - * @param {Boolean} cancelable Indicates whether the default behaviour of this event can be cancelled. - * @param {Number} stageX The normalized x position relative to the stage. - * @param {Number} stageY The normalized y position relative to the stage. - * @param {MouseEvent} nativeEvent The native DOM event related to this mouse event. - * @param {Number} pointerID The unique id for the pointer. - * @param {Boolean} primary Indicates whether this is the primary pointer in a multitouch environment. - * @param {Number} rawX The raw x position relative to the stage. - * @param {Number} rawY The raw y position relative to the stage. - * @param {DisplayObject} relatedTarget The secondary target for the event. - * @extends Event - * @constructor - **/ - function MouseEvent(type, bubbles, cancelable, stageX, stageY, nativeEvent, pointerID, primary, rawX, rawY, relatedTarget) { - this.Event_constructor(type, bubbles, cancelable); - - - // public properties: - /** - * The normalized x position on the stage. This will always be within the range 0 to stage width. - * @property stageX - * @type Number - */ - this.stageX = stageX; - - /** - * The normalized y position on the stage. This will always be within the range 0 to stage height. - * @property stageY - * @type Number - **/ - this.stageY = stageY; - - /** - * The raw x position relative to the stage. Normally this will be the same as the stageX value, unless - * stage.mouseMoveOutside is true and the pointer is outside of the stage bounds. - * @property rawX - * @type Number - */ - this.rawX = (rawX==null)?stageX:rawX; - - /** - * The raw y position relative to the stage. Normally this will be the same as the stageY value, unless - * stage.mouseMoveOutside is true and the pointer is outside of the stage bounds. - * @property rawY - * @type Number - */ - this.rawY = (rawY==null)?stageY:rawY; - - /** - * The native MouseEvent generated by the browser. The properties and API for this - * event may differ between browsers. This property will be null if the - * EaselJS property was not directly generated from a native MouseEvent. - * @property nativeEvent - * @type HtmlMouseEvent - * @default null - **/ - this.nativeEvent = nativeEvent; - - /** - * The unique id for the pointer (touch point or cursor). This will be either -1 for the mouse, or the system - * supplied id value. - * @property pointerID - * @type {Number} - */ - this.pointerID = pointerID; - - /** - * Indicates whether this is the primary pointer in a multitouch environment. This will always be true for the mouse. - * For touch pointers, the first pointer in the current stack will be considered the primary pointer. - * @property primary - * @type {Boolean} - */ - this.primary = !!primary; - - /** - * The secondary target for the event, if applicable. This is used for mouseout/rollout - * events to indicate the object that the mouse entered from, mouseover/rollover for the object the mouse exited, - * and stagemousedown/stagemouseup events for the object that was the under the cursor, if any. - * - * Only valid interaction targets will be returned (ie. objects with mouse listeners or a cursor set). - * @property relatedTarget - * @type {DisplayObject} - */ - this.relatedTarget = relatedTarget; - } - var p = createjs.extend(MouseEvent, createjs.Event); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// getter / setters: - /** - * Returns the x position of the mouse in the local coordinate system of the current target (ie. the dispatcher). - * @property localX - * @type {Number} - * @readonly - */ - p._get_localX = function() { - return this.currentTarget.globalToLocal(this.rawX, this.rawY).x; - }; - - /** - * Returns the y position of the mouse in the local coordinate system of the current target (ie. the dispatcher). - * @property localY - * @type {Number} - * @readonly - */ - p._get_localY = function() { - return this.currentTarget.globalToLocal(this.rawX, this.rawY).y; - }; - - /** - * Indicates whether the event was generated by a touch input (versus a mouse input). - * @property isTouch - * @type {Boolean} - * @readonly - */ - p._get_isTouch = function() { - return this.pointerID !== -1; - }; - - - try { - Object.defineProperties(p, { - localX: { get: p._get_localX }, - localY: { get: p._get_localY }, - isTouch: { get: p._get_isTouch } - }); - } catch (e) {} // TODO: use Log - +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * The Ticker provides a centralized tick or heartbeat broadcast at a set interval. Listeners can subscribe to the tick + * event to be notified when a set time interval has elapsed. + * + * Note that the interval that the tick event is called is a target interval, and may be broadcast at a slower interval + * when under high CPU load. The Ticker class uses a static interface (ex. `Ticker.framerate = 30;`) and + * can not be instantiated. + * + *

    Example

    + * + * createjs.Ticker.addEventListener("tick", handleTick); + * function handleTick(event) { + * // Actions carried out each tick (aka frame) + * if (!event.paused) { + * // Actions carried out when the Ticker is not paused. + * } + * } + * + * @class Ticker + * @uses EventDispatcher + * @static + **/ + function Ticker() { + throw "Ticker cannot be instantiated."; + } + + +// constants: + /** + * In this mode, Ticker uses the requestAnimationFrame API, but attempts to synch the ticks to target framerate. It + * uses a simple heuristic that compares the time of the RAF return to the target time for the current frame and + * dispatches the tick when the time is within a certain threshold. + * + * This mode has a higher variance for time between frames than {{#crossLink "Ticker/TIMEOUT:property"}}{{/crossLink}}, + * but does not require that content be time based as with {{#crossLink "Ticker/RAF:property"}}{{/crossLink}} while + * gaining the benefits of that API (screen synch, background throttling). + * + * Variance is usually lowest for framerates that are a divisor of the RAF frequency. This is usually 60, so + * framerates of 10, 12, 15, 20, and 30 work well. + * + * Falls back to {{#crossLink "Ticker/TIMEOUT:property"}}{{/crossLink}} if the requestAnimationFrame API is not + * supported. + * @property RAF_SYNCHED + * @static + * @type {String} + * @default "synched" + * @readonly + **/ + Ticker.RAF_SYNCHED = "synched"; + + /** + * In this mode, Ticker passes through the requestAnimationFrame heartbeat, ignoring the target framerate completely. + * Because requestAnimationFrame frequency is not deterministic, any content using this mode should be time based. + * You can leverage {{#crossLink "Ticker/getTime"}}{{/crossLink}} and the {{#crossLink "Ticker/tick:event"}}{{/crossLink}} + * event object's "delta" properties to make this easier. + * + * Falls back on {{#crossLink "Ticker/TIMEOUT:property"}}{{/crossLink}} if the requestAnimationFrame API is not + * supported. + * @property RAF + * @static + * @type {String} + * @default "raf" + * @readonly + **/ + Ticker.RAF = "raf"; + + /** + * In this mode, Ticker uses the setTimeout API. This provides predictable, adaptive frame timing, but does not + * provide the benefits of requestAnimationFrame (screen synch, background throttling). + * @property TIMEOUT + * @static + * @type {String} + * @default "timeout" + * @readonly + **/ + Ticker.TIMEOUT = "timeout"; + + +// static events: + /** + * Dispatched each tick. The event will be dispatched to each listener even when the Ticker has been paused using + * {{#crossLink "Ticker/setPaused"}}{{/crossLink}}. + * + *

    Example

    + * + * createjs.Ticker.addEventListener("tick", handleTick); + * function handleTick(event) { + * console.log("Paused:", event.paused, event.delta); + * } + * + * @event tick + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. + * @param {Boolean} paused Indicates whether the ticker is currently paused. + * @param {Number} delta The time elapsed in ms since the last tick. + * @param {Number} time The total time in ms since Ticker was initialized. + * @param {Number} runTime The total time in ms that Ticker was not paused since it was initialized. For example, + * you could determine the amount of time that the Ticker has been paused since initialization with `time-runTime`. + * @since 0.6.0 + */ + + +// public static properties: + /** + * Deprecated in favour of {{#crossLink "Ticker/timingMode"}}{{/crossLink}}, and will be removed in a future version. If true, timingMode will + * use {{#crossLink "Ticker/RAF_SYNCHED"}}{{/crossLink}} by default. + * @deprecated Deprecated in favour of {{#crossLink "Ticker/timingMode"}}{{/crossLink}}. + * @property useRAF + * @static + * @type {Boolean} + * @default false + **/ + Ticker.useRAF = false; + + /** + * Specifies the timing api (setTimeout or requestAnimationFrame) and mode to use. See + * {{#crossLink "Ticker/TIMEOUT"}}{{/crossLink}}, {{#crossLink "Ticker/RAF"}}{{/crossLink}}, and + * {{#crossLink "Ticker/RAF_SYNCHED"}}{{/crossLink}} for mode details. + * @property timingMode + * @static + * @type {String} + * @default Ticker.TIMEOUT + **/ + Ticker.timingMode = null; + + /** + * Specifies a maximum value for the delta property in the tick event object. This is useful when building time + * based animations and systems to prevent issues caused by large time gaps caused by background tabs, system sleep, + * alert dialogs, or other blocking routines. Double the expected frame duration is often an effective value + * (ex. maxDelta=50 when running at 40fps). + * + * This does not impact any other values (ex. time, runTime, etc), so you may experience issues if you enable maxDelta + * when using both delta and other values. + * + * If 0, there is no maximum. + * @property maxDelta + * @static + * @type {number} + * @default 0 + */ + Ticker.maxDelta = 0; + + /** + * When the ticker is paused, all listeners will still receive a tick event, but the paused property + * of the event will be `true`. Also, while paused the `runTime` will not increase. See {{#crossLink "Ticker/tick:event"}}{{/crossLink}}, + * {{#crossLink "Ticker/getTime"}}{{/crossLink}}, and {{#crossLink "Ticker/getEventTime"}}{{/crossLink}} for more + * info. + * + *

    Example

    + * + * createjs.Ticker.addEventListener("tick", handleTick); + * createjs.Ticker.paused = true; + * function handleTick(event) { + * console.log(event.paused, + * createjs.Ticker.getTime(false), + * createjs.Ticker.getTime(true)); + * } + * + * @property paused + * @static + * @type {Boolean} + * @default false + **/ + Ticker.paused = false; + + +// mix-ins: + // EventDispatcher methods: + Ticker.removeEventListener = null; + Ticker.removeAllEventListeners = null; + Ticker.dispatchEvent = null; + Ticker.hasEventListener = null; + Ticker._listeners = null; + createjs.EventDispatcher.initialize(Ticker); // inject EventDispatcher methods. + Ticker._addEventListener = Ticker.addEventListener; + Ticker.addEventListener = function() { + !Ticker._inited&&Ticker.init(); + return Ticker._addEventListener.apply(Ticker, arguments); + }; + + +// private static properties: + /** + * @property _inited + * @static + * @type {Boolean} + * @protected + **/ + Ticker._inited = false; + + /** + * @property _startTime + * @static + * @type {Number} + * @protected + **/ + Ticker._startTime = 0; + + /** + * @property _pausedTime + * @static + * @type {Number} + * @protected + **/ + Ticker._pausedTime=0; + + /** + * The number of ticks that have passed + * @property _ticks + * @static + * @type {Number} + * @protected + **/ + Ticker._ticks = 0; + + /** + * The number of ticks that have passed while Ticker has been paused + * @property _pausedTicks + * @static + * @type {Number} + * @protected + **/ + Ticker._pausedTicks = 0; + + /** + * @property _interval + * @static + * @type {Number} + * @protected + **/ + Ticker._interval = 50; + + /** + * @property _lastTime + * @static + * @type {Number} + * @protected + **/ + Ticker._lastTime = 0; + + /** + * @property _times + * @static + * @type {Array} + * @protected + **/ + Ticker._times = null; + + /** + * @property _tickTimes + * @static + * @type {Array} + * @protected + **/ + Ticker._tickTimes = null; + + /** + * Stores the timeout or requestAnimationFrame id. + * @property _timerId + * @static + * @type {Number} + * @protected + **/ + Ticker._timerId = null; + + /** + * True if currently using requestAnimationFrame, false if using setTimeout. This may be different than timingMode + * if that property changed and a tick hasn't fired. + * @property _raf + * @static + * @type {Boolean} + * @protected + **/ + Ticker._raf = true; + + +// static getter / setters: + /** + * Use the {{#crossLink "Ticker/interval:property"}}{{/crossLink}} property instead. + * @method setInterval + * @static + * @param {Number} interval + * @deprecated + **/ + Ticker.setInterval = function(interval) { + Ticker._interval = interval; + if (!Ticker._inited) { return; } + Ticker._setupTick(); + }; + + /** + * Use the {{#crossLink "Ticker/interval:property"}}{{/crossLink}} property instead. + * @method getInterval + * @static + * @return {Number} + * @deprecated + **/ + Ticker.getInterval = function() { + return Ticker._interval; + }; + + /** + * Use the {{#crossLink "Ticker/framerate:property"}}{{/crossLink}} property instead. + * @method setFPS + * @static + * @param {Number} value + * @deprecated + **/ + Ticker.setFPS = function(value) { + Ticker.setInterval(1000/value); + }; + + /** + * Use the {{#crossLink "Ticker/framerate:property"}}{{/crossLink}} property instead. + * @method getFPS + * @static + * @return {Number} + * @deprecated + **/ + Ticker.getFPS = function() { + return 1000/Ticker._interval; + }; + + /** + * Indicates the target time (in milliseconds) between ticks. Default is 50 (20 FPS). + * Note that actual time between ticks may be more than specified depending on CPU load. + * This property is ignored if the ticker is using the `RAF` timing mode. + * @property interval + * @static + * @type {Number} + **/ + + /** + * Indicates the target frame rate in frames per second (FPS). Effectively just a shortcut to `interval`, where + * `framerate == 1000/interval`. + * @property framerate + * @static + * @type {Number} + **/ + try { + Object.defineProperties(Ticker, { + interval: { get: Ticker.getInterval, set: Ticker.setInterval }, + framerate: { get: Ticker.getFPS, set: Ticker.setFPS } + }); + } catch (e) { console.log(e); } + + +// public static methods: + /** + * Starts the tick. This is called automatically when the first listener is added. + * @method init + * @static + **/ + Ticker.init = function() { + if (Ticker._inited) { return; } + Ticker._inited = true; + Ticker._times = []; + Ticker._tickTimes = []; + Ticker._startTime = Ticker._getTime(); + Ticker._times.push(Ticker._lastTime = 0); + Ticker.interval = Ticker._interval; + }; + + /** + * Stops the Ticker and removes all listeners. Use init() to restart the Ticker. + * @method reset + * @static + **/ + Ticker.reset = function() { + if (Ticker._raf) { + var f = window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || window.oCancelAnimationFrame || window.msCancelAnimationFrame; + f&&f(Ticker._timerId); + } else { + clearTimeout(Ticker._timerId); + } + Ticker.removeAllEventListeners("tick"); + Ticker._timerId = Ticker._times = Ticker._tickTimes = null; + Ticker._startTime = Ticker._lastTime = Ticker._ticks = 0; + Ticker._inited = false; + }; + + /** + * Returns the average time spent within a tick. This can vary significantly from the value provided by getMeasuredFPS + * because it only measures the time spent within the tick execution stack. + * + * Example 1: With a target FPS of 20, getMeasuredFPS() returns 20fps, which indicates an average of 50ms between + * the end of one tick and the end of the next. However, getMeasuredTickTime() returns 15ms. This indicates that + * there may be up to 35ms of "idle" time between the end of one tick and the start of the next. + * + * Example 2: With a target FPS of 30, getFPS() returns 10fps, which indicates an average of 100ms between the end of + * one tick and the end of the next. However, getMeasuredTickTime() returns 20ms. This would indicate that something + * other than the tick is using ~80ms (another script, DOM rendering, etc). + * @method getMeasuredTickTime + * @static + * @param {Number} [ticks] The number of previous ticks over which to measure the average time spent in a tick. + * Defaults to the number of ticks per second. To get only the last tick's time, pass in 1. + * @return {Number} The average time spent in a tick in milliseconds. + **/ + Ticker.getMeasuredTickTime = function(ticks) { + var ttl=0, times=Ticker._tickTimes; + if (!times || times.length < 1) { return -1; } + + // by default, calculate average for the past ~1 second: + ticks = Math.min(times.length, ticks||(Ticker.getFPS()|0)); + for (var i=0; i= (Ticker._interval-1)*0.97) { + Ticker._tick(); + } + }; + + /** + * @method _handleRAF + * @static + * @protected + **/ + Ticker._handleRAF = function() { + Ticker._timerId = null; + Ticker._setupTick(); + Ticker._tick(); + }; + + /** + * @method _handleTimeout + * @static + * @protected + **/ + Ticker._handleTimeout = function() { + Ticker._timerId = null; + Ticker._setupTick(); + Ticker._tick(); + }; + + /** + * @method _setupTick + * @static + * @protected + **/ + Ticker._setupTick = function() { + if (Ticker._timerId != null) { return; } // avoid duplicates + + var mode = Ticker.timingMode||(Ticker.useRAF&&Ticker.RAF_SYNCHED); + if (mode == Ticker.RAF_SYNCHED || mode == Ticker.RAF) { + var f = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame; + if (f) { + Ticker._timerId = f(mode == Ticker.RAF ? Ticker._handleRAF : Ticker._handleSynch); + Ticker._raf = true; + return; + } + } + Ticker._raf = false; + Ticker._timerId = setTimeout(Ticker._handleTimeout, Ticker._interval); + }; + + /** + * @method _tick + * @static + * @protected + **/ + Ticker._tick = function() { + var paused = Ticker.paused; + var time = Ticker._getTime(); + var elapsedTime = time-Ticker._lastTime; + Ticker._lastTime = time; + Ticker._ticks++; + + if (paused) { + Ticker._pausedTicks++; + Ticker._pausedTime += elapsedTime; + } + + if (Ticker.hasEventListener("tick")) { + var event = new createjs.Event("tick"); + var maxDelta = Ticker.maxDelta; + event.delta = (maxDelta && elapsedTime > maxDelta) ? maxDelta : elapsedTime; + event.paused = paused; + event.time = time; + event.runTime = time-Ticker._pausedTime; + Ticker.dispatchEvent(event); + } + + Ticker._tickTimes.unshift(Ticker._getTime()-time); + while (Ticker._tickTimes.length > 100) { Ticker._tickTimes.pop(); } + + Ticker._times.unshift(time); + while (Ticker._times.length > 100) { Ticker._times.pop(); } + }; + + /** + * @method _getTime + * @static + * @protected + **/ + var now = window.performance && (performance.now || performance.mozNow || performance.msNow || performance.oNow || performance.webkitNow); + Ticker._getTime = function() { + return ((now&&now.call(performance))||(new Date().getTime())) - Ticker._startTime; + }; + + + createjs.Ticker = Ticker; +}()); -// public methods: - /** - * Returns a clone of the MouseEvent instance. - * @method clone - * @return {MouseEvent} a clone of the MouseEvent instance. - **/ - p.clone = function() { - return new MouseEvent(this.type, this.bubbles, this.cancelable, this.stageX, this.stageY, this.nativeEvent, this.pointerID, this.primary, this.rawX, this.rawY); - }; +//############################################################################## +// UID.js +//############################################################################## - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[MouseEvent (type="+this.type+" stageX="+this.stageX+" stageY="+this.stageY+")]"; - }; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Global utility for generating sequential unique ID numbers. The UID class uses a static interface (ex. UID.get()) + * and should not be instantiated. + * @class UID + * @static + **/ + function UID() { + throw "UID cannot be instantiated"; + } + + +// private static properties: + /** + * @property _nextID + * @type Number + * @protected + **/ + UID._nextID = 0; + + +// public static methods: + /** + * Returns the next unique id. + * @method get + * @return {Number} The next unique id + * @static + **/ + UID.get = function() { + return UID._nextID++; + }; + + + createjs.UID = UID; +}()); +//############################################################################## +// MouseEvent.js +//############################################################################## - createjs.MouseEvent = createjs.promote(MouseEvent, "Event"); +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Passed as the parameter to all mouse/pointer/touch related events. For a listing of mouse events and their properties, + * see the {{#crossLink "DisplayObject"}}{{/crossLink}} and {{#crossLink "Stage"}}{{/crossLink}} event listings. + * @class MouseEvent + * @param {String} type The event type. + * @param {Boolean} bubbles Indicates whether the event will bubble through the display list. + * @param {Boolean} cancelable Indicates whether the default behaviour of this event can be cancelled. + * @param {Number} stageX The normalized x position relative to the stage. + * @param {Number} stageY The normalized y position relative to the stage. + * @param {MouseEvent} nativeEvent The native DOM event related to this mouse event. + * @param {Number} pointerID The unique id for the pointer. + * @param {Boolean} primary Indicates whether this is the primary pointer in a multitouch environment. + * @param {Number} rawX The raw x position relative to the stage. + * @param {Number} rawY The raw y position relative to the stage. + * @param {DisplayObject} relatedTarget The secondary target for the event. + * @extends Event + * @constructor + **/ + function MouseEvent(type, bubbles, cancelable, stageX, stageY, nativeEvent, pointerID, primary, rawX, rawY, relatedTarget) { + this.Event_constructor(type, bubbles, cancelable); + + + // public properties: + /** + * The normalized x position on the stage. This will always be within the range 0 to stage width. + * @property stageX + * @type Number + */ + this.stageX = stageX; + + /** + * The normalized y position on the stage. This will always be within the range 0 to stage height. + * @property stageY + * @type Number + **/ + this.stageY = stageY; + + /** + * The raw x position relative to the stage. Normally this will be the same as the stageX value, unless + * stage.mouseMoveOutside is true and the pointer is outside of the stage bounds. + * @property rawX + * @type Number + */ + this.rawX = (rawX==null)?stageX:rawX; + + /** + * The raw y position relative to the stage. Normally this will be the same as the stageY value, unless + * stage.mouseMoveOutside is true and the pointer is outside of the stage bounds. + * @property rawY + * @type Number + */ + this.rawY = (rawY==null)?stageY:rawY; + + /** + * The native MouseEvent generated by the browser. The properties and API for this + * event may differ between browsers. This property will be null if the + * EaselJS property was not directly generated from a native MouseEvent. + * @property nativeEvent + * @type HtmlMouseEvent + * @default null + **/ + this.nativeEvent = nativeEvent; + + /** + * The unique id for the pointer (touch point or cursor). This will be either -1 for the mouse, or the system + * supplied id value. + * @property pointerID + * @type {Number} + */ + this.pointerID = pointerID; + + /** + * Indicates whether this is the primary pointer in a multitouch environment. This will always be true for the mouse. + * For touch pointers, the first pointer in the current stack will be considered the primary pointer. + * @property primary + * @type {Boolean} + */ + this.primary = !!primary; + + /** + * The secondary target for the event, if applicable. This is used for mouseout/rollout + * events to indicate the object that the mouse entered from, mouseover/rollover for the object the mouse exited, + * and stagemousedown/stagemouseup events for the object that was the under the cursor, if any. + * + * Only valid interaction targets will be returned (ie. objects with mouse listeners or a cursor set). + * @property relatedTarget + * @type {DisplayObject} + */ + this.relatedTarget = relatedTarget; + } + var p = createjs.extend(MouseEvent, createjs.Event); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// getter / setters: + /** + * Returns the x position of the mouse in the local coordinate system of the current target (ie. the dispatcher). + * @property localX + * @type {Number} + * @readonly + */ + p._get_localX = function() { + return this.currentTarget.globalToLocal(this.rawX, this.rawY).x; + }; + + /** + * Returns the y position of the mouse in the local coordinate system of the current target (ie. the dispatcher). + * @property localY + * @type {Number} + * @readonly + */ + p._get_localY = function() { + return this.currentTarget.globalToLocal(this.rawX, this.rawY).y; + }; + + /** + * Indicates whether the event was generated by a touch input (versus a mouse input). + * @property isTouch + * @type {Boolean} + * @readonly + */ + p._get_isTouch = function() { + return this.pointerID !== -1; + }; + + + try { + Object.defineProperties(p, { + localX: { get: p._get_localX }, + localY: { get: p._get_localY }, + isTouch: { get: p._get_isTouch } + }); + } catch (e) {} // TODO: use Log + + +// public methods: + /** + * Returns a clone of the MouseEvent instance. + * @method clone + * @return {MouseEvent} a clone of the MouseEvent instance. + **/ + p.clone = function() { + return new MouseEvent(this.type, this.bubbles, this.cancelable, this.stageX, this.stageY, this.nativeEvent, this.pointerID, this.primary, this.rawX, this.rawY); + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[MouseEvent (type="+this.type+" stageX="+this.stageX+" stageY="+this.stageY+")]"; + }; + + + createjs.MouseEvent = createjs.promote(MouseEvent, "Event"); }()); //############################################################################## // Matrix2D.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Represents an affine transformation matrix, and provides tools for constructing and concatenating matrices. - * - * This matrix can be visualized as: - * - * [ a c tx - * b d ty - * 0 0 1 ] - * - * Note the locations of b and c. - * - * @class Matrix2D - * @param {Number} [a=1] Specifies the a property for the new matrix. - * @param {Number} [b=0] Specifies the b property for the new matrix. - * @param {Number} [c=0] Specifies the c property for the new matrix. - * @param {Number} [d=1] Specifies the d property for the new matrix. - * @param {Number} [tx=0] Specifies the tx property for the new matrix. - * @param {Number} [ty=0] Specifies the ty property for the new matrix. - * @constructor - **/ - function Matrix2D(a, b, c, d, tx, ty) { - this.setValues(a,b,c,d,tx,ty); - - // public properties: - // assigned in the setValues method. - /** - * Position (0, 0) in a 3x3 affine transformation matrix. - * @property a - * @type Number - **/ - - /** - * Position (0, 1) in a 3x3 affine transformation matrix. - * @property b - * @type Number - **/ - - /** - * Position (1, 0) in a 3x3 affine transformation matrix. - * @property c - * @type Number - **/ - - /** - * Position (1, 1) in a 3x3 affine transformation matrix. - * @property d - * @type Number - **/ - - /** - * Position (2, 0) in a 3x3 affine transformation matrix. - * @property tx - * @type Number - **/ - - /** - * Position (2, 1) in a 3x3 affine transformation matrix. - * @property ty - * @type Number - **/ - } - var p = Matrix2D.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// constants: - /** - * Multiplier for converting degrees to radians. Used internally by Matrix2D. - * @property DEG_TO_RAD - * @static - * @final - * @type Number - * @readonly - **/ - Matrix2D.DEG_TO_RAD = Math.PI/180; - - -// static public properties: - /** - * An identity matrix, representing a null transformation. - * @property identity - * @static - * @type Matrix2D - * @readonly - **/ - Matrix2D.identity = null; // set at bottom of class definition. - - -// public methods: - /** - * Sets the specified values on this instance. - * @method setValues - * @param {Number} [a=1] Specifies the a property for the new matrix. - * @param {Number} [b=0] Specifies the b property for the new matrix. - * @param {Number} [c=0] Specifies the c property for the new matrix. - * @param {Number} [d=1] Specifies the d property for the new matrix. - * @param {Number} [tx=0] Specifies the tx property for the new matrix. - * @param {Number} [ty=0] Specifies the ty property for the new matrix. - * @return {Matrix2D} This instance. Useful for chaining method calls. - */ - p.setValues = function(a, b, c, d, tx, ty) { - // don't forget to update docs in the constructor if these change: - this.a = (a == null) ? 1 : a; - this.b = b || 0; - this.c = c || 0; - this.d = (d == null) ? 1 : d; - this.tx = tx || 0; - this.ty = ty || 0; - return this; - }; - - /** - * Appends the specified matrix properties to this matrix. All parameters are required. - * This is the equivalent of multiplying `(this matrix) * (specified matrix)`. - * @method append - * @param {Number} a - * @param {Number} b - * @param {Number} c - * @param {Number} d - * @param {Number} tx - * @param {Number} ty - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.append = function(a, b, c, d, tx, ty) { - var a1 = this.a; - var b1 = this.b; - var c1 = this.c; - var d1 = this.d; - if (a != 1 || b != 0 || c != 0 || d != 1) { - this.a = a1*a+c1*b; - this.b = b1*a+d1*b; - this.c = a1*c+c1*d; - this.d = b1*c+d1*d; - } - this.tx = a1*tx+c1*ty+this.tx; - this.ty = b1*tx+d1*ty+this.ty; - return this; - }; - - /** - * Prepends the specified matrix properties to this matrix. - * This is the equivalent of multiplying `(specified matrix) * (this matrix)`. - * All parameters are required. - * @method prepend - * @param {Number} a - * @param {Number} b - * @param {Number} c - * @param {Number} d - * @param {Number} tx - * @param {Number} ty - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.prepend = function(a, b, c, d, tx, ty) { - var a1 = this.a; - var c1 = this.c; - var tx1 = this.tx; - - this.a = a*a1+c*this.b; - this.b = b*a1+d*this.b; - this.c = a*c1+c*this.d; - this.d = b*c1+d*this.d; - this.tx = a*tx1+c*this.ty+tx; - this.ty = b*tx1+d*this.ty+ty; - return this; - }; - - /** - * Appends the specified matrix to this matrix. - * This is the equivalent of multiplying `(this matrix) * (specified matrix)`. - * @method appendMatrix - * @param {Matrix2D} matrix - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.appendMatrix = function(matrix) { - return this.append(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); - }; - - /** - * Prepends the specified matrix to this matrix. - * This is the equivalent of multiplying `(specified matrix) * (this matrix)`. - * For example, you could calculate the combined transformation for a child object using: - * - * var o = myDisplayObject; - * var mtx = o.getMatrix(); - * while (o = o.parent) { - * // prepend each parent's transformation in turn: - * o.prependMatrix(o.getMatrix()); - * } - * @method prependMatrix - * @param {Matrix2D} matrix - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.prependMatrix = function(matrix) { - return this.prepend(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); - }; - - /** - * Generates matrix properties from the specified display object transform properties, and appends them to this matrix. - * For example, you can use this to generate a matrix representing the transformations of a display object: - * - * var mtx = new Matrix2D(); - * mtx.appendTransform(o.x, o.y, o.scaleX, o.scaleY, o.rotation); - * @method appendTransform - * @param {Number} x - * @param {Number} y - * @param {Number} scaleX - * @param {Number} scaleY - * @param {Number} rotation - * @param {Number} skewX - * @param {Number} skewY - * @param {Number} regX Optional. - * @param {Number} regY Optional. - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.appendTransform = function(x, y, scaleX, scaleY, rotation, skewX, skewY, regX, regY) { - if (rotation%360) { - var r = rotation*Matrix2D.DEG_TO_RAD; - var cos = Math.cos(r); - var sin = Math.sin(r); - } else { - cos = 1; - sin = 0; - } - - if (skewX || skewY) { - // TODO: can this be combined into a single append operation? - skewX *= Matrix2D.DEG_TO_RAD; - skewY *= Matrix2D.DEG_TO_RAD; - this.append(Math.cos(skewY), Math.sin(skewY), -Math.sin(skewX), Math.cos(skewX), x, y); - this.append(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, 0, 0); - } else { - this.append(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, x, y); - } - - if (regX || regY) { - // append the registration offset: - this.tx -= regX*this.a+regY*this.c; - this.ty -= regX*this.b+regY*this.d; - } - return this; - }; - - /** - * Generates matrix properties from the specified display object transform properties, and prepends them to this matrix. - * For example, you could calculate the combined transformation for a child object using: - * - * var o = myDisplayObject; - * var mtx = new createjs.Matrix2D(); - * do { - * // prepend each parent's transformation in turn: - * mtx.prependTransform(o.x, o.y, o.scaleX, o.scaleY, o.rotation, o.skewX, o.skewY, o.regX, o.regY); - * } while (o = o.parent); - * - * Note that the above example would not account for {{#crossLink "DisplayObject/transformMatrix:property"}}{{/crossLink}} - * values. See {{#crossLink "Matrix2D/prependMatrix"}}{{/crossLink}} for an example that does. - * @method prependTransform - * @param {Number} x - * @param {Number} y - * @param {Number} scaleX - * @param {Number} scaleY - * @param {Number} rotation - * @param {Number} skewX - * @param {Number} skewY - * @param {Number} regX Optional. - * @param {Number} regY Optional. - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.prependTransform = function(x, y, scaleX, scaleY, rotation, skewX, skewY, regX, regY) { - if (rotation%360) { - var r = rotation*Matrix2D.DEG_TO_RAD; - var cos = Math.cos(r); - var sin = Math.sin(r); - } else { - cos = 1; - sin = 0; - } - - if (regX || regY) { - // prepend the registration offset: - this.tx -= regX; this.ty -= regY; - } - if (skewX || skewY) { - // TODO: can this be combined into a single prepend operation? - skewX *= Matrix2D.DEG_TO_RAD; - skewY *= Matrix2D.DEG_TO_RAD; - this.prepend(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, 0, 0); - this.prepend(Math.cos(skewY), Math.sin(skewY), -Math.sin(skewX), Math.cos(skewX), x, y); - } else { - this.prepend(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, x, y); - } - return this; - }; - - /** - * Applies a clockwise rotation transformation to the matrix. - * @method rotate - * @param {Number} angle The angle to rotate by, in degrees. To use a value in radians, multiply it by `180/Math.PI`. - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.rotate = function(angle) { - angle = angle*Matrix2D.DEG_TO_RAD; - var cos = Math.cos(angle); - var sin = Math.sin(angle); - - var a1 = this.a; - var b1 = this.b; - - this.a = a1*cos+this.c*sin; - this.b = b1*cos+this.d*sin; - this.c = -a1*sin+this.c*cos; - this.d = -b1*sin+this.d*cos; - return this; - }; - - /** - * Applies a skew transformation to the matrix. - * @method skew - * @param {Number} skewX The amount to skew horizontally in degrees. To use a value in radians, multiply it by `180/Math.PI`. - * @param {Number} skewY The amount to skew vertically in degrees. - * @return {Matrix2D} This matrix. Useful for chaining method calls. - */ - p.skew = function(skewX, skewY) { - skewX = skewX*Matrix2D.DEG_TO_RAD; - skewY = skewY*Matrix2D.DEG_TO_RAD; - this.append(Math.cos(skewY), Math.sin(skewY), -Math.sin(skewX), Math.cos(skewX), 0, 0); - return this; - }; - - /** - * Applies a scale transformation to the matrix. - * @method scale - * @param {Number} x The amount to scale horizontally. E.G. a value of 2 will double the size in the X direction, and 0.5 will halve it. - * @param {Number} y The amount to scale vertically. - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.scale = function(x, y) { - this.a *= x; - this.b *= x; - this.c *= y; - this.d *= y; - //this.tx *= x; - //this.ty *= y; - return this; - }; - - /** - * Translates the matrix on the x and y axes. - * @method translate - * @param {Number} x - * @param {Number} y - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.translate = function(x, y) { - this.tx += this.a*x + this.c*y; - this.ty += this.b*x + this.d*y; - return this; - }; - - /** - * Sets the properties of the matrix to those of an identity matrix (one that applies a null transformation). - * @method identity - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.identity = function() { - this.a = this.d = 1; - this.b = this.c = this.tx = this.ty = 0; - return this; - }; - - /** - * Inverts the matrix, causing it to perform the opposite transformation. - * @method invert - * @return {Matrix2D} This matrix. Useful for chaining method calls. - **/ - p.invert = function() { - var a1 = this.a; - var b1 = this.b; - var c1 = this.c; - var d1 = this.d; - var tx1 = this.tx; - var n = a1*d1-b1*c1; - - this.a = d1/n; - this.b = -b1/n; - this.c = -c1/n; - this.d = a1/n; - this.tx = (c1*this.ty-d1*tx1)/n; - this.ty = -(a1*this.ty-b1*tx1)/n; - return this; - }; - - /** - * Returns true if the matrix is an identity matrix. - * @method isIdentity - * @return {Boolean} - **/ - p.isIdentity = function() { - return this.tx === 0 && this.ty === 0 && this.a === 1 && this.b === 0 && this.c === 0 && this.d === 1; - }; - - /** - * Returns true if this matrix is equal to the specified matrix (all property values are equal). - * @method equals - * @param {Matrix2D} matrix The matrix to compare. - * @return {Boolean} - **/ - p.equals = function(matrix) { - return this.tx === matrix.tx && this.ty === matrix.ty && this.a === matrix.a && this.b === matrix.b && this.c === matrix.c && this.d === matrix.d; - }; - - /** - * Transforms a point according to this matrix. - * @method transformPoint - * @param {Number} x The x component of the point to transform. - * @param {Number} y The y component of the point to transform. - * @param {Point | Object} [pt] An object to copy the result into. If omitted a generic object with x/y properties will be returned. - * @return {Point} This matrix. Useful for chaining method calls. - **/ - p.transformPoint = function(x, y, pt) { - pt = pt||{}; - pt.x = x*this.a+y*this.c+this.tx; - pt.y = x*this.b+y*this.d+this.ty; - return pt; - }; - - /** - * Decomposes the matrix into transform properties (x, y, scaleX, scaleY, and rotation). Note that these values - * may not match the transform properties you used to generate the matrix, though they will produce the same visual - * results. - * @method decompose - * @param {Object} target The object to apply the transform properties to. If null, then a new object will be returned. - * @return {Object} The target, or a new generic object with the transform properties applied. - */ - p.decompose = function(target) { - // TODO: it would be nice to be able to solve for whether the matrix can be decomposed into only scale/rotation even when scale is negative - if (target == null) { target = {}; } - target.x = this.tx; - target.y = this.ty; - target.scaleX = Math.sqrt(this.a * this.a + this.b * this.b); - target.scaleY = Math.sqrt(this.c * this.c + this.d * this.d); - - var skewX = Math.atan2(-this.c, this.d); - var skewY = Math.atan2(this.b, this.a); - - var delta = Math.abs(1-skewX/skewY); - if (delta < 0.00001) { // effectively identical, can use rotation: - target.rotation = skewY/Matrix2D.DEG_TO_RAD; - if (this.a < 0 && this.d >= 0) { - target.rotation += (target.rotation <= 0) ? 180 : -180; - } - target.skewX = target.skewY = 0; - } else { - target.skewX = skewX/Matrix2D.DEG_TO_RAD; - target.skewY = skewY/Matrix2D.DEG_TO_RAD; - } - return target; - }; - - /** - * Copies all properties from the specified matrix to this matrix. - * @method copy - * @param {Matrix2D} matrix The matrix to copy properties from. - * @return {Matrix2D} This matrix. Useful for chaining method calls. - */ - p.copy = function(matrix) { - return this.setValues(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); - }; - - /** - * Returns a clone of the Matrix2D instance. - * @method clone - * @return {Matrix2D} a clone of the Matrix2D instance. - **/ - p.clone = function() { - return new Matrix2D(this.a, this.b, this.c, this.d, this.tx, this.ty); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Matrix2D (a="+this.a+" b="+this.b+" c="+this.c+" d="+this.d+" tx="+this.tx+" ty="+this.ty+")]"; - }; - - // this has to be populated after the class is defined: - Matrix2D.identity = new Matrix2D(); - - - createjs.Matrix2D = Matrix2D; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Represents an affine transformation matrix, and provides tools for constructing and concatenating matrices. + * + * This matrix can be visualized as: + * + * [ a c tx + * b d ty + * 0 0 1 ] + * + * Note the locations of b and c. + * + * @class Matrix2D + * @param {Number} [a=1] Specifies the a property for the new matrix. + * @param {Number} [b=0] Specifies the b property for the new matrix. + * @param {Number} [c=0] Specifies the c property for the new matrix. + * @param {Number} [d=1] Specifies the d property for the new matrix. + * @param {Number} [tx=0] Specifies the tx property for the new matrix. + * @param {Number} [ty=0] Specifies the ty property for the new matrix. + * @constructor + **/ + function Matrix2D(a, b, c, d, tx, ty) { + this.setValues(a,b,c,d,tx,ty); + + // public properties: + // assigned in the setValues method. + /** + * Position (0, 0) in a 3x3 affine transformation matrix. + * @property a + * @type Number + **/ + + /** + * Position (0, 1) in a 3x3 affine transformation matrix. + * @property b + * @type Number + **/ + + /** + * Position (1, 0) in a 3x3 affine transformation matrix. + * @property c + * @type Number + **/ + + /** + * Position (1, 1) in a 3x3 affine transformation matrix. + * @property d + * @type Number + **/ + + /** + * Position (2, 0) in a 3x3 affine transformation matrix. + * @property tx + * @type Number + **/ + + /** + * Position (2, 1) in a 3x3 affine transformation matrix. + * @property ty + * @type Number + **/ + } + var p = Matrix2D.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// constants: + /** + * Multiplier for converting degrees to radians. Used internally by Matrix2D. + * @property DEG_TO_RAD + * @static + * @final + * @type Number + * @readonly + **/ + Matrix2D.DEG_TO_RAD = Math.PI/180; + + +// static public properties: + /** + * An identity matrix, representing a null transformation. + * @property identity + * @static + * @type Matrix2D + * @readonly + **/ + Matrix2D.identity = null; // set at bottom of class definition. + + +// public methods: + /** + * Sets the specified values on this instance. + * @method setValues + * @param {Number} [a=1] Specifies the a property for the new matrix. + * @param {Number} [b=0] Specifies the b property for the new matrix. + * @param {Number} [c=0] Specifies the c property for the new matrix. + * @param {Number} [d=1] Specifies the d property for the new matrix. + * @param {Number} [tx=0] Specifies the tx property for the new matrix. + * @param {Number} [ty=0] Specifies the ty property for the new matrix. + * @return {Matrix2D} This instance. Useful for chaining method calls. + */ + p.setValues = function(a, b, c, d, tx, ty) { + // don't forget to update docs in the constructor if these change: + this.a = (a == null) ? 1 : a; + this.b = b || 0; + this.c = c || 0; + this.d = (d == null) ? 1 : d; + this.tx = tx || 0; + this.ty = ty || 0; + return this; + }; + + /** + * Appends the specified matrix properties to this matrix. All parameters are required. + * This is the equivalent of multiplying `(this matrix) * (specified matrix)`. + * @method append + * @param {Number} a + * @param {Number} b + * @param {Number} c + * @param {Number} d + * @param {Number} tx + * @param {Number} ty + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.append = function(a, b, c, d, tx, ty) { + var a1 = this.a; + var b1 = this.b; + var c1 = this.c; + var d1 = this.d; + if (a != 1 || b != 0 || c != 0 || d != 1) { + this.a = a1*a+c1*b; + this.b = b1*a+d1*b; + this.c = a1*c+c1*d; + this.d = b1*c+d1*d; + } + this.tx = a1*tx+c1*ty+this.tx; + this.ty = b1*tx+d1*ty+this.ty; + return this; + }; + + /** + * Prepends the specified matrix properties to this matrix. + * This is the equivalent of multiplying `(specified matrix) * (this matrix)`. + * All parameters are required. + * @method prepend + * @param {Number} a + * @param {Number} b + * @param {Number} c + * @param {Number} d + * @param {Number} tx + * @param {Number} ty + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.prepend = function(a, b, c, d, tx, ty) { + var a1 = this.a; + var c1 = this.c; + var tx1 = this.tx; + + this.a = a*a1+c*this.b; + this.b = b*a1+d*this.b; + this.c = a*c1+c*this.d; + this.d = b*c1+d*this.d; + this.tx = a*tx1+c*this.ty+tx; + this.ty = b*tx1+d*this.ty+ty; + return this; + }; + + /** + * Appends the specified matrix to this matrix. + * This is the equivalent of multiplying `(this matrix) * (specified matrix)`. + * @method appendMatrix + * @param {Matrix2D} matrix + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.appendMatrix = function(matrix) { + return this.append(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); + }; + + /** + * Prepends the specified matrix to this matrix. + * This is the equivalent of multiplying `(specified matrix) * (this matrix)`. + * For example, you could calculate the combined transformation for a child object using: + * + * var o = myDisplayObject; + * var mtx = o.getMatrix(); + * while (o = o.parent) { + * // prepend each parent's transformation in turn: + * o.prependMatrix(o.getMatrix()); + * } + * @method prependMatrix + * @param {Matrix2D} matrix + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.prependMatrix = function(matrix) { + return this.prepend(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); + }; + + /** + * Generates matrix properties from the specified display object transform properties, and appends them to this matrix. + * For example, you can use this to generate a matrix representing the transformations of a display object: + * + * var mtx = new createjs.Matrix2D(); + * mtx.appendTransform(o.x, o.y, o.scaleX, o.scaleY, o.rotation); + * @method appendTransform + * @param {Number} x + * @param {Number} y + * @param {Number} scaleX + * @param {Number} scaleY + * @param {Number} rotation + * @param {Number} skewX + * @param {Number} skewY + * @param {Number} regX Optional. + * @param {Number} regY Optional. + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.appendTransform = function(x, y, scaleX, scaleY, rotation, skewX, skewY, regX, regY) { + if (rotation%360) { + var r = rotation*Matrix2D.DEG_TO_RAD; + var cos = Math.cos(r); + var sin = Math.sin(r); + } else { + cos = 1; + sin = 0; + } + + if (skewX || skewY) { + // TODO: can this be combined into a single append operation? + skewX *= Matrix2D.DEG_TO_RAD; + skewY *= Matrix2D.DEG_TO_RAD; + this.append(Math.cos(skewY), Math.sin(skewY), -Math.sin(skewX), Math.cos(skewX), x, y); + this.append(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, 0, 0); + } else { + this.append(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, x, y); + } + + if (regX || regY) { + // append the registration offset: + this.tx -= regX*this.a+regY*this.c; + this.ty -= regX*this.b+regY*this.d; + } + return this; + }; + + /** + * Generates matrix properties from the specified display object transform properties, and prepends them to this matrix. + * For example, you could calculate the combined transformation for a child object using: + * + * var o = myDisplayObject; + * var mtx = new createjs.Matrix2D(); + * do { + * // prepend each parent's transformation in turn: + * mtx.prependTransform(o.x, o.y, o.scaleX, o.scaleY, o.rotation, o.skewX, o.skewY, o.regX, o.regY); + * } while (o = o.parent); + * + * Note that the above example would not account for {{#crossLink "DisplayObject/transformMatrix:property"}}{{/crossLink}} + * values. See {{#crossLink "Matrix2D/prependMatrix"}}{{/crossLink}} for an example that does. + * @method prependTransform + * @param {Number} x + * @param {Number} y + * @param {Number} scaleX + * @param {Number} scaleY + * @param {Number} rotation + * @param {Number} skewX + * @param {Number} skewY + * @param {Number} regX Optional. + * @param {Number} regY Optional. + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.prependTransform = function(x, y, scaleX, scaleY, rotation, skewX, skewY, regX, regY) { + if (rotation%360) { + var r = rotation*Matrix2D.DEG_TO_RAD; + var cos = Math.cos(r); + var sin = Math.sin(r); + } else { + cos = 1; + sin = 0; + } + + if (regX || regY) { + // prepend the registration offset: + this.tx -= regX; this.ty -= regY; + } + if (skewX || skewY) { + // TODO: can this be combined into a single prepend operation? + skewX *= Matrix2D.DEG_TO_RAD; + skewY *= Matrix2D.DEG_TO_RAD; + this.prepend(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, 0, 0); + this.prepend(Math.cos(skewY), Math.sin(skewY), -Math.sin(skewX), Math.cos(skewX), x, y); + } else { + this.prepend(cos*scaleX, sin*scaleX, -sin*scaleY, cos*scaleY, x, y); + } + return this; + }; + + /** + * Applies a clockwise rotation transformation to the matrix. + * @method rotate + * @param {Number} angle The angle to rotate by, in degrees. To use a value in radians, multiply it by `180/Math.PI`. + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.rotate = function(angle) { + angle = angle*Matrix2D.DEG_TO_RAD; + var cos = Math.cos(angle); + var sin = Math.sin(angle); + + var a1 = this.a; + var b1 = this.b; + + this.a = a1*cos+this.c*sin; + this.b = b1*cos+this.d*sin; + this.c = -a1*sin+this.c*cos; + this.d = -b1*sin+this.d*cos; + return this; + }; + + /** + * Applies a skew transformation to the matrix. + * @method skew + * @param {Number} skewX The amount to skew horizontally in degrees. To use a value in radians, multiply it by `180/Math.PI`. + * @param {Number} skewY The amount to skew vertically in degrees. + * @return {Matrix2D} This matrix. Useful for chaining method calls. + */ + p.skew = function(skewX, skewY) { + skewX = skewX*Matrix2D.DEG_TO_RAD; + skewY = skewY*Matrix2D.DEG_TO_RAD; + this.append(Math.cos(skewY), Math.sin(skewY), -Math.sin(skewX), Math.cos(skewX), 0, 0); + return this; + }; + + /** + * Applies a scale transformation to the matrix. + * @method scale + * @param {Number} x The amount to scale horizontally. E.G. a value of 2 will double the size in the X direction, and 0.5 will halve it. + * @param {Number} y The amount to scale vertically. + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.scale = function(x, y) { + this.a *= x; + this.b *= x; + this.c *= y; + this.d *= y; + //this.tx *= x; + //this.ty *= y; + return this; + }; + + /** + * Translates the matrix on the x and y axes. + * @method translate + * @param {Number} x + * @param {Number} y + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.translate = function(x, y) { + this.tx += this.a*x + this.c*y; + this.ty += this.b*x + this.d*y; + return this; + }; + + /** + * Sets the properties of the matrix to those of an identity matrix (one that applies a null transformation). + * @method identity + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.identity = function() { + this.a = this.d = 1; + this.b = this.c = this.tx = this.ty = 0; + return this; + }; + + /** + * Inverts the matrix, causing it to perform the opposite transformation. + * @method invert + * @return {Matrix2D} This matrix. Useful for chaining method calls. + **/ + p.invert = function() { + var a1 = this.a; + var b1 = this.b; + var c1 = this.c; + var d1 = this.d; + var tx1 = this.tx; + var n = a1*d1-b1*c1; + + this.a = d1/n; + this.b = -b1/n; + this.c = -c1/n; + this.d = a1/n; + this.tx = (c1*this.ty-d1*tx1)/n; + this.ty = -(a1*this.ty-b1*tx1)/n; + return this; + }; + + /** + * Returns true if the matrix is an identity matrix. + * @method isIdentity + * @return {Boolean} + **/ + p.isIdentity = function() { + return this.tx === 0 && this.ty === 0 && this.a === 1 && this.b === 0 && this.c === 0 && this.d === 1; + }; + + /** + * Returns true if this matrix is equal to the specified matrix (all property values are equal). + * @method equals + * @param {Matrix2D} matrix The matrix to compare. + * @return {Boolean} + **/ + p.equals = function(matrix) { + return this.tx === matrix.tx && this.ty === matrix.ty && this.a === matrix.a && this.b === matrix.b && this.c === matrix.c && this.d === matrix.d; + }; + + /** + * Transforms a point according to this matrix. + * @method transformPoint + * @param {Number} x The x component of the point to transform. + * @param {Number} y The y component of the point to transform. + * @param {Point | Object} [pt] An object to copy the result into. If omitted a generic object with x/y properties will be returned. + * @return {Point} This matrix. Useful for chaining method calls. + **/ + p.transformPoint = function(x, y, pt) { + pt = pt||{}; + pt.x = x*this.a+y*this.c+this.tx; + pt.y = x*this.b+y*this.d+this.ty; + return pt; + }; + + /** + * Decomposes the matrix into transform properties (x, y, scaleX, scaleY, and rotation). Note that these values + * may not match the transform properties you used to generate the matrix, though they will produce the same visual + * results. + * @method decompose + * @param {Object} target The object to apply the transform properties to. If null, then a new object will be returned. + * @return {Object} The target, or a new generic object with the transform properties applied. + */ + p.decompose = function(target) { + // TODO: it would be nice to be able to solve for whether the matrix can be decomposed into only scale/rotation even when scale is negative + if (target == null) { target = {}; } + target.x = this.tx; + target.y = this.ty; + target.scaleX = Math.sqrt(this.a * this.a + this.b * this.b); + target.scaleY = Math.sqrt(this.c * this.c + this.d * this.d); + + var skewX = Math.atan2(-this.c, this.d); + var skewY = Math.atan2(this.b, this.a); + + var delta = Math.abs(1-skewX/skewY); + if (delta < 0.00001) { // effectively identical, can use rotation: + target.rotation = skewY/Matrix2D.DEG_TO_RAD; + if (this.a < 0 && this.d >= 0) { + target.rotation += (target.rotation <= 0) ? 180 : -180; + } + target.skewX = target.skewY = 0; + } else { + target.skewX = skewX/Matrix2D.DEG_TO_RAD; + target.skewY = skewY/Matrix2D.DEG_TO_RAD; + } + return target; + }; + + /** + * Copies all properties from the specified matrix to this matrix. + * @method copy + * @param {Matrix2D} matrix The matrix to copy properties from. + * @return {Matrix2D} This matrix. Useful for chaining method calls. + */ + p.copy = function(matrix) { + return this.setValues(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty); + }; + + /** + * Returns a clone of the Matrix2D instance. + * @method clone + * @return {Matrix2D} a clone of the Matrix2D instance. + **/ + p.clone = function() { + return new Matrix2D(this.a, this.b, this.c, this.d, this.tx, this.ty); + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Matrix2D (a="+this.a+" b="+this.b+" c="+this.c+" d="+this.d+" tx="+this.tx+" ty="+this.ty+")]"; + }; + + // this has to be populated after the class is defined: + Matrix2D.identity = new Matrix2D(); + + + createjs.Matrix2D = Matrix2D; }()); //############################################################################## // DisplayProps.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - /** - * Used for calculating and encapsulating display related properties. - * @class DisplayProps - * @param {Number} [visible=true] Visible value. - * @param {Number} [alpha=0] Alpha value. - * @param {Number} [shadow=null] A Shadow instance or null. - * @param {Number} [compositeOperation=null] A compositeOperation value or null. - * @param {Number} [matrix] A transformation matrix. Defaults to a new identity matrix. - * @constructor - **/ - function DisplayProps(visible, alpha, shadow, compositeOperation, matrix) { - this.setValues(visible, alpha, shadow, compositeOperation, matrix); - - // public properties: - // assigned in the setValues method. - /** - * Property representing the alpha that will be applied to a display object. - * @property alpha - * @type Number - **/ - - /** - * Property representing the shadow that will be applied to a display object. - * @property shadow - * @type Shadow - **/ - - /** - * Property representing the compositeOperation that will be applied to a display object. - * You can find a list of valid composite operations at: - *
    https://developer.mozilla.org/en/Canvas_tutorial/Compositing - * @property compositeOperation - * @type String - **/ - - /** - * Property representing the value for visible that will be applied to a display object. - * @property visible - * @type Boolean - **/ - - /** - * The transformation matrix that will be applied to a display object. - * @property matrix - * @type Matrix2D - **/ - } - var p = DisplayProps.prototype; - -// initialization: - /** - * Reinitializes the instance with the specified values. - * @method setValues - * @param {Number} [visible=true] Visible value. - * @param {Number} [alpha=1] Alpha value. - * @param {Number} [shadow=null] A Shadow instance or null. - * @param {Number} [compositeOperation=null] A compositeOperation value or null. - * @param {Number} [matrix] A transformation matrix. Defaults to an identity matrix. - * @return {DisplayProps} This instance. Useful for chaining method calls. - * @chainable - */ - p.setValues = function (visible, alpha, shadow, compositeOperation, matrix) { - this.visible = visible == null ? true : !!visible; - this.alpha = alpha == null ? 1 : alpha; - this.shadow = shadow; - this.compositeOperation = shadow; - this.matrix = matrix || (this.matrix&&this.matrix.identity()) || new createjs.Matrix2D(); - return this; - }; - -// public methods: - /** - * Appends the specified display properties. This is generally used to apply a child's properties its parent's. - * @method append - * @param {Boolean} visible desired visible value - * @param {Number} alpha desired alpha value - * @param {Shadow} shadow desired shadow value - * @param {String} compositeOperation desired composite operation value - * @param {Matrix2D} [matrix] a Matrix2D instance - * @return {DisplayProps} This instance. Useful for chaining method calls. - * @chainable - */ - p.append = function(visible, alpha, shadow, compositeOperation, matrix) { - this.alpha *= alpha; - this.shadow = shadow || this.shadow; - this.compositeOperation = compositeOperation || this.compositeOperation; - this.visible = this.visible && visible; - matrix&&this.matrix.appendMatrix(matrix); - return this; - }; - - /** - * Prepends the specified display properties. This is generally used to apply a parent's properties to a child's. - * For example, to get the combined display properties that would be applied to a child, you could use: - * - * var o = myDisplayObject; - * var props = new createjs.DisplayProps(); - * do { - * // prepend each parent's props in turn: - * props.prepend(o.visible, o.alpha, o.shadow, o.compositeOperation, o.getMatrix()); - * } while (o = o.parent); - * - * @method prepend - * @param {Boolean} visible desired visible value - * @param {Number} alpha desired alpha value - * @param {Shadow} shadow desired shadow value - * @param {String} compositeOperation desired composite operation value - * @param {Matrix2D} [matrix] a Matrix2D instance - * @return {DisplayProps} This instance. Useful for chaining method calls. - * @chainable - */ - p.prepend = function(visible, alpha, shadow, compositeOperation, matrix) { - this.alpha *= alpha; - this.shadow = this.shadow || shadow; - this.compositeOperation = this.compositeOperation || compositeOperation; - this.visible = this.visible && visible; - matrix&&this.matrix.prependMatrix(matrix); - return this; - }; - - /** - * Resets this instance and its matrix to default values. - * @method identity - * @return {DisplayProps} This instance. Useful for chaining method calls. - * @chainable - */ - p.identity = function() { - this.visible = true; - this.alpha = 1; - this.shadow = this.compositeOperation = null; - this.matrix.identity(); - return this; - }; - - /** - * Returns a clone of the DisplayProps instance. Clones the associated matrix. - * @method clone - * @return {DisplayProps} a clone of the DisplayProps instance. - **/ - p.clone = function() { - return new DisplayProps(this.alpha, this.shadow, this.compositeOperation, this.visible, this.matrix.clone()); - }; - -// private methods: - - createjs.DisplayProps = DisplayProps; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + /** + * Used for calculating and encapsulating display related properties. + * @class DisplayProps + * @param {Number} [visible=true] Visible value. + * @param {Number} [alpha=1] Alpha value. + * @param {Number} [shadow=null] A Shadow instance or null. + * @param {Number} [compositeOperation=null] A compositeOperation value or null. + * @param {Number} [matrix] A transformation matrix. Defaults to a new identity matrix. + * @constructor + **/ + function DisplayProps(visible, alpha, shadow, compositeOperation, matrix) { + this.setValues(visible, alpha, shadow, compositeOperation, matrix); + + // public properties: + // assigned in the setValues method. + /** + * Property representing the alpha that will be applied to a display object. + * @property alpha + * @type Number + **/ + + /** + * Property representing the shadow that will be applied to a display object. + * @property shadow + * @type Shadow + **/ + + /** + * Property representing the compositeOperation that will be applied to a display object. + * You can find a list of valid composite operations at: + * https://developer.mozilla.org/en/Canvas_tutorial/Compositing + * @property compositeOperation + * @type String + **/ + + /** + * Property representing the value for visible that will be applied to a display object. + * @property visible + * @type Boolean + **/ + + /** + * The transformation matrix that will be applied to a display object. + * @property matrix + * @type Matrix2D + **/ + } + var p = DisplayProps.prototype; + +// initialization: + /** + * Reinitializes the instance with the specified values. + * @method setValues + * @param {Number} [visible=true] Visible value. + * @param {Number} [alpha=1] Alpha value. + * @param {Number} [shadow=null] A Shadow instance or null. + * @param {Number} [compositeOperation=null] A compositeOperation value or null. + * @param {Number} [matrix] A transformation matrix. Defaults to an identity matrix. + * @return {DisplayProps} This instance. Useful for chaining method calls. + * @chainable + */ + p.setValues = function (visible, alpha, shadow, compositeOperation, matrix) { + this.visible = visible == null ? true : !!visible; + this.alpha = alpha == null ? 1 : alpha; + this.shadow = shadow; + this.compositeOperation = compositeOperation; + this.matrix = matrix || (this.matrix&&this.matrix.identity()) || new createjs.Matrix2D(); + return this; + }; + +// public methods: + /** + * Appends the specified display properties. This is generally used to apply a child's properties its parent's. + * @method append + * @param {Boolean} visible desired visible value + * @param {Number} alpha desired alpha value + * @param {Shadow} shadow desired shadow value + * @param {String} compositeOperation desired composite operation value + * @param {Matrix2D} [matrix] a Matrix2D instance + * @return {DisplayProps} This instance. Useful for chaining method calls. + * @chainable + */ + p.append = function(visible, alpha, shadow, compositeOperation, matrix) { + this.alpha *= alpha; + this.shadow = shadow || this.shadow; + this.compositeOperation = compositeOperation || this.compositeOperation; + this.visible = this.visible && visible; + matrix&&this.matrix.appendMatrix(matrix); + return this; + }; + + /** + * Prepends the specified display properties. This is generally used to apply a parent's properties to a child's. + * For example, to get the combined display properties that would be applied to a child, you could use: + * + * var o = myDisplayObject; + * var props = new createjs.DisplayProps(); + * do { + * // prepend each parent's props in turn: + * props.prepend(o.visible, o.alpha, o.shadow, o.compositeOperation, o.getMatrix()); + * } while (o = o.parent); + * + * @method prepend + * @param {Boolean} visible desired visible value + * @param {Number} alpha desired alpha value + * @param {Shadow} shadow desired shadow value + * @param {String} compositeOperation desired composite operation value + * @param {Matrix2D} [matrix] a Matrix2D instance + * @return {DisplayProps} This instance. Useful for chaining method calls. + * @chainable + */ + p.prepend = function(visible, alpha, shadow, compositeOperation, matrix) { + this.alpha *= alpha; + this.shadow = this.shadow || shadow; + this.compositeOperation = this.compositeOperation || compositeOperation; + this.visible = this.visible && visible; + matrix&&this.matrix.prependMatrix(matrix); + return this; + }; + + /** + * Resets this instance and its matrix to default values. + * @method identity + * @return {DisplayProps} This instance. Useful for chaining method calls. + * @chainable + */ + p.identity = function() { + this.visible = true; + this.alpha = 1; + this.shadow = this.compositeOperation = null; + this.matrix.identity(); + return this; + }; + + /** + * Returns a clone of the DisplayProps instance. Clones the associated matrix. + * @method clone + * @return {DisplayProps} a clone of the DisplayProps instance. + **/ + p.clone = function() { + return new DisplayProps(this.alpha, this.shadow, this.compositeOperation, this.visible, this.matrix.clone()); + }; + +// private methods: + + createjs.DisplayProps = DisplayProps; })(); //############################################################################## // Point.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Represents a point on a 2 dimensional x / y coordinate system. - * - *

    Example

    - * - * var point = new createjs.Point(0, 100); - * - * @class Point - * @param {Number} [x=0] X position. - * @param {Number} [y=0] Y position. - * @constructor - **/ - function Point(x, y) { - this.setValues(x, y); - - - // public properties: - // assigned in the setValues method. - /** - * X position. - * @property x - * @type Number - **/ - - /** - * Y position. - * @property y - * @type Number - **/ - } - var p = Point.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// public methods: - /** - * Sets the specified values on this instance. - * @method setValues - * @param {Number} [x=0] X position. - * @param {Number} [y=0] Y position. - * @return {Point} This instance. Useful for chaining method calls. - * @chainable - */ - p.setValues = function(x, y) { - this.x = x||0; - this.y = y||0; - return this; - }; - - /** - * Copies all properties from the specified point to this point. - * @method copy - * @param {Point} point The point to copy properties from. - * @return {Point} This point. Useful for chaining method calls. - * @chainable - */ - p.copy = function(point) { - this.x = point.x; - this.y = point.y; - return this; - }; - - /** - * Returns a clone of the Point instance. - * @method clone - * @return {Point} a clone of the Point instance. - **/ - p.clone = function() { - return new Point(this.x, this.y); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Point (x="+this.x+" y="+this.y+")]"; - }; - - - createjs.Point = Point; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Represents a point on a 2 dimensional x / y coordinate system. + * + *

    Example

    + * + * var point = new createjs.Point(0, 100); + * + * @class Point + * @param {Number} [x=0] X position. + * @param {Number} [y=0] Y position. + * @constructor + **/ + function Point(x, y) { + this.setValues(x, y); + + + // public properties: + // assigned in the setValues method. + /** + * X position. + * @property x + * @type Number + **/ + + /** + * Y position. + * @property y + * @type Number + **/ + } + var p = Point.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// public methods: + /** + * Sets the specified values on this instance. + * @method setValues + * @param {Number} [x=0] X position. + * @param {Number} [y=0] Y position. + * @return {Point} This instance. Useful for chaining method calls. + * @chainable + */ + p.setValues = function(x, y) { + this.x = x||0; + this.y = y||0; + return this; + }; + + /** + * Copies all properties from the specified point to this point. + * @method copy + * @param {Point} point The point to copy properties from. + * @return {Point} This point. Useful for chaining method calls. + * @chainable + */ + p.copy = function(point) { + this.x = point.x; + this.y = point.y; + return this; + }; + + /** + * Returns a clone of the Point instance. + * @method clone + * @return {Point} a clone of the Point instance. + **/ + p.clone = function() { + return new Point(this.x, this.y); + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Point (x="+this.x+" y="+this.y+")]"; + }; + + + createjs.Point = Point; }()); //############################################################################## // Rectangle.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Represents a rectangle as defined by the points (x, y) and (x+width, y+height). - * - *

    Example

    - * - * var rect = new createjs.Rectangle(0, 0, 100, 100); - * - * @class Rectangle - * @param {Number} [x=0] X position. - * @param {Number} [y=0] Y position. - * @param {Number} [width=0] The width of the Rectangle. - * @param {Number} [height=0] The height of the Rectangle. - * @constructor - **/ - function Rectangle(x, y, width, height) { - this.setValues(x, y, width, height); - - - // public properties: - // assigned in the setValues method. - /** - * X position. - * @property x - * @type Number - **/ - - /** - * Y position. - * @property y - * @type Number - **/ - - /** - * Width. - * @property width - * @type Number - **/ - - /** - * Height. - * @property height - * @type Number - **/ - } - var p = Rectangle.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// public methods: - /** - * Sets the specified values on this instance. - * @method setValues - * @param {Number} [x=0] X position. - * @param {Number} [y=0] Y position. - * @param {Number} [width=0] The width of the Rectangle. - * @param {Number} [height=0] The height of the Rectangle. - * @return {Rectangle} This instance. Useful for chaining method calls. - * @chainable - */ - p.setValues = function(x, y, width, height) { - // don't forget to update docs in the constructor if these change: - this.x = x||0; - this.y = y||0; - this.width = width||0; - this.height = height||0; - return this; - }; - - /** - * Extends the rectangle's bounds to include the described point or rectangle. - * @method extend - * @param {Number} x X position of the point or rectangle. - * @param {Number} y Y position of the point or rectangle. - * @param {Number} [width=0] The width of the rectangle. - * @param {Number} [height=0] The height of the rectangle. - * @return {Rectangle} This instance. Useful for chaining method calls. - * @chainable - */ - p.extend = function(x, y, width, height) { - width = width||0; - height = height||0; - if (x+width > this.x+this.width) { this.width = x+width-this.x; } - if (y+height > this.y+this.height) { this.height = y+height-this.y; } - if (x < this.x) { this.width += this.x-x; this.x = x; } - if (y < this.y) { this.height += this.y-y; this.y = y; } - return this; - }; - - /** - * Adds the specified padding to the rectangle's bounds. - * @method extend - * @param {Number} [top=0] - * @param {Number} [left=0] - * @param {Number} [right=0] - * @param {Number} [bottom=0] - * @return {Rectangle} This instance. Useful for chaining method calls. - * @chainable - */ - p.pad = function(top, left, bottom, right) { - this.x -= left; - this.y -= top; - this.width += left+right; - this.height += top+bottom; - return this; - }; - - /** - * Copies all properties from the specified rectangle to this rectangle. - * @method copy - * @param {Rectangle} rectangle The rectangle to copy properties from. - * @return {Rectangle} This rectangle. Useful for chaining method calls. - * @chainable - */ - p.copy = function(rectangle) { - return this.setValues(rectangle.x, rectangle.y, rectangle.width, rectangle.height); - }; - - /** - * Returns true if this rectangle fully encloses the described point or rectangle. - * @method contains - * @param {Number} x X position of the point or rectangle. - * @param {Number} y Y position of the point or rectangle. - * @param {Number} [width=0] The width of the rectangle. - * @param {Number} [height=0] The height of the rectangle. - * @return {Boolean} True if the described point or rectangle is contained within this rectangle. - */ - p.contains = function(x, y, width, height) { - width = width||0; - height = height||0; - return (x >= this.x && x+width <= this.x+this.width && y >= this.y && y+height <= this.y+this.height); - }; - - /** - * Returns a new rectangle which contains this rectangle and the specified rectangle. - * @method union - * @param {Rectangle} rect The rectangle to calculate a union with. - * @return {Rectangle} A new rectangle describing the union. - */ - p.union = function(rect) { - return this.clone().extend(rect.x, rect.y, rect.width, rect.height); - }; - - /** - * Returns a new rectangle which describes the intersection (overlap) of this rectangle and the specified rectangle, - * or null if they do not intersect. - * @method intersection - * @param {Rectangle} rect The rectangle to calculate an intersection with. - * @return {Rectangle} A new rectangle describing the intersection or null. - */ - p.intersection = function(rect) { - var x1 = rect.x, y1 = rect.y, x2 = x1+rect.width, y2 = y1+rect.height; - if (this.x > x1) { x1 = this.x; } - if (this.y > y1) { y1 = this.y; } - if (this.x + this.width < x2) { x2 = this.x + this.width; } - if (this.y + this.height < y2) { y2 = this.y + this.height; } - return (x2 <= x1 || y2 <= y1) ? null : new Rectangle(x1, y1, x2-x1, y2-y1); - }; - - /** - * Returns true if the specified rectangle intersects (has any overlap) with this rectangle. - * @method intersects - * @param {Rectangle} rect The rectangle to compare. - * @return {Boolean} True if the rectangles intersect. - */ - p.intersects = function(rect) { - return (rect.x <= this.x+this.width && this.x <= rect.x+rect.width && rect.y <= this.y+this.height && this.y <= rect.y + rect.height); - }; - - /** - * Returns true if the width or height are equal or less than 0. - * @method isEmpty - * @return {Boolean} True if the rectangle is empty. - */ - p.isEmpty = function() { - return this.width <= 0 || this.height <= 0; - }; - - /** - * Returns a clone of the Rectangle instance. - * @method clone - * @return {Rectangle} a clone of the Rectangle instance. - **/ - p.clone = function() { - return new Rectangle(this.x, this.y, this.width, this.height); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Rectangle (x="+this.x+" y="+this.y+" width="+this.width+" height="+this.height+")]"; - }; - - - createjs.Rectangle = Rectangle; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Represents a rectangle as defined by the points (x, y) and (x+width, y+height). + * + *

    Example

    + * + * var rect = new createjs.Rectangle(0, 0, 100, 100); + * + * @class Rectangle + * @param {Number} [x=0] X position. + * @param {Number} [y=0] Y position. + * @param {Number} [width=0] The width of the Rectangle. + * @param {Number} [height=0] The height of the Rectangle. + * @constructor + **/ + function Rectangle(x, y, width, height) { + this.setValues(x, y, width, height); + + + // public properties: + // assigned in the setValues method. + /** + * X position. + * @property x + * @type Number + **/ + + /** + * Y position. + * @property y + * @type Number + **/ + + /** + * Width. + * @property width + * @type Number + **/ + + /** + * Height. + * @property height + * @type Number + **/ + } + var p = Rectangle.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// public methods: + /** + * Sets the specified values on this instance. + * @method setValues + * @param {Number} [x=0] X position. + * @param {Number} [y=0] Y position. + * @param {Number} [width=0] The width of the Rectangle. + * @param {Number} [height=0] The height of the Rectangle. + * @return {Rectangle} This instance. Useful for chaining method calls. + * @chainable + */ + p.setValues = function(x, y, width, height) { + // don't forget to update docs in the constructor if these change: + this.x = x||0; + this.y = y||0; + this.width = width||0; + this.height = height||0; + return this; + }; + + /** + * Extends the rectangle's bounds to include the described point or rectangle. + * @method extend + * @param {Number} x X position of the point or rectangle. + * @param {Number} y Y position of the point or rectangle. + * @param {Number} [width=0] The width of the rectangle. + * @param {Number} [height=0] The height of the rectangle. + * @return {Rectangle} This instance. Useful for chaining method calls. + * @chainable + */ + p.extend = function(x, y, width, height) { + width = width||0; + height = height||0; + if (x+width > this.x+this.width) { this.width = x+width-this.x; } + if (y+height > this.y+this.height) { this.height = y+height-this.y; } + if (x < this.x) { this.width += this.x-x; this.x = x; } + if (y < this.y) { this.height += this.y-y; this.y = y; } + return this; + }; + + /** + * Adds the specified padding to the rectangle's bounds. + * @method pad + * @param {Number} top + * @param {Number} left + * @param {Number} right + * @param {Number} bottom + * @return {Rectangle} This instance. Useful for chaining method calls. + * @chainable + */ + p.pad = function(top, left, bottom, right) { + this.x -= left; + this.y -= top; + this.width += left+right; + this.height += top+bottom; + return this; + }; + + /** + * Copies all properties from the specified rectangle to this rectangle. + * @method copy + * @param {Rectangle} rectangle The rectangle to copy properties from. + * @return {Rectangle} This rectangle. Useful for chaining method calls. + * @chainable + */ + p.copy = function(rectangle) { + return this.setValues(rectangle.x, rectangle.y, rectangle.width, rectangle.height); + }; + + /** + * Returns true if this rectangle fully encloses the described point or rectangle. + * @method contains + * @param {Number} x X position of the point or rectangle. + * @param {Number} y Y position of the point or rectangle. + * @param {Number} [width=0] The width of the rectangle. + * @param {Number} [height=0] The height of the rectangle. + * @return {Boolean} True if the described point or rectangle is contained within this rectangle. + */ + p.contains = function(x, y, width, height) { + width = width||0; + height = height||0; + return (x >= this.x && x+width <= this.x+this.width && y >= this.y && y+height <= this.y+this.height); + }; + + /** + * Returns a new rectangle which contains this rectangle and the specified rectangle. + * @method union + * @param {Rectangle} rect The rectangle to calculate a union with. + * @return {Rectangle} A new rectangle describing the union. + */ + p.union = function(rect) { + return this.clone().extend(rect.x, rect.y, rect.width, rect.height); + }; + + /** + * Returns a new rectangle which describes the intersection (overlap) of this rectangle and the specified rectangle, + * or null if they do not intersect. + * @method intersection + * @param {Rectangle} rect The rectangle to calculate an intersection with. + * @return {Rectangle} A new rectangle describing the intersection or null. + */ + p.intersection = function(rect) { + var x1 = rect.x, y1 = rect.y, x2 = x1+rect.width, y2 = y1+rect.height; + if (this.x > x1) { x1 = this.x; } + if (this.y > y1) { y1 = this.y; } + if (this.x + this.width < x2) { x2 = this.x + this.width; } + if (this.y + this.height < y2) { y2 = this.y + this.height; } + return (x2 <= x1 || y2 <= y1) ? null : new Rectangle(x1, y1, x2-x1, y2-y1); + }; + + /** + * Returns true if the specified rectangle intersects (has any overlap) with this rectangle. + * @method intersects + * @param {Rectangle} rect The rectangle to compare. + * @return {Boolean} True if the rectangles intersect. + */ + p.intersects = function(rect) { + return (rect.x <= this.x+this.width && this.x <= rect.x+rect.width && rect.y <= this.y+this.height && this.y <= rect.y + rect.height); + }; + + /** + * Returns true if the width or height are equal or less than 0. + * @method isEmpty + * @return {Boolean} True if the rectangle is empty. + */ + p.isEmpty = function() { + return this.width <= 0 || this.height <= 0; + }; + + /** + * Returns a clone of the Rectangle instance. + * @method clone + * @return {Rectangle} a clone of the Rectangle instance. + **/ + p.clone = function() { + return new Rectangle(this.x, this.y, this.width, this.height); + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Rectangle (x="+this.x+" y="+this.y+" width="+this.width+" height="+this.height+")]"; + }; + + + createjs.Rectangle = Rectangle; }()); //############################################################################## // ButtonHelper.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * The ButtonHelper is a helper class to create interactive buttons from {{#crossLink "MovieClip"}}{{/crossLink}} or - * {{#crossLink "Sprite"}}{{/crossLink}} instances. This class will intercept mouse events from an object, and - * automatically call {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} or {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}}, - * to the respective animation labels, add a pointer cursor, and allows the user to define a hit state frame. - * - * The ButtonHelper instance does not need to be added to the stage, but a reference should be maintained to prevent - * garbage collection. - * - * Note that over states will not work unless you call {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. - * - *

    Example

    - * - * var helper = new createjs.ButtonHelper(myInstance, "out", "over", "down", false, myInstance, "hit"); - * myInstance.addEventListener("click", handleClick); - * function handleClick(event) { - * // Click Happened. - * } - * - * @class ButtonHelper - * @param {Sprite|MovieClip} target The instance to manage. - * @param {String} [outLabel="out"] The label or animation to go to when the user rolls out of the button. - * @param {String} [overLabel="over"] The label or animation to go to when the user rolls over the button. - * @param {String} [downLabel="down"] The label or animation to go to when the user presses the button. - * @param {Boolean} [play=false] If the helper should call "gotoAndPlay" or "gotoAndStop" on the button when changing - * states. - * @param {DisplayObject} [hitArea] An optional item to use as the hit state for the button. If this is not defined, - * then the button's visible states will be used instead. Note that the same instance as the "target" argument can be - * used for the hitState. - * @param {String} [hitLabel] The label or animation on the hitArea instance that defines the hitArea bounds. If this is - * null, then the default state of the hitArea will be used. * - * @constructor - */ - function ButtonHelper(target, outLabel, overLabel, downLabel, play, hitArea, hitLabel) { - if (!target.addEventListener) { return; } - - - // public properties: - /** - * The target for this button helper. - * @property target - * @type MovieClip | Sprite - * @readonly - **/ - this.target = target; - - /** - * The label name or frame number to display when the user mouses out of the target. Defaults to "over". - * @property overLabel - * @type String | Number - **/ - this.overLabel = overLabel == null ? "over" : overLabel; - - /** - * The label name or frame number to display when the user mouses over the target. Defaults to "out". - * @property outLabel - * @type String | Number - **/ - this.outLabel = outLabel == null ? "out" : outLabel; - - /** - * The label name or frame number to display when the user presses on the target. Defaults to "down". - * @property downLabel - * @type String | Number - **/ - this.downLabel = downLabel == null ? "down" : downLabel; - - /** - * If true, then ButtonHelper will call gotoAndPlay, if false, it will use gotoAndStop. Default is false. - * @property play - * @default false - * @type Boolean - **/ - this.play = play; - - - // private properties - /** - * @property _isPressed - * @type Boolean - * @protected - **/ - this._isPressed = false; - - /** - * @property _isOver - * @type Boolean - * @protected - **/ - this._isOver = false; - - /** - * @property _enabled - * @type Boolean - * @protected - **/ - this._enabled = false; - - // setup: - target.mouseChildren = false; // prevents issues when children are removed from the display list when state changes. - this.enabled = true; - this.handleEvent({}); - if (hitArea) { - if (hitLabel) { - hitArea.actionsEnabled = false; - hitArea.gotoAndStop&&hitArea.gotoAndStop(hitLabel); - } - target.hitArea = hitArea; - } - } - var p = ButtonHelper.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// getter / setters: - /** - * Use the {{#crossLink "ButtonHelper/enabled:property"}}{{/crossLink}} property instead. - * @method setEnabled - * @param {Boolean} value - * @deprecated - **/ - p.setEnabled = function(value) { // TODO: deprecated. - if (value == this._enabled) { return; } - var o = this.target; - this._enabled = value; - if (value) { - o.cursor = "pointer"; - o.addEventListener("rollover", this); - o.addEventListener("rollout", this); - o.addEventListener("mousedown", this); - o.addEventListener("pressup", this); - if (o._reset) { o.__reset = o._reset; o._reset = this._reset;} - } else { - o.cursor = null; - o.removeEventListener("rollover", this); - o.removeEventListener("rollout", this); - o.removeEventListener("mousedown", this); - o.removeEventListener("pressup", this); - if (o.__reset) { o._reset = o.__reset; delete(o.__reset); } - } - }; - /** - * Use the {{#crossLink "ButtonHelper/enabled:property"}}{{/crossLink}} property instead. - * @method getEnabled - * @return {Boolean} - * @deprecated - **/ - p.getEnabled = function() { - return this._enabled; - }; - - /** - * Enables or disables the button functionality on the target. - * @property enabled - * @type {Boolean} - **/ - try { - Object.defineProperties(p, { - enabled: { get: p.getEnabled, set: p.setEnabled } - }); - } catch (e) {} // TODO: use Log - - -// public methods: - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[ButtonHelper]"; - }; - - -// private methods: - /** - * @method handleEvent - * @param {Object} evt The mouse event to handle. - * @protected - **/ - p.handleEvent = function(evt) { - var label, t = this.target, type = evt.type; - if (type == "mousedown") { - this._isPressed = true; - label = this.downLabel; - } else if (type == "pressup") { - this._isPressed = false; - label = this._isOver ? this.overLabel : this.outLabel; - } else if (type == "rollover") { - this._isOver = true; - label = this._isPressed ? this.downLabel : this.overLabel; - } else { // rollout and default - this._isOver = false; - label = this._isPressed ? this.overLabel : this.outLabel; - } - if (this.play) { - t.gotoAndPlay&&t.gotoAndPlay(label); - } else { - t.gotoAndStop&&t.gotoAndStop(label); - } - }; - - /** - * Injected into target. Preserves the paused state through a reset. - * @method _reset - * @protected - **/ - p._reset = function() { - // TODO: explore better ways to handle this issue. This is hacky & disrupts object signatures. - var p = this.paused; - this.__reset(); - this.paused = p; - }; - - - createjs.ButtonHelper = ButtonHelper; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * The ButtonHelper is a helper class to create interactive buttons from {{#crossLink "MovieClip"}}{{/crossLink}} or + * {{#crossLink "Sprite"}}{{/crossLink}} instances. This class will intercept mouse events from an object, and + * automatically call {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} or {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}}, + * to the respective animation labels, add a pointer cursor, and allows the user to define a hit state frame. + * + * The ButtonHelper instance does not need to be added to the stage, but a reference should be maintained to prevent + * garbage collection. + * + * Note that over states will not work unless you call {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. + * + *

    Example

    + * + * var helper = new createjs.ButtonHelper(myInstance, "out", "over", "down", false, myInstance, "hit"); + * myInstance.addEventListener("click", handleClick); + * function handleClick(event) { + * // Click Happened. + * } + * + * @class ButtonHelper + * @param {Sprite|MovieClip} target The instance to manage. + * @param {String} [outLabel="out"] The label or animation to go to when the user rolls out of the button. + * @param {String} [overLabel="over"] The label or animation to go to when the user rolls over the button. + * @param {String} [downLabel="down"] The label or animation to go to when the user presses the button. + * @param {Boolean} [play=false] If the helper should call "gotoAndPlay" or "gotoAndStop" on the button when changing + * states. + * @param {DisplayObject} [hitArea] An optional item to use as the hit state for the button. If this is not defined, + * then the button's visible states will be used instead. Note that the same instance as the "target" argument can be + * used for the hitState. + * @param {String} [hitLabel] The label or animation on the hitArea instance that defines the hitArea bounds. If this is + * null, then the default state of the hitArea will be used. * + * @constructor + */ + function ButtonHelper(target, outLabel, overLabel, downLabel, play, hitArea, hitLabel) { + if (!target.addEventListener) { return; } + + + // public properties: + /** + * The target for this button helper. + * @property target + * @type MovieClip | Sprite + * @readonly + **/ + this.target = target; + + /** + * The label name or frame number to display when the user mouses out of the target. Defaults to "over". + * @property overLabel + * @type String | Number + **/ + this.overLabel = overLabel == null ? "over" : overLabel; + + /** + * The label name or frame number to display when the user mouses over the target. Defaults to "out". + * @property outLabel + * @type String | Number + **/ + this.outLabel = outLabel == null ? "out" : outLabel; + + /** + * The label name or frame number to display when the user presses on the target. Defaults to "down". + * @property downLabel + * @type String | Number + **/ + this.downLabel = downLabel == null ? "down" : downLabel; + + /** + * If true, then ButtonHelper will call gotoAndPlay, if false, it will use gotoAndStop. Default is false. + * @property play + * @default false + * @type Boolean + **/ + this.play = play; + + + // private properties + /** + * @property _isPressed + * @type Boolean + * @protected + **/ + this._isPressed = false; + + /** + * @property _isOver + * @type Boolean + * @protected + **/ + this._isOver = false; + + /** + * @property _enabled + * @type Boolean + * @protected + **/ + this._enabled = false; + + // setup: + target.mouseChildren = false; // prevents issues when children are removed from the display list when state changes. + this.enabled = true; + this.handleEvent({}); + if (hitArea) { + if (hitLabel) { + hitArea.actionsEnabled = false; + hitArea.gotoAndStop&&hitArea.gotoAndStop(hitLabel); + } + target.hitArea = hitArea; + } + } + var p = ButtonHelper.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// getter / setters: + /** + * Use the {{#crossLink "ButtonHelper/enabled:property"}}{{/crossLink}} property instead. + * @method setEnabled + * @param {Boolean} value + * @deprecated + **/ + p.setEnabled = function(value) { // TODO: deprecated. + if (value == this._enabled) { return; } + var o = this.target; + this._enabled = value; + if (value) { + o.cursor = "pointer"; + o.addEventListener("rollover", this); + o.addEventListener("rollout", this); + o.addEventListener("mousedown", this); + o.addEventListener("pressup", this); + if (o._reset) { o.__reset = o._reset; o._reset = this._reset;} + } else { + o.cursor = null; + o.removeEventListener("rollover", this); + o.removeEventListener("rollout", this); + o.removeEventListener("mousedown", this); + o.removeEventListener("pressup", this); + if (o.__reset) { o._reset = o.__reset; delete(o.__reset); } + } + }; + /** + * Use the {{#crossLink "ButtonHelper/enabled:property"}}{{/crossLink}} property instead. + * @method getEnabled + * @return {Boolean} + * @deprecated + **/ + p.getEnabled = function() { + return this._enabled; + }; + + /** + * Enables or disables the button functionality on the target. + * @property enabled + * @type {Boolean} + **/ + try { + Object.defineProperties(p, { + enabled: { get: p.getEnabled, set: p.setEnabled } + }); + } catch (e) {} // TODO: use Log + + +// public methods: + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[ButtonHelper]"; + }; + + +// private methods: + /** + * @method handleEvent + * @param {Object} evt The mouse event to handle. + * @protected + **/ + p.handleEvent = function(evt) { + var label, t = this.target, type = evt.type; + if (type == "mousedown") { + this._isPressed = true; + label = this.downLabel; + } else if (type == "pressup") { + this._isPressed = false; + label = this._isOver ? this.overLabel : this.outLabel; + } else if (type == "rollover") { + this._isOver = true; + label = this._isPressed ? this.downLabel : this.overLabel; + } else { // rollout and default + this._isOver = false; + label = this._isPressed ? this.overLabel : this.outLabel; + } + if (this.play) { + t.gotoAndPlay&&t.gotoAndPlay(label); + } else { + t.gotoAndStop&&t.gotoAndStop(label); + } + }; + + /** + * Injected into target. Preserves the paused state through a reset. + * @method _reset + * @protected + **/ + p._reset = function() { + // TODO: explore better ways to handle this issue. This is hacky & disrupts object signatures. + var p = this.paused; + this.__reset(); + this.paused = p; + }; + + + createjs.ButtonHelper = ButtonHelper; }()); //############################################################################## // Shadow.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * This class encapsulates the properties required to define a shadow to apply to a {{#crossLink "DisplayObject"}}{{/crossLink}} - * via its shadow property. - * - *

    Example

    - * - * myImage.shadow = new createjs.Shadow("#000000", 5, 5, 10); - * - * @class Shadow - * @constructor - * @param {String} color The color of the shadow. This can be any valid CSS color value. - * @param {Number} offsetX The x offset of the shadow in pixels. - * @param {Number} offsetY The y offset of the shadow in pixels. - * @param {Number} blur The size of the blurring effect. - **/ - function Shadow(color, offsetX, offsetY, blur) { - - - // public properties: - /** - * The color of the shadow. This can be any valid CSS color value. - * @property color - * @type String - * @default null - */ - this.color = color||"black"; - - /** The x offset of the shadow. - * @property offsetX - * @type Number - * @default 0 - */ - this.offsetX = offsetX||0; - - /** The y offset of the shadow. - * @property offsetY - * @type Number - * @default 0 - */ - this.offsetY = offsetY||0; - - /** The blur of the shadow. - * @property blur - * @type Number - * @default 0 - */ - this.blur = blur||0; - } - var p = Shadow.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// static public properties: - /** - * An identity shadow object (all properties are set to 0). - * @property identity - * @type Shadow - * @static - * @final - * @readonly - **/ - Shadow.identity = new Shadow("transparent", 0, 0, 0); - - -// public methods: - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Shadow]"; - }; - - /** - * Returns a clone of this Shadow instance. - * @method clone - * @return {Shadow} A clone of the current Shadow instance. - **/ - p.clone = function() { - return new Shadow(this.color, this.offsetX, this.offsetY, this.blur); - }; - - - createjs.Shadow = Shadow; -}()); - -//############################################################################## -// SpriteSheet.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Encapsulates the properties and methods associated with a sprite sheet. A sprite sheet is a series of images (usually - * animation frames) combined into a larger image (or images). For example, an animation consisting of eight 100x100 - * images could be combined into a single 400x200 sprite sheet (4 frames across by 2 high). - * - * The data passed to the SpriteSheet constructor defines:
      - *
    1. The source image or images to use.
    2. - *
    3. The positions of individual image frames.
    4. - *
    5. Sequences of frames that form named animations. Optional.
    6. - *
    7. The target playback framerate. Optional.
    8. - *
    - * - *

    SpriteSheet Format

    - * - * SpriteSheets are an object with two required properties (`images` and `frames`), and two optional properties - * (`framerate` and `animations`). This makes them easy to define in javascript code, or in JSON. - * - *

    images

    - * An array of source images. Images can be either an HTMLImage - * instance, or a uri to an image. The former is recommended to control preloading. - * - * images: [image1, "path/to/image2.png"], - * - *

    frames

    - * Defines the individual frames. There are two supported formats for frame data:
      - *
    1. when all of the frames are the same size (in a grid), use an object with `width`, `height`, `regX`, `regY`, and `count` properties. - * `width` & `height` are required and specify the dimensions of the frames. - * `regX` & `regY` indicate the registration point or "origin" of the frames. - * `spacing` indicate the spacing between frames. - * `margin` specify the margin around the image(s). - * `count` allows you to specify the total number of frames in the spritesheet; if omitted, this will be calculated - * based on the dimensions of the source images and the frames. Frames will be assigned indexes based on their position - * in the source images (left to right, top to bottom). - * - * frames: {width:64, height:64, count:20, regX: 32, regY:64, spacing:0, margin:0} - * - *
    2. if the frames are of different sizes, use an array of frame definitions. Each definition is itself an array - * with 4 required and 3 optional entries, in the order: `x`, `y`, `width`, `height`, `imageIndex`, `regX`, `regY`. The first - * four entries are required and define the frame rectangle. The fifth specifies the index of the source image (defaults to 0). The - * last two specify the registration point of the frame. - * - * frames: [ - * // x, y, width, height, imageIndex*, regX*, regY* - * [64, 0, 96, 64], - * [0, 0, 64, 64, 1, 32, 32] - * // etc. - * ] - * - *
    - * - *

    animations

    - * Optional. An object defining sequences of frames to play as named animations. Each property corresponds to an - * animation of the same name. Each animation must specify the frames to play, and may - * also include a relative playback `speed` (ex. 2 would playback at double speed, 0.5 at half), and - * the name of the `next` animation to sequence to after it completes. - * - * There are three formats supported for defining the frames in an animation, which can be mixed and matched as appropriate:
      - *
    1. for a single frame animation, you can simply specify the frame index - * - * animations: { - * sit: 7 - * } - * - *
    2. for an animation of consecutive frames, you can use an array with two required, and two optional entries - * in the order: `start`, `end`, `next`, and `speed`. This will play the frames from start to end inclusive. - * - * animations: { - * // start, end, next*, speed* - * run: [0, 8], - * jump: [9, 12, "run", 2] - * } - * - *
    3. for non-consecutive frames, you can use an object with a `frames` property defining an array of frame indexes to - * play in order. The object can also specify `next` and `speed` properties. - * - * animations: { - * walk: { - * frames: [1,2,3,3,2,1] - * }, - * shoot: { - * frames: [1,4,5,6], - * next: "walk", - * speed: 0.5 - * } - * } - * - *
    - * Note: the `speed` property was added in EaselJS 0.7.0. Earlier versions had a `frequency` - * property instead, which was the inverse of `speed`. For example, a value of "4" would be 1/4 normal speed in earlier - * versions, but is 4x normal speed in 0.7.0+. - * - *

    framerate

    - * Optional. Indicates the default framerate to play this spritesheet at in frames per second. - * See {{#crossLink "SpriteSheet/framerate:property"}}{{/crossLink}} for more information. - * - * framerate: 20 - * - *

    Example

    - * To define a simple sprite sheet, with a single image "sprites.jpg" arranged in a regular 50x50 grid with three - * animations: "stand" showing the first frame, "run" looping frame 1-5 inclusive, and "jump" playing frame 6-8 and sequencing back to run. - * - * var data = { - * images: ["sprites.jpg"], - * frames: {width:50, height:50}, - * animations: { - * stand:0, - * run:[1,5], - * jump:[6,8,"run"] - * } - * }; - * var spriteSheet = new createjs.SpriteSheet(data); - * var animation = new createjs.Sprite(spriteSheet, "run"); - * - * - * Warning: Images loaded cross-origin will throw cross-origin security errors when interacted with - * using a mouse, using methods such as `getObjectUnderPoint`, using filters, or caching. You can get around this by - * setting `crossOrigin` flags on your images before passing them to EaselJS, eg: `img.crossOrigin="Anonymous";` - * - * @class SpriteSheet - * @constructor - * @param {Object} data An object describing the SpriteSheet data. - * @extends EventDispatcher - **/ - function SpriteSheet(data) { - this.EventDispatcher_constructor(); - - - // public properties: - /** - * Indicates whether all images are finished loading. - * @property complete - * @type Boolean - * @readonly - **/ - this.complete = true; - - /** - * Specifies the framerate to use by default for Sprite instances using the SpriteSheet. See - * Sprite.framerate for more information. - * @property framerate - * @type Number - **/ - this.framerate = 0; - - - // private properties: - /** - * @property _animations - * @protected - * @type Array - **/ - this._animations = null; - - /** - * @property _frames - * @protected - * @type Array - **/ - this._frames = null; - - /** - * @property _images - * @protected - * @type Array - **/ - this._images = null; - - /** - * @property _data - * @protected - * @type Object - **/ - this._data = null; - - /** - * @property _loadCount - * @protected - * @type Number - **/ - this._loadCount = 0; - - // only used for simple frame defs: - /** - * @property _frameHeight - * @protected - * @type Number - **/ - this._frameHeight = 0; - - /** - * @property _frameWidth - * @protected - * @type Number - **/ - this._frameWidth = 0; - - /** - * @property _numFrames - * @protected - * @type Number - **/ - this._numFrames = 0; - - /** - * @property _regX - * @protected - * @type Number - **/ - this._regX = 0; - - /** - * @property _regY - * @protected - * @type Number - **/ - this._regY = 0; - - /** - * @property _spacing - * @protected - * @type Number - **/ - this._spacing = 0; - - /** - * @property _margin - * @protected - * @type Number - **/ - this._margin = 0; - - // setup: - this._parseData(data); - } - var p = createjs.extend(SpriteSheet, createjs.EventDispatcher); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// events: - /** - * Dispatched when all images are loaded. Note that this only fires if the images - * were not fully loaded when the sprite sheet was initialized. You should check the complete property - * to prior to adding a listener. Ex. - * - * var sheet = new SpriteSheet(data); - * if (!sheet.complete) { - * // not preloaded, listen for the complete event: - * sheet.addEventListener("complete", handler); - * } - * - * @event complete - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - * @since 0.6.0 - */ - - /** - * Dispatched when getFrame is called with a valid frame index. This is primarily intended for use by {{#crossLink "SpriteSheetBuilder"}}{{/crossLink}} - * when doing on-demand rendering. - * @event getframe - * @param {Number} index The frame index. - * @param {Object} frame The frame object that getFrame will return. - */ - - -// getter / setters: - /** - * Use the {{#crossLink "SpriteSheet/animations:property"}}{{/crossLink}} property instead. - * @method getAnimations - * @return {Array} - * @deprecated - **/ - p.getAnimations = function() { - return this._animations.slice(); - }; - - /** - * Returns an array of all available animation names available on this sprite sheet as strings. - * @property animations - * @type {Array} - * @readonly - **/ - try { - Object.defineProperties(p, { - animations: { get: p.getAnimations } - }); - } catch (e) {} - - -// public methods: - /** - * Returns the total number of frames in the specified animation, or in the whole sprite - * sheet if the animation param is omitted. Returns 0 if the spritesheet relies on calculated frame counts, and - * the images have not been fully loaded. - * @method getNumFrames - * @param {String} animation The name of the animation to get a frame count for. - * @return {Number} The number of frames in the animation, or in the entire sprite sheet if the animation param is omitted. - */ - p.getNumFrames = function(animation) { - if (animation == null) { - return this._frames ? this._frames.length : this._numFrames || 0; - } else { - var data = this._data[animation]; - if (data == null) { return 0; } - else { return data.frames.length; } - } - }; - - /** - * Returns an object defining the specified animation. The returned object contains:
      - *
    • frames: an array of the frame ids in the animation
    • - *
    • speed: the playback speed for this animation
    • - *
    • name: the name of the animation
    • - *
    • next: the default animation to play next. If the animation loops, the name and next property will be the - * same.
    • - *
    - * @method getAnimation - * @param {String} name The name of the animation to get. - * @return {Object} a generic object with frames, speed, name, and next properties. - **/ - p.getAnimation = function(name) { - return this._data[name]; - }; - - /** - * Returns an object specifying the image and source rect of the specified frame. The returned object has:
      - *
    • an image property holding a reference to the image object in which the frame is found
    • - *
    • a rect property containing a Rectangle instance which defines the boundaries for the frame within that - * image.
    • - *
    • A regX and regY property corresponding to the regX/Y values for the frame. - *
    - * @method getFrame - * @param {Number} frameIndex The index of the frame. - * @return {Object} a generic object with image and rect properties. Returns null if the frame does not exist. - **/ - p.getFrame = function(frameIndex) { - var frame; - if (this._frames && (frame=this._frames[frameIndex])) { return frame; } - return null; - }; - - /** - * Returns a {{#crossLink "Rectangle"}}{{/crossLink}} instance defining the bounds of the specified frame relative - * to the origin. For example, a 90 x 70 frame with a regX of 50 and a regY of 40 would return: - * - * [x=-50, y=-40, width=90, height=70] - * - * @method getFrameBounds - * @param {Number} frameIndex The index of the frame. - * @param {Rectangle} [rectangle] A Rectangle instance to copy the values into. By default a new instance is created. - * @return {Rectangle} A Rectangle instance. Returns null if the frame does not exist, or the image is not fully loaded. - **/ - p.getFrameBounds = function(frameIndex, rectangle) { - var frame = this.getFrame(frameIndex); - return frame ? (rectangle||new createjs.Rectangle()).setValues(-frame.regX, -frame.regY, frame.rect.width, frame.rect.height) : null; - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[SpriteSheet]"; - }; - - /** - * SpriteSheet cannot be cloned. A SpriteSheet can be shared by multiple Sprite instances without cloning it. - * @method clone - **/ - p.clone = function() { - throw("SpriteSheet cannot be cloned.") - }; - -// private methods: - /** - * @method _parseData - * @param {Object} data An object describing the SpriteSheet data. - * @protected - **/ - p._parseData = function(data) { - var i,l,o,a; - if (data == null) { return; } - - this.framerate = data.framerate||0; - - // parse images: - if (data.images && (l=data.images.length) > 0) { - a = this._images = []; - for (i=0; ishadow property. + * + *

    Example

    + * + * myImage.shadow = new createjs.Shadow("#000000", 5, 5, 10); + * + * @class Shadow + * @constructor + * @param {String} color The color of the shadow. This can be any valid CSS color value. + * @param {Number} offsetX The x offset of the shadow in pixels. + * @param {Number} offsetY The y offset of the shadow in pixels. + * @param {Number} blur The size of the blurring effect. + **/ + function Shadow(color, offsetX, offsetY, blur) { + + + // public properties: + /** + * The color of the shadow. This can be any valid CSS color value. + * @property color + * @type String + * @default null + */ + this.color = color||"black"; + + /** The x offset of the shadow. + * @property offsetX + * @type Number + * @default 0 + */ + this.offsetX = offsetX||0; + + /** The y offset of the shadow. + * @property offsetY + * @type Number + * @default 0 + */ + this.offsetY = offsetY||0; + + /** The blur of the shadow. + * @property blur + * @type Number + * @default 0 + */ + this.blur = blur||0; + } + var p = Shadow.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// static public properties: + /** + * An identity shadow object (all properties are set to 0). + * @property identity + * @type Shadow + * @static + * @final + * @readonly + **/ + Shadow.identity = new Shadow("transparent", 0, 0, 0); + + +// public methods: + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Shadow]"; + }; + + /** + * Returns a clone of this Shadow instance. + * @method clone + * @return {Shadow} A clone of the current Shadow instance. + **/ + p.clone = function() { + return new Shadow(this.color, this.offsetX, this.offsetY, this.blur); + }; + + + createjs.Shadow = Shadow; +}()); - var maxFrames = this._numFrames || 100000; // if we go over this, something is wrong. - var frameCount = 0, frameWidth = this._frameWidth, frameHeight = this._frameHeight; - var spacing = this._spacing, margin = this._margin; - - imgLoop: - for (var i=0, imgs=this._images; i= maxFrames) { break imgLoop; } - frameCount++; - this._frames.push({ - image: img, - rect: new createjs.Rectangle(x, y, frameWidth, frameHeight), - regX: this._regX, - regY: this._regY - }); - x += frameWidth+spacing; - } - y += frameHeight+spacing; - } - } - this._numFrames = frameCount; - }; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Encapsulates the properties and methods associated with a sprite sheet. A sprite sheet is a series of images (usually + * animation frames) combined into a larger image (or images). For example, an animation consisting of eight 100x100 + * images could be combined into a single 400x200 sprite sheet (4 frames across by 2 high). + * + * The data passed to the SpriteSheet constructor defines: + *
      + *
    1. The source image or images to use.
    2. + *
    3. The positions of individual image frames.
    4. + *
    5. Sequences of frames that form named animations. Optional.
    6. + *
    7. The target playback framerate. Optional.
    8. + *
    + *

    SpriteSheet Format

    + * SpriteSheets are an object with two required properties (`images` and `frames`), and two optional properties + * (`framerate` and `animations`). This makes them easy to define in javascript code, or in JSON. + * + *

    images

    + * An array of source images. Images can be either an HTMlimage + * instance, or a uri to an image. The former is recommended to control preloading. + * + * images: [image1, "path/to/image2.png"], + * + *

    frames

    + * Defines the individual frames. There are two supported formats for frame data: + * When all of the frames are the same size (in a grid), use an object with `width`, `height`, `regX`, `regY`, + * and `count` properties. + * + *
      + *
    • `width` & `height` are required and specify the dimensions of the frames
    • + *
    • `regX` & `regY` indicate the registration point or "origin" of the frames
    • + *
    • `spacing` indicate the spacing between frames
    • + *
    • `margin` specify the margin around the image(s)
    • + *
    • `count` allows you to specify the total number of frames in the spritesheet; if omitted, this will + * be calculated based on the dimensions of the source images and the frames. Frames will be assigned + * indexes based on their position in the source images (left to right, top to bottom).
    • + *
    + * + * frames: {width:64, height:64, count:20, regX: 32, regY:64, spacing:0, margin:0} + * + * If the frames are of different sizes, use an array of frame definitions. Each definition is itself an array + * with 4 required and 3 optional entries, in the order: + * + *
      + *
    • The first four, `x`, `y`, `width`, and `height` are required and define the frame rectangle.
    • + *
    • The fifth, `imageIndex`, specifies the index of the source image (defaults to 0)
    • + *
    • The last two, `regX` and `regY` specify the registration point of the frame
    • + *
    + * + * frames: [ + * // x, y, width, height, imageIndex*, regX*, regY* + * [64, 0, 96, 64], + * [0, 0, 64, 64, 1, 32, 32] + * // etc. + * ] + * + *

    animations

    + * Optional. An object defining sequences of frames to play as named animations. Each property corresponds to an + * animation of the same name. Each animation must specify the frames to play, and may + * also include a relative playback `speed` (ex. 2 would playback at double speed, 0.5 at half), and + * the name of the `next` animation to sequence to after it completes. + * + * There are three formats supported for defining the frames in an animation, which can be mixed and matched as appropriate: + *
      + *
    1. for a single frame animation, you can simply specify the frame index + * + * animations: { + * sit: 7 + * } + * + *
    2. + *
    3. + * for an animation of consecutive frames, you can use an array with two required, and two optional entries + * in the order: `start`, `end`, `next`, and `speed`. This will play the frames from start to end inclusive. + * + * animations: { + * // start, end, next*, speed* + * run: [0, 8], + * jump: [9, 12, "run", 2] + * } + * + *
    4. + *
    5. + * for non-consecutive frames, you can use an object with a `frames` property defining an array of frame + * indexes to play in order. The object can also specify `next` and `speed` properties. + * + * animations: { + * walk: { + * frames: [1,2,3,3,2,1] + * }, + * shoot: { + * frames: [1,4,5,6], + * next: "walk", + * speed: 0.5 + * } + * } + * + *
    6. + *
    + * Note: the `speed` property was added in EaselJS 0.7.0. Earlier versions had a `frequency` + * property instead, which was the inverse of `speed`. For example, a value of "4" would be 1/4 normal speed in + * earlier versions, but is 4x normal speed in EaselJS 0.7.0+. + * + *

    framerate

    + * Optional. Indicates the default framerate to play this spritesheet at in frames per second. See + * {{#crossLink "SpriteSheet/framerate:property"}}{{/crossLink}} for more information. + * + * framerate: 20 + * + * Note that the Sprite framerate will only work if the stage update method is provided with the {{#crossLink "Ticker/tick:event"}}{{/crossLink}} + * event generated by the {{#crossLink "Ticker"}}{{/crossLink}}. + * + * createjs.Ticker.on("tick", handleTick); + * function handleTick(event) { + * stage.update(event); + * } + * + *

    Example

    + * To define a simple sprite sheet, with a single image "sprites.jpg" arranged in a regular 50x50 grid with three + * animations: "stand" showing the first frame, "run" looping frame 1-5 inclusive, and "jump" playing frame 6-8 and + * sequencing back to run. + * + * var data = { + * images: ["sprites.jpg"], + * frames: {width:50, height:50}, + * animations: { + * stand:0, + * run:[1,5], + * jump:[6,8,"run"] + * } + * }; + * var spriteSheet = new createjs.SpriteSheet(data); + * var animation = new createjs.Sprite(spriteSheet, "run"); + * + *

    Generating SpriteSheet Images

    + * Spritesheets can be created manually by combining images in PhotoShop, and specifying the frame size or + * coordinates manually, however there are a number of tools that facilitate this. + *
      + *
    • Exporting SpriteSheets or HTML5 content from Flash Pro supports the EaselJS SpriteSheet format.
    • + *
    • The popular Texture Packer has + * EaselJS support. + *
    • SWF animations in Flash can be exported to SpriteSheets using
    • + *
    + * + *

    Cross Origin Issues

    + * Warning: Images loaded cross-origin will throw cross-origin security errors when interacted with + * using: + *
      + *
    • a mouse
    • + *
    • methods such as {{#crossLink "Container/getObjectUnderPoint"}}{{/crossLink}}
    • + *
    • Filters (see {{#crossLink "Filter"}}{{/crossLink}})
    • + *
    • caching (see {{#crossLink "DisplayObject/cache"}}{{/crossLink}})
    • + *
    + * You can get around this by setting `crossOrigin` property on your images before passing them to EaselJS, or + * setting the `crossOrigin` property on PreloadJS' LoadQueue or LoadItems. + * + * var image = new Image(); + * img.crossOrigin="Anonymous"; + * img.src = "http://server-with-CORS-support.com/path/to/image.jpg"; + * + * If you pass string paths to SpriteSheets, they will not work cross-origin. The server that stores the image must + * support cross-origin requests, or this will not work. For more information, check out + * CORS overview on MDN. + * + * @class SpriteSheet + * @constructor + * @param {Object} data An object describing the SpriteSheet data. + * @extends EventDispatcher + **/ + function SpriteSheet(data) { + this.EventDispatcher_constructor(); + + + // public properties: + /** + * Indicates whether all images are finished loading. + * @property complete + * @type Boolean + * @readonly + **/ + this.complete = true; + + /** + * Specifies the framerate to use by default for Sprite instances using the SpriteSheet. See the Sprite class + * {{#crossLink "Sprite/framerate:property"}}{{/crossLink}} for more information. + * @property framerate + * @type Number + **/ + this.framerate = 0; + + + // private properties: + /** + * @property _animations + * @protected + * @type Array + **/ + this._animations = null; + + /** + * @property _frames + * @protected + * @type Array + **/ + this._frames = null; + + /** + * @property _images + * @protected + * @type Array + **/ + this._images = null; + + /** + * @property _data + * @protected + * @type Object + **/ + this._data = null; + + /** + * @property _loadCount + * @protected + * @type Number + **/ + this._loadCount = 0; + + // only used for simple frame defs: + /** + * @property _frameHeight + * @protected + * @type Number + **/ + this._frameHeight = 0; + + /** + * @property _frameWidth + * @protected + * @type Number + **/ + this._frameWidth = 0; + + /** + * @property _numFrames + * @protected + * @type Number + **/ + this._numFrames = 0; + + /** + * @property _regX + * @protected + * @type Number + **/ + this._regX = 0; + + /** + * @property _regY + * @protected + * @type Number + **/ + this._regY = 0; + + /** + * @property _spacing + * @protected + * @type Number + **/ + this._spacing = 0; + + /** + * @property _margin + * @protected + * @type Number + **/ + this._margin = 0; + + // setup: + this._parseData(data); + } + var p = createjs.extend(SpriteSheet, createjs.EventDispatcher); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// events: + /** + * Dispatched when all images are loaded. Note that this only fires if the images + * were not fully loaded when the sprite sheet was initialized. You should check the complete property + * to prior to adding a listener. Ex. + * + * var sheet = new createjs.SpriteSheet(data); + * if (!sheet.complete) { + * // not preloaded, listen for the complete event: + * sheet.addEventListener("complete", handler); + * } + * + * @event complete + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. + * @since 0.6.0 + */ + + /** + * Dispatched when getFrame is called with a valid frame index. This is primarily intended for use by {{#crossLink "SpriteSheetBuilder"}}{{/crossLink}} + * when doing on-demand rendering. + * @event getframe + * @param {Number} index The frame index. + * @param {Object} frame The frame object that getFrame will return. + */ + + /** + * Dispatched when an image encounters an error. A SpriteSheet will dispatch an error event for each image that + * encounters an error, and will still dispatch a {{#crossLink "SpriteSheet/complete:event"}}{{/crossLink}} + * event once all images are finished processing, even if an error is encountered. + * @event error + * @param {String} src The source of the image that failed to load. + * @since 0.8.2 + */ + + +// getter / setters: + /** + * Use the {{#crossLink "SpriteSheet/animations:property"}}{{/crossLink}} property instead. + * @method getAnimations + * @return {Array} + * @deprecated + **/ + p.getAnimations = function() { + return this._animations.slice(); + }; + + /** + * Returns an array of all available animation names available on this sprite sheet as strings. + * @property animations + * @type {Array} + * @readonly + **/ + try { + Object.defineProperties(p, { + animations: { get: p.getAnimations } + }); + } catch (e) {} + + +// public methods: + /** + * Returns the total number of frames in the specified animation, or in the whole sprite + * sheet if the animation param is omitted. Returns 0 if the spritesheet relies on calculated frame counts, and + * the images have not been fully loaded. + * @method getNumFrames + * @param {String} animation The name of the animation to get a frame count for. + * @return {Number} The number of frames in the animation, or in the entire sprite sheet if the animation param is omitted. + */ + p.getNumFrames = function(animation) { + if (animation == null) { + return this._frames ? this._frames.length : this._numFrames || 0; + } else { + var data = this._data[animation]; + if (data == null) { return 0; } + else { return data.frames.length; } + } + }; + + /** + * Returns an object defining the specified animation. The returned object contains:
      + *
    • frames: an array of the frame ids in the animation
    • + *
    • speed: the playback speed for this animation
    • + *
    • name: the name of the animation
    • + *
    • next: the default animation to play next. If the animation loops, the name and next property will be the + * same.
    • + *
    + * @method getAnimation + * @param {String} name The name of the animation to get. + * @return {Object} a generic object with frames, speed, name, and next properties. + **/ + p.getAnimation = function(name) { + return this._data[name]; + }; + + /** + * Returns an object specifying the image and source rect of the specified frame. The returned object has:
      + *
    • an image property holding a reference to the image object in which the frame is found
    • + *
    • a rect property containing a Rectangle instance which defines the boundaries for the frame within that + * image.
    • + *
    • A regX and regY property corresponding to the regX/Y values for the frame. + *
    + * @method getFrame + * @param {Number} frameIndex The index of the frame. + * @return {Object} a generic object with image and rect properties. Returns null if the frame does not exist. + **/ + p.getFrame = function(frameIndex) { + var frame; + if (this._frames && (frame=this._frames[frameIndex])) { return frame; } + return null; + }; + + /** + * Returns a {{#crossLink "Rectangle"}}{{/crossLink}} instance defining the bounds of the specified frame relative + * to the origin. For example, a 90 x 70 frame with a regX of 50 and a regY of 40 would return: + * + * [x=-50, y=-40, width=90, height=70] + * + * @method getFrameBounds + * @param {Number} frameIndex The index of the frame. + * @param {Rectangle} [rectangle] A Rectangle instance to copy the values into. By default a new instance is created. + * @return {Rectangle} A Rectangle instance. Returns null if the frame does not exist, or the image is not fully loaded. + **/ + p.getFrameBounds = function(frameIndex, rectangle) { + var frame = this.getFrame(frameIndex); + return frame ? (rectangle||new createjs.Rectangle()).setValues(-frame.regX, -frame.regY, frame.rect.width, frame.rect.height) : null; + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[SpriteSheet]"; + }; + + /** + * SpriteSheet cannot be cloned. A SpriteSheet can be shared by multiple Sprite instances without cloning it. + * @method clone + **/ + p.clone = function() { + throw("SpriteSheet cannot be cloned.") + }; + +// private methods: + /** + * @method _parseData + * @param {Object} data An object describing the SpriteSheet data. + * @protected + **/ + p._parseData = function(data) { + var i,l,o,a; + if (data == null) { return; } + + this.framerate = data.framerate||0; + + // parse images: + if (data.images && (l=data.images.length) > 0) { + a = this._images = []; + for (i=0; i= maxFrames) { break imgLoop; } + frameCount++; + this._frames.push({ + image: img, + rect: new createjs.Rectangle(x, y, frameWidth, frameHeight), + regX: this._regX, + regY: this._regY + }); + x += frameWidth+spacing; + } + y += frameHeight+spacing; + } + } + this._numFrames = frameCount; + }; + + + createjs.SpriteSheet = createjs.promote(SpriteSheet, "EventDispatcher"); +}()); +//############################################################################## +// Graphics.js +//############################################################################## - createjs.SpriteSheet = createjs.promote(SpriteSheet, "EventDispatcher"); +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * The Graphics class exposes an easy to use API for generating vector drawing instructions and drawing them to a + * specified context. Note that you can use Graphics without any dependency on the EaselJS framework by calling {{#crossLink "Graphics/draw"}}{{/crossLink}} + * directly, or it can be used with the {{#crossLink "Shape"}}{{/crossLink}} object to draw vector graphics within the + * context of an EaselJS display list. + * + * There are two approaches to working with Graphics object: calling methods on a Graphics instance (the "Graphics API"), or + * instantiating Graphics command objects and adding them to the graphics queue via {{#crossLink "Graphics/append"}}{{/crossLink}}. + * The former abstracts the latter, simplifying beginning and ending paths, fills, and strokes. + * + * var g = new createjs.Graphics(); + * g.setStrokeStyle(1); + * g.beginStroke("#000000"); + * g.beginFill("red"); + * g.drawCircle(0,0,30); + * + * All drawing methods in Graphics return the Graphics instance, so they can be chained together. For example, + * the following line of code would generate the instructions to draw a rectangle with a red stroke and blue fill: + * + * myGraphics.beginStroke("red").beginFill("blue").drawRect(20, 20, 100, 50); + * + * Each graphics API call generates a command object (see below). The last command to be created can be accessed via + * {{#crossLink "Graphics/command:property"}}{{/crossLink}}: + * + * var fillCommand = myGraphics.beginFill("red").command; + * // ... later, update the fill style/color: + * fillCommand.style = "blue"; + * // or change it to a bitmap fill: + * fillCommand.bitmap(myImage); + * + * For more direct control of rendering, you can instantiate and append command objects to the graphics queue directly. In this case, you + * need to manage path creation manually, and ensure that fill/stroke is applied to a defined path: + * + * // start a new path. Graphics.beginCmd is a reusable BeginPath instance: + * myGraphics.append(createjs.Graphics.beginCmd); + * // we need to define the path before applying the fill: + * var circle = new createjs.Graphics.Circle(0,0,30); + * myGraphics.append(circle); + * // fill the path we just defined: + * var fill = new createjs.Graphics.Fill("red"); + * myGraphics.append(fill); + * + * These approaches can be used together, for example to insert a custom command: + * + * myGraphics.beginFill("red"); + * var customCommand = new CustomSpiralCommand(etc); + * myGraphics.append(customCommand); + * myGraphics.beginFill("blue"); + * myGraphics.drawCircle(0, 0, 30); + * + * See {{#crossLink "Graphics/append"}}{{/crossLink}} for more info on creating custom commands. + * + *

    Tiny API

    + * The Graphics class also includes a "tiny API", which is one or two-letter methods that are shortcuts for all of the + * Graphics methods. These methods are great for creating compact instructions, and is used by the Toolkit for CreateJS + * to generate readable code. All tiny methods are marked as protected, so you can view them by enabling protected + * descriptions in the docs. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
    TinyMethodTinyMethod
    mt{{#crossLink "Graphics/moveTo"}}{{/crossLink}} lt {{#crossLink "Graphics/lineTo"}}{{/crossLink}}
    a/at{{#crossLink "Graphics/arc"}}{{/crossLink}} / {{#crossLink "Graphics/arcTo"}}{{/crossLink}} bt{{#crossLink "Graphics/bezierCurveTo"}}{{/crossLink}}
    ea{{#crossLink "Graphics/ellipticalArc"}}{{/crossLink}} r{{#crossLink "Graphics/rect"}}{{/crossLink}}
    qt{{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} (also curveTo)c{{#crossLink "Graphics/clear"}}{{/crossLink}}
    cp{{#crossLink "Graphics/closePath"}}{{/crossLink}} lf{{#crossLink "Graphics/beginLinearGradientFill"}}{{/crossLink}}
    f{{#crossLink "Graphics/beginFill"}}{{/crossLink}} bf{{#crossLink "Graphics/beginBitmapFill"}}{{/crossLink}}
    rf{{#crossLink "Graphics/beginRadialGradientFill"}}{{/crossLink}} ss / sd{{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} / {{#crossLink "Graphics/setStrokeDash"}}{{/crossLink}}
    ef{{#crossLink "Graphics/endFill"}}{{/crossLink}} ls{{#crossLink "Graphics/beginLinearGradientStroke"}}{{/crossLink}}
    s{{#crossLink "Graphics/beginStroke"}}{{/crossLink}} bs{{#crossLink "Graphics/beginBitmapStroke"}}{{/crossLink}}
    rs{{#crossLink "Graphics/beginRadialGradientStroke"}}{{/crossLink}} dr{{#crossLink "Graphics/drawRect"}}{{/crossLink}}
    es{{#crossLink "Graphics/endStroke"}}{{/crossLink}} rc{{#crossLink "Graphics/drawRoundRectComplex"}}{{/crossLink}}
    rr{{#crossLink "Graphics/drawRoundRect"}}{{/crossLink}} de{{#crossLink "Graphics/drawEllipse"}}{{/crossLink}}
    dc{{#crossLink "Graphics/drawCircle"}}{{/crossLink}} p{{#crossLink "Graphics/decodePath"}}{{/crossLink}}
    dp{{#crossLink "Graphics/drawPolyStar"}}{{/crossLink}}
    + * + * Here is the above example, using the tiny API instead. + * + * myGraphics.s("red").f("blue").r(20, 20, 100, 50); + * + * @class Graphics + * @constructor + **/ + function Graphics() { + + + // public properties + /** + * Holds a reference to the last command that was created or appended. For example, you could retain a reference + * to a Fill command in order to dynamically update the color later by using: + * + * var myFill = myGraphics.beginFill("red").command; + * // update color later: + * myFill.style = "yellow"; + * + * @property command + * @type Object + **/ + this.command = null; + + + // private properties + /** + * @property _stroke + * @protected + * @type {Stroke} + **/ + this._stroke = null; + + /** + * @property _strokeStyle + * @protected + * @type {StrokeStyle} + **/ + this._strokeStyle = null; + + /** + * @property _oldStrokeStyle + * @protected + * @type {StrokeStyle} + **/ + this._oldStrokeStyle = null; + + /** + * @property _strokeDash + * @protected + * @type {StrokeDash} + **/ + this._strokeDash = null; + + /** + * @property _oldStrokeDash + * @protected + * @type {StrokeDash} + **/ + this._oldStrokeDash = null; + + /** + * @property _strokeIgnoreScale + * @protected + * @type Boolean + **/ + this._strokeIgnoreScale = false; + + /** + * @property _fill + * @protected + * @type {Fill} + **/ + this._fill = null; + + /** + * @property _instructions + * @protected + * @type {Array} + **/ + this._instructions = []; + + /** + * Indicates the last instruction index that was committed. + * @property _commitIndex + * @protected + * @type {Number} + **/ + this._commitIndex = 0; + + /** + * Uncommitted instructions. + * @property _activeInstructions + * @protected + * @type {Array} + **/ + this._activeInstructions = []; + + /** + * This indicates that there have been changes to the activeInstruction list since the last updateInstructions call. + * @property _dirty + * @protected + * @type {Boolean} + * @default false + **/ + this._dirty = false; + + /** + * Index to draw from if a store operation has happened. + * @property _storeIndex + * @protected + * @type {Number} + * @default 0 + **/ + this._storeIndex = 0; + + // setup: + this.clear(); + } + var p = Graphics.prototype; + var G = Graphics; // shortcut + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// static public methods: + /** + * Returns a CSS compatible color string based on the specified RGB numeric color values in the format + * "rgba(255,255,255,1.0)", or if alpha is null then in the format "rgb(255,255,255)". For example, + * + * createjs.Graphics.getRGB(50, 100, 150, 0.5); + * // Returns "rgba(50,100,150,0.5)" + * + * It also supports passing a single hex color value as the first param, and an optional alpha value as the second + * param. For example, + * + * createjs.Graphics.getRGB(0xFF00FF, 0.2); + * // Returns "rgba(255,0,255,0.2)" + * + * @method getRGB + * @static + * @param {Number} r The red component for the color, between 0 and 0xFF (255). + * @param {Number} g The green component for the color, between 0 and 0xFF (255). + * @param {Number} b The blue component for the color, between 0 and 0xFF (255). + * @param {Number} [alpha] The alpha component for the color where 0 is fully transparent and 1 is fully opaque. + * @return {String} A CSS compatible color string based on the specified RGB numeric color values in the format + * "rgba(255,255,255,1.0)", or if alpha is null then in the format "rgb(255,255,255)". + **/ + Graphics.getRGB = function(r, g, b, alpha) { + if (r != null && b == null) { + alpha = g; + b = r&0xFF; + g = r>>8&0xFF; + r = r>>16&0xFF; + } + if (alpha == null) { + return "rgb("+r+","+g+","+b+")"; + } else { + return "rgba("+r+","+g+","+b+","+alpha+")"; + } + }; + + /** + * Returns a CSS compatible color string based on the specified HSL numeric color values in the format "hsla(360,100,100,1.0)", + * or if alpha is null then in the format "hsl(360,100,100)". + * + * createjs.Graphics.getHSL(150, 100, 70); + * // Returns "hsl(150,100,70)" + * + * @method getHSL + * @static + * @param {Number} hue The hue component for the color, between 0 and 360. + * @param {Number} saturation The saturation component for the color, between 0 and 100. + * @param {Number} lightness The lightness component for the color, between 0 and 100. + * @param {Number} [alpha] The alpha component for the color where 0 is fully transparent and 1 is fully opaque. + * @return {String} A CSS compatible color string based on the specified HSL numeric color values in the format + * "hsla(360,100,100,1.0)", or if alpha is null then in the format "hsl(360,100,100)". + **/ + Graphics.getHSL = function(hue, saturation, lightness, alpha) { + if (alpha == null) { + return "hsl("+(hue%360)+","+saturation+"%,"+lightness+"%)"; + } else { + return "hsla("+(hue%360)+","+saturation+"%,"+lightness+"%,"+alpha+")"; + } + }; + + +// static properties: + /** + * A reusable instance of {{#crossLink "Graphics/BeginPath"}}{{/crossLink}} to avoid + * unnecessary instantiation. + * @property beginCmd + * @type {Graphics.BeginPath} + * @static + **/ + // defined at the bottom of this file. + + /** + * Map of Base64 characters to values. Used by {{#crossLink "Graphics/decodePath"}}{{/crossLink}}. + * @property BASE_64 + * @static + * @final + * @readonly + * @type {Object} + **/ + Graphics.BASE_64 = {"A":0,"B":1,"C":2,"D":3,"E":4,"F":5,"G":6,"H":7,"I":8,"J":9,"K":10,"L":11,"M":12,"N":13,"O":14,"P":15,"Q":16,"R":17,"S":18,"T":19,"U":20,"V":21,"W":22,"X":23,"Y":24,"Z":25,"a":26,"b":27,"c":28,"d":29,"e":30,"f":31,"g":32,"h":33,"i":34,"j":35,"k":36,"l":37,"m":38,"n":39,"o":40,"p":41,"q":42,"r":43,"s":44,"t":45,"u":46,"v":47,"w":48,"x":49,"y":50,"z":51,"0":52,"1":53,"2":54,"3":55,"4":56,"5":57,"6":58,"7":59,"8":60,"9":61,"+":62,"/":63}; + + /** + * Maps numeric values for the caps parameter of {{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} to + * corresponding string values. This is primarily for use with the tiny API. The mappings are as follows: 0 to + * "butt", 1 to "round", and 2 to "square". + * For example, to set the line caps to "square": + * + * myGraphics.ss(16, 2); + * + * @property STROKE_CAPS_MAP + * @static + * @final + * @readonly + * @type {Array} + **/ + Graphics.STROKE_CAPS_MAP = ["butt", "round", "square"]; + + /** + * Maps numeric values for the joints parameter of {{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} to + * corresponding string values. This is primarily for use with the tiny API. The mappings are as follows: 0 to + * "miter", 1 to "round", and 2 to "bevel". + * For example, to set the line joints to "bevel": + * + * myGraphics.ss(16, 0, 2); + * + * @property STROKE_JOINTS_MAP + * @static + * @final + * @readonly + * @type {Array} + **/ + Graphics.STROKE_JOINTS_MAP = ["miter", "round", "bevel"]; + + /** + * @property _ctx + * @static + * @protected + * @type {CanvasRenderingContext2D} + **/ + var canvas = (createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")); + if (canvas.getContext) { + Graphics._ctx = canvas.getContext("2d"); + canvas.width = canvas.height = 1; + } + + +// getter / setters: + /** + * Use the {{#crossLink "Graphics/instructions:property"}}{{/crossLink}} property instead. + * @method getInstructions + * @return {Array} + * @deprecated + **/ + p.getInstructions = function() { + this._updateInstructions(); + return this._instructions; + }; + + /** + * Returns the graphics instructions array. Each entry is a graphics command object (ex. Graphics.Fill, Graphics.Rect) + * Modifying the returned array directly is not recommended, and is likely to result in unexpected behaviour. + * + * This property is mainly intended for introspection of the instructions (ex. for graphics export). + * @property instructions + * @type {Array} + * @readonly + **/ + try { + Object.defineProperties(p, { + instructions: { get: p.getInstructions } + }); + } catch (e) {} + + +// public methods: + /** + * Returns true if this Graphics instance has no drawing commands. + * @method isEmpty + * @return {Boolean} Returns true if this Graphics instance has no drawing commands. + **/ + p.isEmpty = function() { + return !(this._instructions.length || this._activeInstructions.length); + }; + + /** + * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Object} data Optional data that is passed to graphics command exec methods. When called from a Shape instance, the shape passes itself as the data parameter. This can be used by custom graphic commands to insert contextual data. + **/ + p.draw = function(ctx, data) { + this._updateInstructions(); + var instr = this._instructions; + for (var i=this._storeIndex, l=instr.length; iDisplayObject.mask to draw the clipping path, for example. + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method drawAsPath + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + **/ + p.drawAsPath = function(ctx) { + this._updateInstructions(); + var instr, instrs = this._instructions; + for (var i=this._storeIndex, l=instrs.length; i + * whatwg spec. + * @method lineTo + * @param {Number} x The x coordinate the drawing point should draw to. + * @param {Number} y The y coordinate the drawing point should draw to. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.lineTo = function(x, y) { + return this.append(new G.LineTo(x,y)); + }; + + /** + * Draws an arc with the specified control points and radius. For detailed information, read the + * + * whatwg spec. A tiny API method "at" also exists. + * @method arcTo + * @param {Number} x1 + * @param {Number} y1 + * @param {Number} x2 + * @param {Number} y2 + * @param {Number} radius + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.arcTo = function(x1, y1, x2, y2, radius) { + return this.append(new G.ArcTo(x1, y1, x2, y2, radius)); + }; + + /** + * Draws an arc defined by the radius, startAngle and endAngle arguments, centered at the position (x, y). For + * example, to draw a full circle with a radius of 20 centered at (100, 100): + * + * arc(100, 100, 20, 0, Math.PI*2); + * + * For detailed information, read the + * whatwg spec. + * A tiny API method "a" also exists. + * @method arc + * @param {Number} x + * @param {Number} y + * @param {Number} radius + * @param {Number} startAngle Measured in radians. + * @param {Number} endAngle Measured in radians. + * @param {Boolean} anticlockwise + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.arc = function(x, y, radius, startAngle, endAngle, anticlockwise) { + return this.append(new G.Arc(x, y, radius, startAngle, endAngle, anticlockwise)); + }; + + /** + * Draws an elliptical arc defined by the radii rx and ry, startAngle and endAngle arguments, centered at the position (x, y). + * + * A tiny API method "ea" also exists. + * @method ellipticalArc + * @param {Number} x center X + * @param {Number} y center Y + * @param {Number} rx horizontal radius + * @param {Number} ry vertical radius + * @param {Number} startAngle Measured in radians. + * @param {Number} endAngle Measured in radians. + * @param {Boolean} anticlockwise if true, clockwise if false + * @param {String} closure omit for no closure (just an arc), 'radii' (makes a sector), 'chord' (makes a segment) + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.ellipticalArc = function(x, y, rx, ry, startAngle, endAngle, anticlockwise, closure) { + return this.append(new G.EllipticalArc(x, y, rx, ry, startAngle, endAngle, anticlockwise, closure)); + } + + + /** + * Draws a quadratic curve from the current drawing point to (x, y) using the control point (cpx, cpy). For detailed + * information, read the + * whatwg spec. A tiny API method "qt" also exists. + * @method quadraticCurveTo + * @param {Number} cpx + * @param {Number} cpy + * @param {Number} x + * @param {Number} y + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.quadraticCurveTo = function(cpx, cpy, x, y) { + return this.append(new G.QuadraticCurveTo(cpx, cpy, x, y)); + }; + + /** + * Draws a bezier curve from the current drawing point to (x, y) using the control points (cp1x, cp1y) and (cp2x, + * cp2y). For detailed information, read the + * + * whatwg spec. A tiny API method "bt" also exists. + * @method bezierCurveTo + * @param {Number} cp1x + * @param {Number} cp1y + * @param {Number} cp2x + * @param {Number} cp2y + * @param {Number} x + * @param {Number} y + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.bezierCurveTo = function(cp1x, cp1y, cp2x, cp2y, x, y) { + return this.append(new G.BezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y)); + }; + + /** + * Draws a rectangle at (x, y) with the specified width and height using the current fill and/or stroke. + * For detailed information, read the + * + * whatwg spec. A tiny API method "r" also exists. + * @method rect + * @param {Number} x + * @param {Number} y + * @param {Number} w Width of the rectangle + * @param {Number} h Height of the rectangle + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.rect = function(x, y, w, h) { + return this.append(new G.Rect(x, y, w, h)); + }; + + /** + * Closes the current path, effectively drawing a line from the current drawing point to the first drawing point specified + * since the fill or stroke was last set. A tiny API method "cp" also exists. + * @method closePath + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.closePath = function() { + return this._activeInstructions.length ? this.append(new G.ClosePath()) : this; + }; + + +// public methods that roughly map to Flash graphics APIs: + /** + * Clears all drawing instructions, effectively resetting this Graphics instance. Any line and fill styles will need + * to be redefined to draw shapes following a clear call. A tiny API method "c" also exists. + * @method clear + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.clear = function() { + this._instructions.length = this._activeInstructions.length = this._commitIndex = 0; + this._strokeStyle = this._oldStrokeStyle = this._stroke = this._fill = this._strokeDash = this._oldStrokeDash = null; + this._dirty = this._strokeIgnoreScale = false; + return this; + }; + + /** + * Begins a fill with the specified color. This ends the current sub-path. A tiny API method "f" also exists. + * @method beginFill + * @param {String} color A CSS compatible color value (ex. "red", "#FF0000", or "rgba(255,0,0,0.5)"). Setting to + * null will result in no fill. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginFill = function(color) { + return this._setFill(color ? new G.Fill(color) : null); + }; + + /** + * Begins a linear gradient fill defined by the line (x0, y0) to (x1, y1). This ends the current sub-path. For + * example, the following code defines a black to white vertical gradient ranging from 20px to 120px, and draws a + * square to display it: + * + * myGraphics.beginLinearGradientFill(["#000","#FFF"], [0, 1], 0, 20, 0, 120).drawRect(20, 20, 120, 120); + * + * A tiny API method "lf" also exists. + * @method beginLinearGradientFill + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define a gradient + * drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, 0.9] would draw + * the first color to 10% then interpolating to the second color at 90%. + * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. + * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginLinearGradientFill = function(colors, ratios, x0, y0, x1, y1) { + return this._setFill(new G.Fill().linearGradient(colors, ratios, x0, y0, x1, y1)); + }; + + /** + * Begins a radial gradient fill. This ends the current sub-path. For example, the following code defines a red to + * blue radial gradient centered at (100, 100), with a radius of 50, and draws a circle to display it: + * + * myGraphics.beginRadialGradientFill(["#F00","#00F"], [0, 1], 100, 100, 0, 100, 100, 50).drawCircle(100, 100, 50); + * + * A tiny API method "rf" also exists. + * @method beginRadialGradientFill + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define + * a gradient drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, + * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. + * @param {Number} x0 Center position of the inner circle that defines the gradient. + * @param {Number} y0 Center position of the inner circle that defines the gradient. + * @param {Number} r0 Radius of the inner circle that defines the gradient. + * @param {Number} x1 Center position of the outer circle that defines the gradient. + * @param {Number} y1 Center position of the outer circle that defines the gradient. + * @param {Number} r1 Radius of the outer circle that defines the gradient. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginRadialGradientFill = function(colors, ratios, x0, y0, r0, x1, y1, r1) { + return this._setFill(new G.Fill().radialGradient(colors, ratios, x0, y0, r0, x1, y1, r1)); + }; + + /** + * Begins a pattern fill using the specified image. This ends the current sub-path. A tiny API method "bf" also + * exists. + * @method beginBitmapFill + * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use + * as the pattern. Must be loaded prior to creating a bitmap fill, or the fill will be empty. + * @param {String} repetition Optional. Indicates whether to repeat the image in the fill area. One of "repeat", + * "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". Note that Firefox does not support "repeat-x" or + * "repeat-y" (latest tests were in FF 20.0), and will default to "repeat". + * @param {Matrix2D} matrix Optional. Specifies a transformation matrix for the bitmap fill. This transformation + * will be applied relative to the parent transform. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginBitmapFill = function(image, repetition, matrix) { + return this._setFill(new G.Fill(null,matrix).bitmap(image, repetition)); + }; + + /** + * Ends the current sub-path, and begins a new one with no fill. Functionally identical to beginFill(null). + * A tiny API method "ef" also exists. + * @method endFill + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.endFill = function() { + return this.beginFill(); + }; + + /** + * Sets the stroke style. Like all drawing methods, this can be chained, so you can define + * the stroke style and color in a single line of code like so: + * + * myGraphics.setStrokeStyle(8,"round").beginStroke("#F00"); + * + * A tiny API method "ss" also exists. + * @method setStrokeStyle + * @param {Number} thickness The width of the stroke. + * @param {String | Number} [caps=0] Indicates the type of caps to use at the end of lines. One of butt, + * round, or square. Defaults to "butt". Also accepts the values 0 (butt), 1 (round), and 2 (square) for use with + * the tiny API. + * @param {String | Number} [joints=0] Specifies the type of joints that should be used where two lines meet. + * One of bevel, round, or miter. Defaults to "miter". Also accepts the values 0 (miter), 1 (round), and 2 (bevel) + * for use with the tiny API. + * @param {Number} [miterLimit=10] If joints is set to "miter", then you can specify a miter limit ratio which + * controls at what point a mitered joint will be clipped. + * @param {Boolean} [ignoreScale=false] If true, the stroke will be drawn at the specified thickness regardless + * of active transformations. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.setStrokeStyle = function(thickness, caps, joints, miterLimit, ignoreScale) { + this._updateInstructions(true); + this._strokeStyle = this.command = new G.StrokeStyle(thickness, caps, joints, miterLimit, ignoreScale); + + // ignoreScale lives on Stroke, not StrokeStyle, so we do a little trickery: + if (this._stroke) { this._stroke.ignoreScale = ignoreScale; } + this._strokeIgnoreScale = ignoreScale; + return this; + }; + + /** + * Sets or clears the stroke dash pattern. + * + * myGraphics.setStrokeDash([20, 10], 0); + * + * A tiny API method `sd` also exists. + * @method setStrokeDash + * @param {Array} [segments] An array specifying the dash pattern, alternating between line and gap. + * For example, `[20,10]` would create a pattern of 20 pixel lines with 10 pixel gaps between them. + * Passing null or an empty array will clear the existing stroke dash. + * @param {Number} [offset=0] The offset of the dash pattern. For example, you could increment this value to create a "marching ants" effect. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.setStrokeDash = function(segments, offset) { + this._updateInstructions(true); + this._strokeDash = this.command = new G.StrokeDash(segments, offset); + return this; + }; + + /** + * Begins a stroke with the specified color. This ends the current sub-path. A tiny API method "s" also exists. + * @method beginStroke + * @param {String} color A CSS compatible color value (ex. "#FF0000", "red", or "rgba(255,0,0,0.5)"). Setting to + * null will result in no stroke. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginStroke = function(color) { + return this._setStroke(color ? new G.Stroke(color) : null); + }; + + /** + * Begins a linear gradient stroke defined by the line (x0, y0) to (x1, y1). This ends the current sub-path. For + * example, the following code defines a black to white vertical gradient ranging from 20px to 120px, and draws a + * square to display it: + * + * myGraphics.setStrokeStyle(10). + * beginLinearGradientStroke(["#000","#FFF"], [0, 1], 0, 20, 0, 120).drawRect(20, 20, 120, 120); + * + * A tiny API method "ls" also exists. + * @method beginLinearGradientStroke + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define + * a gradient drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, + * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. + * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. + * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginLinearGradientStroke = function(colors, ratios, x0, y0, x1, y1) { + return this._setStroke(new G.Stroke().linearGradient(colors, ratios, x0, y0, x1, y1)); + }; + + /** + * Begins a radial gradient stroke. This ends the current sub-path. For example, the following code defines a red to + * blue radial gradient centered at (100, 100), with a radius of 50, and draws a rectangle to display it: + * + * myGraphics.setStrokeStyle(10) + * .beginRadialGradientStroke(["#F00","#00F"], [0, 1], 100, 100, 0, 100, 100, 50) + * .drawRect(50, 90, 150, 110); + * + * A tiny API method "rs" also exists. + * @method beginRadialGradientStroke + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define + * a gradient drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, + * 0.9] would draw the first color to 10% then interpolating to the second color at 90%, then draw the second color + * to 100%. + * @param {Number} x0 Center position of the inner circle that defines the gradient. + * @param {Number} y0 Center position of the inner circle that defines the gradient. + * @param {Number} r0 Radius of the inner circle that defines the gradient. + * @param {Number} x1 Center position of the outer circle that defines the gradient. + * @param {Number} y1 Center position of the outer circle that defines the gradient. + * @param {Number} r1 Radius of the outer circle that defines the gradient. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginRadialGradientStroke = function(colors, ratios, x0, y0, r0, x1, y1, r1) { + return this._setStroke(new G.Stroke().radialGradient(colors, ratios, x0, y0, r0, x1, y1, r1)); + }; + + /** + * Begins a pattern fill using the specified image. This ends the current sub-path. Note that unlike bitmap fills, + * strokes do not currently support a matrix parameter due to limitations in the canvas API. A tiny API method "bs" + * also exists. + * @method beginBitmapStroke + * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use + * as the pattern. Must be loaded prior to creating a bitmap fill, or the fill will be empty. + * @param {String} [repetition=repeat] Optional. Indicates whether to repeat the image in the fill area. One of + * "repeat", "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.beginBitmapStroke = function(image, repetition) { + // NOTE: matrix is not supported for stroke because transforms on strokes also affect the drawn stroke width. + return this._setStroke(new G.Stroke().bitmap(image, repetition)); + }; + + /** + * Ends the current sub-path, and begins a new one with no stroke. Functionally identical to beginStroke(null). + * A tiny API method "es" also exists. + * @method endStroke + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.endStroke = function() { + return this.beginStroke(); + }; + + /** + * Maps the familiar ActionScript curveTo() method to the functionally similar {{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} + * method. + * @method quadraticCurveTo + * @param {Number} cpx + * @param {Number} cpy + * @param {Number} x + * @param {Number} y + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.curveTo = p.quadraticCurveTo; + + /** + * + * Maps the familiar ActionScript drawRect() method to the functionally similar {{#crossLink "Graphics/rect"}}{{/crossLink}} + * method. + * @method drawRect + * @param {Number} x + * @param {Number} y + * @param {Number} w Width of the rectangle + * @param {Number} h Height of the rectangle + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.drawRect = p.rect; + + /** + * Draws a rounded rectangle with all corners with the specified radius. + * @method drawRoundRect + * @param {Number} x + * @param {Number} y + * @param {Number} w + * @param {Number} h + * @param {Number} radius Corner radius. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.drawRoundRect = function(x, y, w, h, radius) { + return this.drawRoundRectComplex(x, y, w, h, radius, radius, radius, radius); + }; + + /** + * Draws a rounded rectangle with different corner radii. Supports positive and negative corner radii. A tiny API + * method "rc" also exists. + * @method drawRoundRectComplex + * @param {Number} x The horizontal coordinate to draw the round rect. + * @param {Number} y The vertical coordinate to draw the round rect. + * @param {Number} w The width of the round rect. + * @param {Number} h The height of the round rect. + * @param {Number} radiusTL Top left corner radius. + * @param {Number} radiusTR Top right corner radius. + * @param {Number} radiusBR Bottom right corner radius. + * @param {Number} radiusBL Bottom left corner radius. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.drawRoundRectComplex = function(x, y, w, h, radiusTL, radiusTR, radiusBR, radiusBL) { + return this.append(new G.RoundRect(x, y, w, h, radiusTL, radiusTR, radiusBR, radiusBL)); + }; + + /** + * Draws a circle with the specified radius at (x, y). + * + * var g = new createjs.Graphics(); + * g.setStrokeStyle(1); + * g.beginStroke(createjs.Graphics.getRGB(0,0,0)); + * g.beginFill(createjs.Graphics.getRGB(255,0,0)); + * g.drawCircle(0,0,3); + * + * var s = new createjs.Shape(g); + * s.x = 100; + * s.y = 100; + * + * stage.addChild(s); + * stage.update(); + * + * A tiny API method "dc" also exists. + * @method drawCircle + * @param {Number} x x coordinate center point of circle. + * @param {Number} y y coordinate center point of circle. + * @param {Number} radius Radius of circle. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.drawCircle = function(x, y, radius) { + return this.append(new G.Circle(x, y, radius)); + }; + + /** + * Draws an ellipse (oval) with a specified width (w) and height (h). Similar to {{#crossLink "Graphics/drawCircle"}}{{/crossLink}}, + * except the width and height can be different. A tiny API method "de" also exists. + * @method drawEllipse + * @param {Number} x The left coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} + * which draws from center. + * @param {Number} y The top coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} + * which draws from the center. + * @param {Number} w The height (horizontal diameter) of the ellipse. The horizontal radius will be half of this + * number. + * @param {Number} h The width (vertical diameter) of the ellipse. The vertical radius will be half of this number. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.drawEllipse = function(x, y, w, h) { + return this.append(new G.Ellipse(x, y, w, h)); + }; + + /** + * Draws a star if pointSize is greater than 0, or a regular polygon if pointSize is 0 with the specified number of + * points. For example, the following code will draw a familiar 5 pointed star shape centered at 100, 100 and with a + * radius of 50: + * + * myGraphics.beginFill("#FF0").drawPolyStar(100, 100, 50, 5, 0.6, -90); + * // Note: -90 makes the first point vertical + * + * A tiny API method "dp" also exists. + * + * @method drawPolyStar + * @param {Number} x Position of the center of the shape. + * @param {Number} y Position of the center of the shape. + * @param {Number} radius The outer radius of the shape. + * @param {Number} sides The number of points on the star or sides on the polygon. + * @param {Number} pointSize The depth or "pointy-ness" of the star points. A pointSize of 0 will draw a regular + * polygon (no points), a pointSize of 1 will draw nothing because the points are infinitely pointy. + * @param {Number} angle The angle of the first point / corner. For example a value of 0 will draw the first point + * directly to the right of the center. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.drawPolyStar = function(x, y, radius, sides, pointSize, angle) { + return this.append(new G.PolyStar(x, y, radius, sides, pointSize, angle)); + }; + + // TODO: deprecated. + /** + * Removed in favour of using custom command objects with {{#crossLink "Graphics/append"}}{{/crossLink}}. + * @method inject + * @deprecated + **/ + + /** + * Appends a graphics command object to the graphics queue. Command objects expose an "exec" method + * that accepts two parameters: the Context2D to operate on, and an arbitrary data object passed into + * {{#crossLink "Graphics/draw"}}{{/crossLink}}. The latter will usually be the Shape instance that called draw. + * + * This method is used internally by Graphics methods, such as drawCircle, but can also be used directly to insert + * built-in or custom graphics commands. For example: + * + * // attach data to our shape, so we can access it during the draw: + * myShape.color = "red"; + * + * // append a Circle command object: + * myShape.graphics.append(new createjs.Graphics.Circle(50, 50, 30)); + * + * // append a custom command object with an exec method that sets the fill style + * // based on the shape's data, and then fills the circle. + * myShape.graphics.append({exec:function(ctx, shape) { + * ctx.fillStyle = shape.color; + * ctx.fill(); + * }}); + * + * @method append + * @param {Object} command A graphics command object exposing an "exec" method. + * @param {boolean} clean The clean param is primarily for internal use. A value of true indicates that a command does not generate a path that should be stroked or filled. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.append = function(command, clean) { + this._activeInstructions.push(command); + this.command = command; + if (!clean) { this._dirty = true; } + return this; + }; + + /** + * Decodes a compact encoded path string into a series of draw instructions. + * This format is not intended to be human readable, and is meant for use by authoring tools. + * The format uses a base64 character set, with each character representing 6 bits, to define a series of draw + * commands. + * + * Each command is comprised of a single "header" character followed by a variable number of alternating x and y + * position values. Reading the header bits from left to right (most to least significant): bits 1 to 3 specify the + * type of operation (0-moveTo, 1-lineTo, 2-quadraticCurveTo, 3-bezierCurveTo, 4-closePath, 5-7 unused). Bit 4 + * indicates whether position values use 12 bits (2 characters) or 18 bits (3 characters), with a one indicating the + * latter. Bits 5 and 6 are currently unused. + * + * Following the header is a series of 0 (closePath), 2 (moveTo, lineTo), 4 (quadraticCurveTo), or 6 (bezierCurveTo) + * parameters. These parameters are alternating x/y positions represented by 2 or 3 characters (as indicated by the + * 4th bit in the command char). These characters consist of a 1 bit sign (1 is negative, 0 is positive), followed + * by an 11 (2 char) or 17 (3 char) bit integer value. All position values are in tenths of a pixel. Except in the + * case of move operations which are absolute, this value is a delta from the previous x or y position (as + * appropriate). + * + * For example, the string "A3cAAMAu4AAA" represents a line starting at -150,0 and ending at 150,0. + *
    A - bits 000000. First 3 bits (000) indicate a moveTo operation. 4th bit (0) indicates 2 chars per + * parameter. + *
    n0 - 110111011100. Absolute x position of -150.0px. First bit indicates a negative value, remaining bits + * indicate 1500 tenths of a pixel. + *
    AA - 000000000000. Absolute y position of 0. + *
    I - 001100. First 3 bits (001) indicate a lineTo operation. 4th bit (1) indicates 3 chars per parameter. + *
    Au4 - 000000101110111000. An x delta of 300.0px, which is added to the previous x value of -150.0px to + * provide an absolute position of +150.0px. + *
    AAA - 000000000000000000. A y delta value of 0. + * + * A tiny API method "p" also exists. + * @method decodePath + * @param {String} str The path string to decode. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.decodePath = function(str) { + var instructions = [this.moveTo, this.lineTo, this.quadraticCurveTo, this.bezierCurveTo, this.closePath]; + var paramCount = [2, 2, 4, 6, 0]; + var i=0, l=str.length; + var params = []; + var x=0, y=0; + var base64 = Graphics.BASE_64; + + while (i>3; // highest order bits 1-3 code for operation. + var f = instructions[fi]; + // check that we have a valid instruction & that the unused bits are empty: + if (!f || (n&3)) { throw("bad path data (@"+i+"): "+c); } + var pl = paramCount[fi]; + if (!fi) { x=y=0; } // move operations reset the position. + params.length = 0; + i++; + var charCount = (n>>2&1)+2; // 4th header bit indicates number size for this operation. + for (var p=0; p>5) ? -1 : 1; + num = ((num&31)<<6)|(base64[str.charAt(i+1)]); + if (charCount == 3) { num = (num<<6)|(base64[str.charAt(i+2)]); } + num = sign*num/10; + if (p%2) { x = (num += x); } + else { y = (num += y); } + params[p] = num; + i += charCount; + } + f.apply(this,params); + } + return this; + }; + + /** + * Stores all graphics commands so they won't be executed in future draws. Calling store() a second time adds to + * the existing store. This also affects `drawAsPath()`. + * + * This is useful in cases where you are creating vector graphics in an iterative manner (ex. generative art), so + * that only new graphics need to be drawn (which can provide huge performance benefits), but you wish to retain all + * of the vector instructions for later use (ex. scaling, modifying, or exporting). + * + * Note that calling store() will force the active path (if any) to be ended in a manner similar to changing + * the fill or stroke. + * + * For example, consider a application where the user draws lines with the mouse. As each line segment (or collection of + * segments) are added to a Shape, it can be rasterized using {{#crossLink "DisplayObject/updateCache"}}{{/crossLink}}, + * and then stored, so that it can be redrawn at a different scale when the application is resized, or exported to SVG. + * + * // set up cache: + * myShape.cache(0,0,500,500,scale); + * + * // when the user drags, draw a new line: + * myShape.graphics.moveTo(oldX,oldY).lineTo(newX,newY); + * // then draw it into the existing cache: + * myShape.updateCache("source-over"); + * // store the new line, so it isn't redrawn next time: + * myShape.store(); + * + * // then, when the window resizes, we can re-render at a different scale: + * // first, unstore all our lines: + * myShape.unstore(); + * // then cache using the new scale: + * myShape.cache(0,0,500,500,newScale); + * // finally, store the existing commands again: + * myShape.store(); + * + * @method store + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.store = function() { + this._updateInstructions(true); + this._storeIndex = this._instructions.length; + return this; + }; + + /** + * Unstores any graphics commands that were previously stored using {{#crossLink "Graphics/store"}}{{/crossLink}} + * so that they will be executed in subsequent draw calls. + * + * @method unstore + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.unstore = function() { + this._storeIndex = 0; + return this; + }; + + /** + * Returns a clone of this Graphics instance. Note that the individual command objects are not cloned. + * @method clone + * @return {Graphics} A clone of the current Graphics instance. + **/ + p.clone = function() { + var o = new Graphics(); + o.command = this.command; + o._stroke = this._stroke; + o._strokeStyle = this._strokeStyle; + o._strokeDash = this._strokeDash; + o._strokeIgnoreScale = this._strokeIgnoreScale; + o._fill = this._fill; + o._instructions = this._instructions.slice(); + o._commitIndex = this._commitIndex; + o._activeInstructions = this._activeInstructions.slice(); + o._dirty = this._dirty; + o._storeIndex = this._storeIndex; + return o; + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Graphics]"; + }; + + +// tiny API: + /** + * Shortcut to moveTo. + * @method mt + * @param {Number} x The x coordinate the drawing point should move to. + * @param {Number} y The y coordinate the drawing point should move to. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls). + * @chainable + * @protected + **/ + p.mt = p.moveTo; + + /** + * Shortcut to lineTo. + * @method lt + * @param {Number} x The x coordinate the drawing point should draw to. + * @param {Number} y The y coordinate the drawing point should draw to. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.lt = p.lineTo; + + /** + * Shortcut to arcTo. + * @method at + * @param {Number} x1 + * @param {Number} y1 + * @param {Number} x2 + * @param {Number} y2 + * @param {Number} radius + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.at = p.arcTo; + + /** + * Shortcut to bezierCurveTo. + * @method bt + * @param {Number} cp1x + * @param {Number} cp1y + * @param {Number} cp2x + * @param {Number} cp2y + * @param {Number} x + * @param {Number} y + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.bt = p.bezierCurveTo; + + /** + * Shortcut to quadraticCurveTo / curveTo. + * @method qt + * @param {Number} cpx + * @param {Number} cpy + * @param {Number} x + * @param {Number} y + * @protected + * @chainable + **/ + p.qt = p.quadraticCurveTo; + + /** + * Shortcut to arc. + * @method a + * @param {Number} x + * @param {Number} y + * @param {Number} radius + * @param {Number} startAngle Measured in radians. + * @param {Number} endAngle Measured in radians. + * @param {Boolean} anticlockwise + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @protected + * @chainable + **/ + p.a = p.arc; + + /** + * Shortcut to ellipticalArc. + * @method ea + * @param {Number} x + * @param {Number} y + * @param {Number} rx + * @param {Number} ry + * @param {Number} startAngle Measured in radians. + * @param {Number} endAngle Measured in radians. + * @param {Boolean} anticlockwise + * @param {String} closure omit for no closure (just an arc), 'radii' (makes a sector), 'chord' (makes a segment) + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @protected + * @chainable + **/ + p.ea = p.ellipticalArc; + + /** + * Shortcut to rect. + * @method r + * @param {Number} x + * @param {Number} y + * @param {Number} w Width of the rectangle + * @param {Number} h Height of the rectangle + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.r = p.rect; + + /** + * Shortcut to closePath. + * @method cp + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.cp = p.closePath; + + /** + * Shortcut to clear. + * @method c + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.c = p.clear; + + /** + * Shortcut to beginFill. + * @method f + * @param {String} color A CSS compatible color value (ex. "red", "#FF0000", or "rgba(255,0,0,0.5)"). Setting to + * null will result in no fill. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.f = p.beginFill; + + /** + * Shortcut to beginLinearGradientFill. + * @method lf + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define a gradient + * drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, 0.9] would draw + * the first color to 10% then interpolating to the second color at 90%. + * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. + * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.lf = p.beginLinearGradientFill; + + /** + * Shortcut to beginRadialGradientFill. + * @method rf + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define + * a gradient drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, + * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. + * @param {Number} x0 Center position of the inner circle that defines the gradient. + * @param {Number} y0 Center position of the inner circle that defines the gradient. + * @param {Number} r0 Radius of the inner circle that defines the gradient. + * @param {Number} x1 Center position of the outer circle that defines the gradient. + * @param {Number} y1 Center position of the outer circle that defines the gradient. + * @param {Number} r1 Radius of the outer circle that defines the gradient. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.rf = p.beginRadialGradientFill; + + /** + * Shortcut to beginBitmapFill. + * @method bf + * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use + * as the pattern. + * @param {String} repetition Optional. Indicates whether to repeat the image in the fill area. One of "repeat", + * "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". Note that Firefox does not support "repeat-x" or + * "repeat-y" (latest tests were in FF 20.0), and will default to "repeat". + * @param {Matrix2D} matrix Optional. Specifies a transformation matrix for the bitmap fill. This transformation + * will be applied relative to the parent transform. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.bf = p.beginBitmapFill; + + /** + * Shortcut to endFill. + * @method ef + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.ef = p.endFill; + + /** + * Shortcut to setStrokeStyle. + * @method ss + * @param {Number} thickness The width of the stroke. + * @param {String | Number} [caps=0] Indicates the type of caps to use at the end of lines. One of butt, + * round, or square. Defaults to "butt". Also accepts the values 0 (butt), 1 (round), and 2 (square) for use with + * the tiny API. + * @param {String | Number} [joints=0] Specifies the type of joints that should be used where two lines meet. + * One of bevel, round, or miter. Defaults to "miter". Also accepts the values 0 (miter), 1 (round), and 2 (bevel) + * for use with the tiny API. + * @param {Number} [miterLimit=10] If joints is set to "miter", then you can specify a miter limit ratio which + * controls at what point a mitered joint will be clipped. + * @param {Boolean} [ignoreScale=false] If true, the stroke will be drawn at the specified thickness regardless + * of active transformations. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.ss = p.setStrokeStyle; + + /** + * Shortcut to setStrokeDash. + * @method sd + * @param {Array} [segments] An array specifying the dash pattern, alternating between line and gap. + * For example, [20,10] would create a pattern of 20 pixel lines with 10 pixel gaps between them. + * Passing null or an empty array will clear any existing dash. + * @param {Number} [offset=0] The offset of the dash pattern. For example, you could increment this value to create a "marching ants" effect. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.sd = p.setStrokeDash; + + /** + * Shortcut to beginStroke. + * @method s + * @param {String} color A CSS compatible color value (ex. "#FF0000", "red", or "rgba(255,0,0,0.5)"). Setting to + * null will result in no stroke. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.s = p.beginStroke; + + /** + * Shortcut to beginLinearGradientStroke. + * @method ls + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define + * a gradient drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, + * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. + * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. + * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. + * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.ls = p.beginLinearGradientStroke; + + /** + * Shortcut to beginRadialGradientStroke. + * @method rs + * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define + * a gradient drawing from red to blue. + * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, + * 0.9] would draw the first color to 10% then interpolating to the second color at 90%, then draw the second color + * to 100%. + * @param {Number} x0 Center position of the inner circle that defines the gradient. + * @param {Number} y0 Center position of the inner circle that defines the gradient. + * @param {Number} r0 Radius of the inner circle that defines the gradient. + * @param {Number} x1 Center position of the outer circle that defines the gradient. + * @param {Number} y1 Center position of the outer circle that defines the gradient. + * @param {Number} r1 Radius of the outer circle that defines the gradient. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.rs = p.beginRadialGradientStroke; + + /** + * Shortcut to beginBitmapStroke. + * @method bs + * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use + * as the pattern. + * @param {String} [repetition=repeat] Optional. Indicates whether to repeat the image in the fill area. One of + * "repeat", "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.bs = p.beginBitmapStroke; + + /** + * Shortcut to endStroke. + * @method es + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.es = p.endStroke; + + /** + * Shortcut to drawRect. + * @method dr + * @param {Number} x + * @param {Number} y + * @param {Number} w Width of the rectangle + * @param {Number} h Height of the rectangle + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.dr = p.drawRect; + + /** + * Shortcut to drawRoundRect. + * @method rr + * @param {Number} x + * @param {Number} y + * @param {Number} w + * @param {Number} h + * @param {Number} radius Corner radius. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.rr = p.drawRoundRect; + + /** + * Shortcut to drawRoundRectComplex. + * @method rc + * @param {Number} x The horizontal coordinate to draw the round rect. + * @param {Number} y The vertical coordinate to draw the round rect. + * @param {Number} w The width of the round rect. + * @param {Number} h The height of the round rect. + * @param {Number} radiusTL Top left corner radius. + * @param {Number} radiusTR Top right corner radius. + * @param {Number} radiusBR Bottom right corner radius. + * @param {Number} radiusBL Bottom left corner radius. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.rc = p.drawRoundRectComplex; + + /** + * Shortcut to drawCircle. + * @method dc + * @param {Number} x x coordinate center point of circle. + * @param {Number} y y coordinate center point of circle. + * @param {Number} radius Radius of circle. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.dc = p.drawCircle; + + /** + * Shortcut to drawEllipse. + * @method de + * @param {Number} x The left coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} + * which draws from center. + * @param {Number} y The top coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} + * which draws from the center. + * @param {Number} w The height (horizontal diameter) of the ellipse. The horizontal radius will be half of this + * number. + * @param {Number} h The width (vertical diameter) of the ellipse. The vertical radius will be half of this number. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.de = p.drawEllipse; + + /** + * Shortcut to drawPolyStar. + * @method dp + * @param {Number} x Position of the center of the shape. + * @param {Number} y Position of the center of the shape. + * @param {Number} radius The outer radius of the shape. + * @param {Number} sides The number of points on the star or sides on the polygon. + * @param {Number} pointSize The depth or "pointy-ness" of the star points. A pointSize of 0 will draw a regular + * polygon (no points), a pointSize of 1 will draw nothing because the points are infinitely pointy. + * @param {Number} angle The angle of the first point / corner. For example a value of 0 will draw the first point + * directly to the right of the center. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.dp = p.drawPolyStar; + + /** + * Shortcut to decodePath. + * @method p + * @param {String} str The path string to decode. + * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) + * @chainable + * @protected + **/ + p.p = p.decodePath; + + +// private methods: + /** + * @method _updateInstructions + * @param commit + * @protected + **/ + p._updateInstructions = function(commit) { + var instr = this._instructions, active = this._activeInstructions, commitIndex = this._commitIndex; + + if (this._dirty && active.length) { + instr.length = commitIndex; // remove old, uncommitted commands + instr.push(Graphics.beginCmd); + + var l = active.length, ll = instr.length; + instr.length = ll+l; + for (var i=0; i 0 && sina > 0) { + retval = Math.atan(tana); + } + else if (cosa < 0 && sina > 0) { + retval = Math.PI + Math.atan(tana); + } + else if (cosa < 0 && sina < 0) { + retval = Math.PI + Math.atan(tana); + } + else if (cosa > 0 && sina < 0) { + retval = 2 * Math.PI + Math.atan(tana); + } + + return retval; + } + + // This is just a copy of mathjs.equal, or rather mathjs.nearlyEqual + // For some reason can't use mathjs here + // But, perhaps this is better as it is self-contained and won't introduce a dependency in EaselJS on mathjs + // and also, the mathjs version is too stingy on its epsilon + function equalEnough(x, y) { + var relEpsilon = 0.001; + var absEpsilon = 2.2204460492503130808472633361816E-16; + + if (x === y) { + return true; + } + + // NaN + if (isNaN(x) || isNaN(y)) { + return false; + } + + // at this point x and y should be finite + if (isFinite(x) && isFinite(y)) { + // check numbers are very close, needed when comparing numbers near zero + var diff = Math.abs(x - y); + if (diff < absEpsilon) { + return true; + } + else { + // use relative error + return diff <= Math.max(Math.abs(x), Math.abs(y)) * relEpsilon; + } + } + + // Infinite and Number or negative Infinite and positive Infinite cases + return false; + } + + /** + * End support functions for elliptical arc + **/ + + /** + * Graphics command object. See {{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class QuadraticCurveTo + * @constructor + * @param {Number} cpx + * @param {Number} cpy + * @param {Number} x + * @param {Number} y + **/ + /** + * @property cpx + * @type Number + */ + /** + * @property cpy + * @type Number + */ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.QuadraticCurveTo = function(cpx, cpy, x, y) { + this.cpx = cpx; this.cpy = cpy; + this.x = x; this.y = y; + }).prototype.exec = function(ctx) { ctx.quadraticCurveTo(this.cpx, this.cpy, this.x, this.y); }; + + /** + * Graphics command object. See {{#crossLink "Graphics/bezierCurveTo"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class BezierCurveTo + * @constructor + * @param {Number} cp1x + * @param {Number} cp1y + * @param {Number} cp2x + * @param {Number} cp2y + * @param {Number} x + * @param {Number} y + **/ + /** + * @property cp1x + * @type Number + */ + /** + * @property cp1y + * @type Number + */ + /** + * @property cp2x + * @type Number + */ + /** + * @property cp2y + * @type Number + */ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.BezierCurveTo = function(cp1x, cp1y, cp2x, cp2y, x, y) { + this.cp1x = cp1x; this.cp1y = cp1y; + this.cp2x = cp2x; this.cp2y = cp2y; + this.x = x; this.y = y; + }).prototype.exec = function(ctx) { ctx.bezierCurveTo(this.cp1x, this.cp1y, this.cp2x, this.cp2y, this.x, this.y); }; + + /** + * Graphics command object. See {{#crossLink "Graphics/rect"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class Rect + * @constructor + * @param {Number} x + * @param {Number} y + * @param {Number} w + * @param {Number} h + **/ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * @property w + * @type Number + */ + /** + * @property h + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.Rect = function(x, y, w, h) { + this.x = x; this.y = y; + this.w = w; this.h = h; + }).prototype.exec = function(ctx) { ctx.rect(this.x, this.y, this.w, this.h); }; + + /** + * Graphics command object. See {{#crossLink "Graphics/closePath"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class ClosePath + * @constructor + **/ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.ClosePath = function() { + }).prototype.exec = function(ctx) { ctx.closePath(); }; + + /** + * Graphics command object to begin a new path. See {{#crossLink "Graphics"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class BeginPath + * @constructor + **/ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.BeginPath = function() { + }).prototype.exec = function(ctx) { ctx.beginPath(); }; + + /** + * Graphics command object. See {{#crossLink "Graphics/beginFill"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class Fill + * @constructor + * @param {Object} style A valid Context2D fillStyle. + * @param {Matrix2D} matrix + **/ + /** + * A valid Context2D fillStyle. + * @property style + * @type Object + */ + /** + * @property matrix + * @type Matrix2D + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + p = (G.Fill = function(style, matrix) { + this.style = style; + this.matrix = matrix; + }).prototype; + p.exec = function(ctx) { + if (!this.style) { return; } + ctx.fillStyle = this.style; + var mtx = this.matrix; + if (mtx) { ctx.save(); ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx, mtx.ty); } + ctx.fill(); + if (mtx) { ctx.restore(); } + }; + /** + * Creates a linear gradient style and assigns it to {{#crossLink "Fill/style:property"}}{{/crossLink}}. + * See {{#crossLink "Graphics/beginLinearGradientFill"}}{{/crossLink}} for more information. + * @method linearGradient + * @param {Array} colors + * + * @param {Array} ratios + * @param {Number} x0 + * @param {Number} y0 + * @param {Number} x1 + * @param {Number} y1 + * @return {Fill} Returns this Fill object for chaining or assignment. + */ + p.linearGradient = function(colors, ratios, x0, y0, x1, y1) { + var o = this.style = Graphics._ctx.createLinearGradient(x0, y0, x1, y1); + for (var i=0, l=colors.length; i= 2) { + var o = this.style = Graphics._ctx.createPattern(image, repetition || ""); + o.props = {image: image, repetition: repetition, type: "bitmap"}; + } + return this; + }; + p.path = false; + + /** + * Graphics command object. See {{#crossLink "Graphics/beginStroke"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class Stroke + * @constructor + * @param {Object} style A valid Context2D fillStyle. + * @param {Boolean} ignoreScale + **/ + /** + * A valid Context2D strokeStyle. + * @property style + * @type Object + */ + /** + * @property ignoreScale + * @type Boolean + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + p = (G.Stroke = function(style, ignoreScale) { + this.style = style; + this.ignoreScale = ignoreScale; + }).prototype; + p.exec = function(ctx) { + if (!this.style) { return; } + ctx.strokeStyle = this.style; + if (this.ignoreScale) { ctx.save(); ctx.setTransform(1,0,0,1,0,0); } + ctx.stroke(); + if (this.ignoreScale) { ctx.restore(); } + }; + /** + * Creates a linear gradient style and assigns it to {{#crossLink "Stroke/style:property"}}{{/crossLink}}. + * See {{#crossLink "Graphics/beginLinearGradientStroke"}}{{/crossLink}} for more information. + * @method linearGradient + * @param {Array} colors + * @param {Array} ratios + * @param {Number} x0 + * @param {Number} y0 + * @param {Number} x1 + * @param {Number} y1 + * @return {Fill} Returns this Stroke object for chaining or assignment. + */ + p.linearGradient = G.Fill.prototype.linearGradient; + /** + * Creates a radial gradient style and assigns it to {{#crossLink "Stroke/style:property"}}{{/crossLink}}. + * See {{#crossLink "Graphics/beginRadialGradientStroke"}}{{/crossLink}} for more information. + * @method radialGradient + * @param {Array} colors + * @param {Array} ratios + * @param {Number} x0 + * @param {Number} y0 + * @param {Number} r0 + * @param {Number} x1 + * @param {Number} y1 + * @param {Number} r1 + * @return {Fill} Returns this Stroke object for chaining or assignment. + */ + p.radialGradient = G.Fill.prototype.radialGradient; + /** + * Creates a bitmap fill style and assigns it to {{#crossLink "Stroke/style:property"}}{{/crossLink}}. + * See {{#crossLink "Graphics/beginBitmapStroke"}}{{/crossLink}} for more information. + * @method bitmap + * @param {HTMLImageElement} image + * @param {String} [repetition] One of: repeat, repeat-x, repeat-y, or no-repeat. + * @return {Fill} Returns this Stroke object for chaining or assignment. + */ + p.bitmap = G.Fill.prototype.bitmap; + p.path = false; + + /** + * Graphics command object. See {{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class StrokeStyle + * @constructor + * @param {Number} width + * @param {String} [caps=butt] + * @param {String} [joints=miter] + * @param {Number} [miterLimit=10] + * @param {Boolean} [ignoreScale=false] + **/ + /** + * @property width + * @type Number + */ + /** + * One of: butt, round, square + * @property caps + * @type String + */ + /** + * One of: round, bevel, miter + * @property joints + * @type String + */ + /** + * @property miterLimit + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + p = (G.StrokeStyle = function(width, caps, joints, miterLimit, ignoreScale) { + this.width = width; + this.caps = caps; + this.joints = joints; + this.miterLimit = miterLimit; + this.ignoreScale = ignoreScale; + }).prototype; + p.exec = function(ctx) { + ctx.lineWidth = (this.width == null ? "1" : this.width); + ctx.lineCap = (this.caps == null ? "butt" : (isNaN(this.caps) ? this.caps : Graphics.STROKE_CAPS_MAP[this.caps])); + ctx.lineJoin = (this.joints == null ? "miter" : (isNaN(this.joints) ? this.joints : Graphics.STROKE_JOINTS_MAP[this.joints])); + ctx.miterLimit = (this.miterLimit == null ? "10" : this.miterLimit); + ctx.ignoreScale = (this.ignoreScale == null ? false : this.ignoreScale); + }; + p.path = false; + + /** + * Graphics command object. See {{#crossLink "Graphics/setStrokeDash"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class StrokeDash + * @constructor + * @param {Array} [segments] + * @param {Number} [offset=0] + **/ + /** + * @property segments + * @type Array + */ + /** + * @property offset + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.StrokeDash = function(segments, offset) { + this.segments = segments; + this.offset = offset||0; + }).prototype.exec = function(ctx) { + if (ctx.setLineDash) { // feature detection. + ctx.setLineDash(this.segments|| G.StrokeDash.EMPTY_SEGMENTS); // instead of [] to reduce churn. + ctx.lineDashOffset = this.offset||0; + } + }; + /** + * The default value for segments (ie. no dash). + * @property EMPTY_SEGMENTS + * @static + * @final + * @readonly + * @protected + * @type {Array} + **/ + G.StrokeDash.EMPTY_SEGMENTS = []; + + /** + * Graphics command object. See {{#crossLink "Graphics/drawRoundRectComplex"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class RoundRect + * @constructor + * @param {Number} x + * @param {Number} y + * @param {Number} w + * @param {Number} h + * @param {Number} radiusTL + * @param {Number} radiusTR + * @param {Number} radiusBR + * @param {Number} radiusBL + **/ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * @property w + * @type Number + */ + /** + * @property h + * @type Number + */ + /** + * @property radiusTL + * @type Number + */ + /** + * @property radiusTR + * @type Number + */ + /** + * @property radiusBR + * @type Number + */ + /** + * @property radiusBL + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.RoundRect = function(x, y, w, h, radiusTL, radiusTR, radiusBR, radiusBL) { + this.x = x; this.y = y; + this.w = w; this.h = h; + this.radiusTL = radiusTL; this.radiusTR = radiusTR; + this.radiusBR = radiusBR; this.radiusBL = radiusBL; + }).prototype.exec = function(ctx) { + var max = (w max) { rTL = max; } + if (rTR < 0) { rTR *= (mTR=-1); } + if (rTR > max) { rTR = max; } + if (rBR < 0) { rBR *= (mBR=-1); } + if (rBR > max) { rBR = max; } + if (rBL < 0) { rBL *= (mBL=-1); } + if (rBL > max) { rBL = max; } + + ctx.moveTo(x+w-rTR, y); + ctx.arcTo(x+w+rTR*mTR, y-rTR*mTR, x+w, y+rTR, rTR); + ctx.lineTo(x+w, y+h-rBR); + ctx.arcTo(x+w+rBR*mBR, y+h+rBR*mBR, x+w-rBR, y+h, rBR); + ctx.lineTo(x+rBL, y+h); + ctx.arcTo(x-rBL*mBL, y+h+rBL*mBL, x, y+h-rBL, rBL); + ctx.lineTo(x, y+rTL); + ctx.arcTo(x-rTL*mTL, y-rTL*mTL, x+rTL, y, rTL); + ctx.closePath(); + }; + + /** + * Graphics command object. See {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class Circle + * @constructor + * @param {Number} x + * @param {Number} y + * @param {Number} radius + **/ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * @property radius + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.Circle = function(x, y, radius) { + this.x = x; this.y = y; + this.radius = radius; + }).prototype.exec = function(ctx) { ctx.arc(this.x, this.y, this.radius, 0, Math.PI*2); }; + + /** + * Graphics command object. See {{#crossLink "Graphics/drawEllipse"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class Ellipse + * @constructor + * @param {Number} x + * @param {Number} y + * @param {Number} w + * @param {Number} h + **/ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * @property w + * @type Number + */ + /** + * @property h + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.Ellipse = function(x, y, w, h) { + this.x = x; this.y = y; + this.w = w; this.h = h; + }).prototype.exec = function(ctx) { + var x = this.x, y = this.y; + var w = this.w, h = this.h; + + var k = 0.5522848; + var ox = (w / 2) * k; + var oy = (h / 2) * k; + var xe = x + w; + var ye = y + h; + var xm = x + w / 2; + var ym = y + h / 2; + + ctx.moveTo(x, ym); + ctx.bezierCurveTo(x, ym-oy, xm-ox, y, xm, y); + ctx.bezierCurveTo(xm+ox, y, xe, ym-oy, xe, ym); + ctx.bezierCurveTo(xe, ym+oy, xm+ox, ye, xm, ye); + ctx.bezierCurveTo(xm-ox, ye, x, ym+oy, x, ym); + }; + + /** + * Graphics command object. See {{#crossLink "Graphics/drawPolyStar"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. + * @class PolyStar + * @constructor + * @param {Number} x + * @param {Number} y + * @param {Number} radius + * @param {Number} sides + * @param {Number} pointSize + * @param {Number} angle + **/ + /** + * @property x + * @type Number + */ + /** + * @property y + * @type Number + */ + /** + * @property radius + * @type Number + */ + /** + * @property sides + * @type Number + */ + /** + * @property pointSize + * @type Number + */ + /** + * @property angle + * @type Number + */ + /** + * Execute the Graphics command in the provided Canvas context. + * @method exec + * @param {CanvasRenderingContext2D} ctx The canvas rendering context + */ + (G.PolyStar = function(x, y, radius, sides, pointSize, angle) { + this.x = x; this.y = y; + this.radius = radius; + this.sides = sides; + this.pointSize = pointSize; + this.angle = angle; + }).prototype.exec = function(ctx) { + var x = this.x, y = this.y; + var radius = this.radius; + var angle = (this.angle||0)/180*Math.PI; + var sides = this.sides; + var ps = 1-(this.pointSize||0); + var a = Math.PI/sides; + + ctx.moveTo(x+Math.cos(angle)*radius, y+Math.sin(angle)*radius); + for (var i=0; iTiny API

    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%0DMNzSF{*Y?Y~@~VO=xyu9TgA8;F*hzytyOX*^8dc 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 z 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

    - * The Graphics class also includes a "tiny API", which is one or two-letter methods that are shortcuts for all of the - * Graphics methods. These methods are great for creating compact instructions, and is used by the Toolkit for CreateJS - * to generate readable code. All tiny methods are marked as protected, so you can view them by enabling protected - * descriptions in the docs. - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
    TinyMethodTinyMethod
    mt{{#crossLink "Graphics/moveTo"}}{{/crossLink}} lt {{#crossLink "Graphics/lineTo"}}{{/crossLink}}
    a/at{{#crossLink "Graphics/arc"}}{{/crossLink}} / {{#crossLink "Graphics/arcTo"}}{{/crossLink}} bt{{#crossLink "Graphics/bezierCurveTo"}}{{/crossLink}}
    qt{{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} (also curveTo)r{{#crossLink "Graphics/rect"}}{{/crossLink}}
    cp{{#crossLink "Graphics/closePath"}}{{/crossLink}} c{{#crossLink "Graphics/clear"}}{{/crossLink}}
    f{{#crossLink "Graphics/beginFill"}}{{/crossLink}} lf{{#crossLink "Graphics/beginLinearGradientFill"}}{{/crossLink}}
    rf{{#crossLink "Graphics/beginRadialGradientFill"}}{{/crossLink}} bf{{#crossLink "Graphics/beginBitmapFill"}}{{/crossLink}}
    ef{{#crossLink "Graphics/endFill"}}{{/crossLink}} ss / sd{{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} / {{#crossLink "Graphics/setStrokeDash"}}{{/crossLink}}
    s{{#crossLink "Graphics/beginStroke"}}{{/crossLink}} ls{{#crossLink "Graphics/beginLinearGradientStroke"}}{{/crossLink}}
    rs{{#crossLink "Graphics/beginRadialGradientStroke"}}{{/crossLink}} bs{{#crossLink "Graphics/beginBitmapStroke"}}{{/crossLink}}
    es{{#crossLink "Graphics/endStroke"}}{{/crossLink}} dr{{#crossLink "Graphics/drawRect"}}{{/crossLink}}
    rr{{#crossLink "Graphics/drawRoundRect"}}{{/crossLink}} rc{{#crossLink "Graphics/drawRoundRectComplex"}}{{/crossLink}}
    dc{{#crossLink "Graphics/drawCircle"}}{{/crossLink}} de{{#crossLink "Graphics/drawEllipse"}}{{/crossLink}}
    dp{{#crossLink "Graphics/drawPolyStar"}}{{/crossLink}} p{{#crossLink "Graphics/decodePath"}}{{/crossLink}}
    - * - * Here is the above example, using the tiny API instead. - * - * myGraphics.s("red").f("blue").r(20, 20, 100, 50); - * - * @class Graphics - * @constructor - **/ - function Graphics() { - - - // public properties - /** - * Holds a reference to the last command that was created or appended. For example, you could retain a reference - * to a Fill command in order to dynamically update the color later by using: - * myFill = myGraphics.beginFill("red").command; - * // update color later: - * myFill.style = "yellow"; - * @property command - * @type Object - **/ - this.command = null; - - - // private properties - /** - * @property _stroke - * @protected - * @type {Stroke} - **/ - this._stroke = null; - - /** - * @property _strokeStyle - * @protected - * @type {StrokeStyle} - **/ - this._strokeStyle = null; - - /** - * @property _oldStrokeStyle - * @protected - * @type {StrokeStyle} - **/ - this._oldStrokeStyle = null; - - /** - * @property _strokeDash - * @protected - * @type {StrokeDash} - **/ - this._strokeDash = null; - - /** - * @property _oldStrokeDash - * @protected - * @type {StrokeDash} - **/ - this._oldStrokeDash = null; - - /** - * @property _strokeIgnoreScale - * @protected - * @type Boolean - **/ - this._strokeIgnoreScale = false; - - /** - * @property _fill - * @protected - * @type {Fill} - **/ - this._fill = null; - - /** - * @property _instructions - * @protected - * @type {Array} - **/ - this._instructions = []; - - /** - * Indicates the last instruction index that was committed. - * @property _commitIndex - * @protected - * @type {Number} - **/ - this._commitIndex = 0; - - /** - * Uncommitted instructions. - * @property _activeInstructions - * @protected - * @type {Array} - **/ - this._activeInstructions = []; - - /** - * This indicates that there have been changes to the activeInstruction list since the last updateInstructions call. - * @property _dirty - * @protected - * @type {Boolean} - * @default false - **/ - this._dirty = false; - - /** - * Index to draw from if a store operation has happened. - * @property _storeIndex - * @protected - * @type {Number} - * @default 0 - **/ - this._storeIndex = 0; - - // setup: - this.clear(); - } - var p = Graphics.prototype; - var G = Graphics; // shortcut - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// static public methods: - /** - * Returns a CSS compatible color string based on the specified RGB numeric color values in the format - * "rgba(255,255,255,1.0)", or if alpha is null then in the format "rgb(255,255,255)". For example, - * - * createjs.Graphics.getRGB(50, 100, 150, 0.5); - * // Returns "rgba(50,100,150,0.5)" - * - * It also supports passing a single hex color value as the first param, and an optional alpha value as the second - * param. For example, - * - * createjs.Graphics.getRGB(0xFF00FF, 0.2); - * // Returns "rgba(255,0,255,0.2)" - * - * @method getRGB - * @static - * @param {Number} r The red component for the color, between 0 and 0xFF (255). - * @param {Number} g The green component for the color, between 0 and 0xFF (255). - * @param {Number} b The blue component for the color, between 0 and 0xFF (255). - * @param {Number} [alpha] The alpha component for the color where 0 is fully transparent and 1 is fully opaque. - * @return {String} A CSS compatible color string based on the specified RGB numeric color values in the format - * "rgba(255,255,255,1.0)", or if alpha is null then in the format "rgb(255,255,255)". - **/ - Graphics.getRGB = function(r, g, b, alpha) { - if (r != null && b == null) { - alpha = g; - b = r&0xFF; - g = r>>8&0xFF; - r = r>>16&0xFF; - } - if (alpha == null) { - return "rgb("+r+","+g+","+b+")"; - } else { - return "rgba("+r+","+g+","+b+","+alpha+")"; - } - }; - - /** - * Returns a CSS compatible color string based on the specified HSL numeric color values in the format "hsla(360,100,100,1.0)", - * or if alpha is null then in the format "hsl(360,100,100)". - * - * createjs.Graphics.getHSL(150, 100, 70); - * // Returns "hsl(150,100,70)" - * - * @method getHSL - * @static - * @param {Number} hue The hue component for the color, between 0 and 360. - * @param {Number} saturation The saturation component for the color, between 0 and 100. - * @param {Number} lightness The lightness component for the color, between 0 and 100. - * @param {Number} [alpha] The alpha component for the color where 0 is fully transparent and 1 is fully opaque. - * @return {String} A CSS compatible color string based on the specified HSL numeric color values in the format - * "hsla(360,100,100,1.0)", or if alpha is null then in the format "hsl(360,100,100)". - **/ - Graphics.getHSL = function(hue, saturation, lightness, alpha) { - if (alpha == null) { - return "hsl("+(hue%360)+","+saturation+"%,"+lightness+"%)"; - } else { - return "hsla("+(hue%360)+","+saturation+"%,"+lightness+"%,"+alpha+")"; - } - }; - - -// static properties: - /** - * A reusable instance of {{#crossLink "Graphics/BeginPath"}}{{/crossLink}} to avoid - * unnecessary instantiation. - * @property beginCmd - * @type {Graphics.BeginPath} - * @static - **/ - // defined at the bottom of this file. - - /** - * Map of Base64 characters to values. Used by {{#crossLink "Graphics/decodePath"}}{{/crossLink}}. - * @property BASE_64 - * @static - * @final - * @readonly - * @type {Object} - **/ - Graphics.BASE_64 = {"A":0,"B":1,"C":2,"D":3,"E":4,"F":5,"G":6,"H":7,"I":8,"J":9,"K":10,"L":11,"M":12,"N":13,"O":14,"P":15,"Q":16,"R":17,"S":18,"T":19,"U":20,"V":21,"W":22,"X":23,"Y":24,"Z":25,"a":26,"b":27,"c":28,"d":29,"e":30,"f":31,"g":32,"h":33,"i":34,"j":35,"k":36,"l":37,"m":38,"n":39,"o":40,"p":41,"q":42,"r":43,"s":44,"t":45,"u":46,"v":47,"w":48,"x":49,"y":50,"z":51,"0":52,"1":53,"2":54,"3":55,"4":56,"5":57,"6":58,"7":59,"8":60,"9":61,"+":62,"/":63}; - - /** - * Maps numeric values for the caps parameter of {{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} to - * corresponding string values. This is primarily for use with the tiny API. The mappings are as follows: 0 to - * "butt", 1 to "round", and 2 to "square". - * For example, to set the line caps to "square": - * - * myGraphics.ss(16, 2); - * - * @property STROKE_CAPS_MAP - * @static - * @final - * @readonly - * @type {Array} - **/ - Graphics.STROKE_CAPS_MAP = ["butt", "round", "square"]; - - /** - * Maps numeric values for the joints parameter of {{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} to - * corresponding string values. This is primarily for use with the tiny API. The mappings are as follows: 0 to - * "miter", 1 to "round", and 2 to "bevel". - * For example, to set the line joints to "bevel": - * - * myGraphics.ss(16, 0, 2); - * - * @property STROKE_JOINTS_MAP - * @static - * @final - * @readonly - * @type {Array} - **/ - Graphics.STROKE_JOINTS_MAP = ["miter", "round", "bevel"]; - - /** - * @property _ctx - * @static - * @protected - * @type {CanvasRenderingContext2D} - **/ - var canvas = (createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")); - if (canvas.getContext) { - Graphics._ctx = canvas.getContext("2d"); - canvas.width = canvas.height = 1; - } - - -// getter / setters: - /** - * Use the {{#crossLink "Graphics/instructions:property"}}{{/crossLink}} property instead. - * @method getInstructions - * @return {Array} - * @deprecated - **/ - p.getInstructions = function() { - this._updateInstructions(); - return this._instructions; - }; - - /** - * Returns the graphics instructions array. Each entry is a graphics command object (ex. Graphics.Fill, Graphics.Rect) - * Modifying the returned array directly is not recommended, and is likely to result in unexpected behaviour. - * - * This property is mainly intended for introspection of the instructions (ex. for graphics export). - * @property instructions - * @type {Array} - * @readonly - **/ - try { - Object.defineProperties(p, { - instructions: { get: p.getInstructions } - }); - } catch (e) {} - - -// public methods: - /** - * Returns true if this Graphics instance has no drawing commands. - * @method isEmpty - * @return {Boolean} Returns true if this Graphics instance has no drawing commands. - **/ - p.isEmpty = function() { - return !(this._instructions.length || this._activeInstructions.length); - }; - - /** - * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. - * Returns true if the draw was handled (useful for overriding functionality). - * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Object} data Optional data that is passed to graphics command exec methods. When called from a Shape instance, the shape passes itself as the data parameter. This can be used by custom graphic commands to insert contextual data. - **/ - p.draw = function(ctx, data) { - this._updateInstructions(); - var instr = this._instructions; - for (var i=this._storeIndex, l=instr.length; iDisplayObject.mask to draw the clipping path, for example. - * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method drawAsPath - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - **/ - p.drawAsPath = function(ctx) { - this._updateInstructions(); - var instr, instrs = this._instructions; - for (var i=this._storeIndex, l=instrs.length; i - * whatwg spec. - * @method lineTo - * @param {Number} x The x coordinate the drawing point should draw to. - * @param {Number} y The y coordinate the drawing point should draw to. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.lineTo = function(x, y) { - return this.append(new G.LineTo(x,y)); - }; - - /** - * Draws an arc with the specified control points and radius. For detailed information, read the - * - * whatwg spec. A tiny API method "at" also exists. - * @method arcTo - * @param {Number} x1 - * @param {Number} y1 - * @param {Number} x2 - * @param {Number} y2 - * @param {Number} radius - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.arcTo = function(x1, y1, x2, y2, radius) { - return this.append(new G.ArcTo(x1, y1, x2, y2, radius)); - }; - - /** - * Draws an arc defined by the radius, startAngle and endAngle arguments, centered at the position (x, y). For - * example, to draw a full circle with a radius of 20 centered at (100, 100): - * - * arc(100, 100, 20, 0, Math.PI*2); - * - * For detailed information, read the - * whatwg spec. - * A tiny API method "a" also exists. - * @method arc - * @param {Number} x - * @param {Number} y - * @param {Number} radius - * @param {Number} startAngle Measured in radians. - * @param {Number} endAngle Measured in radians. - * @param {Boolean} anticlockwise - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.arc = function(x, y, radius, startAngle, endAngle, anticlockwise) { - return this.append(new G.Arc(x, y, radius, startAngle, endAngle, anticlockwise)); - }; - - /** - * Draws a quadratic curve from the current drawing point to (x, y) using the control point (cpx, cpy). For detailed - * information, read the - * whatwg spec. A tiny API method "qt" also exists. - * @method quadraticCurveTo - * @param {Number} cpx - * @param {Number} cpy - * @param {Number} x - * @param {Number} y - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.quadraticCurveTo = function(cpx, cpy, x, y) { - return this.append(new G.QuadraticCurveTo(cpx, cpy, x, y)); - }; - - /** - * Draws a bezier curve from the current drawing point to (x, y) using the control points (cp1x, cp1y) and (cp2x, - * cp2y). For detailed information, read the - * - * whatwg spec. A tiny API method "bt" also exists. - * @method bezierCurveTo - * @param {Number} cp1x - * @param {Number} cp1y - * @param {Number} cp2x - * @param {Number} cp2y - * @param {Number} x - * @param {Number} y - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.bezierCurveTo = function(cp1x, cp1y, cp2x, cp2y, x, y) { - return this.append(new G.BezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y)); - }; - - /** - * Draws a rectangle at (x, y) with the specified width and height using the current fill and/or stroke. - * For detailed information, read the - * - * whatwg spec. A tiny API method "r" also exists. - * @method rect - * @param {Number} x - * @param {Number} y - * @param {Number} w Width of the rectangle - * @param {Number} h Height of the rectangle - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.rect = function(x, y, w, h) { - return this.append(new G.Rect(x, y, w, h)); - }; - - /** - * Closes the current path, effectively drawing a line from the current drawing point to the first drawing point specified - * since the fill or stroke was last set. A tiny API method "cp" also exists. - * @method closePath - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.closePath = function() { - return this._activeInstructions.length ? this.append(new G.ClosePath()) : this; - }; - - -// public methods that roughly map to Flash graphics APIs: - /** - * Clears all drawing instructions, effectively resetting this Graphics instance. Any line and fill styles will need - * to be redefined to draw shapes following a clear call. A tiny API method "c" also exists. - * @method clear - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.clear = function() { - this._instructions.length = this._activeInstructions.length = this._commitIndex = 0; - this._strokeStyle = this._oldStrokeStyle = this._stroke = this._fill = this._strokeDash = this._oldStrokeDash = null; - this._dirty = this._strokeIgnoreScale = false; - return this; - }; - - /** - * Begins a fill with the specified color. This ends the current sub-path. A tiny API method "f" also exists. - * @method beginFill - * @param {String} color A CSS compatible color value (ex. "red", "#FF0000", or "rgba(255,0,0,0.5)"). Setting to - * null will result in no fill. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginFill = function(color) { - return this._setFill(color ? new G.Fill(color) : null); - }; - - /** - * Begins a linear gradient fill defined by the line (x0, y0) to (x1, y1). This ends the current sub-path. For - * example, the following code defines a black to white vertical gradient ranging from 20px to 120px, and draws a - * square to display it: - * - * myGraphics.beginLinearGradientFill(["#000","#FFF"], [0, 1], 0, 20, 0, 120).drawRect(20, 20, 120, 120); - * - * A tiny API method "lf" also exists. - * @method beginLinearGradientFill - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define a gradient - * drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, 0.9] would draw - * the first color to 10% then interpolating to the second color at 90%. - * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. - * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginLinearGradientFill = function(colors, ratios, x0, y0, x1, y1) { - return this._setFill(new G.Fill().linearGradient(colors, ratios, x0, y0, x1, y1)); - }; - - /** - * Begins a radial gradient fill. This ends the current sub-path. For example, the following code defines a red to - * blue radial gradient centered at (100, 100), with a radius of 50, and draws a circle to display it: - * - * myGraphics.beginRadialGradientFill(["#F00","#00F"], [0, 1], 100, 100, 0, 100, 100, 50).drawCircle(100, 100, 50); - * - * A tiny API method "rf" also exists. - * @method beginRadialGradientFill - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define - * a gradient drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, - * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. - * @param {Number} x0 Center position of the inner circle that defines the gradient. - * @param {Number} y0 Center position of the inner circle that defines the gradient. - * @param {Number} r0 Radius of the inner circle that defines the gradient. - * @param {Number} x1 Center position of the outer circle that defines the gradient. - * @param {Number} y1 Center position of the outer circle that defines the gradient. - * @param {Number} r1 Radius of the outer circle that defines the gradient. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginRadialGradientFill = function(colors, ratios, x0, y0, r0, x1, y1, r1) { - return this._setFill(new G.Fill().radialGradient(colors, ratios, x0, y0, r0, x1, y1, r1)); - }; - - /** - * Begins a pattern fill using the specified image. This ends the current sub-path. A tiny API method "bf" also - * exists. - * @method beginBitmapFill - * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use - * as the pattern. Must be loaded prior to creating a bitmap fill, or the fill will be empty. - * @param {String} repetition Optional. Indicates whether to repeat the image in the fill area. One of "repeat", - * "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". Note that Firefox does not support "repeat-x" or - * "repeat-y" (latest tests were in FF 20.0), and will default to "repeat". - * @param {Matrix2D} matrix Optional. Specifies a transformation matrix for the bitmap fill. This transformation - * will be applied relative to the parent transform. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginBitmapFill = function(image, repetition, matrix) { - return this._setFill(new G.Fill(null,matrix).bitmap(image, repetition)); - }; - - /** - * Ends the current sub-path, and begins a new one with no fill. Functionally identical to beginFill(null). - * A tiny API method "ef" also exists. - * @method endFill - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.endFill = function() { - return this.beginFill(); - }; - - /** - * Sets the stroke style. Like all drawing methods, this can be chained, so you can define - * the stroke style and color in a single line of code like so: - * - * myGraphics.setStrokeStyle(8,"round").beginStroke("#F00"); - * - * A tiny API method "ss" also exists. - * @method setStrokeStyle - * @param {Number} thickness The width of the stroke. - * @param {String | Number} [caps=0] Indicates the type of caps to use at the end of lines. One of butt, - * round, or square. Defaults to "butt". Also accepts the values 0 (butt), 1 (round), and 2 (square) for use with - * the tiny API. - * @param {String | Number} [joints=0] Specifies the type of joints that should be used where two lines meet. - * One of bevel, round, or miter. Defaults to "miter". Also accepts the values 0 (miter), 1 (round), and 2 (bevel) - * for use with the tiny API. - * @param {Number} [miterLimit=10] If joints is set to "miter", then you can specify a miter limit ratio which - * controls at what point a mitered joint will be clipped. - * @param {Boolean} [ignoreScale=false] If true, the stroke will be drawn at the specified thickness regardless - * of active transformations. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.setStrokeStyle = function(thickness, caps, joints, miterLimit, ignoreScale) { - this._updateInstructions(true); - this._strokeStyle = this.command = new G.StrokeStyle(thickness, caps, joints, miterLimit, ignoreScale); - - // ignoreScale lives on Stroke, not StrokeStyle, so we do a little trickery: - if (this._stroke) { this._stroke.ignoreScale = ignoreScale; } - this._strokeIgnoreScale = ignoreScale; - return this; - }; - - /** - * Sets or clears the stroke dash pattern. - * - * myGraphics.setStrokeDash([20, 10], 0); - * - * A tiny API method `sd` also exists. - * @method setStrokeDash - * @param {Array} [segments] An array specifying the dash pattern, alternating between line and gap. - * For example, `[20,10]` would create a pattern of 20 pixel lines with 10 pixel gaps between them. - * Passing null or an empty array will clear the existing stroke dash. - * @param {Number} [offset=0] The offset of the dash pattern. For example, you could increment this value to create a "marching ants" effect. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.setStrokeDash = function(segments, offset) { - this._updateInstructions(true); - this._strokeDash = this.command = new G.StrokeDash(segments, offset); - return this; - }; - - /** - * Begins a stroke with the specified color. This ends the current sub-path. A tiny API method "s" also exists. - * @method beginStroke - * @param {String} color A CSS compatible color value (ex. "#FF0000", "red", or "rgba(255,0,0,0.5)"). Setting to - * null will result in no stroke. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginStroke = function(color) { - return this._setStroke(color ? new G.Stroke(color) : null); - }; - - /** - * Begins a linear gradient stroke defined by the line (x0, y0) to (x1, y1). This ends the current sub-path. For - * example, the following code defines a black to white vertical gradient ranging from 20px to 120px, and draws a - * square to display it: - * - * myGraphics.setStrokeStyle(10). - * beginLinearGradientStroke(["#000","#FFF"], [0, 1], 0, 20, 0, 120).drawRect(20, 20, 120, 120); - * - * A tiny API method "ls" also exists. - * @method beginLinearGradientStroke - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define - * a gradient drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, - * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. - * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. - * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginLinearGradientStroke = function(colors, ratios, x0, y0, x1, y1) { - return this._setStroke(new G.Stroke().linearGradient(colors, ratios, x0, y0, x1, y1)); - }; - - /** - * Begins a radial gradient stroke. This ends the current sub-path. For example, the following code defines a red to - * blue radial gradient centered at (100, 100), with a radius of 50, and draws a rectangle to display it: - * - * myGraphics.setStrokeStyle(10) - * .beginRadialGradientStroke(["#F00","#00F"], [0, 1], 100, 100, 0, 100, 100, 50) - * .drawRect(50, 90, 150, 110); - * - * A tiny API method "rs" also exists. - * @method beginRadialGradientStroke - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define - * a gradient drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, - * 0.9] would draw the first color to 10% then interpolating to the second color at 90%, then draw the second color - * to 100%. - * @param {Number} x0 Center position of the inner circle that defines the gradient. - * @param {Number} y0 Center position of the inner circle that defines the gradient. - * @param {Number} r0 Radius of the inner circle that defines the gradient. - * @param {Number} x1 Center position of the outer circle that defines the gradient. - * @param {Number} y1 Center position of the outer circle that defines the gradient. - * @param {Number} r1 Radius of the outer circle that defines the gradient. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginRadialGradientStroke = function(colors, ratios, x0, y0, r0, x1, y1, r1) { - return this._setStroke(new G.Stroke().radialGradient(colors, ratios, x0, y0, r0, x1, y1, r1)); - }; - - /** - * Begins a pattern fill using the specified image. This ends the current sub-path. Note that unlike bitmap fills, - * strokes do not currently support a matrix parameter due to limitations in the canvas API. A tiny API method "bs" - * also exists. - * @method beginBitmapStroke - * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use - * as the pattern. Must be loaded prior to creating a bitmap fill, or the fill will be empty. - * @param {String} [repetition=repeat] Optional. Indicates whether to repeat the image in the fill area. One of - * "repeat", "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.beginBitmapStroke = function(image, repetition) { - // NOTE: matrix is not supported for stroke because transforms on strokes also affect the drawn stroke width. - return this._setStroke(new G.Stroke().bitmap(image, repetition)); - }; - - /** - * Ends the current sub-path, and begins a new one with no stroke. Functionally identical to beginStroke(null). - * A tiny API method "es" also exists. - * @method endStroke - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.endStroke = function() { - return this.beginStroke(); - }; - - /** - * Maps the familiar ActionScript curveTo() method to the functionally similar {{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} - * method. - * @method quadraticCurveTo - * @param {Number} cpx - * @param {Number} cpy - * @param {Number} x - * @param {Number} y - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.curveTo = p.quadraticCurveTo; - - /** - * - * Maps the familiar ActionScript drawRect() method to the functionally similar {{#crossLink "Graphics/rect"}}{{/crossLink}} - * method. - * @method drawRect - * @param {Number} x - * @param {Number} y - * @param {Number} w Width of the rectangle - * @param {Number} h Height of the rectangle - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.drawRect = p.rect; - - /** - * Draws a rounded rectangle with all corners with the specified radius. - * @method drawRoundRect - * @param {Number} x - * @param {Number} y - * @param {Number} w - * @param {Number} h - * @param {Number} radius Corner radius. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.drawRoundRect = function(x, y, w, h, radius) { - return this.drawRoundRectComplex(x, y, w, h, radius, radius, radius, radius); - }; - - /** - * Draws a rounded rectangle with different corner radii. Supports positive and negative corner radii. A tiny API - * method "rc" also exists. - * @method drawRoundRectComplex - * @param {Number} x The horizontal coordinate to draw the round rect. - * @param {Number} y The vertical coordinate to draw the round rect. - * @param {Number} w The width of the round rect. - * @param {Number} h The height of the round rect. - * @param {Number} radiusTL Top left corner radius. - * @param {Number} radiusTR Top right corner radius. - * @param {Number} radiusBR Bottom right corner radius. - * @param {Number} radiusBL Bottom left corner radius. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.drawRoundRectComplex = function(x, y, w, h, radiusTL, radiusTR, radiusBR, radiusBL) { - return this.append(new G.RoundRect(x, y, w, h, radiusTL, radiusTR, radiusBR, radiusBL)); - }; - - /** - * Draws a circle with the specified radius at (x, y). - * - * var g = new createjs.Graphics(); - * g.setStrokeStyle(1); - * g.beginStroke(createjs.Graphics.getRGB(0,0,0)); - * g.beginFill(createjs.Graphics.getRGB(255,0,0)); - * g.drawCircle(0,0,3); - * - * var s = new createjs.Shape(g); - * s.x = 100; - * s.y = 100; - * - * stage.addChild(s); - * stage.update(); - * - * A tiny API method "dc" also exists. - * @method drawCircle - * @param {Number} x x coordinate center point of circle. - * @param {Number} y y coordinate center point of circle. - * @param {Number} radius Radius of circle. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.drawCircle = function(x, y, radius) { - return this.append(new G.Circle(x, y, radius)); - }; - - /** - * Draws an ellipse (oval) with a specified width (w) and height (h). Similar to {{#crossLink "Graphics/drawCircle"}}{{/crossLink}}, - * except the width and height can be different. A tiny API method "de" also exists. - * @method drawEllipse - * @param {Number} x The left coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} - * which draws from center. - * @param {Number} y The top coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} - * which draws from the center. - * @param {Number} w The height (horizontal diameter) of the ellipse. The horizontal radius will be half of this - * number. - * @param {Number} h The width (vertical diameter) of the ellipse. The vertical radius will be half of this number. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.drawEllipse = function(x, y, w, h) { - return this.append(new G.Ellipse(x, y, w, h)); - }; - - /** - * Draws a star if pointSize is greater than 0, or a regular polygon if pointSize is 0 with the specified number of - * points. For example, the following code will draw a familiar 5 pointed star shape centered at 100, 100 and with a - * radius of 50: - * - * myGraphics.beginFill("#FF0").drawPolyStar(100, 100, 50, 5, 0.6, -90); - * // Note: -90 makes the first point vertical - * - * A tiny API method "dp" also exists. - * - * @method drawPolyStar - * @param {Number} x Position of the center of the shape. - * @param {Number} y Position of the center of the shape. - * @param {Number} radius The outer radius of the shape. - * @param {Number} sides The number of points on the star or sides on the polygon. - * @param {Number} pointSize The depth or "pointy-ness" of the star points. A pointSize of 0 will draw a regular - * polygon (no points), a pointSize of 1 will draw nothing because the points are infinitely pointy. - * @param {Number} angle The angle of the first point / corner. For example a value of 0 will draw the first point - * directly to the right of the center. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.drawPolyStar = function(x, y, radius, sides, pointSize, angle) { - return this.append(new G.PolyStar(x, y, radius, sides, pointSize, angle)); - }; - - // TODO: deprecated. - /** - * Removed in favour of using custom command objects with {{#crossLink "Graphics/append"}}{{/crossLink}}. - * @method inject - * @deprecated - **/ - - /** - * Appends a graphics command object to the graphics queue. Command objects expose an "exec" method - * that accepts two parameters: the Context2D to operate on, and an arbitrary data object passed into - * {{#crossLink "Graphics/draw"}}{{/crossLink}}. The latter will usually be the Shape instance that called draw. - * - * This method is used internally by Graphics methods, such as drawCircle, but can also be used directly to insert - * built-in or custom graphics commands. For example: - * - * // attach data to our shape, so we can access it during the draw: - * myShape.color = "red"; - * - * // append a Circle command object: - * myShape.graphics.append(new Graphics.Circle(50, 50, 30)); - * - * // append a custom command object with an exec method that sets the fill style - * // based on the shape's data, and then fills the circle. - * myShape.graphics.append({exec:function(ctx, shape) { - * ctx.fillStyle = shape.color; - * ctx.fill(); - * }}); - * - * @method append - * @param {Object} command A graphics command object exposing an "exec" method. - * @param {boolean} clean The clean param is primarily for internal use. A value of true indicates that a command does not generate a path that should be stroked or filled. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.append = function(command, clean) { - this._activeInstructions.push(command); - this.command = command; - if (!clean) { this._dirty = true; } - return this; - }; - - /** - * Decodes a compact encoded path string into a series of draw instructions. - * This format is not intended to be human readable, and is meant for use by authoring tools. - * The format uses a base64 character set, with each character representing 6 bits, to define a series of draw - * commands. - * - * Each command is comprised of a single "header" character followed by a variable number of alternating x and y - * position values. Reading the header bits from left to right (most to least significant): bits 1 to 3 specify the - * type of operation (0-moveTo, 1-lineTo, 2-quadraticCurveTo, 3-bezierCurveTo, 4-closePath, 5-7 unused). Bit 4 - * indicates whether position values use 12 bits (2 characters) or 18 bits (3 characters), with a one indicating the - * latter. Bits 5 and 6 are currently unused. - * - * Following the header is a series of 0 (closePath), 2 (moveTo, lineTo), 4 (quadraticCurveTo), or 6 (bezierCurveTo) - * parameters. These parameters are alternating x/y positions represented by 2 or 3 characters (as indicated by the - * 4th bit in the command char). These characters consist of a 1 bit sign (1 is negative, 0 is positive), followed - * by an 11 (2 char) or 17 (3 char) bit integer value. All position values are in tenths of a pixel. Except in the - * case of move operations which are absolute, this value is a delta from the previous x or y position (as - * appropriate). - * - * For example, the string "A3cAAMAu4AAA" represents a line starting at -150,0 and ending at 150,0. - *
    A - bits 000000. First 3 bits (000) indicate a moveTo operation. 4th bit (0) indicates 2 chars per - * parameter. - *
    n0 - 110111011100. Absolute x position of -150.0px. First bit indicates a negative value, remaining bits - * indicate 1500 tenths of a pixel. - *
    AA - 000000000000. Absolute y position of 0. - *
    I - 001100. First 3 bits (001) indicate a lineTo operation. 4th bit (1) indicates 3 chars per parameter. - *
    Au4 - 000000101110111000. An x delta of 300.0px, which is added to the previous x value of -150.0px to - * provide an absolute position of +150.0px. - *
    AAA - 000000000000000000. A y delta value of 0. - * - * A tiny API method "p" also exists. - * @method decodePath - * @param {String} str The path string to decode. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.decodePath = function(str) { - var instructions = [this.moveTo, this.lineTo, this.quadraticCurveTo, this.bezierCurveTo, this.closePath]; - var paramCount = [2, 2, 4, 6, 0]; - var i=0, l=str.length; - var params = []; - var x=0, y=0; - var base64 = Graphics.BASE_64; - - while (i>3; // highest order bits 1-3 code for operation. - var f = instructions[fi]; - // check that we have a valid instruction & that the unused bits are empty: - if (!f || (n&3)) { throw("bad path data (@"+i+"): "+c); } - var pl = paramCount[fi]; - if (!fi) { x=y=0; } // move operations reset the position. - params.length = 0; - i++; - var charCount = (n>>2&1)+2; // 4th header bit indicates number size for this operation. - for (var p=0; p>5) ? -1 : 1; - num = ((num&31)<<6)|(base64[str.charAt(i+1)]); - if (charCount == 3) { num = (num<<6)|(base64[str.charAt(i+2)]); } - num = sign*num/10; - if (p%2) { x = (num += x); } - else { y = (num += y); } - params[p] = num; - i += charCount; - } - f.apply(this,params); - } - return this; - }; - - /** - * Stores all graphics commands so they won't be executed in future draws. Calling store() a second time adds to - * the existing store. This also affects `drawAsPath()`. - * - * This is useful in cases where you are creating vector graphics in an iterative manner (ex. generative art), so - * that only new graphics need to be drawn (which can provide huge performance benefits), but you wish to retain all - * of the vector instructions for later use (ex. scaling, modifying, or exporting). - * - * Note that calling store() will force the active path (if any) to be ended in a manner similar to changing - * the fill or stroke. - * - * For example, consider a application where the user draws lines with the mouse. As each line segment (or collection of - * segments) are added to a Shape, it can be rasterized using {{#crossLink "DisplayObject/updateCache"}}{{/crossLink}}, - * and then stored, so that it can be redrawn at a different scale when the application is resized, or exported to SVG. - * - * // set up cache: - * myShape.cache(0,0,500,500,scale); - * - * // when the user drags, draw a new line: - * myShape.graphics.moveTo(oldX,oldY).lineTo(newX,newY); - * // then draw it into the existing cache: - * myShape.updateCache("source-over"); - * // store the new line, so it isn't redrawn next time: - * myShape.store(); - * - * // then, when the window resizes, we can re-render at a different scale: - * // first, unstore all our lines: - * myShape.unstore(); - * // then cache using the new scale: - * myShape.cache(0,0,500,500,newScale); - * // finally, store the existing commands again: - * myShape.store(); - * - * @method store - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.store = function() { - this._updateInstructions(true); - this._storeIndex = this._instructions.length; - return this; - }; - - /** - * Unstores any graphics commands that were previously stored using {{#crossLink "Graphics/store"}}{{/crossLink}} - * so that they will be executed in subsequent draw calls. - * - * @method unstore - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.unstore = function() { - this._storeIndex = 0; - return this; - }; - - /** - * Returns a clone of this Graphics instance. Note that the individual command objects are not cloned. - * @method clone - * @return {Graphics} A clone of the current Graphics instance. - **/ - p.clone = function() { - var o = new Graphics(); - o.command = this.command; - o._stroke = this._stroke; - o._strokeStyle = this._strokeStyle; - o._strokeDash = this._strokeDash; - o._strokeIgnoreScale = this._strokeIgnoreScale; - o._fill = this._fill; - o._instructions = this._instructions.slice(); - o._commitIndex = this._commitIndex; - o._activeInstructions = this._activeInstructions.slice(); - o._dirty = this._dirty; - o._storeIndex = this._storeIndex; - return o; - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Graphics]"; - }; - - -// tiny API: - /** - * Shortcut to moveTo. - * @method mt - * @param {Number} x The x coordinate the drawing point should move to. - * @param {Number} y The y coordinate the drawing point should move to. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls). - * @chainable - * @protected - **/ - p.mt = p.moveTo; - - /** - * Shortcut to lineTo. - * @method lt - * @param {Number} x The x coordinate the drawing point should draw to. - * @param {Number} y The y coordinate the drawing point should draw to. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.lt = p.lineTo; - - /** - * Shortcut to arcTo. - * @method at - * @param {Number} x1 - * @param {Number} y1 - * @param {Number} x2 - * @param {Number} y2 - * @param {Number} radius - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.at = p.arcTo; - - /** - * Shortcut to bezierCurveTo. - * @method bt - * @param {Number} cp1x - * @param {Number} cp1y - * @param {Number} cp2x - * @param {Number} cp2y - * @param {Number} x - * @param {Number} y - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.bt = p.bezierCurveTo; - - /** - * Shortcut to quadraticCurveTo / curveTo. - * @method qt - * @param {Number} cpx - * @param {Number} cpy - * @param {Number} x - * @param {Number} y - * @protected - * @chainable - **/ - p.qt = p.quadraticCurveTo; - - /** - * Shortcut to arc. - * @method a - * @param {Number} x - * @param {Number} y - * @param {Number} radius - * @param {Number} startAngle Measured in radians. - * @param {Number} endAngle Measured in radians. - * @param {Boolean} anticlockwise - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @protected - * @chainable - **/ - p.a = p.arc; - - /** - * Shortcut to rect. - * @method r - * @param {Number} x - * @param {Number} y - * @param {Number} w Width of the rectangle - * @param {Number} h Height of the rectangle - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.r = p.rect; - - /** - * Shortcut to closePath. - * @method cp - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.cp = p.closePath; - - /** - * Shortcut to clear. - * @method c - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.c = p.clear; - - /** - * Shortcut to beginFill. - * @method f - * @param {String} color A CSS compatible color value (ex. "red", "#FF0000", or "rgba(255,0,0,0.5)"). Setting to - * null will result in no fill. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.f = p.beginFill; - - /** - * Shortcut to beginLinearGradientFill. - * @method lf - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define a gradient - * drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, 0.9] would draw - * the first color to 10% then interpolating to the second color at 90%. - * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. - * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.lf = p.beginLinearGradientFill; - - /** - * Shortcut to beginRadialGradientFill. - * @method rf - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define - * a gradient drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, - * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. - * @param {Number} x0 Center position of the inner circle that defines the gradient. - * @param {Number} y0 Center position of the inner circle that defines the gradient. - * @param {Number} r0 Radius of the inner circle that defines the gradient. - * @param {Number} x1 Center position of the outer circle that defines the gradient. - * @param {Number} y1 Center position of the outer circle that defines the gradient. - * @param {Number} r1 Radius of the outer circle that defines the gradient. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.rf = p.beginRadialGradientFill; - - /** - * Shortcut to beginBitmapFill. - * @method bf - * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use - * as the pattern. - * @param {String} repetition Optional. Indicates whether to repeat the image in the fill area. One of "repeat", - * "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". Note that Firefox does not support "repeat-x" or - * "repeat-y" (latest tests were in FF 20.0), and will default to "repeat". - * @param {Matrix2D} matrix Optional. Specifies a transformation matrix for the bitmap fill. This transformation - * will be applied relative to the parent transform. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.bf = p.beginBitmapFill; - - /** - * Shortcut to endFill. - * @method ef - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.ef = p.endFill; - - /** - * Shortcut to setStrokeStyle. - * @method ss - * @param {Number} thickness The width of the stroke. - * @param {String | Number} [caps=0] Indicates the type of caps to use at the end of lines. One of butt, - * round, or square. Defaults to "butt". Also accepts the values 0 (butt), 1 (round), and 2 (square) for use with - * the tiny API. - * @param {String | Number} [joints=0] Specifies the type of joints that should be used where two lines meet. - * One of bevel, round, or miter. Defaults to "miter". Also accepts the values 0 (miter), 1 (round), and 2 (bevel) - * for use with the tiny API. - * @param {Number} [miterLimit=10] If joints is set to "miter", then you can specify a miter limit ratio which - * controls at what point a mitered joint will be clipped. - * @param {Boolean} [ignoreScale=false] If true, the stroke will be drawn at the specified thickness regardless - * of active transformations. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.ss = p.setStrokeStyle; - - /** - * Shortcut to setStrokeDash. - * @method sd - * @param {Array} [segments] An array specifying the dash pattern, alternating between line and gap. - * For example, [20,10] would create a pattern of 20 pixel lines with 10 pixel gaps between them. - * Passing null or an empty array will clear any existing dash. - * @param {Number} [offset=0] The offset of the dash pattern. For example, you could increment this value to create a "marching ants" effect. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.sd = p.setStrokeDash; - - /** - * Shortcut to beginStroke. - * @method s - * @param {String} color A CSS compatible color value (ex. "#FF0000", "red", or "rgba(255,0,0,0.5)"). Setting to - * null will result in no stroke. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.s = p.beginStroke; - - /** - * Shortcut to beginLinearGradientStroke. - * @method ls - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define - * a gradient drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, - * 0.9] would draw the first color to 10% then interpolating to the second color at 90%. - * @param {Number} x0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} y0 The position of the first point defining the line that defines the gradient direction and size. - * @param {Number} x1 The position of the second point defining the line that defines the gradient direction and size. - * @param {Number} y1 The position of the second point defining the line that defines the gradient direction and size. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.ls = p.beginLinearGradientStroke; - - /** - * Shortcut to beginRadialGradientStroke. - * @method rs - * @param {Array} colors An array of CSS compatible color values. For example, ["#F00","#00F"] would define - * a gradient drawing from red to blue. - * @param {Array} ratios An array of gradient positions which correspond to the colors. For example, [0.1, - * 0.9] would draw the first color to 10% then interpolating to the second color at 90%, then draw the second color - * to 100%. - * @param {Number} x0 Center position of the inner circle that defines the gradient. - * @param {Number} y0 Center position of the inner circle that defines the gradient. - * @param {Number} r0 Radius of the inner circle that defines the gradient. - * @param {Number} x1 Center position of the outer circle that defines the gradient. - * @param {Number} y1 Center position of the outer circle that defines the gradient. - * @param {Number} r1 Radius of the outer circle that defines the gradient. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.rs = p.beginRadialGradientStroke; - - /** - * Shortcut to beginBitmapStroke. - * @method bs - * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement} image The Image, Canvas, or Video object to use - * as the pattern. - * @param {String} [repetition=repeat] Optional. Indicates whether to repeat the image in the fill area. One of - * "repeat", "repeat-x", "repeat-y", or "no-repeat". Defaults to "repeat". - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.bs = p.beginBitmapStroke; - - /** - * Shortcut to endStroke. - * @method es - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.es = p.endStroke; - - /** - * Shortcut to drawRect. - * @method dr - * @param {Number} x - * @param {Number} y - * @param {Number} w Width of the rectangle - * @param {Number} h Height of the rectangle - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.dr = p.drawRect; - - /** - * Shortcut to drawRoundRect. - * @method rr - * @param {Number} x - * @param {Number} y - * @param {Number} w - * @param {Number} h - * @param {Number} radius Corner radius. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.rr = p.drawRoundRect; - - /** - * Shortcut to drawRoundRectComplex. - * @method rc - * @param {Number} x The horizontal coordinate to draw the round rect. - * @param {Number} y The vertical coordinate to draw the round rect. - * @param {Number} w The width of the round rect. - * @param {Number} h The height of the round rect. - * @param {Number} radiusTL Top left corner radius. - * @param {Number} radiusTR Top right corner radius. - * @param {Number} radiusBR Bottom right corner radius. - * @param {Number} radiusBL Bottom left corner radius. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.rc = p.drawRoundRectComplex; - - /** - * Shortcut to drawCircle. - * @method dc - * @param {Number} x x coordinate center point of circle. - * @param {Number} y y coordinate center point of circle. - * @param {Number} radius Radius of circle. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.dc = p.drawCircle; - - /** - * Shortcut to drawEllipse. - * @method de - * @param {Number} x The left coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} - * which draws from center. - * @param {Number} y The top coordinate point of the ellipse. Note that this is different from {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} - * which draws from the center. - * @param {Number} w The height (horizontal diameter) of the ellipse. The horizontal radius will be half of this - * number. - * @param {Number} h The width (vertical diameter) of the ellipse. The vertical radius will be half of this number. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.de = p.drawEllipse; - - /** - * Shortcut to drawPolyStar. - * @method dp - * @param {Number} x Position of the center of the shape. - * @param {Number} y Position of the center of the shape. - * @param {Number} radius The outer radius of the shape. - * @param {Number} sides The number of points on the star or sides on the polygon. - * @param {Number} pointSize The depth or "pointy-ness" of the star points. A pointSize of 0 will draw a regular - * polygon (no points), a pointSize of 1 will draw nothing because the points are infinitely pointy. - * @param {Number} angle The angle of the first point / corner. For example a value of 0 will draw the first point - * directly to the right of the center. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.dp = p.drawPolyStar; - - /** - * Shortcut to decodePath. - * @method p - * @param {String} str The path string to decode. - * @return {Graphics} The Graphics instance the method is called on (useful for chaining calls.) - * @chainable - * @protected - **/ - p.p = p.decodePath; - - -// private methods: - /** - * @method _updateInstructions - * @param commit - * @protected - **/ - p._updateInstructions = function(commit) { - var instr = this._instructions, active = this._activeInstructions, commitIndex = this._commitIndex; - - if (this._dirty && active.length) { - instr.length = commitIndex; // remove old, uncommitted commands - instr.push(Graphics.beginCmd); - - var l = active.length, ll = instr.length; - instr.length = ll+l; - for (var i=0; i= 2) { - var o = this.style = Graphics._ctx.createPattern(image, repetition || ""); - o.props = {image: image, repetition: repetition, type: "bitmap"}; - } - return this; - }; - p.path = false; - - /** - * Graphics command object. See {{#crossLink "Graphics/beginStroke"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class Stroke - * @constructor - * @param {Object} style A valid Context2D fillStyle. - * @param {Boolean} ignoreScale - **/ - /** - * A valid Context2D strokeStyle. - * @property style - * @type Object - */ - /** - * @property ignoreScale - * @type Boolean - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - p = (G.Stroke = function(style, ignoreScale) { - this.style = style; - this.ignoreScale = ignoreScale; - }).prototype; - p.exec = function(ctx) { - if (!this.style) { return; } - ctx.strokeStyle = this.style; - if (this.ignoreScale) { ctx.save(); ctx.setTransform(1,0,0,1,0,0); } - ctx.stroke(); - if (this.ignoreScale) { ctx.restore(); } - }; - /** - * Creates a linear gradient style and assigns it to {{#crossLink "Stroke/style:property"}}{{/crossLink}}. - * See {{#crossLink "Graphics/beginLinearGradientStroke"}}{{/crossLink}} for more information. - * @method linearGradient - * @param {Array} colors - * @param {Array} ratios - * @param {Number} x0 - * @param {Number} y0 - * @param {Number} x1 - * @param {Number} y1 - * @return {Fill} Returns this Stroke object for chaining or assignment. - */ - p.linearGradient = G.Fill.prototype.linearGradient; - /** - * Creates a radial gradient style and assigns it to {{#crossLink "Stroke/style:property"}}{{/crossLink}}. - * See {{#crossLink "Graphics/beginRadialGradientStroke"}}{{/crossLink}} for more information. - * @method radialGradient - * @param {Array} colors - * @param {Array} ratios - * @param {Number} x0 - * @param {Number} y0 - * @param {Number} r0 - * @param {Number} x1 - * @param {Number} y1 - * @param {Number} r1 - * @return {Fill} Returns this Stroke object for chaining or assignment. - */ - p.radialGradient = G.Fill.prototype.radialGradient; - /** - * Creates a bitmap fill style and assigns it to {{#crossLink "Stroke/style:property"}}{{/crossLink}}. - * See {{#crossLink "Graphics/beginBitmapStroke"}}{{/crossLink}} for more information. - * @method bitmap - * @param {HTMLImageElement} image - * @param {String} [repetition] One of: repeat, repeat-x, repeat-y, or no-repeat. - * @return {Fill} Returns this Stroke object for chaining or assignment. - */ - p.bitmap = G.Fill.prototype.bitmap; - p.path = false; - - /** - * Graphics command object. See {{#crossLink "Graphics/setStrokeStyle"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class StrokeStyle - * @constructor - * @param {Number} width - * @param {String} [caps] - * @param {String} [joints] - * @param {Number} [miterLimit] - **/ - /** - * @property width - * @type Number - */ - /** - * One of: butt, round, square - * @property caps - * @type String - */ - /** - * One of: round, bevel, miter - * @property joints - * @type String - */ - /** - * @property miterLimit - * @type Number - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - p = (G.StrokeStyle = function(width, caps, joints, miterLimit) { - this.width = width; - this.caps = caps; - this.joints = joints; - this.miterLimit = miterLimit; - }).prototype; - p.exec = function(ctx) { - ctx.lineWidth = (this.width == null ? "1" : this.width); - ctx.lineCap = (this.caps == null ? "butt" : (isNaN(this.caps) ? this.caps : Graphics.STROKE_CAPS_MAP[this.caps])); - ctx.lineJoin = (this.joints == null ? "miter" : (isNaN(this.joints) ? this.joints : Graphics.STROKE_JOINTS_MAP[this.joints])); - ctx.miterLimit = (this.miterLimit == null ? "10" : this.miterLimit); - }; - p.path = false; - - /** - * Graphics command object. See {{#crossLink "Graphics/setStrokeDash"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class StrokeDash - * @constructor - * @param {Array} [segments] - * @param {Number} [offset=0] - **/ - /** - * @property segments - * @type Array - */ - /** - * @property offset - * @type Number - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - (G.StrokeDash = function(segments, offset) { - this.segments = segments; - this.offset = offset||0; - }).prototype.exec = function(ctx) { - if (ctx.setLineDash) { // feature detection. - ctx.setLineDash(this.segments|| G.StrokeDash.EMPTY_SEGMENTS); // instead of [] to reduce churn. - ctx.lineDashOffset = this.offset||0; - } - }; - /** - * The default value for segments (ie. no dash). - * @property EMPTY_SEGMENTS - * @static - * @final - * @readonly - * @protected - * @type {Array} - **/ - G.StrokeDash.EMPTY_SEGMENTS = []; - - /** - * Graphics command object. See {{#crossLink "Graphics/drawRoundRectComplex"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class RoundRect - * @constructor - * @param {Number} x - * @param {Number} y - * @param {Number} w - * @param {Number} h - * @param {Number} radiusTL - * @param {Number} radiusTR - * @param {Number} radiusBR - * @param {Number} radiusBL - **/ - /** - * @property x - * @type Number - */ - /** - * @property y - * @type Number - */ - /** - * @property w - * @type Number - */ - /** - * @property h - * @type Number - */ - /** - * @property radiusTL - * @type Number - */ - /** - * @property radiusTR - * @type Number - */ - /** - * @property radiusBR - * @type Number - */ - /** - * @property radiusBL - * @type Number - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - (G.RoundRect = function(x, y, w, h, radiusTL, radiusTR, radiusBR, radiusBL) { - this.x = x; this.y = y; - this.w = w; this.h = h; - this.radiusTL = radiusTL; this.radiusTR = radiusTR; - this.radiusBR = radiusBR; this.radiusBL = radiusBL; - }).prototype.exec = function(ctx) { - var max = (w max) { rTL = max; } - if (rTR < 0) { rTR *= (mTR=-1); } - if (rTR > max) { rTR = max; } - if (rBR < 0) { rBR *= (mBR=-1); } - if (rBR > max) { rBR = max; } - if (rBL < 0) { rBL *= (mBL=-1); } - if (rBL > max) { rBL = max; } - - ctx.moveTo(x+w-rTR, y); - ctx.arcTo(x+w+rTR*mTR, y-rTR*mTR, x+w, y+rTR, rTR); - ctx.lineTo(x+w, y+h-rBR); - ctx.arcTo(x+w+rBR*mBR, y+h+rBR*mBR, x+w-rBR, y+h, rBR); - ctx.lineTo(x+rBL, y+h); - ctx.arcTo(x-rBL*mBL, y+h+rBL*mBL, x, y+h-rBL, rBL); - ctx.lineTo(x, y+rTL); - ctx.arcTo(x-rTL*mTL, y-rTL*mTL, x+rTL, y, rTL); - ctx.closePath(); - }; - - /** - * Graphics command object. See {{#crossLink "Graphics/drawCircle"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class Circle - * @constructor - * @param {Number} x - * @param {Number} y - * @param {Number} radius - **/ - /** - * @property x - * @type Number - */ - /** - * @property y - * @type Number - */ - /** - * @property radius - * @type Number - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - (G.Circle = function(x, y, radius) { - this.x = x; this.y = y; - this.radius = radius; - }).prototype.exec = function(ctx) { ctx.arc(this.x, this.y, this.radius, 0, Math.PI*2); }; - - /** - * Graphics command object. See {{#crossLink "Graphics/drawEllipse"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class Ellipse - * @constructor - * @param {Number} x - * @param {Number} y - * @param {Number} w - * @param {Number} h - **/ - /** - * @property x - * @type Number - */ - /** - * @property y - * @type Number - */ - /** - * @property w - * @type Number - */ - /** - * @property h - * @type Number - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - (G.Ellipse = function(x, y, w, h) { - this.x = x; this.y = y; - this.w = w; this.h = h; - }).prototype.exec = function(ctx) { - var x = this.x, y = this.y; - var w = this.w, h = this.h; - - var k = 0.5522848; - var ox = (w / 2) * k; - var oy = (h / 2) * k; - var xe = x + w; - var ye = y + h; - var xm = x + w / 2; - var ym = y + h / 2; - - ctx.moveTo(x, ym); - ctx.bezierCurveTo(x, ym-oy, xm-ox, y, xm, y); - ctx.bezierCurveTo(xm+ox, y, xe, ym-oy, xe, ym); - ctx.bezierCurveTo(xe, ym+oy, xm+ox, ye, xm, ye); - ctx.bezierCurveTo(xm-ox, ye, x, ym+oy, x, ym); - }; - - /** - * Graphics command object. See {{#crossLink "Graphics/drawPolyStar"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. - * @class PolyStar - * @constructor - * @param {Number} x - * @param {Number} y - * @param {Number} radius - * @param {Number} sides - * @param {Number} pointSize - * @param {Number} angle - **/ - /** - * @property x - * @type Number - */ - /** - * @property y - * @type Number - */ - /** - * @property radius - * @type Number - */ - /** - * @property sides - * @type Number - */ - /** - * @property pointSize - * @type Number - */ - /** - * @property angle - * @type Number - */ - /** - * @method exec - * @param {CanvasRenderingContext2D} ctx - */ - (G.PolyStar = function(x, y, radius, sides, pointSize, angle) { - this.x = x; this.y = y; - this.radius = radius; - this.sides = sides; - this.pointSize = pointSize; - this.angle = angle; - }).prototype.exec = function(ctx) { - var x = this.x, y = this.y; - var radius = this.radius; - var angle = (this.angle||0)/180*Math.PI; - var sides = this.sides; - var ps = 1-(this.pointSize||0); - var a = Math.PI/sides; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * DisplayObject is an abstract class that should not be constructed directly. Instead construct subclasses such as + * {{#crossLink "Container"}}{{/crossLink}}, {{#crossLink "Bitmap"}}{{/crossLink}}, and {{#crossLink "Shape"}}{{/crossLink}}. + * DisplayObject is the base class for all display classes in the EaselJS library. It defines the core properties and + * methods that are shared between all display objects, such as transformation properties (x, y, scaleX, scaleY, etc), + * caching, and mouse handlers. + * @class DisplayObject + * @extends EventDispatcher + * @constructor + **/ + function DisplayObject() { + this.EventDispatcher_constructor(); + + + // public properties: + /** + * The alpha (transparency) for this display object. 0 is fully transparent, 1 is fully opaque. + * @property alpha + * @type {Number} + * @default 1 + **/ + this.alpha = 1; + + /** + * If a cache is active, this returns the canvas that holds the cached version of this display object. See {{#crossLink "cache"}}{{/crossLink}} + * for more information. + * @property cacheCanvas + * @type {HTMLCanvasElement | Object} + * @default null + * @readonly + **/ + this.cacheCanvas = null; + + /** + * Returns an ID number that uniquely identifies the current cache for this display object. This can be used to + * determine if the cache has changed since a previous check. + * @property cacheID + * @type {Number} + * @default 0 + */ + this.cacheID = 0; + + /** + * Unique ID for this display object. Makes display objects easier for some uses. + * @property id + * @type {Number} + * @default -1 + **/ + this.id = createjs.UID.get(); + + /** + * Indicates whether to include this object when running mouse interactions. Setting this to `false` for children + * of a {{#crossLink "Container"}}{{/crossLink}} will cause events on the Container to not fire when that child is + * clicked. Setting this property to `false` does not prevent the {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}} + * method from returning the child. + * + * Note: In EaselJS 0.7.0, the mouseEnabled property will not work properly with nested Containers. Please + * check out the latest NEXT version in GitHub for an updated version with this issue resolved. The fix will be + * provided in the next release of EaselJS. + * @property mouseEnabled + * @type {Boolean} + * @default true + **/ + this.mouseEnabled = true; + + /** + * If false, the tick will not run on this display object (or its children). This can provide some performance benefits. + * In addition to preventing the "tick" event from being dispatched, it will also prevent tick related updates + * on some display objects (ex. Sprite & MovieClip frame advancing, DOMElement visibility handling). + * @property tickEnabled + * @type Boolean + * @default true + **/ + this.tickEnabled = true; + + /** + * An optional name for this display object. Included in {{#crossLink "DisplayObject/toString"}}{{/crossLink}} . Useful for + * debugging. + * @property name + * @type {String} + * @default null + **/ + this.name = null; + + /** + * A reference to the {{#crossLink "Container"}}{{/crossLink}} or {{#crossLink "Stage"}}{{/crossLink}} object that + * contains this display object, or null if it has not been added + * to one. + * @property parent + * @final + * @type {Container} + * @default null + * @readonly + **/ + this.parent = null; + + /** + * The left offset for this display object's registration point. For example, to make a 100x100px Bitmap rotate + * around its center, you would set regX and {{#crossLink "DisplayObject/regY:property"}}{{/crossLink}} to 50. + * @property regX + * @type {Number} + * @default 0 + **/ + this.regX = 0; + + /** + * The y offset for this display object's registration point. For example, to make a 100x100px Bitmap rotate around + * its center, you would set {{#crossLink "DisplayObject/regX:property"}}{{/crossLink}} and regY to 50. + * @property regY + * @type {Number} + * @default 0 + **/ + this.regY = 0; + + /** + * The rotation in degrees for this display object. + * @property rotation + * @type {Number} + * @default 0 + **/ + this.rotation = 0; + + /** + * The factor to stretch this display object horizontally. For example, setting scaleX to 2 will stretch the display + * object to twice its nominal width. To horizontally flip an object, set the scale to a negative number. + * @property scaleX + * @type {Number} + * @default 1 + **/ + this.scaleX = 1; + + /** + * The factor to stretch this display object vertically. For example, setting scaleY to 0.5 will stretch the display + * object to half its nominal height. To vertically flip an object, set the scale to a negative number. + * @property scaleY + * @type {Number} + * @default 1 + **/ + this.scaleY = 1; + + /** + * The factor to skew this display object horizontally. + * @property skewX + * @type {Number} + * @default 0 + **/ + this.skewX = 0; + + /** + * The factor to skew this display object vertically. + * @property skewY + * @type {Number} + * @default 0 + **/ + this.skewY = 0; + + /** + * A shadow object that defines the shadow to render on this display object. Set to `null` to remove a shadow. If + * null, this property is inherited from the parent container. + * @property shadow + * @type {Shadow} + * @default null + **/ + this.shadow = null; + + /** + * Indicates whether this display object should be rendered to the canvas and included when running the Stage + * {{#crossLink "Stage/getObjectsUnderPoint"}}{{/crossLink}} method. + * @property visible + * @type {Boolean} + * @default true + **/ + this.visible = true; + + /** + * The x (horizontal) position of the display object, relative to its parent. + * @property x + * @type {Number} + * @default 0 + **/ + this.x = 0; + + /** The y (vertical) position of the display object, relative to its parent. + * @property y + * @type {Number} + * @default 0 + **/ + this.y = 0; + + /** + * If set, defines the transformation for this display object, overriding all other transformation properties + * (x, y, rotation, scale, skew). + * @property transformMatrix + * @type {Matrix2D} + * @default null + **/ + this.transformMatrix = null; + + /** + * The composite operation indicates how the pixels of this display object will be composited with the elements + * behind it. If `null`, this property is inherited from the parent container. For more information, read the + * + * whatwg spec on compositing. + * @property compositeOperation + * @type {String} + * @default null + **/ + this.compositeOperation = null; + + /** + * Indicates whether the display object should be drawn to a whole pixel when + * {{#crossLink "Stage/snapToPixelEnabled"}}{{/crossLink}} is true. To enable/disable snapping on whole + * categories of display objects, set this value on the prototype (Ex. Text.prototype.snapToPixel = true). + * @property snapToPixel + * @type {Boolean} + * @default true + **/ + this.snapToPixel = true; + + /** + * An array of Filter objects to apply to this display object. Filters are only applied / updated when {{#crossLink "cache"}}{{/crossLink}} + * or {{#crossLink "updateCache"}}{{/crossLink}} is called on the display object, and only apply to the area that is + * cached. + * @property filters + * @type {Array} + * @default null + **/ + this.filters = null; + + /** + * A Shape instance that defines a vector mask (clipping path) for this display object. The shape's transformation + * will be applied relative to the display object's parent coordinates (as if it were a child of the parent). + * @property mask + * @type {Shape} + * @default null + */ + this.mask = null; + + /** + * A display object that will be tested when checking mouse interactions or testing {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}}. + * The hit area will have its transformation applied relative to this display object's coordinate space (as though + * the hit test object were a child of this display object and relative to its regX/Y). The hitArea will be tested + * using only its own `alpha` value regardless of the alpha value on the target display object, or the target's + * ancestors (parents). + * + * If set on a {{#crossLink "Container"}}{{/crossLink}}, children of the Container will not receive mouse events. + * This is similar to setting {{#crossLink "mouseChildren"}}{{/crossLink}} to false. + * + * Note that hitArea is NOT currently used by the `hitTest()` method, nor is it supported for {{#crossLink "Stage"}}{{/crossLink}}. + * @property hitArea + * @type {DisplayObject} + * @default null + */ + this.hitArea = null; + + /** + * A CSS cursor (ex. "pointer", "help", "text", etc) that will be displayed when the user hovers over this display + * object. You must enable mouseover events using the {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}} method to + * use this property. Setting a non-null cursor on a Container will override the cursor set on its descendants. + * @property cursor + * @type {String} + * @default null + */ + this.cursor = null; + + + // private properties: + /** + * @property _cacheOffsetX + * @protected + * @type {Number} + * @default 0 + **/ + this._cacheOffsetX = 0; + + /** + * @property _cacheOffsetY + * @protected + * @type {Number} + * @default 0 + **/ + this._cacheOffsetY = 0; + + /** + * @property _filterOffsetX + * @protected + * @type {Number} + * @default 0 + **/ + this._filterOffsetX = 0; + + /** + * @property _filterOffsetY + * @protected + * @type {Number} + * @default 0 + **/ + this._filterOffsetY = 0; + + /** + * @property _cacheScale + * @protected + * @type {Number} + * @default 1 + **/ + this._cacheScale = 1; + + /** + * @property _cacheDataURLID + * @protected + * @type {Number} + * @default 0 + */ + this._cacheDataURLID = 0; + + /** + * @property _cacheDataURL + * @protected + * @type {String} + * @default null + */ + this._cacheDataURL = null; + + /** + * @property _props + * @protected + * @type {DisplayObject} + * @default null + **/ + this._props = new createjs.DisplayProps(); + + /** + * @property _rectangle + * @protected + * @type {Rectangle} + * @default null + **/ + this._rectangle = new createjs.Rectangle(); + + /** + * @property _bounds + * @protected + * @type {Rectangle} + * @default null + **/ + this._bounds = null; + } + var p = createjs.extend(DisplayObject, createjs.EventDispatcher); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + +// static properties: + /** + * Listing of mouse event names. Used in _hasMouseEventListener. + * @property _MOUSE_EVENTS + * @protected + * @static + * @type {Array} + **/ + DisplayObject._MOUSE_EVENTS = ["click","dblclick","mousedown","mouseout","mouseover","pressmove","pressup","rollout","rollover"]; + + /** + * Suppresses errors generated when using features like hitTest, mouse events, and {{#crossLink "getObjectsUnderPoint"}}{{/crossLink}} + * with cross domain content. + * @property suppressCrossDomainErrors + * @static + * @type {Boolean} + * @default false + **/ + DisplayObject.suppressCrossDomainErrors = false; + + /** + * @property _snapToPixelEnabled + * @protected + * @static + * @type {Boolean} + * @default false + **/ + DisplayObject._snapToPixelEnabled = false; // stage.snapToPixelEnabled is temporarily copied here during a draw to provide global access. + + /** + * @property _hitTestCanvas + * @type {HTMLCanvasElement | Object} + * @static + * @protected + **/ + /** + * @property _hitTestContext + * @type {CanvasRenderingContext2D} + * @static + * @protected + **/ + var canvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); // prevent errors on load in browsers without canvas. + if (canvas.getContext) { + DisplayObject._hitTestCanvas = canvas; + DisplayObject._hitTestContext = canvas.getContext("2d"); + canvas.width = canvas.height = 1; + } + + /** + * @property _nextCacheID + * @type {Number} + * @static + * @protected + **/ + DisplayObject._nextCacheID = 1; + + +// events: + /** + * Dispatched when the user presses their left mouse button over the display object. See the + * {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event mousedown + * @since 0.6.0 + */ + + /** + * Dispatched when the user presses their left mouse button and then releases it while over the display object. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event click + * @since 0.6.0 + */ + + /** + * Dispatched when the user double clicks their left mouse button over this display object. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event dblclick + * @since 0.6.0 + */ + + /** + * Dispatched when the user's mouse enters this display object. This event must be enabled using + * {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. See also {{#crossLink "DisplayObject/rollover:event"}}{{/crossLink}}. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event mouseover + * @since 0.6.0 + */ + + /** + * Dispatched when the user's mouse leaves this display object. This event must be enabled using + * {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. See also {{#crossLink "DisplayObject/rollout:event"}}{{/crossLink}}. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event mouseout + * @since 0.6.0 + */ + + /** + * This event is similar to {{#crossLink "DisplayObject/mouseover:event"}}{{/crossLink}}, with the following + * differences: it does not bubble, and it considers {{#crossLink "Container"}}{{/crossLink}} instances as an + * aggregate of their content. + * + * For example, myContainer contains two overlapping children: shapeA and shapeB. The user moves their mouse over + * shapeA and then directly on to shapeB. With a listener for {{#crossLink "mouseover:event"}}{{/crossLink}} on + * myContainer, two events would be received, each targeting a child element:
      + *
    1. when the mouse enters shapeA (target=shapeA)
    2. + *
    3. when the mouse enters shapeB (target=shapeB)
    4. + *
    + * However, with a listener for "rollover" instead, only a single event is received when the mouse first enters + * the aggregate myContainer content (target=myContainer). + * + * This event must be enabled using {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event rollover + * @since 0.7.0 + */ + + /** + * This event is similar to {{#crossLink "DisplayObject/mouseout:event"}}{{/crossLink}}, with the following + * differences: it does not bubble, and it considers {{#crossLink "Container"}}{{/crossLink}} instances as an + * aggregate of their content. + * + * For example, myContainer contains two overlapping children: shapeA and shapeB. The user moves their mouse over + * shapeA, then directly on to shapeB, then off both. With a listener for {{#crossLink "mouseout:event"}}{{/crossLink}} + * on myContainer, two events would be received, each targeting a child element:
      + *
    1. when the mouse leaves shapeA (target=shapeA)
    2. + *
    3. when the mouse leaves shapeB (target=shapeB)
    4. + *
    + * However, with a listener for "rollout" instead, only a single event is received when the mouse leaves + * the aggregate myContainer content (target=myContainer). + * + * This event must be enabled using {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event rollout + * @since 0.7.0 + */ + + /** + * After a {{#crossLink "DisplayObject/mousedown:event"}}{{/crossLink}} occurs on a display object, a pressmove + * event will be generated on that object whenever the mouse moves until the mouse press is released. This can be + * useful for dragging and similar operations. + * @event pressmove + * @since 0.7.0 + */ + + /** + * After a {{#crossLink "DisplayObject/mousedown:event"}}{{/crossLink}} occurs on a display object, a pressup event + * will be generated on that object when that mouse press is released. This can be useful for dragging and similar + * operations. + * @event pressup + * @since 0.7.0 + */ + + /** + * Dispatched when the display object is added to a parent container. + * @event added + */ + + /** + * Dispatched when the display object is removed from its parent container. + * @event removed + */ + + /** + * Dispatched on each display object on a stage whenever the stage updates. This occurs immediately before the + * rendering (draw) pass. When {{#crossLink "Stage/update"}}{{/crossLink}} is called, first all display objects on + * the stage dispatch the tick event, then all of the display objects are drawn to stage. Children will have their + * {{#crossLink "tick:event"}}{{/crossLink}} event dispatched in order of their depth prior to the event being + * dispatched on their parent. + * @event tick + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. + * @param {Array} params An array containing any arguments that were passed to the Stage.update() method. For + * example if you called stage.update("hello"), then the params would be ["hello"]. + * @since 0.6.0 + */ + + +// getter / setters: + /** + * Use the {{#crossLink "DisplayObject/stage:property"}}{{/crossLink}} property instead. + * @method getStage + * @return {Stage} + * @deprecated + **/ + p.getStage = function() { + // uses dynamic access to avoid circular dependencies; + var o = this, _Stage = createjs["Stage"]; + while (o.parent) { o = o.parent; } + if (o instanceof _Stage) { return o; } + return null; + }; + + /** + * Returns the Stage instance that this display object will be rendered on, or null if it has not been added to one. + * @property stage + * @type {Stage} + * @readonly + **/ + try { + Object.defineProperties(p, { + stage: { get: p.getStage } + }); + } catch (e) {} + + +// public methods: + /** + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas + **/ + p.isVisible = function() { + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0); + }; + + /** + * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. For example, + * used for drawing the cache (to prevent it from simply drawing an existing cache back into itself). + * @return {Boolean} + **/ + p.draw = function(ctx, ignoreCache) { + var cacheCanvas = this.cacheCanvas; + if (ignoreCache || !cacheCanvas) { return false; } + var scale = this._cacheScale; + ctx.drawImage(cacheCanvas, this._cacheOffsetX+this._filterOffsetX, this._cacheOffsetY+this._filterOffsetY, cacheCanvas.width/scale, cacheCanvas.height/scale); + return true; + }; + + /** + * Applies this display object's transformation, alpha, globalCompositeOperation, clipping path (mask), and shadow + * to the specified context. This is typically called prior to {{#crossLink "DisplayObject/draw"}}{{/crossLink}}. + * @method updateContext + * @param {CanvasRenderingContext2D} ctx The canvas 2D to update. + **/ + p.updateContext = function(ctx) { + var o=this, mask=o.mask, mtx= o._props.matrix; + + if (mask && mask.graphics && !mask.graphics.isEmpty()) { + mask.getMatrix(mtx); + ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx, mtx.ty); + + mask.graphics.drawAsPath(ctx); + ctx.clip(); + + mtx.invert(); + ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx, mtx.ty); + } + + this.getMatrix(mtx); + var tx = mtx.tx, ty = mtx.ty; + if (DisplayObject._snapToPixelEnabled && o.snapToPixel) { + tx = tx + (tx < 0 ? -0.5 : 0.5) | 0; + ty = ty + (ty < 0 ? -0.5 : 0.5) | 0; + } + ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, tx, ty); + ctx.globalAlpha *= o.alpha; + if (o.compositeOperation) { ctx.globalCompositeOperation = o.compositeOperation; } + if (o.shadow) { this._applyShadow(ctx, o.shadow); } + }; + + /** + * Draws the display object into a new canvas, which is then used for subsequent draws. For complex content + * that does not change frequently (ex. a Container with many children that do not move, or a complex vector Shape), + * this can provide for much faster rendering because the content does not need to be re-rendered each tick. The + * cached display object can be moved, rotated, faded, etc freely, however if its content changes, you must + * manually update the cache by calling updateCache() or cache() again. You must specify + * the cache area via the x, y, w, and h parameters. This defines the rectangle that will be rendered and cached + * using this display object's coordinates. + * + *

    Example

    + * For example if you defined a Shape that drew a circle at 0, 0 with a radius of 25: + * + * var shape = new createjs.Shape(); + * shape.graphics.beginFill("#ff0000").drawCircle(0, 0, 25); + * myShape.cache(-25, -25, 50, 50); + * + * Note that filters need to be defined before the cache is applied. Check out the {{#crossLink "Filter"}}{{/crossLink}} + * class for more information. Some filters (ex. BlurFilter) will not work as expected in conjunction with the scale param. + * + * Usually, the resulting cacheCanvas will have the dimensions width*scale by height*scale, however some filters (ex. BlurFilter) + * will add padding to the canvas dimensions. + * + * @method cache + * @param {Number} x The x coordinate origin for the cache region. + * @param {Number} y The y coordinate origin for the cache region. + * @param {Number} width The width of the cache region. + * @param {Number} height The height of the cache region. + * @param {Number} [scale=1] The scale at which the cache will be created. For example, if you cache a vector shape using + * myShape.cache(0,0,100,100,2) then the resulting cacheCanvas will be 200x200 px. This lets you scale and rotate + * cached elements with greater fidelity. Default is 1. + **/ + p.cache = function(x, y, width, height, scale) { + // draw to canvas. + scale = scale||1; + if (!this.cacheCanvas) { this.cacheCanvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); } + this._cacheWidth = width; + this._cacheHeight = height; + this._cacheOffsetX = x; + this._cacheOffsetY = y; + this._cacheScale = scale; + this.updateCache(); + }; + + /** + * Redraws the display object to its cache. Calling updateCache without an active cache will throw an error. + * If compositeOperation is null the current cache will be cleared prior to drawing. Otherwise the display object + * will be drawn over the existing cache using the specified compositeOperation. + * + *

    Example

    + * Clear the current graphics of a cached shape, draw some new instructions, and then update the cache. The new line + * will be drawn on top of the old one. + * + * // Not shown: Creating the shape, and caching it. + * shapeInstance.clear(); + * shapeInstance.setStrokeStyle(3).beginStroke("#ff0000").moveTo(100, 100).lineTo(200,200); + * shapeInstance.updateCache(); + * + * @method updateCache + * @param {String} compositeOperation The compositeOperation to use, or null to clear the cache and redraw it. + * + * whatwg spec on compositing. + **/ + p.updateCache = function(compositeOperation) { + var cacheCanvas = this.cacheCanvas; + if (!cacheCanvas) { throw "cache() must be called before updateCache()"; } + var scale = this._cacheScale, offX = this._cacheOffsetX*scale, offY = this._cacheOffsetY*scale; + var w = this._cacheWidth, h = this._cacheHeight, ctx = cacheCanvas.getContext("2d"); + + var fBounds = this._getFilterBounds(); + offX += (this._filterOffsetX = fBounds.x); + offY += (this._filterOffsetY = fBounds.y); + + w = Math.ceil(w*scale) + fBounds.width; + h = Math.ceil(h*scale) + fBounds.height; + if (w != cacheCanvas.width || h != cacheCanvas.height) { + // TODO: it would be nice to preserve the content if there is a compositeOperation. + cacheCanvas.width = w; + cacheCanvas.height = h; + } else if (!compositeOperation) { + ctx.clearRect(0, 0, w+1, h+1); + } + + ctx.save(); + ctx.globalCompositeOperation = compositeOperation; + ctx.setTransform(scale, 0, 0, scale, -offX, -offY); + this.draw(ctx, true); + // TODO: filters and cache scale don't play well together at present. + this._applyFilters(); + ctx.restore(); + this.cacheID = DisplayObject._nextCacheID++; + }; + + /** + * Clears the current cache. See {{#crossLink "DisplayObject/cache"}}{{/crossLink}} for more information. + * @method uncache + **/ + p.uncache = function() { + this._cacheDataURL = this.cacheCanvas = null; + this.cacheID = this._cacheOffsetX = this._cacheOffsetY = this._filterOffsetX = this._filterOffsetY = 0; + this._cacheScale = 1; + }; + + /** + * Returns a data URL for the cache, or null if this display object is not cached. + * Uses cacheID to ensure a new data URL is not generated if the cache has not changed. + * @method getCacheDataURL + * @return {String} The image data url for the cache. + **/ + p.getCacheDataURL = function() { + if (!this.cacheCanvas) { return null; } + if (this.cacheID != this._cacheDataURLID) { this._cacheDataURL = this.cacheCanvas.toDataURL(); } + return this._cacheDataURL; + }; + + /** + * Transforms the specified x and y position from the coordinate space of the display object + * to the global (stage) coordinate space. For example, this could be used to position an HTML label + * over a specific point on a nested display object. Returns a Point instance with x and y properties + * correlating to the transformed coordinates on the stage. + * + *

    Example

    + * + * displayObject.x = 300; + * displayObject.y = 200; + * stage.addChild(displayObject); + * var point = displayObject.localToGlobal(100, 100); + * // Results in x=400, y=300 + * + * @method localToGlobal + * @param {Number} x The x position in the source display object to transform. + * @param {Number} y The y position in the source display object to transform. + * @param {Point | Object} [pt] An object to copy the result into. If omitted a new Point object with x/y properties will be returned. + * @return {Point} A Point instance with x and y properties correlating to the transformed coordinates + * on the stage. + **/ + p.localToGlobal = function(x, y, pt) { + return this.getConcatenatedMatrix(this._props.matrix).transformPoint(x,y, pt||new createjs.Point()); + }; + + /** + * Transforms the specified x and y position from the global (stage) coordinate space to the + * coordinate space of the display object. For example, this could be used to determine + * the current mouse position within the display object. Returns a Point instance with x and y properties + * correlating to the transformed position in the display object's coordinate space. + * + *

    Example

    + * + * displayObject.x = 300; + * displayObject.y = 200; + * stage.addChild(displayObject); + * var point = displayObject.globalToLocal(100, 100); + * // Results in x=-200, y=-100 + * + * @method globalToLocal + * @param {Number} x The x position on the stage to transform. + * @param {Number} y The y position on the stage to transform. + * @param {Point | Object} [pt] An object to copy the result into. If omitted a new Point object with x/y properties will be returned. + * @return {Point} A Point instance with x and y properties correlating to the transformed position in the + * display object's coordinate space. + **/ + p.globalToLocal = function(x, y, pt) { + return this.getConcatenatedMatrix(this._props.matrix).invert().transformPoint(x,y, pt||new createjs.Point()); + }; + + /** + * Transforms the specified x and y position from the coordinate space of this display object to the coordinate + * space of the target display object. Returns a Point instance with x and y properties correlating to the + * transformed position in the target's coordinate space. Effectively the same as using the following code with + * {{#crossLink "DisplayObject/localToGlobal"}}{{/crossLink}} and {{#crossLink "DisplayObject/globalToLocal"}}{{/crossLink}}. + * + * var pt = this.localToGlobal(x, y); + * pt = target.globalToLocal(pt.x, pt.y); + * + * @method localToLocal + * @param {Number} x The x position in the source display object to transform. + * @param {Number} y The y position on the source display object to transform. + * @param {DisplayObject} target The target display object to which the coordinates will be transformed. + * @param {Point | Object} [pt] An object to copy the result into. If omitted a new Point object with x/y properties will be returned. + * @return {Point} Returns a Point instance with x and y properties correlating to the transformed position + * in the target's coordinate space. + **/ + p.localToLocal = function(x, y, target, pt) { + pt = this.localToGlobal(x, y, pt); + return target.globalToLocal(pt.x, pt.y, pt); + }; + + /** + * Shortcut method to quickly set the transform properties on the display object. All parameters are optional. + * Omitted parameters will have the default value set. + * + *

    Example

    + * + * displayObject.setTransform(100, 100, 2, 2); + * + * @method setTransform + * @param {Number} [x=0] The horizontal translation (x position) in pixels + * @param {Number} [y=0] The vertical translation (y position) in pixels + * @param {Number} [scaleX=1] The horizontal scale, as a percentage of 1 + * @param {Number} [scaleY=1] the vertical scale, as a percentage of 1 + * @param {Number} [rotation=0] The rotation, in degrees + * @param {Number} [skewX=0] The horizontal skew factor + * @param {Number} [skewY=0] The vertical skew factor + * @param {Number} [regX=0] The horizontal registration point in pixels + * @param {Number} [regY=0] The vertical registration point in pixels + * @return {DisplayObject} Returns this instance. Useful for chaining commands. + * @chainable + */ + p.setTransform = function(x, y, scaleX, scaleY, rotation, skewX, skewY, regX, regY) { + this.x = x || 0; + this.y = y || 0; + this.scaleX = scaleX == null ? 1 : scaleX; + this.scaleY = scaleY == null ? 1 : scaleY; + this.rotation = rotation || 0; + this.skewX = skewX || 0; + this.skewY = skewY || 0; + this.regX = regX || 0; + this.regY = regY || 0; + return this; + }; + + /** + * Returns a matrix based on this object's current transform. + * @method getMatrix + * @param {Matrix2D} matrix Optional. A Matrix2D object to populate with the calculated values. If null, a new + * Matrix object is returned. + * @return {Matrix2D} A matrix representing this display object's transform. + **/ + p.getMatrix = function(matrix) { + var o = this, mtx = matrix&&matrix.identity() || new createjs.Matrix2D(); + return o.transformMatrix ? mtx.copy(o.transformMatrix) : mtx.appendTransform(o.x, o.y, o.scaleX, o.scaleY, o.rotation, o.skewX, o.skewY, o.regX, o.regY); + }; + + /** + * Generates a Matrix2D object representing the combined transform of the display object and all of its + * parent Containers up to the highest level ancestor (usually the {{#crossLink "Stage"}}{{/crossLink}}). This can + * be used to transform positions between coordinate spaces, such as with {{#crossLink "DisplayObject/localToGlobal"}}{{/crossLink}} + * and {{#crossLink "DisplayObject/globalToLocal"}}{{/crossLink}}. + * @method getConcatenatedMatrix + * @param {Matrix2D} [matrix] A {{#crossLink "Matrix2D"}}{{/crossLink}} object to populate with the calculated values. + * If null, a new Matrix2D object is returned. + * @return {Matrix2D} The combined matrix. + **/ + p.getConcatenatedMatrix = function(matrix) { + var o = this, mtx = this.getMatrix(matrix); + while (o = o.parent) { + mtx.prependMatrix(o.getMatrix(o._props.matrix)); + } + return mtx; + }; + + /** + * Generates a DisplayProps object representing the combined display properties of the object and all of its + * parent Containers up to the highest level ancestor (usually the {{#crossLink "Stage"}}{{/crossLink}}). + * @method getConcatenatedDisplayProps + * @param {DisplayProps} [props] A {{#crossLink "DisplayProps"}}{{/crossLink}} object to populate with the calculated values. + * If null, a new DisplayProps object is returned. + * @return {DisplayProps} The combined display properties. + **/ + p.getConcatenatedDisplayProps = function(props) { + props = props ? props.identity() : new createjs.DisplayProps(); + var o = this, mtx = o.getMatrix(props.matrix); + do { + props.prepend(o.visible, o.alpha, o.shadow, o.compositeOperation); + + // we do this to avoid problems with the matrix being used for both operations when o._props.matrix is passed in as the props param. + // this could be simplified (ie. just done as part of the prepend above) if we switched to using a pool. + if (o != this) { mtx.prependMatrix(o.getMatrix(o._props.matrix)); } + } while (o = o.parent); + return props; + }; + + /** + * Tests whether the display object intersects the specified point in local coordinates (ie. draws a pixel + * with alpha > 0 at the specified position). This ignores the alpha, shadow, hitArea, mask, and compositeOperation + * of the display object. + * + *

    Example

    + * + * var myShape = new createjs.Shape(); + * myShape.graphics.beginFill("red").drawRect(100, 100, 20, 50); + * + * console.log(myShape.hitTest(10,10); // false + * console.log(myShape.hitTest(110, 25); // true + * + * Note that to use Stage coordinates (such as {{#crossLink "Stage/mouseX:property"}}{{/crossLink}}), they must + * first be converted to local coordinates: + * + * stage.addEventListener("stagemousedown", handleMouseDown); + * function handleMouseDown(event) { + * var p = myShape.globalToLocal(stage.mouseX, stage.mouseY); + * var hit = myShape.hitTest(p.x, p.y); + * } + * + * Shape-to-shape collision is not currently supported by EaselJS. + * + * @method hitTest + * @param {Number} x The x position to check in the display object's local coordinates. + * @param {Number} y The y position to check in the display object's local coordinates. + * @return {Boolean} A Boolean indicating whether a visible portion of the DisplayObject intersect the specified + * local Point. + */ + p.hitTest = function(x, y) { + var ctx = DisplayObject._hitTestContext; + ctx.setTransform(1, 0, 0, 1, -x, -y); + this.draw(ctx); + + var hit = this._testHit(ctx); + ctx.setTransform(1, 0, 0, 1, 0, 0); + ctx.clearRect(0, 0, 2, 2); + return hit; + }; + + /** + * Provides a chainable shortcut method for setting a number of properties on the instance. + * + *

    Example

    + * + * var myGraphics = new createjs.Graphics().beginFill("#ff0000").drawCircle(0, 0, 25); + * var shape = stage.addChild(new createjs.Shape()).set({graphics:myGraphics, x:100, y:100, alpha:0.5}); + * + * @method set + * @param {Object} props A generic object containing properties to copy to the DisplayObject instance. + * @return {DisplayObject} Returns the instance the method is called on (useful for chaining calls.) + * @chainable + */ + p.set = function(props) { + for (var n in props) { this[n] = props[n]; } + return this; + }; + + /** + * Returns a rectangle representing this object's bounds in its local coordinate system (ie. with no transformation). + * Objects that have been cached will return the bounds of the cache. + * + * Not all display objects can calculate their own bounds (ex. Shape). For these objects, you can use + * {{#crossLink "DisplayObject/setBounds"}}{{/crossLink}} so that they are included when calculating Container + * bounds. + * + * + * + * + * + * + * + * + * + *
    All + * All display objects support setting bounds manually using setBounds(). Likewise, display objects that + * have been cached using cache() will return the bounds of their cache. Manual and cache bounds will override + * the automatic calculations listed below. + *
    Bitmap + * Returns the width and height of the sourceRect (if specified) or image, extending from (x=0,y=0). + *
    Sprite + * Returns the bounds of the current frame. May have non-zero x/y if a frame registration point was specified + * in the spritesheet data. See also {{#crossLink "SpriteSheet/getFrameBounds"}}{{/crossLink}} + *
    Container + * Returns the aggregate (combined) bounds of all children that return a non-null value from getBounds(). + *
    Shape + * Does not currently support automatic bounds calculations. Use setBounds() to manually define bounds. + *
    Text + * Returns approximate bounds. Horizontal values (x/width) are quite accurate, but vertical values (y/height) are + * not, especially when using textBaseline values other than "top". + *
    BitmapText + * Returns approximate bounds. Values will be more accurate if spritesheet frame registration points are close + * to (x=0,y=0). + *
    + * + * Bounds can be expensive to calculate for some objects (ex. text, or containers with many children), and + * are recalculated each time you call getBounds(). You can prevent recalculation on static objects by setting the + * bounds explicitly: + * + * var bounds = obj.getBounds(); + * obj.setBounds(bounds.x, bounds.y, bounds.width, bounds.height); + * // getBounds will now use the set values, instead of recalculating + * + * To reduce memory impact, the returned Rectangle instance may be reused internally; clone the instance or copy its + * values if you need to retain it. + * + * var myBounds = obj.getBounds().clone(); + * // OR: + * myRect.copy(obj.getBounds()); + * + * @method getBounds + * @return {Rectangle} A Rectangle instance representing the bounds, or null if bounds are not available for this + * object. + **/ + p.getBounds = function() { + if (this._bounds) { return this._rectangle.copy(this._bounds); } + var cacheCanvas = this.cacheCanvas; + if (cacheCanvas) { + var scale = this._cacheScale; + return this._rectangle.setValues(this._cacheOffsetX, this._cacheOffsetY, cacheCanvas.width/scale, cacheCanvas.height/scale); + } + return null; + }; + + /** + * Returns a rectangle representing this object's bounds in its parent's coordinate system (ie. with transformations applied). + * Objects that have been cached will return the transformed bounds of the cache. + * + * Not all display objects can calculate their own bounds (ex. Shape). For these objects, you can use + * {{#crossLink "DisplayObject/setBounds"}}{{/crossLink}} so that they are included when calculating Container + * bounds. + * + * To reduce memory impact, the returned Rectangle instance may be reused internally; clone the instance or copy its + * values if you need to retain it. + * + * Container instances calculate aggregate bounds for all children that return bounds via getBounds. + * @method getTransformedBounds + * @return {Rectangle} A Rectangle instance representing the bounds, or null if bounds are not available for this object. + **/ + p.getTransformedBounds = function() { + return this._getBounds(); + }; + + /** + * Allows you to manually specify the bounds of an object that either cannot calculate their own bounds (ex. Shape & + * Text) for future reference, or so the object can be included in Container bounds. Manually set bounds will always + * override calculated bounds. + * + * The bounds should be specified in the object's local (untransformed) coordinates. For example, a Shape instance + * with a 25px radius circle centered at 0,0 would have bounds of (-25, -25, 50, 50). + * @method setBounds + * @param {Number} x The x origin of the bounds. Pass null to remove the manual bounds. + * @param {Number} y The y origin of the bounds. + * @param {Number} width The width of the bounds. + * @param {Number} height The height of the bounds. + **/ + p.setBounds = function(x, y, width, height) { + if (x == null) { this._bounds = x; } + this._bounds = (this._bounds || new createjs.Rectangle()).setValues(x, y, width, height); + }; + + /** + * Returns a clone of this DisplayObject. Some properties that are specific to this instance's current context are + * reverted to their defaults (for example .parent). Caches are not maintained across clones, and some elements + * are copied by reference (masks, individual filter instances, hit area) + * @method clone + * @return {DisplayObject} A clone of the current DisplayObject instance. + **/ + p.clone = function() { + return this._cloneProps(new DisplayObject()); + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[DisplayObject (name="+ this.name +")]"; + }; + + +// private methods: + // separated so it can be used more easily in subclasses: + /** + * @method _cloneProps + * @param {DisplayObject} o The DisplayObject instance which will have properties from the current DisplayObject + * instance copied into. + * @return {DisplayObject} o + * @protected + **/ + p._cloneProps = function(o) { + o.alpha = this.alpha; + o.mouseEnabled = this.mouseEnabled; + o.tickEnabled = this.tickEnabled; + o.name = this.name; + o.regX = this.regX; + o.regY = this.regY; + o.rotation = this.rotation; + o.scaleX = this.scaleX; + o.scaleY = this.scaleY; + o.shadow = this.shadow; + o.skewX = this.skewX; + o.skewY = this.skewY; + o.visible = this.visible; + o.x = this.x; + o.y = this.y; + o.compositeOperation = this.compositeOperation; + o.snapToPixel = this.snapToPixel; + o.filters = this.filters==null?null:this.filters.slice(0); + o.mask = this.mask; + o.hitArea = this.hitArea; + o.cursor = this.cursor; + o._bounds = this._bounds; + return o; + }; + + /** + * @method _applyShadow + * @protected + * @param {CanvasRenderingContext2D} ctx + * @param {Shadow} shadow + **/ + p._applyShadow = function(ctx, shadow) { + shadow = shadow || Shadow.identity; + ctx.shadowColor = shadow.color; + ctx.shadowOffsetX = shadow.offsetX; + ctx.shadowOffsetY = shadow.offsetY; + ctx.shadowBlur = shadow.blur; + }; + + + /** + * @method _tick + * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. + * @protected + **/ + p._tick = function(evtObj) { + // because tick can be really performance sensitive, check for listeners before calling dispatchEvent. + var ls = this._listeners; + if (ls && ls["tick"]) { + // reset & reuse the event object to avoid construction / GC costs: + evtObj.target = null; + evtObj.propagationStopped = evtObj.immediatePropagationStopped = false; + this.dispatchEvent(evtObj); + } + }; + + /** + * @method _testHit + * @protected + * @param {CanvasRenderingContext2D} ctx + * @return {Boolean} + **/ + p._testHit = function(ctx) { + try { + var hit = ctx.getImageData(0, 0, 1, 1).data[3] > 1; + } catch (e) { + if (!DisplayObject.suppressCrossDomainErrors) { + throw "An error has occurred. This is most likely due to security restrictions on reading canvas pixel data with local or cross-domain images."; + } + } + return hit; + }; + + /** + * @method _applyFilters + * @protected + **/ + p._applyFilters = function() { + if (!this.filters || this.filters.length == 0 || !this.cacheCanvas) { return; } + var l = this.filters.length; + var ctx = this.cacheCanvas.getContext("2d"); + var w = this.cacheCanvas.width; + var h = this.cacheCanvas.height; + for (var i=0; i maxX) { maxX = x; } + if ((x = x_a + y_c + tx) < minX) { minX = x; } else if (x > maxX) { maxX = x; } + if ((x = y_c + tx) < minX) { minX = x; } else if (x > maxX) { maxX = x; } + + if ((y = x_b + ty) < minY) { minY = y; } else if (y > maxY) { maxY = y; } + if ((y = x_b + y_d + ty) < minY) { minY = y; } else if (y > maxY) { maxY = y; } + if ((y = y_d + ty) < minY) { minY = y; } else if (y > maxY) { maxY = y; } + + return bounds.setValues(minX, minY, maxX-minX, maxY-minY); + }; + + /** + * Indicates whether the display object has any mouse event listeners or a cursor. + * @method _isMouseOpaque + * @return {Boolean} + * @protected + **/ + p._hasMouseEventListener = function() { + var evts = DisplayObject._MOUSE_EVENTS; + for (var i= 0, l=evts.length; itransform and alpha properties concatenated with their parent + * Container. + * + * For example, a {{#crossLink "Shape"}}{{/crossLink}} with x=100 and alpha=0.5, placed in a Container with x=50 + * and alpha=0.7 will be rendered to the canvas at x=150 and alpha=0.35. + * Containers have some overhead, so you generally shouldn't create a Container to hold a single child. + * + *

    Example

    + * + * var container = new createjs.Container(); + * container.addChild(bitmapInstance, shapeInstance); + * container.x = 100; + * + * @class Container + * @extends DisplayObject + * @constructor + **/ + function Container() { + this.DisplayObject_constructor(); + + // public properties: + /** + * The array of children in the display list. You should usually use the child management methods such as + * {{#crossLink "Container/addChild"}}{{/crossLink}}, {{#crossLink "Container/removeChild"}}{{/crossLink}}, + * {{#crossLink "Container/swapChildren"}}{{/crossLink}}, etc, rather than accessing this directly, but it is + * included for advanced uses. + * @property children + * @type Array + * @default null + **/ + this.children = []; + + /** + * Indicates whether the children of this container are independently enabled for mouse/pointer interaction. + * If false, the children will be aggregated under the container - for example, a click on a child shape would + * trigger a click event on the container. + * @property mouseChildren + * @type Boolean + * @default true + **/ + this.mouseChildren = true; + + /** + * If false, the tick will not be propagated to children of this Container. This can provide some performance benefits. + * In addition to preventing the "tick" event from being dispatched, it will also prevent tick related updates + * on some display objects (ex. Sprite & MovieClip frame advancing, DOMElement visibility handling). + * @property tickChildren + * @type Boolean + * @default true + **/ + this.tickChildren = true; + } + var p = createjs.extend(Container, createjs.DisplayObject); + + +// getter / setters: + /** + * Use the {{#crossLink "Container/numChildren:property"}}{{/crossLink}} property instead. + * @method getNumChildren + * @return {Number} + * @deprecated + **/ + p.getNumChildren = function() { + return this.children.length; + }; + + /** + * Returns the number of children in the container. + * @property numChildren + * @type {Number} + * @readonly + **/ + try { + Object.defineProperties(p, { + numChildren: { get: p.getNumChildren } + }); + } catch (e) {} + + +// public methods: + /** + * Constructor alias for backwards compatibility. This method will be removed in future versions. + * Subclasses should be updated to use {{#crossLink "Utility Methods/extends"}}{{/crossLink}}. + * @method initialize + * @deprecated in favour of `createjs.promote()` + **/ + p.initialize = Container; // TODO: deprecated. + + /** + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas + **/ + p.isVisible = function() { + var hasContent = this.cacheCanvas || this.children.length; + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); + }; + + /** + * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. + * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back + * into itself). + **/ + p.draw = function(ctx, ignoreCache) { + if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } + + // this ensures we don't have issues with display list changes that occur during a draw: + var list = this.children.slice(); + for (var i=0,l=list.length; iExample

    sdG2`<^~gWHU(Qq8Q*_4KmZ;GO-zzoIICK(zpDq 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�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 delta 1138289 zcmZ6xV{o8Bv;H01$;RG|ZQHhO+q`3Aqm4GUZQHi(jqU$)&U3!JZ%oABj@v<1Ks? zpjlD~oW z^HX((MUSW7K83S)aM;3Ligi_&K77{us*o)-U+E4{$uHO|r%b`q!jY?Y^h}XjlPU(5 z@63u^*QX+vuQW6!kpa#MCy3N4W{m6Je5@2NCOus)CSI5HG!7llr1~FKd)4 zgR6#T_WAK6m)X&>1H zZcm=5tR`&Tl~Z-^=AZrPdHW@03r{z5@-l6+?YsfArHk)3?W?{lCHU>iC&dg5cIXz! zLcQ%=R#Hwa__uFCQ{*Jd$&x6@Z$mk-45f-7ewchCz=Ik%Y`U0soDeiy@=E0x{@HCG zHbi+=+Jl3oR+<3)L$x*HEfgUoBCs-X9n6Y^rv&sRncIoW$CDh=`?bo* z6y$lXKgks#NmeoGIwH^W35d~w0a$f$C}~HpuMGU?is^)we4wC6d8w(u$%$9P*B#ot z1++%3!=Gpaz@Snx?1?lD<+gR&XOMep7)B{Yq>QA2T7UEaM z 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

    + * + * container.addChild(bitmapInstance); + * + * You can also add multiple children at once: + * + * container.addChild(bitmapInstance, shapeInstance, textInstance); + * + * @method addChild + * @param {DisplayObject} child The display object to add. + * @return {DisplayObject} The child that was added, or the last child if multiple children were added. + **/ + p.addChild = function(child) { + if (child == null) { return child; } + var l = arguments.length; + if (l > 1) { + for (var i=0; iExample + * + * addChildAt(child1, index); + * + * You can also add multiple children, such as: + * + * addChildAt(child1, child2, ..., index); + * + * The index must be between 0 and numChildren. For example, to add myShape under otherShape in the display list, + * you could use: + * + * container.addChildAt(myShape, container.getChildIndex(otherShape)); + * + * This would also bump otherShape's index up by one. Fails silently if the index is out of range. + * + * @method addChildAt + * @param {DisplayObject} child The display object to add. + * @param {Number} index The index to add the child at. + * @return {DisplayObject} Returns the last child that was added, or the last child if multiple children were added. + **/ + p.addChildAt = function(child, index) { + var l = arguments.length; + var indx = arguments[l-1]; // can't use the same name as the index param or it replaces arguments[1] + if (indx < 0 || indx > this.children.length) { return arguments[l-2]; } + if (l > 2) { + for (var i=0; iExample + * + * container.removeChild(child); + * + * You can also remove multiple children: + * + * removeChild(child1, child2, ...); + * + * Returns true if the child (or children) was removed, or false if it was not in the display list. + * @method removeChild + * @param {DisplayObject} child The child to remove. + * @return {Boolean} true if the child (or children) was removed, or false if it was not in the display list. + **/ + p.removeChild = function(child) { + var l = arguments.length; + if (l > 1) { + var good = true; + for (var i=0; iExample + * + * container.removeChildAt(2); + * + * You can also remove multiple children: + * + * container.removeChild(2, 7, ...) + * + * Returns true if the child (or children) was removed, or false if any index was out of range. + * @method removeChildAt + * @param {Number} index The index of the child to remove. + * @return {Boolean} true if the child (or children) was removed, or false if any index was out of range. + **/ + p.removeChildAt = function(index) { + var l = arguments.length; + if (l > 1) { + var a = []; + for (var i=0; i this.children.length-1) { return false; } + var child = this.children[index]; + if (child) { child.parent = null; } + this.children.splice(index, 1); + child.dispatchEvent("removed"); + return true; + }; + + /** + * Removes all children from the display list. + * + *

    Example

    + * + * container.removeAllChildren(); + * + * @method removeAllChildren + **/ + p.removeAllChildren = function() { + var kids = this.children; + while (kids.length) { this.removeChildAt(0); } + }; + + /** + * Returns the child at the specified index. + * + *

    Example

    + * + * container.getChildAt(2); + * + * @method getChildAt + * @param {Number} index The index of the child to return. + * @return {DisplayObject} The child at the specified index. Returns null if there is no child at the index. + **/ + p.getChildAt = function(index) { + return this.children[index]; + }; + + /** + * Returns the child with the specified name. + * @method getChildByName + * @param {String} name The name of the child to return. + * @return {DisplayObject} The child with the specified name. + **/ + p.getChildByName = function(name) { + var kids = this.children; + for (var i=0,l=kids.length;iExample: Display children with a higher y in front. + * + * var sortFunction = function(obj1, obj2, options) { + * if (obj1.y > obj2.y) { return 1; } + * if (obj1.y < obj2.y) { return -1; } + * return 0; + * } + * container.sortChildren(sortFunction); + * + * @method sortChildren + * @param {Function} sortFunction the function to use to sort the child list. See JavaScript's Array.sort + * documentation for details. + **/ + p.sortChildren = function(sortFunction) { + this.children.sort(sortFunction); + }; + + /** + * Returns the index of the specified child in the display list, or -1 if it is not in the display list. + * + *

    Example

    + * + * var index = container.getChildIndex(child); + * + * @method getChildIndex + * @param {DisplayObject} child The child to return the index of. + * @return {Number} The index of the specified child. -1 if the child is not found. + **/ + p.getChildIndex = function(child) { + return createjs.indexOf(this.children, child); + }; + + /** + * Swaps the children at the specified indexes. Fails silently if either index is out of range. + * @method swapChildrenAt + * @param {Number} index1 + * @param {Number} index2 + **/ + p.swapChildrenAt = function(index1, index2) { + var kids = this.children; + var o1 = kids[index1]; + var o2 = kids[index2]; + if (!o1 || !o2) { return; } + kids[index1] = o2; + kids[index2] = o1; + }; + + /** + * Swaps the specified children's depth in the display list. Fails silently if either child is not a child of this + * Container. + * @method swapChildren + * @param {DisplayObject} child1 + * @param {DisplayObject} child2 + **/ + p.swapChildren = function(child1, child2) { + var kids = this.children; + var index1,index2; + for (var i=0,l=kids.length;i= l) { return; } + for (var i=0;i 0 at the + * specified position). This ignores the alpha, shadow and compositeOperation of the display object, and all + * transform properties including regX/Y. + * @method hitTest + * @param {Number} x The x position to check in the display object's local coordinates. + * @param {Number} y The y position to check in the display object's local coordinates. + * @return {Boolean} A Boolean indicating whether there is a visible section of a DisplayObject that overlaps the specified + * coordinates. + **/ + p.hitTest = function(x, y) { + // TODO: optimize to use the fast cache check where possible. + return (this.getObjectUnderPoint(x, y) != null); + }; + + /** + * Returns an array of all display objects under the specified coordinates that are in this container's display + * list. This routine ignores any display objects with {{#crossLink "DisplayObject/mouseEnabled:property"}}{{/crossLink}} + * set to `false`. The array will be sorted in order of visual depth, with the top-most display object at index 0. + * This uses shape based hit detection, and can be an expensive operation to run, so it is best to use it carefully. + * For example, if testing for objects under the mouse, test on tick (instead of on {{#crossLink "DisplayObject/mousemove:event"}}{{/crossLink}}), + * and only if the mouse's position has changed. + * + *
      + *
    • By default (mode=0) this method evaluates all display objects.
    • + *
    • By setting the `mode` parameter to `1`, the {{#crossLink "DisplayObject/mouseEnabled:property"}}{{/crossLink}} + * and {{#crossLink "mouseChildren:property"}}{{/crossLink}} properties will be respected.
    • + *
    • Setting the `mode` to `2` additionally excludes display objects that do not have active mouse event + * listeners or a {{#crossLink "DisplayObject:cursor:property"}}{{/crossLink}} property. That is, only objects + * that would normally intercept mouse interaction will be included. This can significantly improve performance + * in some cases by reducing the number of display objects that need to be tested.
    • + * + * + * This method accounts for both {{#crossLink "DisplayObject/hitArea:property"}}{{/crossLink}} and {{#crossLink "DisplayObject/mask:property"}}{{/crossLink}}. + * @method getObjectsUnderPoint + * @param {Number} x The x position in the container to test. + * @param {Number} y The y position in the container to test. + * @param {Number} [mode=0] The mode to use to determine which display objects to include. 0-all, 1-respect mouseEnabled/mouseChildren, 2-only mouse opaque objects. + * @return {Array} An Array of DisplayObjects under the specified coordinates. + **/ + p.getObjectsUnderPoint = function(x, y, mode) { + var arr = []; + var pt = this.localToGlobal(x, y); + this._getObjectsUnderPoint(pt.x, pt.y, arr, mode>0, mode==1); + return arr; + }; + + /** + * Similar to {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}}, but returns only the top-most display + * object. This runs significantly faster than getObjectsUnderPoint(), but is still potentially an expensive + * operation. See {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}} for more information. + * @method getObjectUnderPoint + * @param {Number} x The x position in the container to test. + * @param {Number} y The y position in the container to test. + * @param {Number} mode The mode to use to determine which display objects to include. 0-all, 1-respect mouseEnabled/mouseChildren, 2-only mouse opaque objects. + * @return {DisplayObject} The top-most display object under the specified coordinates. + **/ + p.getObjectUnderPoint = function(x, y, mode) { + var pt = this.localToGlobal(x, y); + return this._getObjectsUnderPoint(pt.x, pt.y, null, mode>0, mode==1); + }; + + /** + * Docced in superclass. + */ + p.getBounds = function() { + return this._getBounds(null, true); + }; + + + /** + * Docced in superclass. + */ + p.getTransformedBounds = function() { + return this._getBounds(); + }; + + /** + * Returns a clone of this Container. Some properties that are specific to this instance's current context are + * reverted to their defaults (for example .parent). + * @method clone + * @param {Boolean} [recursive=false] If true, all of the descendants of this container will be cloned recursively. If false, the + * properties of the container will be cloned, but the new instance will not have any children. + * @return {Container} A clone of the current Container instance. + **/ + p.clone = function(recursive) { + var o = this._cloneProps(new Container()); + if (recursive) { this._cloneChildren(o); } + return o; + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Container (name="+ this.name +")]"; + }; + + +// private methods: + /** + * @method _tick + * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. + * @protected + **/ + p._tick = function(evtObj) { + if (this.tickChildren) { + for (var i=this.children.length-1; i>=0; i--) { + var child = this.children[i]; + if (child.tickEnabled && child._tick) { child._tick(evtObj); } + } + } + this.DisplayObject__tick(evtObj); + }; + + /** + * Recursively clones all children of this container, and adds them to the target container. + * @method cloneChildren + * @protected + * @param {Container} o The target container. + **/ + p._cloneChildren = function(o) { + if (o.children.length) { o.removeAllChildren(); } + var arr = o.children; + for (var i=0, l=this.children.length; i=0; i--) { + var child = children[i]; + var hitArea = child.hitArea; + if (!child.visible || (!hitArea && !child.isVisible()) || (mouse && !child.mouseEnabled)) { continue; } + if (!hitArea && !this._testMask(child, x, y)) { continue; } + + // if a child container has a hitArea then we only need to check its hitArea, so we can treat it as a normal DO: + if (!hitArea && child instanceof Container) { + var result = child._getObjectsUnderPoint(x, y, arr, mouse, activeListener, currentDepth+1); + if (!arr && result) { return (mouse && !this.mouseChildren) ? this : result; } + } else { + if (mouse && !activeListener && !child._hasMouseEventListener()) { continue; } + + // TODO: can we pass displayProps forward, to avoid having to calculate this backwards every time? It's kind of a mixed bag. When we're only hunting for DOs with event listeners, it may not make sense. + var props = child.getConcatenatedDisplayProps(child._props); + mtx = props.matrix; + + if (hitArea) { + mtx.appendMatrix(hitArea.getMatrix(hitArea._props.matrix)); + props.alpha = hitArea.alpha; + } + + ctx.globalAlpha = props.alpha; + ctx.setTransform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx-x, mtx.ty-y); + (hitArea||child).draw(ctx); + if (!this._testHit(ctx)) { continue; } + ctx.setTransform(1, 0, 0, 1, 0, 0); + ctx.clearRect(0, 0, 2, 2); + if (arr) { arr.push(child); } + else { return (mouse && !this.mouseChildren) ? this : child; } + } + } + return null; + }; + + /** + * @method _testMask + * @param {DisplayObject} target + * @param {Number} x + * @param {Number} y + * @return {Boolean} Indicates whether the x/y is within the masked region. + * @protected + **/ + p._testMask = function(target, x, y) { + var mask = target.mask; + if (!mask || !mask.graphics || mask.graphics.isEmpty()) { return true; } + + var mtx = this._props.matrix, parent = target.parent; + mtx = parent ? parent.getConcatenatedMatrix(mtx) : mtx.identity(); + mtx = mask.getMatrix(mask._props.matrix).prependMatrix(mtx); + + var ctx = createjs.DisplayObject._hitTestContext; + ctx.setTransform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx-x, mtx.ty-y); + + // draw the mask as a solid fill: + mask.graphics.drawAsPath(ctx); + ctx.fillStyle = "#000"; + ctx.fill(); + + if (!this._testHit(ctx)) { return false; } + ctx.setTransform(1, 0, 0, 1, 0, 0); + ctx.clearRect(0, 0, 2, 2); + + return true; + }; + + /** + * @method _getBounds + * @param {Matrix2D} matrix + * @param {Boolean} ignoreTransform If true, does not apply this object's transform. + * @return {Rectangle} + * @protected + **/ + p._getBounds = function(matrix, ignoreTransform) { + var bounds = this.DisplayObject_getBounds(); + if (bounds) { return this._transformBounds(bounds, matrix, ignoreTransform); } + + var mtx = this._props.matrix; + mtx = ignoreTransform ? mtx.identity() : this.getMatrix(mtx); + if (matrix) { mtx.prependMatrix(matrix); } + + var l = this.children.length, rect=null; + for (var i=0; iExample + * This example creates a stage, adds a child to it, then uses {{#crossLink "Ticker"}}{{/crossLink}} to update the child + * and redraw the stage using {{#crossLink "Stage/update"}}{{/crossLink}}. + * + * var stage = new createjs.Stage("canvasElementId"); + * var image = new createjs.Bitmap("imagePath.png"); + * stage.addChild(image); + * createjs.Ticker.addEventListener("tick", handleTick); + * function handleTick(event) { + * image.x += 10; + * stage.update(); + * } + * + * @class Stage + * @extends Container + * @constructor + * @param {HTMLCanvasElement | String | Object} canvas A canvas object that the Stage will render to, or the string id + * of a canvas object in the current document. + **/ + function Stage(canvas) { + this.Container_constructor(); + + + // public properties: + /** + * Indicates whether the stage should automatically clear the canvas before each render. You can set this to false + * to manually control clearing (for generative art, or when pointing multiple stages at the same canvas for + * example). + * + *

      Example

      + * + * var stage = new createjs.Stage("canvasId"); + * stage.autoClear = false; + * + * @property autoClear + * @type Boolean + * @default true + **/ + this.autoClear = true; + + /** + * The canvas the stage will render to. Multiple stages can share a single canvas, but you must disable autoClear for all but the + * first stage that will be ticked (or they will clear each other's render). + * + * When changing the canvas property you must disable the events on the old canvas, and enable events on the + * new canvas or mouse events will not work as expected. For example: + * + * myStage.enableDOMEvents(false); + * myStage.canvas = anotherCanvas; + * myStage.enableDOMEvents(true); + * + * @property canvas + * @type HTMLCanvasElement | Object + **/ + this.canvas = (typeof canvas == "string") ? document.getElementById(canvas) : canvas; + + /** + * The current mouse X position on the canvas. If the mouse leaves the canvas, this will indicate the most recent + * position over the canvas, and mouseInBounds will be set to false. + * @property mouseX + * @type Number + * @readonly + **/ + this.mouseX = 0; + + /** + * The current mouse Y position on the canvas. If the mouse leaves the canvas, this will indicate the most recent + * position over the canvas, and mouseInBounds will be set to false. + * @property mouseY + * @type Number + * @readonly + **/ + this.mouseY = 0; + + /** + * Specifies the area of the stage to affect when calling update. This can be use to selectively + * re-draw specific regions of the canvas. If null, the whole canvas area is drawn. + * @property drawRect + * @type {Rectangle} + */ + this.drawRect = null; + + /** + * Indicates whether display objects should be rendered on whole pixels. You can set the + * {{#crossLink "DisplayObject/snapToPixel"}}{{/crossLink}} property of + * display objects to false to enable/disable this behaviour on a per instance basis. + * @property snapToPixelEnabled + * @type Boolean + * @default false + **/ + this.snapToPixelEnabled = false; + + /** + * Indicates whether the mouse is currently within the bounds of the canvas. + * @property mouseInBounds + * @type Boolean + * @default false + **/ + this.mouseInBounds = false; + + /** + * If true, tick callbacks will be called on all display objects on the stage prior to rendering to the canvas. + * @property tickOnUpdate + * @type Boolean + * @default true + **/ + this.tickOnUpdate = true; + + /** + * If true, mouse move events will continue to be called when the mouse leaves the target canvas. See + * {{#crossLink "Stage/mouseInBounds:property"}}{{/crossLink}}, and {{#crossLink "MouseEvent"}}{{/crossLink}} + * x/y/rawX/rawY. + * @property mouseMoveOutside + * @type Boolean + * @default false + **/ + this.mouseMoveOutside = false; + + + /** + * Prevents selection of other elements in the html page if the user clicks and drags, or double clicks on the canvas. + * This works by calling `preventDefault()` on any mousedown events (or touch equivalent) originating on the canvas. + * @property preventSelection + * @type Boolean + * @default true + **/ + this.preventSelection = true; + + /** + * The hitArea property is not supported for Stage. + * @property hitArea + * @type {DisplayObject} + * @default null + */ + + + // private properties: + /** + * Holds objects with data for each active pointer id. Each object has the following properties: + * x, y, event, target, overTarget, overX, overY, inBounds, posEvtObj (native event that last updated position) + * @property _pointerData + * @type {Object} + * @private + */ + this._pointerData = {}; + + /** + * Number of active pointers. + * @property _pointerCount + * @type {Object} + * @private + */ + this._pointerCount = 0; + + /** + * The ID of the primary pointer. + * @property _primaryPointerID + * @type {Object} + * @private + */ + this._primaryPointerID = null; + + /** + * @property _mouseOverIntervalID + * @protected + * @type Number + **/ + this._mouseOverIntervalID = null; + + /** + * @property _nextStage + * @protected + * @type Stage + **/ + this._nextStage = null; + + /** + * @property _prevStage + * @protected + * @type Stage + **/ + this._prevStage = null; + + + // initialize: + this.enableDOMEvents(true); + } + var p = createjs.extend(Stage, createjs.Container); + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// events: + /** + * Dispatched when the user moves the mouse over the canvas. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event stagemousemove + * @since 0.6.0 + */ + + /** + * Dispatched when the user presses their left mouse button on the canvas. See the {{#crossLink "MouseEvent"}}{{/crossLink}} + * class for a listing of event properties. + * @event stagemousedown + * @since 0.6.0 + */ + + /** + * Dispatched when the user the user presses somewhere on the stage, then releases the mouse button anywhere that the page can detect it (this varies slightly between browsers). + * You can use {{#crossLink "Stage/mouseInBounds:property"}}{{/crossLink}} to check whether the mouse is currently within the stage bounds. + * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. + * @event stagemouseup + * @since 0.6.0 + */ + + /** + * Dispatched when the mouse moves from within the canvas area (mouseInBounds == true) to outside it (mouseInBounds == false). + * This is currently only dispatched for mouse input (not touch). See the {{#crossLink "MouseEvent"}}{{/crossLink}} + * class for a listing of event properties. + * @event mouseleave + * @since 0.7.0 + */ + + /** + * Dispatched when the mouse moves into the canvas area (mouseInBounds == false) from outside it (mouseInBounds == true). + * This is currently only dispatched for mouse input (not touch). See the {{#crossLink "MouseEvent"}}{{/crossLink}} + * class for a listing of event properties. + * @event mouseenter + * @since 0.7.0 + */ + + /** + * Dispatched each update immediately before the tick event is propagated through the display list. + * You can call preventDefault on the event object to cancel propagating the tick event. + * @event tickstart + * @since 0.7.0 + */ + + /** + * Dispatched each update immediately after the tick event is propagated through the display list. Does not fire if + * tickOnUpdate is false. Precedes the "drawstart" event. + * @event tickend + * @since 0.7.0 + */ + + /** + * Dispatched each update immediately before the canvas is cleared and the display list is drawn to it. + * You can call preventDefault on the event object to cancel the draw. + * @event drawstart + * @since 0.7.0 + */ + + /** + * Dispatched each update immediately after the display list is drawn to the canvas and the canvas context is restored. + * @event drawend + * @since 0.7.0 + */ + + +// getter / setters: + /** + * Specifies a target stage that will have mouse / touch interactions relayed to it after this stage handles them. + * This can be useful in cases where you have multiple layered canvases and want user interactions + * events to pass through. For example, this would relay mouse events from topStage to bottomStage: + * + * topStage.nextStage = bottomStage; + * + * To disable relaying, set nextStage to null. + * + * MouseOver, MouseOut, RollOver, and RollOut interactions are also passed through using the mouse over settings + * of the top-most stage, but are only processed if the target stage has mouse over interactions enabled. + * Considerations when using roll over in relay targets:
        + *
      1. The top-most (first) stage must have mouse over interactions enabled (via enableMouseOver)
      2. + *
      3. All stages that wish to participate in mouse over interaction must enable them via enableMouseOver
      4. + *
      5. All relay targets will share the frequency value of the top-most stage
      6. + *
      + * To illustrate, in this example the targetStage would process mouse over interactions at 10hz (despite passing + * 30 as it's desired frequency): + * topStage.nextStage = targetStage; + * topStage.enableMouseOver(10); + * targetStage.enableMouseOver(30); + * + * If the target stage's canvas is completely covered by this stage's canvas, you may also want to disable its + * DOM events using: + * + * targetStage.enableDOMEvents(false); + * + * @property nextStage + * @type {Stage} + **/ + p._get_nextStage = function() { + return this._nextStage; + }; + p._set_nextStage = function(value) { + if (this._nextStage) { this._nextStage._prevStage = null; } + if (value) { value._prevStage = this; } + this._nextStage = value; + }; + + try { + Object.defineProperties(p, { + nextStage: { get: p._get_nextStage, set: p._set_nextStage } + }); + } catch (e) {} // TODO: use Log + + +// public methods: + /** + * Each time the update method is called, the stage will call {{#crossLink "Stage/tick"}}{{/crossLink}} + * unless {{#crossLink "Stage/tickOnUpdate:property"}}{{/crossLink}} is set to false, + * and then render the display list to the canvas. + * + * @method update + * @param {Object} [props] Props object to pass to `tick()`. Should usually be a {{#crossLink "Ticker"}}{{/crossLink}} event object, or similar object with a delta property. + **/ + p.update = function(props) { + if (!this.canvas) { return; } + if (this.tickOnUpdate) { this.tick(props); } + if (this.dispatchEvent("drawstart", false, true) === false) { return; } + createjs.DisplayObject._snapToPixelEnabled = this.snapToPixelEnabled; + var r = this.drawRect, ctx = this.canvas.getContext("2d"); + ctx.setTransform(1, 0, 0, 1, 0, 0); + if (this.autoClear) { + if (r) { ctx.clearRect(r.x, r.y, r.width, r.height); } + else { ctx.clearRect(0, 0, this.canvas.width+1, this.canvas.height+1); } + } + ctx.save(); + if (this.drawRect) { + ctx.beginPath(); + ctx.rect(r.x, r.y, r.width, r.height); + ctx.clip(); + } + this.updateContext(ctx); + this.draw(ctx, false); + ctx.restore(); + this.dispatchEvent("drawend"); + }; + + /** + * Propagates a tick event through the display list. This is automatically called by {{#crossLink "Stage/update"}}{{/crossLink}} + * unless {{#crossLink "Stage/tickOnUpdate:property"}}{{/crossLink}} is set to false. + * + * If a props object is passed to `tick()`, then all of its properties will be copied to the event object that is + * propagated to listeners. + * + * Some time-based features in EaselJS (for example {{#crossLink "Sprite/framerate"}}{{/crossLink}} require that + * a {{#crossLink "Ticker/tick:event"}}{{/crossLink}} event object (or equivalent object with a delta property) be + * passed as the `props` parameter to `tick()`. For example: + * + * Ticker.on("tick", handleTick); + * function handleTick(evtObj) { + * // clone the event object from Ticker, and add some custom data to it: + * var evt = evtObj.clone().set({greeting:"hello", name:"world"}); + * + * // pass it to stage.update(): + * myStage.update(evt); // subsequently calls tick() with the same param + * } + * + * // ... + * myDisplayObject.on("tick", handleDisplayObjectTick); + * function handleDisplayObjectTick(evt) { + * console.log(evt.delta); // the delta property from the Ticker tick event object + * console.log(evt.greeting, evt.name); // custom data: "hello world" + * } + * + * @method tick + * @param {Object} [props] An object with properties that should be copied to the event object. Should usually be a Ticker event object, or similar object with a delta property. + **/ + p.tick = function(props) { + if (!this.tickEnabled || this.dispatchEvent("tickstart", false, true) === false) { return; } + var evtObj = new createjs.Event("tick"); + if (props) { + for (var n in props) { + if (props.hasOwnProperty(n)) { evtObj[n] = props[n]; } + } + } + this._tick(evtObj); + this.dispatchEvent("tickend"); + }; + + /** + * Default event handler that calls the Stage {{#crossLink "Stage/update"}}{{/crossLink}} method when a {{#crossLink "DisplayObject/tick:event"}}{{/crossLink}} + * event is received. This allows you to register a Stage instance as a event listener on {{#crossLink "Ticker"}}{{/crossLink}} + * directly, using: + * + * Ticker.addEventListener("tick", myStage"); + * + * Note that if you subscribe to ticks using this pattern, then the tick event object will be passed through to + * display object tick handlers, instead of delta and paused parameters. + * @property handleEvent + * @type Function + **/ + p.handleEvent = function(evt) { + if (evt.type == "tick") { this.update(evt); } + }; + + /** + * Clears the target canvas. Useful if {{#crossLink "Stage/autoClear:property"}}{{/crossLink}} is set to `false`. + * @method clear + **/ + p.clear = function() { + if (!this.canvas) { return; } + var ctx = this.canvas.getContext("2d"); + ctx.setTransform(1, 0, 0, 1, 0, 0); + ctx.clearRect(0, 0, this.canvas.width+1, this.canvas.height+1); + }; + + /** + * Returns a data url that contains a Base64-encoded image of the contents of the stage. The returned data url can + * be specified as the src value of an image element. + * @method toDataURL + * @param {String} [backgroundColor] The background color to be used for the generated image. Any valid CSS color + * value is allowed. The default value is a transparent background. + * @param {String} [mimeType="image/png"] The MIME type of the image format to be create. The default is "image/png". If an unknown MIME type + * is passed in, or if the browser does not support the specified MIME type, the default value will be used. + * @return {String} a Base64 encoded image. + **/ + p.toDataURL = function(backgroundColor, mimeType) { + var data, ctx = this.canvas.getContext('2d'), w = this.canvas.width, h = this.canvas.height; + + if (backgroundColor) { + data = ctx.getImageData(0, 0, w, h); + var compositeOperation = ctx.globalCompositeOperation; + ctx.globalCompositeOperation = "destination-over"; + + ctx.fillStyle = backgroundColor; + ctx.fillRect(0, 0, w, h); + } + + var dataURL = this.canvas.toDataURL(mimeType||"image/png"); + + if(backgroundColor) { + ctx.putImageData(data, 0, 0); + ctx.globalCompositeOperation = compositeOperation; + } + + return dataURL; + }; + + /** + * Enables or disables (by passing a frequency of 0) mouse over ({{#crossLink "DisplayObject/mouseover:event"}}{{/crossLink}} + * and {{#crossLink "DisplayObject/mouseout:event"}}{{/crossLink}}) and roll over events ({{#crossLink "DisplayObject/rollover:event"}}{{/crossLink}} + * and {{#crossLink "DisplayObject/rollout:event"}}{{/crossLink}}) for this stage's display list. These events can + * be expensive to generate, so they are disabled by default. The frequency of the events can be controlled + * independently of mouse move events via the optional `frequency` parameter. + * + *

      Example

      + * + * var stage = new createjs.Stage("canvasId"); + * stage.enableMouseOver(10); // 10 updates per second + * + * @method enableMouseOver + * @param {Number} [frequency=20] Optional param specifying the maximum number of times per second to broadcast + * mouse over/out events. Set to 0 to disable mouse over events completely. Maximum is 50. A lower frequency is less + * responsive, but uses less CPU. + **/ + p.enableMouseOver = function(frequency) { + if (this._mouseOverIntervalID) { + clearInterval(this._mouseOverIntervalID); + this._mouseOverIntervalID = null; + if (frequency == 0) { + this._testMouseOver(true); + } + } + if (frequency == null) { frequency = 20; } + else if (frequency <= 0) { return; } + var o = this; + this._mouseOverIntervalID = setInterval(function(){ o._testMouseOver(); }, 1000/Math.min(50,frequency)); + }; + + /** + * Enables or disables the event listeners that stage adds to DOM elements (window, document and canvas). It is good + * practice to disable events when disposing of a Stage instance, otherwise the stage will continue to receive + * events from the page. + * + * When changing the canvas property you must disable the events on the old canvas, and enable events on the + * new canvas or mouse events will not work as expected. For example: + * + * myStage.enableDOMEvents(false); + * myStage.canvas = anotherCanvas; + * myStage.enableDOMEvents(true); + * + * @method enableDOMEvents + * @param {Boolean} [enable=true] Indicates whether to enable or disable the events. Default is true. + **/ + p.enableDOMEvents = function(enable) { + if (enable == null) { enable = true; } + var n, o, ls = this._eventListeners; + if (!enable && ls) { + for (n in ls) { + o = ls[n]; + o.t.removeEventListener(n, o.f, false); + } + this._eventListeners = null; + } else if (enable && !ls && this.canvas) { + var t = window.addEventListener ? window : document; + var _this = this; + ls = this._eventListeners = {}; + ls["mouseup"] = {t:t, f:function(e) { _this._handleMouseUp(e)} }; + ls["mousemove"] = {t:t, f:function(e) { _this._handleMouseMove(e)} }; + ls["dblclick"] = {t:this.canvas, f:function(e) { _this._handleDoubleClick(e)} }; + ls["mousedown"] = {t:this.canvas, f:function(e) { _this._handleMouseDown(e)} }; + + for (n in ls) { + o = ls[n]; + o.t.addEventListener(n, o.f, false); + } + } + }; + + /** + * Stage instances cannot be cloned. + * @method clone + **/ + p.clone = function() { + throw("Stage cannot be cloned."); + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Stage (name="+ this.name +")]"; + }; + + +// private methods: + /** + * @method _getElementRect + * @protected + * @param {HTMLElement} e + **/ + p._getElementRect = function(e) { + var bounds; + try { bounds = e.getBoundingClientRect(); } // this can fail on disconnected DOM elements in IE9 + catch (err) { bounds = {top: e.offsetTop, left: e.offsetLeft, width:e.offsetWidth, height:e.offsetHeight}; } + + var offX = (window.pageXOffset || document.scrollLeft || 0) - (document.clientLeft || document.body.clientLeft || 0); + var offY = (window.pageYOffset || document.scrollTop || 0) - (document.clientTop || document.body.clientTop || 0); + + var styles = window.getComputedStyle ? getComputedStyle(e,null) : e.currentStyle; // IE <9 compatibility. + var padL = parseInt(styles.paddingLeft)+parseInt(styles.borderLeftWidth); + var padT = parseInt(styles.paddingTop)+parseInt(styles.borderTopWidth); + var padR = parseInt(styles.paddingRight)+parseInt(styles.borderRightWidth); + var padB = parseInt(styles.paddingBottom)+parseInt(styles.borderBottomWidth); + + // note: in some browsers bounds properties are read only. + return { + left: bounds.left+offX+padL, + right: bounds.right+offX-padR, + top: bounds.top+offY+padT, + bottom: bounds.bottom+offY-padB + } + }; + + /** + * @method _getPointerData + * @protected + * @param {Number} id + **/ + p._getPointerData = function(id) { + var data = this._pointerData[id]; + if (!data) { data = this._pointerData[id] = {x:0,y:0}; } + return data; + }; + + /** + * @method _handleMouseMove + * @protected + * @param {MouseEvent} e + **/ + p._handleMouseMove = function(e) { + if(!e){ e = window.event; } + this._handlePointerMove(-1, e, e.pageX, e.pageY); + }; + + /** + * @method _handlePointerMove + * @protected + * @param {Number} id + * @param {Event} e + * @param {Number} pageX + * @param {Number} pageY + * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. + **/ + p._handlePointerMove = function(id, e, pageX, pageY, owner) { + if (this._prevStage && owner === undefined) { return; } // redundant listener. + if (!this.canvas) { return; } + var nextStage=this._nextStage, o=this._getPointerData(id); + + var inBounds = o.inBounds; + this._updatePointerPosition(id, e, pageX, pageY); + if (inBounds || o.inBounds || this.mouseMoveOutside) { + if (id === -1 && o.inBounds == !inBounds) { + this._dispatchMouseEvent(this, (inBounds ? "mouseleave" : "mouseenter"), false, id, o, e); + } + + this._dispatchMouseEvent(this, "stagemousemove", false, id, o, e); + this._dispatchMouseEvent(o.target, "pressmove", true, id, o, e); + } + + nextStage&&nextStage._handlePointerMove(id, e, pageX, pageY, null); + }; + + /** + * @method _updatePointerPosition + * @protected + * @param {Number} id + * @param {Event} e + * @param {Number} pageX + * @param {Number} pageY + **/ + p._updatePointerPosition = function(id, e, pageX, pageY) { + var rect = this._getElementRect(this.canvas); + pageX -= rect.left; + pageY -= rect.top; + + var w = this.canvas.width; + var h = this.canvas.height; + pageX /= (rect.right-rect.left)/w; + pageY /= (rect.bottom-rect.top)/h; + var o = this._getPointerData(id); + if (o.inBounds = (pageX >= 0 && pageY >= 0 && pageX <= w-1 && pageY <= h-1)) { + o.x = pageX; + o.y = pageY; + } else if (this.mouseMoveOutside) { + o.x = pageX < 0 ? 0 : (pageX > w-1 ? w-1 : pageX); + o.y = pageY < 0 ? 0 : (pageY > h-1 ? h-1 : pageY); + } + + o.posEvtObj = e; + o.rawX = pageX; + o.rawY = pageY; + + if (id === this._primaryPointerID || id === -1) { + this.mouseX = o.x; + this.mouseY = o.y; + this.mouseInBounds = o.inBounds; + } + }; + + /** + * @method _handleMouseUp + * @protected + * @param {MouseEvent} e + **/ + p._handleMouseUp = function(e) { + this._handlePointerUp(-1, e, false); + }; + + /** + * @method _handlePointerUp + * @protected + * @param {Number} id + * @param {Event} e + * @param {Boolean} clear + * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. + **/ + p._handlePointerUp = function(id, e, clear, owner) { + var nextStage = this._nextStage, o = this._getPointerData(id); + if (this._prevStage && owner === undefined) { return; } // redundant listener. + + var target=null, oTarget = o.target; + if (!owner && (oTarget || nextStage)) { target = this._getObjectsUnderPoint(o.x, o.y, null, true); } + + if (o.down) { this._dispatchMouseEvent(this, "stagemouseup", false, id, o, e, target); o.down = false; } + + if (target == oTarget) { this._dispatchMouseEvent(oTarget, "click", true, id, o, e); } + this._dispatchMouseEvent(oTarget, "pressup", true, id, o, e); + + if (clear) { + if (id==this._primaryPointerID) { this._primaryPointerID = null; } + delete(this._pointerData[id]); + } else { o.target = null; } + + nextStage&&nextStage._handlePointerUp(id, e, clear, owner || target && this); + }; + + /** + * @method _handleMouseDown + * @protected + * @param {MouseEvent} e + **/ + p._handleMouseDown = function(e) { + this._handlePointerDown(-1, e, e.pageX, e.pageY); + }; + + /** + * @method _handlePointerDown + * @protected + * @param {Number} id + * @param {Event} e + * @param {Number} pageX + * @param {Number} pageY + * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. + **/ + p._handlePointerDown = function(id, e, pageX, pageY, owner) { + if (this.preventSelection) { e.preventDefault(); } + if (this._primaryPointerID == null || id === -1) { this._primaryPointerID = id; } // mouse always takes over. + + if (pageY != null) { this._updatePointerPosition(id, e, pageX, pageY); } + var target = null, nextStage = this._nextStage, o = this._getPointerData(id); + if (!owner) { target = o.target = this._getObjectsUnderPoint(o.x, o.y, null, true); } + + if (o.inBounds) { this._dispatchMouseEvent(this, "stagemousedown", false, id, o, e, target); o.down = true; } + this._dispatchMouseEvent(target, "mousedown", true, id, o, e); + + nextStage&&nextStage._handlePointerDown(id, e, pageX, pageY, owner || target && this); + }; + + /** + * @method _testMouseOver + * @param {Boolean} clear If true, clears the mouseover / rollover (ie. no target) + * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. + * @param {Stage} eventTarget The stage that the cursor is actively over. + * @protected + **/ + p._testMouseOver = function(clear, owner, eventTarget) { + if (this._prevStage && owner === undefined) { return; } // redundant listener. + + var nextStage = this._nextStage; + if (!this._mouseOverIntervalID) { + // not enabled for mouseover, but should still relay the event. + nextStage&&nextStage._testMouseOver(clear, owner, eventTarget); + return; + } + var o = this._getPointerData(-1); + // only update if the mouse position has changed. This provides a lot of optimization, but has some trade-offs. + if (!o || (!clear && this.mouseX == this._mouseOverX && this.mouseY == this._mouseOverY && this.mouseInBounds)) { return; } + + var e = o.posEvtObj; + var isEventTarget = eventTarget || e&&(e.target == this.canvas); + var target=null, common = -1, cursor="", t, i, l; + + if (!owner && (clear || this.mouseInBounds && isEventTarget)) { + target = this._getObjectsUnderPoint(this.mouseX, this.mouseY, null, true); + this._mouseOverX = this.mouseX; + this._mouseOverY = this.mouseY; + } + + var oldList = this._mouseOverTarget||[]; + var oldTarget = oldList[oldList.length-1]; + var list = this._mouseOverTarget = []; + + // generate ancestor list and check for cursor: + t = target; + while (t) { + list.unshift(t); + if (!cursor) { cursor = t.cursor; } + t = t.parent; + } + this.canvas.style.cursor = cursor; + if (!owner && eventTarget) { eventTarget.canvas.style.cursor = cursor; } + + // find common ancestor: + for (i=0,l=list.length; icommon; i--) { + this._dispatchMouseEvent(oldList[i], "rollout", false, -1, o, e, target); + } + + for (i=list.length-1; i>common; i--) { + this._dispatchMouseEvent(list[i], "rollover", false, -1, o, e, oldTarget); + } + + if (oldTarget != target) { + this._dispatchMouseEvent(target, "mouseover", true, -1, o, e, oldTarget); + } + + nextStage&&nextStage._testMouseOver(clear, owner || target && this, eventTarget || isEventTarget && this); + }; + + /** + * @method _handleDoubleClick + * @protected + * @param {MouseEvent} e + * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. + **/ + p._handleDoubleClick = function(e, owner) { + var target=null, nextStage=this._nextStage, o=this._getPointerData(-1); + if (!owner) { + target = this._getObjectsUnderPoint(o.x, o.y, null, true); + this._dispatchMouseEvent(target, "dblclick", true, -1, o, e); + } + nextStage&&nextStage._handleDoubleClick(e, owner || target && this); + }; + + /** + * @method _dispatchMouseEvent + * @protected + * @param {DisplayObject} target + * @param {String} type + * @param {Boolean} bubbles + * @param {Number} pointerId + * @param {Object} o + * @param {MouseEvent} [nativeEvent] + * @param {DisplayObject} [relatedTarget] + **/ + p._dispatchMouseEvent = function(target, type, bubbles, pointerId, o, nativeEvent, relatedTarget) { + // TODO: might be worth either reusing MouseEvent instances, or adding a willTrigger method to avoid GC. + if (!target || (!bubbles && !target.hasEventListener(type))) { return; } + /* + // TODO: account for stage transformations? + this._mtx = this.getConcatenatedMatrix(this._mtx).invert(); + var pt = this._mtx.transformPoint(o.x, o.y); + var evt = new createjs.MouseEvent(type, bubbles, false, pt.x, pt.y, nativeEvent, pointerId, pointerId==this._primaryPointerID || pointerId==-1, o.rawX, o.rawY); + */ + var evt = new createjs.MouseEvent(type, bubbles, false, o.x, o.y, nativeEvent, pointerId, pointerId === this._primaryPointerID || pointerId === -1, o.rawX, o.rawY, relatedTarget); + target.dispatchEvent(evt); + }; + + + createjs.Stage = createjs.promote(Stage, "Container"); }()); //############################################################################## -// DisplayObject.js +// Bitmap.js //############################################################################## this.createjs = this.createjs||{}; (function() { - "use strict"; - - -// constructor: + /** - * DisplayObject is an abstract class that should not be constructed directly. Instead construct subclasses such as - * {{#crossLink "Container"}}{{/crossLink}}, {{#crossLink "Bitmap"}}{{/crossLink}}, and {{#crossLink "Shape"}}{{/crossLink}}. - * DisplayObject is the base class for all display classes in the EaselJS library. It defines the core properties and - * methods that are shared between all display objects, such as transformation properties (x, y, scaleX, scaleY, etc), - * caching, and mouse handlers. - * @class DisplayObject - * @extends EventDispatcher + * A Bitmap represents an Image, Canvas, or Video in the display list. A Bitmap can be instantiated using an existing + * HTML element, or a string. + * + *

      Example

      + * + * var bitmap = new createjs.Bitmap("imagePath.jpg"); + * + * Notes: + *
        + *
      1. When a string path or image tag that is not yet loaded is used, the stage may need to be redrawn before it + * will be displayed.
      2. + *
      3. Bitmaps with an SVG source currently will not respect an alpha value other than 0 or 1. To get around this, + * the Bitmap can be cached.
      4. + *
      5. Bitmaps with an SVG source will taint the canvas with cross-origin data, which prevents interactivity. This + * happens in all browsers except recent Firefox builds.
      6. + *
      7. Images loaded cross-origin will throw cross-origin security errors when interacted with using a mouse, using + * methods such as `getObjectUnderPoint`, or using filters, or caching. You can get around this by setting + * `crossOrigin` flags on your images before passing them to EaselJS, eg: `img.crossOrigin="Anonymous";`
      8. + *
      + * + * @class Bitmap + * @extends DisplayObject * @constructor + * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | String} imageOrUri The source object or URI to an image to + * display. This can be either an Image, Canvas, or Video object, or a string URI to an image file to load and use. + * If it is a URI, a new Image object will be constructed and assigned to the .image property. **/ - function DisplayObject() { - this.EventDispatcher_constructor(); + function Bitmap(imageOrUri) { + this.DisplayObject_constructor(); // public properties: /** - * The alpha (transparency) for this display object. 0 is fully transparent, 1 is fully opaque. - * @property alpha - * @type {Number} - * @default 1 - **/ - this.alpha = 1; - - /** - * If a cache is active, this returns the canvas that holds the cached version of this display object. See {{#crossLink "cache"}}{{/crossLink}} - * for more information. - * @property cacheCanvas - * @type {HTMLCanvasElement | Object} - * @default null - * @readonly - **/ - this.cacheCanvas = null; - - /** - * Returns an ID number that uniquely identifies the current cache for this display object. This can be used to - * determine if the cache has changed since a previous check. - * @property cacheID - * @type {Number} - * @default 0 - */ - this.cacheID = 0; - - /** - * Unique ID for this display object. Makes display objects easier for some uses. - * @property id - * @type {Number} - * @default -1 - **/ - this.id = createjs.UID.get(); - - /** - * Indicates whether to include this object when running mouse interactions. Setting this to `false` for children - * of a {{#crossLink "Container"}}{{/crossLink}} will cause events on the Container to not fire when that child is - * clicked. Setting this property to `false` does not prevent the {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}} - * method from returning the child. - * - * Note: In EaselJS 0.7.0, the mouseEnabled property will not work properly with nested Containers. Please - * check out the latest NEXT version in GitHub for an updated version with this issue resolved. The fix will be - * provided in the next release of EaselJS. - * @property mouseEnabled - * @type {Boolean} - * @default true - **/ - this.mouseEnabled = true; - - /** - * If false, the tick will not run on this display object (or its children). This can provide some performance benefits. - * In addition to preventing the "tick" event from being dispatched, it will also prevent tick related updates - * on some display objects (ex. Sprite & MovieClip frame advancing, DOMElement visibility handling). - * @property tickEnabled - * @type Boolean - * @default true - **/ - this.tickEnabled = true; - - /** - * An optional name for this display object. Included in {{#crossLink "DisplayObject/toString"}}{{/crossLink}} . Useful for - * debugging. - * @property name - * @type {String} - * @default null - **/ - this.name = null; - - /** - * A reference to the {{#crossLink "Container"}}{{/crossLink}} or {{#crossLink "Stage"}}{{/crossLink}} object that - * contains this display object, or null if it has not been added - * to one. - * @property parent - * @final - * @type {Container} - * @default null - * @readonly - **/ - this.parent = null; - - /** - * The left offset for this display object's registration point. For example, to make a 100x100px Bitmap rotate - * around its center, you would set regX and {{#crossLink "DisplayObject/regY:property"}}{{/crossLink}} to 50. - * @property regX - * @type {Number} - * @default 0 - **/ - this.regX = 0; - - /** - * The y offset for this display object's registration point. For example, to make a 100x100px Bitmap rotate around - * its center, you would set {{#crossLink "DisplayObject/regX:property"}}{{/crossLink}} and regY to 50. - * @property regY - * @type {Number} - * @default 0 - **/ - this.regY = 0; - - /** - * The rotation in degrees for this display object. - * @property rotation - * @type {Number} - * @default 0 - **/ - this.rotation = 0; - - /** - * The factor to stretch this display object horizontally. For example, setting scaleX to 2 will stretch the display - * object to twice its nominal width. To horizontally flip an object, set the scale to a negative number. - * @property scaleX - * @type {Number} - * @default 1 + * The image to render. This can be an Image, a Canvas, or a Video. Not all browsers (especially + * mobile browsers) support drawing video to a canvas. + * @property image + * @type HTMLImageElement | HTMLCanvasElement | HTMLVideoElement **/ - this.scaleX = 1; + if (typeof imageOrUri == "string") { + this.image = document.createElement("img"); + this.image.src = imageOrUri; + } else { + this.image = imageOrUri; + } /** - * The factor to stretch this display object vertically. For example, setting scaleY to 0.5 will stretch the display - * object to half its nominal height. To vertically flip an object, set the scale to a negative number. - * @property scaleY - * @type {Number} - * @default 1 - **/ - this.scaleY = 1; + * Specifies an area of the source image to draw. If omitted, the whole image will be drawn. + * Note that video sources must have a width / height set to work correctly with `sourceRect`. + * @property sourceRect + * @type Rectangle + * @default null + */ + this.sourceRect = null; + } + var p = createjs.extend(Bitmap, createjs.DisplayObject); - /** - * The factor to skew this display object horizontally. - * @property skewX - * @type {Number} - * @default 0 - **/ - this.skewX = 0; - /** - * The factor to skew this display object vertically. - * @property skewY - * @type {Number} - * @default 0 - **/ - this.skewY = 0; +// public methods: + /** + * Constructor alias for backwards compatibility. This method will be removed in future versions. + * Subclasses should be updated to use {{#crossLink "Utility Methods/extends"}}{{/crossLink}}. + * @method initialize + * @deprecated in favour of `createjs.promote()` + **/ + p.initialize = Bitmap; // TODO: deprecated. + + /** + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas + **/ + p.isVisible = function() { + var image = this.image; + var hasContent = this.cacheCanvas || (image && (image.naturalWidth || image.getContext || image.readyState >= 2)); + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); + }; + + /** + * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. + * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back + * into itself). + * @return {Boolean} + **/ + p.draw = function(ctx, ignoreCache) { + if (this.DisplayObject_draw(ctx, ignoreCache) || !this.image) { return true; } + var img = this.image, rect = this.sourceRect; + if (rect) { + // some browsers choke on out of bound values, so we'll fix them: + var x1 = rect.x, y1 = rect.y, x2 = x1 + rect.width, y2 = y1 + rect.height, x = 0, y = 0, w = img.width, h = img.height; + if (x1 < 0) { x -= x1; x1 = 0; } + if (x2 > w) { x2 = w; } + if (y1 < 0) { y -= y1; y1 = 0; } + if (y2 > h) { y2 = h; } + ctx.drawImage(img, x1, y1, x2-x1, y2-y1, x, y, x2-x1, y2-y1); + } else { + ctx.drawImage(img, 0, 0); + } + return true; + }; - /** - * A shadow object that defines the shadow to render on this display object. Set to `null` to remove a shadow. If - * null, this property is inherited from the parent container. - * @property shadow - * @type {Shadow} - * @default null - **/ - this.shadow = null; + //Note, the doc sections below document using the specified APIs (from DisplayObject) from + //Bitmap. This is why they have no method implementations. - /** - * Indicates whether this display object should be rendered to the canvas and included when running the Stage - * {{#crossLink "Stage/getObjectsUnderPoint"}}{{/crossLink}} method. - * @property visible - * @type {Boolean} - * @default true - **/ - this.visible = true; + /** + * Because the content of a Bitmap is already in a simple format, cache is unnecessary for Bitmap instances. + * You should not cache Bitmap instances as it can degrade performance. + * + * However: If you want to use a filter on a Bitmap, you MUST cache it, or it will not work. + * To see the API for caching, please visit the DisplayObject {{#crossLink "DisplayObject/cache"}}{{/crossLink}} + * method. + * @method cache + **/ + + /** + * Because the content of a Bitmap is already in a simple format, cache is unnecessary for Bitmap instances. + * You should not cache Bitmap instances as it can degrade performance. + * + * However: If you want to use a filter on a Bitmap, you MUST cache it, or it will not work. + * To see the API for caching, please visit the DisplayObject {{#crossLink "DisplayObject/cache"}}{{/crossLink}} + * method. + * @method updateCache + **/ + + /** + * Because the content of a Bitmap is already in a simple format, cache is unnecessary for Bitmap instances. + * You should not cache Bitmap instances as it can degrade performance. + * + * However: If you want to use a filter on a Bitmap, you MUST cache it, or it will not work. + * To see the API for caching, please visit the DisplayObject {{#crossLink "DisplayObject/cache"}}{{/crossLink}} + * method. + * @method uncache + **/ + + /** + * Docced in superclass. + */ + p.getBounds = function() { + var rect = this.DisplayObject_getBounds(); + if (rect) { return rect; } + var image = this.image, o = this.sourceRect || image; + var hasContent = (image && (image.naturalWidth || image.getContext || image.readyState >= 2)); + return hasContent ? this._rectangle.setValues(0, 0, o.width, o.height) : null; + }; + + /** + * Returns a clone of the Bitmap instance. + * @method clone + * @return {Bitmap} a clone of the Bitmap instance. + **/ + p.clone = function() { + var o = new Bitmap(this.image); + if (this.sourceRect) { o.sourceRect = this.sourceRect.clone(); } + this._cloneProps(o); + return o; + }; + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Bitmap (name="+ this.name +")]"; + }; + + + createjs.Bitmap = createjs.promote(Bitmap, "DisplayObject"); +}()); + +//############################################################################## +// Sprite.js +//############################################################################## + +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Displays a frame or sequence of frames (ie. an animation) from a SpriteSheet instance. A sprite sheet is a series of + * images (usually animation frames) combined into a single image. For example, an animation consisting of 8 100x100 + * images could be combined into a 400x200 sprite sheet (4 frames across by 2 high). You can display individual frames, + * play frames as an animation, and even sequence animations together. + * + * See the {{#crossLink "SpriteSheet"}}{{/crossLink}} class for more information on setting up frames and animations. + * + *

      Example

      + * + * var instance = new createjs.Sprite(spriteSheet); + * instance.gotoAndStop("frameName"); + * + * Until {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} or {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}} is called, + * only the first defined frame defined in the sprite sheet will be displayed. + * + * @class Sprite + * @extends DisplayObject + * @constructor + * @param {SpriteSheet} spriteSheet The SpriteSheet instance to play back. This includes the source image(s), frame + * dimensions, and frame data. See {{#crossLink "SpriteSheet"}}{{/crossLink}} for more information. + * @param {String|Number} [frameOrAnimation] The frame number or animation to play initially. + **/ + function Sprite(spriteSheet, frameOrAnimation) { + this.DisplayObject_constructor(); + + + // public properties: /** - * The x (horizontal) position of the display object, relative to its parent. - * @property x + * The frame index that will be drawn when draw is called. Note that with some {{#crossLink "SpriteSheet"}}{{/crossLink}} + * definitions, this will advance non-sequentially. This will always be an integer value. + * @property currentFrame * @type {Number} * @default 0 + * @readonly **/ - this.x = 0; + this.currentFrame = 0; - /** The y (vertical) position of the display object, relative to its parent. - * @property y - * @type {Number} - * @default 0 - **/ - this.y = 0; - - /** - * If set, defines the transformation for this display object, overriding all other transformation properties - * (x, y, rotation, scale, skew). - * @property transformMatrix - * @type {Matrix2D} - * @default null - **/ - this.transformMatrix = null; - /** - * The composite operation indicates how the pixels of this display object will be composited with the elements - * behind it. If `null`, this property is inherited from the parent container. For more information, read the - * - * whatwg spec on compositing. - * @property compositeOperation + * Returns the name of the currently playing animation. + * @property currentAnimation * @type {String} - * @default null + * @final + * @readonly **/ - this.compositeOperation = null; + this.currentAnimation = null; /** - * Indicates whether the display object should be drawn to a whole pixel when - * {{#crossLink "Stage/snapToPixelEnabled"}}{{/crossLink}} is true. To enable/disable snapping on whole - * categories of display objects, set this value on the prototype (Ex. Text.prototype.snapToPixel = true). - * @property snapToPixel + * Prevents the animation from advancing each tick automatically. For example, you could create a sprite + * sheet of icons, set paused to true, and display the appropriate icon by setting currentFrame. + * @property paused * @type {Boolean} - * @default true + * @default false **/ - this.snapToPixel = true; + this.paused = true; /** - * An array of Filter objects to apply to this display object. Filters are only applied / updated when {{#crossLink "cache"}}{{/crossLink}} - * or {{#crossLink "updateCache"}}{{/crossLink}} is called on the display object, and only apply to the area that is - * cached. - * @property filters - * @type {Array} - * @default null + * The SpriteSheet instance to play back. This includes the source image, frame dimensions, and frame + * data. See {{#crossLink "SpriteSheet"}}{{/crossLink}} for more information. + * @property spriteSheet + * @type {SpriteSheet} + * @readonly **/ - this.filters = null; - - /** - * A Shape instance that defines a vector mask (clipping path) for this display object. The shape's transformation - * will be applied relative to the display object's parent coordinates (as if it were a child of the parent). - * @property mask - * @type {Shape} - * @default null - */ - this.mask = null; - - /** - * A display object that will be tested when checking mouse interactions or testing {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}}. - * The hit area will have its transformation applied relative to this display object's coordinate space (as though - * the hit test object were a child of this display object and relative to its regX/Y). The hitArea will be tested - * using only its own `alpha` value regardless of the alpha value on the target display object, or the target's - * ancestors (parents). - * - * If set on a {{#crossLink "Container"}}{{/crossLink}}, children of the Container will not receive mouse events. - * This is similar to setting {{#crossLink "mouseChildren"}}{{/crossLink}} to false. - * - * Note that hitArea is NOT currently used by the `hitTest()` method, nor is it supported for {{#crossLink "Stage"}}{{/crossLink}}. - * @property hitArea - * @type {DisplayObject} - * @default null - */ - this.hitArea = null; - - /** - * A CSS cursor (ex. "pointer", "help", "text", etc) that will be displayed when the user hovers over this display - * object. You must enable mouseover events using the {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}} method to - * use this property. Setting a non-null cursor on a Container will override the cursor set on its descendants. - * @property cursor - * @type {String} - * @default null - */ - this.cursor = null; + this.spriteSheet = spriteSheet; - - // private properties: /** - * @property _cacheOffsetX - * @protected + * Specifies the current frame index within the currently playing animation. When playing normally, this will increase + * from 0 to n-1, where n is the number of frames in the current animation. + * + * This could be a non-integer value if + * using time-based playback (see {{#crossLink "Sprite/framerate"}}{{/crossLink}}, or if the animation's speed is + * not an integer. + * @property currentAnimationFrame * @type {Number} * @default 0 **/ - this._cacheOffsetX = 0; + this.currentAnimationFrame = 0; /** - * @property _cacheOffsetY - * @protected - * @type {Number} - * @default 0 - **/ - this._cacheOffsetY = 0; - - /** - * @property _filterOffsetX - * @protected - * @type {Number} - * @default 0 - **/ - this._filterOffsetX = 0; - - /** - * @property _filterOffsetY - * @protected - * @type {Number} - * @default 0 - **/ - this._filterOffsetY = 0; - - /** - * @property _cacheScale - * @protected + * By default Sprite instances advance one frame per tick. Specifying a framerate for the Sprite (or its related + * SpriteSheet) will cause it to advance based on elapsed time between ticks as appropriate to maintain the target + * framerate. + * + * For example, if a Sprite with a framerate of 10 is placed on a Stage being updated at 40fps, then the Sprite will + * advance roughly one frame every 4 ticks. This will not be exact, because the time between each tick will + * vary slightly between frames. + * + * This feature is dependent on the tick event object (or an object with an appropriate "delta" property) being + * passed into {{#crossLink "Stage/update"}}{{/crossLink}}. + * @property framerate * @type {Number} - * @default 1 + * @default 0 **/ - this._cacheScale = 1; + this.framerate = 0; - /** - * @property _cacheDataURLID - * @protected - * @type {Number} - * @default 0 - */ - this._cacheDataURLID = 0; - - /** - * @property _cacheDataURL - * @protected - * @type {String} - * @default null - */ - this._cacheDataURL = null; + // private properties: /** - * @property _props + * Current animation object. + * @property _animation * @protected - * @type {DisplayObject} + * @type {Object} * @default null **/ - this._props = new createjs.DisplayProps(); + this._animation = null; /** - * @property _rectangle + * Current frame index. + * @property _currentFrame * @protected - * @type {Rectangle} + * @type {Number} * @default null **/ - this._rectangle = new createjs.Rectangle(); - + this._currentFrame = null; + /** - * @property _bounds + * Skips the next auto advance. Used by gotoAndPlay to avoid immediately jumping to the next frame + * @property _skipAdvance * @protected - * @type {Rectangle} - * @default null + * @type {Boolean} + * @default false **/ - this._bounds = null; - } - var p = createjs.extend(DisplayObject, createjs.EventDispatcher); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - -// static properties: - /** - * Listing of mouse event names. Used in _hasMouseEventListener. - * @property _MOUSE_EVENTS - * @protected - * @static - * @type {Array} - **/ - DisplayObject._MOUSE_EVENTS = ["click","dblclick","mousedown","mouseout","mouseover","pressmove","pressup","rollout","rollover"]; - - /** - * Suppresses errors generated when using features like hitTest, mouse events, and {{#crossLink "getObjectsUnderPoint"}}{{/crossLink}} - * with cross domain content. - * @property suppressCrossDomainErrors - * @static - * @type {Boolean} - * @default false - **/ - DisplayObject.suppressCrossDomainErrors = false; - - /** - * @property _snapToPixelEnabled - * @protected - * @static - * @type {Boolean} - * @default false - **/ - DisplayObject._snapToPixelEnabled = false; // stage.snapToPixelEnabled is temporarily copied here during a draw to provide global access. - - /** - * @property _hitTestCanvas - * @type {HTMLCanvasElement | Object} - * @static - * @protected - **/ - /** - * @property _hitTestContext - * @type {CanvasRenderingContext2D} - * @static - * @protected - **/ - var canvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); // prevent errors on load in browsers without canvas. - if (canvas.getContext) { - DisplayObject._hitTestCanvas = canvas; - DisplayObject._hitTestContext = canvas.getContext("2d"); - canvas.width = canvas.height = 1; + this._skipAdvance = false; + + + if (frameOrAnimation != null) { this.gotoAndPlay(frameOrAnimation); } } + var p = createjs.extend(Sprite, createjs.DisplayObject); /** - * @property _nextCacheID - * @type {Number} - * @static - * @protected + * Constructor alias for backwards compatibility. This method will be removed in future versions. + * Subclasses should be updated to use {{#crossLink "Utility Methods/extends"}}{{/crossLink}}. + * @method initialize + * @deprecated in favour of `createjs.promote()` **/ - DisplayObject._nextCacheID = 1; + p.initialize = Sprite; // TODO: Deprecated. This is for backwards support of FlashCC spritesheet export. // events: /** - * Dispatched when the user presses their left mouse button over the display object. See the - * {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event mousedown - * @since 0.6.0 - */ - - /** - * Dispatched when the user presses their left mouse button and then releases it while over the display object. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event click - * @since 0.6.0 - */ - - /** - * Dispatched when the user double clicks their left mouse button over this display object. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event dblclick + * Dispatched when an animation reaches its ends. + * @event animationend + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. + * @param {String} name The name of the animation that just ended. + * @param {String} next The name of the next animation that will be played, or null. This will be the same as name if the animation is looping. * @since 0.6.0 */ /** - * Dispatched when the user's mouse enters this display object. This event must be enabled using - * {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. See also {{#crossLink "DisplayObject/rollover:event"}}{{/crossLink}}. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event mouseover - * @since 0.6.0 + * Dispatched any time the current frame changes. For example, this could be due to automatic advancement on a tick, + * or calling gotoAndPlay() or gotoAndStop(). + * @event change + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. */ + +// public methods: /** - * Dispatched when the user's mouse leaves this display object. This event must be enabled using - * {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. See also {{#crossLink "DisplayObject/rollout:event"}}{{/crossLink}}. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event mouseout - * @since 0.6.0 - */ - - /** - * This event is similar to {{#crossLink "DisplayObject/mouseover:event"}}{{/crossLink}}, with the following - * differences: it does not bubble, and it considers {{#crossLink "Container"}}{{/crossLink}} instances as an - * aggregate of their content. - * - * For example, myContainer contains two overlapping children: shapeA and shapeB. The user moves their mouse over - * shapeA and then directly on to shapeB. With a listener for {{#crossLink "mouseover:event"}}{{/crossLink}} on - * myContainer, two events would be received, each targeting a child element:
        - *
      1. when the mouse enters shapeA (target=shapeA)
      2. - *
      3. when the mouse enters shapeB (target=shapeB)
      4. - *
      - * However, with a listener for "rollover" instead, only a single event is received when the mouse first enters - * the aggregate myContainer content (target=myContainer). - * - * This event must be enabled using {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event rollover - * @since 0.7.0 - */ - - /** - * This event is similar to {{#crossLink "DisplayObject/mouseout:event"}}{{/crossLink}}, with the following - * differences: it does not bubble, and it considers {{#crossLink "Container"}}{{/crossLink}} instances as an - * aggregate of their content. - * - * For example, myContainer contains two overlapping children: shapeA and shapeB. The user moves their mouse over - * shapeA, then directly on to shapeB, then off both. With a listener for {{#crossLink "mouseout:event"}}{{/crossLink}} - * on myContainer, two events would be received, each targeting a child element:
        - *
      1. when the mouse leaves shapeA (target=shapeA)
      2. - *
      3. when the mouse leaves shapeB (target=shapeB)
      4. - *
      - * However, with a listener for "rollout" instead, only a single event is received when the mouse leaves - * the aggregate myContainer content (target=myContainer). - * - * This event must be enabled using {{#crossLink "Stage/enableMouseOver"}}{{/crossLink}}. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event rollout - * @since 0.7.0 - */ - - /** - * After a {{#crossLink "DisplayObject/mousedown:event"}}{{/crossLink}} occurs on a display object, a pressmove - * event will be generated on that object whenever the mouse moves until the mouse press is released. This can be - * useful for dragging and similar operations. - * @event pressmove - * @since 0.7.0 - */ - - /** - * After a {{#crossLink "DisplayObject/mousedown:event"}}{{/crossLink}} occurs on a display object, a pressup event - * will be generated on that object when that mouse press is released. This can be useful for dragging and similar - * operations. - * @event pressup - * @since 0.7.0 - */ - + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas + **/ + p.isVisible = function() { + var hasContent = this.cacheCanvas || this.spriteSheet.complete; + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); + }; + /** - * Dispatched when the display object is added to a parent container. - * @event added - */ - + * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. + * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back + * into itself). + **/ + p.draw = function(ctx, ignoreCache) { + if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } + this._normalizeFrame(); + var o = this.spriteSheet.getFrame(this._currentFrame|0); + if (!o) { return false; } + var rect = o.rect; + if (rect.width && rect.height) { ctx.drawImage(o.image, rect.x, rect.y, rect.width, rect.height, -o.regX, -o.regY, rect.width, rect.height); } + return true; + }; + + //Note, the doc sections below document using the specified APIs (from DisplayObject) from + //Bitmap. This is why they have no method implementations. + /** - * Dispatched when the display object is removed from its parent container. - * @event removed - */ - + * Because the content of a Sprite is already in a raster format, cache is unnecessary for Sprite instances. + * You should not cache Sprite instances as it can degrade performance. + * @method cache + **/ + /** - * Dispatched on each display object on a stage whenever the stage updates. This occurs immediately before the - * rendering (draw) pass. When {{#crossLink "Stage/update"}}{{/crossLink}} is called, first all display objects on - * the stage dispatch the tick event, then all of the display objects are drawn to stage. Children will have their - * {{#crossLink "tick:event"}}{{/crossLink}} event dispatched in order of their depth prior to the event being - * dispatched on their parent. - * @event tick - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - * @param {Array} params An array containing any arguments that were passed to the Stage.update() method. For - * example if you called stage.update("hello"), then the params would be ["hello"]. - * @since 0.6.0 - */ - - -// getter / setters: + * Because the content of a Sprite is already in a raster format, cache is unnecessary for Sprite instances. + * You should not cache Sprite instances as it can degrade performance. + * @method updateCache + **/ + /** - * Use the {{#crossLink "DisplayObject/stage:property"}}{{/crossLink}} property instead. - * @method getStage - * @return {Stage} - * @deprecated + * Because the content of a Sprite is already in a raster format, cache is unnecessary for Sprite instances. + * You should not cache Sprite instances as it can degrade performance. + * @method uncache **/ - p.getStage = function() { - // uses dynamic access to avoid circular dependencies; - var o = this, _Stage = createjs["Stage"]; - while (o.parent) { o = o.parent; } - if (o instanceof _Stage) { return o; } - return null; + + /** + * Play (unpause) the current animation. The Sprite will be paused if either {{#crossLink "Sprite/stop"}}{{/crossLink}} + * or {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} is called. Single frame animations will remain + * unchanged. + * @method play + **/ + p.play = function() { + this.paused = false; }; /** - * Returns the Stage instance that this display object will be rendered on, or null if it has not been added to one. - * @property stage - * @type {Stage} - * @readonly + * Stop playing a running animation. The Sprite will be playing if {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}} + * is called. Note that calling {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}} or {{#crossLink "Sprite/play"}}{{/crossLink}} + * will resume playback. + * @method stop **/ - try { - Object.defineProperties(p, { - stage: { get: p.getStage } - }); - } catch (e) {} + p.stop = function() { + this.paused = true; + }; + /** + * Sets paused to false and plays the specified animation name, named frame, or frame number. + * @method gotoAndPlay + * @param {String|Number} frameOrAnimation The frame number or animation name that the playhead should move to + * and begin playing. + **/ + p.gotoAndPlay = function(frameOrAnimation) { + this.paused = false; + this._skipAdvance = true; + this._goto(frameOrAnimation); + }; -// public methods: /** - * Returns true or false indicating whether the display object would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas + * Sets paused to true and seeks to the specified animation name, named frame, or frame number. + * @method gotoAndStop + * @param {String|Number} frameOrAnimation The frame number or animation name that the playhead should move to + * and stop. **/ - p.isVisible = function() { - return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0); + p.gotoAndStop = function(frameOrAnimation) { + this.paused = true; + this._goto(frameOrAnimation); }; /** - * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. - * Returns true if the draw was handled (useful for overriding functionality). + * Advances the playhead. This occurs automatically each tick by default. + * @param [time] {Number} The amount of time in ms to advance by. Only applicable if framerate is set on the Sprite + * or its SpriteSheet. + * @method advance + */ + p.advance = function(time) { + var fps = this.framerate || this.spriteSheet.framerate; + var t = (fps && time != null) ? time/(1000/fps) : 1; + this._normalizeFrame(t); + }; + + /** + * Returns a {{#crossLink "Rectangle"}}{{/crossLink}} instance defining the bounds of the current frame relative to + * the origin. For example, a 90 x 70 frame with regX=50 and regY=40 would return a + * rectangle with [x=-50, y=-40, width=90, height=70]. This ignores transformations on the display object. * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. For example, - * used for drawing the cache (to prevent it from simply drawing an existing cache back into itself). - * @return {Boolean} + * Also see the SpriteSheet {{#crossLink "SpriteSheet/getFrameBounds"}}{{/crossLink}} method. + * @method getBounds + * @return {Rectangle} A Rectangle instance. Returns null if the frame does not exist, or the image is not fully + * loaded. **/ - p.draw = function(ctx, ignoreCache) { - var cacheCanvas = this.cacheCanvas; - if (ignoreCache || !cacheCanvas) { return false; } - var scale = this._cacheScale; - ctx.drawImage(cacheCanvas, this._cacheOffsetX+this._filterOffsetX, this._cacheOffsetY+this._filterOffsetY, cacheCanvas.width/scale, cacheCanvas.height/scale); - return true; + p.getBounds = function() { + // TODO: should this normalizeFrame? + return this.DisplayObject_getBounds() || this.spriteSheet.getFrameBounds(this.currentFrame, this._rectangle); }; - + /** - * Applies this display object's transformation, alpha, globalCompositeOperation, clipping path (mask), and shadow - * to the specified context. This is typically called prior to {{#crossLink "DisplayObject/draw"}}{{/crossLink}}. - * @method updateContext - * @param {CanvasRenderingContext2D} ctx The canvas 2D to update. + * Returns a clone of the Sprite instance. Note that the same SpriteSheet is shared between cloned + * instances. + * @method clone + * @return {Sprite} a clone of the Sprite instance. **/ - p.updateContext = function(ctx) { - var o=this, mask=o.mask, mtx= o._props.matrix; - - if (mask && mask.graphics && !mask.graphics.isEmpty()) { - mask.getMatrix(mtx); - ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx, mtx.ty); - - mask.graphics.drawAsPath(ctx); - ctx.clip(); - - mtx.invert(); - ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx, mtx.ty); - } - - this.getMatrix(mtx); - var tx = mtx.tx, ty = mtx.ty; - if (DisplayObject._snapToPixelEnabled && o.snapToPixel) { - tx = tx + (tx < 0 ? -0.5 : 0.5) | 0; - ty = ty + (ty < 0 ? -0.5 : 0.5) | 0; - } - ctx.transform(mtx.a, mtx.b, mtx.c, mtx.d, tx, ty); - ctx.globalAlpha *= o.alpha; - if (o.compositeOperation) { ctx.globalCompositeOperation = o.compositeOperation; } - if (o.shadow) { this._applyShadow(ctx, o.shadow); } + p.clone = function() { + return this._cloneProps(new Sprite(this.spriteSheet)); }; /** - * Draws the display object into a new canvas, which is then used for subsequent draws. For complex content - * that does not change frequently (ex. a Container with many children that do not move, or a complex vector Shape), - * this can provide for much faster rendering because the content does not need to be re-rendered each tick. The - * cached display object can be moved, rotated, faded, etc freely, however if its content changes, you must - * manually update the cache by calling updateCache() or cache() again. You must specify - * the cache area via the x, y, w, and h parameters. This defines the rectangle that will be rendered and cached - * using this display object's coordinates. - * - *

      Example

      - * For example if you defined a Shape that drew a circle at 0, 0 with a radius of 25: - * - * var shape = new createjs.Shape(); - * shape.graphics.beginFill("#ff0000").drawCircle(0, 0, 25); - * myShape.cache(-25, -25, 50, 50); - * - * Note that filters need to be defined before the cache is applied. Check out the {{#crossLink "Filter"}}{{/crossLink}} - * class for more information. Some filters (ex. BlurFilter) will not work as expected in conjunction with the scale param. - * - * Usually, the resulting cacheCanvas will have the dimensions width*scale by height*scale, however some filters (ex. BlurFilter) - * will add padding to the canvas dimensions. - * - * @method cache - * @param {Number} x The x coordinate origin for the cache region. - * @param {Number} y The y coordinate origin for the cache region. - * @param {Number} width The width of the cache region. - * @param {Number} height The height of the cache region. - * @param {Number} [scale=1] The scale at which the cache will be created. For example, if you cache a vector shape using - * myShape.cache(0,0,100,100,2) then the resulting cacheCanvas will be 200x200 px. This lets you scale and rotate - * cached elements with greater fidelity. Default is 1. + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. **/ - p.cache = function(x, y, width, height, scale) { - // draw to canvas. - scale = scale||1; - if (!this.cacheCanvas) { this.cacheCanvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); } - this._cacheWidth = width; - this._cacheHeight = height; - this._cacheOffsetX = x; - this._cacheOffsetY = y; - this._cacheScale = scale; - this.updateCache(); + p.toString = function() { + return "[Sprite (name="+ this.name +")]"; }; +// private methods: /** - * Redraws the display object to its cache. Calling updateCache without an active cache will throw an error. - * If compositeOperation is null the current cache will be cleared prior to drawing. Otherwise the display object - * will be drawn over the existing cache using the specified compositeOperation. - * - *

      Example

      - * Clear the current graphics of a cached shape, draw some new instructions, and then update the cache. The new line - * will be drawn on top of the old one. - * - * // Not shown: Creating the shape, and caching it. - * shapeInstance.clear(); - * shapeInstance.setStrokeStyle(3).beginStroke("#ff0000").moveTo(100, 100).lineTo(200,200); - * shapeInstance.updateCache(); - * - * @method updateCache - * @param {String} compositeOperation The compositeOperation to use, or null to clear the cache and redraw it. - * - * whatwg spec on compositing. + * @method _cloneProps + * @param {Sprite} o + * @return {Sprite} o + * @protected **/ - p.updateCache = function(compositeOperation) { - var cacheCanvas = this.cacheCanvas; - if (!cacheCanvas) { throw "cache() must be called before updateCache()"; } - var scale = this._cacheScale, offX = this._cacheOffsetX*scale, offY = this._cacheOffsetY*scale; - var w = this._cacheWidth, h = this._cacheHeight, ctx = cacheCanvas.getContext("2d"); - - var fBounds = this._getFilterBounds(); - offX += (this._filterOffsetX = fBounds.x); - offY += (this._filterOffsetY = fBounds.y); + p._cloneProps = function(o) { + this.DisplayObject__cloneProps(o); + o.currentFrame = this.currentFrame; + o.currentAnimation = this.currentAnimation; + o.paused = this.paused; + o.currentAnimationFrame = this.currentAnimationFrame; + o.framerate = this.framerate; - w = Math.ceil(w*scale) + fBounds.width; - h = Math.ceil(h*scale) + fBounds.height; - if (w != cacheCanvas.width || h != cacheCanvas.height) { - // TODO: it would be nice to preserve the content if there is a compositeOperation. - cacheCanvas.width = w; - cacheCanvas.height = h; - } else if (!compositeOperation) { - ctx.clearRect(0, 0, w+1, h+1); + o._animation = this._animation; + o._currentFrame = this._currentFrame; + o._skipAdvance = this._skipAdvance; + return o; + }; + + /** + * Advances the currentFrame if paused is not true. This is called automatically when the {{#crossLink "Stage"}}{{/crossLink}} + * ticks. + * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. + * @protected + * @method _tick + **/ + p._tick = function(evtObj) { + if (!this.paused) { + if (!this._skipAdvance) { this.advance(evtObj&&evtObj.delta); } + this._skipAdvance = false; } + this.DisplayObject__tick(evtObj); + }; + + + /** + * Normalizes the current frame, advancing animations and dispatching callbacks as appropriate. + * @protected + * @method _normalizeFrame + **/ + p._normalizeFrame = function(frameDelta) { + frameDelta = frameDelta || 0; + var animation = this._animation; + var paused = this.paused; + var frame = this._currentFrame; + var l; - ctx.save(); - ctx.globalCompositeOperation = compositeOperation; - ctx.setTransform(scale, 0, 0, scale, -offX, -offY); - this.draw(ctx, true); - // TODO: filters and cache scale don't play well together at present. - this._applyFilters(); - ctx.restore(); - this.cacheID = DisplayObject._nextCacheID++; + if (animation) { + var speed = animation.speed || 1; + var animFrame = this.currentAnimationFrame; + l = animation.frames.length; + if (animFrame + frameDelta * speed >= l) { + var next = animation.next; + if (this._dispatchAnimationEnd(animation, frame, paused, next, l - 1)) { + // something changed in the event stack, so we shouldn't make any more changes here. + return; + } else if (next) { + // sequence. Automatically calls _normalizeFrame again with the remaining frames. + return this._goto(next, frameDelta - (l - animFrame) / speed); + } else { + // end. + this.paused = true; + animFrame = animation.frames.length - 1; + } + } else { + animFrame += frameDelta * speed; + } + this.currentAnimationFrame = animFrame; + this._currentFrame = animation.frames[animFrame | 0] + } else { + frame = (this._currentFrame += frameDelta); + l = this.spriteSheet.getNumFrames(); + if (frame >= l && l > 0) { + if (!this._dispatchAnimationEnd(animation, frame, paused, l - 1)) { + // looped. + if ((this._currentFrame -= l) >= l) { return this._normalizeFrame(); } + } + } + } + frame = this._currentFrame | 0; + if (this.currentFrame != frame) { + this.currentFrame = frame; + this.dispatchEvent("change"); + } }; /** - * Clears the current cache. See {{#crossLink "DisplayObject/cache"}}{{/crossLink}} for more information. - * @method uncache + * Dispatches the "animationend" event. Returns true if a handler changed the animation (ex. calling {{#crossLink "Sprite/stop"}}{{/crossLink}}, + * {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}}, etc.) + * @property _dispatchAnimationEnd + * @private + * @type {Function} **/ - p.uncache = function() { - this._cacheDataURL = this.cacheCanvas = null; - this.cacheID = this._cacheOffsetX = this._cacheOffsetY = this._filterOffsetX = this._filterOffsetY = 0; - this._cacheScale = 1; + p._dispatchAnimationEnd = function(animation, frame, paused, next, end) { + var name = animation ? animation.name : null; + if (this.hasEventListener("animationend")) { + var evt = new createjs.Event("animationend"); + evt.name = name; + evt.next = next; + this.dispatchEvent(evt); + } + // did the animation get changed in the event stack?: + var changed = (this._animation != animation || this._currentFrame != frame); + // if the animation hasn't changed, but the sprite was paused, then we want to stick to the last frame: + if (!changed && !paused && this.paused) { this.currentAnimationFrame = end; changed = true; } + return changed; }; - + /** - * Returns a data URL for the cache, or null if this display object is not cached. - * Uses cacheID to ensure a new data URL is not generated if the cache has not changed. - * @method getCacheDataURL - * @return {String} The image data url for the cache. + * Moves the playhead to the specified frame number or animation. + * @method _goto + * @param {String|Number} frameOrAnimation The frame number or animation that the playhead should move to. + * @param {Boolean} [frame] The frame of the animation to go to. Defaults to 0. + * @protected **/ - p.getCacheDataURL = function() { - if (!this.cacheCanvas) { return null; } - if (this.cacheID != this._cacheDataURLID) { this._cacheDataURL = this.cacheCanvas.toDataURL(); } - return this._cacheDataURL; + p._goto = function(frameOrAnimation, frame) { + this.currentAnimationFrame = 0; + if (isNaN(frameOrAnimation)) { + var data = this.spriteSheet.getAnimation(frameOrAnimation); + if (data) { + this._animation = data; + this.currentAnimation = frameOrAnimation; + this._normalizeFrame(frame); + } + } else { + this.currentAnimation = this._animation = null; + this._currentFrame = frameOrAnimation; + this._normalizeFrame(); + } }; + + createjs.Sprite = createjs.promote(Sprite, "DisplayObject"); +}()); + +//############################################################################## +// Shape.js +//############################################################################## + +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: /** - * Transforms the specified x and y position from the coordinate space of the display object - * to the global (stage) coordinate space. For example, this could be used to position an HTML label - * over a specific point on a nested display object. Returns a Point instance with x and y properties - * correlating to the transformed coordinates on the stage. + * A Shape allows you to display vector art in the display list. It composites a {{#crossLink "Graphics"}}{{/crossLink}} + * instance which exposes all of the vector drawing methods. The Graphics instance can be shared between multiple Shape + * instances to display the same vector graphics with different positions or transforms. + * + * If the vector art will not + * change between draws, you may want to use the {{#crossLink "DisplayObject/cache"}}{{/crossLink}} method to reduce the + * rendering cost. * *

      Example

      * - * displayObject.x = 300; - * displayObject.y = 200; - * stage.addChild(displayObject); - * var point = myDisplayObject.localToGlobal(100, 100); - * // Results in x=400, y=300 + * var graphics = new createjs.Graphics().beginFill("#ff0000").drawRect(0, 0, 100, 100); + * var shape = new createjs.Shape(graphics); * - * @method localToGlobal - * @param {Number} x The x position in the source display object to transform. - * @param {Number} y The y position in the source display object to transform. - * @param {Point | Object} [pt] An object to copy the result into. If omitted a new Point object with x/y properties will be returned. - * @return {Point} A Point instance with x and y properties correlating to the transformed coordinates - * on the stage. + * //Alternatively use can also use the graphics property of the Shape class to renderer the same as above. + * var shape = new createjs.Shape(); + * shape.graphics.beginFill("#ff0000").drawRect(0, 0, 100, 100); + * + * @class Shape + * @extends DisplayObject + * @constructor + * @param {Graphics} graphics Optional. The graphics instance to display. If null, a new Graphics instance will be created. + **/ + function Shape(graphics) { + this.DisplayObject_constructor(); + + + // public properties: + /** + * The graphics instance to display. + * @property graphics + * @type Graphics + **/ + this.graphics = graphics ? graphics : new createjs.Graphics(); + } + var p = createjs.extend(Shape, createjs.DisplayObject); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// public methods: + /** + * Returns true or false indicating whether the Shape would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the Shape would be visible if drawn to a canvas **/ - p.localToGlobal = function(x, y, pt) { - return this.getConcatenatedMatrix(this._props.matrix).transformPoint(x,y, pt||new createjs.Point()); + p.isVisible = function() { + var hasContent = this.cacheCanvas || (this.graphics && !this.graphics.isEmpty()); + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); }; /** - * Transforms the specified x and y position from the global (stage) coordinate space to the - * coordinate space of the display object. For example, this could be used to determine - * the current mouse position within the display object. Returns a Point instance with x and y properties - * correlating to the transformed position in the display object's coordinate space. - * - *

      Example

      - * - * displayObject.x = 300; - * displayObject.y = 200; - * stage.addChild(displayObject); - * var point = myDisplayObject.globalToLocal(100, 100); - * // Results in x=-200, y=-100 + * Draws the Shape into the specified context ignoring its visible, alpha, shadow, and transform. Returns true if + * the draw was handled (useful for overriding functionality). * - * @method globalToLocal - * @param {Number} x The x position on the stage to transform. - * @param {Number} y The y position on the stage to transform. - * @param {Point | Object} [pt] An object to copy the result into. If omitted a new Point object with x/y properties will be returned. - * @return {Point} A Point instance with x and y properties correlating to the transformed position in the - * display object's coordinate space. + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. For example, + * used for drawing the cache (to prevent it from simply drawing an existing cache back into itself). + * @return {Boolean} **/ - p.globalToLocal = function(x, y, pt) { - return this.getConcatenatedMatrix(this._props.matrix).invert().transformPoint(x,y, pt||new createjs.Point()); + p.draw = function(ctx, ignoreCache) { + if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } + this.graphics.draw(ctx, this); + return true; }; /** - * Transforms the specified x and y position from the coordinate space of this display object to the coordinate - * space of the target display object. Returns a Point instance with x and y properties correlating to the - * transformed position in the target's coordinate space. Effectively the same as using the following code with - * {{#crossLink "DisplayObject/localToGlobal"}}{{/crossLink}} and {{#crossLink "DisplayObject/globalToLocal"}}{{/crossLink}}. - * - * var pt = this.localToGlobal(x, y); - * pt = target.globalToLocal(pt.x, pt.y); - * - * @method localToLocal - * @param {Number} x The x position in the source display object to transform. - * @param {Number} y The y position on the source display object to transform. - * @param {DisplayObject} target The target display object to which the coordinates will be transformed. - * @param {Point | Object} [pt] An object to copy the result into. If omitted a new Point object with x/y properties will be returned. - * @return {Point} Returns a Point instance with x and y properties correlating to the transformed position - * in the target's coordinate space. + * Returns a clone of this Shape. Some properties that are specific to this instance's current context are reverted to + * their defaults (for example .parent). + * @method clone + * @param {Boolean} recursive If true, this Shape's {{#crossLink "Graphics"}}{{/crossLink}} instance will also be + * cloned. If false, the Graphics instance will be shared with the new Shape. **/ - p.localToLocal = function(x, y, target, pt) { - pt = this.localToGlobal(x, y, pt); - return target.globalToLocal(pt.x, pt.y, pt); + p.clone = function(recursive) { + var g = (recursive && this.graphics) ? this.graphics.clone() : this.graphics; + return this._cloneProps(new Shape(g)); }; /** - * Shortcut method to quickly set the transform properties on the display object. All parameters are optional. - * Omitted parameters will have the default value set. + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Shape (name="+ this.name +")]"; + }; + + + createjs.Shape = createjs.promote(Shape, "DisplayObject"); +}()); + +//############################################################################## +// Text.js +//############################################################################## + +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Display one or more lines of dynamic text (not user editable) in the display list. Line wrapping support (using the + * lineWidth) is very basic, wrapping on spaces and tabs only. Note that as an alternative to Text, you can position HTML + * text above or below the canvas relative to items in the display list using the {{#crossLink "DisplayObject/localToGlobal"}}{{/crossLink}} + * method, or using {{#crossLink "DOMElement"}}{{/crossLink}}. + * + * Please note that Text does not support HTML text, and can only display one font style at a time. To use + * multiple font styles, you will need to create multiple text instances, and position them manually. * *

      Example

      * - * displayObject.setTransform(100, 100, 2, 2); + * var text = new createjs.Text("Hello World", "20px Arial", "#ff7700"); + * text.x = 100; + * text.textBaseline = "alphabetic"; * - * @method setTransform - * @param {Number} [x=0] The horizontal translation (x position) in pixels - * @param {Number} [y=0] The vertical translation (y position) in pixels - * @param {Number} [scaleX=1] The horizontal scale, as a percentage of 1 - * @param {Number} [scaleY=1] the vertical scale, as a percentage of 1 - * @param {Number} [rotation=0] The rotation, in degrees - * @param {Number} [skewX=0] The horizontal skew factor - * @param {Number} [skewY=0] The vertical skew factor - * @param {Number} [regX=0] The horizontal registration point in pixels - * @param {Number} [regY=0] The vertical registration point in pixels - * @return {DisplayObject} Returns this instance. Useful for chaining commands. - * @chainable - */ - p.setTransform = function(x, y, scaleX, scaleY, rotation, skewX, skewY, regX, regY) { - this.x = x || 0; - this.y = y || 0; - this.scaleX = scaleX == null ? 1 : scaleX; - this.scaleY = scaleY == null ? 1 : scaleY; - this.rotation = rotation || 0; - this.skewX = skewX || 0; - this.skewY = skewY || 0; - this.regX = regX || 0; - this.regY = regY || 0; - return this; - }; + * CreateJS Text supports web fonts (the same rules as Canvas). The font must be loaded and supported by the browser + * before it can be displayed. + * + * Note: Text can be expensive to generate, so cache instances where possible. Be aware that not all + * browsers will render Text exactly the same. + * @class Text + * @extends DisplayObject + * @constructor + * @param {String} [text] The text to display. + * @param {String} [font] The font style to use. Any valid value for the CSS font attribute is acceptable (ex. "bold + * 36px Arial"). + * @param {String} [color] The color to draw the text in. Any valid value for the CSS color attribute is acceptable (ex. + * "#F00", "red", or "#FF0000"). + **/ + function Text(text, font, color) { + this.DisplayObject_constructor(); + + + // public properties: + /** + * The text to display. + * @property text + * @type String + **/ + this.text = text; + + /** + * The font style to use. Any valid value for the CSS font attribute is acceptable (ex. "bold 36px Arial"). + * @property font + * @type String + **/ + this.font = font; + + /** + * The color to draw the text in. Any valid value for the CSS color attribute is acceptable (ex. "#F00"). Default is "#000". + * It will also accept valid canvas fillStyle values. + * @property color + * @type String + **/ + this.color = color; + + /** + * The horizontal text alignment. Any of "start", "end", "left", "right", and "center". For detailed + * information view the + * + * whatwg spec. Default is "left". + * @property textAlign + * @type String + **/ + this.textAlign = "left"; + + /** + * The vertical alignment point on the font. Any of "top", "hanging", "middle", "alphabetic", "ideographic", or + * "bottom". For detailed information view the + * whatwg spec. Default is "top". + * @property textBaseline + * @type String + */ + this.textBaseline = "top"; + /** + * The maximum width to draw the text. If maxWidth is specified (not null), the text will be condensed or + * shrunk to make it fit in this width. For detailed information view the + * + * whatwg spec. + * @property maxWidth + * @type Number + */ + this.maxWidth = null; + + /** + * If greater than 0, the text will be drawn as a stroke (outline) of the specified width. + * @property outline + * @type Number + **/ + this.outline = 0; + + /** + * Indicates the line height (vertical distance between baselines) for multi-line text. If null or 0, + * the value of getMeasuredLineHeight is used. + * @property lineHeight + * @type Number + **/ + this.lineHeight = 0; + + /** + * Indicates the maximum width for a line of text before it is wrapped to multiple lines. If null, + * the text will not be wrapped. + * @property lineWidth + * @type Number + **/ + this.lineWidth = null; + } + var p = createjs.extend(Text, createjs.DisplayObject); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// static properties: /** - * Returns a matrix based on this object's current transform. - * @method getMatrix - * @param {Matrix2D} matrix Optional. A Matrix2D object to populate with the calculated values. If null, a new - * Matrix object is returned. - * @return {Matrix2D} A matrix representing this display object's transform. + * @property _workingContext + * @type CanvasRenderingContext2D + * @private **/ - p.getMatrix = function(matrix) { - var o = this, mtx = matrix&&matrix.identity() || new createjs.Matrix2D(); - return o.transformMatrix ? mtx.copy(o.transformMatrix) : mtx.appendTransform(o.x, o.y, o.scaleX, o.scaleY, o.rotation, o.skewX, o.skewY, o.regX, o.regY); - }; + var canvas = (createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")); + if (canvas.getContext) { Text._workingContext = canvas.getContext("2d"); canvas.width = canvas.height = 1; } + +// constants: /** - * Generates a Matrix2D object representing the combined transform of the display object and all of its - * parent Containers up to the highest level ancestor (usually the {{#crossLink "Stage"}}{{/crossLink}}). This can - * be used to transform positions between coordinate spaces, such as with {{#crossLink "DisplayObject/localToGlobal"}}{{/crossLink}} - * and {{#crossLink "DisplayObject/globalToLocal"}}{{/crossLink}}. - * @method getConcatenatedMatrix - * @param {Matrix2D} [matrix] A {{#crossLink "Matrix2D"}}{{/crossLink}} object to populate with the calculated values. - * If null, a new Matrix2D object is returned. - * @return {Matrix2D} The combined matrix. + * Lookup table for the ratio to offset bounds x calculations based on the textAlign property. + * @property H_OFFSETS + * @type Object + * @protected + * @static **/ - p.getConcatenatedMatrix = function(matrix) { - var o = this, mtx = this.getMatrix(matrix); - while (o = o.parent) { - mtx.prependMatrix(o.getMatrix(o._props.matrix)); - } - return mtx; - }; + Text.H_OFFSETS = {start: 0, left: 0, center: -0.5, end: -1, right: -1}; /** - * Generates a DisplayProps object representing the combined display properties of the object and all of its - * parent Containers up to the highest level ancestor (usually the {{#crossLink "Stage"}}{{/crossLink}}). - * @method getConcatenatedDisplayProps - * @param {DisplayProps} [props] A {{#crossLink "DisplayProps"}}{{/crossLink}} object to populate with the calculated values. - * If null, a new DisplayProps object is returned. - * @return {DisplayProps} The combined display properties. + * Lookup table for the ratio to offset bounds y calculations based on the textBaseline property. + * @property H_OFFSETS + * @type Object + * @protected + * @static **/ - p.getConcatenatedDisplayProps = function(props) { - props = props ? props.identity() : new createjs.DisplayProps(); - var o = this, mtx = o.getMatrix(props.matrix); - do { - props.prepend(o.visible, o.alpha, o.shadow, o.compositeOperation); - - // we do this to avoid problems with the matrix being used for both operations when o._props.matrix is passed in as the props param. - // this could be simplified (ie. just done as part of the prepend above) if we switched to using a pool. - if (o != this) { mtx.prependMatrix(o.getMatrix(o._props.matrix)); } - } while (o = o.parent); - return props; + Text.V_OFFSETS = {top: 0, hanging: -0.01, middle: -0.4, alphabetic: -0.8, ideographic: -0.85, bottom: -1}; + + +// public methods: + /** + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Whether the display object would be visible if drawn to a canvas + **/ + p.isVisible = function() { + var hasContent = this.cacheCanvas || (this.text != null && this.text !== ""); + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); }; /** - * Tests whether the display object intersects the specified point in local coordinates (ie. draws a pixel with alpha > 0 at - * the specified position). This ignores the alpha, shadow, hitArea, mask, and compositeOperation of the display object. - * - *

      Example

      - * - * stage.addEventListener("stagemousedown", handleMouseDown); - * function handleMouseDown(event) { - * var hit = myShape.hitTest(event.stageX, event.stageY); - * } - * - * Please note that shape-to-shape collision is not currently supported by EaselJS. - * @method hitTest - * @param {Number} x The x position to check in the display object's local coordinates. - * @param {Number} y The y position to check in the display object's local coordinates. - * @return {Boolean} A Boolean indicating whether a visible portion of the DisplayObject intersect the specified - * local Point. - */ - p.hitTest = function(x, y) { - var ctx = DisplayObject._hitTestContext; - ctx.setTransform(1, 0, 0, 1, -x, -y); - this.draw(ctx); + * Draws the Text into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. + * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back + * into itself). + **/ + p.draw = function(ctx, ignoreCache) { + if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } - var hit = this._testHit(ctx); - ctx.setTransform(1, 0, 0, 1, 0, 0); - ctx.clearRect(0, 0, 2, 2); - return hit; + var col = this.color || "#000"; + if (this.outline) { ctx.strokeStyle = col; ctx.lineWidth = this.outline*1; } + else { ctx.fillStyle = col; } + + this._drawText(this._prepContext(ctx)); + return true; }; - + /** - * Provides a chainable shortcut method for setting a number of properties on the instance. - * - *

      Example

      - * - * var myGraphics = new createjs.Graphics().beginFill("#ff0000").drawCircle(0, 0, 25); - * var shape = stage.addChild(new Shape()).set({graphics:myGraphics, x:100, y:100, alpha:0.5}); - * - * @method set - * @param {Object} props A generic object containing properties to copy to the DisplayObject instance. - * @return {DisplayObject} Returns the instance the method is called on (useful for chaining calls.) - * @chainable - */ - p.set = function(props) { - for (var n in props) { this[n] = props[n]; } - return this; + * Returns the measured, untransformed width of the text without wrapping. Use getBounds for a more robust value. + * @method getMeasuredWidth + * @return {Number} The measured, untransformed width of the text. + **/ + p.getMeasuredWidth = function() { + return this._getMeasuredWidth(this.text); }; - + /** - * Returns a rectangle representing this object's bounds in its local coordinate system (ie. with no transformation). - * Objects that have been cached will return the bounds of the cache. - * - * Not all display objects can calculate their own bounds (ex. Shape). For these objects, you can use - * {{#crossLink "DisplayObject/setBounds"}}{{/crossLink}} so that they are included when calculating Container - * bounds. - * - * - * - * - * - * - * - * - * - *
      All - * All display objects support setting bounds manually using setBounds(). Likewise, display objects that - * have been cached using cache() will return the bounds of their cache. Manual and cache bounds will override - * the automatic calculations listed below. - *
      Bitmap - * Returns the width and height of the sourceRect (if specified) or image, extending from (x=0,y=0). - *
      Sprite - * Returns the bounds of the current frame. May have non-zero x/y if a frame registration point was specified - * in the spritesheet data. See also {{#crossLink "SpriteSheet/getFrameBounds"}}{{/crossLink}} - *
      Container - * Returns the aggregate (combined) bounds of all children that return a non-null value from getBounds(). - *
      Shape - * Does not currently support automatic bounds calculations. Use setBounds() to manually define bounds. - *
      Text - * Returns approximate bounds. Horizontal values (x/width) are quite accurate, but vertical values (y/height) are - * not, especially when using textBaseline values other than "top". - *
      BitmapText - * Returns approximate bounds. Values will be more accurate if spritesheet frame registration points are close - * to (x=0,y=0). - *
      - * - * Bounds can be expensive to calculate for some objects (ex. text, or containers with many children), and - * are recalculated each time you call getBounds(). You can prevent recalculation on static objects by setting the - * bounds explicitly: - * - * var bounds = obj.getBounds(); - * obj.setBounds(bounds.x, bounds.y, bounds.width, bounds.height); - * // getBounds will now use the set values, instead of recalculating - * - * To reduce memory impact, the returned Rectangle instance may be reused internally; clone the instance or copy its - * values if you need to retain it. - * - * var myBounds = obj.getBounds().clone(); - * // OR: - * myRect.copy(obj.getBounds()); - * - * @method getBounds - * @return {Rectangle} A Rectangle instance representing the bounds, or null if bounds are not available for this - * object. + * Returns an approximate line height of the text, ignoring the lineHeight property. This is based on the measured + * width of a "M" character multiplied by 1.2, which provides an approximate line height for most fonts. + * @method getMeasuredLineHeight + * @return {Number} an approximate line height of the text, ignoring the lineHeight property. This is + * based on the measured width of a "M" character multiplied by 1.2, which approximates em for most fonts. **/ - p.getBounds = function() { - if (this._bounds) { return this._rectangle.copy(this._bounds); } - var cacheCanvas = this.cacheCanvas; - if (cacheCanvas) { - var scale = this._cacheScale; - return this._rectangle.setValues(this._cacheOffsetX, this._cacheOffsetY, cacheCanvas.width/scale, cacheCanvas.height/scale); - } - return null; + p.getMeasuredLineHeight = function() { + return this._getMeasuredWidth("M")*1.2; }; - + /** - * Returns a rectangle representing this object's bounds in its parent's coordinate system (ie. with transformations applied). - * Objects that have been cached will return the transformed bounds of the cache. - * - * Not all display objects can calculate their own bounds (ex. Shape). For these objects, you can use - * {{#crossLink "DisplayObject/setBounds"}}{{/crossLink}} so that they are included when calculating Container - * bounds. - * - * To reduce memory impact, the returned Rectangle instance may be reused internally; clone the instance or copy its - * values if you need to retain it. - * - * Container instances calculate aggregate bounds for all children that return bounds via getBounds. - * @method getTransformedBounds - * @return {Rectangle} A Rectangle instance representing the bounds, or null if bounds are not available for this object. + * Returns the approximate height of multi-line text by multiplying the number of lines against either the + * lineHeight (if specified) or {{#crossLink "Text/getMeasuredLineHeight"}}{{/crossLink}}. Note that + * this operation requires the text flowing logic to run, which has an associated CPU cost. + * @method getMeasuredHeight + * @return {Number} The approximate height of the untransformed multi-line text. **/ - p.getTransformedBounds = function() { - return this._getBounds(); + p.getMeasuredHeight = function() { + return this._drawText(null,{}).height; + }; + + /** + * Docced in superclass. + */ + p.getBounds = function() { + var rect = this.DisplayObject_getBounds(); + if (rect) { return rect; } + if (this.text == null || this.text === "") { return null; } + var o = this._drawText(null, {}); + var w = (this.maxWidth && this.maxWidth < o.width) ? this.maxWidth : o.width; + var x = w * Text.H_OFFSETS[this.textAlign||"left"]; + var lineHeight = this.lineHeight||this.getMeasuredLineHeight(); + var y = lineHeight * Text.V_OFFSETS[this.textBaseline||"top"]; + return this._rectangle.setValues(x, y, w, o.height); }; /** - * Allows you to manually specify the bounds of an object that either cannot calculate their own bounds (ex. Shape & - * Text) for future reference, or so the object can be included in Container bounds. Manually set bounds will always - * override calculated bounds. - * - * The bounds should be specified in the object's local (untransformed) coordinates. For example, a Shape instance - * with a 25px radius circle centered at 0,0 would have bounds of (-25, -25, 50, 50). - * @method setBounds - * @param {Number} x The x origin of the bounds. Pass null to remove the manual bounds. - * @param {Number} y The y origin of the bounds. - * @param {Number} width The width of the bounds. - * @param {Number} height The height of the bounds. + * Returns an object with width, height, and lines properties. The width and height are the visual width and height + * of the drawn text. The lines property contains an array of strings, one for + * each line of text that will be drawn, accounting for line breaks and wrapping. These strings have trailing + * whitespace removed. + * @method getMetrics + * @return {Object} An object with width, height, and lines properties. **/ - p.setBounds = function(x, y, width, height) { - if (x == null) { this._bounds = x; } - this._bounds = (this._bounds || new createjs.Rectangle()).setValues(x, y, width, height); + p.getMetrics = function() { + var o = {lines:[]}; + o.lineHeight = this.lineHeight || this.getMeasuredLineHeight(); + o.vOffset = o.lineHeight * Text.V_OFFSETS[this.textBaseline||"top"]; + return this._drawText(null, o, o.lines); }; /** - * Returns a clone of this DisplayObject. Some properties that are specific to this instance's current context are - * reverted to their defaults (for example .parent). Caches are not maintained across clones, and some elements - * are copied by reference (masks, individual filter instances, hit area) + * Returns a clone of the Text instance. * @method clone - * @return {DisplayObject} A clone of the current DisplayObject instance. + * @return {Text} a clone of the Text instance. **/ p.clone = function() { - return this._cloneProps(new DisplayObject()); + return this._cloneProps(new Text(this.text, this.font, this.color)); }; /** @@ -6894,278 +10040,802 @@ this.createjs = this.createjs||{}; * @return {String} a string representation of the instance. **/ p.toString = function() { - return "[DisplayObject (name="+ this.name +")]"; + return "[Text (text="+ (this.text.length > 20 ? this.text.substr(0, 17)+"..." : this.text) +")]"; }; // private methods: - // separated so it can be used more easily in subclasses: /** * @method _cloneProps - * @param {DisplayObject} o The DisplayObject instance which will have properties from the current DisplayObject - * instance copied into. - * @return {DisplayObject} o + * @param {Text} o * @protected + * @return {Text} o **/ p._cloneProps = function(o) { - o.alpha = this.alpha; - o.mouseEnabled = this.mouseEnabled; - o.tickEnabled = this.tickEnabled; - o.name = this.name; - o.regX = this.regX; - o.regY = this.regY; - o.rotation = this.rotation; - o.scaleX = this.scaleX; - o.scaleY = this.scaleY; - o.shadow = this.shadow; - o.skewX = this.skewX; - o.skewY = this.skewY; - o.visible = this.visible; - o.x = this.x; - o.y = this.y; - o.compositeOperation = this.compositeOperation; - o.snapToPixel = this.snapToPixel; - o.filters = this.filters==null?null:this.filters.slice(0); - o.mask = this.mask; - o.hitArea = this.hitArea; - o.cursor = this.cursor; - o._bounds = this._bounds; + this.DisplayObject__cloneProps(o); + o.textAlign = this.textAlign; + o.textBaseline = this.textBaseline; + o.maxWidth = this.maxWidth; + o.outline = this.outline; + o.lineHeight = this.lineHeight; + o.lineWidth = this.lineWidth; + return o; + }; + + /** + * @method _getWorkingContext + * @param {CanvasRenderingContext2D} ctx + * @return {CanvasRenderingContext2D} + * @protected + **/ + p._prepContext = function(ctx) { + ctx.font = this.font||"10px sans-serif"; + ctx.textAlign = this.textAlign||"left"; + ctx.textBaseline = this.textBaseline||"top"; + return ctx; + }; + + /** + * Draws multiline text. + * @method _drawText + * @param {CanvasRenderingContext2D} ctx + * @param {Object} o + * @param {Array} lines + * @return {Object} + * @protected + **/ + p._drawText = function(ctx, o, lines) { + var paint = !!ctx; + if (!paint) { + ctx = Text._workingContext; + ctx.save(); + this._prepContext(ctx); + } + var lineHeight = this.lineHeight||this.getMeasuredLineHeight(); + + var maxW = 0, count = 0; + var hardLines = String(this.text).split(/(?:\r\n|\r|\n)/); + for (var i=0, l=hardLines.length; i this.lineWidth) { + // text wrapping: + var words = str.split(/(\s)/); + str = words[0]; + w = ctx.measureText(str).width; + + for (var j=1, jl=words.length; j this.lineWidth) { + if (paint) { this._drawTextLine(ctx, str, count*lineHeight); } + if (lines) { lines.push(str); } + if (w > maxW) { maxW = w; } + str = words[j+1]; + w = ctx.measureText(str).width; + count++; + } else { + str += words[j] + words[j+1]; + w += wordW; + } + } + } + + if (paint) { this._drawTextLine(ctx, str, count*lineHeight); } + if (lines) { lines.push(str); } + if (o && w == null) { w = ctx.measureText(str).width; } + if (w > maxW) { maxW = w; } + count++; + } + + if (o) { + o.width = maxW; + o.height = count*lineHeight; + } + if (!paint) { ctx.restore(); } return o; }; - + + /** + * @method _drawTextLine + * @param {CanvasRenderingContext2D} ctx + * @param {String} text + * @param {Number} y + * @protected + **/ + p._drawTextLine = function(ctx, text, y) { + // Chrome 17 will fail to draw the text if the last param is included but null, so we feed it a large value instead: + if (this.outline) { ctx.strokeText(text, 0, y, this.maxWidth||0xFFFF); } + else { ctx.fillText(text, 0, y, this.maxWidth||0xFFFF); } + }; + + + /** + * @method _getMeasuredWidth + * @param {String} text + * @protected + **/ + p._getMeasuredWidth = function(text) { + var ctx = Text._workingContext; + ctx.save(); + var w = this._prepContext(ctx).measureText(text).width; + ctx.restore(); + return w; + }; + + + createjs.Text = createjs.promote(Text, "DisplayObject"); +}()); + +//############################################################################## +// BitmapText.js +//############################################################################## + +this.createjs = this.createjs || {}; + +(function () { + "use strict"; + + +// constructor: + /** + * Displays text using bitmap glyphs defined in a sprite sheet. Multi-line text is supported + * using new line characters, but automatic wrapping is not supported. See the + * {{#crossLink "BitmapText/spriteSheet:property"}}{{/crossLink}} + * property for more information on defining glyphs. + * + * Important: BitmapText extends Container, but is not designed to be used as one. + * As such, methods like addChild and removeChild are disabled. + * @class BitmapText + * @extends DisplayObject + * @param {String} [text=""] The text to display. + * @param {SpriteSheet} [spriteSheet=null] The spritesheet that defines the character glyphs. + * @constructor + **/ + function BitmapText(text, spriteSheet) { + this.Container_constructor(); + + + // public properties: + /** + * The text to display. + * @property text + * @type String + * @default "" + **/ + this.text = text||""; + + /** + * A SpriteSheet instance that defines the glyphs for this bitmap text. Each glyph/character + * should have a single frame animation defined in the sprite sheet named the same as + * corresponding character. For example, the following animation definition: + * + * "A": {frames: [0]} + * + * would indicate that the frame at index 0 of the spritesheet should be drawn for the "A" character. The short form + * is also acceptable: + * + * "A": 0 + * + * Note that if a character in the text is not found in the sprite sheet, it will also + * try to use the alternate case (upper or lower). + * + * See SpriteSheet for more information on defining sprite sheet data. + * @property spriteSheet + * @type SpriteSheet + * @default null + **/ + this.spriteSheet = spriteSheet; + + /** + * The height of each line of text. If 0, then it will use a line height calculated + * by checking for the height of the "1", "T", or "L" character (in that order). If + * those characters are not defined, it will use the height of the first frame of the + * sprite sheet. + * @property lineHeight + * @type Number + * @default 0 + **/ + this.lineHeight = 0; + + /** + * This spacing (in pixels) will be added after each character in the output. + * @property letterSpacing + * @type Number + * @default 0 + **/ + this.letterSpacing = 0; + + /** + * If a space character is not defined in the sprite sheet, then empty pixels equal to + * spaceWidth will be inserted instead. If 0, then it will use a value calculated + * by checking for the width of the "1", "l", "E", or "A" character (in that order). If + * those characters are not defined, it will use the width of the first frame of the + * sprite sheet. + * @property spaceWidth + * @type Number + * @default 0 + **/ + this.spaceWidth = 0; + + + // private properties: + /** + * @property _oldProps + * @type Object + * @protected + **/ + this._oldProps = {text:0,spriteSheet:0,lineHeight:0,letterSpacing:0,spaceWidth:0}; + } + var p = createjs.extend(BitmapText, createjs.Container); + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + +// static properties: + /** + * BitmapText uses Sprite instances to draw text. To reduce the creation and destruction of instances (and thus garbage collection), it maintains + * an internal object pool of sprite instances to reuse. Increasing this value can cause more sprites to be + * retained, slightly increasing memory use, but reducing instantiation. + * @property maxPoolSize + * @type Number + * @static + * @default 100 + **/ + BitmapText.maxPoolSize = 100; + + /** + * Sprite object pool. + * @type {Array} + * @static + * @private + */ + BitmapText._spritePool = []; + + +// public methods: + /** + * Docced in superclass. + **/ + p.draw = function(ctx, ignoreCache) { + if (this.DisplayObject_draw(ctx, ignoreCache)) { return; } + this._updateText(); + this.Container_draw(ctx, ignoreCache); + }; + + /** + * Docced in superclass. + **/ + p.getBounds = function() { + this._updateText(); + return this.Container_getBounds(); + }; + /** - * @method _applyShadow - * @protected - * @param {CanvasRenderingContext2D} ctx - * @param {Shadow} shadow + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas **/ - p._applyShadow = function(ctx, shadow) { - shadow = shadow || Shadow.identity; - ctx.shadowColor = shadow.color; - ctx.shadowOffsetX = shadow.offsetX; - ctx.shadowOffsetY = shadow.offsetY; - ctx.shadowBlur = shadow.blur; + p.isVisible = function() { + var hasContent = this.cacheCanvas || (this.spriteSheet && this.spriteSheet.complete && this.text); + return !!(this.visible && this.alpha > 0 && this.scaleX !== 0 && this.scaleY !== 0 && hasContent); }; + p.clone = function() { + return this._cloneProps(new BitmapText(this.text, this.spriteSheet)); + }; /** - * @method _tick - * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. + * Disabled in BitmapText. + * @method addChild + **/ + /** + * Disabled in BitmapText. + * @method addChildAt + **/ + /** + * Disabled in BitmapText. + * @method removeChild + **/ + /** + * Disabled in BitmapText. + * @method removeChildAt + **/ + /** + * Disabled in BitmapText. + * @method removeAllChildren + **/ + p.addChild = p.addChildAt = p.removeChild = p.removeChildAt = p.removeAllChildren = function() {}; + + +// private methods: + /** + * @method _cloneProps + * @param {BitmapText} o + * @return {BitmapText} o * @protected **/ - p._tick = function(evtObj) { - // because tick can be really performance sensitive, check for listeners before calling dispatchEvent. - var ls = this._listeners; - if (ls && ls["tick"]) { - // reset & reuse the event object to avoid construction / GC costs: - evtObj.target = null; - evtObj.propagationStopped = evtObj.immediatePropagationStopped = false; - this.dispatchEvent(evtObj); - } + p._cloneProps = function(o) { + this.Container__cloneProps(o); + o.lineHeight = this.lineHeight; + o.letterSpacing = this.letterSpacing; + o.spaceWidth = this.spaceWidth; + return o; }; - + /** - * @method _testHit + * @method _getFrameIndex + * @param {String} character + * @param {SpriteSheet} spriteSheet + * @return {Number} * @protected - * @param {CanvasRenderingContext2D} ctx - * @return {Boolean} **/ - p._testHit = function(ctx) { - try { - var hit = ctx.getImageData(0, 0, 1, 1).data[3] > 1; - } catch (e) { - if (!DisplayObject.suppressCrossDomainErrors) { - throw "An error has occurred. This is most likely due to security restrictions on reading canvas pixel data with local or cross-domain images."; - } + p._getFrameIndex = function(character, spriteSheet) { + var c, o = spriteSheet.getAnimation(character); + if (!o) { + (character != (c = character.toUpperCase())) || (character != (c = character.toLowerCase())) || (c=null); + if (c) { o = spriteSheet.getAnimation(c); } } - return hit; + return o && o.frames[0]; }; - + /** - * @method _applyFilters + * @method _getFrame + * @param {String} character + * @param {SpriteSheet} spriteSheet + * @return {Object} * @protected **/ - p._applyFilters = function() { - if (!this.filters || this.filters.length == 0 || !this.cacheCanvas) { return; } - var l = this.filters.length; - var ctx = this.cacheCanvas.getContext("2d"); - var w = this.cacheCanvas.width; - var h = this.cacheCanvas.height; - for (var i=0; i maxX) { maxX = x; } - if ((x = x_a + y_c + tx) < minX) { minX = x; } else if (x > maxX) { maxX = x; } - if ((x = y_c + tx) < minX) { minX = x; } else if (x > maxX) { maxX = x; } - - if ((y = x_b + ty) < minY) { minY = y; } else if (y > maxY) { maxY = y; } - if ((y = x_b + y_d + ty) < minY) { minY = y; } else if (y > maxY) { maxY = y; } - if ((y = y_d + ty) < minY) { minY = y; } else if (y > maxY) { maxY = y; } - - return bounds.setValues(minX, minY, maxX-minX, maxY-minY); - }; - - /** - * Indicates whether the display object has any mouse event listeners or a cursor. - * @method _isMouseOpaque - * @return {Boolean} - * @protected - **/ - p._hasMouseEventListener = function() { - var evts = DisplayObject._MOUSE_EVENTS; - for (var i= 0, l=evts.length; i childIndex) { + // faster than removeChild. + pool.push(sprite = kids.pop()); + sprite.parent = null; + numKids--; + } + if (pool.length > BitmapText.maxPoolSize) { pool.length = BitmapText.maxPoolSize; } }; - createjs.DisplayObject = createjs.promote(DisplayObject, "EventDispatcher"); + + createjs.BitmapText = createjs.promote(BitmapText, "Container"); }()); //############################################################################## -// Container.js +// MovieClip.js //############################################################################## this.createjs = this.createjs||{}; (function() { "use strict"; - + // constructor: -/** - * A Container is a nestable display list that allows you to work with compound display elements. For example you could - * group arm, leg, torso and head {{#crossLink "Bitmap"}}{{/crossLink}} instances together into a Person Container, and - * transform them as a group, while still being able to move the individual parts relative to each other. Children of - * containers have their transform and alpha properties concatenated with their parent - * Container. - * - * For example, a {{#crossLink "Shape"}}{{/crossLink}} with x=100 and alpha=0.5, placed in a Container with x=50 - * and alpha=0.7 will be rendered to the canvas at x=150 and alpha=0.35. - * Containers have some overhead, so you generally shouldn't create a Container to hold a single child. - * - *

      Example

      - * - * var container = new createjs.Container(); - * container.addChild(bitmapInstance, shapeInstance); - * container.x = 100; - * - * @class Container - * @extends DisplayObject - * @constructor - **/ - function Container() { - this.DisplayObject_constructor(); + /** + * The MovieClip class associates a TweenJS Timeline with an EaselJS {{#crossLink "Container"}}{{/crossLink}}. It allows + * you to create objects which encapsulate timeline animations, state changes, and synched actions. Due to the + * complexities inherent in correctly setting up a MovieClip, it is largely intended for tool output and is not included + * in the main EaselJS library. + * + * Currently MovieClip only works properly if it is tick based (as opposed to time based) though some concessions have + * been made to support time-based timelines in the future. + * + *

      Example

      + * This example animates two shapes back and forth. The grey shape starts on the left, but we jump to a mid-point in + * the animation using {{#crossLink "MovieClip/gotoAndPlay"}}{{/crossLink}}. + * + * var stage = new createjs.Stage("canvas"); + * createjs.Ticker.addEventListener("tick", stage); + * + * var mc = new createjs.MovieClip(null, 0, true, {start:20}); + * stage.addChild(mc); + * + * var child1 = new createjs.Shape( + * new createjs.Graphics().beginFill("#999999") + * .drawCircle(30,30,30)); + * var child2 = new createjs.Shape( + * new createjs.Graphics().beginFill("#5a9cfb") + * .drawCircle(30,30,30)); + * + * mc.timeline.addTween( + * createjs.Tween.get(child1) + * .to({x:0}).to({x:60}, 50).to({x:0}, 50)); + * mc.timeline.addTween( + * createjs.Tween.get(child2) + * .to({x:60}).to({x:0}, 50).to({x:60}, 50)); + * + * mc.gotoAndPlay("start"); + * + * It is recommended to use tween.to() to animate and set properties (use no duration to have it set + * immediately), and the tween.wait() method to create delays between animations. Note that using the + * tween.set() method to affect properties will likely not provide the desired result. + * + * @class MovieClip + * @main MovieClip + * @extends Container + * @constructor + * @param {String} [mode=independent] Initial value for the mode property. One of {{#crossLink "MovieClip/INDEPENDENT:property"}}{{/crossLink}}, + * {{#crossLink "MovieClip/SINGLE_FRAME:property"}}{{/crossLink}}, or {{#crossLink "MovieClip/SYNCHED:property"}}{{/crossLink}}. + * The default is {{#crossLink "MovieClip/INDEPENDENT:property"}}{{/crossLink}}. + * @param {Number} [startPosition=0] Initial value for the {{#crossLink "MovieClip/startPosition:property"}}{{/crossLink}} + * property. + * @param {Boolean} [loop=true] Initial value for the {{#crossLink "MovieClip/loop:property"}}{{/crossLink}} + * property. The default is `true`. + * @param {Object} [labels=null] A hash of labels to pass to the {{#crossLink "MovieClip/timeline:property"}}{{/crossLink}} + * instance associated with this MovieClip. Labels only need to be passed if they need to be used. + **/ + function MovieClip(mode, startPosition, loop, labels) { + this.Container_constructor(); + !MovieClip.inited&&MovieClip.init(); // static init + // public properties: /** - * The array of children in the display list. You should usually use the child management methods such as - * {{#crossLink "Container/addChild"}}{{/crossLink}}, {{#crossLink "Container/removeChild"}}{{/crossLink}}, - * {{#crossLink "Container/swapChildren"}}{{/crossLink}}, etc, rather than accessing this directly, but it is - * included for advanced uses. - * @property children - * @type Array + * Controls how this MovieClip advances its time. Must be one of 0 (INDEPENDENT), 1 (SINGLE_FRAME), or 2 (SYNCHED). + * See each constant for a description of the behaviour. + * @property mode + * @type String * @default null **/ - this.children = []; - + this.mode = mode||MovieClip.INDEPENDENT; + /** - * Indicates whether the children of this container are independently enabled for mouse/pointer interaction. - * If false, the children will be aggregated under the container - for example, a click on a child shape would - * trigger a click event on the container. - * @property mouseChildren + * Specifies what the first frame to play in this movieclip, or the only frame to display if mode is SINGLE_FRAME. + * @property startPosition + * @type Number + * @default 0 + */ + this.startPosition = startPosition || 0; + + /** + * Indicates whether this MovieClip should loop when it reaches the end of its timeline. + * @property loop + * @type Boolean + * @default true + */ + this.loop = loop; + + /** + * The current frame of the movieclip. + * @property currentFrame + * @type Number + * @default 0 + * @readonly + */ + this.currentFrame = 0; + + /** + * The TweenJS Timeline that is associated with this MovieClip. This is created automatically when the MovieClip + * instance is initialized. Animations are created by adding TweenJS Tween + * instances to the timeline. + * + *

      Example

      + * + * var tween = createjs.Tween.get(target).to({x:0}).to({x:100}, 30); + * var mc = new createjs.MovieClip(); + * mc.timeline.addTween(tween); + * + * Elements can be added and removed from the timeline by toggling an "_off" property + * using the tweenInstance.to() method. Note that using Tween.set is not recommended to + * create MovieClip animations. The following example will toggle the target off on frame 0, and then back on for + * frame 1. You can use the "visible" property to achieve the same effect. + * + * var tween = createjs.Tween.get(target).to({_off:false}) + * .wait(1).to({_off:true}) + * .wait(1).to({_off:false}); + * + * @property timeline + * @type Timeline + * @default null + */ + this.timeline = new createjs.Timeline(null, labels, {paused:true, position:startPosition, useTicks:true}); + + /** + * If true, the MovieClip's position will not advance when ticked. + * @property paused + * @type Boolean + * @default false + */ + this.paused = false; + + /** + * If true, actions in this MovieClip's tweens will be run when the playhead advances. + * @property actionsEnabled + * @type Boolean + * @default true + */ + this.actionsEnabled = true; + + /** + * If true, the MovieClip will automatically be reset to its first frame whenever the timeline adds + * it back onto the display list. This only applies to MovieClip instances with mode=INDEPENDENT. + *

      + * For example, if you had a character animation with a "body" child MovieClip instance + * with different costumes on each frame, you could set body.autoReset = false, so that + * you can manually change the frame it is on, without worrying that it will be reset + * automatically. + * @property autoReset * @type Boolean * @default true + */ + this.autoReset = true; + + /** + * An array of bounds for each frame in the MovieClip. This is mainly intended for tool output. + * @property frameBounds + * @type Array + * @default null + */ + this.frameBounds = this.frameBounds||null; // TODO: Deprecated. This is for backwards support of FlashCC + + /** + * By default MovieClip instances advance one frame per tick. Specifying a framerate for the MovieClip + * will cause it to advance based on elapsed time between ticks as appropriate to maintain the target + * framerate. + * + * For example, if a MovieClip with a framerate of 10 is placed on a Stage being updated at 40fps, then the MovieClip will + * advance roughly one frame every 4 ticks. This will not be exact, because the time between each tick will + * vary slightly between frames. + * + * This feature is dependent on the tick event object (or an object with an appropriate "delta" property) being + * passed into {{#crossLink "Stage/update"}}{{/crossLink}}. + * @property framerate + * @type {Number} + * @default null **/ - this.mouseChildren = true; + this.framerate = null; + + // private properties: + /** + * @property _synchOffset + * @type Number + * @default 0 + * @private + */ + this._synchOffset = 0; + + /** + * @property _prevPos + * @type Number + * @default -1 + * @private + */ + this._prevPos = -1; // TODO: evaluate using a ._reset Boolean prop instead of -1. + /** - * If false, the tick will not be propagated to children of this Container. This can provide some performance benefits. - * In addition to preventing the "tick" event from being dispatched, it will also prevent tick related updates - * on some display objects (ex. Sprite & MovieClip frame advancing, DOMElement visibility handling). - * @property tickChildren - * @type Boolean - * @default true - **/ - this.tickChildren = true; + * @property _prevPosition + * @type Number + * @default 0 + * @private + */ + this._prevPosition = 0; + + /** + * The time remaining from the previous tick, only applicable when .framerate is set. + * @property _t + * @type Number + * @private + */ + this._t = 0; + + /** + * List of display objects that are actively being managed by the MovieClip. + * @property _managed + * @type Object + * @private + */ + this._managed = {}; } - var p = createjs.extend(Container, createjs.DisplayObject); + var p = createjs.extend(MovieClip, createjs.Container); + + +// constants: + /** + * The MovieClip will advance independently of its parent, even if its parent is paused. + * This is the default mode. + * @property INDEPENDENT + * @static + * @type String + * @default "independent" + * @readonly + **/ + MovieClip.INDEPENDENT = "independent"; + + /** + * The MovieClip will only display a single frame (as determined by the startPosition property). + * @property SINGLE_FRAME + * @static + * @type String + * @default "single" + * @readonly + **/ + MovieClip.SINGLE_FRAME = "single"; + + /** + * The MovieClip will be advanced only when its parent advances and will be synched to the position of + * the parent MovieClip. + * @property SYNCHED + * @static + * @type String + * @default "synched" + * @readonly + **/ + MovieClip.SYNCHED = "synched"; + + +// static properties: + MovieClip.inited = false; + + +// static methods: + MovieClip.init = function() { + if (MovieClip.inited) { return; } + // plugins introduce some overhead to Tween, so we only install this if an MC is instantiated. + MovieClipPlugin.install(); + MovieClip.inited = true; + }; // getter / setters: /** - * Use the {{#crossLink "Container/numChildren:property"}}{{/crossLink}} property instead. - * @method getNumChildren - * @return {Number} + * Use the {{#crossLink "MovieClip/labels:property"}}{{/crossLink}} property instead. + * @method getLabels + * @return {Array} * @deprecated **/ - p.getNumChildren = function() { - return this.children.length; + p.getLabels = function() { + return this.timeline.getLabels(); + }; + + /** + * Use the {{#crossLink "MovieClip/currentLabel:property"}}{{/crossLink}} property instead. + * @method getCurrentLabel + * @return {String} + * @deprecated + **/ + p.getCurrentLabel = function() { + this._updateTimeline(); + return this.timeline.getCurrentLabel(); + }; + + /** + * Use the {{#crossLink "MovieClip/duration:property"}}{{/crossLink}} property instead. + * @method getDuration + * @return {Number} + * @protected + **/ + p.getDuration = function() { + return this.timeline.duration; }; /** - * Returns the number of children in the container. - * @property numChildren + * Returns an array of objects with label and position (aka frame) properties, sorted by position. + * Shortcut to TweenJS: Timeline.getLabels(); + * @property labels + * @type {Array} + * @readonly + **/ + + /** + * Returns the name of the label on or immediately before the current frame. See TweenJS: Timeline.getCurrentLabel() + * for more information. + * @property currentLabel + * @type {String} + * @readonly + **/ + + /** + * Returns the duration of this MovieClip in seconds or ticks. Identical to {{#crossLink "MovieClip/duration:property"}}{{/crossLink}} + * and provided for Flash API compatibility. + * @property totalFrames + * @type {Number} + * @readonly + **/ + + /** + * Returns the duration of this MovieClip in seconds or ticks. + * @property duration * @type {Number} * @readonly **/ try { Object.defineProperties(p, { - numChildren: { get: p.getNumChildren } + labels: { get: p.getLabels }, + currentLabel: { get: p.getCurrentLabel }, + totalFrames: { get: p.getDuration }, + duration: { get: p.getDuration } }); } catch (e) {} - + // public methods: /** @@ -7174,413 +10844,874 @@ this.createjs = this.createjs||{}; * @method initialize * @deprecated in favour of `createjs.promote()` **/ - p.initialize = Container; // TODO: deprecated. - + p.initialize = MovieClip; // TODO: Deprecated. This is for backwards support of FlashCC + /** * Returns true or false indicating whether the display object would be visible if drawn to a canvas. * This does not account for whether it would be visible within the boundaries of the stage. - * * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. * @method isVisible * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas **/ p.isVisible = function() { - var hasContent = this.cacheCanvas || this.children.length; - return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); + // children are placed in draw, so we can't determine if we have content. + return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0); }; /** * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. * Returns true if the draw was handled (useful for overriding functionality). - * * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. * @method draw * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. + * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back * into itself). **/ p.draw = function(ctx, ignoreCache) { + // draw to cache first: if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } + this._updateTimeline(); + this.Container_draw(ctx, ignoreCache); + return true; + }; + + /** + * Sets paused to false. + * @method play + **/ + p.play = function() { + this.paused = false; + }; + + /** + * Sets paused to true. + * @method stop + **/ + p.stop = function() { + this.paused = true; + }; + + /** + * Advances this movie clip to the specified position or label and sets paused to false. + * @method gotoAndPlay + * @param {String|Number} positionOrLabel The animation name or frame number to go to. + **/ + p.gotoAndPlay = function(positionOrLabel) { + this.paused = false; + this._goto(positionOrLabel); + }; + + /** + * Advances this movie clip to the specified position or label and sets paused to true. + * @method gotoAndStop + * @param {String|Number} positionOrLabel The animation or frame name to go to. + **/ + p.gotoAndStop = function(positionOrLabel) { + this.paused = true; + this._goto(positionOrLabel); + }; + + /** + * Advances the playhead. This occurs automatically each tick by default. + * @param [time] {Number} The amount of time in ms to advance by. Only applicable if framerate is set. + * @method advance + */ + p.advance = function(time) { + // TODO: should we worry at all about clips who change their own modes via frame scripts? + var independent = MovieClip.INDEPENDENT; + if (this.mode != independent) { return; } - // this ensures we don't have issues with display list changes that occur during a draw: - var list = this.children.slice(); - for (var i=0,l=list.length; iExample - * - * container.addChild(bitmapInstance); - * - * You can also add multiple children at once: - * - * container.addChild(bitmapInstance, shapeInstance, textInstance); - * - * @method addChild - * @param {DisplayObject} child The display object to add. - * @return {DisplayObject} The child that was added, or the last child if multiple children were added. + * MovieClip instances cannot be cloned. + * @method clone **/ - p.addChild = function(child) { - if (child == null) { return child; } - var l = arguments.length; - if (l > 1) { - for (var i=0; i=0; i--) { + var id = kids[i].id; + if (this._managed[id] == 1) { + this.removeChildAt(i); + delete(this._managed[id]); + } } - if (child.parent) { child.parent.removeChild(child); } - child.parent = this; - this.children.push(child); - child.dispatchEvent("added"); - return child; }; /** - * Adds a child to the display list at the specified index, bumping children at equal or greater indexes up one, and - * setting its parent to this Container. - * - *

      Example

      - * - * addChildAt(child1, index); - * - * You can also add multiple children, such as: - * - * addChildAt(child1, child2, ..., index); - * - * The index must be between 0 and numChildren. For example, to add myShape under otherShape in the display list, - * you could use: - * - * container.addChildAt(myShape, container.getChildIndex(otherShape)); - * - * This would also bump otherShape's index up by one. Fails silently if the index is out of range. - * - * @method addChildAt - * @param {DisplayObject} child The display object to add. - * @param {Number} index The index to add the child at. - * @return {DisplayObject} Returns the last child that was added, or the last child if multiple children were added. + * @method _setState + * @param {Array} state + * @param {Number} offset + * @protected + **/ + p._setState = function(state, offset) { + if (!state) { return; } + for (var i=state.length-1;i>=0;i--) { + var o = state[i]; + var target = o.t; + var props = o.p; + for (var n in props) { target[n] = props[n]; } + this._addManagedChild(target, offset); + } + }; + + /** + * Adds a child to the timeline, and sets it up as a managed child. + * @method _addManagedChild + * @param {MovieClip} child The child MovieClip to manage + * @param {Number} offset + * @private + **/ + p._addManagedChild = function(child, offset) { + if (child._off) { return; } + this.addChildAt(child,0); + + if (child instanceof MovieClip) { + child._synchOffset = offset; + // TODO: this does not precisely match Flash. Flash loses track of the clip if it is renamed or removed from the timeline, which causes it to reset. + if (child.mode == MovieClip.INDEPENDENT && child.autoReset && !this._managed[child.id]) { child._reset(); } + } + this._managed[child.id] = 2; + }; + + /** + * @method _getBounds + * @param {Matrix2D} matrix + * @param {Boolean} ignoreTransform + * @return {Rectangle} + * @protected + **/ + p._getBounds = function(matrix, ignoreTransform) { + var bounds = this.DisplayObject_getBounds(); + if (!bounds) { + this._updateTimeline(); + if (this.frameBounds) { bounds = this._rectangle.copy(this.frameBounds[this.currentFrame]); } + } + if (bounds) { return this._transformBounds(bounds, matrix, ignoreTransform); } + return this.Container__getBounds(matrix, ignoreTransform); + }; + + + createjs.MovieClip = createjs.promote(MovieClip, "Container"); + + + +// MovieClipPlugin for TweenJS: + /** + * This plugin works with TweenJS to prevent the startPosition + * property from tweening. + * @private + * @class MovieClipPlugin + * @constructor + **/ + function MovieClipPlugin() { + throw("MovieClipPlugin cannot be instantiated.") + } + + /** + * @method priority + * @private + **/ + MovieClipPlugin.priority = 100; // very high priority, should run first + + /** + * @method install + * @private + **/ + MovieClipPlugin.install = function() { + createjs.Tween.installPlugin(MovieClipPlugin, ["startPosition"]); + }; + + /** + * @method init + * @param {Tween} tween + * @param {String} prop + * @param {String|Number|Boolean} value + * @private + **/ + MovieClipPlugin.init = function(tween, prop, value) { + return value; + }; + + /** + * @method step + * @private **/ - p.addChildAt = function(child, index) { - var l = arguments.length; - var indx = arguments[l-1]; // can't use the same name as the index param or it replaces arguments[1] - if (indx < 0 || indx > this.children.length) { return arguments[l-2]; } - if (l > 2) { - for (var i=0; iExample - * - * container.removeChild(child); - * - * You can also remove multiple children: - * - * removeChild(child1, child2, ...); - * - * Returns true if the child (or children) was removed, or false if it was not in the display list. - * @method removeChild - * @param {DisplayObject} child The child to remove. - * @return {Boolean} true if the child (or children) was removed, or false if it was not in the display list. - **/ - p.removeChild = function(child) { - var l = arguments.length; - if (l > 1) { - var good = true; - for (var i=0; iExample - * - * container.removeChildAt(2); - * - * You can also remove multiple children: - * - * container.removeChild(2, 7, ...) - * - * Returns true if the child (or children) was removed, or false if any index was out of range. - * @method removeChildAt - * @param {Number} index The index of the child to remove. - * @return {Boolean} true if the child (or children) was removed, or false if any index was out of range. + * The SpriteSheetUtils class is a collection of static methods for working with {{#crossLink "SpriteSheet"}}{{/crossLink}}s. + * A sprite sheet is a series of images (usually animation frames) combined into a single image on a regular grid. For + * example, an animation consisting of 8 100x100 images could be combined into a 400x200 sprite sheet (4 frames across + * by 2 high). The SpriteSheetUtils class uses a static interface and should not be instantiated. + * @class SpriteSheetUtils + * @static **/ - p.removeChildAt = function(index) { - var l = arguments.length; - if (l > 1) { - var a = []; - for (var i=0; i this.children.length-1) { return false; } - var child = this.children[index]; - if (child) { child.parent = null; } - this.children.splice(index, 1); - child.dispatchEvent("removed"); - return true; - }; + function SpriteSheetUtils() { + throw "SpriteSheetUtils cannot be instantiated"; + } + +// private static properties: /** - * Removes all children from the display list. - * - *

      Example

      - * - * container.removeAllChildren(); - * - * @method removeAllChildren + * @property _workingCanvas + * @static + * @type HTMLCanvasElement | Object + * @protected + */ + /** + * @property _workingContext + * @static + * @type CanvasRenderingContext2D + * @protected + */ + var canvas = (createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")); + if (canvas.getContext) { + SpriteSheetUtils._workingCanvas = canvas; + SpriteSheetUtils._workingContext = canvas.getContext("2d"); + canvas.width = canvas.height = 1; + } + + +// public static methods: + /** + * This is an experimental method, and may be buggy. Please report issues.

      + * Extends the existing sprite sheet by flipping the original frames horizontally, vertically, or both, + * and adding appropriate animation & frame data. The flipped animations will have a suffix added to their names + * (_h, _v, _hv as appropriate). Make sure the sprite sheet images are fully loaded before using this method. + *

      + * For example:
      + * SpriteSheetUtils.addFlippedFrames(mySpriteSheet, true, true); + * The above would add frames that are flipped horizontally AND frames that are flipped vertically. + *

      + * Note that you can also flip any display object by setting its scaleX or scaleY to a negative value. On some + * browsers (especially those without hardware accelerated canvas) this can result in slightly degraded performance, + * which is why addFlippedFrames is available. + * @method addFlippedFrames + * @static + * @param {SpriteSheet} spriteSheet + * @param {Boolean} horizontal If true, horizontally flipped frames will be added. + * @param {Boolean} vertical If true, vertically flipped frames will be added. + * @param {Boolean} both If true, frames that are flipped both horizontally and vertically will be added. + * @deprecated Modern browsers perform better when flipping via a transform (ex. scaleX=-1) rendering this obsolete. **/ - p.removeAllChildren = function() { - var kids = this.children; - while (kids.length) { this.removeChildAt(0); } + SpriteSheetUtils.addFlippedFrames = function(spriteSheet, horizontal, vertical, both) { + if (!horizontal && !vertical && !both) { return; } + + var count = 0; + if (horizontal) { SpriteSheetUtils._flip(spriteSheet,++count,true,false); } + if (vertical) { SpriteSheetUtils._flip(spriteSheet,++count,false,true); } + if (both) { SpriteSheetUtils._flip(spriteSheet,++count,true,true); } }; /** - * Returns the child at the specified index. - * - *

      Example

      + * Returns a single frame of the specified sprite sheet as a new PNG image. An example of when this may be useful is + * to use a spritesheet frame as the source for a bitmap fill. * - * container.getChildAt(2); + * WARNING: In almost all cases it is better to display a single frame using a {{#crossLink "Sprite"}}{{/crossLink}} + * with a {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} call than it is to slice out a frame using this + * method and display it with a Bitmap instance. You can also crop an image using the {{#crossLink "Bitmap/sourceRect"}}{{/crossLink}} + * property of {{#crossLink "Bitmap"}}{{/crossLink}}. * - * @method getChildAt - * @param {Number} index The index of the child to return. - * @return {DisplayObject} The child at the specified index. Returns null if there is no child at the index. - **/ - p.getChildAt = function(index) { - return this.children[index]; + * The extractFrame method may cause cross-domain warnings since it accesses pixels directly on the canvas. + * @method extractFrame + * @static + * @param {SpriteSheet} spriteSheet The SpriteSheet instance to extract a frame from. + * @param {Number|String} frameOrAnimation The frame number or animation name to extract. If an animation + * name is specified, only the first frame of the animation will be extracted. + * @return {HTMLImageElement} a single frame of the specified sprite sheet as a new PNG image. + */ + SpriteSheetUtils.extractFrame = function(spriteSheet, frameOrAnimation) { + if (isNaN(frameOrAnimation)) { + frameOrAnimation = spriteSheet.getAnimation(frameOrAnimation).frames[0]; + } + var data = spriteSheet.getFrame(frameOrAnimation); + if (!data) { return null; } + var r = data.rect; + var canvas = SpriteSheetUtils._workingCanvas; + canvas.width = r.width; + canvas.height = r.height; + SpriteSheetUtils._workingContext.drawImage(data.image, r.x, r.y, r.width, r.height, 0, 0, r.width, r.height); + var img = document.createElement("img"); + img.src = canvas.toDataURL("image/png"); + return img; }; - + /** - * Returns the child with the specified name. - * @method getChildByName - * @param {String} name The name of the child to return. - * @return {DisplayObject} The child with the specified name. - **/ - p.getChildByName = function(name) { - var kids = this.children; - for (var i=0,l=kids.length;iExample: Display children with a higher y in front. - * - * var sortFunction = function(obj1, obj2, options) { - * if (obj1.y > obj2.y) { return 1; } - * if (obj1.y < obj2.y) { return -1; } - * return 0; - * } - * container.sortChildren(sortFunction); - * - * @method sortChildren - * @param {Function} sortFunction the function to use to sort the child list. See JavaScript's Array.sort - * documentation for details. - **/ - p.sortChildren = function(sortFunction) { - this.children.sort(sortFunction); + var sfx = "_"+(h?"h":"")+(v?"v":""); + var names = spriteSheet._animations; + var data = spriteSheet._data; + var al = names.length/count; + for (i=0;iExample + * The SpriteSheetBuilder allows you to generate {{#crossLink "SpriteSheet"}}{{/crossLink}} instances at run time + * from any display object. This can allow you to maintain your assets as vector graphics (for low file size), and + * render them at run time as SpriteSheets for better performance. * - * var index = container.getChildIndex(child); + * SpriteSheets can be built either synchronously, or asynchronously, so that large SpriteSheets can be generated + * without locking the UI. * - * @method getChildIndex - * @param {DisplayObject} child The child to return the index of. - * @return {Number} The index of the specified child. -1 if the child is not found. + * Note that the "images" used in the generated SpriteSheet are actually canvas elements, and that they will be + * sized to the nearest power of 2 up to the value of {{#crossLink "SpriteSheetBuilder/maxWidth:property"}}{{/crossLink}} + * or {{#crossLink "SpriteSheetBuilder/maxHeight:property"}}{{/crossLink}}. + * @class SpriteSheetBuilder + * @param {Number} [framerate=0] The {{#crossLink "SpriteSheet/framerate:property"}}{{/crossLink}} of + * {{#crossLink "SpriteSheet"}}{{/crossLink}} instances that are created. + * @extends EventDispatcher + * @constructor **/ - p.getChildIndex = function(child) { - return createjs.indexOf(this.children, child); - }; + function SpriteSheetBuilder(framerate) { + this.EventDispatcher_constructor(); + + // public properties: + /** + * The maximum width for the images (not individual frames) in the generated SpriteSheet. It is recommended to + * use a power of 2 for this value (ex. 1024, 2048, 4096). If the frames cannot all fit within the max + * dimensions, then additional images will be created as needed. + * @property maxWidth + * @type Number + * @default 2048 + */ + this.maxWidth = 2048; - /** - * Swaps the children at the specified indexes. Fails silently if either index is out of range. - * @method swapChildrenAt - * @param {Number} index1 - * @param {Number} index2 - **/ - p.swapChildrenAt = function(index1, index2) { - var kids = this.children; - var o1 = kids[index1]; - var o2 = kids[index2]; - if (!o1 || !o2) { return; } - kids[index1] = o2; - kids[index2] = o1; - }; + /** + * The maximum height for the images (not individual frames) in the generated SpriteSheet. It is recommended to + * use a power of 2 for this value (ex. 1024, 2048, 4096). If the frames cannot all fit within the max + * dimensions, then additional images will be created as needed. + * @property maxHeight + * @type Number + * @default 2048 + **/ + this.maxHeight = 2048; - /** - * Swaps the specified children's depth in the display list. Fails silently if either child is not a child of this - * Container. - * @method swapChildren - * @param {DisplayObject} child1 - * @param {DisplayObject} child2 - **/ - p.swapChildren = function(child1, child2) { - var kids = this.children; - var index1,index2; - for (var i=0,l=kids.length;i= l) { return; } - for (var i=0;iREMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + +// constants: + SpriteSheetBuilder.ERR_DIMENSIONS = "frame dimensions exceed max spritesheet dimensions"; + SpriteSheetBuilder.ERR_RUNNING = "a build is already running"; + +// events: /** - * Tests whether the display object intersects the specified local point (ie. draws a pixel with alpha > 0 at the - * specified position). This ignores the alpha, shadow and compositeOperation of the display object, and all - * transform properties including regX/Y. - * @method hitTest - * @param {Number} x The x position to check in the display object's local coordinates. - * @param {Number} y The y position to check in the display object's local coordinates. - * @return {Boolean} A Boolean indicating whether there is a visible section of a DisplayObject that overlaps the specified - * coordinates. - **/ - p.hitTest = function(x, y) { - // TODO: optimize to use the fast cache check where possible. - return (this.getObjectUnderPoint(x, y) != null); - }; + * Dispatched when a build completes. + * @event complete + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. + * @since 0.6.0 + */ /** - * Returns an array of all display objects under the specified coordinates that are in this container's display - * list. This routine ignores any display objects with {{#crossLink "DisplayObject/mouseEnabled:property"}}{{/crossLink}} - * set to `false`. The array will be sorted in order of visual depth, with the top-most display object at index 0. - * This uses shape based hit detection, and can be an expensive operation to run, so it is best to use it carefully. - * For example, if testing for objects under the mouse, test on tick (instead of on {{#crossLink "DisplayObject/mousemove:event"}}{{/crossLink}}), - * and only if the mouse's position has changed. - * - *
        - *
      • By default (mode=0) this method evaluates all display objects.
      • - *
      • By setting the `mode` parameter to `1`, the {{#crossLink "DisplayObject/mouseEnabled:property"}}{{/crossLink}} - * and {{#crossLink "mouseChildren:property"}}{{/crossLink}} properties will be respected.
      • - *
      • Setting the `mode` to `2` additionally excludes display objects that do not have active mouse event - * listeners or a {{#crossLink "DisplayObject:cursor:property"}}{{/crossLink}} property. That is, only objects - * that would normally intercept mouse interaction will be included. This can significantly improve performance - * in some cases by reducing the number of display objects that need to be tested.
      • - * - * - * This method accounts for both {{#crossLink "DisplayObject/hitArea:property"}}{{/crossLink}} and {{#crossLink "DisplayObject/mask:property"}}{{/crossLink}}. - * @method getObjectsUnderPoint - * @param {Number} x The x position in the container to test. - * @param {Number} y The y position in the container to test. - * @param {Number} [mode=0] The mode to use to determine which display objects to include. 0-all, 1-respect mouseEnabled/mouseChildren, 2-only mouse opaque objects. - * @return {Array} An Array of DisplayObjects under the specified coordinates. + * Dispatched when an asynchronous build has progress. + * @event progress + * @param {Object} target The object that dispatched the event. + * @param {String} type The event type. + * @param {Number} progress The current progress value (0-1). + * @since 0.6.0 + */ + + +// public methods: + /** + * Adds a frame to the {{#crossLink "SpriteSheet"}}{{/crossLink}}. Note that the frame will not be drawn until you + * call {{#crossLink "SpriteSheetBuilder/build"}}{{/crossLink}} method. The optional setup params allow you to have + * a function run immediately before the draw occurs. For example, this allows you to add a single source multiple + * times, but manipulate it or its children to change it to generate different frames. + * + * Note that the source's transformations (x, y, scale, rotate, alpha) will be ignored, except for regX/Y. To apply + * transforms to a source object and have them captured in the SpriteSheet, simply place it into a {{#crossLink "Container"}}{{/crossLink}} + * and pass in the Container as the source. + * @method addFrame + * @param {DisplayObject} source The source {{#crossLink "DisplayObject"}}{{/crossLink}} to draw as the frame. + * @param {Rectangle} [sourceRect] A {{#crossLink "Rectangle"}}{{/crossLink}} defining the portion of the + * source to draw to the frame. If not specified, it will look for a `getBounds` method, bounds property, or + * `nominalBounds` property on the source to use. If one is not found, the frame will be skipped. + * @param {Number} [scale=1] Optional. The scale to draw this frame at. Default is 1. + * @param {Function} [setupFunction] A function to call immediately before drawing this frame. It will be called with two parameters: the source, and setupData. + * @param {Object} [setupData] Arbitrary setup data to pass to setupFunction as the second parameter. + * @return {Number} The index of the frame that was just added, or null if a sourceRect could not be determined. **/ - p.getObjectsUnderPoint = function(x, y, mode) { - var arr = []; - var pt = this.localToGlobal(x, y); - this._getObjectsUnderPoint(pt.x, pt.y, arr, mode>0, mode==1); - return arr; + p.addFrame = function(source, sourceRect, scale, setupFunction, setupData) { + if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } + var rect = sourceRect||source.bounds||source.nominalBounds; + if (!rect&&source.getBounds) { rect = source.getBounds(); } + if (!rect) { return null; } + scale = scale||1; + return this._frames.push({source:source, sourceRect:rect, scale:scale, funct:setupFunction, data:setupData, index:this._frames.length, height:rect.height*scale})-1; }; /** - * Similar to {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}}, but returns only the top-most display - * object. This runs significantly faster than getObjectsUnderPoint(), but is still potentially an expensive - * operation. See {{#crossLink "Container/getObjectsUnderPoint"}}{{/crossLink}} for more information. - * @method getObjectUnderPoint - * @param {Number} x The x position in the container to test. - * @param {Number} y The y position in the container to test. - * @param {Number} mode The mode to use to determine which display objects to include. 0-all, 1-respect mouseEnabled/mouseChildren, 2-only mouse opaque objects. - * @return {DisplayObject} The top-most display object under the specified coordinates. + * Adds an animation that will be included in the created {{#crossLink "SpriteSheet"}}{{/crossLink}}. + * @method addAnimation + * @param {String} name The name for the animation. + * @param {Array} frames An array of frame indexes that comprise the animation. Ex. [3,6,5] would describe an animation + * that played frame indexes 3, 6, and 5 in that order. + * @param {String} [next] Specifies the name of the animation to continue to after this animation ends. You can + * also pass false to have the animation stop when it ends. By default it will loop to the start of the same animation. + * @param {Number} [speed] Specifies a frame advance speed for this animation. For example, a value of 0.5 would + * cause the animation to advance every second tick. Note that earlier versions used `frequency` instead, which had + * the opposite effect. **/ - p.getObjectUnderPoint = function(x, y, mode) { - var pt = this.localToGlobal(x, y); - return this._getObjectsUnderPoint(pt.x, pt.y, null, mode>0, mode==1); + p.addAnimation = function(name, frames, next, speed) { + if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } + this._animations[name] = {frames:frames, next:next, speed:speed}; }; - + /** - * Docced in superclass. - */ - p.getBounds = function() { - return this._getBounds(null, true); + * This will take a {{#crossLink "MovieClip"}}{{/crossLink}} instance, and add its frames and labels to this + * builder. Labels will be added as an animation running from the label index to the next label. For example, if + * there is a label named "foo" at frame 0 and a label named "bar" at frame 10, in a MovieClip with 15 frames, it + * will add an animation named "foo" that runs from frame index 0 to 9, and an animation named "bar" that runs from + * frame index 10 to 14. + * + * Note that this will iterate through the full MovieClip with {{#crossLink "MovieClip/actionsEnabled:property"}}{{/crossLink}} + * set to `false`, ending on the last frame. + * @method addMovieClip + * @param {MovieClip} source The source MovieClip instance to add to the SpriteSheet. + * @param {Rectangle} [sourceRect] A {{#crossLink "Rectangle"}}{{/crossLink}} defining the portion of the source to + * draw to the frame. If not specified, it will look for a {{#crossLink "DisplayObject/getBounds"}}{{/crossLink}} + * method, `frameBounds` Array, `bounds` property, or `nominalBounds` property on the source to use. If one is not + * found, the MovieClip will be skipped. + * @param {Number} [scale=1] The scale to draw the movie clip at. + * @param {Function} [setupFunction] A function to call immediately before drawing each frame. It will be called + * with three parameters: the source, setupData, and the frame index. + * @param {Object} [setupData] Arbitrary setup data to pass to setupFunction as the second parameter. + * @param {Function} [labelFunction] This method will be called for each MovieClip label that is added with four + * parameters: the label name, the source MovieClip instance, the starting frame index (in the movieclip timeline) + * and the end index. It must return a new name for the label/animation, or `false` to exclude the label. + **/ + p.addMovieClip = function(source, sourceRect, scale, setupFunction, setupData, labelFunction) { + if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } + var rects = source.frameBounds; + var rect = sourceRect||source.bounds||source.nominalBounds; + if (!rect&&source.getBounds) { rect = source.getBounds(); } + if (!rect && !rects) { return; } + + var i, l, baseFrameIndex = this._frames.length; + var duration = source.timeline.duration; + for (i=0; i=0; i--) { - var child = this.children[i]; - if (child.tickEnabled && child._tick) { child._tick(evtObj); } + p._startBuild = function() { + var pad = this.padding||0; + this.progress = 0; + this.spriteSheet = null; + this._index = 0; + this._scale = this.scale; + var dataFrames = []; + this._data = { + images: [], + frames: dataFrames, + framerate: this.framerate, + animations: this._animations // TODO: should we "clone" _animations in case someone adds more animations after a build? + }; + + var frames = this._frames.slice(); + frames.sort(function(a,b) { return (a.height<=b.height) ? -1 : 1; }); + + if (frames[frames.length-1].height+pad*2 > this.maxHeight) { throw SpriteSheetBuilder.ERR_DIMENSIONS; } + var y=0, x=0; + var img = 0; + while (frames.length) { + var o = this._fillRow(frames, y, img, dataFrames, pad); + if (o.w > x) { x = o.w; } + y += o.h; + if (!o.h || !frames.length) { + var canvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); + canvas.width = this._getSize(x,this.maxWidth); + canvas.height = this._getSize(y,this.maxHeight); + this._data.images[img] = canvas; + if (!o.h) { + x=y=0; + img++; + } } } - this.DisplayObject__tick(evtObj); }; /** - * Recursively clones all children of this container, and adds them to the target container. - * @method cloneChildren + * @method _setupMovieClipFrame * @protected - * @param {Container} o The target container. + * @return {Number} The width & height of the row. **/ - p._cloneChildren = function(o) { - if (o.children.length) { o.removeAllChildren(); } - var arr = o.children; - for (var i=0, l=this.children.length; i=0; i--) { + var frame = frames[i]; + var sc = this._scale*frame.scale; + var rect = frame.sourceRect; + var source = frame.source; + var rx = Math.floor(sc*rect.x-pad); + var ry = Math.floor(sc*rect.y-pad); + var rh = Math.ceil(sc*rect.height+pad*2); + var rw = Math.ceil(sc*rect.width+pad*2); + if (rw > w) { throw SpriteSheetBuilder.ERR_DIMENSIONS; } + if (rh > h || x+rw > w) { continue; } + frame.img = img; + frame.rect = new createjs.Rectangle(x,y,rw,rh); + height = height || rh; + frames.splice(i,1); + dataFrames[frame.index] = [x,y,rw,rh,img,Math.round(-rx+sc*source.regX-pad),Math.round(-ry+sc*source.regY-pad)]; + x += rw; + } + return {w:x, h:height}; + }; - // draw children one at a time, and check if we get a hit: - var children = this.children, l = children.length; - for (var i=l-1; i>=0; i--) { - var child = children[i]; - var hitArea = child.hitArea; - if (!child.visible || (!hitArea && !child.isVisible()) || (mouse && !child.mouseEnabled)) { continue; } - if (!hitArea && !this._testMask(child, x, y)) { continue; } - - // if a child container has a hitArea then we only need to check its hitArea, so we can treat it as a normal DO: - if (!hitArea && child instanceof Container) { - var result = child._getObjectsUnderPoint(x, y, arr, mouse, activeListener, currentDepth+1); - if (!arr && result) { return (mouse && !this.mouseChildren) ? this : result; } - } else { - if (mouse && !activeListener && !child._hasMouseEventListener()) { continue; } - - // TODO: can we pass displayProps forward, to avoid having to calculate this backwards every time? It's kind of a mixed bag. When we're only hunting for DOs with event listeners, it may not make sense. - var props = child.getConcatenatedDisplayProps(child._props); - mtx = props.matrix; - - if (hitArea) { - mtx.appendMatrix(hitArea.getMatrix(hitArea._props.matrix)); - props.alpha = hitArea.alpha; - } - - ctx.globalAlpha = props.alpha; - ctx.setTransform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx-x, mtx.ty-y); - (hitArea||child).draw(ctx); - if (!this._testHit(ctx)) { continue; } - ctx.setTransform(1, 0, 0, 1, 0, 0); - ctx.clearRect(0, 0, 2, 2); - if (arr) { arr.push(child); } - else { return (mouse && !this.mouseChildren) ? this : child; } - } + /** + * @method _endBuild + * @protected + **/ + p._endBuild = function() { + this.spriteSheet = new createjs.SpriteSheet(this._data); + this._data = null; + this.progress = 1; + this.dispatchEvent("complete"); + }; + + /** + * @method _run + * @protected + **/ + p._run = function() { + var ts = Math.max(0.01, Math.min(0.99, this.timeSlice||0.3))*50; + var t = (new Date()).getTime()+ts; + var complete = false; + while (t > (new Date()).getTime()) { + if (!this._drawNext()) { complete = true; break; } } - return null; + if (complete) { + this._endBuild(); + } else { + var _this = this; + this._timerID = setTimeout(function() { _this._run(); }, 50-ts); + } + var p = this.progress = this._index/this._frames.length; + if (this.hasEventListener("progress")) { + var evt = new createjs.Event("progress"); + evt.progress = p; + this.dispatchEvent(evt); + } + }; + + /** + * @method _drawNext + * @protected + * @return Boolean Returns false if this is the last draw. + **/ + p._drawNext = function() { + var frame = this._frames[this._index]; + var sc = frame.scale*this._scale; + var rect = frame.rect; + var sourceRect = frame.sourceRect; + var canvas = this._data.images[frame.img]; + var ctx = canvas.getContext("2d"); + frame.funct&&frame.funct(frame.source, frame.data); + ctx.save(); + ctx.beginPath(); + ctx.rect(rect.x, rect.y, rect.width, rect.height); + ctx.clip(); + ctx.translate(Math.ceil(rect.x-sourceRect.x*sc), Math.ceil(rect.y-sourceRect.y*sc)); + ctx.scale(sc,sc); + frame.source.draw(ctx); // display object will draw itself. + ctx.restore(); + return (++this._index) < this._frames.length; + }; + + + createjs.SpriteSheetBuilder = createjs.promote(SpriteSheetBuilder, "EventDispatcher"); +}()); + +//############################################################################## +// DOMElement.js +//############################################################################## + +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * This class is still experimental, and more advanced use is likely to be buggy. Please report bugs. + * + * A DOMElement allows you to associate a HTMLElement with the display list. It will be transformed + * within the DOM as though it is child of the {{#crossLink "Container"}}{{/crossLink}} it is added to. However, it is + * not rendered to canvas, and as such will retain whatever z-index it has relative to the canvas (ie. it will be + * drawn in front of or behind the canvas). + * + * The position of a DOMElement is relative to their parent node in the DOM. It is recommended that + * the DOM Object be added to a div that also contains the canvas so that they share the same position + * on the page. + * + * DOMElement is useful for positioning HTML elements over top of canvas content, and for elements + * that you want to display outside the bounds of the canvas. For example, a tooltip with rich HTML + * content. + * + *

        Mouse Interaction

        + * + * DOMElement instances are not full EaselJS display objects, and do not participate in EaselJS mouse + * events or support methods like hitTest. To get mouse events from a DOMElement, you must instead add handlers to + * the htmlElement (note, this does not support EventDispatcher) + * + * var domElement = new createjs.DOMElement(htmlElement); + * domElement.htmlElement.onclick = function() { + * console.log("clicked"); + * } + * + * @class DOMElement + * @extends DisplayObject + * @constructor + * @param {HTMLElement} htmlElement A reference or id for the DOM element to manage. + */ + function DOMElement(htmlElement) { + this.DisplayObject_constructor(); + + if (typeof(htmlElement)=="string") { htmlElement = document.getElementById(htmlElement); } + this.mouseEnabled = false; + + var style = htmlElement.style; + style.position = "absolute"; + style.transformOrigin = style.WebkitTransformOrigin = style.msTransformOrigin = style.MozTransformOrigin = style.OTransformOrigin = "0% 0%"; + + + // public properties: + /** + * The DOM object to manage. + * @property htmlElement + * @type HTMLElement + */ + this.htmlElement = htmlElement; + + + // private properties: + /** + * @property _oldMtx + * @type Matrix2D + * @protected + */ + this._oldProps = null; + } + var p = createjs.extend(DOMElement, createjs.DisplayObject); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// public methods: + /** + * Returns true or false indicating whether the display object would be visible if drawn to a canvas. + * This does not account for whether it would be visible within the boundaries of the stage. + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method isVisible + * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas + */ + p.isVisible = function() { + return this.htmlElement != null; + }; + + /** + * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. + * Returns true if the draw was handled (useful for overriding functionality). + * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. + * @method draw + * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. + * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. + * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back + * into itself). + * @return {Boolean} + */ + p.draw = function(ctx, ignoreCache) { + // this relies on the _tick method because draw isn't called if the parent is not visible. + // the actual update happens in _handleDrawEnd + return true; + }; + + /** + * Not applicable to DOMElement. + * @method cache + */ + p.cache = function() {}; + + /** + * Not applicable to DOMElement. + * @method uncache + */ + p.uncache = function() {}; + + /** + * Not applicable to DOMElement. + * @method updateCache + */ + p.updateCache = function() {}; + + /** + * Not applicable to DOMElement. + * @method hitTest + */ + p.hitTest = function() {}; + + /** + * Not applicable to DOMElement. + * @method localToGlobal + */ + p.localToGlobal = function() {}; + + /** + * Not applicable to DOMElement. + * @method globalToLocal + */ + p.globalToLocal = function() {}; + + /** + * Not applicable to DOMElement. + * @method localToLocal + */ + p.localToLocal = function() {}; + + /** + * DOMElement cannot be cloned. Throws an error. + * @method clone + */ + p.clone = function() { + throw("DOMElement cannot be cloned.") }; - + /** - * @method _testMask - * @param {DisplayObject} target - * @param {Number} x - * @param {Number} y - * @return {Boolean} Indicates whether the x/y is within the masked region. + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + */ + p.toString = function() { + return "[DOMElement (name="+ this.name +")]"; + }; + + /** + * Interaction events should be added to `htmlElement`, and not the DOMElement instance, since DOMElement instances + * are not full EaselJS display objects and do not participate in EaselJS mouse events. + * @event click + */ + + /** + * Interaction events should be added to `htmlElement`, and not the DOMElement instance, since DOMElement instances + * are not full EaselJS display objects and do not participate in EaselJS mouse events. + * @event dblClick + */ + + /** + * Interaction events should be added to `htmlElement`, and not the DOMElement instance, since DOMElement instances + * are not full EaselJS display objects and do not participate in EaselJS mouse events. + * @event mousedown + */ + + /** + * The HTMLElement can listen for the mouseover event, not the DOMElement instance. + * Since DOMElement instances are not full EaselJS display objects and do not participate in EaselJS mouse events. + * @event mouseover + */ + + /** + * Not applicable to DOMElement. + * @event tick + */ + + +// private methods: + /** + * @method _tick + * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. + * function. * @protected - **/ - p._testMask = function(target, x, y) { - var mask = target.mask; - if (!mask || !mask.graphics || mask.graphics.isEmpty()) { return true; } - - var mtx = this._props.matrix, parent = target.parent; - mtx = parent ? parent.getConcatenatedMatrix(mtx) : mtx.identity(); - mtx = mask.getMatrix(mask._props.matrix).prependMatrix(mtx); - - var ctx = createjs.DisplayObject._hitTestContext; - ctx.setTransform(mtx.a, mtx.b, mtx.c, mtx.d, mtx.tx-x, mtx.ty-y); - - // draw the mask as a solid fill: - mask.graphics.drawAsPath(ctx); - ctx.fillStyle = "#000"; - ctx.fill(); - - if (!this._testHit(ctx)) { return false; } - ctx.setTransform(1, 0, 0, 1, 0, 0); - ctx.clearRect(0, 0, 2, 2); - - return true; + */ + p._tick = function(evtObj) { + var stage = this.getStage(); + stage&&stage.on("drawend", this._handleDrawEnd, this, true); + this.DisplayObject__tick(evtObj); }; /** - * @method _getBounds - * @param {Matrix2D} matrix - * @param {Boolean} ignoreTransform If true, does not apply this object's transform. - * @return {Rectangle} + * @method _handleDrawEnd + * @param {Event} evt * @protected - **/ - p._getBounds = function(matrix, ignoreTransform) { - var bounds = this.DisplayObject_getBounds(); - if (bounds) { return this._transformBounds(bounds, matrix, ignoreTransform); } + */ + p._handleDrawEnd = function(evt) { + var o = this.htmlElement; + if (!o) { return; } + var style = o.style; - var mtx = this._props.matrix; - mtx = ignoreTransform ? mtx.identity() : this.getMatrix(mtx); - if (matrix) { mtx.prependMatrix(matrix); } + var props = this.getConcatenatedDisplayProps(this._props), mtx = props.matrix; - var l = this.children.length, rect=null; - for (var i=0; iExample - * This example creates a stage, adds a child to it, then uses {{#crossLink "Ticker"}}{{/crossLink}} to update the child - * and redraw the stage using {{#crossLink "Stage/update"}}{{/crossLink}}. - * - * var stage = new createjs.Stage("canvasElementId"); - * var image = new createjs.Bitmap("imagePath.png"); - * stage.addChild(image); - * createjs.Ticker.addEventListener("tick", handleTick); - * function handleTick(event) { - * image.x += 10; - * stage.update(); - * } - * - * @class Stage - * @extends Container - * @constructor - * @param {HTMLCanvasElement | String | Object} canvas A canvas object that the Stage will render to, or the string id - * of a canvas object in the current document. - **/ - function Stage(canvas) { - this.Container_constructor(); - - - // public properties: - /** - * Indicates whether the stage should automatically clear the canvas before each render. You can set this to false - * to manually control clearing (for generative art, or when pointing multiple stages at the same canvas for - * example). - * - *

        Example

        - * - * var stage = new createjs.Stage("canvasId"); - * stage.autoClear = false; - * - * @property autoClear - * @type Boolean - * @default true - **/ - this.autoClear = true; - - /** - * The canvas the stage will render to. Multiple stages can share a single canvas, but you must disable autoClear for all but the - * first stage that will be ticked (or they will clear each other's render). - * - * When changing the canvas property you must disable the events on the old canvas, and enable events on the - * new canvas or mouse events will not work as expected. For example: - * - * myStage.enableDOMEvents(false); - * myStage.canvas = anotherCanvas; - * myStage.enableDOMEvents(true); - * - * @property canvas - * @type HTMLCanvasElement | Object - **/ - this.canvas = (typeof canvas == "string") ? document.getElementById(canvas) : canvas; - - /** - * The current mouse X position on the canvas. If the mouse leaves the canvas, this will indicate the most recent - * position over the canvas, and mouseInBounds will be set to false. - * @property mouseX - * @type Number - * @readonly - **/ - this.mouseX = 0; - - /** - * The current mouse Y position on the canvas. If the mouse leaves the canvas, this will indicate the most recent - * position over the canvas, and mouseInBounds will be set to false. - * @property mouseY - * @type Number - * @readonly - **/ - this.mouseY = 0; - - /** - * Specifies the area of the stage to affect when calling update. This can be use to selectively - * re-draw specific regions of the canvas. If null, the whole canvas area is drawn. - * @property drawRect - * @type {Rectangle} - */ - this.drawRect = null; - - /** - * Indicates whether display objects should be rendered on whole pixels. You can set the - * {{#crossLink "DisplayObject/snapToPixel"}}{{/crossLink}} property of - * display objects to false to enable/disable this behaviour on a per instance basis. - * @property snapToPixelEnabled - * @type Boolean - * @default false - **/ - this.snapToPixelEnabled = false; - - /** - * Indicates whether the mouse is currently within the bounds of the canvas. - * @property mouseInBounds - * @type Boolean - * @default false - **/ - this.mouseInBounds = false; - - /** - * If true, tick callbacks will be called on all display objects on the stage prior to rendering to the canvas. - * @property tickOnUpdate - * @type Boolean - * @default true - **/ - this.tickOnUpdate = true; - - /** - * If true, mouse move events will continue to be called when the mouse leaves the target canvas. See - * {{#crossLink "Stage/mouseInBounds:property"}}{{/crossLink}}, and {{#crossLink "MouseEvent"}}{{/crossLink}} - * x/y/rawX/rawY. - * @property mouseMoveOutside - * @type Boolean - * @default false - **/ - this.mouseMoveOutside = false; - - - /** - * Prevents selection of other elements in the html page if the user clicks and drags, or double clicks on the canvas. - * This works by calling `preventDefault()` on any mousedown events (or touch equivalent) originating on the canvas. - * @property preventSelection - * @type Boolean - * @default true - **/ - this.preventSelection = true; - - /** - * The hitArea property is not supported for Stage. - * @property hitArea - * @type {DisplayObject} - * @default null - */ - - - // private properties: - /** - * Holds objects with data for each active pointer id. Each object has the following properties: - * x, y, event, target, overTarget, overX, overY, inBounds, posEvtObj (native event that last updated position) - * @property _pointerData - * @type {Object} - * @private - */ - this._pointerData = {}; - - /** - * Number of active pointers. - * @property _pointerCount - * @type {Object} - * @private - */ - this._pointerCount = 0; - - /** - * The ID of the primary pointer. - * @property _primaryPointerID - * @type {Object} - * @private - */ - this._primaryPointerID = null; - - /** - * @property _mouseOverIntervalID - * @protected - * @type Number - **/ - this._mouseOverIntervalID = null; - - /** - * @property _nextStage - * @protected - * @type Stage - **/ - this._nextStage = null; - - /** - * @property _prevStage - * @protected - * @type Stage - **/ - this._prevStage = null; - - - // initialize: - this.enableDOMEvents(true); - } - var p = createjs.extend(Stage, createjs.Container); - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// events: - /** - * Dispatched when the user moves the mouse over the canvas. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event stagemousemove - * @since 0.6.0 - */ - - /** - * Dispatched when the user presses their left mouse button on the canvas. See the {{#crossLink "MouseEvent"}}{{/crossLink}} - * class for a listing of event properties. - * @event stagemousedown - * @since 0.6.0 - */ - - /** - * Dispatched when the user the user presses somewhere on the stage, then releases the mouse button anywhere that the page can detect it (this varies slightly between browsers). - * You can use {{#crossLink "Stage/mouseInBounds:property"}}{{/crossLink}} to check whether the mouse is currently within the stage bounds. - * See the {{#crossLink "MouseEvent"}}{{/crossLink}} class for a listing of event properties. - * @event stagemouseup - * @since 0.6.0 - */ - - /** - * Dispatched when the mouse moves from within the canvas area (mouseInBounds == true) to outside it (mouseInBounds == false). - * This is currently only dispatched for mouse input (not touch). See the {{#crossLink "MouseEvent"}}{{/crossLink}} - * class for a listing of event properties. - * @event mouseleave - * @since 0.7.0 - */ - - /** - * Dispatched when the mouse moves into the canvas area (mouseInBounds == false) from outside it (mouseInBounds == true). - * This is currently only dispatched for mouse input (not touch). See the {{#crossLink "MouseEvent"}}{{/crossLink}} - * class for a listing of event properties. - * @event mouseenter - * @since 0.7.0 - */ - - /** - * Dispatched each update immediately before the tick event is propagated through the display list. - * You can call preventDefault on the event object to cancel propagating the tick event. - * @event tickstart - * @since 0.7.0 - */ - - /** - * Dispatched each update immediately after the tick event is propagated through the display list. Does not fire if - * tickOnUpdate is false. Precedes the "drawstart" event. - * @event tickend - * @since 0.7.0 - */ - - /** - * Dispatched each update immediately before the canvas is cleared and the display list is drawn to it. - * You can call preventDefault on the event object to cancel the draw. - * @event drawstart - * @since 0.7.0 - */ - - /** - * Dispatched each update immediately after the display list is drawn to the canvas and the canvas context is restored. - * @event drawend - * @since 0.7.0 - */ - - -// getter / setters: - /** - * Specifies a target stage that will have mouse / touch interactions relayed to it after this stage handles them. - * This can be useful in cases where you have multiple layered canvases and want user interactions - * events to pass through. For example, this would relay mouse events from topStage to bottomStage: - * - * topStage.nextStage = bottomStage; - * - * To disable relaying, set nextStage to null. - * - * MouseOver, MouseOut, RollOver, and RollOut interactions are also passed through using the mouse over settings - * of the top-most stage, but are only processed if the target stage has mouse over interactions enabled. - * Considerations when using roll over in relay targets:
          - *
        1. The top-most (first) stage must have mouse over interactions enabled (via enableMouseOver)
        2. - *
        3. All stages that wish to participate in mouse over interaction must enable them via enableMouseOver
        4. - *
        5. All relay targets will share the frequency value of the top-most stage
        6. - *
        - * To illustrate, in this example the targetStage would process mouse over interactions at 10hz (despite passing - * 30 as it's desired frequency): - * topStage.nextStage = targetStage; - * topStage.enableMouseOver(10); - * targetStage.enableMouseOver(30); - * - * If the target stage's canvas is completely covered by this stage's canvas, you may also want to disable its - * DOM events using: - * - * targetStage.enableDOMEvents(false); - * - * @property nextStage - * @type {Stage} - **/ - p._get_nextStage = function() { - return this._nextStage; - }; - p._set_nextStage = function(value) { - if (this._nextStage) { this._nextStage._prevStage = null; } - if (value) { value._prevStage = this; } - this._nextStage = value; - }; - - try { - Object.defineProperties(p, { - nextStage: { get: p._get_nextStage, set: p._set_nextStage } - }); - } catch (e) {} // TODO: use Log - - -// public methods: - /** - * Each time the update method is called, the stage will call {{#crossLink "Stage/tick"}}{{/crossLink}} - * unless {{#crossLink "Stage/tickOnUpdate:property"}}{{/crossLink}} is set to false, - * and then render the display list to the canvas. - * - * @method update - * @param {Object} [props] Props object to pass to `tick()`. Should usually be a {{#crossLink "Ticker"}}{{/crossLink}} event object, or similar object with a delta property. - **/ - p.update = function(props) { - if (!this.canvas) { return; } - if (this.tickOnUpdate) { this.tick(props); } - if (this.dispatchEvent("drawstart", false, true) === false) { return; } - createjs.DisplayObject._snapToPixelEnabled = this.snapToPixelEnabled; - var r = this.drawRect, ctx = this.canvas.getContext("2d"); - ctx.setTransform(1, 0, 0, 1, 0, 0); - if (this.autoClear) { - if (r) { ctx.clearRect(r.x, r.y, r.width, r.height); } - else { ctx.clearRect(0, 0, this.canvas.width+1, this.canvas.height+1); } - } - ctx.save(); - if (this.drawRect) { - ctx.beginPath(); - ctx.rect(r.x, r.y, r.width, r.height); - ctx.clip(); - } - this.updateContext(ctx); - this.draw(ctx, false); - ctx.restore(); - this.dispatchEvent("drawend"); - }; - - /** - * Propagates a tick event through the display list. This is automatically called by {{#crossLink "Stage/update"}}{{/crossLink}} - * unless {{#crossLink "Stage/tickOnUpdate:property"}}{{/crossLink}} is set to false. - * - * If a props object is passed to `tick()`, then all of its properties will be copied to the event object that is - * propagated to listeners. - * - * Some time-based features in EaselJS (for example {{#crossLink "Sprite/framerate"}}{{/crossLink}} require that - * a {{#crossLink "Ticker/tick:event"}}{{/crossLink}} event object (or equivalent object with a delta property) be - * passed as the `props` parameter to `tick()`. For example: - * - * Ticker.on("tick", handleTick); - * function handleTick(evtObj) { - * // clone the event object from Ticker, and add some custom data to it: - * var evt = evtObj.clone().set({greeting:"hello", name:"world"}); - * - * // pass it to stage.update(): - * myStage.update(evt); // subsequently calls tick() with the same param - * } - * - * // ... - * myDisplayObject.on("tick", handleDisplayObjectTick); - * function handleDisplayObjectTick(evt) { - * console.log(evt.delta); // the delta property from the Ticker tick event object - * console.log(evt.greeting, evt.name); // custom data: "hello world" - * } - * - * @method tick - * @param {Object} [props] An object with properties that should be copied to the event object. Should usually be a Ticker event object, or similar object with a delta property. - **/ - p.tick = function(props) { - if (!this.tickEnabled || this.dispatchEvent("tickstart", false, true) === false) { return; } - var evtObj = new createjs.Event("tick"); - if (props) { - for (var n in props) { - if (props.hasOwnProperty(n)) { evtObj[n] = props[n]; } - } - } - this._tick(evtObj); - this.dispatchEvent("tickend"); - }; - - /** - * Default event handler that calls the Stage {{#crossLink "Stage/update"}}{{/crossLink}} method when a {{#crossLink "DisplayObject/tick:event"}}{{/crossLink}} - * event is received. This allows you to register a Stage instance as a event listener on {{#crossLink "Ticker"}}{{/crossLink}} - * directly, using: - * - * Ticker.addEventListener("tick", myStage"); - * - * Note that if you subscribe to ticks using this pattern, then the tick event object will be passed through to - * display object tick handlers, instead of delta and paused parameters. - * @property handleEvent - * @type Function - **/ - p.handleEvent = function(evt) { - if (evt.type == "tick") { this.update(evt); } - }; - - /** - * Clears the target canvas. Useful if {{#crossLink "Stage/autoClear:property"}}{{/crossLink}} is set to `false`. - * @method clear - **/ - p.clear = function() { - if (!this.canvas) { return; } - var ctx = this.canvas.getContext("2d"); - ctx.setTransform(1, 0, 0, 1, 0, 0); - ctx.clearRect(0, 0, this.canvas.width+1, this.canvas.height+1); - }; - - /** - * Returns a data url that contains a Base64-encoded image of the contents of the stage. The returned data url can - * be specified as the src value of an image element. - * @method toDataURL - * @param {String} [backgroundColor] The background color to be used for the generated image. Any valid CSS color - * value is allowed. The default value is a transparent background. - * @param {String} [mimeType="image/png"] The MIME type of the image format to be create. The default is "image/png". If an unknown MIME type - * is passed in, or if the browser does not support the specified MIME type, the default value will be used. - * @return {String} a Base64 encoded image. - **/ - p.toDataURL = function(backgroundColor, mimeType) { - var data, ctx = this.canvas.getContext('2d'), w = this.canvas.width, h = this.canvas.height; - - if (backgroundColor) { - data = ctx.getImageData(0, 0, w, h); - var compositeOperation = ctx.globalCompositeOperation; - ctx.globalCompositeOperation = "destination-over"; - - ctx.fillStyle = backgroundColor; - ctx.fillRect(0, 0, w, h); - } - - var dataURL = this.canvas.toDataURL(mimeType||"image/png"); - - if(backgroundColor) { - ctx.putImageData(data, 0, 0); - ctx.globalCompositeOperation = compositeOperation; - } - - return dataURL; - }; - - /** - * Enables or disables (by passing a frequency of 0) mouse over ({{#crossLink "DisplayObject/mouseover:event"}}{{/crossLink}} - * and {{#crossLink "DisplayObject/mouseout:event"}}{{/crossLink}}) and roll over events ({{#crossLink "DisplayObject/rollover:event"}}{{/crossLink}} - * and {{#crossLink "DisplayObject/rollout:event"}}{{/crossLink}}) for this stage's display list. These events can - * be expensive to generate, so they are disabled by default. The frequency of the events can be controlled - * independently of mouse move events via the optional `frequency` parameter. - * - *

        Example

        - * - * var stage = new createjs.Stage("canvasId"); - * stage.enableMouseOver(10); // 10 updates per second - * - * @method enableMouseOver - * @param {Number} [frequency=20] Optional param specifying the maximum number of times per second to broadcast - * mouse over/out events. Set to 0 to disable mouse over events completely. Maximum is 50. A lower frequency is less - * responsive, but uses less CPU. - **/ - p.enableMouseOver = function(frequency) { - if (this._mouseOverIntervalID) { - clearInterval(this._mouseOverIntervalID); - this._mouseOverIntervalID = null; - if (frequency == 0) { - this._testMouseOver(true); - } - } - if (frequency == null) { frequency = 20; } - else if (frequency <= 0) { return; } - var o = this; - this._mouseOverIntervalID = setInterval(function(){ o._testMouseOver(); }, 1000/Math.min(50,frequency)); - }; - - /** - * Enables or disables the event listeners that stage adds to DOM elements (window, document and canvas). It is good - * practice to disable events when disposing of a Stage instance, otherwise the stage will continue to receive - * events from the page. - * - * When changing the canvas property you must disable the events on the old canvas, and enable events on the - * new canvas or mouse events will not work as expected. For example: - * - * myStage.enableDOMEvents(false); - * myStage.canvas = anotherCanvas; - * myStage.enableDOMEvents(true); - * - * @method enableDOMEvents - * @param {Boolean} [enable=true] Indicates whether to enable or disable the events. Default is true. - **/ - p.enableDOMEvents = function(enable) { - if (enable == null) { enable = true; } - var n, o, ls = this._eventListeners; - if (!enable && ls) { - for (n in ls) { - o = ls[n]; - o.t.removeEventListener(n, o.f, false); - } - this._eventListeners = null; - } else if (enable && !ls && this.canvas) { - var t = window.addEventListener ? window : document; - var _this = this; - ls = this._eventListeners = {}; - ls["mouseup"] = {t:t, f:function(e) { _this._handleMouseUp(e)} }; - ls["mousemove"] = {t:t, f:function(e) { _this._handleMouseMove(e)} }; - ls["dblclick"] = {t:this.canvas, f:function(e) { _this._handleDoubleClick(e)} }; - ls["mousedown"] = {t:this.canvas, f:function(e) { _this._handleMouseDown(e)} }; - - for (n in ls) { - o = ls[n]; - o.t.addEventListener(n, o.f, false); - } - } - }; - - /** - * Stage instances cannot be cloned. - * @method clone - **/ - p.clone = function() { - throw("Stage cannot be cloned."); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Stage (name="+ this.name +")]"; - }; - - -// private methods: - /** - * @method _getElementRect - * @protected - * @param {HTMLElement} e - **/ - p._getElementRect = function(e) { - var bounds; - try { bounds = e.getBoundingClientRect(); } // this can fail on disconnected DOM elements in IE9 - catch (err) { bounds = {top: e.offsetTop, left: e.offsetLeft, width:e.offsetWidth, height:e.offsetHeight}; } - - var offX = (window.pageXOffset || document.scrollLeft || 0) - (document.clientLeft || document.body.clientLeft || 0); - var offY = (window.pageYOffset || document.scrollTop || 0) - (document.clientTop || document.body.clientTop || 0); - - var styles = window.getComputedStyle ? getComputedStyle(e,null) : e.currentStyle; // IE <9 compatibility. - var padL = parseInt(styles.paddingLeft)+parseInt(styles.borderLeftWidth); - var padT = parseInt(styles.paddingTop)+parseInt(styles.borderTopWidth); - var padR = parseInt(styles.paddingRight)+parseInt(styles.borderRightWidth); - var padB = parseInt(styles.paddingBottom)+parseInt(styles.borderBottomWidth); - - // note: in some browsers bounds properties are read only. - return { - left: bounds.left+offX+padL, - right: bounds.right+offX-padR, - top: bounds.top+offY+padT, - bottom: bounds.bottom+offY-padB - } - }; - - /** - * @method _getPointerData - * @protected - * @param {Number} id - **/ - p._getPointerData = function(id) { - var data = this._pointerData[id]; - if (!data) { data = this._pointerData[id] = {x:0,y:0}; } - return data; - }; - - /** - * @method _handleMouseMove - * @protected - * @param {MouseEvent} e - **/ - p._handleMouseMove = function(e) { - if(!e){ e = window.event; } - this._handlePointerMove(-1, e, e.pageX, e.pageY); - }; - - /** - * @method _handlePointerMove - * @protected - * @param {Number} id - * @param {Event} e - * @param {Number} pageX - * @param {Number} pageY - * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. - **/ - p._handlePointerMove = function(id, e, pageX, pageY, owner) { - if (this._prevStage && owner === undefined) { return; } // redundant listener. - if (!this.canvas) { return; } - var nextStage=this._nextStage, o=this._getPointerData(id); - - var inBounds = o.inBounds; - this._updatePointerPosition(id, e, pageX, pageY); - if (inBounds || o.inBounds || this.mouseMoveOutside) { - if (id === -1 && o.inBounds == !inBounds) { - this._dispatchMouseEvent(this, (inBounds ? "mouseleave" : "mouseenter"), false, id, o, e); - } - - this._dispatchMouseEvent(this, "stagemousemove", false, id, o, e); - this._dispatchMouseEvent(o.target, "pressmove", true, id, o, e); - } - - nextStage&&nextStage._handlePointerMove(id, e, pageX, pageY, null); - }; - - /** - * @method _updatePointerPosition - * @protected - * @param {Number} id - * @param {Event} e - * @param {Number} pageX - * @param {Number} pageY - **/ - p._updatePointerPosition = function(id, e, pageX, pageY) { - var rect = this._getElementRect(this.canvas); - pageX -= rect.left; - pageY -= rect.top; - - var w = this.canvas.width; - var h = this.canvas.height; - pageX /= (rect.right-rect.left)/w; - pageY /= (rect.bottom-rect.top)/h; - var o = this._getPointerData(id); - if (o.inBounds = (pageX >= 0 && pageY >= 0 && pageX <= w-1 && pageY <= h-1)) { - o.x = pageX; - o.y = pageY; - } else if (this.mouseMoveOutside) { - o.x = pageX < 0 ? 0 : (pageX > w-1 ? w-1 : pageX); - o.y = pageY < 0 ? 0 : (pageY > h-1 ? h-1 : pageY); - } - - o.posEvtObj = e; - o.rawX = pageX; - o.rawY = pageY; - - if (id === this._primaryPointerID || id === -1) { - this.mouseX = o.x; - this.mouseY = o.y; - this.mouseInBounds = o.inBounds; - } - }; - - /** - * @method _handleMouseUp - * @protected - * @param {MouseEvent} e - **/ - p._handleMouseUp = function(e) { - this._handlePointerUp(-1, e, false); - }; - - /** - * @method _handlePointerUp - * @protected - * @param {Number} id - * @param {Event} e - * @param {Boolean} clear - * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. - **/ - p._handlePointerUp = function(id, e, clear, owner) { - var nextStage = this._nextStage, o = this._getPointerData(id); - if (this._prevStage && owner === undefined) { return; } // redundant listener. - - var target=null, oTarget = o.target; - if (!owner && (oTarget || nextStage)) { target = this._getObjectsUnderPoint(o.x, o.y, null, true); } - - if (o.down) { this._dispatchMouseEvent(this, "stagemouseup", false, id, o, e, target); o.down = false; } - - if (target == oTarget) { this._dispatchMouseEvent(oTarget, "click", true, id, o, e); } - this._dispatchMouseEvent(oTarget, "pressup", true, id, o, e); - - if (clear) { - if (id==this._primaryPointerID) { this._primaryPointerID = null; } - delete(this._pointerData[id]); - } else { o.target = null; } - - nextStage&&nextStage._handlePointerUp(id, e, clear, owner || target && this); - }; - - /** - * @method _handleMouseDown - * @protected - * @param {MouseEvent} e - **/ - p._handleMouseDown = function(e) { - this._handlePointerDown(-1, e, e.pageX, e.pageY); - }; - - /** - * @method _handlePointerDown - * @protected - * @param {Number} id - * @param {Event} e - * @param {Number} pageX - * @param {Number} pageY - * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. - **/ - p._handlePointerDown = function(id, e, pageX, pageY, owner) { - if (this.preventSelection) { e.preventDefault(); } - if (this._primaryPointerID == null || id === -1) { this._primaryPointerID = id; } // mouse always takes over. - - if (pageY != null) { this._updatePointerPosition(id, e, pageX, pageY); } - var target = null, nextStage = this._nextStage, o = this._getPointerData(id); - if (!owner) { target = o.target = this._getObjectsUnderPoint(o.x, o.y, null, true); } - - if (o.inBounds) { this._dispatchMouseEvent(this, "stagemousedown", false, id, o, e, target); o.down = true; } - this._dispatchMouseEvent(target, "mousedown", true, id, o, e); - - nextStage&&nextStage._handlePointerDown(id, e, pageX, pageY, owner || target && this); - }; - - /** - * @method _testMouseOver - * @param {Boolean} clear If true, clears the mouseover / rollover (ie. no target) - * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. - * @param {Stage} eventTarget The stage that the cursor is actively over. - * @protected - **/ - p._testMouseOver = function(clear, owner, eventTarget) { - if (this._prevStage && owner === undefined) { return; } // redundant listener. - - var nextStage = this._nextStage; - if (!this._mouseOverIntervalID) { - // not enabled for mouseover, but should still relay the event. - nextStage&&nextStage._testMouseOver(clear, owner, eventTarget); - return; - } - var o = this._getPointerData(-1); - // only update if the mouse position has changed. This provides a lot of optimization, but has some trade-offs. - if (!o || (!clear && this.mouseX == this._mouseOverX && this.mouseY == this._mouseOverY && this.mouseInBounds)) { return; } - - var e = o.posEvtObj; - var isEventTarget = eventTarget || e&&(e.target == this.canvas); - var target=null, common = -1, cursor="", t, i, l; - - if (!owner && (clear || this.mouseInBounds && isEventTarget)) { - target = this._getObjectsUnderPoint(this.mouseX, this.mouseY, null, true); - this._mouseOverX = this.mouseX; - this._mouseOverY = this.mouseY; - } - - var oldList = this._mouseOverTarget||[]; - var oldTarget = oldList[oldList.length-1]; - var list = this._mouseOverTarget = []; - - // generate ancestor list and check for cursor: - t = target; - while (t) { - list.unshift(t); - if (!cursor) { cursor = t.cursor; } - t = t.parent; - } - this.canvas.style.cursor = cursor; - if (!owner && eventTarget) { eventTarget.canvas.style.cursor = cursor; } - - // find common ancestor: - for (i=0,l=list.length; icommon; i--) { - this._dispatchMouseEvent(oldList[i], "rollout", false, -1, o, e, target); - } - - for (i=list.length-1; i>common; i--) { - this._dispatchMouseEvent(list[i], "rollover", false, -1, o, e, oldTarget); - } - - if (oldTarget != target) { - this._dispatchMouseEvent(target, "mouseover", true, -1, o, e, oldTarget); - } - - nextStage&&nextStage._testMouseOver(clear, owner || target && this, eventTarget || isEventTarget && this); - }; - - /** - * @method _handleDoubleClick - * @protected - * @param {MouseEvent} e - * @param {Stage} owner Indicates that the event has already been captured & handled by the indicated stage. - **/ - p._handleDoubleClick = function(e, owner) { - var target=null, nextStage=this._nextStage, o=this._getPointerData(-1); - if (!owner) { - target = this._getObjectsUnderPoint(o.x, o.y, null, true); - this._dispatchMouseEvent(target, "dblclick", true, -1, o, e); - } - nextStage&&nextStage._handleDoubleClick(e, owner || target && this); - }; - - /** - * @method _dispatchMouseEvent - * @protected - * @param {DisplayObject} target - * @param {String} type - * @param {Boolean} bubbles - * @param {Number} pointerId - * @param {Object} o - * @param {MouseEvent} [nativeEvent] - * @param {DisplayObject} [relatedTarget] - **/ - p._dispatchMouseEvent = function(target, type, bubbles, pointerId, o, nativeEvent, relatedTarget) { - // TODO: might be worth either reusing MouseEvent instances, or adding a willTrigger method to avoid GC. - if (!target || (!bubbles && !target.hasEventListener(type))) { return; } - /* - // TODO: account for stage transformations? - this._mtx = this.getConcatenatedMatrix(this._mtx).invert(); - var pt = this._mtx.transformPoint(o.x, o.y); - var evt = new createjs.MouseEvent(type, bubbles, false, pt.x, pt.y, nativeEvent, pointerId, pointerId==this._primaryPointerID || pointerId==-1, o.rawX, o.rawY); - */ - var evt = new createjs.MouseEvent(type, bubbles, false, o.x, o.y, nativeEvent, pointerId, pointerId === this._primaryPointerID || pointerId === -1, o.rawX, o.rawY, relatedTarget); - target.dispatchEvent(evt); - }; - - - createjs.Stage = createjs.promote(Stage, "Container"); -}()); - -//############################################################################## -// Bitmap.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - - /** - * A Bitmap represents an Image, Canvas, or Video in the display list. A Bitmap can be instantiated using an existing - * HTML element, or a string. - * - *

        Example

        - * - * var bitmap = new createjs.Bitmap("imagePath.jpg"); - * - * Notes: - *
          - *
        1. When a string path or image tag that is not yet loaded is used, the stage may need to be redrawn before it - * will be displayed.
        2. - *
        3. Bitmaps with an SVG source currently will not respect an alpha value other than 0 or 1. To get around this, - * the Bitmap can be cached.
        4. - *
        5. Bitmaps with an SVG source will taint the canvas with cross-origin data, which prevents interactivity. This - * happens in all browsers except recent Firefox builds.
        6. - *
        7. Images loaded cross-origin will throw cross-origin security errors when interacted with using a mouse, using - * methods such as `getObjectUnderPoint`, or using filters, or caching. You can get around this by setting - * `crossOrigin` flags on your images before passing them to EaselJS, eg: `img.crossOrigin="Anonymous";`
        8. - *
        - * - * @class Bitmap - * @extends DisplayObject - * @constructor - * @param {HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | String} imageOrUri The source object or URI to an image to - * display. This can be either an Image, Canvas, or Video object, or a string URI to an image file to load and use. - * If it is a URI, a new Image object will be constructed and assigned to the .image property. - **/ - function Bitmap(imageOrUri) { - this.DisplayObject_constructor(); - - - // public properties: - /** - * The image to render. This can be an Image, a Canvas, or a Video. Not all browsers (especially - * mobile browsers) support drawing video to a canvas. - * @property image - * @type HTMLImageElement | HTMLCanvasElement | HTMLVideoElement - **/ - if (typeof imageOrUri == "string") { - this.image = document.createElement("img"); - this.image.src = imageOrUri; - } else { - this.image = imageOrUri; - } - - /** - * Specifies an area of the source image to draw. If omitted, the whole image will be drawn. - * Note that video sources must have a width / height set to work correctly with `sourceRect`. - * @property sourceRect - * @type Rectangle - * @default null - */ - this.sourceRect = null; - } - var p = createjs.extend(Bitmap, createjs.DisplayObject); - - -// public methods: - /** - * Constructor alias for backwards compatibility. This method will be removed in future versions. - * Subclasses should be updated to use {{#crossLink "Utility Methods/extends"}}{{/crossLink}}. - * @method initialize - * @deprecated in favour of `createjs.promote()` - **/ - p.initialize = Bitmap; // TODO: deprecated. - - /** - * Returns true or false indicating whether the display object would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas - **/ - p.isVisible = function() { - var image = this.image; - var hasContent = this.cacheCanvas || (image && (image.naturalWidth || image.getContext || image.readyState >= 2)); - return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); - }; - - /** - * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. - * Returns true if the draw was handled (useful for overriding functionality). - * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. - * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back - * into itself). - * @return {Boolean} - **/ - p.draw = function(ctx, ignoreCache) { - if (this.DisplayObject_draw(ctx, ignoreCache) || !this.image) { return true; } - var img = this.image, rect = this.sourceRect; - if (rect) { - // some browsers choke on out of bound values, so we'll fix them: - var x1 = rect.x, y1 = rect.y, x2 = x1 + rect.width, y2 = y1 + rect.height, x = 0, y = 0, w = img.width, h = img.height; - if (x1 < 0) { x -= x1; x1 = 0; } - if (x2 > w) { x2 = w; } - if (y1 < 0) { y -= y1; y1 = 0; } - if (y2 > h) { y2 = h; } - ctx.drawImage(img, x1, y1, x2-x1, y2-y1, x, y, x2-x1, y2-y1); - } else { - ctx.drawImage(img, 0, 0); - } - return true; - }; - - //Note, the doc sections below document using the specified APIs (from DisplayObject) from - //Bitmap. This is why they have no method implementations. - - /** - * Because the content of a Bitmap is already in a simple format, cache is unnecessary for Bitmap instances. - * You should not cache Bitmap instances as it can degrade performance. - * - * However: If you want to use a filter on a Bitmap, you MUST cache it, or it will not work. - * To see the API for caching, please visit the DisplayObject {{#crossLink "DisplayObject/cache"}}{{/crossLink}} - * method. - * @method cache - **/ - - /** - * Because the content of a Bitmap is already in a simple format, cache is unnecessary for Bitmap instances. - * You should not cache Bitmap instances as it can degrade performance. - * - * However: If you want to use a filter on a Bitmap, you MUST cache it, or it will not work. - * To see the API for caching, please visit the DisplayObject {{#crossLink "DisplayObject/cache"}}{{/crossLink}} - * method. - * @method updateCache - **/ - - /** - * Because the content of a Bitmap is already in a simple format, cache is unnecessary for Bitmap instances. - * You should not cache Bitmap instances as it can degrade performance. - * - * However: If you want to use a filter on a Bitmap, you MUST cache it, or it will not work. - * To see the API for caching, please visit the DisplayObject {{#crossLink "DisplayObject/cache"}}{{/crossLink}} - * method. - * @method uncache - **/ - - /** - * Docced in superclass. - */ - p.getBounds = function() { - var rect = this.DisplayObject_getBounds(); - if (rect) { return rect; } - var image = this.image, o = this.sourceRect || image; - var hasContent = (image && (image.naturalWidth || image.getContext || image.readyState >= 2)); - return hasContent ? this._rectangle.setValues(0, 0, o.width, o.height) : null; - }; - - /** - * Returns a clone of the Bitmap instance. - * @method clone - * @return {Bitmap} a clone of the Bitmap instance. - **/ - p.clone = function() { - var o = new Bitmap(this.image); - if (this.sourceRect) { o.sourceRect = this.sourceRect.clone(); } - this._cloneProps(o); - return o; - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Bitmap (name="+ this.name +")]"; - }; - - - createjs.Bitmap = createjs.promote(Bitmap, "DisplayObject"); -}()); - -//############################################################################## -// Sprite.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Displays a frame or sequence of frames (ie. an animation) from a SpriteSheet instance. A sprite sheet is a series of - * images (usually animation frames) combined into a single image. For example, an animation consisting of 8 100x100 - * images could be combined into a 400x200 sprite sheet (4 frames across by 2 high). You can display individual frames, - * play frames as an animation, and even sequence animations together. - * - * See the {{#crossLink "SpriteSheet"}}{{/crossLink}} class for more information on setting up frames and animations. - * - *

        Example

        - * - * var instance = new createjs.Sprite(spriteSheet); - * instance.gotoAndStop("frameName"); - * - * Until {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} or {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}} is called, - * only the first defined frame defined in the sprite sheet will be displayed. - * - * @class Sprite - * @extends DisplayObject - * @constructor - * @param {SpriteSheet} spriteSheet The SpriteSheet instance to play back. This includes the source image(s), frame - * dimensions, and frame data. See {{#crossLink "SpriteSheet"}}{{/crossLink}} for more information. - * @param {String|Number} [frameOrAnimation] The frame number or animation to play initially. - **/ - function Sprite(spriteSheet, frameOrAnimation) { - this.DisplayObject_constructor(); - - - // public properties: - /** - * The frame index that will be drawn when draw is called. Note that with some {{#crossLink "SpriteSheet"}}{{/crossLink}} - * definitions, this will advance non-sequentially. This will always be an integer value. - * @property currentFrame - * @type {Number} - * @default 0 - * @readonly - **/ - this.currentFrame = 0; - - /** - * Returns the name of the currently playing animation. - * @property currentAnimation - * @type {String} - * @final - * @readonly - **/ - this.currentAnimation = null; - - /** - * Prevents the animation from advancing each tick automatically. For example, you could create a sprite - * sheet of icons, set paused to true, and display the appropriate icon by setting currentFrame. - * @property paused - * @type {Boolean} - * @default false - **/ - this.paused = true; - - /** - * The SpriteSheet instance to play back. This includes the source image, frame dimensions, and frame - * data. See {{#crossLink "SpriteSheet"}}{{/crossLink}} for more information. - * @property spriteSheet - * @type {SpriteSheet} - * @readonly - **/ - this.spriteSheet = spriteSheet; - - /** - * Specifies the current frame index within the currently playing animation. When playing normally, this will increase - * from 0 to n-1, where n is the number of frames in the current animation. - * - * This could be a non-integer value if - * using time-based playback (see {{#crossLink "Sprite/framerate"}}{{/crossLink}}, or if the animation's speed is - * not an integer. - * @property currentAnimationFrame - * @type {Number} - * @default 0 - **/ - this.currentAnimationFrame = 0; - - /** - * By default Sprite instances advance one frame per tick. Specifying a framerate for the Sprite (or its related - * SpriteSheet) will cause it to advance based on elapsed time between ticks as appropriate to maintain the target - * framerate. - * - * For example, if a Sprite with a framerate of 10 is placed on a Stage being updated at 40fps, then the Sprite will - * advance roughly one frame every 4 ticks. This will not be exact, because the time between each tick will - * vary slightly between frames. - * - * This feature is dependent on the tick event object (or an object with an appropriate "delta" property) being - * passed into {{#crossLink "Stage/update"}}{{/crossLink}}. - * @property framerate - * @type {Number} - * @default 0 - **/ - this.framerate = 0; - - - // private properties: - /** - * Current animation object. - * @property _animation - * @protected - * @type {Object} - * @default null - **/ - this._animation = null; - - /** - * Current frame index. - * @property _currentFrame - * @protected - * @type {Number} - * @default null - **/ - this._currentFrame = null; - - /** - * Skips the next auto advance. Used by gotoAndPlay to avoid immediately jumping to the next frame - * @property _skipAdvance - * @protected - * @type {Boolean} - * @default false - **/ - this._skipAdvance = false; - - - if (frameOrAnimation != null) { this.gotoAndPlay(frameOrAnimation); } - } - var p = createjs.extend(Sprite, createjs.DisplayObject); - - /** - * Constructor alias for backwards compatibility. This method will be removed in future versions. - * Subclasses should be updated to use {{#crossLink "Utility Methods/extends"}}{{/crossLink}}. - * @method initialize - * @deprecated in favour of `createjs.promote()` - **/ - p.initialize = Sprite; // TODO: Deprecated. This is for backwards support of FlashCC spritesheet export. - - -// events: - /** - * Dispatched when an animation reaches its ends. - * @event animationend - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - * @param {String} name The name of the animation that just ended. - * @param {String} next The name of the next animation that will be played, or null. This will be the same as name if the animation is looping. - * @since 0.6.0 - */ - - /** - * Dispatched any time the current frame changes. For example, this could be due to automatic advancement on a tick, - * or calling gotoAndPlay() or gotoAndStop(). - * @event change - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - */ - - -// public methods: - /** - * Returns true or false indicating whether the display object would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas - **/ - p.isVisible = function() { - var hasContent = this.cacheCanvas || this.spriteSheet.complete; - return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); - }; - - /** - * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. - * Returns true if the draw was handled (useful for overriding functionality). - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. - * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back - * into itself). - **/ - p.draw = function(ctx, ignoreCache) { - if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } - this._normalizeFrame(); - var o = this.spriteSheet.getFrame(this._currentFrame|0); - if (!o) { return false; } - var rect = o.rect; - if (rect.width && rect.height) { ctx.drawImage(o.image, rect.x, rect.y, rect.width, rect.height, -o.regX, -o.regY, rect.width, rect.height); } - return true; - }; - - //Note, the doc sections below document using the specified APIs (from DisplayObject) from - //Bitmap. This is why they have no method implementations. - - /** - * Because the content of a Sprite is already in a raster format, cache is unnecessary for Sprite instances. - * You should not cache Sprite instances as it can degrade performance. - * @method cache - **/ - - /** - * Because the content of a Sprite is already in a raster format, cache is unnecessary for Sprite instances. - * You should not cache Sprite instances as it can degrade performance. - * @method updateCache - **/ - - /** - * Because the content of a Sprite is already in a raster format, cache is unnecessary for Sprite instances. - * You should not cache Sprite instances as it can degrade performance. - * @method uncache - **/ - - /** - * Play (unpause) the current animation. The Sprite will be paused if either {{#crossLink "Sprite/stop"}}{{/crossLink}} - * or {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} is called. Single frame animations will remain - * unchanged. - * @method play - **/ - p.play = function() { - this.paused = false; - }; - - /** - * Stop playing a running animation. The Sprite will be playing if {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}} - * is called. Note that calling {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}} or {{#crossLink "Sprite/play"}}{{/crossLink}} - * will resume playback. - * @method stop - **/ - p.stop = function() { - this.paused = true; - }; - - /** - * Sets paused to false and plays the specified animation name, named frame, or frame number. - * @method gotoAndPlay - * @param {String|Number} frameOrAnimation The frame number or animation name that the playhead should move to - * and begin playing. - **/ - p.gotoAndPlay = function(frameOrAnimation) { - this.paused = false; - this._skipAdvance = true; - this._goto(frameOrAnimation); - }; - - /** - * Sets paused to true and seeks to the specified animation name, named frame, or frame number. - * @method gotoAndStop - * @param {String|Number} frameOrAnimation The frame number or animation name that the playhead should move to - * and stop. - **/ - p.gotoAndStop = function(frameOrAnimation) { - this.paused = true; - this._goto(frameOrAnimation); - }; - - /** - * Advances the playhead. This occurs automatically each tick by default. - * @param [time] {Number} The amount of time in ms to advance by. Only applicable if framerate is set on the Sprite - * or its SpriteSheet. - * @method advance - */ - p.advance = function(time) { - var fps = this.framerate || this.spriteSheet.framerate; - var t = (fps && time != null) ? time/(1000/fps) : 1; - this._normalizeFrame(t); - }; - - /** - * Returns a {{#crossLink "Rectangle"}}{{/crossLink}} instance defining the bounds of the current frame relative to - * the origin. For example, a 90 x 70 frame with regX=50 and regY=40 would return a - * rectangle with [x=-50, y=-40, width=90, height=70]. This ignores transformations on the display object. - * - * Also see the SpriteSheet {{#crossLink "SpriteSheet/getFrameBounds"}}{{/crossLink}} method. - * @method getBounds - * @return {Rectangle} A Rectangle instance. Returns null if the frame does not exist, or the image is not fully - * loaded. - **/ - p.getBounds = function() { - // TODO: should this normalizeFrame? - return this.DisplayObject_getBounds() || this.spriteSheet.getFrameBounds(this.currentFrame, this._rectangle); - }; - - /** - * Returns a clone of the Sprite instance. Note that the same SpriteSheet is shared between cloned - * instances. - * @method clone - * @return {Sprite} a clone of the Sprite instance. - **/ - p.clone = function() { - return this._cloneProps(new Sprite(this.spriteSheet)); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Sprite (name="+ this.name +")]"; - }; - -// private methods: - /** - * @method _cloneProps - * @param {Sprite} o - * @return {Sprite} o - * @protected - **/ - p._cloneProps = function(o) { - this.DisplayObject__cloneProps(o); - o.currentFrame = this.currentFrame; - o.currentAnimation = this.currentAnimation; - o.paused = this.paused; - o.currentAnimationFrame = this.currentAnimationFrame; - o.framerate = this.framerate; - - o._animation = this._animation; - o._currentFrame = this._currentFrame; - o._skipAdvance = this._skipAdvance; - return o; - }; - - /** - * Advances the currentFrame if paused is not true. This is called automatically when the {{#crossLink "Stage"}}{{/crossLink}} - * ticks. - * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. - * @protected - * @method _tick - **/ - p._tick = function(evtObj) { - if (!this.paused) { - if (!this._skipAdvance) { this.advance(evtObj&&evtObj.delta); } - this._skipAdvance = false; - } - this.DisplayObject__tick(evtObj); - }; - - - /** - * Normalizes the current frame, advancing animations and dispatching callbacks as appropriate. - * @protected - * @method _normalizeFrame - **/ - p._normalizeFrame = function(frameDelta) { - frameDelta = frameDelta || 0; - var animation = this._animation; - var paused = this.paused; - var frame = this._currentFrame; - var l; - - if (animation) { - var speed = animation.speed || 1; - var animFrame = this.currentAnimationFrame; - l = animation.frames.length; - if (animFrame + frameDelta * speed >= l) { - var next = animation.next; - if (this._dispatchAnimationEnd(animation, frame, paused, next, l - 1)) { - // something changed in the event stack, so we shouldn't make any more changes here. - return; - } else if (next) { - // sequence. Automatically calls _normalizeFrame again with the remaining frames. - return this._goto(next, frameDelta - (l - animFrame) / speed); - } else { - // end. - this.paused = true; - animFrame = animation.frames.length - 1; - } - } else { - animFrame += frameDelta * speed; - } - this.currentAnimationFrame = animFrame; - this._currentFrame = animation.frames[animFrame | 0] - } else { - frame = (this._currentFrame += frameDelta); - l = this.spriteSheet.getNumFrames(); - if (frame >= l && l > 0) { - if (!this._dispatchAnimationEnd(animation, frame, paused, l - 1)) { - // looped. - if ((this._currentFrame -= l) >= l) { return this._normalizeFrame(); } - } - } - } - frame = this._currentFrame | 0; - if (this.currentFrame != frame) { - this.currentFrame = frame; - this.dispatchEvent("change"); - } - }; - - /** - * Dispatches the "animationend" event. Returns true if a handler changed the animation (ex. calling {{#crossLink "Sprite/stop"}}{{/crossLink}}, - * {{#crossLink "Sprite/gotoAndPlay"}}{{/crossLink}}, etc.) - * @property _dispatchAnimationEnd - * @private - * @type {Function} - **/ - p._dispatchAnimationEnd = function(animation, frame, paused, next, end) { - var name = animation ? animation.name : null; - if (this.hasEventListener("animationend")) { - var evt = new createjs.Event("animationend"); - evt.name = name; - evt.next = next; - this.dispatchEvent(evt); - } - // did the animation get changed in the event stack?: - var changed = (this._animation != animation || this._currentFrame != frame); - // if the animation hasn't changed, but the sprite was paused, then we want to stick to the last frame: - if (!changed && !paused && this.paused) { this.currentAnimationFrame = end; changed = true; } - return changed; - }; - - /** - * Moves the playhead to the specified frame number or animation. - * @method _goto - * @param {String|Number} frameOrAnimation The frame number or animation that the playhead should move to. - * @param {Boolean} [frame] The frame of the animation to go to. Defaults to 0. - * @protected - **/ - p._goto = function(frameOrAnimation, frame) { - this.currentAnimationFrame = 0; - if (isNaN(frameOrAnimation)) { - var data = this.spriteSheet.getAnimation(frameOrAnimation); - if (data) { - this._animation = data; - this.currentAnimation = frameOrAnimation; - this._normalizeFrame(frame); - } - } else { - this.currentAnimation = this._animation = null; - this._currentFrame = frameOrAnimation; - this._normalizeFrame(); - } - }; - - - createjs.Sprite = createjs.promote(Sprite, "DisplayObject"); -}()); - -//############################################################################## -// Shape.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * A Shape allows you to display vector art in the display list. It composites a {{#crossLink "Graphics"}}{{/crossLink}} - * instance which exposes all of the vector drawing methods. The Graphics instance can be shared between multiple Shape - * instances to display the same vector graphics with different positions or transforms. - * - * If the vector art will not - * change between draws, you may want to use the {{#crossLink "DisplayObject/cache"}}{{/crossLink}} method to reduce the - * rendering cost. - * - *

        Example

        - * - * var graphics = new createjs.Graphics().beginFill("#ff0000").drawRect(0, 0, 100, 100); - * var shape = new createjs.Shape(graphics); - * - * //Alternatively use can also use the graphics property of the Shape class to renderer the same as above. - * var shape = new createjs.Shape(); - * shape.graphics.beginFill("#ff0000").drawRect(0, 0, 100, 100); - * - * @class Shape - * @extends DisplayObject - * @constructor - * @param {Graphics} graphics Optional. The graphics instance to display. If null, a new Graphics instance will be created. - **/ - function Shape(graphics) { - this.DisplayObject_constructor(); - - - // public properties: - /** - * The graphics instance to display. - * @property graphics - * @type Graphics - **/ - this.graphics = graphics ? graphics : new createjs.Graphics(); - } - var p = createjs.extend(Shape, createjs.DisplayObject); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// public methods: - /** - * Returns true or false indicating whether the Shape would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Boolean indicating whether the Shape would be visible if drawn to a canvas - **/ - p.isVisible = function() { - var hasContent = this.cacheCanvas || (this.graphics && !this.graphics.isEmpty()); - return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); - }; - - /** - * Draws the Shape into the specified context ignoring its visible, alpha, shadow, and transform. Returns true if - * the draw was handled (useful for overriding functionality). - * - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} [ignoreCache=false] Indicates whether the draw operation should ignore any current cache. For example, - * used for drawing the cache (to prevent it from simply drawing an existing cache back into itself). - * @return {Boolean} - **/ - p.draw = function(ctx, ignoreCache) { - if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } - this.graphics.draw(ctx, this); - return true; - }; - - /** - * Returns a clone of this Shape. Some properties that are specific to this instance's current context are reverted to - * their defaults (for example .parent). - * @method clone - * @param {Boolean} recursive If true, this Shape's {{#crossLink "Graphics"}}{{/crossLink}} instance will also be - * cloned. If false, the Graphics instance will be shared with the new Shape. - **/ - p.clone = function(recursive) { - var g = (recursive && this.graphics) ? this.graphics.clone() : this.graphics; - return this._cloneProps(new Shape(g)); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Shape (name="+ this.name +")]"; - }; - - - createjs.Shape = createjs.promote(Shape, "DisplayObject"); -}()); - -//############################################################################## -// Text.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Display one or more lines of dynamic text (not user editable) in the display list. Line wrapping support (using the - * lineWidth) is very basic, wrapping on spaces and tabs only. Note that as an alternative to Text, you can position HTML - * text above or below the canvas relative to items in the display list using the {{#crossLink "DisplayObject/localToGlobal"}}{{/crossLink}} - * method, or using {{#crossLink "DOMElement"}}{{/crossLink}}. - * - * Please note that Text does not support HTML text, and can only display one font style at a time. To use - * multiple font styles, you will need to create multiple text instances, and position them manually. - * - *

        Example

        - * - * var text = new createjs.Text("Hello World", "20px Arial", "#ff7700"); - * text.x = 100; - * text.textBaseline = "alphabetic"; - * - * CreateJS Text supports web fonts (the same rules as Canvas). The font must be loaded and supported by the browser - * before it can be displayed. - * - * Note: Text can be expensive to generate, so cache instances where possible. Be aware that not all - * browsers will render Text exactly the same. - * @class Text - * @extends DisplayObject - * @constructor - * @param {String} [text] The text to display. - * @param {String} [font] The font style to use. Any valid value for the CSS font attribute is acceptable (ex. "bold - * 36px Arial"). - * @param {String} [color] The color to draw the text in. Any valid value for the CSS color attribute is acceptable (ex. - * "#F00", "red", or "#FF0000"). - **/ - function Text(text, font, color) { - this.DisplayObject_constructor(); - - - // public properties: - /** - * The text to display. - * @property text - * @type String - **/ - this.text = text; - - /** - * The font style to use. Any valid value for the CSS font attribute is acceptable (ex. "bold 36px Arial"). - * @property font - * @type String - **/ - this.font = font; - - /** - * The color to draw the text in. Any valid value for the CSS color attribute is acceptable (ex. "#F00"). Default is "#000". - * It will also accept valid canvas fillStyle values. - * @property color - * @type String - **/ - this.color = color; - - /** - * The horizontal text alignment. Any of "start", "end", "left", "right", and "center". For detailed - * information view the - * - * whatwg spec. Default is "left". - * @property textAlign - * @type String - **/ - this.textAlign = "left"; - - /** - * The vertical alignment point on the font. Any of "top", "hanging", "middle", "alphabetic", "ideographic", or - * "bottom". For detailed information view the - * whatwg spec. Default is "top". - * @property textBaseline - * @type String - */ - this.textBaseline = "top"; - - /** - * The maximum width to draw the text. If maxWidth is specified (not null), the text will be condensed or - * shrunk to make it fit in this width. For detailed information view the - * - * whatwg spec. - * @property maxWidth - * @type Number - */ - this.maxWidth = null; - - /** - * If greater than 0, the text will be drawn as a stroke (outline) of the specified width. - * @property outline - * @type Number - **/ - this.outline = 0; - - /** - * Indicates the line height (vertical distance between baselines) for multi-line text. If null or 0, - * the value of getMeasuredLineHeight is used. - * @property lineHeight - * @type Number - **/ - this.lineHeight = 0; - - /** - * Indicates the maximum width for a line of text before it is wrapped to multiple lines. If null, - * the text will not be wrapped. - * @property lineWidth - * @type Number - **/ - this.lineWidth = null; - } - var p = createjs.extend(Text, createjs.DisplayObject); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// static properties: - /** - * @property _workingContext - * @type CanvasRenderingContext2D - * @private - **/ - var canvas = (createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")); - if (canvas.getContext) { Text._workingContext = canvas.getContext("2d"); canvas.width = canvas.height = 1; } - - -// constants: - /** - * Lookup table for the ratio to offset bounds x calculations based on the textAlign property. - * @property H_OFFSETS - * @type Object - * @protected - * @static - **/ - Text.H_OFFSETS = {start: 0, left: 0, center: -0.5, end: -1, right: -1}; - - /** - * Lookup table for the ratio to offset bounds y calculations based on the textBaseline property. - * @property H_OFFSETS - * @type Object - * @protected - * @static - **/ - Text.V_OFFSETS = {top: 0, hanging: -0.01, middle: -0.4, alphabetic: -0.8, ideographic: -0.85, bottom: -1}; - - -// public methods: - /** - * Returns true or false indicating whether the display object would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Whether the display object would be visible if drawn to a canvas - **/ - p.isVisible = function() { - var hasContent = this.cacheCanvas || (this.text != null && this.text !== ""); - return !!(this.visible && this.alpha > 0 && this.scaleX != 0 && this.scaleY != 0 && hasContent); - }; - - /** - * Draws the Text into the specified context ignoring its visible, alpha, shadow, and transform. - * Returns true if the draw was handled (useful for overriding functionality). - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. - * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back - * into itself). - **/ - p.draw = function(ctx, ignoreCache) { - if (this.DisplayObject_draw(ctx, ignoreCache)) { return true; } - - var col = this.color || "#000"; - if (this.outline) { ctx.strokeStyle = col; ctx.lineWidth = this.outline*1; } - else { ctx.fillStyle = col; } - - this._drawText(this._prepContext(ctx)); - return true; - }; - - /** - * Returns the measured, untransformed width of the text without wrapping. Use getBounds for a more robust value. - * @method getMeasuredWidth - * @return {Number} The measured, untransformed width of the text. - **/ - p.getMeasuredWidth = function() { - return this._getMeasuredWidth(this.text); - }; - - /** - * Returns an approximate line height of the text, ignoring the lineHeight property. This is based on the measured - * width of a "M" character multiplied by 1.2, which provides an approximate line height for most fonts. - * @method getMeasuredLineHeight - * @return {Number} an approximate line height of the text, ignoring the lineHeight property. This is - * based on the measured width of a "M" character multiplied by 1.2, which approximates em for most fonts. - **/ - p.getMeasuredLineHeight = function() { - return this._getMeasuredWidth("M")*1.2; - }; - - /** - * Returns the approximate height of multi-line text by multiplying the number of lines against either the - * lineHeight (if specified) or {{#crossLink "Text/getMeasuredLineHeight"}}{{/crossLink}}. Note that - * this operation requires the text flowing logic to run, which has an associated CPU cost. - * @method getMeasuredHeight - * @return {Number} The approximate height of the untransformed multi-line text. - **/ - p.getMeasuredHeight = function() { - return this._drawText(null,{}).height; - }; - - /** - * Docced in superclass. - */ - p.getBounds = function() { - var rect = this.DisplayObject_getBounds(); - if (rect) { return rect; } - if (this.text == null || this.text === "") { return null; } - var o = this._drawText(null, {}); - var w = (this.maxWidth && this.maxWidth < o.width) ? this.maxWidth : o.width; - var x = w * Text.H_OFFSETS[this.textAlign||"left"]; - var lineHeight = this.lineHeight||this.getMeasuredLineHeight(); - var y = lineHeight * Text.V_OFFSETS[this.textBaseline||"top"]; - return this._rectangle.setValues(x, y, w, o.height); - }; - - /** - * Returns an object with width, height, and lines properties. The width and height are the visual width and height - * of the drawn text. The lines property contains an array of strings, one for - * each line of text that will be drawn, accounting for line breaks and wrapping. These strings have trailing - * whitespace removed. - * @method getMetrics - * @return {Object} An object with width, height, and lines properties. - **/ - p.getMetrics = function() { - var o = {lines:[]}; - o.lineHeight = this.lineHeight || this.getMeasuredLineHeight(); - o.vOffset = o.lineHeight * Text.V_OFFSETS[this.textBaseline||"top"]; - return this._drawText(null, o, o.lines); - }; - - /** - * Returns a clone of the Text instance. - * @method clone - * @return {Text} a clone of the Text instance. - **/ - p.clone = function() { - return this._cloneProps(new Text(this.text, this.font, this.color)); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Text (text="+ (this.text.length > 20 ? this.text.substr(0, 17)+"..." : this.text) +")]"; - }; - - -// private methods: - /** - * @method _cloneProps - * @param {Text} o - * @protected - * @return {Text} o - **/ - p._cloneProps = function(o) { - this.DisplayObject__cloneProps(o); - o.textAlign = this.textAlign; - o.textBaseline = this.textBaseline; - o.maxWidth = this.maxWidth; - o.outline = this.outline; - o.lineHeight = this.lineHeight; - o.lineWidth = this.lineWidth; - return o; - }; - - /** - * @method _getWorkingContext - * @param {CanvasRenderingContext2D} ctx - * @return {CanvasRenderingContext2D} - * @protected - **/ - p._prepContext = function(ctx) { - ctx.font = this.font||"10px sans-serif"; - ctx.textAlign = this.textAlign||"left"; - ctx.textBaseline = this.textBaseline||"top"; - return ctx; - }; - - /** - * Draws multiline text. - * @method _drawText - * @param {CanvasRenderingContext2D} ctx - * @param {Object} o - * @param {Array} lines - * @return {Object} - * @protected - **/ - p._drawText = function(ctx, o, lines) { - var paint = !!ctx; - if (!paint) { - ctx = Text._workingContext; - ctx.save(); - this._prepContext(ctx); - } - var lineHeight = this.lineHeight||this.getMeasuredLineHeight(); - - var maxW = 0, count = 0; - var hardLines = String(this.text).split(/(?:\r\n|\r|\n)/); - for (var i=0, l=hardLines.length; i this.lineWidth) { - // text wrapping: - var words = str.split(/(\s)/); - str = words[0]; - w = ctx.measureText(str).width; - - for (var j=1, jl=words.length; j this.lineWidth) { - if (paint) { this._drawTextLine(ctx, str, count*lineHeight); } - if (lines) { lines.push(str); } - if (w > maxW) { maxW = w; } - str = words[j+1]; - w = ctx.measureText(str).width; - count++; - } else { - str += words[j] + words[j+1]; - w += wordW; - } - } - } - - if (paint) { this._drawTextLine(ctx, str, count*lineHeight); } - if (lines) { lines.push(str); } - if (o && w == null) { w = ctx.measureText(str).width; } - if (w > maxW) { maxW = w; } - count++; - } - - if (o) { - o.width = maxW; - o.height = count*lineHeight; - } - if (!paint) { ctx.restore(); } - return o; - }; - - /** - * @method _drawTextLine - * @param {CanvasRenderingContext2D} ctx - * @param {String} text - * @param {Number} y - * @protected - **/ - p._drawTextLine = function(ctx, text, y) { - // Chrome 17 will fail to draw the text if the last param is included but null, so we feed it a large value instead: - if (this.outline) { ctx.strokeText(text, 0, y, this.maxWidth||0xFFFF); } - else { ctx.fillText(text, 0, y, this.maxWidth||0xFFFF); } - }; - - - /** - * @method _getMeasuredWidth - * @param {String} text - * @protected - **/ - p._getMeasuredWidth = function(text) { - var ctx = Text._workingContext; - ctx.save(); - var w = this._prepContext(ctx).measureText(text).width; - ctx.restore(); - return w; - }; - - - createjs.Text = createjs.promote(Text, "DisplayObject"); + createjs.DOMElement = createjs.promote(DOMElement, "DisplayObject"); }()); //############################################################################## -// BitmapText.js +// Filter.js //############################################################################## -this.createjs = this.createjs || {}; - -(function () { - "use strict"; - - -// constructor: - /** - * Displays text using bitmap glyphs defined in a sprite sheet. Multi-line text is supported - * using new line characters, but automatic wrapping is not supported. See the - * {{#crossLink "BitmapText/spriteSheet:property"}}{{/crossLink}} - * property for more information on defining glyphs. - * - * Important: BitmapText extends Container, but is not designed to be used as one. - * As such, methods like addChild and removeChild are disabled. - * @class BitmapText - * @extends DisplayObject - * @param {String} [text=""] The text to display. - * @param {SpriteSheet} [spriteSheet=null] The spritesheet that defines the character glyphs. - * @constructor - **/ - function BitmapText(text, spriteSheet) { - this.Container_constructor(); - - - // public properties: - /** - * The text to display. - * @property text - * @type String - * @default "" - **/ - this.text = text||""; - - /** - * A SpriteSheet instance that defines the glyphs for this bitmap text. Each glyph/character - * should have a single frame animation defined in the sprite sheet named the same as - * corresponding character. For example, the following animation definition: - * - * "A": {frames: [0]} - * - * would indicate that the frame at index 0 of the spritesheet should be drawn for the "A" character. The short form - * is also acceptable: - * - * "A": 0 - * - * Note that if a character in the text is not found in the sprite sheet, it will also - * try to use the alternate case (upper or lower). - * - * See SpriteSheet for more information on defining sprite sheet data. - * @property spriteSheet - * @type SpriteSheet - * @default null - **/ - this.spriteSheet = spriteSheet; - - /** - * The height of each line of text. If 0, then it will use a line height calculated - * by checking for the height of the "1", "T", or "L" character (in that order). If - * those characters are not defined, it will use the height of the first frame of the - * sprite sheet. - * @property lineHeight - * @type Number - * @default 0 - **/ - this.lineHeight = 0; - - /** - * This spacing (in pixels) will be added after each character in the output. - * @property letterSpacing - * @type Number - * @default 0 - **/ - this.letterSpacing = 0; - - /** - * If a space character is not defined in the sprite sheet, then empty pixels equal to - * spaceWidth will be inserted instead. If 0, then it will use a value calculated - * by checking for the width of the "1", "l", "E", or "A" character (in that order). If - * those characters are not defined, it will use the width of the first frame of the - * sprite sheet. - * @property spaceWidth - * @type Number - * @default 0 - **/ - this.spaceWidth = 0; - - - // private properties: - /** - * @property _oldProps - * @type Object - * @protected - **/ - this._oldProps = {text:0,spriteSheet:0,lineHeight:0,letterSpacing:0,spaceWidth:0}; - } - var p = createjs.extend(BitmapText, createjs.Container); - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - -// static properties: - /** - * BitmapText uses Sprite instances to draw text. To reduce the creation and destruction of instances (and thus garbage collection), it maintains - * an internal object pool of sprite instances to reuse. Increasing this value can cause more sprites to be - * retained, slightly increasing memory use, but reducing instantiation. - * @property maxPoolSize - * @type Number - * @static - * @default 100 - **/ - BitmapText.maxPoolSize = 100; - - /** - * Sprite object pool. - * @type {Array} - * @static - * @private - */ - BitmapText._spritePool = []; - - -// public methods: - /** - * Docced in superclass. - **/ - p.draw = function(ctx, ignoreCache) { - if (this.DisplayObject_draw(ctx, ignoreCache)) { return; } - this._updateText(); - this.Container_draw(ctx, ignoreCache); - }; - - /** - * Docced in superclass. - **/ - p.getBounds = function() { - this._updateText(); - return this.Container_getBounds(); - }; - - /** - * Returns true or false indicating whether the display object would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas - **/ - p.isVisible = function() { - var hasContent = this.cacheCanvas || (this.spriteSheet && this.spriteSheet.complete && this.text); - return !!(this.visible && this.alpha > 0 && this.scaleX !== 0 && this.scaleY !== 0 && hasContent); - }; - - p.clone = function() { - return this._cloneProps(new BitmapText(this.text, this.spriteSheet)); - }; - - /** - * Disabled in BitmapText. - * @method addChild - **/ - /** - * Disabled in BitmapText. - * @method addChildAt - **/ - /** - * Disabled in BitmapText. - * @method removeChild - **/ - /** - * Disabled in BitmapText. - * @method removeChildAt - **/ - /** - * Disabled in BitmapText. - * @method removeAllChildren - **/ - p.addChild = p.addChildAt = p.removeChild = p.removeChildAt = p.removeAllChildren = function() {}; - - -// private methods: - /** - * @method _cloneProps - * @param {BitmapText} o - * @return {BitmapText} o - * @protected - **/ - p._cloneProps = function(o) { - this.Container__cloneProps(o); - o.lineHeight = this.lineHeight; - o.letterSpacing = this.letterSpacing; - o.spaceWidth = this.spaceWidth; - return o; - }; - - /** - * @method _getFrameIndex - * @param {String} character - * @param {SpriteSheet} spriteSheet - * @return {Number} - * @protected - **/ - p._getFrameIndex = function(character, spriteSheet) { - var c, o = spriteSheet.getAnimation(character); - if (!o) { - (character != (c = character.toUpperCase())) || (character != (c = character.toLowerCase())) || (c=null); - if (c) { o = spriteSheet.getAnimation(c); } - } - return o && o.frames[0]; - }; - - /** - * @method _getFrame - * @param {String} character - * @param {SpriteSheet} spriteSheet - * @return {Object} - * @protected - **/ - p._getFrame = function(character, spriteSheet) { - var index = this._getFrameIndex(character, spriteSheet); - return index == null ? index : spriteSheet.getFrame(index); - }; - - /** - * @method _getLineHeight - * @param {SpriteSheet} ss - * @return {Number} - * @protected - **/ - p._getLineHeight = function(ss) { - var frame = this._getFrame("1",ss) || this._getFrame("T",ss) || this._getFrame("L",ss) || ss.getFrame(0); - return frame ? frame.rect.height : 1; - }; - /** - * @method _getSpaceWidth - * @param {SpriteSheet} ss - * @return {Number} - * @protected - **/ - p._getSpaceWidth = function(ss) { - var frame = this._getFrame("1",ss) || this._getFrame("l",ss) || this._getFrame("e",ss) || this._getFrame("a",ss) || ss.getFrame(0); - return frame ? frame.rect.width : 1; - }; - - /** - * @method _drawText - * @protected - **/ - p._updateText = function() { - var x=0, y=0, o=this._oldProps, change=false, spaceW=this.spaceWidth, lineH=this.lineHeight, ss=this.spriteSheet; - var pool=BitmapText._spritePool, kids=this.children, childIndex=0, numKids=kids.length, sprite; - - for (var n in o) { - if (o[n] != this[n]) { - o[n] = this[n]; - change = true; - } - } - if (!change) { return; } - - var hasSpace = !!this._getFrame(" ", ss); - if (!hasSpace && !spaceW) { spaceW = this._getSpaceWidth(ss); } - if (!lineH) { lineH = this._getLineHeight(ss); } - - for(var i=0, l=this.text.length; i childIndex) { - // faster than removeChild. - pool.push(sprite = kids.pop()); - sprite.parent = null; - numKids--; - } - if (pool.length > BitmapText.maxPoolSize) { pool.length = BitmapText.maxPoolSize; } - }; - - - createjs.BitmapText = createjs.promote(BitmapText, "Container"); +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Base class that all filters should inherit from. Filters need to be applied to objects that have been cached using + * the {{#crossLink "DisplayObject/cache"}}{{/crossLink}} method. If an object changes, please cache it again, or use + * {{#crossLink "DisplayObject/updateCache"}}{{/crossLink}}. Note that the filters must be applied before caching. + * + *

        Example

        + * + * myInstance.filters = [ + * new createjs.ColorFilter(0, 0, 0, 1, 255, 0, 0), + * new createjs.BlurFilter(5, 5, 10) + * ]; + * myInstance.cache(0,0, 100, 100); + * + * Note that each filter can implement a {{#crossLink "Filter/getBounds"}}{{/crossLink}} method, which returns the + * margins that need to be applied in order to fully display the filter. For example, the {{#crossLink "BlurFilter"}}{{/crossLink}} + * will cause an object to feather outwards, resulting in a margin around the shape. + * + *

        EaselJS Filters

        + * EaselJS comes with a number of pre-built filters: + *
        • {{#crossLink "AlphaMapFilter"}}{{/crossLink}} : Map a greyscale image to the alpha channel of a display object
        • + *
        • {{#crossLink "AlphaMaskFilter"}}{{/crossLink}}: Map an image's alpha channel to the alpha channel of a display object
        • + *
        • {{#crossLink "BlurFilter"}}{{/crossLink}}: Apply vertical and horizontal blur to a display object
        • + *
        • {{#crossLink "ColorFilter"}}{{/crossLink}}: Color transform a display object
        • + *
        • {{#crossLink "ColorMatrixFilter"}}{{/crossLink}}: Transform an image using a {{#crossLink "ColorMatrix"}}{{/crossLink}}
        • + *
        + * + * @class Filter + * @constructor + **/ + function Filter() {} + var p = Filter.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// public methods: + /** + * Provides padding values for this filter. That is, how much the filter will extend the visual bounds of an object it is applied to. + * @method getBounds + * @param {Rectangle} [rect] If specified, the provided Rectangle instance will be expanded by the padding amounts and returned. + * @return {Rectangle} If a `rect` param was provided, it is returned. If not, either a new rectangle with the padding values, or null if no padding is required for this filter. + **/ + p.getBounds = function(rect) { + return rect; + }; + + /** + * Applies the filter to the specified context. + * @method applyFilter + * @param {CanvasRenderingContext2D} ctx The 2D context to use as the source. + * @param {Number} x The x position to use for the source rect. + * @param {Number} y The y position to use for the source rect. + * @param {Number} width The width to use for the source rect. + * @param {Number} height The height to use for the source rect. + * @param {CanvasRenderingContext2D} [targetCtx] The 2D context to draw the result to. Defaults to the context passed to ctx. + * @param {Number} [targetX] The x position to draw the result to. Defaults to the value passed to x. + * @param {Number} [targetY] The y position to draw the result to. Defaults to the value passed to y. + * @return {Boolean} If the filter was applied successfully. + **/ + p.applyFilter = function(ctx, x, y, width, height, targetCtx, targetX, targetY) { + // this is the default behaviour because most filters access pixel data. It is overridden when not needed. + targetCtx = targetCtx || ctx; + if (targetX == null) { targetX = x; } + if (targetY == null) { targetY = y; } + try { + var imageData = ctx.getImageData(x, y, width, height); + } catch (e) { + return false; + } + if (this._applyFilter(imageData)) { + targetCtx.putImageData(imageData, targetX, targetY); + return true; + } + return false; + }; + + /** + * Returns a string representation of this object. + * @method toString + * @return {String} a string representation of the instance. + **/ + p.toString = function() { + return "[Filter]"; + }; + + /** + * Returns a clone of this Filter instance. + * @method clone + * @return {Filter} A clone of the current Filter instance. + **/ + p.clone = function() { + return new Filter(); + }; + +// private methods: + /** + * @method _applyFilter + * @param {ImageData} imageData Target ImageData instance. + * @return {Boolean} + **/ + p._applyFilter = function(imageData) { return true; }; + + + createjs.Filter = Filter; }()); //############################################################################## -// SpriteSheetUtils.js +// BlurFilter.js //############################################################################## this.createjs = this.createjs||{}; (function() { "use strict"; - - + + // constructor: /** - * The SpriteSheetUtils class is a collection of static methods for working with {{#crossLink "SpriteSheet"}}{{/crossLink}}s. - * A sprite sheet is a series of images (usually animation frames) combined into a single image on a regular grid. For - * example, an animation consisting of 8 100x100 images could be combined into a 400x200 sprite sheet (4 frames across - * by 2 high). The SpriteSheetUtils class uses a static interface and should not be instantiated. - * @class SpriteSheetUtils - * @static + * Applies a box blur to DisplayObjects. Note that this filter is fairly CPU intensive, particularly if the quality is + * set higher than 1. + * + *

        Example

        + * This example creates a red circle, and then applies a 5 pixel blur to it. It uses the {{#crossLink "Filter/getBounds"}}{{/crossLink}} + * method to account for the spread that the blur causes. + * + * var shape = new createjs.Shape().set({x:100,y:100}); + * shape.graphics.beginFill("#ff0000").drawCircle(0,0,50); + * + * var blurFilter = new createjs.BlurFilter(5, 5, 1); + * shape.filters = [blurFilter]; + * var bounds = blurFilter.getBounds(); + * + * shape.cache(-50+bounds.x, -50+bounds.y, 100+bounds.width, 100+bounds.height); + * + * See {{#crossLink "Filter"}}{{/crossLink}} for an more information on applying filters. + * @class BlurFilter + * @extends Filter + * @constructor + * @param {Number} [blurX=0] The horizontal blur radius in pixels. + * @param {Number} [blurY=0] The vertical blur radius in pixels. + * @param {Number} [quality=1] The number of blur iterations. **/ - function SpriteSheetUtils() { - throw "SpriteSheetUtils cannot be instantiated"; + function BlurFilter( blurX, blurY, quality) { + if ( isNaN(blurX) || blurX < 0 ) blurX = 0; + if ( isNaN(blurY) || blurY < 0 ) blurY = 0; + if ( isNaN(quality) || quality < 1 ) quality = 1; + + + // public properties: + /** + * Horizontal blur radius in pixels + * @property blurX + * @default 0 + * @type Number + **/ + this.blurX = blurX | 0; + + /** + * Vertical blur radius in pixels + * @property blurY + * @default 0 + * @type Number + **/ + this.blurY = blurY | 0; + + /** + * Number of blur iterations. For example, a value of 1 will produce a rough blur. A value of 2 will produce a + * smoother blur, but take twice as long to run. + * @property quality + * @default 1 + * @type Number + **/ + this.quality = quality | 0; } + var p = createjs.extend(BlurFilter, createjs.Filter); + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. -// private static properties: + +// constants: /** - * @property _workingCanvas - * @static - * @type HTMLCanvasElement | Object + * Array of multiply values for blur calculations. + * @property MUL_TABLE + * @type Array * @protected - */ - /** - * @property _workingContext * @static - * @type CanvasRenderingContext2D - * @protected - */ - var canvas = (createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")); - if (canvas.getContext) { - SpriteSheetUtils._workingCanvas = canvas; - SpriteSheetUtils._workingContext = canvas.getContext("2d"); - canvas.width = canvas.height = 1; - } - + **/ + BlurFilter.MUL_TABLE = [1, 171, 205, 293, 57, 373, 79, 137, 241, 27, 391, 357, 41, 19, 283, 265, 497, 469, 443, 421, 25, 191, 365, 349, 335, 161, 155, 149, 9, 278, 269, 261, 505, 245, 475, 231, 449, 437, 213, 415, 405, 395, 193, 377, 369, 361, 353, 345, 169, 331, 325, 319, 313, 307, 301, 37, 145, 285, 281, 69, 271, 267, 263, 259, 509, 501, 493, 243, 479, 118, 465, 459, 113, 446, 55, 435, 429, 423, 209, 413, 51, 403, 199, 393, 97, 3, 379, 375, 371, 367, 363, 359, 355, 351, 347, 43, 85, 337, 333, 165, 327, 323, 5, 317, 157, 311, 77, 305, 303, 75, 297, 294, 73, 289, 287, 71, 141, 279, 277, 275, 68, 135, 67, 133, 33, 262, 260, 129, 511, 507, 503, 499, 495, 491, 61, 121, 481, 477, 237, 235, 467, 232, 115, 457, 227, 451, 7, 445, 221, 439, 218, 433, 215, 427, 425, 211, 419, 417, 207, 411, 409, 203, 202, 401, 399, 396, 197, 49, 389, 387, 385, 383, 95, 189, 47, 187, 93, 185, 23, 183, 91, 181, 45, 179, 89, 177, 11, 175, 87, 173, 345, 343, 341, 339, 337, 21, 167, 83, 331, 329, 327, 163, 81, 323, 321, 319, 159, 79, 315, 313, 39, 155, 309, 307, 153, 305, 303, 151, 75, 299, 149, 37, 295, 147, 73, 291, 145, 289, 287, 143, 285, 71, 141, 281, 35, 279, 139, 69, 275, 137, 273, 17, 271, 135, 269, 267, 133, 265, 33, 263, 131, 261, 130, 259, 129, 257, 1]; -// public static methods: /** - * This is an experimental method, and may be buggy. Please report issues.

        - * Extends the existing sprite sheet by flipping the original frames horizontally, vertically, or both, - * and adding appropriate animation & frame data. The flipped animations will have a suffix added to their names - * (_h, _v, _hv as appropriate). Make sure the sprite sheet images are fully loaded before using this method. - *

        - * For example:
        - * SpriteSheetUtils.addFlippedFrames(mySpriteSheet, true, true); - * The above would add frames that are flipped horizontally AND frames that are flipped vertically. - *

        - * Note that you can also flip any display object by setting its scaleX or scaleY to a negative value. On some - * browsers (especially those without hardware accelerated canvas) this can result in slightly degraded performance, - * which is why addFlippedFrames is available. - * @method addFlippedFrames + * Array of shift values for blur calculations. + * @property SHG_TABLE + * @type Array + * @protected * @static - * @param {SpriteSheet} spriteSheet - * @param {Boolean} horizontal If true, horizontally flipped frames will be added. - * @param {Boolean} vertical If true, vertically flipped frames will be added. - * @param {Boolean} both If true, frames that are flipped both horizontally and vertically will be added. - * @deprecated Modern browsers perform better when flipping via a transform (ex. scaleX=-1) rendering this obsolete. **/ - SpriteSheetUtils.addFlippedFrames = function(spriteSheet, horizontal, vertical, both) { - if (!horizontal && !vertical && !both) { return; } + BlurFilter.SHG_TABLE = [0, 9, 10, 11, 9, 12, 10, 11, 12, 9, 13, 13, 10, 9, 13, 13, 14, 14, 14, 14, 10, 13, 14, 14, 14, 13, 13, 13, 9, 14, 14, 14, 15, 14, 15, 14, 15, 15, 14, 15, 15, 15, 14, 15, 15, 15, 15, 15, 14, 15, 15, 15, 15, 15, 15, 12, 14, 15, 15, 13, 15, 15, 15, 15, 16, 16, 16, 15, 16, 14, 16, 16, 14, 16, 13, 16, 16, 16, 15, 16, 13, 16, 15, 16, 14, 9, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 14, 16, 16, 15, 16, 16, 10, 16, 15, 16, 14, 16, 16, 14, 16, 16, 14, 16, 16, 14, 15, 16, 16, 16, 14, 15, 14, 15, 13, 16, 16, 15, 17, 17, 17, 17, 17, 17, 14, 15, 17, 17, 16, 16, 17, 16, 15, 17, 16, 17, 11, 17, 16, 17, 16, 17, 16, 17, 17, 16, 17, 17, 16, 17, 17, 16, 16, 17, 17, 17, 16, 14, 17, 17, 17, 17, 15, 16, 14, 16, 15, 16, 13, 16, 15, 16, 14, 16, 15, 16, 12, 16, 15, 16, 17, 17, 17, 17, 17, 13, 16, 15, 17, 17, 17, 16, 15, 17, 17, 17, 16, 15, 17, 17, 14, 16, 17, 17, 16, 17, 17, 16, 15, 17, 16, 14, 17, 16, 15, 17, 16, 17, 17, 16, 17, 15, 16, 17, 14, 17, 16, 15, 17, 16, 17, 13, 17, 16, 17, 17, 16, 17, 14, 17, 16, 17, 16, 17, 16, 17, 9]; - var count = 0; - if (horizontal) { SpriteSheetUtils._flip(spriteSheet,++count,true,false); } - if (vertical) { SpriteSheetUtils._flip(spriteSheet,++count,false,true); } - if (both) { SpriteSheetUtils._flip(spriteSheet,++count,true,true); } +// public methods: + /** docced in super class **/ + p.getBounds = function (rect) { + var x = this.blurX|0, y = this.blurY| 0; + if (x <= 0 && y <= 0) { return rect; } + var q = Math.pow(this.quality, 0.2); + return (rect || new createjs.Rectangle()).pad(x*q+1,y*q+1,x*q+1,y*q+1); }; - /** - * Returns a single frame of the specified sprite sheet as a new PNG image. An example of when this may be useful is - * to use a spritesheet frame as the source for a bitmap fill. - * - * WARNING: In almost all cases it is better to display a single frame using a {{#crossLink "Sprite"}}{{/crossLink}} - * with a {{#crossLink "Sprite/gotoAndStop"}}{{/crossLink}} call than it is to slice out a frame using this - * method and display it with a Bitmap instance. You can also crop an image using the {{#crossLink "Bitmap/sourceRect"}}{{/crossLink}} - * property of {{#crossLink "Bitmap"}}{{/crossLink}}. - * - * The extractFrame method may cause cross-domain warnings since it accesses pixels directly on the canvas. - * @method extractFrame - * @static - * @param {SpriteSheet} spriteSheet The SpriteSheet instance to extract a frame from. - * @param {Number|String} frameOrAnimation The frame number or animation name to extract. If an animation - * name is specified, only the first frame of the animation will be extracted. - * @return {HTMLImageElement} a single frame of the specified sprite sheet as a new PNG image. - */ - SpriteSheetUtils.extractFrame = function(spriteSheet, frameOrAnimation) { - if (isNaN(frameOrAnimation)) { - frameOrAnimation = spriteSheet.getAnimation(frameOrAnimation).frames[0]; - } - var data = spriteSheet.getFrame(frameOrAnimation); - if (!data) { return null; } - var r = data.rect; - var canvas = SpriteSheetUtils._workingCanvas; - canvas.width = r.width; - canvas.height = r.height; - SpriteSheetUtils._workingContext.drawImage(data.image, r.x, r.y, r.width, r.height, 0, 0, r.width, r.height); - var img = document.createElement("img"); - img.src = canvas.toDataURL("image/png"); - return img; + /** docced in super class **/ + p.clone = function() { + return new BlurFilter(this.blurX, this.blurY, this.quality); }; - /** - * Merges the rgb channels of one image with the alpha channel of another. This can be used to combine a compressed - * JPEG image containing color data with a PNG32 monochromatic image containing alpha data. With certain types of - * images (those with detail that lend itself to JPEG compression) this can provide significant file size savings - * versus a single RGBA PNG32. This method is very fast (generally on the order of 1-2 ms to run). - * @method mergeAlpha - * @static - * @param {HTMLImageElement} rbgImage The image (or canvas) containing the RGB channels to use. - * @param {HTMLImageElement} alphaImage The image (or canvas) containing the alpha channel to use. - * @param {HTMLCanvasElement} canvas Optional. If specified, this canvas will be used and returned. If not, a new canvas will be created. - * @return {HTMLCanvasElement} A canvas with the combined image data. This can be used as a source for Bitmap or SpriteSheet. - * @deprecated Tools such as ImageAlpha generally provide better results. This will be moved to sandbox in the future. - */ - SpriteSheetUtils.mergeAlpha = function(rgbImage, alphaImage, canvas) { - if (!canvas) { canvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); } - canvas.width = Math.max(alphaImage.width, rgbImage.width); - canvas.height = Math.max(alphaImage.height, rgbImage.height); - var ctx = canvas.getContext("2d"); - ctx.save(); - ctx.drawImage(rgbImage,0,0); - ctx.globalCompositeOperation = "destination-in"; - ctx.drawImage(alphaImage,0,0); - ctx.restore(); - return canvas; + /** docced in super class **/ + p.toString = function() { + return "[BlurFilter]"; }; -// private static methods: - SpriteSheetUtils._flip = function(spriteSheet, count, h, v) { - var imgs = spriteSheet._images; - var canvas = SpriteSheetUtils._workingCanvas; - var ctx = SpriteSheetUtils._workingContext; - var il = imgs.length/count; - for (var i=0;i> 1; + if (isNaN(radiusX) || radiusX < 0) return false; + var radiusY = this.blurY >> 1; + if (isNaN(radiusY) || radiusY < 0) return false; + if (radiusX == 0 && radiusY == 0) return false; + + var iterations = this.quality; + if (isNaN(iterations) || iterations < 1) iterations = 1; + iterations |= 0; + if (iterations > 3) iterations = 3; + if (iterations < 1) iterations = 1; + + var px = imageData.data; + var x=0, y=0, i=0, p=0, yp=0, yi=0, yw=0, r=0, g=0, b=0, a=0, pr=0, pg=0, pb=0, pa=0; + + var divx = (radiusX + radiusX + 1) | 0; + var divy = (radiusY + radiusY + 1) | 0; + var w = imageData.width | 0; + var h = imageData.height | 0; + + var w1 = (w - 1) | 0; + var h1 = (h - 1) | 0; + var rxp1 = (radiusX + 1) | 0; + var ryp1 = (radiusY + 1) | 0; + + var ssx = {r:0,b:0,g:0,a:0}; + var sx = ssx; + for ( i = 1; i < divx; i++ ) + { + sx = sx.n = {r:0,b:0,g:0,a:0}; + } + sx.n = ssx; + + var ssy = {r:0,b:0,g:0,a:0}; + var sy = ssy; + for ( i = 1; i < divy; i++ ) + { + sy = sy.n = {r:0,b:0,g:0,a:0}; } + sy.n = ssy; + + var si = null; + + + var mtx = BlurFilter.MUL_TABLE[radiusX] | 0; + var stx = BlurFilter.SHG_TABLE[radiusX] | 0; + var mty = BlurFilter.MUL_TABLE[radiusY] | 0; + var sty = BlurFilter.SHG_TABLE[radiusY] | 0; + + while (iterations-- > 0) { + + yw = yi = 0; + var ms = mtx; + var ss = stx; + for (y = h; --y > -1;) { + r = rxp1 * (pr = px[(yi) | 0]); + g = rxp1 * (pg = px[(yi + 1) | 0]); + b = rxp1 * (pb = px[(yi + 2) | 0]); + a = rxp1 * (pa = px[(yi + 3) | 0]); + + sx = ssx; + + for( i = rxp1; --i > -1; ) + { + sx.r = pr; + sx.g = pg; + sx.b = pb; + sx.a = pa; + sx = sx.n; + } + + for( i = 1; i < rxp1; i++ ) + { + p = (yi + ((w1 < i ? w1 : i) << 2)) | 0; + r += ( sx.r = px[p]); + g += ( sx.g = px[p+1]); + b += ( sx.b = px[p+2]); + a += ( sx.a = px[p+3]); + + sx = sx.n; + } + + si = ssx; + for ( x = 0; x < w; x++ ) + { + px[yi++] = (r * ms) >>> ss; + px[yi++] = (g * ms) >>> ss; + px[yi++] = (b * ms) >>> ss; + px[yi++] = (a * ms) >>> ss; + + p = ((yw + ((p = x + radiusX + 1) < w1 ? p : w1)) << 2); + + r -= si.r - ( si.r = px[p]); + g -= si.g - ( si.g = px[p+1]); + b -= si.b - ( si.b = px[p+2]); + a -= si.a - ( si.a = px[p+3]); + + si = si.n; + + } + yw += w; + } + + ms = mty; + ss = sty; + for (x = 0; x < w; x++) { + yi = (x << 2) | 0; + + r = (ryp1 * (pr = px[yi])) | 0; + g = (ryp1 * (pg = px[(yi + 1) | 0])) | 0; + b = (ryp1 * (pb = px[(yi + 2) | 0])) | 0; + a = (ryp1 * (pa = px[(yi + 3) | 0])) | 0; + + sy = ssy; + for( i = 0; i < ryp1; i++ ) + { + sy.r = pr; + sy.g = pg; + sy.b = pb; + sy.a = pa; + sy = sy.n; + } + + yp = w; + + for( i = 1; i <= radiusY; i++ ) + { + yi = ( yp + x ) << 2; + + r += ( sy.r = px[yi]); + g += ( sy.g = px[yi+1]); + b += ( sy.b = px[yi+2]); + a += ( sy.a = px[yi+3]); + + sy = sy.n; + + if( i < h1 ) + { + yp += w; + } + } + + yi = x; + si = ssy; + if ( iterations > 0 ) + { + for ( y = 0; y < h; y++ ) + { + p = yi << 2; + px[p+3] = pa =(a * ms) >>> ss; + if ( pa > 0 ) + { + px[p] = ((r * ms) >>> ss ); + px[p+1] = ((g * ms) >>> ss ); + px[p+2] = ((b * ms) >>> ss ); + } else { + px[p] = px[p+1] = px[p+2] = 0 + } + + p = ( x + (( ( p = y + ryp1) < h1 ? p : h1 ) * w )) << 2; + + r -= si.r - ( si.r = px[p]); + g -= si.g - ( si.g = px[p+1]); + b -= si.b - ( si.b = px[p+2]); + a -= si.a - ( si.a = px[p+3]); + + si = si.n; - var frames = spriteSheet._frames; - var fl = frames.length/count; - for (i=0;i>> ss; + if ( pa > 0 ) + { + pa = 255 / pa; + px[p] = ((r * ms) >>> ss ) * pa; + px[p+1] = ((g * ms) >>> ss ) * pa; + px[p+2] = ((b * ms) >>> ss ) * pa; + } else { + px[p] = px[p+1] = px[p+2] = 0 + } - var frame = {image:img,rect:rect,regX:src.regX,regY:src.regY}; - if (h) { - rect.x = img.width-rect.x-rect.width; // update rect - frame.regX = rect.width-src.regX; // update registration point - } - if (v) { - rect.y = img.height-rect.y-rect.height; // update rect - frame.regY = rect.height-src.regY; // update registration point - } - frames.push(frame); - } + p = ( x + (( ( p = y + ryp1) < h1 ? p : h1 ) * w )) << 2; - var sfx = "_"+(h?"h":"")+(v?"v":""); - var names = spriteSheet._animations; - var data = spriteSheet._data; - var al = names.length/count; - for (i=0;imaxWidth or maxHeight. - * @class SpriteSheetBuilder - * @extends EventDispatcher - * @constructor - **/ - function SpriteSheetBuilder() { - this.EventDispatcher_constructor(); - - // public properties: - /** - * The maximum width for the images (not individual frames) in the generated sprite sheet. It is recommended to use - * a power of 2 for this value (ex. 1024, 2048, 4096). If the frames cannot all fit within the max dimensions, then - * additional images will be created as needed. - * @property maxWidth - * @type Number - * @default 2048 - */ - this.maxWidth = 2048; - - /** - * The maximum height for the images (not individual frames) in the generated sprite sheet. It is recommended to use - * a power of 2 for this value (ex. 1024, 2048, 4096). If the frames cannot all fit within the max dimensions, then - * additional images will be created as needed. - * @property maxHeight - * @type Number - * @default 2048 - **/ - this.maxHeight = 2048; - - /** - * The sprite sheet that was generated. This will be null before a build is completed successfully. - * @property spriteSheet - * @type SpriteSheet - **/ - this.spriteSheet = null; - - /** - * The scale to apply when drawing all frames to the sprite sheet. This is multiplied against any scale specified - * in the addFrame call. This can be used, for example, to generate a sprite sheet at run time that is tailored to - * the a specific device resolution (ex. tablet vs mobile). - * @property scale - * @type Number - * @default 1 - **/ - this.scale = 1; - - /** - * The padding to use between frames. This is helpful to preserve antialiasing on drawn vector content. - * @property padding - * @type Number - * @default 1 - **/ - this.padding = 1; - - /** - * A number from 0.01 to 0.99 that indicates what percentage of time the builder can use. This can be - * thought of as the number of seconds per second the builder will use. For example, with a timeSlice value of 0.3, - * the builder will run 20 times per second, using approximately 15ms per build (30% of available time, or 0.3s per second). - * Defaults to 0.3. - * @property timeSlice - * @type Number - * @default 0.3 - **/ - this.timeSlice = 0.3; - - /** - * A value between 0 and 1 that indicates the progress of a build, or -1 if a build has not - * been initiated. - * @property progress - * @type Number - * @default -1 - * @readonly - **/ - this.progress = -1; - - - // private properties: - /** - * @property _frames - * @protected - * @type Array - **/ - this._frames = []; - - /** - * @property _animations - * @protected - * @type Array - **/ - this._animations = {}; - - /** - * @property _data - * @protected - * @type Array - **/ - this._data = null; - - /** - * @property _nextFrameIndex - * @protected - * @type Number - **/ - this._nextFrameIndex = 0; - - /** - * @property _index - * @protected - * @type Number - **/ - this._index = 0; - - /** - * @property _timerID - * @protected - * @type Number - **/ - this._timerID = null; - - /** - * @property _scale - * @protected - * @type Number - **/ - this._scale = 1; - } - var p = createjs.extend(SpriteSheetBuilder, createjs.EventDispatcher); - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// constants: - SpriteSheetBuilder.ERR_DIMENSIONS = "frame dimensions exceed max spritesheet dimensions"; - SpriteSheetBuilder.ERR_RUNNING = "a build is already running"; - -// events: - /** - * Dispatched when a build completes. - * @event complete - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - * @since 0.6.0 - */ - - /** - * Dispatched when an asynchronous build has progress. - * @event progress - * @param {Object} target The object that dispatched the event. - * @param {String} type The event type. - * @param {Number} progress The current progress value (0-1). - * @since 0.6.0 - */ - - -// public methods: - /** - * Adds a frame to the {{#crossLink "SpriteSheet"}}{{/crossLink}}. Note that the frame will not be drawn until you - * call {{#crossLink "SpriteSheetBuilder/build"}}{{/crossLink}} method. The optional setup params allow you to have - * a function run immediately before the draw occurs. For example, this allows you to add a single source multiple - * times, but manipulate it or its children to change it to generate different frames. - * - * Note that the source's transformations (x, y, scale, rotate, alpha) will be ignored, except for regX/Y. To apply - * transforms to a source object and have them captured in the sprite sheet, simply place it into a {{#crossLink "Container"}}{{/crossLink}} - * and pass in the Container as the source. - * @method addFrame - * @param {DisplayObject} source The source {{#crossLink "DisplayObject"}}{{/crossLink}} to draw as the frame. - * @param {Rectangle} [sourceRect] A {{#crossLink "Rectangle"}}{{/crossLink}} defining the portion of the - * source to draw to the frame. If not specified, it will look for a getBounds method, bounds property, - * or nominalBounds property on the source to use. If one is not found, the frame will be skipped. - * @param {Number} [scale=1] Optional. The scale to draw this frame at. Default is 1. - * @param {Function} [setupFunction] A function to call immediately before drawing this frame. It will be called with two parameters: the source, and setupData. - * @param {Object} [setupData] Arbitrary setup data to pass to setupFunction as the second parameter. - * @return {Number} The index of the frame that was just added, or null if a sourceRect could not be determined. - **/ - p.addFrame = function(source, sourceRect, scale, setupFunction, setupData) { - if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } - var rect = sourceRect||source.bounds||source.nominalBounds; - if (!rect&&source.getBounds) { rect = source.getBounds(); } - if (!rect) { return null; } - scale = scale||1; - return this._frames.push({source:source, sourceRect:rect, scale:scale, funct:setupFunction, data:setupData, index:this._frames.length, height:rect.height*scale})-1; - }; - - /** - * Adds an animation that will be included in the created sprite sheet. - * @method addAnimation - * @param {String} name The name for the animation. - * @param {Array} frames An array of frame indexes that comprise the animation. Ex. [3,6,5] would describe an animation - * that played frame indexes 3, 6, and 5 in that order. - * @param {String} [next] Specifies the name of the animation to continue to after this animation ends. You can - * also pass false to have the animation stop when it ends. By default it will loop to the start of the same animation. - * @param {Number} [frequency] Specifies a frame advance frequency for this animation. For example, a value - * of 2 would cause the animation to advance every second tick. - **/ - p.addAnimation = function(name, frames, next, frequency) { - if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } - this._animations[name] = {frames:frames, next:next, frequency:frequency}; - }; - - /** - * This will take a MovieClip instance, and add its frames and labels to this builder. Labels will be added as an animation - * running from the label index to the next label. For example, if there is a label named "foo" at frame 0 and a label - * named "bar" at frame 10, in a MovieClip with 15 frames, it will add an animation named "foo" that runs from frame - * index 0 to 9, and an animation named "bar" that runs from frame index 10 to 14. - * - * Note that this will iterate through the full MovieClip with actionsEnabled set to false, ending on the last frame. - * @method addMovieClip - * @param {MovieClip} source The source MovieClip instance to add to the sprite sheet. - * @param {Rectangle} [sourceRect] A {{#crossLink "Rectangle"}}{{/crossLink}} defining the portion of the source to - * draw to the frame. If not specified, it will look for a getBounds method, frameBounds - * Array, bounds property, or nominalBounds property on the source to use. If one is not - * found, the MovieClip will be skipped. - * @param {Number} [scale=1] The scale to draw the movie clip at. - * @param {Function} [setupFunction] A function to call immediately before drawing each frame. It will be called with three parameters: the source, setupData, and the frame index. - * @param {Object} [setupData] Arbitrary setup data to pass to setupFunction as the second parameter. - * @param {Function} [labelFunction] This method will be called for each movieclip label that is added with four parameters: the label name, the source movieclip instance, the starting frame index (in the movieclip timeline) and the end index. It must return a new name for the label/animation, or false to exclude the label. - **/ - p.addMovieClip = function(source, sourceRect, scale, setupFunction, setupData, labelFunction) { - if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } - var rects = source.frameBounds; - var rect = sourceRect||source.bounds||source.nominalBounds; - if (!rect&&source.getBounds) { rect = source.getBounds(); } - if (!rect && !rects) { return; } - - var i, l, baseFrameIndex = this._frames.length; - var duration = source.timeline.duration; - for (i=0; itimeSlice. When it is complete it will - * call the specified callback. - * @method buildAsync - * @param {Number} [timeSlice] Sets the timeSlice property on this instance. - **/ - p.buildAsync = function(timeSlice) { - if (this._data) { throw SpriteSheetBuilder.ERR_RUNNING; } - this.timeSlice = timeSlice; - this._startBuild(); - var _this = this; - this._timerID = setTimeout(function() { _this._run(); }, 50-Math.max(0.01, Math.min(0.99, this.timeSlice||0.3))*50); - }; - - /** - * Stops the current asynchronous build. - * @method stopAsync - **/ - p.stopAsync = function() { - clearTimeout(this._timerID); - this._data = null; - }; - - /** - * SpriteSheetBuilder instances cannot be cloned. - * @method clone - **/ - p.clone = function() { - throw("SpriteSheetBuilder cannot be cloned."); - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[SpriteSheetBuilder]"; - }; - - -// private methods: - /** - * @method _startBuild - * @protected - **/ - p._startBuild = function() { - var pad = this.padding||0; - this.progress = 0; - this.spriteSheet = null; - this._index = 0; - this._scale = this.scale; - var dataFrames = []; - this._data = { - images: [], - frames: dataFrames, - animations: this._animations // TODO: should we "clone" _animations in case someone adds more animations after a build? - }; - - var frames = this._frames.slice(); - frames.sort(function(a,b) { return (a.height<=b.height) ? -1 : 1; }); - - if (frames[frames.length-1].height+pad*2 > this.maxHeight) { throw SpriteSheetBuilder.ERR_DIMENSIONS; } - var y=0, x=0; - var img = 0; - while (frames.length) { - var o = this._fillRow(frames, y, img, dataFrames, pad); - if (o.w > x) { x = o.w; } - y += o.h; - if (!o.h || !frames.length) { - var canvas = createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"); - canvas.width = this._getSize(x,this.maxWidth); - canvas.height = this._getSize(y,this.maxHeight); - this._data.images[img] = canvas; - if (!o.h) { - x=y=0; - img++; - } - } - } - }; - - /** - * @method _setupMovieClipFrame - * @protected - * @return {Number} The width & height of the row. - **/ - p._setupMovieClipFrame = function(source, data) { - var ae = source.actionsEnabled; - source.actionsEnabled = false; - source.gotoAndStop(data.i); - source.actionsEnabled = ae; - data.f&&data.f(source, data.d, data.i); - }; - - /** - * @method _getSize - * @protected - * @return {Number} The width & height of the row. - **/ - p._getSize = function(size,max) { - var pow = 4; - while (Math.pow(2,++pow) < size){} - return Math.min(max,Math.pow(2,pow)); - }; - - /** - * @method _fillRow - * @param {Array} frames - * @param {Number} y - * @param {HTMLImageElement} img - * @param {Object} dataFrames - * @param {Number} pad - * @protected - * @return {Number} The width & height of the row. - **/ - p._fillRow = function(frames, y, img, dataFrames, pad) { - var w = this.maxWidth; - var maxH = this.maxHeight; - y += pad; - var h = maxH-y; - var x = pad; - var height = 0; - for (var i=frames.length-1; i>=0; i--) { - var frame = frames[i]; - var sc = this._scale*frame.scale; - var rect = frame.sourceRect; - var source = frame.source; - var rx = Math.floor(sc*rect.x-pad); - var ry = Math.floor(sc*rect.y-pad); - var rh = Math.ceil(sc*rect.height+pad*2); - var rw = Math.ceil(sc*rect.width+pad*2); - if (rw > w) { throw SpriteSheetBuilder.ERR_DIMENSIONS; } - if (rh > h || x+rw > w) { continue; } - frame.img = img; - frame.rect = new createjs.Rectangle(x,y,rw,rh); - height = height || rh; - frames.splice(i,1); - dataFrames[frame.index] = [x,y,rw,rh,img,Math.round(-rx+sc*source.regX-pad),Math.round(-ry+sc*source.regY-pad)]; - x += rw; - } - return {w:x, h:height}; - }; - - /** - * @method _endBuild - * @protected - **/ - p._endBuild = function() { - this.spriteSheet = new createjs.SpriteSheet(this._data); - this._data = null; - this.progress = 1; - this.dispatchEvent("complete"); - }; - - /** - * @method _run - * @protected - **/ - p._run = function() { - var ts = Math.max(0.01, Math.min(0.99, this.timeSlice||0.3))*50; - var t = (new Date()).getTime()+ts; - var complete = false; - while (t > (new Date()).getTime()) { - if (!this._drawNext()) { complete = true; break; } - } - if (complete) { - this._endBuild(); - } else { - var _this = this; - this._timerID = setTimeout(function() { _this._run(); }, 50-ts); - } - var p = this.progress = this._index/this._frames.length; - if (this.hasEventListener("progress")) { - var evt = new createjs.Event("progress"); - evt.progress = p; - this.dispatchEvent(evt); - } - }; - - /** - * @method _drawNext - * @protected - * @return Boolean Returns false if this is the last draw. - **/ - p._drawNext = function() { - var frame = this._frames[this._index]; - var sc = frame.scale*this._scale; - var rect = frame.rect; - var sourceRect = frame.sourceRect; - var canvas = this._data.images[frame.img]; - var ctx = canvas.getContext("2d"); - frame.funct&&frame.funct(frame.source, frame.data); - ctx.save(); - ctx.beginPath(); - ctx.rect(rect.x, rect.y, rect.width, rect.height); - ctx.clip(); - ctx.translate(Math.ceil(rect.x-sourceRect.x*sc), Math.ceil(rect.y-sourceRect.y*sc)); - ctx.scale(sc,sc); - frame.source.draw(ctx); // display object will draw itself. - ctx.restore(); - return (++this._index) < this._frames.length; - }; - - - createjs.SpriteSheetBuilder = createjs.promote(SpriteSheetBuilder, "EventDispatcher"); -}()); - -//############################################################################## -// DOMElement.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * This class is still experimental, and more advanced use is likely to be buggy. Please report bugs. - * - * A DOMElement allows you to associate a HTMLElement with the display list. It will be transformed - * within the DOM as though it is child of the {{#crossLink "Container"}}{{/crossLink}} it is added to. However, it is - * not rendered to canvas, and as such will retain whatever z-index it has relative to the canvas (ie. it will be - * drawn in front of or behind the canvas). - * - * The position of a DOMElement is relative to their parent node in the DOM. It is recommended that - * the DOM Object be added to a div that also contains the canvas so that they share the same position - * on the page. - * - * DOMElement is useful for positioning HTML elements over top of canvas content, and for elements - * that you want to display outside the bounds of the canvas. For example, a tooltip with rich HTML - * content. - * - *

        Mouse Interaction

        - * - * DOMElement instances are not full EaselJS display objects, and do not participate in EaselJS mouse - * events or support methods like hitTest. To get mouse events from a DOMElement, you must instead add handlers to - * the htmlElement (note, this does not support EventDispatcher) - * - * var domElement = new createjs.DOMElement(htmlElement); - * domElement.htmlElement.onclick = function() { - * console.log("clicked"); - * } - * - * @class DOMElement - * @extends DisplayObject - * @constructor - * @param {HTMLElement} htmlElement A reference or id for the DOM element to manage. - */ - function DOMElement(htmlElement) { - this.DisplayObject_constructor(); - - if (typeof(htmlElement)=="string") { htmlElement = document.getElementById(htmlElement); } - this.mouseEnabled = false; - - var style = htmlElement.style; - style.position = "absolute"; - style.transformOrigin = style.WebkitTransformOrigin = style.msTransformOrigin = style.MozTransformOrigin = style.OTransformOrigin = "0% 0%"; - - - // public properties: - /** - * The DOM object to manage. - * @property htmlElement - * @type HTMLElement - */ - this.htmlElement = htmlElement; - - - // private properties: - /** - * @property _oldMtx - * @type Matrix2D - * @protected - */ - this._oldProps = null; - } - var p = createjs.extend(DOMElement, createjs.DisplayObject); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// public methods: - /** - * Returns true or false indicating whether the display object would be visible if drawn to a canvas. - * This does not account for whether it would be visible within the boundaries of the stage. - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method isVisible - * @return {Boolean} Boolean indicating whether the display object would be visible if drawn to a canvas - */ - p.isVisible = function() { - return this.htmlElement != null; - }; - - /** - * Draws the display object into the specified context ignoring its visible, alpha, shadow, and transform. - * Returns true if the draw was handled (useful for overriding functionality). - * NOTE: This method is mainly for internal use, though it may be useful for advanced uses. - * @method draw - * @param {CanvasRenderingContext2D} ctx The canvas 2D context object to draw into. - * @param {Boolean} ignoreCache Indicates whether the draw operation should ignore any current cache. - * For example, used for drawing the cache (to prevent it from simply drawing an existing cache back - * into itself). - * @return {Boolean} - */ - p.draw = function(ctx, ignoreCache) { - // this relies on the _tick method because draw isn't called if the parent is not visible. - // the actual update happens in _handleDrawEnd - return true; - }; - - /** - * Not applicable to DOMElement. - * @method cache - */ - p.cache = function() {}; - - /** - * Not applicable to DOMElement. - * @method uncache - */ - p.uncache = function() {}; - - /** - * Not applicable to DOMElement. - * @method updateCache - */ - p.updateCache = function() {}; - - /** - * Not applicable to DOMElement. - * @method hitTest - */ - p.hitTest = function() {}; - - /** - * Not applicable to DOMElement. - * @method localToGlobal - */ - p.localToGlobal = function() {}; - - /** - * Not applicable to DOMElement. - * @method globalToLocal - */ - p.globalToLocal = function() {}; - - /** - * Not applicable to DOMElement. - * @method localToLocal - */ - p.localToLocal = function() {}; - - /** - * DOMElement cannot be cloned. Throws an error. - * @method clone - */ - p.clone = function() { - throw("DOMElement cannot be cloned.") - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - */ - p.toString = function() { - return "[DOMElement (name="+ this.name +")]"; - }; - - /** - * Interaction events should be added to `htmlElement`, and not the DOMElement instance, since DOMElement instances - * are not full EaselJS display objects and do not participate in EaselJS mouse events. - * @event click - */ - - /** - * Interaction events should be added to `htmlElement`, and not the DOMElement instance, since DOMElement instances - * are not full EaselJS display objects and do not participate in EaselJS mouse events. - * @event dblClick - */ - - /** - * Interaction events should be added to `htmlElement`, and not the DOMElement instance, since DOMElement instances - * are not full EaselJS display objects and do not participate in EaselJS mouse events. - * @event mousedown - */ - - /** - * The HTMLElement can listen for the mouseover event, not the DOMElement instance. - * Since DOMElement instances are not full EaselJS display objects and do not participate in EaselJS mouse events. - * @event mouseover - */ - - /** - * Not applicable to DOMElement. - * @event tick - */ - - -// private methods: - /** - * @method _tick - * @param {Object} evtObj An event object that will be dispatched to all tick listeners. This object is reused between dispatchers to reduce construction & GC costs. - * function. - * @protected - */ - p._tick = function(evtObj) { - var stage = this.getStage(); - stage&&stage.on("drawend", this._handleDrawEnd, this, true); - this.DisplayObject__tick(evtObj); - }; - - /** - * @method _handleDrawEnd - * @param {Event} evt - * @protected - */ - p._handleDrawEnd = function(evt) { - var o = this.htmlElement; - if (!o) { return; } - var style = o.style; - - var props = this.getConcatenatedDisplayProps(this._props), mtx = props.matrix; - - var visibility = props.visible ? "visible" : "hidden"; - if (visibility != style.visibility) { style.visibility = visibility; } - if (!props.visible) { return; } - - var oldProps = this._oldProps, oldMtx = oldProps&&oldProps.matrix; - var n = 10000; // precision - - if (!oldMtx || !oldMtx.equals(mtx)) { - var str = "matrix(" + (mtx.a*n|0)/n +","+ (mtx.b*n|0)/n +","+ (mtx.c*n|0)/n +","+ (mtx.d*n|0)/n +","+ (mtx.tx+0.5|0); - style.transform = style.WebkitTransform = style.OTransform = style.msTransform = str +","+ (mtx.ty+0.5|0) +")"; - style.MozTransform = str +"px,"+ (mtx.ty+0.5|0) +"px)"; - if (!oldProps) { oldProps = this._oldProps = new createjs.DisplayProps(true, NaN); } - oldProps.matrix.copy(mtx); - } - - if (oldProps.alpha != props.alpha) { - style.opacity = ""+(props.alpha*n|0)/n; - oldProps.alpha = props.alpha; - } - }; - - - createjs.DOMElement = createjs.promote(DOMElement, "DisplayObject"); -}()); - -//############################################################################## -// Filter.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Base class that all filters should inherit from. Filters need to be applied to objects that have been cached using - * the {{#crossLink "DisplayObject/cache"}}{{/crossLink}} method. If an object changes, please cache it again, or use - * {{#crossLink "DisplayObject/updateCache"}}{{/crossLink}}. Note that the filters must be applied before caching. - * - *

        Example

        - * - * myInstance.filters = [ - * new createjs.ColorFilter(0, 0, 0, 1, 255, 0, 0), - * new createjs.BlurFilter(5, 5, 10) - * ]; - * myInstance.cache(0,0, 100, 100); - * - * Note that each filter can implement a {{#crossLink "Filter/getBounds"}}{{/crossLink}} method, which returns the - * margins that need to be applied in order to fully display the filter. For example, the {{#crossLink "BlurFilter"}}{{/crossLink}} - * will cause an object to feather outwards, resulting in a margin around the shape. - * - *

        EaselJS Filters

        - * EaselJS comes with a number of pre-built filters. Note that individual filters are not compiled into the minified - * version of EaselJS. To use them, you must include them manually in the HTML. - *
        • {{#crossLink "AlphaMapFilter"}}{{/crossLink}} : Map a greyscale image to the alpha channel of a display object
        • - *
        • {{#crossLink "AlphaMaskFilter"}}{{/crossLink}}: Map an image's alpha channel to the alpha channel of a display object
        • - *
        • {{#crossLink "BlurFilter"}}{{/crossLink}}: Apply vertical and horizontal blur to a display object
        • - *
        • {{#crossLink "ColorFilter"}}{{/crossLink}}: Color transform a display object
        • - *
        • {{#crossLink "ColorMatrixFilter"}}{{/crossLink}}: Transform an image using a {{#crossLink "ColorMatrix"}}{{/crossLink}}
        • - *
        - * - * @class Filter - * @constructor - **/ - function Filter() {} - var p = Filter.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// public methods: - /** - * Provides padding values for this filter. That is, how much the filter will extend the visual bounds of an object it is applied to. - * @method getBounds - * @param {Rectangle} [rect] If specified, the provided Rectangle instance will be expanded by the padding amounts and returned. - * @return {Rectangle} If a `rect` param was provided, it is returned. If not, either a new rectangle with the padding values, or null if no padding is required for this filter. - **/ - p.getBounds = function(rect) { - return rect; - }; - - /** - * Applies the filter to the specified context. - * @method applyFilter - * @param {CanvasRenderingContext2D} ctx The 2D context to use as the source. - * @param {Number} x The x position to use for the source rect. - * @param {Number} y The y position to use for the source rect. - * @param {Number} width The width to use for the source rect. - * @param {Number} height The height to use for the source rect. - * @param {CanvasRenderingContext2D} [targetCtx] The 2D context to draw the result to. Defaults to the context passed to ctx. - * @param {Number} [targetX] The x position to draw the result to. Defaults to the value passed to x. - * @param {Number} [targetY] The y position to draw the result to. Defaults to the value passed to y. - * @return {Boolean} If the filter was applied successfully. - **/ - p.applyFilter = function(ctx, x, y, width, height, targetCtx, targetX, targetY) { - // this is the default behaviour because most filters access pixel data. It is overridden when not needed. - targetCtx = targetCtx || ctx; - if (targetX == null) { targetX = x; } - if (targetY == null) { targetY = y; } - try { - var imageData = ctx.getImageData(x, y, width, height); - } catch (e) { - return false; - } - if (this._applyFilter(imageData)) { - targetCtx.putImageData(imageData, targetX, targetY); - return true; - } - return false; - }; - - /** - * Returns a string representation of this object. - * @method toString - * @return {String} a string representation of the instance. - **/ - p.toString = function() { - return "[Filter]"; - }; - - /** - * Returns a clone of this Filter instance. - * @method clone - * @return {Filter} A clone of the current Filter instance. - **/ - p.clone = function() { - return new Filter(); - }; - -// private methods: - /** - * @method _applyFilter - * @param {ImageData} imageData Target ImageData instance. - * @return {Boolean} - **/ - p._applyFilter = function(imageData) { return true; }; - - - createjs.Filter = Filter; -}()); - -//############################################################################## -// BlurFilter.js -//############################################################################## - -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Applies a box blur to DisplayObjects. Note that this filter is fairly CPU intensive, particularly if the quality is - * set higher than 1. - * - *

        Example

        - * This example creates a red circle, and then applies a 5 pixel blur to it. It uses the {{#crossLink "Filter/getBounds"}}{{/crossLink}} - * method to account for the spread that the blur causes. - * - * var shape = new createjs.Shape().set({x:100,y:100}); - * shape.graphics.beginFill("#ff0000").drawCircle(0,0,50); - * - * var blurFilter = new createjs.BlurFilter(5, 5, 1); - * shape.filters = [blurFilter]; - * var bounds = blurFilter.getBounds(); - * - * shape.cache(-50+bounds.x, -50+bounds.y, 100+bounds.width, 100+bounds.height); - * - * See {{#crossLink "Filter"}}{{/crossLink}} for an more information on applying filters. - * @class BlurFilter - * @extends Filter - * @constructor - * @param {Number} [blurX=0] The horizontal blur radius in pixels. - * @param {Number} [blurY=0] The vertical blur radius in pixels. - * @param {Number} [quality=1] The number of blur iterations. - **/ - function BlurFilter( blurX, blurY, quality) { - if ( isNaN(blurX) || blurX < 0 ) blurX = 0; - if ( isNaN(blurY) || blurY < 0 ) blurY = 0; - if ( isNaN(quality) || quality < 1 ) quality = 1; - - - // public properties: - /** - * Horizontal blur radius in pixels - * @property blurX - * @default 0 - * @type Number - **/ - this.blurX = blurX | 0; - - /** - * Vertical blur radius in pixels - * @property blurY - * @default 0 - * @type Number - **/ - this.blurY = blurY | 0; - - /** - * Number of blur iterations. For example, a value of 1 will produce a rough blur. A value of 2 will produce a - * smoother blur, but take twice as long to run. - * @property quality - * @default 1 - * @type Number - **/ - this.quality = quality | 0; - } - var p = createjs.extend(BlurFilter, createjs.Filter); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// constants: - /** - * Array of multiply values for blur calculations. - * @property MUL_TABLE - * @type Array - * @protected - * @static - **/ - BlurFilter.MUL_TABLE = [1, 171, 205, 293, 57, 373, 79, 137, 241, 27, 391, 357, 41, 19, 283, 265, 497, 469, 443, 421, 25, 191, 365, 349, 335, 161, 155, 149, 9, 278, 269, 261, 505, 245, 475, 231, 449, 437, 213, 415, 405, 395, 193, 377, 369, 361, 353, 345, 169, 331, 325, 319, 313, 307, 301, 37, 145, 285, 281, 69, 271, 267, 263, 259, 509, 501, 493, 243, 479, 118, 465, 459, 113, 446, 55, 435, 429, 423, 209, 413, 51, 403, 199, 393, 97, 3, 379, 375, 371, 367, 363, 359, 355, 351, 347, 43, 85, 337, 333, 165, 327, 323, 5, 317, 157, 311, 77, 305, 303, 75, 297, 294, 73, 289, 287, 71, 141, 279, 277, 275, 68, 135, 67, 133, 33, 262, 260, 129, 511, 507, 503, 499, 495, 491, 61, 121, 481, 477, 237, 235, 467, 232, 115, 457, 227, 451, 7, 445, 221, 439, 218, 433, 215, 427, 425, 211, 419, 417, 207, 411, 409, 203, 202, 401, 399, 396, 197, 49, 389, 387, 385, 383, 95, 189, 47, 187, 93, 185, 23, 183, 91, 181, 45, 179, 89, 177, 11, 175, 87, 173, 345, 343, 341, 339, 337, 21, 167, 83, 331, 329, 327, 163, 81, 323, 321, 319, 159, 79, 315, 313, 39, 155, 309, 307, 153, 305, 303, 151, 75, 299, 149, 37, 295, 147, 73, 291, 145, 289, 287, 143, 285, 71, 141, 281, 35, 279, 139, 69, 275, 137, 273, 17, 271, 135, 269, 267, 133, 265, 33, 263, 131, 261, 130, 259, 129, 257, 1]; - - /** - * Array of shift values for blur calculations. - * @property SHG_TABLE - * @type Array - * @protected - * @static - **/ - BlurFilter.SHG_TABLE = [0, 9, 10, 11, 9, 12, 10, 11, 12, 9, 13, 13, 10, 9, 13, 13, 14, 14, 14, 14, 10, 13, 14, 14, 14, 13, 13, 13, 9, 14, 14, 14, 15, 14, 15, 14, 15, 15, 14, 15, 15, 15, 14, 15, 15, 15, 15, 15, 14, 15, 15, 15, 15, 15, 15, 12, 14, 15, 15, 13, 15, 15, 15, 15, 16, 16, 16, 15, 16, 14, 16, 16, 14, 16, 13, 16, 16, 16, 15, 16, 13, 16, 15, 16, 14, 9, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 14, 16, 16, 15, 16, 16, 10, 16, 15, 16, 14, 16, 16, 14, 16, 16, 14, 16, 16, 14, 15, 16, 16, 16, 14, 15, 14, 15, 13, 16, 16, 15, 17, 17, 17, 17, 17, 17, 14, 15, 17, 17, 16, 16, 17, 16, 15, 17, 16, 17, 11, 17, 16, 17, 16, 17, 16, 17, 17, 16, 17, 17, 16, 17, 17, 16, 16, 17, 17, 17, 16, 14, 17, 17, 17, 17, 15, 16, 14, 16, 15, 16, 13, 16, 15, 16, 14, 16, 15, 16, 12, 16, 15, 16, 17, 17, 17, 17, 17, 13, 16, 15, 17, 17, 17, 16, 15, 17, 17, 17, 16, 15, 17, 17, 14, 16, 17, 17, 16, 17, 17, 16, 15, 17, 16, 14, 17, 16, 15, 17, 16, 17, 17, 16, 17, 15, 16, 17, 14, 17, 16, 15, 17, 16, 17, 13, 17, 16, 17, 17, 16, 17, 14, 17, 16, 17, 16, 17, 16, 17, 9]; - -// public methods: - /** docced in super class **/ - p.getBounds = function (rect) { - var x = this.blurX|0, y = this.blurY| 0; - if (x <= 0 && y <= 0) { return rect; } - var q = Math.pow(this.quality, 0.2); - return (rect || new createjs.Rectangle()).pad(x*q+1,y*q+1,x*q+1,y*q+1); - }; - - /** docced in super class **/ - p.clone = function() { - return new BlurFilter(this.blurX, this.blurY, this.quality); - }; - - /** docced in super class **/ - p.toString = function() { - return "[BlurFilter]"; - }; - - -// private methods: - - /** docced in super class **/ - p._applyFilter = function (imageData) { - - var radiusX = this.blurX >> 1; - if (isNaN(radiusX) || radiusX < 0) return false; - var radiusY = this.blurY >> 1; - if (isNaN(radiusY) || radiusY < 0) return false; - if (radiusX == 0 && radiusY == 0) return false; - - var iterations = this.quality; - if (isNaN(iterations) || iterations < 1) iterations = 1; - iterations |= 0; - if (iterations > 3) iterations = 3; - if (iterations < 1) iterations = 1; - - var px = imageData.data; - var x=0, y=0, i=0, p=0, yp=0, yi=0, yw=0, r=0, g=0, b=0, a=0, pr=0, pg=0, pb=0, pa=0; - - var divx = (radiusX + radiusX + 1) | 0; - var divy = (radiusY + radiusY + 1) | 0; - var w = imageData.width | 0; - var h = imageData.height | 0; - - var w1 = (w - 1) | 0; - var h1 = (h - 1) | 0; - var rxp1 = (radiusX + 1) | 0; - var ryp1 = (radiusY + 1) | 0; - - var ssx = {r:0,b:0,g:0,a:0}; - var sx = ssx; - for ( i = 1; i < divx; i++ ) - { - sx = sx.n = {r:0,b:0,g:0,a:0}; - } - sx.n = ssx; - - var ssy = {r:0,b:0,g:0,a:0}; - var sy = ssy; - for ( i = 1; i < divy; i++ ) - { - sy = sy.n = {r:0,b:0,g:0,a:0}; - } - sy.n = ssy; - - var si = null; - - - var mtx = BlurFilter.MUL_TABLE[radiusX] | 0; - var stx = BlurFilter.SHG_TABLE[radiusX] | 0; - var mty = BlurFilter.MUL_TABLE[radiusY] | 0; - var sty = BlurFilter.SHG_TABLE[radiusY] | 0; - - while (iterations-- > 0) { - - yw = yi = 0; - var ms = mtx; - var ss = stx; - for (y = h; --y > -1;) { - r = rxp1 * (pr = px[(yi) | 0]); - g = rxp1 * (pg = px[(yi + 1) | 0]); - b = rxp1 * (pb = px[(yi + 2) | 0]); - a = rxp1 * (pa = px[(yi + 3) | 0]); - - sx = ssx; - - for( i = rxp1; --i > -1; ) - { - sx.r = pr; - sx.g = pg; - sx.b = pb; - sx.a = pa; - sx = sx.n; - } - - for( i = 1; i < rxp1; i++ ) - { - p = (yi + ((w1 < i ? w1 : i) << 2)) | 0; - r += ( sx.r = px[p]); - g += ( sx.g = px[p+1]); - b += ( sx.b = px[p+2]); - a += ( sx.a = px[p+3]); - - sx = sx.n; - } - - si = ssx; - for ( x = 0; x < w; x++ ) - { - px[yi++] = (r * ms) >>> ss; - px[yi++] = (g * ms) >>> ss; - px[yi++] = (b * ms) >>> ss; - px[yi++] = (a * ms) >>> ss; - - p = ((yw + ((p = x + radiusX + 1) < w1 ? p : w1)) << 2); - - r -= si.r - ( si.r = px[p]); - g -= si.g - ( si.g = px[p+1]); - b -= si.b - ( si.b = px[p+2]); - a -= si.a - ( si.a = px[p+3]); - - si = si.n; - - } - yw += w; - } - - ms = mty; - ss = sty; - for (x = 0; x < w; x++) { - yi = (x << 2) | 0; - - r = (ryp1 * (pr = px[yi])) | 0; - g = (ryp1 * (pg = px[(yi + 1) | 0])) | 0; - b = (ryp1 * (pb = px[(yi + 2) | 0])) | 0; - a = (ryp1 * (pa = px[(yi + 3) | 0])) | 0; - - sy = ssy; - for( i = 0; i < ryp1; i++ ) - { - sy.r = pr; - sy.g = pg; - sy.b = pb; - sy.a = pa; - sy = sy.n; - } - - yp = w; - - for( i = 1; i <= radiusY; i++ ) - { - yi = ( yp + x ) << 2; - - r += ( sy.r = px[yi]); - g += ( sy.g = px[yi+1]); - b += ( sy.b = px[yi+2]); - a += ( sy.a = px[yi+3]); - - sy = sy.n; - - if( i < h1 ) - { - yp += w; - } - } - - yi = x; - si = ssy; - if ( iterations > 0 ) - { - for ( y = 0; y < h; y++ ) - { - p = yi << 2; - px[p+3] = pa =(a * ms) >>> ss; - if ( pa > 0 ) - { - px[p] = ((r * ms) >>> ss ); - px[p+1] = ((g * ms) >>> ss ); - px[p+2] = ((b * ms) >>> ss ); - } else { - px[p] = px[p+1] = px[p+2] = 0 - } - - p = ( x + (( ( p = y + ryp1) < h1 ? p : h1 ) * w )) << 2; - - r -= si.r - ( si.r = px[p]); - g -= si.g - ( si.g = px[p+1]); - b -= si.b - ( si.b = px[p+2]); - a -= si.a - ( si.a = px[p+3]); - - si = si.n; - - yi += w; - } - } else { - for ( y = 0; y < h; y++ ) - { - p = yi << 2; - px[p+3] = pa =(a * ms) >>> ss; - if ( pa > 0 ) - { - pa = 255 / pa; - px[p] = ((r * ms) >>> ss ) * pa; - px[p+1] = ((g * ms) >>> ss ) * pa; - px[p+2] = ((b * ms) >>> ss ) * pa; - } else { - px[p] = px[p+1] = px[p+2] = 0 - } - - p = ( x + (( ( p = y + ryp1) < h1 ? p : h1 ) * w )) << 2; - - r -= si.r - ( si.r = px[p]); - g -= si.g - ( si.g = px[p+1]); - b -= si.b - ( si.b = px[p+2]); - a -= si.a - ( si.a = px[p+3]); - - si = si.n; - - yi += w; - } - } - } - - } - return true; - }; - - createjs.BlurFilter = createjs.promote(BlurFilter, "Filter"); + createjs.BlurFilter = createjs.promote(BlurFilter, "Filter"); }()); //############################################################################## // AlphaMapFilter.js //############################################################################## -this.createjs = this.createjs || {}; - -(function () { - "use strict"; - - -// constructor: - /** - * Applies a greyscale alpha map image (or canvas) to the target, such that the alpha channel of the result will - * be copied from the red channel of the map, and the RGB channels will be copied from the target. - * - * Generally, it is recommended that you use {{#crossLink "AlphaMaskFilter"}}{{/crossLink}}, because it has much - * better performance. - * - *

        Example

        - * This example draws a red->blue box, caches it, and then uses the cache canvas as an alpha map on a 100x100 image. - * - * var box = new createjs.Shape(); - * box.graphics.beginLinearGradientFill(["#ff0000", "#0000ff"], [0, 1], 0, 0, 0, 100) - * box.graphics.drawRect(0, 0, 100, 100); - * box.cache(0, 0, 100, 100); - * - * var bmp = new createjs.Bitmap("path/to/image.jpg"); - * bmp.filters = [ - * new createjs.AlphaMapFilter(box.cacheCanvas) - * ]; - * bmp.cache(0, 0, 100, 100); - * stage.addChild(bmp); - * - * See {{#crossLink "Filter"}}{{/crossLink}} for more information on applying filters. - * @class AlphaMapFilter - * @extends Filter - * @constructor - * @param {HTMLImageElement|HTMLCanvasElement} alphaMap The greyscale image (or canvas) to use as the alpha value for the - * result. This should be exactly the same dimensions as the target. - **/ - function AlphaMapFilter(alphaMap) { - - - // public properties: - /** - * The greyscale image (or canvas) to use as the alpha value for the result. This should be exactly the same - * dimensions as the target. - * @property alphaMap - * @type HTMLImageElement|HTMLCanvasElement - **/ - this.alphaMap = alphaMap; - - - // private properties: - /** - * @property _alphaMap - * @protected - * @type HTMLImageElement|HTMLCanvasElement - **/ - this._alphaMap = null; - - /** - * @property _mapData - * @protected - * @type Uint8ClampedArray - **/ - this._mapData = null; - } - var p = createjs.extend(AlphaMapFilter, createjs.Filter); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// public methods: - /** docced in super class **/ - p.clone = function () { - var o = new AlphaMapFilter(this.alphaMap); - o._alphaMap = this._alphaMap; - o._mapData = this._mapData; - return o; - }; - - /** docced in super class **/ - p.toString = function () { - return "[AlphaMapFilter]"; - }; - - -// private methods: - /** docced in super class **/ - p._applyFilter = function (imageData) { - if (!this.alphaMap) { return true; } - if (!this._prepAlphaMap()) { return false; } - - // TODO: update to support scenarios where the target has different dimensions. - var data = imageData.data; - var map = this._mapData; - for(var i=0, l=data.length; iExample + * This example draws a red->blue box, caches it, and then uses the cache canvas as an alpha map on a 100x100 image. + * + * var box = new createjs.Shape(); + * box.graphics.beginLinearGradientFill(["#ff0000", "#0000ff"], [0, 1], 0, 0, 0, 100) + * box.graphics.drawRect(0, 0, 100, 100); + * box.cache(0, 0, 100, 100); + * + * var bmp = new createjs.Bitmap("path/to/image.jpg"); + * bmp.filters = [ + * new createjs.AlphaMapFilter(box.cacheCanvas) + * ]; + * bmp.cache(0, 0, 100, 100); + * stage.addChild(bmp); + * + * See {{#crossLink "Filter"}}{{/crossLink}} for more information on applying filters. + * @class AlphaMapFilter + * @extends Filter + * @constructor + * @param {HTMLImageElement|HTMLCanvasElement} alphaMap The greyscale image (or canvas) to use as the alpha value for the + * result. This should be exactly the same dimensions as the target. + **/ + function AlphaMapFilter(alphaMap) { + + + // public properties: + /** + * The greyscale image (or canvas) to use as the alpha value for the result. This should be exactly the same + * dimensions as the target. + * @property alphaMap + * @type HTMLImageElement|HTMLCanvasElement + **/ + this.alphaMap = alphaMap; + + + // private properties: + /** + * @property _alphaMap + * @protected + * @type HTMLImageElement|HTMLCanvasElement + **/ + this._alphaMap = null; + + /** + * @property _mapData + * @protected + * @type Uint8ClampedArray + **/ + this._mapData = null; + } + var p = createjs.extend(AlphaMapFilter, createjs.Filter); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// public methods: + /** docced in super class **/ + p.clone = function () { + var o = new AlphaMapFilter(this.alphaMap); + o._alphaMap = this._alphaMap; + o._mapData = this._mapData; + return o; + }; + + /** docced in super class **/ + p.toString = function () { + return "[AlphaMapFilter]"; + }; + + +// private methods: + /** docced in super class **/ + p._applyFilter = function (imageData) { + if (!this.alphaMap) { return true; } + if (!this._prepAlphaMap()) { return false; } + + // TODO: update to support scenarios where the target has different dimensions. + var data = imageData.data; + var map = this._mapData; + for(var i=0, l=data.length; iIMPORTANT NOTE: This filter currently does not support the targetCtx, or targetX/Y parameters correctly.
        - * - *

        Example

        - * This example draws a gradient box, then caches it and uses the "cacheCanvas" as the alpha mask on a 100x100 image. - * - * var box = new createjs.Shape(); - * box.graphics.beginLinearGradientFill(["#000000", "rgba(0, 0, 0, 0)"], [0, 1], 0, 0, 100, 100) - * box.graphics.drawRect(0, 0, 100, 100); - * box.cache(0, 0, 100, 100); - * - * var bmp = new createjs.Bitmap("path/to/image.jpg"); - * bmp.filters = [ - * new createjs.AlphaMaskFilter(box.cacheCanvas) - * ]; - * bmp.cache(0, 0, 100, 100); - * - * See {{#crossLink "Filter"}}{{/crossLink}} for more information on applying filters. - * @class AlphaMaskFilter - * @extends Filter - * @constructor - * @param {HTMLImageElement|HTMLCanvasElement} mask - **/ - function AlphaMaskFilter(mask) { - - - // public properties: - /** - * The image (or canvas) to use as the mask. - * @property mask - * @type HTMLImageElement|HTMLCanvasElement - **/ - this.mask = mask; - } - var p = createjs.extend(AlphaMaskFilter, createjs.Filter); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// public methods: - /** - * Applies the filter to the specified context. - * - * IMPORTANT NOTE: This filter currently does not support the targetCtx, or targetX/Y parameters - * correctly. - * @method applyFilter - * @param {CanvasRenderingContext2D} ctx The 2D context to use as the source. - * @param {Number} x The x position to use for the source rect. - * @param {Number} y The y position to use for the source rect. - * @param {Number} width The width to use for the source rect. - * @param {Number} height The height to use for the source rect. - * @param {CanvasRenderingContext2D} [targetCtx] NOT SUPPORTED IN THIS FILTER. The 2D context to draw the result to. Defaults to the context passed to ctx. - * @param {Number} [targetX] NOT SUPPORTED IN THIS FILTER. The x position to draw the result to. Defaults to the value passed to x. - * @param {Number} [targetY] NOT SUPPORTED IN THIS FILTER. The y position to draw the result to. Defaults to the value passed to y. - * @return {Boolean} If the filter was applied successfully. - **/ - p.applyFilter = function (ctx, x, y, width, height, targetCtx, targetX, targetY) { - if (!this.mask) { return true; } - targetCtx = targetCtx || ctx; - if (targetX == null) { targetX = x; } - if (targetY == null) { targetY = y; } - - targetCtx.save(); - if (ctx != targetCtx) { - // TODO: support targetCtx and targetX/Y - // clearRect, then draw the ctx in? - return false; - } - - targetCtx.globalCompositeOperation = "destination-in"; - targetCtx.drawImage(this.mask, targetX, targetY); - targetCtx.restore(); - return true; - }; - - /** docced in super class **/ - p.clone = function () { - return new AlphaMaskFilter(this.mask); - }; - - /** docced in super class **/ - p.toString = function () { - return "[AlphaMaskFilter]"; - }; - - - createjs.AlphaMaskFilter = createjs.promote(AlphaMaskFilter, "Filter"); +this.createjs = this.createjs || {}; + +(function () { + "use strict"; + + +// constructor: + /** + * Applies the alpha from the mask image (or canvas) to the target, such that the alpha channel of the result will + * be derived from the mask, and the RGB channels will be copied from the target. This can be used, for example, to + * apply an alpha mask to a display object. This can also be used to combine a JPG compressed RGB image with a PNG32 + * alpha mask, which can result in a much smaller file size than a single PNG32 containing ARGB. + * + * IMPORTANT NOTE: This filter currently does not support the targetCtx, or targetX/Y parameters correctly. + * + *

        Example

        + * This example draws a gradient box, then caches it and uses the "cacheCanvas" as the alpha mask on a 100x100 image. + * + * var box = new createjs.Shape(); + * box.graphics.beginLinearGradientFill(["#000000", "rgba(0, 0, 0, 0)"], [0, 1], 0, 0, 100, 100) + * box.graphics.drawRect(0, 0, 100, 100); + * box.cache(0, 0, 100, 100); + * + * var bmp = new createjs.Bitmap("path/to/image.jpg"); + * bmp.filters = [ + * new createjs.AlphaMaskFilter(box.cacheCanvas) + * ]; + * bmp.cache(0, 0, 100, 100); + * + * See {{#crossLink "Filter"}}{{/crossLink}} for more information on applying filters. + * @class AlphaMaskFilter + * @extends Filter + * @constructor + * @param {HTMLImageElement|HTMLCanvasElement} mask + **/ + function AlphaMaskFilter(mask) { + + + // public properties: + /** + * The image (or canvas) to use as the mask. + * @property mask + * @type HTMLImageElement|HTMLCanvasElement + **/ + this.mask = mask; + } + var p = createjs.extend(AlphaMaskFilter, createjs.Filter); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// public methods: + /** + * Applies the filter to the specified context. + * + * IMPORTANT NOTE: This filter currently does not support the targetCtx, or targetX/Y parameters + * correctly. + * @method applyFilter + * @param {CanvasRenderingContext2D} ctx The 2D context to use as the source. + * @param {Number} x The x position to use for the source rect. + * @param {Number} y The y position to use for the source rect. + * @param {Number} width The width to use for the source rect. + * @param {Number} height The height to use for the source rect. + * @param {CanvasRenderingContext2D} [targetCtx] NOT SUPPORTED IN THIS FILTER. The 2D context to draw the result to. Defaults to the context passed to ctx. + * @param {Number} [targetX] NOT SUPPORTED IN THIS FILTER. The x position to draw the result to. Defaults to the value passed to x. + * @param {Number} [targetY] NOT SUPPORTED IN THIS FILTER. The y position to draw the result to. Defaults to the value passed to y. + * @return {Boolean} If the filter was applied successfully. + **/ + p.applyFilter = function (ctx, x, y, width, height, targetCtx, targetX, targetY) { + if (!this.mask) { return true; } + targetCtx = targetCtx || ctx; + if (targetX == null) { targetX = x; } + if (targetY == null) { targetY = y; } + + targetCtx.save(); + if (ctx != targetCtx) { + // TODO: support targetCtx and targetX/Y + // clearRect, then draw the ctx in? + return false; + } + + targetCtx.globalCompositeOperation = "destination-in"; + targetCtx.drawImage(this.mask, targetX, targetY); + targetCtx.restore(); + return true; + }; + + /** docced in super class **/ + p.clone = function () { + return new AlphaMaskFilter(this.mask); + }; + + /** docced in super class **/ + p.toString = function () { + return "[AlphaMaskFilter]"; + }; + + + createjs.AlphaMaskFilter = createjs.promote(AlphaMaskFilter, "Filter"); }()); //############################################################################## // ColorFilter.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Applies a color transform to DisplayObjects. - * - *

        Example

        - * This example draws a red circle, and then transforms it to Blue. This is accomplished by multiplying all the channels - * to 0 (except alpha, which is set to 1), and then adding 255 to the blue channel. - * - * var shape = new createjs.Shape().set({x:100,y:100}); - * shape.graphics.beginFill("#ff0000").drawCircle(0,0,50); - * - * shape.filters = [ - * new createjs.ColorFilter(0,0,0,1, 0,0,255,0) - * ]; - * shape.cache(-50, -50, 100, 100); - * - * See {{#crossLink "Filter"}}{{/crossLink}} for an more information on applying filters. - * @class ColorFilter - * @param {Number} [redMultiplier=1] The amount to multiply against the red channel. This is a range between 0 and 1. - * @param {Number} [greenMultiplier=1] The amount to multiply against the green channel. This is a range between 0 and 1. - * @param {Number} [blueMultiplier=1] The amount to multiply against the blue channel. This is a range between 0 and 1. - * @param {Number} [alphaMultiplier=1] The amount to multiply against the alpha channel. This is a range between 0 and 1. - * @param {Number} [redOffset=0] The amount to add to the red channel after it has been multiplied. This is a range - * between -255 and 255. - * @param {Number} [greenOffset=0] The amount to add to the green channel after it has been multiplied. This is a range - * between -255 and 255. - * @param {Number} [blueOffset=0] The amount to add to the blue channel after it has been multiplied. This is a range - * between -255 and 255. - * @param {Number} [alphaOffset=0] The amount to add to the alpha channel after it has been multiplied. This is a range - * between -255 and 255. - * @constructor - * @extends Filter - **/ - function ColorFilter(redMultiplier, greenMultiplier, blueMultiplier, alphaMultiplier, redOffset, greenOffset, blueOffset, alphaOffset) { - - - // public properties: - /** - * Red channel multiplier. - * @property redMultiplier - * @type Number - **/ - this.redMultiplier = redMultiplier != null ? redMultiplier : 1; - - /** - * Green channel multiplier. - * @property greenMultiplier - * @type Number - **/ - this.greenMultiplier = greenMultiplier != null ? greenMultiplier : 1; - - /** - * Blue channel multiplier. - * @property blueMultiplier - * @type Number - **/ - this.blueMultiplier = blueMultiplier != null ? blueMultiplier : 1; - - /** - * Alpha channel multiplier. - * @property alphaMultiplier - * @type Number - **/ - this.alphaMultiplier = alphaMultiplier != null ? alphaMultiplier : 1; - - /** - * Red channel offset (added to value). - * @property redOffset - * @type Number - **/ - this.redOffset = redOffset || 0; - - /** - * Green channel offset (added to value). - * @property greenOffset - * @type Number - **/ - this.greenOffset = greenOffset || 0; - - /** - * Blue channel offset (added to value). - * @property blueOffset - * @type Number - **/ - this.blueOffset = blueOffset || 0; - - /** - * Alpha channel offset (added to value). - * @property alphaOffset - * @type Number - **/ - this.alphaOffset = alphaOffset || 0; - } - var p = createjs.extend(ColorFilter, createjs.Filter); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// public methods: - /** docced in super class **/ - p.toString = function() { - return "[ColorFilter]"; - }; - - /** docced in super class **/ - p.clone = function() { - return new ColorFilter(this.redMultiplier, this.greenMultiplier, this.blueMultiplier, this.alphaMultiplier, this.redOffset, this.greenOffset, this.blueOffset, this.alphaOffset); - }; - - -// private methods: - /** docced in super class **/ - p._applyFilter = function(imageData) { - var data = imageData.data; - var l = data.length; - for (var i=0; iExample + * This example draws a red circle, and then transforms it to Blue. This is accomplished by multiplying all the channels + * to 0 (except alpha, which is set to 1), and then adding 255 to the blue channel. + * + * var shape = new createjs.Shape().set({x:100,y:100}); + * shape.graphics.beginFill("#ff0000").drawCircle(0,0,50); + * + * shape.filters = [ + * new createjs.ColorFilter(0,0,0,1, 0,0,255,0) + * ]; + * shape.cache(-50, -50, 100, 100); + * + * See {{#crossLink "Filter"}}{{/crossLink}} for an more information on applying filters. + * @class ColorFilter + * @param {Number} [redMultiplier=1] The amount to multiply against the red channel. This is a range between 0 and 1. + * @param {Number} [greenMultiplier=1] The amount to multiply against the green channel. This is a range between 0 and 1. + * @param {Number} [blueMultiplier=1] The amount to multiply against the blue channel. This is a range between 0 and 1. + * @param {Number} [alphaMultiplier=1] The amount to multiply against the alpha channel. This is a range between 0 and 1. + * @param {Number} [redOffset=0] The amount to add to the red channel after it has been multiplied. This is a range + * between -255 and 255. + * @param {Number} [greenOffset=0] The amount to add to the green channel after it has been multiplied. This is a range + * between -255 and 255. + * @param {Number} [blueOffset=0] The amount to add to the blue channel after it has been multiplied. This is a range + * between -255 and 255. + * @param {Number} [alphaOffset=0] The amount to add to the alpha channel after it has been multiplied. This is a range + * between -255 and 255. + * @constructor + * @extends Filter + **/ + function ColorFilter(redMultiplier, greenMultiplier, blueMultiplier, alphaMultiplier, redOffset, greenOffset, blueOffset, alphaOffset) { + + + // public properties: + /** + * Red channel multiplier. + * @property redMultiplier + * @type Number + **/ + this.redMultiplier = redMultiplier != null ? redMultiplier : 1; + + /** + * Green channel multiplier. + * @property greenMultiplier + * @type Number + **/ + this.greenMultiplier = greenMultiplier != null ? greenMultiplier : 1; + + /** + * Blue channel multiplier. + * @property blueMultiplier + * @type Number + **/ + this.blueMultiplier = blueMultiplier != null ? blueMultiplier : 1; + + /** + * Alpha channel multiplier. + * @property alphaMultiplier + * @type Number + **/ + this.alphaMultiplier = alphaMultiplier != null ? alphaMultiplier : 1; + + /** + * Red channel offset (added to value). + * @property redOffset + * @type Number + **/ + this.redOffset = redOffset || 0; + + /** + * Green channel offset (added to value). + * @property greenOffset + * @type Number + **/ + this.greenOffset = greenOffset || 0; + + /** + * Blue channel offset (added to value). + * @property blueOffset + * @type Number + **/ + this.blueOffset = blueOffset || 0; + + /** + * Alpha channel offset (added to value). + * @property alphaOffset + * @type Number + **/ + this.alphaOffset = alphaOffset || 0; + } + var p = createjs.extend(ColorFilter, createjs.Filter); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// public methods: + /** docced in super class **/ + p.toString = function() { + return "[ColorFilter]"; + }; + + /** docced in super class **/ + p.clone = function() { + return new ColorFilter(this.redMultiplier, this.greenMultiplier, this.blueMultiplier, this.alphaMultiplier, this.redOffset, this.greenOffset, this.blueOffset, this.alphaOffset); + }; + + +// private methods: + /** docced in super class **/ + p._applyFilter = function(imageData) { + var data = imageData.data; + var l = data.length; + for (var i=0; iExample - * - * myColorMatrix.adjustHue(20).adjustBrightness(50); - * - * See {{#crossLink "Filter"}}{{/crossLink}} for an example of how to apply filters, or {{#crossLink "ColorMatrixFilter"}}{{/crossLink}} - * for an example of how to use ColorMatrix to change a DisplayObject's color. - * @class ColorMatrix - * @param {Number} brightness - * @param {Number} contrast - * @param {Number} saturation - * @param {Number} hue - * @constructor - **/ - function ColorMatrix(brightness, contrast, saturation, hue) { - this.setColor(brightness, contrast, saturation, hue); - } - var p = ColorMatrix.prototype; - - /** - * REMOVED. Removed in favor of using `MySuperClass_constructor`. - * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} - * for details. - * - * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. - * - * @method initialize - * @protected - * @deprecated - */ - // p.initialize = function() {}; // searchable for devs wondering where it is. - - -// constants: - /** - * Array of delta values for contrast calculations. - * @property DELTA_INDEX - * @type Array - * @protected - * @static - **/ - ColorMatrix.DELTA_INDEX = [ - 0, 0.01, 0.02, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.11, - 0.12, 0.14, 0.15, 0.16, 0.17, 0.18, 0.20, 0.21, 0.22, 0.24, - 0.25, 0.27, 0.28, 0.30, 0.32, 0.34, 0.36, 0.38, 0.40, 0.42, - 0.44, 0.46, 0.48, 0.5, 0.53, 0.56, 0.59, 0.62, 0.65, 0.68, - 0.71, 0.74, 0.77, 0.80, 0.83, 0.86, 0.89, 0.92, 0.95, 0.98, - 1.0, 1.06, 1.12, 1.18, 1.24, 1.30, 1.36, 1.42, 1.48, 1.54, - 1.60, 1.66, 1.72, 1.78, 1.84, 1.90, 1.96, 2.0, 2.12, 2.25, - 2.37, 2.50, 2.62, 2.75, 2.87, 3.0, 3.2, 3.4, 3.6, 3.8, - 4.0, 4.3, 4.7, 4.9, 5.0, 5.5, 6.0, 6.5, 6.8, 7.0, - 7.3, 7.5, 7.8, 8.0, 8.4, 8.7, 9.0, 9.4, 9.6, 9.8, - 10.0 - ]; - - /** - * Identity matrix values. - * @property IDENTITY_MATRIX - * @type Array - * @protected - * @static - **/ - ColorMatrix.IDENTITY_MATRIX = [ - 1,0,0,0,0, - 0,1,0,0,0, - 0,0,1,0,0, - 0,0,0,1,0, - 0,0,0,0,1 - ]; - - /** - * The constant length of a color matrix. - * @property LENGTH - * @type Number - * @protected - * @static - **/ - ColorMatrix.LENGTH = ColorMatrix.IDENTITY_MATRIX.length; - - -// public methods: - /** - * Resets the instance with the specified values. - * @method setColor - * @param {Number} brightness - * @param {Number} contrast - * @param {Number} saturation - * @param {Number} hue - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - */ - p.setColor = function(brightness,contrast,saturation,hue) { - return this.reset().adjustColor(brightness,contrast,saturation,hue); - }; - - /** - * Resets the matrix to identity values. - * @method reset - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - */ - p.reset = function() { - return this.copy(ColorMatrix.IDENTITY_MATRIX); - }; - - /** - * Shortcut method to adjust brightness, contrast, saturation and hue. - * Equivalent to calling adjustHue(hue), adjustContrast(contrast), - * adjustBrightness(brightness), adjustSaturation(saturation), in that order. - * @method adjustColor - * @param {Number} brightness - * @param {Number} contrast - * @param {Number} saturation - * @param {Number} hue - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.adjustColor = function(brightness,contrast,saturation,hue) { - this.adjustHue(hue); - this.adjustContrast(contrast); - this.adjustBrightness(brightness); - return this.adjustSaturation(saturation); - }; - - /** - * Adjusts the brightness of pixel color by adding the specified value to the red, green and blue channels. - * Positive values will make the image brighter, negative values will make it darker. - * @method adjustBrightness - * @param {Number} value A value between -255 & 255 that will be added to the RGB channels. - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.adjustBrightness = function(value) { - if (value == 0 || isNaN(value)) { return this; } - value = this._cleanValue(value,255); - this._multiplyMatrix([ - 1,0,0,0,value, - 0,1,0,0,value, - 0,0,1,0,value, - 0,0,0,1,0, - 0,0,0,0,1 - ]); - return this; - }; - - /** - * Adjusts the contrast of pixel color. - * Positive values will increase contrast, negative values will decrease contrast. - * @method adjustContrast - * @param {Number} value A value between -100 & 100. - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.adjustContrast = function(value) { - if (value == 0 || isNaN(value)) { return this; } - value = this._cleanValue(value,100); - var x; - if (value<0) { - x = 127+value/100*127; - } else { - x = value%1; - if (x == 0) { - x = ColorMatrix.DELTA_INDEX[value]; - } else { - x = ColorMatrix.DELTA_INDEX[(value<<0)]*(1-x)+ColorMatrix.DELTA_INDEX[(value<<0)+1]*x; // use linear interpolation for more granularity. - } - x = x*127+127; - } - this._multiplyMatrix([ - x/127,0,0,0,0.5*(127-x), - 0,x/127,0,0,0.5*(127-x), - 0,0,x/127,0,0.5*(127-x), - 0,0,0,1,0, - 0,0,0,0,1 - ]); - return this; - }; - - /** - * Adjusts the color saturation of the pixel. - * Positive values will increase saturation, negative values will decrease saturation (trend towards greyscale). - * @method adjustSaturation - * @param {Number} value A value between -100 & 100. - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.adjustSaturation = function(value) { - if (value == 0 || isNaN(value)) { return this; } - value = this._cleanValue(value,100); - var x = 1+((value > 0) ? 3*value/100 : value/100); - var lumR = 0.3086; - var lumG = 0.6094; - var lumB = 0.0820; - this._multiplyMatrix([ - lumR*(1-x)+x,lumG*(1-x),lumB*(1-x),0,0, - lumR*(1-x),lumG*(1-x)+x,lumB*(1-x),0,0, - lumR*(1-x),lumG*(1-x),lumB*(1-x)+x,0,0, - 0,0,0,1,0, - 0,0,0,0,1 - ]); - return this; - }; - - - /** - * Adjusts the hue of the pixel color. - * @method adjustHue - * @param {Number} value A value between -180 & 180. - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.adjustHue = function(value) { - if (value == 0 || isNaN(value)) { return this; } - value = this._cleanValue(value,180)/180*Math.PI; - var cosVal = Math.cos(value); - var sinVal = Math.sin(value); - var lumR = 0.213; - var lumG = 0.715; - var lumB = 0.072; - this._multiplyMatrix([ - lumR+cosVal*(1-lumR)+sinVal*(-lumR),lumG+cosVal*(-lumG)+sinVal*(-lumG),lumB+cosVal*(-lumB)+sinVal*(1-lumB),0,0, - lumR+cosVal*(-lumR)+sinVal*(0.143),lumG+cosVal*(1-lumG)+sinVal*(0.140),lumB+cosVal*(-lumB)+sinVal*(-0.283),0,0, - lumR+cosVal*(-lumR)+sinVal*(-(1-lumR)),lumG+cosVal*(-lumG)+sinVal*(lumG),lumB+cosVal*(1-lumB)+sinVal*(lumB),0,0, - 0,0,0,1,0, - 0,0,0,0,1 - ]); - return this; - }; - - /** - * Concatenates (multiplies) the specified matrix with this one. - * @method concat - * @param {Array} matrix An array or ColorMatrix instance. - * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) - * @chainable - **/ - p.concat = function(matrix) { - matrix = this._fixMatrix(matrix); - if (matrix.length != ColorMatrix.LENGTH) { return this; } - this._multiplyMatrix(matrix); - return this; - }; - - /** - * Returns a clone of this ColorMatrix. - * @method clone - * @return {ColorMatrix} A clone of this ColorMatrix. - **/ - p.clone = function() { - return (new ColorMatrix()).copy(this); - }; - - /** - * Return a length 25 (5x5) array instance containing this matrix's values. - * @method toArray - * @return {Array} An array holding this matrix's values. - **/ - p.toArray = function() { - var arr = []; - for (var i= 0, l=ColorMatrix.LENGTH; i ColorMatrix.LENGTH) { - matrix = matrix.slice(0,ColorMatrix.LENGTH); - } - return matrix; - }; - - - createjs.ColorMatrix = ColorMatrix; +this.createjs = this.createjs||{}; + +(function() { + "use strict"; + + +// constructor: + /** + * Provides helper functions for assembling a matrix for use with the {{#crossLink "ColorMatrixFilter"}}{{/crossLink}}. + * Most methods return the instance to facilitate chained calls. + * + *

        Example

        + * + * myColorMatrix.adjustHue(20).adjustBrightness(50); + * + * See {{#crossLink "Filter"}}{{/crossLink}} for an example of how to apply filters, or {{#crossLink "ColorMatrixFilter"}}{{/crossLink}} + * for an example of how to use ColorMatrix to change a DisplayObject's color. + * @class ColorMatrix + * @param {Number} brightness + * @param {Number} contrast + * @param {Number} saturation + * @param {Number} hue + * @constructor + **/ + function ColorMatrix(brightness, contrast, saturation, hue) { + this.setColor(brightness, contrast, saturation, hue); + } + var p = ColorMatrix.prototype; + + /** + * REMOVED. Removed in favor of using `MySuperClass_constructor`. + * See {{#crossLink "Utility Methods/extend"}}{{/crossLink}} and {{#crossLink "Utility Methods/promote"}}{{/crossLink}} + * for details. + * + * There is an inheritance tutorial distributed with EaselJS in /tutorials/Inheritance. + * + * @method initialize + * @protected + * @deprecated + */ + // p.initialize = function() {}; // searchable for devs wondering where it is. + + +// constants: + /** + * Array of delta values for contrast calculations. + * @property DELTA_INDEX + * @type Array + * @protected + * @static + **/ + ColorMatrix.DELTA_INDEX = [ + 0, 0.01, 0.02, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.11, + 0.12, 0.14, 0.15, 0.16, 0.17, 0.18, 0.20, 0.21, 0.22, 0.24, + 0.25, 0.27, 0.28, 0.30, 0.32, 0.34, 0.36, 0.38, 0.40, 0.42, + 0.44, 0.46, 0.48, 0.5, 0.53, 0.56, 0.59, 0.62, 0.65, 0.68, + 0.71, 0.74, 0.77, 0.80, 0.83, 0.86, 0.89, 0.92, 0.95, 0.98, + 1.0, 1.06, 1.12, 1.18, 1.24, 1.30, 1.36, 1.42, 1.48, 1.54, + 1.60, 1.66, 1.72, 1.78, 1.84, 1.90, 1.96, 2.0, 2.12, 2.25, + 2.37, 2.50, 2.62, 2.75, 2.87, 3.0, 3.2, 3.4, 3.6, 3.8, + 4.0, 4.3, 4.7, 4.9, 5.0, 5.5, 6.0, 6.5, 6.8, 7.0, + 7.3, 7.5, 7.8, 8.0, 8.4, 8.7, 9.0, 9.4, 9.6, 9.8, + 10.0 + ]; + + /** + * Identity matrix values. + * @property IDENTITY_MATRIX + * @type Array + * @protected + * @static + **/ + ColorMatrix.IDENTITY_MATRIX = [ + 1,0,0,0,0, + 0,1,0,0,0, + 0,0,1,0,0, + 0,0,0,1,0, + 0,0,0,0,1 + ]; + + /** + * The constant length of a color matrix. + * @property LENGTH + * @type Number + * @protected + * @static + **/ + ColorMatrix.LENGTH = ColorMatrix.IDENTITY_MATRIX.length; + + +// public methods: + /** + * Resets the instance with the specified values. + * @method setColor + * @param {Number} brightness + * @param {Number} contrast + * @param {Number} saturation + * @param {Number} hue + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + */ + p.setColor = function(brightness,contrast,saturation,hue) { + return this.reset().adjustColor(brightness,contrast,saturation,hue); + }; + + /** + * Resets the matrix to identity values. + * @method reset + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + */ + p.reset = function() { + return this.copy(ColorMatrix.IDENTITY_MATRIX); + }; + + /** + * Shortcut method to adjust brightness, contrast, saturation and hue. + * Equivalent to calling adjustHue(hue), adjustContrast(contrast), + * adjustBrightness(brightness), adjustSaturation(saturation), in that order. + * @method adjustColor + * @param {Number} brightness + * @param {Number} contrast + * @param {Number} saturation + * @param {Number} hue + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.adjustColor = function(brightness,contrast,saturation,hue) { + this.adjustHue(hue); + this.adjustContrast(contrast); + this.adjustBrightness(brightness); + return this.adjustSaturation(saturation); + }; + + /** + * Adjusts the brightness of pixel color by adding the specified value to the red, green and blue channels. + * Positive values will make the image brighter, negative values will make it darker. + * @method adjustBrightness + * @param {Number} value A value between -255 & 255 that will be added to the RGB channels. + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.adjustBrightness = function(value) { + if (value == 0 || isNaN(value)) { return this; } + value = this._cleanValue(value,255); + this._multiplyMatrix([ + 1,0,0,0,value, + 0,1,0,0,value, + 0,0,1,0,value, + 0,0,0,1,0, + 0,0,0,0,1 + ]); + return this; + }; + + /** + * Adjusts the contrast of pixel color. + * Positive values will increase contrast, negative values will decrease contrast. + * @method adjustContrast + * @param {Number} value A value between -100 & 100. + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.adjustContrast = function(value) { + if (value == 0 || isNaN(value)) { return this; } + value = this._cleanValue(value,100); + var x; + if (value<0) { + x = 127+value/100*127; + } else { + x = value%1; + if (x == 0) { + x = ColorMatrix.DELTA_INDEX[value]; + } else { + x = ColorMatrix.DELTA_INDEX[(value<<0)]*(1-x)+ColorMatrix.DELTA_INDEX[(value<<0)+1]*x; // use linear interpolation for more granularity. + } + x = x*127+127; + } + this._multiplyMatrix([ + x/127,0,0,0,0.5*(127-x), + 0,x/127,0,0,0.5*(127-x), + 0,0,x/127,0,0.5*(127-x), + 0,0,0,1,0, + 0,0,0,0,1 + ]); + return this; + }; + + /** + * Adjusts the color saturation of the pixel. + * Positive values will increase saturation, negative values will decrease saturation (trend towards greyscale). + * @method adjustSaturation + * @param {Number} value A value between -100 & 100. + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.adjustSaturation = function(value) { + if (value == 0 || isNaN(value)) { return this; } + value = this._cleanValue(value,100); + var x = 1+((value > 0) ? 3*value/100 : value/100); + var lumR = 0.3086; + var lumG = 0.6094; + var lumB = 0.0820; + this._multiplyMatrix([ + lumR*(1-x)+x,lumG*(1-x),lumB*(1-x),0,0, + lumR*(1-x),lumG*(1-x)+x,lumB*(1-x),0,0, + lumR*(1-x),lumG*(1-x),lumB*(1-x)+x,0,0, + 0,0,0,1,0, + 0,0,0,0,1 + ]); + return this; + }; + + + /** + * Adjusts the hue of the pixel color. + * @method adjustHue + * @param {Number} value A value between -180 & 180. + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.adjustHue = function(value) { + if (value == 0 || isNaN(value)) { return this; } + value = this._cleanValue(value,180)/180*Math.PI; + var cosVal = Math.cos(value); + var sinVal = Math.sin(value); + var lumR = 0.213; + var lumG = 0.715; + var lumB = 0.072; + this._multiplyMatrix([ + lumR+cosVal*(1-lumR)+sinVal*(-lumR),lumG+cosVal*(-lumG)+sinVal*(-lumG),lumB+cosVal*(-lumB)+sinVal*(1-lumB),0,0, + lumR+cosVal*(-lumR)+sinVal*(0.143),lumG+cosVal*(1-lumG)+sinVal*(0.140),lumB+cosVal*(-lumB)+sinVal*(-0.283),0,0, + lumR+cosVal*(-lumR)+sinVal*(-(1-lumR)),lumG+cosVal*(-lumG)+sinVal*(lumG),lumB+cosVal*(1-lumB)+sinVal*(lumB),0,0, + 0,0,0,1,0, + 0,0,0,0,1 + ]); + return this; + }; + + /** + * Concatenates (multiplies) the specified matrix with this one. + * @method concat + * @param {Array} matrix An array or ColorMatrix instance. + * @return {ColorMatrix} The ColorMatrix instance the method is called on (useful for chaining calls.) + * @chainable + **/ + p.concat = function(matrix) { + matrix = this._fixMatrix(matrix); + if (matrix.length != ColorMatrix.LENGTH) { return this; } + this._multiplyMatrix(matrix); + return this; + }; + + /** + * Returns a clone of this ColorMatrix. + * @method clone + * @return {ColorMatrix} A clone of this ColorMatrix. + **/ + p.clone = function() { + return (new ColorMatrix()).copy(this); + }; + + /** + * Return a length 25 (5x5) array instance containing this matrix's values. + * @method toArray + * @return {Array} An array holding this matrix's values. + **/ + p.toArray = function() { + var arr = []; + for (var i= 0, l=ColorMatrix.LENGTH; i ColorMatrix.LENGTH) { + matrix = matrix.slice(0,ColorMatrix.LENGTH); + } + return matrix; + }; + + + createjs.ColorMatrix = ColorMatrix; }()); //############################################################################## // ColorMatrixFilter.js //############################################################################## -this.createjs = this.createjs||{}; - -(function() { - "use strict"; - - -// constructor: - /** - * Allows you to carry out complex color operations such as modifying saturation, brightness, or inverting. See the - * {{#crossLink "ColorMatrix"}}{{/crossLink}} for more information on changing colors. For an easier color transform, - * consider the {{#crossLink "ColorFilter"}}{{/crossLink}}. - * - *

        Example

        - * This example creates a red circle, inverts its hue, and then saturates it to brighten it up. - * - * var shape = new createjs.Shape().set({x:100,y:100}); - * shape.graphics.beginFill("#ff0000").drawCircle(0,0,50); - * - * var matrix = new createjs.ColorMatrix().adjustHue(180).adjustSaturation(100); - * shape.filters = [ - * new createjs.ColorMatrixFilter(matrix) - * ]; - * - * shape.cache(-50, -50, 100, 100); - * - * See {{#crossLink "Filter"}}{{/crossLink}} for an more information on applying filters. - * @class ColorMatrixFilter - * @constructor - * @extends Filter - * @param {Array | ColorMatrix} matrix A 4x5 matrix describing the color operation to perform. See also the {{#crossLink "ColorMatrix"}}{{/crossLink}} - * class. - **/ - function ColorMatrixFilter(matrix) { - - - // public properties: - /** - * A 4x5 matrix describing the color operation to perform. See also the {{#crossLink "ColorMatrix"}}{{/crossLink}} - * @property matrix - * @type Array | ColorMatrix - **/ - this.matrix = matrix; - } - var p = createjs.extend(ColorMatrixFilter, createjs.Filter); - - // TODO: deprecated - // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. - - -// public methods: - /** docced in super class **/ - p.toString = function() { - return "[ColorMatrixFilter]"; - }; - - /** docced in super class **/ - p.clone = function() { - return new ColorMatrixFilter(this.matrix); - }; - -// private methods: - /** docced in super class **/ - p._applyFilter = function(imageData) { - var data = imageData.data; - var l = data.length; - var r,g,b,a; - var mtx = this.matrix; - var m0 = mtx[0], m1 = mtx[1], m2 = mtx[2], m3 = mtx[3], m4 = mtx[4]; - var m5 = mtx[5], m6 = mtx[6], m7 = mtx[7], m8 = mtx[8], m9 = mtx[9]; - var m10 = mtx[10], m11 = mtx[11], m12 = mtx[12], m13 = mtx[13], m14 = mtx[14]; - var m15 = mtx[15], m16 = mtx[16], m17 = mtx[17], m18 = mtx[18], m19 = mtx[19]; - - for (var i=0; iExample + * This example creates a red circle, inverts its hue, and then saturates it to brighten it up. + * + * var shape = new createjs.Shape().set({x:100,y:100}); + * shape.graphics.beginFill("#ff0000").drawCircle(0,0,50); + * + * var matrix = new createjs.ColorMatrix().adjustHue(180).adjustSaturation(100); + * shape.filters = [ + * new createjs.ColorMatrixFilter(matrix) + * ]; + * + * shape.cache(-50, -50, 100, 100); + * + * See {{#crossLink "Filter"}}{{/crossLink}} for an more information on applying filters. + * @class ColorMatrixFilter + * @constructor + * @extends Filter + * @param {Array | ColorMatrix} matrix A 4x5 matrix describing the color operation to perform. See also the {{#crossLink "ColorMatrix"}}{{/crossLink}} + * class. + **/ + function ColorMatrixFilter(matrix) { + + + // public properties: + /** + * A 4x5 matrix describing the color operation to perform. See also the {{#crossLink "ColorMatrix"}}{{/crossLink}} + * @property matrix + * @type Array | ColorMatrix + **/ + this.matrix = matrix; + } + var p = createjs.extend(ColorMatrixFilter, createjs.Filter); + + // TODO: deprecated + // p.initialize = function() {}; // searchable for devs wondering where it is. REMOVED. See docs for details. + + +// public methods: + /** docced in super class **/ + p.toString = function() { + return "[ColorMatrixFilter]"; + }; + + /** docced in super class **/ + p.clone = function() { + return new ColorMatrixFilter(this.matrix); + }; + +// private methods: + /** docced in super class **/ + p._applyFilter = function(imageData) { + var data = imageData.data; + var l = data.length; + var r,g,b,a; + var mtx = this.matrix; + var m0 = mtx[0], m1 = mtx[1], m2 = mtx[2], m3 = mtx[3], m4 = mtx[4]; + var m5 = mtx[5], m6 = mtx[6], m7 = mtx[7], m8 = mtx[8], m9 = mtx[9]; + var m10 = mtx[10], m11 = mtx[11], m12 = mtx[12], m13 = mtx[13], m14 = mtx[14]; + var m15 = mtx[15], m16 = mtx[16], m17 = mtx[17], m18 = mtx[18], m19 = mtx[19]; + + for (var i=0; iExample - * - * var stage = new createjs.Stage("canvasId"); - * createjs.Touch.enable(stage); - * - * Note: It is important to disable Touch on a stage that you are no longer using: - * - * createjs.Touch.disable(stage); - * - * @class Touch - * @static - **/ - function Touch() { - throw "Touch cannot be instantiated"; - } - - -// public static methods: - /** - * Returns `true` if touch is supported in the current browser. - * @method isSupported - * @return {Boolean} Indicates whether touch is supported in the current browser. - * @static - **/ - Touch.isSupported = function() { - return !!(('ontouchstart' in window) // iOS & Android - || (window.navigator['msPointerEnabled'] && window.navigator['msMaxTouchPoints'] > 0) // IE10 - || (window.navigator['pointerEnabled'] && window.navigator['maxTouchPoints'] > 0)); // IE11+ - }; - - /** - * Enables touch interaction for the specified EaselJS {{#crossLink "Stage"}}{{/crossLink}}. Currently supports iOS - * (and compatible browsers, such as modern Android browsers), and IE10/11. Supports both single touch and - * multi-touch modes. Extends the EaselJS {{#crossLink "MouseEvent"}}{{/crossLink}} model, but without support for - * double click or over/out events. See the MouseEvent {{#crossLink "MouseEvent/pointerId:property"}}{{/crossLink}} - * for more information. - * @method enable - * @param {Stage} stage The {{#crossLink "Stage"}}{{/crossLink}} to enable touch on. - * @param {Boolean} [singleTouch=false] If `true`, only a single touch will be active at a time. - * @param {Boolean} [allowDefault=false] If `true`, then default gesture actions (ex. scrolling, zooming) will be - * allowed when the user is interacting with the target canvas. - * @return {Boolean} Returns `true` if touch was successfully enabled on the target stage. - * @static - **/ - Touch.enable = function(stage, singleTouch, allowDefault) { - if (!stage || !stage.canvas || !Touch.isSupported()) { return false; } - if (stage.__touch) { return true; } - - // inject required properties on stage: - stage.__touch = {pointers:{}, multitouch:!singleTouch, preventDefault:!allowDefault, count:0}; - - // note that in the future we may need to disable the standard mouse event model before adding - // these to prevent duplicate calls. It doesn't seem to be an issue with iOS devices though. - if ('ontouchstart' in window) { Touch._IOS_enable(stage); } - else if (window.navigator['msPointerEnabled'] || window.navigator["pointerEnabled"]) { Touch._IE_enable(stage); } - return true; - }; - - /** - * Removes all listeners that were set up when calling `Touch.enable()` on a stage. - * @method disable - * @param {Stage} stage The {{#crossLink "Stage"}}{{/crossLink}} to disable touch on. - * @static - **/ - Touch.disable = function(stage) { - if (!stage) { return; } - if ('ontouchstart' in window) { Touch._IOS_disable(stage); } - else if (window.navigator['msPointerEnabled'] || window.navigator["pointerEnabled"]) { Touch._IE_disable(stage); } - - delete stage.__touch; - }; - - -// Private static methods: - /** - * @method _IOS_enable - * @protected - * @param {Stage} stage - * @static - **/ - Touch._IOS_enable = function(stage) { - var canvas = stage.canvas; - var f = stage.__touch.f = function(e) { Touch._IOS_handleEvent(stage,e); }; - canvas.addEventListener("touchstart", f, false); - canvas.addEventListener("touchmove", f, false); - canvas.addEventListener("touchend", f, false); - canvas.addEventListener("touchcancel", f, false); - }; - - /** - * @method _IOS_disable - * @protected - * @param {Stage} stage - * @static - **/ - Touch._IOS_disable = function(stage) { - var canvas = stage.canvas; - if (!canvas) { return; } - var f = stage.__touch.f; - canvas.removeEventListener("touchstart", f, false); - canvas.removeEventListener("touchmove", f, false); - canvas.removeEventListener("touchend", f, false); - canvas.removeEventListener("touchcancel", f, false); - }; - - /** - * @method _IOS_handleEvent - * @param {Stage} stage - * @param {Object} e The event to handle - * @protected - * @static - **/ - Touch._IOS_handleEvent = function(stage, e) { - if (!stage) { return; } - if (stage.__touch.preventDefault) { e.preventDefault&&e.preventDefault(); } - var touches = e.changedTouches; - var type = e.type; - for (var i= 0,l=touches.length; iExample + * + * var stage = new createjs.Stage("canvasId"); + * createjs.Touch.enable(stage); + * + * Note: It is important to disable Touch on a stage that you are no longer using: + * + * createjs.Touch.disable(stage); + * + * @class Touch + * @static + **/ + function Touch() { + throw "Touch cannot be instantiated"; + } + + +// public static methods: + /** + * Returns `true` if touch is supported in the current browser. + * @method isSupported + * @return {Boolean} Indicates whether touch is supported in the current browser. + * @static + **/ + Touch.isSupported = function() { + return !!(('ontouchstart' in window) // iOS & Android + || (window.navigator['msPointerEnabled'] && window.navigator['msMaxTouchPoints'] > 0) // IE10 + || (window.navigator['pointerEnabled'] && window.navigator['maxTouchPoints'] > 0)); // IE11+ + }; + + /** + * Enables touch interaction for the specified EaselJS {{#crossLink "Stage"}}{{/crossLink}}. Currently supports iOS + * (and compatible browsers, such as modern Android browsers), and IE10/11. Supports both single touch and + * multi-touch modes. Extends the EaselJS {{#crossLink "MouseEvent"}}{{/crossLink}} model, but without support for + * double click or over/out events. See the MouseEvent {{#crossLink "MouseEvent/pointerId:property"}}{{/crossLink}} + * for more information. + * @method enable + * @param {Stage} stage The {{#crossLink "Stage"}}{{/crossLink}} to enable touch on. + * @param {Boolean} [singleTouch=false] If `true`, only a single touch will be active at a time. + * @param {Boolean} [allowDefault=false] If `true`, then default gesture actions (ex. scrolling, zooming) will be + * allowed when the user is interacting with the target canvas. + * @return {Boolean} Returns `true` if touch was successfully enabled on the target stage. + * @static + **/ + Touch.enable = function(stage, singleTouch, allowDefault) { + if (!stage || !stage.canvas || !Touch.isSupported()) { return false; } + if (stage.__touch) { return true; } + + // inject required properties on stage: + stage.__touch = {pointers:{}, multitouch:!singleTouch, preventDefault:!allowDefault, count:0}; + + // note that in the future we may need to disable the standard mouse event model before adding + // these to prevent duplicate calls. It doesn't seem to be an issue with iOS devices though. + if ('ontouchstart' in window) { Touch._IOS_enable(stage); } + else if (window.navigator['msPointerEnabled'] || window.navigator["pointerEnabled"]) { Touch._IE_enable(stage); } + return true; + }; + + /** + * Removes all listeners that were set up when calling `Touch.enable()` on a stage. + * @method disable + * @param {Stage} stage The {{#crossLink "Stage"}}{{/crossLink}} to disable touch on. + * @static + **/ + Touch.disable = function(stage) { + if (!stage) { return; } + if ('ontouchstart' in window) { Touch._IOS_disable(stage); } + else if (window.navigator['msPointerEnabled'] || window.navigator["pointerEnabled"]) { Touch._IE_disable(stage); } + + delete stage.__touch; + }; + + +// Private static methods: + /** + * @method _IOS_enable + * @protected + * @param {Stage} stage + * @static + **/ + Touch._IOS_enable = function(stage) { + var canvas = stage.canvas; + var f = stage.__touch.f = function(e) { Touch._IOS_handleEvent(stage,e); }; + canvas.addEventListener("touchstart", f, false); + canvas.addEventListener("touchmove", f, false); + canvas.addEventListener("touchend", f, false); + canvas.addEventListener("touchcancel", f, false); + }; + + /** + * @method _IOS_disable + * @protected + * @param {Stage} stage + * @static + **/ + Touch._IOS_disable = function(stage) { + var canvas = stage.canvas; + if (!canvas) { return; } + var f = stage.__touch.f; + canvas.removeEventListener("touchstart", f, false); + canvas.removeEventListener("touchmove", f, false); + canvas.removeEventListener("touchend", f, false); + canvas.removeEventListener("touchcancel", f, false); + }; + + /** + * @method _IOS_handleEvent + * @param {Stage} stage + * @param {Object} e The event to handle + * @protected + * @static + **/ + Touch._IOS_handleEvent = function(stage, e) { + if (!stage) { return; } + if (stage.__touch.preventDefault) { e.preventDefault&&e.preventDefault(); } + var touches = e.changedTouches; + var type = e.type; + for (var i= 0,l=touches.length; ic;c++)if(b===a[c])return c;return-1},this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c){this.type=a,this.target=null,this.currentTarget=null,this.eventPhase=0,this.bubbles=!!b,this.cancelable=!!c,this.timeStamp=(new Date).getTime(),this.defaultPrevented=!1,this.propagationStopped=!1,this.immediatePropagationStopped=!1,this.removed=!1}var b=a.prototype;b.preventDefault=function(){this.defaultPrevented=this.cancelable&&!0},b.stopPropagation=function(){this.propagationStopped=!0},b.stopImmediatePropagation=function(){this.immediatePropagationStopped=this.propagationStopped=!0},b.remove=function(){this.removed=!0},b.clone=function(){return new a(this.type,this.bubbles,this.cancelable)},b.set=function(a){for(var b in a)this[b]=a[b];return this},b.toString=function(){return"[Event (type="+this.type+")]"},createjs.Event=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(){this._listeners=null,this._captureListeners=null}var b=a.prototype;a.initialize=function(a){a.addEventListener=b.addEventListener,a.on=b.on,a.removeEventListener=a.off=b.removeEventListener,a.removeAllEventListeners=b.removeAllEventListeners,a.hasEventListener=b.hasEventListener,a.dispatchEvent=b.dispatchEvent,a._dispatchEvent=b._dispatchEvent,a.willTrigger=b.willTrigger},b.addEventListener=function(a,b,c){var d;d=c?this._captureListeners=this._captureListeners||{}:this._listeners=this._listeners||{};var e=d[a];return e&&this.removeEventListener(a,b,c),e=d[a],e?e.push(b):d[a]=[b],b},b.on=function(a,b,c,d,e,f){return b.handleEvent&&(c=c||b,b=b.handleEvent),c=c||this,this.addEventListener(a,function(a){b.call(c,a,e),d&&a.remove()},f)},b.removeEventListener=function(a,b,c){var d=c?this._captureListeners:this._listeners;if(d){var e=d[a];if(e)for(var f=0,g=e.length;g>f;f++)if(e[f]==b){1==g?delete d[a]:e.splice(f,1);break}}},b.off=b.removeEventListener,b.removeAllEventListeners=function(a){a?(this._listeners&&delete this._listeners[a],this._captureListeners&&delete this._captureListeners[a]):this._listeners=this._captureListeners=null},b.dispatchEvent=function(a,b,c){if("string"==typeof a){var d=this._listeners;if(!(b||d&&d[a]))return!0;a=new createjs.Event(a,b,c)}else a.target&&a.clone&&(a=a.clone());try{a.target=this}catch(e){}if(a.bubbles&&this.parent){for(var f=this,g=[f];f.parent;)g.push(f=f.parent);var h,i=g.length;for(h=i-1;h>=0&&!a.propagationStopped;h--)g[h]._dispatchEvent(a,1+(0==h));for(h=1;i>h&&!a.propagationStopped;h++)g[h]._dispatchEvent(a,3)}else this._dispatchEvent(a,2);return!a.defaultPrevented},b.hasEventListener=function(a){var b=this._listeners,c=this._captureListeners;return!!(b&&b[a]||c&&c[a])},b.willTrigger=function(a){for(var b=this;b;){if(b.hasEventListener(a))return!0;b=b.parent}return!1},b.toString=function(){return"[EventDispatcher]"},b._dispatchEvent=function(a,b){var c,d=1==b?this._captureListeners:this._listeners;if(a&&d){var e=d[a.type];if(!e||!(c=e.length))return;try{a.currentTarget=this}catch(f){}try{a.eventPhase=b}catch(f){}a.removed=!1,e=e.slice();for(var g=0;c>g&&!a.immediatePropagationStopped;g++){var h=e[g];h.handleEvent?h.handleEvent(a):h(a),a.removed&&(this.off(a.type,h,1==b),a.removed=!1)}}},createjs.EventDispatcher=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(){throw"Ticker cannot be instantiated."}a.RAF_SYNCHED="synched",a.RAF="raf",a.TIMEOUT="timeout",a.useRAF=!1,a.timingMode=null,a.maxDelta=0,a.paused=!1,a.removeEventListener=null,a.removeAllEventListeners=null,a.dispatchEvent=null,a.hasEventListener=null,a._listeners=null,createjs.EventDispatcher.initialize(a),a._addEventListener=a.addEventListener,a.addEventListener=function(){return!a._inited&&a.init(),a._addEventListener.apply(a,arguments)},a._inited=!1,a._startTime=0,a._pausedTime=0,a._ticks=0,a._pausedTicks=0,a._interval=50,a._lastTime=0,a._times=null,a._tickTimes=null,a._timerId=null,a._raf=!0,a.setInterval=function(b){a._interval=b,a._inited&&a._setupTick()},a.getInterval=function(){return a._interval},a.setFPS=function(b){a.setInterval(1e3/b)},a.getFPS=function(){return 1e3/a._interval};try{Object.defineProperties(a,{interval:{get:a.getInterval,set:a.setInterval},framerate:{get:a.getFPS,set:a.setFPS}})}catch(b){console.log(b)}a.init=function(){a._inited||(a._inited=!0,a._times=[],a._tickTimes=[],a._startTime=a._getTime(),a._times.push(a._lastTime=0),a.interval=a._interval)},a.reset=function(){if(a._raf){var b=window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||window.oCancelAnimationFrame||window.msCancelAnimationFrame;b&&b(a._timerId)}else clearTimeout(a._timerId);a.removeAllEventListeners("tick"),a._timerId=a._times=a._tickTimes=null,a._startTime=a._lastTime=a._ticks=0,a._inited=!1},a.getMeasuredTickTime=function(b){var c=0,d=a._tickTimes;if(!d||d.length<1)return-1;b=Math.min(d.length,b||0|a.getFPS());for(var e=0;b>e;e++)c+=d[e];return c/b},a.getMeasuredFPS=function(b){var c=a._times;return!c||c.length<2?-1:(b=Math.min(c.length-1,b||0|a.getFPS()),1e3/((c[0]-c[b])/b))},a.setPaused=function(b){a.paused=b},a.getPaused=function(){return a.paused},a.getTime=function(b){return a._startTime?a._getTime()-(b?a._pausedTime:0):-1},a.getEventTime=function(b){return a._startTime?(a._lastTime||a._startTime)-(b?a._pausedTime:0):-1},a.getTicks=function(b){return a._ticks-(b?a._pausedTicks:0)},a._handleSynch=function(){a._timerId=null,a._setupTick(),a._getTime()-a._lastTime>=.97*(a._interval-1)&&a._tick()},a._handleRAF=function(){a._timerId=null,a._setupTick(),a._tick()},a._handleTimeout=function(){a._timerId=null,a._setupTick(),a._tick()},a._setupTick=function(){if(null==a._timerId){var b=a.timingMode||a.useRAF&&a.RAF_SYNCHED;if(b==a.RAF_SYNCHED||b==a.RAF){var c=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(c)return a._timerId=c(b==a.RAF?a._handleRAF:a._handleSynch),void(a._raf=!0)}a._raf=!1,a._timerId=setTimeout(a._handleTimeout,a._interval)}},a._tick=function(){var b=a.paused,c=a._getTime(),d=c-a._lastTime;if(a._lastTime=c,a._ticks++,b&&(a._pausedTicks++,a._pausedTime+=d),a.hasEventListener("tick")){var e=new createjs.Event("tick"),f=a.maxDelta;e.delta=f&&d>f?f:d,e.paused=b,e.time=c,e.runTime=c-a._pausedTime,a.dispatchEvent(e)}for(a._tickTimes.unshift(a._getTime()-c);a._tickTimes.length>100;)a._tickTimes.pop();for(a._times.unshift(c);a._times.length>100;)a._times.pop()};var c=window.performance&&(performance.now||performance.mozNow||performance.msNow||performance.oNow||performance.webkitNow);a._getTime=function(){return(c&&c.call(performance)||(new Date).getTime())-a._startTime},createjs.Ticker=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(){throw"UID cannot be instantiated"}a._nextID=0,a.get=function(){return a._nextID++},createjs.UID=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k){this.Event_constructor(a,b,c),this.stageX=d,this.stageY=e,this.rawX=null==i?d:i,this.rawY=null==j?e:j,this.nativeEvent=f,this.pointerID=g,this.primary=!!h,this.relatedTarget=k}var b=createjs.extend(a,createjs.Event);b._get_localX=function(){return this.currentTarget.globalToLocal(this.rawX,this.rawY).x},b._get_localY=function(){return this.currentTarget.globalToLocal(this.rawX,this.rawY).y},b._get_isTouch=function(){return-1!==this.pointerID};try{Object.defineProperties(b,{localX:{get:b._get_localX},localY:{get:b._get_localY},isTouch:{get:b._get_isTouch}})}catch(c){}b.clone=function(){return new a(this.type,this.bubbles,this.cancelable,this.stageX,this.stageY,this.nativeEvent,this.pointerID,this.primary,this.rawX,this.rawY)},b.toString=function(){return"[MouseEvent (type="+this.type+" stageX="+this.stageX+" stageY="+this.stageY+")]"},createjs.MouseEvent=createjs.promote(a,"Event")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e,f){this.setValues(a,b,c,d,e,f)}var b=a.prototype;a.DEG_TO_RAD=Math.PI/180,a.identity=null,b.setValues=function(a,b,c,d,e,f){return this.a=null==a?1:a,this.b=b||0,this.c=c||0,this.d=null==d?1:d,this.tx=e||0,this.ty=f||0,this},b.append=function(a,b,c,d,e,f){var g=this.a,h=this.b,i=this.c,j=this.d;return(1!=a||0!=b||0!=c||1!=d)&&(this.a=g*a+i*b,this.b=h*a+j*b,this.c=g*c+i*d,this.d=h*c+j*d),this.tx=g*e+i*f+this.tx,this.ty=h*e+j*f+this.ty,this},b.prepend=function(a,b,c,d,e,f){var g=this.a,h=this.c,i=this.tx;return this.a=a*g+c*this.b,this.b=b*g+d*this.b,this.c=a*h+c*this.d,this.d=b*h+d*this.d,this.tx=a*i+c*this.ty+e,this.ty=b*i+d*this.ty+f,this},b.appendMatrix=function(a){return this.append(a.a,a.b,a.c,a.d,a.tx,a.ty)},b.prependMatrix=function(a){return this.prepend(a.a,a.b,a.c,a.d,a.tx,a.ty)},b.appendTransform=function(b,c,d,e,f,g,h,i,j){if(f%360)var k=f*a.DEG_TO_RAD,l=Math.cos(k),m=Math.sin(k);else l=1,m=0;return g||h?(g*=a.DEG_TO_RAD,h*=a.DEG_TO_RAD,this.append(Math.cos(h),Math.sin(h),-Math.sin(g),Math.cos(g),b,c),this.append(l*d,m*d,-m*e,l*e,0,0)):this.append(l*d,m*d,-m*e,l*e,b,c),(i||j)&&(this.tx-=i*this.a+j*this.c,this.ty-=i*this.b+j*this.d),this},b.prependTransform=function(b,c,d,e,f,g,h,i,j){if(f%360)var k=f*a.DEG_TO_RAD,l=Math.cos(k),m=Math.sin(k);else l=1,m=0;return(i||j)&&(this.tx-=i,this.ty-=j),g||h?(g*=a.DEG_TO_RAD,h*=a.DEG_TO_RAD,this.prepend(l*d,m*d,-m*e,l*e,0,0),this.prepend(Math.cos(h),Math.sin(h),-Math.sin(g),Math.cos(g),b,c)):this.prepend(l*d,m*d,-m*e,l*e,b,c),this},b.rotate=function(b){b*=a.DEG_TO_RAD;var c=Math.cos(b),d=Math.sin(b),e=this.a,f=this.b;return this.a=e*c+this.c*d,this.b=f*c+this.d*d,this.c=-e*d+this.c*c,this.d=-f*d+this.d*c,this},b.skew=function(b,c){return b*=a.DEG_TO_RAD,c*=a.DEG_TO_RAD,this.append(Math.cos(c),Math.sin(c),-Math.sin(b),Math.cos(b),0,0),this},b.scale=function(a,b){return this.a*=a,this.b*=a,this.c*=b,this.d*=b,this},b.translate=function(a,b){return this.tx+=this.a*a+this.c*b,this.ty+=this.b*a+this.d*b,this},b.identity=function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},b.invert=function(){var a=this.a,b=this.b,c=this.c,d=this.d,e=this.tx,f=a*d-b*c;return this.a=d/f,this.b=-b/f,this.c=-c/f,this.d=a/f,this.tx=(c*this.ty-d*e)/f,this.ty=-(a*this.ty-b*e)/f,this},b.isIdentity=function(){return 0===this.tx&&0===this.ty&&1===this.a&&0===this.b&&0===this.c&&1===this.d},b.equals=function(a){return this.tx===a.tx&&this.ty===a.ty&&this.a===a.a&&this.b===a.b&&this.c===a.c&&this.d===a.d},b.transformPoint=function(a,b,c){return c=c||{},c.x=a*this.a+b*this.c+this.tx,c.y=a*this.b+b*this.d+this.ty,c},b.decompose=function(b){null==b&&(b={}),b.x=this.tx,b.y=this.ty,b.scaleX=Math.sqrt(this.a*this.a+this.b*this.b),b.scaleY=Math.sqrt(this.c*this.c+this.d*this.d);var c=Math.atan2(-this.c,this.d),d=Math.atan2(this.b,this.a),e=Math.abs(1-c/d);return 1e-5>e?(b.rotation=d/a.DEG_TO_RAD,this.a<0&&this.d>=0&&(b.rotation+=b.rotation<=0?180:-180),b.skewX=b.skewY=0):(b.skewX=c/a.DEG_TO_RAD,b.skewY=d/a.DEG_TO_RAD),b},b.copy=function(a){return this.setValues(a.a,a.b,a.c,a.d,a.tx,a.ty)},b.clone=function(){return new a(this.a,this.b,this.c,this.d,this.tx,this.ty)},b.toString=function(){return"[Matrix2D (a="+this.a+" b="+this.b+" c="+this.c+" d="+this.d+" tx="+this.tx+" ty="+this.ty+")]"},a.identity=new a,createjs.Matrix2D=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e){this.setValues(a,b,c,d,e)}var b=a.prototype;b.setValues=function(a,b,c,d,e){return this.visible=null==a?!0:!!a,this.alpha=null==b?1:b,this.shadow=c,this.compositeOperation=c,this.matrix=e||this.matrix&&this.matrix.identity()||new createjs.Matrix2D,this},b.append=function(a,b,c,d,e){return this.alpha*=b,this.shadow=c||this.shadow,this.compositeOperation=d||this.compositeOperation,this.visible=this.visible&&a,e&&this.matrix.appendMatrix(e),this},b.prepend=function(a,b,c,d,e){return this.alpha*=b,this.shadow=this.shadow||c,this.compositeOperation=this.compositeOperation||d,this.visible=this.visible&&a,e&&this.matrix.prependMatrix(e),this},b.identity=function(){return this.visible=!0,this.alpha=1,this.shadow=this.compositeOperation=null,this.matrix.identity(),this},b.clone=function(){return new a(this.alpha,this.shadow,this.compositeOperation,this.visible,this.matrix.clone())},createjs.DisplayProps=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b){this.setValues(a,b)}var b=a.prototype;b.setValues=function(a,b){return this.x=a||0,this.y=b||0,this},b.copy=function(a){return this.x=a.x,this.y=a.y,this},b.clone=function(){return new a(this.x,this.y)},b.toString=function(){return"[Point (x="+this.x+" y="+this.y+")]"},createjs.Point=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d){this.setValues(a,b,c,d)}var b=a.prototype;b.setValues=function(a,b,c,d){return this.x=a||0,this.y=b||0,this.width=c||0,this.height=d||0,this},b.extend=function(a,b,c,d){return c=c||0,d=d||0,a+c>this.x+this.width&&(this.width=a+c-this.x),b+d>this.y+this.height&&(this.height=b+d-this.y),a=this.x&&a+c<=this.x+this.width&&b>=this.y&&b+d<=this.y+this.height},b.union=function(a){return this.clone().extend(a.x,a.y,a.width,a.height)},b.intersection=function(b){var c=b.x,d=b.y,e=c+b.width,f=d+b.height;return this.x>c&&(c=this.x),this.y>d&&(d=this.y),this.x+this.width=e||d>=f?null:new a(c,d,e-c,f-d)},b.intersects=function(a){return a.x<=this.x+this.width&&this.x<=a.x+a.width&&a.y<=this.y+this.height&&this.y<=a.y+a.height},b.isEmpty=function(){return this.width<=0||this.height<=0},b.clone=function(){return new a(this.x,this.y,this.width,this.height)},b.toString=function(){return"[Rectangle (x="+this.x+" y="+this.y+" width="+this.width+" height="+this.height+")]"},createjs.Rectangle=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e,f,g){a.addEventListener&&(this.target=a,this.overLabel=null==c?"over":c,this.outLabel=null==b?"out":b,this.downLabel=null==d?"down":d,this.play=e,this._isPressed=!1,this._isOver=!1,this._enabled=!1,a.mouseChildren=!1,this.enabled=!0,this.handleEvent({}),f&&(g&&(f.actionsEnabled=!1,f.gotoAndStop&&f.gotoAndStop(g)),a.hitArea=f))}var b=a.prototype;b.setEnabled=function(a){if(a!=this._enabled){var b=this.target;this._enabled=a,a?(b.cursor="pointer",b.addEventListener("rollover",this),b.addEventListener("rollout",this),b.addEventListener("mousedown",this),b.addEventListener("pressup",this),b._reset&&(b.__reset=b._reset,b._reset=this._reset)):(b.cursor=null,b.removeEventListener("rollover",this),b.removeEventListener("rollout",this),b.removeEventListener("mousedown",this),b.removeEventListener("pressup",this),b.__reset&&(b._reset=b.__reset,delete b.__reset))}},b.getEnabled=function(){return this._enabled};try{Object.defineProperties(b,{enabled:{get:b.getEnabled,set:b.setEnabled}})}catch(c){}b.toString=function(){return"[ButtonHelper]"},b.handleEvent=function(a){var b,c=this.target,d=a.type;"mousedown"==d?(this._isPressed=!0,b=this.downLabel):"pressup"==d?(this._isPressed=!1,b=this._isOver?this.overLabel:this.outLabel):"rollover"==d?(this._isOver=!0,b=this._isPressed?this.downLabel:this.overLabel):(this._isOver=!1,b=this._isPressed?this.overLabel:this.outLabel),this.play?c.gotoAndPlay&&c.gotoAndPlay(b):c.gotoAndStop&&c.gotoAndStop(b)},b._reset=function(){var a=this.paused;this.__reset(),this.paused=a},createjs.ButtonHelper=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d){this.color=a||"black",this.offsetX=b||0,this.offsetY=c||0,this.blur=d||0}var b=a.prototype;a.identity=new a("transparent",0,0,0),b.toString=function(){return"[Shadow]"},b.clone=function(){return new a(this.color,this.offsetX,this.offsetY,this.blur)},createjs.Shadow=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.EventDispatcher_constructor(),this.complete=!0,this.framerate=0,this._animations=null,this._frames=null,this._images=null,this._data=null,this._loadCount=0,this._frameHeight=0,this._frameWidth=0,this._numFrames=0,this._regX=0,this._regY=0,this._spacing=0,this._margin=0,this._parseData(a)}var b=createjs.extend(a,createjs.EventDispatcher);b.getAnimations=function(){return this._animations.slice()};try{Object.defineProperties(b,{animations:{get:b.getAnimations}})}catch(c){}b.getNumFrames=function(a){if(null==a)return this._frames?this._frames.length:this._numFrames||0;var b=this._data[a];return null==b?0:b.frames.length},b.getAnimation=function(a){return this._data[a]},b.getFrame=function(a){var b;return this._frames&&(b=this._frames[a])?b:null},b.getFrameBounds=function(a,b){var c=this.getFrame(a);return c?(b||new createjs.Rectangle).setValues(-c.regX,-c.regY,c.rect.width,c.rect.height):null},b.toString=function(){return"[SpriteSheet]"},b.clone=function(){throw"SpriteSheet cannot be cloned."},b._parseData=function(a){var b,c,d,e;if(null!=a){if(this.framerate=a.framerate||0,a.images&&(c=a.images.length)>0)for(e=this._images=[],b=0;c>b;b++){var f=a.images[b];if("string"==typeof f){var g=f;f=document.createElement("img"),f.src=g}e.push(f),f.getContext||f.naturalWidth||(this._loadCount++,this.complete=!1,function(a){f.onload=function(){a._handleImageLoad()}}(this))}if(null==a.frames);else if(a.frames instanceof Array)for(this._frames=[],e=a.frames,b=0,c=e.length;c>b;b++){var h=e[b];this._frames.push({image:this._images[h[4]?h[4]:0],rect:new createjs.Rectangle(h[0],h[1],h[2],h[3]),regX:h[5]||0,regY:h[6]||0})}else d=a.frames,this._frameWidth=d.width,this._frameHeight=d.height,this._regX=d.regX||0,this._regY=d.regY||0,this._spacing=d.spacing||0,this._margin=d.margin||0,this._numFrames=d.count,0==this._loadCount&&this._calculateFrames();if(this._animations=[],null!=(d=a.animations)){this._data={};var i;for(i in d){var j={name:i},k=d[i];if("number"==typeof k)e=j.frames=[k];else if(k instanceof Array)if(1==k.length)j.frames=[k[0]];else for(j.speed=k[3],j.next=k[2],e=j.frames=[],b=k[0];b<=k[1];b++)e.push(b);else{j.speed=k.speed,j.next=k.next;var l=k.frames;e=j.frames="number"==typeof l?[l]:l.slice(0)}(j.next===!0||void 0===j.next)&&(j.next=i),(j.next===!1||e.length<2&&j.next==i)&&(j.next=null),j.speed||(j.speed=1),this._animations.push(i),this._data[i]=j}}}},b._handleImageLoad=function(){0==--this._loadCount&&(this._calculateFrames(),this.complete=!0,this.dispatchEvent("complete"))},b._calculateFrames=function(){if(!this._frames&&0!=this._frameWidth){this._frames=[];var a=this._numFrames||1e5,b=0,c=this._frameWidth,d=this._frameHeight,e=this._spacing,f=this._margin;a:for(var g=0,h=this._images;g=l;){for(var m=f;j-f-c>=m;){if(b>=a)break a;b++,this._frames.push({image:i,rect:new createjs.Rectangle(m,l,c,d),regX:this._regX,regY:this._regY}),m+=c+e}l+=d+e}this._numFrames=b}},createjs.SpriteSheet=createjs.promote(a,"EventDispatcher")}(),this.createjs=this.createjs||{},function(){"use strict";function a(){this.command=null,this._stroke=null,this._strokeStyle=null,this._oldStrokeStyle=null,this._strokeDash=null,this._oldStrokeDash=null,this._strokeIgnoreScale=!1,this._fill=null,this._instructions=[],this._commitIndex=0,this._activeInstructions=[],this._dirty=!1,this._storeIndex=0,this.clear()}var b=a.prototype,c=a;a.getRGB=function(a,b,c,d){return null!=a&&null==c&&(d=b,c=255&a,b=a>>8&255,a=a>>16&255),null==d?"rgb("+a+","+b+","+c+")":"rgba("+a+","+b+","+c+","+d+")"},a.getHSL=function(a,b,c,d){return null==d?"hsl("+a%360+","+b+"%,"+c+"%)":"hsla("+a%360+","+b+"%,"+c+"%,"+d+")"},a.BASE_64={A:0,B:1,C:2,D:3,E:4,F:5,G:6,H:7,I:8,J:9,K:10,L:11,M:12,N:13,O:14,P:15,Q:16,R:17,S:18,T:19,U:20,V:21,W:22,X:23,Y:24,Z:25,a:26,b:27,c:28,d:29,e:30,f:31,g:32,h:33,i:34,j:35,k:36,l:37,m:38,n:39,o:40,p:41,q:42,r:43,s:44,t:45,u:46,v:47,w:48,x:49,y:50,z:51,0:52,1:53,2:54,3:55,4:56,5:57,6:58,7:59,8:60,9:61,"+":62,"/":63},a.STROKE_CAPS_MAP=["butt","round","square"],a.STROKE_JOINTS_MAP=["miter","round","bevel"];var d=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");d.getContext&&(a._ctx=d.getContext("2d"),d.width=d.height=1),b.getInstructions=function(){return this._updateInstructions(),this._instructions};try{Object.defineProperties(b,{instructions:{get:b.getInstructions}})}catch(e){}b.isEmpty=function(){return!(this._instructions.length||this._activeInstructions.length)},b.draw=function(a,b){this._updateInstructions();for(var c=this._instructions,d=this._storeIndex,e=c.length;e>d;d++)c[d].exec(a,b)},b.drawAsPath=function(a){this._updateInstructions();for(var b,c=this._instructions,d=this._storeIndex,e=c.length;e>d;d++)(b=c[d]).path!==!1&&b.exec(a)},b.moveTo=function(a,b){return this.append(new c.MoveTo(a,b),!0)},b.lineTo=function(a,b){return this.append(new c.LineTo(a,b))},b.arcTo=function(a,b,d,e,f){return this.append(new c.ArcTo(a,b,d,e,f))},b.arc=function(a,b,d,e,f,g){return this.append(new c.Arc(a,b,d,e,f,g))},b.quadraticCurveTo=function(a,b,d,e){return this.append(new c.QuadraticCurveTo(a,b,d,e))},b.bezierCurveTo=function(a,b,d,e,f,g){return this.append(new c.BezierCurveTo(a,b,d,e,f,g))},b.rect=function(a,b,d,e){return this.append(new c.Rect(a,b,d,e))},b.closePath=function(){return this._activeInstructions.length?this.append(new c.ClosePath):this},b.clear=function(){return this._instructions.length=this._activeInstructions.length=this._commitIndex=0,this._strokeStyle=this._oldStrokeStyle=this._stroke=this._fill=this._strokeDash=this._oldStrokeDash=null,this._dirty=this._strokeIgnoreScale=!1,this},b.beginFill=function(a){return this._setFill(a?new c.Fill(a):null)},b.beginLinearGradientFill=function(a,b,d,e,f,g){return this._setFill((new c.Fill).linearGradient(a,b,d,e,f,g))},b.beginRadialGradientFill=function(a,b,d,e,f,g,h,i){return this._setFill((new c.Fill).radialGradient(a,b,d,e,f,g,h,i))},b.beginBitmapFill=function(a,b,d){return this._setFill(new c.Fill(null,d).bitmap(a,b))},b.endFill=function(){return this.beginFill()},b.setStrokeStyle=function(a,b,d,e,f){return this._updateInstructions(!0),this._strokeStyle=this.command=new c.StrokeStyle(a,b,d,e,f),this._stroke&&(this._stroke.ignoreScale=f),this._strokeIgnoreScale=f,this},b.setStrokeDash=function(a,b){return this._updateInstructions(!0),this._strokeDash=this.command=new c.StrokeDash(a,b),this},b.beginStroke=function(a){return this._setStroke(a?new c.Stroke(a):null)},b.beginLinearGradientStroke=function(a,b,d,e,f,g){return this._setStroke((new c.Stroke).linearGradient(a,b,d,e,f,g))},b.beginRadialGradientStroke=function(a,b,d,e,f,g,h,i){return this._setStroke((new c.Stroke).radialGradient(a,b,d,e,f,g,h,i))},b.beginBitmapStroke=function(a,b){return this._setStroke((new c.Stroke).bitmap(a,b))},b.endStroke=function(){return this.beginStroke()},b.curveTo=b.quadraticCurveTo,b.drawRect=b.rect,b.drawRoundRect=function(a,b,c,d,e){return this.drawRoundRectComplex(a,b,c,d,e,e,e,e)},b.drawRoundRectComplex=function(a,b,d,e,f,g,h,i){return this.append(new c.RoundRect(a,b,d,e,f,g,h,i))},b.drawCircle=function(a,b,d){return this.append(new c.Circle(a,b,d))},b.drawEllipse=function(a,b,d,e){return this.append(new c.Ellipse(a,b,d,e))},b.drawPolyStar=function(a,b,d,e,f,g){return this.append(new c.PolyStar(a,b,d,e,f,g))},b.append=function(a,b){return this._activeInstructions.push(a),this.command=a,b||(this._dirty=!0),this},b.decodePath=function(b){for(var c=[this.moveTo,this.lineTo,this.quadraticCurveTo,this.bezierCurveTo,this.closePath],d=[2,2,4,6,0],e=0,f=b.length,g=[],h=0,i=0,j=a.BASE_64;f>e;){var k=b.charAt(e),l=j[k],m=l>>3,n=c[m];if(!n||3&l)throw"bad path data (@"+e+"): "+k;var o=d[m];m||(h=i=0),g.length=0,e++;for(var p=(l>>2&1)+2,q=0;o>q;q++){var r=j[b.charAt(e)],s=r>>5?-1:1;r=(31&r)<<6|j[b.charAt(e+1)],3==p&&(r=r<<6|j[b.charAt(e+2)]),r=s*r/10,q%2?h=r+=h:i=r+=i,g[q]=r,e+=p}n.apply(this,g)}return this},b.store=function(){return this._updateInstructions(!0),this._storeIndex=this._instructions.length,this},b.unstore=function(){return this._storeIndex=0,this},b.clone=function(){var b=new a;return b.command=this.command,b._stroke=this._stroke,b._strokeStyle=this._strokeStyle,b._strokeDash=this._strokeDash,b._strokeIgnoreScale=this._strokeIgnoreScale,b._fill=this._fill,b._instructions=this._instructions.slice(),b._commitIndex=this._commitIndex,b._activeInstructions=this._activeInstructions.slice(),b._dirty=this._dirty,b._storeIndex=this._storeIndex,b},b.toString=function(){return"[Graphics]"},b.mt=b.moveTo,b.lt=b.lineTo,b.at=b.arcTo,b.bt=b.bezierCurveTo,b.qt=b.quadraticCurveTo,b.a=b.arc,b.r=b.rect,b.cp=b.closePath,b.c=b.clear,b.f=b.beginFill,b.lf=b.beginLinearGradientFill,b.rf=b.beginRadialGradientFill,b.bf=b.beginBitmapFill,b.ef=b.endFill,b.ss=b.setStrokeStyle,b.sd=b.setStrokeDash,b.s=b.beginStroke,b.ls=b.beginLinearGradientStroke,b.rs=b.beginRadialGradientStroke,b.bs=b.beginBitmapStroke,b.es=b.endStroke,b.dr=b.drawRect,b.rr=b.drawRoundRect,b.rc=b.drawRoundRectComplex,b.dc=b.drawCircle,b.de=b.drawEllipse,b.dp=b.drawPolyStar,b.p=b.decodePath,b._updateInstructions=function(b){var c=this._instructions,d=this._activeInstructions,e=this._commitIndex;if(this._dirty&&d.length){c.length=e,c.push(a.beginCmd);var f=d.length,g=c.length;c.length=g+f;for(var h=0;f>h;h++)c[h+g]=d[h];this._fill&&c.push(this._fill),this._stroke&&(this._strokeDash!==this._oldStrokeDash&&(this._oldStrokeDash=this._strokeDash,c.push(this._strokeDash)),this._strokeStyle!==this._oldStrokeStyle&&(this._oldStrokeStyle=this._strokeStyle,c.push(this._strokeStyle)),c.push(this._stroke)),this._dirty=!1}b&&(d.length=0,this._commitIndex=c.length)},b._setFill=function(a){return this._updateInstructions(!0),this.command=this._fill=a,this},b._setStroke=function(a){return this._updateInstructions(!0),(this.command=this._stroke=a)&&(a.ignoreScale=this._strokeIgnoreScale),this},(c.LineTo=function(a,b){this.x=a,this.y=b}).prototype.exec=function(a){a.lineTo(this.x,this.y)},(c.MoveTo=function(a,b){this.x=a,this.y=b}).prototype.exec=function(a){a.moveTo(this.x,this.y)},(c.ArcTo=function(a,b,c,d,e){this.x1=a,this.y1=b,this.x2=c,this.y2=d,this.radius=e}).prototype.exec=function(a){a.arcTo(this.x1,this.y1,this.x2,this.y2,this.radius)},(c.Arc=function(a,b,c,d,e,f){this.x=a,this.y=b,this.radius=c,this.startAngle=d,this.endAngle=e,this.anticlockwise=!!f}).prototype.exec=function(a){a.arc(this.x,this.y,this.radius,this.startAngle,this.endAngle,this.anticlockwise)},(c.QuadraticCurveTo=function(a,b,c,d){this.cpx=a,this.cpy=b,this.x=c,this.y=d}).prototype.exec=function(a){a.quadraticCurveTo(this.cpx,this.cpy,this.x,this.y)},(c.BezierCurveTo=function(a,b,c,d,e,f){this.cp1x=a,this.cp1y=b,this.cp2x=c,this.cp2y=d,this.x=e,this.y=f}).prototype.exec=function(a){a.bezierCurveTo(this.cp1x,this.cp1y,this.cp2x,this.cp2y,this.x,this.y)},(c.Rect=function(a,b,c,d){this.x=a,this.y=b,this.w=c,this.h=d}).prototype.exec=function(a){a.rect(this.x,this.y,this.w,this.h)},(c.ClosePath=function(){}).prototype.exec=function(a){a.closePath()},(c.BeginPath=function(){}).prototype.exec=function(a){a.beginPath()},b=(c.Fill=function(a,b){this.style=a,this.matrix=b}).prototype,b.exec=function(a){if(this.style){a.fillStyle=this.style;var b=this.matrix;b&&(a.save(),a.transform(b.a,b.b,b.c,b.d,b.tx,b.ty)),a.fill(),b&&a.restore()}},b.linearGradient=function(b,c,d,e,f,g){for(var h=this.style=a._ctx.createLinearGradient(d,e,f,g),i=0,j=b.length;j>i;i++)h.addColorStop(c[i],b[i]);return h.props={colors:b,ratios:c,x0:d,y0:e,x1:f,y1:g,type:"linear"},this},b.radialGradient=function(b,c,d,e,f,g,h,i){for(var j=this.style=a._ctx.createRadialGradient(d,e,f,g,h,i),k=0,l=b.length;l>k;k++)j.addColorStop(c[k],b[k]);return j.props={colors:b,ratios:c,x0:d,y0:e,r0:f,x1:g,y1:h,r1:i,type:"radial"},this},b.bitmap=function(b,c){if(b.naturalWidth||b.getContext||b.readyState>=2){var d=this.style=a._ctx.createPattern(b,c||"");d.props={image:b,repetition:c,type:"bitmap"}}return this},b.path=!1,b=(c.Stroke=function(a,b){this.style=a,this.ignoreScale=b}).prototype,b.exec=function(a){this.style&&(a.strokeStyle=this.style,this.ignoreScale&&(a.save(),a.setTransform(1,0,0,1,0,0)),a.stroke(),this.ignoreScale&&a.restore())},b.linearGradient=c.Fill.prototype.linearGradient,b.radialGradient=c.Fill.prototype.radialGradient,b.bitmap=c.Fill.prototype.bitmap,b.path=!1,b=(c.StrokeStyle=function(a,b,c,d){this.width=a,this.caps=b,this.joints=c,this.miterLimit=d}).prototype,b.exec=function(b){b.lineWidth=null==this.width?"1":this.width,b.lineCap=null==this.caps?"butt":isNaN(this.caps)?this.caps:a.STROKE_CAPS_MAP[this.caps],b.lineJoin=null==this.joints?"miter":isNaN(this.joints)?this.joints:a.STROKE_JOINTS_MAP[this.joints],b.miterLimit=null==this.miterLimit?"10":this.miterLimit},b.path=!1,(c.StrokeDash=function(a,b){this.segments=a,this.offset=b||0}).prototype.exec=function(a){a.setLineDash&&(a.setLineDash(this.segments||c.StrokeDash.EMPTY_SEGMENTS),a.lineDashOffset=this.offset||0)},c.StrokeDash.EMPTY_SEGMENTS=[],(c.RoundRect=function(a,b,c,d,e,f,g,h){this.x=a,this.y=b,this.w=c,this.h=d,this.radiusTL=e,this.radiusTR=f,this.radiusBR=g,this.radiusBL=h}).prototype.exec=function(a){var b=(j>i?i:j)/2,c=0,d=0,e=0,f=0,g=this.x,h=this.y,i=this.w,j=this.h,k=this.radiusTL,l=this.radiusTR,m=this.radiusBR,n=this.radiusBL;0>k&&(k*=c=-1),k>b&&(k=b),0>l&&(l*=d=-1),l>b&&(l=b),0>m&&(m*=e=-1),m>b&&(m=b),0>n&&(n*=f=-1),n>b&&(n=b),a.moveTo(g+i-l,h),a.arcTo(g+i+l*d,h-l*d,g+i,h+l,l),a.lineTo(g+i,h+j-m),a.arcTo(g+i+m*e,h+j+m*e,g+i-m,h+j,m),a.lineTo(g+n,h+j),a.arcTo(g-n*f,h+j+n*f,g,h+j-n,n),a.lineTo(g,h+k),a.arcTo(g-k*c,h-k*c,g+k,h,k),a.closePath()},(c.Circle=function(a,b,c){this.x=a,this.y=b,this.radius=c}).prototype.exec=function(a){a.arc(this.x,this.y,this.radius,0,2*Math.PI)},(c.Ellipse=function(a,b,c,d){this.x=a,this.y=b,this.w=c,this.h=d}).prototype.exec=function(a){var b=this.x,c=this.y,d=this.w,e=this.h,f=.5522848,g=d/2*f,h=e/2*f,i=b+d,j=c+e,k=b+d/2,l=c+e/2;a.moveTo(b,l),a.bezierCurveTo(b,l-h,k-g,c,k,c),a.bezierCurveTo(k+g,c,i,l-h,i,l),a.bezierCurveTo(i,l+h,k+g,j,k,j),a.bezierCurveTo(k-g,j,b,l+h,b,l)},(c.PolyStar=function(a,b,c,d,e,f){this.x=a,this.y=b,this.radius=c,this.sides=d,this.pointSize=e,this.angle=f}).prototype.exec=function(a){var b=this.x,c=this.y,d=this.radius,e=(this.angle||0)/180*Math.PI,f=this.sides,g=1-(this.pointSize||0),h=Math.PI/f;a.moveTo(b+Math.cos(e)*d,c+Math.sin(e)*d);for(var i=0;f>i;i++)e+=h,1!=g&&a.lineTo(b+Math.cos(e)*d*g,c+Math.sin(e)*d*g),e+=h,a.lineTo(b+Math.cos(e)*d,c+Math.sin(e)*d);a.closePath()},a.beginCmd=new c.BeginPath,createjs.Graphics=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(){this.EventDispatcher_constructor(),this.alpha=1,this.cacheCanvas=null,this.cacheID=0,this.id=createjs.UID.get(),this.mouseEnabled=!0,this.tickEnabled=!0,this.name=null,this.parent=null,this.regX=0,this.regY=0,this.rotation=0,this.scaleX=1,this.scaleY=1,this.skewX=0,this.skewY=0,this.shadow=null,this.visible=!0,this.x=0,this.y=0,this.transformMatrix=null,this.compositeOperation=null,this.snapToPixel=!0,this.filters=null,this.mask=null,this.hitArea=null,this.cursor=null,this._cacheOffsetX=0,this._cacheOffsetY=0,this._filterOffsetX=0,this._filterOffsetY=0,this._cacheScale=1,this._cacheDataURLID=0,this._cacheDataURL=null,this._props=new createjs.DisplayProps,this._rectangle=new createjs.Rectangle,this._bounds=null -}var b=createjs.extend(a,createjs.EventDispatcher);a._MOUSE_EVENTS=["click","dblclick","mousedown","mouseout","mouseover","pressmove","pressup","rollout","rollover"],a.suppressCrossDomainErrors=!1,a._snapToPixelEnabled=!1;var c=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");c.getContext&&(a._hitTestCanvas=c,a._hitTestContext=c.getContext("2d"),c.width=c.height=1),a._nextCacheID=1,b.getStage=function(){for(var a=this,b=createjs.Stage;a.parent;)a=a.parent;return a instanceof b?a:null};try{Object.defineProperties(b,{stage:{get:b.getStage}})}catch(d){}b.isVisible=function(){return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY)},b.draw=function(a,b){var c=this.cacheCanvas;if(b||!c)return!1;var d=this._cacheScale;return a.drawImage(c,this._cacheOffsetX+this._filterOffsetX,this._cacheOffsetY+this._filterOffsetY,c.width/d,c.height/d),!0},b.updateContext=function(b){var c=this,d=c.mask,e=c._props.matrix;d&&d.graphics&&!d.graphics.isEmpty()&&(d.getMatrix(e),b.transform(e.a,e.b,e.c,e.d,e.tx,e.ty),d.graphics.drawAsPath(b),b.clip(),e.invert(),b.transform(e.a,e.b,e.c,e.d,e.tx,e.ty)),this.getMatrix(e);var f=e.tx,g=e.ty;a._snapToPixelEnabled&&c.snapToPixel&&(f=f+(0>f?-.5:.5)|0,g=g+(0>g?-.5:.5)|0),b.transform(e.a,e.b,e.c,e.d,f,g),b.globalAlpha*=c.alpha,c.compositeOperation&&(b.globalCompositeOperation=c.compositeOperation),c.shadow&&this._applyShadow(b,c.shadow)},b.cache=function(a,b,c,d,e){e=e||1,this.cacheCanvas||(this.cacheCanvas=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")),this._cacheWidth=c,this._cacheHeight=d,this._cacheOffsetX=a,this._cacheOffsetY=b,this._cacheScale=e,this.updateCache()},b.updateCache=function(b){var c=this.cacheCanvas;if(!c)throw"cache() must be called before updateCache()";var d=this._cacheScale,e=this._cacheOffsetX*d,f=this._cacheOffsetY*d,g=this._cacheWidth,h=this._cacheHeight,i=c.getContext("2d"),j=this._getFilterBounds();e+=this._filterOffsetX=j.x,f+=this._filterOffsetY=j.y,g=Math.ceil(g*d)+j.width,h=Math.ceil(h*d)+j.height,g!=c.width||h!=c.height?(c.width=g,c.height=h):b||i.clearRect(0,0,g+1,h+1),i.save(),i.globalCompositeOperation=b,i.setTransform(d,0,0,d,-e,-f),this.draw(i,!0),this._applyFilters(),i.restore(),this.cacheID=a._nextCacheID++},b.uncache=function(){this._cacheDataURL=this.cacheCanvas=null,this.cacheID=this._cacheOffsetX=this._cacheOffsetY=this._filterOffsetX=this._filterOffsetY=0,this._cacheScale=1},b.getCacheDataURL=function(){return this.cacheCanvas?(this.cacheID!=this._cacheDataURLID&&(this._cacheDataURL=this.cacheCanvas.toDataURL()),this._cacheDataURL):null},b.localToGlobal=function(a,b,c){return this.getConcatenatedMatrix(this._props.matrix).transformPoint(a,b,c||new createjs.Point)},b.globalToLocal=function(a,b,c){return this.getConcatenatedMatrix(this._props.matrix).invert().transformPoint(a,b,c||new createjs.Point)},b.localToLocal=function(a,b,c,d){return d=this.localToGlobal(a,b,d),c.globalToLocal(d.x,d.y,d)},b.setTransform=function(a,b,c,d,e,f,g,h,i){return this.x=a||0,this.y=b||0,this.scaleX=null==c?1:c,this.scaleY=null==d?1:d,this.rotation=e||0,this.skewX=f||0,this.skewY=g||0,this.regX=h||0,this.regY=i||0,this},b.getMatrix=function(a){var b=this,c=a&&a.identity()||new createjs.Matrix2D;return b.transformMatrix?c.copy(b.transformMatrix):c.appendTransform(b.x,b.y,b.scaleX,b.scaleY,b.rotation,b.skewX,b.skewY,b.regX,b.regY)},b.getConcatenatedMatrix=function(a){for(var b=this,c=this.getMatrix(a);b=b.parent;)c.prependMatrix(b.getMatrix(b._props.matrix));return c},b.getConcatenatedDisplayProps=function(a){a=a?a.identity():new createjs.DisplayProps;var b=this,c=b.getMatrix(a.matrix);do a.prepend(b.visible,b.alpha,b.shadow,b.compositeOperation),b!=this&&c.prependMatrix(b.getMatrix(b._props.matrix));while(b=b.parent);return a},b.hitTest=function(b,c){var d=a._hitTestContext;d.setTransform(1,0,0,1,-b,-c),this.draw(d);var e=this._testHit(d);return d.setTransform(1,0,0,1,0,0),d.clearRect(0,0,2,2),e},b.set=function(a){for(var b in a)this[b]=a[b];return this},b.getBounds=function(){if(this._bounds)return this._rectangle.copy(this._bounds);var a=this.cacheCanvas;if(a){var b=this._cacheScale;return this._rectangle.setValues(this._cacheOffsetX,this._cacheOffsetY,a.width/b,a.height/b)}return null},b.getTransformedBounds=function(){return this._getBounds()},b.setBounds=function(a,b,c,d){null==a&&(this._bounds=a),this._bounds=(this._bounds||new createjs.Rectangle).setValues(a,b,c,d)},b.clone=function(){return this._cloneProps(new a)},b.toString=function(){return"[DisplayObject (name="+this.name+")]"},b._cloneProps=function(a){return a.alpha=this.alpha,a.mouseEnabled=this.mouseEnabled,a.tickEnabled=this.tickEnabled,a.name=this.name,a.regX=this.regX,a.regY=this.regY,a.rotation=this.rotation,a.scaleX=this.scaleX,a.scaleY=this.scaleY,a.shadow=this.shadow,a.skewX=this.skewX,a.skewY=this.skewY,a.visible=this.visible,a.x=this.x,a.y=this.y,a.compositeOperation=this.compositeOperation,a.snapToPixel=this.snapToPixel,a.filters=null==this.filters?null:this.filters.slice(0),a.mask=this.mask,a.hitArea=this.hitArea,a.cursor=this.cursor,a._bounds=this._bounds,a},b._applyShadow=function(a,b){b=b||Shadow.identity,a.shadowColor=b.color,a.shadowOffsetX=b.offsetX,a.shadowOffsetY=b.offsetY,a.shadowBlur=b.blur},b._tick=function(a){var b=this._listeners;b&&b.tick&&(a.target=null,a.propagationStopped=a.immediatePropagationStopped=!1,this.dispatchEvent(a))},b._testHit=function(b){try{var c=b.getImageData(0,0,1,1).data[3]>1}catch(d){if(!a.suppressCrossDomainErrors)throw"An error has occurred. This is most likely due to security restrictions on reading canvas pixel data with local or cross-domain images."}return c},b._applyFilters=function(){if(this.filters&&0!=this.filters.length&&this.cacheCanvas)for(var a=this.filters.length,b=this.cacheCanvas.getContext("2d"),c=this.cacheCanvas.width,d=this.cacheCanvas.height,e=0;a>e;e++)this.filters[e].applyFilter(b,0,0,c,d)},b._getFilterBounds=function(){var a,b=this.filters,c=this._rectangle.setValues(0,0,0,0);if(!b||!(a=b.length))return c;for(var d=0;a>d;d++){var e=this.filters[d];e.getBounds&&e.getBounds(c)}return c},b._getBounds=function(a,b){return this._transformBounds(this.getBounds(),a,b)},b._transformBounds=function(a,b,c){if(!a)return a;var d=a.x,e=a.y,f=a.width,g=a.height,h=this._props.matrix;h=c?h.identity():this.getMatrix(h),(d||e)&&h.appendTransform(0,0,1,1,0,0,0,-d,-e),b&&h.prependMatrix(b);var i=f*h.a,j=f*h.b,k=g*h.c,l=g*h.d,m=h.tx,n=h.ty,o=m,p=m,q=n,r=n;return(d=i+m)p&&(p=d),(d=i+k+m)p&&(p=d),(d=k+m)p&&(p=d),(e=j+n)r&&(r=e),(e=j+l+n)r&&(r=e),(e=l+n)r&&(r=e),a.setValues(o,q,p-o,r-q)},b._hasMouseEventListener=function(){for(var b=a._MOUSE_EVENTS,c=0,d=b.length;d>c;c++)if(this.hasEventListener(b[c]))return!0;return!!this.cursor},createjs.DisplayObject=createjs.promote(a,"EventDispatcher")}(),this.createjs=this.createjs||{},function(){"use strict";function a(){this.DisplayObject_constructor(),this.children=[],this.mouseChildren=!0,this.tickChildren=!0}var b=createjs.extend(a,createjs.DisplayObject);b.getNumChildren=function(){return this.children.length};try{Object.defineProperties(b,{numChildren:{get:b.getNumChildren}})}catch(c){}b.initialize=a,b.isVisible=function(){var a=this.cacheCanvas||this.children.length;return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b))return!0;for(var c=this.children.slice(),d=0,e=c.length;e>d;d++){var f=c[d];f.isVisible()&&(a.save(),f.updateContext(a),f.draw(a),a.restore())}return!0},b.addChild=function(a){if(null==a)return a;var b=arguments.length;if(b>1){for(var c=0;b>c;c++)this.addChild(arguments[c]);return arguments[b-1]}return a.parent&&a.parent.removeChild(a),a.parent=this,this.children.push(a),a.dispatchEvent("added"),a},b.addChildAt=function(a,b){var c=arguments.length,d=arguments[c-1];if(0>d||d>this.children.length)return arguments[c-2];if(c>2){for(var e=0;c-1>e;e++)this.addChildAt(arguments[e],d+e);return arguments[c-2]}return a.parent&&a.parent.removeChild(a),a.parent=this,this.children.splice(b,0,a),a.dispatchEvent("added"),a},b.removeChild=function(a){var b=arguments.length;if(b>1){for(var c=!0,d=0;b>d;d++)c=c&&this.removeChild(arguments[d]);return c}return this.removeChildAt(createjs.indexOf(this.children,a))},b.removeChildAt=function(a){var b=arguments.length;if(b>1){for(var c=[],d=0;b>d;d++)c[d]=arguments[d];c.sort(function(a,b){return b-a});for(var e=!0,d=0;b>d;d++)e=e&&this.removeChildAt(c[d]);return e}if(0>a||a>this.children.length-1)return!1;var f=this.children[a];return f&&(f.parent=null),this.children.splice(a,1),f.dispatchEvent("removed"),!0},b.removeAllChildren=function(){for(var a=this.children;a.length;)this.removeChildAt(0)},b.getChildAt=function(a){return this.children[a]},b.getChildByName=function(a){for(var b=this.children,c=0,d=b.length;d>c;c++)if(b[c].name==a)return b[c];return null},b.sortChildren=function(a){this.children.sort(a)},b.getChildIndex=function(a){return createjs.indexOf(this.children,a)},b.swapChildrenAt=function(a,b){var c=this.children,d=c[a],e=c[b];d&&e&&(c[a]=e,c[b]=d)},b.swapChildren=function(a,b){for(var c,d,e=this.children,f=0,g=e.length;g>f&&(e[f]==a&&(c=f),e[f]==b&&(d=f),null==c||null==d);f++);f!=g&&(e[c]=b,e[d]=a)},b.setChildIndex=function(a,b){var c=this.children,d=c.length;if(!(a.parent!=this||0>b||b>=d)){for(var e=0;d>e&&c[e]!=a;e++);e!=d&&e!=b&&(c.splice(e,1),c.splice(b,0,a))}},b.contains=function(a){for(;a;){if(a==this)return!0;a=a.parent}return!1},b.hitTest=function(a,b){return null!=this.getObjectUnderPoint(a,b)},b.getObjectsUnderPoint=function(a,b,c){var d=[],e=this.localToGlobal(a,b);return this._getObjectsUnderPoint(e.x,e.y,d,c>0,1==c),d},b.getObjectUnderPoint=function(a,b,c){var d=this.localToGlobal(a,b);return this._getObjectsUnderPoint(d.x,d.y,null,c>0,1==c)},b.getBounds=function(){return this._getBounds(null,!0)},b.getTransformedBounds=function(){return this._getBounds()},b.clone=function(b){var c=this._cloneProps(new a);return b&&this._cloneChildren(c),c},b.toString=function(){return"[Container (name="+this.name+")]"},b._tick=function(a){if(this.tickChildren)for(var b=this.children.length-1;b>=0;b--){var c=this.children[b];c.tickEnabled&&c._tick&&c._tick(a)}this.DisplayObject__tick(a)},b._cloneChildren=function(a){a.children.length&&a.removeAllChildren();for(var b=a.children,c=0,d=this.children.length;d>c;c++){var e=this.children[c].clone(!0);e.parent=a,b.push(e)}},b._getObjectsUnderPoint=function(b,c,d,e,f,g){if(g=g||0,!g&&!this._testMask(this,b,c))return null;var h,i=createjs.DisplayObject._hitTestContext;f=f||e&&this._hasMouseEventListener();for(var j=this.children,k=j.length,l=k-1;l>=0;l--){var m=j[l],n=m.hitArea;if(m.visible&&(n||m.isVisible())&&(!e||m.mouseEnabled)&&(n||this._testMask(m,b,c)))if(!n&&m instanceof a){var o=m._getObjectsUnderPoint(b,c,d,e,f,g+1);if(!d&&o)return e&&!this.mouseChildren?this:o}else{if(e&&!f&&!m._hasMouseEventListener())continue;var p=m.getConcatenatedDisplayProps(m._props);if(h=p.matrix,n&&(h.appendMatrix(n.getMatrix(n._props.matrix)),p.alpha=n.alpha),i.globalAlpha=p.alpha,i.setTransform(h.a,h.b,h.c,h.d,h.tx-b,h.ty-c),(n||m).draw(i),!this._testHit(i))continue;if(i.setTransform(1,0,0,1,0,0),i.clearRect(0,0,2,2),!d)return e&&!this.mouseChildren?this:m;d.push(m)}}return null},b._testMask=function(a,b,c){var d=a.mask;if(!d||!d.graphics||d.graphics.isEmpty())return!0;var e=this._props.matrix,f=a.parent;e=f?f.getConcatenatedMatrix(e):e.identity(),e=d.getMatrix(d._props.matrix).prependMatrix(e);var g=createjs.DisplayObject._hitTestContext;return g.setTransform(e.a,e.b,e.c,e.d,e.tx-b,e.ty-c),d.graphics.drawAsPath(g),g.fillStyle="#000",g.fill(),this._testHit(g)?(g.setTransform(1,0,0,1,0,0),g.clearRect(0,0,2,2),!0):!1},b._getBounds=function(a,b){var c=this.DisplayObject_getBounds();if(c)return this._transformBounds(c,a,b);var d=this._props.matrix;d=b?d.identity():this.getMatrix(d),a&&d.prependMatrix(a);for(var e=this.children.length,f=null,g=0;e>g;g++){var h=this.children[g];h.visible&&(c=h._getBounds(d))&&(f?f.extend(c.x,c.y,c.width,c.height):f=c.clone())}return f},createjs.Container=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.Container_constructor(),this.autoClear=!0,this.canvas="string"==typeof a?document.getElementById(a):a,this.mouseX=0,this.mouseY=0,this.drawRect=null,this.snapToPixelEnabled=!1,this.mouseInBounds=!1,this.tickOnUpdate=!0,this.mouseMoveOutside=!1,this.preventSelection=!0,this._pointerData={},this._pointerCount=0,this._primaryPointerID=null,this._mouseOverIntervalID=null,this._nextStage=null,this._prevStage=null,this.enableDOMEvents(!0)}var b=createjs.extend(a,createjs.Container);b._get_nextStage=function(){return this._nextStage},b._set_nextStage=function(a){this._nextStage&&(this._nextStage._prevStage=null),a&&(a._prevStage=this),this._nextStage=a};try{Object.defineProperties(b,{nextStage:{get:b._get_nextStage,set:b._set_nextStage}})}catch(c){}b.update=function(a){if(this.canvas&&(this.tickOnUpdate&&this.tick(a),this.dispatchEvent("drawstart",!1,!0)!==!1)){createjs.DisplayObject._snapToPixelEnabled=this.snapToPixelEnabled;var b=this.drawRect,c=this.canvas.getContext("2d");c.setTransform(1,0,0,1,0,0),this.autoClear&&(b?c.clearRect(b.x,b.y,b.width,b.height):c.clearRect(0,0,this.canvas.width+1,this.canvas.height+1)),c.save(),this.drawRect&&(c.beginPath(),c.rect(b.x,b.y,b.width,b.height),c.clip()),this.updateContext(c),this.draw(c,!1),c.restore(),this.dispatchEvent("drawend")}},b.tick=function(a){if(this.tickEnabled&&this.dispatchEvent("tickstart",!1,!0)!==!1){var b=new createjs.Event("tick");if(a)for(var c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);this._tick(b),this.dispatchEvent("tickend")}},b.handleEvent=function(a){"tick"==a.type&&this.update(a)},b.clear=function(){if(this.canvas){var a=this.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0),a.clearRect(0,0,this.canvas.width+1,this.canvas.height+1)}},b.toDataURL=function(a,b){var c,d=this.canvas.getContext("2d"),e=this.canvas.width,f=this.canvas.height;if(a){c=d.getImageData(0,0,e,f);var g=d.globalCompositeOperation;d.globalCompositeOperation="destination-over",d.fillStyle=a,d.fillRect(0,0,e,f)}var h=this.canvas.toDataURL(b||"image/png");return a&&(d.putImageData(c,0,0),d.globalCompositeOperation=g),h},b.enableMouseOver=function(a){if(this._mouseOverIntervalID&&(clearInterval(this._mouseOverIntervalID),this._mouseOverIntervalID=null,0==a&&this._testMouseOver(!0)),null==a)a=20;else if(0>=a)return;var b=this;this._mouseOverIntervalID=setInterval(function(){b._testMouseOver()},1e3/Math.min(50,a))},b.enableDOMEvents=function(a){null==a&&(a=!0);var b,c,d=this._eventListeners;if(!a&&d){for(b in d)c=d[b],c.t.removeEventListener(b,c.f,!1);this._eventListeners=null}else if(a&&!d&&this.canvas){var e=window.addEventListener?window:document,f=this;d=this._eventListeners={},d.mouseup={t:e,f:function(a){f._handleMouseUp(a)}},d.mousemove={t:e,f:function(a){f._handleMouseMove(a)}},d.dblclick={t:this.canvas,f:function(a){f._handleDoubleClick(a)}},d.mousedown={t:this.canvas,f:function(a){f._handleMouseDown(a)}};for(b in d)c=d[b],c.t.addEventListener(b,c.f,!1)}},b.clone=function(){throw"Stage cannot be cloned."},b.toString=function(){return"[Stage (name="+this.name+")]"},b._getElementRect=function(a){var b;try{b=a.getBoundingClientRect()}catch(c){b={top:a.offsetTop,left:a.offsetLeft,width:a.offsetWidth,height:a.offsetHeight}}var d=(window.pageXOffset||document.scrollLeft||0)-(document.clientLeft||document.body.clientLeft||0),e=(window.pageYOffset||document.scrollTop||0)-(document.clientTop||document.body.clientTop||0),f=window.getComputedStyle?getComputedStyle(a,null):a.currentStyle,g=parseInt(f.paddingLeft)+parseInt(f.borderLeftWidth),h=parseInt(f.paddingTop)+parseInt(f.borderTopWidth),i=parseInt(f.paddingRight)+parseInt(f.borderRightWidth),j=parseInt(f.paddingBottom)+parseInt(f.borderBottomWidth);return{left:b.left+d+g,right:b.right+d-i,top:b.top+e+h,bottom:b.bottom+e-j}},b._getPointerData=function(a){var b=this._pointerData[a];return b||(b=this._pointerData[a]={x:0,y:0}),b},b._handleMouseMove=function(a){a||(a=window.event),this._handlePointerMove(-1,a,a.pageX,a.pageY)},b._handlePointerMove=function(a,b,c,d,e){if((!this._prevStage||void 0!==e)&&this.canvas){var f=this._nextStage,g=this._getPointerData(a),h=g.inBounds;this._updatePointerPosition(a,b,c,d),(h||g.inBounds||this.mouseMoveOutside)&&(-1===a&&g.inBounds==!h&&this._dispatchMouseEvent(this,h?"mouseleave":"mouseenter",!1,a,g,b),this._dispatchMouseEvent(this,"stagemousemove",!1,a,g,b),this._dispatchMouseEvent(g.target,"pressmove",!0,a,g,b)),f&&f._handlePointerMove(a,b,c,d,null)}},b._updatePointerPosition=function(a,b,c,d){var e=this._getElementRect(this.canvas);c-=e.left,d-=e.top;var f=this.canvas.width,g=this.canvas.height;c/=(e.right-e.left)/f,d/=(e.bottom-e.top)/g;var h=this._getPointerData(a);(h.inBounds=c>=0&&d>=0&&f-1>=c&&g-1>=d)?(h.x=c,h.y=d):this.mouseMoveOutside&&(h.x=0>c?0:c>f-1?f-1:c,h.y=0>d?0:d>g-1?g-1:d),h.posEvtObj=b,h.rawX=c,h.rawY=d,(a===this._primaryPointerID||-1===a)&&(this.mouseX=h.x,this.mouseY=h.y,this.mouseInBounds=h.inBounds)},b._handleMouseUp=function(a){this._handlePointerUp(-1,a,!1)},b._handlePointerUp=function(a,b,c,d){var e=this._nextStage,f=this._getPointerData(a);if(!this._prevStage||void 0!==d){var g=null,h=f.target;d||!h&&!e||(g=this._getObjectsUnderPoint(f.x,f.y,null,!0)),f.down&&(this._dispatchMouseEvent(this,"stagemouseup",!1,a,f,b,g),f.down=!1),g==h&&this._dispatchMouseEvent(h,"click",!0,a,f,b),this._dispatchMouseEvent(h,"pressup",!0,a,f,b),c?(a==this._primaryPointerID&&(this._primaryPointerID=null),delete this._pointerData[a]):f.target=null,e&&e._handlePointerUp(a,b,c,d||g&&this)}},b._handleMouseDown=function(a){this._handlePointerDown(-1,a,a.pageX,a.pageY)},b._handlePointerDown=function(a,b,c,d,e){this.preventSelection&&b.preventDefault(),(null==this._primaryPointerID||-1===a)&&(this._primaryPointerID=a),null!=d&&this._updatePointerPosition(a,b,c,d);var f=null,g=this._nextStage,h=this._getPointerData(a);e||(f=h.target=this._getObjectsUnderPoint(h.x,h.y,null,!0)),h.inBounds&&(this._dispatchMouseEvent(this,"stagemousedown",!1,a,h,b,f),h.down=!0),this._dispatchMouseEvent(f,"mousedown",!0,a,h,b),g&&g._handlePointerDown(a,b,c,d,e||f&&this)},b._testMouseOver=function(a,b,c){if(!this._prevStage||void 0!==b){var d=this._nextStage;if(!this._mouseOverIntervalID)return void(d&&d._testMouseOver(a,b,c));var e=this._getPointerData(-1);if(e&&(a||this.mouseX!=this._mouseOverX||this.mouseY!=this._mouseOverY||!this.mouseInBounds)){var f,g,h,i=e.posEvtObj,j=c||i&&i.target==this.canvas,k=null,l=-1,m="";!b&&(a||this.mouseInBounds&&j)&&(k=this._getObjectsUnderPoint(this.mouseX,this.mouseY,null,!0),this._mouseOverX=this.mouseX,this._mouseOverY=this.mouseY);var n=this._mouseOverTarget||[],o=n[n.length-1],p=this._mouseOverTarget=[];for(f=k;f;)p.unshift(f),m||(m=f.cursor),f=f.parent;for(this.canvas.style.cursor=m,!b&&c&&(c.canvas.style.cursor=m),g=0,h=p.length;h>g&&p[g]==n[g];g++)l=g;for(o!=k&&this._dispatchMouseEvent(o,"mouseout",!0,-1,e,i,k),g=n.length-1;g>l;g--)this._dispatchMouseEvent(n[g],"rollout",!1,-1,e,i,k);for(g=p.length-1;g>l;g--)this._dispatchMouseEvent(p[g],"rollover",!1,-1,e,i,o);o!=k&&this._dispatchMouseEvent(k,"mouseover",!0,-1,e,i,o),d&&d._testMouseOver(a,b||k&&this,c||j&&this)}}},b._handleDoubleClick=function(a,b){var c=null,d=this._nextStage,e=this._getPointerData(-1);b||(c=this._getObjectsUnderPoint(e.x,e.y,null,!0),this._dispatchMouseEvent(c,"dblclick",!0,-1,e,a)),d&&d._handleDoubleClick(a,b||c&&this)},b._dispatchMouseEvent=function(a,b,c,d,e,f,g){if(a&&(c||a.hasEventListener(b))){var h=new createjs.MouseEvent(b,c,!1,e.x,e.y,f,d,d===this._primaryPointerID||-1===d,e.rawX,e.rawY,g);a.dispatchEvent(h)}},createjs.Stage=createjs.promote(a,"Container")}(),this.createjs=this.createjs||{},function(){function a(a){this.DisplayObject_constructor(),"string"==typeof a?(this.image=document.createElement("img"),this.image.src=a):this.image=a,this.sourceRect=null}var b=createjs.extend(a,createjs.DisplayObject);b.initialize=a,b.isVisible=function(){var a=this.image,b=this.cacheCanvas||a&&(a.naturalWidth||a.getContext||a.readyState>=2);return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&b)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b)||!this.image)return!0;var c=this.image,d=this.sourceRect;if(d){var e=d.x,f=d.y,g=e+d.width,h=f+d.height,i=0,j=0,k=c.width,l=c.height;0>e&&(i-=e,e=0),g>k&&(g=k),0>f&&(j-=f,f=0),h>l&&(h=l),a.drawImage(c,e,f,g-e,h-f,i,j,g-e,h-f)}else a.drawImage(c,0,0);return!0},b.getBounds=function(){var a=this.DisplayObject_getBounds();if(a)return a;var b=this.image,c=this.sourceRect||b,d=b&&(b.naturalWidth||b.getContext||b.readyState>=2);return d?this._rectangle.setValues(0,0,c.width,c.height):null},b.clone=function(){var b=new a(this.image);return this.sourceRect&&(b.sourceRect=this.sourceRect.clone()),this._cloneProps(b),b},b.toString=function(){return"[Bitmap (name="+this.name+")]"},createjs.Bitmap=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b){this.DisplayObject_constructor(),this.currentFrame=0,this.currentAnimation=null,this.paused=!0,this.spriteSheet=a,this.currentAnimationFrame=0,this.framerate=0,this._animation=null,this._currentFrame=null,this._skipAdvance=!1,null!=b&&this.gotoAndPlay(b)}var b=createjs.extend(a,createjs.DisplayObject);b.initialize=a,b.isVisible=function(){var a=this.cacheCanvas||this.spriteSheet.complete;return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b))return!0;this._normalizeFrame();var c=this.spriteSheet.getFrame(0|this._currentFrame);if(!c)return!1;var d=c.rect;return d.width&&d.height&&a.drawImage(c.image,d.x,d.y,d.width,d.height,-c.regX,-c.regY,d.width,d.height),!0},b.play=function(){this.paused=!1},b.stop=function(){this.paused=!0},b.gotoAndPlay=function(a){this.paused=!1,this._skipAdvance=!0,this._goto(a)},b.gotoAndStop=function(a){this.paused=!0,this._goto(a)},b.advance=function(a){var b=this.framerate||this.spriteSheet.framerate,c=b&&null!=a?a/(1e3/b):1;this._normalizeFrame(c)},b.getBounds=function(){return this.DisplayObject_getBounds()||this.spriteSheet.getFrameBounds(this.currentFrame,this._rectangle)},b.clone=function(){return this._cloneProps(new a(this.spriteSheet))},b.toString=function(){return"[Sprite (name="+this.name+")]"},b._cloneProps=function(a){return this.DisplayObject__cloneProps(a),a.currentFrame=this.currentFrame,a.currentAnimation=this.currentAnimation,a.paused=this.paused,a.currentAnimationFrame=this.currentAnimationFrame,a.framerate=this.framerate,a._animation=this._animation,a._currentFrame=this._currentFrame,a._skipAdvance=this._skipAdvance,a},b._tick=function(a){this.paused||(this._skipAdvance||this.advance(a&&a.delta),this._skipAdvance=!1),this.DisplayObject__tick(a)},b._normalizeFrame=function(a){a=a||0;var b,c=this._animation,d=this.paused,e=this._currentFrame;if(c){var f=c.speed||1,g=this.currentAnimationFrame;if(b=c.frames.length,g+a*f>=b){var h=c.next;if(this._dispatchAnimationEnd(c,e,d,h,b-1))return;if(h)return this._goto(h,a-(b-g)/f);this.paused=!0,g=c.frames.length-1}else g+=a*f;this.currentAnimationFrame=g,this._currentFrame=c.frames[0|g]}else if(e=this._currentFrame+=a,b=this.spriteSheet.getNumFrames(),e>=b&&b>0&&!this._dispatchAnimationEnd(c,e,d,b-1)&&(this._currentFrame-=b)>=b)return this._normalizeFrame();e=0|this._currentFrame,this.currentFrame!=e&&(this.currentFrame=e,this.dispatchEvent("change"))},b._dispatchAnimationEnd=function(a,b,c,d,e){var f=a?a.name:null;if(this.hasEventListener("animationend")){var g=new createjs.Event("animationend");g.name=f,g.next=d,this.dispatchEvent(g)}var h=this._animation!=a||this._currentFrame!=b;return h||c||!this.paused||(this.currentAnimationFrame=e,h=!0),h},b._goto=function(a,b){if(this.currentAnimationFrame=0,isNaN(a)){var c=this.spriteSheet.getAnimation(a);c&&(this._animation=c,this.currentAnimation=a,this._normalizeFrame(b))}else this.currentAnimation=this._animation=null,this._currentFrame=a,this._normalizeFrame()},createjs.Sprite=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.DisplayObject_constructor(),this.graphics=a?a:new createjs.Graphics}var b=createjs.extend(a,createjs.DisplayObject);b.isVisible=function(){var a=this.cacheCanvas||this.graphics&&!this.graphics.isEmpty();return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){return this.DisplayObject_draw(a,b)?!0:(this.graphics.draw(a,this),!0)},b.clone=function(b){var c=b&&this.graphics?this.graphics.clone():this.graphics;return this._cloneProps(new a(c))},b.toString=function(){return"[Shape (name="+this.name+")]"},createjs.Shape=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c){this.DisplayObject_constructor(),this.text=a,this.font=b,this.color=c,this.textAlign="left",this.textBaseline="top",this.maxWidth=null,this.outline=0,this.lineHeight=0,this.lineWidth=null}var b=createjs.extend(a,createjs.DisplayObject),c=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");c.getContext&&(a._workingContext=c.getContext("2d"),c.width=c.height=1),a.H_OFFSETS={start:0,left:0,center:-.5,end:-1,right:-1},a.V_OFFSETS={top:0,hanging:-.01,middle:-.4,alphabetic:-.8,ideographic:-.85,bottom:-1},b.isVisible=function(){var a=this.cacheCanvas||null!=this.text&&""!==this.text;return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b))return!0;var c=this.color||"#000";return this.outline?(a.strokeStyle=c,a.lineWidth=1*this.outline):a.fillStyle=c,this._drawText(this._prepContext(a)),!0},b.getMeasuredWidth=function(){return this._getMeasuredWidth(this.text)},b.getMeasuredLineHeight=function(){return 1.2*this._getMeasuredWidth("M")},b.getMeasuredHeight=function(){return this._drawText(null,{}).height},b.getBounds=function(){var b=this.DisplayObject_getBounds();if(b)return b;if(null==this.text||""===this.text)return null;var c=this._drawText(null,{}),d=this.maxWidth&&this.maxWidthj;j++){var l=i[j],m=null;if(null!=this.lineWidth&&(m=b.measureText(l).width)>this.lineWidth){var n=l.split(/(\s)/);l=n[0],m=b.measureText(l).width;for(var o=1,p=n.length;p>o;o+=2){var q=b.measureText(n[o]+n[o+1]).width;m+q>this.lineWidth?(e&&this._drawTextLine(b,l,h*f),d&&d.push(l),m>g&&(g=m),l=n[o+1],m=b.measureText(l).width,h++):(l+=n[o]+n[o+1],m+=q)}}e&&this._drawTextLine(b,l,h*f),d&&d.push(l),c&&null==m&&(m=b.measureText(l).width),m>g&&(g=m),h++}return c&&(c.width=g,c.height=h*f),e||b.restore(),c},b._drawTextLine=function(a,b,c){this.outline?a.strokeText(b,0,c,this.maxWidth||65535):a.fillText(b,0,c,this.maxWidth||65535)},b._getMeasuredWidth=function(b){var c=a._workingContext;c.save();var d=this._prepContext(c).measureText(b).width;return c.restore(),d},createjs.Text=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b){this.Container_constructor(),this.text=a||"",this.spriteSheet=b,this.lineHeight=0,this.letterSpacing=0,this.spaceWidth=0,this._oldProps={text:0,spriteSheet:0,lineHeight:0,letterSpacing:0,spaceWidth:0}}var b=createjs.extend(a,createjs.Container);a.maxPoolSize=100,a._spritePool=[],b.draw=function(a,b){this.DisplayObject_draw(a,b)||(this._updateText(),this.Container_draw(a,b))},b.getBounds=function(){return this._updateText(),this.Container_getBounds()},b.isVisible=function(){var a=this.cacheCanvas||this.spriteSheet&&this.spriteSheet.complete&&this.text;return!!(this.visible&&this.alpha>0&&0!==this.scaleX&&0!==this.scaleY&&a)},b.clone=function(){return this._cloneProps(new a(this.text,this.spriteSheet))},b.addChild=b.addChildAt=b.removeChild=b.removeChildAt=b.removeAllChildren=function(){},b._cloneProps=function(a){return this.Container__cloneProps(a),a.lineHeight=this.lineHeight,a.letterSpacing=this.letterSpacing,a.spaceWidth=this.spaceWidth,a},b._getFrameIndex=function(a,b){var c,d=b.getAnimation(a);return d||(a!=(c=a.toUpperCase())||a!=(c=a.toLowerCase())||(c=null),c&&(d=b.getAnimation(c))),d&&d.frames[0]},b._getFrame=function(a,b){var c=this._getFrameIndex(a,b);return null==c?c:b.getFrame(c)},b._getLineHeight=function(a){var b=this._getFrame("1",a)||this._getFrame("T",a)||this._getFrame("L",a)||a.getFrame(0);return b?b.rect.height:1},b._getSpaceWidth=function(a){var b=this._getFrame("1",a)||this._getFrame("l",a)||this._getFrame("e",a)||this._getFrame("a",a)||a.getFrame(0);return b?b.rect.width:1},b._updateText=function(){var b,c=0,d=0,e=this._oldProps,f=!1,g=this.spaceWidth,h=this.lineHeight,i=this.spriteSheet,j=a._spritePool,k=this.children,l=0,m=k.length;for(var n in e)e[n]!=this[n]&&(e[n]=this[n],f=!0);if(f){var o=!!this._getFrame(" ",i);o||g||(g=this._getSpaceWidth(i)),h||(h=this._getLineHeight(i));for(var p=0,q=this.text.length;q>p;p++){var r=this.text.charAt(p);if(" "!=r||o)if("\n"!=r&&"\r"!=r){var s=this._getFrameIndex(r,i);null!=s&&(m>l?b=k[l]:(k.push(b=j.length?j.pop():new createjs.Sprite),b.parent=this,m++),b.spriteSheet=i,b.gotoAndStop(s),b.x=c,b.y=d,l++,c+=b.getBounds().width+this.letterSpacing)}else"\r"==r&&"\n"==this.text.charAt(p+1)&&p++,c=0,d+=h;else c+=g}for(;m>l;)j.push(b=k.pop()),b.parent=null,m--;j.length>a.maxPoolSize&&(j.length=a.maxPoolSize)}},createjs.BitmapText=createjs.promote(a,"Container")}(),this.createjs=this.createjs||{},function(){"use strict";function a(){throw"SpriteSheetUtils cannot be instantiated"}var b=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");b.getContext&&(a._workingCanvas=b,a._workingContext=b.getContext("2d"),b.width=b.height=1),a.addFlippedFrames=function(b,c,d,e){if(c||d||e){var f=0;c&&a._flip(b,++f,!0,!1),d&&a._flip(b,++f,!1,!0),e&&a._flip(b,++f,!0,!0)}},a.extractFrame=function(b,c){isNaN(c)&&(c=b.getAnimation(c).frames[0]);var d=b.getFrame(c);if(!d)return null;var e=d.rect,f=a._workingCanvas;f.width=e.width,f.height=e.height,a._workingContext.drawImage(d.image,e.x,e.y,e.width,e.height,0,0,e.width,e.height);var g=document.createElement("img");return g.src=f.toDataURL("image/png"),g},a.mergeAlpha=function(a,b,c){c||(c=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")),c.width=Math.max(b.width,a.width),c.height=Math.max(b.height,a.height);var d=c.getContext("2d");return d.save(),d.drawImage(a,0,0),d.globalCompositeOperation="destination-in",d.drawImage(b,0,0),d.restore(),c},a._flip=function(b,c,d,e){for(var f=b._images,g=a._workingCanvas,h=a._workingContext,i=f.length/c,j=0;i>j;j++){var k=f[j];k.__tmp=j,h.setTransform(1,0,0,1,0,0),h.clearRect(0,0,g.width+1,g.height+1),g.width=k.width,g.height=k.height,h.setTransform(d?-1:1,0,0,e?-1:1,d?k.width:0,e?k.height:0),h.drawImage(k,0,0); -var l=document.createElement("img");l.src=g.toDataURL("image/png"),l.width=k.width,l.height=k.height,f.push(l)}var m=b._frames,n=m.length/c;for(j=0;n>j;j++){k=m[j];var o=k.rect.clone();l=f[k.image.__tmp+i*c];var p={image:l,rect:o,regX:k.regX,regY:k.regY};d&&(o.x=l.width-o.x-o.width,p.regX=o.width-k.regX),e&&(o.y=l.height-o.y-o.height,p.regY=o.height-k.regY),m.push(p)}var q="_"+(d?"h":"")+(e?"v":""),r=b._animations,s=b._data,t=r.length/c;for(j=0;t>j;j++){var u=r[j];k=s[u];var v={name:u+q,speed:k.speed,next:k.next,frames:[]};k.next&&(v.next+=q),m=k.frames;for(var w=0,x=m.length;x>w;w++)v.frames.push(m[w]+n*c);s[v.name]=v,r.push(v.name)}},createjs.SpriteSheetUtils=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(){this.EventDispatcher_constructor(),this.maxWidth=2048,this.maxHeight=2048,this.spriteSheet=null,this.scale=1,this.padding=1,this.timeSlice=.3,this.progress=-1,this._frames=[],this._animations={},this._data=null,this._nextFrameIndex=0,this._index=0,this._timerID=null,this._scale=1}var b=createjs.extend(a,createjs.EventDispatcher);a.ERR_DIMENSIONS="frame dimensions exceed max spritesheet dimensions",a.ERR_RUNNING="a build is already running",b.addFrame=function(b,c,d,e,f){if(this._data)throw a.ERR_RUNNING;var g=c||b.bounds||b.nominalBounds;return!g&&b.getBounds&&(g=b.getBounds()),g?(d=d||1,this._frames.push({source:b,sourceRect:g,scale:d,funct:e,data:f,index:this._frames.length,height:g.height*d})-1):null},b.addAnimation=function(b,c,d,e){if(this._data)throw a.ERR_RUNNING;this._animations[b]={frames:c,next:d,frequency:e}},b.addMovieClip=function(b,c,d,e,f,g){if(this._data)throw a.ERR_RUNNING;var h=b.frameBounds,i=c||b.bounds||b.nominalBounds;if(!i&&b.getBounds&&(i=b.getBounds()),i||h){var j,k,l=this._frames.length,m=b.timeline.duration;for(j=0;m>j;j++){var n=h&&h[j]?h[j]:i;this.addFrame(b,n,d,this._setupMovieClipFrame,{i:j,f:e,d:f})}var o=b.timeline._labels,p=[];for(var q in o)p.push({index:o[q],label:q});if(p.length)for(p.sort(function(a,b){return a.index-b.index}),j=0,k=p.length;k>j;j++){for(var r=p[j].label,s=l+p[j].index,t=l+(j==k-1?m:p[j+1].index),u=[],v=s;t>v;v++)u.push(v);(!g||(r=g(r,b,s,t)))&&this.addAnimation(r,u,!0)}}},b.build=function(){if(this._data)throw a.ERR_RUNNING;for(this._startBuild();this._drawNext(););return this._endBuild(),this.spriteSheet},b.buildAsync=function(b){if(this._data)throw a.ERR_RUNNING;this.timeSlice=b,this._startBuild();var c=this;this._timerID=setTimeout(function(){c._run()},50-50*Math.max(.01,Math.min(.99,this.timeSlice||.3)))},b.stopAsync=function(){clearTimeout(this._timerID),this._data=null},b.clone=function(){throw"SpriteSheetBuilder cannot be cloned."},b.toString=function(){return"[SpriteSheetBuilder]"},b._startBuild=function(){var b=this.padding||0;this.progress=0,this.spriteSheet=null,this._index=0,this._scale=this.scale;var c=[];this._data={images:[],frames:c,animations:this._animations};var d=this._frames.slice();if(d.sort(function(a,b){return a.height<=b.height?-1:1}),d[d.length-1].height+2*b>this.maxHeight)throw a.ERR_DIMENSIONS;for(var e=0,f=0,g=0;d.length;){var h=this._fillRow(d,e,g,c,b);if(h.w>f&&(f=h.w),e+=h.h,!h.h||!d.length){var i=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");i.width=this._getSize(f,this.maxWidth),i.height=this._getSize(e,this.maxHeight),this._data.images[g]=i,h.h||(f=e=0,g++)}}},b._setupMovieClipFrame=function(a,b){var c=a.actionsEnabled;a.actionsEnabled=!1,a.gotoAndStop(b.i),a.actionsEnabled=c,b.f&&b.f(a,b.d,b.i)},b._getSize=function(a,b){for(var c=4;Math.pow(2,++c)=0;l--){var m=b[l],n=this._scale*m.scale,o=m.sourceRect,p=m.source,q=Math.floor(n*o.x-f),r=Math.floor(n*o.y-f),s=Math.ceil(n*o.height+2*f),t=Math.ceil(n*o.width+2*f);if(t>g)throw a.ERR_DIMENSIONS;s>i||j+t>g||(m.img=d,m.rect=new createjs.Rectangle(j,c,t,s),k=k||s,b.splice(l,1),e[m.index]=[j,c,t,s,d,Math.round(-q+n*p.regX-f),Math.round(-r+n*p.regY-f)],j+=t)}return{w:j,h:k}},b._endBuild=function(){this.spriteSheet=new createjs.SpriteSheet(this._data),this._data=null,this.progress=1,this.dispatchEvent("complete")},b._run=function(){for(var a=50*Math.max(.01,Math.min(.99,this.timeSlice||.3)),b=(new Date).getTime()+a,c=!1;b>(new Date).getTime();)if(!this._drawNext()){c=!0;break}if(c)this._endBuild();else{var d=this;this._timerID=setTimeout(function(){d._run()},50-a)}var e=this.progress=this._index/this._frames.length;if(this.hasEventListener("progress")){var f=new createjs.Event("progress");f.progress=e,this.dispatchEvent(f)}},b._drawNext=function(){var a=this._frames[this._index],b=a.scale*this._scale,c=a.rect,d=a.sourceRect,e=this._data.images[a.img],f=e.getContext("2d");return a.funct&&a.funct(a.source,a.data),f.save(),f.beginPath(),f.rect(c.x,c.y,c.width,c.height),f.clip(),f.translate(Math.ceil(c.x-d.x*b),Math.ceil(c.y-d.y*b)),f.scale(b,b),a.source.draw(f),f.restore(),++this._indexa)&&(a=0),(isNaN(b)||0>b)&&(b=0),(isNaN(c)||1>c)&&(c=1),this.blurX=0|a,this.blurY=0|b,this.quality=0|c}var b=createjs.extend(a,createjs.Filter);a.MUL_TABLE=[1,171,205,293,57,373,79,137,241,27,391,357,41,19,283,265,497,469,443,421,25,191,365,349,335,161,155,149,9,278,269,261,505,245,475,231,449,437,213,415,405,395,193,377,369,361,353,345,169,331,325,319,313,307,301,37,145,285,281,69,271,267,263,259,509,501,493,243,479,118,465,459,113,446,55,435,429,423,209,413,51,403,199,393,97,3,379,375,371,367,363,359,355,351,347,43,85,337,333,165,327,323,5,317,157,311,77,305,303,75,297,294,73,289,287,71,141,279,277,275,68,135,67,133,33,262,260,129,511,507,503,499,495,491,61,121,481,477,237,235,467,232,115,457,227,451,7,445,221,439,218,433,215,427,425,211,419,417,207,411,409,203,202,401,399,396,197,49,389,387,385,383,95,189,47,187,93,185,23,183,91,181,45,179,89,177,11,175,87,173,345,343,341,339,337,21,167,83,331,329,327,163,81,323,321,319,159,79,315,313,39,155,309,307,153,305,303,151,75,299,149,37,295,147,73,291,145,289,287,143,285,71,141,281,35,279,139,69,275,137,273,17,271,135,269,267,133,265,33,263,131,261,130,259,129,257,1],a.SHG_TABLE=[0,9,10,11,9,12,10,11,12,9,13,13,10,9,13,13,14,14,14,14,10,13,14,14,14,13,13,13,9,14,14,14,15,14,15,14,15,15,14,15,15,15,14,15,15,15,15,15,14,15,15,15,15,15,15,12,14,15,15,13,15,15,15,15,16,16,16,15,16,14,16,16,14,16,13,16,16,16,15,16,13,16,15,16,14,9,16,16,16,16,16,16,16,16,16,13,14,16,16,15,16,16,10,16,15,16,14,16,16,14,16,16,14,16,16,14,15,16,16,16,14,15,14,15,13,16,16,15,17,17,17,17,17,17,14,15,17,17,16,16,17,16,15,17,16,17,11,17,16,17,16,17,16,17,17,16,17,17,16,17,17,16,16,17,17,17,16,14,17,17,17,17,15,16,14,16,15,16,13,16,15,16,14,16,15,16,12,16,15,16,17,17,17,17,17,13,16,15,17,17,17,16,15,17,17,17,16,15,17,17,14,16,17,17,16,17,17,16,15,17,16,14,17,16,15,17,16,17,17,16,17,15,16,17,14,17,16,15,17,16,17,13,17,16,17,17,16,17,14,17,16,17,16,17,16,17,9],b.getBounds=function(a){var b=0|this.blurX,c=0|this.blurY;if(0>=b&&0>=c)return a;var d=Math.pow(this.quality,.2);return(a||new createjs.Rectangle).pad(b*d+1,c*d+1,b*d+1,c*d+1)},b.clone=function(){return new a(this.blurX,this.blurY,this.quality)},b.toString=function(){return"[BlurFilter]"},b._applyFilter=function(b){var c=this.blurX>>1;if(isNaN(c)||0>c)return!1;var d=this.blurY>>1;if(isNaN(d)||0>d)return!1;if(0==c&&0==d)return!1;var e=this.quality;(isNaN(e)||1>e)&&(e=1),e|=0,e>3&&(e=3),1>e&&(e=1);var f=b.data,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=c+c+1|0,w=d+d+1|0,x=0|b.width,y=0|b.height,z=x-1|0,A=y-1|0,B=c+1|0,C=d+1|0,D={r:0,b:0,g:0,a:0},E=D;for(i=1;v>i;i++)E=E.n={r:0,b:0,g:0,a:0};E.n=D;var F={r:0,b:0,g:0,a:0},G=F;for(i=1;w>i;i++)G=G.n={r:0,b:0,g:0,a:0};G.n=F;for(var H=null,I=0|a.MUL_TABLE[c],J=0|a.SHG_TABLE[c],K=0|a.MUL_TABLE[d],L=0|a.SHG_TABLE[d];e-->0;){m=l=0;var M=I,N=J;for(h=y;--h>-1;){for(n=B*(r=f[0|l]),o=B*(s=f[l+1|0]),p=B*(t=f[l+2|0]),q=B*(u=f[l+3|0]),E=D,i=B;--i>-1;)E.r=r,E.g=s,E.b=t,E.a=u,E=E.n;for(i=1;B>i;i++)j=l+((i>z?z:i)<<2)|0,n+=E.r=f[j],o+=E.g=f[j+1],p+=E.b=f[j+2],q+=E.a=f[j+3],E=E.n;for(H=D,g=0;x>g;g++)f[l++]=n*M>>>N,f[l++]=o*M>>>N,f[l++]=p*M>>>N,f[l++]=q*M>>>N,j=m+((j=g+c+1)g;g++){for(l=g<<2|0,n=C*(r=f[l])|0,o=C*(s=f[l+1|0])|0,p=C*(t=f[l+2|0])|0,q=C*(u=f[l+3|0])|0,G=F,i=0;C>i;i++)G.r=r,G.g=s,G.b=t,G.a=u,G=G.n;for(k=x,i=1;d>=i;i++)l=k+g<<2,n+=G.r=f[l],o+=G.g=f[l+1],p+=G.b=f[l+2],q+=G.a=f[l+3],G=G.n,A>i&&(k+=x);if(l=g,H=F,e>0)for(h=0;y>h;h++)j=l<<2,f[j+3]=u=q*M>>>N,u>0?(f[j]=n*M>>>N,f[j+1]=o*M>>>N,f[j+2]=p*M>>>N):f[j]=f[j+1]=f[j+2]=0,j=g+((j=h+C)h;h++)j=l<<2,f[j+3]=u=q*M>>>N,u>0?(u=255/u,f[j]=(n*M>>>N)*u,f[j+1]=(o*M>>>N)*u,f[j+2]=(p*M>>>N)*u):f[j]=f[j+1]=f[j+2]=0,j=g+((j=h+C)d;d+=4)b[d+3]=c[d]||0;return!0},b._prepAlphaMap=function(){if(!this.alphaMap)return!1;if(this.alphaMap==this._alphaMap&&this._mapData)return!0;this._mapData=null;var a,b=this._alphaMap=this.alphaMap,c=b;b instanceof HTMLCanvasElement?a=c.getContext("2d"):(c=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas"),c.width=b.width,c.height=b.height,a=c.getContext("2d"),a.drawImage(b,0,0));try{var d=a.getImageData(0,0,b.width,b.height)}catch(e){return!1}return this._mapData=d.data,!0},createjs.AlphaMapFilter=createjs.promote(a,"Filter")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.mask=a}var b=createjs.extend(a,createjs.Filter);b.applyFilter=function(a,b,c,d,e,f,g,h){return this.mask?(f=f||a,null==g&&(g=b),null==h&&(h=c),f.save(),a!=f?!1:(f.globalCompositeOperation="destination-in",f.drawImage(this.mask,g,h),f.restore(),!0)):!0},b.clone=function(){return new a(this.mask)},b.toString=function(){return"[AlphaMaskFilter]"},createjs.AlphaMaskFilter=createjs.promote(a,"Filter")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e,f,g,h){this.redMultiplier=null!=a?a:1,this.greenMultiplier=null!=b?b:1,this.blueMultiplier=null!=c?c:1,this.alphaMultiplier=null!=d?d:1,this.redOffset=e||0,this.greenOffset=f||0,this.blueOffset=g||0,this.alphaOffset=h||0}var b=createjs.extend(a,createjs.Filter);b.toString=function(){return"[ColorFilter]"},b.clone=function(){return new a(this.redMultiplier,this.greenMultiplier,this.blueMultiplier,this.alphaMultiplier,this.redOffset,this.greenOffset,this.blueOffset,this.alphaOffset)},b._applyFilter=function(a){for(var b=a.data,c=b.length,d=0;c>d;d+=4)b[d]=b[d]*this.redMultiplier+this.redOffset,b[d+1]=b[d+1]*this.greenMultiplier+this.greenOffset,b[d+2]=b[d+2]*this.blueMultiplier+this.blueOffset,b[d+3]=b[d+3]*this.alphaMultiplier+this.alphaOffset;return!0},createjs.ColorFilter=createjs.promote(a,"Filter")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d){this.setColor(a,b,c,d)}var b=a.prototype;a.DELTA_INDEX=[0,.01,.02,.04,.05,.06,.07,.08,.1,.11,.12,.14,.15,.16,.17,.18,.2,.21,.22,.24,.25,.27,.28,.3,.32,.34,.36,.38,.4,.42,.44,.46,.48,.5,.53,.56,.59,.62,.65,.68,.71,.74,.77,.8,.83,.86,.89,.92,.95,.98,1,1.06,1.12,1.18,1.24,1.3,1.36,1.42,1.48,1.54,1.6,1.66,1.72,1.78,1.84,1.9,1.96,2,2.12,2.25,2.37,2.5,2.62,2.75,2.87,3,3.2,3.4,3.6,3.8,4,4.3,4.7,4.9,5,5.5,6,6.5,6.8,7,7.3,7.5,7.8,8,8.4,8.7,9,9.4,9.6,9.8,10],a.IDENTITY_MATRIX=[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1],a.LENGTH=a.IDENTITY_MATRIX.length,b.setColor=function(a,b,c,d){return this.reset().adjustColor(a,b,c,d)},b.reset=function(){return this.copy(a.IDENTITY_MATRIX)},b.adjustColor=function(a,b,c,d){return this.adjustHue(d),this.adjustContrast(b),this.adjustBrightness(a),this.adjustSaturation(c)},b.adjustBrightness=function(a){return 0==a||isNaN(a)?this:(a=this._cleanValue(a,255),this._multiplyMatrix([1,0,0,0,a,0,1,0,0,a,0,0,1,0,a,0,0,0,1,0,0,0,0,0,1]),this)},b.adjustContrast=function(b){if(0==b||isNaN(b))return this;b=this._cleanValue(b,100);var c;return 0>b?c=127+b/100*127:(c=b%1,c=0==c?a.DELTA_INDEX[b]:a.DELTA_INDEX[b<<0]*(1-c)+a.DELTA_INDEX[(b<<0)+1]*c,c=127*c+127),this._multiplyMatrix([c/127,0,0,0,.5*(127-c),0,c/127,0,0,.5*(127-c),0,0,c/127,0,.5*(127-c),0,0,0,1,0,0,0,0,0,1]),this},b.adjustSaturation=function(a){if(0==a||isNaN(a))return this;a=this._cleanValue(a,100);var b=1+(a>0?3*a/100:a/100),c=.3086,d=.6094,e=.082;return this._multiplyMatrix([c*(1-b)+b,d*(1-b),e*(1-b),0,0,c*(1-b),d*(1-b)+b,e*(1-b),0,0,c*(1-b),d*(1-b),e*(1-b)+b,0,0,0,0,0,1,0,0,0,0,0,1]),this},b.adjustHue=function(a){if(0==a||isNaN(a))return this;a=this._cleanValue(a,180)/180*Math.PI;var b=Math.cos(a),c=Math.sin(a),d=.213,e=.715,f=.072;return this._multiplyMatrix([d+b*(1-d)+c*-d,e+b*-e+c*-e,f+b*-f+c*(1-f),0,0,d+b*-d+.143*c,e+b*(1-e)+.14*c,f+b*-f+c*-.283,0,0,d+b*-d+c*-(1-d),e+b*-e+c*e,f+b*(1-f)+c*f,0,0,0,0,0,1,0,0,0,0,0,1]),this},b.concat=function(b){return b=this._fixMatrix(b),b.length!=a.LENGTH?this:(this._multiplyMatrix(b),this)},b.clone=function(){return(new a).copy(this)},b.toArray=function(){for(var b=[],c=0,d=a.LENGTH;d>c;c++)b[c]=this[c];return b},b.copy=function(b){for(var c=a.LENGTH,d=0;c>d;d++)this[d]=b[d];return this},b.toString=function(){return"[ColorMatrix]"},b._multiplyMatrix=function(a){var b,c,d,e=[];for(b=0;5>b;b++){for(c=0;5>c;c++)e[c]=this[c+5*b];for(c=0;5>c;c++){var f=0;for(d=0;5>d;d++)f+=a[c+5*d]*e[d];this[c+5*b]=f}}},b._cleanValue=function(a,b){return Math.min(b,Math.max(-b,a))},b._fixMatrix=function(b){return b instanceof a&&(b=b.toArray()),b.lengtha.LENGTH&&(b=b.slice(0,a.LENGTH)),b},createjs.ColorMatrix=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.matrix=a}var b=createjs.extend(a,createjs.Filter);b.toString=function(){return"[ColorMatrixFilter]"},b.clone=function(){return new a(this.matrix)},b._applyFilter=function(a){for(var b,c,d,e,f=a.data,g=f.length,h=this.matrix,i=h[0],j=h[1],k=h[2],l=h[3],m=h[4],n=h[5],o=h[6],p=h[7],q=h[8],r=h[9],s=h[10],t=h[11],u=h[12],v=h[13],w=h[14],x=h[15],y=h[16],z=h[17],A=h[18],B=h[19],C=0;g>C;C+=4)b=f[C],c=f[C+1],d=f[C+2],e=f[C+3],f[C]=b*i+c*j+d*k+e*l+m,f[C+1]=b*n+c*o+d*p+e*q+r,f[C+2]=b*s+c*t+d*u+e*v+w,f[C+3]=b*x+c*y+d*z+e*A+B;return!0},createjs.ColorMatrixFilter=createjs.promote(a,"Filter")}(),this.createjs=this.createjs||{},function(){"use strict";function a(){throw"Touch cannot be instantiated"}a.isSupported=function(){return!!("ontouchstart"in window||window.navigator.msPointerEnabled&&window.navigator.msMaxTouchPoints>0||window.navigator.pointerEnabled&&window.navigator.maxTouchPoints>0)},a.enable=function(b,c,d){return b&&b.canvas&&a.isSupported()?b.__touch?!0:(b.__touch={pointers:{},multitouch:!c,preventDefault:!d,count:0},"ontouchstart"in window?a._IOS_enable(b):(window.navigator.msPointerEnabled||window.navigator.pointerEnabled)&&a._IE_enable(b),!0):!1},a.disable=function(b){b&&("ontouchstart"in window?a._IOS_disable(b):(window.navigator.msPointerEnabled||window.navigator.pointerEnabled)&&a._IE_disable(b),delete b.__touch)},a._IOS_enable=function(b){var c=b.canvas,d=b.__touch.f=function(c){a._IOS_handleEvent(b,c)};c.addEventListener("touchstart",d,!1),c.addEventListener("touchmove",d,!1),c.addEventListener("touchend",d,!1),c.addEventListener("touchcancel",d,!1)},a._IOS_disable=function(a){var b=a.canvas;if(b){var c=a.__touch.f;b.removeEventListener("touchstart",c,!1),b.removeEventListener("touchmove",c,!1),b.removeEventListener("touchend",c,!1),b.removeEventListener("touchcancel",c,!1)}},a._IOS_handleEvent=function(a,b){if(a){a.__touch.preventDefault&&b.preventDefault&&b.preventDefault();for(var c=b.changedTouches,d=b.type,e=0,f=c.length;f>e;e++){var g=c[e],h=g.identifier;g.target==a.canvas&&("touchstart"==d?this._handleStart(a,h,b,g.pageX,g.pageY):"touchmove"==d?this._handleMove(a,h,b,g.pageX,g.pageY):("touchend"==d||"touchcancel"==d)&&this._handleEnd(a,h,b))}}},a._IE_enable=function(b){var c=b.canvas,d=b.__touch.f=function(c){a._IE_handleEvent(b,c)};void 0===window.navigator.pointerEnabled?(c.addEventListener("MSPointerDown",d,!1),window.addEventListener("MSPointerMove",d,!1),window.addEventListener("MSPointerUp",d,!1),window.addEventListener("MSPointerCancel",d,!1),b.__touch.preventDefault&&(c.style.msTouchAction="none")):(c.addEventListener("pointerdown",d,!1),window.addEventListener("pointermove",d,!1),window.addEventListener("pointerup",d,!1),window.addEventListener("pointercancel",d,!1),b.__touch.preventDefault&&(c.style.touchAction="none")),b.__touch.activeIDs={}},a._IE_disable=function(a){var b=a.__touch.f;void 0===window.navigator.pointerEnabled?(window.removeEventListener("MSPointerMove",b,!1),window.removeEventListener("MSPointerUp",b,!1),window.removeEventListener("MSPointerCancel",b,!1),a.canvas&&a.canvas.removeEventListener("MSPointerDown",b,!1)):(window.removeEventListener("pointermove",b,!1),window.removeEventListener("pointerup",b,!1),window.removeEventListener("pointercancel",b,!1),a.canvas&&a.canvas.removeEventListener("pointerdown",b,!1))},a._IE_handleEvent=function(a,b){if(a){a.__touch.preventDefault&&b.preventDefault&&b.preventDefault();var c=b.type,d=b.pointerId,e=a.__touch.activeIDs;if("MSPointerDown"==c||"pointerdown"==c){if(b.srcElement!=a.canvas)return;e[d]=!0,this._handleStart(a,d,b,b.pageX,b.pageY)}else e[d]&&("MSPointerMove"==c||"pointermove"==c?this._handleMove(a,d,b,b.pageX,b.pageY):("MSPointerUp"==c||"MSPointerCancel"==c||"pointerup"==c||"pointercancel"==c)&&(delete e[d],this._handleEnd(a,d,b)))}},a._handleStart=function(a,b,c,d,e){var f=a.__touch;if(f.multitouch||!f.count){var g=f.pointers;g[b]||(g[b]=!0,f.count++,a._handlePointerDown(b,c,d,e))}},a._handleMove=function(a,b,c,d,e){a.__touch.pointers[b]&&a._handlePointerMove(b,c,d,e)},a._handleEnd=function(a,b,c){var d=a.__touch,e=d.pointers;e[b]&&(d.count--,a._handlePointerUp(b,c,!0),delete e[b])},createjs.Touch=a}(),this.createjs=this.createjs||{},function(){"use strict";var a=createjs.EaselJS=createjs.EaselJS||{};a.version="0.8.1",a.buildDate="Thu, 21 May 2015 16:17:39 GMT"}(); \ No newline at end of file +this.createjs=this.createjs||{},createjs.extend=function(a,b){"use strict";function c(){this.constructor=a}return c.prototype=b.prototype,a.prototype=new c},this.createjs=this.createjs||{},createjs.promote=function(a,b){"use strict";var c=a.prototype,d=Object.getPrototypeOf&&Object.getPrototypeOf(c)||c.__proto__;if(d){c[(b+="_")+"constructor"]=d.constructor;for(var e in d)c.hasOwnProperty(e)&&"function"==typeof d[e]&&(c[b+e]=d[e])}return a},this.createjs=this.createjs||{},createjs.indexOf=function(a,b){"use strict";for(var c=0,d=a.length;c=0&&!a.propagationStopped;g--)f[g]._dispatchEvent(a,1+(0==g));for(g=1;g=.97*(a._interval-1)&&a._tick()},a._handleRAF=function(){a._timerId=null,a._setupTick(),a._tick()},a._handleTimeout=function(){a._timerId=null,a._setupTick(),a._tick()},a._setupTick=function(){if(null==a._timerId){var b=a.timingMode||a.useRAF&&a.RAF_SYNCHED;if(b==a.RAF_SYNCHED||b==a.RAF){var c=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(c)return a._timerId=c(b==a.RAF?a._handleRAF:a._handleSynch),void(a._raf=!0)}a._raf=!1,a._timerId=setTimeout(a._handleTimeout,a._interval)}},a._tick=function(){var b=a.paused,c=a._getTime(),d=c-a._lastTime;if(a._lastTime=c,a._ticks++,b&&(a._pausedTicks++,a._pausedTime+=d),a.hasEventListener("tick")){var e=new createjs.Event("tick"),f=a.maxDelta;e.delta=f&&d>f?f:d,e.paused=b,e.time=c,e.runTime=c-a._pausedTime,a.dispatchEvent(e)}for(a._tickTimes.unshift(a._getTime()-c);a._tickTimes.length>100;)a._tickTimes.pop();for(a._times.unshift(c);a._times.length>100;)a._times.pop()};var b=window.performance&&(performance.now||performance.mozNow||performance.msNow||performance.oNow||performance.webkitNow);a._getTime=function(){return(b&&b.call(performance)||(new Date).getTime())-a._startTime},createjs.Ticker=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(){throw"UID cannot be instantiated"}a._nextID=0,a.get=function(){return a._nextID++},createjs.UID=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k){this.Event_constructor(a,b,c),this.stageX=d,this.stageY=e,this.rawX=null==i?d:i,this.rawY=null==j?e:j,this.nativeEvent=f,this.pointerID=g,this.primary=!!h,this.relatedTarget=k}var b=createjs.extend(a,createjs.Event);b._get_localX=function(){return this.currentTarget.globalToLocal(this.rawX,this.rawY).x},b._get_localY=function(){return this.currentTarget.globalToLocal(this.rawX,this.rawY).y},b._get_isTouch=function(){return-1!==this.pointerID};try{Object.defineProperties(b,{localX:{get:b._get_localX},localY:{get:b._get_localY},isTouch:{get:b._get_isTouch}})}catch(a){}b.clone=function(){return new a(this.type,this.bubbles,this.cancelable,this.stageX,this.stageY,this.nativeEvent,this.pointerID,this.primary,this.rawX,this.rawY)},b.toString=function(){return"[MouseEvent (type="+this.type+" stageX="+this.stageX+" stageY="+this.stageY+")]"},createjs.MouseEvent=createjs.promote(a,"Event")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e,f){this.setValues(a,b,c,d,e,f)}var b=a.prototype;a.DEG_TO_RAD=Math.PI/180,a.identity=null,b.setValues=function(a,b,c,d,e,f){return this.a=null==a?1:a,this.b=b||0,this.c=c||0,this.d=null==d?1:d,this.tx=e||0,this.ty=f||0,this},b.append=function(a,b,c,d,e,f){var g=this.a,h=this.b,i=this.c,j=this.d;return 1==a&&0==b&&0==c&&1==d||(this.a=g*a+i*b,this.b=h*a+j*b,this.c=g*c+i*d,this.d=h*c+j*d),this.tx=g*e+i*f+this.tx,this.ty=h*e+j*f+this.ty,this},b.prepend=function(a,b,c,d,e,f){var g=this.a,h=this.c,i=this.tx;return this.a=a*g+c*this.b,this.b=b*g+d*this.b,this.c=a*h+c*this.d,this.d=b*h+d*this.d,this.tx=a*i+c*this.ty+e,this.ty=b*i+d*this.ty+f,this},b.appendMatrix=function(a){return this.append(a.a,a.b,a.c,a.d,a.tx,a.ty)},b.prependMatrix=function(a){return this.prepend(a.a,a.b,a.c,a.d,a.tx,a.ty)},b.appendTransform=function(b,c,d,e,f,g,h,i,j){if(f%360)var k=f*a.DEG_TO_RAD,l=Math.cos(k),m=Math.sin(k);else l=1,m=0;return g||h?(g*=a.DEG_TO_RAD,h*=a.DEG_TO_RAD,this.append(Math.cos(h),Math.sin(h),-Math.sin(g),Math.cos(g),b,c),this.append(l*d,m*d,-m*e,l*e,0,0)):this.append(l*d,m*d,-m*e,l*e,b,c),(i||j)&&(this.tx-=i*this.a+j*this.c,this.ty-=i*this.b+j*this.d),this},b.prependTransform=function(b,c,d,e,f,g,h,i,j){if(f%360)var k=f*a.DEG_TO_RAD,l=Math.cos(k),m=Math.sin(k);else l=1,m=0;return(i||j)&&(this.tx-=i,this.ty-=j),g||h?(g*=a.DEG_TO_RAD,h*=a.DEG_TO_RAD,this.prepend(l*d,m*d,-m*e,l*e,0,0),this.prepend(Math.cos(h),Math.sin(h),-Math.sin(g),Math.cos(g),b,c)):this.prepend(l*d,m*d,-m*e,l*e,b,c),this},b.rotate=function(b){b*=a.DEG_TO_RAD;var c=Math.cos(b),d=Math.sin(b),e=this.a,f=this.b;return this.a=e*c+this.c*d,this.b=f*c+this.d*d,this.c=-e*d+this.c*c,this.d=-f*d+this.d*c,this},b.skew=function(b,c){return b*=a.DEG_TO_RAD,c*=a.DEG_TO_RAD,this.append(Math.cos(c),Math.sin(c),-Math.sin(b),Math.cos(b),0,0),this},b.scale=function(a,b){return this.a*=a,this.b*=a,this.c*=b,this.d*=b,this},b.translate=function(a,b){return this.tx+=this.a*a+this.c*b,this.ty+=this.b*a+this.d*b,this},b.identity=function(){return this.a=this.d=1,this.b=this.c=this.tx=this.ty=0,this},b.invert=function(){var a=this.a,b=this.b,c=this.c,d=this.d,e=this.tx,f=a*d-b*c;return this.a=d/f,this.b=-b/f,this.c=-c/f,this.d=a/f,this.tx=(c*this.ty-d*e)/f,this.ty=-(a*this.ty-b*e)/f,this},b.isIdentity=function(){return 0===this.tx&&0===this.ty&&1===this.a&&0===this.b&&0===this.c&&1===this.d},b.equals=function(a){return this.tx===a.tx&&this.ty===a.ty&&this.a===a.a&&this.b===a.b&&this.c===a.c&&this.d===a.d},b.transformPoint=function(a,b,c){return c=c||{},c.x=a*this.a+b*this.c+this.tx,c.y=a*this.b+b*this.d+this.ty,c},b.decompose=function(b){null==b&&(b={}),b.x=this.tx,b.y=this.ty,b.scaleX=Math.sqrt(this.a*this.a+this.b*this.b),b.scaleY=Math.sqrt(this.c*this.c+this.d*this.d);var c=Math.atan2(-this.c,this.d),d=Math.atan2(this.b,this.a);return Math.abs(1-c/d)<1e-5?(b.rotation=d/a.DEG_TO_RAD,this.a<0&&this.d>=0&&(b.rotation+=b.rotation<=0?180:-180),b.skewX=b.skewY=0):(b.skewX=c/a.DEG_TO_RAD,b.skewY=d/a.DEG_TO_RAD),b},b.copy=function(a){return this.setValues(a.a,a.b,a.c,a.d,a.tx,a.ty)},b.clone=function(){return new a(this.a,this.b,this.c,this.d,this.tx,this.ty)},b.toString=function(){return"[Matrix2D (a="+this.a+" b="+this.b+" c="+this.c+" d="+this.d+" tx="+this.tx+" ty="+this.ty+")]"},a.identity=new a,createjs.Matrix2D=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d,e){this.setValues(a,b,c,d,e)}var b=a.prototype;b.setValues=function(a,b,c,d,e){return this.visible=null==a||!!a,this.alpha=null==b?1:b,this.shadow=c,this.compositeOperation=d,this.matrix=e||this.matrix&&this.matrix.identity()||new createjs.Matrix2D,this},b.append=function(a,b,c,d,e){return this.alpha*=b,this.shadow=c||this.shadow,this.compositeOperation=d||this.compositeOperation,this.visible=this.visible&&a,e&&this.matrix.appendMatrix(e),this},b.prepend=function(a,b,c,d,e){return this.alpha*=b,this.shadow=this.shadow||c,this.compositeOperation=this.compositeOperation||d,this.visible=this.visible&&a,e&&this.matrix.prependMatrix(e),this},b.identity=function(){return this.visible=!0,this.alpha=1,this.shadow=this.compositeOperation=null,this.matrix.identity(),this},b.clone=function(){return new a(this.alpha,this.shadow,this.compositeOperation,this.visible,this.matrix.clone())},createjs.DisplayProps=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b){this.setValues(a,b)}var b=a.prototype;b.setValues=function(a,b){return this.x=a||0,this.y=b||0,this},b.copy=function(a){return this.x=a.x,this.y=a.y,this},b.clone=function(){return new a(this.x,this.y)},b.toString=function(){return"[Point (x="+this.x+" y="+this.y+")]"},createjs.Point=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c,d){this.setValues(a,b,c,d)}var b=a.prototype;b.setValues=function(a,b,c,d){return this.x=a||0,this.y=b||0,this.width=c||0,this.height=d||0,this},b.extend=function(a,b,c,d){return c=c||0,d=d||0,a+c>this.x+this.width&&(this.width=a+c-this.x),b+d>this.y+this.height&&(this.height=b+d-this.y),a=this.x&&a+c<=this.x+this.width&&b>=this.y&&b+d<=this.y+this.height},b.union=function(a){return this.clone().extend(a.x,a.y,a.width,a.height)},b.intersection=function(b){var c=b.x,d=b.y,e=c+b.width,f=d+b.height;return this.x>c&&(c=this.x),this.y>d&&(d=this.y),this.x+this.width0)for(e=this._images=[],b=0;b=a)break a;b++,this._frames.push({image:i,rect:new createjs.Rectangle(m,l,c,d),regX:this._regX,regY:this._regY}),m+=c+e}l+=d+e}this._numFrames=b}},createjs.SpriteSheet=createjs.promote(a,"EventDispatcher")}(),this.createjs=this.createjs||{},function(){"use strict";function a(){this.command=null,this._stroke=null,this._strokeStyle=null,this._oldStrokeStyle=null,this._strokeDash=null,this._oldStrokeDash=null,this._strokeIgnoreScale=!1,this._fill=null,this._instructions=[],this._commitIndex=0,this._activeInstructions=[],this._dirty=!1,this._storeIndex=0,this.clear()}function b(a,b,d,e,f,g,h,i){var j=c(g,e,f),k=c(h,e,f),l=-Math.sin(k-j)*(Math.sqrt(4+3*Math.pow(Math.tan((k-j)/2),2))-1)/3,m=e*f/Math.sqrt(Math.pow(f*Math.cos(g),2)+Math.pow(e*Math.sin(g),2)),n=b+m*Math.cos(g),o=d+m*Math.sin(g),p=e*f/Math.sqrt(Math.pow(f*Math.cos(h),2)+Math.pow(e*Math.sin(h),2)),q=b+p*Math.cos(h),r=d+p*Math.sin(h),s=n-l*Math.sin(-j)*e,t=o-l*Math.cos(-j)*f,u=q+l*Math.sin(-k)*e,v=r+l*Math.cos(-k)*f;return"radii"===i||"chord"===i?a.lineTo(n,o):a.moveTo(n,o),a.bezierCurveTo(s,t,u,v,q,r),{x:n,y:o}}function c(a,b,c){var e,f=Math.cos(a),g=Math.sin(a);if(d(b,c)||d(Math.abs(f),0)||d(Math.abs(g),0))return a;var h=b*Math.tan(a)/c;return f>0&&g>0?e=Math.atan(h):f<0&&g>0?e=Math.PI+Math.atan(h):f<0&&g<0?e=Math.PI+Math.atan(h):f>0&&g<0&&(e=2*Math.PI+Math.atan(h)),e}function d(a,b){var c=.001,d=2.220446049250313e-16;if(a===b)return!0;if(isNaN(a)||isNaN(b))return!1;if(isFinite(a)&&isFinite(b)){var e=Math.abs(a-b);return e>8&255,a=a>>16&255),null==d?"rgb("+a+","+b+","+c+")":"rgba("+a+","+b+","+c+","+d+")"},a.getHSL=function(a,b,c,d){return null==d?"hsl("+a%360+","+b+"%,"+c+"%)":"hsla("+a%360+","+b+"%,"+c+"%,"+d+")"},a.BASE_64={A:0,B:1,C:2,D:3,E:4,F:5,G:6,H:7,I:8,J:9,K:10,L:11,M:12,N:13,O:14,P:15,Q:16,R:17,S:18,T:19,U:20,V:21,W:22,X:23,Y:24,Z:25,a:26,b:27,c:28,d:29,e:30,f:31,g:32,h:33,i:34,j:35,k:36,l:37,m:38,n:39,o:40,p:41,q:42,r:43,s:44,t:45,u:46,v:47,w:48,x:49,y:50,z:51,0:52,1:53,2:54,3:55,4:56,5:57,6:58,7:59,8:60,9:61,"+":62,"/":63},a.STROKE_CAPS_MAP=["butt","round","square"],a.STROKE_JOINTS_MAP=["miter","round","bevel"];var g=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");g.getContext&&(a._ctx=g.getContext("2d"),g.width=g.height=1),e.getInstructions=function(){return this._updateInstructions(),this._instructions};try{Object.defineProperties(e,{instructions:{get:e.getInstructions}})}catch(a){}e.isEmpty=function(){return!(this._instructions.length||this._activeInstructions.length)},e.draw=function(a,b){this._updateInstructions();for(var c=this._instructions,d=this._storeIndex,e=c.length;d>3,n=c[m];if(!n||3&l)throw"bad path data (@"+e+"): "+k;var o=d[m];m||(h=i=0),g.length=0,e++;for(var p=2+(l>>2&1),q=0;q>5?-1:1;r=(31&r)<<6|j[b.charAt(e+1)],3==p&&(r=r<<6|j[b.charAt(e+2)]),r=s*r/10,q%2?h=r+=h:i=r+=i,g[q]=r,e+=p}n.apply(this,g)}return this},e.store=function(){return this._updateInstructions(!0),this._storeIndex=this._instructions.length,this},e.unstore=function(){return this._storeIndex=0,this},e.clone=function(){var b=new a;return b.command=this.command,b._stroke=this._stroke,b._strokeStyle=this._strokeStyle,b._strokeDash=this._strokeDash,b._strokeIgnoreScale=this._strokeIgnoreScale,b._fill=this._fill,b._instructions=this._instructions.slice(),b._commitIndex=this._commitIndex,b._activeInstructions=this._activeInstructions.slice(),b._dirty=this._dirty,b._storeIndex=this._storeIndex,b},e.toString=function(){return"[Graphics]"},e.mt=e.moveTo,e.lt=e.lineTo,e.at=e.arcTo,e.bt=e.bezierCurveTo,e.qt=e.quadraticCurveTo,e.a=e.arc,e.ea=e.ellipticalArc,e.r=e.rect,e.cp=e.closePath,e.c=e.clear,e.f=e.beginFill,e.lf=e.beginLinearGradientFill,e.rf=e.beginRadialGradientFill,e.bf=e.beginBitmapFill,e.ef=e.endFill,e.ss=e.setStrokeStyle,e.sd=e.setStrokeDash,e.s=e.beginStroke,e.ls=e.beginLinearGradientStroke,e.rs=e.beginRadialGradientStroke,e.bs=e.beginBitmapStroke,e.es=e.endStroke,e.dr=e.drawRect,e.rr=e.drawRoundRect,e.rc=e.drawRoundRectComplex,e.dc=e.drawCircle,e.de=e.drawEllipse,e.dp=e.drawPolyStar,e.p=e.decodePath,e._updateInstructions=function(b){var c=this._instructions,d=this._activeInstructions,e=this._commitIndex;if(this._dirty&&d.length){c.length=e,c.push(a.beginCmd);var f=d.length,g=c.length;c.length=g+f;for(var h=0;h=2){(this.style=a._ctx.createPattern(b,c||"")).props={image:b,repetition:c,type:"bitmap"}}return this},e.path=!1,e=(f.Stroke=function(a,b){this.style=a,this.ignoreScale=b}).prototype,e.exec=function(a){this.style&&(a.strokeStyle=this.style,this.ignoreScale&&(a.save(),a.setTransform(1,0,0,1,0,0)),a.stroke(),this.ignoreScale&&a.restore())},e.linearGradient=f.Fill.prototype.linearGradient,e.radialGradient=f.Fill.prototype.radialGradient,e.bitmap=f.Fill.prototype.bitmap,e.path=!1,e=(f.StrokeStyle=function(a,b,c,d,e){this.width=a,this.caps=b,this.joints=c,this.miterLimit=d,this.ignoreScale=e}).prototype,e.exec=function(b){b.lineWidth=null==this.width?"1":this.width,b.lineCap=null==this.caps?"butt":isNaN(this.caps)?this.caps:a.STROKE_CAPS_MAP[this.caps], +b.lineJoin=null==this.joints?"miter":isNaN(this.joints)?this.joints:a.STROKE_JOINTS_MAP[this.joints],b.miterLimit=null==this.miterLimit?"10":this.miterLimit,b.ignoreScale=null!=this.ignoreScale&&this.ignoreScale},e.path=!1,(f.StrokeDash=function(a,b){this.segments=a,this.offset=b||0}).prototype.exec=function(a){a.setLineDash&&(a.setLineDash(this.segments||f.StrokeDash.EMPTY_SEGMENTS),a.lineDashOffset=this.offset||0)},f.StrokeDash.EMPTY_SEGMENTS=[],(f.RoundRect=function(a,b,c,d,e,f,g,h){this.x=a,this.y=b,this.w=c,this.h=d,this.radiusTL=e,this.radiusTR=f,this.radiusBR=g,this.radiusBL=h}).prototype.exec=function(a){var b=(ib&&(k=b),l<0&&(l*=d=-1),l>b&&(l=b),m<0&&(m*=e=-1),m>b&&(m=b),n<0&&(n*=f=-1),n>b&&(n=b),a.moveTo(g+i-l,h),a.arcTo(g+i+l*d,h-l*d,g+i,h+l,l),a.lineTo(g+i,h+j-m),a.arcTo(g+i+m*e,h+j+m*e,g+i-m,h+j,m),a.lineTo(g+n,h+j),a.arcTo(g-n*f,h+j+n*f,g,h+j-n,n),a.lineTo(g,h+k),a.arcTo(g-k*c,h-k*c,g+k,h,k),a.closePath()},(f.Circle=function(a,b,c){this.x=a,this.y=b,this.radius=c}).prototype.exec=function(a){a.arc(this.x,this.y,this.radius,0,2*Math.PI)},(f.Ellipse=function(a,b,c,d){this.x=a,this.y=b,this.w=c,this.h=d}).prototype.exec=function(a){var b=this.x,c=this.y,d=this.w,e=this.h,f=.5522848,g=d/2*f,h=e/2*f,i=b+d,j=c+e,k=b+d/2,l=c+e/2;a.moveTo(b,l),a.bezierCurveTo(b,l-h,k-g,c,k,c),a.bezierCurveTo(k+g,c,i,l-h,i,l),a.bezierCurveTo(i,l+h,k+g,j,k,j),a.bezierCurveTo(k-g,j,b,l+h,b,l)},(f.PolyStar=function(a,b,c,d,e,f){this.x=a,this.y=b,this.radius=c,this.sides=d,this.pointSize=e,this.angle=f}).prototype.exec=function(a){var b=this.x,c=this.y,d=this.radius,e=(this.angle||0)/180*Math.PI,f=this.sides,g=1-(this.pointSize||0),h=Math.PI/f;a.moveTo(b+Math.cos(e)*d,c+Math.sin(e)*d);for(var i=0;i0&&0!=this.scaleX&&0!=this.scaleY)},b.draw=function(a,b){var c=this.cacheCanvas;if(b||!c)return!1;var d=this._cacheScale;return a.drawImage(c,this._cacheOffsetX+this._filterOffsetX,this._cacheOffsetY+this._filterOffsetY,c.width/d,c.height/d),!0},b.updateContext=function(b){var c=this,d=c.mask,e=c._props.matrix;d&&d.graphics&&!d.graphics.isEmpty()&&(d.getMatrix(e),b.transform(e.a,e.b,e.c,e.d,e.tx,e.ty),d.graphics.drawAsPath(b),b.clip(),e.invert(),b.transform(e.a,e.b,e.c,e.d,e.tx,e.ty)),this.getMatrix(e);var f=e.tx,g=e.ty;a._snapToPixelEnabled&&c.snapToPixel&&(f=f+(f<0?-.5:.5)|0,g=g+(g<0?-.5:.5)|0),b.transform(e.a,e.b,e.c,e.d,f,g),b.globalAlpha*=c.alpha,c.compositeOperation&&(b.globalCompositeOperation=c.compositeOperation),c.shadow&&this._applyShadow(b,c.shadow)},b.cache=function(a,b,c,d,e){e=e||1,this.cacheCanvas||(this.cacheCanvas=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")),this._cacheWidth=c,this._cacheHeight=d,this._cacheOffsetX=a,this._cacheOffsetY=b,this._cacheScale=e,this.updateCache()},b.updateCache=function(b){var c=this.cacheCanvas;if(!c)throw"cache() must be called before updateCache()";var d=this._cacheScale,e=this._cacheOffsetX*d,f=this._cacheOffsetY*d,g=this._cacheWidth,h=this._cacheHeight,i=c.getContext("2d"),j=this._getFilterBounds();e+=this._filterOffsetX=j.x,f+=this._filterOffsetY=j.y,g=Math.ceil(g*d)+j.width,h=Math.ceil(h*d)+j.height,g!=c.width||h!=c.height?(c.width=g,c.height=h):b||i.clearRect(0,0,g+1,h+1),i.save(),i.globalCompositeOperation=b,i.setTransform(d,0,0,d,-e,-f),this.draw(i,!0),this._applyFilters(),i.restore(),this.cacheID=a._nextCacheID++},b.uncache=function(){this._cacheDataURL=this.cacheCanvas=null,this.cacheID=this._cacheOffsetX=this._cacheOffsetY=this._filterOffsetX=this._filterOffsetY=0,this._cacheScale=1},b.getCacheDataURL=function(){return this.cacheCanvas?(this.cacheID!=this._cacheDataURLID&&(this._cacheDataURL=this.cacheCanvas.toDataURL()),this._cacheDataURL):null},b.localToGlobal=function(a,b,c){return this.getConcatenatedMatrix(this._props.matrix).transformPoint(a,b,c||new createjs.Point)},b.globalToLocal=function(a,b,c){return this.getConcatenatedMatrix(this._props.matrix).invert().transformPoint(a,b,c||new createjs.Point)},b.localToLocal=function(a,b,c,d){return d=this.localToGlobal(a,b,d),c.globalToLocal(d.x,d.y,d)},b.setTransform=function(a,b,c,d,e,f,g,h,i){return this.x=a||0,this.y=b||0,this.scaleX=null==c?1:c,this.scaleY=null==d?1:d,this.rotation=e||0,this.skewX=f||0,this.skewY=g||0,this.regX=h||0,this.regY=i||0,this},b.getMatrix=function(a){var b=this,c=a&&a.identity()||new createjs.Matrix2D;return b.transformMatrix?c.copy(b.transformMatrix):c.appendTransform(b.x,b.y,b.scaleX,b.scaleY,b.rotation,b.skewX,b.skewY,b.regX,b.regY)},b.getConcatenatedMatrix=function(a){for(var b=this,c=this.getMatrix(a);b=b.parent;)c.prependMatrix(b.getMatrix(b._props.matrix));return c},b.getConcatenatedDisplayProps=function(a){a=a?a.identity():new createjs.DisplayProps;var b=this,c=b.getMatrix(a.matrix);do{a.prepend(b.visible,b.alpha,b.shadow,b.compositeOperation),b!=this&&c.prependMatrix(b.getMatrix(b._props.matrix))}while(b=b.parent);return a},b.hitTest=function(b,c){var d=a._hitTestContext;d.setTransform(1,0,0,1,-b,-c),this.draw(d);var e=this._testHit(d);return d.setTransform(1,0,0,1,0,0),d.clearRect(0,0,2,2),e},b.set=function(a){for(var b in a)this[b]=a[b];return this},b.getBounds=function(){if(this._bounds)return this._rectangle.copy(this._bounds);var a=this.cacheCanvas;if(a){var b=this._cacheScale;return this._rectangle.setValues(this._cacheOffsetX,this._cacheOffsetY,a.width/b,a.height/b)}return null},b.getTransformedBounds=function(){return this._getBounds()},b.setBounds=function(a,b,c,d){null==a&&(this._bounds=a),this._bounds=(this._bounds||new createjs.Rectangle).setValues(a,b,c,d)},b.clone=function(){return this._cloneProps(new a)},b.toString=function(){return"[DisplayObject (name="+this.name+")]"},b._cloneProps=function(a){return a.alpha=this.alpha,a.mouseEnabled=this.mouseEnabled,a.tickEnabled=this.tickEnabled,a.name=this.name,a.regX=this.regX,a.regY=this.regY,a.rotation=this.rotation,a.scaleX=this.scaleX,a.scaleY=this.scaleY,a.shadow=this.shadow,a.skewX=this.skewX,a.skewY=this.skewY,a.visible=this.visible,a.x=this.x,a.y=this.y,a.compositeOperation=this.compositeOperation,a.snapToPixel=this.snapToPixel,a.filters=null==this.filters?null:this.filters.slice(0),a.mask=this.mask,a.hitArea=this.hitArea,a.cursor=this.cursor,a._bounds=this._bounds,a},b._applyShadow=function(a,b){b=b||Shadow.identity,a.shadowColor=b.color,a.shadowOffsetX=b.offsetX,a.shadowOffsetY=b.offsetY,a.shadowBlur=b.blur},b._tick=function(a){var b=this._listeners;b&&b.tick&&(a.target=null,a.propagationStopped=a.immediatePropagationStopped=!1,this.dispatchEvent(a))},b._testHit=function(b){try{var c=b.getImageData(0,0,1,1).data[3]>1}catch(b){if(!a.suppressCrossDomainErrors)throw"An error has occurred. This is most likely due to security restrictions on reading canvas pixel data with local or cross-domain images."}return c},b._applyFilters=function(){if(this.filters&&0!=this.filters.length&&this.cacheCanvas)for(var a=this.filters.length,b=this.cacheCanvas.getContext("2d"),c=this.cacheCanvas.width,d=this.cacheCanvas.height,e=0;ep&&(p=d),(d=i+k+m)p&&(p=d),(d=k+m)p&&(p=d),(e=j+n)r&&(r=e),(e=j+l+n)r&&(r=e),(e=l+n)r&&(r=e),a.setValues(o,q,p-o,r-q)},b._hasMouseEventListener=function(){for(var b=a._MOUSE_EVENTS,c=0,d=b.length;c0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b))return!0;for(var c=this.children.slice(),d=0,e=c.length;d1){for(var c=0;cthis.children.length)return arguments[c-2];if(c>2){for(var e=0;e1){for(var c=!0,d=0;d1){for(var c=[],d=0;dthis.children.length-1)return!1;var f=this.children[a];return f&&(f.parent=null),this.children.splice(a,1),f.dispatchEvent("removed"),!0},b.removeAllChildren=function(){for(var a=this.children;a.length;)this.removeChildAt(0)},b.getChildAt=function(a){return this.children[a]},b.getChildByName=function(a){for(var b=this.children,c=0,d=b.length;c=d)){for(var e=0;e0,1==c),d},b.getObjectUnderPoint=function(a,b,c){var d=this.localToGlobal(a,b);return this._getObjectsUnderPoint(d.x,d.y,null,c>0,1==c)},b.getBounds=function(){return this._getBounds(null,!0)},b.getTransformedBounds=function(){return this._getBounds()},b.clone=function(b){var c=this._cloneProps(new a);return b&&this._cloneChildren(c),c},b.toString=function(){return"[Container (name="+this.name+")]"},b._tick=function(a){if(this.tickChildren)for(var b=this.children.length-1;b>=0;b--){var c=this.children[b];c.tickEnabled&&c._tick&&c._tick(a)}this.DisplayObject__tick(a)},b._cloneChildren=function(a){a.children.length&&a.removeAllChildren();for(var b=a.children,c=0,d=this.children.length;c=0;l--){var m=j[l],n=m.hitArea;if(m.visible&&(n||m.isVisible())&&(!e||m.mouseEnabled)&&(n||this._testMask(m,b,c)))if(!n&&m instanceof a){var o=m._getObjectsUnderPoint(b,c,d,e,f,g+1);if(!d&&o)return e&&!this.mouseChildren?this:o}else{if(e&&!f&&!m._hasMouseEventListener())continue;var p=m.getConcatenatedDisplayProps(m._props);if(h=p.matrix,n&&(h.appendMatrix(n.getMatrix(n._props.matrix)),p.alpha=n.alpha),i.globalAlpha=p.alpha,i.setTransform(h.a,h.b,h.c,h.d,h.tx-b,h.ty-c),(n||m).draw(i),!this._testHit(i))continue;if(i.setTransform(1,0,0,1,0,0),i.clearRect(0,0,2,2),!d)return e&&!this.mouseChildren?this:m;d.push(m)}}return null},b._testMask=function(a,b,c){var d=a.mask;if(!d||!d.graphics||d.graphics.isEmpty())return!0;var e=this._props.matrix,f=a.parent;e=f?f.getConcatenatedMatrix(e):e.identity(),e=d.getMatrix(d._props.matrix).prependMatrix(e);var g=createjs.DisplayObject._hitTestContext;return g.setTransform(e.a,e.b,e.c,e.d,e.tx-b,e.ty-c),d.graphics.drawAsPath(g),g.fillStyle="#000",g.fill(),!!this._testHit(g)&&(g.setTransform(1,0,0,1,0,0),g.clearRect(0,0,2,2),!0)},b._getBounds=function(a,b){var c=this.DisplayObject_getBounds();if(c)return this._transformBounds(c,a,b);var d=this._props.matrix;d=b?d.identity():this.getMatrix(d),a&&d.prependMatrix(a);for(var e=this.children.length,f=null,g=0;g=0&&d>=0&&c<=f-1&&d<=g-1)?(h.x=c,h.y=d):this.mouseMoveOutside&&(h.x=c<0?0:c>f-1?f-1:c,h.y=d<0?0:d>g-1?g-1:d),h.posEvtObj=b,h.rawX=c,h.rawY=d,a!==this._primaryPointerID&&-1!==a||(this.mouseX=h.x,this.mouseY=h.y,this.mouseInBounds=h.inBounds)},b._handleMouseUp=function(a){this._handlePointerUp(-1,a,!1)},b._handlePointerUp=function(a,b,c,d){var e=this._nextStage,f=this._getPointerData(a);if(!this._prevStage||void 0!==d){var g=null,h=f.target;d||!h&&!e||(g=this._getObjectsUnderPoint(f.x,f.y,null,!0)),f.down&&(this._dispatchMouseEvent(this,"stagemouseup",!1,a,f,b,g),f.down=!1),g==h&&this._dispatchMouseEvent(h,"click",!0,a,f,b),this._dispatchMouseEvent(h,"pressup",!0,a,f,b),c?(a==this._primaryPointerID&&(this._primaryPointerID=null),delete this._pointerData[a]):f.target=null,e&&e._handlePointerUp(a,b,c,d||g&&this)}},b._handleMouseDown=function(a){this._handlePointerDown(-1,a,a.pageX,a.pageY)},b._handlePointerDown=function(a,b,c,d,e){this.preventSelection&&b.preventDefault(),null!=this._primaryPointerID&&-1!==a||(this._primaryPointerID=a),null!=d&&this._updatePointerPosition(a,b,c,d);var f=null,g=this._nextStage,h=this._getPointerData(a);e||(f=h.target=this._getObjectsUnderPoint(h.x,h.y,null,!0)),h.inBounds&&(this._dispatchMouseEvent(this,"stagemousedown",!1,a,h,b,f),h.down=!0),this._dispatchMouseEvent(f,"mousedown",!0,a,h,b),g&&g._handlePointerDown(a,b,c,d,e||f&&this)},b._testMouseOver=function(a,b,c){if(!this._prevStage||void 0!==b){var d=this._nextStage;if(!this._mouseOverIntervalID)return void(d&&d._testMouseOver(a,b,c));var e=this._getPointerData(-1);if(e&&(a||this.mouseX!=this._mouseOverX||this.mouseY!=this._mouseOverY||!this.mouseInBounds)){var f,g,h,i=e.posEvtObj,j=c||i&&i.target==this.canvas,k=null,l=-1,m="";!b&&(a||this.mouseInBounds&&j)&&(k=this._getObjectsUnderPoint(this.mouseX,this.mouseY,null,!0),this._mouseOverX=this.mouseX,this._mouseOverY=this.mouseY);var n=this._mouseOverTarget||[],o=n[n.length-1],p=this._mouseOverTarget=[];for(f=k;f;)p.unshift(f),m||(m=f.cursor),f=f.parent;for(this.canvas.style.cursor=m,!b&&c&&(c.canvas.style.cursor=m),g=0,h=p.length;gl;g--)this._dispatchMouseEvent(n[g],"rollout",!1,-1,e,i,k);for(g=p.length-1;g>l;g--)this._dispatchMouseEvent(p[g],"rollover",!1,-1,e,i,o);o!=k&&this._dispatchMouseEvent(k,"mouseover",!0,-1,e,i,o),d&&d._testMouseOver(a,b||k&&this,c||j&&this)}}},b._handleDoubleClick=function(a,b){var c=null,d=this._nextStage,e=this._getPointerData(-1);b||(c=this._getObjectsUnderPoint(e.x,e.y,null,!0),this._dispatchMouseEvent(c,"dblclick",!0,-1,e,a)),d&&d._handleDoubleClick(a,b||c&&this)},b._dispatchMouseEvent=function(a,b,c,d,e,f,g){if(a&&(c||a.hasEventListener(b))){var h=new createjs.MouseEvent(b,c,!1,e.x,e.y,f,d,d===this._primaryPointerID||-1===d,e.rawX,e.rawY,g);a.dispatchEvent(h)}},createjs.Stage=createjs.promote(a,"Container")}(),this.createjs=this.createjs||{},function(){function a(a){this.DisplayObject_constructor(),"string"==typeof a?(this.image=document.createElement("img"),this.image.src=a):this.image=a,this.sourceRect=null}var b=createjs.extend(a,createjs.DisplayObject);b.initialize=a,b.isVisible=function(){var a=this.image,b=this.cacheCanvas||a&&(a.naturalWidth||a.getContext||a.readyState>=2);return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&b)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b)||!this.image)return!0;var c=this.image,d=this.sourceRect;if(d){var e=d.x,f=d.y,g=e+d.width,h=f+d.height,i=0,j=0,k=c.width,l=c.height;e<0&&(i-=e,e=0),g>k&&(g=k),f<0&&(j-=f,f=0),h>l&&(h=l),a.drawImage(c,e,f,g-e,h-f,i,j,g-e,h-f)}else a.drawImage(c,0,0);return!0},b.getBounds=function(){var a=this.DisplayObject_getBounds();if(a)return a;var b=this.image,c=this.sourceRect||b;return b&&(b.naturalWidth||b.getContext||b.readyState>=2)?this._rectangle.setValues(0,0,c.width,c.height):null},b.clone=function(){var b=new a(this.image);return this.sourceRect&&(b.sourceRect=this.sourceRect.clone()),this._cloneProps(b),b},b.toString=function(){return"[Bitmap (name="+this.name+")]"},createjs.Bitmap=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b){this.DisplayObject_constructor(),this.currentFrame=0,this.currentAnimation=null,this.paused=!0,this.spriteSheet=a,this.currentAnimationFrame=0,this.framerate=0,this._animation=null,this._currentFrame=null,this._skipAdvance=!1,null!=b&&this.gotoAndPlay(b)}var b=createjs.extend(a,createjs.DisplayObject);b.initialize=a,b.isVisible=function(){var a=this.cacheCanvas||this.spriteSheet.complete;return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b))return!0;this._normalizeFrame();var c=this.spriteSheet.getFrame(0|this._currentFrame);if(!c)return!1;var d=c.rect;return d.width&&d.height&&a.drawImage(c.image,d.x,d.y,d.width,d.height,-c.regX,-c.regY,d.width,d.height),!0},b.play=function(){this.paused=!1},b.stop=function(){this.paused=!0},b.gotoAndPlay=function(a){this.paused=!1,this._skipAdvance=!0,this._goto(a)},b.gotoAndStop=function(a){this.paused=!0,this._goto(a)},b.advance=function(a){var b=this.framerate||this.spriteSheet.framerate,c=b&&null!=a?a/(1e3/b):1;this._normalizeFrame(c)},b.getBounds=function(){return this.DisplayObject_getBounds()||this.spriteSheet.getFrameBounds(this.currentFrame,this._rectangle)},b.clone=function(){return this._cloneProps(new a(this.spriteSheet))},b.toString=function(){return"[Sprite (name="+this.name+")]"},b._cloneProps=function(a){return this.DisplayObject__cloneProps(a),a.currentFrame=this.currentFrame,a.currentAnimation=this.currentAnimation,a.paused=this.paused,a.currentAnimationFrame=this.currentAnimationFrame,a.framerate=this.framerate,a._animation=this._animation,a._currentFrame=this._currentFrame,a._skipAdvance=this._skipAdvance,a},b._tick=function(a){this.paused||(this._skipAdvance||this.advance(a&&a.delta),this._skipAdvance=!1),this.DisplayObject__tick(a)},b._normalizeFrame=function(a){a=a||0;var b,c=this._animation,d=this.paused,e=this._currentFrame;if(c){var f=c.speed||1,g=this.currentAnimationFrame;if(b=c.frames.length,g+a*f>=b){var h=c.next;if(this._dispatchAnimationEnd(c,e,d,h,b-1))return;if(h)return this._goto(h,a-(b-g)/f);this.paused=!0,g=c.frames.length-1}else g+=a*f;this.currentAnimationFrame=g,this._currentFrame=c.frames[0|g]}else if(e=this._currentFrame+=a,b=this.spriteSheet.getNumFrames(),e>=b&&b>0&&!this._dispatchAnimationEnd(c,e,d,b-1)&&(this._currentFrame-=b)>=b)return this._normalizeFrame();e=0|this._currentFrame,this.currentFrame!=e&&(this.currentFrame=e,this.dispatchEvent("change"))},b._dispatchAnimationEnd=function(a,b,c,d,e){var f=a?a.name:null;if(this.hasEventListener("animationend")){var g=new createjs.Event("animationend");g.name=f,g.next=d,this.dispatchEvent(g)}var h=this._animation!=a||this._currentFrame!=b;return h||c||!this.paused||(this.currentAnimationFrame=e,h=!0),h},b._goto=function(a,b){if(this.currentAnimationFrame=0,isNaN(a)){var c=this.spriteSheet.getAnimation(a);c&&(this._animation=c,this.currentAnimation=a,this._normalizeFrame(b))}else this.currentAnimation=this._animation=null,this._currentFrame=a,this._normalizeFrame()},createjs.Sprite=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.DisplayObject_constructor(),this.graphics=a||new createjs.Graphics}var b=createjs.extend(a,createjs.DisplayObject);b.isVisible=function(){var a=this.cacheCanvas||this.graphics&&!this.graphics.isEmpty();return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){return!!this.DisplayObject_draw(a,b)||(this.graphics.draw(a,this),!0)},b.clone=function(b){var c=b&&this.graphics?this.graphics.clone():this.graphics;return this._cloneProps(new a(c))},b.toString=function(){return"[Shape (name="+this.name+")]"},createjs.Shape=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c){this.DisplayObject_constructor(),this.text=a,this.font=b,this.color=c,this.textAlign="left",this.textBaseline="top",this.maxWidth=null,this.outline=0,this.lineHeight=0,this.lineWidth=null}var b=createjs.extend(a,createjs.DisplayObject),c=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");c.getContext&&(a._workingContext=c.getContext("2d"),c.width=c.height=1),a.H_OFFSETS={start:0,left:0,center:-.5,end:-1,right:-1},a.V_OFFSETS={top:0,hanging:-.01,middle:-.4,alphabetic:-.8,ideographic:-.85,bottom:-1},b.isVisible=function(){var a=this.cacheCanvas||null!=this.text&&""!==this.text;return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY&&a)},b.draw=function(a,b){if(this.DisplayObject_draw(a,b))return!0;var c=this.color||"#000";return this.outline?(a.strokeStyle=c,a.lineWidth=1*this.outline):a.fillStyle=c,this._drawText(this._prepContext(a)),!0},b.getMeasuredWidth=function(){return this._getMeasuredWidth(this.text)},b.getMeasuredLineHeight=function(){return 1.2*this._getMeasuredWidth("M")},b.getMeasuredHeight=function(){return this._drawText(null,{}).height},b.getBounds=function(){var b=this.DisplayObject_getBounds();if(b)return b;if(null==this.text||""===this.text)return null;var c=this._drawText(null,{}),d=this.maxWidth&&this.maxWidththis.lineWidth){var n=l.split(/(\s)/);l=n[0],m=b.measureText(l).width;for(var o=1,p=n.length;othis.lineWidth?(e&&this._drawTextLine(b,l,h*f),d&&d.push(l),m>g&&(g=m),l=n[o+1],m=b.measureText(l).width,h++):(l+=n[o]+n[o+1],m+=q)}}e&&this._drawTextLine(b,l,h*f),d&&d.push(l),c&&null==m&&(m=b.measureText(l).width),m>g&&(g=m),h++}return c&&(c.width=g,c.height=h*f),e||b.restore(),c},b._drawTextLine=function(a,b,c){this.outline?a.strokeText(b,0,c,this.maxWidth||65535):a.fillText(b,0,c,this.maxWidth||65535)},b._getMeasuredWidth=function(b){var c=a._workingContext;c.save();var d=this._prepContext(c).measureText(b).width;return c.restore(),d},createjs.Text=createjs.promote(a,"DisplayObject")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b){this.Container_constructor(),this.text=a||"",this.spriteSheet=b,this.lineHeight=0,this.letterSpacing=0,this.spaceWidth=0,this._oldProps={text:0,spriteSheet:0,lineHeight:0,letterSpacing:0,spaceWidth:0}}var b=createjs.extend(a,createjs.Container);a.maxPoolSize=100,a._spritePool=[],b.draw=function(a,b){this.DisplayObject_draw(a,b)||(this._updateText(),this.Container_draw(a,b))},b.getBounds=function(){return this._updateText(),this.Container_getBounds()},b.isVisible=function(){var a=this.cacheCanvas||this.spriteSheet&&this.spriteSheet.complete&&this.text;return!!(this.visible&&this.alpha>0&&0!==this.scaleX&&0!==this.scaleY&&a)},b.clone=function(){return this._cloneProps(new a(this.text,this.spriteSheet))}, +b.addChild=b.addChildAt=b.removeChild=b.removeChildAt=b.removeAllChildren=function(){},b._cloneProps=function(a){return this.Container__cloneProps(a),a.lineHeight=this.lineHeight,a.letterSpacing=this.letterSpacing,a.spaceWidth=this.spaceWidth,a},b._getFrameIndex=function(a,b){var c,d=b.getAnimation(a);return d||(a!=(c=a.toUpperCase())||a!=(c=a.toLowerCase())||(c=null),c&&(d=b.getAnimation(c))),d&&d.frames[0]},b._getFrame=function(a,b){var c=this._getFrameIndex(a,b);return null==c?c:b.getFrame(c)},b._getLineHeight=function(a){var b=this._getFrame("1",a)||this._getFrame("T",a)||this._getFrame("L",a)||a.getFrame(0);return b?b.rect.height:1},b._getSpaceWidth=function(a){var b=this._getFrame("1",a)||this._getFrame("l",a)||this._getFrame("e",a)||this._getFrame("a",a)||a.getFrame(0);return b?b.rect.width:1},b._updateText=function(){var b,c=0,d=0,e=this._oldProps,f=!1,g=this.spaceWidth,h=this.lineHeight,i=this.spriteSheet,j=a._spritePool,k=this.children,l=0,m=k.length;for(var n in e)e[n]!=this[n]&&(e[n]=this[n],f=!0);if(f){var o=!!this._getFrame(" ",i);o||g||(g=this._getSpaceWidth(i)),h||(h=this._getLineHeight(i));for(var p=0,q=this.text.length;pl;)j.push(b=k.pop()),b.parent=null,m--;j.length>a.maxPoolSize&&(j.length=a.maxPoolSize)}},createjs.BitmapText=createjs.promote(a,"Container")}(),this.createjs=this.createjs||{},function(){"use strict";function a(b,c,d,e){this.Container_constructor(),!a.inited&&a.init(),this.mode=b||a.INDEPENDENT,this.startPosition=c||0,this.loop=d,this.currentFrame=0,this.timeline=new createjs.Timeline(null,e,{paused:!0,position:c,useTicks:!0}),this.paused=!1,this.actionsEnabled=!0,this.autoReset=!0,this.frameBounds=this.frameBounds||null,this.framerate=null,this._synchOffset=0,this._prevPos=-1,this._prevPosition=0,this._t=0,this._managed={}}function b(){throw"MovieClipPlugin cannot be instantiated."}var c=createjs.extend(a,createjs.Container);a.INDEPENDENT="independent",a.SINGLE_FRAME="single",a.SYNCHED="synched",a.inited=!1,a.init=function(){a.inited||(b.install(),a.inited=!0)},c.getLabels=function(){return this.timeline.getLabels()},c.getCurrentLabel=function(){return this._updateTimeline(),this.timeline.getCurrentLabel()},c.getDuration=function(){return this.timeline.duration};try{Object.defineProperties(c,{labels:{get:c.getLabels},currentLabel:{get:c.getCurrentLabel},totalFrames:{get:c.getDuration},duration:{get:c.getDuration}})}catch(a){}c.initialize=a,c.isVisible=function(){return!!(this.visible&&this.alpha>0&&0!=this.scaleX&&0!=this.scaleY)},c.draw=function(a,b){return!!this.DisplayObject_draw(a,b)||(this._updateTimeline(),this.Container_draw(a,b),!0)},c.play=function(){this.paused=!1},c.stop=function(){this.paused=!0},c.gotoAndPlay=function(a){this.paused=!1,this._goto(a)},c.gotoAndStop=function(a){this.paused=!0,this._goto(a)},c.advance=function(b){var c=a.INDEPENDENT;if(this.mode==c){for(var d=this,e=d.framerate;(d=d.parent)&&null==e;)d.mode==c&&(e=d._framerate);this._framerate=e;var f=null!=e&&-1!=e&&null!=b?b/(1e3/e)+this._t:1,g=0|f;for(this._t=f-g;!this.paused&&g--;)this._prevPosition=this._prevPos<0?0:this._prevPosition+1,this._updateTimeline()}},c.clone=function(){throw"MovieClip cannot be cloned."},c.toString=function(){return"[MovieClip (name="+this.name+")]"},c._tick=function(a){this.advance(a&&a.delta),this.Container__tick(a)},c._goto=function(a){var b=this.timeline.resolve(a);null!=b&&(-1==this._prevPos&&(this._prevPos=NaN),this._prevPosition=b,this._t=0,this._updateTimeline())},c._reset=function(){this._prevPos=-1,this._t=this.currentFrame=0,this.paused=!1},c._updateTimeline=function(){var b=this.timeline,c=this.mode!=a.INDEPENDENT;b.loop=null==this.loop||this.loop;var d=c?this.startPosition+(this.mode==a.SINGLE_FRAME?0:this._synchOffset):this._prevPos<0?0:this._prevPosition,e=c||!this.actionsEnabled?createjs.Tween.NONE:null;if(this.currentFrame=b._calcPosition(d),b.setPosition(d,e),this._prevPosition=b._prevPosition,this._prevPos!=b._prevPos){this.currentFrame=this._prevPos=b._prevPos;for(var f in this._managed)this._managed[f]=1;for(var g=b._tweens,h=0,i=g.length;h=0;h--){var n=m[h].id;1==this._managed[n]&&(this.removeChildAt(h),delete this._managed[n])}}},c._setState=function(a,b){if(a)for(var c=a.length-1;c>=0;c--){var d=a[c],e=d.t,f=d.p;for(var g in f)e[g]=f[g];this._addManagedChild(e,b)}},c._addManagedChild=function(b,c){b._off||(this.addChildAt(b,0),b instanceof a&&(b._synchOffset=c,b.mode==a.INDEPENDENT&&b.autoReset&&!this._managed[b.id]&&b._reset()),this._managed[b.id]=2)},c._getBounds=function(a,b){var c=this.DisplayObject_getBounds();return c||(this._updateTimeline(),this.frameBounds&&(c=this._rectangle.copy(this.frameBounds[this.currentFrame]))),c?this._transformBounds(c,a,b):this.Container__getBounds(a,b)},createjs.MovieClip=createjs.promote(a,"Container"),b.priority=100,b.install=function(){createjs.Tween.installPlugin(b,["startPosition"])},b.init=function(a,b,c){return c},b.step=function(){},b.tween=function(b,c,d,e,f,g,h,i){return b.target instanceof a?1==g?f[c]:e[c]:d}}(),this.createjs=this.createjs||{},function(){"use strict";function a(){throw"SpriteSheetUtils cannot be instantiated"}var b=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");b.getContext&&(a._workingCanvas=b,a._workingContext=b.getContext("2d"),b.width=b.height=1),a.addFlippedFrames=function(b,c,d,e){if(c||d||e){var f=0;c&&a._flip(b,++f,!0,!1),d&&a._flip(b,++f,!1,!0),e&&a._flip(b,++f,!0,!0)}},a.extractFrame=function(b,c){isNaN(c)&&(c=b.getAnimation(c).frames[0]);var d=b.getFrame(c);if(!d)return null;var e=d.rect,f=a._workingCanvas;f.width=e.width,f.height=e.height,a._workingContext.drawImage(d.image,e.x,e.y,e.width,e.height,0,0,e.width,e.height);var g=document.createElement("img");return g.src=f.toDataURL("image/png"),g},a.mergeAlpha=function(a,b,c){c||(c=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas")),c.width=Math.max(b.width,a.width),c.height=Math.max(b.height,a.height);var d=c.getContext("2d");return d.save(),d.drawImage(a,0,0),d.globalCompositeOperation="destination-in",d.drawImage(b,0,0),d.restore(),c},a._flip=function(b,c,d,e){for(var f=b._images,g=a._workingCanvas,h=a._workingContext,i=f.length/c,j=0;jthis.maxHeight)throw a.ERR_DIMENSIONS;for(var e=0,f=0,g=0;d.length;){var h=this._fillRow(d,e,g,c,b);if(h.w>f&&(f=h.w),e+=h.h,!h.h||!d.length){var i=createjs.createCanvas?createjs.createCanvas():document.createElement("canvas");i.width=this._getSize(f,this.maxWidth),i.height=this._getSize(e,this.maxHeight),this._data.images[g]=i,h.h||(f=e=0,g++)}}},b._setupMovieClipFrame=function(a,b){var c=a.actionsEnabled;a.actionsEnabled=!1,a.gotoAndStop(b.i),a.actionsEnabled=c,b.f&&b.f(a,b.d,b.i)},b._getSize=function(a,b){for(var c=4;Math.pow(2,++c)=0;l--){var m=b[l],n=this._scale*m.scale,o=m.sourceRect,p=m.source,q=Math.floor(n*o.x-f),r=Math.floor(n*o.y-f),s=Math.ceil(n*o.height+2*f),t=Math.ceil(n*o.width+2*f);if(t>g)throw a.ERR_DIMENSIONS;s>i||j+t>g||(m.img=d,m.rect=new createjs.Rectangle(j,c,t,s),k=k||s,b.splice(l,1),e[m.index]=[j,c,t,s,d,Math.round(-q+n*p.regX-f),Math.round(-r+n*p.regY-f)],j+=t)}return{w:j,h:k}},b._endBuild=function(){this.spriteSheet=new createjs.SpriteSheet(this._data),this._data=null,this.progress=1,this.dispatchEvent("complete")},b._run=function(){for(var a=50*Math.max(.01,Math.min(.99,this.timeSlice||.3)),b=(new Date).getTime()+a,c=!1;b>(new Date).getTime();)if(!this._drawNext()){c=!0;break}if(c)this._endBuild();else{var d=this;this._timerID=setTimeout(function(){d._run()},50-a)}var e=this.progress=this._index/this._frames.length;if(this.hasEventListener("progress")){var f=new createjs.Event("progress");f.progress=e,this.dispatchEvent(f)}},b._drawNext=function(){var a=this._frames[this._index],b=a.scale*this._scale,c=a.rect,d=a.sourceRect,e=this._data.images[a.img],f=e.getContext("2d");return a.funct&&a.funct(a.source,a.data),f.save(),f.beginPath(),f.rect(c.x,c.y,c.width,c.height),f.clip(),f.translate(Math.ceil(c.x-d.x*b),Math.ceil(c.y-d.y*b)),f.scale(b,b),a.source.draw(f),f.restore(),++this._index>1;if(isNaN(c)||c<0)return!1;var d=this.blurY>>1;if(isNaN(d)||d<0)return!1;if(0==c&&0==d)return!1;var e=this.quality;(isNaN(e)||e<1)&&(e=1),e|=0,e>3&&(e=3),e<1&&(e=1);var f=b.data,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=c+c+1|0,w=d+d+1|0,x=0|b.width,y=0|b.height,z=x-1|0,A=y-1|0,B=c+1|0,C=d+1|0,D={r:0,b:0,g:0,a:0},E=D;for(i=1;i0;){m=l=0;var M=I,N=J;for(h=y;--h>-1;){for(n=B*(r=f[0|l]),o=B*(s=f[l+1|0]),p=B*(t=f[l+2|0]),q=B*(u=f[l+3|0]),E=D,i=B;--i>-1;)E.r=r,E.g=s,E.b=t,E.a=u,E=E.n;for(i=1;i>>N,f[l++]=o*M>>>N,f[l++]=p*M>>>N,f[l++]=q*M>>>N,j=m+((j=g+c+1)0)for(h=0;h>>N,u>0?(f[j]=n*M>>>N,f[j+1]=o*M>>>N,f[j+2]=p*M>>>N):f[j]=f[j+1]=f[j+2]=0,j=g+((j=h+C)>>N,u>0?(u=255/u,f[j]=(n*M>>>N)*u,f[j+1]=(o*M>>>N)*u,f[j+2]=(p*M>>>N)*u):f[j]=f[j+1]=f[j+2]=0,j=g+((j=h+C)0?3*a/100:a/100),c=.3086,d=.6094,e=.082;return this._multiplyMatrix([c*(1-b)+b,d*(1-b),e*(1-b),0,0,c*(1-b),d*(1-b)+b,e*(1-b),0,0,c*(1-b),d*(1-b),e*(1-b)+b,0,0,0,0,0,1,0,0,0,0,0,1]),this},b.adjustHue=function(a){if(0==a||isNaN(a))return this;a=this._cleanValue(a,180)/180*Math.PI;var b=Math.cos(a),c=Math.sin(a),d=.213,e=.715,f=.072;return this._multiplyMatrix([d+b*(1-d)+c*-d,e+b*-e+c*-e,f+b*-f+c*(1-f),0,0,d+b*-d+.143*c,e+b*(1-e)+.14*c,f+b*-f+-.283*c,0,0,d+b*-d+c*-(1-d),e+b*-e+c*e,f+b*(1-f)+c*f,0,0,0,0,0,1,0,0,0,0,0,1]),this},b.concat=function(b){return b=this._fixMatrix(b),b.length!=a.LENGTH?this:(this._multiplyMatrix(b),this)},b.clone=function(){return(new a).copy(this)},b.toArray=function(){for(var b=[],c=0,d=a.LENGTH;ca.LENGTH&&(b=b.slice(0,a.LENGTH)),b},createjs.ColorMatrix=a}(),this.createjs=this.createjs||{},function(){"use strict";function a(a){this.matrix=a}var b=createjs.extend(a,createjs.Filter);b.toString=function(){return"[ColorMatrixFilter]"},b.clone=function(){return new a(this.matrix)},b._applyFilter=function(a){for(var b,c,d,e,f=a.data,g=f.length,h=this.matrix,i=h[0],j=h[1],k=h[2],l=h[3],m=h[4],n=h[5],o=h[6],p=h[7],q=h[8],r=h[9],s=h[10],t=h[11],u=h[12],v=h[13],w=h[14],x=h[15],y=h[16],z=h[17],A=h[18],B=h[19],C=0;C0||window.navigator.pointerEnabled&&window.navigator.maxTouchPoints>0)},a.enable=function(b,c,d){return!!(b&&b.canvas&&a.isSupported())&&(!!b.__touch||(b.__touch={pointers:{},multitouch:!c,preventDefault:!d,count:0},"ontouchstart"in window?a._IOS_enable(b):(window.navigator.msPointerEnabled||window.navigator.pointerEnabled)&&a._IE_enable(b),!0))},a.disable=function(b){b&&("ontouchstart"in window?a._IOS_disable(b):(window.navigator.msPointerEnabled||window.navigator.pointerEnabled)&&a._IE_disable(b),delete b.__touch)},a._IOS_enable=function(b){var c=b.canvas,d=b.__touch.f=function(c){a._IOS_handleEvent(b,c)};c.addEventListener("touchstart",d,!1),c.addEventListener("touchmove",d,!1),c.addEventListener("touchend",d,!1),c.addEventListener("touchcancel",d,!1)},a._IOS_disable=function(a){var b=a.canvas;if(b){var c=a.__touch.f;b.removeEventListener("touchstart",c,!1),b.removeEventListener("touchmove",c,!1),b.removeEventListener("touchend",c,!1),b.removeEventListener("touchcancel",c,!1)}},a._IOS_handleEvent=function(a,b){if(a){a.__touch.preventDefault&&b.preventDefault&&b.preventDefault();for(var c=b.changedTouches,d=b.type,e=0,f=c.length;e1?this.addChildAt.apply(this,Array.prototype.slice.call(arguments).concat([this.children.length])):this.addChildAt(a,this.children.length)},b.addChildAt=function(a,b){var c=arguments.length,d=arguments[c-1];if(0>d||d>this.children.length)return arguments[c-2];if(c>2){for(var e=0;c-1>e;e++)this.addChildAt(arguments[e],d+e);return arguments[c-2]}if(!(a._spritestage_compatibility>=1))return console&&console.log("Error: You can only add children of type SpriteContainer, Sprite, BitmapText, or DOMElement ["+a.toString()+"]"),a;if(a._spritestage_compatibility<=4){var f=a.spriteSheet;if(!f||!f._images||f._images.length>1||this.spriteSheet&&this.spriteSheet!==f)return console&&console.log("Error: A child's spriteSheet must be equal to its parent spriteSheet and only use one image. ["+a.toString()+"]"),a;this.spriteSheet=f}return a.parent&&a.parent.removeChild(a),a.parent=this,this.children.splice(b,0,a),a},b.toString=function(){return"[SpriteContainer (name="+this.name+")]"},createjs.SpriteContainer=createjs.promote(a,"Container")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c){this.Stage_constructor(a),this._preserveDrawingBuffer=b||!1,this._antialias=c||!1,this._viewportWidth=0,this._viewportHeight=0,this._projectionMatrix=null,this._webGLContext=null,this._webGLErrorDetected=!1,this._clearColor=null,this._maxTexturesPerDraw=1,this._maxBoxesPointsPerDraw=null,this._maxBoxesPerDraw=null,this._maxIndicesPerDraw=null,this._shaderProgram=null,this._vertices=null,this._verticesBuffer=null,this._indices=null,this._indicesBuffer=null,this._currentBoxIndex=-1,this._drawTexture=null,this._initializeWebGL()}[createjs.SpriteContainer,createjs.Sprite,createjs.BitmapText,createjs.Bitmap,createjs.DOMElement].forEach(function(a,b){a.prototype._spritestage_compatibility=b+1});var b=createjs.extend(a,createjs.Stage);a.NUM_VERTEX_PROPERTIES=5,a.POINTS_PER_BOX=4,a.NUM_VERTEX_PROPERTIES_PER_BOX=a.POINTS_PER_BOX*a.NUM_VERTEX_PROPERTIES,a.INDICES_PER_BOX=6,a.MAX_INDEX_SIZE=Math.pow(2,16),a.MAX_BOXES_POINTS_INCREMENT=a.MAX_INDEX_SIZE/4,b._get_isWebGL=function(){return!!this._webGLContext};try{Object.defineProperties(b,{isWebGL:{get:b._get_isWebGL}})}catch(c){}b.addChild=function(a){return null==a?a:arguments.length>1?this.addChildAt.apply(this,Array.prototype.slice.call(arguments).concat([this.children.length])):this.addChildAt(a,this.children.length)},b.addChildAt=function(a,b){var c=arguments.length,d=arguments[c-1];if(0>d||d>this.children.length)return arguments[c-2];if(c>2){for(var e=0;c-1>e;e++)this.addChildAt(arguments[e],d+e);return arguments[c-2]}return a._spritestage_compatibility>=1?!a.image&&!a.spriteSheet&&a._spritestage_compatibility<=4?(console&&console.log("Error: You can only add children that have an image or spriteSheet defined on them. ["+a.toString()+"]"),a):(a.parent&&a.parent.removeChild(a),a.parent=this,this.children.splice(b,0,a),a):(console&&console.log("Error: You can only add children of type SpriteContainer, Sprite, Bitmap, BitmapText, or DOMElement. ["+a.toString()+"]"),a)},b.update=function(a){if(this.canvas){this.tickOnUpdate&&this.tick(a),this.dispatchEvent("drawstart"),this.autoClear&&this.clear();var b=this._setWebGLContext();b?this.draw(b,!1):(b=this.canvas.getContext("2d"),b.save(),this.updateContext(b),this.draw(b,!1),b.restore()),this.dispatchEvent("drawend")}},b.clear=function(){if(this.canvas){var a=this._setWebGLContext();a?a.clear(a.COLOR_BUFFER_BIT):(a=this.canvas.getContext("2d"),a.setTransform(1,0,0,1,0,0),a.clearRect(0,0,this.canvas.width+1,this.canvas.height+1))}},b.draw=function(a,b){return"undefined"!=typeof WebGLRenderingContext&&(a===this._webGLContext||a instanceof WebGLRenderingContext)?(this._drawWebGLKids(this.children,a),!0):this.Stage_draw(a,b)},b.updateViewport=function(a,b){this._viewportWidth=a,this._viewportHeight=b,this._webGLContext&&(this._webGLContext.viewport(0,0,this._viewportWidth,this._viewportHeight),this._projectionMatrix||(this._projectionMatrix=new Float32Array([0,0,0,0,0,1,-1,1,1])),this._projectionMatrix[0]=2/a,this._projectionMatrix[4]=-2/b)},b.clearImageTexture=function(a){a.__easeljs_texture=null},b.toString=function(){return"[SpriteStage (name="+this.name+")]"},b._initializeWebGL=function(){this._clearColor={r:0,g:0,b:0,a:0},this._setWebGLContext()},b._setWebGLContext=function(){return this.canvas?this._webGLContext&&this._webGLContext.canvas===this.canvas||this._initializeWebGLContext():this._webGLContext=null,this._webGLContext},b._initializeWebGLContext=function(){var a={depth:!1,alpha:!0,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias,premultipliedAlpha:!0},b=this._webGLContext=this.canvas.getContext("webgl",a)||this.canvas.getContext("experimental-webgl",a);if(b){if(this._maxTexturesPerDraw=1,this._setClearColor(this._clearColor.r,this._clearColor.g,this._clearColor.b,this._clearColor.a),b.enable(b.BLEND),b.blendFuncSeparate(b.SRC_ALPHA,b.ONE_MINUS_SRC_ALPHA,b.ONE,b.ONE_MINUS_SRC_ALPHA),b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),this._createShaderProgram(b),this._webGLErrorDetected)return void(this._webGLContext=null);this._createBuffers(b),this.updateViewport(this._viewportWidth||this.canvas.width||0,this._viewportHeight||this.canvas.height||0)}},b._setClearColor=function(a,b,c,d){this._clearColor.r=a,this._clearColor.g=b,this._clearColor.b=c,this._clearColor.a=d,this._webGLContext&&this._webGLContext.clearColor(a,b,c,d)},b._createShaderProgram=function(a){var b=this._createShader(a,a.FRAGMENT_SHADER,"precision mediump float;uniform sampler2D uSampler0;varying vec3 vTextureCoord;void main(void) {vec4 color = texture2D(uSampler0, vTextureCoord.st);gl_FragColor = vec4(color.rgb, color.a * vTextureCoord.z);}"),c=this._createShader(a,a.VERTEX_SHADER,"attribute vec2 aVertexPosition;attribute vec3 aTextureCoord;uniform mat3 uPMatrix;varying vec3 vTextureCoord;void main(void) {vTextureCoord = aTextureCoord;gl_Position = vec4((uPMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);}");if(!this._webGLErrorDetected&&b&&c){var d=a.createProgram();if(a.attachShader(d,b),a.attachShader(d,c),a.linkProgram(d),!a.getProgramParameter(d,a.LINK_STATUS))return void(this._webGLErrorDetected=!0);d.vertexPositionAttribute=a.getAttribLocation(d,"aVertexPosition"),d.textureCoordAttribute=a.getAttribLocation(d,"aTextureCoord"),d.sampler0uniform=a.getUniformLocation(d,"uSampler0"),a.enableVertexAttribArray(d.vertexPositionAttribute),a.enableVertexAttribArray(d.textureCoordAttribute),d.pMatrixUniform=a.getUniformLocation(d,"uPMatrix"),a.useProgram(d),this._shaderProgram=d}},b._createShader=function(a,b,c){var d=a.createShader(b);return a.shaderSource(d,c),a.compileShader(d),a.getShaderParameter(d,a.COMPILE_STATUS)?d:(this._webGLErrorDetected=!0,null)},b._createBuffers=function(b){this._verticesBuffer=b.createBuffer(),b.bindBuffer(b.ARRAY_BUFFER,this._verticesBuffer);var c=4*a.NUM_VERTEX_PROPERTIES;b.vertexAttribPointer(this._shaderProgram.vertexPositionAttribute,2,b.FLOAT,b.FALSE,c,0),b.vertexAttribPointer(this._shaderProgram.textureCoordAttribute,3,b.FLOAT,b.FALSE,c,8),this._indicesBuffer=b.createBuffer(),this._setMaxBoxesPoints(b,a.MAX_BOXES_POINTS_INCREMENT)},b._setMaxBoxesPoints=function(b,c){this._maxBoxesPointsPerDraw=c,this._maxBoxesPerDraw=this._maxBoxesPointsPerDraw/a.POINTS_PER_BOX|0,this._maxIndicesPerDraw=this._maxBoxesPerDraw*a.INDICES_PER_BOX,b.bindBuffer(b.ARRAY_BUFFER,this._verticesBuffer),this._vertices=new Float32Array(this._maxBoxesPerDraw*a.NUM_VERTEX_PROPERTIES_PER_BOX),b.bufferData(b.ARRAY_BUFFER,this._vertices,b.DYNAMIC_DRAW),this._indices=new Uint16Array(this._maxIndicesPerDraw);for(var d=0,e=this._indices.length;e>d;d+=a.INDICES_PER_BOX){var f=d*a.POINTS_PER_BOX/a.INDICES_PER_BOX;this._indices[d]=f,this._indices[d+1]=f+1,this._indices[d+2]=f+2,this._indices[d+3]=f,this._indices[d+4]=f+2,this._indices[d+5]=f+3}b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,this._indicesBuffer),b.bufferData(b.ELEMENT_ARRAY_BUFFER,this._indices,b.STATIC_DRAW)},b._setupImageTexture=function(a,b){if(b&&(b.naturalWidth||b.getContext||b.readyState>=2)){var c=b.__easeljs_texture;return c||(c=b.__easeljs_texture=a.createTexture(),a.bindTexture(a.TEXTURE_2D,c),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,b),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.NEAREST),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE)),c}},b._drawWebGLKids=function(b,c,d){for(var e,f,g=this.snapToPixelEnabled,h=null,i=0,j=0,k=0,l=0,m=this._vertices,n=a.NUM_VERTEX_PROPERTIES_PER_BOX,o=a.MAX_INDEX_SIZE,p=this._maxBoxesPerDraw-1,q=0,r=b.length;r>q;q++)if(e=b[q],e.isVisible()){var h=e.image||e.spriteSheet&&e.spriteSheet._images[0],s=h.__easeljs_texture;if(s||(s=this._setupImageTexture(c,h))){f=e._props.matrix,f=(d?f.copy(d):f.identity()).appendTransform(e.x,e.y,e.scaleX,e.scaleY,e.rotation,e.skewX,e.skewY,e.regX,e.regY);var t=0,u=1,v=0,w=1;if(4===e._spritestage_compatibility)i=0,j=0,k=h.width,l=h.height;else if(2===e._spritestage_compatibility){var x=e.spriteSheet.getFrame(e.currentFrame),y=x.rect;i=-x.regX,j=-x.regY,k=i+y.width,l=j+y.height,t=y.x/h.width,v=y.y/h.height,u=t+y.width/h.width,w=v+y.height/h.height}else h=null,3===e._spritestage_compatibility&&e._updateText();if(!d&&e._spritestage_compatibility<=4&&s!==this._drawTexture&&(this._drawToGPU(c),this._drawTexture=s),null!==h){var z=++this._currentBoxIndex*n,A=f.a,B=f.b,C=f.c,D=f.d,E=f.tx,F=f.ty;g&&e.snapToPixel&&(E=E+(0>E?-.5:.5)|0,F=F+(0>F?-.5:.5)|0),m[z]=i*A+j*C+E,m[z+1]=i*B+j*D+F,m[z+5]=i*A+l*C+E,m[z+6]=i*B+l*D+F,m[z+10]=k*A+l*C+E,m[z+11]=k*B+l*D+F,m[z+15]=k*A+j*C+E,m[z+16]=k*B+j*D+F,m[z+2]=m[z+7]=t,m[z+12]=m[z+17]=u,m[z+3]=m[z+18]=v,m[z+8]=m[z+13]=w,m[z+4]=m[z+9]=m[z+14]=m[z+19]=e.alpha,this._currentBoxIndex===p&&(this._drawToGPU(c),this._drawTexture=s,this._maxBoxesPointsPerDraw1?this.addChildAt.apply(this,Array.prototype.slice.call(arguments).concat([this.children.length])):this.addChildAt(a,this.children.length)},b.addChildAt=function(a,b){var c=arguments.length,d=arguments[c-1];if(d<0||d>this.children.length)return arguments[c-2];if(c>2){for(var e=0;e=1))return console&&console.log("Error: You can only add children of type SpriteContainer, Sprite, BitmapText, or DOMElement ["+a.toString()+"]"),a;if(a._spritestage_compatibility<=4){var f=a.spriteSheet;if(!f||!f._images||f._images.length>1||this.spriteSheet&&this.spriteSheet!==f)return console&&console.log("Error: A child's spriteSheet must be equal to its parent spriteSheet and only use one image. ["+a.toString()+"]"),a;this.spriteSheet=f}return a.parent&&a.parent.removeChild(a),a.parent=this,this.children.splice(b,0,a),a},b.toString=function(){return"[SpriteContainer (name="+this.name+")]"},createjs.SpriteContainer=createjs.promote(a,"Container")}(),this.createjs=this.createjs||{},function(){"use strict";function a(a,b,c){this.Stage_constructor(a),this._preserveDrawingBuffer=b||!1,this._antialias=c||!1,this._viewportWidth=0,this._viewportHeight=0,this._projectionMatrix=null,this._webGLContext=null,this._webGLErrorDetected=!1,this._clearColor=null,this._maxTexturesPerDraw=1,this._maxBoxesPointsPerDraw=null,this._maxBoxesPerDraw=null,this._maxIndicesPerDraw=null,this._shaderProgram=null,this._vertices=null,this._verticesBuffer=null,this._indices=null,this._indicesBuffer=null,this._currentBoxIndex=-1,this._drawTexture=null,this._initializeWebGL()}[createjs.SpriteContainer,createjs.Sprite,createjs.BitmapText,createjs.Bitmap,createjs.DOMElement].forEach(function(a,b){a.prototype._spritestage_compatibility=b+1});var b=createjs.extend(a,createjs.Stage);a.NUM_VERTEX_PROPERTIES=5,a.POINTS_PER_BOX=4,a.NUM_VERTEX_PROPERTIES_PER_BOX=a.POINTS_PER_BOX*a.NUM_VERTEX_PROPERTIES,a.INDICES_PER_BOX=6,a.MAX_INDEX_SIZE=Math.pow(2,16),a.MAX_BOXES_POINTS_INCREMENT=a.MAX_INDEX_SIZE/4,b._get_isWebGL=function(){return!!this._webGLContext};try{Object.defineProperties(b,{isWebGL:{get:b._get_isWebGL}})}catch(a){}b.addChild=function(a){return null==a?a:arguments.length>1?this.addChildAt.apply(this,Array.prototype.slice.call(arguments).concat([this.children.length])):this.addChildAt(a,this.children.length)},b.addChildAt=function(a,b){var c=arguments.length,d=arguments[c-1];if(d<0||d>this.children.length)return arguments[c-2];if(c>2){for(var e=0;e=1?!a.image&&!a.spriteSheet&&a._spritestage_compatibility<=4?(console&&console.log("Error: You can only add children that have an image or spriteSheet defined on them. ["+a.toString()+"]"),a):(a.parent&&a.parent.removeChild(a),a.parent=this,this.children.splice(b,0,a),a):(console&&console.log("Error: You can only add children of type SpriteContainer, Sprite, Bitmap, BitmapText, or DOMElement. ["+a.toString()+"]"),a)},b.update=function(a){if(this.canvas){this.tickOnUpdate&&this.tick(a),this.dispatchEvent("drawstart"),this.autoClear&&this.clear();var b=this._setWebGLContext();b?this.draw(b,!1):(b=this.canvas.getContext("2d"),b.save(),this.updateContext(b),this.draw(b,!1),b.restore()),this.dispatchEvent("drawend")}},b.clear=function(){if(this.canvas){var a=this._setWebGLContext();a?a.clear(a.COLOR_BUFFER_BIT):(a=this.canvas.getContext("2d"),a.setTransform(1,0,0,1,0,0),a.clearRect(0,0,this.canvas.width+1,this.canvas.height+1))}},b.draw=function(a,b){return"undefined"!=typeof WebGLRenderingContext&&(a===this._webGLContext||a instanceof WebGLRenderingContext)?(this._drawWebGLKids(this.children,a),!0):this.Stage_draw(a,b)},b.updateViewport=function(a,b){this._viewportWidth=a,this._viewportHeight=b,this._webGLContext&&(this._webGLContext.viewport(0,0,this._viewportWidth,this._viewportHeight),this._projectionMatrix||(this._projectionMatrix=new Float32Array([0,0,0,0,0,1,-1,1,1])),this._projectionMatrix[0]=2/a,this._projectionMatrix[4]=-2/b)},b.clearImageTexture=function(a){a.__easeljs_texture=null},b.toString=function(){return"[SpriteStage (name="+this.name+")]"},b._initializeWebGL=function(){this._clearColor={r:0,g:0,b:0,a:0},this._setWebGLContext()},b._setWebGLContext=function(){return this.canvas?this._webGLContext&&this._webGLContext.canvas===this.canvas||this._initializeWebGLContext():this._webGLContext=null,this._webGLContext},b._initializeWebGLContext=function(){var a={depth:!1,alpha:!0,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias,premultipliedAlpha:!0},b=this._webGLContext=this.canvas.getContext("webgl",a)||this.canvas.getContext("experimental-webgl",a);if(b){if(this._maxTexturesPerDraw=1,this._setClearColor(this._clearColor.r,this._clearColor.g,this._clearColor.b,this._clearColor.a),b.enable(b.BLEND),b.blendFuncSeparate(b.SRC_ALPHA,b.ONE_MINUS_SRC_ALPHA,b.ONE,b.ONE_MINUS_SRC_ALPHA),b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),this._createShaderProgram(b),this._webGLErrorDetected)return void(this._webGLContext=null);this._createBuffers(b),this.updateViewport(this._viewportWidth||this.canvas.width||0,this._viewportHeight||this.canvas.height||0)}},b._setClearColor=function(a,b,c,d){this._clearColor.r=a,this._clearColor.g=b,this._clearColor.b=c,this._clearColor.a=d,this._webGLContext&&this._webGLContext.clearColor(a,b,c,d)},b._createShaderProgram=function(a){var b=this._createShader(a,a.FRAGMENT_SHADER,"precision mediump float;uniform sampler2D uSampler0;varying vec3 vTextureCoord;void main(void) {vec4 color = texture2D(uSampler0, vTextureCoord.st);gl_FragColor = vec4(color.rgb, color.a * vTextureCoord.z);}"),c=this._createShader(a,a.VERTEX_SHADER,"attribute vec2 aVertexPosition;attribute vec3 aTextureCoord;uniform mat3 uPMatrix;varying vec3 vTextureCoord;void main(void) {vTextureCoord = aTextureCoord;gl_Position = vec4((uPMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);}");if(!this._webGLErrorDetected&&b&&c){var d=a.createProgram();if(a.attachShader(d,b),a.attachShader(d,c),a.linkProgram(d),!a.getProgramParameter(d,a.LINK_STATUS))return void(this._webGLErrorDetected=!0);d.vertexPositionAttribute=a.getAttribLocation(d,"aVertexPosition"),d.textureCoordAttribute=a.getAttribLocation(d,"aTextureCoord"),d.sampler0uniform=a.getUniformLocation(d,"uSampler0"),a.enableVertexAttribArray(d.vertexPositionAttribute),a.enableVertexAttribArray(d.textureCoordAttribute),d.pMatrixUniform=a.getUniformLocation(d,"uPMatrix"),a.useProgram(d),this._shaderProgram=d}},b._createShader=function(a,b,c){var d=a.createShader(b);return a.shaderSource(d,c),a.compileShader(d),a.getShaderParameter(d,a.COMPILE_STATUS)?d:(this._webGLErrorDetected=!0,null)},b._createBuffers=function(b){this._verticesBuffer=b.createBuffer(),b.bindBuffer(b.ARRAY_BUFFER,this._verticesBuffer);var c=4*a.NUM_VERTEX_PROPERTIES;b.vertexAttribPointer(this._shaderProgram.vertexPositionAttribute,2,b.FLOAT,b.FALSE,c,0),b.vertexAttribPointer(this._shaderProgram.textureCoordAttribute,3,b.FLOAT,b.FALSE,c,8),this._indicesBuffer=b.createBuffer(),this._setMaxBoxesPoints(b,a.MAX_BOXES_POINTS_INCREMENT)},b._setMaxBoxesPoints=function(b,c){this._maxBoxesPointsPerDraw=c,this._maxBoxesPerDraw=this._maxBoxesPointsPerDraw/a.POINTS_PER_BOX|0,this._maxIndicesPerDraw=this._maxBoxesPerDraw*a.INDICES_PER_BOX,b.bindBuffer(b.ARRAY_BUFFER,this._verticesBuffer),this._vertices=new Float32Array(this._maxBoxesPerDraw*a.NUM_VERTEX_PROPERTIES_PER_BOX),b.bufferData(b.ARRAY_BUFFER,this._vertices,b.DYNAMIC_DRAW),this._indices=new Uint16Array(this._maxIndicesPerDraw);for(var d=0,e=this._indices.length;d=2)){var c=b.__easeljs_texture;return c||(c=b.__easeljs_texture=a.createTexture(),a.bindTexture(a.TEXTURE_2D,c),a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,b),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.NEAREST),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE)),c}},b._drawWebGLKids=function(b,c,d){for(var e,f,g=this.snapToPixelEnabled,h=null,i=0,j=0,k=0,l=0,m=this._vertices,n=a.NUM_VERTEX_PROPERTIES_PER_BOX,o=a.MAX_INDEX_SIZE,p=this._maxBoxesPerDraw-1,q=0,r=b.length;q 0 && sina > 0) - { + if (cosa > 0 && sina > 0) { retval = Math.atan(tana); } - else if (cosa < 0 && sina > 0) - { + else if (cosa < 0 && sina > 0) { retval = Math.PI + Math.atan(tana); } - else if (cosa < 0 && sina < 0) - { + else if (cosa < 0 && sina < 0) { retval = Math.PI + Math.atan(tana); } - else if (cosa > 0 && sina < 0) - { + else if (cosa > 0 && sina < 0) { retval = 2 * Math.PI + Math.atan(tana); } - + return retval; } + // This is just a copy of mathjs.equal, or rather mathjs.nearlyEqual + // For some reason can't use mathjs here + // But, perhaps this is better as it is self-contained and won't introduce a dependency in EaselJS on mathjs + // and also, the mathjs version is too stingy on its epsilon + function equalEnough(x, y) { + var relEpsilon = 0.001; + var absEpsilon = 2.2204460492503130808472633361816E-16; + + if (x === y) { + return true; + } + + // NaN + if (isNaN(x) || isNaN(y)) { + return false; + } + + // at this point x and y should be finite + if (isFinite(x) && isFinite(y)) { + // check numbers are very close, needed when comparing numbers near zero + var diff = Math.abs(x - y); + if (diff < absEpsilon) { + return true; + } + else { + // use relative error + return diff <= Math.max(Math.abs(x), Math.abs(y)) * relEpsilon; + } + } + + // Infinite and Number or negative Infinite and positive Infinite cases + return false; + } + + /** + * End support functions for elliptical arc + **/ + /** * Graphics command object. See {{#crossLink "Graphics/quadraticCurveTo"}}{{/crossLink}} and {{#crossLink "Graphics/append"}}{{/crossLink}} for more information. * @class QuadraticCurveTo diff --git a/tests/spec/GraphicsSpec.js b/tests/spec/GraphicsSpec.js index dd299c2cf..25de98fbd 100644 --- a/tests/spec/GraphicsSpec.js +++ b/tests/spec/GraphicsSpec.js @@ -323,5 +323,9 @@ describe("Graphics", function () { it('decodePath should equal p', function () { expect(this.g['decodePath']).toBe(this.g['p']); }); + + it ('ellipticalArc should equal ea', function () { + expect(this.g['ellipticalArc']).toBe(this.g['ea']); + }); }); });