From cc9f2df96412f346ff9a1998ff2f5d0c99f6eef5 Mon Sep 17 00:00:00 2001 From: John Bintz Date: Fri, 22 Nov 2013 08:17:13 -0500 Subject: [PATCH] add data source support, drive a project nearly entirely from a spreadsheet --- .gitignore | 1 + README.md | 82 +++---- lib/svggvs.rb | 8 + lib/svggvs/data_source.rb | 53 +++++ lib/svggvs/session.rb | 41 +++- lib/svggvs/version.rb | 2 +- skel/Cardfile | 38 +--- skel/data.ods | Bin 0 -> 8194 bytes skel/images/cat.png.jpg | Bin 0 -> 22791 bytes skel/images/dog.png.jpg | Bin 0 -> 28169 bytes skel/template.svg | 434 ++++++++++++++++++++++++++++++++++++-- svggvs.gemspec | 2 + 12 files changed, 572 insertions(+), 89 deletions(-) create mode 100644 lib/svggvs/data_source.rb create mode 100644 skel/data.ods create mode 100644 skel/images/cat.png.jpg create mode 100644 skel/images/dog.png.jpg diff --git a/.gitignore b/.gitignore index d87d4be..1ed86c2 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ spec/reports test/tmp test/version_tmp tmp +.~lock* diff --git a/README.md b/README.md index 0b32947..1fab368 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,8 @@ Install the gem globally with `gem install svggvs` and then run `svggvs install is the name of the directory to place the skeleton project files. You'll get a few files in there: * `template.svg`, an Inkscape template that shoows how to do the basic SVGGVS template setup -* `Cardfile`, the file SVGGVS uses to define each card for printing +* `data.ods`, a LibreOffice spreadsheet that defines the card data and project settings +* `Cardfile`, the file SVGGVS uses to find the data file and optionally process the spreadsheet data after-the-fact * `Gemfile`, in case you need additional gems. It has SVGGVS added already, but you may also want remote data gems like `google_drive`, for instance. @@ -16,7 +17,7 @@ is the name of the directory to place the skeleton project files. You'll get a f Create an Inkscape SVG file in your project directory. Make sure it has a Source and a Target layer. Your card template is made up of sublayers in the Source layer. These layers are copied to the Target layer -upon processing. The names of the layers are what you refer to in the `#active_layers` method in your `Cardfile`. +upon processing. By default, layers are hidden, and hidden layers are deleted after copying to the Target layer, unless they have the following names: @@ -25,50 +26,55 @@ unless they have the following names: Hiding/showing layers is the way that you make certain card elements appear/disappear on different types of cards with with different properties. You can also replace the text in -text boxes (both standard and flowroot boxes) by giving those boxes a distinct label (under Object Properties) -and feeding in a hash of label/text pairs into the `#replacements` method in the `Cardfile`. +text boxes (both standard and flowroot boxes) by giving those boxes a distinct label (under Object Properties). -Create a `Cardfile` in your working directory. It should look -something like this: +Create a spreadsheet in the same directory, or on Google Drive. This project uses the Roo gem +to read spreadsheets, so as long as Roo can read it, you're good to do. + +Give the sheets names so that SVGGVS knows what to do with them: + +* Put "Card Data" somewhere in the name for SVGGVS to use it as a data source +* Name it "SVGGVS Settings" to define your project's settings. + +Under SVGGVS settings, you can currently set the following, as a series of two-column rows: + +* Card Size: Right now, only one option: Poker +* Target: Right now, only one option: The Game Crafter +* SVG Source: The SVG template file +* Individual Files Path: Where final SVG files go +* PNG Files Path: Where rendered PNG files go +* PDF Target: Where the print-n-play PDF goes + +The following can be manually specified if you don't provide Card Size and Target: + +* PNG Export Width: The width of the exported card from Inkscape +* PDF Card Size: The size a card is cropped down to before being placed on the PnP PDF +* PDF DPI: The DPI of the PDF file + +The following Card Size and Target settings set these to the following: + +* The Game Crafter + * Poker + * PNG Export Width: 825 + * PDF Card Size: 750x1050 + * PDF DPI: 300 + +Create a `Cardfile` in your working directory. It should look something like this: ``` ruby @session.configure do |c| - c.svg_source = "template/template.svg" - c.svg_merged_target = "template/output.svg" + # manipulate the data after reading from the spreadsheet + # c.post_read_data = proc { |data| + # data[:replacements]['Superpower Text'] << '!!' + # } - c.png_export_width = 825 - c.pdf_card_size = "750x1050" - c.pdf_dpi = 300 - - c.individual_files_path = "template/output/card_%02d.svg" - c.png_files_path = "template/png/card_%02d.png" - - c.pdf_target = "merged.pdf" -end - -@session.process do - require './card_definitions.rb' - - CardDefinitions.processed.each do |card| - @session.with_new_target do |target| - datum = card.to_svggvs - - # #active_layers indicates what sublayers within the "Source" layer of - # the Inkscape document should be toggled as visible. All others are hidden. - target.active_layers = datum[:active] - - # Any text with {% liquid_like_tags %} will have those tags replaced with the - # values within the hash passed in. - # Additionally, you can label the following and have things replaced: - # * svg:flowRoot will replace the text in the svg:flowPara within - # * svg:text will replace the text in the first svg:tspan within - # * svg:image will replace the xlink:href of the tag, changing the image to load - target.replacements = datum[:replacements] - end - end + c.data_source = "data.ods" end ``` +All of the settings that could be set in your spreadsheet can also be set here. See +`SVGGVS::Session` for more details. + You can also have a `.cardrc` file which is run before loading the `Cardfile`. Process your cards with `svggvs`: diff --git a/lib/svggvs.rb b/lib/svggvs.rb index 83f772b..4984359 100644 --- a/lib/svggvs.rb +++ b/lib/svggvs.rb @@ -2,7 +2,15 @@ require_relative './svggvs/file' require_relative './svggvs/target' require_relative './svggvs/context' require_relative './svggvs/session' +require_relative './svggvs/data_source' module SVGGVS end +require 'active_support/core_ext/string/inflections' + +class String + def spunderscore + self.underscore.gsub(' ', '_') + end +end diff --git a/lib/svggvs/data_source.rb b/lib/svggvs/data_source.rb new file mode 100644 index 0000000..79f0d51 --- /dev/null +++ b/lib/svggvs/data_source.rb @@ -0,0 +1,53 @@ +require 'roo' + +module SVGGVS + class DataSource + def initialize(file) + @file = file + end + + def doc + @doc ||= Roo::Spreadsheet.open(@file) + end + + def settings + settings = {} + + doc.each_with_pagename do |name, sheet| + if name['SVGGVS Settings'] + sheet.each do |setting, value| + settings[setting.spunderscore.to_sym] = value + end + end + end + + settings + end + + def each_card + doc.each_with_pagename do |name, sheet| + if name['Card Data'] + headers = sheet.row(1) + + (sheet.first_row + 1).upto(sheet.last_row) do |index| + card_data = { + :active_layers => [], + :replacements => {} + } + + headers.zip(sheet.row(index)).each do |header, cell| + if header['Active Layer'] + card_data[:active_layers] += cell.split(';') + else + card_data[:replacements][header] = cell + end + end + + yield card_data + end + end + end + end + end +end + diff --git a/lib/svggvs/session.rb b/lib/svggvs/session.rb index f5bbb53..dd51b6f 100644 --- a/lib/svggvs/session.rb +++ b/lib/svggvs/session.rb @@ -2,7 +2,7 @@ module SVGGVS class Session attr_accessor :svg_source, :svg_merged_target, :individual_files_path, :on_card_finished attr_accessor :png_files_path, :png_export_width, :pdf_card_size, :pdf_dpi - attr_accessor :pdf_target, :card_back + attr_accessor :pdf_target, :card_back, :card_size, :target, :post_read_data def initialize @index = 0 @@ -31,9 +31,19 @@ module SVGGVS end def run + if !!@card_size && !!@target + settings_from_hash(EXPORT_DEFAULTS[@card_size.spunderscore.to_sym][@target.spunderscore.to_sym]) + end + @process.call end + def settings_from_hash(hash) + hash.each do |setting, value| + self.send("#{setting}=", value) + end + end + def with_new_target file.with_new_target do |target| yield target @@ -41,6 +51,35 @@ module SVGGVS card_finished! end + + def data_source=(source) + data_source = DataSource.new(source) + + settings_from_hash(data_source.settings) + + @process = proc do + data_source.each_card do |card| + if !!@post_read_data + @post_read_data.call(card) + end + + with_new_target do |target| + target.active_layers = card[:active_layers] + target.replacements = card[:replacements] + end + end + end + end + + EXPORT_DEFAULTS = { + :poker => { + :the_game_crafter => { + :pdf_card_size => '750x1050', + :pdf_dpi => 300, + :png_export_width => 825 + } + } + }.freeze end end diff --git a/lib/svggvs/version.rb b/lib/svggvs/version.rb index 7e62da3..7d0e219 100644 --- a/lib/svggvs/version.rb +++ b/lib/svggvs/version.rb @@ -1,3 +1,3 @@ module SVGGVS - VERSION = "0.0.3" + VERSION = "0.0.4" end diff --git a/skel/Cardfile b/skel/Cardfile index 115e216..6c8918c 100644 --- a/skel/Cardfile +++ b/skel/Cardfile @@ -1,37 +1,9 @@ @session.configure do |c| - c.svg_source = "template.svg" - c.svg_merged_target = "merged-template.svg" + # manipulate the data after reading from the spreadsheet + # c.post_read_data = proc { |data| + # data[:replacements]['Superpower Text'] << '!!' + # } - c.png_export_width = 825 - - c.pdf_dpi = 300 - c.pdf_card_size = "750x1050" - - c.individual_files_path = "svgout/output_%03d.svg" - - c.png_files_path = "pngout-svggvs/output_%03d.png" - - c.pdf_target = "pnp/game.pdf" + c.data_source = "data.ods" end -card_data = [ - { - active_layers: [ 'Action', 'Puppy', 'Name', 'Background' ], - replacements: { 'Name' => 'Woofie', 'Action' => 'Bark at the person who is ringing the doorbell.' } - }, - { - active_layers: [ 'Action', 'Kitten', 'Name', 'Background' ], - replacements: { 'Name' => 'Hisshead', 'Action' => "Demand food by clawing at your owner's lap." } - }, -] - -@session.process do - card_data.each do |card| - @session.with_new_target do |target| - target.active_layers = card[:active_layers] - target.replacements = card[:replacements] - end - end -end - - diff --git a/skel/data.ods b/skel/data.ods new file mode 100644 index 0000000000000000000000000000000000000000..a5ccbbd09cfd26647ab9261c5ec9d23fbf9686ed GIT binary patch literal 8194 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 literal 0 HcmV?d00001 diff --git a/skel/images/cat.png.jpg b/skel/images/cat.png.jpg new file mode 100644 index 0000000000000000000000000000000000000000..74ef8bb8092d70b56d593f5c69afa59f7fea7646 GIT binary patch literal 22791 zcmb5VWl$W?7cRUw1b27$KyVB0?i%2S2Uu*e;O@4txVy{3B1_N&TLJ|4;I1J^AOUXv zRqtDMzusr6=EIymXP%kqQ{8=@p4XMvZ2*C~vYIjg2?+`CzXR~P4p0D~p`fCoqM-dd zp`oFnW8h$7`~yBVHWm&cJ`oWiJ|Q7784Wox2^A?JAq67^6)i12Jv}iw6AKd^3k@AT z-T#6h{d2`Y$H2qH#G@l2B%%9%#_J$}5EF?9*%Sqd34lz9ghGh)`V~M603f0LWBZTl z{|6K#WYm8o0hn0-%#s8EB$WT*-!&9eWR(9s6EX@aAtM@*0J@wWF_SHZ7l~j*1}U?A zSsSMQ5X-y&cEGb_LJHphoT>iT_Wz3f?*>T!oYBz#**FOS$p1h7Mg1R;kO@&3i3CvP zi1nBR(MW9D{ulIh4S@5{{?9}Rcn{c131aYq4DXZ~g)-hj9KPPTkxW^o66RWj3L3ei zSe*$e^U1Xvj7g4yc?(^c-HxA`6}k3p1Dq4{x)>g~PTSUfF)Li%mVIo0MdPA#a)6FG zi>KP(Z!x|CVgmKBtv+9Dm?Pm`g<(roO{}xXHzzb#;Mr{WZ={~0I0%!~+3aE>0r|6CWLF-XAOV;_=UZB0wEI7ELvP<%Wk2+~s{B#vk)5x; z`&dB1*X|v9@|5l?QugS!9MPS2@`jmowg(=~+Vq)$T>1wv%7FQRFMvfv6vb{wttzZV z^WHR$&~*zMe$>x<1?gUMd%vNAwUR2iH0=Y+ONwXd&YF&lRfDGzjRJXn=OwCdK7xBT zH;e}64$00^JYf^9@HV)-UZ-N}Gazhlz@} zwBI8Cd*8JhA|^HVMBDROm)5Z{3kRsoNg~dYcSshZWHIQ-j}E zm6>+L$sS^mb$d#2nh`<>WmLyw235a=2cfo(nlU?OT`*?1-IONQS?Sv0B7MPUhv(Hk zm1m1npydBh@s3Ez=PX=Tap4Dp!EfhbUm~1>vre%lKWuNCE)$rm9*C*%?Hv;wc7vtL z5(w)n-1r2kC3dH7h!yc_s{y@^KVt-8>G59_p4a1~GOr7&^{0=YH#vaUGO<1TsOIvx^67BeHD+2+Nl3Uy=R{sG<`&qWFP&#v84(u z-RXko>E0EF08|A-nB*AU+@|7>4%B^l454Hy?0r+L+xH)$+!gLoQu>dq!y#a%QPYc| zsSe(dsLzm-+!f^`i3@g=7s4&gmC|@YxswDw{*6kzx>Hu306ZT{JR%#kvPHrYy=a+r z;CuMHom-c0g>9W{_^f1}2(jeq{a##p-|Za(jngT=$T^CwM^!Mx_>3{X3okEf8XSe< z7m6+N)b8o{=!(c#$P}5N^BD_LOgJ9GC6}?X=v%k5d;6xBJLoAtD-MRZ z=riE~eWFzy8HAO>IxkIdz&hsDYBYgT++GdL>?*2HpfQ!Q*tb@5;vUB?wkb_n(93c9 z&;wl%Ug3C$F^~+;nRV*|Tk(VveTj}Hq+)8(1ZpqNMfp2!cp2Fec*L1*mfjs34n#sj zFUDk9!0Du>kn~h9V%E?)U&r^E55kLmtMof|4AvqUG3FrXJs$2p=ra{J9HT@7%o>pS zb@3>Tfaqx-X)b}W|9epN_=7s0k_cw*DL`@r#t1|$xDf`KFTK11-YA?h+2ack+Jb{? z+weVoRQhzs-7eCH2eC>X+Y4R1itB-dBb;bGk7SC>Y`<&V+lYi`Rnf~)Vj zH1@#e?C!~LlVVpwPrRM;Q&R<&Jjb*o%iWuC6KEHCiNj7b)&%jnj#}_GmCpHkTfn8D zKh#oLw^uH_U|CGs;nu2?xJqB0YHZWp`Rg**cbiMnIjW~?T9V4MrvFhpdH#)Swao9d z34I3TfcTU;eR;rBKO@EXBDkCfx0jMoewYqz>`bo3t*N^} zZ+-6j8^r2IVNWd*PsKBIk;(TN?3EvXmKQcbK$qznp58{$KHa8-h!o7;b93J7D&Z6n z*l^j@YTJk^dovyu*2t9SIGQ}9_<4AGnn?K4WkLi))Ob{hXzW%Ej4ozrQ#&`8&Ldd7 z)~Xe+&zzBZ*{InxQci3G3XY89^c*#sH(&1B;3IIVvU>&ak=SRlQVJPiNzw$D3n~-- z_clqIIp&;?M4aM&W1q_s+weQoA|x~7eif;2V!tMCg=>vrvo&XC)%x}WgsrXFU=CK< z0lyMCZ$F=k3pMe0dRGcfQx0v=--OP@U#-?RLicF>#JC;s7rE~BN60cYVwHJhEjN0_ zx$8sZzSBJ=Z~-=G(+?1Lm_-`Q`PUwU#tLHrr5QnpnhvG9><7(+LHsOcZ=m`w{JwXR zLF`J9(i2*aQ}axJ{Qa@ZKtqxyLFq=D9=1Wg93ju!E|sg07{iO68?s<%l}4vUqEzwI zyAYS!&Mw0wjT(_yKKJX~N#SC^n8%yucjqrEs#^;$0+V(Y!U7L&(ChxU7tjA15)RZccHcPk~X7B7`N-Z;O z$n{R7#j~E=yvA(3{3RzWD)`=3kg2{HTNuxeG5deA>8a`smB(*6o+KOU`2|J^TifCg zT70*#NEH-BC4Pg1$kWq7q2ZR}_1kQwzrZ43m?6Qr{TI&*v#%r#TV0Dg4(lo&?Y`O#1v^((J7+;bA^uc{}g_Tu}IT4T(J z+#~rAIRTcO3*cndRAaGqRM!(18Jlhc*WcLnu(>vzgm^vs}cS;KW-QCON#t+kY@#D(m{6NmMcJ} zsu#j|{0a!a;v>=toI!$9mw>nsc3f%{rj&GGm{e~^iopLTWUXy51{+U)*t`A9CBEO2p& zsI%sQiQbwAHD)*5iQkd(zLgm2L>%DzZ03k{|ILy)(2^tEpRUka+L@R5l(+F=FC+8^ zY07&`QBQkR(;M}@h|znD0q-Q58<8b1EKj+Kq919s7KZB{=)aHBxXyHL8EtbGS-W~@ zC(irB$``#x}ow#p(&4TCLZcS%WWhtj4X&n{`Hc>z=Ddc zFJ78SM4JdBgU>zg*OK!nqq^^{M2>6Bl#&Aidd?q}B~M3dXbc<6lC%4!S-%V)O88Jc zt$g{-XDsd1AZf6~TH?inJ~iW@re(-j1g5zVHR0%}jjn9G6p|c*+&J#bvNb zb3>Lx*1G-o(ekRYGFw@w(~RQW@j1JmDo#A&ND?>hMIBe~V-B+#VG39v1K{_s+r;bB z{1)l9{)O)+&P8lz4?471y`;N($?~x5ciwerFVqf3Z3OA0z6scb{n6=N;~(4P`Q}C_ ze(7U*W=fBQl-{-A`a{-kKqi=3>s<(WPEtpN?GATam7;1MC0}Em4coe%%h6>KucljN z#_aC7Z(NME<&lgWb4eG|6dj4QI+UYsD=5g^4Hz!AWjWDnm|hIbn-whCOaCyah~2&_ zf0~$Pt)KBV?OR;wLVloQklelwoqC3{m|vyj*TZX3 zsMCvNANQR13iukfT9HPh^~VV`|MBFmh)0DHH3P9%qQ?|jpcf*E$y#}xQtE5CVA#Sq z(&--iFRPoZc-<{C5xYlXTafv}`4mclIu$5){DfFaHO@%xT}pFdI(splZa2_N=}Y;2kcY2h z1*>M9Z<=oo`BBDx2w#ft=o^_;kD5`$N8?sMnp)vIna130rjMj_1t?VB4GJxr=8#@{ zZ}l7!+L%Cr>Y+efk^=4Y`2pIu43=Ft&r3JC@pM9ak7W)&u7e=?PhLLab{5^)TNgJl zUy0yoczLnLQyS927NvRV1trvFmgytY5Mel(Sm)Tbk9R&wXCI90ff^|kND^f{xIU1R zl0(~1=nA^u1bax%;GTPglgwH$Y3L9$A#<-gle0%AJJ~wNY>Q7jY^XTC0xqOPh{<=N zP?|QVj}Q*L9En|ag&Oy}uYiSc2E*@PG*{LxhWds;%BqqxgM)gmw*yGlr0rJhpi~WVP z7$VxBerO7NVEGrvS7C`XCdJj?tf?TjJKFowNU+Iq36ywZo!N8^6In4I*K*1WvG zY&u(BPRh#6m)EBfGWZ#iRp&b~VZltt@oh6A<3;z%2mIMwZTP1x5(zRk9eHEAt;B;W z4<+RvR&s5|PhU}ycJ8%N4hV#hfX9_6MLel2JI)w9m>gaZN3!Ah)$k1xA_-AV`Qx(wKOOHjbR4>7O%d4<%pq^7Z9V9WeQHiH z!&k^HH&U0)o7l2V?OYFnytlmA)1G;tj`8(ay7s^^>E+~Y)C}R+%5PRD>*%k59krPB zk9>9`U%luZy5Dp0d=sY1tQ$l}mpI&bUf@@PwZbw1|GA<~UeCS)IBuKlcKKLhiQOK! z7fG`I^eMaod}~&Vk#V)`7&EeFaR>jjM&IH%R;bZ@Tbc9sRyC99w3!!jv3$6^L&w^0 zD%87R{c)DAaT)a6a^Os+oSFxu3GpMt3x5b6ZM67*Clr-LcTk-3P_JACiJ<%48>mk_xM z8aHj?OI1(IRw33%U`+V~nXBVuEo+F)ev4%TC_zW`+$rvKIYtYl&k0hKg$1sK!QA50@wIm*2qLVGP0n{mDbaWNb2h6&!c z=vr}3lX|9ax}|2MF}r8q-r;S$+q9ThLNjpN7UlUWcm#2;Ug!biHpAw@ZSsbb%EywM z=bzMWDOW@-d!apZRX&6LxIN|)0U@g1NTYmYE`4sxDd$J29y@A8>qv@?+2W~7rt~so z1xDZ5i~loS7VBGbrd`x>(pogw=t)DW*)Uey)2RrRf~_i8Q^XR8T0%@VwU=m=)NDm@ zN3ziO!4(u8iO`v>7^#L2dGl3^u>4OP`D#Hi7du8cJ^t3EAzW)(Of~g)6kp6*3)!7E1wZ0mdMw^oeR}_st~51} zGQj2e@~3aI6I>SgDojVnpaR6*P(=T%rQjbD=b)3xPN9DR{z9j}8vFF6i7N4G=<5zt z%9J#Bp82mdLq8Td$Fq)xB+P$COoX4Ei&ROL@B&Tkzu()XmN(v+=~Q+8-*oIVN;t^j z%=ich%z@zc)rSQ+CYgTFPmCw>OMY9sB+H;hd*IfdJB}08s z(RrWPm5Hm+GxpoInGo(BUe*@(mK)e2$()iAjvtZocVMXeEMD?sn2k_6yr|>CM{%|T ztb=H;h1qL6d)b$D)8P*%S`pWxP`v{D&cu=(&lZ}Bi`%v@zr2;g{`J7+psB@_tiRyK zj~`S33=)Y76IAP?JBFrGKMA(*j|^lr$K*8sy&tpx;m9MsQVrEd3IplCON#@x*n9z6 zBW(l%t2||3GLBD1&C zBd+s^Sr<2DLB|_w#v*^M5r>~z^p_TMK7}7)>nt_<9C|TLowqLHqC&c8^b_*kR}BnL zSOb01xTtpz|8jH1rhArt!-t3{CSC(t50oKa3#`;2(X}rnSrN$Yf66-?0)zszov{Gf zY8~ZBp%WMG^8m&HI5(ABG39mfEO4A)cnCPI?P@ViQj^Rv*ZRv|cb>vchFGfwAay}685~S)(uazvW;m2{TBkxW9_Z$@cmcRtN;yg{xl@m1{P&h zRNg+j7T&jmI~RVDt8~~gd(lSjOR$F3aMSjHE|6Q6of$er-4PX1E@q)v78MGb#}%%H zwEo1f?j3`>5g+G{IkR-R8ANM5Y+A6d24zJOZMwhWv>2x0ToJN1GxcCb?zp8a;h*OK zir&ZseOnEJ|74CPUGhX3Dh0+%l^Rs?GlkXTk(o_mv`czJ^Dlb*L z33YB4lf{|L7m+yX&hd_$hPcdqI%tvdyKW4)SaqG$DC@34v8hp(6tdR2 z^*<}p(NJF6EO<~2MSe2XP}3n6x&n^2ih2wm(kp_(cGhT3bQeTjJZ17^kRzw-v$adJ z6ba~Lr3#u>2@RdRNT~7jsJtMgRi?*T?@r-WA|={$Cr$x&vUJ9dLZDYb zSs%yg(bR%(#u_-wTu>Q1Cr9(F&gB#RNflj0P3+T;c-QfL_$v1#`{*wjwE_V-ju&N% z6VV!SRd`v-rsP&z#qgXVY-Y1<_Z~JdVdhb(*RNf?v6OD-J4B1?{O((09*HU+{tW0eS9Kp*k);ocFI6lxW zUxwWhGYo%6Ua^)cjc`3`rN1#$E6onH5*FW>5ZR`C*il_#tgDT=p6?b&YxViec2Z4Y zdA!TF4#4#b^akXg0fV*OJCo@)xZb2l)PZ5&LcT(ggLW(yB~;5C5leESDMo=OCIv0xJ)hzmx((p@=Q*LDEX{tu^QD`la{M_XDR%~zXA8cIOFY$i%Z9pE&h&CccdL-=Z2Vm_X8FRw*-x(#9>z-3$^PeR2Cv1 zdHY+58qJn3a_qY{-fXMh5Oj<=P3D83x~IGWB0Rp!-#3wJztp-2q#t(2Vkcco@rf?4 zG0wv%DMsCS#W@DF;VDlJcD7)7W)@3!;ReO*TmLC@F&j6ZLZu83QN4o#U+F{oN!rh7 zR8jghE%x%taji+eLXRbWt&MMT(^-zu$>}9Q1yv-UqKt z69Z!K(FEzqP?_ZR^E{4C2$AY+0fSahzB~joihotbH)|qZ_lIDnoXrLNIfE(j5vq*j z%f+~Zh1Kd1HT=u8k_?dJgO$BwKbR{K5oh-8w0b$)?3ZmV~y zfd%$c%)^V{ojorAD!x%7&LgwEWRyZSBf^$ZH$6nWY*k0R;=ir_vGbWK(0PV5(W@i0 z?b^5{Z@~O71FHziGM%KTKkTmnq}(vI=N#v_$_<{QR!*%GkrlD8Z|WZH2U>_@dzJFp zfVVT}WfNKgne(_^$Gv|yIjMJfZ`%&+V3#>0J~>ap4(c-IAyGeHQk{k1ao88EZ?r@_ z-(Qrh`cC01*EGeGb=R6RB@W3P z1)YN(8>HFGM*vB?2#g0aE?mC=r2^(y0vN8kT7s9?4C12zaaO~Bi{sdc_@h;2VZ1=Z z{jbdri4-a%(yLlN{RaNF0>m!$R+I-o3HA>!b}sv# z&R)S*C9pX_|lbu;b1QJC0At?aDya|lx2`; zPaW@@`BanAg!ymdxmci7TtIMEG#%O433{S$YJ1g>sqY5##`2+JdRbWp|EX`%j%mle z0!Ci)=f10)XZ+m!(!&m!K`AeP=4}Jn?e>a|0QnIUvM6$W5d4A9qyZIB41sLpB0O2e%AT*Meo2RN!(1BK|)h` znh&WNh3#(%_S%K^Jh2A)Mf9i?J><|(c=0m+t#Dh%1@lv)Q29SyNfmpdee!cKo2)t; zr8C|9mr+&e?~0CCd)0Qbc2q}*KcRN3g6f9`u-4dYiNW;76F)7KQwR47&mPx)0`qwjz||#lDFf5#WP7a!oVLYcD<{-&=WD7U zR7@>-cI~BpoQa9n-AxEDps9C6)`x|!H-RQ5tVWBz{vJKU(dtrqqv(T%23M3ny2w5t zq8v@PD3#BK-^CfN^rmw7Ijh>*N8=hO_FI1T$FDOTNmahE4jMZ|h=2VdhVs_IJ5-d3 z-Tetf6yQG!JlYtg7dUl88t!cjV zgQ|@B*??xP#*fKJx!-1=tCu8|)94?tYC-$u$%bv&JTq^8RdO)Y##HS|51pH+Rn6w{ z(k(-`lX#@Hc=FNvk2f$QO>BN!Vu))QNMf}pLz7f$2;(r<|8Q!}o6m>z{Nd&$Z4Bli zMHbq7bsKi*esh;6B-=#v5PA_23gixw6sjre>e*cJ+tV({4tDrY*@ph!LsOL@f$1qa@YRIRozKk984u>iiyJ-UyMC$@4Ep>dGZipz} zl7-C$1v?dp(H{Za18wsL^M^DxGD!F9?TIjOOo?!udp>6p3bKi<)SVjeg{yr4d?YqV-Buar4RF-MeIm)-2>{&`M>-t)`Io z^(eJeJ7*-@M~hFt0`}Xj_09^^YA~r(YR?Jqk<=8S(@qPplH>*ZfWKX>hF9WHsr}2I z!(-aTYR8LA5UoUrg-O-COTHD)4LU&P>@@L0BD3O2<_+eGXy;qpUif5ASXF9vXxrlD zqP@qB3tCkCOVzSWofaxQZAYna{6>8S;sZ{rw1}B^JKQY~1O%siD=a~BkSSfpVO&syj!j1hRv;-jNW=krFQ7FF<3{ z^?iSPGOxAtsoP{h@LF%*(xw-B{t7UB`lKHJ>V3)VpA zY~kZJ`;e3;HT4PSjgy!)u|G}UVkuaI!yrqjC8-Ct{h14~dXfta3Y2JHdIlW&!HE*p z@W##5HnLZMceG~Sdt1}vs`ziru6_NJ*cLm=uK8mEIV{PY3nGB-()lM}usdo0BDMR~Ok?nf%1K@$wbY80bu7P< zQ`*S(mRR26>ZLT_wD52Y?Un76IZP@C=Zmdjhzdv0$T%MF_;q$PRGGY}*{;ZjNR`vB z9ysen?0v;qhFvE|1LE@pev9y$CaAS{-L-cZ8BF=tIZia(9p0@ern#_>%-Ej(sOcG@LN;2xbpcL603g{`lEGvo|Blt zM4*MEPPn!^T{|Y6l@>Ta#XkAZ`YNz*KGpq87D<5$m6>`A*h=dFhBUp+$f=JZDpf8Q zc-hv5UFqr*zWfV`^((IceAyXgk!^wstR9UfG7X|+*VWcVm=(POks1Rjsg{@XRrjOi zLmhm$y6K>;TUkmJia3?%Q&LC(tH>z)8b%W)HImyfck6JGc zR)tWPxeQl><=?{Os*^Ld$KKl!_*<5VKZw7F2hs4x2=FH15lr!60$sGrK2I8YN@${W`uD<3dq1nX;lg>S~Uml)JXgh7#XbfVDGxbXG$Q&*kruWu|e&&nrCA%?s8+Yo9QVGzo{c$=c(>HHLU(4pgeqf)I zkT3nU$1&<2q#}pr&V1rP;dwMRY{$|T*d2#?bfWI#T$xs<>*I%Cm0A#kZ*p2` z(-;EuYHIr?{M3(kULQq+0Wd#$#-Zyz!P|)9e}=AsX>X<)dT+%4GPDW zSk=DNi;+WK*7HodRnyj}wlI>T)fpf&@+DyaTNJRX7%GGbGIN=08}5;GDEoM?>hNMm zh@hzi<2ziwnfsL9ONL3TK$F*Mup4hy(k2eQX0^&^GtExwQ2~dCt7*ia$55YFLW9i5 z`6IqfrH^~wR48VIRk`Zx4Fo&6Hn}#9Y58W3K?A*mAroK5N9K2GgJ>{Wjil5a(kD3R zMuwvHyP>M-R($PP{CPvI$3%QtG$vKh3 zkzD#>re+_2=Kn-rT26K&-%a#lGdTLdLczbcBv|?iAZ^<$QG3SxPCZAj&fHQ5L?m{8 z$~)qwZ`NLePZU0i_FN4}=g2-4)FnE*bf{yXL)p+TXpkJfRj)buU>scwr{^~KgtYVx09qlr6O;%w1mz1&pW5)u)%6a9Ho-*u={1kgMv+OVCqsfyj~nbA(70pPr1$+lSY}$(ft#Uf z_Fi7BfsO~V(>b^BV)ZE*S9?UC(uhi2*{9({N@-D1}*sB5Z;} zlLTt-XsAAv^*~j4w0$=(XI6!wLQ}NH`J8N|Dd3;+7j`Rne7W3=U`m=BdH`(vrtROS zT);eKs;!C@%~ln;+y>NIEZ`*;HM!m6v3(oBQlH~Vl{`N&IL$Kj{FJdE>Y9?jzRhD| z_$-^y(Oh2X_>h!l)D3tvy|AmTNM--J1&YfITD9YbQQEUZb-@?q`d>5ZGwX#-SL}R) z3aDqgqYx2vjjLSwN8^v?_;;k>V5q9nhI$6}N1CY&fw4oxgc__&9?Q>-`%}H@Obrr_ zQ*6EYkBa8p?5~#mH+|K&&sqjim8iVHq&Z%eFpkg9*=pK^SB|-(`e({S64LTLe~LbD zAv&s0KAkY#D<5^I4*50b9b7bFK&@o%=bCveM(fLf2;JBFpbRl z8n$C`naW~_V%Oe|DT>tSxHUUJU?=lM+@VzFX)hNQ&*3(bzMpqjRnfnos#*fs=U#0v zB6Qd(iM=%FIVkuVjy>erKSKxcvEzMNa4VZZ?!O%FODuE+Lpc9Xd&@uSoXW&MnXj_A z;x>EBpZr%ZzRH_RE>`FVmzGqU(3__Hr@!Z6wHuAk*lnz%N>XnUJ$&diu!;3bRQP`!F@Whnt)5NPe5*e72*V~dh^w}9Y!0Cit7`0}dBxSwkrdx*oRyWjo{^<% zdMLfDZx_6QA^D(zgW?-+P?ivto+`p;h)2Evc%T0#0M7SFogy=zL8t1*$JI4R*xVZ~1aUJC##5 zxEv+#l!>T)hQaoh8VV%dUalPTdR;7R3VI#vFYG=|pmq6bh5WRSaXd0LfgCq;|uHXZcRG1JR7j9?|m#?tv2qu=lnf^yp1g zjj)sP0?|h24}<>F)8v}j5*qDImXh49n23>^U638iVqs>ztCdxQ26w{W(IMk^Stkj> zRbya%QAp$XX0Ncd4yfkiv%MKCTGJ^LTQ2_4Rmh71HgoU-_<4K zOBr9zX#akB_@H+XvZ2F0$-K@ZaW(gN6dOb_k?>oTeiM}9Z&sZcJ^HBVg;P-2NJ5n& zQ-TsBZtu{97;){BeX5TGLT07~OWPbi9#pD*_HQb{t2pg4d^cMYc)P~)W^B^(NUA&I z!HBK8zG5B6>0Y^J7Dm+-6cx@j@^kMZM%{|Z%CSrXmm-MO^}yfbO}6USKv*kHj&-f(o=k(?W?^%?cwF_l=V#+k;*Cu`6D0He8!N2@zsXaaYud+r^l#e-$JNvFP z4!w!7*yq2iZ=|7y#3{{_e>JE1N|b%%7MM18hbRr-#|v zkStg#a=uTv*vEtSrXS7pX^zqZVOgHj9h8iI%PPpZ#M~)uphmAtLT+g&e3?={ew|&! zLerh7q6ZN&oa`Xojdj5~I@6p%-pHEu6qiJzc%VEJlc zpb8YMT2MMu@Z_tv2}$FcORW?cLU=LqQa(LPkBqIAD^!c$pkJ_adqMMU)A{u3oa^=^ z!^u^!@zba0PLSE+#5^Ud>Vgf=+hyVKh1PYU6`sD32bx-#g7%C^{j&7zh@D?Jo{?fI z!-LkHUlMYeef^}9R`(5f@W&CvilnjtIqh^GP!xj}L=Bp!V0zB9{F4P%S8xXbI4PFW zvWV9A;C{R3S%;?f2aFLQdpu(7;5vN2%ZXAaMijLFK6?|=@DF})mBj?e(h)~_$5XpK zsM!r-A{A(zlNX9yCt7qBn{*=UzO^Z+iFAu+Qr-U74s8j_%_FdhY4c%1?f{?_aX+Zy z8o|{U9j!br?~>tMz<@UhP2fSb3{TVC_SQBmaUF^DwJ9QjVhDfYiW@yAwbN6#3gRG| zcjv-mnHLV>T(FMB2x^q9@m0~4G)h;Y?_^8H=cd`564T!f>Q5M%kxJR*{3D{OG-ySAjIY`I;p~(5?*}EMAG@KX;$fr?-~B=qZux7bBjybw#Rdc7 zgVHh)$2XIluYexz!eEXycPYaxw}f0=GAQWA-NkDVdB27GATYDDd^%Oic{l`k8vhhj zQUBosHBWN8(oH|rqHASib9T9k)r=Rb-}^g-CA>x7UsXfAJ5i`8o1Vi!6NBHM`6&9; z{P}PB`HW1LTkc5)dbr2E;>34KEerYi^5W+OtGmn^*096bM%+61VzbMdf-3mfca%;p zB&0=6Vt%zg;d^52gwW63X3<9^%%W$wkrwc|9Ap=#5F~r4xH|FAe!_vSmm$9bu#Mzq zJFbgnY@W04O?OGd)my7Ph5{Y7rJ+gkphpK!YOR;? z8nuk%-hBCr-I7X;{ST`p1d;BpW)4s5Dh~E^r7jykWG}mnNIY!VM&#?N?ieNG9PqSR zb{7lZifFO*i^rLFqlRet~QQF|0j;I_)hS2fiI zmHXuG@*`#oc$mHg?6D=>heQ+Q{t9|tC>fhL ziH)*p4;$~6gf8#aaf#%2_V3bOnkB&EB-%H2&5i6cdv-6qxL6I_2FJ7?0JDXSdBK14 z9I7qwsR)!x^mTESBYyUrOWw@s&~qRC7^qI=IvV2n@@PWF4k;zvu!xL(7J=bPXxrjwqmU!cNz%RZ1;qhg>aBTP6BBHfRd9B( zl1^=8v^|Qb^4N|!>|2%MV3$d*>5>s$pd_~_i#m=ofPsd&_Rf^#vR{2L&mkGlQTbX;#0nRl2$V?=30(ZSMO1;5i8q?d?U7MBo6Y1Z}LJ&?1jt*Ekl+vPyBir z-hbh;{yRPu^Otc50P>Tnch|=1=u_u4&I(lt8oVSYMz@-m=wWug$`36**&`whYB0B= zEGwJdJFtfvG?X^Z?SS4Fc5&@iSk(nvD0DsypN+9mG&l+Bj<43&lvUKk%=NE_8%Y!y zy{}e<{o!J6GK4cNkNY5^Sk=6GST+qxzKvGsv8JIm@6$EQUI#y>eS-fphmuF|2DeAeLE7X z?j^0)ZFoULqC18csGsc4w2d8Ipk_INSgiud<*id_q=eHn8{OG86lrLlN|-h7MZ%r* zRb6f$t#_(|hn5%9>K7~d*p`P+UIFA04ig@gjyF)x*yKC68y)7#jIZ4fT&R(MAuKP) z_~aj&xWrPzy=FkUG$ap#m)$!!H}aUp{een0tvBIXX{YftQrEdg`27YRmr&pz`)c9A z0%`_iJcEdHJl%;0%W^y-q(S^eDW}M|paP~2f7!9Ny31t04=J@jlXj4qKN&ykQEV_v zmzKR40uEQ}4hFGfC~qvFc2%8xxe5GrYj}p@r(MKZoc063r9K4@nu@Vf|8!ejOZa|m z1|G?{>aekT5~fb)T&0MvKh;?R%GdN|DN#S@WE^i7kzU02gUPo)oy5AfU zOR2#69!}=OHsS8gLtX^`%Z{|a3J_{V-#@^F<+0LEv9LX%FH8N~)g3sf?Mger(W?-E zDX6N9uJ7ze+Ue56k(_;0$dSBp39MAG(Tz5p@5O`)iFdx?QK8T;51^@L>Mwss`KUDi zu`;zP%8PQCR|93kv$QWYRdy$mge8esk}YOY=;=fF^?ll?d%KD7@>yj=ZSW2J%8RA; ze1V?Z^jpr)2c71!lIxd>nBK;l$Xk~&FoYCel-uAot$J&b*1zVYEN1po#7#(q898`P z&RQj`ik7cHg_KsURtV(;Jb91Jr!wR=;C=jravBrDuL%+Y5r_#4GmLip%jlUfqo>1` zx~FW_(!AkfQLbbrV!?KFh<9S-|JDknfd^|3SdTZk$o;M9X1*kU6OFeg|>h4y4II z!*<+X_|vG) z#i&7TdTpA>((Vo#xpqF;)7j_%x-Bifc@$<&S~_dN(GLtZ+>dSF|#8fy~A+MMUAzQba2nek(py1wa6*&jvk z4e@T@#l4kf?0>&#PfSGA2~8zBkNMtdFwGu#iQGeOmi4|lEwK3hX{nK^X$`~3y5=#N zd>VDN?}BW-u#;nU`uttpWI`I04IG)>K*ot&>b9yV6t19@%Q`|M$xIJF%c1+>nT{*U zg3a%LO;mzK>lsdE`FTFA>p>0d<60dK%%itOX*|!E)QrAt}YT0#L|j|){=!2K#uS+b<1cb8)lY!k4bn)yitK3 zg&Db(bXy|`Zg!p?|MWR+$kVwt~ zd|;_BV_D8h5plhMvW-x}#z+=MV~cW7qXO9}_9XC_1@#amZsMHc8;hocy9qK#9XtIB zmdV%^y?sufRikf-?2+JDj_aRP-*ti<6_QfB4mR!-F1AT4Ee4orVgk#wP+6KB?Tp}5uM%^QfbbeT4^5hVmC1P z3$K?7m*$L+$^QVBXMVBPGM`0}p!O!pq;ch9UUA|%5#YVV}LXoGA{{UqsD{SE;gBL)U zD6WXmKUB!hO~sS#eh>?w@%AN4V}-Gm4mKO9EpP(IlmPnzQjA~(&@Ygeb⁡9(hc5 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 literal 0 HcmV?d00001 diff --git a/skel/images/dog.png.jpg b/skel/images/dog.png.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e145c8f46392461a059f9adfeac426913e7378f9 GIT binary patch literal 28169 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%0DwzMd-| z2L}}yO_6cbBM;wNHf-NF+6N}R*Z27%4J0uB3C z1^IX33SX?(zobvo?w385DY+aEUiApawPatA5Qt9v)@`{A$8E#0Srfl*UhCe|)y@s9UelJ>jmW-uC2$Xkp zdurBgx&7dq&EaEFmqm>Hs6&SRhrCqP3bi3HBcn>_3uoy}rQU42G{2z?Nae89Hr|7F z$Ge*L`Lp$74)t@%r+%Isr=GR-J}>hzW>N!Bg>zQHfVw#Q%o?_Xo^${vcD#p@@#u^{ zNlgJ~$)BTGVyjv;szYEtVY9HdRg@aR@JwfudRL!G0bEF zGGkNHKn{(fqR!eO`wOVpPLCf;WQZ8AHC1@z<@{8)*|3?1c)$?KBwYkh!SQ1h=0MZQH5ooquJZjR~13raV1rXNbu?aEKh^do8 zTYoYKl4IGR6Oj>T=2I-fVi*@IHJR75YQ#NC*tbYt4%L)n=bsxf7ZD(0cfUr8)}D>q6`q_dSFrVG@N zw63NxTFZ0}7ZmlF)hj2VE33PmtQ_p1_}UNmsxwrR}2g4 z29K>5$78$nUB&yg8MOe&zaxNyNjhl-#3r4U=y#w8$uP>1@yB$&{$0ZbY~m!6MGO_- z9mip&GZ)rKlv;%X+!ap)7vRlLc@+D7F*WdX)P=)zGtga`eeM`y+Tv+KaPIcf<2>D2 z=FofDb6EZY2E-`amx{GP{8YJ)b-(PwT|ak3+$@N!%m$TwLv&$QA9D%2VYTmX9!>t4 z_bU3z0#}f8N+ZiNT76jHr`f-bsNveCaiL2>-{>w|7mfg5vnxXjqW?ITt>2WBi)f#Z z1rTFS2^Ba*WO|tcu-Iquvoeeq3QJy?ZcMY7hnOO2*2PSrxGoaAXy@V^C{mrt>!hse-IcV+;hJ(|FZ(e6 zj6$Y2wT-zMn$OMxtBr$e+KOi0PQ+p}z*Jwzo5Ay``sXmZ3*B%L(oBCQ-jb_A47h%1vShmw<6-+`*Ci$FS>sLjwL_mdCgIbImu6|gr>JA6tu%F#*xZLbL_Xx z2V4nJzn(E{5M2zaA*WL7O-8gJTxiW(Cs`7=_3!L&ce%8=NMxmMc0^wyS@K&@td5k> zm5D6|XD`)yCibohNBb1?7clh`Oz%S{A>y+s@hl|?j?KH5x@zn?og;7_=Ut};^7S%X zf~^rzB4v~mcaxe0gI^lbto~#jmpJOM7e6yo$xhTAHmEN&K7EqEB!W9Zq{!t(O>l4_ zkyt?)l5oces?>=nYBi@&rf>%~1x~P)R^}uV11O4<7wB7=e*Ou|K$#h7;zI6-r60X9 zTVO1Tuf=2jKtKZtl9Rju9~JqcZDDd?zDnl2o-OqXMK`PO z&V>P+7aHK4qfD(o#Od#0aNq;=;`zamNkm~rrs8NfqMOLv(7{9h6UES>BQD9P{qZyb zgf;tzmJaRmgwZvm$S%u=Iky76sPJSAF(hPCCBKi%vi)Fv3MTmXhmyn|C$@s(+g&P- z1fi!(IaD7Z5flU4U5b@Hf^HvDcfc&)sOsaj7Gm=yAwY57c;2@RPg)nSpQzLDKuW)y z_wE?kh<3z9M$*4X7h29vqClJr=6Qks+~%KGU~uwC`Ie4fAjCpfmx%uzcxxsV$taLx zD(`MNUl{deF4FlH1R4>^$s0uX<~@};loe^n-jdAAh}t#-fB{ue=b9JRIwl~6-}!4p zJm1lOk7x!ih4P>IK9KtrX$GmsBS2+nNMe=X2sJ3!M>c_$M1l3d2 zmq2l-RIP9GeA%YJk2fUCWqPK$cORK3D(Cn#M8>P$QNby#56^92c&c%Hv(JY<6c(b5 zkwdt7BC3pZ=d2r&klX`TR9bCAQq_U98%5NCuF%j>ZQK>cF55dz!8eH8;iwXZm)_4d zMT@&6#9TL1CuTxnM=e`W$OwfB9~sdIxx)mj=zvFs0Pl*YfH>YZ|Hv3^mf!YdGJ1va z^RD}WWk*`vUBi3Go$F@z(ohoGxj#~?+NW~4xyrfT`=bt_V!%1hvkY$GYpjls z6jA;p`&`1%jeWoZQdE(ZwF=SRmAS24!sm)CEJ>|1&__i_PZt>%b2AQhaPqOKheM*Xxbvhh2m*Y*i zL5Hzwq`llFOd_Q+(f%+*x@VdPO1_m&;hhaDx8rH_27w74PlfWo0PMG%0lyJvsa(*y z2rbO^@*+#@>i)yfirfTY9EGeXZ^}&67bU(ngU_sSB{iih+J6DRVIyL{+K3-2{la=7 z8xEH~F8wziIze;IJ#xU#B@UfYrwoNlB@&e;X0lsW$c+;PkEBCsCv5>V|MvHpzM_lJ z$5<_0XG;AJ6m&18O;ut+=cSL()lohOYfnj)-B{XS%6f(OK~8d3Dhw>6KR_Y>Sn@3` zz`OUcI3>(m%RUwMgTYVTsn*Y5{6aei5A`T@y!jEX9pL2FxV*$ZsBu5S+xl7sl{JJp z`=&vpl13BYgc6t#*x_@-mCEVIs2w9&V)?^s2^=0nf975ho-f+=pM2{}GVt3WZQqY*dzx@|#clDm zhCL5_@klHDc6&fNbfFy{7a);G_CtA4IbK}P8&e~ms>0HdKCP>)IG#e`4Gb~Z%&zRU zyhRl((=IH@D9CtJX@hwn)PlNcx4HQ6G0($1{%pt)N357hD52ef*A;Qd9%%7`PY zE-VtVG26pX>9QXLv*0HU$cl$Dz0=>aUBpsI%41yb`tmKSLJo5E@>o=v%Aeea=Avyp zIt&F#dYU?f=y#9Kw8D^GE|*dC9v)Sg{`4#;ZkuJA&zaYKvHpXK)OpP}lW4Zo!6w>O zc8jV++QGy^=va5@U{sqo;hC_(8j?Y`1GzA`T}BC?l#tz(>!MK|*@|^0LKV&paAm-C z_><+@dl&0l=p(8=)w!{|T@h+T`Nq=z#;kiuhO9qQLU9y>HbTMmP{QUlpVgEZ@b17A z&l*7@#tdzr-tu&! zjzd|Azkq-?VfuQ@mk84)1LrcF?6$KUN6j+)pIvjmCd=hims(CzL8ll1zG4Rs>5#~4 zqv@Cr5&;m?WDCb>2i0`;AZep5F=?9#s|7O=zgy|l@f)eb6u_;S9_*9!W3~Tt*{(-W zNoT^~M=%U^fPpi1CT+{V(hf~mXeefFtJC@`3?$XVH+tt9B1mV4#}m<4IM(QWrkK^R zFA``A#id+WwI-?ay}K{Zv}#1x3C$iwa)GCVH#LH$bP8_(^s>2EE66#>TK96Dv7;Ja z;+u1t7lMh<^q#+F$;f)BRl%f!3u+?k45|i-Z6ZrR?R9hEAb{CXO(kzG4^l9Ev#7A5 zGy>YoGLPC^0Urum&D|cw+A8)8atkHew_-;_LH+8b47q?WCysg-XFBaU5pbU-^RNwG zZoa2)GmZXm?lEFh457tm+|EwBHyl3ni4F!Hb-Q0{tFIGa|9Yx&WIf9Zx;LVPo{T^g zOvrBg(;6;*pgOI8%O^^gNBuJ&RAyEN6_2=kkcZ)J*A9AoFn(E?c%!`Tt|~Ej!kQjf zuec{Y%RGy0@5m@hX>TA|NDk!w{V!vL_7{NT*PwsR_td&r;*wbpK{zqo7MD->3s~H@ z7@=u{SH^D@S2BWWS8XZjfm_>VK+rvtPbHwqe<5a|BQeuyufuTwY_ z+xe=)4wadk^}ge#Vq3F%V>vtZe&q(3O7@iT<*zz15OJG9SMD!#kNg#GNpr&ZW&}Jx z8Zezde*jfo+F?oe#XJ7sJ!{mL!afyuJ8F$QA;>(QZo%mh{HbPmzQPIf?5DAWuMUEO zQH7*Doty0o5vI{Ma?^NWTBC`0Npr*gKam2q^~}MMo=FnRBUilsbo(6Q>!Ak1ZC_Rm zsufYmDOu#L&!!K?`9TG5lnM6FU49;Ubi0Jq=B5DLY2*O#fu z=J6m0e>X3c)p0u1h5S_@!cha9S_y8hA_d^_sccGUh{!W97+K&-1!w59lgaG>CtaHW zC2~}PeEGbhdwHh7r9*bG45{G6hm9xLXQPaQL{@h}=PQ8|g>!58uY8%E<_(Hp&F~Mt zUXKtZ<=xf1X`g5t>BJG)eD`!Rs!zPQFENN#SET`XmoYn&PiOdW-A@ddf)6Xqsf!wsfOnP_(tp#(l~g-CT%koilG&&u^OE!#F?>uHbm zBHXxfS_}mprMJN6y|V({ln$%NW9P8;+uvj9j~aH(+Ys_!IWfu+mBWE~RP>FXctV-2 zlEN!JjZ;V>V|jZD7L8{8MRs&}hnktfu{V(0OF-vZ>I>a z3Vv0M!tp5*Yn`p+3LIfR_`d*epC?@bJV;ki1@kDyUgTHaJ^o?Ek7O$vDVS^9tOjvi zEFa+&LhG>#d-!zhsEJ|(9!u!G8d(y70r+tR!^^Vz_{JB&D#nV@$%#WsFf(wG{<#kR zwOp`N&3%yY!1jA3LAw5iH;6(CvYxa!H*Yd7#p+!;;%TVqH+FXYY4K9roI9y+M^mF9 zv-#t3!3G;C7*k7eQ>YkuM(%d~i188})~eAM!Rq z#+fU-0v%G|Ix7TXdlEv)HN^c3J|b)6Sm{Ge=Q?zg4tLS^X4>bRFUJs%MUXP zG_@W^G7SKa5>sz|Bs}-u&Iw?vORn&i97;+s;$~=Iz0_7PT-cS67y!Em~zV+olT+Hy&c= zJrodw*_r8ow*3~diTC3~JavL`BQPmgCgUOArXQl?^ zYJ38B5!~C%@L3wrGg<_Qc7?kf;!zCQKFB4pz-XiS3E9iU?yel*x-Z-|S}p7#z#(|l z9(3|n%x?P$Q^dFG*Ml9z{`p6LJyK&V!g_Nn!;T*NFaGL=4F+TDmlcV+ECGu0vH@Ez zi0{$0l1cDSxz-xm*w3Y-Yn6+N&Igng?Wo2ElZSBo>)mqKsyWX0f`mjS!`;8GBhuUJ z6F5hQzC=8a74bE_#6|}b?X@KP@6+P7PJ_Re^sW%TLq$(?s{Sq4iyX+8V>2x0VfgVR zE_9}%aFiSG82bECF^9=Toy;5~<=EQA{!0F^oBCJKf~`aJGpTH|Cx$y~=kFMe z1}NjFQ!eA6!PELp&KM*wy+}qnS^35X2f{>855;bM+iDK)hiQH6iy@{5)lMA+VZ=E@ zYnA}0p`~qt)pk}_jIEbW6}9a6eOU)Nxz=4Z0a(V@6OZJ4SqXouOv1BmEMVtH@xu5_ zUHS#zHg9vBv)(w7dZECT{!ABiJ1l=qNREh9FGm>8)NeP{OiX5T+Wnio2iJE8J;ct= zP+?R$R|Aw`BdUKa#V2cq_O;Tl?DdzP2!fOgDx172hZ$JhrQ6#_DNf$tUzMtoDN6Fc z|Iwx~NdDCn3S|CnKM}|y(Cr%=lRnq^<2tt8eP~j>ml~#tC5OD9{5qvK=_=MNaD%RX z@aNlmal|t!Y`6sN%O~D@OBx12X~a>gwG&F94;5Ikjud_^bzfCM`r}4=gCZWLwz)Cb+`pFQ z7?LBto^&pXiq_ht6qfYhwOk~CN$0GGs<-&#TK`#~>L|*(Gu8{-tChMz`9;J+RsZFW zX8zjGV^ry=j4v1JqFpC}8%_0E3~0!t@#OE{l@MHTO)oPt{-cCa3WtL5del3#nyB)# zg|&?)XvrLh>JsHFRIWIkK{SdVwtiQ6$#>`%XO70D@(Ig7KH%4`t0Y@dA*KjNJr)m+ z$%tr?pPbN^*64h#oRuwVr+7N`uhEW04T)We7e$gq=%$h^ruj#HlKI4|gsu7tuqGS_N{H{Uzl-m}n<|umD5nyzIP$qi%4kwYa_Dc3UySuIcKL-MC zFiW$I1(gAcSbycE`4-E>7^)w|QA*DH6_#oLA;xAjiN=$4(u9)WrTUb>D545){PHbK z7G>}VU)^uR2i8#a+K1{avwIq~HJjazHeK$-y5SqahpO-lBj>SEa=9V(Q?8K`h8x*o z!K(QF6)a=P!w$Px)Uy6&HQ}GrRV96;KPU6D&pR!|@Ea>BvtiVthfeh*o&$UQ=GsU=~b)e7LZY z9z~Zl5mdAff`+Ym&LX&Yy$m@Z)o_whOUYxZKXX+!)&g{poF-jbw>j6B7PvS!5|>k< z5D4^GNRxLE+lUw0$Zx=_WxI@V9nFOFq9t|w9Un6uj|C@7q+;g>qJt%nafILu-yGP% z$BrpJTpu?OTD*8k;yzvoUlQbZ#O=SMTjyWa>FO^I@-HEowTf{w=QH6IJ32EgE^?)@ z6e3x5y>~E?A4YNt2p|5Wz&8%%O|%Z%wQQaz20#wb?3O&-OFFx}Mj{ zc*TQGDT^OJKB9LQ4}I>OtIGNdKyZ^=(iLhK!qgY65V(}8_A(wBxS(OVN=|yJno(=r zEQCglDdj72(5J!>Yq@jwx&vPA=MZCfE-syZz9UMh_I=JTepN|oHDxWqx$~M@XgCr_ z+GfZus~1NkIr01*Mv!UcDt~5NGw4%gQQ1H>tRn1GDj110#y6CUy!O*_3^q~arWwSZ zHLmcRuZ&#QH!JJ0z-&{vjF`7L&Gy5GPf8qvFN^&wED%jsBbz~Acj~ z?U3P9!p;rQQC66)Q4n2zTH@uQ5{>-;#o1(E+;Qj2l4`~moAw+23%FXiiWr^PVWL|i zVw$F>&ZcF$G-_Hky`%J)3+Lo$!yojk=2ehx02M<3Y^*m)rO;C;_#YfaJ!(oUk>Fl;B-DK${%HMb5Gg4Vo8-HKAb zKvi9OzjK$(*Zc|6o|@pJEokgl7!`BS$a+~SDw<0qh<2CdRQXWUDPS%tAYdt+ z>&OpGRIv6EmV@i~v%t~^TlF(LePBq*@zXraO6bEoG;OU)J!UK;)(_?*1;%s!X{Zo6uKg} z3tvx^;9c3^KPhs&aPhhLN3>YLtxt0QJN&fl#37D#b?Y&S+F&J3E2(;e2>ZeoQ?VzM z%Rr4PKyrFk^7^VkjiJ2FOiG&vB^~&Vsl?BOycca+Os$LF{BF#|p@tKQjP(*h{5R-c z_2vlz(NNX50^M_jSqd42Ve;8ocUx?&H+|(%kG3LB*BvP^uAFP0Y2n-JXP0SMNV7VW z*y}`@!4KvBr`3Q{U!z+ot;hr_TtL@;Nulcy2RYiQWx)!eeuv5`hJrn(7}@mS3vO6! z6!!6pH^yf?H*WZEO&0Efibh*(#svraS$a5#l7442*I8bs!|zTrh6I)ergNN?C4~bL zkT8`|IpoF7$*e!~9e1ki4EkM3=0PrE{( zR29{2br{QyUlDIhYeSN!kI3?z7mgCH9PvHea`N|a_GoOat{HJq6ZmGRm~Z;STiB(&dF+)!DFl7t6fi$9|3~U=LyFCEmUcV^;on*uslAJ>ubeA{W0BRDZ*{mf~Ayteb^~)Z~DKD zV%oM9{GQJVSH9OWytjG&z$e39VCr+vJHPLu{A1bxA`BJJC`H3zu4Pa=ECZD+L{;M; zL`W=Z_QeZhw_8om0($Zd_Zrm%iETd@`ukx;7i)KbZ22!>$Bje@?BwOhboc{))T%vwNsynqrz5I!72AR)v>B8gHO9&26ny;LFA|5^s#M2lybFAx7MjQ zT4eS-BU-;ps;UsM)YJly%Sf09S1Q0DLI!K5IgvMb3rdcc7ZvTBOQ! z0Dhm`5Y-`)$?L?-f|$jTHzvmrXFIhV|0R*7^}vv~rOY!KWTi&RPE`+ZXe~!!bG$zS zVk*&vv{6&G!pvqTG=R>q7p1QSF?6#5^Q3ah5$Byq^t~)npsb|ud9CnAlErx zxmb*JL6J8HK%>S`8(h+tFhD%0E_MC`*GHyX#URJh2K#fH8_mT}h2HU5ik z>k@=(g?Wm}g0ZG#^0lk0Pm5F_{hrU_pXCb4G*@_x*A>uN&&Fm{lV4bID- zhH3DI$%rp?|M}`y;u$Rr#Y;hk&dLn3C5i|wGP;KvYPv;F59m#z-@gTx9xdn#_9Y=4VTi#= zn$Xg~&%|#fTsKbOoGGDc{RsA+DPDqU7GWJ+;&1UXcecUjq!he0IsnH4qtfa`^zuR8 zNrDG0a*Q#KLyOoK%E+;@Mi(C1{0nu-(U@rK@$_R55U}@=Zxd#{=Zuv;h%`+6JUcsd zEHaoP91ys~*R+6iPpKiW^H8ijRA{NH2xcwd=Jp`<4;4B%?)aklQL}%=U|mw+csnm| zJhOz3!)v9A)jKwFdX!c`4OEWpT#=53c~p_IFm0)pSoADY_M*r44jkGXk1|9* z^gQ#CC6dYqznhtFE^Gg5cKP(_@`_^o6tTc=U|kVI^kwqYVKOi;-=3@J?47O4XeZp& zwccYK85h94upYEQ=R!21d}#V%f!<~M={Nr5y^|eSYRI?B60cnsV7W}cD!$M^UFnM2L zfwB&MC^Ni!qwpTmvZE7inOQH|g)IoFB6BpKWRHs3o7qn1(Mv@Zj1qK14ILJY5o)mt zy96Cv_!4juC6Q~qD^^`E=e{I=U*}r*aj>Kp#Ya?qHOZg#sU%T&rAS177egVd+|#qL z>MiMvd-S^B82XGR?J~=u=J-^22bzVQxX%Q${;b0INu4MB>-cXv4bR zDi`}AaIHFt8|-v~v>{|gJmvU}ZC3M;^kL+oGPCJZ%-#j1u!0kv`-Kjb&e!Q&T82+q zE9zadL?(DQuQY{>-xai)0#?vVu9fV*=(w&h0oJqY$-_g|tK=5fQ%L?hHn8cDG4bAX$>${wL$C1G`+B{UPGzy(k0p1e7X%Z%n*k ztIL_AW;Z-x7p|}=`znziy4Uc10I?d!1z}k~jclpWyF>2LuPO%33DnPFe*t+ITyMo? z6C|Q#%84FXf9B)g-BN+|20aebF$V9dO~^^vUVgr%PY$q&3E5W6KicNwXVKDsKceVQ z52c5$me--GN?s|QEKea9@>YZ9&Aql$)4jPW(uX<~S{}FR)tdB;lu)8}yO;{a8Irpq ztk*H`IR&rcEtIw;ewok+pUYCG&)Fki(cbQ>4=fsG1*-4HZj@U@vju$7zF;J_9kX$b z{3q`dd~34BjQZuyBU_4A!i=Xp?J2QOQ=0G7+P$g&KLKMcoYJkjfA>|M(=q_yoy&po z^HuUeq2@sL*uV_L5``oyu}YU_GeO$qaI|ETF7o(sAFtMPs*) z;s&=->(1<&Nw8@mdf1lZ_m>YKTq@&`4HHk9kxYDyFC_NIYAuwd??STrK_y7 zk8$aPzmDdC6N%=zwP~Xqlfs^+y@0nN_NFez_<{`WTBNd>MaJ^nnzl*2*of{ON`-Cs=|Gsyn{dU1kf6kKs(^4R6XF$T zER|$|v4cUDOoN`)vuf63%wkjk4mwu5d=e%jukl(bSg0nMZnD1V4%Mx%PH@bYurHSu zM(w|IA8OL=ZW&3z!RRY&@YbboWXmC6Hc`+K(AP#LXEb%a730%vBPD-uk4pPjrkYEc z4?BtL@mj`_b$h5v7^`}XZ#q_;B19S29CA;3>yor{tvh9Tv~dyikTF^}jBLqP!2WBh zT*ZjU1B_Oe;#)SGI9|Q$ics0Qk;boVPny6AQfPdo^$O_n=LFX0}>03~pyAV^%7M zt~=2z(XucoQ5>)UXX3Vh59rqyF0JLZ55;svxpqU*zkZZSvueI`o|W9RnF)z`z^+N) ztsU&yU6%&BewB9;Du-|4wR7}iDBH7o(g+}PRu`7ZG(Eajx2IpIzyko){1X{sz&&bA znXGEMY;7(P26If<=z-xGUVjyL9ioYMKTn#qvx!-NTw=1x1tqgwc^rB)ne+r%GGqS$ z6?fs=GP5d$!iw8lPl`zSUTZK}C9;yEn&nXvL(2Wy;9#yme#EAfB>sI zr7a;QwQm@)`X@qmf(>^?QaIk(q-&a(xVU#hFb!)SaGv5tRslQn-kO#+QLsKq>z``O za6tAl?2IXH{{S_`l3b*9LMkX=x<1Jwz*XRZN?k!eo+fkXX6Z(-M26dFI01RhN?9W| z&LqfCq?*jImUBb7_Kp`g1F)dWBLMRzLo*IP@v4m_-)n3~D(8=LSGs&JHdB;C#7g3ID(;|XOh6Mfv0cMKEX9~b>Bp-@;-cTd!{{W~kJ}7!) zO3;RzdWj>XaWt4X$F(_jzE!`Sf>`uV%}FD-wRKGTkExHirV>^2xb<<7@F;9VbnBAv zZ0B=w$J^qt@kzYMP?gRw)@>nwCfu59XLaOpW zXWFag)nfXSY(C~W7#%8pZe?c~Xu!dw*yshiODs(cqimA4K|a*|#-8Faw1CLHNBdA# z%DEvxP<^S3JEfjCoVNk81qe-ov3VihlHph`7xPE|0H!4ImXwcm`7{|_R^=`w zTyGdv{%QFx<7L8t4sgE|=q#$!R;4r zQFWtvn9ruZbJy*}7p`&1HKbqNppW8Gv}Aywb4%SQ9DG%&^5cZD!FH;fk_&U*x@4#m zv2evt9cseD@swdtsM0%XAhMi}D@=KKvnj&M_{w>pxg2uG-itKoqiT+NoK-co=NliN zY}2?45O!>{oReOJa&lTZB^rANG@BI7Y}=&;SU+yHV@>;a4cOxtDT$0sz6 z#^JQ8o_f<36R-`ma(Kz6kcMTABe*WDgitDCe>5G-=m(FQPUH6w_EFcKv|AaY@~{^> zMGXifg;wA;?WYwxcWF1b-AhV^&zq1i4nzU5Ll$6ltftXbkh z!AM;5UeQQdLhjl#$*u8AWJ{y5_&x1yVoU)fz46+&+eh<|7F=hbu2rd3BWgABwtJYM}#U--p?iC4)X0?4<&E|3d#cV4yj+tTBfjSa*6|7|h*-@1mo9Jt> z?i-xeo#L+#Y*uohn(HZSS1l(4+K|?CwYax0v$q^p>IzY#Cq6FEo3$HOf?_d>xA4{0 z*9ds6kHxwXftZN$$K$1GIF{PuE06)^yuTw0R*w8R4eo0reIFdvP3DH`NJOhY3~EU6 zDzVE}#pQ{>AxAa9n}&|Il#K;68QkD4IcwodnVc%daBHLKdRh_6X0~l7NsUNmLH(@D~G2*4Oig_C=E+I>G z%8XPr=}EW@PXeK-OkIemX{Yxwo+}KK`%*ND`r9`xHgzRQ?ORr#IxKl6v>PcHNELcj z{5MS;KpfW5+Ax};>rmB%T{~008`TY^GDSe$%q9zi*~G7IGPQI9G*Wl$4u(b zmaikgkw*|>B$GI)Sv;~$A)f^mcv`cP(jgKnjm%F|LbON}7~ht5%Nmz{$Dw>Ryo(~B zq&=~gD%{X=poYzpm9N|D(mQdxIyBfnaAN{(SG zO*TT4gj{y32boJ50Kj2|6s%JJ0NjL;@Tu00Ha=8B`rprO`M@5Lk9sS`a-Ufa4YA3A6t17I|25Z`a%X0 zX_7`i(_A<87SDY536AEr>QQ7x_Kr&>%P}L`pc`{!(Jn2D$iQccU6jY1@rv(wWmZSZ zh5~{Qn>sh$8T4|9gOL0v{I})iO!mm%73~T`>gF%v2`iRu`Zfkr~ zX_@4TqTEDegt2BEWK=YqIZ>A?7;Zl-ZKz^=y9IjFES&3Q5eYtkv z3{)?39Pyy#yNZ5<9uzRzp_J}+8OOB^7$hVvOFMP1F?l8>iQr0T;vl3NC@IwD&% z&l31_T&pUlC*rw>h`b>nX7bR4UagL`^h-dlxFBTJUa6x)G@n2SoFg@{MskBb zZL`xSv$)!-)wyW`U4XKh=s)}!8FM2?l6l27Y2j$&VYzztuQxA+Z%2MVDJ8OtNAn%j z1V7rg%VXX6#$jygD|-GZL{F*~0F^Hdl5 zh)a(_&o!oNo+}YuloEh5(wNh=Ye~>cETcb~zDnpgw5;kHCy3>O+!iNTa5WvtFU|=e@!=k{OQ!9fc|MpxldtBPcxwdRo?U zjL|9Gvx0jXZDf*Y$=jC49~7Hb0VH*Sl|~x_JkqxjMy>Tu>U-s2}wjuaTvW_*$3R%%C6sk=mTp zV2W6_Fe~MNM&9O|q%D~@&hlaZThg7Ra5p7mJ;`@wtaT%2Qfx5YVR z9)0dxEXQ#^-xZUqEp$EQvZBdx%Jm>nZ|4^h#<7h458F|HKYApmZhm`HG1)|t`S7=^ zX3!6Rb5&MN(IXs8RX1_~+&?vonIT*&0L)uxIO$$t95(ABvw68DL5$>fqC$~8A!GG& z2`oF)aY9XkZe;SJY$^aKnt()%d4Mqrc8~d@8$y|zpgjQYXl)RZQXTg`-e{%lFZ4%E zwT1{2dw%52xq&?eSi8aI`Gf+ouH>qjEv8fwwBNTF<3H6*T9uYHc2Yp#W4WrNCu~h_ zMcw&@vZL-MoP$tYyi6O)Qa~hiHC=ih*HGC3Es?p-Da*BjJ9uIVx^_Fj9jPisJ?K5X z%HgD!jl5vjsCU+a;6Wbkr2W|MUZ?*6gzMWizYRw$vY~z!x42y30l*clXi;oHK<2g> z^R~QKG`c-GZ?T*Xr>$jbG3AXNQ;J;dnxo0M(NJ?(#sy6{p|KO%0IbK7{8V$AoPM6Q zn`I+m(gx@meZj6(`h^f%`9?a|Ptm39E1dqK0sjC|dUJnN!VB!q9ju=&>P5~QcNB)) zt{JnMvhiiR{{Ylkfx`8wXC+q*aC=w3hH1ewhH9mO=Mh(<<9?d?>A%tdk`UD)IbT1i?ivmG41Ibc$AB21vm8rj!2wPtrKYA2ij27g_hd%z9Rh zB&FBCvBf8LRw>doBRI=bu%FojfDd1qYQ^XbPKYo8Cpk44wXMixI2r3( z_k#RO1Ysd(10DVAL)D@(AtS9;>9R|2c)q3sJl9SPt|nO^o{y>YJNRxRR}GO@@l6q4 zD~$L*ULI0LB;4F_T_Z}Jq>M8Y&3e(2YR(D5nXrs8;AXvzrh{(8u5rapw-Z)n(0JeG zj-^Q%0Mcj}bKaz7DL^vOL~5BJ6HtmZ$#d3_`i9#^j^}6@qQ%5@kYhNnM;~%AQ@3Ft z6vIXW&`&~FAwvAsMeV9cryypn?iVD1Rrdhr;*&*0*Cw?w$;V2PE)7{cdyWX8$!^28 zMRLm$yE>Ll0Q2@Qq}Hk9TlrSi!V}2rTLsuCeT8e@B1N7CTvJMryJr&Cq?_uRM`Chn z7MhIX0UXueh&0FZSe4?nnWK^kFoL-$r)=r%7qMN;2KSQ`Z6f+v^;nTITX4au7-P7Y zjm5EB_vyEXCA!pOnUIB3l1QyNUqq!_XL!&x2DR|iW>@tD6-#q@^#sTX^&A?AoxV*KVAx^|Fr?L<5?$3Bp6Vnf&QabI(Ly2I6Q4RKlvK57I79TVg!+ndsT1K1k`?< zWFicc^Gzxfc6(E`xO;DVpKLa3bnNn#}G&5pY8Y+D|Cu8wqP;Pdm2Xl{aJ^c5){y# zAa9c&)F;_&Rw53-NvfMm^^Ocmgv%!_?gc%jznN_BI0SSc_cTBHY*5J41}Aw0`wxn% zvRbVQ-_I=2`5-hZFiAZCsaai#At?%iW8nw6_orl!%#GEs!=V%zlHS%qGN4cw982t<0iChnh33fUL=$8P%H-muo#n3B9bn&XZ2uKhx(7k zq{g?M5c;b`{X#xwrr`9YFTkjNXC3jM6NVM5lEt?-Zl9Xld}zB!$j?1%RUWnotNhoo z<4gQVZKbd|X7=nWt7bsSklYCf<1}};Wqbp< ztIdQ!dV$CDSkvMgo>?-?PaguBu?9uBjakY2`utQl-R5M2(wdxxjNtSXD`OKT=>`C* z5(Zt+py{4zvd+u2aq~-0Bx3Dk>^cln5zD>8fyZ-A3G5n)S0o=v{{S>XzLnyoaLbim zz|d!qxltMPfs%dcp#zvRN)#VR>V4>>o(At%Ks~Ao{#gws2YQOUlDC<+hCF^Lh>5ez z#hWZodYpjyf;<(+YGNsZw&q-R0Md^yn=>#ZpNefED>Ev{)2c_w#!2?9yk`JDa5{XN zf=baw&U&7vvbQEwEsw<-9ShyUP5>uvd8MY0Xx#lxSiFF$uK?2bYONqAkSZjRNtKMD zpKA=~wN&c1#Tc?JUMy$N+(!iQPs^q)&AveGP?Zgpz6!b)_bMIv&34@bQH9`4Fg#b! z_ZHIF-UGO<4Q~Dt@hU=69B*#ydJ6PBe54}PHd-}ZX4&Hm*v)A=z1l04J$j++0u7@baaxClzfa(Mp)KYTH8~`j+B`wxy*Ej=O$R{PB&X8u zIxR=XBAnCG?AY}={;EZSHw5P_dkRtBJ9wSgp1r%89*G~7U?iJ6-E*Gg)U_L6%8%80 zZLT@?YKcQHo}W)7Wkd1-_NZRn`3h5vMlf+s+en+X0=vKq`1q(^+DDXqoD<*u>n)d{ zT5ZuJK^m};hDpZ&R95KP-H4oEx#7L}rsb6)MOc6?$AOO2z4435j#n9U<$pA6MUxhg z64?j0;;L>Hl6~bE1SYKQ<=(2pmOL-Xraqn`pS|{;So_mfg`g3+c##!IOn<#bHdrS8 zyq&oKW2em!v~GZ*Jn*1bt`Ns=&;J0-#V2U13mwdkP_HU`{L+_#K{In)aV2 z6Lay9cCWCjF&@Y_H&QYv*l88k{{T`1jK=_RgWiL4D?L^{(!D`F#T3mS)0u`#6X_J%5m6|W zUG3y0K>@Sx@lHDZMXz8N1M+ICQ*sCPcrIO_cTlKMPpYc%?rke3XJ>KsT6xS{z89`qR5(sI4JS6!Ho`9b6Li~-W1 z(rv;-n!NL@{L;$;K!~EX=vidj9}5o2eyMRF62vCaTdpJ#o;E54|BJ z*YAj92LtXRo@l((Rn7-r%`H8#hwWce9I>H{VH8UkOm*sL*g=p71A$6JUuHonPZVTH zjEkSJ46&w|ndxII6FYKo=@bhnRTT4_b^Oz3bCOBI(sD@A3=VR0L!<~T%p=GBDhgT*(bYFBoX1}s1v0a{_q;^~u<8j?PfwY`m^4Vq>- z1Ch@i>y&6-CTSHTX8iM8W}mGY+iGV5yOiS2H;txlak7$e+KLn&l}QE5EMW3z(dtON zG3K43II_?XKQ$KRs-j(1HRQ0s`JzXvM9YxlpPH7?(q)Sr98njiTBEwv;YQ_#KQ#x} zqY)AaBz)94BwC9$1Yub&p>k_li&+IrZlGLisu-s1p4`@NBuh|b=A)`b6fB^O)`{Xq z7qMXEE^u?+g@36v<>SQ|V5&V$p7iaU26zE{ZBhN}lP*@>BX~haY|u4b2IVB*2*QqW zRgH72+Mh;nItuA`QUe%INZ#H3g-YK}vv>^iM5hC$I-1ToIGR12&RgFSY7v`%HPKsw z6mn|s!d?!R30C_5041}Kz3Xs}2yK@!+bNlkqybhCdArV35(lV*z^6R&lB5xeOkB*3 zG-!#1L4l8YWp_2Rml=@#zaKP&;Iz`1c-!hGtZl-ZKtp<%aa_-n*?KB;=6idy<_+cB z(tc{n>Q-oEIVWh~4(5e4$g`r5sz(N*^PrdZPp!Ll0+!n=L~PbgqDlQM%btCzQk0#r zxWWGb6)`8CrH*l*;9`dI+gsYJWci!20PbnD#F`Id6~Vbk7l4OxC)%F4ca>h}U8Wpipg|^#Mt7rd8-Y=mQ2L3)YQz9J6_qAiERq31)7;YWMzBBz!R8Uk zKIWFjG_a8VXnudI@kMFibL5Xp+2SMt^65>+w79bpZQo-bj97&K1WS@^}Gy!iDHXDd$IrQV&fo~~>02#BNe|kLk zo5I9C+-Hw!PW6J7VHw&7PoH{v60zlhE+Z>CDMQN>-jYaTTay$D0v@K19PZY!qL2ye znjFa_BkBPKRA4CYO(Yu}^6-M+jDJz~uT^SZuuL&4xa5P@y-$(~Wt?uQ)a27KxgZ)& zBn7g1(`$iWEhKvADH-chjd|jS9!bffh5+DGiUtvLMoyHtJk-M+XSG*Ege}h%zxsN$}?Q6ZO7Ao3JdGlG6A+Q6y^^Rl~>2^^?|^V5p-WHg)Db)W~0 zJtqZ^G)4vE7&zv)vIk>i$zpJ|3EVRb{iCHtR0S*44z(E*F&=ToNvC9tK_CyYNal{R z9p^mNeX2Pdi35%^Mp8s%lY?4CiK{Im^4n-5@@R7yi-kfkc&hffSYlNzlGMVFHZt7~ zJwFv`kkG`FMkETOj)NVjQ!qG9!yQ=sP$C{%1{L!^P_S6~4xcm+OFri36*Pxn5rdKjSk^*$ z$+dVM^ma4CSoWN9aCo6c_(pxZM`|L#t0u)c$mWdkI{^}ozu;3=EeX5sl@}Zy1u$e# zHm?}!YDs23s4j7|a(${SiRSE6k=WDNw0Y-^lwgi{{8BeA2q0u*r7`r!&n`#{o&`-- z9$EPv0Ho|_#)oq8$_$TzTa}igFG9f?tpe#-OSy8Zj+J-d+n|?Q3FMw@Tsc~NSver2 ztlBTMn64D7s2J~66L?R1uECR>{ws7;Nn;o};+TRV9t(D^--;~c`5HB?Bf_Q(HV+@~ zTYih9EwS83J?V=n6plcvXfd}qtyB^-l;k6-vf0?lFZxDnoz1RXwCfsVn(11U0()l? z4@n&>lj=js)JRq6_!WkB($S_Ao7hc5RJ&(&1-6U=X!d%I*ORm{W^M;P1rB?2^iIq_ zbPPp)Hj@qgFPv7@%}HW1I~4G%I9SZ2afo zs_~xn5XguX*yM75CZV?b9=btp=AH|6Rb!FUJ?YC~i+$2AS%;@It;q8PQaQ>-cpmi1 zNVD7ly9AC0uoW9&q#<<#iGd%avCM|8>?DyQBYzGtk6}w(kYHjt+IrWmWJvbF&6yh< z{%Jd*>5-n&;(LJM{R5}PT3819OtyG6nTp1qOheSeueB;Jl?RsmD)EfP844XWpyyH=6F*?j6`}Yz)z6 z^WvW+TN&s((ZnpaF$pA1=o!0bx6M|`Xopk?vSkyWdXv_kg!FJ4@u^g^CX4Z)p}#p-qo07EC$?h!TF`3lUYQbh|T~wB=@LlFDOA2 zcw^p$Br`bBUZ4vVbJGu(0HnYQW zB~S{JkZAX4W^@kCk<;@=fR&`8X9xxW>xyD*6>Z1T2d0ynFQl04YXEWc*+~7A_3uLZp z3{LhxHRWT9_tK?DlHH3md#-klPrtP^74R~6Q-MT{KvKYRd(?o&DTs=>$w88H%^AZ! z5O=IXqs;zj&A`a(RD@UDEyBsQLE1SuqCoPn!;eifDLJe|@9j)LqJ;fXmP{2<=?0%h zc3sB;fic?_;nj`}O4W-=w4N(S*(@BTjNuOfk0zMgwD0Jv+upq@DU=L!T>k)?%;V65 z+|}I^Mq-(k9jZM|)cXp{NCCpOPAV7UXi&TkI#kjW^I;h3GHI&-bKDppVYHInO=dYA z;2vM30sZQFr=}2~a8EQn)7qZIMk6F{WMPtN#F|DV$BqYDO7Y6V0LLeqJ*%^T zhk>^|Q5yyhN#%uIr0XH+@mYWuUFVPatjp?*vvPV`*ElUuE)t(do3^|4Eo zP8_kR4e8doAfM*0;e`MKm9$V40ajMP9=`RxXy$KVZmrAPu<4Opm&LZ^$&VuPf*eMq~#V=#M0Ji$*nhX(c6PDmnwjJ8vtyGO^%vr)djp4TurP<%9?n;c3=TkuJAo2+dQerA0~x#1aKp-+}smOz|6>_ zaR4?3DK<2U^-~4pQDZyJUPe+$FrRAm=dD+2NDQ&JIT^vJ=)|yWo}|-lP!rVd{*%-O zLFR*Pb0o4Vrw+q#&uS&~NjkTfGq7<>>Exx0IQz4JPildTi5YS@k=)}nOIx_wbLbmm zOWFPH6})57#rCoukk(-mO<2T8s=Hw5W|FzTQ* + inkscape:guide-bbox="true" + inkscape:snap-global="false"> image/svg+xml - + @@ -195,7 +196,7 @@ + inkscape:label="Background (visible)"> + inkscape:label="Name (visible)"> + inkscape:label="Action (visible)"> Perform this action, then pat the nearest animal of this type. + + Superpower! + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +