pax_global_header00006660000000000000000000000064115624023700014512gustar00rootroot0000000000000052 comment=f960cd22f0815edf18bfa877c375f5475dd5a5ed dokidoki/000077500000000000000000000000001156240237000126535ustar00rootroot00000000000000dokidoki/Session.vim000066400000000000000000000010401156240237000150060ustar00rootroot00000000000000badd Session.vim badd components/exit_handler.lua badd components/keyboard.lua badd components/opengl_2d.lua badd examples/actors.lua badd examples/colors.lua badd examples/font.lua badd examples/sound-sdl.lua badd examples/sound.lua badd examples/spinner.lua badd examples/sprite.lua badd examples/texture.lua badd private/will.lua badd scripts/sprite.lua badd scripts/transform.lua badd tests/base_test.lua badd tests/v2_test.lua badd actor_scene.lua badd base.lua badd game.lua badd graphics.lua badd kernel.lua badd module.lua badd v2.lua dokidoki/actor_scene.lua000066400000000000000000000077621156240237000156570ustar00rootroot00000000000000require "dokidoki.module" [[make_actor_scene]] require 'glfw' import(require 'gl') import(require 'glu') local kernel = require "dokidoki.kernel" local graphics = require "dokidoki.graphics" local v2 = require "dokidoki.v2" import(require "dokidoki.base") ---- Core Game Behaviour ------------------------------------------------------ function make_actor_scene (update_methods, draw_methods, init) local actor_interface local actors_by_tag = {} local actors_by_method local actor_timings = {} local paused = false local key_states = {} local old_key_states = {} ---- Actor Interface -------------------------------------------------------- -- actors have access to these functions local function add_actor (actor) for method, t in pairs(actors_by_method) do if actor[method] then t[#t+1] = actor end end for _, tag in ipairs(actor.tags or {}) do actors_by_tag[tag] = actors_by_tag[tag] or {} table.insert(actors_by_tag[tag], actor) end actor_timings[actor] = 0 end local function is_key_down (key) return not not key_states[key] end local function was_key_pressed (key) return key_states[key] and not old_key_states[key] end local function get_actors_by_tag (tag) return actors_by_tag[tag] or {} end local function get_actor_timing_information () return actor_timings end actor_interface = { add_actor = add_actor, is_key_down = is_key_down, was_key_pressed = was_key_pressed, get_actors_by_tag = get_actors_by_tag, } ---- Event Handling --------------------------------------------------------- local function handle_event (event) -- Quit if event.type == 'quit' or event.type == 'key' and event.is_down and event.key == glfw.KEY_ESC then kernel.abort_main_loop() for k, v in pairs(actor_timings) do log.log_message(v .. '\t' .. k .. '\t' .. k.pos) end -- Other key events elseif event.type == 'key' and event.is_down and event.key == ('P'):byte() then paused = not paused elseif event.type == 'key' then key_states[event.key] = event.is_down or nil end end ---- Game Updates ----------------------------------------------------------- local function update (dt) if init then init(actor_interface) init = false end if not paused then -- update all actors for _, update_type in ipairs(update_methods) do for _, a in ipairs(actors_by_method[update_type]) do local time = glfw.GetTime() if not a.is_dead then a[update_type]() end actor_timings[a] = actor_timings[a] + glfw.GetTime() - time end end for k, _ in pairs(actors_by_method) do actors_by_method[k] = ifilter(function (a) return not a.is_dead end, actors_by_method[k]) end for k, _ in pairs(actors_by_tag) do actors_by_tag[k] = ifilter(function (a) return not a.is_dead end, actors_by_tag[k]) end for k, _ in pairs(actor_timings) do if k.is_dead then actor_timings[k] = nil end end old_key_states = key_states key_states = copy(old_key_states) end end ---- Drawing ---------------------------------------------------------------- local function draw () for _, draw_type in ipairs(draw_methods) do for _, a in ipairs(actors_by_method[draw_type]) do assert(not a.is_dead) local do_transform = a.pos if do_transform then glPushMatrix() glTranslated(a.pos.x, a.pos.y, 0) end a[draw_type]() if do_transform then glPopMatrix() end end end end ---- Init ------------------------------------------------------------------- actors_by_method = {} for _, method in ipairs(iconcat(update_methods, draw_methods)) do actors_by_method[method] = {} end -- scene interface for main loop return { handle_event = handle_event, update = update, draw = draw } end return get_module_exports() dokidoki/base.lua000066400000000000000000000034651156240237000143000ustar00rootroot00000000000000require "dokidoki.module" [[ range, ireverse, map, imap, ifoldl, iforeach, irandomize, iconcat, ifilter, copy, build_array, identity, void, compose ]] function range(first, last, step) step = step or 1 local result = {} for i = first, last, step do result[#result+1] = i end return result end function ireverse(a) local result = {} local len = #a for i = 1, len do result[i] = a[len - i + 1] end return result end function map (f, t) local result = {} for k, v in pairs(t) do result[k] = f(v) end return result end function imap (f, a) local result = {} for i, v in ipairs(a) do result[i] = f(v) end return result end function ifoldl(f, init, a) for _, v in ipairs(a) do init = f(init, v) end return init end function iforeach (f, a) for i = 1, #a do f(a[i]) end end function irandomize(a) local result = copy(a) for i = 1, #result-1 do local j = math.random(i, #result) local tmp = result[i] result[i] = result[j] result[j] = tmp end return result end function iconcat(a1, a2) local result = copy(a1) local len = #a1 for i, v in ipairs(a2) do result[len + i] = v end return result end function ifilter (p, a) local result = {} for k, v in ipairs(a) do if p(v) then result[#result+1] = v end end return result end function copy (t) local result = {} for k, v in pairs(t) do result[k] = v end return result end function build_array (len, f) local result = {} for i = 1, len do result[i] = f(i) end return result end function identity (...) return ... end function void () end function compose(f, ...) if select('#', ...) == 0 then return f else local rest = compose(...) return function (...) return f(rest(...)) end end end return get_module_exports() dokidoki/collision.lua000066400000000000000000000031551156240237000153550ustar00rootroot00000000000000require 'dokidoki.module' [[ make_polygon, collide, points_to_polygon, make_rectangle ]] local v2 = require 'dokidoki.v2' import(require 'dokidoki.base') local native = require 'collision.native' -- create a convex polygon from a list of points function make_polygon(vertices) if v2.cross(vertices[2] - vertices[1], vertices[3] - vertices[2]) < 0 then vertices = ireverse(vertices) end local coords = {} for _, v in ipairs(vertices) do table.insert(coords, v.x) table.insert(coords, v.y) end return {data = native.make_polygon(coords), vertices = vertices} end -- detect collision between a pair of bodies, where each body is of the form -- {pos=?, facing=?, poly=?}. returns false if there is no collision, otherwise -- returns the vector which would pull body1 out of body2. function collide(body1, body2) -- grr backwards compatibility local facing1 = body1.facing or v2.unit(body1.angle) local facing2 = body2.facing or v2.unit(body2.angle) local collision, x, y = native.collide( body1.pos.x, body1.pos.y, facing1.x, facing1.y, body1.poly.data, body2.pos.x, body2.pos.y, facing2.x, facing2.y, body2.poly.data) return collision and v2(x, y) end function points_to_polygon(points) local sum = v2(0, 0) for _, p in ipairs(points) do sum = sum + p end local pos = sum / #points local vertices = {} for _, p in ipairs(points) do table.insert(vertices, p - pos) end return pos, make_polygon(vertices) end function make_rectangle(w, h) return make_polygon{ v2(-w/2, -h/2), v2(w/2, -h/2), v2(w/2, h/2), v2(-w/2, h/2)} end return get_module_exports() dokidoki/components/000077500000000000000000000000001156240237000150405ustar00rootroot00000000000000dokidoki/components/exit_handler.lua000066400000000000000000000014511156240237000202120ustar00rootroot00000000000000--- dokidoki.components.exit_handler --- ================================ --- --- Allows an action to be taken when an exit event is received. --- --- By default `kernel.abort_main_loop()` is called, assign another function to --- `exit_handler.on_close` to do something else: --- --- function game.exit_handler.on_close() --- -- do something --- end --- Implementation --- -------------- local kernel = require 'dokidoki.kernel' require 'glfw' on_close = on_close or kernel.abort_main_loop if trap_esc == nil then trap_esc = false end game.actors.new_generic('exit_handler', function () function handle_event(event) if event.type == 'quit' or (trap_esc and event.type == 'key' and event.is_down and event.key == glfw.KEY_ESC) then on_close() end end end) dokidoki/components/keyboard.lua000066400000000000000000000023261156240237000173460ustar00rootroot00000000000000--- dokidoki.components.keyboard --- ============================ --- --- Provides keyboard-input related information for the game. --- --- Currently keys are identified by their GLFW key constants. For ascii --- characters this is the character code, with letters always using the --- upper-case value. --- Implementation --- -------------- local base = require 'dokidoki.base' local key_states = {} local old_key_states = {} --- ### `key_pressed(key)` --- Returns true if `key` was pressed since the last frame, false otherwise. function key_pressed(key) return not not (key_states[key] and not old_key_states[key]) end --- ### `key_held(key)` --- Returns true if `key` is currently down, false otherwise. function key_held(key) return not not key_states[key] end --- ### `key_released(key)` --- Returns true if `key` was released since the last frame, false otherwise. function key_released(key) return not not (not key_states[key] and old_key_states[key]) end game.actors.new_generic('key_monitor', function () function update_cleanup() old_key_states = base.copy(key_states) end function handle_event(event) if event.type == 'key' then key_states[event.key] = event.is_down or nil end end end) dokidoki/components/opengl_2d.lua000066400000000000000000000014151156240237000174150ustar00rootroot00000000000000local gl = require 'gl' local kernel = require 'dokidoki.kernel' background_color = {0, 0, 0} width = 640 height = 480 game.actors.new_generic('opengl_setup', function () draw_setup = function () kernel.set_ratio(width / height) local bg = background_color if bg then gl.glClearColor(bg[1], bg[2], bg[3], 0) gl.glClear(gl.GL_COLOR_BUFFER_BIT) end gl.glEnable(gl.GL_BLEND) gl.glBlendFunc(gl.GL_SRC_ALPHA, gl.GL_ONE_MINUS_SRC_ALPHA) gl.glAlphaFunc(gl.GL_GREATER, 0) gl.glEnable(gl.GL_ALPHA_TEST) gl.glMatrixMode(gl.GL_PROJECTION) gl.glLoadIdentity() gl.glOrtho(0, width, 0, height, 1, -1) gl.glMatrixMode(gl.GL_TEXTURE) gl.glLoadIdentity() gl.glMatrixMode(gl.GL_MODELVIEW) gl.glLoadIdentity() end end) dokidoki/default_font.lua000066400000000000000000000066211156240237000160350ustar00rootroot00000000000000require 'dokidoki.module' [[ load ]] local stb_image = require 'stb_image' local graphics = require 'dokidoki.graphics' local data = "\137\80\78\71\13\10\26\10\0\0\0\13\73\72\68\82\0\0\0\64\0\0\0\53\8\4\0\0\0".. "\91\143\37\39\0\0\0\1\115\82\71\66\0\174\206\28\233\0\0\2\64\73\68\65\84\88".. "\195\237\89\219\114\197\32\8\4\166\255\255\203\246\193\82\228\42\38\233\101".. "\230\156\204\164\158\24\53\136\203\178\90\128\239\107\12\254\59\127\233\122".. "\127\113\189\244\187\114\81\246\98\12\109\144\24\198\111\184\29\34\0\0\226".. "\185\9\99\4\6\32\206\123\157\213\90\199\207\186\70\15\122\209\39\182\131".. "\184\120\29\112\12\235\129\108\73\108\59\253\188\53\144\59\72\105\103\24\27".. "\208\247\128\123\239\61\160\103\158\97\160\11\86\111\232\67\87\61\160\117".. "\124\115\1\94\232\194\191\250\240\92\2\100\250\152\37\162\188\144\146\111".. "\91\31\151\241\199\164\222\253\142\194\198\134\156\13\67\75\58\182\77\12\82".. "\29\85\41\19\10\106\125\25\133\97\212\78\127\152\121\19\81\147\246\87\59".. "\235\129\40\198\35\143\100\207\39\30\0\0\248\136\137\194\167\150\156\112".. "\188\99\231\76\215\52\197\179\95\49\176\162\225\71\80\254\166\154\227\52\44".. "\217\47\122\246\217\81\178\100\93\111\1\107\32\27\197\114\7\233\62\61\107".. "\152\250\126\222\176\144\7\114\116\102\193\118\15\108\228\7\202\212\29\155".. "\181\82\105\78\191\126\34\113\59\218\105\188\171\136\234\202\84\66\204\169".. "\85\175\109\173\233\120\77\35\10\139\12\153\244\244\166\128\255\65\67\94".. "\207\103\178\188\119\235\126\126\95\160\17\65\12\155\72\245\240\142\232\4".. "\44\146\247\230\47\9\110\201\145\171\9\116\55\159\121\52\215\232\182\19\34".. "\223\97\62\203\76\118\251\1\214\147\179\159\167\159\122\26\228\29\92\119".. "\121\58\126\41\27\216\46\128\55\43\167\224\93\207\116\95\240\228\220\214\60".. "\177\2\188\151\71\94\82\15\85\217\189\106\19\169\101\189\73\217\68\193\249".. "\217\78\134\20\169\61\89\89\90\79\132\226\244\235\79\195\44\105\215\135\53".. "\185\38\84\146\76\230\37\212\188\18\139\228\123\222\196\234\246\123\79\105".. "\197\197\111\233\10\203\119\219\91\62\104\106\194\120\9\114\229\116\14\244".. "\199\88\167\123\44\245\171\123\191\247\158\48\219\184\59\50\131\1\163\23\5".. "\87\93\170\65\38\49\161\23\137\44\49\216\242\252\174\81\192\92\18\106\66".. "\182\155\137\166\163\9\173\142\16\237\151\125\92\143\70\213\192\245\33\171".. "\150\100\94\210\85\217\194\104\194\108\171\21\173\161\12\110\135\203\254".. "\227\114\0\177\187\17\92\29\95\101\81\240\160\1\215\40\232\19\158\224\92\31".. "\251\141\41\17\0\0\0\0\73\69\78\68\174\66\96\130" local chars_per_row = 16 local char_width = 4 local char_height = 9 local char_size = {4, 9} local char_origin = {0, char_height} local start_code = string.byte(' ') local end_code = string.byte('~') -- looks like it wasn't such a good idea to pack the characters so tightly... local epsilon = 0.01 function load() local tex, width, height = graphics.texture_from_string( assert(stb_image.load_from_string(data))) local fontmap = {} for code = start_code, end_code do local i = code - start_code local x = (i % chars_per_row) * char_width + epsilon local y = math.floor(i / chars_per_row) * char_height + epsilon local rect = { x/width, y/height, (char_width-epsilon*2)/width, (char_height-epsilon*2)/height } fontmap[string.char(code)] = graphics.make_sprite( tex, char_size, char_origin, rect) end return fontmap end return get_module_exports() dokidoki/examples/000077500000000000000000000000001156240237000144715ustar00rootroot00000000000000dokidoki/examples/actors.lua000066400000000000000000000021711156240237000164700ustar00rootroot00000000000000require 'dokidoki.module' [[]] import(require 'gl') import(require 'glu') import(require 'dokidoki.base') local actor_scene = require 'dokidoki.actor_scene' local kernel = require 'dokidoki.kernel' local v2 = require 'dokidoki.v2' local function make_spinner(period) local rotation = 0 self = { pos = v2(320, 240), update = function () rotation = rotation + 360 / period / 60 end, draw = function () glRotated(rotation, 0, 0, 1) glScaled(100, 100, 100) glColor3d(0.5, 0.25, 1) glBegin(GL_QUADS) glVertex2d(-1, -1) glVertex2d( 1, -1) glVertex2d( 1, 1) glVertex2d(-1, 1) glEnd() end } return self end function init (game) game.add_actor{ draw_setup = function () glClearColor(0, 0, 0.25, 0) glClear(GL_COLOR_BUFFER_BIT) glMatrixMode(GL_PROJECTION) glLoadIdentity() glOrtho(0, 640, 0, 480, 1, -1) glMatrixMode(GL_MODELVIEW) glLoadIdentity() end } game.add_actor(make_spinner(4)) end kernel.start_main_loop(actor_scene.make_actor_scene( {"update"}, {"draw_setup", "draw"}, init)) dokidoki/examples/blip.wav000066400000000000000000000147401156240237000161440ustar00rootroot00000000000000RIFFWAVEfmt DXdataq'_,3.v,I'tѫcX8c RB$h+/"/+%+Z+dހՁ̭rى 5 7)z.O0.)!qG ==2@Ӝ_͞2նݓ($+00-'*؋%4ιtwEo '.0X0[,?%"r ~ !*Q/P1/ +9# }ܕԯ >l "*/}1/*"8" 4Q^,oԱDAЇշBnb>-$+K01P/)! ۷_jމT$-$+U01/9*"c KԴg}ކR"+$+S01/7*"b ~g*' G1 "*/10O+#z ݟhgYX+ ?!)f/1y0B,%U9nE5ц$S(B1 (7.N11-'m5bέI%,0z1.C) QG p6Ա]PjT݈Z x"*/1D0+Q$]߮|5ϸOpz&y-1v1.(/ | \EԦq|ТՏݾ s"*/1j0,$'}D6}T)G5h%,01E/)! 'FMk5ԁ+ & (.h11-i'%fxdnΦ$ AZ"@*p/10h,k%6k+αΰѧ5Qa#*/1P0+$<CTbSt$+501/)+#-B ؘ db$+-010n+$s+;ؒ^\$+(010+d$@oJ(Χ<ׂ|`$#*/1y0U,n%36(=ς_ZF  (.i1%1-'-lۦ g3Hۡm''w-0{1.)!s MGѢ\ҁ6rz $P+/1X0,!%V~B}νՖe  (i.L141#.I(>  -ݚ՗qIӓe$+801 0+k$"2N%τΐsnv c'- 1|1.)!p gXwѵ 6h "T*_/10O-'%URjr[ٸD$+01=0+%W3Jڝӑd(!-7%\,q010+$U7mӃsKgA &,01/*q#  0-eq^B܈X|&,01/*#-*bn[@܅o%!,I0100+*%@(A"Jhδi4*Vk$h+/10,&sHr }գ~+Ϣү M 8").n11-=(4 T/ gיκ΁ֶbgw '2-01/*#[Wӷb Ե}J'1$/+/10,&O. Dsw@ѧλ<ߧ: '-01C/a* #>ًӜb,ڣ("B*//11-:(N  oy&ΐC]Bl%b,Z01/0 ,{%B TS&БщUO '-01~/*#hn*"jfn!ӡحn\X & x( .11;/a*9#'Sj8p΍N~J d!D).I1\1.)"W~ccΖeӛI J!!)l.71[1.)~"V~b2qQ  D(-11x/*#+ՎІ$_ _| E@'(-01/+,%? NDѳοfхj m%+010,'Du OuخIq3xۃuVb").K1R1.)"0 +ۓAq;ϓNBߊ : I4&f,K01|0,&T G)؃;|QС3ۮJO").G1b1/6*=#tNRTxВκK_ %+/10z-'" A 1Erz؜ q&,x01O0,j&`# a YجQr6Ԏ"1 'N-01 0 ,%] =3z0-(~"=j;;x0 Z$*-/ 7; J^!sOf  =i l+1Fq53W9 }J8 _ znlArZTkF 6?> +F{RV;84d lG n CS.&'nd$ !g  xN~VGqg  F .{V" Os{VT>08  ' TK $& Xz>b# kE{ {F.=h7c, P ~?! .=(PET>GRDt *h _ Pyh4e 1Fq* Kk'  k;BL4b_=iP  M A jywXT2euR1  p MxjU2hOt}F4@ Y \  U T *Pk3BRZVGyv%@"D$  $8 sF>shpn^7,iZ!xPYwPOnFD_%:/ DFTprcKG;BdtliwUI([!rd ll m!xFvzQ ?1xqi>+1N gNs#! v-3K 0d-X}gM4dokidoki/examples/brouing.wav000066400000000000000000007246621156240237000166760ustar00rootroot00000000000000RIFFWAVEfmt DXdatau%?Y6/,-17?|GMPQM(;9388w:=@BDEECDAJ?<:99:<>cAWCDDC2B@=;:l:;]<;>=@B=;<;o;U<=a?@#BBBA@J?=<;;p@6AABA@?o>\=<`<o?p@)AxAQA@?>=/=<>?@@@@?$?R>=7==[==>Q??c@@[@?L?>==]=t==S>>??$@@?]?>E>====(>> ?????Z?>v>>=== >k>>2?u???J?>>:>====C>>>*?O?Q?/?>>W>>==='>h>>>???>>i>->>==>C>|>>>>>>>p><>>==>(>T>>>>>>>o>C>>>==>4>Y>|>>>>>h>C> >>==>>7>U>m>{>}>q>[>>> >>===>>3>I>Y>^>Y>J>4>>>====>>)>8>@>?>6>&>>======= >>#>%>!>>>=========> > >>============================================================================|=z=y={=}======={=v=q=m=j=h=i=j=l=o=p=q=p=m=j=e=a=]=Z=X=W=X=Y=[=\=]=\=Z=X=T=P=L=I=G=F=F=F=G=H=I=I=H=F=C=?=<=9=6=5=4=4=4=5=5=5=5=3=1=.=+=(=%=#="="="="="="="= =============== = =====<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<}<|<{׸U*շPoq`:’|ړ4!T)߉Ȉؐ[UwJ hđ˓O>|٩ư磧aSqg!ǘPLYR0A{ͻ+q%ګ:QJ̥q1`-F +ǿ'̳˧ǢźRm0-B?GĻ!6װ"7[7?j |u`$›ăŽw&hN9ൢF+зG ]%?@BCEGHJLMOPQRSTUVXZ[]_`bcdefghjkmnprsuvwyz{|}~ÿĿƿǿȿɿ˿̿ͿϿпѿӿԿֿ׿ؿڿۿܿ޿߿  !"$%'()+,-/01345789;<=?@ACDEGHIKLMOPRSTVWXZ[\^_`bcdfghjklnoprstvw'ġQ1!c}}}}}b4| O/X!8`}}}}fzrX>3On<]Cx}}}mP2Eg %@_Zoo{}tbK2RLJ +B0WgqqiZG3d"O-!1!C'T=ax:65469=-BENH/I_H FB>);[866Q8:Q>ADFKGFDA>;9U8d89;>[ACCEEE|C1A>B@BDvDCB@><=;::;<>@,B$CgCBAF@>=;N;h;#<\=>T@AVBB B5A?>N=a<;<<=> @ AAAvA@?>=?@A3A@K@s?>==<?7@@@u@?B?>=Z= =1==>>]??5@E@@??}>==\=j==!>>.?????h?>t>>====)>>?[???x?1?>j>>====,>>>$?O?W?;??>_>>====*>r>>>???>>R>>====$>_>>>>>>>|>D>>====>K>z>>>>>>c>6> >====>8>^>}>>>>n>K>&>>====>$>C>\>k>n>e>P>4>>======>)>>>J>M>E>4>>>=======>">,>.>(>>>=========>>> >>=============================================================================|=w=s=q=q=s=w=z=~===~=z=u=p=j=e=b=`=`=a=c=f=i=j=j=i=f=a=]=X=S=P=N=N=O=P=R=T=U=U=T=Q=M=I=E=A=>=<=<=<===?=@=@=@=?===:=6=2=/=,=*=)=)=*=+=,=,=,=*=(=&=#================ = ============<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~<}<|<{<=<<<:<9<7<6<5<3<2<1<0n"jiI=oo3-1ӿTɼ̻[񽴾G97+&ʽoBP&p{/@Lѽ]μʼG#Ѿ꾸hT!+ejӾ־|0ཚiT_ŽXƾQսٽPl9޽ŽнP~[1 .V}wV7 'Aav\G;:DVo|j^[`mȾ˾ƾz|ǾҾ׾վξ¾žӾ޾ؾξþɾվݾվоξϾվݾ   !%''%!!'-279:9741/./26:@DHKMMKIGFEFGJNSW[^```_]\[\]_bfjnqsttssrqrstwz}¿Ŀſƿƿƿǿȿɿʿ̿οпҿԿֿؿٿڿڿۿܿܿݿ߿  "$%'(*+,-./0234689;<>?@BCDEFGIJLMOPRSUVWXYZ\]^`acdfgijklmopqstuwxz{}~  "#$%'()+,-/01345789;<=?@ACDEGHIKLMNPQRTUVXYXuN{}}}}}T;)Y%{8 _}}}}}a>E(rZ S*Ig}}}}uhMF17H' <";$T]ixwf|w$j^V?) &1"F9YgoodhZ>I6e&4,])+118AIVPS^TQKD<5a0-.K16=DJNPO3LF@:_5 21d25:@E=JL/MyKGAC$>q95446u9=bBkFJIJJHD@<(96 668"FHlHpG@E=B>;d9 879?; >ACEFqF0EC}@=;9G99:ED\CrAI?9=;:s:;l<5>%@AGCCC:CA@@><;W;;E<= ?@ABCBB@i? ><9< ?@A7BDBA A?>==<<==>?@_AAA AI@b?{>=5==3==b>2??@AA@a@?>D>=k=d==>>`??i@@@Q@?F?>'>====h>>r??*@B@&@?o?>|>>===9>>?n?????{??>]>>==">e>>?\????p?-?>>J>> >>D>>> ?A?b?i?U?)?>>o>>>">>2>Z>>>> ?3?0??>>>X>6>'>+>A>f>>>>>?>>>>i>F>0>)>2>I>i>>>>>>>>>q>P>8>*>)>4>I>e>>>>>>>>p>T><>+>#>&>2>E>\>r>>>>>}>i>R><>)>>>>+><>N>_>l>s>r>j>\>J>7>&>>>>>!>/>>>J>S>V>S>J>=>.>>>>>> >> >+>4>9>9>5>->!>>>=====>>>>>>>>>=========>>>>====================================================================================}=|={=|=}=}=~=~=~=|=z=w=t=p=m=k=i=h=h=h=i=i=i=i=h=f=d=a=^=[=Y=W=U=T=T=T=T=T=T=T=R=Q=N=L=I=G=E=C=A=A=@=@=@=@=?=>===;=9=7=4=2=0=/=-=-=,=,=+=+=*=)=(=&=$="= =============== = = ==========<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<}<|<{<=<;<:<9<8<6<5<4<3<1<0K)WQcoҿ ⿌2ݽ޽/m㿻s^*nþmƿÿe;WAGj1p`$澰{о Cub1־Ѿ&U}hAݾAfrS4 !;ZxfN:.,3CYr{gXONUbtunntĿǿĿ¿̿ӿտӿͿĿʿտݿ޿ؿпɿĿ¿ÿǿο׿ݿܿݿ   %),--,*(&$$&),15:=@AA@?=<;<=?CGJNQTUUUTSRRRTVY\`cfhijjiihhijloruxz|~~~~~~ !"#%&'()*,-./134679:;<=?@ABCEFHIKLNOPQSTUVWYZ[]^`acdeghijkmnoqrtuvxyz|}~ !"#%&'(*+,./02346789;<=?@ABDEFHIJLMNOQRSUVWYºy ;h}}}}}8qHT= 8\|}}}}EkKI* 6Skm}}}RzedL1}T  5L bqyjyp`L7U$ k#4G1R'!#*5AFMV\K^[TSK@6Y-'%/(-@6?UI=QwVQXVQ^JAC92!-7+~,07>\FLQpSRNWIB;5c1s/037="DIMwOOLLHBj=o842358=}BGiJ;L>L}JGGC>:b75t569M=IAEGIIHOFC?"=k@vCEzGG(GgEB@P=;999;I=?HB^DECFEDBk@,>A<:d::;e=`?cA"C]DDDC]B@>-=4@gAVBBBBA@y?_>=<?@AB:BAdA@?>==X==>>?W@AxAA~AAt@?>X>===%>>R??@@"AA@P@?"?>6>> >D>>)??*@@@@@(@?9?>p>>>8>]>> ?u??)@X@_@@@??C?>>i>[>q>>>F??? @@@??C?>>>v>>>> ?c??????x?;?>>>>>>>?6?g?????]?-?>>>>>>>>?9?X?i?k?]?A??>>>>>>>>>?+?>>>>>>>>>?????>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>z>v>x>>>>>>>>>>>>>v>m>i>i>n>v>>>>>>>>>~>r>h>_>[>Y>\>a>i>q>x>}>>~>z>s>j>`>W>P>K>I>J>M>S>Y>^>c>e>e>b>]>V>N>F>?>;>8>8>:>=>B>F>J>L>L>J>F>A>:>4>.>)>&>%>&>(>,>/>2>4>4>3>0>+>&>!>>>>>>>>>>>>>>>> > >>>>==>>>>>>>>================================================================================================~=}={=y=w=u=s=r=q=p=o=n=m=m=l=k=i=h=f=d=c=a=_=^=\=[=Z=Y=X=X=W=V=T=S=Q=P=N=L=K=I=H=G=E=E=D=C=B=A=@=>===;=:=8=6=5=3=2=1=0=/=.=-=,=+=)=(='=%=#="= =============== = = = =========<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<><2_Džխ;!8W6yÀ1 }.CϞTJDH{ߦf攗)X:tLٴ*o>fk?<.}>,҉NԡäLhъvب}ɵ8ŧ Kë$ϘʻY/~89mlŠG90ˣ˟%ƾƸ|q䴽jv1GƵTԺbEYW"ōýŽ ٷӸÿDD~%ŭÝD͹W⺢Ä]CbiWſ[aÎ"1d򽾼󻫻ɽng® 6н̿4Wd7`ٽe=V Jҽѽ-ܿTh?Z¿-`B[,%/۾Ծ!_R򿔿E :ؿ0~x0㿝gIF_ϿZ\ 忲տ Dv{OϿȿ;grM(=arT8"-GdyaM>8:EWmte][`k{{|   "&''&$""&+048:;;:9754458;?CGJMOPPONMLLLNPSVZ]`bddddccbcdehknqtvxyzzyyyyz{}  !#$%&'()*,-.0134679:;<=>@ABCEFGIJLMOPQRSUVWXY[\^_abcefghiklmnpqrtuwxy{|}~‚ƒ„†‡‰Š‹Ž‘’“”•—˜™›œŸ ¡£¤¥§¨©ª«­®¯±²³µ¶·¹º»¼¾¿-?j}}}}}wP)J)&XIpj}}}}}Od`E&y 4+3-2Ng{}}}ImV>A&D/%I;'Q3dqyxBwn_aM9i'0@E/@Q_iFmjb VFP7w)2`A)6 D+Q[9bc`rYNB`6+$c!"'C0:EOW[e\YzRI?T6.q)'X)+.d5=FCNSV61-,. 39?FLqPRIQ3NRI]C+=7b31026;5AwFJMdNVMJnFA<8u53>4%6d9=AEIJ\K6JGQDo@,BEEGHHGEB?1=;);;;<>;@A7CDYDD"CAS@>v=<<<<=>W@AB5CVCB8B&A?>==<<`=9>C?X@RAaA6 X\>iS)#|&Xؠf;sá6 ҵӦ0Jg_bu'0Pi>{TEwd Hޞ5$򞆣uςS!IN5<Ι!Kٺ2̄溂O󫬬LAŲE҇|Ym­'zAxIO.WWF#η`[Dѽ}7_*̩g0ƹ2@Eǥr+.q㻷|:`ȞȆźÑ%UEBVZǹkǀqý90!ÖʼnƻŚGz CgQ )@1#9DV{c[@c}Cž+V¡"Zm!ĭp/ÈsM| vĴľĒ::÷J6˜eè 3_}}}}}}_8\ݤ{f8Zqx}}}}QtW85Z ~;vVm}}}zhQn9""(=Rer,xvn_M0:R(> ->O]hlEkBdXKJ;,!`]&&2?L X_}cAb\]SG;0(#">%,e5 @J_SY2\"[V9O#F<3-)i(*f07E@HOUTeVUQLD>=Y61-h-{/39\@FeL.PQ Q"N~IC=\8(41W12i6;]@EILNM3KGCF>964m45q8$?;8767:<<@uC.F HHxHGDA>@<):889;;=$@BDUFFFECA,?=_;f::::+<= @BCDxEBE`DB0AV?=P<;a;;?ABCCDDlCMB@r?> =i?A1BBJC.CBA@?q>==<<22(z> "4'wLǠ { .fcއ'Ť+\ޤ̵)%|3tUI#l3Ҙʳr±Х&jA0K̡+ ͧSB*LiҟIȴX<-DEyfհ ݿDĭƷ4ʂUþCYpp|P*ǁőÝ翧Ǿkw[Ǫ]DŽ?Ż.ÿ3-DÜĻ|Ɲހ&l!1D/ƓY Q- Rŗŏ>ű8m4~14ēn_ M¼BKĭ|Ę"þxZf¢>w`P&Qy}}}}}:oMIa#lDc&H'i}}}}} j~LJ.gCPU'B\nr}}}wdN6@ LW| )>Sde rwv=n<`N;)0 +"c95r2125?:E?WDHLMMKHD @;854m57:>BKFIJJIGjD@U=T:68:7z78B;<>mAgDFIHHHtFDRA><,:/9*9:;>@BDXFFFqECAP?E=;::;R<>?ACD`EGED@CA?.><;;;<>?!ABC%D1DCBA-@>=<<<<=*>R?@AB$CHCC[BnA?\46̲աF/ Y%1Y'Usܥ#4օu70\.AתP!?˖񤉶4ɂ? ZwB|ٝ@Gǝ/ѹݪ n  h˸܋:p,dYTYsǶv 7VcmHyEfԥr˹aOղM鼇 ЫMi˽Ƹ3Ķ]VžɿnΜM͸;Ox54ʺi7ā%W̫^XBpL6(r3)ȿu9Fć?kElvĭQ SiË߾d\DÖƭǖǺz)) '€Ų da00vN/9H9U^pŜĭv8MOù\žVżIâ$~üaRŁw6@Ĭ!ðhQm¶#ä)ġ2:hÃ"¼nNՙ2C/m}}}}}}Y3{F@6Xu}}}}4z_A$G 4%.XI(bv}}}taJR3[npW *?SNeqw[vmn`OM=++n)U9IXdjkg^3RC5)  *5BOLY.`bIa[RGZ<1)s$)#%+;4*>4HQW*[E[ XQI@780+)J*-3i;eCJPTUdTxPJCCGK2MMLI)FA=96o5l56{9<@DGIJuJHBFC?Z<987>89j<^?fBE0G^HHGEC@?>;Q:99:K<}>@)C ELFFuFcECA?=<;:W;r<>?A^CDAEHEDCBj@>g=o<;<<=8?@B7CC3DC?C0B@?i>|=<<&==>?!A B9B8s GӁC _&~$н\ܰzV x RF씲 زT8$3PզQvd_RNȳ9_r%C\{EB(ۨױ*Ƞޗ52UѨαc"ؤ ھЩɷ.Olŝņ ŞČºqh;vňp3nğj= B6_}}}}}}WiIDߑB$%*Fe}}}}}p"U7,p5[Ofx}}}q:^G1 +@Sdpvuna0Q0?-h'6{F^U^aikhBaUNH7:e-h#i Y&S1=IT ]abe^3WyMB7R.'8$$o(K/28AeKKSX[1Z4VOG>60+$*w+q/5;9I8&89:x=V@-CElGVHHHKGE2C@%> <:9:;<>A@CE4FF_F_ECA?><;=;;<>?|ACXDEBEDCBAq? >B@ABCDDCBAi@5?0>x="=5==4q!եC ܨVy !DX(!% )CʃoG.{=Hf*N>Pyf( ' d<ϥQ2ú_ueݩfٳy o Lԟأ׾ӱ͑CpA4Ґ.'w־cÕ0 ˴5Oظɷ: ćț˦md ƇCsƼIJh@|3̇ɨ=ȿϼTԾQüwYnʸTrP4^W]bsǔ Z(ǟRĿqr %TSȉnùŪ4^%ǔƽſĸ¡QķWƴƈ YŎÊB={•LŞNNƧxV rÅņesÙV:I?İsŭŶŅ:X̷7)Rx}}}}}9w T/eZrV3s4Tq}}}}}fJv.L:h C#!<Uj#{}}}qnZD. ({-@S_d-pvUufn8bkRA%0!/%3cC*R^ gjgi=c'YzL>1''J$m-8D'PgY_a`ZsRUH=3+&$&+2;jENTSYZXETM{E'=5/+*,07)>~EL?QMTT=S`OIC=E72E0/|159?@ELJN=PPNKCGȣǭ|7 c!JiǥDŽ L^asï-…1ĻkƚMň5¦¿Ù>ĕ{ƢƐHEŬģS3EÆo{1PC ƳD\ÿåó6Ěl ŦʞmF=m}}}}}}b>Wh$0DbA|}}}}u{\@%nr*BMZn|}}Iz)kWA, N;.OAScfo1utEnbSBA2 ${CW$1u@ O[diid\UP?CU6+"f{"#*]4?NKDU\``S]VMCf90)H&%(.6?wHWPAVYYiW_RzKC;4Z/T,+.^2d8R?QFLJQ TTRNICY=73101A59:?DIoMO>PN*L"HgC>+:64457;4?{C`GqJWLLLIF4Cj?;/9q767_9 <q<>;:;;z=]?cANCDEqF>FmEDpB@>~=< <.<<=p?ABCDEEoDrC,B@l?E>r= ===i>?@ABCxC2:^#ڪO!E'!8>ٓ! 9%nU2Ia͛7`ƥێg8R=Ȕ)ᏮJԉh7kmMdc?dCvǿTeϤMUHۛߜBP_0ضJ>tݿwl7uKբȠ DZҹ˿#EԛEQ9uħɦwыϷvBŸ߸TY((ˌδ́ˎ8˼p_=îQT˂̼sAȳüʽcIǧɷ ˤʍ ‡.{dNgWɺɈȜ#ƍ CG‘SzLȲȥ)O4ÿ½´Ƃǣ 7FT}zj¨+÷ĐTKd82{Žą.5ÐĸbƁƚ*Ɵ ŀ ĿßîLK5ƀƥƟp ƹGy5<ĂCũChlƷȩִ|:a}}}}}}oM* . 4Rn}}}}}WlGR7 Z0HG_q}}}wgZT2?*j [|]/ATcnzt;t/n3cTbDB4(&M #z/=LXbShyif~^StG://&y M!s'x0@;FPEY^`_ ZdR I?5.(&'+1:B$K4R,WYYUPIAn:3C/,,9/39Z@GLNQSTIRNIC=[8:41'1v2y59>#DHL4OOOLHD?;754@517C:>*BFQIKLPLJ4HDOA=:8778:=@CFHIIIQGD(B`?<:994:;= @BDFGGGfFDBj@a><;-;p;X<=?zALCDE[F8FELDBAm?>Q?@=BCyDEEDCBoA!@> >~=[==I>>6"݆=v" ŌG˾4~ [p_䵰 ;PMYM󿘮3S:#Ž j)xƄN.m7.qG lfC#ǧ:f#QNmޟgԌ8uTp#}QI6kUlصgԳ#绋dmv͞wÙз S{h'7#ѨwɄŘ'$ ;ʳ7Ρ:̾ƮiԼ)<† M˃VV˥y¿I@z’ĩƅlT!qCS0{ ı<ǀ[ɷɍDŽűůGTWpAȷnȾƴřĚ[;wŬjǎFWNcT0XaYWSNG?82.3--05; B^HMQSSQMHCm=_84<213 67:?-DHLNOOLZI(E@p<8n6J55/79x=_A2EHJJLbLCKIFBK?4<9T878J:j<::!:;<>@ICREFGGNGFWDSBB@^><;;;<9>?AxCDESF1FE`DBRA?f>f=<[?@ B`CYDDEDD CA@?=2q֩d" ǏZárt$` lӀXyކ ՞qF%kMU:ɠƔ(֬ttݼ½%ģ򫭶 Enw(pgƹ5tv)zڽ̶$L̺ɫ0Fyqm]˳! /}rԦ2ýEiIlƄLNOOMIEAm=9F755*79<@CDGCJK`LKIPG*D@=;F9o889;n>RA+DFHIIIGwEBm@>)<:j::;q=?ACEGGGGE!D/B9@t>=6<;O<9=>7@ACDEQF5FED)CA%@>=?=#==E>^?@A6C5DDEDBQ6 Eí؉lI^T7&7%Ut6T?l'N V8~'ަƛ mۺψ~px|K˿#;cxZݝfΫ0IĮ1ҦӧѲt/:7܎uhlReJP׭~ľ&,ӉٞͨI2RqaĻ̞V8φˠƿi&˄ш?K(ۻԽ1J|*vSˢȴeR 3ǎo˧ͼ̢ǑeË477-'X:˂-GKǍÀƒ Đp}!NI9ƜXLÑ;Pœë Je$ɏȺǽƵſk/FëP# ƹPȨȷȀ cǟŀYā5}.7 ȫ)ǑgĩčġJUPǦǴjǐƬU QŢq1rǕǖx?Ɩ;Ŧ}pũſSC'Mr}}}}}}jIV( ;Yfk.AL h}}}}}w`G-C 3J_q}}}y)k@YfE1 g  &7IxYfp-trKl|aS^DM5(,M"F-::GFT^ehgb$ZzOC8-B&! #)$2<}F$PXp]_^ZTULEC\:2,3)(*H/5w=rELRWX9X7UCPIB<61.b.038o>DJJN-RSSPLHBz=8P5B3246:!?CAHK[NsOOVMnJFB>:486A6,799(?@dBjDFFGGGFED)BK@>X=m@BCDEPFAFEDuCB@L?I>=w==`>[?@A@4WtNRĢ)#$_ Z߷p+hïx HӘu3DqD{i "ѓ^ 7}ŵ{e!Z K~+>&؇:]㫵w-,ӵ݀IށڠTnȽ0Qb?,Ɏϻ0؛-K>R$=uնҏf1 Ի0{Лz#ͣǑaNϻhl]ÃƈUOǒľGſ/ƈȑ q1siNY4d0+qɬg˓/JuO %·VJË]ǡȠ@s6ʔɡw9IEcɘwTuǁƕ-Ć7ƨNȿȘpǷ\ēĀħŃ dHywDlQk**i?ƾ:Ǥ%hƑ,ŢŌŗ`"wǹǩgt2QH,E OFj}}}}}}tXT3bm="?.\[u}}}}}mqU;#s+,Q%;Qeu}}}vVg%UA.JB /(y9J~Zsg7psrlaS EF65)*!$,8EMR\Xd"hgcP\^R G;)1(v#{!#'G/8BqLTN[^r_\WPH&?60]+5)),(29@OH"OsTWX^WSNCHwA:h5]16// 149?pEJHO8RlSRPLHB=O953a3z46:>|CGgKM=OOMKGC?!0BEHJK%LJKIGD@">;:Y99:^<>\AC]F8HbIINIHTF$DA?=)<`;N;;*=>@BDTFaGGGFED?By@>=<< ==?@"BCDEMFNFEDCwBA?>>=:L-HЭ3Y$0 2G>ϗ͵w4CsiϾÂOɿ˔͡#β̨?Ⱥ\bPf9ɍ˗̶iʧȻ5;qgǴˆ˃^ŏywŸ3 LŖaʆGʯȿǞƋŠÛׯ\SQ<ȀɻɩOɷ@~ćjĐĆ<ƻ^&ȕ i$ơF#]Bi[ȡȼȪoȜǟ1ŮŤ\;ǨGjkK Ⱥ[ƠW'CƁ'}-9+LJ<ƷƊƋ˭ܘ>c}}}}}}}^ >BeM 3OLj}}}}}=y&cdJ1: JY,B.Xjx}}}rcNQ>+ ) *;K,[gpsrkaxTE~7* O]L!+6CPZbBggdF^&UhJ0?4+%""j&,35>HkQXQ]:_/^`ZDTLD;(4d.*)f+I/ 5 9643427:>C:GJyMNOMKHDAn=u:_8^778:=AlDoGIrKLK_JFHEB?P=Z;&:9V:;=@BDGHIIHGECqAX?=]<;;<=u?\AKCE|FmGGGFEDjB@=?>Y= =i=)>I?@&BCDEEFYFE=E.DB=!-/8̣ Y'ȗ"z$k pIԽň$ҺRn{ xD]? 0?>u9fĖi蚪)̩\5˥4𣃡˧y"٥NߡثƯ lp7@ȵwUs׫х*[ö)+)ʮKMs٬ Z7CIչ2gɎŁbh3Ęоу6"ǬĽgMÈWI΀͙F`J»ؿGG\Ōǟ`ˤOSʹ̈3pC_wȢʥ)"eųĶ"ú-i~Pʤ + iRĵŤƝLJJ>Ɇȴy >i%Njjɋt)ɲ{LŜŊũc{ȂȹVcƈ?<GǶtȱȫnb Ɨƃƌư6NJ*fȎȝȔs?Ƕp8J7-\}}}}}}}hH1) Z,!8 ''4C^dv}}}}}okX?Q(/Y=4I]n!{}}.{o_M;)Ze w, FLFR!VWWMU,QKEL?941\00#36;,AFKkOQRGRPLRHC>:Z7J54\5h7:]>BF-JLNN(N:LfIESB>;w9&878:=@ACIFHJKKK]IGfDA><9;j:o:@;<>&ACEGHIqIH@GkEWC;AK?=?ACCEFrGGGFE?DB A?>===p>w?@#BCDEF2A0:8 ƒ_›/b/#t'"(*Bfp$ cf؍³1RѦQMB`ڰ磽*ʤ/ O8̦!ªiG$>cEZDȿB$ëH1ڋ޽wڀΆc>FlӺNͷHٚؤT ̒7ǝ̘Љ/h9a[ ¶<Ϻ%.lP5Á޽š:_Εxϐ~.V.xđƱȢ4Dͺ͎̆:Ɛ:W-wǮ GR"̀;s5;ěcÖ+0kǢȶɎDˑȼǰ ŝ|Ĭ%ŸƩǓa`{PGɇȷ>ƹjXŃsdž ɔm^)ǦE*xk}Eu}]ɺI`ƸƑƎƮBǨw .2șBǒJGNj*vȶȇE 0U{v}}}}}}qS3X0T27Rk}}}}} zGeM5" T2[&K;Pb]r|}}gxl)\FJ78'nw p ].=M[zg.omrq9kaUG::-#,j ()3?K[V^d gePaZPSF;2+ &$$;%4)/7@IQhX\Z^Z]Y=T"MAEd=M60,+f,x/]4:jA@HgNLS}VWV5TOJD>194'211'47BE{IGLNNGNL6JGC2@=:9z88B:jn@'BCiEFqGGGFEnDBjA@>B>=#>>?@;+̬3Y򟋾ݷH#FSyɓ 7 ͏+Xl9g=jFWG ͬ7{+e Y^7Qzi̺1%Y㨜ll7$܇ú<= " AY.ە\˟V^z/é+1vdƹq_ ͠=өԦb>ΌʬڿCKȅKZІѸP8Ix 8*foʕ5,gθɸǑŰ@b( ǬV˟jͨV̀?˴b?Ƶ'quX'̑˧ʂ?e,SĜśƶɝ%^D3Zgrǔg3Fş1ǚ`qʥʛT:ɄǑ/Cƭ8|ɕɘ#ɛȊƢơ{pJɔɽɥhɭCdžF"7lǷpVyɂpFɽmǨljǂǒǷ0xȾ-LVL/Fַ +Np}}}}}}y\=# g,F`8w}}}}}pZuC, P 6-+B VgYu}}}yuhXF5%e" 0V?NP\_gnqwpjaUH;[/o%R s(w2=nI)T]>cIfebb[rSI? 6.h(o%c%1(-42=FUNgUZp]][)WQIB:h4/,i,.16=C4JOTV[WV&SNgIC=8521258^=^BQGK?OQaRQOLH{D$@4< 965Z67{:=AREHKMNVNMJHDA}>;:,939(:;Q>ACFHJKKJdI]GDuB@>w<;i;;&=>@C(EFbH8IpIIHFDBAz?2>c==b=)>Z?@wBDEFpGGGFED:CA@s?>%8'^,W) l !w.[عbx( %ֈ@'&4AɮFKڹ)ښ '.ħ !{'Xֳ˙v6gȰ#VY#ܤՂ Scf֮`}2CǮ9aCXeaE'ձׯ՞YΘv켃lYeӎԂL ΊvÌj<οVUłȍ10`ѩ ѝυ<ȏ2[3ѿ9\Cţ k2Sŏ}¾p2ɱ"ͬͲ7J˅w1=IJÚò hȻV́H̴ɕmdƒ o( U˓˅/˚DǔƓ8ǿ}ʘʽ^7ɌUƤƒưmǎ"ɧTo_&Z[LjG+3`ǫ |XɱɼmɯRǨǣǺ.)sɬɫv3ȣc0 (VȐM~ɡɲԥzy%mH j}}}}}}}ye;G)W 6 !;Um}}}}}yzfP9t$dR!4H[kw}}{r9e UC3]$C*$1@WO\OghnaqpjaVI<0'  '&11*'%'+29SBJ,RX\]\YgTMFC?82/B--/3?9r?EKPTVVaU2RMzHB=8I5!32359>BGK%OSQ+RQOL*IE@=9766$8t:= ADHJM>N[NrMKIFB?9=3;991:;= @BEGIKKHK?JH}F#DA?=<;<< >?ACElGHKI_IHGlFDB.A?>===>?0ABBDEFrGGGGFsD;') nɿۃi~Vp%#kټӣǎʳhi  S8ާ޶.(]|rB{J-[ƨәC֮-[%dS^cĿKC}™Տ/ފ]ƀ\ꭇZؿJǞ)XڼGހ YʊĞQʴ6MC2 y?ؙFhȫ|;,w$ L7WRջ^Aγ ǚôqT< ˜ˍΞFke(p´#[RUǺ'A[bORƙKÃP³žĠm3;iZwzJs |OmƺcʁX̲2tAcŋrsxh/˺˱'mʕɴ&ǞO@op'ȭY8YDʄIɡȈ0 >ǛȦ:Aʛʽzʣ%ɩ;ǮǛǫ,ȏm(cʁ_%{t;*Xș<ɏ8G? ɰj$ȭȈvyȏȷ)iɦ/Ә pBd}}}}}}}nP2Hf0JWcx}}}}}q%]F0  aV ,/(E;N`qoz}}yobR"A0"bZi%3AO\;gn qoj>bKWJB>y2(w!h '//:,EOY`}ded|_XO~F=4-(&N'i*/6>FNIUZ\-]D[NWQKC<61.-.15i;AGMMQ(UVVTbQLG`BC=85373G46;:>&CGKO$QQQOMIEA=:8X7L7\8g:7=@D`GMJLMSNMGLJQGODOA>d<:2:\:W;=>?AfDFHJ\K~KJIGEyC@AI?=<^<<=>@B{DHFGHXIQIHGQFDBSA?>.>>M> ?!@yABcDEFF>t,͚>,կ T%&E(E W\ <T~mXퟒD_JZGţ&^E߬@[w"k8õٻ Ɔ˝׍٣9xթ+iɿǺViǁATzԉp9Ϭȳ7ཇd6JWQсQNєO͹ ȈdV_Ć$Ϳ;.##GƸĘpns1_̈FΊRΦ͙FNĖęjɫ˛ I͍̽˺ʞɁ~Ǫ5Ƣǔȏ~LE^1%aʋɷ^ǖ6ȩ[d˥˳ˎ9˿*ʊ_Ǥdžǔ,Ȧ/ɽAʱ29| ʓɶd/)Vȟd0ʃʿʙRɤMȞȑȞ@Ɏ'eʑʩʫʗp;ɸx?Bwɳ\ka\<^|}}}}}}vZ< rX&y?XSo}}}}}{iS=(w aOK.RATer{}}#xemX_NO>&/!>&4aBmP] gmpojb:X3L?'4<*" 3&b.F8BtMVb^gced aZSI@80+'n'i)-3=;:CKRWz[]m\YU'OgHvA:f5M1..0937\=VC7I{NR}UV5V&TPILZCGKNPQQPtM#J\FxB>;^9878U:@@CEGIJ|KTKJICG(EB@$?==<>=3>?OA,CEF HHeILIHGLFDCA4@1?>k>>f?o@@8#' ; I͏v& "R6Σd[%i͈B  K"x)κ2yҞyۄ50(*"qŝٝϨ ʬZרJóިMp ю٩ߡ,:L͈H+1װG}u ԧ"ޝSۄאǡwo)ĺ*+!͜>պإXԹЌ3|Ľe:[7H3/\ ʃͭ<"p'v\Hc4@ZQ8 ЛϦE͚m$FÖĘnX΁<Β͕]ʱyynvŏƄǢ˳0\5+.-@yƝƗVȹɕXZ̅s&̧Hʈ:DžxǠvɷ]m˲Z[Bq9(?{E>ʲV{~^"iɗ;ȳȿ'x2ʊ .5#ʾu&ɒY3"'Amɨ3vʱʵʁG ɪɋ{{Ɍɫ ʻ'5Wv}}}}}}}cF *|mD4KMely}}}}}4tw`Jb5![ "3FXh#u}}}^v'k\ M<-!'4BP\fmpo=kcgYMA6,$yg a%,;6@JuT_\bdefb5] VMD;3-) ((,117n?7GNTYA\\e[WRL*F?r9{41I/i/R149 ?DtJ`O7SUVUS?PKFAA=L9a64q457;?dCG~KNPQQ4PMJ0GoC?>@ACrEG@HIoIKIHG^FDOCA@?E=2Ɨ`rau# 7,vD3z$ޑ_D X Ϣ:֐f]Zśzd ;Ec &g6K>uͿm\L\No2G0J+҂I Z+Կm̲*n4͡gۇ݇ۤAϕ<|>6[˝}k1خF;+mRּݽݿ{ Ѓ.԰ԋә (ƣõ#ƚ:˪͵3%ҎTЗ=aCý†üY90̼'1 Γ?ɫUWĦĽ*ȝav:ΝΛ7{zL ȿU8ƨ_LZqy] t͓gJuˊʝ ȉBNwɴUʫ>oˌˑY"ʘQɹɨɫZʚ;Xd_J'ʑ^3yMܑ,/PLp}}}}}}}lP3;i;)AZo}}}}}}UlWB-  o. l'U9K]kw}}O|tiZKP;, /(]5ClP\Mfm2pokQdZhOC48..T&=!C| $+<4>EHQZT`defc,_XQ]H?70+?)(*/4;MCJqQVZ\S\#Z7VPJ:D=T831/i02U6;@"FuKPSUcVUISOKFA=96Z556C8e;3?VCsG2KENqPQQfPNNpKHvD@=R;989F:;<>ADGkJkLM"NMLJlHE#C@}><;;+ ANCEGmIJ]KlKJI=HfFkDwB@E?G>==j>p?@oB#DE>GeH&IuINIHGFB5 P§Q.Im#% H)?ӈr<ŲeA / (/OgtӚ`7mȭB܈N7M<_b!9f0Į[КۭFc?zq96 S݂Hк{!.ϱfƹ_4Yңצ&+5ҵ"\0WػtãjgYj7գΣʒKwa[Wԣ[)-ҖϠ̌ɛ aƥMώчYAѝϕV2+ ÉÓˋОХ'3N̞xDo ř|ƬɆ33( ϒ͹̅D6DZƂƨ ̄ t&Jɏȶǧ@ȓ_,˅5<ͯ(̆+ʎɴȇȊȻɎʷM?̬̦̉y)̿CD~E.:hɲʀ_˾7H<ˀ"hɽɳ(siˬ˝]ʑ[4/Qʁʻ8qˠ˩ˀOʺʕʁʬ٘ D)#Ji}}}}}}}uUZ >!# k, [6Ne)y}}}}}vadO:' U,W>8P`nx}}zrfXkI:, H\)5CP[eZlooke[(QE{:r0]("F 8$A*O2;EOWP^bdd`a[KT&LCw;K4.+)j*b-22f8u?FMSpXc[k\[XzT OHB<73G10{137ACFIK1MMM(MKIIGD=B?(>@*BYDzFaHIJkKOKJzIG"F>DiB@~?>?>^>>?TAB}D FjG~H-IHF :%2 gvaGjfI"'+% }pĆmk٥@вn  ֗ N, ˵˃Ty;^#C c}}}}}}}}cG,y*cRB+OCZo}}}}}}oj\H3!= Z2!1CPTcpy}}uypeVG9+ * 6BOB[dko2oke%]RG<2*$!V!$A)0a9BMLT \+ac,da]:J86g6579;>?CF^JdMOQYQPOLIFWCC@=;n:::;=V@CEHJLMMMsLJHJFCA?>=<==a?*A.CAE:GHCJKiK+KiJ8IGE*DsB@??>>?@A.C@E5!oɭ ɪU"H" s5ET {tA] N3 w3aCn붗B[ OyQÞk(5ҰD!EeJY)T-ͰE*ovզۺ2ܳ &ɔ׼]wTa:4тx9۴؄ԱϞʶYܽj1׾_|)װպ?φǎ俱.$UcҀpՊYFVƼ3T-¼í"{̪΄ѷ҄ҌRWTpƘğĶm˂ м*,zʒT[ǹxƛ;ʃ˿ͷNϒπq΍ͅn^kɧ 7ȅgXEHΊΌQÄ̸́5ʛ,uɜLˡ*͑ͺp}SPɱbUT̿GZLv ̜3ʎ_MX~ʼ i({̰̾o#˃< C˅S̷̮̗̈k5˿ˊ\<)'4Ov˥?ỉ̛̜̣̈jD̮ւ=\y}}}}}}}=lgQh6['Xh$ !8OeYx}}}}}ygT@-* &~6G!XfprQz}}wn c5UF68S+  *[6BAOZcjcnnlVfA^zTI?15,&""$(/I7W@I3RYK_bcb1_YRKK^C;950,]+,.38:?FLcR W2Z[V[TYU#QKE(@;63S2P236e:>CH[MQS`UUTaR8O_K'GB>; 9777{9 <r=\==>[@#BD FGbIJ4K^KK8JIGE+DB1A!@t??S:Q- J- B΃fw t E| ]HStA֭hay 8}Ԭh:hU0k9ڡ*aq׍󿅵 1F _ȕ~@~ͨ͐͢]ͻY˛LWˢM̠"HYT9 ̍E˿ˌhWXlː<{̵ &̯{F˶˯˶?n̛4C7Vs}}}}}}}.tUZ?9&S#N.EV[_o}}}}}}r=`L9'l 7I*7;K[`itz}{Hvm7aSHEn7+!#!T+6BNYcimynlfX_VK[A7/(x$"4$'-Z5=FO%WE]raicc`\UN1G?83.,L,-;16;SBHN)T%XZq[Z,XjTO=JD??}:6$42<347; @DIMLQS8UaUUT1R&OuKiGUC?C<9C87T898<6?BFqIeLNPPQPOMKHEB@=R==>?DACDFaHIJEKTKJJHnGEC<-ܥl͇M4J#"U@}У* |3ӬͿ#]$Y+ ! $ }0ۡʕ=ǔ-/RfߘӁ G3%/'2]sՅ&nN,FwƑ"&~0B ҇3uQwBɔκ#؂ۛQޟݜyy7˫ƣh2%M'ΎҜ$h٧րvΦfǕdl: qыշт͆6?áxTkʔ̤uO2ӏvFq̤ȣǦg4[O\Σϟ@|R΃,ʷ'ȯɾΥ )ω)XʲD#pɠjAv+6 ϯ*Έtp("bLˀͣaΉΊdζ=ͺ6̼Ue8̬|ͻo͵U˷˂d`s˝%xa͘ͻͪ~Eͽx;3k̨Qw͏͑͘}[0̜pM5*,;Ux̢&Idt2GQIn}}}}}}}{bH/*$: Qew}}}}}zkXE3" Z L /?O^kiuX{}ztnk_R-D6*P!"+6B^N1YQbi"m*n5l}gn`WMC9]1* &#$~',3;FDLT[_b(ca]X RJ~Cy'EWKPUXZ[Y WSMNIC>$:643"458<@E JNmQSU/U'TR*OKGC'@<:9m884:^<(?ZBEHKCNOPP PNVLIF DcA?\=D<;;<@=>@>CE H'JKMMM MKKJcHQF=DOB@h?>a>>i?@BCEJGH JJSKLK7JB2iߊGȻ*&'B"ighkV{c<(ʩUn7 ݴ9>wQ{Ptf\46H3-FU2ˈޠ4ExLFnp'n\,vjn߄:wܤ6Ъ|, %œ24-ޱA ^Ϛ( 0äǶ˷^h֢&bٰ7*O"YqѮUJւ\nQǣŁлұӉӲnyͭ ͕d3̪̣̩̺̾$P{ͣӄ<9v-Kh}}}}}}}}kQ7 Zp 0F!\ao}}}}}}tdQ>F-) X> $3CSamv{|ysi^PECA6*!W]*#-,6WBMvXa[hlm`l#ha=YOEI<3,'%$+'+1j9AJQX^ab964P4469=A-F{JXNQST UTRIOK.HgD@=S;99W9:y<?BFEpHUKMOPPNPOMJHUEBZ@w>)=<<@=>S@sBDG;IKLeMMuML^KIGECB@?>>K?!@WAB{D+FG7HA3fzffźz6["r&t#J HZ$OLލAdғ* 7{[ږӜ nڋuR}E߬ǺbT$x |W{ ̱}{\˺[ϭ֡GS2H’pmպtéZݱ޷u ۬מ/ϳ|$c-<M4]ؤ\פҳoK~8ġ.ưn4u>`v#7E/ƐJɔʆː̟͠΀0Ц~AmΉͧ$˟M4Sʨ*ˌQξLϳzq*͌̕K)0_˱!̤2Cδ BVHì ͡I (q0͘TΛΞ]κd̘viq̎̽@͌SΙΡΖ{Qͣg1*[͑)NfrqbI&ͤ{X>.)/A[|͑͢ߪ %(F%6.z)G&o%&*7047?FG1OJV\6`lbb`;]%XQ!K*D=7%30..048!>CIWO TWYZ>[BFJ|NQSTTT*ROILHEA>$<|:99:<>ADGJ3MOUPPPOMKEIF DA?'>?=<\=W>?ACFAH5JKLMM;MHLJ=IbGzEC B@?h?n??@A-;- H7{A0ե  Tվ]:܍ܘ1·Xɱڙ 'ێ߰@?4zeh:8E@m۰Nۉa6ΌƋO C?emӪncѿ\Ɨ½ƹչ<ٽuŃKӹܸ݁مҺβƾI(!9ɮ4L׉>Ot6Y5^Eh#ZlMԼΧ̦ȂǑ"8<ʬx&ИѸtӜ yrn@q&sͺЕhѨиϩΏ~̉0ʊ7 Κ?гжJг6kͬ́( C˧.z'U &όϏnx""sRLνbόϙφXϹTͅ)̧̙̉̄Vͮ aί57$΄:ͧh6@rͮ1oΥΜk5ͣ͂mfl~͜NzΟμΨΉd=ͷʹͻ͉""*@Q]*x}}}}}}}#{WcBJ18ly/W 2lG$\n}}}}}}xshVDf3#  ~N ,;JYfq^x||lxyqg#\YOUB5++"8#B,J62A3LV_fNkbmlid\TJvA8H1{+'2&&).5BFJNtQSTT TOROLXIEvBu?=J;_:O:;<>bAGD>GJLNOPPONLqJGpE C@D?>==F>u?ACET6&xŦЏq"G}{ ՟sSaW>b[VEY۵ J(xWvQ=fpr8cÜA"ݼ\ pJ͂]M[xǻ.FǡehZ'sשG^Ժֻ6(Œ%Ώ҅jݜݷؽfYhZ< aΉYԤD#6كը+̓%;-%ŶyκкXz֋Հ CPQk˽cru]Ȟ"ЉѮytӰҟW΁%W gH̀Ψϭ| RMoѩнϺγͻ3˽ʅʌŃ̡UФ :5ГZϠ2͖ˡ˨6̱Dͅϣ UwsJϗϘΒ#̐uz̠;ͥΌYϦϛRΛ:͐Q'4cͤCΗ+bχϚϘσ\(Υ`͹͎͛͑ͥ-hΥ8Sa`Q6δ΂T+ 7_Ίζ!5??5"΢΁dM>7=mL:HWnr}}}}}}}}kyS:#.H(M\\h*rx|{wpfq[N9B86+I#5$+,5l@+K\UT^evjll$j:ep^FVSM4D;3-n)?'B'g){-*3:AKIP,Wq\"` bb]`\2XiRLyE5?951100v1C4>8={BHVMRUX7ZbZ@YVS~OJ=FA=Q:76\6@7*9;\?1C)GKuNNQ`STTTzR(PEMJFbCl@=)<;:i;<>ACF]IKMOtPPCP2OMKBIFzDQB@%?Q>>b>>?@AB.D6F6H JKL{MMxMLKJDN̈\7ǍT|ʔLσXԆMԱҐ2TʉYɁʿVxq2Ұp  7̏An:ϊ шѼѻх!ѕ4w#͡F;͎̍+iiнНALBg/|Kο1ϙ5`oc>дZΛC;͙͊͒ͱ%qdϨϢd Λc59eΚJ}ϧϸϖl= γΐvhen΂ΠBiωϢϲϸϴϦϑtT2Bw#8To}}}}}}}};quY.A*hpz!Y5I]o}}}}}}yknZI8(  uu'>5CQR_!ksy{zvndhYM@@58+Q#W1%!-6@TK?U] eill+je,_aWNE_=5x/*a(') -128?<;x;;=>@CDFHlKM+O7PPfPO-N[L;JGECA$@"?>>P?a@ACyEhG@IJ5L$MMMI<)3@Wx"{((!KhNMFRԅ@ުY)*ug  VzvΘ_eDU%ny ˡd䯒oAǴȼs߭;--Hŝ(J؞å V8%hӈڂn߾p'htώč w ķ uЕPy٧ڒں2֓LƊĭ:b f;S _9Hdch͑ǦddɷFͨBѪӓԑ҄бPTʣv}̦%5]=6espm|̙ͫgs˺7̧́^2Ѕ,3Ҭ*ъi>̧̝̌RiϤ4бPka4ЁІχ͇ij͊{Z){зШje ϵm71bΣ>ώPtІЅsOϣ`!κΙ·΄Βέ>wϰ1GOJ8ϜmB *Oxϡ *-&ϣχ8E_&6TRm}}}}}}}},v,_UG005 ] H&.)BVlhEx}}}}}}r[cRA1|# A  _,+:xHXVbpmFuzh{|yttlbWK?4*#w! H& .>7=AbKU]xd]ik:l#je_yX4PGD?7T1,)(),a1A7>6E]LSXE]E`aGaO_[DWQKE?:6}3112B586=%BHGKLPTWjYZnYWUQzM)ID@T=:877 9;=AD8HKNfQ@SKT|TSgROPMJGDA?=<@\CEHJMNOPxPONM*KIFDB8A@^?0??Q@A CDFqHImF;*RHܯΤMΌ)huC$)&v"# 1~Z_E؄.FhA + ciο 5ŠiDR3QwG׾Q>D*;{*͸՜ZR-I'r ߀XP!L"'£`KkO2yKݡCޣ4#ץUfB%A6|Plِքcʅƽ1.asDԷչ<;׻p(\ͼb`ȘȀɂBaԽ ՙҹpͻ ˽ʨa :SW6Tӄs"ә 1N΅n/'V̷Cͳ~DЕ Vsb$ҿ:џPϱ%εg?>dͭΐϬ8и#tѧѸѩz0atϤW" )_Ϊh1Ћ0:. АAϚLΰΠΤλZϡ1pФОm5ϿψY5(FmϜ5bІТбеЮМЀ]5 ϼϜσrlp}ϓϯ>^xЋЖЙГІs^ЩҽZYH{40Pj}}}}}}}}zyd(M/6 w':vN+aq}}}}}}cysk[,K:+8 / $>1>L ZegoLv"zz7xrj`UJ>3*#SqD!]'.7AiKT]chpkkj-f`YQMI&A9;3H.+)N*,06lA!EHKN^Q"S#TUTSfRnPM+K9HQEBP@>P=<<=?@/CEHpJLLNONPxPP&OM LJGEDYB A-@??c@XAAa5b񺱾_ë<ι*ݐm۸#uŜ)]PÌ@-Ҹb$ۻ՝N3yĴȄG ѩ9mj,ύv˰Vx"U 4ɼʇxpOUO֞_(Јͼ˺IX͵qѦҦdIԋә҂Z2,l˧˩q&хoӑy+ӭHxЦ0΢<'{͌6Ϙ:2zҚҒbҠыh2EΖtoKѝѢWИ0n γν[ϭ_д=iтчyW&УZϕiK>BWzϪ `Н%;B;'Ю{Gϵϩϩϵ>kЗ йЖrP1%?]}НлI,mW3LNh}}}}}}}}}yiR;&qVm!3)GY8ky}}}}}}r#dBTD4&p7 vN;)5vCPw]kh!q#w%zzv qh_TH=b3*4$ ]R"Y(/o8AhKT\Mc'hjkjvf/aZRJB;5/},**,805:vA6HNTY]` ap``^[VtQK3F@<815313456U9C=AyF,KO]SaVrXvYdYEX2VQSOKGD@=5;9.99:r=u=>L?@CKEGILM4OPmP6^(3YIѲtƉjSٟy+?n-qꌀ /QraKJ+]Zx`s̳֓, %c_U?ٱ.ﻹʦX߶ Ҋ̣rCO۹hĠ$ZM>PӋ=WĖ _Ìɧaةڊܝ=;K-0˫ȨDŐĒDŗtȸ?tekٳؾϧͿ'>H)ʢW,PԒz պDҹ2͊̐ʑʗʠˏ̱AЇѱүs'ճCI9#'_qWzl(бuӇөP+sѰ;Ϡ$ͧͪ.Υ5zѰ/ҐҴg҅v|ΣΕΦzY;ѝ(IP=ф*kψ^IJ`ϊ ZЬGчѹѭ|@лz@ :oШLuѓѥѪѣяrL ЗpR<11;PlЏж.Nhzуу{jS6йСЎЂ~ЂЌНд$=Scqѽubx_1xLlf}}}}}}}}}Un!XA0,= bWd F-@Rmds}}}}}}Iyl\4M=/s"u5`3"-i:GT`jrw zUyuoVgx]RG<3*$ <I #3)i08BMK/T#\bgwjFkjfa[bTLD= 71-+z+,/49?1FLRW*\_``?_\X TNRIC>:Q753)457G;J?COHLPLTVX_Y YWUR1OnKGC@=;M:9@:w;e=?BF8IFLOAQRS TSRPNLpIF6DA'@>>=w>}?@BD9GsIKYMNOTPXPONMK-J:HmC:81'{ þc] G:~##0  'ԑVqω)ʖԯZގZ R #eGq¶YupNeݫqzS l(Tp!KѮ 2f+ۧY.xӍ0C[5a36ْ qy42Ѹ̖9VqrvIq]ڢ ޖޓv٣։W>m 8 ŖMVɽ\ ўbNڣ_ڋ8|tA`2{DȋJr˩̈́d+ז׼wՎӎχ:*f'˽˙̮9ЈӶUլոz=TK4:΅qνϩВj&ӻ"VV"6ӎOНό;LΣϪJВ'Ҧ Mke<ҏҒ ф УS :{9ЪѐMҐһҥo'uѹf ϿVПAѐ?[e^EѮm*вЃ`KENeЈж#]ѓ $ ѠrDлЭЫг$Muћѽѽџр`B' 8Soьѧԝ<\ 0Jbd{}}}}}}}}sx]GG1G $ vZ\&9Kx]mf{}}}}}}8sKeVF7"*%H7&1>KXAclsBxyxt;ne\kQF+<2*%[! -!$)0'9 BKS[bfik j+gb\U`NF?93/-3, -t/C348=1DJPUZ]_`_]ZoVQaLGB~=96154B569=)AEI#NQ UbWX=YXAWTRN KWGC@><:::$<>s@ECPFdIULN'QRSTSRQOLJGEBA?>>>?ABDFHJLZN|O,PbPP#OIx=Q+oFjނ)אAX2zbX ')_%\t;L۴ fɇ~z5jfXN u EUض˽Oߨݞ֪MZpy  I]m٭Xψ8`L aջaȯmG^AUbҵ׀~WaB za\vQƿ3|yͯlا.߳]8Yӑp͚5a5ſwǃ˓JPWX,o.ـׁO #ȒȱJRʶ`5ҥ:TCt]g/:̕GQ˲aRvκ XҌӖhA?iեԶӪґ}|ϝq21ĺI)Җ/ԛ԰U0xҵ>ПΐΉάdφ*h`ӱӘAUGUϴόσϗkGѺ'҉J0Ez@_<965n5j6i8G;>BGSKLORUWXYdXVTQUNJ>GC@b>@CF}ISLNQRSSSR`Q|OBMJXHECAw@? ?B?? ABZDXFhHkJELM]NcI=h,^ ƏIEՑu2%N(& Hw?Tύ/f-ޞ  c i  X{8v¨ڠǥTJG֯&yf>OעHG"Ӯջ1OTE39'k Uh ?Pʢ(ޥ"D عO!j[gyĬ˵i('ߤT@}*kjUXΜGxDƹş̉ѣءV\\ؑ֌kMPΐ#ʈkɈʭ΋SԊ־Q؂Pֻduк΢?̅35iЧԶ;}{5ֲ"%Pϥ+ p϶τ_; _*[(tҾqφE+9m6нRт ӂ?=ӄӠ"Ҧ2zA!5fЬh<ҡE|ӞӨӜ{Fӳ]Ҳg'Mю!iҬ3CC4ҺҁE ѡz^ONYpђѼ T҅ұ ҽҘoFѴѮѲѾ /SwҘҴҿҨҍqU:# OxrM,F_jw}}}}}}}}|3hRj=U) p u+ =O`or|}}}}}}ZtgXI$;-`"iWm*p##-9E,R]gouxLy1wrkcYOiE;2+ &"!"%*1F9AEJR-Z`ehzj jg8d_X RJCG=72/.-%/15:@@(FLQVZ]_7`_]ZV=R`MiHCG?;866S679=<;0zËx<ƻ'wӚfٷp|uk۩.{Է Ϛ̅Og@ Xўӽ՛4ڒي@^wѥΣ̙ʯcHwjҐ=9BDQnUz>&?Ε0=ͬV10D^og:K}s/ַJkӃҞ u @ϽZёK.I;լ5Ԩ l?_Yд$ѣ)ү.ӟBm{lCԭJoңPaѰ gfӥә]Ҁ8ѿєyntщѬSҔBlӊӛӞӓ}[1ҙg;6^Ҋҷ /K_ijbR:Ҵғu]KA>COb{җҶ(;HOOI=-һҧҗҋ҅҇ҙԀx*sD]t}}}}}}}}}}mXnCCIYO{TXY\^__^8\XTePKFcBf>;8776Q78.;;>AEI}MQTeVXXXW2VS#QNJsG]DA^?=7|*zvdӎp_׻/ 񗫓Ԓ`B9=9fTsx8ۿ׶<68ֱ)."Cܝ Űබ->ҷDޥ]_މG $:› E>Π޸`S_ۣm~ǣŁ#ĉħkǷiY^NX2y"(ގaܶڦPZ ȬȠY.1EM/"ڏڞ@|^cհX΢Ͱj0;yGү%׿ 5~սԔfD=^ϱ? bΗn^YR= յ2}֒s"֦KԀӱ0ђϙϜЕ&v"W+dyi7{sZkгбPѲ!җӁ>ԀԬԾԸԙem ӬRї}xшѪjһ]Ӧ5FD3Ӭm*ҪsE$ (JuҨPӃӰӛqDҤҌ|w{҈Ҟһ+RvӖӰӮӖz[< &A\vӍӠӯӸӼӺӳӨӘӆq\H5%ոZN)XB![^r}}}}}}}}}r,^\I,5"s @h1N/d@Qavp|}}}}}}u_= =e=[>?A.DFVIK?NJPQSSSLSTRP*O(MKHFDC=M3#-6>w< |4(a#`*|޺#ȕՀ<5Y2ׅȸNzϪ 9Eڬ,V jWÚ[q?ψՀR6z=7 _߿j ž!hʥ/ aZܼ1ՠ7#ˊȌ>ŭQmѰtnXޤSm)ל(ЋΜX@ɨɈqNNWLלٝډڸٔ.כFұE0͞d̄̽LѱZ|j؜pPngI#e΢Μ?ϣЅvjT)kֹU!dԝq{9!3lDx _Uզ՘FaRSѕZ<:Tш0Қ QԦ*(ԠRӝ@ҚY( !M҇gӴ=rԙ԰ԷԮԖq@ӊLҺҟҐҏқҴ4jӠ-McnncO2ӺӏgB$ 9Y}Ӣ "6BFC9(ӿӣӈq_RKJP[lӀӘӱ*12.% Ӣ MR'\@Xo}}}}}}}}}8wc#O;S(o o  )u9TJZiw}}}}}}{pcU H:Y.#=ZF# -77CNYck;rlv@xwto/iaXNE*<54-(%[$,%'9,28m@IH PGW]bfhih$fJbQ]W-QJMDi>H9'5520B0I136$;@LEJOTX[1^Y_d_X^L\_YUQ==>C@BMDF5IKMOQRSSgSR]QOM?o_އߪ.މ܊<7ЁΎZLɲ ̻ͩϺձFنbhۛwu`ϚΜ̟̩ ;ͷ>ѩrխַׄ J=Oׂf; ~I~S@91՛sו׃@>֎4vBЙЃЗ2ѰEғ;d,`q`.wvcsѮѤѶ(ҀY?ԩRՉթղգ~FԩMӓ>ҸҍvrҁҢYӧDԋ48,Է~?ӈW0*MyӫK|ԥԵԓkAӦӌ{ss}ӎӧ 2VwԓԩԹԼԮԛԄiL/2Ld{ԎԝԧԭԭԩԠԓԃtFyp_&>Vm}}}}}}}}}{hT@.$?Olo %7#2RCS,cq|}}}}}}vGkT^PBC6+!e&.0: F(Q[elrovww toehn`W^N3E<4k.)&Q%&(,!28?GO:V\aeNhCihf*c^.Y,SLF@;673111E369K>=ChHM[RV:Z\^@_^j][WKT5PKGC(@3=:99Y9:i<>AVEHSLORTVWbXX%WUxSP/NHKgHECC?A?>_>>Z?@ZBgDFIlKMOMQRXSS{SsQI<* o0lH m\]T&):)B$lCxFޢϻĕ٭ɋq : ۨ.ƹXE֥:ahLhuhWOxf١ɪ·uɲDzc~[4fQfj3ygkҊͥm|^[]F˒#ԏؠ$-lwkשЦ̻bǷĝ3}eʜͣн֎b2adn'٭!ԣTNͩwɖɻ˓q{ѕӥՒC٦ګGw;ܘۚO gԴѶώγ--ͯ|Ί'ҔP}w3٨ٷTٱֹՏgOVцτ\qDѳҪӠԉ[ גe.oզpm"5щч%sզ"քօ*ֻ<յ,Ԩ1yA%$?sҽӂe9Ց %)շnc Զn4 NӋjԶ;nՓթհէՐl=ԌNӺӛӉӄӋӞӼEzԮ 0L^ebU?!ԫԂ[8,JlԐԴ%3::3&ԪԐwcSHCDJVg{ԒԪ%'#-%2K(D!)73=HqSz]XfmsavwpvKsFng_@WFN`E<5D/*'E&&&)-?28?F3N-Uv[`dghhfc_ZUOH+C=X95T32 283~58KPTWXi[]^^(^n\YVRNJFC?'=7;:9D:;=@ CLFILPRUVW=XWVtUnSQ^NKH9FCAm@s??*??AB~DFH+KVMKOPOI<+V^.s`"B '"f'w(l%6>/y9,bKM 1 D vU'ձbNԧhIJ[ø.GߕbTlo\dfN`ж´DRӷ}+^#mM AC$GbJMPS?UVWXWVgUvS)QNKNIFDB#A$@??L@VABDFHGA6d'~<Ѭ@nSvy5a "x!WZ +wvΤ2YH:*[UOe0; / ,bĜ?7 K!::źO֓$psȻxAmv5pg7]]AIT٘ϼtE&ȉB"֜ݛ,kxU)LɊǟ'ɹʹ ϓ/(KiCߛoީ*_]?>Щi͋q5PαHҿvvٝx,܅ۼڳyװDҲѪQ^ϯУѷ3A.zg$NbmzԕҖ> YѼEҨp:ղN&YeI ا+יVմԔ#Җ҉ҲVHWQֹ FflW*֒0Wԅ,Ӫӈ{Ӄӡ`ԶmY֏ֵ־֟q8ծdԞnJ3,3HjԖCՁռC\jkaK-ժyIԾ԰ԬԱBkՕռ(12+ձՐpS9$ )>VqՍժ տթՔՁpcYSRU]hvՇՙլտմy"< "9P6g{}}}}}}}}}vAdFQ>,G+.R ! 0i?N]kiw}}}}}}}shF\OC27,#KAjz&/8CeMkW`hosEvvmurmf$_VjNE>60h,c)(R(<*-N28v>UEKLS8Y^bfgehgUeb]XHSMGB=96433473:=EBFK P7TWZ\D^^^\ZWeTPL!IEIB?d=;8;@;:87QĵՕ- c{ah*y\Ǚ2qe fH4|\Dntۉz=+L*ÃL|f| 'HYڶӘ 8jѺvU\jTB{(Kd6ͬĺXyw=ӳ܈߉ A}إC̞ʵYɋDx 8ц PS߱d۸[piλiw͟ΧXnXؒٓPQ۞ڴٞk(ԳӜҮp,'`yI9ՃL:j՞:g֌ֻֽ֧֩֋iB՟~dPDAFShՂա -Mh}֍֕֗֓ևwbI.ճդ՛՘ՙախս0FYiu}րypcSB0 7ؼ߮I$:Qg{}}}}}}}}}xg_TAP0 u{Q+:JXf@s}}}}}}}x0nbCVI=2%)]!bxl")2`NELRX^abeg/hgeb^YT2OIgD?r;#85~4C4569<@QEIFN{RCVsY[]f^U^k][VYeV SmOK!HDAT?y=K<;<<>@CEHKNdQSUVWWWVIU{S[QOLJGECnB?8b-k λVs' r p ch1 u */6.ۚ ȣu*ABmao҇d`~ \XѶ6ÆҪArxTlܸ֠Ř[>PyǬ˨кզ56s1ܡ؃ԏFuj*ijjY͒GvW߾N%uW<~?͔˘"4L%XӖ٠?Aߐޢb-`׎,К@I΢ϵe]5۾.ۀةtA7҈wҿӶԵկ֚l٥*$َbئFՋ^ҷҝҫ6ӫ7|%_O؟ءXׂzpԒ@^ԲՀ`+~׿ כVׯUը\ԻԽ#_գ8ց7_yׂׅrV.֌QղՋn\V[lՆթ4f֗ "161$֭ֆ^9%Efֈ֨ ֨֏u]H6(!+:L`v֍ֱָ֣֡֐ցsh`[Z\ais֚]5D`%;~Rh{}}}}}}}}}H{iW8E3#$5 pF'<6(ESbny}}}}}}|gsh\PD.9.F&:w%<-&6?IxS\dkqt=vvs/pj{d ]9U!M5E=971-*))+.Z38>.EK*RXb]aeggge/c_[VPyKFFvA;=9-754g569ժrJ3.9Uն?֊`יםk2ֻւM 'RցֳBi׈נ׮׳ׯע׍qP+ַ֕w^MC@EPc{ַ֗7Qgwׁׅ׃{n\G/ֹֻ֖֩֝֔֗֟֫%9KZelpojbWI:* JQ&<Sdh{}}}}}}}}}}lZHB7F'V _ $1V@N%]4ju}}}}}}}$x3ncMW`K?"5+#3#!{(v0m9BL V^~flqt vu4sNojcZ\TLE=7E2>.+r**,/38>D\KQtW\a`dfgvg!fc_`?\W|RJM/HcC?z;865568_;>nBFJNRKVGY[7] ^^S][YWTPYMIFC]Ag?>I=0==>}@BEGnJ.MO,R6TUVWW_WV0URLjA1] 1s*Tәn;GЉp%%((%F< ZB,̓D\\ +.a m  d |#Y =\+6cM]f[Cy$*7-?˨*֋ۏpHXKyJ0&Yb;.βRJXl/Cx|'>w `H˧ixн~ۮ&9%ߺH_q֔Z2ϟiΏ <ұ>Xeݠݏ7ݛژ[լԡҞfjѪ ҖӄԅՎ֔׋k)ڿ(`g>g >jזvӝi^zӼԞ4Շ5wjٻvٟؒ~֒7ԶԿg/֠׃KؘؚPץI֙L յգգճ;~^צ Mn؁؆}gF׮r6֚uZJEK\w֚$Wׇ׵(0.$׵׎gAֺֻ @aׂס׽׼פ׋qYC0!(8J_u׋ס׵׷קחׇxj`WשY۱82/u,O++9-!0$49>DJPV[:`cfBgWgLf4d-a]]X!TO#JaE AM=J:86678:=#ADHMPTWPZC\~]]]\ [X#VSOL[IVFCcA?u>==>?cAtCEeH KM+PlRZTUVWVOnD4!4 tETf/ӔΥ\I D$)2+)#pԡř? Wh\7ږ zOm  R .9D,?E X]F49ah>U(ˢ^麯Mıbޘ'|#"ޞ8ΟǫS"M4yҋ SB:sۓط҄bΫp˹ʋʼͶβ6Ռۺ?d nMߘZۂٟy'j \ppiٽ}nڵ}A(ӊ#Jk7ٕ&یۥSAڎ/kֶՙ;7ԏՎ*xض>ٱ Eb`@ڰHNBQՠhIBT~ռ j@׮{Orف{c8ظhغd֍]<,+;Yօֻ@׈U،عؘi4׋X* 2]׋׻@cؓ؟أ؞ؑ|bB ײגu]K@Th{}}}}}}}}}}r`xOk>p.&  H ;)7!ESu`l>w}}}}}}}w~ncXVMAB7.'!'P!K'g.6l?HQYZ9bi|nort_uUtqmeh$b2[SnL9E>83/^-8,n,-0459>aD]JIPUZ__b^ef!g`fdag^IZUPLdG C6?<98T778c:<@CQG9KORVX[\]];] \?ZW=UAROKHFCA?>>>^?@=BDDF IKNxPlR.ޟWӋё(΅MKiՏקٜ[߿##ި#| gӗ҇ѽB<ЮfZҀ)֏8_ZݧݾJݠڿ١؂orՔU5ӨCշ֡׆_#OۭۆەEٌvi ԶԾ.Ր֐$׼Rc-oڕڠڐf%j؁ؒ$q2 8vy?؝?|٪ٱىT~0כZ#Hׁ׾?~ط4IROB* س؂Oמׁla^fu׍׬!Lu؛ؾت؊jI*(C_{ؔجؿؽثؗ؂mYF6)'3BRdw؉ؚتظؾسا_2p*?Thv{}}}}}}}}}}utcRA1#Et u{zY%2}@=N[hsA|}}}}}}{gsi^SHM>4:,[%D $ *L1w93B"KS/\ci orttsplgaZSgLmE>79m40M.$-I-.D14Z9}>DIOUZ}^ bdHff_fdbZ_[?WRMdIE)A=3;W9O8881:Q< ?@BEICMPFTCWY[\]u]\][xY WoTQ{NvKHECA`@?2?m?,@fA CE=GHF.@5'E;۫ôAlj`S$D:F xb,rvGҫ ҧ}t.ҵʲ9*%[l8KUψǖ7"4p~ًmm8.(-ګoϭʓCnwÕLt]ߖ4P*y̓˰zǶΦs[?܌-vt-؈[bҰU]ͩ͛΢ЋM) ٜ&ty-GިYjr,Үuт`&/]֖۳Bݜݽݧ[7mۉڕٚأ׺2բ:WUռքOtoۼۉ+۴(ڏMر!ס7ձ՘՝վKֱ&פ(ت(ٛRڏڶڿڡn*x٪C׉<ֲֹ־ D׋.؄&m٩ٗ^ؙX׹זtuׁי׻K؂غ Lpًٝ٦٥ٚنkJ#أ{U53Qrؕع8N]gjg^P=& ػء؋wi^YY^hu؇؛ر 1=FKLIB8+ غداآؠءئحط(2:?BB?:FM߀eb+@DU&io{}}}}}}}}}}vfU6Ee5&l:m". CPINET;Y]4acefSf'ec<`\X\TO^KG#C?<:k98#9*:;B> AbDGKO~RUJXzZ\]i]]2\ZXeVSPMK`HECB@@?(@@?@;3'8 N-?LAcփѤ6Ϡ\~ 5WݤH;ꢿ縺-o2vk-ڈQ4/B/_~?mY<Qݰ7ˢ[Hɵ}yԁkV?gb( Ҋ_ͰˋɄʘ$T`yߓ<65:(>ԜA8Ј6BϪhpѸ1v!ټ6܃ݘj3&5_W(ډ5պ=ҥҴ~.,3$ۥ(|ݠݓWbܵ@eؕ/֦@(}}.qe۷ۇ+ۻ;ڲ%ؚٙ0֚sep֓tLؿ1ٝUڛڬp(}"t&׭ׅmemׅת\ؤ8}ٽ!BV^YG*٠g-ؾ،b?&)Ab؉صCpٙٽ٪ىd?ؾبؘ؏؍ؑ؛ث4Spً٢ٵٻ٬ٙكlU>(*>Rfyًٚ٦ٰٶٸٸٴ٭٣ٗي{l^PC90*&&(,4=HTan{ؤٞ٦٭ٱٵ ۔ C-}AUsiq{}}}}}}}}}}yIiXH8L* c=( `&+7D R^Mjt}}}}}}}{sPj3`U"K@7S/n(## #(R/6>4GOWS_fkor+ttrok|f`!ZaSL F?:62!0..0L259;>_CH/NpSTX\X`3c)e,f;fZeca]ZVQRMI"EA>F<:99N:;=)@CcFIPMPSV#Y [`\]:]\[ ZXU&ScPMJFHECkB@=r5* v*@q8 ܠ{b( ^jB ^'l"G=ݬxCĖ^/WMI cUG_!̸ֶlЂւ5fEC.8gћƮ?ë\jΧҋj ފ"_o MQ7 ]THdtb\^e3 HթI3q>н;ԹMyFiQXqC$B4ڀ?OoTrLڥi ݂ݠ<ݵUۋڻ%nKէՋՓտ u֋-}ڴ9ۨ7TS6ۯKZPWבK>|'،c0ډ=V]Q3ڄ5ٌ9آe48g؟"h٬*^ډکڽڴڛxNٳ}Jصؤ؝؟ثؿ$O{٨=Uenoh[G.٬ًlP8&"3G_zٗٴ)6>A?8.ٺ٦ٓكvmgfhnwكْ٣ٵ "(,,*$ٻٲ٫٧٥٦٩ٮٵپ'/._BvVim{}}}}}}}}}}f{k[K,<- m B 9'3k@VMYejpy}}}}}}}wqoe[QQG=4H-'"d!%?+1/9)AeIQiY`f+l%prssr&okfL`ZrSLF@Q;6n3 1//0259 >B(HlMRbW[q_hbdef~e da^y[W~SFOK+GCr@=<:Z::;.=Z?AD9HKNRUWYu[\]]`\8[YWԜua 0^zd+\¸ŚˠϘӪװۅv,0۝؀՝@ˈʃ ̕zϰ԰H2V+O{5pYvsbWf֠@ЎQ]ҥձVٓ [tO37pߺޜa|G0BՃӨӑӴԙP+!(6A@)ܝnޒވQl ?kڕ]^H֩%׶W٭Uڅeܮܲnܧ-۩!ښ٣;פyfjׅ׵KثـXڼ`ۜ۸ۉM۶b ڷfث؅nel؀آFىXڗ 8EF;&ڰ}G٩|V7"(@^ك٬1[ڂڥڿڥڇgE"ًّٰٝيِٛ٫,Hc|ڑڣڰڸڼڻڵڬڞڍzeP:&'9L^oڌڗڠڥڧڦڢڜړډ}pbUH=3*$  $)1:EP\itڕ$ G/0CVib{}}}}}}}}}}}n^O?1$ | L-$/ACFI!MOPPS ViXUZ[\\\\Z!YWTP\G:]+FbvH۝0lϔbe :&%''$7Nf Gx(UB8ʴrȀJ \ F j VVgHڍ ܞMy݈xLݩ:ܼ4ۨژٰU NؠiIڸ FfrkS)ۭ^ ۲Zڶp5!Tُ_ڥ&\ۉ۫ۼۤۃY)ڽچP٫ٕومٌٛٳ Lzڧ;SckleXD+ ڨچeH/  -D^zڗڴ%1897/$گڛڈxkaZXY^grڀڑڢڵ #"ڹڮڦڟڛڙڙڜڡڨڱڻڟ(Hc /B0CfWjK{}}}}}}}}}}}cqaXRC4U' Fl j +7DzPx\gq.z}}}}}}}kxgplg]S)J@180H*j%!" 4"b%)/H6=TE+MT\b`hmuprusr8@BXEPHiKNQZTVYZ[\\\>[kV]M@m04 #޳|%U+ i 4'+,&*y%I 07?L^;&WҭDr=A } k / LX#کѷɏl}رq{\E*r?#5HY-ɷLrN2ՑQ>v(SJڿ֝f{JhN˳̉ν7՟\lgYk :ߏa;.MըK@ѐL=<<=0>?ApD2G!J"MPRUWY+[ZUL!@f0* uʅZA> بX$`)^+*'  [?¶ N囂XQB t*($7 i `  *Jٸ:Z5%}7Dv7:6;4ޘمϑ(‹îz˕ϠߴL-v:a١ֳ&>˄o͜ϼԨFa޲|Um[A%C@/!)Wֺ_OҒ,e^wڼLݽ)uP y?G֟,} ֟בؒٙڞۘ~Iy ߘ&ߕ,bܓNٯ*{WTt׳؃ ٣Dڍ)ܹ8ݣ/MP9f܅܆یڸe%W٠Uں"ۈEܔ 0CE7ܵr)ۉ:ڧj6 -[ڑ Mێ7a܂ܚܦܨܠ܎sP'ۖe5 ڪڙڐڏڗڧڽ!Irۛ!6ENPK@0ۨۊlQ9%  !3H`yۓ۬ "۽۪ۘۇxlb[XWZaiuۂۑۡ۱  ۽۲۩ۡۛۗەۀ#6I\Xn}}}}}}}}}}}}1sadEUbF481+9 [R Y q'n2>JUaakt'|}}}}}}}awof]\TKB92],'1$]""U#&)/*5;%CJQ Y_qeajEnqrrqolh+d^,YMSsMGB=96w4&32e34=7N:=BF4KOITtX0\a_acd>edca_\iYU?RNKGDB@|>=/=o=A>?mAC+FHKNyQSRM(E89w*wCg~ٍ6ާtŋ# f#&!&# \C2z+S6b&'o  UV%8ąTOqɰϿ۶90sl|u@tae!ƮYSO&iҺֆ=z#[lo}ٯρ΃s[άVJv!xܶ*a<l#{־ԽӚ|ҫ#N׷.ڦhޛߤyy1 ܥۄt}اu B֨4׫؇nY@ݓ$ߕߗ/߬jݶHۛmؚZ73L؂5٬0ھPndOpzlHkݘ'ܵGڃ3٧ٝ٥ٿ#iڸiqܾ8a}݉݇wZ0:ۮl/ڬڕڊڊږڬ$Xۏ7iܖܼܸܕnDۜy\D2(%*5F]yۘۺ$Ec}ܒܢܭܱܲܫܠܑ}fM3ۺ۪۝ەۑےۭۗ۠۽'5--ܺZ\'9rL^Ap}}}}}}}}}}}}teV H"::-!1d   o%/7;FsR]hpqpy}}}}}}}Tz7k0*&-$"J#%(^,17>ELTZa~fknq]rxroqQo7lBhci^X-SMHBv>:7R543(457:&>BcFJQOSWt[^Ca7cwdddcVb5`]Z?WS7PLmIeFCA?>=={>? ABCEGHF@7W,aIj֝%.cѢ̮軮ɨagT:,  =AZ+Â(P! $6޳T›6@#Fr{>JxJ׷ʼr׻z2ĔtͩXx=# &gR KSP!qe9Y"ȇzͳ ^ڥ3X1;w_OuZԋZKҫsdm|g% wB۹N Ղ(<ԥH>vٺ%&?pٶua[AݤB/FxJNS WZ]`bcdddb`n^[X9UQnN*KHdEC+A?>>>?@}?E;$4h*rߴF0kێ9ƙ>NT)[q& X֍5ȫBKϮŷ۽*ӫ>b3;\ӗɥZAGͦd/Rd BEJDNbROVY ]_awcRdddbZa7_\YV`SPLIGDBA?G>92(!q;@%.UIHfcm•w *oE'SҞɻB2Ůͱf|I׽ kQz Kmߡ^z`"̿cBoT$ҭFo\Dt(݄61ӍZΧbkҤY&ܫ94vJ)I ^0[ԚӮe#'it"ێ1ߵ8&?dEHutN dڦٞؿאG4V֫.תؕٔڟܴ۬ݯޕ` !+ Z+qߩ =|3ڳQ Fٟڔ)lݰFEߧ#<: ߨOrw~ ܤJڨڙڞڷe۹xBݢMޒ޲y8ݤV |? ۲۬۲6lܦ!^ݘ'G_mrm_I,ݳ݄U'ܯܑzi`_er܅ܞܼ'Mrݖݶ ݸݝ݀dH.)@Wo݅ݛݯݼݬݜ݋zjZL@6/*)*-3HS9^gpEx}}}}}}}{unf^UMfE=7#1a,(&%&'*.U38 ?E+LRY^Bdhwl/opq7qomjfYb]vXDSN.IDu@<:766c6p749;>AEIMQU%YW\_JabcOdd:ca_]ZWTQNKH FKA9h/".>1IJƨŝsqlm'De#lm1w$G7R-0аT³tWu M#&ԷŇ!'řȰ(ժg'!43,!oכԪ&͡˴\ʖ^˩jΐӽ՘؃f+ "!8c:7hԙӪc&0z֙Tݍ"7&?svQWܧkNYؐ֗lwֶ'׉miuۉܛݥޝ~A[K>)U݆}ٟ_ACf٦wږ8܇*N-{A߁ ߑޏݚ.ۀC9n۳_&݌Nޤ1c߆ߚߞߓyRޝR޷j!ܣrK0 &:Y܁ܱ#`ݞL|ޤުއ^2ݦyP, (Ilݒݸ#A\qށދޏގވ|kW?% ݶݝ݆scWPMOU_l}ݑݦݽ*;IT[__]VNB4%ݺݰݨݣݡݢݥݫݲݼ'27.$ )18>CGJR޽W c7"3VEVg_w}}}}}}}}}}}}tw$jq\NA 5)  z'1R;EPZdmu |}}}}}}}x7rjbZgRDJBq;*5/+(&&['])y,05;*AGMYTlZ ` ePil:opFqpmo(mj`fbn]XwS{NI9E6A=:876789;>A|EGI,MQTUX[K^`Rb{c ddfc=b`{^\IYZVPS0O H=N1"w[4 z̃ψ-ǤO˾ڼx jxy!W$ %#* w ֦ÐKu1`.su5 dUqh]XRռpɟ͏Ұ 'Byf%0.;9_8778:*<>A8EHL]P TWZ{]_abcccb(aL_\WtO D6%bڮ.Dԃ36]ʬr| l&)+*&!Eqڪ0Ŵuq/2?*\h Wg e |6&>4!%;H6DSҸ'v :soGU ܝ{э%PɅȒ={@|&eڧ,.L&UOڦ؟kRҘ>FѬk{c$ߦR 0R)KLZٹ0׿և֊7ץؕ٢@XY> OfPp %Gwܺۏ(ٿٿ#ڂڋ+܊?ޙ56 W~xca܌9۸۶'o#݊b3ߒ/iQ߆6ޑAݱtB/Z݌CބADgHLO=SVY\_arb[ccca\TH7:)YܗvKf4#b a, &b+--D+& GL7ѷ}ݬ`;5X:PQ h  KrvrܮWϙɗr?ٹʺZ$Oѵ,܎}yz2hb,'א_Ы͂ȨI:͙SQ}ؾ"+'i0d,+0OMҥѦҹҿ ՓK$߿p@NfWiuڮٺkjסzsڄۥ!1rt/Ok߉ް-܎ ۦb??`ڠrۘ@ݡOߑ>nb-ߊ ޘ2ܔaA6?[܉k2ޜl%t&,# z6ߝMްh&ݽݘrpzݐݰ @{޺7t߬ /K^hh`O6ߚk< ޷ޒrYF947@Odޞ /Uxߘߵ߱ߗ|`D)޻޶޴޷޾'>Tjߒߣ߱߼߽߳ߧߙߊziYI;." $/;HVdq~ߋߖߠߨ߮߳ߵ߶ߵ߲߭ߧߠߗߎ߅|riaZTOLJIJLPU[bj02WK Ni+"ADGgKNjRUX[:^F`a_ZSRG$9/)X/ԏ=E*gl6K&1m#(+n,+'"y nҿP )ۦt~<1W \D{/ݝ֊2- ߼~DD#@v۠E0BH*ISV?~0" ʌʙ&%υ3#:H9ui:D Ozj/z!7ӹҴӪә6؈V+߷V { ShQcߘC قuٻٓڅۋܝݳaz4l+o2ܹ\U۩ܕ%bߪF\-vD$39SݗOD݄$ހBߢV"Om}t[6Im'ުvK*$Bgޔ5oߩCme@ߖmF#1Qsߕ߷.CS_fif_SC1߹ߠ߉tbSG?::=CMZj{ߎߢ߷ +38:95/&߻߮ߤߛߔߏߌߌߍߑߗߟߨ߲߾#&(('# i"12BTSecr}}}}}}}}}}}}}_xk@_RFW:/%Ix7"*j3 94/,*)*R+-04,9K>CIKOTmZ|_ dg4kmNopp;omKkZhd`\dXSORK`GC@">%<::9:;`=?)BEIHKOhRUXYWRjJ?2#B5{A נ?˅~¨,^ϝ6 q":&'&$< [ 1&C0B#է Ŭâ˗ӥ۔/D2D cW:Wr侱_)!ưɺ!ր7waWP7/__:ܼتҞd͋9lJ ԤSޟ9%GZIjql܌b,?՞LJԔ'RؿJ܍.9zQb7uc caܱݧޟߐvJ+h~?Yߨo܆67܃T]Q~:#Ho ߯]ݻݤݜݥݼSޚ;ߑ;O}tG]ߟg4޵ެެ޵*V߅߷M{f@ߴߘ߀m_WTW_l}ߒ߫=YsmXB, 2CUetwk^RE:/%$,6@KV`kt}}voha[UPLHF( Z&6&G]Wgu}}}}}}}}}}}}}xkZ_RF ;0 'xTD!)2C;DZNW`4ipUw|}}}}}}} yksm7f_W\PNIB<;::5;B<=?YB#E.HcKMMKgEJ=2&' ˸İc՛NыTӏN`vBTk7jD % $ ;[۔b w5?X:$9H#O+k0s\ס`ίʥQž %̐pԂب) ݠqUӛLoχjЮH+HבbGBvn Lv[y&M4ٔؗ_'3ր uG߮KqsJjH UmpdP7@TBB@U<5-" ,VƁ禍 uה-gj'yƹCo$ A-gUlػP㵙tkqrR3DB* u9`?+uM<˽$/(ȷ[Kш׍$߫ -w*h4v%c{3߹߈aD3-1@Z|ߦ H8n !.2-! Y,\>$ 6Qo=\wlT:  2EVer|yocVH9* !-9EPZbjosvwvtpke^WOF>6/(!"'.5#94N1.!-},,.+036:?DIOOTZY^fb3fhikmnMonm4ligc<`d\fX]TcPLHEB@>F={޺փˊʳtɮI-lߝ!eKtUPKCcEտӈpӭ<6֒ڠ}\2Wi=$41]ߧlQZێقG?gپAڷ۞ܛݧ޻at4j?s[\ܧܤܽ?ݢޠ3m dg6JR o6؟wՠԎPX֜ٵsDY6\Ii= wV߻ސ݅ܠW`ڔaG@GUbicKf)U[>#,h Noݝ\6,=iݭu}EqyFiYy#YS6),?_ߍ XZ [%V|g> ZXzfZW^mNDniF!qV>+"1D[t8Oct~qbQ=) )7DOW^ceec_YRI>3($.7?FLQTWXXVTPLGA;5.("  &,27=CHMQTWY[[[ZYeP )8HRWfs}}}}}}}}}}}}}}vk `yT4Iz>4+#kq [&-5=FVOW1`gnuTz}}}}}}}k{vqke_wXQKE@;6n30/F.V.C/136n:>BCHM RV[_cgilmnn>n$mtk;ifvc`w\XTv2yF:f1d3L_komdUA' wQ, 4Rp mXE2"-=N_p}qg^VPKHFFHKPV]fox~~b%8aZ.=LZGiv}}}}}}}}}}}}}}vkP`TI`?5,% %,/4O9%630/ /d/0~2 5b8+}ٗuهDڱ۝ܥLuR/yY 4)"*28>BEFGFDA=82,&  "(-38<@D>ui #K2AO}^dl^y}}}}}}}}}}}}}}vk`UJK@6-T&Bd$GY%+2:BOKS[gcjpv5{}}}}}}}z2v-qke_@YSLI &_sQgٲ/گۦܻ^GnQ&=^-ߡ2ݰݝݪ|~p$/Z@f46+,Nf80Xu6bi>U^ZJ-];k0~Cx X7RgtzyqbM2xO&paXUV]iz>^|{dN8$&7I[m{nbWMD<61.-.038?GOYcmwytpljhhhiknrv{r6)B8FrUcp}}}}}}}}}}}}}}}Uuj_TJ@6$.&~ /6'%+29:4B\JRvZb%io9uy}}}}}}}{wrmh b\UO5JD?;742Z1001m358d-e 9fiC|W6/Ki5J[isy{ytk^O>*tg]UQOQU\eq~ ,5rLZZh@u}}}}}}}}}}}}}}}ti^TI?6e.('!G=%c+?29kAaI\Q/Y`g)nsx|}}}}}}|xtoZjd^XR1MGBL>e:&7421~11$34v7y:=AEAJNSbW[X_behj7l8mmlibYN]A2a"Wh^֋{rșհo!'&,./c/3-)i$\_.fއķMƺ# 5|ܷn?'G b > $ FZ]v`K,%Y:̀y![b)߅֜wӳPNҫalZ*'Ev߰ )ig.L\xL߁QLwg0.aW 8n2>0DaM6MhWO޷ޗޔޯ4ߛ=;1M(wQ1@@Hm{H$9c+9VO097)RBz? {y@rDv0DQXXRE3sL&qaUNLOWcs +Hd~p[F2 %5FVfuxmaVLB91*%!!$)/6>FOXbkt}{uojea]ZXWWWXZ]`V`j o'Y5CQ_l3y}}}}}}}}}}}}}}}sh ^SmI?6.'! J4 I%7+19@YH)PWC_?fllrdw{}}}}}}}4z6vqlgra[U4PJEA<{96|43\2d2!346*9A#(+--j,)]%[ ^dSÅG")ZrȽ~úU+| ( K  $ u#C;I3 /ݙ_ԖN͖x#]e˯ͧz-޿u\k#ybYc-2v@v#߶܂ڐ֓ՔӣӱןV63AVfgN>.Jt[p5RBGwxݤۇB.KۗܮqSO]yr M>;d6odd߲\PwTYR2Mc"y6"Z6:5,SnqX6 j,m0jH."7RsO/RqmQ3hJ.(@Yt ,9CJNNKE=2$ylaYSOMNRW_hs!!    d_T`-:HV1dp|}}}}}}}}}}}}}}{ rgn]/S@I?73/J({"y_x X% +u1h8?PGNV]d%kpu:z}}}}}}}K{wgsn{i do^X3SMHC?;8_64}33g3_45$8:=|AKEMIoMQUYn]`)b`P]GWOD9+l8Ь™ө-HSP7sХ1ZgH/"!&N( )_(V&#I x=;sݾ1׳=1$uT©o̓KNBQK~ u;8q5ޒگ/!В͋/<=Ѹ)ۑdBn :FYtTW7K۝4BՎիּQ۔_9ps9j:\X3H9gܤ܄ܐ!ݣEZ xdl Ni/;p[^x@7NM u%%?/b5?~}&d<"j%U}sM!NyK"(LtChhJ,ulfdflu%GFM"UT\/cibotxh|}}}}}}<|x upkf#a[,VPKF~B>8;u8U644345i79tFELSZahms{w*{}}}}}}}zvcrmhci^YSNIZEIA=:E8x6N544568:;>3ADGHHXE@:&3>*> a N,Gڲ0wIⵆNߝE oHv E_vPϺƇFP!rˁu+gb'V+m$ez~SՆъ`РDGҡI6[٭ޣ.$xY &M"Hm1KL۸]qy /ENRSXe>:߭ߔߙ߼TJ7dpjvGJ<1@w&~}SUA<~%#{@u,Y}X:&)>[~9n?n #$ rM'sV<' /D\v 9QgytcQ=),:FQZbhlnomjf`XPG=3( "+3;BHNSVY[\\[YWTPKFA<61,'""'+05:?CHLPSVY[\]^^^][ZXUSv ,uN #/.=JWdp|}}}}}}}}}}}}}}}xpoe[eR IX@580c*$ @!-_ h!%*i06Y=LDcKzRnY `ofAl}qvy|}}}}}}{w tok1fa[VQL=HDP@=_:B865556M8G:\<=(<950h)!qw*aKܨҤf.ݥ¦Ш'pjLs;$` N31G}qO 5nKe^ ] d7ʦǷpÉū ЛcV`miADO< eC\&3OyKcփՕV*~ڼ 3NS:' PS,xnLPߔ"ݯkWrܹ+݁]R\u {or\F" R2s0,R$JKaB?jFAvu&gLD&g+56.Vn3d<7Z.Z,@P[aa\SE3oQ3'?Vn~n^OB5*!&/9DP]jwzslgb_\ZZ[\_bglqw~rua(55LBeOC\hct}}}}}}}}}}}}}}}}xn/e[AR0I@8u1!+%n!.  &U!%*06 wEyJ|vuz&Kq)Gc{nX@& taPA6.)')-5?KZk}(6BLSX[\ZVPH?4( '-26899863/*$  !&*-/1333320.+)%"  "%),/14689:;< <9t8|6,3.("V(;)ڏёOpKдrþʣ}hDTO{ BAsuPt *cs~:mCcռ>w MzG.! $1@Pbu $.67&1}+&" Bu #' ,16Ԑaӌe; :PC /)O4I~Z >(8޽pScݠޗK *Ny (nVU\qTg2bzhce'+]A5[B65AY{\?-x=rj; c+]2 5Z$Lq!$"vZ=!}upopu}0EYk|yk]O@2% #.9EOZdmv~|vohaZSLE?:51.,*)*+,/26;?EJPV\bhnsx|~{xuqnjgdb_]\[ZZZZ[]^`cehkoruy| ;]p -*>6BNZfq+|}}}}}}}}}}}}}}}}yp+hX_V%N Fr>v721+#'w# Bx!$'(w,^16a7Q1,'$q! Da ["$%(,16r2Ȼ+О,/ nV1$'* ,b,+)&%#" [- 5͗ؼy)6 տVXˑЛbZw5D  ]<V-ٸ֞ғѩ(^}."Rٱ6.f)H0Dg@ ,YKDseV <ݳ_AVܞݻ݈zߋFS8:Ux;_LsV woFSFdH>LG03i KRO#v$~,W +.'Vi+xBnb\\dq-X 6_ #''! uV7zhYME@?AFOZhy&;Pct|o`QA2# #/:EOYaiouy|}~}{xtojc]UNF?70)# $)/6=<<<=>@ADFIYB *6zBgN'Zegpz}}}}}}}}}}}}}}}}}pvne)]TLE=b71d,($'"  !! #%")--16P< BGMSY_dinr/v(y{}}}}}<|DzwtohN`U(J#=#/g 0V0ԞƝљdỸօcZ |ǭ<  `W!& +,.00}0.d,(Q$]E )e\u3Ŧۼ޹_5T3ǻ#֕uTm /  5Ysm}֟ԿG9Ж_ϑ( q-؎CL E!X\G.ݨX>Xܥ"ݠޘ߯(~BJp:N=91YsK<2l5CJ}|:S Rt %^ S0+Is*vw)&q'TwjG~CKsH#/Qw%R~:VmoZC) uW; 0F]t  wj]RIA:521136;AIQ[ep{}}}~s%0w A@b(mtCT +Ix(iJ\ޡܨܾ|T]`ROHZ7Zr7beE?R~%pz$auN4?9!z'a}%NP Elnh:r  {Ki-}G}eTIEGO]q;851/,)'%$"%4 J!,+8CEOZe.p z}}}}}}}}}}}}}}}}}zrjbrZRJC=6z1,(%o#"r!!"$;'y*P.2{7<BGeMSX.^dcIhlpttwz{}}|\yslcXL?S1t"!ЮgSɋ׆><`JC#±p^3&$]){-v0M2321.+&r!$Lnڏӂ ?(ѻCgey4eĶiiҠ^Md 7  C  t ]8rJ~ܽN8)7ѫЄпYNҗ-fdTt(DI9,NuEZ %qݛ{ݍ;ޑssE/pMV:86TlGPYcmx|wsoligfffghkmqtx}#h (?(4R?JU`ku}}}}}}}}}}}}}}}}}}exph`XQIBY<}6J1,)%&$"G""#%&(W+/^38=cBGkMRyX]bg(l/psv6yyx uoh_FUI_Kz!tP{l>pXO:i6Gx0v S*l>c{_>_,d7 zlb_`fq)Lq>Yr|hR;# m\NB81,*+.3;DP]l|#0;DLRVXYXUQKD;2("'+.123320.*'"  "%')*+,,,,+*(&$" EbX?@%0;HFoQc\fqz}}}}}}}}}}}}}}}}}}7vnf^=WOHA;(601,c)&$###$& )/,/ 48=BHjMR3Xi]ib gk_oqr{pmg`lXNC7+,ZZ͓6ɜ𑚎%&&Μl̻rد,e:C E~R$'_*+,#,*(%!dR g,x^'EXx8ßuŽ( ä_ڋ7ebb$ B g "zy(k,t)$i հԔO5׋:|$7,[h<5ZDvYv]*_[*^ YA:b) :m!b'f?i_9a4 pR8"$8Pi"A`|lWB-'6FUdrukaWMD;3,& "(.4;CJRZaipw~|wsnjfb^[XVTSRQRRSUWY\_cfjnrvz~!!;,7BMWzblBv}}}}}}}}}}}}}}}}}}{!tldI]UNG>AI;5'1-)''R%B$#i$%n'),049=BHcMRW]a~eZgjgecbt]WROdFm<1& $byc|S^/喼FЮýg ׻WQ;j_!$%&'D&$m"j Uhedz<AͧƦ žìǮ4+P_J"Ln` 4:anh؍NXש>!fy:\YC & K~0t\69%DwbC0- k%gq#\bV&]Ls_>`1amET l{.]"}gZTVar&X5n>jc>\:9To-=KU^cffd_XNC6'|m`UKC=86569>DKT^iu    w(3=HzS^:hq{}}}}}}}}}}}}}}}}}}wy'rj5c[TMF@:5.1O-#*'%%$G%u&K(*-H1?59>>"C/HTMmRV-Y4ZYW@T{OzI[B=:D1'Z<Ӽ-nЧC 13$ZuYv;l \Y. [ !* "6tޖژ!6X.DŽVȝRkϣҪRq v]QwC ai%4QGhB8۱h^ڐڠw}ݭxW v5 "~D=l?UG-JP IDICmsNy*t]\~M"EwHV~@C :bmL#G=<<<<<=>?ACEGJLORUWZ]_bdfhjlmhmL M%V/9D%OYcmv}}}}}}}}}}}}}}}}}}}wNphagZVSLF@:5F1-*@(&%%&O' )+{.15:>=C=GIGKTKJGDc?9/3+#hW ~۬Ŷ.zQ{ʮٱF ^*p% n5_ uy /I+!vNW)?B^-ͳ͝ςoӢصځkhnrjLLFq{YYcLznps Gݓ݇ݬބ2HL$Fw%9*;V 'R9:mY\wH.K88{Jt/"Ibx1v%mF)*DiJ,|mI%Ki~hL*vB h4|W7'A^7]!9N_mw}zshZJ7# w^G1 '8J\nwmd\UNIEB@@@BEHMSY`hpx:RmG!+5d@JJUw_Jirj{}}}}}}}}}}}}}}}}}}|unfg:`*YKRKyE?\:5o1-+(W'&i&&"()G,(/266n9;<<;y9w62-u(g"k a? 0̇ľmϸ͵jȶ|Ѻ*aKݖ } SdT l &nL4&ޝ^mՊԛQl/w^,/$bf.3<oZ Zoz&# B_rxmOjOc 6|*b$v?FU+@ra>;J^fW&~ >d}{a< HJ3}&?lM6)$(5IfNHAy.Ni}yeL/rGvQ/!=Zw &?WlraO;(}skd`^]_bgmu(3>>=<:752.+'#  !$'*-024689:;<<<<;:9876431/.,+)(&%$$##"""##$%&'(*+-/0246P\f?1  b)k3=HHR`\*fo_x}}}}}}}}}}}}}}}}}}}ysle^5WP7J9!551-?+@)'A'@'' )*9- // 0C/-A+#(Y$  R]X.*ԙφުHNʮ\Jh٩W  O=k #5Xv+>ݤN=s׶آqyڶ"ݷoC.'),*wmbAg^&5q32{)|ZJ2:a~K$}QtEn,td,K_-rvDd-*o 2;9-r7n%Gx:xW<)"0E_%V!R&Fby{gO5tR1|maWROPSZco~(?VmqbSD6)$.9DOZepz{tmg`[UPLHEB@?>>?ACEHLPUY^cinsy~}zxvtsrqqqqqrstvxz|~\ +'0;-ERORYcllNu}}}}}}}}}}}}}}}}}}}}vwpib\mUOH)C=941.+)(((((,(&$2"9co 8J)dM|,#/5m4Dӑڱk1O9i]Ob\wS/3ed7Fܑێ6Hߝ?bn{A?O,6Xc\F%dQLXw_|3%c%6@^'^4"&99&;tqdg"z7Bam'1U-42'X#s5}B zR0 &Cd)S~?_{v^D) kS>* )9K^q +5=DHKLKIE@91({uqnlllnquz      37 9 %.r8mBlLQV_Vi>rz}}}}}}}}}}}}}}}}}}}{u]ng`@ZSMG:B+=8410.+?*(E'$!fb! 2|ܶ׹' eAȠƂ8o1Xͬך>7P)uqkd L = %%Tt+L==[SwR:ܨQ6U۬89HaTKP#QW6TkE:ltyy4G {&WOEswNz>F?68Q4xQ6'%.Cb=)3<*o@ay|eH%h0~Bc2m^UQSZfw*QyBg"/9?A@;3'|aF+tjb]ZZ\`gpz"4EVet{pdXL@5)  $-5>FNU]cinswz}~~|zwsokfa\WRMHC>:62/,)'&%$%%&(*,/258<@DHLPTX\`cfiknpqrstttssrqonljhfda_][YXVUSRRQQPPQQRSTUWXZ\^`bdfhjlnpqstvwxyyzz{{{{zzzyxxwvvutssrqqpppppppppqqrstw #V,5?I`S\Gf2ow}}}}}}}}}}}}}}}}}}}}>yr0le_XSRXLFmA<@8l4%1$.*s&! J =$bNڿK9ÛfȐ *zDQ.5L~ > r  7 @ ] ~a B_z?ۼBh=ݨ8tdUA#VALM;&*>Rfz '+...+'!wmd\UNJFCBBCEHLRX^fnvEaCCa !#*3&=F|PY@c)lt|}}}}}}}}}}}}}}}}}}}}wp&jcJ] WP;KE@$<7q2,G&s@ QV#ܙՇġܹյܴ칷N 8iB- > G/U&  G 0&ݛ۽*BեtքS A#lV(I8ypfB<,4w8JhGHj%rZMKNTZ^[P9DT Ccm`>^sTe \ nLVJS@uYB&ZQ0>B<,_!OjDX* -UDxAo$=Q`krtqj_Q>)xV4zaK7% )9K^s';Oaq}pcUF8) '09AIPV[_cfghhgfc`\XSNHB<5/)#   %*.37;?CFILNPQRSSSSRQONLJGEB@=;8631/-+*(''&&&&''()+-.02479;=@BDFIJLNPQRSTUUVVVVVUUTSSRQPONMLKJJIHHGGGGGGGo A)(51:"DMWA`%iqy}}}}}}}}}}}}}}}}}}}} {tn@ha[UO@JDP>C7/j' y%fQ YjJk,j=a\: h !_R%fy:Yc"  L-DԴҮѳлԨuy٬ބkW?M(A#K9l*q1kQEuuO$ =c1GOG-]X >S$yC}-o kNms`_nDhUV^cY5? $//$Y330FU) 0XV>vAk uS0 tO, qbWNIHINV`n~5Nh !)/3441,&~n_PC6+   "+4?JU`lw}wrmieb`^]\\]^`beimquzK@3z.h'0P9B LRUj^:gow}}}}}}}}}}}}}}}}}}}}}2xrke_Y SKC:<1U'ߺ̩ Y`AFȟ2v+NPɑwphL &!B!"#o$L$#V" Kv/ kJ#];SSKכJZΨ̐̚c$+oؓ`JHPY\P.5> S`0C#\/FPQQT`zMp9*Eg^82,% "%(+-/0122210.-*(&#    "$&()+,-./000000//.-,+*)('&%$#"!ez+K&*&. 8"V%')*#+*'*(&I$L! i c 2պ̞ʪ$ ]1˧tΏґgiێo9O@M s  ]CyuO"W`eߎQBa߭#il d5{2yL] V[ Ix/T cM< :|-%Q(]_Rk3T=s @$7aA)"5Oq1m0t=~-`)7?B?6)X/U+sV<&"5Jb{ &C_z &+--*% vdR@/ #/9630/.-./0359=AEJOUZ`fkqv{|yvsqnljihgfeeffghiklnpruwz|d*" $L%-6?HQZvcks3{}}}}}}}}}}}}}}}}}}}}}xq}iY`JVqK?3'-{ܙѳ6ޝLȗlϡݧ78{?6:% "&*,.000/e.h,)&3#3!, Kx'8ݑٿNEϩ~ȅǷ^wFa;۝*'~0&: S d e;6Nr@# <{p,0|ީފޛGߝ8 V."N=)APY^citlGOPYaiqAy}}}}}}}}}}}}}}}}}}}}}wndYNA4'` zZٗ́01"]% $Kv0&§OܸL $6),/?2344=43(1.+"("$ 7#X&S[Cȣ{Ēxŏ ̝fnԪۘ53F3K L | % ) q\\& /xXV}D=f޾B \2;SZ3lq}O !AnTIT-4^F,@ud P x0x p.7s 5_/{*c0AoZ'n<}-_".562(jAe9 oN/6Pk7Rl p^K9& &2>JU`is{yrkc\TLE=6/)#  "',17=====>?@ACDFHJMOQTVY[^`bdfhjlmnopqrrrrrrJ@v9iHW}[B2*+4E]}7r4xFC{.Ni~{fN1wM!tK#kWG:1,*+08CQbu )Fc'8GT_hnrsrpkd[QE7)|l]OB6+" $,5?JUamy{xvtsrrstvy{Bg|s< %"+f3;D.MU^2fnmui|}}}}}}}}}}}}}}}}}}}sh ]PhC5 ( 5]ցv!f;օm~befaO! ^_$n)-}1t465899z847K52/#,(#M K(bV" [7a\õƗdž]4HԎڍ2Jt!5#H&  2 5 H4:Xb)E##ߕ0@nq~w@OSxn3FSZ`fo}Xl4A{y*fG{ kSf/WF~K'x)d18f F KK"NumK&\2oN/&?Ys.E\qzkZI8'~||}%/8AHOV[`cfhiihgda^YTOIC=60)" "'+/36:=?BCEFGHHGGFEDB@><9742/-*(%#!!#%')+-/24689;=?&a B|"#+Z3;;DLU\]_emot\{}}}}}}}}}}}}}}}}}|trOg\[NA4F&^z D/եbQYȍP󅲃pmb@zвX5P'"',j03678^9986Y41T.*g&!r L\jܯ?k&T őĉĽƄpʮ68ؕߠ=wz   68  G }>V Qw3ߚߒ߸",x?*W$ sp KU N#8Uy*_1>O@S|Htga  r5SD!aTp0w[H<7:EVn9n]U3b(8CJKHA5%~Z5qK'r]K<0'!"(1=K[m)C\t !)/2431-(  }n_PB6)  '0:DOYdny}wrmhc_[XUSQPPOPPRSUX[^beimrvz aR#-+F3;C:LT\d(lnsMz}}}}}}}}}}}}}}}}yokdX L/?1`$3 㴋"I}T.ȉo)êTHʗd$RoNm~nod$ +KiytQ V5@@5 q1OJ94M d:0T} Bz'a* ?OA̪ͷ9ޘ~fSU8Wdɘ&Yg= 8y!E&{*. 1a35!66\6554L2/,)%!` p6p ژqӨA>̢mɠ85ȔPgˎ͓]'bAB  | j e3kmYICJb:a)+h],F &PdM"gEw-vMzAy[wlRHMb?^FCMWZM(6~;P\^UD)p1Wbh|3t?}sor{Gt=rCt"FfgL/oN.s`PB6-'#"#&,4>JWgw.BVi{vi\OB6*  #+4ADHKORVY]`cfiloqsuwxzz{|||{{zyxwvtsqpnljhgecb`_^\[ZZYYYXXYYZZ[\]g}  iS#8+3 ;C4K:S[bBjbq#x}}}}}}}}}}}}}xpf%\)QE9-&!Lm;ْΆ(v7됑)mBa'%rȮyJ0n_ -;"@&) -/{1233L3W20.r,)O&"{ :rI߄EYҊЭ/QA=ϲ֡N *=GD,.s w  t S x p >k!ZJRG/9g1zvtPAEWw;p 1I?bncCi[ VZ!mn0qO;6>Ux)y3zh\L1dZ.Laloi[D&k.a5XTpS;)$3G_{:h%U/Ux kO2iO6 .@Sfy !)17;?@A@>:60)"|tle`ZVSPONNOQTW[`ejqw~xC g#9+2:BJRYZaIiVpw}}}}}}}}}}}x2qh_VK@5X*# ۠8pWdg=Iz,2H7RЉ 16  _/b!%A(*,./ 0/n/`.,*(%"/zd 0&G)flھ`Tӝ<2"b z((pnrE4D*g s 7 I ( R Ur; J!~mgl>p<)6b1pimzs'X86orK\QVO^C42CGJMPRSUUVUUTRQOLIGC@=962.+'#   !$&),.1368:<>?ABCDEFFGGGFFEEDCBA@?><;:9765432100//G P>  #:+2:SB%JQYaQhJouO{}}}}}}}zeuLoWh`-X%OE;\1&1W j:Ռo0xL͜ӡDEɭò%-ʟ/qc "%')*+++*)V(p&+$!y m zaRVv%܄^؁ԭӸҵѥa&,o֙w~ܪVOgqE~ p b  }x-\Qw#n3)l;cjYOHB=4'eTL8bysV)Itw\/`20s$zXA66@UtG.=\v&w OAEHMQV[`fkqw|~|{yxwvvvvvvwxy{|~jiJ J$(,39;BJ:RYagmruwxxwurnid]VN{F=4^+!2o&"u.\ GqТŢd|uط ǢbB3)? I; n"4$%r&&&&%$A#n!J.C$l EJ$c9:krNhdGnՉ{ծֲڕ: 9s9say$n %&_ J"y4AECuFZ1 rB 1ec%nNT~ ~qmy9>pUD<>I]y4rJ;5$n7q$C[mz|qaM3{MU"a6 hQ>/#(4CUj +Jj8Qh}q`N;({nbXOG@;754569=CIQYblv $+17;?BDEFEDB@<84/)#     br A >o%-k4;uCKnRY^{c-gikAlkjheaq]5XTRKD|=5-K%C +ۤ))ȭ¾`mޯ쭘߫5:ɮ۰iiӹ'ʰϹZ@ I$ !!!H! cGQMa Y : nG12PB2VCZِف٪ ڜaSqݷ PtR! !h}$SmumW5 s@h;e g(%SZHpf J=Xfg[Cs'xDd~ *T7QkVICFPb{QKc3u+a/J_p|{o_K3h?j@dF, 2H`y0Iby  {k[K<- !+5>HQZcksz}xrmga\VPKE@;73/+(%#! !"$'),/26:=AEIMQTX\_behknprtuvwxxyyxxwvutsqonljhfdb`^\ZYWUTSRQPOONNNNNOOPQRSTUVXY[\^_acdfgijkmnopqrssttuuuuuuuuutts{L\&p g &-15LIF6C,?:50 +E%J( \#'O-Ǫİ& b$R8CʻԇއR!W` n V7C ^oLv   s+L. !dA8Fh0LqYObd $RJw NGeaD<-j[Z^_W>mZ9KTTL<$}E9TjERq^QHFHP\m#Lw0_Dn6Mar{n^L8" iL0lZI:-"  %0BEHJLMNOOONMLJHFC@=:740-)%"  !#&(*,.0245689::;;;<<;;;:9987654320/.-,+*)('&&%$$$######$$$%&&'()**+,-./0234556789::;<<===lI3. !',U1i58;'>?AAAA?O>6<96M3/+/'" S/&T=c1ϻ̭ʯ 02͗Ϧa۩ޤ'!tT] j l\w7(\gK / 0eHL 4|nG%g)5UuxA3"} Q~BGCX-"<4uc\apQ7NO~:3{/]wQ(\"l.v;e6 mYJ?968=FSdw"Ei#Hl $=RfwxiYG5! t_J6#,:GUbo|{tle_XRMHC?;864211123469n#ތ'pݟrjz1P .kkPmoV!_'_zy\$jU&Lfw~~ztlfcdl{#n04|: I1HQ{ n)x)Ok}vaC{9RK7(}-TzQ/ <\3e=tI{,Qs |aD'hH) q]K;-!  '3@N]m);M^n}xmaVK@5+! $+28?EKQV[`eilpruvxyyzyywvtrpmjgd`]YURNJFC?<8520-+)'%$#"!!!!!"#$%')*,/1368:=@BEGILNPRTVXY[\]^_```aaa```_^]]\[ZYWVUTSQPONMLKJIIHGGGFFFFFFFGGHHIIJKLMNOPQRSTUVVWXYZ[\\]^^__```aaaaaaaaaaaa````___^^^]]]]]\\\\\\\\\\\\\\]]]]^^^__``aaabH ] M QRL|yEQz, = 8oDybUpX]!=cJK1H\mx{vfJ"PrM*4-pPX> k%=pW]'JBxD@Xy7C-rMuxV0vA c*Of@/Lk1Rs 8NbtxjZI8&ziXH9+&0;GR^jv~yuqmjgeca`__``acegilorvy}=Ny&=3We]@qohK{ A{R yvNmhoC8mRC8*Vh>w &(#xG]Ju/f(N!n`WRRV^jzAg 3]&Jm$4BLTZ]][VOE:- v^F.~m\M@3)   )2GOW]cgknopppnlie`[UOIB:3+#  !#%&'((((('&%$"      !!!"""###$$$$%%%%%%&&&&&&&&&''''''''''''''''((((((((())))))*****+++++,,,,-----..../////0000011111122222223333333444444445555555666666677777788888999999:::::;;;;;<<<<<<======>>>>>>???????@@@@@@AAAAAAABBBBBBCCCCCCDDDDDDEEEEEEFFFFFFGGGGGGHHHHHHIIIIIIJJJJJJKKKKKKLLLLLLMMMMMMMNNNNNNOOOOOOPPPPPPQQQQQQRRRRRRSSSSSSTTTTTTTUUUUUUVVVVVVWWWWWWXXXXXXYYYYYYZZZZZZZ[[[[[[\\\\\\]]]]]]^^^^^^______```````aaaaaabbbbbbccccccddddddeeeeeefffffffgggggghhhhhhiiiiiijjjjjjjkkkkkkllllllmmmmmmnnnnnnoooooooppppppqqqqqqrrrrrrsssssssttttttuuuuuuvvvvvvwwwwwwxxxxxxxyyyyyyzzzzzz{{{{{{{||||||}}}}}}~~~~~~  !!!!!!!""""""#######$$$$$$$%%%%%%%&&&&&&&'''''''((((((()))))))******+++++++,,,,,,,-------.......///////000000011111112222222333333344444445555556666666777777788888889999999:::::::;;;;;;;<<<<<<<=======>>>>>>>???????@@@@@@@AAAAAAABBBBBBBCCCCCCCDDDDDDDEEEEEEEFFFFFFFGGGGGGGHHHHHHHIIIIIIIJJJJJJJKKKKKKKLLLLLLLMMMMMMMNNNNNNNOOOOOOOPPPPPPPQQQQQQQRRRRRRRSSSSSSSTTTTTTTUUUUUUUVVVVVVVWWWWWWWWXXXXXXXYYYYYYYZZZZZZZ[[[[[[[\\\\\\\]]]]]]]^^^^^^^_______````````aaaaaaabbbbbbbcccccccdddddddeeeeeeefffffffggggggghhhhhhhhiiiiiiijjjjjjjkkkkkkklllllllmmmmmmmnnnnnnnoooooooopppppppqqqqqqqrrrrrrrsssssssttttttttuuuuuuuvvvvvvvwwwwwwwxxxxxxxyyyyyyyyzzzzzzz{{{{{{{|||||||}}}}}}}}~~~~~~~  !!!!!!!!""""""""########$$$$$$$$%%%%%%%%&&&&&&&&''''''''(((((((())))))))********++++++++,,,,,,,,--------......../////////000000001111111122222222333333334444444455555555666666667777777778888888899999999::::::::;;;;;;;;<<<<<<<<========>>>>>>>>>????????@@@@@@@@AAAAAAAABBBBBBBBCCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFFGGGGGGGGHHHHHHHHHIIIIIIIIJJJJJJJJKKKKKKKKKLLLLLLLLMMMMMMMMNNNNNNNNOOOOOOOOOPPPPPPPPQQQQQQQQRRRRRRRRSSSSSSSSSTTTTTTTTUUUUUUUUVVVVVVVVVWWWWWWWWXXXXXXXXYYYYYYYYYZZZZZZZZ[[[[[[[[\\\\\\\\\]]]]]]]]^^^^^^^^_________````````aaaaaaaaabbbbbbbbccccccccdddddddddeeeeeeeeffffffffggggggggghhhhhhhhiiiiiiiiijjjjjjjjkkkkkkkkkllllllllmmmmmmmmnnnnnnnnnoooooooopppppppppqqqqqqqqrrrrrrrrrsssssssstttttttttuuuuuuuuvvvvvvvvvwwwwwwwwxxxxxxxxxyyyyyyyyzzzzzzzzz{{{{{{{{|||||||||}}}}}}}}~~~~~~~~~  !!!!!!!!!""""""""""##########$$$$$$$$$%%%%%%%%%%&&&&&&&&&&''''''''''((((((((())))))))))**********++++++++++,,,,,,,,,----------..........//////////00000000011111111112222222222333333333344444444445555555556666666666777777777788888888889999999999::::::::::;;;;;;;;;<<<<<<<<<<==========>>>>>>>>>>??????????@@@@@@@@@@AAAAAAAAAABBBBBBBBBBCCCCCCCCCCDDDDDDDDDDEEEEEEEEEEFFFFFFFFFFGGGGGGGGGGHHHHHHHHHHIIIIIIIIIIJJJJJJJJJJKKKKKKKKKKLLLLLLLLLLMMMMMMMMMMNNNNNNNNNNOOOOOOOOOOPPPPPPPPPPQQQQQQQQQQRRRRRRRRRRSSSSSSSSSSTTTTTTTTTTUUUUUUUUUUVVVVVVVVVVWWWWWWWWWWXXXXXXXXXXYYYYYYYYYYZZZZZZZZZZZ[[[[[[[[[[\\\\\\\\\\]]]]]]]]]]^^^^^^^^^^__________```````````aaaaaaaaaabbbbbbbbbbccccccccccddddddddddeeeeeeeeeeeffffffffffgggggggggghhhhhhhhhhiiiiiiiiiiijjjjjjjjjjkkkkkkkkkkllllllllllmmmmmmmmmmmnnnnnnnnnnoooooooooopppppppppppqqqqqqqqqqrrrrrrrrrrsssssssssssttttttttttuuuuuuuuuuvvvvvvvvvvvwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyzzzzzzzzzz{{{{{{{{{{{||||||||||}}}}}}}}}}}~~~~~~~~~~  !!!!!!!!!!!!""""""""""""############$$$$$$$$$$$$%%%%%%%%%%%%&&&&&&&&&&&&&''''''''''''(((((((((((())))))))))))*************++++++++++++,,,,,,,,,,,,-------------............////////////0000000000000111111111111222222222222333333333333344444444444455555555555566666666666667777777777778888888888888999999999999:::::::::::::;;;;;;;;;;;;<<<<<<<<<<<<<============>>>>>>>>>>>>>????????????@@@@@@@@@@@@@AAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCDDDDDDDDDDDDEEEEEEEEEEEEEFFFFFFFFFFFFGGGGGGGGGGGGGHHHHHHHHHHHHHIIIIIIIIIIIIJJJJJJJJJJJJJKKKKKKKKKKKKKLLLLLLLLLLLLMMMMMMMMMMMMMNNNNNNNNNNNNNOOOOOOOOOOOOOPPPPPPPPPPPPQQQQQQQQQQQQQRRRRRRRRRRRRRSSSSSSSSSSSSSTTTTTTTTTTTTTUUUUUUUUUUUUVVVVVVVVVVVVVWWWWWWWWWWWWWXXXXXXXXXXXXXYYYYYYYYYYYYYZZZZZZZZZZZZZ[[[[[[[[[[[[[\\\\\\\\\\\\\]]]]]]]]]]]]^^^^^^^^^^^^^_____________`````````````aaaaaaaaaaaaabbbbbbbbbbbbbbcccccccccccccdddddddddddddeeeeeeeeeeeeefffffffffffffggggggggggggghhhhhhhhhhhhhiiiiiiiiiiiiijjjjjjjjjjjjjkkkkkkkkkkkkklllllllllllllmmmmmmmmmmmmmmnnnnnnnnnnnnnooooooooooooopppppppppppppqqqqqqqqqqqqqrrrrrrrrrrrrrsssssssssssssstttttttttttttuuuuuuuuuuuuuvvvvvvvvvvvvvvwwwwwwwwwwwwwxxxxxxxxxxxxxyyyyyyyyyyyyyyzzzzzzzzzzzzz{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~  !!!!!!!!!!!!!!!!"""""""""""""""""################$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&''''''''''''''''((((((((((((((((())))))))))))))))*****************+++++++++++++++++,,,,,,,,,,,,,,,,-----------------.................////////////////0000000000000000011111111111111111222222222222222233333333333333333444444444444444445555555555555555566666666666666666777777777777777778888888888888888899999999999999999::::::::::::::::;;;;;;;;;;;;;;;;;<<<<<<<<<<<<<<<<<=================>>>>>>>>>>>>>>>>>>?????????????????@@@@@@@@@@@@@@@@@AAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTUUUUUUUUUUUUVVVVVVVVVVVVWWWWWWWWWWWWXXXXXXXXXXXXXYYYYYYYYYYYYZZZZZZZZZZZZ[[[[[[[[[[[[\\\\\\\\\\\\]]]]]]]]]]]]]^^^^^^^^^^^^____________`````````````aaaaaaaaaaaabbbbbbbbbbbbcccccccccccccddddddddddddeeeeeeeeeeeefffffffffffffgggggggggggghhhhhhhhhhhhhiiiiiiiiiiiijjjjjjjjjjjjjkkkkkkkkkkkklllllllllllllmmmmmmmmmmmmnnnnnnnnnnnnnoooooooooooopppppppppppppqqqqqqqqqqqqqrrrrrrrrrrrrssssssssssssstttttttttttttuuuuuuuuuuuuvvvvvvvvvvvvvwwwwwwwwwwwwwxxxxxxxxxxxxyyyyyyyyyyyyyzzzzzzzzzzzzz{{{{{{{{{{{{{||||||||||||}}}}}}}}}}}}}~~~~~~~~~~~~~  !!!!!!!!!!!!!!!!"""""""""""""""""################$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&''''''''''''''''((((((((((((((((()))))))))))))))))*****************+++++++++++++++++,,,,,,,,,,,,,,,,,-----------------................/////////////////0000000000000000011111111111111111122222222222222222333333333333333334444444444444444455555555555555555666666666666666667777777777777777778888888888888888899999999999999999::::::::::::::::::;;;;;;;;;;;;;;;;;<<<<<<<<<<<<<<<<<==================>>>>>>>>>>>>>>>>>??????????????????@@@@@@@@@@@@@@@@@@AAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZ[[[[[[[[[[[[[[[[[[[\\\\\\\\\\\\\\\\\\\]]]]]]]]]]]]]]]]]]^^^^^^^^^^^^^^^^^^^__________________```````````````````aaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbcccccccccccccccccccddddddddddddddddddeeeeeeeeeeeeeeeeeeefffffffffffffffffffggggggggggggggggggghhhhhhhhhhhhhhhhhhhiiiiiiiiiiiiiiiiiiijjjjjjjjjjjjjjjjjjjkkkkkkkkkkkkkkkkkkkklllllllllllllllllllmmmmmmmmmmmmmmmmmmmnnnnnnnnnnnnnnnnnnnoooooooooooooooooooopppppppppppppppppppqqqqqqqqqqqqqqqqqqqrrrrrrrrrrrrrrrrrrrrsssssssssssssssssssttttttttttttttttttttuuuuuuuuuuuuuuuuuuuvvvvvvvvvvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzzzzzzzzzz{{{{{{{{{{{{{{{{{{{{||||||||||||||||||||}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""""""""""""""""""""###############################$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&''''''''''''''''''''''''''''''''((((((((((((((((((((((((((((((((())))))))))))))))))))))))))))))))*********************************++++++++++++++++++++++++++++++++,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------------------------------................................./////////////////////////////////000000000000000000000000000000000011111111111111111111111111111111122222222222222222222222222222222233333333333333333333333333333333334444444444444444444444444444444444555555555555555555555555555555555566666666666666666666666666666666667777777777777777777777777777777777888888888888888888888888888888888889999999999999999999999999999999999:::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<===================================>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>???????????????????????????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^_________________________________________`````````````````````````````````````````aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbccccccccccccccccccccccccccccccccccccccccccddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeffffffffffffffffffffffffffffffffffffffffffgggggggggggggggggggggggggggggggggggggggggghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkklllllllllllllllllllllllllllllllllllllllllllmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnooooooooooooooooooooooooooooooooooooooooooooppppppppppppppppppppppppppppppppppppppppppppqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrssssssssssssssssssssssssssssssssssssssssssssstttttttttttttttttttttttttttttttttttttttttttttuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~dokidoki/examples/colors.lua000066400000000000000000000015701156240237000165000ustar00rootroot00000000000000require "dokidoki.module" [[]] require "glfw" import(require "gl") kernel = require "dokidoki.kernel" function make_uber_scene (coefficient_of_awesomeness) local time_until_change = 0 local color = {0, 0, 0, 0} function handle_event (event) if event.type == 'quit' or event.type == 'key' and event.is_down and event.key == glfw.KEY_ESC then kernel.abort_main_loop() end end function update (dt) time_until_change = time_until_change - dt if time_until_change <= 0 then time_until_change = time_until_change + 1 / coefficient_of_awesomeness color = {math.random(), math.random(), math.random(), 0} end end function draw () glClearColor(unpack(color)) glClear(GL_COLOR_BUFFER_BIT) end return {handle_event = handle_event, update = update, draw = draw} end kernel.start_main_loop(make_uber_scene(math.acos(-1))) dokidoki/examples/font.lua000066400000000000000000000025301156240237000161420ustar00rootroot00000000000000require "dokidoki.module" [[]] require 'glfw' import(require 'gl') kernel = require "dokidoki.kernel" graphics = require "dokidoki.graphics" default_font = require "dokidoki.default_font" function make_sprite_scene () local font_map = false local function handle_event (event) if event.type == 'quit' or event.type == 'key' and event.is_down and event.key == glfw.KEY_ESC then kernel.abort_main_loop() end end local function update (dt) end local function init_graphics () if not font_map then font_map = default_font.load() end glClearColor(0, 0, 0, 0) glClear(GL_COLOR_BUFFER_BIT) glMatrixMode(GL_PROJECTION) glLoadIdentity() glOrtho(0, 640, 0, 480, 1, -1) glMatrixMode(GL_MODELVIEW) glLoadIdentity() glEnable(GL_BLEND) glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) end local function draw () init_graphics() glPushMatrix() glTranslated(320, 240, 0) glScaled(2, 2, 2) glColor3d(1, 1, 1) local fps = math.floor(kernel.get_framerate()+0.5) graphics.draw_text(font_map, "Yay it works!\n\n" .. fps .. " fps") glPopMatrix() end return {handle_event = handle_event, update = update, draw = draw} end kernel.set_ratio(640/480) kernel.set_video_mode(640, 480) kernel.start_main_loop(make_sprite_scene(math.acos(-1))) dokidoki/examples/rgba.png000066400000000000000000000072241156240237000161170ustar00rootroot00000000000000PNG  IHDRdÆ sRGBbKGD pHYs  tIME; ztEXtCommentCreated with GIMPW IDATx}peǿw{ݻ].KӼ ԑ*Z 2# "bF*#0 "*( P Ђ(BIڴyO.?`&}KnowsIGvϳOy~BD9(2y|޲?O!"0 r0 aX 4 j`;AX ax*QDa:{&ð@0Ct‘t&ð@0 # ## M,a0 a<# ## M,a0+ h0PR= 7?ݏa@p4_G@~}(,^؃$WR줗y5qh0]ǁH xjhwugxxQ+FOXŕ([zcj8î lj}#>},jMC(]ۻ <:M׸D.GY:Idj_`$@ֽ5n(ZJ& ˺ 5OF2U@f'::(SS~E sIF0DهZ(̤w):q@椾P֧yef<Q(Cy@Z HY>HXxAG:bRU[0m;0wCC$4CC @(ҀJĉسv{yyORk}\~ynuC ]SuꬩZ[ 6;/DOG8J½ VF7dx,dpW({t'||"!͘W({|=<7d3~}Lh uYr']}ؽ/WG 6Ud8Ybk4P#,NFMMעPp**y5%xɭQڤO/}17S8%4z(oa4PcI|r(ڵ?9.*ɳ؊bmkI? Ch+ml,=>t|N 8^믗u39.JTa4TU%kwn;.Qo@X;nHs\H/X.BPMUubtnk+(xmrʖҺ9kw) $&.՝Vϑ<ܧ` O.87M GqU(&'z֛jdR*MpUKl1ñ#QM-|Jy2 ~ȍNC~$y1غȑp~SyW7<_\,(E"MLJȲ4Hֽ(eq26HlY7PWUӲNњ5v=HM;jQao{{*~שrx7dĒH{ySu<ΰkk}e}WktH *J&MIɜxDUU}xݿw7H&/71Yle"FU$D]d6T-yۼv A艹lOT[2qSFރʋ==Xod޵ טm|'ܼ)2ѴO851q@;75(:VƂAz-ݧauf n(IM/ΞE]nTlQ\41! `]-]q+`p񾾶RfzLN罼[%(:=j| c;틨6t7mH: 7g@VP R* dN:a>SqxcR ;Q5UYufC2'Mӻ@I]ۓ$y}"#Ntu @QGq3+z(Jz̼ROk l][%yeY~[kr9i'"ZXN;nT?d K[]H^mV "^a^Kͫovy%"Kik;!6dX}$yY@.E$lf7g"mH:^:7!j>vB@)kV aMXLϖε^SrWR6lE-`0J=xI7bKʲ]w$m GfxSmzx.NC`T'B(aR~aMÛG5鯿nnmEIDG~8xq{1t`h4bD:"MU;sj/DGCn S7whqoN'E E$]UċMoE#d|:ק m/~epi2sSHd9ݣ}_!:AO=%sI*;Qx# 'F)@M;=lV`S *Ӕ.U~:%Nc~W|#I&/֊/in$h(l?PQڦ A-H(~t2M %C&G-ϵ/]Iߔs$Rt}jkߡtU?K(8