From 3bf5eeb1023d24159f4db3c08b14bf94a1918b4b Mon Sep 17 00:00:00 2001 From: Andy Meneely Date: Thu, 2 Nov 2017 23:58:30 -0400 Subject: [PATCH] sprues: now with trim and trim_radius!! Fixes #235 --- docs/sprues.rst | 4 - lib/squib/graphics/save_sprue.rb | 81 +++++++----------- samples/sprues/_advanced_sprues.rb | 33 +++++++ .../sprues/advanced_sprues_01_expected.png | Bin 0 -> 62060 bytes .../sprues/advanced_sprues_02_expected.png | Bin 0 -> 27477 bytes samples/sprues/my_sprues/weird_sprue.yml | 17 ++++ 6 files changed, 81 insertions(+), 54 deletions(-) create mode 100644 samples/sprues/_advanced_sprues.rb create mode 100644 samples/sprues/advanced_sprues_01_expected.png create mode 100644 samples/sprues/advanced_sprues_02_expected.png create mode 100644 samples/sprues/my_sprues/weird_sprue.yml diff --git a/docs/sprues.rst b/docs/sprues.rst index 9adb7b7..44167b9 100644 --- a/docs/sprues.rst +++ b/docs/sprues.rst @@ -12,10 +12,6 @@ A `sprue `_ is a Squib feat Without using a sprue, the :doc:`/dsl/save_sheet` and :doc:`/dsl/save_sheet` will simply lay out your cards one after another with the gap and margins you specify. -.. warning:: - - Sprues don't currently support the `trim` and `trim_radius` options. `Stay tuned `_ - Using a Sprue ------------- diff --git a/lib/squib/graphics/save_sprue.rb b/lib/squib/graphics/save_sprue.rb index e1de07f..7c9211a 100644 --- a/lib/squib/graphics/save_sprue.rb +++ b/lib/squib/graphics/save_sprue.rb @@ -2,12 +2,11 @@ module Squib module Graphics # Helper class to generate templated sheet. class SaveSprue - def initialize(deck, tmpl, outfile) + def initialize(deck, tmpl, save_args) @deck = deck @tmpl = tmpl @page_number = 1 - @outfile = outfile - @rotated_delta = (@tmpl.card_width - @deck.width).abs / 2 + @save_args = save_args #might be Args::Sheet or Args::SaveBatch @overlay_lines = @tmpl.crop_lines.select do |line| line['overlay_on_cards'] end @@ -17,12 +16,9 @@ module Squib cc = init_cc cc.set_source_color(:white) # white backdrop TODO make option cc.paint - card_set = @tmpl.cards - per_sheet = card_set.size - default_angle = @tmpl.card_default_rotation - if default_angle.zero? - default_angle = check_card_orientation - end + slots = @tmpl.cards + per_sheet = slots.size + check_oversized_card draw_overlay_below_cards cc if range.size @@ -31,17 +27,12 @@ module Squib cc = next_page_if_needed(cc, i, per_sheet) card = @deck.cards[i] - slot = card_set[i % per_sheet] - x = slot['x'] - y = slot['y'] - angle = slot['rotate'] != 0 ? slot['rotate'] : default_angle - - if angle != 0 - draw_rotated_card cc, card, x, y, angle - else - cc.set_source card.cairo_surface, x, y - end - cc.paint + slot = slots[i % per_sheet] + + draw_card cc, card, + slot['x'], slot['y'], + slot['rotate'], + @save_args.trim[i], @save_args.trim_radius[i] bar.increment end @@ -130,50 +121,40 @@ module Squib end end - def check_card_orientation - clockwise = 1.5 * Math::PI - if @deck.width <= @tmpl.card_width && - @deck.height <= @tmpl.card_height - return 0 - elsif ( - @deck.width == @tmpl.card_height && - @deck.height == @tmpl.card_width) - Squib.logger.warn { - 'Rotating cards to match card orientation in template.' - } - return clockwise + def check_oversized_card + all_fit = @save_args.trim.inject(true) do |fits, trim| + fits && + (@deck.width - 2.0 * trim) <= @tmpl.card_width && + (@deck.height - 2.0 * trim) <= @tmpl.card_height end - Squib.logger.warn { 'Card size is larger than sprue\'s expected card size. '\ 'Cards may overlap.' - } - return 0 + } unless all_fit end - def draw_rotated_card(cc, card, x, y, angle) + def draw_card(cc, card, x, y, angle, trim, trim_radius) + # Compute the true size of the card after trimming + w = @deck.width - 2.0 * trim + h = @deck.height - 2.0 * trim + # Normalize the angles first + # TODO do this in the args class angle = angle % (2 * Math::PI) angle = 2 * Math::PI - angle if angle < 0 - # Determine what's the delta we need to translate our cards - delta_shift = @deck.width < @deck.height ? 1 : -1 - if angle.zero? || angle == Math::PI - delta = 0 - elsif angle < Math::PI - delta = -delta_shift * @rotated_delta - else - delta = delta_shift * @rotated_delta - end - # Perform the actual rotation and drawing mat = cc.matrix # Save the transformation matrix to revert later cc.translate x, y - cc.translate @deck.width / 2, @deck.height / 2 + cc.translate @deck.width / 2.0, @deck.height / 2.0 cc.rotate angle - cc.translate(-@deck.width / 2 + delta, -@deck.height / 2 + delta) + cc.translate -@deck.width / 2.0, -@deck.height / 2.0 + cc.rounded_rectangle(trim, trim, w, h, trim_radius, trim_radius) # clip + cc.clip cc.set_source card.cairo_surface, 0, 0 cc.matrix = mat + cc.paint + cc.reset_clip end end @@ -201,7 +182,7 @@ module Squib end def full_filename - @outfile.full_filename + @save_args.full_filename end end @@ -221,7 +202,7 @@ module Squib end def full_filename - @outfile.full_filename @page_number + @save_args.full_filename @page_number end end end diff --git a/samples/sprues/_advanced_sprues.rb b/samples/sprues/_advanced_sprues.rb new file mode 100644 index 0000000..4dd454a --- /dev/null +++ b/samples/sprues/_advanced_sprues.rb @@ -0,0 +1,33 @@ +require 'squib' + +# This is a more advanced example of Sprues +# (mostly so we can have a torturous regression test) +# - Uses a custom sprue +# - Weird rotations +# - Center-positioned +# - Uses per-card trim and trim_radius +# - Multiple pages +Squib::Deck.new(cards: 6, width: '2.2in', height: '2.1in') do + background color: :blue #blue never shows up! Yay clipping... + rect stroke_width: 5, stroke_color: :red, fill_color: :salmon + cut_zone margin: '0.125in', + stroke_width: 2, stroke_color: :purple + + circle x: width/2, y: height/2, radius: 20 # midpoint + + text str: (0..9).map{ |i| "Card #{i}\n\n" }, + font: 'Sans 32', align: :center, valign: :middle, + height: :deck, width: :deck + + # Per-card trims just for funsies + trims = ['0.2in'] * 9 + trims[0] = '0.3in' + trims[3] = '0.4in' + trim_radii = ['10pt'] * 9 + trim_radii[1] = '0.2in' + trim_radii[3] = '0.75in' + + save_sheet sprue: 'my_sprues/weird_sprue.yml', + trim: trims, trim_radius: trim_radii, + prefix: "advanced_sprues_" +end diff --git a/samples/sprues/advanced_sprues_01_expected.png b/samples/sprues/advanced_sprues_01_expected.png new file mode 100644 index 0000000000000000000000000000000000000000..c4a4d063ba058249c2e41a057c08c6a012b23c2f GIT binary patch literal 62060 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 Pp)Iu;88i9`pXYhG%h> zgVgUm#_1fsH+7$&MXLmmxx4=q(Wiox`KSO1qp$HBVbFw^nrrXHR=V@K5;nV(vum#V zJ^6kmLgk7x3;mKpEcV}6NQ)`evd1pGC#%-{(FvF8-!<5&d24df8dV!LL1ANj{qg;O zL%8kQQu0@ZJ66t7@e7nZTKX25tdyNB+`q5$yOo-Bio9A4f9z5N#83C%<4^{5s6KIk z(O|@%WfOfh<uR%)0uV`?=ay(azF^7F2 zR^b>M@`vCbDR;l^q!PQPbi(Y?J82d96H^eP9~Pq)d&BrEAu1>M>(ek)=TbZUni+zLp7+EYhd8BYYh^r z6Qw~nY5LdYR~luiMnq_VrdGG+5WZBGM_*}%ddFbcDSyS6uB!-7U7Pkz&J|k-h=|37M!)s2Zv_ z8o#~vxVqckLPoXaRcS`RohC>9P^NQV;-56rqKd)ZwkEPhy5U@`&`qzf6j&rnZ9a1M zR35+XI6dc$bnw@y&6$3x^MX?%A%lb%f(G!t67F%TMLx(K@+(Wt$s4AwJ$okKm8qs0 z85A_KW!EYkK*S(#*{1<{VZs{~vpA8CBI2 z#SLGiR9a9Pk?!tRkZz>AyBj0~=@5`kX=w@R5(K2XyQQTY-nsC9YOVL{`{7;dxr+~% zduI08GrN9!&&)X?p0`Kj4jne}KOXRu7)|grX&%&aPG zV`ni|92{xu=?F9UsA(es@ZiXz@=&ix(5+UNZ@UyO73|W+V{;l&gofYWqRVsG$@iNE z84f%DndMtPQ7d#9?iEQtZjv(ih73V`YW!kf9L2wZD1+ra+n|?v4q1zz1c>8rbu zHXJ&QkZD+MBMDaeoui|bu4IRd*=9?u{J>R<>b0*LXlJ~Q%@yC73f&=OFb~2=G?G}P zNv*E9!L+R3hlQcl< zIQh$ZCpnw9miI&Bv@(+9?sI7MtVLmYp2w?RVWGz6Ch_BqTs5u>hG+*wX7e?IGestn z{2oJlr3}f-{ev=*t3d#cUe~4V$ud;uP!icyx;_&Ue=yHr?092kW8)8Z{d^hPhl;Lt zPT+hezlXzH^_+SLG|91CU+lxb&W|yY7&ni<-Q}ZZ$zW;}t6^j9wYZclZQ{yjMxU#0 zxaYptKNZVMqXt^Or<2G}T1MQC-+tU;NKtIe@(`PQ4J-v05`3Y7Osnwb#8IVk$vBS;2?GRMl5|;*c0vF@r8iJUMpA@7K-TutIY`ti6il zEGMmF{6OkqI5lB7A5)3jP4^WB{gpRvL|llHG$jP`@lQ@c9wr2G_a|QEY^&Tk1q+8M zZ9Vh{2SW%r3Dzb;jY<2JB1IMgxrmZr+kl|Ea-3`}nBrmCISnX$h}bQvzkfYTXrpD2 zgzRgl(DVDbZRZmq0svurYsct7DX6k+cIztE49DEaq{PzIZ6zj0Ln00BWXbjeDGb6gK5X89`n?5j4VRNO6jpogH!0`*= zihUN)!%n#R!}x}7H7H5(=4mEbnFm=9YSd5`i*7U!x%Y00vE%rz2?O3s1zG>Yp2lUiV)$#}CXR`+_y3XyaA8mh~4PD+J(9|4is0zu&|&KM^9qQD;#) z`<>UB$3I+TVg=wtZ}Qda`!f&op-V&!D5RgRh10|8OhJueVVO_nQ{Eg%9DsqiEyilb zCRy{qDQXvd_^_grm{w4{JR5dd5+)!)@GgND_T)~(GoE^2CCzY&5;(! zGG2j6@zuaVe64C<3hkuYWPW&kWVDe43OR`Jc!mfN>M%u$Kmi>nHnv||eV>O(ysoC0 zV?+80%T$VX_J(#APck>(;yEqS#-Eou9p3Sea-Q(YV|o=LGWMqpcidI7@U#}m)O6rx)uh$Z z0&lk3>yuIwjOT2*Ue~YelI60nx|u)rKnW6lETBM<`0t@uP4*^vF&^nn2t@ofW2gKS1(~)v0gN;chs1g@wqDwqi-O@>-`J~#!09c2^4bd zX~f(mYVv=0w_9b@Mx=Y|8yhc%#hPi1Qz9LOd--M>3X{9#Bcb9As?+lEnOHt| z2R+&na;|irOk&R9$6=72i0hw!FkdkmeX}x7U%U~_Bvp7>Ot!xQ5u>9Xtl*eSn630s zxG7Fn-x&T^xZQK~p3WT!mR=Ch2!B@D>paT_<%4`aypZ zuka77&YZ2I?xiMOFU*J1`SNu;8U&E|t zyJO*FbG=OUlQox!pS|Hn#Ya@$xX#emRKBdSEE|13^0udc+qeO~CT5pTEgtk4cM7gO zk8WVIX=Ko4Nh8%)Q*=%?7UY#nHswKzx}lR&R##D;*hM+-Kbv+DcKuPA{SZIC{QOpM zT8qt)sF0K)g^h{3+DW@3JNm}=w-B}Az+Mtf*>JBQa~do}vE3^yar5O&?V-bb!7p!c z+a(jxz=2}AKk{!y(@bWoKf*L{q8AIkszUtI%zY>Lf54c?JpRb6(F3k1vW<3pzg?xFk8SYC`%1XT&@;>R8ibm9A4;$ zOg-sDAnrQAlm-#UNo_Wo!EPz#6|mregOL5~v+`QD%o8Sy{L&Bglu=6pch5$j`F?&& zZ8-B;;;JY&nW@_e6(X*PNm*o)L?O$OMryy-_W`d3oYxe!TrpDVfeffuTc->_3R*NZ z??ZltLeTZiSF8S}9APC7M4Rbo6@3!U6NW%ujP}WGml3fOJ`u-heEI6N!|`dty+S<5 z#35uDy^7=QY%JN)=Mtmfh}g5RCMh8(J=T>nbcrjS&`NXkxx#;I-|TXGm78Il_Kx15_CD?CK7rUW!*1s+_0 z99rMN-P+!NvFT+>gB9nCWeLf?R%W*zEr4d7!~%2a1=p|2`&qZoZW?qzM1_M8H+y+} zqG>h)>;a_xqGw&oqf&;RajQuwFB{^^tzX_Q2Nlz05&6 z7z_m6$0j8&=w42i0!B1Kk>W7TQw}z0Y_X($&&u*i)CY>itW@=${)8GeC0oukil2mD zO80kPpo+RO*w)3CJ>~S2_>)2p8HT5tus_dPWMorzE3d~v>_FP^WhIY~=nXw=uxWg* zgc7@XD23cO{g%URQpNs2Z|8$fEpt~EI_p2zQTeiPJWgs zRPRK4LaYeQNrbpqzy|y>Ft-qpyO6+s{1wWAfthIe{&ftvO~pgSbGdTl!)ZpWrXDb7VhRBcrE|e7w*A+ip00*H z2S;vuY7ae@6pS~acqh1`m{++{dX*CVL-q!mnlNc#QttHj#%*yx<;ISyu5rVe%+}$A zO3V$NFkj|Ghoa_2tx*93DD~&i5vpev)TDs^^u5*Aqkx2vAMbT~^IU!kjC-NY!DKMBr(M8h zu1rE56@k$6hlx>OV*9@5%yZ`nz3+hZbuiKQxSc`3mLk#vTaiecCt*HHgO*V0?~>S6 zbuW^kUKUoI`#~DX9y+4~*iL6vTLci_og_ZxbtL7FWq^F>L*-AwWj{Q*y1)zk0`ax% zzlnXtmqT3xc*$Xa&MZ2n*y7m0>z%PEa2>KW;naU`x!w<=k+|~%brpux(Yu7x?cRF3 z0bqvW%0LjKKACciL!TvpK|hR;+2xGC>58`LER;c;jSwE9*j;;A-ymXqZn?b&+SER* zA|%>fJVJ>MiqlRSDbE=PJPKq^ zeum32~jTD*}m%u<;!jNnWwp{p8XieU?)U{ z7#NRWsha~2o3~J?$r`(_Xj08G-&6mU1VLQuAtMDzIs(%%2wvdR3VBGl!8h24>>qqV zewa$|g~|7!ApL(E{oi>4Gw}aERq5cjk^w>D;T-}0AE>hLVIFKw`m#RCrSq;ep{H2a z!f=wS^Ih>k1_-+q)}zZ1;ySf>3Yp=Yf@HS$O17h7`!PGR#`6WzH6w1C;8`ha<+sc%iuf*N*b>r4+wCSYx1(jn9xKb)`irJ<`xU%=O`?*Y_ z5%6UYh$4KhG!_UWoU>y`F$=uL;74Kt5Xtie%jCRdL9hep4dS~dMvZBnc3oAYbCAvk zf*q4ajf|3e#B%{d5VatX7*J4HOGVvYf89H21C3)Z_yVqOUd*SPKVE*7D=jkR;q@hX z+xf6@iwxrXCy7ga9f>_(%K(81^aqP!CVjxAGv3MYmnA`CEvjw#-4XsnFa_7i@FkPV zagQvo9sdhR!)$w`9^X`;bq_Ef&@gX;9O?4c6yN#K4;oSarZ7pM@zKa-Lc<3{oG6wh z8-SYI8$`TjXjV@Q$_*z0Wjp&XpwSHyMMh;Ty53s$bBA)J0M<9w&>Y|e*XAu8XkUa? z8ANd*MDLOWT_%7n^gfr&YmyE3f=hb4BhrZCY}zg3r5VtKo5=!%TN8j~q21hKS(g7E zj4*otDJ6%9yH|T(k`j82Izcy-KvzY&p0p_4B4`6Z3b;W<)}0vS*uFS`hH;3{lk8ag zjTLv<76gda>Wcfg?NERtG|EDV6%=~7^mjG|hoTk%C81RALqv7~#_|&IbSUVCk=526 z&#_~Gp&-7sYrNn6WuS-$9Gh3@`RrgJE_3>T!KTuERR7gJG6{fl=8eTyhICFSYU*Op z8R}((js!fMT$tKXDeZb}@&P>W1C%*mmi%x94qP!zV6ZrFdB{+*%u}GD6RN=>pA|Pc zQFn(MD5ZnID1()RrElQDc+{wjZI-~J`_ELN47`xk%w|Z1!ZeWI_$zK8=q#479zbb} zQ<=(Dsv&^i2NZg=zF6-p={zPutwcb@ABF-d4O)Z4sA)VlP)rY#hNq~T@HiCYSe8jg z-wu#r4;vt20vf5Av6oSm`Qwix&?np)sym1B1?Kk~xRPzl0-i9$RQgI*X5HXu% z5*qi2J}9#g{~}x$gGR)6*|BvK|Cm6%7(5)f>g#*xCa$L;iW?eTK4r(I0LDVdY8?;E z&4vKv2V0kTC6g@S7nq^hC|2YlEEqcE4d6FyF%t%Y@e2(L{QvnKwPQ)^0kkAZ1|JWe zECV6N0=?2ulR@oK{Q1HE){D9Y;v3A>_1H}abVIs9MS%pvX@G|jJkmkhe5CWgep%Ls zrlAs_UW4aAL7qPDWBGsg)i}^4c@d>=O}j}O@#xqu_uZrf@xv1K{}J=6 z8Q*aDH4FWy*;%Xpg?WVLEWUlLYbzGgFh(lzeqY*HPB$?weN*zh-T)6vT;r3TA@P*s zuG!|2e2{KTOYVX2q}yC>%v{p@yY==`xP!RdO2uJ_exK|5DBk%DVI z+6Gb?y4%IqOM;$rKlgD1-q(#^ZY>0N!NsTyO%huD<*J`vbWgimuNR#e5%3B7FzK@1 z66f*!wH8xQnE=FY?TB2PE8o%7X}NeHZTzw_rldE)`S6B40pxAH3C8Nc`L0r$-N4DD z7Td3~+aF!u^Su9>M-`#G2Z>svGDf%m)tLt?_uAW#RVwbGKL@*m%7 zV>thP+Ify#yvI||?V#&V@0CW6&#Nk#o8FdBl&rKR`K50Y-dDtFD{Fy2^W2YzJ!h2C zndiHbFps0;=HS*1Zkk|`6gKI(UVPp{UO~Bjl=uKvoTTU&$W{L|Dy3^W&YE_F zRjSTp`d(lh+1JSRj31!EwaKAxvdG(G&(Z|IxqrjN)`=t~z{saX?ag}vPMs|VV-w36 zF*bV5r0Jf%iC9fT95e_z3=jxJ*Y$ckt>4*;*;~y=N>f-TrS`puBoZ9H>wyPPvUXp_ z_KsFvxuc`Rw9>KK4+P?nR6NBcS5=zCXrIn1pJ$8fQmQ=JMKbAyyaI*01aHIQRX$;!(BP)uMLY8@ZHYIeS7)s$w}>T9#Wfe#8GO z3`6#P^eqai)@4SEuBmJiD%P{jfxl_(9-IH-eA2ko)m>?L#asu5(sbq>8iwsan(;06 z*LQgQ6c^?3l)5*KL_YJKGR_W@6MbG4d_fin-8OostSHWzjA1m;D}?M)$-P^~5Hi1G z)6)i0yxjyJA^%$*LN-FGD~8mDk>SR(P_o>`%(*A-&rd)E<{Nk7g7}J1`zwS7!Lv+m zmKE84FLFIb5J1PLKTYXDC`!TJOhkPGnRGmC^mhFKJMXdi!+SA*xi=3M_a$HHS(C*g zEv?M!I;pzLp6*F)oru*)khCppGPP~&EF4Efq?P0AG2`9UN2F}?88`KYsk6X}XoC4q z`fCjN9RYZBDO=bco^85n=LKa1#8APre{o)#Etk0zG77TI0^T)^j%ot1ka96<|9@;Y z(;DNizy?jo?|}H~zzVA~W*DZfYId$~q_%&>gYN#tTg^Is`)z+$?4hfAurqV%=YSL| zsLC43ZeOvb28p7fGG5a9Vc(lq$T3O{`JEeoCDU8cT=!-XWd79aEAS`;^&=gr0_Hq2 zehnWb#1@94IoZ7Z9FEv`lzLLKpM90?dg4naMhzR}2Ucb@ra31D6}PGBlKH*#RXozA zbS5*J3-*!V$WIac_`4!qhzMAmi;<%m=YEp2J`ZCl)ZS98KTn1&@o)C^fW74>4C4H9 z=DSxP;rU8HQvo+R2V#f$%Qw>L?;m`RBGm-OB-yV{4BCw&1C2MB03^+m_oR`l=NZBX zIb_9t!u-`qZ)k2bmrKr?o~)|1_1u15TxQidS9N3ayB0nfykCSiVtVP9V+;-Clb)2@!8I~*Nb)oX}9wn z?_;T^tBRuyv;B`=PW4+tkSIRjEBwmLcg*mT$|sq94Ax%R+y5vJ31Ag^noB-DIM{m_ z*@SDqUaWT4znxd&emZb1f8R3?OUo7VtaS<$mc)3R{<5Do73j;#hr+feIGeSg?y0&& z3Y>DU`)HW2LPzl#s8h=J0_H&f)XQA<@xg>mkxjbo=m1v7?kwIQap2|oEmIHGT4~;2#8}BjmbWFAW5g}0ono`Kr5B8 z9VTpV>SCbwvQ8xp0x$MLnMw8T%14`}=W@%DK{W4VZSZn$LKl+XbiK6RtlkfmjMRUE zUYhx~X}T~{1zL*2;CQ{$hmoaD)Z-xEtqM_eWNvRQNyh#q@{u$X1^(+rCjBRbb)(sXk}R z2eA}^>-YT(lUz2;;L)mJ0|9ylf=Up(WT!moaq|P?39sVukRUkAr6uYHj9(N;NhL~G z@+Ap$X6j0K3l$(_70ddBGi5SGr?!KC^)Mr(kGLEq%NoD?T($tY0_-2f^u64kFha9! zy4I*Rx~?rncev3)W14kfp%d|i&Oo3k$}XBivs&J&n!Lh-0zC1d7FT|x%ASvUexS72 z+p$!<5vj$|Pr8Y12t-Yv}aXU`LbG5OpwNm}AG(2ehu!>i+nT%*Q37nGh9dwN}@`o--Vpr$rJoIyZdOopkxMZKSd!WZ!&cA!%$~gLZK)$s%%DR* zf%j|TsViCi%r>^1kQ3jGKNssUM|vC>HkZ_sUd==ckj=g`vpT6&bE}Z;%xF2g5h9B&Kbj*D@6wbXe~ zjf*kiYAMgJdH-&lH)ZGQofhZON%hI)_=Nkqp!@Slx?_(hZlK`KKeD`P4d1@;nK7Y5{ZLXHh;;pW$k8sy= zf3}%E!S?aw>E+H$GP$dH_uS^@x?8q=xc#^JUzbV&yy+-q^2g3-Y)%C8yRWalIe26= zjD5Xa5`IbBd1v|z3M2|G@Y@*=z0znoT}opm`2*zm*@BLcAO;o}74^E~%^8*eQ)B(E zQR+Hfx&L6FwBev^lVT%{+nA%CS{CVQ6!avGgVP^s_#sVu;HQnyv zm@(r*1+C|kJ=fgxWVaL7y+Ny|mGI7n^Hs=>{dHacWg?(iTrr0JE4RJ{w&(*UYN$53 z3p}c&Mg2JM*<4=EiZCdR_1es6IXvI4f7k4z3&fWUsHH`r>XK`oBgj* z;U)C{KwZcsdCz?n@ELlLTx7CKv&{9_kz z4-maS)1w~F`DX{f=jUY;*8$%V=rgRzpM3wV)86w5@y~zSXo_5}>ObFeE6BvO@f4*i z)NYczfA_;)ifnT?aHy$k=C4yW!HUwsw@TG8UQ$_(b(mn^-h`8F*}dxkXo3pgUF21E z_pkcSqQGVlTF*70?016v_Sb8F8+5)Ffb`Y$w=KbT@eB+4C?Ya4on{Sne1tS^gmfFy z8JA~MtV!h{hWIPkpcDUlRnMByKg8QNURS>azn}Yp5&=4IEK3yD?yjTD8_$HSk`jG& z*J2{tA)Pa6VQG`A=6kzc4M_yq7HuqJP}dJR7_$dCd6*?TR?!s^mygP9#^}NxGX0Y% zlBwp;Ob9(W7n+M8Cm=bmYRd`-7SGqcb2U_n@$?FyjR*H364X+e%eV_(CN+I$gKUS>YC{^;%n#0`zZng%p2q+Bs-;Ek|+)M##}|-MTC@ zu<_O6fp@Ys=lIJMM}B%!eRiuQ>|b~j2wjOnfMkU!A`Bq*)V`(@|EbssC0LL(*LdS3 zM&B)Nxg>c`lh2~77=U%+{Q9YFppEYF_WlaW@Epa&Xw^@eyohkT8aA#pvfJj7n2P+3 zmy1qE_VttOM}w(7HwN_apx1fVw)g?o_|&o$Y_h2+doFTR?N!51OV%PoJ+*@!9!VJcBA19zdJ4cUB(ZsVI4H-A5U{$)EWy_EJA$-J8<&$j0=JuWGE=0L59 zSmMengQH|3;jWTp9+dTks^oiGx29yF%FP*K9=&UDC*oo3{@(ak6-$t&+Z8G&T&OCU z1U$zNy71-Z{h8cj&b2RIZ&e=JxCfMZ4syCgnqcCV4j!tAMViCDh$&7(^O7zLPPm_AUfpl2xBoUTWL9zssE&^P>$tn$(mlTMG}7c>nAVa znI*v}0$K8s{q45c_Lu4J;0=M;1Lm`WmUp_AE_J{%(cNQN>}a_2Z#Gn?20Q;PYjq4x z61cGF*BCQVCAqgrNr8tDCTLzRGk2;w=6c5M(+`4UNww3)pU(2rY_vi@lKMYII8>xC|w;z%aNVskD3t4@NoAth__sP;70{nNoB%nuV`F|}tF8~;JDg=+-AmVogq zbxD#ODds_{oaI?8fA<18@f`}rAjB*nWs&b8Xu|SZ z@WahLy_45YY+)ttSmHj%+IRa-g17f&G~i`=#ioqh;9IJJ{O<2AZ% zo(|}ba{DT5T}ABbD|-tA>Mpr0Pt7B+4spF5`S~^qq|* za!}T#%stri!fn%X=A}pb{LAnQ_!XT&OW;_B{t%Ztw-jFSXxE#88lMPoq^S~D$3F~d zyz;<4lsd}<2J^_7B&FuO+elPxnxx*&TsLg9`#}HUF;a^J6{Z#JU|sBifLOgrlDb5uxUjXZ{Z?T+ zk|_~$2 zwB00yewL(*R|B2oE?F>#Jwy}D89QA?&PRz`R6;pTd!yB-#R)J`LtwtcdHrWgaxnIi z`kPDJWhYdaFgO+hD(yqk%!E=s&OdXMjW6thT5XkoWxVd>YLDz zANCBX5mGdB<%yunjeCRY{h4*syd@7Jx-m#9rS3^mHZY)A9tK@~U_jfz$?2ozTt)X` zC;7(p6Z=0CmSulCe)2f>IK3dI@X(zE`&B?$QPi+;3v87-g7*VnlX%NWt}8@V0&g2f zU0`I>wegCW8D7?ftG3X|g~2mnB_5phjLXLCCoiZn=|*_P4`aXH#(ldIwCz3*CafBj z!~E#Oye72D{W(Yx0q5s8M)X~j@A<1{o8p@>CjnuYpD<<9KW7#HO}qVE{>(BqJb(An z;g05$8_WM%KE*t{eTSL{F)gy74ivj@EkIdD-Cin7Euk%&3p@%d4 zi{=8510s}Qd()qp#`ZbnvBMtbY&rv$QqjX>Cq9&QD?O~ELYA;{k8Ik=r0vAx5R1{;h9 zUe>cXDSY2hu@4Qwpg{VG)r-<27i&6y2?@E_Ti=HeKUS1AW)kGlBOuCK#wPR zq#~-IcA>I^3({hHHzF5~FuE0qb0SN_{LwIe<0j;D_?6EG-@I?=B9QHb{b8>zkC8Q= zpl?zcE2dj&6l^`+fS>72pZYM~8TuwCUC1-(STt}o-uL2ghIU3LKMWgK&x+>Yj>WV- zC_>MHvmpdWt`u96xVq=*6-)yVQ8+B)azzT+&(4r)&wiRn%_l3q{KeWSr#)d6?)R_l zzBvcgdxL#4kU4Z#a7Wr~aR&$0346NlH%1K!XYAG}hOwfxeEW(L`+Xz@Kg_PAsR!d2 zx_2bM?5{qFM5aSpg;<>@D~GArMRDuRbs%||XGd~P(>w0PqZS zh6$i6`D~!ff9-g6b)QLH16>F52?a!1=OZO?FXgUczw)h;wc+O;zDaMJnI6S{m7_Y+ zLVO5v?%Aq}!L9M1QrOmiz8C4|z5bTEIO7Dka?8o^jw)pH91J8FNjPcoy=lQFaWyRURz zw71uBZN3m3blM)m<#|E;W{kYIjfSB@%V^p@WRFaCdX0kiKE~PL-sNkPMD?7}*Ayey z%7%eX1(nEAf?0clN##m<^>{jec}C*TR9PrYt*w2n$fKKeKE$5NR7&o8>4Vo_$VO7R zH)(Z*+yqjO`M(6Y*meIqQ6(yJ_X|PpcP|NAe0sNi?tCt&QW+hB96c6z_3ub7=@0sQ zF=F4e!C(4c>rqLv?tjS#`WDBCN%`ZePd0Pr#r1{foqe-Sg^`@BxjA{8uA0S#K9Z&@ zZ4_(*uS9uwa`59ACWgwRQ}oAm4LYpiIH|8U zTEC4<-JwkEi(g{UE}Ur>p&+;_93d7>DlRE!_$=^3gG8w*4$Q&{Lj7T<3!uhK7V38G z?xqDD!f*LN2Bdv;JP4kTn;U8d|MV>S*mSP*dD+y99mTcc_BLJF{_v>tKYUsQqaML# z9{!>?mx9Z9U;?w;O!3=(P3AE81qWv$Yv(Q2^G!9g{50j=+~q*jbd(>=4-~_;uM~3g z+m&OR>kAVx_>vzVypg`_-FStpwM#0@M!Ib|*0)1_?U!=0C4` zX}!vDQ3@)Fica~!JF$PROqtmmj2jN7xS^TFCwkRd{p-SZm4ukMS#_pkeuB4%qJg>K z*6|vHnTOxU-lIo5*1bCL<(^>if0N+4U5nATc?seNjPljGsG zrOb_I$fAKz);m!f{S?BW{iUJ(1BUjo%^EkyOK~P%BsG=YDY}{1q?acj`!#kK9roAF zB$=H(r;eUJdkG|1>AM(|*3u@QG3Jckoif`kEG|8#~AWX=VZo+ zCIix74{dSw`Iln+FPIn64XnI9>;>3$w7s!%(atu!o@Ql~N&W*jx&N8pj1+5EM#q`b zbeeLI0NjytzW_-f+TBjf*lOoZ*0+!UD0tP;`$-ONpV{O?2fND@n`s$Pt&WhF@9kh# z&6dFI%751#PZcPx-@lYYiQ9dmWnn#|%JX_$2|y z*nUj?Q<4}$FzBWsj$TN_d0*f@{f6U?PsR0gBy|@Y?yJON=DSU&+ns4We4jp<4m3FT zCXZdt-YSI2dG~>eJul~@68%XQzS}*-jJ{BFei5uxDHOK@Ow)yliJb{WoCpliO~#tp|9JZ>;a zr-b<(qxVeT5KI&S!w)oz$HDE~nO!~=*G9yU$!bB$N0ZQo!{~l0jGHVnQLz~068!A% z_kxQJ>9bqHMPkgE(yzp>c4N)X6f+SH3-(olP=y(G;$tB2kb$}h2B4T&CvpPi?6E0{ok{6lmaZMFLEaNsVVFYI z6M4cr8JETvnz9v=MD!>&M)UipL8SMT;kHo)Av@amU!T>_GeQ#6z4jA!+P@rId7{16 zxbII`E647hn8KKA9XX|!qoe&|PA`JhIErX5FvTD*LRKC|IXp_?j3GjXglueP(ZSnH zXyBLxD#LR8=P~FVW}Q~E*W36B8TGs*N#gfw8^oSNS!X2)6D@e=(&z^b9C;P%6GH;- z7K=05hy9#HwiWRA%(m>Vx4Ywv+>HD+=8;0&Aoib`@H?4(N zD}P0ll+0=?m`;KBW7t~Lp`Kk%Sj~F=Yen0U?t2>bbNBqbM)|W#Pv6O|BO^ajF>Q&5 z({W>ox`)wL+0~yE>yjTowSF|aSMN=uULxp>7R_oihk26^He`q|5Rd}dUwA>oM&{og zp;3ts3s6K*(57{X!BI-}8(Ti?=LNz#|%UU{a1#3lb z!p2$EVt`i~F;41wShLT`hyPB|uI|n`SNRLWYepR(=T;+2_Uw+i={Y_3+{kP8QpINb z)9M-*MBGo>1=ZQ*XLX(VS-Kb)!+p;$%8yllbgd~0l7yC^>4;6Ud}oJpb{L+C3{N?t zwNWus->Jd2Qt}t;W%W@+O1c34jdNSVxC`5a3#eIYDK)OrDh~=wQaR&_h`ew=klU4h z%cdHkVZZHF+$6Ql6HJv}o{tP)aulEZ@2a;?^o>(|2uyqRHhLL;#wd-g`Lk0GXOgT7 zyJegKFDjrQSf30J{^5C&gi;5xV1)vSEiTlTeAs63s~m{p81GdihtJ*7^uAiEaUfSy zf47eRdJeNqMtWGOzM0%RMua5U(n{FvKn`k6(TBD2l~Pdgr-QhFZv67VZKa&Q(lfiO ze*4t3`F1=xDBrwav)O)hG?!Ir*m!5(M>=*VfJ>9eJN&gZNldg5#M2w8MhQ9wgHv{# z?XN(mLN$?%sgSSe(FCcyJ#XpeSdJA4Dy^jC&l~?{d^G5cdD328#-~zwIJ3~{(DsD` zqg!I0=tKwVV?z;`eUsCmjM;}}A_ve~PDfG_%{uyw({bZhlzLc7J+<%aG9ja;Dw#Rn zLv;PXLOLYK4Le(WF-$?yeOi^dZw>XRf6ckWV6uTZD}bj~3P%swPP<9<%e|gevW{X% zX0~eZvFw#=(KxoVcQ*s%fQ=tcrK_DLFk4;s7_MN}e8zd%!F(GZ^x7&!IUcIo6R*6h zLc}#}D9>(C4TPXW4HY4nrgugW!OCzW=XfvMvc8O1!v{3~q7Q8`^kiUnsia8f{=6pM zsynnN@ab)Q1X{IG#`WYa`=E=6p#X#l@NingAv-!Ln%={?pjc_Pu*!H4xgh3wbNpt^ zOHo9G`QJh>4(`L0R8KfEIk(A^K(*f%Xn)n;8mmU*-cC)8e(eUd^pAxDSSiZLJB7Vj z2_0IwjSkb1Ju!$`==98y&)%sVMp8CkmE=*u>4zHzo4qpU3q|V61t`kkt;jqP-#_Jo zUg9h_(%>vAXOznB7B89Y=PSW=mInc6uhR)j_k!8JsjF(7{ylQn#18NhqBbhg4}jm1 zEFzk3T#;~LeHK@@V~Qx(tZ4e29tqgC$8l&$oJXK8o9Au6O9Ab-BzB9AgS%%$2>>}L zgkSJyTxrVaCxPIvprudc$R5bTY*76(*_z&e&-N_)7aOu(MUIJf0Sp8gS1RhRHKr=G zI0?ys!obpcdv0FOy@M@0a)-oUv7HAJ7*1Zdg+>?Jy+Jt5JbRYRyJ+=;P5J~zSJeW- z5>F@RL)>75^p!Cg6Q}1-zb5aHhYD1~RXlh!T^dkkU2fiPzYC@+Ws0rC6UHSW34ImF zQZe%JId8^;@;>|Gx+`rtd3-={&zRkmS8B62^HWh(MC8!Fh7kjN-goZ({v;>`LS0AC zFU(V)n)5Lv(T3L-cjqmP&fFqcsyIF9&}JJ$J9bl0#F}M0w(hp~`?AG*Z|qKI_5%BI zp~-VFm7COFT?9+)zt*i&epi2N_DHj)x0kjY1^L|a4!2uAUTx*)76b;bU_kjK$+Elj znmQNrCAHjn$Il|`_+9tR&Fj=bd0302FivdWtK z#Ylv>8W$(0#&Sp1VgT!EyB=wZm8!Zq82M$J9qY`>Ueo4r)g&kfRSx z0TMBor(`7%#ivQ3YQb6I%s3byNmumV>8 z5QRsG1DU>8_cy=jKPIF%nH_6~dyD=#)u+yLZ?Tj{R)yAXzdeciOYq9e#|i#6-N)r6 z59Q~|`%d5Mdg#P`hdzwvZYKZ01uRPeDt=N&*^AA^<)$Z1ngH5ruP$q+x`>!Q)kaw znLsKA_)3`#OHR6C$#I!02h7>q7Yd1w@{=+Bj#jcuA&eDtxAW(+Il8={Yp$i%$x>OO zP?Ue`X&EAR@$N8d2TzJW?` zwzSxX@#ej~4!C1Jj?L`LN@3x zmC>U$P`DoP2anFhNr^ZP|1h-bvq^W(C~r@qwulDU8wa#gWfCJmr3=Xhc=wU zzZG$3_53dua+;#C=U#LaDRp8r$x<4OG_jaJ!_yU&^l$*Tc0kv1_CZcNn&0< z5>-9+7_t+2@WY~w-p&;xoA_x~z6d{lYJ^odv}t`SA^PfC^oFGV#iLM*ex?S_QbSFc zRwH+*JTV_<3C2cE1wpQs*LYVYvA*piBSts!e{Hq7D4gL%u!Jq%at(2CbwFTh-?DF@ zT(s-@QziyeaXrelbm>RtR~ep=m1*@}H51V*EZB-qs9(NK6twAPpITiUkdttO{0mr} zQ$QXjsJQ?T!W^6O-9;@hABPEog-ro>v+!?{>AZ~t>uxqgoa0dgv_F|91h1so|8Z}2 zEzFj{eb(mNn<*dYOn%no<`)v|*ZLsQzohLHC$0}MW8%j<1qCkUrImld0&l2CjQ@{T z5p%$bHlGOT7uJ_&JBBhpR}e2pyZ)FStg>zH-}Q1BS%eJsaWtJFW;_f~714aYWROuq z++r2V{7#6^R=My4##}QT@lsGZdlqi6IKm^F;O!&UR(%p!=OP%EEJ|1d1 z-}{kH<)wMzrT_*!y4k0Yp^uW=&x5Hp;9#s#Q*=3HdK0}w-zW#WmCFK2vY|YR6XIL# z0iFbtmGn(kdblVb_v_lvY7{gW0}m{5JGX#=Q*GEnvj*OyiE+OKtPO>bg)>AyB zZ=b^HOJk8D853tUa97|4Qw=ab82yu(0SRpwjDB=WA@#&`o>QEfU{=u-Vv(ELF=yrx z(602qb`0#|&~{OwANIbDGoL2DHEmtR@pnzuAKht0-$E9_ntT{^^e*?_-<>F6^T}^a z5=`H&OX9>6Gdor=Yv@hlvT6;8W8>on_7iN8iD0$-*WqVI5YA(V0FVC2>(KjEOsUCY zwTPRS;@wT&;rM@#rnV6gJ_WaM|3jr9NhWyEzZm|71`#q!^H#p4Fr<;Y8~N!2B6Ww& zWMwKXSg$u&g|tCw6?#Kc_)n!rU$}YjTSpHFi5yC?-=af9I@hazm0PgUb5Divq7e8# z#5#B?^c1kyF^+BCUEZLJ%HVAI55l)nt^^N%bZjkyB~z@jkL#3f0Fdz{kpX4H#Ds0p&Z!+P`77fl{U zHdy1SH=Ky{SeGhH4(t{L>m647zU93cNQ{aeS;5^gkAwO*cEKg*$Z)f!{a>prGd_CHyBW9W3FrVy{2-xv%l>ptOkNf5K!Y6~@hSTSt6C zO8TnO_~IfYFw^(GPDLz<#!mlt5k_nza|@+}I>UvGOR;uTy(Di;O0qUji}P5p`K1zG?Z8~oOr-2ovdTuLYDry zLY@o_@f}%ylVnX)Wlc;;vb&dTZztz@?*TJ%oGBBk@z!fkt)9W65_g!1Jf zajXB>E*y_G%d==*f3eva4YSCWEx5lj`}Zwr6wlg6Q=e;0p7qJXK3(036m_l8&(hz& zX3J0dGC%){t}yrL@EkgNe}t@rQH3`7^S8K{o#j@SQxs8#u{(-vbO^m;3MRG#rS1n#}a|3+iHSIQz}C1~-0*RJ}s!*KJ?seAjmh<=+?t551K zuYJXVQq5_pW+feMK2_G%M;*0(@xhRH#{UBVM{A)tL5=@?kRZC5warae&EN#uY_>Di zFp?82BW&KNHfeTKhGxqvZt|h+_Ke{S%JVJe$*`b7pqcSl%&RYt~cLXTW^D`1OOz{|f zIeiD)%80OBV0|xZvC_EG;mfi{-8V-qEHb%rNDd4vCigAynukk^U$id_E6qFOXQ!>^ zn`&T$(^{QstaS%@p4xJ`zQa%;cr=oV-)W!>znIdMGQd`a#x>7co%QU(BW$mu9;viE zI%<(F6lXu|t%3+!(4&T39$qu?Iksp}X5m~a>|MU{p_Ld57E-hT?hqVt9N?2@2KMy5lsyvWUF~ZBtxW|6 z9-pE_ppbG{GO?n<_)M~W+$l^Cpq}<4iET$zaeV3@@?Rtagb#OL49}@dPPfz)SkCBM ze+TJuclfU#xLxp_1{hNyn51|uRp%)MA4-!t2x|i2*DXsfidFkiroHF^u82`=@!08kJ*QHAk}YDw;_*@- zIzq5i^5R!NQW$ozAC2h@B6)*c@oT(F^>@1%hWO8|`7k`6m$c-744~58-QAs{bV+whmvl2o zcXx+0Ge|ew!`I(^@5|!@{xP%9S$nVEpS2dl#2yN#Q2p%YD{F+n4u})-KdLzHxVXl( zW{%E73|SIAi|PIh@~|wZr6uHGoa#%wC`Ao+WqB{mJ3UT|Y-cc*tx_zSn*OxG|00fl zbm9T5VdK0P3$fCZOBRn^H`Gm7xiOYM8NYKO?}eVF(f2$9K`GZWZxV{2t65KXqKqeOpK~*a&!;!R%;Q5rP379f@n&Jl#qwu2AbtO|A$w;v62wtG z8w2*Ou3x8&rN6C_iHZSj@9SN74Fsmt>Lc--)J8QpO3CnT;D`Uu*BA;{`&sT6+%c<1 zCMokN<8Znx>?J9@Z=qi+n_V5Ni{7?HW{P09CR=*H2IWqX6iP{{{_k;BlpVao(oGOf z%WE+btQQMhI0Y)?OY1Y2)7frp*XI zeCbv`kfQ!|ox($`08^m8c4)xiDz+&REl{{Y%9%VU8ImS;Xqd$1t`&X|x~1TqB+W9Rrg(KVM9X0=paO zK^GNUx*K*%zIW>=+LYlAH81Zim-+wt!-|_S61+7i-)bJYnaFCsa!OW1*~=-T-(< z%yYwE{Ws5V?-42&EsjWu7QM44_nl@hU(uQ?!4k%o{yYOc_%+mh;9(X~jLC5D6w@~s z4+XAo{c*ovGwFP+R0I{!5rwbJ|EN>cla7~Rk_ZFp%`1U5RgBkHjwt%O*d)-pQ;`LxXF znC;}Vx_4y?eZy03Z@*7<=8qDihNDYl3sHtX#hkkurXItq^Nwe*{PJTk%jjrJYtFBx z53c$$8uA(rRpPJO;m0oOhr{1ysM7CIG$KqrgIq|=0s8DEjgO;_igYqE>Gz<1!DbGC zwNYe`h}0&jdALxUOnn7&iK>^&Y++(`^e)mDanWcKqW_%B@JV`~$R2M$mi0_iBgl%1 zWwa9hRXZXbD!6jiyeWOj#BjaPMD5DL6mzqRU9aRPS;m}NVcX0pQl3p-9d)&wolcXI z_7Us(?QLmfW&d-dE3wp97UxQrj=HR3xmJ6-TDbP^5Il0g0*pV}d3Zk&mYm|@D=al$ zT(7L^ecdA#<}g`7o}7^-EjtEK>t*Clrt8-U|`PYJX*#RBsG~X?9Ks5^0T;=(x zK=-hnVC-A(?(8v^NT{@x|G4OV@BqJ<2G6-}B&P&EUacK|RoTph+Np{q2<3ADaX4^W zAl(JOm~lzU;P=osHI&E^Kfj(v%UEh)5)>(!H3y;kgY;UwOYORS5&J&NfPQ4AT#ag$ zJYLkrgTY>Kp5BxdE3^8>r4_%1d^*hng_rXC{F0kPKGQw^OP4p{?aH+AUcwgsRRz8^ z6s{9!)uI!8`vWRyvDEA!ZlIsFtTZ}(G{Txnag6vdwyFf+1p#Unp?$pkp==aJ^u|$n z`)BK2BY!8qZ(MZYebnu&?|NWBrn~;?{7SYn*w_0qv3^A@4fot4B)FqDgWZWs9uHY$ zZr1AVp=}e^nd{2TlhLQDZdK}F&wJGI!>1wO@ zbm!oJfqEMW{@#y_lv24uB-Q#Tc|_|TY*817LQPegT)CGs*(>zVnPeqh-0mq=6p*!56i*%6Ew^n# zqnxF^^bxS5IU5uM%eOC3bV{ISn@9y7R*{R0FMUq;7Rhvkz>M^7!(q%{0)C{Y{j&F2 zsoO8s96Zr{ZvE)Bc4oP=aA;%8#E@79>YC2m``TVhtac}Cl2Tld3uXvG2YpyZd9y(4 z$@V$dp;$TaaLlGo1=K9_8s_5j1#8?G5b!_njjZz(-J{Cp)=b^jwOVKcqdM^fG9s?z zOtJ3chIXcAYdieH=KdT`P|bY88xow;DQG?_6H^e|^P9ZYwW`whO45?yQUCN6(F?u^ z_M8l}H+c?gdKbYL3Qd!v`;L#SJ}T(3xQ!gp%<3d`|GTjbTcU<0F;E4gk#M@jup@;V(L+*1Dz!NE6u&; zSn>ri2RxOlun(E`BuzYYfdh7F5KxN!vwLKx99-uN0UJ@7%~T8p3FV17%8$p6smd?A zeaXtfvpjfV)WN|Yf#62y1l|o#k4Oi#Rk@50pPm|4LSn@4`>LuSwfoE4@O%VIVRUO% zWP~}L#rF?jmhh{G^~1iv`rF5?HFd+~W`tAfh?50VB3WTG7zz5boWF_@lIsVR($j=T z2~`FZbDj*~8MmUNxjZ32t(~y}zfR7VTP5xhj){pA%lk${ml;Z4RsmzVaC9mDE(Kw zZH1uk*6LX^BDhr#dJOy8xr{{iSgSh%_j6l;)nd3xG?dS8@lF`p5T~4tsXNPPq!da` zeJ2?pF{?Fs_Y(-}bD{u~9#fT8> z&&Mn>KCD}qRnAL@zrU``)id++F3`+>E%&2@X&4Q*LJgv6Zti5~J|uB&Ue;k{)uW{J z%SMm3f_<1k)zfrV_W0Nb{qsWEB*#Y6Ii7A~zNts8LJYzg??*1*ln}7pv`S`+^R?Gj zBQ3fx!hkXP;D!H>gsj$Drd9Yk+!BuQ%*~(v+33_%&^AYfGKy6-|ImznBzGX$v{tnEm zM1gb2V}gSzJFMBCfp%-c;kIlyh#R^~zvNIW3p98`` zkAWrK^PDp({6h~@G*j!n(kWiW{_@K0;LDHclLwd$NMET4n|mJnaHSxekpS@|qqeG!#uZSeki8>A8O)`^1rJo?22;6aRLG2F&xfH0EEDWC|$GV(Shk9)? zGIiq;ye2-F)y%v5(|^*piY0Pw@Lro3$3#hyZ9JTLzp|oFv}{b0X5dG|4;$Iq%9bI< z>h3gM5Km9c)sG4yV#7vwQm1?OGi0E8RlJcuIjM{<5n5Ik_+!IxfFO?F7}d`Gewo1Y zad$4Fo0l)%;<*amv$tX;I=U8Pg?NBm(|=D6{<_^HNXQrEBJF%VZiLt#B&zl}vUZ8d zomRTMI;+NG^1?cUN5kVxvCimWzo}avFJGBnw<$+9qOYVO7!?ErQto_<{Liug4~>Qp zhzyYJ>JnRhLO$_X(TVyEZ`FNRF5;7}Qb~_Zd(RPOp)`QZYo3EzGHG3Rijlvk?YO5< zDDJ&+VbUAuit>0PJoz={TTgY6I7-CtmhtuD8K=us@m?C@9~oKm3hE@{wpocXwOS=TOjOVZbB4h5QF2#HZBUBc-}qG)g~%7_Gd;8dDohfRdOuGsxyu{Ghw__ z#aOSe!lJ8oIf3A>vYT^1EH8uKFmQQA>&Txu1f6bS>}b1RjE)>MH@=h1k4_e+kmhy0)q#6vHbjqPTQ?y;QBrdbwUry*n>qea*y zcLojuNWsjSk^G{=_y6)1@PkI@zEyt2!kHd$Co1}^q0HlXFGI^Ja-PUj(Xl^FSLDy~ z5?tOgx%2R`Y-`+=Kl5?Ttan_nGo8>YBZOZ{UA%YX5?z{YdiXR9hwE+P8K4DIFzTkM za$dYIppBtwUPPl1D@pDbQ>?K7xyb&6o&f2UP>8<}W(PgH;v`G!fJ{dv{Jh_!yuaYSzo?6;%Mdzq zrRXYeowX!7zu#<(erz#&ToSl7-KizmCfqw6#5qd_S+R_k?6625uY^ubX=$5@WQ=YK z&Q4TUSDvOoO@XB9rkhvDr^uLE3s5ecs5QW73WofnRDSf|k=WhdpRy}RawtS__YS>d zf4xedEBi**eu&>3iqn)KLw|SfKQ+UA4TT!6FQm>G_Insftlxa9=Kt#y>%F{)wCeNN z5mbxfu@A0E^;`@T-*391^&Gql|9%qlbZ_>9;LR`o$Lp@{-~;NMhHfBX6Sf+kmq`ch|N9 zjVPBTC0kkM;+ywVO3xQybhQ3#mg*Gg1k6718vM@s6n5G_DJL^`9~wV;?%ke_=n)^# z;AypqgZ$HTji~n~oHX)2j$73=d1J$>QCG5-dG{|g(lgGUS!;BJb1y_m@|c)qLfNW~ zEyo{y2VcVWrIVoOAw`o=W<+C zAbo$0qCQD!E$yUb9(I?8R@dh$XDE=8!PC_pe#9I%PhMYMY-95`-L8at5t?W&Rys8; z9!SMDA5DCwRNV`;j$UIpgjJ5R^EquSRr>PJahhd1$tfr(!~t$=Bapv~CNWnYkWh_7 zxH_*yIg=(pvEyd&j`iogQl+>jj2o*w`nsQsg7!!36|>0-wfJ*&E^bE-PCwqc58`2G)nS@boXZWh-LwC z(~-;7>0z)uH`BXu8kXsVn?QjY5)v|A91*hKv9$wj?17b8i-@?mV~B z&ZSs8PAxWga#fV3G@hJiks>U(mRwxUWXtM|A(3P6*)v69JZqUzUs7JoHNfLHtjCJ* zETlMYXKoCFXFT==a;dcv1)$}e1Ux2;pSNdcv%+j|Pf@tYTkd-!6C8aWQPb{qcIehF z!qwO7&RuviKX@K`R!rRu_K!%$rfIw>nB0r|V*E!L$a1aG=ujqWsQ+-j?AU0P)&?*6 zo~(i^S@JFKC);o_qApj8WAG18Bq0+DC2#2{o&)INclq)RwhU|nzuZ>J(MV;()F#h4wn+}GB5Oc>ZWKRq$1d8xg*ZM8f+-xMfTw7AIb<6eZAk8$SO!Fz3< zvv$bSc$vDSOy7{3N26-bL{01IUfjz}xNzGts-&a0pDdRNbzo z#IaPC*g#xMf|%z*R2;ppBcb?*IHJro4< z9wlwX!s@;){!*_*&};A_B|)U%uAtjI-xJNJ&iuGzKSHgBU@x$*fD~UJ2~^YICx=4> zn%;W5TrT||=rFqUemA2Q@WNOzG{`;ep{!V2_jhf=YaFa_ORhx~e51#|aN=BkUTpcK zIh8;mgHO_4K)eGyZq*icJqRY}n>56LR5VHn1SJpN!z0rX3!$03u+w2Ndx@}w_ocwkL=-SyI1h)oxR1%DSdf63S zMwx1)>*&^)2+i`JeY>Z<QF)i6E_2;_vB3TAb%-Uab0`!l=nYT=sW_u z=6L=s*M;#dZ~>W%zwkQGS-dSsrBY7g_w1p=DX*6^B1K_Y>X2LomI3L}Ph;E|Y9r^b z)YIVM5bIEtTtxt(Vm2O57Yg|9Kn4)(b2QavVyLfivTED59=&DE5J2($L%h^oPX7A* zjpQ=R>aokgBJC}SVdO?v<-0sWf1H8jxv7NAtR^t{I4qAoW$LW@MSzYpq5zBAa-|w0 zn>^G+XUmpcEjsfjekh^d!-QJtM~EZFKcX4|q6BN49@ZtjcW#4x9ZSvKhFbGK(8`l8 z*ysQ%6DH^!1$F5=v@2ui^9k}a`n3IeU`PhGqYnqbP$}9Fd8WaM3c9`;K0%a4j}^Yv z^>dVjZDWhLFT!cuDcEAz?ZJbSwyqCnYxCr!AExJQ8%wILd{^s$%*j{rJR?euWY)Xm z_OYZvBy=R;J}AxJX!cmA+L=?8KcUDT2~p_e7#KeRK&Z$)j-c_qz zgqZz{fREQ#H?_LUzp^N$sZbHOSw+VE=|*HBj)ebcBO3fPKkt{X*D0V){;9DJ*s1!qRI=ez^*I5^64Zx6D(pq_ml>!C5XWfxtPBIsC?z> z@ksImMl6>!S3>3*B1jq0fZWO)uj7UZrifqEO>~oCB$~;MWB@YE#g;8)9;R>D$&UcH z)>_GLOVCy`sCLTX91lV8FrTq`NN;cc{trVM{L{7EcDLCx5^lav@_6y9>xaFk*m{#f zr@xiAy~dX+l~;OGu)VqkRt&W$r;8(7whW$ENLbITw3SXaJ&PMf0#QK^Ce1*?1`^pC z)@l1i``NGskO8AMCj7S{T!XF~GIO#r{B=j!|@s~GxxP#J;08{1^X|>?R$+;nFLUPl5&eMuSzdmV!xoPUzAeLGpLAPJ#Tac}wm;!} zZ0vTqZ4JQp6LM(ky|dEZWHi+b>dgnMrvn+(sn8SaX=TQfYLhJPoW`$!R64a`*n$E0 zBqz$0Q<9Hsskv{MJk}U^UrKW93MuDH5#1CmS5n}PX}$}_BK}JedQ>u~ud>LDfoRV% zT3CssV>OPmKm})+E33=ud5QKU#^5vb_R!Lr9^|?cG`>PuVA(Qkdhr18)AroEZgt9HVpBp{K*V zb2-x7;rAy=d->WA`SX5|${RAR_{4;SfG3cGq57J#2COape#Q0qea2UK7~zcviuR|= z_6d|-iYtnntf}^+ui_}IoCBr)PMxMaaZA8u?6PN1_vUoGh`8!f#L$g;|kzisVUY8s{JDT~U95 z%Ky?}e-+BYeD9)$>7+LMx(PU5*CY1MEy+oi%f@f%(6T+Uqi1P}@e$vp%uH6*vujHCdavv0a{*II+SPvnvGh+s$261^scyT;~F!Exl zo^vO**OK%M)s8f6C&=;9r1y_5ZHhGlPRo zVhyrh(`9D54BpjnxW*k8!40U-@}XwO{wr!} zb)5RtaZ|}gKI~z3K(hfb8Iv>MuL&uV9%#TZc1A$$cy2ppS;E70`eNbGq#ZFlK+qaI zhUr8s0e&CJQnKe`7Qg;m*}eF?)H|b(@mSqA-}0n|KgK*ez!|st2PrlR1fq145-AE? zI@xii*6K5kR7scF3wY@s8%D}keLc=Y^Il8{QBZopMZGTkS8Ed>t;VZRp>d z*csQf(_?x5?eF+NKxJ<4>;UIrt$}xt`4V8`rvGXIC}T2fnEoL(rNvN~ULQScVK*Hd zNW)~sI4Xvf@!Q_)#^ejTP4azpX-9R+RXosEqY`6k(_YLbHedt3P1gL=gPZF*_k46Jnxt9{$KVHQZ z9H`i&gUN;uOZSL=h3ifjVR~wC=sj;jA?aPQxwV$Q6lHvcSw0{+ZYq-a!ugCvQlTh1 zgSd7+n2zP2BwY6oBtEUC3t$-IEaSp#m_7c?r7CmBTbWw@P^$M$pOTvZV8Lg|J?A@<*a7z-P_Usgqk0+jPqGjfIVb>LX0-4gw> zjEzLVc13&9^Tgm$BHgd^4$&24?KjR^M}FkJ=XNwhJrAfxRpm6`2%LzpmD3bok1vMM zk^PTYdCTlkKkH9Vl{*RyS?F{~1B9l_jUP(NJL{V3F7FjL)BTwJSX<1Og?HR&*8+d@ z5I^UM&jZ&C*eQy^w_G?rsuAl{5dk^SCnE`fo0yF80m4IR#e}itbc$Eiiou=|{qTjA z<=R%EM?i$&f49*=t-`E&R@E(wChDoH_iFYl@zLOG#ZUwN#_zw&ldqi_`6^k@-NV`%4{+cX(B&D1?L|lW6{JH(gU2fGNWJl zp1WG%j+6Xf^c&#!bT=F69RqundP3en@B5hi70?F1)6kpz6+TIK}p+E%Xf z{HPov-zP!4064((Hah7XT9WViYao++0hiqd0M&Wj&)q7+{>R zE&BwX)~u?oyM#6AWYHfERwG=2sO(k)sV6a+OHn=XDMJnaNmRMROW;)drGe}bLV%P~^AjhHqMC$b-KxVQ+ zCAa+F0~#|%T&#QDMrzpXYLU-w0=~sGA_eA{HV4g|HT(5x_MdwO2q&A5>r*8S5eLBM zF%|Fhq-7#SO5R84+{U<1WiF35wK??f-wu#9=NhS6AC07Byj{e4kNyFKw;NlhtcqMK zg)qv3J^u6GA%$-xegU9>pXtYUE_CaWpZiU+!bw!TIt+)Ej1v!(!npB$EfkM4nx4ex z$p#P3&M>39MC2fkmnH>op#7u1vP)@~L!USXXr>S&u27Xv!R$P?>KL}L zUg%HG;~U8Hc0bJ)BYRMW?H1>WES=BP6k3-+*?l(7*C@VUb3xtj z!qu&8Dn8m_MqN20Uu#%aaIo<(+E1A%(i~LdtOXQ)!F>h>6_H6@@L(F#?xB$4+9vG% z@?2zwTR?S-lmZ2uHMrRwsLFt1Dbj!E*ZNM7{nhJ~hIv|S3H&v_SMPJttLJhjqA)uYs1l|M~*_SR+-~9VGaZ zU(AW6kTr?az_1iTT`#qDC<4WqTz>eX5zs{9KS>Yv+Xw*u(}9b6 z1+g#9t-k$J)DufJBHD@(t2)2;mln}5f(-N;0fb;Pj);u)ei7kMr@u=WjeMmNe%~Ec zvC5meA=!a1pOt>@?BKlyA!mg+R|km5X7!JQx6fs`g+U(PFXO+EjvS(?2I&%E_doxS zX3DGvoB~WBcpYCdBxkR8xoBBjI@Xaq`iv6jwdo5(u^WDfwd5N(i+r3_%R(9hg%n8p zdcJXeGexX;AQ^i;n4rR>X#t8^ll5014jT}|w#d9$p0rjBx4+6h=1n)O`wsCot1d96 zs^E+{3I0U$pRi#gh~dl8VI^rZe+n_-m`&>B)AN8m*1BenyJuXcXFaldynTuA1H`D- zzVe%WlSHx#kFdW= ztXMK`4pJG4e5gk|2RcOg9AX~3+aBSdEkO=h_kr)w?tNOj?bOcjK9#g3ZJe0!Xlp!B z)DCUH!^Q@GaJohbGWhbl2-z0O{=k1dm=LMSU!Bv^!tj!j%2f>$*;keZ7ra<&*jtHf z9o`=`_Y0ag86gE3Qk&r6|K;};m_P=?iq?IdOWXSZD{^dax7+VJt`L0OkJTjB;hl48 zDxh8Ud0Qu;)YV$q{cQ&0EN|xFW(@Ls@=@qn^8x1Bex7jzb_BM2+3`pT$|HRG zo9j@i$1k6$w1sGSH6rBr<;=%D*lp(W{MbcO$6@I=2^InZXNTyK!WV2_Mzeql|KHj) zqY;^2{LZMmM=~TUkG>DP!?bmz!9tDV4+>o?!QR-nbtJbd35F#!ao`5KsR8q8c{!qh z_~^a6yiZ4-PTu^3MwB^4jX*_0w7Pn_fUR3k42ub3AQ>>02Cz$UQNaW9a6Nx+t7Xr> zj9{+^M$JXOpgf)$agy*4uPc2=`wK49w6v-(e+T3qX>oAnyvwPnzErN)X=<@Qing^~ znvVYM8d+pvV>2=W|I1iaWuW0*Z~_ud2KHsm+xZmeX{TK<`j|*=dnJ>}!wx<&>lzRC z4jQp`H@I~?xLmFBmR~@{nUu(jp0*^%!)>QyzWJF`;D1YU)v}c`jbwaDN4iP3Z9N`Q)tyh~ z>sF2w_d0MYUG&;gB;*FBl!e4BG|?4>l-|{4-rS(^KR9RyMV^rnRJIiA&FmJ-7%|XA zHo2$2#zc2d7pQ&-(tAJH^|P^vLl{~OliLKAycl@c)OP<6iyw`vj*P92{aBMkU0+Z| z+Jg0HemdXiTfbS6vEp_z)K-VW!__-Zk49VCVthDf4;%5~HW-em=1Vjgsp{LSgmUT8 z{d#)uovGmv9^VAMXJ@Rsk9(;>7$gTnxa#Wa?##^Hiu=WNgi6e;gS>NiR6&GzS`9U{ zwsQ@qz1%jQ+IjSufggBw)xNq5$lj@7B`@g<@lCi&zJ1`1Y{#ts_M3`bTCly9K~G6AgKKHA?OL4Rs^ zidN((?0dX>GfYaBswl4`Ze2pt-Q41=%SnO$baVbAG-r;okUSL@*t1 zB4%at#@TJJP?UD$QEz9jf~-N!&PsRtFTb>@tSj^W{PtBUZ0GXO{WQ!~M@s`r2W=?R z{IQ+bbr<8-TzofQ$(W(}%WQCFIJMr&%EBTvIQVcs=0qZ47`}8sSh}ZSrAMa-Oc&F# zzA?x{Z#lTj8;mMno%;Q|+I0A;_8J$S&SjyXlMjo2JbP=TqCXV+K~?)~eLv^1b#H(N zQ%TU-30^MP9MxLA*;PrUjk<()9Lp$wJOG#Ptj-@Qk22eF*)I}ftEGb%Gq}~6tXHEE z*eq0;1FsV>%=_q|OdFN>Mu^>_!1e9>_g(bBJhpNbe&$fgO)WxS70hq_xd%L%jdKqP zIW322pQnu<;ceZQn4`9^JIzokN&_eT5!>0VyP2OeN8yCzw2rYa*^9p_x!B6~1>^HdAdAeAgi( zgoI_^iqww)3apW@l^3FPM*Va+eOf@w%2msMIGZrq)|j7@$Ua0y0OeuZu^bflak}eMO7^8su(ppG-PZxd@ z&U%A4j39)O&3k@(VFp)yI>|(@{~J9&%Wf#Y|Ln)a-;T71+sius!)W8`V#=yp3ONYu zSK2Bxd%Hwe&FOOgx-&G$`A_tAa3X8ZW9>u7V(KNt^Y&L0Wo!s_{l#5P`;Vvja}5ch zDTQR2e9zuh-<}0P7k$fNY~Aj>QB0}JJnoc~{03HC>BziMrD+~V-^j^0a)lhi_)gZs zOj#ez2Fn}l>UKD!HD4>|dirSS^*zmJ)9NiHR-pAWy5OoEDL30;-vi`{EMawC)V{go z9V47BO2Ty8%cVcA7~7F@V8Q#3Sr@r2-`&CiIAnKThXz;D_GtXY*SEk#1CSjlN20im zL=;}Y@1N8;RqT&_+25=&J&jDPIqT1)f9lG`#9l9@g;qSu+)I}b7!lS$DH&ozcq(sx13PQgq*qoSL`kC5 zCPX)xr_$-{FnGd+-2GS%2ud@Q7J#4L-{q!CHeNm!$5lkQ?CRFc2_eDEK_faJn(8%K2m2%9FP$x)`&~Y5 z%|e_i*5tloke^U|e8~2;1Ab_CmZgPV8y*QIck2y!PaUY1-_Y z5mF&vhLq;YZ|3VLIW;*4QAl?rPjq>1mrJFCZWiVSI&jq+qa9(@KE4jScf0%Rvn5tB zbRz>^Rv(XBOH9RUoMXKWyL4Oa-c>bg(Bj8;#b`EPF}1TkO@*u}$mh05BmX@X-v%3TmxYw0iK)JvhJ}SyTu;ZoDo8Cix|#lx?7FO`ET^n9eUY?7%(}hfvgbG!T*yEVTU%?h*KzLf@qeviL=#V}y{M08$7XB$ z;MyO~hAjs8$s>D$<-TgV~pWvxjY4P#7idF^?UR@iz0 ze&xsVWYe66(u|{ZlK>|r0jvw%0}IsOW>>Ua*g{Viddi45yB1GRWC9|`!lLl z2VOc*YTO8!F0v;N4J>U}aYx0|GY#-MZ|ME0adf{>u5vV(Mp}M_@>kM90R;qlO>y$l zU}eB<4+XFi6<4eWJVz08gq60Z<44v)O&$i<>F2pVh6*c^tm%(izpt<77hOq70b{zl zW2Ne%|Jht7fBgo@B^~NOS3$|58?uDq`$oe-Q%UI(!sl1=#J7A_zZcxj_srU2_)yM% z+1kuiUdtIm{^uLpUiOp2gxuTyE@TqcWj3cNrV*;Lbf3$le=eYOtUT`6;(o5QV>+7# zUP$36$)(*;Qfhuqyh~ljiU4w&`&E@x_a5-+-GSKRn($#@JU9ZIKeb$2MCDIUQ#wCY z!K$@xXmHPVDO=~_LYvc-!RY~SK(bVChbg=LK`#|;y=e!6)|2`lBMP(K3*s3Ob`@y# zeyrwSoP#^Qib&i%+nb4vDDb3LaFwEGcH3!Ruj?&+qq#6KQK?|EQv8~u5yb#O3+O2h z%Hk*%?|sJe>wTd>(*t2*zf+eX$_QuuMQ@oG*r$1YD6fv7Zipq~8|{dRv9sQ>z!L{R?V!Ml3e!=izW*eUUS%5O`pl*!$!HR^{0kml}4c1jSFg!--xD* z>){H{cnTkilVoR+qwhmU0t>iJFvtEeITHrvFkNl~`igjDwb7LPVt>g%RqzW%)Mem0 z?T~O~W%eRzu{U0)!OdRHM_%*W%TNQDs9-Ysn#Pldkglpo9Ba~B9sw|0J>W6lV^d?B zHVJed2XA8EzDd=&T`!0F*c^RBlMwusWpecw8;HZ)J3Zc8puoT``~A#EHEeor`ZDVF zF2?mdSjD&ECryZUs6;R1Y z99lM=%sAdYKzA+#<#Zi=?+Zh6#UUcbf9h3z&k8GQUCr!`<>j5Hlce&84YN&_u_g)6 zjhOrno{Xi_=ktcbR9yZQsdS_!I>wF3Q}HEE+b+k&H{`mje>=8Cv1uvaP&K((*eZ6x zgYU6Db@|U+D@dEX#ix(@#)#j_$EB40rPJJ)D`17PX_fG4j(&uJ^tBM=; zIt7W))^475NxSy$Tcx96jRsSvUtCDiYc{qV8;$M-bNmW;g}0SO$-=Yz}%px2YLbR?6HA^_fZ`dWv3=kaw& z`R-=olXA`-h*qT8fz4iBdc+63%G0Ut%vR^aZtGr$lu>EMW-R96==9mmX(>s`!Mtrn z^6Q&w!g9`f!4q4dCYP>X2brQRcNs}-4W`uyHNT(qu8o?H?4cWnMsve5(oIw}HWk%= zAR$wO=R{}ylu+eE`{n_0WZDM;d&&)~!~#JAdnSX&XrP^4<7q|4;-%hwAwuR@M#P;lPY1@PGoZ*2%f0-cui!7?rxW<%tcF-9fqj6wx zPRs{S28<)=bR-XP5r{LyT4ts+#F(e-ji$1W!=aMM=H629OmLWX#zjZ-^ibZm>MHN~ zy(&fqud9ocyrTIAg#ek@zKVW2-C5oCiHyVx*zE$NEsWQ`Jc5n-y3vv* zN{7q*%voaT#4gT75J`CUNjWqX6mljk5sco8?vsplI#AL`NJSQ=DmxFB7872kc>w%W zT|w^k#837dgj6f;m+#ghB-)yff%@4_^1_Nn`!CXXO5*y)Mpb+q>Xwl03g4@J*Gp1c zPc4ATRc(&PCf#yf;zL6*N)#p4dFG}K-k zJHLvm0FO?t;cyV}xeeSV#GO^n}?m6AIzrlnl6m=BB`^u0@DO~2hv z<$qi+>y%g|;m)tQ+NL+GXqGZL`>E#aTk!ZCJ)~m@fe|YJ zPv&GYkm~B%Si0H6FG-A`A7Wi`efQXrw-n5%-3I2T91$aloO9fsXsRd9Tz2}ob<${V zEInVANX5@u518zU(>Z8K+Ng5d^>v9u{}HON zZ2>T{N2r2HArTwjiaX;-+9!aeRP`a!UEf;{d1D7{bvVkc=6+GpzLZIa!9TZ4V@pt7 zXg8dkz++`wU3R@D=a0ptyXO-r9b04lSiN046MTWTW~^k^1<}bGipRj5rgBnk_lOGP zovxsVg2KW*2P;1tg@Gs2B`hmHfXPD=~+O(R`6( zfP_p-^G@MGkdAJsS-4rlM3w&PUazi=nSgUXAGC<_(!i*SvS4jTqU~=_D)h8-n3dGJ z;yDA;^|!@++e`sI@PUTJ^wLRXl0f~SIYQHDGQh`zMrS{hnkZI$m;pYfy2e(d+6U5i zQ7wiKedmj^0(Is3_xYknna`G%YRywAU7(&ge*-&xq3eH{Cm8^iQvXnNv%G0Cl5Xkc z)wu$`KMssAT`)JYUM^$M;jp}O+*B0^$dMApK*j+3A&t9O-aSk z)h1!okxfN3;I`f06gOgyrhCCyqcZR;$@ewh`;o<&TU$$~XM?XhB@}2udcUqZa*J?( z^p(i=%C^M=5tk#=MtU$aEvryl+j_`3%7`|wm*Hmn+cojnT-bSejm;V?gIa|9s-UtG!; zPzz#QuB^q^do!C+WtMJRW&bRm#}!3DGOqZ2YHgU%`!;q;!0qG`UpkYMN}8``McxI* zMuCJ`)sBD9wY?p2@fHK2zv0D>rKAy?8ZNwR4eo6=V{Wh4_1`bNeMJ7(A zfsEKk#~k4Q5aa8x9VO%4KpW1eok@hs(|19#CS@Pp;VrmUD1F!^d%x-qcJd$hx?o3TP8%& zGtjO0azghEWFU@RTP(7kY#X1tGO812ZEf%RdpcEFGEx;5;&4?d8F^@iLOp#p-&mT0 z6db89rnN#|3Cr38MU?j25U+D^S2tYeIr_Kh#$Z><3vsWFNu zgcXJ){YbnQ_8u0!EG@q2&=vQQk9zieSA7JCPItMeJ2&$&dt-G0D|S<~5uALK@yx4p z*VFd({ZLQt(=j>ru3yR`!gH#z`6(}SE!w)VkbB*Kc>|=o~ zuAa%kO}tb#sT>>E+O*`lvwy33Fxqs7IbE$6us3_|hcSKCxICOj^O1K&o@}>{%c;a> zd*p{%ASe8OcUpW(d`g-@SFq@=Hq|myZS`;0>8m5%38x}O#Rwvf?PSx8--dZ6`n_fl7%kCheT^}IN2i+VYR{6xD@bSh!JFMHdu#P~uC-%IrO$k>xB zf-f4{ZbokQcj~yFc)FW8Xa)S@s`W8HG%SqV_wHCMj37@MZOr~@fi`v%2c}j*ohzSx zlJ^wG5>nwwujP5l3}7{(su$BwS|*5qIl7)9We;R3f>He<+8lFL;r8k#&{=cT>yrGzXm0|!C>Oy=Mr9uuD=Ye$2G`Y# zFEGAf1OaKKFIWuwQW@`VF>2`lw0EUJO(pI6AS$CGs31gSnE{0e$|_qBgN}e;3<4t} zyC5*A1QEh+2+lC@!Oc=Rt6{-;i;9$~=-K(UQrtuj}NV z*s4B81sgVV$K-$BrZwu;9h;Oenucb?;UGU8>Jo8o1#k)h1wIyjOwaU22Q3>2&S1|( zhkU<$-2Qf+-N%m?%Vb5j7LdZRC@!sX7@nMHlMC~`%%@%nTf$gXRdmB|LNL3NqstQR z&^^DUMI@Ef3T7cr-QB^Bza1r1k_kft6$DNz=ZxZPK3`13*@S=fEM-S6I4 zEJf#v0%y|VE&0g{rHQq+h5MpUXPpGO3fov2CCa)Zbjs$I5fF&UtDWUachRxB0w7f? zCV`KaZS|7dAel4m4lL4E_;I_jlrL(H{Gg1_cLNu`eOa(_GcN{W3ecB1pskogO5;sV{wG(-{Az%b2mGj&nCJNRu+qh1p zGc`mo6|S@lF}2}5c26I*dtM!9;wN8dLAsNQ1()?rOwO}y&Q~e}b=79T)-CG2gb+-$ z?O6d5Ey)NAc(Q%MQei`+?g?d1u9zJC6LnfcH5yOWy5V94pLR?yTTBe-ww{R8T*>yEbV&uHp1F0x5zUupbvY`a`oHQ~bI z#vcLnwDs@q)!@KnX4MA3P%J@!7xUm#1JoVBW+r}AM z2+D?;S+Q~_qd*aePq+dMF8>%f$(q469O03d3ZDN&b(cGfw|2XJoGWq(1&-gNyRNT^ ztUPE5OTAR>K+U9mEtHT_#ns3N(1lOES>+gkRfsTEWCZZ)dU(`qxzC+BQ{uf|*h24T z#eL^Z0WXAE5+Q-VQZAmM(v^?h#jnPtzKEio9L9p{Y^W0z3w)p^3A}F?W(;gTwlya3 zYGbWxHvX79!z}IX?WMMrfcJd~`d6_h2Ee-#sKs7Wrss$JcM6BU6pF6sFH8)S#yCz- zOl2L~G60;-w_OF7K$%#G0GA1EY|I#+kYdNtTT5U4&f@vEI%6rmb-V56^nUMUA5JUH zlSL_{D$eOe!gSO3@){#^Ro|V=0qq9;ZN&+6qP!B$TTNf4yGA694#z9EX^Bf%H)&(! z&X}$79FiFT(jfK}8UG_asX7q?KZVu1cI6L`RApWi3|T z^e?kFkP>aZuM>e#aHM8_d7Dz|^T;~+yprGjf~QEy&bf>}4(`YBL=sT+P7P#ZV`6op z=GIt|K&!`_^?fSytiSro#cI7O$9e6;QGkI+-suq5LU$wa~pKC>W%FD+O1*M zhrr^kPsnpi@E8Q(FsSgg_mhqnYcOUm1$P*v*X`3DGAcz;>$)f{vt&h65eZu@sTsZAIYw_-hUv z24SE`J^57Of$gQ$(u)3A6UQ9)=^r%uP_a3>*1+_QQ4iqns zAjQ6R$n8U%*puSUaLvXmf04*tZDCCi#K|SotszT~`WZczT;D~=$uXMVtT6WYRHfYw zpUUXGWKo%=$T?TawgB<pS_C0p?DcMm#T9JcqJ56^-|nc}tc!N1Of;C#18S+PO4Ioz|E*%aNz?3IC@%fnjik}s3Jyt>WU;bScG zULem-*HT>j61l#VYs?o0Dxu5$KGEK%TO9(0DgpY5k~nP>lOifF5suVfKoRxTdecND zgVr|&prunqnPt%FR3BW=>+DeHh;|ZkclY~TP8|Q5-?RL$#T&8l#cGOk2;xWIYN&7`caB8litcT z8Ptm0bTrQSO?=D%)zvzr@vvP}sX1aHI{XG1gGmxueVF0l!%ID=B?U9^&);Dr9c07x z+{QMgY#U0xcE3P%MfG-fZ-GMb0?+pRdnctgN2<2p5A6Vn1V;EzDi0?gCKm2Z|K10* zi`QPqmn)`hn#>QpKz;67mHMF~iuQlKps?PVc*%dT;@+_LXTbQDh|l%uTv@XCzF#W{ z?iK8jCM9_NTw$#JV9a}tF&Q+c=jpoi{(;4K`rXUEf5chKJ3OJ$`HiP4O%A1{!c5*z zw`|$qHn*|Q(_>9JV?(pxiKrI(h-Vt*MqF=i_+4cu_ne$gxv*0=Y&+j0)C)sLp&7VH z02Rh2^Bw7JoVPD_wFL8a5;_J*__ML_ugz)M4^Kyyr{lgX4rP8Dw_7B|7oT~uQg!?& zaRi*x2K{aJWCesF^{&9_zLpMja7m64mk?D&HN|_Ix;gHc2s5$FpIlS!kH{ETCu-Gi zQ|BX>k88&85=Y>=-``tLRx-fjmd8)`HOZh!J>hwrN3l7bWht7youtf2YT}d8C;Ssu z{?|OPnD|p}u}zHw(UUX;kprBo1}Zd9p4fd#h_6F=IFtHPLp(?HMgF{1>3%jrw)uv} zdbvXOdnCL0kTN)9b1?8_TjPwLLg{6P^AYv9;g0=UV(@~{r2y=m!WT2$_(_v7*i-!U z_lwqg$xiaE9U)Tm!NIloz>^Kja;noiJ6mxW$!1K1Q>g9SGo=RrM1f$h!b9MiHog`8%_!Yvy0Xtn&#sReYV@rEBqAj`2m@^7mG$GzCI-6 zRaI^En!8Y@Q+yZerVEkCxp5nasREB*^EZuY3ZEm6WjgPtR7N>bU9RSyE#V>ZXsFj~ zF_l1$i79cP?bcYTSt+buOi*>Ps{fxSrB&s!^Z?ToV({FH3bg zCwC#a*k)wz+nc_EyCr^`%l8^A()Y`sxo>7(RPBvNZvAgMLaXlUppfoblZH#vNVzSW zr^9h1ri~PBXRd32y5#5gsd0945=-JhJOKwNLuqmLiiVn(0e*gAKHeSJUwvWiQ8>k= zDMTVKX0@`Llv@~{z%aBtogt-zBS@x8;*pRMT#D-oT0WePv!ZPW(;8|E+?Yp)3EDIvf2(- z7|nmvG3NP?7xw_G&Uf+~{Gn{9j3SlFLl$wcO<1oB6x*fkw$j%L-lG;tYA3>j#v4b~ zTqh{#LJO=ABlUiI#YO%0jQd{PMG>Sqz;lg$gKJ?3h!ft~MI_{W0}XHSYo9e#yrloU<=ryE zMD%Qfo#|b$M)p@jh?sZ25Hf)c8d!g=wpE2bU}gwX^YFLqS!m}C=Tea zs|2v803;!v`s6p0f|*#brbiV`azSY#;ET;ql91-ry|4#7hK%e@z>!?}q{A{5+u{;57NJ+c6HhS6t_g0hL4gO9cdg;aK5)UaCv?5 z+7R;|*M6ug7Hr;{wA;J=C%E0%>>eK<4r+LwjlqFOr}qM$w%=hqM4fs9Nj z3)3>R#>f>06eF~Y(Z&yL$?QFT>zqAGQWd?pi2=D!Cx=#D^qphtgw9GkpaHT`c7wET z6D8Gc_#AZn_}u}JvZsRp208CR`7Deh4IB9#eTs|$xyG4SZ7^Ovq+~n|fh57W-MyQs z%?OAD^=U1mhnFWHaO79j7l)+I#Bymfi4>O3hqCO5eOh82jR{;}#hF6@!yF`=e7@TE zhNHL3{=83}dL#T|$rsu2F z0mi`M=0MzW6ZFYeZkx7`Hk@i0J!<$%;GRKa6Tn6`?|h3+j6)p;)JmXHc3f#$bIJuq zvw>aT)Su3J$p?vV?CqN}2NYax(>jAOl6WBikOZQjod2|D|9^{)pKMO2IUmi(eF`z~(Dk&j*9x!NJo^{c#Nk%} literal 0 HcmV?d00001 diff --git a/samples/sprues/advanced_sprues_02_expected.png b/samples/sprues/advanced_sprues_02_expected.png new file mode 100644 index 0000000000000000000000000000000000000000..734f4abd8b6cbe7aecb27de01d61e3266422497a GIT binary patch literal 27477 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 l!6m|hCflW^H%4%+mA6e*&u~1vdZy literal 0 HcmV?d00001 diff --git a/samples/sprues/my_sprues/weird_sprue.yml b/samples/sprues/my_sprues/weird_sprue.yml new file mode 100644 index 0000000..7f5afeb --- /dev/null +++ b/samples/sprues/my_sprues/weird_sprue.yml @@ -0,0 +1,17 @@ +--- +sheet_width: 5in +sheet_height: 4.5in +card_width: 2in +card_height: 2in +position_reference: :center +cards: +- x: 1.1in + y: 1.1in +- x: 3.1in + y: 1.1in + rotate: 3.14159 +- x: 1.1in + y: 3.1in +- x: 3.1in + y: 3.1in + rotate: 2 # 2 radians?? ew.