#!/usr/local/bin/wish catch {rename send {}} global copyright Program set Program "mandelstep" set copyright "$Program v0.4 Copyright (c) 1997 Karl J. Runge" set TODO " Zoom in and select Q's with high resolution. Package for others to use, FractFile internally somehow? (DONE on unix...) ConnectPoints switch will go back over current run and add/delete the lines? Stop faster if user clicks mouse during Run action (DONE) Infinity check for Step? " proc make_menubar {} { # MAKE THE MENUBAR AT TOP global env; include; # make main window frame $MenuBar \ -relief raised \ -borderwidth 1; if {$IsApplet} { return [make_applet_buttons] } # make components of menubar ########### # Actions ########### menubutton $MenuBar.actions \ -text "Actions" \ -menu $MenuBar.actions.m \ -font $font \ -underline 0; menu $MenuBar.actions.m $MenuBar.actions.m add command \ -label "Long Run" \ -font $fontMenu \ -underline 0 \ -command {long_run 5} $MenuBar.actions.m add command \ -label "X-Y Trace" \ -font $fontMenu \ -underline 4 \ -command {run_history} $MenuBar.actions.m add command \ -label "Clear Last Orbit" \ -font $fontMenu \ -underline 0 \ -command {clear_it} $MenuBar.actions.m add separator $MenuBar.actions.m add command \ -label "Exit" \ -font $fontMenu \ -underline 1 \ -command {util_quit} ########### # Options ########### menubutton $MenuBar.opts \ -text "Options " \ -menu $MenuBar.opts.m \ -font $font \ -underline 0; menu $MenuBar.opts.m $MenuBar.opts.m add checkbutton \ -label "Connect Points" \ -font $fontMenu \ -underline 0 \ -variable ConnectPoints $MenuBar.opts.m add command \ -label "Set N_iterations" \ -font $fontMenu \ -underline 4 \ -command {set_n_iter} $MenuBar.opts.m add command \ -label "Set Delay" \ -font $fontMenu \ -underline 4 \ -command {set_delay} ########### # Help ########### menubutton $MenuBar.help \ -text "Help" \ -menu $MenuBar.help.m \ -font $font \ -underline 0; menu $MenuBar.help.m \ -tearoff 0; $MenuBar.help.m add command \ -label "Howto" \ -command {util_help} \ -font $font \ -underline 0; $MenuBar.help.m add command \ -label "About" \ -command {util_about} \ -font $font \ -underline 0; # skip $MenuBar.addkey tk_menuBar \ $MenuBar \ $MenuBar.actions \ $MenuBar.opts \ $MenuBar.help tk_bindForTraversal .; make_top_buttons; make_top_entries; pack \ $MenuBar.actions \ $MenuBar.opts \ $MenuBar.x $MenuBar.y $MenuBar.step \ $MenuBar.run $MenuBar.stop $MenuBar.clear \ -side left; pack \ $MenuBar.help \ -side right; } proc make_top_buttons {} { include; button $MenuBar.step \ -text "Step" \ -command {step_it} \ -bd $button_bd \ -padx $button_padx -pady $button_pady \ -font $font button $MenuBar.run \ -text "Run" \ -command {run_it} \ -bd $button_bd \ -padx $button_padx -pady $button_pady \ -font $font button $MenuBar.stop \ -text "Stop" \ -command {stop_it} \ -bd $button_bd \ -padx $button_padx -pady $button_pady \ -font $font button $MenuBar.clear \ -text "Clear" \ -command {clear_it all} \ -bd $button_bd \ -padx $button_padx -pady $button_pady \ -font $font } proc make_top_entries {} { include; make_entry $MenuBar.x "X: " Entry_X; make_entry $MenuBar.y "Y: " Entry_Y; set x_entry $MenuBar.x.entry set y_entry $MenuBar.y.entry # $x_entry icursor end # $y_entry icursor end bind $x_entry "focus $y_entry; $y_entry icursor end" bind $y_entry "focus $x_entry; $x_entry icursor end" bind $x_entry "set Update_XY 0; focus %W" bind $y_entry "set Update_XY 0; focus %W" bind $x_entry "setup_iteration_from_entry" bind $y_entry "setup_iteration_from_entry" bindtags $x_entry "all . Entry $x_entry" bindtags $y_entry "all . Entry $y_entry" } proc make_applet_buttons {} { include; make_top_buttons; make_top_entries; pack \ $MenuBar.x $MenuBar.y $MenuBar.step \ $MenuBar.run $MenuBar.stop $MenuBar.clear \ -side left; } proc set_n_iter {} { get_query "Enter N_iterations: " N_iterations 4 } proc set_delay {} { get_query "Enter Delay(millisec): " Delay 5 } proc get_query {prompt varname {width ""}} { include; global QueryVar WaitVar if {$width == ""} { set width 5 } eval set QueryVar \$$varname set WaitVar 0 set query $MenuBar.query make_entry $query " $prompt" QueryVar $width bind $query.entry "set WaitVar 1; destroy $query" pack $query -side left; $query.entry icursor end $query.entry selection range 0 end focus $query.entry tkwait variable WaitVar if {$QueryVar != ""} { set $varname $QueryVar set_message "Set $varname to $QueryVar" } else { set_message "Not setting $varname" } } proc make_entry {widget label varname {width ""}} { # MAKE ENTRYBOX include frame $widget -bd 0m; label $widget.label \ -font $fontMenu $widget.label configure \ -text $label if {$width == ""} { set width $XY_Entry_Width } entry $widget.entry \ -relief sunken \ -width $width \ -font $fontMenu \ -textvariable $varname; bind $widget.entry {run_command "" expand} bind $widget.entry "$widget.entry delete 0 end" bind $widget.entry "$widget.entry insert insert {2>&1 }" bind $widget.entry {focus %W} bindtags $widget.entry "Entry $widget.entry . all" pack $widget.label \ -side left \ -fill x \ -expand 0; pack $widget.entry \ -side left \ -fill x \ -expand 1; } proc make_canvas {} { include; create_image $Image; if {$OS == "unix" && ! $IsApplet} { puts stderr "creating image, this may be slow..." } set w [image width $Image] set h [image height $Image] set Canvas_width $w set Canvas_height $h set Canvas_x_factor [expr "$Fract_x_width/$Canvas_width"]; set Canvas_y_factor [expr "$Fract_y_width/$Canvas_height"]; set Float_x_factor [expr "$Canvas_width/$Fract_x_width"]; set Float_y_factor [expr "$Canvas_height/$Fract_y_width"]; canvas $Canvas \ -relief groove \ -width $w \ -height $h; $Canvas create image 0 0 \ -anchor nw \ -image $Image; bind $Canvas "xy_update %x %y"; bind $Canvas <1> "setup_iteration %x %y"; bind $Canvas "set Update_XY 1; focus %W"; } proc xy_update {ix iy} { global Fract_x_min Fract_y_min; global Canvas_x_factor Canvas_y_factor; global Entry_X Entry_Y Update_XY; if {! $Update_XY } { return; } set x [i_to_f x $ix] set y [i_to_f y $iy] set Entry_X $x; set Entry_Y $y; } proc setup_iteration_from_entry {} { include; set ix [f_to_i x $Entry_X] set iy [f_to_i y $Entry_Y] setup_iteration $ix $iy } proc setup_iteration {ix iy} { include; global StopRun set StopRun 1 if {$RunIsOn} { util_error "Run Interrupted!"; update; after 200; update; return; } set Update_XY 0; set x [i_to_f x $ix] set y [i_to_f y $iy] set Entry_X $x; set Entry_Y $y; set Q_x $x; set Q_y $y; global Q_msg set Q_msg "Starting pt: Q_x: $Q_x Q_y: $Q_y"; wm_comment $Q_msg set Curr_Run_previous_x $x; set Curr_Run_previous_y $y; set Curr_Run_x $x; set Curr_Run_y $y; incr RunCount; set IterCount 0 set RunTagsList($RunCount) {} set RunCoordsList($RunCount) "x: $x y: $y\n" set tag [make_point $ix $iy $PointStartColor]; set FirstPoint $tag set LastPoint "First" lappend RunTagsList($RunCount) $tag } proc step_it {} { iterate; if [check_infinity] { global IterCount xy_msg util_error "To Infinity and Beyond! ($IterCount) $xy_msg" } } proc long_run {n} { global N_iterations set n [expr "$n * $N_iterations"] run_it $n; } proc run_it {{n ""}} { global Delay N_iterations StopRun IterCount xy_msg global RunIsOn if {$n == ""} { set n $N_iterations } set StopRun 0 set RunIsOn 1 for {set i 0} {$i < $n} {incr i} { if {$StopRun} { set_message "Run Stopped!" "" "yes" break; } iterate; after $Delay; if [check_infinity] { util_error "To Infinity and Beyond! ($IterCount) $xy_msg" break; } } set RunIsOn 0 } proc stop_it {} { global StopRun RunIsOn set StopRun 1 if {! $RunIsOn} { set_message "No Run in progress." } } proc iterate {} { global Curr_Run_x Curr_Run_y global Curr_Run_previous_x Curr_Run_previous_y global ConnectPoints LastPoint Canvas PointColor PointCurrentColor global RunCount IterCount RunTagsList RunCoordsList LineColor global xy_msg set x_old $Curr_Run_x set y_old $Curr_Run_y set Curr_Run_x [map x $x_old $y_old] set Curr_Run_y [map y $x_old $y_old] set xy_msg "x: $Curr_Run_x y: $Curr_Run_y" set_message "Current position($IterCount): $xy_msg" "noprefix" append RunCoordsList($RunCount) "$xy_msg\n"; set local_debug 0; # if {$local_debug} { # puts "==================================" # puts "old x: $x_old"; # puts "old y: $y_old"; # puts "new x: $Curr_Run_x"; # puts "new y: $Curr_Run_y"; # } set ix [f_to_i x $Curr_Run_x] set iy [f_to_i y $Curr_Run_y] # if {$local_debug} { # puts "ix: $ix"; # puts "iy: $iy"; # } # puts "LastPoint: $LastPoint" if {$LastPoint != "First" && $LastPoint != ""} { # puts "doing: $LastPoint"; $Canvas itemconfigure $LastPoint \ -fill $PointColor \ -outline "" } incr IterCount lappend RunTagsList($RunCount) \ [list [make_point $ix $iy $PointCurrentColor]]; if {$ConnectPoints} { set ix_old [f_to_i x $x_old] set iy_old [f_to_i y $y_old] lappend RunTagsList($RunCount) \ [make_line $ix_old $iy_old $ix $iy $LineColor] } set Curr_Run_previous_x $x_old set Curr_Run_previous_y $y_old } proc f_to_i {which coord} { global Canvas_width Canvas_height global Canvas_x_factor Canvas_y_factor global Float_x_factor Float_y_factor global Fract_x_min Fract_x_width Fract_y_min Fract_y_width; if {$which == "x" } { set i [expr "int(($coord - $Fract_x_min)*$Float_x_factor)"] return $i; } elseif {$which == "y"} { set i [expr "int(($coord - $Fract_y_min)*$Float_y_factor)"] return $i; } else { return "ERROR"; } } proc i_to_f {which coord} { global Canvas_width Canvas_height global Canvas_x_factor Canvas_y_factor global Float_x_factor Float_y_factor global Fract_x_min Fract_x_width Fract_y_min Fract_y_width; if {$which == "x" } { set f [expr "$Fract_x_min + ${Canvas_x_factor}*${coord}"] return $f; } elseif {$which == "y"} { set f [expr "$Fract_y_min + ${Canvas_y_factor}*${coord}"] return $f; } else { return "ERROR"; } } proc map {coord x y} { # This is specific to Classical Mandelbrot Map global Q_x Q_y if {$coord == "x"} { return [expr "${x}*${x} - ${y}*${y} + $Q_x"] } elseif {$coord == "y"} { return [expr "2*${x}*${y} + $Q_y"] } } proc check_infinity {} { global FractInfinity_x FractInfinity_y global Curr_Run_x Curr_Run_y if { $Curr_Run_x < -$FractInfinity_x } { return 1; } elseif { $Curr_Run_x > $FractInfinity_x } { return 1; } elseif { $Curr_Run_y < -$FractInfinity_y } { return 1; } elseif { $Curr_Run_y > $FractInfinity_y } { return 1; } else { return 0; } } proc make_point {ix iy {color ""} {size ""}} { global Canvas PointColor PointSize global RunCount IterCount global LastPoint; if {$color == ""} { set color $PointColor; } if {$size == ""} { set size $PointSize } set point_name "point_${RunCount}_${IterCount}" set id [$Canvas create oval \ [expr "$ix - $size"] [expr "$iy - $size"] \ [expr "$ix + $size"] [expr "$iy + $size"] \ -fill $color \ -outline "" \ ] ## $Canvas raise $id $Canvas addtag $point_name withtag $id set LastPoint $point_name; update; return "$point_name" } proc make_line {x1 y1 x2 y2 {color ""}} { global Canvas PointColor LineSize global RunCount IterCount if {$color == ""} { set color $PointColor; } set line_name "line_${RunCount}_${IterCount}" set id [$Canvas create line \ $x1 $y1 $x2 $y2 \ -fill $color \ ] ## $Canvas raise $id $Canvas addtag $line_name withtag $id update; return "$line_name" } proc clear_it {{which ""}} { include; if {$which == "all"} { if [info exists RunTagsList] { foreach i [array names RunTagsList] { if {$i != "all"} { clear_it $i } } } return 1; } if {$which == ""} { set which $RunCount; } if [info exists RunTagsList($which)] { foreach tag $RunTagsList($which) { $Canvas delete $tag; } unset RunTagsList($which); } } proc run_history {} { global RunCount RunCoordsList Q_msg if {$RunCount == "0"} { util_error "No Runs Yet!" return; } set text $RunCoordsList($RunCount); make_toplevel_text \ .hist_$RunCount \ $text \ $Q_msg \ "40" } # MAKE A TOPLEVEL TEXT AREA proc make_toplevel_text { \ w \ text \ {title ""} \ {width 80} \ {height 30} \ {do_help ""} \ } { # should combine code with "make_text" # somedate global font fontSmall fontBig fontMenu fontTextWindow global HelpText IsApplet if {$width == ""} { set width 80 } if {$height == ""} { set height 30 } set relief "groove" catch "destroy $w" toplevel $w if {$title != ""} { if { !$IsApplet } { wm title $w $title } else { set_message $title } } set wf $w.frame frame $wf set textWidget $wf.text set HelpText $textWidget if {$do_help != ""} { set mf $wf.menu frame $mf \ -relief $relief; menubutton $mf.menu \ -text "Topics" \ -menu $mf.menu.m \ -font $font; # -relief groove \ set bf_relief "raised" set bf_border 1 button $mf.back \ -text "<-" \ -command {AdjustHelpHistory} \ -relief $bf_relief \ -bd $bf_border \ -font $font; button $mf.forward \ -text "->" \ -command {AdjustHelpHistory forward} \ -relief $bf_relief \ -bd $bf_border \ -font $font; menu $mf.menu.m; set count 0 set old_text $text set text "" foreach line [split $old_text "\n"] { incr count if [regexp "%%(.*)%%" $line range mVar] { regsub -all {%%} $line {} line if [regexp {^_} $mVar] { regsub -all $mVar $line {} line regsub {^_} $mVar {} mVar } if [regexp {^\^s} $mVar] { regsub -all {^\^s} $mVar { } mVar regsub -all {^\^s} $line {} line } $mf.menu.m add command \ -label "$mVar" \ -command "$textWidget yview $count.0; HelpHistory $count.0" \ -font $fontMenu } set text "${text}${line}\n"; } $mf.menu.m add separator $mf.menu.m add command \ -label "Dismiss" \ -command "destroy $w" \ -font $fontMenu pack $mf.menu $mf.back $mf.forward \ -side left \ -expand 0; pack $mf \ -side top \ -fill x \ -expand 0; } scrollbar $wf.scrolly \ -relief sunken \ -command "$textWidget yview" text $textWidget \ -width $width \ -height $height \ -setgrid 1 \ -yscrollcommand "$wf.scrolly set" \ -relief $relief \ -bd 2 \ -font $fontTextWindow; button $wf.dismiss \ -text "Dismiss" \ -command "destroy $w" \ -font $fontSmall pack $wf.dismiss \ -side bottom \ -fill x \ -expand 0; pack $wf.scrolly \ -side right \ -fill y \ -expand 0; pack $textWidget \ -side top \ -fill both \ -expand 1; bind $textWidget {%W delete sel.first sel.last}; # bind $textWidget <2> {%W insert insert [selection get]; %W yview -pickplace insert} bind $textWidget {%W yview insert}; # Should Fix someday bind $textWidget {focus %W} bind $textWidget "destroy $w" bind $w "destroy $w" bindtags $textWidget "Text . all $textWidget" if {$text != ""} { $textWidget insert 0.0 $text } pack $wf \ -fill both \ -expand 1; util_center_window $w } proc HelpHistory {index} { global HelpCount HelpHistList HelpLocation if ![info exists HelpCount] { set HelpCount 0 } elseif {$index == $HelpHistList($HelpLocation)} { return } incr HelpCount set HelpHistList($HelpCount) $index set HelpLocation $HelpCount } proc AdjustHelpHistory {{direction "back"}} { global HelpCount HelpHistList HelpLocation HelpText if {![info exists HelpLocation] || $HelpLocation == "0"} { return } if {$direction == "back"} { set new [expr "$HelpLocation - 1"] if {$new < 1} {set new 1} } elseif {$direction == "forward" } { set new [expr "$HelpLocation + 1"] if {$new > $HelpCount} {set new $HelpCount} } set HelpLocation $new $HelpText yview $HelpHistList($new) } proc make_message {} { # MAKE THE MESSAGE AREA AT BOTTOM include; label $Label \ -font $fontSmall \ -relief groove \ -anchor w; set_message "Welcome to $Program!" "noprefix" } proc set_message {{msg} {flag prefix} {flash no}} { # SET THE MESSAGE AREA TEXT global Label msg_prefix msg_flash generalBackground global Msg_width if {$flag == "prefix"} { set WidthMax [expr "$Msg_width - 19"] } else { set WidthMax [expr "$Msg_width - 9"] } if ![winfo exists $Label] { return } if {[string length $msg] > $WidthMax} { set msg [string range $msg 0 $WidthMax]; set msg "$msg...\"" } if {$msg != "NO_MSG"} { if { $flag == "noprefix" } { $Label configure \ -text "$msg" } else { $Label configure \ -text "$msg_prefix $msg" } } if { $flash == "flash" || $flash == "yes" } { $Label configure -background $msg_flash update; after 600; $Label configure -background $generalBackground # update; after 200 # $Label configure -background $msg_flash # update; after 200 # $Label configure -background $generalBackground } update; } proc flash_message {} { # FLASH THE MESSAGE BOX set_message "NO_MSG" "" "flash" } proc stop_watch {x} { # MAKE CURSOR A WATCH WHEN USER SHOULD WAIT global Entry; if { $x == "on" } { . config -cursor {watch} update } else { . config -cursor {} # $Entry.entry config -cursor {xterm} update } } proc wm_comment {{comment ""} {both 0}} { global Program IsApplet if {$comment == ""} { set comment $Program } else { if {$both} { set comment "$Program ($comment)" } else { set comment "($comment)" } } if {$IsApplet} { set_message $comment; } else { wm title . $comment; # Window Manager's title } } proc util_center_window {w} { # CENTER A WINDOW IN MIDDLE OF SCREEN global IsApplet; if {$IsApplet} { return; } wm withdraw $w update idletasks set x [expr [winfo screenwidth $w]/2 - [winfo reqwidth $w]/2 ] if {$w != "."} { set x [expr "$x - [winfo vrootx [winfo parent $w]]"] } set y [expr [winfo screenheight $w]/2 - [winfo reqheight $w]/2 ] if {$w != "."} { set x [expr "$x - [winfo vrooty [winfo parent $w]]"] } wm geom $w +$x+$y wm deiconify $w } # proc include std global variables proc include {} { # "COMMON BLOCK" OF GLOBAL VARIABLES uplevel { # Globals: global Fract_x_min Fract_x_width Fract_y_min Fract_y_width FractFile; global FractInfinity_x FractInfinity_y global Entry_X Entry_Y; global Debug global font fontSmall fontBig fontReg fontRegSmall; global fontMenu fontMenuLarge fontMenuSmall fontMenuVerySmall; global fontTextWindow global PointStartColor PointColor PointCurrentColor PointSize global LineColor LastPoint FirstPoint global RunTagsList RunCoordsList; global RunCount IterCount RunIsOn global Update_XY global Q_x Q_y global Curr_Run_x Curr_Run_y global Curr_Run_previous_x Curr_Run_previous_y global Delay N_iterations global ConnectPoints global debug; global Program my_name; global generalBackground genBG genBGLight genActBG genSelBG Green global WarningColor global XY_Entry_Width global Canvas Image global Canvas_width Canvas_height global Canvas_x_factor Canvas_y_factor global Float_x_factor Float_y_factor global MenuBar global Label msg_prefix msg_flash global Text_height Text_width Msg_width global tk_version tcl_platform OS IsApplet; global button_bd button_padx button_pady global OutsideWorld # end of up level source } # end of procedure } proc initialize {} { # INITIAL "COMMON BLOCK" OF GLOBAL VARIABLES # do following script up one level uplevel { # Initialize Globals: set Canvas ".canvas"; set Image "main"; set Fract_x_min "-2.75"; set Fract_x_width "4.00"; set Fract_y_min "-1.25"; set Fract_y_width "2.50"; set FractFile "mandelstep.gif"; set FractFileDOS "mandlstp.gif" set FractInfinity_x "10.0" set FractInfinity_y "10.0" set PointStartColor "blue" set PointColor "green" set PointCurrentColor "red" set PointSize 2 set OutsideWorld "INSIDE_WORLD" if { $IsApplet && $OutsideWorld != "OUTSIDE_WORLD" } { set PointSize 1 } if { $IsApplet } { set PointSize 1 } set LastPoint "" set FirstPoint "" set LineColor "gray" set RunCount 0 set RunIsOn 0 set IterCount 0 set Update_XY 1 set ConnectPoints 1 set Delay 10 set N_iterations 30; set Text_height 33 set Text_width 85 set Msg_width 120 set font -adobe-helvetica-bold-r-*-*-*-140-*-*-*-*-*-*; set fontSmall -adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*; set fontBig -adobe-helvetica-bold-r-*-*-*-180-*-*-*-*-*-*; set fontReg -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*; set fontRegSmall -adobe-helvetica-medium-r-*-*-*-100-*-*-*-*-*-*; set fontRegVerySmall -adobe-helvetica-medium-r-*-*-*-80-*-*-*-*-*-*; set Debug "1" if { $OS == "windows" } { set font "Arial" set fontSmall "Arial" set fontReg "Arial" set fontRegSmall "Arial" set fontRegVerySmall "Arial" set FractFile $FractFileDOS } set fontMenuLarge $font # set fontMenuSmall $fontReg set fontMenuSmall $fontSmall set fontTextWindow "fixed" set fontMenuVerySmall $fontRegSmall set fontMenu $fontMenuSmall set debug 1; set XY_Entry_Width "12"; set MenuBar .menubar set Label .label set msg_prefix "Status:"; set msg_flash "white"; set startGeom "+10+10" if { $OS == "windows" } { set msg_flash "$genActBG"; } set WarningColor {light yellow} set button_bd 2 set button_padx 2 set button_pady 1 # end of uplevel } # end of procedure } #proc wm {{a ""} {b ""} {c ""} {d ""} {e ""} {f ""} {g ""} } { # puts stderr "wm args: $a $b $c $d $e $f $g"; #} proc util_check_platform {} { # DETERMINE PLATFORM WE ARE RUNNING ON global tcl_platform OS IsApplet argv0 embed_args; set OS "unix" set IsApplet "0"; # if { [info exists argv0] && $argv0 == "tclPlugin" } { # set IsApplet "1"; # } if { [info exists embed_args] } { set IsApplet "1"; } if { [info exists tcl_platform(platform)] } { if { [info exists tcl_platform(osVersion)] } { set osv $tcl_platform(osVersion) } else { set osv "4.1" } if { $tcl_platform(platform) == "windows" \ && $osv < "4.0" } { set OS "windows" } elseif { $tcl_platform(platform) == "windows" \ && $osv >= "4.0" } { set OS "win95" } elseif { $tcl_platform(platform) == "unix" } { set OS "unix" } elseif { $tcl_platform(platform) == "macintosh" } { set OS "macintosh" } } # puts stdout "set OS to $OS: $tcl_platform(platform), $tcl_platform(osVersion)" } proc os_is_dos {} { # DETERMINE IF PLATFORM IS DOS global OS if [regexp {^win} $OS] { return 1 } else { return 0 } } proc util_about {} { # SET MESSAGE AT BOTTOM TO COPYRIGHT global copyright set_message $copyright "noprefix" "flash"; } proc util_help {{where "toplevel"}} { # PRINT HOWTO INSTRUCTIONS global Program copyright set program "\"$Program\"" set help_text \ "===================== Basic Idea and Usage:%%_Basic Idea%% ===================== Click on a point in the Mandelbrot set (technically the white areas). To see *why* your point is in (or not in!) the set, Click on \"Run\" to start the Mandelbrot iterations. If the resulting \"orbit\" does not go to infinity your starting point is in the Mandelbrot set, otherwise it is not (and the color assigned to it on the background image indicates in some sense how \"far away\" it is from the set). The different regions of the fractal correspond to different kinds of stable, closed orbits. Neat!! ======================== How to use ${program}:%%_How to Use%% ======================== $program IS NOT a fractal generator or zoomer. Excellent programs for doing generation can be found. For example: Fractint: http://spanky.triumf.ca/www/fractint/FRACTINT.HTML Xmandel: http://chem.leeds.ac.uk/ICAMS/people/zsolt/xmandel.html XaoS: http://www.paru.cas.cz/~hubicka/XaoS/ and there are others. Fractal generation programs want to do as many pixel calculations as fast as possible, $program, on the other hand, wants to do as few pixel calculations as slowly as possible!!!! =============== Huh? Why Slow?%%_Why Slow?%% =============== Fractals are beautiful and mysterious things to look at, but if you want to at least start to try understand a little bit about them, the fractal generation programs (out of necessity) hide too much information. They basically give the bottom line: is a point in the fractal set or not, and if not, color it to show how in a crude sense how \"far away\" it is from the set. Since there can easily be half a million pixels, each requiring 100-200, or more, iterations each, it is very useful that the fractal generation programs do not show all the information contained in the iteration \"trajectories\". The idea behind $program is that by letting a person select starting positions and looking at a handful of iteration \"trajectories\" or \"orbits\" the person can begin to understand more about the different regions of the Mandelbrot set. I.e., not just whether a point is inside the set, but what sort of \"dance\" it does to be a member. It is not long before one is using one's intuition about what sort of \"dance\" a point will do before one runs the actual iteration. It's a puzzle. It's fun! ========= Mappings:%%_Mappings%% ========= For many fractals, the X-Y plane describes a control parameter of an iterated mapping function. If, for a fixed value of the control parameter, repeated iteration leads to the coordinates diverging towards infinity that point is said to not be in the fractal set. How fast it diverges to infinity is usually used to determine what color is assigned to it. This gives beautiful images! A point that does not lead to divergence toward infinity is said to be in the fractal set (in practice, if it has not diverged after some pre- defined \"large enough\" value, i.e. N_MAX = 128, then for practical purposes it is said that the point is in fractal set, although who knows exactly what will happen in the next N_MAX iterations!). Typically a point declared to be in the set would be colored black or white. They are white for $program. For the classical Mandelbrot set the iterated mapping function is: x' = x^2 - y^2 + Q_x y' = 2xy + Q_y or in complex numbers notation, (z = x + iy): z' = z^2 + Q The prime, e.g. x', means the updated value after one iteration. Perhaps x <== x^2 - y^2 + Q_x, y <== 2xy + Q_y is a better notation. Q = (Q_x, Q_y) is the control parameter of the iterated mapping function. A Q value is in the Mandelbrot set if (starting the first iteration at z = (0,0)) after infinitely many iterations the z variable has not diverged to infinity. It is not hard to show that if |z| > 2 then z will quickly diverge to infinity. ======== Running:%%_Running%% ======== When $program starts up (it even does that slowly!) it will show you the complex Q plane with the classical Mandelbrot fractal (derived via XaoS mentioned above) superimposed on the background. A little black dot denotes Q = (0,0). white regions denote the points inside the set (i.e. iteration does not diverge for those points). OK, here are the steps to actually run something: Click the mouse somewhere to select a point Q. To do a single iteration step from starting a z = Q, click the \"Step\" button. Or to run a whole bunch, say 30, in succession, click on \"Run\". That is basically it. For a Q-point to be in the Mandelbrot set it seems (to me) that it must converge to a stable n-cycle orbit. That is to say, an orbit that repeats after n iterations. The biggest round white region (the one containing 0,0) is where the iteration evolves to a 1-cycle. Try it and see! The next largish section that is a circle to the left of the 1- cycle region is where 2-cycles are stable. Crossing over a boundary inside the Mandelbrot set usually means an n-cycle region has become unstable and an m-cycle has become stable. It's fun predicting (at least I find it fun!) what the cycle lengths will be for a given region. Also, the shape of the orbit will sometimes be surprising. Run in the 1-cycle region close to another region and see how the shape of slowest dying transient (as the orbit collapses to a point) lets you predict the cycle length and orbit shape of the nearby region without even running in it! $program does not (yet) let you get into the fascinating \"super deep zooms\" regions that give the beautiful images. But many things can be learned from looking at the global iteration picture. Can your intuition learned at the global level be applied way down in the deep zoom regions? It is, afterall, a self similar fractal! ----------------------------------------------------------------------------- Now to touch upon all the features, buttons, etc. ================= Menu Bar Buttons:%%_Menu Bar%% ================= %%^sStep%%: ----- On the main menubar the \"Step\" button will perform one iteration of the mapping function. %%^sRun%%: ---- The next button over \"Run\", will do a number (default 30) of iterations in succession. The starting point is blue, the latest point is red, and the rest are green. Follow the red dot for the orbit. %%^sStop%%: ----- As the name implies, this button will stop the current \"Run\". Hit \"Run\" again to resume, or switch to a new set of run parameters if you like. %%^sClear%%: ------ This will remove all trajectories/orbits from the display. (See \"Clear Last Orbit\" below) %%^sHelp%%: ----- Shows the current help text. %%^sX: and Y:%% --------- As the mouse is moving around the fractal background, the Q_x and Q_y of the mouse position are shown in these entry boxes. If you click the mouse button the Q-value at point of the click will be \"frozen\" in the display boxes. You can then, say, move the mouse over to the \"Run\" button. You can also type values directly into the X: and Y: entry boxes. Hit in either one to \"freeze/set\" the values, then go over to \"Step\" or \"Run\" to start iterating the mapping function for this Q. ======== Actions:%%_Actions%% ======== More things one can do. %%^sLong Run%%: --------- Do a run 5 times the normal length. %%^sX-Y Trace%%: ------------ Pops up a text window with the history of x and y values for the latest run. %%^sClear Last Orbit%%: ---------- Remove the latest trajectory/orbit from the display. %%^sExit%%: ----- I forget what this one does :-) ====================== Options:%%_Options%% ====================== Set the parameters. %%^sConnect Points%%: --------------- Checkbox to set mode to draw lines between the iteration points or not. %%^sSet N iterations%%: ----------------- Set the number of iterations in one \"Run\" click. An entry box will appear on the Menu Bar. Type the value in the entry box and then hit to set it. %%^sDelay%%: ------ Set the time delay between iterations in the \"Run\" action. Not that $program is blazingly fast or anything, but you may want to slow it down a bit to watch some complicated orbit. Enter the delay time in milliseconds. There are 1000 of them in 1 second. As in the previous paragraph, the entry box appears on the Menu Bar, Hit to set the value to what you typed in. ============================================================================= Well, that's all for now except for some misc. notes below. Please send suggestions, comments, etc to me at runge@crl.com The main thing on the TODO list is: Let user drag out a region of the plane with the mouse, a second canvas appears where the region is zoomed (maybe call xaos or something in \"filter\" mode, or just scale?) Then the user can click on the expanded view to select the starting point with higher resolution. Iterations should be shown on both the main and zoomed canvases. $copyright ============================================================================= %%^sMisc. Notes%%: ------------ One can solve for the two main regions of the classical Mandelbrot set by solving using some simple math: If you denote the mapping by f(z) = z^2 + Q, then look for fixed point solutions z = f(z), this will give a quadratic equation for the 1-cycle orbit z's. By examining the derivative df/dz at the fixed point one finds it is a stable orbit when |df/dz| < 1 (hint expand about the solution z + dz and look for the condition that |dz| shrinks). The formula |df/dz| < 1 gives exactly the big cardioid shape that encloses the point (0,0). Seriously cool! What about the stable 2-cycle region? Look at fixed points z = f(f(z)) this will give you a quartic equation in z, but you can factor out the 1-cycle solutions found above (since a 1-cycle is clearly also a 2-cycle), this leaves another quadratic equation to solve for the \"real\" 2-cycles. The condition that is it stable ( |d(f(f(z))/dz| < 1) gives the equation for the circle (centered at (-1,0)) immediately to left of the 1-cycle cardioid. The circle's radius is 1/4. Well, the math starts getting hard at z = f(f(f(z))), (3-cycles) and above, but you can let $program do all the work for you! Start a run inside a given region and what what sort of n-cycle it settles into. In my non-rigorous view of these things, all of the infinitely many sections of the mandelbrot fractal can be thought as some sort of stable n-cycle. As n goes up the region of stability gets smaller and smaller giving rise to smaller still regions with longer period orbits. And this continues downward to smaller scales without limit. Amazing! Another way to proceed is to look for Super Stable orbits. These are ones obeying the stability criterion: d(f(...(f(z))...)/dz = 0. It turns out this requires one of the points on the orbit be z = 0. The control parameters corresponding to these super stable orbits tend to be near the center of its region, i.e. farthest from the region boundary (where |df(...)/dz| = 1). Anyway, it is not too hard to get a symbolic manipulator work out f(f(...f(0)...)) = Q, then solve numerically for the roots Q of this polynomial (it is all Q, no z for this approach). Sure enough, the roots are right near the centers of the corresponding n-cycle regions of the set. " if {$where == "toplevel"} { global Program make_toplevel_text .help_window $help_text "Howto use \"$Program\"" "" "" "true" } else { ; } } proc util_error {{message "Error occurred."}} { # REPORT ERROR TO MESSAGE BOX global IsApplet if { ! $IsApplet } {bell} set_message $message "" "flash" } proc util_quit {} { # QUIT APPLICATION destroy . } proc app_defaults {} { # SET UP APPLICATION DEFAULTS global my_name; global generalBackground genBG genSelBG genActBG genBGLight global tk_version tcl_platform OS set genBG grey80 set genBGLight grey75 set genSelBG grey70 set genActBG grey65 if { $OS == "windows" } { set genBG white set genSelBG "#A4C8F0" set genBGLight "#A4C8F0" set genActBG "#A4C8F0" } # puts "genActBG $genActBG" set generalBackground $genBG; option add *selectBackground $genSelBG option add *background $genBG option add *activeBackground $genActBG option add *frame*background $genBG option add *scrolly*foreground $genBG option add *scrolly*activeForeground $genActBG option add *scrollx*foreground $genBG option add *scrollx*activeForeground $genActBG option add *Button*padX 2 option add *Button*padY 2 if { $OS == "windows" } { option add *Button*background grey80 option add *Button*activeBackground grey80 option add *highlightBackground $genBG option add *frame*Background $genBG } } proc create_image {image} { include; if {$IsApplet} { set data [small_gif_data]; image create photo $image \ -data [set data] return; } set file [dump_gif_file] image create photo $image \ -file $file after 500 if ![os_is_dos] { catch {file delete -force $file} if {$OS == "unix" && [file exists $file] && ! $IsApplet} { catch {exec rm -f $file} } } return } proc dump_gif_file {} { include; if { $IsApplet } { return [dump_gif_file_applet] } elseif {$OS == "unix"} { return [dump_gif_file_unix] } elseif [os_is_dos] { return [gif_file_dos] } } proc dump_gif_file_unix {} { global argv0 IsApplet; set pid [pid] set tmpfile "/tmp/mandelstep${pid}.gif" set in [open $argv0 r] set out [open "|uudecode" w] if { ! $IsApplet } { puts stderr "creating tmpfile $tmpfile..." } set on 0 while {[gets $in line] > -1} { if {$on} { if [regexp {^begin} $line] { set line "begin 644 $tmpfile" } puts $out $line break; } if [regexp {^BEGIN_UU} $line] { set on 1 } } while {[gets $in line] > -1} { if [regexp {^END_UU} $line] { break; } puts $out $line } close $out return $tmpfile } proc gif_file_dos {} { global argv0 FractFileDOS regsub -nocase {\.tcl$} $argv0 {.GIF} file if ![file exists $file] { set file [file tail $argv0] set file "$file/$FractFileDOS" } if ![file exists $file] { set file $FractFileDOS } return $file } proc small_gif_data {} { # this is the 640x400 GIF in BASE64 format. So far, only the # tcltk plugin can read this format. set data { R0lGODdhgAKQAecAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAP///9/h37/Ev5+mn3+Jf19sXz9OPx8xHwAUABovBjVLDU9nE2qDGoSeIJ+6J7nW LdTyNLnYL5++K4SkJmqKIk9wHjVWGRo8FQAiEQI2KQVLQQhfWgt0cg2IihCdoxOxuxbG1BSv uxOYohKBiRFrcBBUVw89Pg4mJQ0QDBQTERwWFiMZGyscIDMfJToiKkIlL0ooNEIjLjofKDIa IioWHCIRFhoNEBIICgsEBSYHIUELPVwPWncTdpIWkq0ar8gey+Mi6MohzbIhs5khmIEhfmkh ZFAhSTghLyAhFTExFENBFFVSE2diE3lyE4uDEp2TEq+kEpqSE4aBFXFwFl1fGEhNGTQ8Gx8r HAsaHiYeGkEjF10nE3gsEJMwDK81Cco5BeY+Ask5A6w0BJAvBXMrB1YmCDohCR0cCgEYDCAj F0AuIl86Ln9FOZ9QRL5cUN5nW/5zZ+FnWsVcTqhRQoxGNnA7KlMwHjclEhsaBiUeEjAiHjsm KkYrNlAvQlszTmY3WnE8Z2Q4Xlc0VUowTD4tQzEpOiQlMRchKAseIBQtLR48OyhLSTJaVzxp ZUZ4c1CHgVqXj1CIgEd5cT5qYjVbVCtMRSI9NhkuJxAgGRQuIBk9KB5LLyNaNydoPyx3RjGF TjaUVjKDTC5yQiphOCZQLiI/JB4uGhodEBcNBx8lJSc+RC9XYzdwgj+JoUeiwE+731jU/k66 4kSgxjqGqjBsjiZSchw4VhIeOgkEHychNUU+S2RbYYJ4d6CVjb+yo93Pufztz93Stb+4m6Ge gYOEZ2VpTUdPMyk1GQsbAB4dHzEgP0QjXlcmfmoonn0rvZAu3aMx/ZEt3X8pvm4mn1wigEoe YDkbQScXIhYUAyIXCy4bFDoeHEYiJVIlLl4pNmosP3cwSGkqQFslOU4gMUAbKjIVIiUQGxcL EwoGDB8aIjUuOUtDT2FXZnZrfYyAk/b09ywAAAAAgAKQAUAI/gAlCBxIsKDBgwgTKlzIsKHD hxAjSpwoYYLFixgzatzIsaPHjyBBUhhJsqTJkyhTqlzJsqXLlzBjyjwZsqbNmzhz6tzJs6dP ixSDCh1KtKhRoj+T/pzJtKnTp1CjSp2KUqnVq1izatV4tKvXr2DDCtyKlarZs2ilVljLtq3b t3DZWphLt27cu3HTmiTLt69fnmIDCx4s+O9NvYgTJ8bLuPHaunQvSMaAIcMGEis4aNCw4cOG DBgkQx4N2bFpvYZTq75KuLXr1w5XY1RMuzZU07gdkx4tuXfvyhk4dPjwwUOHDiM+U/bNvPmF 0blxI5ZNvfpF2NizE05tu7v3ltHD/pveTd6Cc8qUM2TYzJkDBw8hQMDfwH7zBg4l7rvvEKKE ewih9WaXeNJNZ92BWGmn4IJIbfXdgxCOROCEjZVnoXm+oaehehyux5l+wnnwwQgohFBcBxxs oCJ7oGno3G4UnqYYgjTexOCNOC50VYQ82hbjj3ddaCFzGqanXn32bTCCCiOIMEINTZbgQgsx 2JCCDyKAAEIIKIyQogYdqlckc0LOBeRdttWo5nU5tonjUj3GmdaZdLpVJmnOTUaZBhx8QIIH HohgAgs6qHBCDvERBwIJKvRgQgkoqICCC05AYOmlENzAQgkihBDCCB+gKFwH8HWpQgiftUjm naTV6d2a/tS5KSt2PMlp61R11slqnrxeUCR6HSa53wcgxKADEpgmq+yyyvZgBgSdYOHGCiPI hyJ9YP7aHKtCTvggrH3NKm5hON1qLlO5/nhhr+xm+OuvYR7Z3gcpdHoCD8zmq++yQHShggoz rAFCB9jG+26A7YrGbWkFfgcua+NGfJRN51bMUrrR7frbu/Fu1gEKBccrcphIIqniye6NKuIH IaSQCr77xowpEC+okOWJKZ+MbcksdqhtwkQCq6RmyylsZmMRPgyYxExTFJLFUJOEMVwL43ke sOup+B4IIsQAAwpGpCBEDCQkatxxouqss3AibJFCFZlKIUMKnGrJpRpFQBDE/gsmnNAGEH5A MEQSUGDRRQ0QPFGGpc8uAkEXcoxyaShxcIEFBJVayoMkEHwBQS2W8oFCIhDo0cMImNmQhSQt TFEcoFuSMCkNQehghQdfbjby7vJy1gEINpTgWbZFPzcgmkkrXVPTzMfmUdS35lp11QnDm/Wo pBIXAgw47LAvDD0sMUJ8i74whRJxrMDCGNzL7P778Mev7Bg6cEq+GSEcl/J+InLtwg4qqBcI PvCCLSkqBCR4AeqKUDb5cAA0RmMYXOKkvI4074II6Qj0HkSg6XmQPEBzF9Y4VB+tEQsGK1CC DNznA/m58IUwjKGyoACBEpQgDz+QmQ+SUIMTpGBg/ilaEfF8Ux68ULCCbMKgEjeywTnl5oNQ XFcIm7Oh3t3nB8URgf5URqxCoe4Ja5hB3mRIxjKa8Yz5qkEKSCACEZQAd7ob07bIwxg5VVCJ GMxIE2MiHshMkV1RjMwfqXgw4HiITyYYAQ1iQAMa9AAMmciCDVhhBAjsQBEBtJQe0MjJTnoS hjNQQSD6YC39haxFLlpVq5BmR1jhkXmzqVi6ykPII6moAycgGJjEVMhe+vKXwPzl7pKkH1KJ 6FMlsEEVhoCDPXzymdCMZvx04AJOhSptO2PPfUjwAQ0UbZWsbCWNXimxWOplakHiVq8wcB8R wK5auNMZz+ojMpMJZwQ//gxVELO5S975s2PavI8HXtCCNzQBAkTgRBcuRQRpOvShEN2XDZZ1 gxxsygQ/IAHqBgZB4x3PMbcaJznFdZGnoFM3UcxTkUiGMi6GwAREcAELTuCCIdQNBCMoQSlT dhxAeUBLbkQBDGhwBSTgQD4+BUE1s2Qc95xsniVUm35EJAIV0CAFKVgBDSPK1a56FQI2OAEb taRP+nAIPao8Wm5Cap2RzsoiLzkpSgNZF0IWkoQmyx6xRJACHMygkssqxBBSgIIWQEAHNIDf EyDgCAjQQA6XeoIKSkACE6TABWMIAaC2uD/s9ZRlL6CFFdLw1dKaFqKruJmo3OOBEaiKiBKM /g5bZeNWN00gJXKdK13rKsJekhBtndXriEaATxO4wAYzGMRpMSUHFQRBgFqK7pYQOKkWLve6 2EVjCyIhCxicQAQvOEEIhOBNhHk0trKdbWpqm6PbSi23caHrOtPDJweKgJ/z1Br/RESCyt6g odmN3wxWYEMbniDACE5wDHFQghbAQAUPRKuA6Ogt9f6FvTiSEHwfw9tB2vWueP2QcD4gAhYY 0KfEOtUAi0MsoJLgBCyYgYJdeIcYvGCFM86xjpWFhhTwoAi7LN6Ei0ghc6kGwzeSi5CqBywN eCDIwLyakf65nn2qrU+gIo6f+muCFdDAEjGTAgzAt+MXbrXMaL4u/hHEcIKQyTGtFC6yrY6M 5AWl+c54zrOeI3qDFSTSRGcLYs94KeE5WuhHFg5XnRWkZCmya0NOhvIvpWzIf/JJqibMMnH6 W1kvg3lfYibznvd15lGb+pNrbrPuUCnkIRNZzuK88KK1o+EN+9HDHz5YsIQ1nBKfGFApThSL oyuCF8f41Jiq8Y2Rzexo9vjHUDZ0nAlk5PXOOjvurfWG2yJfXjWZA/bFL8/0GyL++hfAex5w gUtw4Ga7+5kMdjCEUQlbGFV4znS+Nq1wu+347vbWG/PlbznLPy0Tt7jHTW52m/vcLEnXbtR1 gXXfTXEZbre73w3veMtbb/SuNdF+0bd2/uDqkn5T7d9zybX1DqlNvXKtr39llmAJa1jEKpax joWspSRLWctiVrOB7qxnsxeC0I624kh3YWoHuNr3uLbV0BEPyGUtclqRvCkmt1NKKV3prOn3 sy+N6UxretOc7nQ/xvwp1yA11KIe1ac/Xaq1nCpEqH7oyu8hsVWxqtWk+z1fYR0r0790Vqh/ VEaxpm3VsV1SxJh8Yets5zsdKE+717OE98znteq+aip7PqrvIahBEapQhv7d7xNVVkUvmtGN dqCjUUf8EQ+0eAWZ01yzBGHQbLkBXOqy8MEMvvCHX8XLt9SYLMupMpnpzNOPmprW3CLn7cMB bnL8vHSRfY/U/lT7Belxj3END8Bx3XEokj/gHOsdBxK5yEY+MpKTrOQlM1k65884lKMs5bU6 /7PyHz4viSdS3Wd7GgF+ZpExKLdb51d82sQBWBQoW/RZIOBFJABGYmR/2aVGbORGcEQ8heZ/ /+cWAbgmA3gjGmSAtNFBCUg9f7RSuyYsJ5RCOBYzE4eB8kNDNoRDOsRDPgRETzVErhZ7E7R9 SAQUJWiCz4OCHKQrK8gb7WI97YE2K7M93fM94TM+WpJA55M+69M+fkc/9qMl+ENwIbJX/xNA N1NAJkIsCKRAJMBA8YE7sAdObzF7RZhER4iEH6GEcmJrW/dhvLc1XfM1YTM2DXQi/sBlZWvT AW3zNnEzNzd1N3mzN33zN4EzOIVzOImzOBDQOI8TOZNTOZeTORCwOZ3zOaEzOqVzOqmzOq3z Oj8VcbRjO/E0aJ5nRb8TPMNDbxFkAXWUPHfIEXkoKxTDh9GTddx2J71VfHj1Mad0iyxXMnjH RSzjMjBjRjRjMwPUVHQ3fSUTJv03RRsyNNd3XiAFIcG4PMP4VuVijLKEjOlES+enJwIHUPdB L/ZyjZ7UL/8SMAPzjIT2ZgkDRR/nMOmYE+sYMbXijlADjxWijC2YfvLydcRiLMhyRs4CLdJC LXNXMOHYi1F0b91xkD+RkE0DJwzZkA75kCwoZXziJ4Ai/iiEYiiIsmKL0iiPEimTQoqYoin2 8yn6pDJcsiSowktwtjCuMpIkmSAm2Tw7kpLQs5J4YX7LaEjSqCRM4iRQ4kZTUiVX4nBDSXjg mEpB+GoYkyZLGXJNuUQOApVRKZVaNz1B44K7Rm7ZQyKAtnk7w2rmVZZqhU60kZZttZbkxB1u +ZZSCXmAeEhTFYeoYk/5wVP98R/mFYJJiRqCCS6EiWHWcZhNlHVLdh7qMWKImByvBTRCSCcG kpnpuJmzBi6euUdyZTW+UhmXkRn24RlzWCaqmRas+Ztc4ZpVF4yxyYcYY5YiiZnAuZzqKJwD yJzFGZ0Ww5zUmRXOOYzVWYDS/rmdVJGd3qlo1ylygsmdKXmW6Pid6OkR4VlnFUSeKik9dfWB fmlvMbKa6cma6zlSNOKeuOeHu7F7HsIBIqAZ0ZYnh5YrynmfD5OfF7Qa/NmHDqkxtbQBLaM+ XQJEI9BPfFlFnbGbvjg1iaGg1cGgCtkXD9ojcMlhLYl+XddyioIC7nQcflJNmkUqJJAihCZt f2me9imiTEmi7ZUVJwohKfoWHzSXdIlXKNNTDaYCEDADJ+BAdMd/AgmSqZkugemjPQGkDKIU Q/odRXpyHmRXSuoBNKAlTVdwONVlUqAsSRAELlAvnhJP3hhHfVk1PJqlWvoRXGp1C/mlKRim cSmh/vM1ZfYhhT/1JDfwL42UAizgSPGzWBBgBRu4JW6kAlaiWSqSoyA4PUDyKnuKEX3aGjoB qIshqCoqj+TnWyQThT4UCP11AjjQST/gAmKVl7kDfFXaqZ4aHt8ioqMqFu1oqgeYomUijsSX pL0TUMUEH0DABZSyBp0UBSgQfZtniz7zLvNooPRpROeZncHqFTVBrLgCmitam1UWAlEaT+5R AiNwNh/AbilAp3aXJB3QA+K1AiBQAisQlPsFd8DGhiHgJCWQAhCQBDIkVp0ibJslhWSAO92o NaTCgWKpq8JHQgKVAm3WUeb4i9+Kn+FaFHtIrugyNSv4aCvFJzmwJf8i/gTVegJCAAUo5AJG BSUlUCVKwAUnIANnI4WKMgKgwAOrkCxQsAKX0gNRkGN8wAJKAAFvUAJUEATJ8jVMda0mswEi oE+mhHfDEQJIEAK5wx4BQod1yCOCGbJCkYQkuxLq0oRDAjQrx5j30QFCMAUztQIXGTMrcAIo QAsQMAk2uCw5YClEwAJlo2WxQwMzEANHQAaYogOmcARXMKlKQAON0imWFQO/903dWrZm25po KxEcsbbaNh5uK5cexowhtjZctHYmwAM54ApcELifhDjuc2OVZQKfohmcyqsfCoBEeEeh+xDa 6Z4IeLp/mLouOBxsdEw9QAJMMAMzsLDSFQJs/tADrEC7p4UFL5ACJjBWOCNokiafVrqjQ2iH JDi8DPF9KBgjtJkevdd5HLut9IukwQRQ7fEenCICJ7ACcKMsSau9M9YKMUAILSADPNADIAOQ AQmC2geMNaK+CnF73ZFbx6pSJARuoFKxYylMLPUegKahFjt8lpa/w9ECOJBIbWQCTyAKENC0 ApxnYdUkbTQCxuUDNdpaNwABWgSEV4o8I6h4EmwQjacWyHikKmWovccpCvQ6N5CoEEsq8DSl zIp2IcACMVACOHAC7/oBK6CXLXWj4lavzCqxpLIlI5AEPtCmMfx3TZBIWwIDxuEBp4l96RXE 1jbEBHF14Reh/8Z1/iPEcuQGOzh1s6nXBG/wAjFgBoYbH58yAxrVJDlVWN6DKYlgAxq1gagz BDbQA1ACdx9gAquFacF1xjyQCJ9wA53Qxn4nA09QO7W4avL5w+GEvvmmxxVxMSvptvara8v6 ddmDxiagBDl7WkbQAicABKezjQAbsMmHBEbLyjYIBd9FAjMAArxbmbR8jnjMF7g8Fiexy00o QlQWVb3nxTxwAiqwApMCBCpQMynQAjWoYEMwA0+wgW3kJJV1BNJsf00gBE3lkUI2bb6Kb7cs wdlmrv+5gBJpGSKCAlGKTdPIU8OhAyZQbI/qAj2AbFAQQFnVz/aXtcCWKoZH0AXdzVrx/s0U IKZ/XL+1eb/LSn3uMSKMMiUoEAQmgAImAAM5IAMxoAJ28CiUVQJWhXQ6oI8g/W5gkFMEymov cqDJGbxUN8SOVqgrdUua9R4M3KoaMBxIwtWgNxyg0rNpxzUmIAMq0AIs4AL8nNSQkNSnxgr6 un9USr7l63EnbcvejMtV7W0cg9W44wFb/YJeTU8vGNYjgog9BTuCgtZqzdZw/dZwPWpy7YOD tqt3bZkFqddkodIsrYAufbExnb9YVtMtcNM5vdM9/dNBbUMkQNSJVXFHPdkUt9T+Yaetltnm e8co/aNDnNCPp3ur2tAb8NARHbEttT8yatEYTQMazdEeHc20/l1xIi0iJH2nyJnXUj3Vvx3O fnyyAVfOzDocK5DO69zO7xxA8rxj9XzP+VzD+zzdFffPAY3bvAprnL3X35xt/PbdCdjLEgl6 rfspw1zMpnXMybzMsAiwWvYp0CzfSEfNxXbN2ezA1GbQB63HfFxy4gzaAF5pAv4eapdTVWIp iKzIjNxAjxzJBEvJyXLJmQzfnOzJ74piopwzUlXKP3XKqbzKED5qrgzLYdu7ICl1GL4a37zH G25SRzymSWyVSwxeY+0BT4xTUdxaUsp5x8cfWKzFXCwiX6yI+iHGZAxVV9ZTaKzGbPzje/bG 1bI9c1zHeO2tvQ2eSV4RRewdFhya/qJ5JBr8ARycrR4cLAIVwiKTrIE8MjJ9wilMwyzswjDM 5tc1w/lswxKXwyOwwz38Wtvsufmd4UnOvgbovk6IrvGroX3p0vRLfPg7Vfvbv/+bLAEs6Q9F wAaMwAosRIf+gWQLxNuNIHd+EMVLnseLvEiMa9bDvO7EMs8bvdPrKdV7vdlL62fEvd4Lvtyo 6xv61L3u6Z+rmcEu7ExEuuJn7OqkvFP2gqwrgW70urE7u9SuL7YrM7hrArrrJZKmo3O+FnVO e+GeQSdIuv09IeZOm0+YpAElHHV7t3m7L3vbt3/LyoOLUI2MuAikuIzruJcCuZJLuZbbA5ib ApprVpzb/u1s8eng/u8JMbIC38e5h3IoC2kcsLIh0LIvG7MzW7MkbgM5u7Nk7XJAK7REK91I q7RM67RQK7WYQrUdiV8qkrUosrXrzjJfG7abMbad/uvBqPLr+zQtX7LBrZgbk67rmiLt+q4y Kq/0Wq+3hK8hoK/86q/l1swHNLA5ZbAIG0MKC+3E0bA99bA4vqSB8kaBjugY+x4aqxyuVssG +Ztc7zzF+PVYZ6x8zmSInu6jfXzOCq1OIK2cRK3WKr4iPMK5Tb8mfb6NX52PHxGlKvm3gaoV UPno3tATKRyvGquzykm1eqs4c0oHwyv/ZuSgqqCrPxE+4frlCvuxL/ZWraSI/opTNbCoVnVV j7rRNzeplTqwRJ2pgn3d2B1In6qUoWqExe80SYH8VKH8qXquL12mZwpEwdU/NrwCa34pbxqn C0unY1zH2MebWIqWADFB4ECCBQ0eRJhQ4UKGDQtKgBhR4kSKFS1exJhR40aOHT1+lOhQpEAK JU2eRJlS5UqWLV2+hBlTpsoKNW3exJlT506ePS38BBpU6FALF4waxZBUadIMTZ1q0LBBKocO HTyUaKECwowTIDxwACsVqtOlSY8eJSq051q2NWe+NTlS7ly6deWCxJtX716+fTnaFQlX8GDC hQ2nbJtY8c60jYOeRbrUaVOoUTt8+AAChQgPVT+Q/nBRIkRnDyQ4bGiqFPKFoYtduz3cEvBs 2rUB+8WdW/du3hJsB44dXPhww6+N83Q8dHXkDBtCpFjBAsUIEB04jNAwuazk5h8yYDAa9Hhb 4ih/n0efnmFv9u3dv6eoXm55+vXtIx7v2jFkphmgchCBg7G+A2851hzLb6f65GOwQQcJgi9C CSfE7UG77sMww/ISZOwx1VZLTjwO7bOwRBNLpDBFFVf06MTfNIQxxvs41EnGk1zEMUccWeSx Rx/j0/FBG4ckskiYgkQySSUF+rFJJ1VcUkgjp6TyviivxPLEJ7fkkrcsaasyTDGr/LJMM+/q Mk01PzqzoTHfhDNO89qk/vPLNe/EE8g6SZKzT/poBDTGPQfVMk9D06TTT0ULA/SmEJMb0UpC J/3tUEud/HJRTWVqNCflMGjOOg3Kag68R38KdEFKVx3pUldXjHJTWVvqFDmi+AM1qg08EKED 1AiE7NROSWS12IdeRfa9JGdl9qRa2Qpxtf404OADDzYY60MD0SLq2QpUNXbSZMf1Esdmz/UW 2lMNZCoqD0yAAIIRfM2OQG0v2C61A1FNl9hwzyQ34L5OPHfWdBU7FSh225VqA6o8+MCEr7Ct d7LJoNoABAG/45bffsH9N0qBR2ZTyoI3PXixhB+Tljv/MObAAxB6SCEEjU+bqoMQQjgBghJW /ggBW33PUitlDENGkmSlM2rwZJRT1m9lls/K92KYHzZhBBVEIGGHna3FecClQGwN6gyRLnRp tSOSz+lFoTZOaqFwJdVijKd6GIQQUBDtA+vCFrssstOC+2y0G1x7bfTcVhTuuOWeOrK6rY6K qhBEwOyDEEagYYitverMOoq1E5zoR43W8HD0Elf6RcbldPxxyH9qedoXwmq44bw3V6GWHlq4 wYh4fWjBhBN+HsFvsSomvcCOhf3YcNVvYz3g2l6PM3bZIV+YMpitAqGEEqytyqrM9BbBBBSa iLf99ovYYQsSMOsMd92pKgE1s56X+1lBp59L9cYFJuyJSXuvmd22/o6iFP847APFMwEIQCAC FEyhBCIQgQ5GMAISiIEIPuDBEDbhvva5wQlB2IENWvCCEpxABiwAXWZKQIPkiape++Pf7FIF IwCKRICvAkwBw3TAqCVMgbVj4FN0BRZewUAINIAAIOJ1hCWQ0IpXbJ8upiCdF/AtBSjIgQgu V4LkZad0OZydx45jox4q5IeWupAQp0TExBjxiAvbDqjsljOITZAEKagBGLA4SEK2TwcqIAFn cHfD7Rgojd1ao4zaaJA3GmoucjQSHdW1nzveMY+TU+IGOgACH6DgBStQQSGSAIdCthKLKSDB CFKQAhEwQUDM++QdH1k0xRBpkhOo5J3m/oNJG2nSVsnppAI/uUyLvexqVpHZCEywghu40pok JEQZWIBBFgCumfY6YzIHd7rEFKmHwUQUcIgJI2M6al0LXGYSyRLPqtmtMpXJHVge5gNYCmIH QLjmNVMYA8z9rWH3/OY8xyZOhoZHRGwx5+HQySV1rtM+7ZQb1ULlML3dE58b+AAKWGADEgSN eQn96P1yl0+wlM8DEMuMCEZwAiagIqCDzEHxSAAC+lVFn/bz6N04UINrVSyXy2FmA0PQgco4 76E8iWjIJvokN1m0PkR8JFL747DLZKWkICDB1kIwzRPcAGyLDKquuMozGKQBCS1AwQxG81KZ pYANOqCBzUKw/oRYYpCDJDAeClbwAiF84ppwgENWUGCCEsRyBGIMAQmmgLnM/GAFMKiZTz2D Ah2IjwcoIAEJUCC0ZtJTng3sgAhc8BUOAMuhQFmLkf411R8xxKobgtou54bHaVGLKpqTJRFc EIgUmKCvPA3fCUzgA7/9VJ/ga6wJVBCFeG3hBlFoQSxLYAQrtC8GELABJm463kGCAgwtkEH7 kgCIEewsBEFYxCFYAIUk/ACuQmBBDk6TVubx927gQ2VRU4NDXipItqyibY8WctvgeEu3nFRm 3a4T2h3QcmfpSwESDAsBJCyiBWNwAQ5qgAUwfJV+mgsBGzBIAiMQwRXkhXGMW6mE/izQwA1W XIIUikA+0a3UYTF7AQRgkIMaZLB+LbVKWFtQnQ6UwDodwE6BIFmjKa0qwSxSCIMZRaMHryyZ 9RTq7qS5Ahywj5AwyNoGS4CCL8jYzW8mbxCquQQTpKANkehC8kIHPhlIgQRDaIIicqACFKiA g5w9AQliIIMVtGAHO52YGaU8ZSofeFBXTlGWtTyT/HQ5jQ0FpTMrxyshOCEGNYiDK1vhgiRA Ac6vhnWMbeACCExCBmIUAQum0N1B4qF9StAp6DygghYEiGNoVGNOqHRpTEsoIZt+yfY8/WlQ u0yJd+PqKPVWBCI4gZCiiHW4xS3jIEBABUG2ZiDCSL79/jIyWI2JbZXp1OwIIQTa+EHYtD3d UHie1pkr/Sk0M3M5wAo2B4wYd8IVvnASqnAHzN2YvZaDoJ6QCWD0ds9BoK0yfXec3/3urVqt cm4ThMBadNWcC8igBBy4QAUwYHjMZS5j6saLlTaYpRdGI7rA3QvZya60pbOE8fYYZJ0I3K0u O96Yj1MNzKIE66JjkAQ6YNYEJqiBEYowAxlsULow+MEtZj52spNX12L0ikFHN+CFvpvSBl72 0IleLoI4rdMsw4BYwtl0tyuH73SLpz0to7kSQCAFfvgBFnEAxbI33vE3jUIN2ssKDuJgvxZr pOnKFu+4X2nuuynI2wDFdHj6/uel1uKopJ33d3Ga1vXWvjbeoAkCE+Ti8bfHPZxnMIKJUWxA 3mutUzfP+c4r6fO6qTuVDhYtpD6lWjaLePNe7zKodOak0399Qr2nuz6eb3M/SAEEjpB78pef kDawwQ9M/lIQEPVvz83MDjxw7LdX3OLGP75fBhIj7XmZXQ0UpQ84gR5DqNLKo2+yjHcRLczx vW/CPu2jHJASDRsIhCN4ARWgAVUAAhVYAVwwvw8EQSuigRPAAhoghSKAgCyAJZvRmxVIgWvB lv0ZPogKE/zLv73YP9zCqozalnbRlVFCgbT7KR/blXlZnqBqmA74or55KX3yPf6CQJRCwpz5 gBGI/isWWII7CMEt5EJrMgJCUAEjyC5fObbXAjrik7cguUEc5JPiMKZd6sHTqpyY2RnqCIEY qLNYkiAyEgLOKB8UcK7nOj0/coEfKAET2AGvCDgQCI0U+AGceUL/SindqQqZiSXAKoPv6sJN BEExUIJ4qYIcUIMZGIJ5AQt307wzREOh25E1zIs2fIt2qoB90ypQ+qjnor3pIIEZSIEZUIIV KAISOMQiECOUc4LM0ZsbIIETaAEX0AE8UAPi+hwJ2pwTQAEe0DPnIsJt/DGriIEpgIAkOIQn iJdP5MRz/MAuWAGe4rmeW70ZLKca1BFXxAtYjDZZ9DgkssV76saXIrgT/mCBG+C19mEEG5AB x1rGOBCDMaACFXDIF9AEEgICFlABFhiCL8KBIYCAJaCCGwACMfqZafKb9wtEJKtEwrNGIkDH lQRBL+ABooLEwOk7VaTB+3MRegSJCYAJWZzFpdPHAxS17wmpJeCBEmCBFIgBc7yiG7CBcmuD V2MCHZiBOBgsF6CBRpADEdAb3tuz8qlEiBGBGYACcGPJsjQ/hzQ8Hoih8OmAMtyXp1qMMckR nGwRnVwJnuxJn3Q6etq++2mpQdycQzwCFygF4WmF23sBFxACHGgvnjq5zMEMEMCBIig3s7RM EByEGdADE9gm13pLuIxLebxJuvwLmsDHpSuK/r38JHviqBpogZOLpuORqRJwgThYTHIMQSPQ gSGIpZ2hxgszgT0oAyy4zOJ0PBegjvoZHW2Bt/EQk1YkTY1AidPUN2lpjt9DwCn8y5gygSHA gTdoHyEoSyP4gRxwLA4yATQYIeNkz7ELDRggHxn4FeZszkgSTRSJTqYxiTe0o2rrj6bgKBLo sSPkxx8TxPMRgTVjgRm4AuM8ghU4gQgNv/ak0LHzAjdogRG4AUlLxfpzjedMm/y0iP08oFth PXxJKsqYihUYgdf0qee6jK6gK5QjuB5ggwr1LhZgARdAAhz10XCLDnYkLRz6OZqMx/t8EBHF CAqInchhvey7tiWK/pkPEAEVOAFcsxnAIikMuoHHwqA1wwJS+FEIMAQasIExRVMZa4KSmiWm YrtxIpz8kEsTUdKLwAmp8aTmAKfM+7IHDEp8ogqBmyCjjAExqAQe8EhXI09O6AEieLkU8IEy SFMIUMlJtVRXsoIREAISGFKfK1IjJQ8Qxc86pYi8hLAIKwuo4Lk99bfJWLso9CiHMTmS3M4L KrYEXQEfgAAzuCYdELs05dVLFVYr6oEsaEeFItJPBdVQtckkJVWKcLp9AUoCaSZ+hLIPmKEq eAEQOKhJZCmZccKpMI1v9Sn2S6QUkKDGDMwSwECAihdwHNZ4lddCIgQhbDdcaruZjFM5/kVS B3lWaIUnaa2n/4xSUUqebN3WbsU2gIuZm4FEDhjX+wmdmLFEEUBXEFDXERCfdm0feJ3XjwVZ CKjXI2tAZF29Dt1X5+xXxPlXiTBV0juiPFLVy1vNhHpVCIxVDpjVQDQfW/3SXN3VXv1VNA3W kJ3UYj1WtktWM6xPlW1Wf23ZiLhT/1MmPY0nhsI+PeKvbBvEBGWBQj3URIWARW3UR43USa1U o73UTN3UTl1apvXQ0FxZBonaiGBSx3HSv4NS7wkzsLRSLAUrE9hSEehSDEpQFAjTMS3TM1Xb YV3T50gBN5U4fYXHDxVVC6lbiCDR/vO7J01RAOQAFnVRkvQM/hmdUYip0Rv10RjQUR5t3HgN UuVBRZQtMOOY01GNWru8WzqiWqw9rQAd0EgMswOVoMNd0AYtzgeN0BOY0Ned1wvN0A31zM+s XLktPszNXAmYTozKR4262WrVzofhTu8Ez3gRT5YkT/PcIPRUT+cd1veMz/kksKZ9jdvF3dw1 Te7VS5Cb1u3jgPZ7TbrCWNnU2Nq8zS3UTd5sLxZ0r/QRTuJ0X0tFTiFczvmN2yO9XuzNXHt0 Fp5EzdTk35pd2IADTI01gcEsTAg4zMdLzMVsTPqBKWSczMqM4HjNzM3sTAuuXetNwxCtW92l FeqsTsAT4Zy9DBQgSqNESqW0IqZ0/kqolEqqTMyrzMqtfCmv9MrTC8uxrOFJRcsUUMtBdDK3 vOBVZMX7zV0gvkf9pUUitracfRgP+MeAHMh4KciD3KCEXMiGfMiIdJ+JrMiLRIGM3MiO/MgQ CMkVGMmSDDiXQkkUSNsurlCXhMluHTB9tc8MRuM0HgwhhsNafOPhHSX14SBe9EVgFEYTIMa5 gphjjMwQUEZmdEZolEatpMaZusZsHEJu9LG//MZwHMdylOT2VEd2vFelRVnbnVsNzt4cdENN +mRQvpgfk+PN0Rs8hCXqCB9N9cOqAMSSFFSuKcRDTETWailGLAFHjElJjFWAq0SwQs9MHObL 9ERQFEVS/jTFiEvWHa5JTabT7GUbDo4NaObB7vkvzbBX+8kdDzBC4cU2JeSb9TNnhy7AKBS8 AuWqKrzCLJznH/3CMBxD/elQy33a0QRoiHDmDOHcd2q+HxRAAqwMB+zfpxAlBdyMDyhZzJs+ i/43bA0BCrRADNRADvTAju7CESzBE0zBFaRGF4TBUZk00LS/kjbpk/aNlC6S5UOm5qOM59OY k2LVnfYe69PprA087cO2KUWurQQ/8TPqD0Q/9Tu59jsy+AMB+aO/6g26M55Hq0bp5POTRoFZ FDU9iLmW/1W9E/Vds/7c2OtHmam9t+7C3eu9in6Z4EMjDO7hJPHrgAZsdBmP/t3KuxjMV8Ue bM/lywi8DEQ2PMRTPMaTbJmLvMmrvMuTvn0uY5tY5r7u7Kv+bCFCurx1pA/u3KabVsuIOhmY uqorLqzTOq7zupcLu9gWt7OzGZJ9VT6l3WXdbd7ubY3bNI4jbt3iu7pJqZF7gZKDTdRVOZZz OZijbpprn5vLuZ1rN6U9WbiVapygahvsbd8OvXvr4Hwbb+75uFDzVhLuI4JTnxU4uPiGNYeD OEbKb+rdb932Z5H5b882OgG/y+Au8Efht1ATNUrUthDgNm8bJLKk7nI7t2tSN8xRTpncblDN cM/bcA7vcA8P4uMI8VPtJAQHVFIzNVRTNVZztS6e/rVau7XL0bU6tiJfK8dgoytiM7Z3TFll 2+yLy3EdD3Ae30ku+3HaCfLJCTPw2ZxpKrNCQrP1XbM2+1g528g6u7M84zE+8zNAEzRCMzTR 0oFEW7RGezRFFBoZLOMbt5MuDwlNA3NOeRbi9iQJ+6sKgywM07B46bAPC7ERKzGbObGdUTGu abEXo1AaszEc0zEeg8RvDbIhKzIdqOtKVDImczKqiDL9hqotrxNFnwjbanS4gJtpi8Mk+o/f 2pwUEC7iMq7HQq4WWq7m4lmZia7pqq7ryi6N5S7vAi/xcjzzQi/1Yi/3gi/5oi/7QgH80i+K ppy0kgoAUwEBm9zPNOP//rEyXu91X/91YC9RaqMbAP0tr8pSsSIrs5poiqZEtnIruJKrGQUB u8IrveIrL/2rwBqswjqsxCI0xnIsyJIsygIBy8KspXqyI+6sEvis0BotsA7r/rUM1WItz+Tn m+BrcbH3e6+qfBcMNmZpfNmo/w0BdgcpkSIpk7LoBF91lgpUgYupmaopOMsp43LMid1lh54K oiKtlect83YOpoIK4eNuX0KamteTm8f5TvbgnXe9st7bdZ9EQeQnEvAnd421gSoooIpp7dNu xZ5Jzab3sBf7sSf7ss95vLQJEddbP133x8bYaaqmccumbco1bzLAvOe3leklsJ+ev7eISxL8 /mcm/JpgPtRu7JeBulI6pVRapXHL5lmqpVu6bU+F00ciaUmaJM3f/Lro/MP4/Kk1/BGv2Wnm qj7iGkASpHA7pERiLbHA77e18DRyWh76pYGw/YsIotz3/N0H/d6N9FDGmyZ6oiiaoiqCMS3i Ii8CI1wjow9QPdzusgRho+g/lum//eq3/i3D/sI3cFRtoGqBoOKtoAsCCBE6RowgIYaIDx5D NkFo6BCCGydBdtho8aLECRksQHjw8AFECRojPnTgoEFDhgwYMFxo2dICzJgyZ9KUWeEmzpw6 d+qk4PMn0KBChxIFOuEo0qRKlzJt6vQp1KhSj0qoavUq1qxat3Lt/ur1K9iwYseOnQq1KNq0 ateybev2bVGecufSrWu3Jt6aLvdeWJnypIYNHDp4AFnig4cOij2CABFChAkUTR4+LLJjC4kP iEty2ODZM4fBJTaoZOkyL+qYdlf3hOuagtnYsmfThkr2Nu7cunfzDlub6evgwocTf8v6OPK6 qZfz7bsSw98XoT9TH1w4xAgVtXq0uGGkoY8WJk6UWDGyg+eTKdenfM53+czkyIuv/W3/Pv6n vffz7++ff35J0TcggQXCJR+C8sGHGl/POcjeXycJ1sFjmn2AHQ1DqCACR4mVtIF66zm40nvw JciagUQFuCKL9/33IowxymhVi0ileCOO/jeeuKNyC+q114h+QSghaNY5hkIJIZA0HYghBtkc ajyulqNPNVp5ZWwzarkll7dhOQGVYYoZnJRl4uQjTc0FOaSEoRFmQnYikLBDCEp60FmT7blX YnxmzhXml4EK2lSXhRp66FWDjrkoo2v5uSOaMTXn3HPrASZYYT2kEAIITE5Y5wkQlBcCiO3x CdOjPFE5KKutJoUorLFu6Wqjtdr6U6oKojkppRkEBhphH5hwZ54QsidhpyiZdoFNueKEo6vR SjuBrNVa+9+0t2pbq7N3LcirX4F5YEJDI6CHUml7trSmSsyq1i2008ob7bX12rvbvEdtu++Y 3c7FXIPQ+coB/mJ5qsvrSzU5e2O+DUt7L8QRl+UwmPxaTKW/OeEVsK+eeSACenqeGqWf8VJ8 sqsSq7xyVyjbeDHMOnabJnQblKTBiBlswJKPZprsMtApszw00VUFrVTMScv8aKQ0Sbnq0VFP WzTVREsNnNJZ45hxcote/XW+VYs9NNhPaX022reWvTbFY7vNMttTpT033W3FfTfQb+u9Mt60 1f03v30LfvXehUc8+GyAKz4m4o0fbTjk1jp+1uKVazs55lNHvvmhmQtoOegwez76lZybPmvm oauONumtu3g67C86vjrtgLt++1Sx677f4LX7TtSfMeM+vFK7G58b3r9bzrWqjBKP/vvx0fu2 tvKAM78j489nLj33XIFd/dy5Nv10jto33j36iUoNvtbOysQrmuSnaH7f6aMfNftK+zvTBep1 kC6JEmYi+RmIfmuzH/eAlr+kZUwv4foAaY7VARLFr0w/M2DeEHg8lC0QZszb2Lr8IpgPhOZO IhPgch7FMAy6TIO7O1kHLXa9CuSFYx3jQLJOODK8pGqFLGyYC2PnsBjua4Y3SY2aBKYBDpSg A05aFsLykisf/vBhQTTdvIi4LSOeCYlJTMkGPvYhz5QGYZNy2hSpWEVBXZFz8tLirbjYRYCp 6S9hJEGSSOCBUh3MjCj0lxrXWLo2Gi5bcOSWHI/oI3BB/meJHiBBQ/SYHhEFKWca+B/P3rWw QApyRYQsXLQOichEKnKRSawZCQgjAs28ACTnghC7NLDHMroLVYDkZCft80m9tUqUjSKlxiLF SCV+xjo1IEmTAKNMZQoGBCjozLKadUtc5lI2u3Qbq3y5KGDqpGkWmNSDfHUpDjyyICSkDmiG 1YETFIaE6oFin6Y5v2r+5ppiE5Q2+8XNYDYNnOEUp4Q64AKCnCc0g+nAB0ZQJxaEgDAg0CEK bSnPedIzS/YsWqDyGaZ97sSb3wzYPyMUmIMKqwVKuhAKWkACEHDGYH2spTThVb6K5u6icMOS RjfKUX72E6QhFWeRFPOR7Ch0/jN4AgwAoRhRTU6UojQllE1VhtOcbm2nPO0pkNh1rF8ZtCMg cMFGjPqZJzoISjzkGqCeypSoSuxKVF2aVefoTZ/+FKhB/QAJTKACE+S1pcmk5EthqrCMpVWt SGErxKz01hTFtZsehQldhbRVYBHGI9gxQRJOQIIUJIZJIdLTSwcoU6gZFrH2atFiDdRYxz42 sgKz1DhVqQNOiaAEJUiBC0owAhBopiMmMAm6ABvAvSyIsGJSq2mvxaLUFmi1V8WqS/65TCIN JgQlYEEKxHCCH+gVB1AwghZUQAIRiGAFKDjnZ4W7w9Q0lZo/TG61VsTcATn3ucIEqaXCmIIx FtM6/h+prQq2MIWHHIEGLABCDUzgAvIcNb0QFaxoe5i9XMI3VgGaL33qK1foZhW2mAqBCYTQ UM5Yx7IpYIIYkkCZhnSCBSXgUGfxlJ5LzVKpHt3kcTtZYUTlB8PF0XAp5+rPjnWKAyfowUes SwMRdMQjLRhBCWJAXhKgwAYrbkgSWKCC3RrVoIMxQio/gBFTEfexEp7we3dcqB77mExAbi3C KtWB89ogBELQrHlOIN46NeYxJZiCeVfAAxqQ4QZQoIwVYpACzUJ5Ix1ZTAhgcAIWIOadw4Xw +EqGZgyquUv4abObNexRP1KqkYGhUJMvxAIurGAFJUCBC0ygVzZAwAmE/rgyZUIxhoq8oAdF 1YwzWQDjzqCrj4+NKfa8xsJOc8k+oH7Nm+9L6lK/dpzWCQEJVrCHGdggCkmoAQ1wLW7KsEDW LKgBeUugAtuqgCNOBOB6b8yjRnGa2TP6zbMPFO1vTTu6WrWrm0ZQWx34YNwGvzIMgICDJqig BRA4gZ2Y/AFllTXe8j4Rvc1nbxnVJt/GETW/++3vf9txQoyxwQlcAIE6HLzlEFDEQ2SAgxi4 YIyWrrhZj43s+WSceBuHUcc9zhaQe1Hkrq3UkDzTgSOMl7wnALfLow4BKMRBpYiZzmcrCT+d x5PnzvP5z/3jN6Grheg1NLo/KylZD1d3BjE4/sEJlOCCKkjd5TB4gUIbk5higRbnW+e6BeRj q+GFvT9jJ3tcVgsftKdd7WsXKQdGYIIUkAAHaKCBF+oe9R7QYDwwkLU7g9t3v5sR8F3reesK zzvZIB4tii8647Pq+LrGFqEJTbnmpb4GGkQBBShoKN/Zo/bYX3xKtXKd6nvD+tYLpbGLj30I Z19JYzEzqB9jQavDkPuD20AGKFhlZ2dsrNEHFvqY3nnwUL+95OsmNsxv/k5DPnLp09/xbFpm dawjAhYMoQi03r64HYEXsIAM1Jlf/dX4JdWlmd/fod9OqI3nsB/ymMX7AQVH7Ur0qR17TFIC Th/1TReR9Jd/gUBt/rXADACguCUBDewAkx1gMjkYLI0IA0bfCXVd+qnf+UggWVBgBVLAPklb X1gKcH0gOY1ACpCT6CUgbIHgr6CTYBxUZX3EC6RAEHwCClKGF+SAlCFGjHnKC06XYJSKAiqV Ga1JYDQUmcGUXVzO5OjgDkpFDwKTkIWQBqSASo0XenxGKj1hYZzAKuUhUm0VjY0ACpQEQukA iXkZFFaWRyRZbb3AGAjBFULAEQwUp/SWhyiGlzlhMXVAAe5R1tWf/XVMB4AMB5hABpSZRMkF G+agG4KF3DBfIsGZ7PmKB3BKCogAZxFGCKSAZoxAqMjACNxJgzEhsISACqiAC6TADuxW/iZ6 BJiNgA1YyEc4xmMUBEakQA0UwfYJAZKQgMBxSmPwVpMVBgzEQBd2VWOQgAsoyZwl4RjO3rHY DAmGAAe0y2kwVfMMniu+YstExftxkc41XsmV4giwgB+OgA6QQAswAQsUVReO1aV04geIAArI gBLowBcMwROskmbU1hvEwRIMVG0lASSIFwtsQaioQAqoAAu0AAzQAA8c3BwsAQ3AQAusQAqk AAqsgAnAABOQAAlYmRmIwGNwWxbgwHksBl4pARLkwAsAQRIMI7Ep4SjCFsGsAEvxETw54E1s C+L441cAJOLNEOB9FEEC1WAM1U+CAQ2kgG5dIhd2BBEkoiLe/iILIEEZnBsEDEEc7ABJQkYK oMEXQAAibEEKvAArQEAqPMEkjpsRoAEE2AAkQkAe7BUNIEEWQMALrMAN8NaFlMAQ6NULHEIM NAG6jQBwwaAS4h8HICQE5MAIcGVX6mNrQGD9iKX3UI7Qcc1ZSkqcWZLNdMQIxCQM7OQOzIAM /GQNKBS2CYELKMEMaAaJKUawkGBiGgEcOEQS7NUM4MAKPKZ4NoQr/MANPMS66dYI/MAsmMET VAIEdAEXqKcIFCMIUgf+3VUInEALmITwmQYasWIr3o1ubgVZ5tv+/Ob7+FHO6EwH2MDkEcET CByU1QAOIEEX3AAPrADc6dkLIEEy/o5EOTaiY5AAEWwnZcgABPzAeLboin2BY0KATloZZcRA DfBAl3FiMyGBR+rRGBmUUO3VkjSJzezMUtEFWOJNgWoFb4Ka+ChompAau9jMrwFbCBBgDTyE IEAAFfTAEUAAKbSAZp3UR5jAEOTAI5DHpLkom07iDPAAh3ChC7rJLUoeC0SBDKzAZiyGZWXH SYFjeY0EgAboPvJj3CwpVpjNszENlJ4dg8bSSB2UZZXAC8gAEozbLOSAD5CBUcrJC7BoQ7RC m47q9gXBMjKaChCCC7RAFlindXpVCPSADegAXDonCfhADDDUY2zWC5hACOxdsS3VKj5gkh4Q ohqNUzhp/pk0Kh1JaYMC1DESxGZ5wRAYXBlEgauVAA9YwheoKKl+6xVeqCJAARZMgQt0iEeQ gAzMABTYYUNk6BjAAAoAQQsMAf+F2wqA4woYZVUGkBTdoKGCzbEiK9bMl5Qwq/w5a0gxU3Wl QA+sABbQqME1gZZ5ArherIvCJQmIIwmeQBCsHK5xI4vxwIuBpghoARfS0vkFnoAW69cMbLIy F6QgrCmJ3LMu4UjhALfFQBCYQdRJIsYGbYt6QROAIzBCwBm43BKUgQvQAElwhmLgTG0SKrG6 rNTAbMFSVYLQLIdN282KFFchlBNoFqzpgNCeLdp+AQqsacuFAYQ6o80FqyoO/lbLDmjUHGtT vJWucC0QGl1dQWtQXeeRTUG4oa3hXuwS/AAMSN0WcIi7iaHKCqtt3qbdBg2i5m0+7S3f9q3N 0l4IPqGkOmJepQALvIBMHi7qpi4EcIH36cAJoEAKRFC65Bzd1i1uPs6SZi0cJcfm0iLjLWyb 4IkiVpY1ygkeoAAunKfqLu/ZtgENzEAL6IALkEANiCHprSzLAuztZpBu6m4HIUfvHhsDhlP1 zVkN2AAKZKJDuQC7hpsJFBzzxm/Q6gEE3MAj4ABHoNfondG/am/AtlCBem/18G74jpr5meGE hMYH+AAIjIAPMBQ5NqIuQkAfNITZyi8GsykNvMAM/lRBCnTCDHBK+BWLDPJv7dru/6JMAC8F +2huAXOu38YSB+zfvpJADPgBCwQBkhQECpgAeYkAlKVABg/xt2pWnMaY+O0v7dogCh+f5XYv 0vyOCzMgzc7gVY5UYZCACujAG9RADgTBEexAC1jZCyAJuYxBD8AnEa9xi/KBbSGZJhJbcGmd xa1h4HDvK7Kw6pwI/yTVDEpusx6wPC7hDLdACZjADLjACwCtGjwEI7iAyrGxJLdpEXgkYwTf k8Sb8e0LHrthFC/OzC7oSiyRf87uH5/yo9bfB44UQs3ADhzyDEQBrjHEJNeyeM6Axp4AEFCB JMFgCUsuitzxyUDxy6SN/pn8SAhlwKJxhjItICrHnihq4Ada30eUwRZcsC1nc5vigENMgsKt gBzDI2jlIxM3sRMPsz9+MgMxKjIn8w2tEksVWzTPMz3XM9KtsvWlqwtwAQRsZkOwnDYHtHjm gQmsgF8xIQdgBz5C2HFYjAqnczHzy8wwiA2R4q+WsnDZsxK9W0ZrtAeO30ROyHXuqp7BQLUK NEqjoBGwQgqIqHV64Wd0AAjsFz6esP+msLxAtL5oi28GcnRZCoVAwG7J7n/Oc9KdF+R2tEYr IeCSE0+uQJ3sJwSMQeGmtFVfISzE6YUsQcpVJwiIBw9g0qB6ZdVyssPodMVs0wclLJDYETld /jQHGgv9UZ/S3WILvJJc2zNTR8gTIhSHPpxt5RUlXDVho+AiBEIJkMCdqoAq+MAQ+CJjjIAR gCItUW1dOPRZ5/FOY4xZYiC4yBIOXVcLSuR07TWbcACSwIBCxS1rxuPjMfU4VQQN6MAdvEEM wEANNIEOvECWFrZva14Q1CtldAEKWIEPm4AW/GFC13Q53/Q5z4tmb3ZzydEcJlGbEMZtNZGM feFnqMAXguEIxcBKPa19LpNp7zV4f9kJHMEj1EDm/TZ8t6kP2EAPPIEMgB9pRBNZF2rlWpEO RvSPzaIBMxJfI9TGPi3UloCXdcAxsXb1WccJwIl48ZZ1ztjnfjdI/jPh5/pXCPSqz8Y3iD9m DtSADiT2fZ9rfs9t9gazMOe0J6f1cHDTQA7TsXQICLBkCKCACqBAXjVwR1xIDJiLQTkhkCKU Y4hAw0FcbRHjgiPUsJC2hoN3fwmVYwSxCyhviGf5uHUCZaQB5XWIDTwBiBxMcyMpZru4BAK4 vsnhjKdlfol0kz2GDNSAq0HGCzwkYnyAgcVxkf+4Y7DAOdKA973aM6aADIzXkFp4lDdhdTgU GiCkCchAItCvlle6uMGACvhAgZ1AGMwAscizje03f/d3q7x4qLE51w3TPdsV6FqWrCmYDuzA XqGAwGlxBL9qqj2GnEzaEKBBrHGZZoSA/obAAPhtoqJXH5EPBgm6gM4aQSb0tqVH+4oVggrM ADl+CFmF+uRe9sVA93/D+ND94G+q+qo/eAmJLgrcABHQACDw5Au4AK2bbBA47mMcgRT4QBRU AhU0hB58wYZwyjWSwAnIuqO5KkzrKJB+TAtEwQ/ws7Q//JXFwIsxWTiPs4qveEOfuX8nn3Q7 iriP+yn9m2uW2Eew4+lCQCNsQRTgQRwo48RLXhW4QBCwQF7BGhZQBr2ewBPw1W3plQv0gBZ8 pmaUwAyoQDoqYpMHy2XZgCxAvNM/xCwIgRoQCwkvoGVvcosLDft1vOt9vIKGvFaBYej2Yp76 wICtmCD0qgn0/mpiOkFDGEEd0AANLOZD4AANgEK4vcEKuMAYOMRNEgQK3Db48TnSuypj8IAM qMAKhMLTP70lfPkIT5LVlzm3Z32pp7nHe/3XH9095+cHwN1jLO4LpMG45UALuMDiQgAta54p yHJD4AELzAHcJaYL7MCtuyruBwv2QYAQMH7jP70m0HxtudtiuIDUXjzGZ7zGX/7Wl53mb/78 jWJ+klSd7Pq9i1sQoMK3ZukUvAENUFlMzuWI/viFEKLD/X7jf2xDaMEJgABX8wAOpDg5i7o5 4zQbbT24B8UFVrHsDXJI9zlAfAABAoUMFS1oQVC4kGFDhw8hRlRo60eKFS9WhADx/sFDR48f QIIIMcgIDCASUaZUuZJlS5cvYcZcuUSKiSAnPHDQkAHDBZ8WgAYFWoFoUaNHkVJQupRpU6dP oUZtOoFqVatXsWbVmlVCV69fwYYVO5ZsWbNn0aZV23VCVKRv4caVC1doXbt38Qb1uRdDX79/ /WYQrGFD4Q0cEHPo8DGECBEkTKRoIaOHTMsMdYDiAsHEiRMaQYYWGKLJZdOnUadWvRoCkhcv tJj4wIFnz59358qVupt376lbgQcPvpZ4cePHkZtt+zR3c+d080aXDnSvT8DXMQgevMHDRQ8d wHv4IGMgiBE3XouJ4eYJa5lS1riI0UOExvIiG4+4IsN9/n///wFMSQUSSsDBCA9G6GCDnfqq Dq/nkvJNwgl/E87CCydITsMNOeyQLacgDNG56UjEq7oLANNORRU1IOwwEExgYYSBHCuhjBNM KOEEG4wIUCZAWluhhhHqC8HIx3a4xMclmWzSNBha+KADDhbcqTbbLshLRKMo7FJCDMEczsMx ySxTLBC3TBOpEtnUq7q+VoxTuxbpLEyxDgQSIQUXqFgjhxog2OEFTJyE6Q41BDGBBMdEGGEE ElTIotBJKa10ITZKCOE7Kq30y8EH1fRSVN7CLBUrM1FNlcPlllLTVaLaJPFE67LTIKfCrJyT zl1dPEyxjj4QAQkbXiDCUsty/kihBBKYLcGEFXI4Vtpp/duhFhlEAEkE2jzdKzpXRw0XKlPJ pUrVc9Fdi1UKXlUzVqFmjRfFwDIgzIMTflAQV153tTOxxcRrzAQojgCD2pd2UMGEhU1A4YWD IY7YNENUSEE2BrG8DdQ0xe2YqXLJTVfkkcVitd0tZZVXZb5S1I67xjgyzLB+fU2MA/Fo1HGF GU6SeCUgVkBBaBWWWMTno5GGqJRAlCjhCRdA2ODKT7UE1+OOQTaV5K1JbvVkCPNaWWyWr1vx MDxfkHJKmxHrAATw4AZ2BBhkkIGMICD4IWmVymBBBRVYKG3vwZG2A4Tvqpya6o05vhrrrMHk WnJ0/pX6+jm7xs58Xuzg1LWwxTLl6Lu4QXBhBNGBpXGEE+wgfCUnXGgBBtdpj3iJ+oDotMHF Gd/S8cchv3Dy4VGt3HK56tI8c85brrfOsz0A4e8ZNupoIMjsG8G+EF6IEYmea4/IhhhowCX8 8ye1QhVG4IAhBKkV5x03q38fNXgMic9/THbjIjG35JU3NuaVbTD9Skz0RBC0RZWASCSIAQty RIIVLKpRkGFBD/CAPvHhQIMdXBIKQiClBQmmWyeazqvqF677CU9/LdQQ/4ryLunQ6i8BjNcA Ceg8mrUteiGogQseVhIWzOAFN4gDGWIwiBWoAAWdUcEaPAgRIIAvilVM/o0QIDCEH5hghFfK mLekg8IUimqFFnLhGY8TQzYJsHMdICEO2YhDeumQVxuIm/Uaw4MX9MwQrHgIK6jgghWw4AZW dIgSDJlI05xABwrKVQ1n5T/6jZFCZRQOGjG5FlilbGVl00AHWuRFOTZPTnFq0WFCQCWZ8XAF M6KRCQwCg0OshAc0wJsiFaIFXO6yJZ8BAae0A5h4SXKSlPSNJcWUSWWWpQLTWR52CHMzXF2p lLpCDJ2qya/PfSAE4LEZwEAgAhaggARBeFYMqNCSPfASAq1j5zshQoMpJe6NJTThCcVozC8h cyvL9OdYqKMxvWDnTdkxJdy4GYXD7WtXLDol/gdAokqZ9YqhNcMTCQ4XsNBoTwQlWMERZnCD GizhJe7EpS7gmdIsJkJKqgxlMCEZSXwWU5+74Wc//5lTr5CtgDB9aYscGcp9USlYk1nICDal GMTYaQT/wpMIZDO673hABlP1png4wk0QlOAGA2rUCUrAwBIMYQUt4EEiVJpWtaJkDCLYiDcZ qiJhDnOmoarpMW/KFZ3qlKfO86mVgFqlnQx1A0Xlj0KQura1MdWpwYpqeBZT1cVcFSQB22pX F7W6sI5grGU961pBG1qFtPWt8xSsXGN6zzDm8642zeup9prTgGYpeQRlmZw+CZ6ELlSw2NRV NCMqM1wJt07/+gBG/oEVQpBw1KMgFSlJXWJSRaJUtIkcAktN+9J67k6mq6Vpa5/yWtjG1p/N nGEcARNND0xzjqVs0TW1a8o62pGb3vyX9cRJTnOuAJ3qZKd0q5tIeXLqkamV3/y+C94Kiddc 5C2veZ0pNk+CEmOjzGE1HYpKifprMa0sD1RjOUuV1PKWuNRlgHfpS2Bu94sCrVqCFbwUBlvF wQ+GMCdVRi83itK2nbSwQenYrzv2UAR65KMfHQJIQRKSl4hEMS8Z6UiYcvfAdmFtjMM74wbX OJMw3KQMTbQ5e9qQhqP87fN4KJIfBhEGQyziEZO4xCae4Im7nOKTeYlFLXJRd1QG47dg/oxl Cmh5y1xGo5fXVFfouInM8vrxmaOJGAQqsKMNfGAEJ+iYR8UIg4q0AQfxzEsQirDPdAW0XQWd ZS0busuIPt5RANjoWZm5gKeEnvRUQD3RXc8E2dte91jwvUSOr3yh3qX62Oc++I2ZtqduXKqd QugMsfrQrn51ouEl6xPhMMN29EDoOgK3xZTudB7BWThXB2APwk52xn7n7UKQu3qq9sXPhvbH CE3talv72rAOs7bF/BezKeYDabMv29wmboB9YG51u1veoti3vwXO3bw0HOJCOWbv2vveSpG2 vs9osn7PBcc2vPDLsrVe4qKZbefu6Al2RsXwAU1oKCCa0Squ/silNe1pUYtfs3snoo7jO98g b+G6Rv4/MGtO4PXiDr701Vtt1uxXAYMqwQyGvoQxrGEPyzkvKWaxD2CM3lZG9dAH/XGj629d /E66UcActlnX6lZdhDTNfLVwYRHLWOhL1rKa9axofT2R1sKWtrhFZWcLHe0eV/va84emtyMv 7tHZNpAxHGQ76Tace+rTnwI1qMEdKlEUbNSjIkX4RGJKU/Ms9Z/NzvGOS3vakCde290+eTVW Xu5k61w2XcQBGMmIRh29UY521KOjAQkJQiKSkY5EgiSpPpFQaik9S1hvxqOd9rW3/eRwbzzd 94/3vS8z51jEHe/EbTzlOU961tMe/mrBRz70sU95jqSfw1I/igMq0IESZIQUD8G2j/to7/tu zy3Gj/LK7y4uj9u2wzC+iTEcAzIkgzKOJTM2ozN8STRCgjT4b5dcAzZkI/FgTyjObui6DwGH hyqkYgHJrwEdsKAg8HksajEEgiAMAiGOhSIsAiNAw9yA5QNJwiRC0IpowiZwQid44gSDIgXv rfu8jwW3JvyaAgYXTQazzfeYp9Zs7U64qTFI4ASkwAciIghQ4T8AZQregAZIAAVggAZQRwiH MARGAAVa4Ag7qMS04ARAYAlOgAdwQGoyhgAhpPEc7wCpUHKs8Aqx8C20MNa4MIfm6wM8ozFm 5wXSQCJy/qAFXGB2IGATYsIUomAh8IAF5sAzUuAFXGAHqmd0FE7cxIMFVgAChCAU9PB8NIEF Fuhw4sYFNGAA60L2onAFF5FrXNA3HhHbInHu0M8LHyo8uCkFZGAFfGAKHkIQuscEumcVnUAh jKAOaIAGkGwhcIAGQIEGIOANVsAFxmAhaAAGHAUFYgAGUu7g2OZOpBEEeMAgVgAXc9F1LCEF kMu02OuLYi9EEFEKp/AY0yUZJWQZ/U0Lb+gZoTHvUocEXIAGeEAhGmELogAP4kAFXKAENM0E qsAFgoAXG8YFsKAhgKAFTuAJFKUELIYke0ALbmAjPqAEZkAFkiofEU4a7dAE/mxAFgKSdmZB CNSg7l5K44axAFVQCh0SGRtRASXyyxrQ0S5shyRtNB4DBW6ACGgAEFLAYVwABWZEW4LArURC BI6gDKOgEtIJAvTgC1SgPt7yUU4gYVjAF+FmqYRrMC3KA0SgBaLgBzYjKQknBkxSBG7Ft6AS BaWyGKmyKkkGIrskK3eP97iy6QpIAr8yBBjGBXRg69TyMVTgFYfM6h7jBFhgCNDABUxgLUEi BIZABeyRI2xmZviFolZJMcLJBXBgBowgEwCFMY+mEHKtelyvzxCSMg9xIRkSMzNTM72EM29s 6T4T85zubADGAxpDBmpgBUySG2Ukq2iABfDxTlIn/gRYAAbIRwZQoARQABY9gBoX5foY6jfx bpXGDQ1YAEdkIBH0QDklBgZUwAeOgAZOIAxmIDLnjXcqE9oYstCsE12wc1Q40zM/k0UySnpS IARsjpxMwDySKwYSJDEGs7He8iA+o6NyYig/wARUTur8c75Ek/Ps0CZdoJAQlFo6oSHSgCAz ygaeYEHsKSqn0wCrM0NFpirqRyLjzsdC86JCKDAVowS+qQb48zc3715qc0BKS1/+E0dxK0cp 6le4qXvMIEgH5090YFmwBWoIkUKbdCovFEqjVErHaBllKMcwIBq/TVkMUuoMQwVwdL4gKgYw Sm1cyj8zb1KnTjGM4ASO/uARasAL4JRwfMAGeuAJDm+9mtDFFNJJ95RPH3JD/3QBY6WTbEX4 SoAFIDPqJHVSrak+5bGbIjW+UMsiKfWhbKAFaEAH7uAN6rEGmkAHXiA5O9VJgqAFhqAhugAF rMAEoEoLsmVKQqBUEzI3qPNCG1JVzcQqsGz81sjRtuNmNMWlSkmOTOlzxLMFpCxOfoyU3CvS 8GQFTgACwGpZTIASntVJFiEQloUFokAFVMEHhiAFsso8DkQAbeNb56LxxLUqyFVD/RTaJq/k +GJOOiAEIGBG4GdF7vX3tgMFPsDupuxkL0y+gi8/USAjjKRfx0AdB3ZJYMGtbhMQXWBthLMF /kyAB9xodyg2LsJVXDNWY1mVY/vtvApqTuyoXXOFxVzWoD6paq+W1tK0V9wTLMdQN6c1Z93D CFghBcpNSwnTbVKgaF1sKJojaZV2aVXlKhBR8r7G/OZlXbPlbaBzawE3cNvLoYKv6o7LBTZD UhSiDsjWPfLgWRZrUTWAA+ywVIEObuMWVS+Wbs/Fbu8WK19lBmklA1LgBNZmV/wM4FQ3cNOU w3CmDLZABxq3P0ANAiYBCHBgBQisan/VCS3AOSz2YmmMc1PFcz9XGd0FgPpicpnw51T3eX2M a3/rbD5gBnbAWWagFB9CFGc3JmZAWcYQCKiABNbLV0WpyoBXczeX/nhRBSuONzvTJHnO93m5 c3UHiHA54DCxF4iwCALUgCEYwQVcoHtlogiy5WHpyWq7i0l1Q33Xl33L1XjfV1RERBLJLBIt mMy6cF2jB1J04A1qIAeC4Ah2oAVsAAJeoD5NAALGoAcqgYBVgg/CqgcglcBaltm07y2CV3iH F4LLJCsm2GMqGIOJGOCwYzDylxYfIwb8gAWCoD4fpYkYhbNSAIZV4gQWxTkFU7vmquyks4Fn j4evwofb132D2HFChIgx2IhTJJrW5gN8wDx8gAWCEKv0BAL6QCFk14oZggZeYAaqIAU6YQY0 YlP2hcXkJYcjJIzFuIfJeEyA+IxTCGzU/pgita3paKYDUKAGbOA+ZbF0ZgAK1NEEzJCPH+JA b+ARcOBwZqOLurjKMBcudriRMfSROySSJblVL6eSy++S26u4VAnh8EgM8QAFcAFITXkh2oAG ZqAFdMAFSKAGXBmHFZlLHFiMbfmHcTmXdXmXebl+TQ40p1c0v/YtLZAFXoAjk3khuIA+deAE UCAFSpaag+4orhmbs5lMtIKb72qIv/lVG02cxznvcBAETqAHpgBnn3UJfgAUV2IL3BLjYMqL v1iH9ZSWHTmfb3mb+dmY4vef0zWA8JWONu8DnACLUcA0c/YLUAA2VyIMbKA2fTFSSYiinxBp LxqjMVajIXmf/ju6tVwFpCNMeUbagIpzfILgTVeifwnPC5qABBylX89gJspgI2sYPIKxEOu5 KO6Zlnlan336p4E6dIVadJ9JnA0oZFOgB1YAC044JZrAbzwh58D3/kTgBPCGcR+iCBaiE3jA JHlSBLRAdGrDd2PZnnNap3f6qzc6rMV6rNulrLcQvX4PzULWUUggBbxgbCOiDKLAPEuAByzh C/YPtHAACRQBCrBgCqDmI0hABkJZMhSiC25gDGAABWJyCGJTHSdoBFagPoDJaLeaKBJbsWuZ sZMDOB77XC1Hss8ak/UVB0OgBF5ABpBAImYhB3yADOrjMV5AbxSiFVIqCFygdKFa/gUIIXay IBbxqAdsQAeURXtCgAR84IGibxV7TaK91RAR2zKNe4yR20OCY7mZ+3j++bk7x460RzREggXI kyEEAQKooAeOAAJIQSZJQLkEwgSGIAceAaxcGp5mgAd4NtwE03WLEmGrkSPuiJtGQAWUC6oT 6HQm9mi52r//G8ADfFUGnMBjLOkqmbIFw45iOgWI4AmIhLNq4LRpmwf41TNU4AWQ4G/Kzdw+ kASIAA4cgj/Ae2++QP5WIAXemiFioAZ4gMVPXLiEDwkOmHxNq7EU5vpOSUFqvKL7O9VyHKd2 nMeV28cLfOTWWFAFjjAAZm7iMQVSYAdmQAZMAAaGxEhI/kAIXEAJZgAkgJb9Ou8FjEDLFSIJ FGYGcjdiXOEHkBkCVGCzRuAHZsEMnuCFu4ALGIhIehVMfdMG24abTqAFmveN3haM8TzPtWLP BbzH/fzH0XUruzM0Cc48Gh0MaCC+QWMOiQBo81E8g61vAGUI4mAHTMcxIgMNvgACEGELVtGP UkH++sMI0AACiOUd80BhaAAJJAUjdvI2x8oEovwQYqAJaqBRdMK3cLWOOGBAISAHRkBitfqm ZRnHgT2jhR05LKTYUw0LPfQBsfZzGmVAG0UHSKAFmEBGQigoa31Nn6oglEAHvmAInuCAg6UE 3iAOlqDbSyAJIGFAWGAL+rVi/gBHdtQZJeZgCeKxBcL8LFeg0ZmAWU7YDLp7BmwgC3DgdNiP BJQACXJgj5IAqVZMTjbYmj5gBd5GYvF04S204YP94fmc2CVewQAVnGmoXsQTBFJAT6YqBByW 4fpVBrB+1is1ZP+mvHdgRvDzA4wAqm2AwfGjgnQkBWqAr2FCCOpTxu/vFa1HPoPygK7HBbIU BXiXxyBwO9wGuC0X6Cp27Mm+7M1+Qy4k7SeeSt+loDRAMphFBKJuA0hAQSTNoLc1rgj3lBAE BaYETxpJKPUxPD+wo15gDJhaJo7AdKI93LQ0zdW8A2TABsq3wADX82WfA0wgAxZn9H+99E3/ 9JM7/vVVX9C0E6CtY07+Xb5uZgRS4GY2H/j8kzAJeuFA4AVSIAg+ITW8IAdiIOUAwkMHDgQ5 bDi4QYPChQw3GNSQIQOGiRQxXLiIMaPGihMzaNgQokNEixctmLRQIaXKlSkpuHwJM6bMmTRr TriJM6fOnTx7+vwJtKeEoUSLGj2KNKnSpUybOn0KNarRoDlrWr2KNavWrVy7svwKNqzYsSlP mj1rFiPHtREjHoTYNq5EtnI9MmyI0CHBDh4+gBBRosUMCIQLGz6MODHhJDR2iBBIMO/dunHX aryM+TLFkSTPkm3ZNTRNqqRLmz49Qarq1axbu3491LTo2bRr2876Obfu/rFoe1vQvDa48OEV 5d5VmHevBxEshhRhozi69MJHvLCQYSNk5LcKKXPmmDm8+Mu9c9+ejTq9evWw27t/D9/p6fP0 69vHuju/fpW+z44fT9xwdeGlF1/MrbBCGNMtqJgNMqAgwgeQceedcP9diFF/Ju12n1brfQgi VfGNSGKJraHWYYoq1rdfi7tpaBKGAAa4mXHIcdBBBx98MMIJLjAIZGJr0BAFCiiElBBcclko Y4Yw+pbfilaFSGWVOpmIZZZaHpWelF5+uZWLYn725G9NYkYjBgMqxMEIJqRAAg5o0OBFkHZC 0AMNJpwAgwkmfMBBd5UFh2GZT+oHZkxWLmrl/paOPkpil4lOSulLY17KG4xnokncmg51EMIM MZxwghIuVHEngzC8MEIIIIAgUJKDgieeoWXuV6lLjO4aIqS+/vqaerkOCyamxn5V5qYZdWrc QR0cQYII0p5QAw2pLghFHC2QIGFkgs5FK3m23oprpbye+yGw6q4LlbDEvrvisfLyZ6iywg14 EI59gWCDjxDUcW1iihgmAw4xuDAQhZZhNu6hLuaKbsTpsUtxxUitB2/GHc7L8bhnBhcXcgWO AJgOPgSsGAxA4NCECi1AcEIIEj72AUThOtlwf5eaK3HPplkMNNAfakw0ixwfm7OMHLW1UIEe hEDCCnvMYEMUSVSL/jIELPjJQg3SlqBCCWDD2oHNFGmUs847U+pz26UFDTe7IRZNt21Hy5u2 meIVhxyoHvz9QQgscIFgCSi44KcK0DlByIKhjGFDCy/00OqOfqHAggiwPvQd2nmbdSzbbo8e VNymA0tl3aqLdjfSee/dUQcofJCdECdE3aMKJITgKgghADbFCiiswAMNZNwAxWFWxJDC7SOU wAKsAvEVAgwnsCBhd2fj/Pm8k5IOPlCnjw9p6qufz1Xrxn6u90ZqfgQCQSf04FcIJdDwGOAt PB+DtCSgYAPFJIEFKhgBCCQ0kILgyAgk0FEJTjASz+WNY6ILnwV3Qr4MbqlK6OsgbtR3/in2 ZaYjEbnR00wghJAkUF99CUEKmCCGJCSmEywogeYgYxCENMQDG5CIBBt2t+9dcIhX0qARTWQl DyqxJiAMoQjdp6YSbsADKUhYcvTlF8CoYAtTMMwRaMACINTABC44QQlyuJC6TOSHhmqdEIkI x5sccY6RSuIS7xiTJoqJfe27SHFKeJx8gQp6KRDDCX5gAhXgAApG0ILupCU8QMlqSdvjHrmC CKY4alKOdOzkexiFx1C6RI8u4iMU/8i0pulLBDpwFWBKkAIXlMCAO/qbCQKlpO+skY1qc2Mm N7lJTwqzPbwSZShJuR9TLosuIfvIp/jSQjcl4XYpwCGF2nKz/pI4zJdeAqY3UzPMcJ6omMa8 IzL180S1gMxGCNnLB0iQSBPAM4HcUVI2tdlLbq7om98Upz9Xg65y4vGcukmnOpfGTr1w4G8g cEH0EJjDSS4sI/nUp4r4yc9/ajQqERPoQAlKls8BB6GpzBeOdASCERRQZhNKktkqacmT6PFL GMXoRm/6FIl5dIkgDWnaRlqjVH7kpB8wQQtkFjgUbAsE9NQeTPEJOhB2s6Y1xalVmdKznfK0 p2B5HVCjaJe+uWAEZP3ACnPEI96xICQeAAFneNnEqVK1qlet68V8plUlchVZSQMqIE1IghFw K6LtNIFATtBWQGmPolFVn5TmCllw/tp1skRxW171uteyNGyEJHTmpzxQA7O69DgN4QAIUGAQ klygsRa9T2QjS9nYxmZ0l/VgZiuw2ZFmYAMNXM6OXgCCEnQgIZT8owZ4OBeoSvWir32tbGUb vtp2cK8e45RHFkoCwpCAh8TV5b00IBKLsJaCzG1uc5/7XAtKF31crReapOgBEpQAajx8aZPG 670UmXe/nERvbC+4XvaC9EnW3e1yrNjDXRbKM0fbJ3/569/0EjHA5yOoptxXQg4IV1AKDk9F jVXeBz84whKGI4UrTMr+YNgjDokfXDoc0/Lkt0MirjFOSIzeTZ4YxSD0zUF3ywFALZQDb4Uq jGbsWhsrv1myOP4vMHfM47v15gId0cAHehiyDqxxXKEL8ZJt3OQc8xPKq1Off7oT3orEGEqY cvCX38zkMDsZo2Qu89HSwjBbtdnLcH6znP0L2ToLeF4527Ob+4zoOP+Zss0VtG1vS5ZEJXrS OVl0hPnr6K0SlGeU7vSNLQ1oEWf6smJRnadPXURQh9rGo241TVEN61SrWsxvdrWtaxPrXPNk 1jie9K1/PRpdC3vXvCbxqYHd6mEr2yfFbnKukS3dZUsbKAEBADs= } return $data } proc very_small_gif_data {} { set data { removed to save space. } return $data } # MAIN starts here. include; util_check_platform; set my_name [winfo name .]; app_defaults; if {! $IsApplet } { wm withdraw . } initialize; . configure \ -background $generalBackground; # someday fix... wm_comment if { ! $IsApplet} { wm geom . $startGeom; wm minsize . 1 1; } make_menubar; make_canvas; if { $IsApplet && $OutsideWorld == "OUTSIDE_WORLD" } { set OriginPointSize $PointSize } else { set OriginPointSize 1 } make_point [f_to_i x "0.0"] [f_to_i y "0.0"] "black" $OriginPointSize; make_message; pack $MenuBar $Canvas \ -side top \ -fill x; pack $Label \ -side bottom \ -fill x; if { ! $IsApplet } { wm deiconify . } update idletasks; proc iamneverevercalledandifiamitisprobablyabigmistake {} { # following is just data for reading and sending to uudecode. # don't know what to do on windows or mac. Probably have to live # with 2nd file in the install directory. set data { BEGIN_UU begin 644 mstp.gif M1TE&.#=AP`-8`N<````````````````````````````````````````````` M`````````````````````/___^#BXL'%QJ.HJ82+C65N<$=15"@T-PH8&Q`Q M&!9*%AUD%"-]$BF6$#"P#C;)##WC"C;)"C"O"BJ5"B1["AYA"AA'"A(M"@P3 M"B@E"D4W"F)*"G]<"YMN"[B!"]63"_*F#-:5"[J$"YYS"X-C"V=2"TM!"R\P M"Q0@"Q8L&1@X*!M%-AU111]=5")J8B1V<2>#@"5VWMP?5U`?T\0;7U`:ZMP6>F@6! M?01D8`1(0P,K)@,/"0T.$A<-'"$,)BL+,#4*.3\)0TD(35,'5TP'3T4(2#X) M0#<*.3`+,BD,*B(-(QP.'"@J'#5''$%C'$Z`'5N<'6>Y'735'8'R'G36'6>[ M'%J?&TV$&T!H&C--&28Q&!H6&"(J&"L_&#-4&#QI&45]&4V2&5:G&5^\&E6E M&4N.&$%W%S=@%RU)%B,R%1D;%!`%%!<6,!XH324Z:BQ,AS->I#IPP4&"WDF4 M^T&"WCIQPC)?I2M.B20];!PK4!4:,PX)%Q`@+1,W1!9.6QEEGJZ2P`````P`-8`D`(_@`E"!Q(L*#!@P@3*ES(L*'# MAQ`C2IQ(L:+%BPHG:-S(L:/'CR!#BAQ)LJ3)DR;/R2??>P2V9R!FNYFGX()KD>?@@Q`^Q>!'ZE5HX5X'9N@>@=4)Z*%S]6EP MG`=AAIN-^&-.(X4X8X\]EC0A!<&*617-!:9 M'8=(6A#C?,_5M\$'*:KXP8DAC"#""Q_P=]]_7-8''8@A)A?"!QLPU]R`I1E9 MHXTYMOF=CW#&:9MW0]9I9TUJYGEDDGPN^268_]TG:'\=>!`""R>8D(((4![G MZ'$JAH""""*T$`,))I[@09E>NOCBC'IFB)Z;I!HFYZFHRO7:G:RVNE*H_K!B MQ^>L2K[XYY==!GI??_TY*N4'(90P*0A3HM@!?[P*:F:+T<6(9*SM55CJM%BE M:NVU&!WFZK9U0NOM;[32:NNM].4:9G(;C!C"B2=^`*P((YQ0`PPF8`K"B2DZ MVI^@N9+K;+C?!GW!""^$%[<,5QCPPZ"%.VN,N.JZ00DMG'`LKQRG M"VFA[H(0PI4IN,!##3J@`8$<$$#`Q!$\O*#""BRT``,+/J`00@C(ELFON9UZ MZJ'$H$+<69`%)]U1PDPGO%;#4.]F]-2;$;KY'0?%L M97P8!$OYO!6N]'E0?>L+(0:`9A_W)0X$0YA?"$[``B#\[X4P!!X0BA`#%:1@ M!3-H@0Y`L#&?D5"$_D+[H(`<^)XUW4F"L:F@$AN#E`PZL2<;5)/5Q@7$*EH1 MB"14EA;1Q;%'I>@#13`""J1PA"S$\(S_0P,F:.""+_1`!2[@X;%ZMB]ED;!+ M(A2B'M-G'0.Y"HEL6:(@YU*4)QK2)E'<$!''I8$.E`!*;8M?#[E(1TB5J`0L M4!N4ZKBL+&I1.2WH@`CF."*-/4I?I\Q/E%3$KI")C%+V*T3+I(!&-`ZA"3D0 MW/S65JQ5DE)?'=MB%SO`/#+][#]73&:Y0I0N83U..1L(XG32A!UN`=(M@\PF M5^,/6J4(82P0ELE@(4&"$%0Q#""ER`*4WVTI<(_NR8 M/B$E@R)L`04LJ$(6:G`#")1!!LW3)0@66J4GJ*$(.8#`%ZKP@L"=(`UF<*$+ M5_"$)+0,"RVK0T`K"W'@B.!"B`@0T@<`E)I&$&4R`6NT@D MLA&8``4JB`$-E-`#'8SA!0?TF0+OR-92P_'AC!SD9`@A*D@`<[.,09B<`%3M2K MODZ060MZ$6!$8XP1)^4`.SN4`0 M+5.$#2PE@QT0HGCS5(,+9M!.%BP!#2HP00EH5@)B/5.!SD'3=KG;7>^2)+Q` M9DA)R-NJ4*'WR$A2+Q67Z=9/INN$(H#!%U"@!"U$`0),1:,/>\S%(@LQG@XR$R`ZC M$9('W4$E@[!BYG)OQT[)RI#M#%Y@.\$-;48#%X;YTIC.M*9;QH3;LN!N+SB! ME7C(J07^ZUG`^9R>-]+G5HL$T($1-*%G+3%#F^YTYGQO?M@6K!7X8`;VW&K( MEM`"270!`E`@A!RN`(--._O9T-YT''10@QVT%`)68,$,A)""$33!@'+F)#(9 M>.H[ISK//FYUD$$":R))D3JV%B*M21-OO7=N6&7ZG*V*]E6[1(8" M'4C!!QA/NM*7KO0>]`!M*LBG'=NJ<^WN^.2JYI[*MPB9O0&TW_B';V=[6]NZ*5_FYE`E0T$-S`#)6!SI[1/C(9. M;?-H7O4"*]!W]2,$KY=*'0`#JB4"++!)O3=[&BA[QN4Q4>)HD*8H+!`#669] M)GB"*/@[1P`\+4!:(S`EA7("6;(E52 M=N<^NK9KP#(R\%(")K`"0"!;,,`%+H`"7[5M@;,"C5`".1`%2\`&*7B(_HB8B+[3`]W&A>$FQB9S8 MB1VR9,FD*UR$=UZ$3EPE,B2@`A"G`B^@`T4@CA"0`S500S0#`UTP+&N#6JE5 MBB.3`FI``P6WBPK9D1Z)>(0`"E$`<2^`!6-R+)HG3>;VCO`X(?+8-!,@_A/V M"'_X:!WZB&MW9(1P)0(:-P*\U(4B8`(_(`:8MXPNT`)3\'RI\)'\8PQ@I8NJ9;8$I.OTI95,TX\1S%8Y%;G9"@M M($F'\UQ?]$C6B("1Q(1$D`138`40(`B6\'R.>6!,P`(-N`(MP`F]69S&&4,T M,"PG@D!KQ8Y6IYF;V9+FX9G8XG+W6#0&XHFE_CF$=!>*[N-%<14L+S"9D&69 ME!(O.@`$*9!_]$6%D'6>S/,"7-!;QZE@76`#-8`#GU"?_-F?9&"'P[4Q.$9R MDI@DWL*9"D*=UZ(9A:5'Y90^=2'NV8"C,(V;0,VR_A5 ME`4$EH!&<1`&,/`"),@'_=EEB``%+1JCC,D$A2`&1'!CG41NY0:=T8ER"Z*@ MUB(:!2JD0/0A.;DKB1.#(6`"27`"DC1GLU>$UQ6!QL4!6=*'1PA?P`)Y7O,! MD^)*NL0X)E`#7L`#0<`*7!`[,KJF;-JF728$-O>((C=RTC2D!@HM"#J=0(HJ M0FIG]%:D,7>D$`HE_AZ0-DSJI*26@5HDI7@75V*Y3U>JH8Q&(B'`I>WBI1VZ M4&'*A&1JIFBJIFX:JJ(ZJOX#IWH8>VL7B5A#-`?\(B%!BC9,EI_D`> MP)S+XISM:):ADJ=ZNK!PTK"A^;#",6]PV20E-)=U>9=X:7NZQDK1%:*`*9C, M6IB'F9B*N;)22WV0*9F4:9F82:'/":XLZ:/=@[,,*Y,\^QDU:9,5VG9`=W?O MPY-]]Y,+%91#690D<)1)V3)+V9M."0%0B0)22955&8=8.;6"JW1>"98$&'*W MJI(TV[4)FZ!@F[,Z.Q-C&TYEFUXW>6_G8H#5V$H,-9`%>9`)*8X,Z9`L`)$2 MZ2X4>:D6*0(8J9%!P)&#&[L5%Y(CB0(E>9+(`2!E>75&8K,_^KB0&[DX,;ED M6[E">+E$*'RB^$46.0*GF(JKV(H0\(HH$(NS_EB+?8.+NLB+O@B,$"",Q&B, M?(.,RLB,-_2,T8@OK>F:L,FP,NPF>B#Q#N:G6AOR7LN:LMH[O)H2]B$3T@#43B%52@$5YB%K*LS7>B% M8"B&9&B&:*B&;.B&N\10D#:'=7B'>;B^O8JE5?J'@3B(A5B_-NQEC.AW/"1U M:J>JNSN)..BU;3+`!_0Q>`82EY MFKNY[AN')L"`#D@"$)B_7D2!;WN!SQ1[18N7'8@X($A?(DB"-SS'_[."O]." MZPJ#A3J#F&FG%D")_D(LP$1,P`7<&V-[>DN<`:K7PJT';K!'M$6;ML.'>[IG M8^$&R7.ZJYJLO`U,?,:'?,K'?,[7-]%'QZ;<,M@'/-K'?=Z'`N"W/.-7?C;H MCGX4R)8XR(1LQ-OR?F&7J^U5=BEP=NZB=G@TH3AI,7"W+W)GS%<4?$;X9'K' M=SK,6H$W>*=#\I`H\7>1)(>9:'>9>INUO[O]'2N.J'RT7L$2WGL!P$ M>Y;=$=WS3;L=%#'P\0,-#5H6[HAD00G2JO-M$8HB'&.]3Z3"X6<[2\ M-F._%FRI!0+$9FS(IFS,UM(>.6W5=FW9MFW=]FU46M/^LJ.\BQKH+$$];2U_ M!M2K421#_9;;>1-FDP4&E4?7B=9EN?M@*A-FJ/$[,$BM-] MI-,]MFIE?2U#AM:!5M%KCB2Z[)C]21F56AF6UM&5Y#69C!@&(>69I MMMELYF8V%&>]2F<%>[!B'<"KMC2)K=@FP=AW8EZ/W2=*ML#G.GGR527U=5_Y MM5_]]5\E$&`J,&`%UMF^PV`.!F$0(&$49F%;_H5A&L9A'@9B$"!B)&9B*.8" M*L9B`/5B,39C+%!C&#B@!DO+I^':K_T1L8TP@$7;NQQ%MUTK/XMK@ZI8C.58 M[2I9E&59F*59G.59H"5:I&5:6D61KC1?K?5:L97*HII;P,E;O@56K MB2,"R14"R]5<&KLZ?3E=U97A<-4!V>6_IL%C#-/>)?'>3,--\MTPHNFSW`DH M=P=?Z;1.,-!.[Q1/\U1/$VDL(/?(!M@!_?1/`350!750"35J?^=0$"51%&51 M&*51$,!1'@4!(`4!(@4!)&52**52+.52,,6T$$!3-H53.L53>_-303541754 M69!42]543Q554U55_E>55<4R=%7R56$U5F5U5FDU=9M<>_D65W/E+J4VV"J> M5]OBX@8#XS%.%#,^/DA<`83%2(X$2?*SP_N"=WZXX9BT>S7MSX/2`:$T2OIK M2JF4I1[;U*]4/RT@2Q!`2YAV2[GTAFRCOM.XAU"J:$]63&I5S/R[:HNBG&M2F`D1F1D1A>G1FSD1G`D M1R^\J'671QJ-/H7=T*TB[4E![3R8%-?^1-F>&H6FT1.JZH32-BFT,RQD:4LW M0S5T0SFT0Y-$>]4*[X8V:T:T/?9>+?A>0>&S[X?4[S3Y[^.*N4U&V?`C_C_T M8S_XHS\6%T`#5$!=?>QT"NE^VHD0=$07GQ89+TB=P_'=Y/'?NDB&YM:[#5VM M\SJQ,SNU!,SCS93BD M](&2LH2.`SG.N?54'QE@OW)W,?;D5?;@HL2?.$(6@S&FU,:K`X*O:#(H MHS(LXS(P(S,T8S,XHS,\DX%W)+/BE$A(L_C;VOA`IBV0'_F23[E'AKQ,S*CJ M(FSO$B_S4B\NVYJI'O-:S[4;-#"PWYFRSV>K_E+[MG_["'Q>E6^A;QW7OQ(L MPW)/=(3H-TW80`Q.TK+\Z=S\*D)_(1XIDU(I MEY(IFR*A!:OB?_R#`$%!X$""!0T>1)C0X`2T^A!A1XD2*%2U>Q)A1XT:. M$"5\!!E2Y$B2)4V>1)E2Y4J6+5V^A!E39LN.-6U.4)A3YTZ>/7W^!!I4Z-"$ M%8P>19I4Z5*F39T^/6I!ZE2J5:U6O9!5Z]8+&+QBR)!APX<.93MX^.#!0X@1 M(EY\X+!!@X:P=>U^_5IW[H80'^2&Q;#5*E3"A:$215SPYF+&C1T_AFQQYF3* ME2U?QIQ9\\O(G24F_@8=6O1HTJ4/&D:=&O55UEBY7?ITZC";7V=X7/MV[MU'%P=ON+5K MV'DS[.70`41?7W_%ZOW]_P#4C-..>=L_@Q- M.^_$M MM`@NN>2"/2@AKO1HXR"$$$[P@.8B'.8*8H\E_E:W8J$GPKCH3'OD..G2?K87 M9!J#4[A;N\X+MN"3S?H@!!90&`$$KT48`0823B!!!!%^I:W@<1VVT%QDF9XT MZ*'7-;IN.T54.F_0X/;8Z6-_B]J\J;TUN6":R\HZB%Z#.*&M$'2CV>J2[U+8 M;5/Y3G?)N2NUN_,I^=0[=*`P_]GOOU^+VJZ66RZ85Q5"L,%L$FHH&^P37&AA MA1B<>"&%%$X0(02O01@!A1A8GFMPA-LNU732E65R\S@]I_[$`D7'7J?G2S<] M9*AC4[UJVM`Z08481B#++/7/0NL#$$*0H8@5KE#"BH#OQS]@'FA`P002A$]+ M6=)F-0)6[61J(5:Q_H33O>&0CE+2H"$'M;1CG>L8QMZ8(:`=6((.'`##!K7 M%]V@S6`)O-"VKH@O6[5IB_?Q8B0I$QDQ8H^,J'(:&C59GL"-3'E4DQ#*0$"" M'[P@""HX`0JZ8(481`*/KX2E'8EP@QUPS6PV4T$`#SFX3BI07XL\EHS<_O3( MY$C2F"YA5"65=DD997*3FNQE-*4VN-45[G!G<5^O4MF%,,32F]\,V"4P08-3 MF""*92E@\C[IGJ@]TYT+9"1]WD3,.AW3GB99C#+IQHX'\DQ`W:(I=.A593 M>>U\)W`6E@$.C"`]"80G58CC)WIRY)XW!4E-]$DK?CH%F*3ZIU[6@I863.%V MA(QH"6H@/!#48`4Z>$$M5B""M(STD"5EX]6R5@(@M$`)-X"!"\P9O$)"%"V] MR\,(A(`'KS'Q?3:#J]E&,`(7BA`%2W"!&S)J_DLY1`!,1# MP0?8]IK!H`90->4/3H_)D9TVJJ<_/5T'U4BUJTE6!#0H00M\0(05J``'-)#! M%4Y0`A>\X`0V@&L(2/`"%+2`!>4+(&11EAOW679L+9`!#O"`/RIT(0]F,$$) M8/`'%*A`"E_`'Q#V.E_ZUO$)]Z-!(_(7!R3XKRVRNT$.@$`#'=0!$0$CPRQ@ M8`(3P.`,N4P;5B6,U8:Z,6LBP($(8O87RBGP;4"C*6P=(EM):J2VH>(;;H'I M3M'RMK>Y:1_Q8("#_ASLP!#YTX(=YP"#&/1@"2@(WO!"P#M"<$$)/I#!"E(` MB#'L``(XJ&^4I3SE*(\A"2A((ER]-H(=/$Z`#KUFC#7\@AVL0,DC`.`'7M"U MOIC0LLTE`5V-2P(4;#E"JS76>`KC*!&3>((8.?&2/J9B0N(ZIGO?,YRWZF7J>"K2";%1H9IOJ MT(!;:4(7;;CM*M:R;;`$*\2@BO&&VMO?!G>X[RCI.]17"4A`,T@%^%ER_C5O M0X;YU.:,;;>*)/LX#6IVOD'V[.]]D&3BL\%F;6.6:R*NNSKP09Q'4((GW'@& MBH"#N"4^<8I7O(<\Z-U80Y!>LA3T8`E3Y.5<^RBAS;MH$['WZ/"MH9#K&[?\ M+E>+>?N!$9A`"<"5P0G$\`(:=&$(@@@L"<86`QWTH%=F`UL)3O`",&S!XD^' M>M0_/05+'.$$)@BRND4J.8.R#>26DT]J0$4WD[_K,\FV56L0#98)F>#CS(-Y MW.5^QM`F3-KH<2,(%%9@`!57@@1:P<,N^>M:WWO6]1"CA M"M=&&'8015F8`,Q3MNWS*16C._!QL0E!"PO,+NTZ"^TZ M/18(@=0K/PJSFM,3@10PK>!ILXX;*0FKPQ\24`$BH`$88`%4`%`$OP)]$6`0(X`)2@``@8($5.+[_HBL3<($9X`$I8($78+!4 M:@-'\($ZF@,TP$84X`)`2*\2,,7V8@$7D($=&(0;X+7A.8$F<($;4((3_E`^ M,!-(@50?:]M&\ZE'^%K%A63(*.P".Y`"\MLE*@+#,!1#8:H^.=G%0\F.G_C% M-0Q&M8.VNB-"8WRH.9RKN:(A)H0`-("E'BB"($`\(?`"-8@!&5@#0/B!-H`` M**B!MIA'%.A"22RK@B1*)A(!-HB!XVK(IG3*`H2!&0@")Z"!+!B"5;`!$GJ? MZZHN#@"V#92I2*&6Z=E(/.E(A?A(P@C)\1C)U5.="5&?@82H)0H!'TC)%!`A MW)&!&8"`*7C*_'&"2E"!*N""%$BWX4%,(6.+$D"!4SS'OX3,R(2Z%\B#2/`! M1H"!%"@;W`,>&A`"F++%L).47`R3LKP3G,"@_K1%DSN84-T#@FDLT MI(/Q.E\*)E09R](T330I"-54"K^9N[6+MKJX&A#P-8G,Q-6I,#";2_=Y'[JB M(15X@>`L!.>DKT'P@3%8QQ-()168!"+@`_L4T`&EKQ78`B%H`1UH@1Y@(5]! M)'=[-^PD32C9SC-!3=5\D/#LM]"B)C9Z*-N`(J_)@;0XRJSQJ#0C4;=Z'[`9 M&Q7HQB(@T$ZK`HYZ`1F(T1O%T5<:`E*T`B4H`G7""[`3.0G-2"RI4#,9H]5D M0]2ISLH)S_@3'%"*_LTV^M!"U#"_6X$:$`(]4`(CP$,;@($>@`0(,`/DX@$A M^#D90`'^1`$46`$8>,P<[;0?D$DYM5,"?;0M"(,1V`V#2B0A'5(B'3LC/5(K MJ0#PW"38"R7R0R1_BSV!NJK77"BK60OT$<3(8A_W$0%2))M>^;\8&`(I6P,? M@+4[[30!--54;4HAP+H9]+BN<]*6RY9KR4YG*=0J4=5_H=4)C:!;I9)#=29HZJ3S."`:;-0H12A(%<+YF]2749E+ M/49-Y52A8[!=`U51)=5>G2]45==V!3Y6#9[4V]8FUS-WPS.5"5.XTRBY%3)Y:3;STT\Z$2S[(HP_HJ,6M$<368M%,%=6<(M"L-5 M4L05QC0B2;V`RX#$U/8)E[J\R[P$+[[T2\D,S,$LS,-,3,2TF85K3"B(4]!U M7HFC3,O$3,T4`<[\K<_TNM-MH-0=5#%AW<%U79Z`W=B576V!V6@J20/:+I1, MR95T@99\R9B,1U.D1WO$Q]/RFGWLQW_$W8$T M8J/LKH.\R1U0R`)V_N(I>\B(#-NU8:>^Y4",[%XUL6#PQ6#2T."H<#DW[%I% MD\U,G<,ZO,,\Y$8^]$/B`42M@RP84ZR?141%9$1'A$02!6!*/+[@(=WE"T)- MY,1.=*-/#,51+,53?.)%!J=6?,6L"Q=K-5:X"\V+',-\)'$'#);03 M++W"P286+"OVA!SV_``9G&(@O$%PR<$=M)D2@JQ`/EB36ER#[5:R99\D7,(F M?$)&!N:]JL(KS$(3V,(NW`W`8*U;I#Y,UDA-YN(N9I)?[#XW_#XW$C^)I.)U MXM"`,CW)&H'VF\6#(EAL'4*7*>3[.X'\V[^T];]=@X$`#.8G1L`9.H$%_FS` M!XS`">39][Q`C\O>K-A>>,DV]4J5U6]N]>1Y:XJM$"@Q(KFMGW9FW[2U[N[4,J[O>N[OPN\P;.CPCL\CS;5QGN\N8J\ZJ*\<8:_K]->2]X\ MP&V5EG;IETXY\5TY[['B\G4VG*9=^1.6FKNY$LBYG>NYGPNZH2NZHY,KI6,Z MIS-JYZ0ZJVO5MBHDJ]IFS.MJJ>X0JF45J[:2>LOJ[V`0KU[+FQY/@SV9@%N9 MLQ%$]9$HA%,XAG,XB)MKYL0XO'0#-$FCM+VZM$S;M-S>JU$KM5-+-:9B-52M?RI MM5M+M\0"@5WKM5^#6I/-G$9YI.-&$Q-3;B3!G.9N36G=+1!>GXARG["A,1O# M,1WC,1\#LL(:LA;9RL+5BTCGB[+:[DTVS$KLS-+LS5[GR5: M43B3L\RJ,^*YL_>(4.*>)]BR[[O9B/SFDMOB8%#V)-+R+>`2+N(R+N12+N9R M+NB"J^FJKNO*I0W'_M2Y7-'O"J]N"YCR.J_T6J_V>J_X>LI9@X#\VJ_^8F$` M$S`",S`$4S`&U5-5//9.\(+R[`-,]:`%NB!=G%'$K&&B'&S[`@:;Y.L M+;0-%:K'^8"B.BH]_@"E8BJG@BJIHJJ<6;XU;ZB4X2JO`BNQC^*=#WZ`S_30BW5@F`)'K80NW./R/,\R2<^=Y,OUMKN^2?H]O6!`NA;SE8U M'V0J?:A,36**LBB+VZB.^B@2!=?T7/.3BM6X6ZF6>BDY9V9XZY-COXAD_D>4 M9&+V/G'VIG#NG"98;]Y$A,6F4;(K;D(\<2(G<](ZDD*H7@+K98ZGXHAW>=\( M>C\:R+AWV\KWI]AW#77+NZ.]42JE4]HF5G(EJ)NE6OHO7-*E;3Y6J.Z@M<1B M+9+XFZ#X$.R,BW^4C`=&,Y*[:65<(YQ-.)*C7YXX/>(C"/`C0!*DT=WP7>)K MAP_&1F*3F8>,FH>5"L+Y3]%YD/RI9Q+K4!(AGI4H%%(A%G(A&)(A&EH!&\(A M'0*G'PJB(2JB(THBL=?4)SJG:N=;J&^VGY%YJB\FJX>6Z\GZG-]ZM?QSD2E8 M*6TC\C$?2_7?A.VN^)F?^L&C_>F?<6_Z059?_@22<[!DH.=Y(,"'),$W._TH M_%DY?(UOMO.-4AMT'=B1'=J1J]O)G=WIG=_).M0ZGE?E9DJN9*=A)BTA_1$Q M_9,+D=3GJ=7?8->.]C'^>2-\J,19G,8AJZT+0EH$_N!'73**GN(ODN.G-QY1 M_N5G?NBNU+$O#78O$_-B@!"`H" M!Q(L:/`@PH0*%S)LZ/`AQ(@2)Q*L8/$BQHP:-W+LZ/&C1@LB1Y(L:?+DA90J M5U[`X-)EAI@:9L[2+6OV+-JT:M>R;>OVK(2XO?R[>OW+^#`@@<3%OSV,&*P7!S;HTAILVI*:U6KOTQ,L7$NG?S[NW[M]O"PH<3+V[\./+D M@X$S1XO[.?3HTJ<+M&V]-N;,FU/"E%E4)]"AJEUN+S\[N\CKZJDW;.[^/?SX M\K\JKV__/O[\^@O/[_^5/8`!"CA@0>H9F!%Z*ZV6@08=D&!"!QP,M4%X4U%U M'GKH'9@5@0?Y]R&((8J(UGXEFG@BBBGR-Z*(';KX(HR.;6B;2>9EJ.&,_AS% M.!"+/?KX8X\J"CDDD46>""20.RJY)),1Y?CD;4UZB"2555H)HI%9:KDEEX1= M^:574HHY)IEE0@2>>CM&Y)Y]]OAXY*:BABCJ7I_YI M>BJJJ3Y4*JNM?C@JK+'&Z>IOJMIZ*ZX3T;HKK\')^BNP0_;J5J[%8@KE9)@. MNVROP3K[+'[,EF4LM5(B>ZUU94J[[:+0>OLMI=Q6.VZ'V()T([HCF5N!E-RZ M"R:X\AM)IY&*9+4K[L*ODN_L$LSGLPPKO>NW!D`6.%F4J= M42C4>-UI4((&Y%WP+VT!#UPPR'\B/#*TK#)\,F,.3W8C2PLR:%,',GS0@0=C=''7NL=-M^" M]EDVX`G=;9W.)/5K<5$;>!"""R^80$+4'4Q=L<9TLX:U28-OS;7>!??]>9M[ M!CYZ19H37KCAATL,=0HXK,!"#"6,0,+,$8ZP06JYN]::TQQ\D+'&F9MNT9*= M>.U$W+=Y!!ZA=Z&]Z MSA-?O/&[)O]^BF`R/[KZ!D*/DMJL@3_A31V\0$(+;/""$'@@0M0[H/A*\Q,1 ME.`#(,@!5"9G(9[WJ')36#P`0>& MI@0B\`GY?G("QHW`"2&`X4]((#F*6:AR%*P@""^(049ML(C)L90'R0;"#8EP MA)O9W6M,R"`4VF0I,00!"$Q`@Q/,@`206V$!<4(]\?207]O)T!+%-$0^&;&- MPTE2$HVVQ!DUT8DM@V(4I4C%*N*$9C\)`0E4@((7PG![8Z2)[EQ3GG2E_K%= M:TR3&R,9F![%$65SS%$=[:@@/.;1A#6IGO5H%H(2K,`&*A@"!&;@`A*X;7MB MC)OWJK:[1?ZKD8Y\))4DJ4MZM:B2"[ODDS*I''R1[L\9UU"Y,M?`I..PL0? M,?7GM*EU#X'6`P$)1I""$I0@""U8@0I.H`(6=&$*HPD%#5YP@GR*8`0P2,$+ MR0><&;2=&;B:'\\ MNLO^A'1<(W5G245B.8OYA'K;E"E-3[`"$Q!0IF8%P1.<68,1A$`$(H#F"830 MT[F.)A(U>,$,2L!,,$H4IDLQ*_ET@H(9@`!G&,WJW>P$59%)M8WRJ2JUKHK5 M=](M8DW3``=,\)/7C>`$/;!F6]\J`Q3(3@1-.6U;1V""%2RA!_^$011B@(,; M!`$(0=#I7"&A2A:@(`4R\"()MFA:LYIU)R2(00Y4^S8)FO&P64V?RNZTV-\T MUHCP@6RQ),M$858VGO(\9E%"Z4<'BL`$-7B""P0)`QHL804I4,$+:.`#(]"U MOO:%P!-P``%3/,(*_BBPIFF=F5H>J"`&+H#H""+(P\MMYKE`7!>>IANTZL+O M/=C%E7:?5\?NGI1WW]MC3$]`RA6L``E.P$1/'W'?%;/8#I2@00N.\()1R"`% M*8A!%&K@`Q5@<2>R`\'MY`;.!COXP?"JLKP=>['X3$91`H#*`P!"JP.(QD[FG7S@$#UQ0`Q5$])6(I!R#:5ED(V\H3TE> MRY)!!QPGHPK*-$K;E#E<99?I,7$YJ9E8`_&X!Z$`!WHH,Z3'G(8:'/AQ>Y6I M(24H2RA6=LZ8R=&A[FR6//.M5GS.E)]7!NA`"WK0W_4D"CD@@MC!8*4V_I@! M$V#P"$E$NME6&56;\S3ZC*0HD0=%E*#K3>GOE2J M];5J9F_5U24T9CUO8KV9ME4&+4@"(G3@ZW7?EPM4.(+K`,B"%4R4HL9<-K>9 MVM3K)$K:7J$VR7AS[4-EVR.HRS=WO*WP5^\OJ0>$Z?5JN@,NN"`&3F@"NS.^ MTR@$],>%A!LLO5E13B(BRS:5$#?"$)6;@>"HX@J#GW4'#6N0F5'A%P9O4 MQ-D3XMMTYEO%&@,Y:)S=7R!#C1T'0Y@B,*DY_^8L2][M.#=;>)5)^717+J^6 MN[Q,,*_`AN]XY:*(@)Z%_HXS3W`"GX3'YD]O_CC/$2CWN8N[CX'UXTQ!(((3 MF``%+)C!#XH>:3G`(`?7!*,V7_K*0^Y\0APX@>3L;='6L+J8,E%"% M['W`#:@`#"S!$*1`X^3`"M3`-27;VWD;N(674YR`48F1D%T4^D"75G@>!M6? ML]P?_L$(,#E;ZO!?TZA?EOV$WJD6&.H`#`@;]9G67GE@CX$`&(:17T7B];C` M"NR`"EQB%`#5!9+!"R3!3[D0\_7=$:C;:$C!&9!8"US!3@4!!,@5!'A!],7B M:!P!3PD2"DC"*4``(D"`$\!`0)W`-4$AE\W!#\S>$U2!NEU!"^2`$0Q;_@]T M$U&\W=F%6P<4`>/4``3``/GQD$6M!)UY1*;4H1T2#5ODH8O4#Q]JDA\NR-/D MP/@YA2FAP`L,VPG`P")`P0W\TPK(`!+@P`RL%32I@!S80!/4`!>\@`[(#!;> M7=[I'0J``@1XPBK0U11``7Q!`"N,QAY`0!3(HD<6G2'LE![P@0NP@!*D@16\ MP4I1P0W4UT/]UU[UE0/FGJQU``QLCTXLGMQ9D4X`&1*\4+U%X_ED!X>$X]Z, M(ZRTA3D*B.:D([I4WN[(1`>L`&C$0#.-0#,UA0D(00RTP`RXXDX1P0S<0!+8 MP0[80!1@P2<`@0N8P`E>'TTQ`0J<$@UZ49>I_@`4),%<@<%']J5?KI@2F,(- M-$)]'<(>2`$)7!H#ZN3#)5,^Y8`)L(`,N$`.P%?4+"3>[00#N0!6LAU6$A(^ M24WP$.4<&B70(.6HE.-22H?6..7!,1L4C1THC=L',E`+I$`4Y``7P"*DT<`, MM`*`-50)P,$;H$%$!L(4S,`H_"5S-F?&_4`.P(`5J(`3Y(`7R<`,4($,^``5 M0(!195\6ZEU#I4`9#$$-M,`;/`X+N-5;G9(-,($)N-7L/$CKG`!;+1USC29I MEB8=@@QJAHI:K"9TY(MK9A+"Q>:'\4\?.>(4W$`*T&`,($$LK-N!J9T*T$(7 M0,`D'()S=JB'QB(;_N3`3DG"#;``FRWB!^H=";!`*C'!(!P!$O14'4"`#@C! M"QQ!&?0!!.2"%BA!;*G`"IQ@39W`"\2`@KVA-Z(15J"*?_ZGI*2%@#X&MA2H MZ4E=5-8<,G5`"9"`#[1`#53!$X"EKR$"=@I"(GPHFJ:I7Q:"$KSB&`"8:JW` M&UP!8:Y;'"CC$1S8=QK?Z@F9<^TG2##INS@II$!IE&Y%,%'I_DE=PC$ M$:'!W?=)XGA!86IUV0ET`1#$`'[10K/FJ[[N*W[A01'XP`S0``VTY0^8AK92 M';?BB+=^:[.$ZYN,*[F&T+E2:;JJ*Z'EGN[A`!2DP`I@)186UPCP0`\H@6%Z M`0L(%!:(&;^N+,MN:B0DPA`\`0VP90-I4[V=W]S(6;W1(NB5P_FGAS.[,T1R6;H#_ MJ(#G)L$24*(+X-J$0L`?T!42J)**\27F+B_SRJ(00%2/K9`(W`!2:-KH4MZJ MMNW5H6ZKJ&Z6L"[]K$MV[&U1E(#U+I7MIN^4H1_?8JFAX80'V``4N%4`I@`+ MJ*Q]=63S[B__:AP7K("]/L(-U@$/)$$0H$!0YASV)BF@RA_W>HKW*H]8L!// ML,S,35$5>0`$%-!/_F1K["+L^K*O"(]PE;T=_]2=]NT$$>3!$E@J#X1!_\:P M#'^D#;B`#02!%4#%XN'>T[B?;#!PQVSO`W-*!!/)!-N*\W#,28%/_WQ`3W#/ MO9$P)WW8!H#`^4Z>%"^<-*;4PQE?BL:K"9P`"]0`#,^P&9]QI&V!"M#!#]1L MXD$BR-G3]=!."W"`#VEO;=P*!!>QBAPQP2V1S%U-_X57:-Q0!)G?S8UP17F& M3K253'&CLF7QE6[Q"?7J-@FN##P.>ZK6L(K":+0I&H>R**]8#[C`0K$G>SZ( M"NA8"A02:(S`#51!#+C4S6A>',HARJE*I_!Q_(3%F$A6$W77:X27[SAB_@C\ M'NO='AE1\M/5A`>(P`H`0"7>Y\?M M,`^[G38O\L[-I@>T@!+>@`W\``W8UQ;`LTS/=*\]P18(01`$`0OHU7+9\D`? MB!XW"D*;2)TP9>D]%Y7IJOKI!.2T``MT)EC=@$_@$T"#'QO"\4S&'0IW=`BP M@`N05J.=P`U$S4[\GNVUJ^,&Y4BO]0G/9@P!_NL(9`$;^`!/C0%-WS5>TY4D M6(%;7A,@:6,,<0#Z`G'\09NM"/50ZT=11P?,.=O4K%_<[PX$+',$1V(!YI@`,3($0J!T"C]'Y M96]A&[9!%TIB*W:8X,;7H>LZ*K5LSF8RX5,).($7F<`1M(`;[$`,Q(!`_1?] M?C86(=^O%I=FRF>7V:\0[``$V$`-""$-L)0'TE0TVT`+?%99*9[<;33=-69. M>/1[M2(=^"81Z$$A_ABWALLT#0S"++L-VKX9G.G;=6/W$'_*=M^'0J?,UX%= MT99'"3\JI,:4(`YB":A`(]C`$XP&%-C`&\!`"\2`#M#`3@>8@)7`#%!??.HW M#;:`&L`!78W!'-A`V<9`<,Y."0R!#S2!./.`QQ[?!VC62SUXK_J<'SF3"21" M%+Q`2VZXF\-S&<@`)*P`#G^!#HONB)3B7*7" M#,B6"Z@;*IB2"K@`$2`K3[G`$$!.0^4`"PR5(2=>).ZZW3&D]`9!%-RF_@I, M`A=@P9L?>RC[=PJ@P0NA*N-1CI[O.9\?MI__N7)TMY,,.MZ2$,Z-'4V"1N#* M#@F\@#]W.B.<*9G!@`O(@!_X]VB0@8<2@8%5)@K4(`UL@1JL$EQB)G@RY!_E M`!1`0!?,`K(7_"ACP0R(6!+V@!-Z`_A+;C MK04\$?MZ>V[S)%A!H7"B@!(8@2)P`?]N[DX9P1(\:.'V0'QBDWV#.2/RQ`DT M032+J<'_/!IGP8/2;POPF-0(-&%;':A1.XIGO'%@NT(,.J$3+=(&_+D$1J`#DP(`']!#MKUC,`/\,!-J4`. MI``*3`$;`,$_O0"C?SU==T)>AT(2#$$,G%=IH?(F0U,*'`$VRK[Z+^\D>($0 M+-W-=F/2FZZ)GSB:!#]Q;#SQ%URA&_IK;`!`D.BP04/!#`<1)LQ0D&%#AAL@ M;N`PL4,'#QX^@!!!_@+'$APV[$`0.9)D29,G4:94N9)ERY19AMC@@:($"9LW M2YA`\>*&$Y<_@085.I1H4:-'D2956A*&F!1(6(#X@#'$!PT',63%<(%K5PM? MP8856X%L6;-GT:8]2X%M6[=OX<:5.Y=N7;H3\.;5NY=O7[]_`?>5,)AP8<.' M$2=6O)AQ8\>/(4>6/)GQA+=J,6?6O)FS6;&?08<&VY5T:=.EM6I-J`&BAQ`K M/G3@$)&@0]L/(4[4S:'BQ8P:1:!PP8(.!"40P"Q5OARH#U@I3IB0;N($BA5` MF&?7OIU[=^_>_3YE__G__ M_P$,4$`)+'/KO0,1Y(P]L4YKT,$'4XLP*X4.VL"B#T;0X001/)!M(MI`S&VW MW7K#D`431-C(!"EH@,&%'D#Y3L;LH&@AA1M36&'&'7GLT<(483V(F#/>BV@D2D"(011CA! M!1U4:($&%(*`#@6=8+C!"!E60$$%'V`PH8032JBI!!H.A0!<=M?5@0>>@0Y: MZ*+`*$'.V0S"2CT''0:K7W\#CGI*@JG.,N&KL<[:UK.:WC7BU`Y"4E2*\_V: M[(E7N_BA.WL#E-D49U;A!2H,$6F+1)A(:0PAN(!!AQ546,&%(H9.]P@D"D]< M\<)I,&'9#D,=>VFF_KM^6BVI,:^OZLW_TMKSSP\NJ^NO(N;JUX4*6J$V#6[HU0+N`SX03(ET(5^D=-P=H*A<`FNPTR!"&VB1)!M0*HF]Z4H$XCHDA&`%65C,2`!"T;_I*U M;"*"$:2(!"J`C@J00`,E3(*"933C&=&H$C53GWL"X'[\A0_^0F+(?7KP/THE#_] M%:M__PM@V]P&+0,B4($N8"`MA19!=*ZSC!;$H`8124@)?;!IOP2F,/%(3,XA MDY]_%-WHT'Z2&>OD_NY*T#M/;>0$P1M>\8IRO.2Q M,SO,X^A'RQ@]#=)0OG2U4H)L_0<31F:Y/8=DDQ]*7/ MH&R2G=HD$L`!`B=NQC(1M9R:J#,I6QS&4P MDQG-;(8S&NBLJD;Q66$1Z\"B'2UR^,H*5T'HU:]V+ZQ4(^MEM7:KE)+):VNU M:4^SNA8R5I6LWX#+6E1"XO8JI:VN.6MG276)>0R%[IHF]O"N0M>\J*7 MO9+$2WTY+*63'6%E_@F&6>4F+$R;[9>9/-LK@X96?W#"T)S::*<`ZHE/?@H4 MH)Q%*!$8"E&*TFU*'`6I%DCJO.T-6J8VU:E/-;9LI4'I+XW+/>0F=[G]I568 MS.K^7+FO'?.;N?T.S+\MEA6`92I@RZ7U,]&5T&I:\YK8-%2;H@6E`'^3 M(N$0QSC(T:USH#,=ZE@'.QYVLJ7"0Y+QE.<\5S&IB1LFV11';<4L=O&7N03C M`,MXQC0&J(-4LP&!2#-V/<9=)S&B$8YX!"2ZA8E,:'(3G.B$)^9]\I^!_M24 MIT1E*A^H"HD?:]]]:7G+`.ORJ\`&9%)KG+9[,GVM+^%[5==6V-\X?2=MFV';OM;=.TM4T6 M<_"/ARI>8.M$!:^>`0Z```7EA<$&0.`$#YAP_@JC;;%3?O+YSW\3`C%H`@*? M./C1?:2'+N"A"$LPE"IAX`%\33PT*+;XQ3'>JHUO73(=E\_'M1=RM'Z[K36$ MZX/OY!MURPD%2C""(KB@.,*-Q`A+@(X3:-`#%#7KNWT75'@[U@3!"0'IA>]. M%J##Q1:H((/H231I%F3UJZ1 M+U2JY$#F79B%X:&O%"S,@&8REM9CVA"./E555[KF#>_8C0O M)M3@$,@."#-Z2$$S_PP@QDI@2F("=2P`5L(`@@ M0`A:#P:4H`;N[09.X212809B``=<0`<@`!5L0`54P`6(H`U*P@6&0)6T*`=: MS7^RRTX@+'>^25!$(`BBP$948!*X8+:B[P9;PO92``U$8-D:3)JN[`(HSG+$ M3U7(K_S.+PG!)/VH9/T&K/V@"\T.3/1\3(G43B/D1`4:P0:>0"2@P`;>``82 M2`=H@`5*X(A\)P1*``!)X%A\;69.3PW@X"3&8`YLH"9&(`883HN`;0A\H`EZ M``=XX'&^ZP-,@,%^\.1^3(`\Q002(0IX`@GL'&P6Y8I;5"`!Z8`&9H`(]*`0)G$=38(&!B$&0NPBF(VDG&VX3*5? M1G%J2M$44?$4]0*/6'%,7%&M("1"\(=]P,L%UXT#6<`F",4&4L`&C$`%F"B* M0,`%MI$%@2SH2,`$H@`(?B!PQD,$3``CD4]/1$TZ5J`'9`-$>DR;OG&T+@0& M6"`*C*!F3&`5(&`-6D$0V%$2X<`%CN`(;&`(_FK@_J9`"$Z@.BXID3XQ%',E M'Z5D'Y&P'Y/P'U8"F9(!#G8`N&`P80`0)$@29;``(BE#K_;`56@`;JH"0<@09&Q@2@ MX`>LA058;S[%YO'`[U3$V0`7FI012_A`1 MOY$W,(($/J`%..#Q0)%-GZ1.WQ1.JU).S:\O3#55/JY4W@]U;57];3-WD2)@"P$B"`/EF`&9(`')'52=2HK6*,$"/4S"VQ=V35/>158F70B/,`& MH("+EI$%JF`EHH!9:8D+5B`&(.`1UJL.>"`)@@`%"O-'Y:G$H"U!PC4NN+7: MO'5.P?5A@PGDO*8#7:`<)1%B[1Q.!,VD3:VQ+RB5!#$:?4H:25V:5?U+P!W\G)E M:A7WS*K6=&)1`ZBU?UQ`E#PE!:*4!F1@!GQ`E5S+WSQE!-@`#F2`%3HT;@L' M"Y@@!J`##WFVC8B3'G\%LAKV/0Y77B[-^T:&9.H`N``&"? M@!:P%VB>@.E\8`9`U`5,X`<^P$\W5G9GES-J-WUO=WT+%S#<-US93WY_MVKK M%W80DT0V'?MR8A#CEVO%CESHP-JP@=:H`:J MX`D(KR@0(7,%(?:J."4*X3B\8`P8[EA6X`VNH!&*(@ZNH`6.8#_5MB,Q0J-V5>-USB#GQ@!VP@"K#@$[[W,GO.YSR%"5QF"*K#)N(&"J2X M))+#O93`%&Z`D4\B>J7`B_]$4Q614]LP!TR`!62`]^0F^S;:-PBE!%R@+#%$ M(YR%!#Q@`Q*-G%'%8FWZA'`:%:]DIRD[Q@+RG2%&H$@V!^8D!$Y@`W>")F8& M!A8!"F180V4`"7!@!FK@UTI`!>3`!IJ@!KC@!71`!HYOHQDU.&+$$W32)*8` M"N0&`BP(`O8``O85C8X*`O2`#X9#"=+`"MX@)ZC@!E`"!DPM&\L-C'F3246@ M`V!@+1NXH4!$6#-B_@3VK8%SB8.\;U0SN;'#];'W*+(E&TLJN[)M=*9\-T># M6E85E:./I0!U``9:)DIYKJL9%3Y-<@5)!"-6=CPX,`J"(`X@``W(X`62H`F" MX`SY4">.``-%0@K.0$-;`+<@``'WF)\O9=Y&PO=00!(B,$*=``948"EY]G-+ M8`Y^X`1DX`FJ``,?.0>,0+1[@'H<@D`5:?0ZH`A"P)P@8#.SJE#7-#3).+[E MFYCHN[[M^[[O.[_58B`-;'CG.`2B]`1:@'/M&0G:\$;VLPV+3QY_2%I#F%-+ MR05P0`FN(`LJ'`?$``@X!>@TP@=P8!(*(0YD8)LWP@L8@0?HP":N(`6&_B`G MEK(Z1HT%UDL&;$`(%*$H:F#WPO9&3L8$B*!F2@`&3J`-FQ,"W,`*M-M3JH@& M&$$7;J!/M*]$;D`%8&`)AJ``7R`'5J`&B"1H$6]`#R&#';#.( M=*<'Y@0P%=:Q?#5M@LH#LK%:K0PTP9.'6Q7:*TO:IYW:JSWDKYTU,TU-1&\# M1(#-9&@NE[+05#D>N3S>*@DFY+7>LD=^,TK9<0^*FJ9) M9)6X-X-(A$MOHJ;E7^7@1[Z`#`[H!4S`!Q-^O0-T[(,%>N-R[V8UVXZM^ MOZX>ZZEFZ[6^ZQ.$C@K,5Z\LT]3%N]5F?H&5J)@6XP/=H$F'3=6_Y'F)^5S3=U/DK#_K- M$WRFG_JKG[.NWX,!`H/`@00+9CB($*$LV<.C@X<2)%8%,D"!A`@4./1`Z M>OP(,J3(D2/3U'"1PF(($!\\>.C`@4/#A0DS%+QY(:?.G3LM^/P)-*C0H42' M5CB*-*G2I4PI.'T*-:K4J52K6J4Z(:O6K5R[>OT*-JS8L63+FNTJ(:W:M6S; MNGT+-Z[O7'/FKT*.+#@P80+&SZ,./%4IHP;.WX,.;+DHI1_ M\KR,.?/.FS=K*ES8T&$'B!\^A!A1XH0*&1"&5"$).[;LCE\.\7!10X6(_@\P M96Y8J`$A9X&:Z].G4JY/EBSV[]NWO7#S^YN&>@8>.^3!BB17\D3C!!-(CLPT8DAV4T-#"$2^, M(D,**<0010T^J``"2R&4,`(((_QF$V>:O0TMAUZ)X9V(8HHJ:O5=BRZ^ M"&.,,:[(58DVWHACCHF-R&./[84(GWR8N!;OKDHV0ZCD=CH((.&I:,AAZ*:***$IK5_I^./@KIC7U.2BEC>P8IY`4$ M9:`!!R8HN0(+(YS0PYELBD""#"A@F.::KK9IP@I+]-#""C!$$0,.-P0!1!!2 MB`3)#"ZP@$(*,EQ$`@TGI.E2LTJ&0$(,.8Q@`F\RT70G!IA=^EZED45Z&*/B MCBNHHN:>BVZZ>)$+;KONOBN8M_).RBVFQ0UTD`8MA081""XM&<)$)H3@K$L@ M/`%""#6,<"H)J0DQ6R0UO#!#"2N5]E)O^.'7+)(?H#`#"`?AR5.](LX+&;R! MD%"""2R)H/'&,2596L(F MF)`"#;^2U$00<:B0_@()K?H+4VB_`0)LPI+#;:'7:Z=G8)%_6\]YIXTV!VZJO[M?0(+*U5XFL,H(-&""6>RU%+&'H!P+>@U>9CGGKD_1COK MWG\_5NSBCT^^!*O;CG[Z\6Z?^^Y"]>[[[\`3+OR1$%VX@@TJ#`&!L"2PE+30 M`.=ZP_D0B-C'/;R!;X$,]$KY'@C!N'U/?12LH%00N#?W`05^O@M=OD!S_I_A M/8L$4MI-2SSG&\%9KX#90PX&&Z/`!LIPAEF)H`UOF*X%6G"'%GRASC3H$\UT M<'X@=,C2^@4"$RAK!A, M2;';%@^IQ2\J*-1 M$@I"T!L58HN(1O(`,CM`DT!>P)6O5-LLKWG(_EMJJ"B,Q52B&YJLY]*=:<]K>I`IZH5H6K540E%#D^"2;@.R(`W$>&`G:@X M36ZQ+ZI8;2M5K0K7@+IU*UNM:XY>Z3>,-*UY;0E4YSKXO=JE1WNW.=KG=KR=WP9'>\*`VO>37[W?0R M\KPK(J][8\G>^*96O?3]HGS;^][\/NJ^_)UO??\+P?Y21[\$QJR`#YQ3`"MX M?`@F2X$?;+L&2QBD"ZZP!"?<%0AKV((8[C#X+`QBF75XPR3>I8=/W+(0J_A< M$BZQB\N+XAC3:,4T!F-_7XQCN\IXQV^KL8];Q-\<"UFT/"YR67Z,9.ZP_G?( M)/;6-XT,9:XD>RW#;_%@?$M:T\)7S?>M<9]OB>:MZ!N+9=M9G/X<7T&EV M[:"#>L7W.?52>S.PHJ'+:"]_]M$GE>QD/T,<`U+ZLH:]-'$S/>7&9RO$IM.'6B!;^[I@;.&NMG:RUVNH]W=::L8J]:&I$J] M>IE-@;`#']B-3(0S[IXXN[#G1O=/U0WBJ;9[_HRS?<_??@<<#BC)C\M$:RL/ MB,!^^]NC`*_P3P?.0S(;]:@-]8`*0B`X?$M3/MV"*KPFCMN*`SBG&-_AFUF* MQH2_K9JSG5`1"4H(W)?&EP'$Y3 M<@/EBM#F.1=]GEZ/!IV"0R]JT5NZ5X=\P&AKJG<*0"[NFT==ZH?FJ,2M_F&L M>[>@6R=CUXE^*6":DW`>(($+/)*AZHF=W*=[S;JC M[^Y*J9?>7[V0_!R.!Q"0PSM!Z=?!T_/H&5`V!T)M4YV_O?$N>_QQ92EYVU&^ M\N0T>K+I[8$1F$8$_A7*P40_0(*E6B\A\5,(!T1`:V:SO9J,9SVY7*];1,:> M=K.G?>W1B/!0'LE@I/S<\#THS+!23]SZGKHD+>U\<4%_M;F5(#F@W M$+@4$HA]P71)#*%Y)Q`&9\=[^*%]]Y,F)S`#C5`T:7(MPE%3*+AX*KB"*M*" M]'#),M#`R7`-1I3@H3W M<*FWA.CWAJT3ASX%/G1X,W:X4AITA9:TAT5T1-,S`B-P`\N2.#O`,&S2$E"D M0H`$=6S'ABGHAH]X'9$84I-(B0AEB?&'A_-!'\P40ML',"1P`@SC+QF#BJFH MBFI7?D4A3C$$BT( MC*RX48W(A,U8*,_(3=$HC>U"C=68B\-6?!Y4?T8T/*8!+3<01RSQ1,4XCN1H M@LEH16UX6NKX%>RX6^?SCO`8C[@XCSE!3^!W_H_X<7]LDA$Q,`,H8`(]\'D^ M&$4KQ$*"E!S+R(P(R2(*"5ZJTY#@\I#R&)&C1Y&<"(;_DCPFX`(PT`-.4@(N M@8C[-WR^LX8E:9`'B9(JN5ZSTY)#]9(024GSIX>;2#@7J!NET31LDBQ(0`.Z M<3$^&8Y21$`X09)/Y8I&V8Q(J4A*N91_TI1W>$90"3@R-S@-D73_HG0LT"JC M(A$H(`-+P`(F4#1Z9)4U4"%(PU2>@3V+2);H^(HKB)9>U#9KR55M&8&&%D1P M27KAQW_W`1$B<"4M4`,SL`*IX3!04P,V0`11<`,Q<`0P8`*MH@,IT9-0A&R( M61!)J">,V9C.]Y@X_E0WDBE;E.EUAE:#]+2O*F>#U0S[1E9[SF<;\EQE^00"1,#9[(#\*0T?=@T(G`"A9`&,A`* ML5$*.S":PGA"H!>2P7-L4%=:;H>>%%JA#,8N&%HB&KJA$5EX'FI_I50"+J!' M7HDD2F(:R(,J&;$"G!<;14`&+;`%2HHQ_UB,VA<38^A'K%2>I6-R<<9Z_CWJ MH^("I$$JI)8I),1V3B``@GW'>\O2)B0047+T+Z81!4PD`\[SB1BA`BX@`VD0 M&SO0`AQ)`FL"/5RZ,1"A`BW0$J9!!$N%;Q"Z.Q$787"'IN*CIFMJ'D**=]9X M>9B'3B]@2BO!`C+@`R@0446S`@U2BM"#/*B1`C"``A+!`C"P`DV0DS@@!B3A M`S!Z`A+5)BC``TL*AL7$)+&9$4QB5B*'J>ZS/>EC=9T*.XP"JJ$JJJ2:*08Q ME?1&+5P(I7XW!26@-6VB`XGSB2L@!C3@"3Y`H/R3!;$A!DX``3BP`S?0`IP$ M1R:PJD@0!,-HER2``C0P,"&HXK=3*;YOJ_F_8ZCJ$LJWET:U/&76::($H M(#U."@(PL!HZD`/-DQ%34`02D0(L4`->,A)-``%0\@)20`#VEZ*V*!TK>WHZ'R%[@2B8UR MJ8W]PB8ED`(O$`2/_JN['E$+?1D$J8`#7M`"4X`%,-`"2^H2(W`$@C>2HTNZ M*+-EBH:Z,*.ZJWL8?YMWKXN96$B?(40:IG$"*=`".I"[NZN[K_$1=L`#0.`@ M,""GH-=PS3NF=3LO%>1GTYM#-&*]AM&ZV:N]VSNXW4N73..<&"&^-0`&YJO` M>"`#*N`\G0.0\2N_S@NTE1*]7(:_+(9?^SL8[_EU_UN!:D1,TT,"M^O`J:$"5H`%L.#"CZL'6.`"*&$J-@Q*M3EZ%\7#_HPX M(AS694&,*$-,Q(!AQ"&"Q*6JQ)FYB:+Q`1+BJB^P`BJ@`C!P!DFP!5=LOI=S M$8E3`WA9-`M+?/2T=F/\$Y-BQCR&QC9V(FO,QDUYQ&\\@7$LQW.<5$I@M8": M`C\@!#F`KX!LOJ$)`[KZ`L?">UU3FSDLNDL[QC[\PS(6R3*2(I1<%6T)@!LJLNU=0!D/0`FDR!"PPS0XZ M3XH\SB43H>VQ0S'&S=TL7M\<%0\ISN- M8A(LX+G(2Z/ZO,_6W,\[G'-EK,T8-M!`9ATQ^,$`O-`O;(_X2,P@ M\`(O4`,TL`-]<-%>,@3KQ`)8@)<*BY\!.9[\'-)B7)!E%M`==M+>4=`J?8L+ M);B:[$$PW;12N9G+^:CTY@-565]4BG"\;X"_4'->'K=7\-TS:>$3?FS`C M4`1-$`-9@+YG/1*%D`HY:RI$#9(U&C:(+;>K^,8%H0'0U%2LR![")6%ZK1TI M;=!4Z+K!+$R';8$?_J![)/C*H)W8BKV<7MK8>[HD(I`$+1`%K#`*9FW9(0$+ M-$`$?=F5Q*@TH:38T^V@(/V_N]@I'N`"(J-\J*T>JHU@K(U+`_;-\-31U?: M1",1'UDX'7#;&_,L67.?#4K=#JWB7-"3/@F`[40G)0C&.WP^Q`B/P M`RD1`R]0`BPPU!FSK,!W`J61(5;)Z!7RXVI;FEB2!5,#SW!@YPA^)EM3(4M> M,`;#`E#`V3I.P#70`P"T-+D=VC`=-,14;]5R;S>GX8XAYOU%YGDQ'6O<=6Y: M@X$S/"'0`D2`KH:8,#N@`HMZ&BBP`K%R`R/@DT\>XS](;RQ0/%*0!F7+22#C M`]'3XX=C`VS0!#)``QGBG$M``NN*)FVB@:79MBB@`BN`TWKP"0H,!U@0`[4B MWT^#KI^(&JUR&BDP!;Q7S+$J*R@A"(9N/\Z$_@(]H#@8P0,G$`2((]]'>-0O M/3])E28N@(9>CE:Q#D/@+5^U?A?6=>99QL-)3($=2&\?6P(SP`0L`(QFVY$X MD`/A_MQ(LC$-#N5T?"8DL`(U\`4[D`8$Z@(VX#PVJW1$\`-3X`9+@`248`-` MH(%&P`)%``%'8`@FT`(Y``%FP.X0D`4J(/4P"P,R4`,XP`-"\,<$$@3[VLPO M4.\QL`)"D,=34`/ABZ]6`)A:``1G``=3\`-H,@)V\`11\`2.8`2*(`(0X)7- MPB2;1`-.4`0V<`5:T#P3)9Z(78_"W"F0FB$497,CQ_&,\4A_!O)T(?+[2U2, M+)\F?_)3F1_!?0)\_ED#.1`$,F`$<-3%G#Y'<*O?-.T!0M`&-A`'CA`#+.`" M,W`&1O`#0P`G)T`&K6)*<.\"--`16``!-(`"E"L+FP`!`4HQ9-`1.C`'$(`$ M5T#@(R'S'@$#+,`'9@T$Q0^8)N#V6$`(4!`#G\`$GL3H^ZD\[KX#/0`0.8"@ M$`'"@X<-&S0L7)C!X4.($25"9,AP`X&NI%O7[EV\_BI/ M[N5KDN3?APLOW/ESZ,EU@`&U0D8>X9"2!#%A.<1W$4%Z0#BTX@:4(E1^P%B!HD40%E!$ M<$A8T7Y#B??U"[YH>/.+&U3XH(.01"*)K[OD>FDM!AL$ZT$((Y0P0J\JM/!" M##/4<,.M(FSP0Q!#%''$FA0T\403\U)QQ17[F,!% MACY-...4_6UKA>#C9$DAP3S0(051ABA M.!=(J,S9$J[H`8DB:)A"!B?:>&$%$TJ`S3T::L!AA1S8*,&@@[(\S$9,16#A M"SH$<0X&&"!H8DY\\]47WRU.H8&V.EHX(057Q&`."B'$:*,$$4@KC%%)([[( M`Q).@&&$TCQ@P0?3_NBKU%+_1D`RA$4]KFBP#$I"*<$3;Z5559ACCCE6FFNV M^68,'W1Y9YY[QFE7H./Z=6BB@Q5VV)&*Y:"$&DCH;H0*,&*7X`P[7,;"1MW:G9L$R$UXQH`0)7F`L"@C_VU7MOOI_+ M0I<7W'!.%"RDP"&$M1^&6.+!#'NA7AM2R"$T$5105'&0#R.!AA@$'K"P$CKF MP(,1-D@Y5%%;]EE$F5MW'2R<8Y=]=MEU7OUVW$D->G>7B/9]:*.-1CKI##08 MC/2##E(;TQ%2L&&&'Z!0C@TG6@$#`B>2>(,V75Q0P885:$B;,Q!$X.$'_C8< MB>&)%$P86`47;.A[?OKK;VZ)YAYQ(=FTU1ZBM-0D)#6$,4R[*C8#(O!@!BQ` M7/(7.0:\C80F!0CL4IE"%.0.+ M"%WXPK/P+FB_HR'P@O>BX6$@,)0ZS6K6!8**H<$%=XM3$GXP@QZ``0A%J.`( MG.`"+1!!.$1H0:`2`8$NV$^+6^2BH2:3)+CQP``$*4C`#&IS`89W20,H\N*(0PA`M)F3DZU;X M2$A&4BHM5&0E+3D3&>JJAIO\U0V/-CR*\+"'_EK:(PI6``,@R0D/,$"!:Y0U M`J>Y9SFN$F23=^$`(*7RS M!V.X`19T$(,9N(`'.3@I;X:0@A'D8%&3,J3*S'E.$]&3+.QDZH3@^52HTDR> M2J6JK>PIEWQFM5?[_N0GTO)SLL9]8$DR&%<*9#"#2.2K"$1(00HLQZ:+QE6N M\UN$"A#5/\XDI@0<@8`2H&,&-0QA.3AX07<*HAE,+69`I\E!4??"(G16U51- MI:Q2HGI9S&I(*9+E+(FN^A:MAI9%7.UJC"9R'P$6L`1""`-/9^"$..BK%3!P M01)P,%?]X6D?:3ICWMHR:6@B"40`4Q\`(, MI,`&3>A+!S?0;7_]NZ\3\,9I*HCMO@8A@R:\0`;G`B"C3H.00GKPL;V*_NQX M*;!=#`?ENQOF<%3":V$0BZ6\+4%OB56DWM("IKU@[4\!<6"#9`[,!4S`EU__ M>V,<1T<'-+Z#IE10A'VA`0;8Y,T@/3:I0CJV+Q2N\'@S_.0.1YG#'PYQE6TR M8A-G&2\H3C'Q5OQ/`1+0`WD-00UD0(0<3"%.HLAQF]W'6M1RHH%]];8''IS`.R%X@96(2LYR+ME7378RH2M[:%Q# M-=&+!G&C'_WKE42ZRSJDM'L_UD/#_-"`)%#!_A16X`,91.$0FPB"C4=][6OO M0&]#L`$+--6"*O`4-AQ(KSV!':]@RUL'$[Z MRXQ+8[*UA*D]NB\%IZ1!H+!]<(3OJQ$V@,$+=N`$$@RH0.;^,[K3K:!%LYNI M[^;X"N,M;\G2V]XCQW>7ORJ8`:9<-9>2`1CA=H(6-$(%,H!`$&B<<)SG'#H^ M>$$.?@P;(8R@!B@@=[F'9;19YRKC&F]DQYT^NX^#?)XB'SG)2YYO]A:/Q1P` M@0]^P&P@@*"8J_F`"U)`@A4`@@4[Z-8)VH`%/="&"SJG>]V38P6=BJ$@FTD! MIY`,ZQ@AGA+KB]>YY[WO\;Z@HP:_G\(G_ M:^,[OJS3`*X[@1Y@&$SQ-AF(HXE*`12H#+@A@1Y8/_!P(A?8`EL0/PW$-OQA M@5:2FNJSDL7Y._C["_E#*J6K/_N3F?QKP0S9/_[;&5^#M$C[O_0*P+[(_B$O MT[K^P!04B($BH(,8L($:$,)O:B@3<($H,((QB((9,!=E<9HC8`%42H);V$`L M##5D4[ MO$,\]"?CZ8`0\`$8B`$32`%$D(/XJ80]$`XHH`/E>((K\)X6J('4HT1G;#,X M,(-12`(P8`+$61O-(:1R\\18LSB6H3\5),53_CE%#_`4 MP*-'EA0V>[Q#2M,Z_NBA#&Q) MLWQ)M-S!DYO)4=H,$%@6(:`!&J@$H*S+A,,!Z8&`(0C$.(B"OCNR]XM)P*NX M#\)(,Y3*J;0LJ_1(_I#,2DS:2K>81Z\\R0TP#%Q$B(O(C(;X1+/DLK3\3!T4 MS&(!L\PYC$S)#;M,39US@R:8`10@F<6QCY,[C0C[L_D#&GE+3*I<3')L3%6$ M3*&13+Y0L9G<(!$`IU=[1]!<3N9L3N8439DT'D@I34UC@R98`8&$`#113>X, M-3:`@B3YG!%T%.G$"!3X`'*:,*C3D M1N?,H4J+B/X,T%H43!9++35:HP@L`11X*XKJ3@?U+QJ8@V3:.RL!0_>CE!XD M@4Z1,,.,2BMSS_>$3U.43RNC3Q0IFJ["3XP`(K$CMY@44'T+)0X(`0+9_D8Q MA-&7A$Y_JI1DXPQVR2L10($?<"L(>(1F?%`DQ2T;L((E^(%SP<8/$#KQ5#EC M0H&4I*ZCH@L9:D\0+0H1'=&@Z#43S97?N:$!O<4/4`$(.`&QF[BF#-!B,QX@ MFKY.>5$<]4\='4U1PL4?$()4`R[%$`)=H`0?@`6#2E)$U2T?L($HEH&81S^:EO%$*@1-@@;VZ/(;IV=4@ MD.3E7@N^7@UVWF-+-DTC`<_[`R\P7Q*^L5WD@2'H#A)X@DVI@A*P@?B5_E\+ ML">8Q=N\O5_$XUL9W-^_+;'@7=7`X(!JLI$'C('#`@WHL@SCW;/D*1\7T(P` MNN#!P#0;N0QEP1$>^`S.D($:$9TC"S/#>$W36.`-YF!)0;9+V:,4<`$7N`&Q M+6$XMB@FB)(DJ3YDD2ZBZL8LM5T:QET0Q>>^%:X6'^-;$?!N+`F.(.P!0@ M&H&\\A83>`'*8*Y'QB,A"*ET60T4\&(J]6"WA!O/@X)#:9\=$*>5T]?6B.0? M6%G&+6-+^Y@K,Y$ MYA`)2T>[3%8R,,#]`4%'@E$W#-%9@!PEJ!%GA` M=#8!%E#*!AJI#W""_FO\T1&X`5I&`R)HXQ\X+B<(A(=5`>HC,\A%`2](%O9# M7J9F:F`%@1AX(P@`@R$XA.30`VN[:M3&ERRB4*9U6HS>8V;N8V?6S;)VM[,& MD;16Z[5>K[;6TU]5C1^BFHI1`1@0`I>*`_9X6""X@1XHW,/**Q*8H/5KEVY. M`U2R`4DHE.3P`APH@AI@&,P`CP0]`2(HHR1$E[&ST,V>8G;V`%DX`3N@C3A0 M`S)(;?O6FRAQ'Y$IF3`LP8NL6['FZ&>N[4.[;?+*[=^U.@$T:'H@?2]`2)0`D8,#89)#+C!$R>0H!+(,Q#N11W(`H12#DWP_B9- MZ8+I,U;86&,9X(,AX)S"_H`D>+X5F%*5^_&5\^#R>0T4H(0PH(+[3G)\<84E M.((1YV\DJST]ANWYW6@_GDH"QS6?:!`$3W`%KT=[Q$?]`&-_0XR=/@'XN0$C MW@\#A:#R.8$D^',80(,WN0&!"0T/;*L6.(-! M@8!8H#D(R`(>R(,=^('X3HY*``(?N*TQ2'$(_N@!&G`!1/"!+(I$0)`"R@#A M^&%CFT8C2T?C;5Y>(V@$%D"I0R`$3X]WY]""*''DX_WB^OAJ4S]U*[]R<5QU M*6MULGAU6(_U!;=7WWX4C'!@1Y=T*L@!(:""8H^./]@6)$@I"(B#(`@$@X0` M0*`?(5`.1Z@!%<_YY0`" M&O`.RA#!!AZ!&-YW=11PV@;X#MMR5R=X,OT_W@[SA,]%7@!'H`-#V2! M&""BZ!@$CY"?N6*"(9""&=B!(%@!)F`!%XB!&V@$'Z@!"@P!E:W0]/8A"**! M&5@%+F`SG>_[Y;@$_K=JWS_B`72!H$WI`"Q5S_64[=G^=Z2?L@D02:9O>J<' M\\^T10QEYWT$<5ARN)"/#DDX@HZZ,280`C9/]HV%C9-J@5=E^0?BO.LC:ZGC2`X@GVUH"!`A,T)@:'/:`#O]\8GQT!=H@404OR%;T!9XZ<-BXM=7GN7Y#AM``MKZ@MM/_^58`QB(+Q)@ M5"*`W\0G?BTM>J/?R.3_KN7?B>9W?N*S?(#`('`@P8(",R#4H'`#PX8<'D+L MX&&BAP\@0(080:*$"15(7-S(823/J%:"(*!,J7(ERY8N7\*$B>7*"Q@O_H2$ MF3$B1`@0'WY2_"GTY\41)HH0`A)S*=.F3I]"C2IU*M6J5J]B33FH"`L]*DRP M`%$#H<`+9LU:2*MV;=H*;M_"C2MW[EL*=N_BS:MW+]^^?O_ZG2!X,.'"A@\C M3JPXL83&CA]#CBQY,N7*EB]CSJQY,^?.EP4#ID!W-.G2ID_39:MZ->O6KMF> MC6UP]FR$"1LZA*A;8E">(D1H+'$"A8H7,L)D32[5R!^46R*=($+%Q MY#G"1AX^192##R]^//GRYJ.F*H-#!PH?-U:8\+!!0X:!L2^\MH!ZO]O0_O\# M&"`%BQ%8H($&>I:@@@LRV*"##SHV`6#\45BA_H45Y)>AAJ_=9Q9M'QYD6P8* M<4"";Q]TD***$NUD478IO,"1"BZDP((5:/R`RWD[JL0##"V\0$,*(XC0TT5' M'NF;1DKX$<-)/$(9I9134CD5%2C`8-,L19``0@M%CL#!!F25%5N&%YHFH)IK MJGF@FV\>"*&<<])9IYV12>@7FGOR"=>&?P*:5H<7@%B;B`DMM`$''810`Y$? M4%011DZ<0.1O&ZG01!QS3(%#E3M2`H$1F@`QQ`TD$,E3DCSY1L(/>Q@!`1:? MTEJKK;>"!T8)+7J0HICST4=FF6>=V>=<;"*;;&!P,MML87="&ZVTTTH&&E_& M8FMAH-MF.*A!AX(;_JY"B3(T`W`H4->3"$6(L`()*>3P@@DKG&`""BO(4`=* MF.!*7B8H+>$"#R]4^ANK(?RFT0DZ\$!&OP]#'+'$$*!B1!(@]/H00PK91M!] M&F8;E[(CDSR@LR(B0`R^@ MP`3SXXB]?D##'P)18CQ8@G`@<((D=(`^'@->\&+FP"?V)8)2'$P%JVA%!NDE M@S*37@>[V"%#V69Q&P#:"D"0(MQL#(7DTDU$_B9"%!"XT%XLB,$-KA!$\+B` M7B?8XPE2<,<_`A)*4D-)(KS@!1FTX`0@N`$",3"H/ST/BI+,RQ2E>,5+8C(S M>=%BR*;GQ4_>C#;@VD`00&""$[`-(]M#(RO#Q\8V8H15(]!"C5+0@BZLH0J! MQ`H6M,""%*`@F"E0`2Z(L,MC(A,KEC`!"8B`@Q&TP`,DMKH%RG-^L5#@6MQ#.O"!$,B`;;YZ)1LGLJ)[NE$$0H`# M1UQ@`PCL``)EX$$RL8($%J`/?2S(P2`+ZM"'QH00A/!)QM)HS6MN*)+;E&0W M(1C.CV;R9>3L$P?1_FG2LQ2*(.)RR`=V-:2VN>V5*@)!I2`5J:!8!&%&Z8$/ M8@51K$"A!2P8J@M^:M2CHH1>(VP;]X3E2(PND($;A6)'O0G2JU91I"/5ELU. MZM64?G"=:TP1"%)'T8KT2D7Y;,$(?&)3G![I4AUYP1206A5"N""O,(""7?M: M4%GL@$@CF`'J:=C# M`BJQBFT@8_7VV.,"#H.2/T+J+NJ=1L$!"]REM?FAZEU/@`$+4)""^ZG@ M=JBK'PGD>`,?Q/;K08L:)';FOJ[#B)6N/^]6X!/1N`?4TLT MJ=G@MA9LY`9'-[/?4U0;$/:R@J7;>+W_[6[<]#Z_/S0(T ML>DDZ.C1C,$JS0"=G0K=(%0 M91"$0,CZ)4Y@0KK;+244E&`%)FS<;+JX+>@!&V_"3EFQ^^V@MR1;V6%=W`?& MM>MHJ]-Q"K\>.TO82NI*!-XK<%$+AP/,)+2`Q4N82@]D4`-WO\0*(!_Y>+26 M@R4XO,[.'A;U[JWG?"-KWW#R-\T7Y!9N??5#U^-`RI68\(5KP`0&7[A8P;-9F$&-AX[H M.[<\Q]F$.9]E[J::P[TSR-Y0S@M5;5_AAN@YXQD'1-`[R"E#!5^;EX='Y]"I(`'M*_$#YRS\%$D.00D49=RC:>-'E:V>[LMS^]KBC M'C.>!#WBK/?Y$#E\C$CO$M([D$;OZ2QR'J`!BN9-[08$IDH"[2(RYZH"_F M(3"R'HZ9X*\9XYH@XR`JX_FM7KVU'LZ\7P;$GD2$`.V%@.TQ#N#M7<_L7N_= MWN]MXPH-7VB1#U`D8*LH'_.Y@/-!7STR!?69)-=AG_;E8^/L((UW@H\ M'@Q$GE7,(]A97DI^_IWF<=Y/ZJ-!\F.>C1Y-`HA-)B-.IM[-%9G`?0N)]%PP M2EO@"9W*!27#3=?1)1U3LE&DO=/315WR49W589W679[7:>77B1W9T1E=PF4) MBN4)DJ5_F"5BH*7Y`1S.L:7K$9S!(=QEU:50-MPX%F#$Q1O%(8S%H0#&:1S' M>1SFB=QA4I[)H=QBB@A8IMUC^F-D_L=D2E!EHMZQ'4ZAA56SP66B@5)GNMZT M"9ZB7-OX-)VV<1L.>!NX,86XD1L+F!NZ?=VZP:;T2=R\O:2]J1UDZN9?\*9A M^.9OR@61,2.T80"SO:1M.A=R)N?O,9E:.>4J@H6E89JF<9JG@9JHD9JI_J&: MJK$:V+U:=UX>K=D:KND:"88E-HUE>9KG>1)&>L;=L14.>WJ2HO$DPDG7DNV& M:#U9E$U9E5U9EL7`EG69#'Q9F(V9#O41"YP9V*V9@E8?G,D9;09CA&;4RU'H M7ECHA6)HS1D8:2`89T7UZU7>[W7F5+>?-77?>67]S$1^#D1 MG%:HG-)IG=KIG>)IGNJI!T5;GVK6?2:@9Z'*_EGEIT:4UFDE26JM5FN-7&S- M5A!**MCE%DKL5@GT%KT)(UK@YJ9RZK)XZJ?VFU:)JI*2:JFJGV<6W>`!C5G9 M%$QAFPBQE?%%RAMU88D51UVY&U[I%5_M*N8!EF`1EK#")+$4:\@<*[(FJ[(2 M&[,V:X*U!K0>)%BM5/BTU`B\5%K1TTS5U$W!E4Z9`$]5I:P%U5!5VKEBGE+= MX8,.Z[MF2[Q&D9P*!KT6VSC=*W^8D[[*QL^%T7V^4SRAB%[2$Q/>4[;J$S^9 M@#\!E$`15*L=5$)A%T-!+.5)U!V"IYWAF:9>+,8*J<9.`,<6VR9]+,C^B<@N M&F8A!"F9$BKEE&AR_N/2551J`"G&&NW1UNV?79"&XNW,<"AL"&=RCD@( MC5`+Q!Y&^FDF?J0+P9`,P9@-X9`.W8\.H8`//2[F#5$1'5$2[=HPNND?RNU= M;"[G=NZ/?2[HANZ!C2Z'[.E!*$3V;)]+VF7@!A_3):#YH(_ZL$^*O4_\8!B) MW6[^[,_N?ET`#5!V&%`C/94"^>'0%J_Q;F[R`MGR,F_S(NGS[N2^+@XP_CK. M1.I/".^[XOL<9OW,XO M_1JM_2IO7^AOWO(OW:G?9SXIN20ET'SKT!3-T23-TC3-TT2-457-U63-UG2- MUVP$V(C-!+M;VJQ-V[P-NVXP![_&F\KM\8HP@5D+S)3P?IQPH(22Z>K=76Z` MN41@NL`1NUA8O,Q+O=Q+ONQ+0?T+!`3,P!0,H?H&<)@/PSB,$+M;Q5R,TEG4 M;[FK3.;F!Q\O\C[Q<>%O9$TQOE8Q"C[U74T\W9TQW=(,\BEQWJTQWO$!]SP&A\;JQ__L3B/ MLW^8LR&C,_0F2`$%"!%C3%'[S`"AR4#$!`')Q;S4(`("1' M8:N$(]1`<9#9<*P`$03!%[!`:!V@^'SWJIJ`%#!!#^S`)IC!QIUW>@$!#:3* MZ0AL.R'="+CV:^,TO+;R;--V?H?4?O]'?P_9?ZM%!PGX@"=*4@?-$_4`#;@`(OA` M%ZC$$`""%-!/"?A37BT5RV*MBN.G18R`$31"A;'`(1!"C=N6%A`,:.TXX`9O M6ZO%0L/U3AOY52$Y@"BY?S.YH)AJ2J$J^#1E_M--LAK>@!$T=DOT@`WP@`2. MF/FL0`Z(`1@\`16D`!(HU`NXEDO(F`Q@EP[40`I,'0[(`?_@@!90P0_4`!"< MM`A(`;W$6W.J;*!/#E_FE'`,1PM\'*/;EM',0"G^Y.V=74Q:NFS/=J;K-SGS M=Z=?)I,[N:BO<)0W9>7,``K(`!J8`2VD1`_H`"'<`!$H00ZP@+V4@!>>BPM0 MB@N40`[8CVJ]>12TA";00`OH4!>PP(C=;@JX@`SPP1#00`RPC5`D00Z,P,0= MGK4/;+;"T:*B`"6$P99YNU^YPA(<`:5\XT5VG[D+.4.GN[K;]J:KB;L/VFYW MD;ROL.#^=0LIC`K`_H`0*`$/Q`$,J(T*`,$-](`+F$"LHA9UV"'3HT`:D(X- M2,*!IH07X$`1U,#!NW%@"P<1",%7N(#N]#(`$/V[#W7T0NU1JU!UX:[JF,"]K\`,X$"$ MMP"LIP!8""KQX903C/P;C<"IF`\:$`%(_`"X.4$@))2)((EVG!(*>,$*0+K* MWOWO0QSYQ``-&!,8#,$AJ(0>*`'@_Y2=_SDJ_#B,W[C?]-@-%#D MJR4Z?Y+[*>=H_G5&0+94]H"/W$`,Y!"J*,D)_+EW@[>DM8IPU,BF[0"-_I"6 MJ_[$#1)E2I4K6;9T^1)F3)DS:Q9M6K5KV;8E M*P%N7+ESZ=:U>Q=O7KU[^?;U^Q=P7[-B"7^U>AAQ8L6+%S]U_!AR9,A+*2\] M>IDH480-.?CTZ0'TQ!$H7E3:D>($"1(F8+B0,2($B)T?2*0H\<'S0-V?04L$ M`4+$B18L6-#X,8,,U=/;T[$'&BA@E8,O^_BFPX4+MVQDZ-#@PH@<0/HA` M0&'"Q(DA;6BV=_\>?GSY\^G#-+("Q8D30624*,%#!Q8\``HAHBY#JK+(&%NP ML`8=?)`PMR2:+CU-=R*Y:PS#WK]Z2`SM3W3.S5]"^')*EUP MX88<]CP7W73579?"E[E-^&O9:4X+#%?DOALLT^6U.&OW88XK85FSC5_HHM MNSB#[C;H@,U>>?))2:",%2V$;+7E[(,41J`!4=EX(AF[G7N&$?+()1_\.X@F MZ@&%%8A@@8W:"QL;=X'1 MWIWWWOE2VW:VW1Y^*KA3E%NIBQ$"#V]A32@!A,;)]+F@#QSOV:"(F#W!5^>D MUU;R\,4?G_J!/&BAB!62Z&&'48XPJ3S2Y9^?_OK<@.`.&UC`(045CD`"!TG@ M`0E"`(,-%&5K^^I:\!C8E=P]T%*^D^`$)0B\!@J/>&XSGJJ0YR(,:*`#(P`- M3G;PIB*I3'!F&E_X%)(F-I&@8RGSVW96B*\#_KVHAI-;2)HZ(+07'*$(7Y#% M#HQ3AAM<01,;.40,S%4_)SX1BAMQ#1M,H@@7I$`&7WJ3"5SP@M^D##H(E-WL M2'5!,V(%@FF4$`79V$:%H>6,DLK@\#:XH@YBH&X9\\D'GL2W%!9(?#?$(0M! MZ),NA4`'O=+)]<8G2$0:^'=/E""&(3`!BN`P1&2T`(5J$`(JK###520 M@E7@(HJI5"7H:(`"%&!!"4P@!1O>=P@?V*8Z.!+!"I90@C$MZBAC5&"IXGA! M-1ZS8&Y4YC(W!<=B3FJ.$*LCQ9"'QZ%L1B`?R,$)"72O1C[RD83DX0M%\`$. M`#)\X%1G."-YS8R!_L<#(6!6#7)@`C>]J00J@,#[5ME/?YYK!SB@S@A.@(HD M:`$%8IB##6:@@MN$YH7*,>>B;"A,QSSLF<%#YD;3PDR/?A1#SLRHJ*)9JCI6 MDV[7I*0^3P"">GDSG>M'E, M!"40@BXHX0-8X``+_Y3J5./C`QOD(#:_H8@2IF"$6"4J9"%Z-HZ^M2P@E>M<]R+2MOZKI"4RGMR.@C$9381(/]$IC'I:6$F^*E$4 MW6EA&0O)2-I-8Z#YXD1TB8(?]`\"CS`"53G;V9;8P`I+^`'T%B>1$=1`_H9] MJQ9@4>`!V%GTHK2[J]?@6ENZWA:W&,$)END* M@1K4SH1G(B)@0Q-6L(6-(.&[&C6@&2KDL*\Z)[Y.C&)(R5A4_BQN\8O)K$RU@#FC-#[>W(RB M`0^(H''>%`I[AUQG.]^9R$5.:>1VF&3?@&`$,1!"H$ M$_*=G0%P#E*S&BSFP`\H^00_#]UKI?D@#OEAP0E0H(,BD"$%2UI:_ONS-*&;S0YZ*(,>`"8-VSUG5$U;B$[E\\,D?4+7P"!%Z#` M#T>P<$IPX#1?W_MH48"!#V`3`E:X0&AM*,*RCXO<'S_[TB;2]H.H7>UK/QQM MV5ZXBHG'06>;NV+3_K0QQE=E9(PQ9&,^:)H)4H`(.;C`!I780TB@0(>1/.$* M+LAN#3:+;YOC"0YF&$42P,"$[H5&O4)I]L4=E2),3SQ"#>X5 MY[T0"[VY!V]1JA2^?*\4W_B03P`]A"W\#^FD"?H24`&I2?H$:;@Z8`96P#-" M(`=@@P3TZ::R:C9F@R(("A-XH`H@0!`@@`MXP/U.L"2PX`580`5`+_A& M)`AU<`0"#2""[_:I`-H8TQ[A"-XE`. MZ5`5`<,.31$/AW`/8Y&_L.Z&LHSK5`L7/V,B9,##E(6@6J`15$`&("`(F.`2 MC]$'7B`'5*`(P$0(3@L%S@FFQ,T&;]`-[Q`5>7`5MW%A@-`5&2\/95$<)X/J M_-`6C65)PN//D`I*TB,%-(D&&.$8C[$1;``&7F`'G`!E7LKWZ`SA5(1$3#$; MM9$;"[(NW.(;_<_QQI$A+8`6:U&'I,O!'@RB=$DU5&`*5L`'9"`*#F$3@D`) MYK&S=H`FAD!_T*,%_JH@!Z;#!+8L%*L1(*_Q#0>2(`W2)N,"(1/2`!>R(6/Q M(5LE(I$L3;RE241`#(3@!59`"'Y`)#.,!F!`"FAB#XQJ5SSF!9RCP/)O_R1& M)H.0)FOR)FU20G0R""NN)_>0X\S1%H5R2\3C_&I`!H@@!\"0)42A*9\H"!)! M#%2`!=K#!EP@!PCH5ZYC9WQO*ZVQ%&?R*U,Q+!L3+L:2+,O2+,]R`3'.L=:2 MZW@H(D``!VS`GDX@!5S`&%\B).^2='3`&.\`/9AQ)M``!E3`GG0E!J_,FT01 MMA(N,;UR,1G3,<-R0B+S#KF-,J'/W"[35?J,`SP@!8(@GV+`"Z"2#9(H_B9T MX`9,>!1;60$AL!P M4*#(E*`B(B@9'=%JT;@9%Y` M:&+#NDK@W5(`.4X@!@M,U?(U,4B47X_)7V$U5@,V(0>VQ@J6`8>,G6XQ.46H M-SA0GE*`H7Y`T4*"#9R@%<```IP@"=Y@(W1!YC*)!G1/JT2@<]C`$6+@":P$ M-"W"!D9V(^"O)!XA"ZMC`X>`<1HG';U.:+R/"*Z0!9HC"K/624[`!?K-8T@` M!;J@!48`P$`40=J02_ M]0\N,0MTX07NQR1$`0ND``<8UV5S)J@BX@4\8@SK*<"RR_Y>EC9H(`9:0&@] MHP22Q`-&`$2UU"FZTO\^MSU#EPXOA73)TG2MXDRIU@\WX\U60%=B``).1EV' MY@IZ``F*@`:F0`:ZVX!1H8"/J@'U3P!7$H"2